@hienlh/ppm 0.23.11 → 0.23.13

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 (3296) hide show
  1. package/CHANGELOG.md +204 -0
  2. package/CLAUDE.md +54 -8
  3. package/THIRD-PARTY-NOTICES.md +2 -2
  4. package/assets/skills/ppm/SKILL.md +5 -4
  5. package/assets/skills/ppm/references/cli-reference.md +34 -8
  6. package/assets/skills/ppm/references/common-tasks.md +8 -4
  7. package/assets/skills/ppm/references/http-api.md +101 -17
  8. package/bun.lock +87 -41
  9. package/dist/web/assets/_basePickBy-CPcPjurU.js +1 -0
  10. package/dist/web/assets/_basePickBy-CPcPjurU.js.br +0 -0
  11. package/dist/web/assets/_basePickBy-CPcPjurU.js.gz +0 -0
  12. package/dist/web/assets/_baseUniq-DI0z-mx3.js +1 -0
  13. package/dist/web/assets/_baseUniq-DI0z-mx3.js.br +0 -0
  14. package/dist/web/assets/_baseUniq-DI0z-mx3.js.gz +0 -0
  15. package/dist/web/assets/accounts-settings-section-DU-lTifs.js +1 -0
  16. package/dist/web/assets/accounts-settings-section-DU-lTifs.js.br +0 -0
  17. package/dist/web/assets/accounts-settings-section-DU-lTifs.js.gz +0 -0
  18. package/dist/web/assets/adaptive-context-menu-Cq7ynvIn.js +1 -0
  19. package/dist/web/assets/adaptive-context-menu-Cq7ynvIn.js.br +0 -0
  20. package/dist/web/assets/adaptive-context-menu-Cq7ynvIn.js.gz +0 -0
  21. package/dist/web/assets/agent-session-sheet-At6Rt-Yf.js +2 -0
  22. package/dist/web/assets/agent-session-sheet-At6Rt-Yf.js.br +0 -0
  23. package/dist/web/assets/agent-session-sheet-At6Rt-Yf.js.gz +0 -0
  24. package/dist/web/assets/agent-session-sheet-store-BoBrAw5i.js +1 -0
  25. package/dist/web/assets/agent-session-window-content-CB_uvabH.js +1 -0
  26. package/dist/web/assets/agent-session-window-content-CB_uvabH.js.br +0 -0
  27. package/dist/web/assets/agent-session-window-content-CB_uvabH.js.gz +0 -0
  28. package/dist/web/assets/ai-resource-editor-Czearm3I.js +1 -0
  29. package/dist/web/assets/ai-resource-editor-Czearm3I.js.br +0 -0
  30. package/dist/web/assets/ai-resource-editor-Czearm3I.js.gz +0 -0
  31. package/dist/web/assets/ai-settings-section-AOgAUCgH.js +1 -0
  32. package/dist/web/assets/ai-settings-section-B_OFMlrt.js +1 -0
  33. package/dist/web/assets/ai-settings-section-B_OFMlrt.js.br +0 -0
  34. package/dist/web/assets/ai-settings-section-B_OFMlrt.js.gz +0 -0
  35. package/dist/web/assets/android-tab-L7DmLfHG.js +2 -0
  36. package/dist/web/assets/android-tab-L7DmLfHG.js.br +0 -0
  37. package/dist/web/assets/android-tab-L7DmLfHG.js.gz +0 -0
  38. package/dist/web/assets/angular-html-DUhpSne7.js +1 -0
  39. package/dist/web/assets/angular-html-DUhpSne7.js.br +0 -0
  40. package/dist/web/assets/angular-html-DUhpSne7.js.gz +0 -0
  41. package/dist/web/assets/angular-ts-_PmhBAvx.js +1 -0
  42. package/dist/web/assets/angular-ts-_PmhBAvx.js.br +0 -0
  43. package/dist/web/assets/angular-ts-_PmhBAvx.js.gz +0 -0
  44. package/dist/web/assets/api-client-DAQfiXg0.js +1 -0
  45. package/dist/web/assets/api-client-OiA8Ida1.js +1 -0
  46. package/dist/web/assets/api-client-OiA8Ida1.js.br +0 -0
  47. package/dist/web/assets/api-client-OiA8Ida1.js.gz +0 -0
  48. package/dist/web/assets/api-settings-D2H6gjen.js +1 -0
  49. package/dist/web/assets/api-settings-D2H6gjen.js.br +0 -0
  50. package/dist/web/assets/api-settings-D2H6gjen.js.gz +0 -0
  51. package/dist/web/assets/api-settings-DHhcUHtx.js +1 -0
  52. package/dist/web/assets/api-themes-CE8gPZ3X.js +1 -0
  53. package/dist/web/assets/apl-Qu0ab_nv.js +1 -0
  54. package/dist/web/assets/apl-Qu0ab_nv.js.br +0 -0
  55. package/dist/web/assets/apl-Qu0ab_nv.js.gz +0 -0
  56. package/dist/web/assets/appearance-settings-section-s3KWKTBm.js +1 -0
  57. package/dist/web/assets/appearance-settings-section-s3KWKTBm.js.br +0 -0
  58. package/dist/web/assets/appearance-settings-section-s3KWKTBm.js.gz +0 -0
  59. package/dist/web/assets/apps-panel-DaojtUvh.js +1 -0
  60. package/dist/web/assets/apps-panel-DaojtUvh.js.br +0 -0
  61. package/dist/web/assets/apps-panel-DaojtUvh.js.gz +0 -0
  62. package/dist/web/assets/arc-Cbj2MTZU.js +1 -0
  63. package/dist/web/assets/arc-Cbj2MTZU.js.br +0 -0
  64. package/dist/web/assets/arc-Cbj2MTZU.js.gz +0 -0
  65. package/dist/web/assets/architecture-PBZL5I3N-BsjZHebV.js +1 -0
  66. package/dist/web/assets/architectureDiagram-2XIMDMQ5-B5N-uzUB.js +36 -0
  67. package/dist/web/assets/architectureDiagram-2XIMDMQ5-B5N-uzUB.js.br +0 -0
  68. package/dist/web/assets/architectureDiagram-2XIMDMQ5-B5N-uzUB.js.gz +0 -0
  69. package/dist/web/assets/astro-6xSNo-2E.js +1 -0
  70. package/dist/web/assets/astro-6xSNo-2E.js.br +0 -0
  71. package/dist/web/assets/astro-6xSNo-2E.js.gz +0 -0
  72. package/dist/web/assets/audio-preview-CWcPZqTA.js +1 -0
  73. package/dist/web/assets/audio-preview-CWcPZqTA.js.br +4 -0
  74. package/dist/web/assets/audio-preview-CWcPZqTA.js.gz +0 -0
  75. package/dist/web/assets/blade-p7SMjkdK.js +1 -0
  76. package/dist/web/assets/blade-p7SMjkdK.js.br +0 -0
  77. package/dist/web/assets/blade-p7SMjkdK.js.gz +0 -0
  78. package/dist/web/assets/blockDiagram-WCTKOSBZ-CNZJl-ap.js +132 -0
  79. package/dist/web/assets/blockDiagram-WCTKOSBZ-CNZJl-ap.js.br +0 -0
  80. package/dist/web/assets/blockDiagram-WCTKOSBZ-CNZJl-ap.js.gz +0 -0
  81. package/dist/web/assets/branch-review-tab-9UB4ccpF.js +1 -0
  82. package/dist/web/assets/branch-review-tab-9UB4ccpF.js.br +0 -0
  83. package/dist/web/assets/branch-review-tab-9UB4ccpF.js.gz +0 -0
  84. package/dist/web/assets/bsl-D0bT3Wjp.js +1 -0
  85. package/dist/web/assets/bsl-D0bT3Wjp.js.br +0 -0
  86. package/dist/web/assets/bsl-D0bT3Wjp.js.gz +0 -0
  87. package/dist/web/assets/button-Br60hGkw.js +1 -0
  88. package/dist/web/assets/button-Br60hGkw.js.br +0 -0
  89. package/dist/web/assets/button-Br60hGkw.js.gz +0 -0
  90. package/dist/web/assets/c4Diagram-IC4MRINW-hDrfu-4_.js +10 -0
  91. package/dist/web/assets/c4Diagram-IC4MRINW-hDrfu-4_.js.br +0 -0
  92. package/dist/web/assets/c4Diagram-IC4MRINW-hDrfu-4_.js.gz +0 -0
  93. package/dist/web/assets/cairo-DTuGb2w7.js +1 -0
  94. package/dist/web/assets/cairo-DTuGb2w7.js.br +0 -0
  95. package/dist/web/assets/cairo-DTuGb2w7.js.gz +0 -0
  96. package/dist/web/assets/channel-BYWG7Wl4.js +1 -0
  97. package/dist/web/assets/chat-preparation-cache-CRX9WAK5.js +1 -0
  98. package/dist/web/assets/chat-preparation-cache-CRX9WAK5.js.br +0 -0
  99. package/dist/web/assets/chat-preparation-cache-CRX9WAK5.js.gz +0 -0
  100. package/dist/web/assets/chat-tab-DMVb_mgx.js +1 -0
  101. package/dist/web/assets/chat-tab-DMVb_mgx.js.br +0 -0
  102. package/dist/web/assets/chat-tab-DMVb_mgx.js.gz +0 -0
  103. package/dist/web/assets/chat-tab-s7uAnh-h.js +17 -0
  104. package/dist/web/assets/chat-tab-s7uAnh-h.js.br +0 -0
  105. package/dist/web/assets/chat-tab-s7uAnh-h.js.gz +0 -0
  106. package/dist/web/assets/chunk-4BX2VUAB-hVAt6yvs.js +1 -0
  107. package/dist/web/assets/chunk-55IACEB6-C01pkYAe.js +1 -0
  108. package/dist/web/assets/chunk-7E7YKBS2-DzI9lMJG.js +1 -0
  109. package/dist/web/assets/chunk-7R4GIKGN-vQspoIwd.js +80 -0
  110. package/dist/web/assets/chunk-7R4GIKGN-vQspoIwd.js.br +0 -0
  111. package/dist/web/assets/chunk-7R4GIKGN-vQspoIwd.js.gz +0 -0
  112. package/dist/web/assets/chunk-C72U2L5F-B6xz3XVo.js +1 -0
  113. package/dist/web/assets/chunk-EGIJ26TM-piMHBD4l.js +1 -0
  114. package/dist/web/assets/chunk-FMBD7UC4-e6MPEMRh.js +15 -0
  115. package/dist/web/assets/chunk-GEFDOKGD-DnsnpeGb.js +2 -0
  116. package/dist/web/assets/chunk-GEFDOKGD-DnsnpeGb.js.br +0 -0
  117. package/dist/web/assets/chunk-GEFDOKGD-DnsnpeGb.js.gz +0 -0
  118. package/dist/web/assets/chunk-GLR3WWYH-Co8QL50g.js +2 -0
  119. package/dist/web/assets/chunk-GLR3WWYH-Co8QL50g.js.br +0 -0
  120. package/dist/web/assets/chunk-GLR3WWYH-Co8QL50g.js.gz +0 -0
  121. package/dist/web/assets/chunk-HHEYEP7N-CErk3LHZ.js +1 -0
  122. package/dist/web/assets/chunk-JSJVCQXG-B8pwPgsI.js +1 -0
  123. package/dist/web/assets/chunk-JSJVCQXG-B8pwPgsI.js.br +0 -0
  124. package/dist/web/assets/chunk-JSJVCQXG-B8pwPgsI.js.gz +0 -0
  125. package/dist/web/assets/chunk-KX2RTZJC-DeYfi-Vl.js +1 -0
  126. package/dist/web/assets/chunk-KYZI473N-B6LAvX90.js +53 -0
  127. package/dist/web/assets/chunk-KYZI473N-B6LAvX90.js.br +0 -0
  128. package/dist/web/assets/chunk-KYZI473N-B6LAvX90.js.gz +0 -0
  129. package/dist/web/assets/chunk-L3YUKLVL-BM-EQ2IR.js +1 -0
  130. package/dist/web/assets/chunk-MX3YWQON-EGGLXe7u.js +1 -0
  131. package/dist/web/assets/chunk-MX3YWQON-EGGLXe7u.js.br +0 -0
  132. package/dist/web/assets/chunk-MX3YWQON-EGGLXe7u.js.gz +0 -0
  133. package/dist/web/assets/chunk-NQ4KR5QH-BHn5FEPA.js +220 -0
  134. package/dist/web/assets/chunk-NQ4KR5QH-BHn5FEPA.js.br +0 -0
  135. package/dist/web/assets/chunk-NQ4KR5QH-BHn5FEPA.js.gz +0 -0
  136. package/dist/web/assets/chunk-O4XLMI2P-DeFJl-l6.js +7 -0
  137. package/dist/web/assets/chunk-O4XLMI2P-DeFJl-l6.js.br +0 -0
  138. package/dist/web/assets/chunk-O4XLMI2P-DeFJl-l6.js.gz +0 -0
  139. package/dist/web/assets/chunk-OZEHJAEY-BwMHWpJ8.js +1 -0
  140. package/dist/web/assets/chunk-OZEHJAEY-BwMHWpJ8.js.br +0 -0
  141. package/dist/web/assets/chunk-OZEHJAEY-BwMHWpJ8.js.gz +0 -0
  142. package/dist/web/assets/chunk-PQ6SQG4A-B9GHRcOM.js +1 -0
  143. package/dist/web/assets/chunk-PQ6SQG4A-B9GHRcOM.js.br +0 -0
  144. package/dist/web/assets/chunk-PQ6SQG4A-B9GHRcOM.js.gz +0 -0
  145. package/dist/web/assets/chunk-PU5JKC2W-DJY3yjhJ.js +11 -0
  146. package/dist/web/assets/chunk-PU5JKC2W-DJY3yjhJ.js.br +0 -0
  147. package/dist/web/assets/chunk-PU5JKC2W-DJY3yjhJ.js.gz +0 -0
  148. package/dist/web/assets/chunk-QZHKN3VN--KxlfM05.js +1 -0
  149. package/dist/web/assets/chunk-R5LLSJPH-B8fEAHWI.js +1 -0
  150. package/dist/web/assets/chunk-WL4C6EOR-CTOYdnLV.js +189 -0
  151. package/dist/web/assets/chunk-WL4C6EOR-CTOYdnLV.js.br +0 -0
  152. package/dist/web/assets/chunk-WL4C6EOR-CTOYdnLV.js.gz +0 -0
  153. package/dist/web/assets/chunk-XIRO2GV7-CzjzQGr1.js +1 -0
  154. package/dist/web/assets/chunk-XPW4576I-CYBtYKPi.js +32 -0
  155. package/dist/web/assets/chunk-XPW4576I-CYBtYKPi.js.br +0 -0
  156. package/dist/web/assets/chunk-XPW4576I-CYBtYKPi.js.gz +0 -0
  157. package/dist/web/assets/chunk-XZSTWKYB-CkPHeT47.js +94 -0
  158. package/dist/web/assets/chunk-XZSTWKYB-CkPHeT47.js.br +0 -0
  159. package/dist/web/assets/chunk-XZSTWKYB-CkPHeT47.js.gz +0 -0
  160. package/dist/web/assets/chunk-YBOYWFTD-DVV5zPYi.js +1 -0
  161. package/dist/web/assets/classDiagram-VBA2DB6C-fXft2ivd.js +1 -0
  162. package/dist/web/assets/classDiagram-v2-RAHNMMFH-3Pc0szA4.js +1 -0
  163. package/dist/web/assets/clipboard-D3XnL7CB.js +1 -0
  164. package/dist/web/assets/clipboard-D3XnL7CB.js.br +0 -0
  165. package/dist/web/assets/clipboard-D3XnL7CB.js.gz +0 -0
  166. package/dist/web/assets/clone-BbqYojVU.js +1 -0
  167. package/dist/web/assets/cobol-N66t9bre.js +1 -0
  168. package/dist/web/assets/cobol-N66t9bre.js.br +0 -0
  169. package/dist/web/assets/cobol-N66t9bre.js.gz +0 -0
  170. package/dist/web/assets/code-editor-JK49X9EX.js +10 -0
  171. package/dist/web/assets/code-editor-JK49X9EX.js.br +0 -0
  172. package/dist/web/assets/code-editor-JK49X9EX.js.gz +0 -0
  173. package/dist/web/assets/code-fence-vHZyBehL.js +1 -0
  174. package/dist/web/assets/codex-reset-credit-button-CxJsBnff.js +1 -0
  175. package/dist/web/assets/codex-reset-credit-button-CxJsBnff.js.br +0 -0
  176. package/dist/web/assets/codex-reset-credit-button-CxJsBnff.js.gz +0 -0
  177. package/dist/web/assets/coffee-DH4EPzT2.js +1 -0
  178. package/dist/web/assets/coffee-DH4EPzT2.js.br +0 -0
  179. package/dist/web/assets/coffee-DH4EPzT2.js.gz +0 -0
  180. package/dist/web/assets/conflict-editor-rOpVkK9P.js +19 -0
  181. package/dist/web/assets/conflict-editor-rOpVkK9P.js.br +0 -0
  182. package/dist/web/assets/conflict-editor-rOpVkK9P.js.gz +0 -0
  183. package/dist/web/assets/connection-form-tab-BGmb918E.js +4 -0
  184. package/dist/web/assets/connection-form-tab-BGmb918E.js.br +0 -0
  185. package/dist/web/assets/connection-form-tab-BGmb918E.js.gz +0 -0
  186. package/dist/web/assets/context-menu-BoQ6lxte.js +1 -0
  187. package/dist/web/assets/context-menu-BoQ6lxte.js.br +0 -0
  188. package/dist/web/assets/context-menu-BoQ6lxte.js.gz +0 -0
  189. package/dist/web/assets/cose-bilkent-S5V4N54A-mB8HA52z.js +1 -0
  190. package/dist/web/assets/cose-bilkent-S5V4N54A-mB8HA52z.js.br +0 -0
  191. package/dist/web/assets/cose-bilkent-S5V4N54A-mB8HA52z.js.gz +0 -0
  192. package/dist/web/assets/cpp-D9qUQN_l.js +1 -0
  193. package/dist/web/assets/cpp-D9qUQN_l.js.br +0 -0
  194. package/dist/web/assets/cpp-D9qUQN_l.js.gz +0 -0
  195. package/dist/web/assets/crystal-BbeV_Mwx.js +1 -0
  196. package/dist/web/assets/crystal-BbeV_Mwx.js.br +0 -0
  197. package/dist/web/assets/crystal-BbeV_Mwx.js.gz +0 -0
  198. package/dist/web/assets/csv-preview-CM7su92m.js +10 -0
  199. package/dist/web/assets/csv-preview-CM7su92m.js.br +0 -0
  200. package/dist/web/assets/csv-preview-CM7su92m.js.gz +0 -0
  201. package/dist/web/assets/dagre-DCmRVAkd.js +1 -0
  202. package/dist/web/assets/dagre-DCmRVAkd.js.br +0 -0
  203. package/dist/web/assets/dagre-DCmRVAkd.js.gz +0 -0
  204. package/dist/web/assets/dagre-KLK3FWXG-BbiZfyLJ.js +4 -0
  205. package/dist/web/assets/dagre-KLK3FWXG-BbiZfyLJ.js.br +0 -0
  206. package/dist/web/assets/dagre-KLK3FWXG-BbiZfyLJ.js.gz +0 -0
  207. package/dist/web/assets/database-drivers-section-C6ZKPWaE.js +1 -0
  208. package/dist/web/assets/database-drivers-section-C6ZKPWaE.js.br +0 -0
  209. package/dist/web/assets/database-drivers-section-C6ZKPWaE.js.gz +0 -0
  210. package/dist/web/assets/db-explorer-store-BcLxq-X0.js +1 -0
  211. package/dist/web/assets/db-explorer-store-BcLxq-X0.js.br +0 -0
  212. package/dist/web/assets/db-explorer-store-BcLxq-X0.js.gz +0 -0
  213. package/dist/web/assets/db-tab-parts-DvmnlA6V.js +1 -0
  214. package/dist/web/assets/db-tab-parts-DvmnlA6V.js.br +0 -0
  215. package/dist/web/assets/db-tab-parts-DvmnlA6V.js.gz +0 -0
  216. package/dist/web/assets/db-types-9ac-eYxf.js +1 -0
  217. package/dist/web/assets/db-types-9ac-eYxf.js.br +0 -0
  218. package/dist/web/assets/db-types-9ac-eYxf.js.gz +0 -0
  219. package/dist/web/assets/design-canvas-check-Bo76Q6Qr.js +1 -0
  220. package/dist/web/assets/design-canvas-check-Bo76Q6Qr.js.br +0 -0
  221. package/dist/web/assets/design-canvas-check-Bo76Q6Qr.js.gz +0 -0
  222. package/dist/web/assets/design-export-client-ClwRg798.js +1 -0
  223. package/dist/web/assets/design-export-client-ClwRg798.js.br +0 -0
  224. package/dist/web/assets/design-export-client-ClwRg798.js.gz +0 -0
  225. package/dist/web/assets/design-responsive-dialog-Cdccv3Nw.js +1 -0
  226. package/dist/web/assets/design-responsive-dialog-Cdccv3Nw.js.br +0 -0
  227. package/dist/web/assets/design-responsive-dialog-Cdccv3Nw.js.gz +0 -0
  228. package/dist/web/assets/design-settings-section-CuxZSLAr.js +2 -0
  229. package/dist/web/assets/design-settings-section-CuxZSLAr.js.br +0 -0
  230. package/dist/web/assets/design-settings-section-CuxZSLAr.js.gz +0 -0
  231. package/dist/web/assets/design-skill-suggestion-DZQjG8FV.js +3 -0
  232. package/dist/web/assets/design-skill-suggestion-DZQjG8FV.js.br +0 -0
  233. package/dist/web/assets/design-skill-suggestion-DZQjG8FV.js.gz +0 -0
  234. package/dist/web/assets/design-tab-JlKmHVkd.js +57 -0
  235. package/dist/web/assets/design-tab-JlKmHVkd.js.br +0 -0
  236. package/dist/web/assets/design-tab-JlKmHVkd.js.gz +0 -0
  237. package/dist/web/assets/designs-sidebar-panel-C1EwWf4Z.js +1 -0
  238. package/dist/web/assets/designs-sidebar-panel-C1EwWf4Z.js.br +0 -0
  239. package/dist/web/assets/designs-sidebar-panel-C1EwWf4Z.js.gz +0 -0
  240. package/dist/web/assets/diagram-E7M64L7V-DqWzOwQy.js +24 -0
  241. package/dist/web/assets/diagram-E7M64L7V-DqWzOwQy.js.br +0 -0
  242. package/dist/web/assets/diagram-E7M64L7V-DqWzOwQy.js.gz +0 -0
  243. package/dist/web/assets/diagram-IFDJBPK2-Dxmm5YBr.js +43 -0
  244. package/dist/web/assets/diagram-IFDJBPK2-Dxmm5YBr.js.br +0 -0
  245. package/dist/web/assets/diagram-IFDJBPK2-Dxmm5YBr.js.gz +0 -0
  246. package/dist/web/assets/diagram-P4PSJMXO-D1gJGa3M.js +24 -0
  247. package/dist/web/assets/diagram-P4PSJMXO-D1gJGa3M.js.br +0 -0
  248. package/dist/web/assets/diagram-P4PSJMXO-D1gJGa3M.js.gz +0 -0
  249. package/dist/web/assets/dialog-DOaEX6AK.js +1 -0
  250. package/dist/web/assets/dialog-DOaEX6AK.js.br +0 -0
  251. package/dist/web/assets/dialog-DOaEX6AK.js.gz +0 -0
  252. package/dist/web/assets/diff-viewer-FidH7Nsq.js +4 -0
  253. package/dist/web/assets/diff-viewer-FidH7Nsq.js.br +0 -0
  254. package/dist/web/assets/diff-viewer-FidH7Nsq.js.gz +0 -0
  255. package/dist/web/assets/docx-preview-ENiLGqzy.js +12 -0
  256. package/dist/web/assets/docx-preview-ENiLGqzy.js.br +0 -0
  257. package/dist/web/assets/docx-preview-ENiLGqzy.js.gz +0 -0
  258. package/dist/web/assets/dropdown-menu-DB3yyoVz.js +1 -0
  259. package/dist/web/assets/dropdown-menu-DB3yyoVz.js.br +0 -0
  260. package/dist/web/assets/dropdown-menu-DB3yyoVz.js.gz +0 -0
  261. package/dist/web/assets/edge-vA_btsvt.js +1 -0
  262. package/dist/web/assets/edge-vA_btsvt.js.br +0 -0
  263. package/dist/web/assets/edge-vA_btsvt.js.gz +0 -0
  264. package/dist/web/assets/edit-diff-preview-D4EqC86X.js +7 -0
  265. package/dist/web/assets/edit-diff-preview-D4EqC86X.js.br +0 -0
  266. package/dist/web/assets/edit-diff-preview-D4EqC86X.js.gz +0 -0
  267. package/dist/web/assets/editor-dialog-DC7dUWAX.js +1 -0
  268. package/dist/web/assets/editor-dialog-DC7dUWAX.js.br +0 -0
  269. package/dist/web/assets/editor-dialog-DC7dUWAX.js.gz +0 -0
  270. package/dist/web/assets/editor-language-service-0pN0TxYN.js +1 -0
  271. package/dist/web/assets/editor-language-service-0pN0TxYN.js.br +0 -0
  272. package/dist/web/assets/editor-language-service-0pN0TxYN.js.gz +0 -0
  273. package/dist/web/assets/elixir-jDRKDZoF.js +1 -0
  274. package/dist/web/assets/elixir-jDRKDZoF.js.br +0 -0
  275. package/dist/web/assets/elixir-jDRKDZoF.js.gz +0 -0
  276. package/dist/web/assets/elm-DAS3eMJt.js +1 -0
  277. package/dist/web/assets/elm-DAS3eMJt.js.br +0 -0
  278. package/dist/web/assets/elm-DAS3eMJt.js.gz +0 -0
  279. package/dist/web/assets/erDiagram-INFDFZHY-DU44Y1XS.js +70 -0
  280. package/dist/web/assets/erDiagram-INFDFZHY-DU44Y1XS.js.br +0 -0
  281. package/dist/web/assets/erDiagram-INFDFZHY-DU44Y1XS.js.gz +0 -0
  282. package/dist/web/assets/erb-C7IJmpH8.js +1 -0
  283. package/dist/web/assets/erb-C7IJmpH8.js.br +0 -0
  284. package/dist/web/assets/erb-C7IJmpH8.js.gz +0 -0
  285. package/dist/web/assets/erlang-DW-GAdmv.js +1 -0
  286. package/dist/web/assets/erlang-DW-GAdmv.js.br +0 -0
  287. package/dist/web/assets/erlang-DW-GAdmv.js.gz +0 -0
  288. package/dist/web/assets/explorer-body-tFaUp9_Q.js +2 -0
  289. package/dist/web/assets/explorer-body-tFaUp9_Q.js.br +0 -0
  290. package/dist/web/assets/explorer-body-tFaUp9_Q.js.gz +0 -0
  291. package/dist/web/assets/explorer-model-BmgFEsj1.js +1 -0
  292. package/dist/web/assets/explorer-model-BmgFEsj1.js.br +0 -0
  293. package/dist/web/assets/explorer-model-BmgFEsj1.js.gz +0 -0
  294. package/dist/web/assets/explorer-window-content-XnRTZT_X.js +1 -0
  295. package/dist/web/assets/explorer-window-content-XnRTZT_X.js.br +0 -0
  296. package/dist/web/assets/explorer-window-content-XnRTZT_X.js.gz +0 -0
  297. package/dist/web/assets/extension-manager-section-DEbwRPf1.js +1 -0
  298. package/dist/web/assets/extension-manager-section-DEbwRPf1.js.br +0 -0
  299. package/dist/web/assets/extension-manager-section-DEbwRPf1.js.gz +0 -0
  300. package/dist/web/assets/extension-webview-C9ApceLU.js +12 -0
  301. package/dist/web/assets/extension-webview-C9ApceLU.js.br +0 -0
  302. package/dist/web/assets/extension-webview-C9ApceLU.js.gz +0 -0
  303. package/dist/web/assets/file-diff-lX1a7RLF.js +1 -0
  304. package/dist/web/assets/file-icons-DpwcJLL4.js +1 -0
  305. package/dist/web/assets/file-icons-DpwcJLL4.js.br +0 -0
  306. package/dist/web/assets/file-icons-DpwcJLL4.js.gz +0 -0
  307. package/dist/web/assets/file-icons.generated-BTxvyD8L.css +1 -0
  308. package/dist/web/assets/file-icons.generated-BTxvyD8L.css.br +0 -0
  309. package/dist/web/assets/file-icons.generated-BTxvyD8L.css.gz +0 -0
  310. package/dist/web/assets/file-store-Bk1WYfdy.js +1 -0
  311. package/dist/web/assets/file-store-Bk1WYfdy.js.br +0 -0
  312. package/dist/web/assets/file-store-Bk1WYfdy.js.gz +0 -0
  313. package/dist/web/assets/files-settings-section-C8MacVFQ.js +1 -0
  314. package/dist/web/assets/files-settings-section-C8MacVFQ.js.br +0 -0
  315. package/dist/web/assets/files-settings-section-C8MacVFQ.js.gz +0 -0
  316. package/dist/web/assets/filter-dialog-frame-CoWlaNRy.js +1 -0
  317. package/dist/web/assets/filter-dialog-frame-CoWlaNRy.js.br +0 -0
  318. package/dist/web/assets/filter-dialog-frame-CoWlaNRy.js.gz +0 -0
  319. package/dist/web/assets/flowDiagram-PKNHOUZH-XzNJSFMz.js +162 -0
  320. package/dist/web/assets/flowDiagram-PKNHOUZH-XzNJSFMz.js.br +0 -0
  321. package/dist/web/assets/flowDiagram-PKNHOUZH-XzNJSFMz.js.gz +0 -0
  322. package/dist/web/assets/format-file-meta-C0LKHE3e.js +1 -0
  323. package/dist/web/assets/format-file-meta-C0LKHE3e.js.br +0 -0
  324. package/dist/web/assets/format-file-meta-C0LKHE3e.js.gz +0 -0
  325. package/dist/web/assets/fortran-fixed-form-DrQbMSkt.js +1 -0
  326. package/dist/web/assets/fortran-fixed-form-DrQbMSkt.js.br +0 -0
  327. package/dist/web/assets/fortran-fixed-form-DrQbMSkt.js.gz +0 -0
  328. package/dist/web/assets/fs-api-BQrIEcvo.js +1 -0
  329. package/dist/web/assets/fs-api-BQrIEcvo.js.br +0 -0
  330. package/dist/web/assets/fs-api-BQrIEcvo.js.gz +0 -0
  331. package/dist/web/assets/fsharp-DvDj84Ys.js +1 -0
  332. package/dist/web/assets/fsharp-DvDj84Ys.js.br +0 -0
  333. package/dist/web/assets/fsharp-DvDj84Ys.js.gz +0 -0
  334. package/dist/web/assets/ganttDiagram-A5KZAMGK-5AL8Egrk.js +292 -0
  335. package/dist/web/assets/ganttDiagram-A5KZAMGK-5AL8Egrk.js.br +0 -0
  336. package/dist/web/assets/ganttDiagram-A5KZAMGK-5AL8Egrk.js.gz +0 -0
  337. package/dist/web/assets/gdresource-CPgY7R2s.js +1 -0
  338. package/dist/web/assets/gdresource-CPgY7R2s.js.br +0 -0
  339. package/dist/web/assets/gdresource-CPgY7R2s.js.gz +0 -0
  340. package/dist/web/assets/general-settings-section-DZRRGdlQ.js +1 -0
  341. package/dist/web/assets/general-settings-section-DZRRGdlQ.js.br +0 -0
  342. package/dist/web/assets/general-settings-section-DZRRGdlQ.js.gz +0 -0
  343. package/dist/web/assets/git-commit-NJ9iGbTd.js +1 -0
  344. package/dist/web/assets/git-commit-NJ9iGbTd.js.br +4 -0
  345. package/dist/web/assets/git-commit-NJ9iGbTd.js.gz +0 -0
  346. package/dist/web/assets/git-commit-horizontal-BVihXafd.js +1 -0
  347. package/dist/web/assets/git-log-panel-g2pBnu6r.js +1 -0
  348. package/dist/web/assets/git-log-panel-g2pBnu6r.js.br +0 -0
  349. package/dist/web/assets/git-log-panel-g2pBnu6r.js.gz +0 -0
  350. package/dist/web/assets/git-rebase-Cm4Uf8Bj.js +1 -0
  351. package/dist/web/assets/git-repo-store-BOYLnV67.js +1 -0
  352. package/dist/web/assets/git-repo-store-BOYLnV67.js.br +0 -0
  353. package/dist/web/assets/git-repo-store-BOYLnV67.js.gz +0 -0
  354. package/dist/web/assets/git-review-tab-BzI5mxWd.js +3 -0
  355. package/dist/web/assets/git-review-tab-BzI5mxWd.js.br +0 -0
  356. package/dist/web/assets/git-review-tab-BzI5mxWd.js.gz +0 -0
  357. package/dist/web/assets/gitGraph-HDMCJU4V-6AuIeDPs.js +1 -0
  358. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-DzKvk1bR.js +65 -0
  359. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-DzKvk1bR.js.br +0 -0
  360. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-DzKvk1bR.js.gz +0 -0
  361. package/dist/web/assets/glide-data-grid-BxvI3ehr.js +177 -0
  362. package/dist/web/assets/glide-data-grid-BxvI3ehr.js.br +0 -0
  363. package/dist/web/assets/glide-data-grid-BxvI3ehr.js.gz +0 -0
  364. package/dist/web/assets/glimmer-js-BrXGdFD2.js +1 -0
  365. package/dist/web/assets/glimmer-js-BrXGdFD2.js.br +0 -0
  366. package/dist/web/assets/glimmer-js-BrXGdFD2.js.gz +0 -0
  367. package/dist/web/assets/glimmer-ts-V0NFutRE.js +1 -0
  368. package/dist/web/assets/glimmer-ts-V0NFutRE.js.br +0 -0
  369. package/dist/web/assets/glimmer-ts-V0NFutRE.js.gz +0 -0
  370. package/dist/web/assets/glsl-DtvoVBT2.js +1 -0
  371. package/dist/web/assets/glsl-DtvoVBT2.js.br +0 -0
  372. package/dist/web/assets/glsl-DtvoVBT2.js.gz +0 -0
  373. package/dist/web/assets/graphlib-BpGCrXCx.js +1 -0
  374. package/dist/web/assets/graphlib-BpGCrXCx.js.br +0 -0
  375. package/dist/web/assets/graphlib-BpGCrXCx.js.gz +0 -0
  376. package/dist/web/assets/graphql-BM_SRktm.js +1 -0
  377. package/dist/web/assets/graphql-BM_SRktm.js.br +0 -0
  378. package/dist/web/assets/graphql-BM_SRktm.js.gz +0 -0
  379. package/dist/web/assets/grid-save-dialog-D55Po6Vu.js +2 -0
  380. package/dist/web/assets/grid-save-dialog-D55Po6Vu.js.br +0 -0
  381. package/dist/web/assets/grid-save-dialog-D55Po6Vu.js.gz +0 -0
  382. package/dist/web/assets/group-chat-tab-CoMC-Fx1.js +1 -0
  383. package/dist/web/assets/group-chat-tab-CoMC-Fx1.js.br +0 -0
  384. package/dist/web/assets/group-chat-tab-CoMC-Fx1.js.gz +0 -0
  385. package/dist/web/assets/hack-Ban3lpvB.js +1 -0
  386. package/dist/web/assets/hack-Ban3lpvB.js.br +0 -0
  387. package/dist/web/assets/hack-Ban3lpvB.js.gz +0 -0
  388. package/dist/web/assets/haml-CmZRp0VI.js +1 -0
  389. package/dist/web/assets/haml-CmZRp0VI.js.br +0 -0
  390. package/dist/web/assets/haml-CmZRp0VI.js.gz +0 -0
  391. package/dist/web/assets/handlebars-BTEDAMAb.js +1 -0
  392. package/dist/web/assets/handlebars-BTEDAMAb.js.br +0 -0
  393. package/dist/web/assets/handlebars-BTEDAMAb.js.gz +0 -0
  394. package/dist/web/assets/html-ItWVe1s-.js +1 -0
  395. package/dist/web/assets/html-ItWVe1s-.js.br +0 -0
  396. package/dist/web/assets/html-ItWVe1s-.js.gz +0 -0
  397. package/dist/web/assets/html-derivative-D_5yGE7d.js +1 -0
  398. package/dist/web/assets/http-7C1QiRf1.js +1 -0
  399. package/dist/web/assets/http-7C1QiRf1.js.br +0 -0
  400. package/dist/web/assets/http-7C1QiRf1.js.gz +0 -0
  401. package/dist/web/assets/hurl-Pypp_tSf.js +1 -0
  402. package/dist/web/assets/hurl-Pypp_tSf.js.br +0 -0
  403. package/dist/web/assets/hurl-Pypp_tSf.js.gz +0 -0
  404. package/dist/web/assets/hxml-C2EdtM37.js +1 -0
  405. package/dist/web/assets/hxml-C2EdtM37.js.br +0 -0
  406. package/dist/web/assets/hxml-C2EdtM37.js.gz +0 -0
  407. package/dist/web/assets/icons-JMA45Ifw.js +1 -0
  408. package/dist/web/assets/icons-JMA45Ifw.js.br +0 -0
  409. package/dist/web/assets/icons-JMA45Ifw.js.gz +0 -0
  410. package/dist/web/assets/image-preview-D7KR11Xo.js +1 -0
  411. package/dist/web/assets/impexp-state-BWKOuRGj.js +4 -0
  412. package/dist/web/assets/impexp-state-BWKOuRGj.js.br +0 -0
  413. package/dist/web/assets/impexp-state-BWKOuRGj.js.gz +0 -0
  414. package/dist/web/assets/impexp-tab-JF6JF8eO.js +1 -0
  415. package/dist/web/assets/impexp-tab-JF6JF8eO.js.br +0 -0
  416. package/dist/web/assets/impexp-tab-JF6JF8eO.js.gz +0 -0
  417. package/dist/web/assets/index-DyYGWFVa.css +1 -0
  418. package/dist/web/assets/index-DyYGWFVa.css.br +0 -0
  419. package/dist/web/assets/index-DyYGWFVa.css.gz +0 -0
  420. package/dist/web/assets/index-ItT-dTPV.js +59 -0
  421. package/dist/web/assets/index-ItT-dTPV.js.br +0 -0
  422. package/dist/web/assets/index-ItT-dTPV.js.gz +0 -0
  423. package/dist/web/assets/info-3K5VOQVL-CE88wNg6.js +1 -0
  424. package/dist/web/assets/infoDiagram-LFFYTUFH-BCnHmp4F.js +2 -0
  425. package/dist/web/assets/input-CKGoVpYv.js +1 -0
  426. package/dist/web/assets/isEmpty-dcb0OVvj.js +1 -0
  427. package/dist/web/assets/isEmpty-dcb0OVvj.js.br +0 -0
  428. package/dist/web/assets/isEmpty-dcb0OVvj.js.gz +0 -0
  429. package/dist/web/assets/ishikawaDiagram-PHBUUO56-gS3UZ04x.js +70 -0
  430. package/dist/web/assets/ishikawaDiagram-PHBUUO56-gS3UZ04x.js.br +0 -0
  431. package/dist/web/assets/ishikawaDiagram-PHBUUO56-gS3UZ04x.js.gz +0 -0
  432. package/dist/web/assets/jinja-CUU2G4qS.js +1 -0
  433. package/dist/web/assets/jinja-CUU2G4qS.js.br +0 -0
  434. package/dist/web/assets/jinja-CUU2G4qS.js.gz +0 -0
  435. package/dist/web/assets/jira-watcher-section-CvyXLyjO.js +1 -0
  436. package/dist/web/assets/jison-Cafe7d1m.js +1 -0
  437. package/dist/web/assets/jison-Cafe7d1m.js.br +0 -0
  438. package/dist/web/assets/jison-Cafe7d1m.js.gz +0 -0
  439. package/dist/web/assets/journeyDiagram-4ABVD52K-COVa2Vge.js +139 -0
  440. package/dist/web/assets/journeyDiagram-4ABVD52K-COVa2Vge.js.br +0 -0
  441. package/dist/web/assets/journeyDiagram-4ABVD52K-COVa2Vge.js.gz +0 -0
  442. package/dist/web/assets/julia-6B24A_s4.js +1 -0
  443. package/dist/web/assets/julia-6B24A_s4.js.br +0 -0
  444. package/dist/web/assets/julia-6B24A_s4.js.gz +0 -0
  445. package/dist/web/assets/just-B-sDN3xg.js +1 -0
  446. package/dist/web/assets/just-B-sDN3xg.js.br +0 -0
  447. package/dist/web/assets/just-B-sDN3xg.js.gz +0 -0
  448. package/dist/web/assets/kanban-definition-K7BYSVSG-CtqP4i48.js +89 -0
  449. package/dist/web/assets/kanban-definition-K7BYSVSG-CtqP4i48.js.br +0 -0
  450. package/dist/web/assets/kanban-definition-K7BYSVSG-CtqP4i48.js.gz +0 -0
  451. package/dist/web/assets/keybindings-store-CeEtx6js.js +1 -0
  452. package/dist/web/assets/keyboard-shortcuts-section-MUIE0Rvf.js +1 -0
  453. package/dist/web/assets/keyboard-shortcuts-section-MUIE0Rvf.js.br +0 -0
  454. package/dist/web/assets/keyboard-shortcuts-section-MUIE0Rvf.js.gz +0 -0
  455. package/dist/web/assets/language-servers-section-DiYURB24.js +2 -0
  456. package/dist/web/assets/language-servers-section-DiYURB24.js.br +0 -0
  457. package/dist/web/assets/language-servers-section-DiYURB24.js.gz +0 -0
  458. package/dist/web/assets/latex-BRjk2Rtm.js +1 -0
  459. package/dist/web/assets/latex-BRjk2Rtm.js.br +0 -0
  460. package/dist/web/assets/latex-BRjk2Rtm.js.gz +0 -0
  461. package/dist/web/assets/line-DXN3CJk7.js +1 -0
  462. package/dist/web/assets/linear-A-Z2llI9.js +1 -0
  463. package/dist/web/assets/linear-A-Z2llI9.js.br +0 -0
  464. package/dist/web/assets/linear-A-Z2llI9.js.gz +0 -0
  465. package/dist/web/assets/liquid-C5GHq6B-.js +1 -0
  466. package/dist/web/assets/liquid-C5GHq6B-.js.br +0 -0
  467. package/dist/web/assets/liquid-C5GHq6B-.js.gz +0 -0
  468. package/dist/web/assets/logs-app-C4OVSXwd.css +1 -0
  469. package/dist/web/assets/logs-app-C4OVSXwd.css.br +0 -0
  470. package/dist/web/assets/logs-app-C4OVSXwd.css.gz +0 -0
  471. package/dist/web/assets/logs-app-CJlNqOdc.js +13 -0
  472. package/dist/web/assets/logs-app-CJlNqOdc.js.br +0 -0
  473. package/dist/web/assets/logs-app-CJlNqOdc.js.gz +0 -0
  474. package/dist/web/assets/logs-tab-BoAlm_8H.js +1 -0
  475. package/dist/web/assets/logs-window-content-nNm4jl1s.js +1 -0
  476. package/dist/web/assets/lsp-client-LnKiMWeG.js +1 -0
  477. package/dist/web/assets/lsp-client-LnKiMWeG.js.br +0 -0
  478. package/dist/web/assets/lsp-client-LnKiMWeG.js.gz +0 -0
  479. package/dist/web/assets/lua-CREU2Cg5.js +1 -0
  480. package/dist/web/assets/lua-CREU2Cg5.js.br +0 -0
  481. package/dist/web/assets/lua-CREU2Cg5.js.gz +0 -0
  482. package/dist/web/assets/markdown-renderer-8Hef5MLx.js +1 -0
  483. package/dist/web/assets/markdown-renderer-BH_CFPJw.js +5 -0
  484. package/dist/web/assets/markdown-renderer-BH_CFPJw.js.br +0 -0
  485. package/dist/web/assets/markdown-renderer-BH_CFPJw.js.gz +0 -0
  486. package/dist/web/assets/marko-A01nJSfd.js +1 -0
  487. package/dist/web/assets/marko-A01nJSfd.js.br +0 -0
  488. package/dist/web/assets/marko-A01nJSfd.js.gz +0 -0
  489. package/dist/web/assets/mdc-coGBHeYV.js +1 -0
  490. package/dist/web/assets/mdc-coGBHeYV.js.br +0 -0
  491. package/dist/web/assets/mdc-coGBHeYV.js.gz +0 -0
  492. package/dist/web/assets/media-url-CsdZ6q_T.js +1 -0
  493. package/dist/web/assets/mermaid-parser.core-BwbMfUJY.js +4 -0
  494. package/dist/web/assets/mermaid-parser.core-BwbMfUJY.js.br +0 -0
  495. package/dist/web/assets/mermaid-parser.core-BwbMfUJY.js.gz +0 -0
  496. package/dist/web/assets/mermaid.core-DNHX7DSU.js +11 -0
  497. package/dist/web/assets/mermaid.core-DNHX7DSU.js.br +0 -0
  498. package/dist/web/assets/mermaid.core-DNHX7DSU.js.gz +0 -0
  499. package/dist/web/assets/mindmap-definition-YRQLILUH-B7las60M.js +68 -0
  500. package/dist/web/assets/mindmap-definition-YRQLILUH-B7las60M.js.br +0 -0
  501. package/dist/web/assets/mindmap-definition-YRQLILUH-B7las60M.js.gz +0 -0
  502. package/dist/web/assets/mobile-bottom-sheet-CGmmdp_5.js +1 -0
  503. package/dist/web/assets/mobile-bottom-sheet-CGmmdp_5.js.br +0 -0
  504. package/dist/web/assets/mobile-bottom-sheet-CGmmdp_5.js.gz +0 -0
  505. package/dist/web/assets/mobile-explorer-sheet-Dh2ZECzL.js +1 -0
  506. package/dist/web/assets/mobile-explorer-sheet-Dh2ZECzL.js.br +0 -0
  507. package/dist/web/assets/mobile-explorer-sheet-Dh2ZECzL.js.gz +0 -0
  508. package/dist/web/assets/monaco-dotenv-language-IZxwhtNA.js +1 -0
  509. package/dist/web/assets/new-design-dialog-CgBUrVFx.js +1 -0
  510. package/dist/web/assets/new-design-dialog-CgBUrVFx.js.br +0 -0
  511. package/dist/web/assets/new-design-dialog-CgBUrVFx.js.gz +0 -0
  512. package/dist/web/assets/nextflow-DKFYidyC.js +1 -0
  513. package/dist/web/assets/nextflow-DKFYidyC.js.br +0 -0
  514. package/dist/web/assets/nextflow-DKFYidyC.js.gz +0 -0
  515. package/dist/web/assets/nginx-B9Y4fsja.js +1 -0
  516. package/dist/web/assets/nginx-B9Y4fsja.js.br +0 -0
  517. package/dist/web/assets/nginx-B9Y4fsja.js.gz +0 -0
  518. package/dist/web/assets/nim-BEDyxLED.js +1 -0
  519. package/dist/web/assets/nim-BEDyxLED.js.br +0 -0
  520. package/dist/web/assets/nim-BEDyxLED.js.gz +0 -0
  521. package/dist/web/assets/notification-store-CXC7u6MW.js +1 -0
  522. package/dist/web/assets/notifications-settings-section-CPbx23nU.js +1 -0
  523. package/dist/web/assets/notifications-settings-section-CPbx23nU.js.br +0 -0
  524. package/dist/web/assets/notifications-settings-section-CPbx23nU.js.gz +0 -0
  525. package/dist/web/assets/onboarding-entry--MWe4amV.js +1 -0
  526. package/dist/web/assets/onboarding-entry--MWe4amV.js.br +0 -0
  527. package/dist/web/assets/onboarding-entry--MWe4amV.js.gz +0 -0
  528. package/dist/web/assets/onboarding-quick-orientation-DZYQekRt.js +1 -0
  529. package/dist/web/assets/onboarding-quick-orientation-DZYQekRt.js.br +0 -0
  530. package/dist/web/assets/onboarding-quick-orientation-DZYQekRt.js.gz +0 -0
  531. package/dist/web/assets/open-db-tabs-CkQe49j_.js +1 -0
  532. package/dist/web/assets/open-db-tabs-CkQe49j_.js.br +0 -0
  533. package/dist/web/assets/open-db-tabs-CkQe49j_.js.gz +0 -0
  534. package/dist/web/assets/open-settings-DsGBn73g.js +1 -0
  535. package/dist/web/assets/ordinal-U3GzwL7N.js +1 -0
  536. package/dist/web/assets/ordinal-U3GzwL7N.js.br +0 -0
  537. package/dist/web/assets/ordinal-U3GzwL7N.js.gz +0 -0
  538. package/dist/web/assets/overview-panel-CcUGDvnt.js +1 -0
  539. package/dist/web/assets/overview-panel-CcUGDvnt.js.br +0 -0
  540. package/dist/web/assets/overview-panel-CcUGDvnt.js.gz +0 -0
  541. package/dist/web/assets/packet-RMMSAZCW-m_QfwO7e.js +1 -0
  542. package/dist/web/assets/panel-store-DmP16Fo0.js +1 -0
  543. package/dist/web/assets/panel-store-DmP16Fo0.js.br +0 -0
  544. package/dist/web/assets/panel-store-DmP16Fo0.js.gz +0 -0
  545. package/dist/web/assets/patch-tab-metadata-B-jH5svY.js +1 -0
  546. package/dist/web/assets/pdf-preview-DMUIWb9B.js +1 -0
  547. package/dist/web/assets/pdf-preview-DMUIWb9B.js.br +0 -0
  548. package/dist/web/assets/pdf-preview-DMUIWb9B.js.gz +0 -0
  549. package/dist/web/assets/performance-panel-CJDLUwrs.js +3 -0
  550. package/dist/web/assets/performance-panel-CJDLUwrs.js.br +0 -0
  551. package/dist/web/assets/performance-panel-CJDLUwrs.js.gz +0 -0
  552. package/dist/web/assets/perl-CSnMi18C.js +1 -0
  553. package/dist/web/assets/perl-CSnMi18C.js.br +0 -0
  554. package/dist/web/assets/perl-CSnMi18C.js.gz +0 -0
  555. package/dist/web/assets/php-BXzT2401.js +1 -0
  556. package/dist/web/assets/php-BXzT2401.js.br +0 -0
  557. package/dist/web/assets/php-BXzT2401.js.gz +0 -0
  558. package/dist/web/assets/pie-UPGHQEXC-CLkXafuF.js +1 -0
  559. package/dist/web/assets/pieDiagram-SKSYHLDU-BO4P6Wpl.js +30 -0
  560. package/dist/web/assets/pieDiagram-SKSYHLDU-BO4P6Wpl.js.br +0 -0
  561. package/dist/web/assets/pieDiagram-SKSYHLDU-BO4P6Wpl.js.gz +0 -0
  562. package/dist/web/assets/ppmbot-settings-section-DTCTPQ-R.js +1 -0
  563. package/dist/web/assets/ppmbot-settings-section-DTCTPQ-R.js.br +0 -0
  564. package/dist/web/assets/ppmbot-settings-section-DTCTPQ-R.js.gz +0 -0
  565. package/dist/web/assets/pptx-export-BxmgltJ4.js +111 -0
  566. package/dist/web/assets/pptx-export-BxmgltJ4.js.br +0 -0
  567. package/dist/web/assets/pptx-export-BxmgltJ4.js.gz +0 -0
  568. package/dist/web/assets/problems-panel-DX32QDH_.js +1 -0
  569. package/dist/web/assets/problems-panel-DX32QDH_.js.br +0 -0
  570. package/dist/web/assets/problems-panel-DX32QDH_.js.gz +0 -0
  571. package/dist/web/assets/process-row-format-CBw-CQCx.js +1 -0
  572. package/dist/web/assets/process-table-CX-NhOg6.js +1 -0
  573. package/dist/web/assets/process-table-CX-NhOg6.js.br +0 -0
  574. package/dist/web/assets/process-table-CX-NhOg6.js.gz +0 -0
  575. package/dist/web/assets/project-framework-store-Bi5dyHdx.js +1 -0
  576. package/dist/web/assets/project-store-CEGoLMOl.js +1 -0
  577. package/dist/web/assets/project-store-CEGoLMOl.js.br +0 -0
  578. package/dist/web/assets/project-store-CEGoLMOl.js.gz +0 -0
  579. package/dist/web/assets/proxy-settings-section-BGNvFe7e.js +1 -0
  580. package/dist/web/assets/proxy-settings-section-BGNvFe7e.js.br +0 -0
  581. package/dist/web/assets/proxy-settings-section-BGNvFe7e.js.gz +0 -0
  582. package/dist/web/assets/pug-Bv9xupen.js +1 -0
  583. package/dist/web/assets/pug-Bv9xupen.js.br +0 -0
  584. package/dist/web/assets/pug-Bv9xupen.js.gz +0 -0
  585. package/dist/web/assets/qml-C3E1ICV4.js +1 -0
  586. package/dist/web/assets/qml-C3E1ICV4.js.br +0 -0
  587. package/dist/web/assets/qml-C3E1ICV4.js.gz +0 -0
  588. package/dist/web/assets/quadrantDiagram-337W2JSQ-B4TWXN8P.js +7 -0
  589. package/dist/web/assets/quadrantDiagram-337W2JSQ-B4TWXN8P.js.br +0 -0
  590. package/dist/web/assets/quadrantDiagram-337W2JSQ-B4TWXN8P.js.gz +0 -0
  591. package/dist/web/assets/query-audit-section-DTHI5GP7.js +1 -0
  592. package/dist/web/assets/query-audit-section-DTHI5GP7.js.br +0 -0
  593. package/dist/web/assets/query-audit-section-DTHI5GP7.js.gz +0 -0
  594. package/dist/web/assets/query-tab-qMlIkHRk.js +22 -0
  595. package/dist/web/assets/query-tab-qMlIkHRk.js.br +0 -0
  596. package/dist/web/assets/query-tab-qMlIkHRk.js.gz +0 -0
  597. package/dist/web/assets/radar-KQ55EAFF-BMCQVm9g.js +1 -0
  598. package/dist/web/assets/razor-wo4lUwpU.js +1 -0
  599. package/dist/web/assets/razor-wo4lUwpU.js.br +0 -0
  600. package/dist/web/assets/razor-wo4lUwpU.js.gz +0 -0
  601. package/dist/web/assets/remote-access-settings-section-t2BYAA9g.js +1 -0
  602. package/dist/web/assets/remote-access-settings-section-t2BYAA9g.js.br +0 -0
  603. package/dist/web/assets/remote-access-settings-section-t2BYAA9g.js.gz +0 -0
  604. package/dist/web/assets/remote-desktop-clipboard-notice-ChUU6Jts.js +1 -0
  605. package/dist/web/assets/remote-desktop-clipboard-notice-ChUU6Jts.js.br +0 -0
  606. package/dist/web/assets/remote-desktop-clipboard-notice-ChUU6Jts.js.gz +0 -0
  607. package/dist/web/assets/remote-desktop-mobile-sheet-_bopEtCa.js +2 -0
  608. package/dist/web/assets/remote-desktop-mobile-sheet-_bopEtCa.js.br +0 -0
  609. package/dist/web/assets/remote-desktop-mobile-sheet-_bopEtCa.js.gz +0 -0
  610. package/dist/web/assets/remote-desktop-mobile-view-D9G4kDfa.js +1 -0
  611. package/dist/web/assets/remote-desktop-mobile-view-D9G4kDfa.js.br +0 -0
  612. package/dist/web/assets/remote-desktop-mobile-view-D9G4kDfa.js.gz +0 -0
  613. package/dist/web/assets/remote-desktop-readiness-gate-Yz9eVB3-.js +1 -0
  614. package/dist/web/assets/remote-desktop-readiness-gate-Yz9eVB3-.js.br +0 -0
  615. package/dist/web/assets/remote-desktop-readiness-gate-Yz9eVB3-.js.gz +0 -0
  616. package/dist/web/assets/remote-desktop-settings-section-BTGGSjZY.js +1 -0
  617. package/dist/web/assets/remote-desktop-settings-section-BTGGSjZY.js.br +0 -0
  618. package/dist/web/assets/remote-desktop-settings-section-BTGGSjZY.js.gz +0 -0
  619. package/dist/web/assets/remote-desktop-window-content-B8ZaG2bL.js +1 -0
  620. package/dist/web/assets/remote-desktop-window-content-B8ZaG2bL.js.br +0 -0
  621. package/dist/web/assets/remote-desktop-window-content-B8ZaG2bL.js.gz +0 -0
  622. package/dist/web/assets/rename-object-dialog-FSlcdUoB.js +1 -0
  623. package/dist/web/assets/rename-object-dialog-FSlcdUoB.js.br +0 -0
  624. package/dist/web/assets/rename-object-dialog-FSlcdUoB.js.gz +0 -0
  625. package/dist/web/assets/requirementDiagram-Z7DCOOCP-C3bEBd6h.js +73 -0
  626. package/dist/web/assets/requirementDiagram-Z7DCOOCP-C3bEBd6h.js.br +0 -0
  627. package/dist/web/assets/requirementDiagram-Z7DCOOCP-C3bEBd6h.js.gz +0 -0
  628. package/dist/web/assets/review-code-CfuJeLYd.js +5 -0
  629. package/dist/web/assets/review-code-CfuJeLYd.js.br +0 -0
  630. package/dist/web/assets/review-code-CfuJeLYd.js.gz +0 -0
  631. package/dist/web/assets/rst-BP6JFRY2.js +1 -0
  632. package/dist/web/assets/rst-BP6JFRY2.js.br +0 -0
  633. package/dist/web/assets/rst-BP6JFRY2.js.gz +0 -0
  634. package/dist/web/assets/ruby-EPVx8l1i.js +1 -0
  635. package/dist/web/assets/ruby-EPVx8l1i.js.br +0 -0
  636. package/dist/web/assets/ruby-EPVx8l1i.js.gz +0 -0
  637. package/dist/web/assets/run-in-terminal-Bk9Bw7G1.js +1 -0
  638. package/dist/web/assets/run-in-terminal-button-DFPQUlZs.js +1 -0
  639. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-BxAKhnHw.js +10 -0
  640. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-BxAKhnHw.js.br +0 -0
  641. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-BxAKhnHw.js.gz +0 -0
  642. package/dist/web/assets/sas-NhxEMTOf.js +1 -0
  643. package/dist/web/assets/sas-NhxEMTOf.js.br +0 -0
  644. package/dist/web/assets/sas-NhxEMTOf.js.gz +0 -0
  645. package/dist/web/assets/save-as-dialog-Bj9VpGYf.js +1 -0
  646. package/dist/web/assets/save-as-dialog-Bj9VpGYf.js.br +0 -0
  647. package/dist/web/assets/save-as-dialog-Bj9VpGYf.js.gz +0 -0
  648. package/dist/web/assets/schedules-settings-section-DNJ4K7zS.js +1 -0
  649. package/dist/web/assets/schedules-settings-section-DNJ4K7zS.js.br +0 -0
  650. package/dist/web/assets/schedules-settings-section-DNJ4K7zS.js.gz +0 -0
  651. package/dist/web/assets/scroll-area-6Am1KMiB.js +1 -0
  652. package/dist/web/assets/scroll-area-6Am1KMiB.js.br +0 -0
  653. package/dist/web/assets/scroll-area-6Am1KMiB.js.gz +0 -0
  654. package/dist/web/assets/scss-DdAMYXTJ.js +1 -0
  655. package/dist/web/assets/scss-DdAMYXTJ.js.br +0 -0
  656. package/dist/web/assets/scss-DdAMYXTJ.js.gz +0 -0
  657. package/dist/web/assets/send-to-chat-Bcm_Lcog.js +1 -0
  658. package/dist/web/assets/send-to-chat-Bcm_Lcog.js.br +0 -0
  659. package/dist/web/assets/send-to-chat-Bcm_Lcog.js.gz +0 -0
  660. package/dist/web/assets/separator-BOYUIPkH.js +1 -0
  661. package/dist/web/assets/sequenceDiagram-2WXFIKYE-Dfq9uyFD.js +145 -0
  662. package/dist/web/assets/sequenceDiagram-2WXFIKYE-Dfq9uyFD.js.br +0 -0
  663. package/dist/web/assets/sequenceDiagram-2WXFIKYE-Dfq9uyFD.js.gz +0 -0
  664. package/dist/web/assets/services-panel-CBRTsROB.js +1 -0
  665. package/dist/web/assets/services-panel-CBRTsROB.js.br +0 -0
  666. package/dist/web/assets/services-panel-CBRTsROB.js.gz +0 -0
  667. package/dist/web/assets/session-changes-bar-BRopa3Dh.js +1 -0
  668. package/dist/web/assets/session-changes-bar-BRopa3Dh.js.br +0 -0
  669. package/dist/web/assets/session-changes-bar-BRopa3Dh.js.gz +0 -0
  670. package/dist/web/assets/session-list-sync-triggers-DitiR5h1.js +1 -0
  671. package/dist/web/assets/session-list-sync-triggers-DitiR5h1.js.br +0 -0
  672. package/dist/web/assets/session-list-sync-triggers-DitiR5h1.js.gz +0 -0
  673. package/dist/web/assets/session-review-tab--kNB_FKQ.js +6 -0
  674. package/dist/web/assets/session-review-tab--kNB_FKQ.js.br +0 -0
  675. package/dist/web/assets/session-review-tab--kNB_FKQ.js.gz +0 -0
  676. package/dist/web/assets/session-turns-gmrmXzeg.js +9 -0
  677. package/dist/web/assets/session-turns-gmrmXzeg.js.br +0 -0
  678. package/dist/web/assets/session-turns-gmrmXzeg.js.gz +0 -0
  679. package/dist/web/assets/settings-body-B-s0fEjc.js +1 -0
  680. package/dist/web/assets/settings-body-B-s0fEjc.js.br +0 -0
  681. package/dist/web/assets/settings-body-B-s0fEjc.js.gz +0 -0
  682. package/dist/web/assets/settings-categories-CcR9eL3x.js +1 -0
  683. package/dist/web/assets/settings-categories-CcR9eL3x.js.br +0 -0
  684. package/dist/web/assets/settings-categories-CcR9eL3x.js.gz +0 -0
  685. package/dist/web/assets/settings-section-content-BJ35dy5r.js +1 -0
  686. package/dist/web/assets/settings-section-content-DckksvTg.js +2 -0
  687. package/dist/web/assets/settings-section-content-DckksvTg.js.br +0 -0
  688. package/dist/web/assets/settings-section-content-DckksvTg.js.gz +0 -0
  689. package/dist/web/assets/settings-store-WeJyQVL8.js +2 -0
  690. package/dist/web/assets/settings-store-WeJyQVL8.js.br +0 -0
  691. package/dist/web/assets/settings-store-WeJyQVL8.js.gz +0 -0
  692. package/dist/web/assets/settings-tab-BlX33GEN.js +1 -0
  693. package/dist/web/assets/settings-window-content-B-7yV1_q.js +1 -0
  694. package/dist/web/assets/shaderlab-Cv3mWofL.js +1 -0
  695. package/dist/web/assets/shaderlab-Cv3mWofL.js.br +0 -0
  696. package/dist/web/assets/shaderlab-Cv3mWofL.js.gz +0 -0
  697. package/dist/web/assets/shellsession-47z2x_c2.js +1 -0
  698. package/dist/web/assets/slash-command-picker-BBcy6w6m.js +1 -0
  699. package/dist/web/assets/slash-command-picker-BBcy6w6m.js.br +0 -0
  700. package/dist/web/assets/slash-command-picker-BBcy6w6m.js.gz +0 -0
  701. package/dist/web/assets/sortable-header-B9gfWik4.js +1 -0
  702. package/dist/web/assets/sortable-header-B9gfWik4.js.br +0 -0
  703. package/dist/web/assets/sortable-header-B9gfWik4.js.gz +0 -0
  704. package/dist/web/assets/soy-DbMmewuy.js +1 -0
  705. package/dist/web/assets/soy-DbMmewuy.js.br +0 -0
  706. package/dist/web/assets/soy-DbMmewuy.js.gz +0 -0
  707. package/dist/web/assets/sparql-TvnQmFDh.js +1 -0
  708. package/dist/web/assets/sparql-TvnQmFDh.js.br +0 -0
  709. package/dist/web/assets/sparql-TvnQmFDh.js.gz +0 -0
  710. package/dist/web/assets/sql-completion-provider-CaTHVr1l.js +5 -0
  711. package/dist/web/assets/sql-completion-provider-CaTHVr1l.js.br +0 -0
  712. package/dist/web/assets/sql-completion-provider-CaTHVr1l.js.gz +0 -0
  713. package/dist/web/assets/sql-identifiers-DDISwQor.js +1 -0
  714. package/dist/web/assets/sql-identifiers-DDISwQor.js.br +0 -0
  715. package/dist/web/assets/sql-identifiers-DDISwQor.js.gz +0 -0
  716. package/dist/web/assets/sql-object-tab-DVo4bxRI.js +1 -0
  717. package/dist/web/assets/sql-object-tab-DVo4bxRI.js.br +0 -0
  718. package/dist/web/assets/sql-object-tab-DVo4bxRI.js.gz +0 -0
  719. package/dist/web/assets/sqlite-viewer-BGfIpl5x.js +1 -0
  720. package/dist/web/assets/sqlite-viewer-BGfIpl5x.js.br +0 -0
  721. package/dist/web/assets/sqlite-viewer-BGfIpl5x.js.gz +0 -0
  722. package/dist/web/assets/start-ellipsis-rBh37k0n.js +1 -0
  723. package/dist/web/assets/stata-ColYzPoX.js +1 -0
  724. package/dist/web/assets/stata-ColYzPoX.js.br +0 -0
  725. package/dist/web/assets/stata-ColYzPoX.js.gz +0 -0
  726. package/dist/web/assets/stateDiagram-RAJIS63D-B8YqGq27.js +1 -0
  727. package/dist/web/assets/stateDiagram-RAJIS63D-B8YqGq27.js.br +0 -0
  728. package/dist/web/assets/stateDiagram-RAJIS63D-B8YqGq27.js.gz +0 -0
  729. package/dist/web/assets/stateDiagram-v2-FVOUBMTO-U76Fcmmw.js +1 -0
  730. package/dist/web/assets/structure-save-dialog-STK_RFCK.js +1 -0
  731. package/dist/web/assets/structure-save-dialog-STK_RFCK.js.br +0 -0
  732. package/dist/web/assets/structure-save-dialog-STK_RFCK.js.gz +0 -0
  733. package/dist/web/assets/structure-tab-DuLnsTC4.js +3 -0
  734. package/dist/web/assets/structure-tab-DuLnsTC4.js.br +0 -0
  735. package/dist/web/assets/structure-tab-DuLnsTC4.js.gz +0 -0
  736. package/dist/web/assets/surrealql-Bq6PTSr5.js +1 -0
  737. package/dist/web/assets/surrealql-Bq6PTSr5.js.br +0 -0
  738. package/dist/web/assets/surrealql-Bq6PTSr5.js.gz +0 -0
  739. package/dist/web/assets/svelte-QMQkUlOI.js +1 -0
  740. package/dist/web/assets/svelte-QMQkUlOI.js.br +0 -0
  741. package/dist/web/assets/svelte-QMQkUlOI.js.gz +0 -0
  742. package/dist/web/assets/system-monitor-body-BIjW16Pb.js +2 -0
  743. package/dist/web/assets/system-monitor-body-BIjW16Pb.js.br +0 -0
  744. package/dist/web/assets/system-monitor-body-BIjW16Pb.js.gz +0 -0
  745. package/dist/web/assets/system-monitor-tab-B6_tC9LO.js +1 -0
  746. package/dist/web/assets/system-monitor-window-content-CwBzqMUe.js +1 -0
  747. package/dist/web/assets/tab-host-window-content-CpdEjkZd.js +1 -0
  748. package/dist/web/assets/tab-host-window-content-CpdEjkZd.js.br +0 -0
  749. package/dist/web/assets/tab-host-window-content-CpdEjkZd.js.gz +0 -0
  750. package/dist/web/assets/tab-store-nNzRNfVV.js +1 -0
  751. package/dist/web/assets/table-tab-B5asfTBP.js +2 -0
  752. package/dist/web/assets/table-tab-B5asfTBP.js.br +0 -0
  753. package/dist/web/assets/table-tab-B5asfTBP.js.gz +0 -0
  754. package/dist/web/assets/telegram-bot-token-field-BiqKbXwE.js +1 -0
  755. package/dist/web/assets/telegram-bot-token-field-BiqKbXwE.js.br +0 -0
  756. package/dist/web/assets/telegram-bot-token-field-BiqKbXwE.js.gz +0 -0
  757. package/dist/web/assets/templ-C1kESo-I.js +1 -0
  758. package/dist/web/assets/templ-C1kESo-I.js.br +0 -0
  759. package/dist/web/assets/templ-C1kESo-I.js.gz +0 -0
  760. package/dist/web/assets/terminal-tab-DpMONMVB.js +3 -0
  761. package/dist/web/assets/terminal-tab-DpMONMVB.js.br +0 -0
  762. package/dist/web/assets/terminal-tab-DpMONMVB.js.gz +0 -0
  763. package/dist/web/assets/tex-B0snethp.js +1 -0
  764. package/dist/web/assets/tex-B0snethp.js.br +0 -0
  765. package/dist/web/assets/tex-B0snethp.js.gz +0 -0
  766. package/dist/web/assets/timeline-definition-YZTLITO2-3U3p-lPX.js +61 -0
  767. package/dist/web/assets/timeline-definition-YZTLITO2-3U3p-lPX.js.br +0 -0
  768. package/dist/web/assets/timeline-definition-YZTLITO2-3U3p-lPX.js.gz +0 -0
  769. package/dist/web/assets/tool-cards-DoDKxqN4.js +14 -0
  770. package/dist/web/assets/tool-cards-DoDKxqN4.js.br +0 -0
  771. package/dist/web/assets/tool-cards-DoDKxqN4.js.gz +0 -0
  772. package/dist/web/assets/treemap-KZPCXAKY-X6uv-HhJ.js +1 -0
  773. package/dist/web/assets/ts-tags-XXdX0qhp.js +1 -0
  774. package/dist/web/assets/ts-tags-XXdX0qhp.js.br +0 -0
  775. package/dist/web/assets/ts-tags-XXdX0qhp.js.gz +0 -0
  776. package/dist/web/assets/twig-DIZPhfGq.js +1 -0
  777. package/dist/web/assets/twig-DIZPhfGq.js.br +0 -0
  778. package/dist/web/assets/twig-DIZPhfGq.js.gz +0 -0
  779. package/dist/web/assets/use-at-most-wide-BQFi1Sjv.js +1 -0
  780. package/dist/web/assets/use-blob-url-D7ElNPnW.js +1 -0
  781. package/dist/web/assets/use-db-driver-installed-BscdI-wS.js +1 -0
  782. package/dist/web/assets/use-db-read-DYuyNA5i.js +1 -0
  783. package/dist/web/assets/use-db-read-DYuyNA5i.js.br +0 -0
  784. package/dist/web/assets/use-db-read-DYuyNA5i.js.gz +0 -0
  785. package/dist/web/assets/use-db-tab-Cr4lXxwF.js +1 -0
  786. package/dist/web/assets/use-db-tab-Cr4lXxwF.js.br +0 -0
  787. package/dist/web/assets/use-db-tab-Cr4lXxwF.js.gz +0 -0
  788. package/dist/web/assets/use-design-canvas-check-DKlyMp-S.js +1 -0
  789. package/dist/web/assets/use-design-canvas-check-DKlyMp-S.js.br +0 -0
  790. package/dist/web/assets/use-design-canvas-check-DKlyMp-S.js.gz +0 -0
  791. package/dist/web/assets/use-h264-canvas-decoder-DAjp9oHe.js +1 -0
  792. package/dist/web/assets/use-h264-canvas-decoder-DAjp9oHe.js.br +0 -0
  793. package/dist/web/assets/use-h264-canvas-decoder-DAjp9oHe.js.gz +0 -0
  794. package/dist/web/assets/use-inline-blame-DS0HrHJ3.js +16 -0
  795. package/dist/web/assets/use-inline-blame-DS0HrHJ3.js.br +0 -0
  796. package/dist/web/assets/use-inline-blame-DS0HrHJ3.js.gz +0 -0
  797. package/dist/web/assets/use-lsp-BTVDYrt6.js +6 -0
  798. package/dist/web/assets/use-lsp-BTVDYrt6.js.br +0 -0
  799. package/dist/web/assets/use-lsp-BTVDYrt6.js.gz +0 -0
  800. package/dist/web/assets/use-monaco-theme-DqnhExsm.js +1 -0
  801. package/dist/web/assets/use-opener-focus-C5L5UUJs.js +1 -0
  802. package/dist/web/assets/use-process-kill-D-SGQxDn.js +1 -0
  803. package/dist/web/assets/use-process-kill-D-SGQxDn.js.br +0 -0
  804. package/dist/web/assets/use-process-kill-D-SGQxDn.js.gz +0 -0
  805. package/dist/web/assets/use-sql-schema-info-DRb9dAKi.js +4 -0
  806. package/dist/web/assets/use-sql-schema-info-DRb9dAKi.js.br +0 -0
  807. package/dist/web/assets/use-sql-schema-info-DRb9dAKi.js.gz +0 -0
  808. package/dist/web/assets/use-websocket-C6RnlNVJ.js +1 -0
  809. package/dist/web/assets/vendor-ui-CS1GvlOm.js +45 -0
  810. package/dist/web/assets/vendor-ui-CS1GvlOm.js.br +0 -0
  811. package/dist/web/assets/vendor-ui-CS1GvlOm.js.gz +0 -0
  812. package/dist/web/assets/vennDiagram-LZ73GAT5-DA_6uAVT.js +34 -0
  813. package/dist/web/assets/vennDiagram-LZ73GAT5-DA_6uAVT.js.br +0 -0
  814. package/dist/web/assets/vennDiagram-LZ73GAT5-DA_6uAVT.js.gz +0 -0
  815. package/dist/web/assets/video-preview-CYzeUPfH.js +1 -0
  816. package/dist/web/assets/video-preview-CYzeUPfH.js.br +0 -0
  817. package/dist/web/assets/video-preview-CYzeUPfH.js.gz +0 -0
  818. package/dist/web/assets/voice-settings-section-C01d-toF.js +1 -0
  819. package/dist/web/assets/voice-settings-section-C01d-toF.js.br +0 -0
  820. package/dist/web/assets/voice-settings-section-C01d-toF.js.gz +0 -0
  821. package/dist/web/assets/vue-Bzq4wgkZ.js +1 -0
  822. package/dist/web/assets/vue-Bzq4wgkZ.js.br +0 -0
  823. package/dist/web/assets/vue-Bzq4wgkZ.js.gz +0 -0
  824. package/dist/web/assets/vue-html-Cw1hn392.js +1 -0
  825. package/dist/web/assets/vue-html-Cw1hn392.js.br +0 -0
  826. package/dist/web/assets/vue-html-Cw1hn392.js.gz +0 -0
  827. package/dist/web/assets/vue-vine-BnNe0hw6.js +1 -0
  828. package/dist/web/assets/vue-vine-BnNe0hw6.js.br +0 -0
  829. package/dist/web/assets/vue-vine-BnNe0hw6.js.gz +0 -0
  830. package/dist/web/assets/web-preview-tab-F5C3quQs.js +1 -0
  831. package/dist/web/assets/web-preview-tab-F5C3quQs.js.br +0 -0
  832. package/dist/web/assets/web-preview-tab-F5C3quQs.js.gz +0 -0
  833. package/dist/web/assets/window-pip-registry-DSoB7T3k.js +1 -0
  834. package/dist/web/assets/window-store-zJczRsv4.js +1 -0
  835. package/dist/web/assets/window-store-zJczRsv4.js.br +0 -0
  836. package/dist/web/assets/window-store-zJczRsv4.js.gz +0 -0
  837. package/dist/web/assets/ws-auth-cWeQ7_61.js +1 -0
  838. package/dist/web/assets/xml-B_Dd-eqG.js +1 -0
  839. package/dist/web/assets/xml-B_Dd-eqG.js.br +0 -0
  840. package/dist/web/assets/xml-B_Dd-eqG.js.gz +0 -0
  841. package/dist/web/assets/xsl-gLqXzcUZ.js +1 -0
  842. package/dist/web/assets/xsl-gLqXzcUZ.js.br +0 -0
  843. package/dist/web/assets/xsl-gLqXzcUZ.js.gz +0 -0
  844. package/dist/web/assets/xychartDiagram-JWTSCODW-B02PE8Cu.js +7 -0
  845. package/dist/web/assets/xychartDiagram-JWTSCODW-B02PE8Cu.js.br +0 -0
  846. package/dist/web/assets/xychartDiagram-JWTSCODW-B02PE8Cu.js.gz +0 -0
  847. package/dist/web/index.html +95 -35
  848. package/dist/web/index.html.br +0 -0
  849. package/dist/web/index.html.gz +0 -0
  850. package/dist/web/sw.js +1 -1
  851. package/dist/web/sw.js.br +0 -0
  852. package/dist/web/sw.js.gz +0 -0
  853. package/docs/architecture/ai-chat-and-providers.md +389 -0
  854. package/docs/architecture/android-emulator-phase0-report-260921.md +310 -0
  855. package/docs/architecture/android-emulator-phase2-report-260921.md +163 -0
  856. package/docs/architecture/android-emulator-phase3-report-260921.md +203 -0
  857. package/docs/architecture/android-emulator-phase4-report-260921.md +191 -0
  858. package/docs/architecture/android-emulator-plan-260920.md +376 -0
  859. package/docs/architecture/data-and-storage.md +108 -172
  860. package/docs/architecture/integrations.md +12 -4
  861. package/docs/architecture/plugins-and-tracing.md +48 -7
  862. package/docs/architecture/workspace-and-ui.md +168 -6
  863. package/docs/code-standards.md +30 -1
  864. package/docs/codebase-summary.md +36 -23
  865. package/docs/deployment-guide.md +56 -12
  866. package/docs/project-overview-pdr.md +2 -2
  867. package/docs/project-roadmap.md +21 -2
  868. package/docs/system-architecture.md +12 -7
  869. package/package.json +7 -4
  870. package/packages/ext-git-graph/src/checkout-pathspec.test.ts +52 -0
  871. package/packages/ext-git-graph/src/commit-detail-escaping.test.ts +84 -30
  872. package/packages/ext-git-graph/src/commit-detail-status.test.ts +83 -0
  873. package/packages/ext-git-graph/src/commit-keeps-typing.test.ts +54 -0
  874. package/packages/ext-git-graph/src/commit-paging.test.ts +93 -0
  875. package/packages/ext-git-graph/src/discard-undo-toast.test.ts +46 -0
  876. package/packages/ext-git-graph/src/extension.ts +517 -308
  877. package/packages/ext-git-graph/src/fetch-through-ppm.test.ts +152 -0
  878. package/packages/ext-git-graph/src/git-log-parser.ts +3 -1
  879. package/packages/ext-git-graph/src/gone-branch-filter.test.ts +65 -0
  880. package/packages/ext-git-graph/src/inspector-file-icons.test.ts +93 -0
  881. package/packages/ext-git-graph/src/log-args.test.ts +2 -2
  882. package/packages/ext-git-graph/src/outside-ref-changes.test.ts +185 -0
  883. package/packages/ext-git-graph/src/panel-test-harness.ts +242 -0
  884. package/packages/ext-git-graph/src/ppm-git.test.ts +76 -0
  885. package/packages/ext-git-graph/src/ppm-git.ts +151 -0
  886. package/packages/ext-git-graph/src/remote-head-refs.test.ts +32 -0
  887. package/packages/ext-git-graph/src/request-answers.test.ts +76 -0
  888. package/packages/ext-git-graph/src/search-marks.test.ts +53 -0
  889. package/packages/ext-git-graph/src/stash-list.test.ts +56 -0
  890. package/packages/ext-git-graph/src/types.ts +53 -16
  891. package/packages/ext-git-graph/src/undo-commit-webview.test.ts +82 -0
  892. package/packages/ext-git-graph/src/undo-targets-through-ppm.test.ts +164 -0
  893. package/packages/ext-git-graph/src/webview-html.test.ts +529 -595
  894. package/packages/ext-git-graph/src/webview-html.ts +144 -3765
  895. package/packages/ext-git-graph/src/webview-icons.generated.ts +69 -0
  896. package/packages/ext-git-graph/src/webview-protocol.test.ts +135 -0
  897. package/packages/ext-git-graph/src/webview-script-actions.ts +1291 -0
  898. package/packages/ext-git-graph/src/webview-script-core.ts +624 -0
  899. package/packages/ext-git-graph/src/webview-script-graph.ts +570 -0
  900. package/packages/ext-git-graph/src/webview-script-inspector.ts +571 -0
  901. package/packages/ext-git-graph/src/webview-script-list.ts +696 -0
  902. package/packages/ext-git-graph/src/webview-script-main.ts +279 -0
  903. package/packages/ext-git-graph/src/webview-script-settings.ts +285 -0
  904. package/packages/ext-git-graph/src/webview-styles.ts +615 -0
  905. package/packages/ext-git-graph/src/wip-model.ts +299 -0
  906. package/scripts/gen-android-proto.ts +37 -0
  907. package/scripts/gen-db-driver-locks.ts +41 -0
  908. package/scripts/gen-file-icons.ts +27 -0
  909. package/scripts/gen-git-graph-icons.ts +135 -0
  910. package/scripts/gen-product-icons.ts +34 -0
  911. package/scripts/release.sh +3 -1
  912. package/scripts/vite-glide-eager-editors.ts +37 -0
  913. package/src/cli/commands/chat-cmd.ts +2 -2
  914. package/src/cli/commands/config-cmd.ts +10 -0
  915. package/src/cli/commands/db-cmd.ts +279 -50
  916. package/src/cli/commands/logs.ts +26 -7
  917. package/src/cli/utils/tty-prompt.ts +51 -0
  918. package/src/index.ts +4 -0
  919. package/src/lib/account-crypto.ts +6 -0
  920. package/src/providers/claude-agent-sdk-query-options.ts +139 -0
  921. package/src/providers/claude-agent-sdk.ts +472 -197
  922. package/src/providers/claude-warm-spare.ts +193 -0
  923. package/src/providers/cli-provider-base.ts +28 -5
  924. package/src/providers/codex-app-server/codex-event-mapper.ts +4 -9
  925. package/src/providers/codex-app-server/codex-file-baselines.ts +47 -0
  926. package/src/providers/codex-app-server/codex-history.ts +1 -1
  927. package/src/providers/codex-app-server/codex-jsonrpc-client.ts +57 -11
  928. package/src/providers/codex-app-server/codex-patch.ts +68 -4
  929. package/src/providers/codex-app-server/codex-provider.ts +76 -14
  930. package/src/providers/codex-app-server/codex-rollout-header.ts +2 -1
  931. package/src/providers/codex-app-server/codex-rollout-items.ts +22 -0
  932. package/src/providers/codex-app-server/codex-thread-params.ts +34 -1
  933. package/src/providers/cursor-cli/cursor-history.ts +2 -1
  934. package/src/providers/provider.interface.ts +1 -0
  935. package/src/providers/registry.ts +12 -7
  936. package/src/server/index.ts +275 -101
  937. package/src/server/middleware/access-log.ts +127 -0
  938. package/src/server/middleware/auth.ts +8 -0
  939. package/src/server/middleware/gzip-json.ts +13 -1
  940. package/src/server/routes/accounts.ts +13 -2
  941. package/src/server/routes/android.ts +622 -0
  942. package/src/server/routes/chat-file-changes.ts +215 -0
  943. package/src/server/routes/chat-history-page.ts +116 -0
  944. package/src/server/routes/chat.ts +155 -37
  945. package/src/server/routes/database-changeset.ts +178 -0
  946. package/src/server/routes/database-drivers.ts +36 -0
  947. package/src/server/routes/database-grid-export.ts +212 -0
  948. package/src/server/routes/database-grid.ts +317 -0
  949. package/src/server/routes/database-impexp.ts +317 -0
  950. package/src/server/routes/database-query.ts +186 -0
  951. package/src/server/routes/database-route-helpers.ts +130 -0
  952. package/src/server/routes/database-structure.ts +292 -0
  953. package/src/server/routes/database.ts +539 -280
  954. package/src/server/routes/design-settings.ts +30 -6
  955. package/src/server/routes/files.ts +52 -5
  956. package/src/server/routes/git.ts +254 -16
  957. package/src/server/routes/html-preview.ts +42 -9
  958. package/src/server/routes/jira-watcher-routes.ts +7 -1
  959. package/src/server/routes/logs.ts +158 -0
  960. package/src/server/routes/mcp.ts +11 -1
  961. package/src/server/routes/notifications.ts +192 -0
  962. package/src/server/routes/port-forwarding.ts +19 -19
  963. package/src/server/routes/project-scoped.ts +0 -2
  964. package/src/server/routes/query-audit-hook.ts +37 -31
  965. package/src/server/routes/remote-desktop.ts +114 -2
  966. package/src/server/routes/settings.ts +140 -45
  967. package/src/server/routes/system-services.ts +12 -6
  968. package/src/server/routes/tailscale.ts +70 -0
  969. package/src/server/routes/trace.ts +69 -0
  970. package/src/server/routes/tunnel-spawn.ts +55 -12
  971. package/src/server/routes/tunnel.ts +5 -0
  972. package/src/server/routes/tunnels.ts +63 -11
  973. package/src/server/routes/upgrade.ts +5 -1
  974. package/src/server/ws/android.ts +126 -0
  975. package/src/server/ws/chat.ts +304 -84
  976. package/src/server/ws/extensions.ts +13 -10
  977. package/src/server/ws/global.ts +27 -1
  978. package/src/server/ws/group-chat.ts +5 -0
  979. package/src/server/ws/lsp.ts +29 -4
  980. package/src/server/ws/remote-desktop.ts +31 -10
  981. package/src/server/ws/terminal.ts +8 -1
  982. package/src/services/account-pick.service.ts +1 -1
  983. package/src/services/account-selector.service.ts +76 -14
  984. package/src/services/account.service.ts +54 -23
  985. package/src/services/agent-transcript/agent-transcript-activity.ts +11 -4
  986. package/src/services/ai-chat-env.ts +28 -0
  987. package/src/services/android/android-apk.ts +387 -0
  988. package/src/services/android/android-capabilities.ts +154 -0
  989. package/src/services/android/android-flag.ts +12 -0
  990. package/src/services/android/android-grpc.ts +124 -0
  991. package/src/services/android/android-input.ts +129 -0
  992. package/src/services/android/android-logcat.ts +169 -0
  993. package/src/services/android/android-nonce.ts +50 -0
  994. package/src/services/android/android-operations.ts +134 -0
  995. package/src/services/android/android-screenshot.ts +53 -0
  996. package/src/services/android/android-session.ts +530 -0
  997. package/src/services/android/android-video.ts +529 -0
  998. package/src/services/android/avd-list.ts +131 -0
  999. package/src/services/android/avd-manager.ts +415 -0
  1000. package/src/services/android/device-registry.ts +223 -0
  1001. package/src/services/android/emulator-discovery.ts +160 -0
  1002. package/src/services/android/emulator-launcher.ts +328 -0
  1003. package/src/services/android/proto/emulator-controller-descriptor.ts +10 -0
  1004. package/src/services/android/proto/emulator_controller.proto +1791 -0
  1005. package/src/services/android/sdk-discovery.ts +178 -0
  1006. package/src/services/android/system-images.ts +124 -0
  1007. package/src/services/autostart-register.ts +24 -8
  1008. package/src/services/bash-output-spy.ts +6 -3
  1009. package/src/services/binary-content.ts +8 -0
  1010. package/src/services/binary-upgrade-apply.ts +5 -0
  1011. package/src/services/binary-upgrade-download.ts +9 -1
  1012. package/src/services/binary-upgrade-swap.ts +18 -3
  1013. package/src/services/chat-prepare/chat-prepare.service.ts +4 -1
  1014. package/src/services/chat-prepare/settle-within-budget.ts +10 -3
  1015. package/src/services/chat-search.service.ts +4 -2
  1016. package/src/services/chat.service.ts +195 -8
  1017. package/src/services/claude-transcript-exists.ts +24 -0
  1018. package/src/services/cloud-ws.service.ts +46 -12
  1019. package/src/services/cloud.service.ts +40 -9
  1020. package/src/services/cloudflared.service.ts +25 -3
  1021. package/src/services/codex-account-cooldown.ts +4 -0
  1022. package/src/services/codex-account-login.ts +15 -4
  1023. package/src/services/compact-segment.ts +156 -0
  1024. package/src/services/compaction-savings.ts +8 -2
  1025. package/src/services/config-secret-keys.ts +2 -0
  1026. package/src/services/config.service.ts +44 -6
  1027. package/src/services/database/analyser-mysql.ts +384 -0
  1028. package/src/services/database/analyser-postgres.ts +259 -0
  1029. package/src/services/database/analyser-sqlite.ts +411 -0
  1030. package/src/services/database/changeset.service.ts +60 -0
  1031. package/src/services/database/changeset.ts +473 -0
  1032. package/src/services/database/connection-config.ts +370 -0
  1033. package/src/services/database/connection-database.ts +90 -0
  1034. package/src/services/database/connection-endpoint.ts +160 -0
  1035. package/src/services/database/connection-login.ts +144 -0
  1036. package/src/services/database/connection-test.ts +191 -0
  1037. package/src/services/database/db-errors.ts +57 -0
  1038. package/src/services/database/db-values.ts +45 -0
  1039. package/src/services/database/ddl/ddl-common.ts +47 -0
  1040. package/src/services/database/ddl/ddl-mysql.ts +202 -0
  1041. package/src/services/database/ddl/ddl-objects.ts +116 -0
  1042. package/src/services/database/ddl/ddl-postgres.ts +208 -0
  1043. package/src/services/database/ddl/ddl-sqlite.ts +172 -0
  1044. package/src/services/database/ddl/ddl-types.ts +61 -0
  1045. package/src/services/database/ddl/sqlite-alter-plan.ts +61 -0
  1046. package/src/services/database/ddl/sqlite-apply.ts +112 -0
  1047. package/src/services/database/ddl/sqlite-recreate.ts +202 -0
  1048. package/src/services/database/ddl/table-diff.ts +187 -0
  1049. package/src/services/database/dialect-mysql.ts +58 -0
  1050. package/src/services/database/dialect-postgres.ts +52 -0
  1051. package/src/services/database/dialect-sqlite.ts +30 -0
  1052. package/src/services/database/dialect.ts +108 -0
  1053. package/src/services/database/dialects.ts +20 -0
  1054. package/src/services/database/drivers/db-driver-catalog.ts +99 -0
  1055. package/src/services/database/drivers/db-driver-install.ts +348 -0
  1056. package/src/services/database/drivers/db-driver-loader.ts +103 -0
  1057. package/src/services/database/drivers/db-driver-locks.generated.json +201 -0
  1058. package/src/services/database/drivers/db-driver-store.ts +75 -0
  1059. package/src/services/database/export-batch.ts +68 -0
  1060. package/src/services/database/file-database.ts +105 -0
  1061. package/src/services/database/grid-cell.ts +80 -0
  1062. package/src/services/database/grid-export-text.ts +318 -0
  1063. package/src/services/database/grid-export-tickets.ts +61 -0
  1064. package/src/services/database/grid-export-xlsx.ts +296 -0
  1065. package/src/services/database/grid-export.ts +13 -0
  1066. package/src/services/database/grid-query-builder.ts +397 -0
  1067. package/src/services/database/grid.service.ts +157 -0
  1068. package/src/services/database/host-files.ts +52 -0
  1069. package/src/services/database/impexp/column-map.ts +58 -0
  1070. package/src/services/database/impexp/export-job-runner.ts +281 -0
  1071. package/src/services/database/impexp/impexp-files.ts +118 -0
  1072. package/src/services/database/impexp/impexp-job-store.ts +195 -0
  1073. package/src/services/database/impexp/impexp-request.ts +279 -0
  1074. package/src/services/database/impexp/import-job-runner.ts +181 -0
  1075. package/src/services/database/impexp/import-table-writer.ts +319 -0
  1076. package/src/services/database/impexp/import-uploads.ts +167 -0
  1077. package/src/services/database/impexp/readers/csv-reader.ts +359 -0
  1078. package/src/services/database/impexp/readers/file-rows.ts +59 -0
  1079. package/src/services/database/impexp/readers/file-text.ts +80 -0
  1080. package/src/services/database/impexp/readers/json-reader.ts +505 -0
  1081. package/src/services/database/impexp/zip-output.ts +55 -0
  1082. package/src/services/database/init-adapters.ts +4 -0
  1083. package/src/services/database/isolation-level.ts +18 -0
  1084. package/src/services/database/mysql-adapter.ts +62 -0
  1085. package/src/services/database/object-scripts.ts +20 -0
  1086. package/src/services/database/object-sql-mysql.ts +53 -0
  1087. package/src/services/database/object-sql-postgres.ts +265 -0
  1088. package/src/services/database/object-sql-sqlite.ts +25 -0
  1089. package/src/services/database/postgres-adapter.ts +93 -23
  1090. package/src/services/database/postgres-array-nulls.ts +101 -0
  1091. package/src/services/database/postgres-connect-options.ts +92 -0
  1092. package/src/services/database/query-script-runner.ts +203 -0
  1093. package/src/services/database/readonly-check.ts +39 -15
  1094. package/src/services/database/sqlite-adapter.ts +100 -17
  1095. package/src/services/database/ssh-agent-socket.ts +50 -0
  1096. package/src/services/database/ssh-known-hosts.ts +113 -0
  1097. package/src/services/database/ssh-tunnel.ts +613 -0
  1098. package/src/services/database/structure-change-request.ts +214 -0
  1099. package/src/services/database/structure-edit.service.ts +143 -0
  1100. package/src/services/database/tls-identity-check.ts +81 -0
  1101. package/src/services/db-backup/db-backup-restore.ts +14 -2
  1102. package/src/services/db.service.ts +153 -54
  1103. package/src/services/design/bridge/bridge-script.ts +14 -6
  1104. package/src/services/design/bridge/html-preview-bridge.ts +23 -0
  1105. package/src/services/design/comments/design-comments-store.ts +7 -2
  1106. package/src/services/design/design-skill-install.service.ts +269 -0
  1107. package/src/services/design/design-turn-snapshot.ts +5 -2
  1108. package/src/services/design/mcp/design-mcp-endpoint.ts +15 -77
  1109. package/src/services/design/mcp/design-mcp-tokens.ts +9 -65
  1110. package/src/services/design/preview/design-preview-html.ts +1 -1
  1111. package/src/services/draft.service.ts +10 -3
  1112. package/src/services/edge-forwarder.ts +50 -3
  1113. package/src/services/event-loop-lag.ts +37 -2
  1114. package/src/services/extension-host-worker.ts +41 -6
  1115. package/src/services/extension-installer.ts +13 -5
  1116. package/src/services/extension-manifest.ts +9 -2
  1117. package/src/services/extension-rpc-handlers.ts +39 -4
  1118. package/src/services/extension-rpc.ts +31 -2
  1119. package/src/services/extension.service.ts +48 -13
  1120. package/src/services/file-filter.service.ts +2 -61
  1121. package/src/services/file-glob.ts +67 -0
  1122. package/src/services/file-index/file-index-runner.ts +169 -0
  1123. package/src/services/file-index/file-index-worker.ts +73 -0
  1124. package/src/services/file-index/index-search.ts +152 -0
  1125. package/src/services/file-index/index-walk.ts +109 -0
  1126. package/src/services/file-lines.ts +2 -2
  1127. package/src/services/file-list-index.service.ts +205 -70
  1128. package/src/services/file-watcher/linux-inotify.ts +279 -0
  1129. package/src/services/file-watcher/watch-tree.ts +78 -11
  1130. package/src/services/file-watcher.service.ts +54 -14
  1131. package/src/services/file.service.ts +23 -6
  1132. package/src/services/fs-ops/fs-core-ops.ts +5 -1
  1133. package/src/services/fs-ops/fs-git-init.service.ts +13 -1
  1134. package/src/services/fs-ops/fs-ops-copy-move.service.ts +5 -0
  1135. package/src/services/fs-ops/fs-ops-mutate.service.ts +6 -1
  1136. package/src/services/fs-ops/fs-ops-trash.service.ts +17 -3
  1137. package/src/services/git-changes/diff-sections.ts +230 -0
  1138. package/src/services/git-changes/git-changes.service.ts +471 -0
  1139. package/src/services/git-changes/git-events.ts +28 -0
  1140. package/src/services/git-changes/git-operation.ts +86 -0
  1141. package/src/services/git-changes/porcelain-v2.ts +117 -0
  1142. package/src/services/git-commit-draft.service.ts +51 -0
  1143. package/src/services/git-discard-journal/git-discard-journal.service.ts +412 -0
  1144. package/src/services/git-hunks/git-hunks.service.ts +50 -11
  1145. package/src/services/git-workflow/git-workflow.service.ts +198 -0
  1146. package/src/services/git.service.ts +64 -8
  1147. package/src/services/group-chat/group-chat.service.ts +32 -6
  1148. package/src/services/group-chat/responder-router.ts +15 -3
  1149. package/src/services/host-info/host-info.service.ts +16 -0
  1150. package/src/services/host-info/spawn-runner.ts +25 -0
  1151. package/src/services/jira-config.service.ts +13 -1
  1152. package/src/services/jira-debug-session.service.ts +20 -5
  1153. package/src/services/jira-watcher.service.ts +53 -11
  1154. package/src/services/jsonl-transcript-parser.ts +49 -19
  1155. package/src/services/log-level-config.ts +36 -0
  1156. package/src/services/logger.ts +280 -0
  1157. package/src/services/logs/browser-logs.ts +84 -0
  1158. package/src/services/logs/github-issues.ts +76 -0
  1159. package/src/services/logs/log-ai.ts +40 -0
  1160. package/src/services/logs/log-columns.ts +160 -0
  1161. package/src/services/logs/log-environment.ts +94 -0
  1162. package/src/services/logs/log-file-index.ts +355 -0
  1163. package/src/services/logs/log-issues.ts +390 -0
  1164. package/src/services/logs/log-live.ts +82 -0
  1165. package/src/services/logs/log-report-draft.ts +63 -0
  1166. package/src/services/logs/log-store.ts +609 -0
  1167. package/src/services/lsp/lsp-install.ts +199 -11
  1168. package/src/services/lsp/lsp-manager.ts +31 -7
  1169. package/src/services/lsp/lsp-release-catalog.ts +87 -0
  1170. package/src/services/lsp/lsp-session.ts +29 -2
  1171. package/src/services/lsp/server-registry.ts +85 -18
  1172. package/src/services/mcp-http-endpoint.ts +127 -0
  1173. package/src/services/mcp-oauth/mcp-oauth-flows.ts +11 -4
  1174. package/src/services/mcp-session-tokens.ts +77 -0
  1175. package/src/services/media-transcode/ffmpeg-capabilities.ts +33 -2
  1176. package/src/services/media-transcode/transcode-stream.ts +7 -1
  1177. package/src/services/memory-diagnostics.ts +86 -0
  1178. package/src/services/mysql.service.ts +1065 -0
  1179. package/src/services/named-tunnel/cloudflared-login-helpers.ts +4 -2
  1180. package/src/services/named-tunnel/cloudflared-login.service.ts +15 -2
  1181. package/src/services/named-tunnel/named-tunnel-setup-confirm.ts +7 -1
  1182. package/src/services/named-tunnel/named-tunnel-setup.service.ts +9 -1
  1183. package/src/services/nested-subagent-spy.ts +7 -4
  1184. package/src/services/notification-format.ts +74 -0
  1185. package/src/services/notification-link.ts +22 -0
  1186. package/src/services/notification.service.ts +157 -12
  1187. package/src/services/ntfy-notification.service.ts +134 -0
  1188. package/src/services/picked-account-binding.ts +7 -1
  1189. package/src/services/port-forward/forward-hop.ts +296 -0
  1190. package/src/services/port-forward/frame-ancestors.ts +117 -0
  1191. package/src/services/port-forward/tailscale-forward.ts +261 -0
  1192. package/src/services/postgres.service.ts +815 -21
  1193. package/src/services/ppmbot/cli-reference-default.ts +17 -4
  1194. package/src/services/ppmbot/ppmbot-delegation.ts +9 -1
  1195. package/src/services/ppmbot/ppmbot-service.ts +59 -47
  1196. package/src/services/ppmbot/ppmbot-session.ts +14 -10
  1197. package/src/services/ppmbot/ppmbot-streamer.ts +6 -3
  1198. package/src/services/ppmbot/ppmbot-telegram.ts +45 -13
  1199. package/src/services/project-content-search.service.ts +45 -11
  1200. package/src/services/project.service.ts +12 -1
  1201. package/src/services/provider-usage/usage-registry.ts +12 -2
  1202. package/src/services/proxy-agent-anthropic-bridge.ts +11 -1
  1203. package/src/services/proxy-agent-bridge.ts +11 -1
  1204. package/src/services/proxy-agent-turn.ts +32 -5
  1205. package/src/services/proxy-image-bridge.ts +2 -2
  1206. package/src/services/proxy-openai-bridge.ts +1 -1
  1207. package/src/services/proxy-sdk-bridge.ts +1 -1
  1208. package/src/services/proxy.service.ts +32 -9
  1209. package/src/services/query-audit/query-audit.service.ts +10 -2
  1210. package/src/services/read-lines.ts +16 -4
  1211. package/src/services/redact-secrets.ts +23 -2
  1212. package/src/services/remote-desktop/ffmpeg-install.ts +85 -0
  1213. package/src/services/remote-desktop/mediamtx-catalog.ts +89 -0
  1214. package/src/services/remote-desktop/mediamtx-config.ts +91 -0
  1215. package/src/services/remote-desktop/mediamtx-install.service.ts +200 -0
  1216. package/src/services/remote-desktop/mediamtx-paths.ts +51 -0
  1217. package/src/services/remote-desktop/mediamtx-process.ts +181 -0
  1218. package/src/services/remote-desktop/remote-desktop-audio.ts +24 -7
  1219. package/src/services/remote-desktop/remote-desktop-capture-input.ts +7 -4
  1220. package/src/services/remote-desktop/remote-desktop-capture-wayland.ts +332 -0
  1221. package/src/services/remote-desktop/remote-desktop-capture.ts +99 -9
  1222. package/src/services/remote-desktop/remote-desktop-displays-win32.ts +92 -0
  1223. package/src/services/remote-desktop/remote-desktop-displays.ts +8 -5
  1224. package/src/services/remote-desktop/remote-desktop-input-uinput.ts +20 -1
  1225. package/src/services/remote-desktop/remote-desktop-input-win32.ts +49 -9
  1226. package/src/services/remote-desktop/remote-desktop-portal.ts +545 -0
  1227. package/src/services/remote-desktop/remote-desktop-privacy.ts +8 -1
  1228. package/src/services/remote-desktop/remote-desktop-requirements.ts +59 -22
  1229. package/src/services/remote-desktop/remote-desktop-resolution.ts +6 -0
  1230. package/src/services/remote-desktop/remote-desktop-session.ts +186 -28
  1231. package/src/services/remote-desktop/remote-desktop-whep-registry.ts +36 -0
  1232. package/src/services/remote-desktop/remote-desktop-x11.ts +25 -2
  1233. package/src/services/scheduler-core.ts +22 -10
  1234. package/src/services/scheduler-runner.ts +30 -13
  1235. package/src/services/sd-notify.ts +26 -2
  1236. package/src/services/session-file-baselines/reverse-unified-diff.ts +85 -0
  1237. package/src/services/session-file-baselines/session-file-baselines.service.ts +241 -0
  1238. package/src/services/session-file-baselines/session-file-blame.ts +200 -0
  1239. package/src/services/session-file-baselines/session-file-changes.service.ts +321 -0
  1240. package/src/services/session-file-baselines/session-file-history.ts +347 -0
  1241. package/src/services/session-file-baselines/session-review-actions.ts +560 -0
  1242. package/src/services/session-file-baselines/session-review-blocks.ts +90 -0
  1243. package/src/services/session-file-baselines/session-review-marks.ts +90 -0
  1244. package/src/services/session-file-baselines/session-turn-revert.ts +374 -0
  1245. package/src/services/session-file-baselines/shell-change-tracker.ts +489 -0
  1246. package/src/services/session-trace/browser-trace-ingest.ts +131 -0
  1247. package/src/services/session-trace/session-trace-cleanup.ts +65 -0
  1248. package/src/services/session-trace/session-trace-db.ts +102 -0
  1249. package/src/services/session-trace/session-trace-store.ts +188 -0
  1250. package/src/services/session-trace/trace-coalescer.ts +86 -0
  1251. package/src/services/session-trace/trace-recorder.ts +304 -0
  1252. package/src/services/session-trace/trace-writer.ts +83 -0
  1253. package/src/services/session-trace/turn-stop-reader.ts +70 -0
  1254. package/src/services/speech-to-text/whisper-install.service.ts +13 -1
  1255. package/src/services/sqlite-types.ts +2 -0
  1256. package/src/services/sqlite.service.ts +507 -13
  1257. package/src/services/supervisor-state.ts +6 -4
  1258. package/src/services/supervisor-stopped-page.ts +6 -6
  1259. package/src/services/supervisor.ts +118 -44
  1260. package/src/services/system-metrics/gpu-collector-nvidia.ts +13 -3
  1261. package/src/services/system-metrics/kill-request-handler.ts +9 -8
  1262. package/src/services/system-metrics/powershell-session.ts +40 -7
  1263. package/src/services/system-metrics/process-collector-windows.ts +4 -3
  1264. package/src/services/system-metrics/process-net-collector-darwin.ts +13 -5
  1265. package/src/services/system-metrics/signal-request-handler.ts +9 -8
  1266. package/src/services/system-metrics/system-metrics-platform.ts +11 -2
  1267. package/src/services/system-metrics/system-metrics.service.ts +31 -4
  1268. package/src/services/system-services/app-icon-service.ts +19 -1
  1269. package/src/services/system-services/app-icons-windows.ts +105 -0
  1270. package/src/services/system-services/apps-windows-native.ts +233 -0
  1271. package/src/services/system-services/apps-windows.ts +156 -0
  1272. package/src/services/system-services/launchd-collector.ts +12 -1
  1273. package/src/services/system-services/service-backend.ts +6 -3
  1274. package/src/services/system-services/systemd-collector.ts +9 -1
  1275. package/src/services/system-services/windows-services-parse.ts +186 -0
  1276. package/src/services/system-services/windows-services.ts +200 -0
  1277. package/src/services/tab-tools-mcp/tab-open-broker.ts +135 -0
  1278. package/src/services/tab-tools-mcp/tab-target.ts +88 -0
  1279. package/src/services/tab-tools-mcp/tab-tools-mcp-endpoint.ts +116 -0
  1280. package/src/services/tab-tools-mcp/tab-tools-mcp-tokens.ts +36 -0
  1281. package/src/services/tab-tools-mcp/tab-tools-mcp-tool.ts +78 -0
  1282. package/src/services/table-cache.service.ts +4 -2
  1283. package/src/services/tailscale/tailscale-app-service.ts +239 -0
  1284. package/src/services/tailscale/tailscale-cli.ts +48 -0
  1285. package/src/services/tailscale/tailscale-login.ts +257 -0
  1286. package/src/services/tailscale/tailscale-state.ts +198 -0
  1287. package/src/services/telegram-bot-api.ts +80 -0
  1288. package/src/services/telegram-bots.ts +131 -0
  1289. package/src/services/telegram-connect.service.ts +262 -0
  1290. package/src/services/telegram-notification.service.ts +48 -55
  1291. package/src/services/terminal.service.ts +46 -11
  1292. package/src/services/theme-import/fetch-url.ts +11 -2
  1293. package/src/services/tunnel-registry-parse.ts +4 -0
  1294. package/src/services/tunnel.service.ts +15 -0
  1295. package/src/services/upgrade.service.ts +30 -2
  1296. package/src/services/web-push/web-push-crypto.ts +150 -0
  1297. package/src/services/web-push/web-push-store.ts +116 -0
  1298. package/src/services/web-push/web-push.service.ts +240 -0
  1299. package/src/shared/agent-transcript-protocol.ts +4 -1
  1300. package/src/shared/android-avd.ts +53 -0
  1301. package/src/shared/android-protocol.ts +184 -0
  1302. package/src/shared/chat-reply.ts +51 -0
  1303. package/src/shared/db-changeset.ts +89 -0
  1304. package/src/shared/db-column-kind.ts +90 -0
  1305. package/src/shared/db-connection-config.ts +256 -0
  1306. package/src/shared/db-connection-url.ts +252 -0
  1307. package/src/shared/db-drivers.ts +36 -0
  1308. package/src/shared/db-explorer-prefs.ts +123 -0
  1309. package/src/shared/db-filter-parser.ts +534 -0
  1310. package/src/shared/db-grid-export.ts +88 -0
  1311. package/src/shared/db-grid.ts +234 -0
  1312. package/src/shared/db-impexp.ts +313 -0
  1313. package/src/shared/db-lookup-prefs.ts +37 -0
  1314. package/src/shared/db-query-script.ts +110 -0
  1315. package/src/shared/db-structure-change.ts +83 -0
  1316. package/src/shared/db-structure.ts +195 -0
  1317. package/src/shared/db-table-model.ts +500 -0
  1318. package/src/shared/db-types.ts +31 -0
  1319. package/src/shared/design-canvas-check-format.ts +23 -0
  1320. package/src/shared/design-skill-suggestion.ts +20 -4
  1321. package/src/shared/file-index-limits.ts +17 -0
  1322. package/src/shared/git-changes.ts +220 -0
  1323. package/src/shared/log-fingerprint.ts +32 -0
  1324. package/src/shared/log-levels.ts +41 -0
  1325. package/src/shared/log-redact.ts +82 -0
  1326. package/src/shared/logs-api.ts +145 -0
  1327. package/src/shared/logs-model.ts +230 -0
  1328. package/src/shared/notification-settings.ts +184 -0
  1329. package/src/shared/ppmbot-telegram.ts +16 -0
  1330. package/src/shared/review-blocks.ts +222 -0
  1331. package/src/shared/session-file-changes.ts +136 -0
  1332. package/src/shared/session-trace.ts +61 -0
  1333. package/src/shared/split-sql-statements.ts +388 -0
  1334. package/src/shared/sql-identifiers.ts +97 -0
  1335. package/src/shared/tab-open-protocol.ts +70 -0
  1336. package/src/shared/tailscale-setup.ts +126 -0
  1337. package/src/shared/terminal-size.ts +23 -0
  1338. package/src/shared/tool-result-content.ts +5 -0
  1339. package/src/shared/turn-stop.ts +30 -0
  1340. package/src/shared/user-agent-label.ts +59 -0
  1341. package/src/shared/web-push-payload.ts +41 -0
  1342. package/src/types/api.ts +12 -3
  1343. package/src/types/chat.ts +23 -0
  1344. package/src/types/config.ts +52 -0
  1345. package/src/types/database.ts +215 -7
  1346. package/src/types/project.ts +9 -0
  1347. package/src/types/system-metrics.ts +9 -5
  1348. package/src/types/system-services.ts +8 -3
  1349. package/src/web/app.tsx +36 -7
  1350. package/src/web/components/android/android-apk-upload.ts +75 -0
  1351. package/src/web/components/android/android-avd-create-dialog.tsx +305 -0
  1352. package/src/web/components/android/android-avd-destroy-dialog.tsx +151 -0
  1353. package/src/web/components/android/android-clipboard-panel.tsx +94 -0
  1354. package/src/web/components/android/android-controls.tsx +128 -0
  1355. package/src/web/components/android/android-coords.ts +99 -0
  1356. package/src/web/components/android/android-device-list.tsx +329 -0
  1357. package/src/web/components/android/android-install-panel.tsx +280 -0
  1358. package/src/web/components/android/android-log-filter.ts +75 -0
  1359. package/src/web/components/android/android-logcat-panel.tsx +214 -0
  1360. package/src/web/components/android/android-screenshot-download.ts +56 -0
  1361. package/src/web/components/android/android-tab.tsx +66 -0
  1362. package/src/web/components/android/android-tools-drawer.tsx +76 -0
  1363. package/src/web/components/android/android-viewer.tsx +200 -0
  1364. package/src/web/components/android/android-ws-url.ts +21 -0
  1365. package/src/web/components/android/open-android.ts +21 -0
  1366. package/src/web/components/android/use-android-available.ts +29 -0
  1367. package/src/web/components/android/use-android-keyboard.ts +111 -0
  1368. package/src/web/components/android/use-android-session.ts +277 -0
  1369. package/src/web/components/android/use-android-touch.ts +123 -0
  1370. package/src/web/components/auth/login-screen.tsx +21 -10
  1371. package/src/web/components/chat/change-file-row.tsx +1 -79
  1372. package/src/web/components/chat/chat-history-bar.tsx +3 -2
  1373. package/src/web/components/chat/chat-tab.tsx +210 -40
  1374. package/src/web/components/chat/chat-toolbar-overflow-menu.tsx +7 -1
  1375. package/src/web/components/chat/message-action-bar.tsx +3 -1
  1376. package/src/web/components/chat/message-input.tsx +69 -13
  1377. package/src/web/components/chat/message-list.tsx +146 -9
  1378. package/src/web/components/chat/message-reply-reference.ts +43 -0
  1379. package/src/web/components/chat/message-user-bubble.tsx +10 -3
  1380. package/src/web/components/chat/reply-card.tsx +28 -0
  1381. package/src/web/components/chat/running-agents-bar.tsx +78 -44
  1382. package/src/web/components/chat/session-change-row.tsx +118 -0
  1383. package/src/web/components/chat/session-changes-bar.tsx +219 -0
  1384. package/src/web/components/chat/session-changes-context.tsx +21 -0
  1385. package/src/web/components/chat/tab-tool-card.tsx +93 -0
  1386. package/src/web/components/chat/tool-cards.tsx +11 -0
  1387. package/src/web/components/chat/turn-change-pill.tsx +20 -2
  1388. package/src/web/components/chat/turn-change-review.tsx +383 -0
  1389. package/src/web/components/chat/turn-change-rollup.tsx +15 -4
  1390. package/src/web/components/chat/turn-change-sheet.tsx +103 -94
  1391. package/src/web/components/chat/turn-change-tray.tsx +90 -93
  1392. package/src/web/components/chat/turn-stop-bar.tsx +42 -0
  1393. package/src/web/components/chat/user-message-parse.ts +5 -2
  1394. package/src/web/components/database/connection-color-picker.tsx +42 -46
  1395. package/src/web/components/database/connection-form/connection-advanced-pane.tsx +82 -0
  1396. package/src/web/components/database/connection-form/connection-form-state.ts +719 -0
  1397. package/src/web/components/database/connection-form/connection-form-tab.tsx +160 -0
  1398. package/src/web/components/database/connection-form/connection-general-pane.tsx +231 -0
  1399. package/src/web/components/database/connection-form/connection-ssh-pane.tsx +136 -0
  1400. package/src/web/components/database/connection-form/connection-ssl-pane.tsx +68 -0
  1401. package/src/web/components/database/connection-form/connection-test-result.tsx +90 -0
  1402. package/src/web/components/database/connection-form/database-picker.tsx +136 -0
  1403. package/src/web/components/database/connection-form/engine-tiles.tsx +72 -0
  1404. package/src/web/components/database/connection-form/form-controls.tsx +219 -0
  1405. package/src/web/components/database/connection-form/use-connection-form.ts +369 -0
  1406. package/src/web/components/database/connection-import-export.tsx +6 -5
  1407. package/src/web/components/database/connections-section/connection-menus.ts +100 -0
  1408. package/src/web/components/database/connections-section/connection-tree-model.ts +113 -0
  1409. package/src/web/components/database/connections-section/connections-section.tsx +432 -0
  1410. package/src/web/components/database/connections-section/delete-connection-dialog.tsx +75 -0
  1411. package/src/web/components/database/connections-section/folder-name-input.tsx +41 -0
  1412. package/src/web/components/database/database-sidebar.tsx +55 -78
  1413. package/src/web/components/database/db-login/db-login-dialog.tsx +255 -0
  1414. package/src/web/components/database/db-login/db-login-store.ts +63 -0
  1415. package/src/web/components/database/db-rows-status.tsx +32 -0
  1416. package/src/web/components/database/db-sidebar-reveal.ts +66 -0
  1417. package/src/web/components/database/db-tab-parts.tsx +117 -0
  1418. package/src/web/components/database/driver-missing-notice.tsx +72 -0
  1419. package/src/web/components/database/explorer/db-explorer-store.ts +658 -0
  1420. package/src/web/components/database/explorer/explorer-menu.tsx +193 -0
  1421. package/src/web/components/database/explorer/explorer-model.ts +341 -0
  1422. package/src/web/components/database/explorer/open-db-tabs.ts +160 -0
  1423. package/src/web/components/database/explorer/open-new-query.ts +22 -0
  1424. package/src/web/components/database/explorer/open-new-table.ts +37 -0
  1425. package/src/web/components/database/explorer/sql-templates.ts +110 -0
  1426. package/src/web/components/database/explorer/tree-parts.tsx +109 -0
  1427. package/src/web/components/database/explorer/use-db-explorer-sync.ts +25 -0
  1428. package/src/web/components/database/explorer/use-row-menu.ts +37 -0
  1429. package/src/web/components/database/explorer/use-tree-keys.ts +92 -0
  1430. package/src/web/components/database/export-button.tsx +96 -113
  1431. package/src/web/components/database/extract-query-table.ts +4 -3
  1432. package/src/web/components/database/focused-database-prompt.tsx +85 -0
  1433. package/src/web/components/database/glide-context-menu.tsx +52 -62
  1434. package/src/web/components/database/glide-data-grid.tsx +1401 -157
  1435. package/src/web/components/database/glide-grid-theme.ts +49 -2
  1436. package/src/web/components/database/glide-grid-types.ts +222 -48
  1437. package/src/web/components/database/glide-header-menu.tsx +52 -103
  1438. package/src/web/components/database/glide-save-bar.tsx +4 -3
  1439. package/src/web/components/database/grid/cell-context-menu.tsx +151 -0
  1440. package/src/web/components/database/grid/cell-data-formats.ts +298 -0
  1441. package/src/web/components/database/grid/cell-data-panel.tsx +662 -0
  1442. package/src/web/components/database/grid/cell-display.ts +52 -0
  1443. package/src/web/components/database/grid/cell-editor.tsx +55 -0
  1444. package/src/web/components/database/grid/cell-menu.ts +210 -0
  1445. package/src/web/components/database/grid/change-marks.ts +51 -0
  1446. package/src/web/components/database/grid/column-filter-cell.ts +34 -0
  1447. package/src/web/components/database/grid/column-menu.ts +51 -0
  1448. package/src/web/components/database/grid/columns-panel.tsx +241 -0
  1449. package/src/web/components/database/grid/columns-sheet.tsx +172 -0
  1450. package/src/web/components/database/grid/copy-as.ts +170 -0
  1451. package/src/web/components/database/grid/dictionary-lookup-dialog.tsx +169 -0
  1452. package/src/web/components/database/grid/fetch-all-dialog.tsx +51 -0
  1453. package/src/web/components/database/grid/filter-chips.tsx +107 -0
  1454. package/src/web/components/database/grid/filter-dialog-frame.tsx +95 -0
  1455. package/src/web/components/database/grid/filter-dialog-host.tsx +43 -0
  1456. package/src/web/components/database/grid/filter-funnel-menu.ts +131 -0
  1457. package/src/web/components/database/grid/filter-multiple-values-dialog.tsx +61 -0
  1458. package/src/web/components/database/grid/filter-row.tsx +216 -0
  1459. package/src/web/components/database/grid/filter-sheet.tsx +227 -0
  1460. package/src/web/components/database/grid/filters-panel.tsx +163 -0
  1461. package/src/web/components/database/grid/fk-cell-button.ts +67 -0
  1462. package/src/web/components/database/grid/fk-cell-editor.tsx +36 -0
  1463. package/src/web/components/database/grid/form-view-model.ts +263 -0
  1464. package/src/web/components/database/grid/form-view.tsx +505 -0
  1465. package/src/web/components/database/grid/generate-sql-dialog.tsx +135 -0
  1466. package/src/web/components/database/grid/generate-sql.ts +101 -0
  1467. package/src/web/components/database/grid/grid-changeset.ts +262 -0
  1468. package/src/web/components/database/grid/grid-filters.ts +172 -0
  1469. package/src/web/components/database/grid/grid-header-overlay.tsx +140 -0
  1470. package/src/web/components/database/grid/grid-save-dialog.tsx +251 -0
  1471. package/src/web/components/database/grid/grid-save-host.tsx +19 -0
  1472. package/src/web/components/database/grid/grid-save-model.ts +64 -0
  1473. package/src/web/components/database/grid/grid-save-store.ts +65 -0
  1474. package/src/web/components/database/grid/grid-status-bar.tsx +54 -0
  1475. package/src/web/components/database/grid/header-bands.ts +232 -0
  1476. package/src/web/components/database/grid/json-document.ts +139 -0
  1477. package/src/web/components/database/grid/json-tree.tsx +74 -0
  1478. package/src/web/components/database/grid/load-more.ts +22 -0
  1479. package/src/web/components/database/grid/master-detail-split.tsx +233 -0
  1480. package/src/web/components/database/grid/pick-table.tsx +109 -0
  1481. package/src/web/components/database/grid/reference-filter.ts +48 -0
  1482. package/src/web/components/database/grid/references-panel.tsx +82 -0
  1483. package/src/web/components/database/grid/references.ts +104 -0
  1484. package/src/web/components/database/grid/refresh-menu.tsx +133 -0
  1485. package/src/web/components/database/grid/row-form-sheet.tsx +234 -0
  1486. package/src/web/components/database/grid/selection-commands.ts +124 -0
  1487. package/src/web/components/database/grid/selection-stats.ts +131 -0
  1488. package/src/web/components/database/grid/set-filter-dialog.tsx +93 -0
  1489. package/src/web/components/database/grid/table-keys.ts +130 -0
  1490. package/src/web/components/database/grid/table-toolbar.tsx +326 -0
  1491. package/src/web/components/database/grid/table-view-state.ts +63 -0
  1492. package/src/web/components/database/grid/text-value-dialog.tsx +80 -0
  1493. package/src/web/components/database/grid/use-cell-long-press.ts +146 -0
  1494. package/src/web/components/database/grid/use-changeset.ts +48 -0
  1495. package/src/web/components/database/grid/use-filter-pickers.ts +76 -0
  1496. package/src/web/components/database/grid/use-grid-copy.ts +99 -0
  1497. package/src/web/components/database/grid/use-opener-focus.ts +17 -0
  1498. package/src/web/components/database/grid/use-pick-search.ts +38 -0
  1499. package/src/web/components/database/grid/use-table-filters.ts +84 -0
  1500. package/src/web/components/database/grid/value-filter-text.ts +96 -0
  1501. package/src/web/components/database/grid/value-lookup-dialog.tsx +91 -0
  1502. package/src/web/components/database/impexp/impexp-columns-dialog.tsx +171 -0
  1503. package/src/web/components/database/impexp/impexp-config.tsx +131 -0
  1504. package/src/web/components/database/impexp/impexp-database-fields.tsx +107 -0
  1505. package/src/web/components/database/impexp/impexp-file-input.tsx +118 -0
  1506. package/src/web/components/database/impexp/impexp-format-options.tsx +127 -0
  1507. package/src/web/components/database/impexp/impexp-map-table.tsx +187 -0
  1508. package/src/web/components/database/impexp/impexp-parts.tsx +77 -0
  1509. package/src/web/components/database/impexp/impexp-side-panes.tsx +191 -0
  1510. package/src/web/components/database/impexp/impexp-state.ts +590 -0
  1511. package/src/web/components/database/impexp/impexp-tab.tsx +222 -0
  1512. package/src/web/components/database/impexp/impexp-tables-select.tsx +169 -0
  1513. package/src/web/components/database/impexp/impexp-upload.ts +52 -0
  1514. package/src/web/components/database/impexp/open-impexp-tab.ts +58 -0
  1515. package/src/web/components/database/impexp/use-impexp-database.ts +75 -0
  1516. package/src/web/components/database/impexp/use-impexp-job.ts +114 -0
  1517. package/src/web/components/database/object-tree/object-menus.ts +141 -0
  1518. package/src/web/components/database/object-tree/object-tree-model.ts +132 -0
  1519. package/src/web/components/database/object-tree/objects-section.tsx +503 -0
  1520. package/src/web/components/database/open-connection-form.ts +21 -0
  1521. package/src/web/components/database/query/discard-result-edits-dialog.tsx +43 -0
  1522. package/src/web/components/database/query/format-sql.ts +67 -0
  1523. package/src/web/components/database/query/history-panel.tsx +177 -0
  1524. package/src/web/components/database/query/messages-panel.tsx +98 -0
  1525. package/src/web/components/database/query/query-file.ts +56 -0
  1526. package/src/web/components/database/query/query-history.ts +56 -0
  1527. package/src/web/components/database/query/query-run-state.ts +282 -0
  1528. package/src/web/components/database/query/query-tab.tsx +397 -0
  1529. package/src/web/components/database/query/query-target-picker.tsx +95 -0
  1530. package/src/web/components/database/query/result-tabs.tsx +104 -0
  1531. package/src/web/components/database/query/result-view.tsx +111 -0
  1532. package/src/web/components/database/query/use-query-file-save.tsx +117 -0
  1533. package/src/web/components/database/query/use-query-runner.ts +202 -0
  1534. package/src/web/components/database/query/use-sql-schema-info.ts +40 -0
  1535. package/src/web/components/database/reformat-cursor.ts +40 -0
  1536. package/src/web/components/database/sidebar-split.tsx +89 -0
  1537. package/src/web/components/database/sql-completion-provider.ts +149 -49
  1538. package/src/web/components/database/sql-object/sql-object-model.ts +39 -0
  1539. package/src/web/components/database/sql-object/sql-object-tab.tsx +138 -0
  1540. package/src/web/components/database/sql-query-editor.tsx +203 -36
  1541. package/src/web/components/database/sql-run.ts +40 -0
  1542. package/src/web/components/database/structure/structure-model.ts +90 -0
  1543. package/src/web/components/database/structure/structure-tab.tsx +326 -0
  1544. package/src/web/components/database/table/table-tab.tsx +694 -0
  1545. package/src/web/components/database/table-editor/column-dialog.tsx +129 -0
  1546. package/src/web/components/database/table-editor/editor-dialog.tsx +122 -0
  1547. package/src/web/components/database/table-editor/foreign-key-dialog.tsx +188 -0
  1548. package/src/web/components/database/table-editor/key-dialog.tsx +197 -0
  1549. package/src/web/components/database/table-editor/rename-object-dialog.tsx +45 -0
  1550. package/src/web/components/database/table-editor/structure-save-dialog.tsx +167 -0
  1551. package/src/web/components/database/table-editor/structure-save-host.tsx +24 -0
  1552. package/src/web/components/database/table-editor/structure-save-model.ts +91 -0
  1553. package/src/web/components/database/table-editor/structure-save-store.ts +52 -0
  1554. package/src/web/components/database/table-editor/table-editor-commands.ts +27 -0
  1555. package/src/web/components/database/table-editor/table-editor-dialogs.tsx +32 -0
  1556. package/src/web/components/database/table-editor/table-editor-model.ts +252 -0
  1557. package/src/web/components/database/table-editor/table-editor.tsx +485 -0
  1558. package/src/web/components/database/table-editor/use-table-editor-tab.ts +145 -0
  1559. package/src/web/components/database/use-connections.ts +39 -85
  1560. package/src/web/components/database/use-database.ts +419 -214
  1561. package/src/web/components/database/use-db-read.ts +88 -0
  1562. package/src/web/components/database/use-db-tab.ts +68 -0
  1563. package/src/web/components/database/use-glide-cell-content.ts +81 -88
  1564. package/src/web/components/database/use-glide-columns.ts +16 -32
  1565. package/src/web/components/database/use-glide-grid-actions.ts +44 -99
  1566. package/src/web/components/database/use-glide-selection.ts +6 -18
  1567. package/src/web/components/design/design-skill-suggestion.tsx +46 -11
  1568. package/src/web/components/editor/code-editor.tsx +81 -47
  1569. package/src/web/components/editor/compare-picker.tsx +12 -2
  1570. package/src/web/components/editor/conflict-editor.tsx +4 -1
  1571. package/src/web/components/editor/diff-viewer.tsx +40 -4
  1572. package/src/web/components/editor/editor-fix-with-ai.tsx +111 -0
  1573. package/src/web/components/editor/editor-selection-context.tsx +70 -0
  1574. package/src/web/components/editor/html-preview.tsx +48 -9
  1575. package/src/web/components/editor/lsp-status.tsx +18 -4
  1576. package/src/web/components/editor/video-player/video-player-controls.tsx +19 -3
  1577. package/src/web/components/editor/video-player/video-player.tsx +67 -14
  1578. package/src/web/components/explorer/file-tree.tsx +6 -7
  1579. package/src/web/components/explorer/use-tree-row-dnd.ts +0 -2
  1580. package/src/web/components/extensions/extension-webview.tsx +44 -9
  1581. package/src/web/components/extensions/webview-external-link.ts +29 -0
  1582. package/src/web/components/extensions/webview-file-icons.ts +87 -0
  1583. package/src/web/components/extensions/webview-theme.ts +12 -0
  1584. package/src/web/components/floating-window/window-content-registry.ts +10 -8
  1585. package/src/web/components/floating-window/window-geometry.ts +3 -3
  1586. package/src/web/components/floating-window/window-store-types.ts +1 -1
  1587. package/src/web/components/git/git-branch-row.tsx +138 -0
  1588. package/src/web/components/git/git-change-parts.tsx +142 -0
  1589. package/src/web/components/git/git-change-row.tsx +218 -0
  1590. package/src/web/components/git/git-change-tree.tsx +190 -0
  1591. package/src/web/components/git/git-commit-composer.tsx +126 -0
  1592. package/src/web/components/git/git-confirm.tsx +84 -0
  1593. package/src/web/components/git/git-operation-banner.tsx +48 -0
  1594. package/src/web/components/git/git-stash-section.tsx +128 -0
  1595. package/src/web/components/git/git-status-panel.tsx +588 -1043
  1596. package/src/web/components/git/git-worktree-panel.tsx +7 -7
  1597. package/src/web/components/git-review/git-review-block.tsx +356 -0
  1598. package/src/web/components/git-review/git-review-desktop.tsx +355 -0
  1599. package/src/web/components/git-review/git-review-parts.tsx +238 -0
  1600. package/src/web/components/git-review/git-review-phone.tsx +230 -0
  1601. package/src/web/components/git-review/git-review-tab.tsx +123 -0
  1602. package/src/web/components/layout/cloud-share-named-tunnel-row.tsx +2 -2
  1603. package/src/web/components/layout/command-palette-db-commands.ts +56 -0
  1604. package/src/web/components/layout/command-palette.tsx +71 -24
  1605. package/src/web/components/layout/draggable-tab.tsx +7 -0
  1606. package/src/web/components/layout/mobile-drawer.tsx +34 -14
  1607. package/src/web/components/layout/mobile-nav.tsx +4 -3
  1608. package/src/web/components/layout/mobile-tab-switcher-sheet.tsx +8 -1
  1609. package/src/web/components/layout/nav-section-rail.tsx +29 -6
  1610. package/src/web/components/layout/reparenting-tab.tsx +2 -2
  1611. package/src/web/components/layout/sidebar.tsx +2 -2
  1612. package/src/web/components/layout/status-bar.tsx +3 -0
  1613. package/src/web/components/layout/tab-bar.tsx +5 -8
  1614. package/src/web/components/layout/tab-close-confirm-dialog.tsx +62 -0
  1615. package/src/web/components/layout/tab-content.tsx +52 -7
  1616. package/src/web/components/layout/tab-pool.tsx +39 -20
  1617. package/src/web/components/layout/upgrade-button.tsx +3 -2
  1618. package/src/web/components/logs/logs-actions.ts +84 -0
  1619. package/src/web/components/logs/logs-app.tsx +265 -0
  1620. package/src/web/components/logs/logs-client.ts +31 -0
  1621. package/src/web/components/logs/logs-issues-pane.tsx +214 -0
  1622. package/src/web/components/logs/logs-pane.tsx +683 -0
  1623. package/src/web/components/logs/logs-phone-pane.tsx +365 -0
  1624. package/src/web/components/logs/logs-report-pane.tsx +440 -0
  1625. package/src/web/components/logs/logs-report-store.ts +153 -0
  1626. package/src/web/components/logs/logs-state.ts +93 -0
  1627. package/src/web/components/logs/logs-tab.tsx +4 -0
  1628. package/src/web/components/logs/logs-ui.tsx +104 -0
  1629. package/src/web/components/logs/logs-window-content.tsx +13 -0
  1630. package/src/web/components/logs/logs.css +440 -0
  1631. package/src/web/components/logs/open-logs.ts +65 -0
  1632. package/src/web/components/logs/use-follow-list.ts +90 -0
  1633. package/src/web/components/logs/use-logs-badge.ts +57 -0
  1634. package/src/web/components/logs/use-logs-feed.ts +251 -0
  1635. package/src/web/components/logs/use-logs-issues.ts +61 -0
  1636. package/src/web/components/onboarding/onboarding-quick-orientation.tsx +4 -4
  1637. package/src/web/components/os-explorer/views/inline-name-input.tsx +13 -4
  1638. package/src/web/components/remote-desktop/ffmpeg-install-button.tsx +59 -0
  1639. package/src/web/components/remote-desktop/remote-desktop-readiness-gate.tsx +2 -0
  1640. package/src/web/components/remote-desktop/use-h264-canvas-decoder.ts +23 -1
  1641. package/src/web/components/remote-desktop/use-remote-desktop-connection.ts +64 -6
  1642. package/src/web/components/remote-desktop/use-remote-desktop-readiness.ts +1 -0
  1643. package/src/web/components/remote-desktop/use-webrtc-canvas-video.ts +255 -0
  1644. package/src/web/components/root-error-boundary.tsx +5 -0
  1645. package/src/web/components/session-review/review-code.tsx +507 -0
  1646. package/src/web/components/session-review/review-desktop.tsx +256 -0
  1647. package/src/web/components/session-review/review-parts.tsx +267 -0
  1648. package/src/web/components/session-review/review-phone.tsx +206 -0
  1649. package/src/web/components/session-review/review-tokens.tsx +70 -0
  1650. package/src/web/components/session-review/review-view.tsx +158 -0
  1651. package/src/web/components/session-review/session-review-tab.tsx +71 -0
  1652. package/src/web/components/settings/ai-settings-section.tsx +20 -0
  1653. package/src/web/components/settings/database-drivers-section.tsx +251 -0
  1654. package/src/web/components/settings/design-settings-section.tsx +52 -3
  1655. package/src/web/components/settings/language-servers-section.tsx +8 -2
  1656. package/src/web/components/settings/notifications-settings-section.tsx +463 -24
  1657. package/src/web/components/settings/ntfy-server-form.tsx +192 -0
  1658. package/src/web/components/settings/open-settings.ts +11 -9
  1659. package/src/web/components/settings/ppmbot-settings-section.tsx +6 -214
  1660. package/src/web/components/settings/ppmbot-telegram-section.tsx +139 -0
  1661. package/src/web/components/settings/remote-access/public-link-pane.tsx +282 -0
  1662. package/src/web/components/settings/remote-access/remote-access-settings-section.tsx +49 -0
  1663. package/src/web/components/settings/remote-access/remote-access-tab-store.ts +24 -0
  1664. package/src/web/components/settings/remote-desktop-settings-section.tsx +176 -0
  1665. package/src/web/components/settings/run-in-terminal-button.tsx +32 -0
  1666. package/src/web/components/settings/settings-body.tsx +14 -2
  1667. package/src/web/components/settings/settings-categories.ts +17 -1
  1668. package/src/web/components/settings/settings-rows.tsx +61 -0
  1669. package/src/web/components/settings/settings-section-content.tsx +27 -18
  1670. package/src/web/components/settings/tailscale/tailscale-settings-section.tsx +410 -0
  1671. package/src/web/components/settings/tailscale/tailscale-setup-steps.tsx +248 -0
  1672. package/src/web/components/settings/tailscale/tailscale-sign-in-dialog.tsx +98 -0
  1673. package/src/web/components/settings/tailscale/tailscale-ui.tsx +81 -0
  1674. package/src/web/components/settings/telegram-bot-token-field.tsx +129 -0
  1675. package/src/web/components/settings/telegram-connect.tsx +147 -0
  1676. package/src/web/components/settings/voice-settings-section.tsx +28 -3
  1677. package/src/web/components/sqlite/sqlite-viewer.tsx +92 -134
  1678. package/src/web/components/system/apps/app-rows.ts +19 -3
  1679. package/src/web/components/system/apps/apps-panel.tsx +3 -1
  1680. package/src/web/components/system/services/service-action-confirm.tsx +20 -1
  1681. package/src/web/components/system/services/service-details-sheet.tsx +14 -4
  1682. package/src/web/components/system/services/service-details-text.ts +5 -0
  1683. package/src/web/components/system/services/services-panel.tsx +7 -5
  1684. package/src/web/components/terminal/terminal-selection-chat.tsx +178 -0
  1685. package/src/web/components/terminal/terminal-tab.tsx +10 -6
  1686. package/src/web/components/tunnels/named-tunnel/named-tunnel-copy.ts +1 -20
  1687. package/src/web/components/tunnels/named-tunnel/named-tunnel-setup-content.tsx +1 -1
  1688. package/src/web/components/tunnels/named-tunnel/named-tunnel-setup-popup.tsx +2 -2
  1689. package/src/web/components/tunnels/named-tunnel/use-named-tunnel-setup.ts +1 -1
  1690. package/src/web/components/tunnels/open-port-forwarding.ts +17 -0
  1691. package/src/web/components/tunnels/port-forwarding-panel.tsx +370 -0
  1692. package/src/web/components/ui/adaptive-context-menu.tsx +32 -3
  1693. package/src/web/components/ui/sidebar-header.tsx +1 -1
  1694. package/src/web/components/web-preview/open-web-preview-tab.ts +14 -0
  1695. package/src/web/components/web-preview/web-preview-tab.tsx +92 -0
  1696. package/src/web/hooks/use-at-most-wide.ts +20 -0
  1697. package/src/web/hooks/use-chat-prewarm.ts +53 -0
  1698. package/src/web/hooks/use-chat.ts +232 -15
  1699. package/src/web/hooks/use-commit-draft.ts +59 -0
  1700. package/src/web/hooks/use-db-driver-installed.ts +16 -0
  1701. package/src/web/hooks/use-draft.ts +25 -15
  1702. package/src/web/hooks/use-extension-ws.ts +15 -1
  1703. package/src/web/hooks/use-file-index-invalidation.ts +7 -5
  1704. package/src/web/hooks/use-git-changes.ts +114 -0
  1705. package/src/web/hooks/use-git-review.ts +617 -0
  1706. package/src/web/hooks/use-global-events.ts +17 -1
  1707. package/src/web/hooks/use-lsp.ts +4 -2
  1708. package/src/web/hooks/use-notification-clicks.ts +43 -0
  1709. package/src/web/hooks/use-remote-file-search.ts +39 -0
  1710. package/src/web/hooks/use-session-file-changes.ts +100 -0
  1711. package/src/web/hooks/use-session-review.ts +554 -0
  1712. package/src/web/hooks/use-session-turns.ts +65 -0
  1713. package/src/web/hooks/use-terminal.ts +19 -5
  1714. package/src/web/hooks/use-turn-review.ts +204 -0
  1715. package/src/web/hooks/use-ui-preload.ts +38 -0
  1716. package/src/web/hooks/use-url-sync.ts +15 -12
  1717. package/src/web/index.html +43 -0
  1718. package/src/web/lib/aggregate-turn-file-changes.ts +127 -35
  1719. package/src/web/lib/ai-tab-placement.ts +102 -0
  1720. package/src/web/lib/api-client.ts +113 -47
  1721. package/src/web/lib/api-settings.ts +1 -0
  1722. package/src/web/lib/api-tailscale.ts +12 -0
  1723. package/src/web/lib/api-tunnels.ts +13 -1
  1724. package/src/web/lib/chunk-recovery.ts +5 -1
  1725. package/src/web/lib/code-fence.ts +7 -0
  1726. package/src/web/lib/db-drivers.ts +41 -0
  1727. package/src/web/lib/db-table-edit.ts +94 -0
  1728. package/src/web/lib/db-tabs.ts +273 -0
  1729. package/src/web/lib/design/api-design-settings.ts +11 -0
  1730. package/src/web/lib/device-id.ts +39 -0
  1731. package/src/web/lib/feature-badges.ts +2 -0
  1732. package/src/web/lib/file-icon-name.ts +6 -0
  1733. package/src/web/lib/file-icons.generated.ts +10 -1
  1734. package/src/web/lib/file-icons.tsx +34 -6
  1735. package/src/web/lib/git-changes-view.ts +292 -0
  1736. package/src/web/lib/git-file-tree.ts +8 -8
  1737. package/src/web/lib/git-review-model.ts +496 -0
  1738. package/src/web/lib/html-preview-loads.ts +87 -0
  1739. package/src/web/lib/icons.generated.tsx +41 -1
  1740. package/src/web/lib/lazy-with-preload.tsx +43 -0
  1741. package/src/web/lib/logs/logs-report.ts +128 -0
  1742. package/src/web/lib/logs/logs-view-model.ts +201 -0
  1743. package/src/web/lib/lsp/lsp-client.ts +1 -1
  1744. package/src/web/lib/lsp/lsp-documents.ts +8 -0
  1745. package/src/web/lib/lsp/register-providers.ts +5 -1
  1746. package/src/web/lib/monaco-lightbulb-gutter.ts +32 -0
  1747. package/src/web/lib/open-ai-tab.ts +160 -0
  1748. package/src/web/lib/open-git-review.ts +24 -0
  1749. package/src/web/lib/preload-ui.ts +60 -0
  1750. package/src/web/lib/read-ndjson.ts +35 -0
  1751. package/src/web/lib/running-agent-rows.ts +14 -16
  1752. package/src/web/lib/score-file-search.ts +27 -14
  1753. package/src/web/lib/send-to-chat.ts +55 -9
  1754. package/src/web/lib/session-file-changes-client.ts +148 -0
  1755. package/src/web/lib/session-file-changes.ts +69 -0
  1756. package/src/web/lib/session-review-model.ts +379 -0
  1757. package/src/web/lib/session-turns.ts +123 -0
  1758. package/src/web/lib/sidebar-tabs/tab-registry.ts +1 -1
  1759. package/src/web/lib/tab-tool-call.ts +69 -0
  1760. package/src/web/lib/tab-type-icons.ts +13 -3
  1761. package/src/web/lib/trace-boot.ts +8 -0
  1762. package/src/web/lib/trace-client.ts +516 -0
  1763. package/src/web/lib/turn-review.ts +102 -0
  1764. package/src/web/lib/web-preview-url.ts +31 -0
  1765. package/src/web/lib/web-push-client.ts +91 -0
  1766. package/src/web/lib/web-push-support.ts +88 -0
  1767. package/src/web/main.tsx +12 -0
  1768. package/src/web/stores/chat-jump-store.ts +31 -0
  1769. package/src/web/stores/commit-draft-store.ts +119 -0
  1770. package/src/web/stores/db-rows-status-store.ts +31 -0
  1771. package/src/web/stores/file-store.ts +124 -18
  1772. package/src/web/stores/git-status-store.ts +21 -2
  1773. package/src/web/stores/panel-store.ts +34 -0
  1774. package/src/web/stores/panel-utils.ts +72 -8
  1775. package/src/web/stores/session-turns-store.ts +40 -0
  1776. package/src/web/stores/settings-store.ts +72 -42
  1777. package/src/web/stores/tab-close-confirm-store.ts +59 -0
  1778. package/src/web/stores/tab-store.ts +11 -2
  1779. package/src/web/stores/unsaved-grid-rows-store.ts +42 -0
  1780. package/src/web/stores/window-panel-persistence.ts +26 -10
  1781. package/src/web/styles/file-icons.generated.css +6 -0
  1782. package/src/web/styles/globals.css +54 -0
  1783. package/src/web/sw-notification-click.ts +51 -0
  1784. package/src/web/sw.ts +35 -0
  1785. package/src/web/theme/adapters/shiki-adapter.ts +55 -1
  1786. package/templates/skill/SKILL.md.tmpl +4 -3
  1787. package/templates/skill/common-tasks.md +8 -4
  1788. package/vite.config.ts +6 -0
  1789. package/dist/web/assets/_basePickBy-BEVUuplK.js +0 -1
  1790. package/dist/web/assets/_basePickBy-BEVUuplK.js.br +0 -0
  1791. package/dist/web/assets/_basePickBy-BEVUuplK.js.gz +0 -0
  1792. package/dist/web/assets/_baseUniq-qb_BgEfK.js +0 -1
  1793. package/dist/web/assets/_baseUniq-qb_BgEfK.js.br +0 -0
  1794. package/dist/web/assets/_baseUniq-qb_BgEfK.js.gz +0 -0
  1795. package/dist/web/assets/accounts-settings-section-DEIm-W-D.js +0 -1
  1796. package/dist/web/assets/accounts-settings-section-DEIm-W-D.js.br +0 -0
  1797. package/dist/web/assets/accounts-settings-section-DEIm-W-D.js.gz +0 -0
  1798. package/dist/web/assets/agent-session-sheet-CBMsnl_p.js +0 -2
  1799. package/dist/web/assets/agent-session-sheet-CBMsnl_p.js.br +0 -0
  1800. package/dist/web/assets/agent-session-sheet-CBMsnl_p.js.gz +0 -0
  1801. package/dist/web/assets/agent-session-sheet-store-DO682WSg.js +0 -1
  1802. package/dist/web/assets/agent-session-window-content-D9C9FA7E.js +0 -1
  1803. package/dist/web/assets/agent-session-window-content-D9C9FA7E.js.br +0 -0
  1804. package/dist/web/assets/agent-session-window-content-D9C9FA7E.js.gz +0 -0
  1805. package/dist/web/assets/ai-resource-editor-DhUVgDEG.js +0 -1
  1806. package/dist/web/assets/ai-resource-editor-DhUVgDEG.js.br +0 -0
  1807. package/dist/web/assets/ai-resource-editor-DhUVgDEG.js.gz +0 -0
  1808. package/dist/web/assets/ai-settings-section-CETpSpYd.js +0 -1
  1809. package/dist/web/assets/ai-settings-section-CETpSpYd.js.br +0 -0
  1810. package/dist/web/assets/ai-settings-section-CETpSpYd.js.gz +0 -0
  1811. package/dist/web/assets/ai-settings-section-DOckWvp4.js +0 -1
  1812. package/dist/web/assets/angular-html-Djm1KT_p.js +0 -1
  1813. package/dist/web/assets/angular-html-Djm1KT_p.js.br +0 -0
  1814. package/dist/web/assets/angular-html-Djm1KT_p.js.gz +0 -0
  1815. package/dist/web/assets/angular-ts-D8ZYU4i0.js +0 -1
  1816. package/dist/web/assets/angular-ts-D8ZYU4i0.js.br +0 -0
  1817. package/dist/web/assets/angular-ts-D8ZYU4i0.js.gz +0 -0
  1818. package/dist/web/assets/api-client-CbrcysYC.js +0 -1
  1819. package/dist/web/assets/api-client-F5Zi1sR0.js +0 -1
  1820. package/dist/web/assets/api-client-F5Zi1sR0.js.br +0 -0
  1821. package/dist/web/assets/api-client-F5Zi1sR0.js.gz +0 -0
  1822. package/dist/web/assets/api-settings-CpO8SPk9.js +0 -1
  1823. package/dist/web/assets/api-settings-CpO8SPk9.js.br +0 -0
  1824. package/dist/web/assets/api-settings-CpO8SPk9.js.gz +0 -0
  1825. package/dist/web/assets/api-settings-JIgKfcCx.js +0 -1
  1826. package/dist/web/assets/api-themes-CJipDH_l.js +0 -1
  1827. package/dist/web/assets/apl-Bxk9ez2r.js +0 -1
  1828. package/dist/web/assets/apl-Bxk9ez2r.js.br +0 -0
  1829. package/dist/web/assets/apl-Bxk9ez2r.js.gz +0 -0
  1830. package/dist/web/assets/appearance-settings-section-BJUiLUb7.js +0 -1
  1831. package/dist/web/assets/appearance-settings-section-BJUiLUb7.js.br +0 -0
  1832. package/dist/web/assets/appearance-settings-section-BJUiLUb7.js.gz +0 -0
  1833. package/dist/web/assets/apps-panel-1VElRgV3.js +0 -1
  1834. package/dist/web/assets/apps-panel-1VElRgV3.js.br +0 -0
  1835. package/dist/web/assets/apps-panel-1VElRgV3.js.gz +0 -0
  1836. package/dist/web/assets/arc-CrBOnruw.js +0 -1
  1837. package/dist/web/assets/arc-CrBOnruw.js.br +0 -0
  1838. package/dist/web/assets/arc-CrBOnruw.js.gz +0 -0
  1839. package/dist/web/assets/architecture-PBZL5I3N-bv6Z6ZTl.js +0 -1
  1840. package/dist/web/assets/architectureDiagram-2XIMDMQ5-sFj2GCA0.js +0 -36
  1841. package/dist/web/assets/architectureDiagram-2XIMDMQ5-sFj2GCA0.js.br +0 -0
  1842. package/dist/web/assets/architectureDiagram-2XIMDMQ5-sFj2GCA0.js.gz +0 -0
  1843. package/dist/web/assets/astro-CCE8GTuJ.js +0 -1
  1844. package/dist/web/assets/astro-CCE8GTuJ.js.br +0 -0
  1845. package/dist/web/assets/astro-CCE8GTuJ.js.gz +0 -0
  1846. package/dist/web/assets/audio-preview-DYkyHu5X.js +0 -1
  1847. package/dist/web/assets/audio-preview-DYkyHu5X.js.br +0 -0
  1848. package/dist/web/assets/audio-preview-DYkyHu5X.js.gz +0 -0
  1849. package/dist/web/assets/blade-pJLFJ0pe.js +0 -1
  1850. package/dist/web/assets/blade-pJLFJ0pe.js.br +0 -0
  1851. package/dist/web/assets/blade-pJLFJ0pe.js.gz +0 -0
  1852. package/dist/web/assets/blockDiagram-WCTKOSBZ-DFag_MHk.js +0 -132
  1853. package/dist/web/assets/blockDiagram-WCTKOSBZ-DFag_MHk.js.br +0 -0
  1854. package/dist/web/assets/blockDiagram-WCTKOSBZ-DFag_MHk.js.gz +0 -0
  1855. package/dist/web/assets/branch-review-tab-DhTMSpSU.js +0 -1
  1856. package/dist/web/assets/branch-review-tab-DhTMSpSU.js.br +0 -0
  1857. package/dist/web/assets/branch-review-tab-DhTMSpSU.js.gz +0 -0
  1858. package/dist/web/assets/bsl-DJPQP6gj.js +0 -1
  1859. package/dist/web/assets/bsl-DJPQP6gj.js.br +0 -0
  1860. package/dist/web/assets/bsl-DJPQP6gj.js.gz +0 -0
  1861. package/dist/web/assets/button-DeAyLH9U.js +0 -1
  1862. package/dist/web/assets/button-DeAyLH9U.js.br +0 -0
  1863. package/dist/web/assets/button-DeAyLH9U.js.gz +0 -0
  1864. package/dist/web/assets/c4Diagram-IC4MRINW-Bs9OCCbR.js +0 -10
  1865. package/dist/web/assets/c4Diagram-IC4MRINW-Bs9OCCbR.js.br +0 -0
  1866. package/dist/web/assets/c4Diagram-IC4MRINW-Bs9OCCbR.js.gz +0 -0
  1867. package/dist/web/assets/cairo-6pdze4qN.js +0 -1
  1868. package/dist/web/assets/cairo-6pdze4qN.js.br +0 -0
  1869. package/dist/web/assets/cairo-6pdze4qN.js.gz +0 -0
  1870. package/dist/web/assets/channel-C97aABFT.js +0 -1
  1871. package/dist/web/assets/chat-preparation-cache-BUCR58h4.js +0 -1
  1872. package/dist/web/assets/chat-preparation-cache-BUCR58h4.js.br +0 -0
  1873. package/dist/web/assets/chat-preparation-cache-BUCR58h4.js.gz +0 -0
  1874. package/dist/web/assets/chat-tab-Cg3BKugo.js +0 -15
  1875. package/dist/web/assets/chat-tab-Cg3BKugo.js.br +0 -0
  1876. package/dist/web/assets/chat-tab-Cg3BKugo.js.gz +0 -0
  1877. package/dist/web/assets/chat-tab-tbUDK__Y.js +0 -1
  1878. package/dist/web/assets/chat-tab-tbUDK__Y.js.br +0 -0
  1879. package/dist/web/assets/chat-tab-tbUDK__Y.js.gz +0 -0
  1880. package/dist/web/assets/chunk-4BX2VUAB-Dd8hGWzs.js +0 -1
  1881. package/dist/web/assets/chunk-55IACEB6-BUOmRdCb.js +0 -1
  1882. package/dist/web/assets/chunk-7E7YKBS2-D5i9aZ57.js +0 -1
  1883. package/dist/web/assets/chunk-7R4GIKGN-DBr9s6EE.js +0 -80
  1884. package/dist/web/assets/chunk-7R4GIKGN-DBr9s6EE.js.br +0 -0
  1885. package/dist/web/assets/chunk-7R4GIKGN-DBr9s6EE.js.gz +0 -0
  1886. package/dist/web/assets/chunk-C72U2L5F-CEUvONYx.js +0 -1
  1887. package/dist/web/assets/chunk-EGIJ26TM-BG89sF-p.js +0 -1
  1888. package/dist/web/assets/chunk-FMBD7UC4-BDtpoO-Q.js +0 -15
  1889. package/dist/web/assets/chunk-GEFDOKGD-lFQnV7FQ.js +0 -2
  1890. package/dist/web/assets/chunk-GEFDOKGD-lFQnV7FQ.js.br +0 -0
  1891. package/dist/web/assets/chunk-GEFDOKGD-lFQnV7FQ.js.gz +0 -0
  1892. package/dist/web/assets/chunk-GLR3WWYH-CBQYONd8.js +0 -2
  1893. package/dist/web/assets/chunk-GLR3WWYH-CBQYONd8.js.br +0 -0
  1894. package/dist/web/assets/chunk-GLR3WWYH-CBQYONd8.js.gz +0 -0
  1895. package/dist/web/assets/chunk-HHEYEP7N-Cz5o2sXg.js +0 -1
  1896. package/dist/web/assets/chunk-JSJVCQXG-FBF1o1AC.js +0 -1
  1897. package/dist/web/assets/chunk-JSJVCQXG-FBF1o1AC.js.br +0 -0
  1898. package/dist/web/assets/chunk-JSJVCQXG-FBF1o1AC.js.gz +0 -0
  1899. package/dist/web/assets/chunk-KX2RTZJC-Dfwu46M7.js +0 -1
  1900. package/dist/web/assets/chunk-KYZI473N-DQTRCz9g.js +0 -53
  1901. package/dist/web/assets/chunk-KYZI473N-DQTRCz9g.js.br +0 -0
  1902. package/dist/web/assets/chunk-KYZI473N-DQTRCz9g.js.gz +0 -0
  1903. package/dist/web/assets/chunk-L3YUKLVL-DytBx0nd.js +0 -1
  1904. package/dist/web/assets/chunk-MX3YWQON-Da7GPDei.js +0 -1
  1905. package/dist/web/assets/chunk-MX3YWQON-Da7GPDei.js.br +0 -0
  1906. package/dist/web/assets/chunk-MX3YWQON-Da7GPDei.js.gz +0 -0
  1907. package/dist/web/assets/chunk-NQ4KR5QH-D9-qngPN.js +0 -220
  1908. package/dist/web/assets/chunk-NQ4KR5QH-D9-qngPN.js.br +0 -0
  1909. package/dist/web/assets/chunk-NQ4KR5QH-D9-qngPN.js.gz +0 -0
  1910. package/dist/web/assets/chunk-O4XLMI2P-BFAbMP-p.js +0 -7
  1911. package/dist/web/assets/chunk-O4XLMI2P-BFAbMP-p.js.br +0 -0
  1912. package/dist/web/assets/chunk-O4XLMI2P-BFAbMP-p.js.gz +0 -0
  1913. package/dist/web/assets/chunk-OZEHJAEY-DM7Vtv5V.js +0 -1
  1914. package/dist/web/assets/chunk-OZEHJAEY-DM7Vtv5V.js.br +0 -0
  1915. package/dist/web/assets/chunk-OZEHJAEY-DM7Vtv5V.js.gz +0 -0
  1916. package/dist/web/assets/chunk-PQ6SQG4A-CfSY-HG3.js +0 -1
  1917. package/dist/web/assets/chunk-PQ6SQG4A-CfSY-HG3.js.br +0 -0
  1918. package/dist/web/assets/chunk-PQ6SQG4A-CfSY-HG3.js.gz +0 -0
  1919. package/dist/web/assets/chunk-PU5JKC2W-BFI9jx5F.js +0 -11
  1920. package/dist/web/assets/chunk-PU5JKC2W-BFI9jx5F.js.br +0 -0
  1921. package/dist/web/assets/chunk-PU5JKC2W-BFI9jx5F.js.gz +0 -0
  1922. package/dist/web/assets/chunk-QZHKN3VN-_jIwYKZ3.js +0 -1
  1923. package/dist/web/assets/chunk-R5LLSJPH-CZY_f--s.js +0 -1
  1924. package/dist/web/assets/chunk-WL4C6EOR-BUFIzsiK.js +0 -189
  1925. package/dist/web/assets/chunk-WL4C6EOR-BUFIzsiK.js.br +0 -0
  1926. package/dist/web/assets/chunk-WL4C6EOR-BUFIzsiK.js.gz +0 -0
  1927. package/dist/web/assets/chunk-XIRO2GV7-BxPFOPRI.js +0 -1
  1928. package/dist/web/assets/chunk-XPW4576I-DfOF_qdG.js +0 -32
  1929. package/dist/web/assets/chunk-XPW4576I-DfOF_qdG.js.br +0 -0
  1930. package/dist/web/assets/chunk-XPW4576I-DfOF_qdG.js.gz +0 -0
  1931. package/dist/web/assets/chunk-XZSTWKYB-BNlQ8dIW.js +0 -94
  1932. package/dist/web/assets/chunk-XZSTWKYB-BNlQ8dIW.js.br +0 -0
  1933. package/dist/web/assets/chunk-XZSTWKYB-BNlQ8dIW.js.gz +0 -0
  1934. package/dist/web/assets/chunk-YBOYWFTD-0Is1vHmh.js +0 -1
  1935. package/dist/web/assets/classDiagram-VBA2DB6C-HwLNQY_4.js +0 -1
  1936. package/dist/web/assets/classDiagram-v2-RAHNMMFH-CLUQCcjH.js +0 -1
  1937. package/dist/web/assets/clone-B5kRZECd.js +0 -1
  1938. package/dist/web/assets/cobol-6JrtZ3xT.js +0 -1
  1939. package/dist/web/assets/cobol-6JrtZ3xT.js.br +0 -0
  1940. package/dist/web/assets/cobol-6JrtZ3xT.js.gz +0 -0
  1941. package/dist/web/assets/code-editor-6ZiQehbr.js +0 -7
  1942. package/dist/web/assets/code-editor-6ZiQehbr.js.br +0 -0
  1943. package/dist/web/assets/code-editor-6ZiQehbr.js.gz +0 -0
  1944. package/dist/web/assets/codex-reset-credit-button-Fr45FUxi.js +0 -1
  1945. package/dist/web/assets/codex-reset-credit-button-Fr45FUxi.js.br +0 -0
  1946. package/dist/web/assets/codex-reset-credit-button-Fr45FUxi.js.gz +0 -0
  1947. package/dist/web/assets/coffee-eR0Qd-vR.js +0 -1
  1948. package/dist/web/assets/coffee-eR0Qd-vR.js.br +0 -0
  1949. package/dist/web/assets/coffee-eR0Qd-vR.js.gz +0 -0
  1950. package/dist/web/assets/conflict-editor-B-wdjSXI.js +0 -19
  1951. package/dist/web/assets/conflict-editor-B-wdjSXI.js.br +0 -0
  1952. package/dist/web/assets/conflict-editor-B-wdjSXI.js.gz +0 -0
  1953. package/dist/web/assets/context-menu-7OX80HDB.js +0 -1
  1954. package/dist/web/assets/context-menu-7OX80HDB.js.br +0 -0
  1955. package/dist/web/assets/context-menu-7OX80HDB.js.gz +0 -0
  1956. package/dist/web/assets/cose-bilkent-S5V4N54A-CAPPRjYz.js +0 -1
  1957. package/dist/web/assets/cose-bilkent-S5V4N54A-CAPPRjYz.js.br +0 -0
  1958. package/dist/web/assets/cose-bilkent-S5V4N54A-CAPPRjYz.js.gz +0 -0
  1959. package/dist/web/assets/cpp-Bp_Laxmd.js +0 -1
  1960. package/dist/web/assets/cpp-Bp_Laxmd.js.br +0 -0
  1961. package/dist/web/assets/cpp-Bp_Laxmd.js.gz +0 -0
  1962. package/dist/web/assets/crystal-bc0lS6i8.js +0 -1
  1963. package/dist/web/assets/crystal-bc0lS6i8.js.br +0 -0
  1964. package/dist/web/assets/crystal-bc0lS6i8.js.gz +0 -0
  1965. package/dist/web/assets/csv-parser-DcRWxcNV.js +0 -6
  1966. package/dist/web/assets/csv-parser-DcRWxcNV.js.br +0 -0
  1967. package/dist/web/assets/csv-parser-DcRWxcNV.js.gz +0 -0
  1968. package/dist/web/assets/csv-preview-B6RodObB.js +0 -2
  1969. package/dist/web/assets/csv-preview-B6RodObB.js.br +0 -0
  1970. package/dist/web/assets/csv-preview-B6RodObB.js.gz +0 -0
  1971. package/dist/web/assets/dagre-D__SE4Ki.js +0 -1
  1972. package/dist/web/assets/dagre-D__SE4Ki.js.br +0 -0
  1973. package/dist/web/assets/dagre-D__SE4Ki.js.gz +0 -0
  1974. package/dist/web/assets/dagre-KLK3FWXG-By-0HuN_.js +0 -4
  1975. package/dist/web/assets/dagre-KLK3FWXG-By-0HuN_.js.br +0 -0
  1976. package/dist/web/assets/dagre-KLK3FWXG-By-0HuN_.js.gz +0 -0
  1977. package/dist/web/assets/data-grid-overlay-editor-CeZoduke.js +0 -1
  1978. package/dist/web/assets/data-grid-overlay-editor-CeZoduke.js.br +0 -0
  1979. package/dist/web/assets/data-grid-overlay-editor-CeZoduke.js.gz +0 -0
  1980. package/dist/web/assets/data-grid-types-CHD9-pon.js +0 -1
  1981. package/dist/web/assets/data-grid-types-CHD9-pon.js.br +0 -0
  1982. package/dist/web/assets/data-grid-types-CHD9-pon.js.gz +0 -0
  1983. package/dist/web/assets/database-viewer-CdPBUQPY.js +0 -1
  1984. package/dist/web/assets/database-viewer-CdPBUQPY.js.br +0 -0
  1985. package/dist/web/assets/database-viewer-CdPBUQPY.js.gz +0 -0
  1986. package/dist/web/assets/design-export-client-CHffN3DM.js +0 -1
  1987. package/dist/web/assets/design-export-client-CHffN3DM.js.br +0 -0
  1988. package/dist/web/assets/design-export-client-CHffN3DM.js.gz +0 -0
  1989. package/dist/web/assets/design-responsive-dialog-DSCpv6O1.js +0 -1
  1990. package/dist/web/assets/design-responsive-dialog-DSCpv6O1.js.br +0 -0
  1991. package/dist/web/assets/design-responsive-dialog-DSCpv6O1.js.gz +0 -0
  1992. package/dist/web/assets/design-settings-section-BpCpaBwL.js +0 -2
  1993. package/dist/web/assets/design-settings-section-BpCpaBwL.js.br +0 -0
  1994. package/dist/web/assets/design-settings-section-BpCpaBwL.js.gz +0 -0
  1995. package/dist/web/assets/design-skill-suggestion-DkT2E2IV.js +0 -3
  1996. package/dist/web/assets/design-skill-suggestion-DkT2E2IV.js.br +0 -0
  1997. package/dist/web/assets/design-skill-suggestion-DkT2E2IV.js.gz +0 -0
  1998. package/dist/web/assets/design-tab-BZb9eemI.js +0 -57
  1999. package/dist/web/assets/design-tab-BZb9eemI.js.br +0 -0
  2000. package/dist/web/assets/design-tab-BZb9eemI.js.gz +0 -0
  2001. package/dist/web/assets/designs-sidebar-panel-CF4tp6j-.js +0 -1
  2002. package/dist/web/assets/designs-sidebar-panel-CF4tp6j-.js.br +0 -0
  2003. package/dist/web/assets/designs-sidebar-panel-CF4tp6j-.js.gz +0 -0
  2004. package/dist/web/assets/diagram-E7M64L7V-w1uoD2zJ.js +0 -24
  2005. package/dist/web/assets/diagram-E7M64L7V-w1uoD2zJ.js.br +0 -0
  2006. package/dist/web/assets/diagram-E7M64L7V-w1uoD2zJ.js.gz +0 -0
  2007. package/dist/web/assets/diagram-IFDJBPK2-DIZ1Hm8C.js +0 -43
  2008. package/dist/web/assets/diagram-IFDJBPK2-DIZ1Hm8C.js.br +0 -0
  2009. package/dist/web/assets/diagram-IFDJBPK2-DIZ1Hm8C.js.gz +0 -0
  2010. package/dist/web/assets/diagram-P4PSJMXO-DJg8_uM2.js +0 -24
  2011. package/dist/web/assets/diagram-P4PSJMXO-DJg8_uM2.js.br +0 -0
  2012. package/dist/web/assets/diagram-P4PSJMXO-DJg8_uM2.js.gz +0 -0
  2013. package/dist/web/assets/dialog-Bocc0Fgb.js +0 -1
  2014. package/dist/web/assets/dialog-Bocc0Fgb.js.br +0 -0
  2015. package/dist/web/assets/dialog-Bocc0Fgb.js.gz +0 -0
  2016. package/dist/web/assets/diff-viewer-BqEqwSw6.js +0 -4
  2017. package/dist/web/assets/diff-viewer-BqEqwSw6.js.br +0 -0
  2018. package/dist/web/assets/diff-viewer-BqEqwSw6.js.gz +0 -0
  2019. package/dist/web/assets/dist-CBtAY9iX.js +0 -1
  2020. package/dist/web/assets/dist-CBtAY9iX.js.br +0 -0
  2021. package/dist/web/assets/dist-CBtAY9iX.js.gz +0 -0
  2022. package/dist/web/assets/dist-CWwUZUqE.js +0 -11
  2023. package/dist/web/assets/dist-CWwUZUqE.js.br +0 -0
  2024. package/dist/web/assets/dist-CWwUZUqE.js.gz +0 -0
  2025. package/dist/web/assets/docx-preview-B3eJyY2y.js +0 -12
  2026. package/dist/web/assets/docx-preview-B3eJyY2y.js.br +0 -0
  2027. package/dist/web/assets/docx-preview-B3eJyY2y.js.gz +0 -0
  2028. package/dist/web/assets/edge-BxayftlC.js +0 -1
  2029. package/dist/web/assets/edge-BxayftlC.js.br +0 -0
  2030. package/dist/web/assets/edge-BxayftlC.js.gz +0 -0
  2031. package/dist/web/assets/edit-diff-preview-DD4HayXY.js +0 -7
  2032. package/dist/web/assets/edit-diff-preview-DD4HayXY.js.br +0 -0
  2033. package/dist/web/assets/edit-diff-preview-DD4HayXY.js.gz +0 -0
  2034. package/dist/web/assets/editor-language-service-CkA5sEdV.js +0 -1
  2035. package/dist/web/assets/editor-language-service-CkA5sEdV.js.br +0 -0
  2036. package/dist/web/assets/editor-language-service-CkA5sEdV.js.gz +0 -0
  2037. package/dist/web/assets/elixir-CncTBq2d.js +0 -1
  2038. package/dist/web/assets/elixir-CncTBq2d.js.br +0 -0
  2039. package/dist/web/assets/elixir-CncTBq2d.js.gz +0 -0
  2040. package/dist/web/assets/elm-1uJDe5N1.js +0 -1
  2041. package/dist/web/assets/elm-1uJDe5N1.js.br +0 -0
  2042. package/dist/web/assets/elm-1uJDe5N1.js.gz +0 -0
  2043. package/dist/web/assets/erDiagram-INFDFZHY-CXGHzu5w.js +0 -70
  2044. package/dist/web/assets/erDiagram-INFDFZHY-CXGHzu5w.js.br +0 -0
  2045. package/dist/web/assets/erDiagram-INFDFZHY-CXGHzu5w.js.gz +0 -0
  2046. package/dist/web/assets/erb-dH8FUiNl.js +0 -1
  2047. package/dist/web/assets/erb-dH8FUiNl.js.br +0 -0
  2048. package/dist/web/assets/erb-dH8FUiNl.js.gz +0 -0
  2049. package/dist/web/assets/erlang-D0F-1O48.js +0 -1
  2050. package/dist/web/assets/erlang-D0F-1O48.js.br +0 -0
  2051. package/dist/web/assets/erlang-D0F-1O48.js.gz +0 -0
  2052. package/dist/web/assets/esm-C3TeLjGW.js +0 -2
  2053. package/dist/web/assets/esm-C3TeLjGW.js.br +0 -0
  2054. package/dist/web/assets/esm-C3TeLjGW.js.gz +0 -0
  2055. package/dist/web/assets/explorer-body-Ds7oKuz7.js +0 -2
  2056. package/dist/web/assets/explorer-body-Ds7oKuz7.js.br +0 -0
  2057. package/dist/web/assets/explorer-body-Ds7oKuz7.js.gz +0 -0
  2058. package/dist/web/assets/explorer-window-content-CRJ2eMZ4.js +0 -1
  2059. package/dist/web/assets/explorer-window-content-CRJ2eMZ4.js.br +0 -0
  2060. package/dist/web/assets/explorer-window-content-CRJ2eMZ4.js.gz +0 -0
  2061. package/dist/web/assets/extension-manager-section-DwQTdCII.js +0 -1
  2062. package/dist/web/assets/extension-manager-section-DwQTdCII.js.br +0 -0
  2063. package/dist/web/assets/extension-manager-section-DwQTdCII.js.gz +0 -0
  2064. package/dist/web/assets/extension-webview-CMq-VTLu.js +0 -12
  2065. package/dist/web/assets/extension-webview-CMq-VTLu.js.br +0 -0
  2066. package/dist/web/assets/extension-webview-CMq-VTLu.js.gz +0 -0
  2067. package/dist/web/assets/file-icons-CK0J4QSy.js +0 -1
  2068. package/dist/web/assets/file-icons-CK0J4QSy.js.br +0 -0
  2069. package/dist/web/assets/file-icons-CK0J4QSy.js.gz +0 -0
  2070. package/dist/web/assets/file-icons.generated-BtBErEwb.css +0 -1
  2071. package/dist/web/assets/file-icons.generated-BtBErEwb.css.br +0 -0
  2072. package/dist/web/assets/file-icons.generated-BtBErEwb.css.gz +0 -0
  2073. package/dist/web/assets/file-store-DY1_0nzY.js +0 -1
  2074. package/dist/web/assets/file-store-DY1_0nzY.js.br +0 -0
  2075. package/dist/web/assets/file-store-DY1_0nzY.js.gz +0 -0
  2076. package/dist/web/assets/files-settings-section-B2lcyh-6.js +0 -1
  2077. package/dist/web/assets/files-settings-section-B2lcyh-6.js.br +0 -0
  2078. package/dist/web/assets/files-settings-section-B2lcyh-6.js.gz +0 -0
  2079. package/dist/web/assets/flowDiagram-PKNHOUZH-CZmY6JEk.js +0 -162
  2080. package/dist/web/assets/flowDiagram-PKNHOUZH-CZmY6JEk.js.br +0 -0
  2081. package/dist/web/assets/flowDiagram-PKNHOUZH-CZmY6JEk.js.gz +0 -0
  2082. package/dist/web/assets/format-file-meta-Drxf2J-k.js +0 -1
  2083. package/dist/web/assets/format-file-meta-Drxf2J-k.js.br +0 -0
  2084. package/dist/web/assets/format-file-meta-Drxf2J-k.js.gz +0 -0
  2085. package/dist/web/assets/fortran-fixed-form-DB7wVefV.js +0 -1
  2086. package/dist/web/assets/fortran-fixed-form-DB7wVefV.js.br +0 -0
  2087. package/dist/web/assets/fortran-fixed-form-DB7wVefV.js.gz +0 -0
  2088. package/dist/web/assets/fs-api-IX9SHt5k.js +0 -1
  2089. package/dist/web/assets/fs-api-IX9SHt5k.js.br +0 -0
  2090. package/dist/web/assets/fs-api-IX9SHt5k.js.gz +0 -0
  2091. package/dist/web/assets/fsharp-B5-po_gS.js +0 -1
  2092. package/dist/web/assets/fsharp-B5-po_gS.js.br +0 -0
  2093. package/dist/web/assets/fsharp-B5-po_gS.js.gz +0 -0
  2094. package/dist/web/assets/ganttDiagram-A5KZAMGK-CZbyfmux.js +0 -292
  2095. package/dist/web/assets/ganttDiagram-A5KZAMGK-CZbyfmux.js.br +0 -0
  2096. package/dist/web/assets/ganttDiagram-A5KZAMGK-CZbyfmux.js.gz +0 -0
  2097. package/dist/web/assets/gdresource-DkWx6_xT.js +0 -1
  2098. package/dist/web/assets/gdresource-DkWx6_xT.js.br +0 -0
  2099. package/dist/web/assets/gdresource-DkWx6_xT.js.gz +0 -0
  2100. package/dist/web/assets/general-settings-section-Doepm2sH.js +0 -1
  2101. package/dist/web/assets/general-settings-section-Doepm2sH.js.br +0 -0
  2102. package/dist/web/assets/general-settings-section-Doepm2sH.js.gz +0 -0
  2103. package/dist/web/assets/git-commit-XsMhdamD.js +0 -1
  2104. package/dist/web/assets/git-commit-XsMhdamD.js.br +0 -0
  2105. package/dist/web/assets/git-commit-XsMhdamD.js.gz +0 -0
  2106. package/dist/web/assets/git-log-panel-CJakNMDc.js +0 -1
  2107. package/dist/web/assets/git-log-panel-CJakNMDc.js.br +0 -0
  2108. package/dist/web/assets/git-log-panel-CJakNMDc.js.gz +0 -0
  2109. package/dist/web/assets/git-rebase-CXs4QunZ.js +0 -1
  2110. package/dist/web/assets/git-repo-store-B_u5RzIM.js +0 -1
  2111. package/dist/web/assets/git-repo-store-B_u5RzIM.js.br +0 -0
  2112. package/dist/web/assets/git-repo-store-B_u5RzIM.js.gz +0 -0
  2113. package/dist/web/assets/gitGraph-HDMCJU4V-COyQftEp.js +0 -1
  2114. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-C9g4d3bV.js +0 -65
  2115. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-C9g4d3bV.js.br +0 -0
  2116. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-C9g4d3bV.js.gz +0 -0
  2117. package/dist/web/assets/glide-data-grid-C_SeOhSq.js +0 -141
  2118. package/dist/web/assets/glide-data-grid-C_SeOhSq.js.br +0 -0
  2119. package/dist/web/assets/glide-data-grid-C_SeOhSq.js.gz +0 -0
  2120. package/dist/web/assets/glimmer-js-CHoxSy4K.js +0 -1
  2121. package/dist/web/assets/glimmer-js-CHoxSy4K.js.br +0 -0
  2122. package/dist/web/assets/glimmer-js-CHoxSy4K.js.gz +0 -0
  2123. package/dist/web/assets/glimmer-ts-DY0DCf-r.js +0 -1
  2124. package/dist/web/assets/glimmer-ts-DY0DCf-r.js.br +0 -0
  2125. package/dist/web/assets/glimmer-ts-DY0DCf-r.js.gz +0 -0
  2126. package/dist/web/assets/glsl-E9hxFBBJ.js +0 -1
  2127. package/dist/web/assets/glsl-E9hxFBBJ.js.br +0 -0
  2128. package/dist/web/assets/glsl-E9hxFBBJ.js.gz +0 -0
  2129. package/dist/web/assets/graphlib-eYluCODn.js +0 -1
  2130. package/dist/web/assets/graphlib-eYluCODn.js.br +0 -0
  2131. package/dist/web/assets/graphlib-eYluCODn.js.gz +0 -0
  2132. package/dist/web/assets/graphql-DAalq3Uo.js +0 -1
  2133. package/dist/web/assets/graphql-DAalq3Uo.js.br +0 -0
  2134. package/dist/web/assets/graphql-DAalq3Uo.js.gz +0 -0
  2135. package/dist/web/assets/group-chat-tab--by1xCQW.js +0 -1
  2136. package/dist/web/assets/group-chat-tab--by1xCQW.js.br +0 -0
  2137. package/dist/web/assets/group-chat-tab--by1xCQW.js.gz +0 -0
  2138. package/dist/web/assets/hack-e6ehmpqx.js +0 -1
  2139. package/dist/web/assets/hack-e6ehmpqx.js.br +0 -0
  2140. package/dist/web/assets/hack-e6ehmpqx.js.gz +0 -0
  2141. package/dist/web/assets/haml-Pr4yq62b.js +0 -1
  2142. package/dist/web/assets/haml-Pr4yq62b.js.br +0 -0
  2143. package/dist/web/assets/haml-Pr4yq62b.js.gz +0 -0
  2144. package/dist/web/assets/handlebars-ZERVZ8gn.js +0 -1
  2145. package/dist/web/assets/handlebars-ZERVZ8gn.js.br +0 -0
  2146. package/dist/web/assets/handlebars-ZERVZ8gn.js.gz +0 -0
  2147. package/dist/web/assets/html-BmwVFf5D.js +0 -1
  2148. package/dist/web/assets/html-BmwVFf5D.js.br +0 -0
  2149. package/dist/web/assets/html-BmwVFf5D.js.gz +0 -0
  2150. package/dist/web/assets/html-derivative-C1JIrmAY.js +0 -1
  2151. package/dist/web/assets/http-BI6PtTvX.js +0 -1
  2152. package/dist/web/assets/http-BI6PtTvX.js.br +0 -0
  2153. package/dist/web/assets/http-BI6PtTvX.js.gz +0 -0
  2154. package/dist/web/assets/hurl-CJGLGxAF.js +0 -1
  2155. package/dist/web/assets/hurl-CJGLGxAF.js.br +0 -0
  2156. package/dist/web/assets/hurl-CJGLGxAF.js.gz +0 -0
  2157. package/dist/web/assets/hxml-B6i0QuF9.js +0 -1
  2158. package/dist/web/assets/hxml-B6i0QuF9.js.br +0 -0
  2159. package/dist/web/assets/hxml-B6i0QuF9.js.gz +0 -0
  2160. package/dist/web/assets/icons-CO_II6D-.js +0 -1
  2161. package/dist/web/assets/icons-CO_II6D-.js.br +0 -0
  2162. package/dist/web/assets/icons-CO_II6D-.js.gz +0 -0
  2163. package/dist/web/assets/image-preview-C1Frlx22.js +0 -1
  2164. package/dist/web/assets/index-DhWjx5iR.js +0 -52
  2165. package/dist/web/assets/index-DhWjx5iR.js.br +0 -0
  2166. package/dist/web/assets/index-DhWjx5iR.js.gz +0 -0
  2167. package/dist/web/assets/index-oIvYSKTT.css +0 -1
  2168. package/dist/web/assets/index-oIvYSKTT.css.br +0 -0
  2169. package/dist/web/assets/index-oIvYSKTT.css.gz +0 -0
  2170. package/dist/web/assets/info-3K5VOQVL-M5BVLjMe.js +0 -1
  2171. package/dist/web/assets/infoDiagram-LFFYTUFH-BpJuT5o9.js +0 -2
  2172. package/dist/web/assets/input-CG8PS8mS.js +0 -1
  2173. package/dist/web/assets/isEmpty-BjAN1oSC.js +0 -1
  2174. package/dist/web/assets/isEmpty-BjAN1oSC.js.br +0 -0
  2175. package/dist/web/assets/isEmpty-BjAN1oSC.js.gz +0 -0
  2176. package/dist/web/assets/ishikawaDiagram-PHBUUO56-JbOmOY2f.js +0 -70
  2177. package/dist/web/assets/ishikawaDiagram-PHBUUO56-JbOmOY2f.js.br +0 -0
  2178. package/dist/web/assets/ishikawaDiagram-PHBUUO56-JbOmOY2f.js.gz +0 -0
  2179. package/dist/web/assets/jinja-CM-duDMo.js +0 -1
  2180. package/dist/web/assets/jinja-CM-duDMo.js.br +0 -0
  2181. package/dist/web/assets/jinja-CM-duDMo.js.gz +0 -0
  2182. package/dist/web/assets/jira-watcher-section-BmkIGQFV.js +0 -1
  2183. package/dist/web/assets/jison-F9rAmqyI.js +0 -1
  2184. package/dist/web/assets/jison-F9rAmqyI.js.br +0 -0
  2185. package/dist/web/assets/jison-F9rAmqyI.js.gz +0 -0
  2186. package/dist/web/assets/journeyDiagram-4ABVD52K-C7_tilrE.js +0 -139
  2187. package/dist/web/assets/journeyDiagram-4ABVD52K-C7_tilrE.js.br +0 -0
  2188. package/dist/web/assets/journeyDiagram-4ABVD52K-C7_tilrE.js.gz +0 -0
  2189. package/dist/web/assets/julia-AVSSuAUz.js +0 -1
  2190. package/dist/web/assets/julia-AVSSuAUz.js.br +0 -0
  2191. package/dist/web/assets/julia-AVSSuAUz.js.gz +0 -0
  2192. package/dist/web/assets/just-Dw8IR-fy.js +0 -1
  2193. package/dist/web/assets/just-Dw8IR-fy.js.br +0 -0
  2194. package/dist/web/assets/just-Dw8IR-fy.js.gz +0 -0
  2195. package/dist/web/assets/kanban-definition-K7BYSVSG-DvbxKeXt.js +0 -89
  2196. package/dist/web/assets/kanban-definition-K7BYSVSG-DvbxKeXt.js.br +0 -0
  2197. package/dist/web/assets/kanban-definition-K7BYSVSG-DvbxKeXt.js.gz +0 -0
  2198. package/dist/web/assets/keybindings-store-30LYZU0l.js +0 -1
  2199. package/dist/web/assets/keyboard-shortcuts-section-BgZe3QDr.js +0 -1
  2200. package/dist/web/assets/keyboard-shortcuts-section-BgZe3QDr.js.br +0 -0
  2201. package/dist/web/assets/keyboard-shortcuts-section-BgZe3QDr.js.gz +0 -0
  2202. package/dist/web/assets/language-servers-section-CCMzgOaE.js +0 -2
  2203. package/dist/web/assets/language-servers-section-CCMzgOaE.js.br +0 -0
  2204. package/dist/web/assets/language-servers-section-CCMzgOaE.js.gz +0 -0
  2205. package/dist/web/assets/latex-37_9fLdz.js +0 -1
  2206. package/dist/web/assets/latex-37_9fLdz.js.br +0 -0
  2207. package/dist/web/assets/latex-37_9fLdz.js.gz +0 -0
  2208. package/dist/web/assets/lib-B9k5tn9s.js +0 -4
  2209. package/dist/web/assets/lib-B9k5tn9s.js.br +0 -0
  2210. package/dist/web/assets/lib-B9k5tn9s.js.gz +0 -0
  2211. package/dist/web/assets/line-CYtSrseF.js +0 -1
  2212. package/dist/web/assets/linear-DyCrWAir.js +0 -1
  2213. package/dist/web/assets/linear-DyCrWAir.js.br +0 -0
  2214. package/dist/web/assets/linear-DyCrWAir.js.gz +0 -0
  2215. package/dist/web/assets/liquid-CaR1gaJt.js +0 -1
  2216. package/dist/web/assets/liquid-CaR1gaJt.js.br +0 -0
  2217. package/dist/web/assets/liquid-CaR1gaJt.js.gz +0 -0
  2218. package/dist/web/assets/lsp-client-B10suuaZ.js +0 -1
  2219. package/dist/web/assets/lsp-client-B10suuaZ.js.br +0 -0
  2220. package/dist/web/assets/lsp-client-B10suuaZ.js.gz +0 -0
  2221. package/dist/web/assets/lua-IFhrYmKl.js +0 -1
  2222. package/dist/web/assets/lua-IFhrYmKl.js.br +0 -0
  2223. package/dist/web/assets/lua-IFhrYmKl.js.gz +0 -0
  2224. package/dist/web/assets/markdown-renderer-AHHFS3jc.js +0 -5
  2225. package/dist/web/assets/markdown-renderer-AHHFS3jc.js.br +0 -0
  2226. package/dist/web/assets/markdown-renderer-AHHFS3jc.js.gz +0 -0
  2227. package/dist/web/assets/markdown-renderer-DxnXtBoj.js +0 -1
  2228. package/dist/web/assets/marko-2g0T6atb.js +0 -1
  2229. package/dist/web/assets/marko-2g0T6atb.js.br +0 -0
  2230. package/dist/web/assets/marko-2g0T6atb.js.gz +0 -0
  2231. package/dist/web/assets/mdc-Dku_3sTh.js +0 -1
  2232. package/dist/web/assets/mdc-Dku_3sTh.js.br +0 -0
  2233. package/dist/web/assets/mdc-Dku_3sTh.js.gz +0 -0
  2234. package/dist/web/assets/media-url-CCGOIxzS.js +0 -1
  2235. package/dist/web/assets/mermaid-parser.core-C5vBM3kO.js +0 -4
  2236. package/dist/web/assets/mermaid-parser.core-C5vBM3kO.js.br +0 -0
  2237. package/dist/web/assets/mermaid-parser.core-C5vBM3kO.js.gz +0 -0
  2238. package/dist/web/assets/mermaid.core-D5SAzB7L.js +0 -11
  2239. package/dist/web/assets/mermaid.core-D5SAzB7L.js.br +0 -0
  2240. package/dist/web/assets/mermaid.core-D5SAzB7L.js.gz +0 -0
  2241. package/dist/web/assets/mindmap-definition-YRQLILUH-juNCbDFr.js +0 -68
  2242. package/dist/web/assets/mindmap-definition-YRQLILUH-juNCbDFr.js.br +0 -0
  2243. package/dist/web/assets/mindmap-definition-YRQLILUH-juNCbDFr.js.gz +0 -0
  2244. package/dist/web/assets/mobile-bottom-sheet-D4UyOatB.js +0 -1
  2245. package/dist/web/assets/mobile-bottom-sheet-D4UyOatB.js.br +0 -0
  2246. package/dist/web/assets/mobile-bottom-sheet-D4UyOatB.js.gz +0 -0
  2247. package/dist/web/assets/mobile-explorer-sheet-CqCsLWSr.js +0 -1
  2248. package/dist/web/assets/mobile-explorer-sheet-CqCsLWSr.js.br +0 -0
  2249. package/dist/web/assets/mobile-explorer-sheet-CqCsLWSr.js.gz +0 -0
  2250. package/dist/web/assets/monaco-dotenv-language-Bwq3gQsi.js +0 -1
  2251. package/dist/web/assets/new-design-dialog-B9tgnQXq.js +0 -1
  2252. package/dist/web/assets/new-design-dialog-B9tgnQXq.js.br +0 -0
  2253. package/dist/web/assets/new-design-dialog-B9tgnQXq.js.gz +0 -0
  2254. package/dist/web/assets/nextflow-DwUrPV3b.js +0 -1
  2255. package/dist/web/assets/nextflow-DwUrPV3b.js.br +0 -0
  2256. package/dist/web/assets/nextflow-DwUrPV3b.js.gz +0 -0
  2257. package/dist/web/assets/nginx-D10J2vrQ.js +0 -1
  2258. package/dist/web/assets/nginx-D10J2vrQ.js.br +0 -0
  2259. package/dist/web/assets/nginx-D10J2vrQ.js.gz +0 -0
  2260. package/dist/web/assets/nim-BonDnBCZ.js +0 -1
  2261. package/dist/web/assets/nim-BonDnBCZ.js.br +0 -0
  2262. package/dist/web/assets/nim-BonDnBCZ.js.gz +0 -0
  2263. package/dist/web/assets/notification-store-HUVzO_bp.js +0 -1
  2264. package/dist/web/assets/notifications-settings-section-CXgzH_bK.js +0 -1
  2265. package/dist/web/assets/notifications-settings-section-CXgzH_bK.js.br +0 -0
  2266. package/dist/web/assets/notifications-settings-section-CXgzH_bK.js.gz +0 -0
  2267. package/dist/web/assets/number-overlay-editor-CHqPl6Pv.js +0 -9
  2268. package/dist/web/assets/number-overlay-editor-CHqPl6Pv.js.br +0 -0
  2269. package/dist/web/assets/number-overlay-editor-CHqPl6Pv.js.gz +0 -0
  2270. package/dist/web/assets/onboarding-entry-CuH1Kqwu.js +0 -1
  2271. package/dist/web/assets/onboarding-entry-CuH1Kqwu.js.br +0 -0
  2272. package/dist/web/assets/onboarding-entry-CuH1Kqwu.js.gz +0 -0
  2273. package/dist/web/assets/onboarding-quick-orientation-DPHYFMbA.js +0 -1
  2274. package/dist/web/assets/onboarding-quick-orientation-DPHYFMbA.js.br +0 -0
  2275. package/dist/web/assets/onboarding-quick-orientation-DPHYFMbA.js.gz +0 -0
  2276. package/dist/web/assets/ordinal-CEpaoDoJ.js +0 -1
  2277. package/dist/web/assets/ordinal-CEpaoDoJ.js.br +0 -0
  2278. package/dist/web/assets/ordinal-CEpaoDoJ.js.gz +0 -0
  2279. package/dist/web/assets/overview-panel-BYB8mgRE.js +0 -1
  2280. package/dist/web/assets/overview-panel-BYB8mgRE.js.br +0 -0
  2281. package/dist/web/assets/overview-panel-BYB8mgRE.js.gz +0 -0
  2282. package/dist/web/assets/packet-RMMSAZCW-DCgVLum2.js +0 -1
  2283. package/dist/web/assets/panel-store-CWHPmHwj.js +0 -1
  2284. package/dist/web/assets/panel-store-CWHPmHwj.js.br +0 -0
  2285. package/dist/web/assets/panel-store-CWHPmHwj.js.gz +0 -0
  2286. package/dist/web/assets/pdf-preview-X8bdpfE9.js +0 -1
  2287. package/dist/web/assets/pdf-preview-X8bdpfE9.js.br +0 -0
  2288. package/dist/web/assets/pdf-preview-X8bdpfE9.js.gz +0 -0
  2289. package/dist/web/assets/performance-panel-Dpuq3g0W.js +0 -3
  2290. package/dist/web/assets/performance-panel-Dpuq3g0W.js.br +0 -0
  2291. package/dist/web/assets/performance-panel-Dpuq3g0W.js.gz +0 -0
  2292. package/dist/web/assets/perl-DmdIiZTm.js +0 -1
  2293. package/dist/web/assets/perl-DmdIiZTm.js.br +0 -0
  2294. package/dist/web/assets/perl-DmdIiZTm.js.gz +0 -0
  2295. package/dist/web/assets/php-DXGvCIY0.js +0 -1
  2296. package/dist/web/assets/php-DXGvCIY0.js.br +0 -0
  2297. package/dist/web/assets/php-DXGvCIY0.js.gz +0 -0
  2298. package/dist/web/assets/pie-UPGHQEXC-pxihnmef.js +0 -1
  2299. package/dist/web/assets/pieDiagram-SKSYHLDU-CiJCYElI.js +0 -30
  2300. package/dist/web/assets/pieDiagram-SKSYHLDU-CiJCYElI.js.br +0 -0
  2301. package/dist/web/assets/pieDiagram-SKSYHLDU-CiJCYElI.js.gz +0 -0
  2302. package/dist/web/assets/postgres-viewer-DW0Gkmow.js +0 -3
  2303. package/dist/web/assets/postgres-viewer-DW0Gkmow.js.br +0 -0
  2304. package/dist/web/assets/postgres-viewer-DW0Gkmow.js.gz +0 -0
  2305. package/dist/web/assets/ppmbot-settings-section-DFtlGoW6.js +0 -1
  2306. package/dist/web/assets/ppmbot-settings-section-DFtlGoW6.js.br +0 -0
  2307. package/dist/web/assets/ppmbot-settings-section-DFtlGoW6.js.gz +0 -0
  2308. package/dist/web/assets/pptx-export-CNyG32Xr.js +0 -111
  2309. package/dist/web/assets/pptx-export-CNyG32Xr.js.br +0 -0
  2310. package/dist/web/assets/pptx-export-CNyG32Xr.js.gz +0 -0
  2311. package/dist/web/assets/problems-panel-V5zqpuXq.js +0 -1
  2312. package/dist/web/assets/problems-panel-V5zqpuXq.js.br +0 -0
  2313. package/dist/web/assets/problems-panel-V5zqpuXq.js.gz +0 -0
  2314. package/dist/web/assets/process-row-format-CiJJSf_V.js +0 -1
  2315. package/dist/web/assets/process-table-DAj46HIl.js +0 -1
  2316. package/dist/web/assets/process-table-DAj46HIl.js.br +0 -0
  2317. package/dist/web/assets/process-table-DAj46HIl.js.gz +0 -0
  2318. package/dist/web/assets/project-store-CCimwgGF.js +0 -1
  2319. package/dist/web/assets/project-store-CCimwgGF.js.br +0 -0
  2320. package/dist/web/assets/project-store-CCimwgGF.js.gz +0 -0
  2321. package/dist/web/assets/proxy-settings-section-B7AVlTfY.js +0 -1
  2322. package/dist/web/assets/proxy-settings-section-B7AVlTfY.js.br +0 -0
  2323. package/dist/web/assets/proxy-settings-section-B7AVlTfY.js.gz +0 -0
  2324. package/dist/web/assets/pug-BgMlgmpT.js +0 -1
  2325. package/dist/web/assets/pug-BgMlgmpT.js.br +0 -0
  2326. package/dist/web/assets/pug-BgMlgmpT.js.gz +0 -0
  2327. package/dist/web/assets/qml-DjqBS8bc.js +0 -1
  2328. package/dist/web/assets/qml-DjqBS8bc.js.br +0 -0
  2329. package/dist/web/assets/qml-DjqBS8bc.js.gz +0 -0
  2330. package/dist/web/assets/quadrantDiagram-337W2JSQ-D3q5dHQe.js +0 -7
  2331. package/dist/web/assets/quadrantDiagram-337W2JSQ-D3q5dHQe.js.br +0 -0
  2332. package/dist/web/assets/quadrantDiagram-337W2JSQ-D3q5dHQe.js.gz +0 -0
  2333. package/dist/web/assets/query-audit-section-gHmRfWKr.js +0 -1
  2334. package/dist/web/assets/query-audit-section-gHmRfWKr.js.br +0 -0
  2335. package/dist/web/assets/query-audit-section-gHmRfWKr.js.gz +0 -0
  2336. package/dist/web/assets/radar-KQ55EAFF-CeeNXQSm.js +0 -1
  2337. package/dist/web/assets/razor-CzV29vlj.js +0 -1
  2338. package/dist/web/assets/razor-CzV29vlj.js.br +0 -0
  2339. package/dist/web/assets/razor-CzV29vlj.js.gz +0 -0
  2340. package/dist/web/assets/remote-desktop-clipboard-notice-Cgoznh8L.js +0 -1
  2341. package/dist/web/assets/remote-desktop-clipboard-notice-Cgoznh8L.js.br +0 -0
  2342. package/dist/web/assets/remote-desktop-clipboard-notice-Cgoznh8L.js.gz +0 -0
  2343. package/dist/web/assets/remote-desktop-mobile-sheet-X12QbPhO.js +0 -2
  2344. package/dist/web/assets/remote-desktop-mobile-sheet-X12QbPhO.js.br +0 -0
  2345. package/dist/web/assets/remote-desktop-mobile-sheet-X12QbPhO.js.gz +0 -0
  2346. package/dist/web/assets/remote-desktop-mobile-view-DsSHawSK.js +0 -1
  2347. package/dist/web/assets/remote-desktop-mobile-view-DsSHawSK.js.br +0 -0
  2348. package/dist/web/assets/remote-desktop-mobile-view-DsSHawSK.js.gz +0 -0
  2349. package/dist/web/assets/remote-desktop-readiness-gate-CHiQEd9Q.js +0 -1
  2350. package/dist/web/assets/remote-desktop-readiness-gate-CHiQEd9Q.js.br +0 -0
  2351. package/dist/web/assets/remote-desktop-readiness-gate-CHiQEd9Q.js.gz +0 -0
  2352. package/dist/web/assets/remote-desktop-window-content-BnznIby3.js +0 -1
  2353. package/dist/web/assets/remote-desktop-window-content-BnznIby3.js.br +0 -0
  2354. package/dist/web/assets/remote-desktop-window-content-BnznIby3.js.gz +0 -0
  2355. package/dist/web/assets/requirementDiagram-Z7DCOOCP-BZfeEsxv.js +0 -73
  2356. package/dist/web/assets/requirementDiagram-Z7DCOOCP-BZfeEsxv.js.br +0 -0
  2357. package/dist/web/assets/requirementDiagram-Z7DCOOCP-BZfeEsxv.js.gz +0 -0
  2358. package/dist/web/assets/rst-DffOOLD7.js +0 -1
  2359. package/dist/web/assets/rst-DffOOLD7.js.br +0 -0
  2360. package/dist/web/assets/rst-DffOOLD7.js.gz +0 -0
  2361. package/dist/web/assets/ruby-C5DczJCc.js +0 -1
  2362. package/dist/web/assets/ruby-C5DczJCc.js.br +0 -0
  2363. package/dist/web/assets/ruby-C5DczJCc.js.gz +0 -0
  2364. package/dist/web/assets/run-in-terminal-DKBcEGVu.js +0 -1
  2365. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-CxM5iAJY.js +0 -10
  2366. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-CxM5iAJY.js.br +0 -0
  2367. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-CxM5iAJY.js.gz +0 -0
  2368. package/dist/web/assets/sas-CoO1xLdH.js +0 -1
  2369. package/dist/web/assets/sas-CoO1xLdH.js.br +0 -0
  2370. package/dist/web/assets/sas-CoO1xLdH.js.gz +0 -0
  2371. package/dist/web/assets/schedules-settings-section-sYDAsBMO.js +0 -1
  2372. package/dist/web/assets/schedules-settings-section-sYDAsBMO.js.br +0 -0
  2373. package/dist/web/assets/schedules-settings-section-sYDAsBMO.js.gz +0 -0
  2374. package/dist/web/assets/scroll-area-sjOeAfoD.js +0 -1
  2375. package/dist/web/assets/scroll-area-sjOeAfoD.js.br +0 -0
  2376. package/dist/web/assets/scroll-area-sjOeAfoD.js.gz +0 -0
  2377. package/dist/web/assets/scss-d9PFDNvb.js +0 -1
  2378. package/dist/web/assets/scss-d9PFDNvb.js.br +0 -0
  2379. package/dist/web/assets/scss-d9PFDNvb.js.gz +0 -0
  2380. package/dist/web/assets/send-to-chat-CCdOrKc7.js +0 -1
  2381. package/dist/web/assets/send-to-chat-CCdOrKc7.js.br +0 -0
  2382. package/dist/web/assets/send-to-chat-CCdOrKc7.js.gz +0 -0
  2383. package/dist/web/assets/separator-DMu7VFQa.js +0 -1
  2384. package/dist/web/assets/sequenceDiagram-2WXFIKYE-D4PdZNfQ.js +0 -145
  2385. package/dist/web/assets/sequenceDiagram-2WXFIKYE-D4PdZNfQ.js.br +0 -0
  2386. package/dist/web/assets/sequenceDiagram-2WXFIKYE-D4PdZNfQ.js.gz +0 -0
  2387. package/dist/web/assets/services-panel-CKa2aP1d.js +0 -1
  2388. package/dist/web/assets/services-panel-CKa2aP1d.js.br +0 -0
  2389. package/dist/web/assets/services-panel-CKa2aP1d.js.gz +0 -0
  2390. package/dist/web/assets/session-list-sync-triggers-ATvz-1g3.js +0 -1
  2391. package/dist/web/assets/session-list-sync-triggers-ATvz-1g3.js.br +0 -0
  2392. package/dist/web/assets/session-list-sync-triggers-ATvz-1g3.js.gz +0 -0
  2393. package/dist/web/assets/settings-body-CEIF8lkl.js +0 -2
  2394. package/dist/web/assets/settings-body-CEIF8lkl.js.br +0 -0
  2395. package/dist/web/assets/settings-body-CEIF8lkl.js.gz +0 -0
  2396. package/dist/web/assets/settings-store-DfuiLq_9.js +0 -2
  2397. package/dist/web/assets/settings-store-DfuiLq_9.js.br +0 -0
  2398. package/dist/web/assets/settings-store-DfuiLq_9.js.gz +0 -0
  2399. package/dist/web/assets/settings-tab-Du5AUPni.js +0 -1
  2400. package/dist/web/assets/settings-window-content-BTflfLez.js +0 -1
  2401. package/dist/web/assets/shaderlab-BkB57LhQ.js +0 -1
  2402. package/dist/web/assets/shaderlab-BkB57LhQ.js.br +0 -0
  2403. package/dist/web/assets/shaderlab-BkB57LhQ.js.gz +0 -0
  2404. package/dist/web/assets/shellsession-CTpUym8_.js +0 -1
  2405. package/dist/web/assets/slash-command-picker-CLevA_Gf.js +0 -1
  2406. package/dist/web/assets/slash-command-picker-CLevA_Gf.js.br +0 -0
  2407. package/dist/web/assets/slash-command-picker-CLevA_Gf.js.gz +0 -0
  2408. package/dist/web/assets/sortable-header-CipIP7aH.js +0 -1
  2409. package/dist/web/assets/sortable-header-CipIP7aH.js.br +0 -0
  2410. package/dist/web/assets/sortable-header-CipIP7aH.js.gz +0 -0
  2411. package/dist/web/assets/soy-CGmWpNZ2.js +0 -1
  2412. package/dist/web/assets/soy-CGmWpNZ2.js.br +0 -0
  2413. package/dist/web/assets/soy-CGmWpNZ2.js.gz +0 -0
  2414. package/dist/web/assets/sparql-DtdOj_MX.js +0 -1
  2415. package/dist/web/assets/sparql-DtdOj_MX.js.br +0 -0
  2416. package/dist/web/assets/sparql-DtdOj_MX.js.gz +0 -0
  2417. package/dist/web/assets/sql-query-editor-Db8b0jEr.js +0 -1
  2418. package/dist/web/assets/sql-query-editor-Db8b0jEr.js.br +0 -0
  2419. package/dist/web/assets/sql-query-editor-Db8b0jEr.js.gz +0 -0
  2420. package/dist/web/assets/sqlite-viewer-VzYLMqkD.js +0 -1
  2421. package/dist/web/assets/sqlite-viewer-VzYLMqkD.js.br +0 -0
  2422. package/dist/web/assets/sqlite-viewer-VzYLMqkD.js.gz +0 -0
  2423. package/dist/web/assets/stata-6W_BX14b.js +0 -1
  2424. package/dist/web/assets/stata-6W_BX14b.js.br +0 -0
  2425. package/dist/web/assets/stata-6W_BX14b.js.gz +0 -0
  2426. package/dist/web/assets/stateDiagram-RAJIS63D-BasP-g7l.js +0 -1
  2427. package/dist/web/assets/stateDiagram-RAJIS63D-BasP-g7l.js.br +0 -0
  2428. package/dist/web/assets/stateDiagram-RAJIS63D-BasP-g7l.js.gz +0 -0
  2429. package/dist/web/assets/stateDiagram-v2-FVOUBMTO-DH7CpDey.js +0 -1
  2430. package/dist/web/assets/surrealql-BhmbH4Yk.js +0 -1
  2431. package/dist/web/assets/surrealql-BhmbH4Yk.js.br +0 -0
  2432. package/dist/web/assets/surrealql-BhmbH4Yk.js.gz +0 -0
  2433. package/dist/web/assets/svelte-D6EOFdO-.js +0 -1
  2434. package/dist/web/assets/svelte-D6EOFdO-.js.br +0 -0
  2435. package/dist/web/assets/svelte-D6EOFdO-.js.gz +0 -0
  2436. package/dist/web/assets/system-monitor-body-BR60W_mG.js +0 -2
  2437. package/dist/web/assets/system-monitor-body-BR60W_mG.js.br +0 -0
  2438. package/dist/web/assets/system-monitor-body-BR60W_mG.js.gz +0 -0
  2439. package/dist/web/assets/system-monitor-tab-BYpantE2.js +0 -1
  2440. package/dist/web/assets/system-monitor-window-content-BLw1QBXo.js +0 -1
  2441. package/dist/web/assets/tab-host-window-content-BL61SB5m.js +0 -1
  2442. package/dist/web/assets/tab-host-window-content-BL61SB5m.js.br +0 -0
  2443. package/dist/web/assets/tab-host-window-content-BL61SB5m.js.gz +0 -0
  2444. package/dist/web/assets/tab-store-CbPh8CAX.js +0 -1
  2445. package/dist/web/assets/templ-DuLJgZN8.js +0 -1
  2446. package/dist/web/assets/templ-DuLJgZN8.js.br +0 -0
  2447. package/dist/web/assets/templ-DuLJgZN8.js.gz +0 -0
  2448. package/dist/web/assets/terminal-tab-B4y6at4h.js +0 -3
  2449. package/dist/web/assets/terminal-tab-B4y6at4h.js.br +0 -0
  2450. package/dist/web/assets/terminal-tab-B4y6at4h.js.gz +0 -0
  2451. package/dist/web/assets/tex-D8IJD2J1.js +0 -1
  2452. package/dist/web/assets/tex-D8IJD2J1.js.br +0 -0
  2453. package/dist/web/assets/tex-D8IJD2J1.js.gz +0 -0
  2454. package/dist/web/assets/timeline-definition-YZTLITO2-Do92I8eh.js +0 -61
  2455. package/dist/web/assets/timeline-definition-YZTLITO2-Do92I8eh.js.br +0 -0
  2456. package/dist/web/assets/timeline-definition-YZTLITO2-Do92I8eh.js.gz +0 -0
  2457. package/dist/web/assets/tool-cards-K0r_yxI0.js +0 -9
  2458. package/dist/web/assets/tool-cards-K0r_yxI0.js.br +0 -0
  2459. package/dist/web/assets/tool-cards-K0r_yxI0.js.gz +0 -0
  2460. package/dist/web/assets/treemap-KZPCXAKY-OVcqjFQG.js +0 -1
  2461. package/dist/web/assets/ts-tags-BxVcUOvj.js +0 -1
  2462. package/dist/web/assets/ts-tags-BxVcUOvj.js.br +0 -0
  2463. package/dist/web/assets/ts-tags-BxVcUOvj.js.gz +0 -0
  2464. package/dist/web/assets/twig-BT8vDHa2.js +0 -1
  2465. package/dist/web/assets/twig-BT8vDHa2.js.br +0 -0
  2466. package/dist/web/assets/twig-BT8vDHa2.js.gz +0 -0
  2467. package/dist/web/assets/use-blob-url-DjuRQWnR.js +0 -1
  2468. package/dist/web/assets/use-inline-blame-BK23icsE.js +0 -16
  2469. package/dist/web/assets/use-inline-blame-BK23icsE.js.br +0 -0
  2470. package/dist/web/assets/use-inline-blame-BK23icsE.js.gz +0 -0
  2471. package/dist/web/assets/use-lsp-CRdCPCKW.js +0 -6
  2472. package/dist/web/assets/use-lsp-CRdCPCKW.js.br +0 -0
  2473. package/dist/web/assets/use-lsp-CRdCPCKW.js.gz +0 -0
  2474. package/dist/web/assets/use-monaco-theme-CpXT2uh3.js +0 -1
  2475. package/dist/web/assets/use-process-kill-BWYX03KF.js +0 -1
  2476. package/dist/web/assets/use-process-kill-BWYX03KF.js.br +0 -0
  2477. package/dist/web/assets/use-process-kill-BWYX03KF.js.gz +0 -0
  2478. package/dist/web/assets/use-websocket-CiWQKhHr.js +0 -1
  2479. package/dist/web/assets/vendor-ui-P9Ym7hCv.js +0 -45
  2480. package/dist/web/assets/vendor-ui-P9Ym7hCv.js.br +0 -0
  2481. package/dist/web/assets/vendor-ui-P9Ym7hCv.js.gz +0 -0
  2482. package/dist/web/assets/vennDiagram-LZ73GAT5-ITFNzHRx.js +0 -34
  2483. package/dist/web/assets/vennDiagram-LZ73GAT5-ITFNzHRx.js.br +0 -0
  2484. package/dist/web/assets/vennDiagram-LZ73GAT5-ITFNzHRx.js.gz +0 -0
  2485. package/dist/web/assets/video-preview-DugVkMB7.js +0 -1
  2486. package/dist/web/assets/video-preview-DugVkMB7.js.br +0 -0
  2487. package/dist/web/assets/video-preview-DugVkMB7.js.gz +0 -0
  2488. package/dist/web/assets/voice-settings-section-Ceihggqf.js +0 -1
  2489. package/dist/web/assets/voice-settings-section-Ceihggqf.js.br +0 -0
  2490. package/dist/web/assets/voice-settings-section-Ceihggqf.js.gz +0 -0
  2491. package/dist/web/assets/vue-BcyG2SyR.js +0 -1
  2492. package/dist/web/assets/vue-BcyG2SyR.js.br +0 -0
  2493. package/dist/web/assets/vue-BcyG2SyR.js.gz +0 -0
  2494. package/dist/web/assets/vue-html-D8iVjZTe.js +0 -1
  2495. package/dist/web/assets/vue-html-D8iVjZTe.js.br +0 -0
  2496. package/dist/web/assets/vue-html-D8iVjZTe.js.gz +0 -0
  2497. package/dist/web/assets/vue-vine-DxBjHHk4.js +0 -1
  2498. package/dist/web/assets/vue-vine-DxBjHHk4.js.br +0 -0
  2499. package/dist/web/assets/vue-vine-DxBjHHk4.js.gz +0 -0
  2500. package/dist/web/assets/window-pip-registry-mDgwpAwP.js +0 -1
  2501. package/dist/web/assets/window-store-vo1N70nK.js +0 -1
  2502. package/dist/web/assets/window-store-vo1N70nK.js.br +0 -0
  2503. package/dist/web/assets/window-store-vo1N70nK.js.gz +0 -0
  2504. package/dist/web/assets/ws-auth-Ytui7dXP.js +0 -1
  2505. package/dist/web/assets/xml-Zepcw_qF.js +0 -1
  2506. package/dist/web/assets/xml-Zepcw_qF.js.br +0 -0
  2507. package/dist/web/assets/xml-Zepcw_qF.js.gz +0 -0
  2508. package/dist/web/assets/xsl-_m-WMWv3.js +0 -1
  2509. package/dist/web/assets/xsl-_m-WMWv3.js.br +0 -0
  2510. package/dist/web/assets/xsl-_m-WMWv3.js.gz +0 -0
  2511. package/dist/web/assets/xychartDiagram-JWTSCODW-Z12EI4TX.js +0 -7
  2512. package/dist/web/assets/xychartDiagram-JWTSCODW-Z12EI4TX.js.br +0 -0
  2513. package/dist/web/assets/xychartDiagram-JWTSCODW-Z12EI4TX.js.gz +0 -0
  2514. package/src/server/routes/fs-sqlite.ts +0 -129
  2515. package/src/server/routes/postgres.ts +0 -92
  2516. package/src/server/routes/sqlite.ts +0 -148
  2517. package/src/services/database/split-sql-statements.ts +0 -95
  2518. package/src/web/components/chat/change-edit-list.tsx +0 -50
  2519. package/src/web/components/database/connection-form-dialog.tsx +0 -252
  2520. package/src/web/components/database/connection-list.tsx +0 -192
  2521. package/src/web/components/database/connection-row.tsx +0 -104
  2522. package/src/web/components/database/database-viewer.tsx +0 -353
  2523. package/src/web/components/database/glide-column-search.tsx +0 -81
  2524. package/src/web/components/database/glide-data-preview-panel.tsx +0 -114
  2525. package/src/web/components/database/glide-grid-pagination.tsx +0 -34
  2526. package/src/web/components/database/glide-grid-toolbar.tsx +0 -105
  2527. package/src/web/components/database/resolve-preview-data.ts +0 -62
  2528. package/src/web/components/database/schema-table-tree.tsx +0 -98
  2529. package/src/web/components/database/split-sql-statements.ts +0 -116
  2530. package/src/web/components/database/use-db-tree-expansion.ts +0 -74
  2531. package/src/web/components/database/use-glide-pending-edits.ts +0 -72
  2532. package/src/web/components/database/use-glide-row-pinning.ts +0 -35
  2533. package/src/web/components/postgres/postgres-viewer.tsx +0 -283
  2534. package/src/web/components/postgres/use-postgres.ts +0 -161
  2535. package/src/web/components/shared/bug-report-popup.tsx +0 -59
  2536. package/src/web/components/sqlite/sqlite-data-grid.tsx +0 -213
  2537. package/src/web/components/sqlite/sqlite-query-editor.tsx +0 -10
  2538. package/src/web/components/sqlite/sqlite-table-list.tsx +0 -48
  2539. package/src/web/components/sqlite/use-sqlite.ts +0 -135
  2540. package/src/web/components/tunnels/named-tunnel/named-tunnel-section.tsx +0 -159
  2541. package/src/web/components/tunnels/public-tunnel-switch.tsx +0 -82
  2542. package/src/web/components/tunnels/tunnel-manager-tab.tsx +0 -207
  2543. package/src/web/lib/report-bug.ts +0 -79
  2544. /package/dist/web/assets/{__vite-browser-external-B_XMEguz.js → __vite-browser-external-B4VNaaaA.js} +0 -0
  2545. /package/dist/web/assets/{abap-Ds6L4g_T.js → abap-BIHt2d9F.js} +0 -0
  2546. /package/dist/web/assets/{abap-Ds6L4g_T.js.br → abap-BIHt2d9F.js.br} +0 -0
  2547. /package/dist/web/assets/{abap-Ds6L4g_T.js.gz → abap-BIHt2d9F.js.gz} +0 -0
  2548. /package/dist/web/assets/{actionscript-3-CLNiH4aj.js → actionscript-3-rbCNRHFj.js} +0 -0
  2549. /package/dist/web/assets/{actionscript-3-CLNiH4aj.js.br → actionscript-3-rbCNRHFj.js.br} +0 -0
  2550. /package/dist/web/assets/{actionscript-3-CLNiH4aj.js.gz → actionscript-3-rbCNRHFj.js.gz} +0 -0
  2551. /package/dist/web/assets/{ada-BoiebnO1.js → ada-CN94LQTJ.js} +0 -0
  2552. /package/dist/web/assets/{ada-BoiebnO1.js.br → ada-CN94LQTJ.js.br} +0 -0
  2553. /package/dist/web/assets/{ada-BoiebnO1.js.gz → ada-CN94LQTJ.js.gz} +0 -0
  2554. /package/dist/web/assets/{andromeeda-CdMZLp1H.js → andromeeda-BsmcoXuQ.js} +0 -0
  2555. /package/dist/web/assets/{andromeeda-CdMZLp1H.js.br → andromeeda-BsmcoXuQ.js.br} +0 -0
  2556. /package/dist/web/assets/{andromeeda-CdMZLp1H.js.gz → andromeeda-BsmcoXuQ.js.gz} +0 -0
  2557. /package/dist/web/assets/{apache-BKOdPQIP.js → apache-pRQmqcVZ.js} +0 -0
  2558. /package/dist/web/assets/{apache-BKOdPQIP.js.br → apache-pRQmqcVZ.js.br} +0 -0
  2559. /package/dist/web/assets/{apache-BKOdPQIP.js.gz → apache-pRQmqcVZ.js.gz} +0 -0
  2560. /package/dist/web/assets/{apex-kTmPDDVo.js → apex-CNEumC1X.js} +0 -0
  2561. /package/dist/web/assets/{apex-kTmPDDVo.js.br → apex-CNEumC1X.js.br} +0 -0
  2562. /package/dist/web/assets/{apex-kTmPDDVo.js.gz → apex-CNEumC1X.js.gz} +0 -0
  2563. /package/dist/web/assets/{applescript-C65SMPLe.js → applescript-DjEVsS-3.js} +0 -0
  2564. /package/dist/web/assets/{applescript-C65SMPLe.js.br → applescript-DjEVsS-3.js.br} +0 -0
  2565. /package/dist/web/assets/{applescript-C65SMPLe.js.gz → applescript-DjEVsS-3.js.gz} +0 -0
  2566. /package/dist/web/assets/{apply-theme-Cc_cmrD5.js → apply-theme-ORrEdHKT.js} +0 -0
  2567. /package/dist/web/assets/{ara-BKT6no2T.js → ara-DbhZRlTL.js} +0 -0
  2568. /package/dist/web/assets/{ara-BKT6no2T.js.br → ara-DbhZRlTL.js.br} +0 -0
  2569. /package/dist/web/assets/{ara-BKT6no2T.js.gz → ara-DbhZRlTL.js.gz} +0 -0
  2570. /package/dist/web/assets/{array-F4LNYbhF.js → array-BQrdK5nm.js} +0 -0
  2571. /package/dist/web/assets/{asciidoc-BGur0ue3.js → asciidoc-BsfbAXIK.js} +0 -0
  2572. /package/dist/web/assets/{asciidoc-BGur0ue3.js.br → asciidoc-BsfbAXIK.js.br} +0 -0
  2573. /package/dist/web/assets/{asciidoc-BGur0ue3.js.gz → asciidoc-BsfbAXIK.js.gz} +0 -0
  2574. /package/dist/web/assets/{asm-DOfgqCKD.js → asm-Vw5NMXjI.js} +0 -0
  2575. /package/dist/web/assets/{asm-DOfgqCKD.js.br → asm-Vw5NMXjI.js.br} +0 -0
  2576. /package/dist/web/assets/{asm-DOfgqCKD.js.gz → asm-Vw5NMXjI.js.gz} +0 -0
  2577. /package/dist/web/assets/{aurora-x-D64MWGxe.js → aurora-x-CoahU6sR.js} +0 -0
  2578. /package/dist/web/assets/{aurora-x-D64MWGxe.js.br → aurora-x-CoahU6sR.js.br} +0 -0
  2579. /package/dist/web/assets/{aurora-x-D64MWGxe.js.gz → aurora-x-CoahU6sR.js.gz} +0 -0
  2580. /package/dist/web/assets/{awk-B_r8LcWp.js → awk-ChKjCxHz.js} +0 -0
  2581. /package/dist/web/assets/{awk-B_r8LcWp.js.br → awk-ChKjCxHz.js.br} +0 -0
  2582. /package/dist/web/assets/{awk-B_r8LcWp.js.gz → awk-ChKjCxHz.js.gz} +0 -0
  2583. /package/dist/web/assets/{ayu-dark-DlDyr9-5.js → ayu-dark-By9RKxTf.js} +0 -0
  2584. /package/dist/web/assets/{ayu-dark-DlDyr9-5.js.br → ayu-dark-By9RKxTf.js.br} +0 -0
  2585. /package/dist/web/assets/{ayu-dark-DlDyr9-5.js.gz → ayu-dark-By9RKxTf.js.gz} +0 -0
  2586. /package/dist/web/assets/{ayu-light-BF0a181n.js → ayu-light-CEsgeLON.js} +0 -0
  2587. /package/dist/web/assets/{ayu-light-BF0a181n.js.br → ayu-light-CEsgeLON.js.br} +0 -0
  2588. /package/dist/web/assets/{ayu-light-BF0a181n.js.gz → ayu-light-CEsgeLON.js.gz} +0 -0
  2589. /package/dist/web/assets/{ayu-mirage-B6hnRsHM.js → ayu-mirage-CYrtwSLW.js} +0 -0
  2590. /package/dist/web/assets/{ayu-mirage-B6hnRsHM.js.br → ayu-mirage-CYrtwSLW.js.br} +0 -0
  2591. /package/dist/web/assets/{ayu-mirage-B6hnRsHM.js.gz → ayu-mirage-CYrtwSLW.js.gz} +0 -0
  2592. /package/dist/web/assets/{ballerina-CyhD34qA.js → ballerina-CCSVz22W.js} +0 -0
  2593. /package/dist/web/assets/{ballerina-CyhD34qA.js.br → ballerina-CCSVz22W.js.br} +0 -0
  2594. /package/dist/web/assets/{ballerina-CyhD34qA.js.gz → ballerina-CCSVz22W.js.gz} +0 -0
  2595. /package/dist/web/assets/{bat-wHB_k1YG.js → bat-DU4--CMj.js} +0 -0
  2596. /package/dist/web/assets/{bat-wHB_k1YG.js.br → bat-DU4--CMj.js.br} +0 -0
  2597. /package/dist/web/assets/{bat-wHB_k1YG.js.gz → bat-DU4--CMj.js.gz} +0 -0
  2598. /package/dist/web/assets/{beancount-SUF8MnzM.js → beancount-DF_tlRlF.js} +0 -0
  2599. /package/dist/web/assets/{beancount-SUF8MnzM.js.br → beancount-DF_tlRlF.js.br} +0 -0
  2600. /package/dist/web/assets/{beancount-SUF8MnzM.js.gz → beancount-DF_tlRlF.js.gz} +0 -0
  2601. /package/dist/web/assets/{berry-BP_34_jr.js → berry-CZTnatvO.js} +0 -0
  2602. /package/dist/web/assets/{berry-BP_34_jr.js.br → berry-CZTnatvO.js.br} +0 -0
  2603. /package/dist/web/assets/{berry-BP_34_jr.js.gz → berry-CZTnatvO.js.gz} +0 -0
  2604. /package/dist/web/assets/{bibtex-DKgKw2bN.js → bibtex-BSpXy8jk.js} +0 -0
  2605. /package/dist/web/assets/{bibtex-DKgKw2bN.js.br → bibtex-BSpXy8jk.js.br} +0 -0
  2606. /package/dist/web/assets/{bibtex-DKgKw2bN.js.gz → bibtex-BSpXy8jk.js.gz} +0 -0
  2607. /package/dist/web/assets/{bicep-BjU-KQeN.js → bicep-yv1Ydq5Z.js} +0 -0
  2608. /package/dist/web/assets/{bicep-BjU-KQeN.js.br → bicep-yv1Ydq5Z.js.br} +0 -0
  2609. /package/dist/web/assets/{bicep-BjU-KQeN.js.gz → bicep-yv1Ydq5Z.js.gz} +0 -0
  2610. /package/dist/web/assets/{bird2-CCFmrT2P.js → bird2-Db7Z7SMN.js} +0 -0
  2611. /package/dist/web/assets/{bird2-CCFmrT2P.js.br → bird2-Db7Z7SMN.js.br} +0 -0
  2612. /package/dist/web/assets/{bird2-CCFmrT2P.js.gz → bird2-Db7Z7SMN.js.gz} +0 -0
  2613. /package/dist/web/assets/{c-BX-1170_.js → c-D2iyQzEt.js} +0 -0
  2614. /package/dist/web/assets/{c-BX-1170_.js.br → c-D2iyQzEt.js.br} +0 -0
  2615. /package/dist/web/assets/{c-BX-1170_.js.gz → c-D2iyQzEt.js.gz} +0 -0
  2616. /package/dist/web/assets/{c3-DSc4IcLQ.js → c3-N4mKyst9.js} +0 -0
  2617. /package/dist/web/assets/{c3-DSc4IcLQ.js.br → c3-N4mKyst9.js.br} +0 -0
  2618. /package/dist/web/assets/{c3-DSc4IcLQ.js.gz → c3-N4mKyst9.js.gz} +0 -0
  2619. /package/dist/web/assets/{cadence-CUaLlWyn.js → cadence-BYK8tFFk.js} +0 -0
  2620. /package/dist/web/assets/{cadence-CUaLlWyn.js.br → cadence-BYK8tFFk.js.br} +0 -0
  2621. /package/dist/web/assets/{cadence-CUaLlWyn.js.gz → cadence-BYK8tFFk.js.gz} +0 -0
  2622. /package/dist/web/assets/{can-open-in-ppm-Bw_xiOXX.js → can-open-in-ppm-CwrBTXOy.js} +0 -0
  2623. /package/dist/web/assets/{can-open-in-ppm-Bw_xiOXX.js.br → can-open-in-ppm-CwrBTXOy.js.br} +0 -0
  2624. /package/dist/web/assets/{can-open-in-ppm-Bw_xiOXX.js.gz → can-open-in-ppm-CwrBTXOy.js.gz} +0 -0
  2625. /package/dist/web/assets/{catppuccin-frappe-BT3IMDYa.js → catppuccin-frappe-BK9Tv2XG.js} +0 -0
  2626. /package/dist/web/assets/{catppuccin-frappe-BT3IMDYa.js.br → catppuccin-frappe-BK9Tv2XG.js.br} +0 -0
  2627. /package/dist/web/assets/{catppuccin-frappe-BT3IMDYa.js.gz → catppuccin-frappe-BK9Tv2XG.js.gz} +0 -0
  2628. /package/dist/web/assets/{catppuccin-latte-DM9i15n3.js → catppuccin-latte-De4mVCp3.js} +0 -0
  2629. /package/dist/web/assets/{catppuccin-latte-DM9i15n3.js.br → catppuccin-latte-De4mVCp3.js.br} +0 -0
  2630. /package/dist/web/assets/{catppuccin-latte-DM9i15n3.js.gz → catppuccin-latte-De4mVCp3.js.gz} +0 -0
  2631. /package/dist/web/assets/{catppuccin-macchiato-CAEDr_h3.js → catppuccin-macchiato-Bxt_D7cs.js} +0 -0
  2632. /package/dist/web/assets/{catppuccin-macchiato-CAEDr_h3.js.br → catppuccin-macchiato-Bxt_D7cs.js.br} +0 -0
  2633. /package/dist/web/assets/{catppuccin-macchiato-CAEDr_h3.js.gz → catppuccin-macchiato-Bxt_D7cs.js.gz} +0 -0
  2634. /package/dist/web/assets/{catppuccin-mocha-BzOmDckq.js → catppuccin-mocha-Dz2o8gN7.js} +0 -0
  2635. /package/dist/web/assets/{catppuccin-mocha-BzOmDckq.js.br → catppuccin-mocha-Dz2o8gN7.js.br} +0 -0
  2636. /package/dist/web/assets/{catppuccin-mocha-BzOmDckq.js.gz → catppuccin-mocha-Dz2o8gN7.js.gz} +0 -0
  2637. /package/dist/web/assets/{clarity-BijZXjQ6.js → clarity-BJdh0Pw-.js} +0 -0
  2638. /package/dist/web/assets/{clarity-BijZXjQ6.js.br → clarity-BJdh0Pw-.js.br} +0 -0
  2639. /package/dist/web/assets/{clarity-BijZXjQ6.js.gz → clarity-BJdh0Pw-.js.gz} +0 -0
  2640. /package/dist/web/assets/{clojure--ad2221W.js → clojure-DG-FYGzn.js} +0 -0
  2641. /package/dist/web/assets/{clojure--ad2221W.js.br → clojure-DG-FYGzn.js.br} +0 -0
  2642. /package/dist/web/assets/{clojure--ad2221W.js.gz → clojure-DG-FYGzn.js.gz} +0 -0
  2643. /package/dist/web/assets/{cmake-DyjUMpXU.js → cmake-D1imEXan.js} +0 -0
  2644. /package/dist/web/assets/{cmake-DyjUMpXU.js.br → cmake-D1imEXan.js.br} +0 -0
  2645. /package/dist/web/assets/{cmake-DyjUMpXU.js.gz → cmake-D1imEXan.js.gz} +0 -0
  2646. /package/dist/web/assets/{codeowners-BeMhKnC9.js → codeowners-YpylTFB5.js} +0 -0
  2647. /package/dist/web/assets/{codeql-BGtwwp5_.js → codeql-ajDEPgqi.js} +0 -0
  2648. /package/dist/web/assets/{codeql-BGtwwp5_.js.br → codeql-ajDEPgqi.js.br} +0 -0
  2649. /package/dist/web/assets/{codeql-BGtwwp5_.js.gz → codeql-ajDEPgqi.js.gz} +0 -0
  2650. /package/dist/web/assets/{common-lisp--ldIKs5M.js → common-lisp-C2sCrd-m.js} +0 -0
  2651. /package/dist/web/assets/{common-lisp--ldIKs5M.js.br → common-lisp-C2sCrd-m.js.br} +0 -0
  2652. /package/dist/web/assets/{common-lisp--ldIKs5M.js.gz → common-lisp-C2sCrd-m.js.gz} +0 -0
  2653. /package/dist/web/assets/{coq-CRn01_Db.js → coq-BqybyDc9.js} +0 -0
  2654. /package/dist/web/assets/{coq-CRn01_Db.js.br → coq-BqybyDc9.js.br} +0 -0
  2655. /package/dist/web/assets/{coq-CRn01_Db.js.gz → coq-BqybyDc9.js.gz} +0 -0
  2656. /package/dist/web/assets/{csharp-CuWM1IYq.js → csharp-nKCEiujy.js} +0 -0
  2657. /package/dist/web/assets/{csharp-CuWM1IYq.js.br → csharp-nKCEiujy.js.br} +0 -0
  2658. /package/dist/web/assets/{csharp-CuWM1IYq.js.gz → csharp-nKCEiujy.js.gz} +0 -0
  2659. /package/dist/web/assets/{css-CQ_jz6Vl.js → css-BwwQrFr3.js} +0 -0
  2660. /package/dist/web/assets/{css-CQ_jz6Vl.js.br → css-BwwQrFr3.js.br} +0 -0
  2661. /package/dist/web/assets/{css-CQ_jz6Vl.js.gz → css-BwwQrFr3.js.gz} +0 -0
  2662. /package/dist/web/assets/{csv-DP77pbR8.js → csv-Nh9vQwQm.js} +0 -0
  2663. /package/dist/web/assets/{csv-DP77pbR8.js.br → csv-Nh9vQwQm.js.br} +0 -0
  2664. /package/dist/web/assets/{csv-DP77pbR8.js.gz → csv-Nh9vQwQm.js.gz} +0 -0
  2665. /package/dist/web/assets/{cue-DScL5ELc.js → cue-Ch79RPsU.js} +0 -0
  2666. /package/dist/web/assets/{cue-DScL5ELc.js.br → cue-Ch79RPsU.js.br} +0 -0
  2667. /package/dist/web/assets/{cue-DScL5ELc.js.gz → cue-Ch79RPsU.js.gz} +0 -0
  2668. /package/dist/web/assets/{cypher-8ehI2vrw.js → cypher-CgiOQ6hs.js} +0 -0
  2669. /package/dist/web/assets/{cypher-8ehI2vrw.js.br → cypher-CgiOQ6hs.js.br} +0 -0
  2670. /package/dist/web/assets/{cypher-8ehI2vrw.js.gz → cypher-CgiOQ6hs.js.gz} +0 -0
  2671. /package/dist/web/assets/{cytoscape.esm-BokGhmK2.js → cytoscape.esm-9PBaSM25.js} +0 -0
  2672. /package/dist/web/assets/{cytoscape.esm-BokGhmK2.js.br → cytoscape.esm-9PBaSM25.js.br} +0 -0
  2673. /package/dist/web/assets/{cytoscape.esm-BokGhmK2.js.gz → cytoscape.esm-9PBaSM25.js.gz} +0 -0
  2674. /package/dist/web/assets/{d-BvFZUewv.js → d-CmBcySpH.js} +0 -0
  2675. /package/dist/web/assets/{d-BvFZUewv.js.br → d-CmBcySpH.js.br} +0 -0
  2676. /package/dist/web/assets/{d-BvFZUewv.js.gz → d-CmBcySpH.js.gz} +0 -0
  2677. /package/dist/web/assets/{dark-plus-DKLywSFP.js → dark-plus-COLEX2ui.js} +0 -0
  2678. /package/dist/web/assets/{dark-plus-DKLywSFP.js.br → dark-plus-COLEX2ui.js.br} +0 -0
  2679. /package/dist/web/assets/{dark-plus-DKLywSFP.js.gz → dark-plus-COLEX2ui.js.gz} +0 -0
  2680. /package/dist/web/assets/{dart-Cs_NJAZ7.js → dart-BTAArMcJ.js} +0 -0
  2681. /package/dist/web/assets/{dart-Cs_NJAZ7.js.br → dart-BTAArMcJ.js.br} +0 -0
  2682. /package/dist/web/assets/{dart-Cs_NJAZ7.js.gz → dart-BTAArMcJ.js.gz} +0 -0
  2683. /package/dist/web/assets/{dax-BB8KgXzI.js → dax-BbZzRY9i.js} +0 -0
  2684. /package/dist/web/assets/{dax-BB8KgXzI.js.br → dax-BbZzRY9i.js.br} +0 -0
  2685. /package/dist/web/assets/{dax-BB8KgXzI.js.gz → dax-BbZzRY9i.js.gz} +0 -0
  2686. /package/dist/web/assets/{defaultLocale-4xAk2LVU.js → defaultLocale-1Phej3f6.js} +0 -0
  2687. /package/dist/web/assets/{defaultLocale-4xAk2LVU.js.br → defaultLocale-1Phej3f6.js.br} +0 -0
  2688. /package/dist/web/assets/{defaultLocale-4xAk2LVU.js.gz → defaultLocale-1Phej3f6.js.gz} +0 -0
  2689. /package/dist/web/assets/{design-system-status-label-B_0I_3a8.js → design-system-status-label-Cus6e2Df.js} +0 -0
  2690. /package/dist/web/assets/{desktop-Cs6Sk5Pu.js → desktop-OmQvU3-J.js} +0 -0
  2691. /package/dist/web/assets/{desktop-Cs6Sk5Pu.js.br → desktop-OmQvU3-J.js.br} +0 -0
  2692. /package/dist/web/assets/{desktop-Cs6Sk5Pu.js.gz → desktop-OmQvU3-J.js.gz} +0 -0
  2693. /package/dist/web/assets/{diff-CXSq83h3.js → diff-BEPnb9Fb.js} +0 -0
  2694. /package/dist/web/assets/{diff-CXSq83h3.js.br → diff-BEPnb9Fb.js.br} +0 -0
  2695. /package/dist/web/assets/{diff-CXSq83h3.js.gz → diff-BEPnb9Fb.js.gz} +0 -0
  2696. /package/dist/web/assets/{dist-D7mSb2HC.js → dist--v_QGJF6.js} +0 -0
  2697. /package/dist/web/assets/{dist-D7mSb2HC.js.br → dist--v_QGJF6.js.br} +0 -0
  2698. /package/dist/web/assets/{dist-D7mSb2HC.js.gz → dist--v_QGJF6.js.gz} +0 -0
  2699. /package/dist/web/assets/{dist-0EbiTA3n.js → dist-ChawRilJ.js} +0 -0
  2700. /package/dist/web/assets/{dist-0EbiTA3n.js.br → dist-ChawRilJ.js.br} +0 -0
  2701. /package/dist/web/assets/{dist-0EbiTA3n.js.gz → dist-ChawRilJ.js.gz} +0 -0
  2702. /package/dist/web/assets/{docker-BX5p1mZ3.js → docker-Cg17HgTD.js} +0 -0
  2703. /package/dist/web/assets/{docker-BX5p1mZ3.js.br → docker-Cg17HgTD.js.br} +0 -0
  2704. /package/dist/web/assets/{docker-BX5p1mZ3.js.gz → docker-Cg17HgTD.js.gz} +0 -0
  2705. /package/dist/web/assets/{dotenv-D8xdMiRo.js → dotenv-DEMIaY7V.js} +0 -0
  2706. /package/dist/web/assets/{dotenv-D8xdMiRo.js.br → dotenv-DEMIaY7V.js.br} +0 -0
  2707. /package/dist/web/assets/{dotenv-D8xdMiRo.js.gz → dotenv-DEMIaY7V.js.gz} +0 -0
  2708. /package/dist/web/assets/{dracula-BNPKmiGE.js → dracula-BkCFq8SO.js} +0 -0
  2709. /package/dist/web/assets/{dracula-BNPKmiGE.js.br → dracula-BkCFq8SO.js.br} +0 -0
  2710. /package/dist/web/assets/{dracula-BNPKmiGE.js.gz → dracula-BkCFq8SO.js.gz} +0 -0
  2711. /package/dist/web/assets/{dracula-soft-Bv4lLEFc.js → dracula-soft-Cjp6-ltF.js} +0 -0
  2712. /package/dist/web/assets/{dracula-soft-Bv4lLEFc.js.br → dracula-soft-Cjp6-ltF.js.br} +0 -0
  2713. /package/dist/web/assets/{dracula-soft-Bv4lLEFc.js.gz → dracula-soft-Cjp6-ltF.js.gz} +0 -0
  2714. /package/dist/web/assets/{dream-maker-Yg8FPJu3.js → dream-maker-Ce7Y_UKj.js} +0 -0
  2715. /package/dist/web/assets/{dream-maker-Yg8FPJu3.js.br → dream-maker-Ce7Y_UKj.js.br} +0 -0
  2716. /package/dist/web/assets/{dream-maker-Yg8FPJu3.js.gz → dream-maker-Ce7Y_UKj.js.gz} +0 -0
  2717. /package/dist/web/assets/{editor-font-BNwo7zo5.js → editor-font-CdxKRKX-.js} +0 -0
  2718. /package/dist/web/assets/{emacs-lisp-kBgNJmB7.js → emacs-lisp-BjpyfTbN.js} +0 -0
  2719. /package/dist/web/assets/{emacs-lisp-kBgNJmB7.js.br → emacs-lisp-BjpyfTbN.js.br} +0 -0
  2720. /package/dist/web/assets/{emacs-lisp-kBgNJmB7.js.gz → emacs-lisp-BjpyfTbN.js.gz} +0 -0
  2721. /package/dist/web/assets/{everforest-dark-7XTfQW4s.js → everforest-dark-9r4okw1s.js} +0 -0
  2722. /package/dist/web/assets/{everforest-dark-7XTfQW4s.js.br → everforest-dark-9r4okw1s.js.br} +0 -0
  2723. /package/dist/web/assets/{everforest-dark-7XTfQW4s.js.gz → everforest-dark-9r4okw1s.js.gz} +0 -0
  2724. /package/dist/web/assets/{everforest-light-CmPZPQmV.js → everforest-light-GCQTZ3Ju.js} +0 -0
  2725. /package/dist/web/assets/{everforest-light-CmPZPQmV.js.br → everforest-light-GCQTZ3Ju.js.br} +0 -0
  2726. /package/dist/web/assets/{everforest-light-CmPZPQmV.js.gz → everforest-light-GCQTZ3Ju.js.gz} +0 -0
  2727. /package/dist/web/assets/{fennel-Dm71IPM6.js → fennel-ITjY5Z6u.js} +0 -0
  2728. /package/dist/web/assets/{fennel-Dm71IPM6.js.br → fennel-ITjY5Z6u.js.br} +0 -0
  2729. /package/dist/web/assets/{fennel-Dm71IPM6.js.gz → fennel-ITjY5Z6u.js.gz} +0 -0
  2730. /package/dist/web/assets/{fish-CIzcfZjZ.js → fish-DP2uEzyg.js} +0 -0
  2731. /package/dist/web/assets/{fish-CIzcfZjZ.js.br → fish-DP2uEzyg.js.br} +0 -0
  2732. /package/dist/web/assets/{fish-CIzcfZjZ.js.gz → fish-DP2uEzyg.js.gz} +0 -0
  2733. /package/dist/web/assets/{fluent-DFSMEphj.js → fluent-irzaP1f6.js} +0 -0
  2734. /package/dist/web/assets/{fluent-DFSMEphj.js.br → fluent-irzaP1f6.js.br} +0 -0
  2735. /package/dist/web/assets/{fluent-DFSMEphj.js.gz → fluent-irzaP1f6.js.gz} +0 -0
  2736. /package/dist/web/assets/{format-bytes-CRZfxO2J.js → format-bytes-B2kC4sbB.js} +0 -0
  2737. /package/dist/web/assets/{format-date-BMtvCeb9.js → format-date-CSHaU2wN.js} +0 -0
  2738. /package/dist/web/assets/{fortran-free-form-xnlj2dLW.js → fortran-free-form-BAPoainr.js} +0 -0
  2739. /package/dist/web/assets/{fortran-free-form-xnlj2dLW.js.br → fortran-free-form-BAPoainr.js.br} +0 -0
  2740. /package/dist/web/assets/{fortran-free-form-xnlj2dLW.js.gz → fortran-free-form-BAPoainr.js.gz} +0 -0
  2741. /package/dist/web/assets/{gdscript-DFnznHD1.js → gdscript-DJ098V1z.js} +0 -0
  2742. /package/dist/web/assets/{gdscript-DFnznHD1.js.br → gdscript-DJ098V1z.js.br} +0 -0
  2743. /package/dist/web/assets/{gdscript-DFnznHD1.js.gz → gdscript-DJ098V1z.js.gz} +0 -0
  2744. /package/dist/web/assets/{gdshader-B9wvgXVU.js → gdshader-DS2Jfy-K.js} +0 -0
  2745. /package/dist/web/assets/{gdshader-B9wvgXVU.js.br → gdshader-DS2Jfy-K.js.br} +0 -0
  2746. /package/dist/web/assets/{gdshader-B9wvgXVU.js.gz → gdshader-DS2Jfy-K.js.gz} +0 -0
  2747. /package/dist/web/assets/{genie-Bz0RXdFf.js → genie-CqfOaFFx.js} +0 -0
  2748. /package/dist/web/assets/{genie-Bz0RXdFf.js.br → genie-CqfOaFFx.js.br} +0 -0
  2749. /package/dist/web/assets/{genie-Bz0RXdFf.js.gz → genie-CqfOaFFx.js.gz} +0 -0
  2750. /package/dist/web/assets/{gherkin-ZD8lWd_U.js → gherkin-CoZ2ucDH.js} +0 -0
  2751. /package/dist/web/assets/{gherkin-ZD8lWd_U.js.br → gherkin-CoZ2ucDH.js.br} +0 -0
  2752. /package/dist/web/assets/{gherkin-ZD8lWd_U.js.gz → gherkin-CoZ2ucDH.js.gz} +0 -0
  2753. /package/dist/web/assets/{github-dark-D8IE4lln.js → github-dark-BNLgnSO9.js} +0 -0
  2754. /package/dist/web/assets/{github-dark-D8IE4lln.js.br → github-dark-BNLgnSO9.js.br} +0 -0
  2755. /package/dist/web/assets/{github-dark-D8IE4lln.js.gz → github-dark-BNLgnSO9.js.gz} +0 -0
  2756. /package/dist/web/assets/{github-dark-default-Bv2-je5j.js → github-dark-default-CYlSggwi.js} +0 -0
  2757. /package/dist/web/assets/{github-dark-default-Bv2-je5j.js.br → github-dark-default-CYlSggwi.js.br} +0 -0
  2758. /package/dist/web/assets/{github-dark-default-Bv2-je5j.js.gz → github-dark-default-CYlSggwi.js.gz} +0 -0
  2759. /package/dist/web/assets/{github-dark-dimmed-Dn2Abfcl.js → github-dark-dimmed-DumUysDk.js} +0 -0
  2760. /package/dist/web/assets/{github-dark-dimmed-Dn2Abfcl.js.br → github-dark-dimmed-DumUysDk.js.br} +0 -0
  2761. /package/dist/web/assets/{github-dark-dimmed-Dn2Abfcl.js.gz → github-dark-dimmed-DumUysDk.js.gz} +0 -0
  2762. /package/dist/web/assets/{github-dark-high-contrast-CPYPXNHn.js → github-dark-high-contrast-TKrcDJ2I.js} +0 -0
  2763. /package/dist/web/assets/{github-dark-high-contrast-CPYPXNHn.js.br → github-dark-high-contrast-TKrcDJ2I.js.br} +0 -0
  2764. /package/dist/web/assets/{github-dark-high-contrast-CPYPXNHn.js.gz → github-dark-high-contrast-TKrcDJ2I.js.gz} +0 -0
  2765. /package/dist/web/assets/{github-light-CVOMBMvb.js → github-light-DVENFHLJ.js} +0 -0
  2766. /package/dist/web/assets/{github-light-CVOMBMvb.js.br → github-light-DVENFHLJ.js.br} +0 -0
  2767. /package/dist/web/assets/{github-light-CVOMBMvb.js.gz → github-light-DVENFHLJ.js.gz} +0 -0
  2768. /package/dist/web/assets/{github-light-default-6Ayk6lJY.js → github-light-default-DtN8AGcE.js} +0 -0
  2769. /package/dist/web/assets/{github-light-default-6Ayk6lJY.js.br → github-light-default-DtN8AGcE.js.br} +0 -0
  2770. /package/dist/web/assets/{github-light-default-6Ayk6lJY.js.gz → github-light-default-DtN8AGcE.js.gz} +0 -0
  2771. /package/dist/web/assets/{github-light-high-contrast-BTGKd6JI.js → github-light-high-contrast-NSyF37x4.js} +0 -0
  2772. /package/dist/web/assets/{github-light-high-contrast-BTGKd6JI.js.br → github-light-high-contrast-NSyF37x4.js.br} +0 -0
  2773. /package/dist/web/assets/{github-light-high-contrast-BTGKd6JI.js.gz → github-light-high-contrast-NSyF37x4.js.gz} +0 -0
  2774. /package/dist/web/assets/{gleam-UeA7_OU8.js → gleam-hp4NMSb5.js} +0 -0
  2775. /package/dist/web/assets/{gleam-UeA7_OU8.js.br → gleam-hp4NMSb5.js.br} +0 -0
  2776. /package/dist/web/assets/{gleam-UeA7_OU8.js.gz → gleam-hp4NMSb5.js.gz} +0 -0
  2777. /package/dist/web/assets/{gn-DrdNDhFj.js → gn-Dptw2PEu.js} +0 -0
  2778. /package/dist/web/assets/{gn-DrdNDhFj.js.br → gn-Dptw2PEu.js.br} +0 -0
  2779. /package/dist/web/assets/{gn-DrdNDhFj.js.gz → gn-Dptw2PEu.js.gz} +0 -0
  2780. /package/dist/web/assets/{gnuplot-D8vxhaGw.js → gnuplot-9juRzjwv.js} +0 -0
  2781. /package/dist/web/assets/{gnuplot-D8vxhaGw.js.br → gnuplot-9juRzjwv.js.br} +0 -0
  2782. /package/dist/web/assets/{gnuplot-D8vxhaGw.js.gz → gnuplot-9juRzjwv.js.gz} +0 -0
  2783. /package/dist/web/assets/{go-atNMhmH3.js → go-D-QLCda0.js} +0 -0
  2784. /package/dist/web/assets/{go-atNMhmH3.js.br → go-D-QLCda0.js.br} +0 -0
  2785. /package/dist/web/assets/{go-atNMhmH3.js.gz → go-D-QLCda0.js.gz} +0 -0
  2786. /package/dist/web/assets/{groovy-CLRzHDW2.js → groovy-DHKNy6Eh.js} +0 -0
  2787. /package/dist/web/assets/{groovy-CLRzHDW2.js.br → groovy-DHKNy6Eh.js.br} +0 -0
  2788. /package/dist/web/assets/{groovy-CLRzHDW2.js.gz → groovy-DHKNy6Eh.js.gz} +0 -0
  2789. /package/dist/web/assets/{gruvbox-dark-hard-CMSNCrAk.js → gruvbox-dark-hard-BFD6aQdB.js} +0 -0
  2790. /package/dist/web/assets/{gruvbox-dark-hard-CMSNCrAk.js.br → gruvbox-dark-hard-BFD6aQdB.js.br} +0 -0
  2791. /package/dist/web/assets/{gruvbox-dark-hard-CMSNCrAk.js.gz → gruvbox-dark-hard-BFD6aQdB.js.gz} +0 -0
  2792. /package/dist/web/assets/{gruvbox-dark-medium-CR5wAM1c.js → gruvbox-dark-medium-D5llYBNp.js} +0 -0
  2793. /package/dist/web/assets/{gruvbox-dark-medium-CR5wAM1c.js.br → gruvbox-dark-medium-D5llYBNp.js.br} +0 -0
  2794. /package/dist/web/assets/{gruvbox-dark-medium-CR5wAM1c.js.gz → gruvbox-dark-medium-D5llYBNp.js.gz} +0 -0
  2795. /package/dist/web/assets/{gruvbox-dark-soft-Ba1gP2O2.js → gruvbox-dark-soft-DOztQmNR.js} +0 -0
  2796. /package/dist/web/assets/{gruvbox-dark-soft-Ba1gP2O2.js.br → gruvbox-dark-soft-DOztQmNR.js.br} +0 -0
  2797. /package/dist/web/assets/{gruvbox-dark-soft-Ba1gP2O2.js.gz → gruvbox-dark-soft-DOztQmNR.js.gz} +0 -0
  2798. /package/dist/web/assets/{gruvbox-light-hard-ChSY383t.js → gruvbox-light-hard-BFGD-8Pd.js} +0 -0
  2799. /package/dist/web/assets/{gruvbox-light-hard-ChSY383t.js.br → gruvbox-light-hard-BFGD-8Pd.js.br} +0 -0
  2800. /package/dist/web/assets/{gruvbox-light-hard-ChSY383t.js.gz → gruvbox-light-hard-BFGD-8Pd.js.gz} +0 -0
  2801. /package/dist/web/assets/{gruvbox-light-medium-DebZzeA2.js → gruvbox-light-medium-DzoyXgT7.js} +0 -0
  2802. /package/dist/web/assets/{gruvbox-light-medium-DebZzeA2.js.br → gruvbox-light-medium-DzoyXgT7.js.br} +0 -0
  2803. /package/dist/web/assets/{gruvbox-light-medium-DebZzeA2.js.gz → gruvbox-light-medium-DzoyXgT7.js.gz} +0 -0
  2804. /package/dist/web/assets/{gruvbox-light-soft-CEWqv8Ew.js → gruvbox-light-soft-B1Ix2zLN.js} +0 -0
  2805. /package/dist/web/assets/{gruvbox-light-soft-CEWqv8Ew.js.br → gruvbox-light-soft-B1Ix2zLN.js.br} +0 -0
  2806. /package/dist/web/assets/{gruvbox-light-soft-CEWqv8Ew.js.gz → gruvbox-light-soft-B1Ix2zLN.js.gz} +0 -0
  2807. /package/dist/web/assets/{haskell-CkgCblz9.js → haskell-BnrJ0k7G.js} +0 -0
  2808. /package/dist/web/assets/{haskell-CkgCblz9.js.br → haskell-BnrJ0k7G.js.br} +0 -0
  2809. /package/dist/web/assets/{haskell-CkgCblz9.js.gz → haskell-BnrJ0k7G.js.gz} +0 -0
  2810. /package/dist/web/assets/{haxe-DwOdNXRl.js → haxe-DwShHT_-.js} +0 -0
  2811. /package/dist/web/assets/{haxe-DwOdNXRl.js.br → haxe-DwShHT_-.js.br} +0 -0
  2812. /package/dist/web/assets/{haxe-DwOdNXRl.js.gz → haxe-DwShHT_-.js.gz} +0 -0
  2813. /package/dist/web/assets/{hcl-DXsxN8nX.js → hcl-VOjEibVB.js} +0 -0
  2814. /package/dist/web/assets/{hcl-DXsxN8nX.js.br → hcl-VOjEibVB.js.br} +0 -0
  2815. /package/dist/web/assets/{hcl-DXsxN8nX.js.gz → hcl-VOjEibVB.js.gz} +0 -0
  2816. /package/dist/web/assets/{hjson-oBOZxrL4.js → hjson-BHEn7pNn.js} +0 -0
  2817. /package/dist/web/assets/{hjson-oBOZxrL4.js.br → hjson-BHEn7pNn.js.br} +0 -0
  2818. /package/dist/web/assets/{hjson-oBOZxrL4.js.gz → hjson-BHEn7pNn.js.gz} +0 -0
  2819. /package/dist/web/assets/{hlsl-VEZxDU3L.js → hlsl-CrvxlGii.js} +0 -0
  2820. /package/dist/web/assets/{hlsl-VEZxDU3L.js.br → hlsl-CrvxlGii.js.br} +0 -0
  2821. /package/dist/web/assets/{hlsl-VEZxDU3L.js.gz → hlsl-CrvxlGii.js.gz} +0 -0
  2822. /package/dist/web/assets/{horizon-C_xHTsMO.js → horizon-D3T-P0u6.js} +0 -0
  2823. /package/dist/web/assets/{horizon-C_xHTsMO.js.br → horizon-D3T-P0u6.js.br} +0 -0
  2824. /package/dist/web/assets/{horizon-C_xHTsMO.js.gz → horizon-D3T-P0u6.js.gz} +0 -0
  2825. /package/dist/web/assets/{horizon-bright-CJd-vMFG.js → horizon-bright-vifGsEdk.js} +0 -0
  2826. /package/dist/web/assets/{horizon-bright-CJd-vMFG.js.br → horizon-bright-vifGsEdk.js.br} +0 -0
  2827. /package/dist/web/assets/{horizon-bright-CJd-vMFG.js.gz → horizon-bright-vifGsEdk.js.gz} +0 -0
  2828. /package/dist/web/assets/{houston-BYOfZpV9.js → houston-IrOgT7r4.js} +0 -0
  2829. /package/dist/web/assets/{houston-BYOfZpV9.js.br → houston-IrOgT7r4.js.br} +0 -0
  2830. /package/dist/web/assets/{houston-BYOfZpV9.js.gz → houston-IrOgT7r4.js.gz} +0 -0
  2831. /package/dist/web/assets/{hy-DiruP4wR.js → hy-5eSgTJ8G.js} +0 -0
  2832. /package/dist/web/assets/{hy-DiruP4wR.js.br → hy-5eSgTJ8G.js.br} +0 -0
  2833. /package/dist/web/assets/{hy-DiruP4wR.js.gz → hy-5eSgTJ8G.js.gz} +0 -0
  2834. /package/dist/web/assets/{image-gallery-DC3gRAqk.js → image-gallery-BuxSgBug.js} +0 -0
  2835. /package/dist/web/assets/{image-preview-geometry-DN3DZQp0.js → image-preview-geometry-CCq8rio7.js} +0 -0
  2836. /package/dist/web/assets/{imba-BBm5cmpQ.js → imba-Dp0I4DVl.js} +0 -0
  2837. /package/dist/web/assets/{imba-BBm5cmpQ.js.br → imba-Dp0I4DVl.js.br} +0 -0
  2838. /package/dist/web/assets/{imba-BBm5cmpQ.js.gz → imba-Dp0I4DVl.js.gz} +0 -0
  2839. /package/dist/web/assets/{ini-DIjchSIH.js → ini-CHDKad9O.js} +0 -0
  2840. /package/dist/web/assets/{ini-DIjchSIH.js.br → ini-CHDKad9O.js.br} +0 -0
  2841. /package/dist/web/assets/{ini-DIjchSIH.js.gz → ini-CHDKad9O.js.gz} +0 -0
  2842. /package/dist/web/assets/{init-Cf64k-PQ.js → init-YGhXRxki.js} +0 -0
  2843. /package/dist/web/assets/{isArrayLikeObject-DoNOpNUH.js → isArrayLikeObject-DHTG10am.js} +0 -0
  2844. /package/dist/web/assets/{isArrayLikeObject-DoNOpNUH.js.br → isArrayLikeObject-DHTG10am.js.br} +0 -0
  2845. /package/dist/web/assets/{isArrayLikeObject-DoNOpNUH.js.gz → isArrayLikeObject-DHTG10am.js.gz} +0 -0
  2846. /package/dist/web/assets/{java-BjdsRxXN.js → java-ClnCQCSW.js} +0 -0
  2847. /package/dist/web/assets/{java-BjdsRxXN.js.br → java-ClnCQCSW.js.br} +0 -0
  2848. /package/dist/web/assets/{java-BjdsRxXN.js.gz → java-ClnCQCSW.js.gz} +0 -0
  2849. /package/dist/web/assets/{javascript-R2SZ_OEC.js → javascript-D1PM1fYV.js} +0 -0
  2850. /package/dist/web/assets/{javascript-R2SZ_OEC.js.br → javascript-D1PM1fYV.js.br} +0 -0
  2851. /package/dist/web/assets/{javascript-R2SZ_OEC.js.gz → javascript-D1PM1fYV.js.gz} +0 -0
  2852. /package/dist/web/assets/{json-CYCJeTwK.js → json-DELY1EIR.js} +0 -0
  2853. /package/dist/web/assets/{json-CYCJeTwK.js.br → json-DELY1EIR.js.br} +0 -0
  2854. /package/dist/web/assets/{json-CYCJeTwK.js.gz → json-DELY1EIR.js.gz} +0 -0
  2855. /package/dist/web/assets/{json5-0Pz845K0.js → json5-D6f_uNwJ.js} +0 -0
  2856. /package/dist/web/assets/{json5-0Pz845K0.js.br → json5-D6f_uNwJ.js.br} +0 -0
  2857. /package/dist/web/assets/{json5-0Pz845K0.js.gz → json5-D6f_uNwJ.js.gz} +0 -0
  2858. /package/dist/web/assets/{jsonc-B0jdT4uM.js → jsonc-DrHCdmos.js} +0 -0
  2859. /package/dist/web/assets/{jsonc-B0jdT4uM.js.br → jsonc-DrHCdmos.js.br} +0 -0
  2860. /package/dist/web/assets/{jsonc-B0jdT4uM.js.gz → jsonc-DrHCdmos.js.gz} +0 -0
  2861. /package/dist/web/assets/{jsonl-CdvFKZtz.js → jsonl-Cwc3cXEL.js} +0 -0
  2862. /package/dist/web/assets/{jsonl-CdvFKZtz.js.br → jsonl-Cwc3cXEL.js.br} +0 -0
  2863. /package/dist/web/assets/{jsonl-CdvFKZtz.js.gz → jsonl-Cwc3cXEL.js.gz} +0 -0
  2864. /package/dist/web/assets/{jsonnet-BYd5ZGqe.js → jsonnet-BwZfaIFT.js} +0 -0
  2865. /package/dist/web/assets/{jsonnet-BYd5ZGqe.js.br → jsonnet-BwZfaIFT.js.br} +0 -0
  2866. /package/dist/web/assets/{jsonnet-BYd5ZGqe.js.gz → jsonnet-BwZfaIFT.js.gz} +0 -0
  2867. /package/dist/web/assets/{jssm-BlBU_IK1.js → jssm-BpEmg_MT.js} +0 -0
  2868. /package/dist/web/assets/{jssm-BlBU_IK1.js.br → jssm-BpEmg_MT.js.br} +0 -0
  2869. /package/dist/web/assets/{jssm-BlBU_IK1.js.gz → jssm-BpEmg_MT.js.gz} +0 -0
  2870. /package/dist/web/assets/{jsx-CsWR7aMm.js → jsx-BOrwA6ld.js} +0 -0
  2871. /package/dist/web/assets/{jsx-CsWR7aMm.js.br → jsx-BOrwA6ld.js.br} +0 -0
  2872. /package/dist/web/assets/{jsx-CsWR7aMm.js.gz → jsx-BOrwA6ld.js.gz} +0 -0
  2873. /package/dist/web/assets/{kanagawa-dragon-C6ogFc3X.js → kanagawa-dragon-DRfVaGIX.js} +0 -0
  2874. /package/dist/web/assets/{kanagawa-dragon-C6ogFc3X.js.br → kanagawa-dragon-DRfVaGIX.js.br} +0 -0
  2875. /package/dist/web/assets/{kanagawa-dragon-C6ogFc3X.js.gz → kanagawa-dragon-DRfVaGIX.js.gz} +0 -0
  2876. /package/dist/web/assets/{kanagawa-lotus-8esZNUbA.js → kanagawa-lotus-CjOlny0Q.js} +0 -0
  2877. /package/dist/web/assets/{kanagawa-lotus-8esZNUbA.js.br → kanagawa-lotus-CjOlny0Q.js.br} +0 -0
  2878. /package/dist/web/assets/{kanagawa-lotus-8esZNUbA.js.gz → kanagawa-lotus-CjOlny0Q.js.gz} +0 -0
  2879. /package/dist/web/assets/{kanagawa-wave-C-yWQ6RD.js → kanagawa-wave-DvdM88a4.js} +0 -0
  2880. /package/dist/web/assets/{kanagawa-wave-C-yWQ6RD.js.br → kanagawa-wave-DvdM88a4.js.br} +0 -0
  2881. /package/dist/web/assets/{kanagawa-wave-C-yWQ6RD.js.gz → kanagawa-wave-DvdM88a4.js.gz} +0 -0
  2882. /package/dist/web/assets/{katex-Cz0KLyXA.js → katex-BHtqYBze.js} +0 -0
  2883. /package/dist/web/assets/{katex-Cz0KLyXA.js.br → katex-BHtqYBze.js.br} +0 -0
  2884. /package/dist/web/assets/{katex-Cz0KLyXA.js.gz → katex-BHtqYBze.js.gz} +0 -0
  2885. /package/dist/web/assets/{kdl-D712OVXR.js → kdl-DSo3PvM0.js} +0 -0
  2886. /package/dist/web/assets/{kdl-D712OVXR.js.br → kdl-DSo3PvM0.js.br} +0 -0
  2887. /package/dist/web/assets/{kdl-D712OVXR.js.gz → kdl-DSo3PvM0.js.gz} +0 -0
  2888. /package/dist/web/assets/{kotlin-BEUa7XzN.js → kotlin-BV8TwCGu.js} +0 -0
  2889. /package/dist/web/assets/{kotlin-BEUa7XzN.js.br → kotlin-BV8TwCGu.js.br} +0 -0
  2890. /package/dist/web/assets/{kotlin-BEUa7XzN.js.gz → kotlin-BV8TwCGu.js.gz} +0 -0
  2891. /package/dist/web/assets/{kusto-n4J6aIey.js → kusto-DCo1Fdmm.js} +0 -0
  2892. /package/dist/web/assets/{kusto-n4J6aIey.js.br → kusto-DCo1Fdmm.js.br} +0 -0
  2893. /package/dist/web/assets/{kusto-n4J6aIey.js.gz → kusto-DCo1Fdmm.js.gz} +0 -0
  2894. /package/dist/web/assets/{laserwave-CddL9sH-.js → laserwave-DPX9FvD9.js} +0 -0
  2895. /package/dist/web/assets/{laserwave-CddL9sH-.js.br → laserwave-DPX9FvD9.js.br} +0 -0
  2896. /package/dist/web/assets/{laserwave-CddL9sH-.js.gz → laserwave-DPX9FvD9.js.gz} +0 -0
  2897. /package/dist/web/assets/{lean-CS8dnaPi.js → lean-Cya8dqZu.js} +0 -0
  2898. /package/dist/web/assets/{lean-CS8dnaPi.js.br → lean-Cya8dqZu.js.br} +0 -0
  2899. /package/dist/web/assets/{lean-CS8dnaPi.js.gz → lean-Cya8dqZu.js.gz} +0 -0
  2900. /package/dist/web/assets/{less-D7VWEXeK.js → less-CJUPgkIs.js} +0 -0
  2901. /package/dist/web/assets/{less-D7VWEXeK.js.br → less-CJUPgkIs.js.br} +0 -0
  2902. /package/dist/web/assets/{less-D7VWEXeK.js.gz → less-CJUPgkIs.js.gz} +0 -0
  2903. /package/dist/web/assets/{libesm-5f7T4AHA.js → libesm-B6LsX5wH.js} +0 -0
  2904. /package/dist/web/assets/{libesm-5f7T4AHA.js.br → libesm-B6LsX5wH.js.br} +0 -0
  2905. /package/dist/web/assets/{libesm-5f7T4AHA.js.gz → libesm-B6LsX5wH.js.gz} +0 -0
  2906. /package/dist/web/assets/{light-plus-DUh-yC9k.js → light-plus-BXXrlFJH.js} +0 -0
  2907. /package/dist/web/assets/{light-plus-DUh-yC9k.js.br → light-plus-BXXrlFJH.js.br} +0 -0
  2908. /package/dist/web/assets/{light-plus-DUh-yC9k.js.gz → light-plus-BXXrlFJH.js.gz} +0 -0
  2909. /package/dist/web/assets/{llvm-P1D8XyMB.js → llvm-CUbQanZr.js} +0 -0
  2910. /package/dist/web/assets/{llvm-P1D8XyMB.js.br → llvm-CUbQanZr.js.br} +0 -0
  2911. /package/dist/web/assets/{llvm-P1D8XyMB.js.gz → llvm-CUbQanZr.js.gz} +0 -0
  2912. /package/dist/web/assets/{log-BGft0RQz.js → log-B3fFlSMd.js} +0 -0
  2913. /package/dist/web/assets/{log-BGft0RQz.js.br → log-B3fFlSMd.js.br} +0 -0
  2914. /package/dist/web/assets/{log-BGft0RQz.js.gz → log-B3fFlSMd.js.gz} +0 -0
  2915. /package/dist/web/assets/{logo-uFZx2JEw.js → logo-ucAyw6zf.js} +0 -0
  2916. /package/dist/web/assets/{logo-uFZx2JEw.js.br → logo-ucAyw6zf.js.br} +0 -0
  2917. /package/dist/web/assets/{logo-uFZx2JEw.js.gz → logo-ucAyw6zf.js.gz} +0 -0
  2918. /package/dist/web/assets/{luau-aDpnpIe3.js → luau-C4l6TSTB.js} +0 -0
  2919. /package/dist/web/assets/{luau-aDpnpIe3.js.br → luau-C4l6TSTB.js.br} +0 -0
  2920. /package/dist/web/assets/{luau-aDpnpIe3.js.gz → luau-C4l6TSTB.js.gz} +0 -0
  2921. /package/dist/web/assets/{make-DwjpJeU5.js → make-CDtGIVc7.js} +0 -0
  2922. /package/dist/web/assets/{make-DwjpJeU5.js.br → make-CDtGIVc7.js.br} +0 -0
  2923. /package/dist/web/assets/{make-DwjpJeU5.js.gz → make-CDtGIVc7.js.gz} +0 -0
  2924. /package/dist/web/assets/{markdown-DC-eWqXi.js → markdown-CH1zKu2p.js} +0 -0
  2925. /package/dist/web/assets/{markdown-DC-eWqXi.js.br → markdown-CH1zKu2p.js.br} +0 -0
  2926. /package/dist/web/assets/{markdown-DC-eWqXi.js.gz → markdown-CH1zKu2p.js.gz} +0 -0
  2927. /package/dist/web/assets/{marked.esm-DDb9MclE.js → marked.esm-jqwIt-AK.js} +0 -0
  2928. /package/dist/web/assets/{marked.esm-DDb9MclE.js.br → marked.esm-jqwIt-AK.js.br} +0 -0
  2929. /package/dist/web/assets/{marked.esm-DDb9MclE.js.gz → marked.esm-jqwIt-AK.js.gz} +0 -0
  2930. /package/dist/web/assets/{material-theme-9BivM5cB.js → material-theme-CEuGVTmh.js} +0 -0
  2931. /package/dist/web/assets/{material-theme-9BivM5cB.js.br → material-theme-CEuGVTmh.js.br} +0 -0
  2932. /package/dist/web/assets/{material-theme-9BivM5cB.js.gz → material-theme-CEuGVTmh.js.gz} +0 -0
  2933. /package/dist/web/assets/{material-theme-darker-Bg7I3WIw.js → material-theme-darker-CUZ3MoIr.js} +0 -0
  2934. /package/dist/web/assets/{material-theme-darker-Bg7I3WIw.js.br → material-theme-darker-CUZ3MoIr.js.br} +0 -0
  2935. /package/dist/web/assets/{material-theme-darker-Bg7I3WIw.js.gz → material-theme-darker-CUZ3MoIr.js.gz} +0 -0
  2936. /package/dist/web/assets/{material-theme-lighter-BoEshpBb.js → material-theme-lighter-DxAqJSid.js} +0 -0
  2937. /package/dist/web/assets/{material-theme-lighter-BoEshpBb.js.br → material-theme-lighter-DxAqJSid.js.br} +0 -0
  2938. /package/dist/web/assets/{material-theme-lighter-BoEshpBb.js.gz → material-theme-lighter-DxAqJSid.js.gz} +0 -0
  2939. /package/dist/web/assets/{material-theme-ocean-CmKcBlBP.js → material-theme-ocean-BSvvHJp6.js} +0 -0
  2940. /package/dist/web/assets/{material-theme-ocean-CmKcBlBP.js.br → material-theme-ocean-BSvvHJp6.js.br} +0 -0
  2941. /package/dist/web/assets/{material-theme-ocean-CmKcBlBP.js.gz → material-theme-ocean-BSvvHJp6.js.gz} +0 -0
  2942. /package/dist/web/assets/{material-theme-palenight-CUyfHC0C.js → material-theme-palenight-QVOl50_m.js} +0 -0
  2943. /package/dist/web/assets/{material-theme-palenight-CUyfHC0C.js.br → material-theme-palenight-QVOl50_m.js.br} +0 -0
  2944. /package/dist/web/assets/{material-theme-palenight-CUyfHC0C.js.gz → material-theme-palenight-QVOl50_m.js.gz} +0 -0
  2945. /package/dist/web/assets/{math-DAaFbMeh.js → math-iYw0Gln4.js} +0 -0
  2946. /package/dist/web/assets/{matlab-CqBfVqYF.js → matlab-CZLQLwUp.js} +0 -0
  2947. /package/dist/web/assets/{matlab-CqBfVqYF.js.br → matlab-CZLQLwUp.js.br} +0 -0
  2948. /package/dist/web/assets/{matlab-CqBfVqYF.js.gz → matlab-CZLQLwUp.js.gz} +0 -0
  2949. /package/dist/web/assets/{mdx-CdC2mVzF.js → mdx-DO4NJsOo.js} +0 -0
  2950. /package/dist/web/assets/{mdx-CdC2mVzF.js.br → mdx-DO4NJsOo.js.br} +0 -0
  2951. /package/dist/web/assets/{mdx-CdC2mVzF.js.gz → mdx-DO4NJsOo.js.gz} +0 -0
  2952. /package/dist/web/assets/{mermaid-B542RnGP.js → mermaid-CIwzg1uO.js} +0 -0
  2953. /package/dist/web/assets/{mermaid-B542RnGP.js.br → mermaid-CIwzg1uO.js.br} +0 -0
  2954. /package/dist/web/assets/{mermaid-B542RnGP.js.gz → mermaid-CIwzg1uO.js.gz} +0 -0
  2955. /package/dist/web/assets/{metric-chart-canvas-CjFbZuhk.js → metric-chart-canvas-LAMaVJTu.js} +0 -0
  2956. /package/dist/web/assets/{metric-chart-canvas-CjFbZuhk.js.br → metric-chart-canvas-LAMaVJTu.js.br} +0 -0
  2957. /package/dist/web/assets/{metric-chart-canvas-CjFbZuhk.js.gz → metric-chart-canvas-LAMaVJTu.js.gz} +0 -0
  2958. /package/dist/web/assets/{min-dark-uGP-9UE_.js → min-dark-BdIgslXy.js} +0 -0
  2959. /package/dist/web/assets/{min-dark-uGP-9UE_.js.br → min-dark-BdIgslXy.js.br} +0 -0
  2960. /package/dist/web/assets/{min-dark-uGP-9UE_.js.gz → min-dark-BdIgslXy.js.gz} +0 -0
  2961. /package/dist/web/assets/{min-light-BkFlXt3G.js → min-light-DyU-T1r2.js} +0 -0
  2962. /package/dist/web/assets/{min-light-BkFlXt3G.js.br → min-light-DyU-T1r2.js.br} +0 -0
  2963. /package/dist/web/assets/{min-light-BkFlXt3G.js.gz → min-light-DyU-T1r2.js.gz} +0 -0
  2964. /package/dist/web/assets/{mipsasm-CkaxcMA-.js → mipsasm-DRad-Klm.js} +0 -0
  2965. /package/dist/web/assets/{mipsasm-CkaxcMA-.js.br → mipsasm-DRad-Klm.js.br} +0 -0
  2966. /package/dist/web/assets/{mipsasm-CkaxcMA-.js.gz → mipsasm-DRad-Klm.js.gz} +0 -0
  2967. /package/dist/web/assets/{mojo-DDh7AQLv.js → mojo-DXp5LDOc.js} +0 -0
  2968. /package/dist/web/assets/{mojo-DDh7AQLv.js.br → mojo-DXp5LDOc.js.br} +0 -0
  2969. /package/dist/web/assets/{mojo-DDh7AQLv.js.gz → mojo-DXp5LDOc.js.gz} +0 -0
  2970. /package/dist/web/assets/{monokai-BA4dkSrE.js → monokai-BiKX3qby.js} +0 -0
  2971. /package/dist/web/assets/{monokai-BA4dkSrE.js.br → monokai-BiKX3qby.js.br} +0 -0
  2972. /package/dist/web/assets/{monokai-BA4dkSrE.js.gz → monokai-BiKX3qby.js.gz} +0 -0
  2973. /package/dist/web/assets/{moonbit-DGxZDax4.js → moonbit-BOUoLF5r.js} +0 -0
  2974. /package/dist/web/assets/{moonbit-DGxZDax4.js.br → moonbit-BOUoLF5r.js.br} +0 -0
  2975. /package/dist/web/assets/{moonbit-DGxZDax4.js.gz → moonbit-BOUoLF5r.js.gz} +0 -0
  2976. /package/dist/web/assets/{move-C1HZaVNc.js → move-Dlk64FWK.js} +0 -0
  2977. /package/dist/web/assets/{move-C1HZaVNc.js.br → move-Dlk64FWK.js.br} +0 -0
  2978. /package/dist/web/assets/{move-C1HZaVNc.js.gz → move-Dlk64FWK.js.gz} +0 -0
  2979. /package/dist/web/assets/{narrat-g4c9qhYS.js → narrat-B-qd2Lh0.js} +0 -0
  2980. /package/dist/web/assets/{narrat-g4c9qhYS.js.br → narrat-B-qd2Lh0.js.br} +0 -0
  2981. /package/dist/web/assets/{narrat-g4c9qhYS.js.gz → narrat-B-qd2Lh0.js.gz} +0 -0
  2982. /package/dist/web/assets/{nextflow-groovy-CisdbLPv.js → nextflow-groovy-iAMYas0F.js} +0 -0
  2983. /package/dist/web/assets/{nextflow-groovy-CisdbLPv.js.br → nextflow-groovy-iAMYas0F.js.br} +0 -0
  2984. /package/dist/web/assets/{nextflow-groovy-CisdbLPv.js.gz → nextflow-groovy-iAMYas0F.js.gz} +0 -0
  2985. /package/dist/web/assets/{night-owl-ds7NNgBg.js → night-owl-3YNqjftR.js} +0 -0
  2986. /package/dist/web/assets/{night-owl-ds7NNgBg.js.br → night-owl-3YNqjftR.js.br} +0 -0
  2987. /package/dist/web/assets/{night-owl-ds7NNgBg.js.gz → night-owl-3YNqjftR.js.gz} +0 -0
  2988. /package/dist/web/assets/{night-owl-light-DurCGAfC.js → night-owl-light-GIncHb5w.js} +0 -0
  2989. /package/dist/web/assets/{night-owl-light-DurCGAfC.js.br → night-owl-light-GIncHb5w.js.br} +0 -0
  2990. /package/dist/web/assets/{night-owl-light-DurCGAfC.js.gz → night-owl-light-GIncHb5w.js.gz} +0 -0
  2991. /package/dist/web/assets/{nix-D7kCv9F9.js → nix-xjlEb3uw.js} +0 -0
  2992. /package/dist/web/assets/{nix-D7kCv9F9.js.br → nix-xjlEb3uw.js.br} +0 -0
  2993. /package/dist/web/assets/{nix-D7kCv9F9.js.gz → nix-xjlEb3uw.js.gz} +0 -0
  2994. /package/dist/web/assets/{nord-C-O3ceAv.js → nord-C8tvWx7P.js} +0 -0
  2995. /package/dist/web/assets/{nord-C-O3ceAv.js.br → nord-C8tvWx7P.js.br} +0 -0
  2996. /package/dist/web/assets/{nord-C-O3ceAv.js.gz → nord-C8tvWx7P.js.gz} +0 -0
  2997. /package/dist/web/assets/{nushell-oUYTGkzu.js → nushell-BqBb4pU6.js} +0 -0
  2998. /package/dist/web/assets/{nushell-oUYTGkzu.js.br → nushell-BqBb4pU6.js.br} +0 -0
  2999. /package/dist/web/assets/{nushell-oUYTGkzu.js.gz → nushell-BqBb4pU6.js.gz} +0 -0
  3000. /package/dist/web/assets/{objective-c-CzqHoRSj.js → objective-c-Bk6s0Cn5.js} +0 -0
  3001. /package/dist/web/assets/{objective-c-CzqHoRSj.js.br → objective-c-Bk6s0Cn5.js.br} +0 -0
  3002. /package/dist/web/assets/{objective-c-CzqHoRSj.js.gz → objective-c-Bk6s0Cn5.js.gz} +0 -0
  3003. /package/dist/web/assets/{objective-cpp-DJ8fgF2d.js → objective-cpp-DGTVWQ3V.js} +0 -0
  3004. /package/dist/web/assets/{objective-cpp-DJ8fgF2d.js.br → objective-cpp-DGTVWQ3V.js.br} +0 -0
  3005. /package/dist/web/assets/{objective-cpp-DJ8fgF2d.js.gz → objective-cpp-DGTVWQ3V.js.gz} +0 -0
  3006. /package/dist/web/assets/{ocaml-B_nWFfqA.js → ocaml-D6wPQ4kw.js} +0 -0
  3007. /package/dist/web/assets/{ocaml-B_nWFfqA.js.br → ocaml-D6wPQ4kw.js.br} +0 -0
  3008. /package/dist/web/assets/{ocaml-B_nWFfqA.js.gz → ocaml-D6wPQ4kw.js.gz} +0 -0
  3009. /package/dist/web/assets/{odin-BUQfWY13.js → odin-C9mw2xRN.js} +0 -0
  3010. /package/dist/web/assets/{odin-BUQfWY13.js.br → odin-C9mw2xRN.js.br} +0 -0
  3011. /package/dist/web/assets/{odin-BUQfWY13.js.gz → odin-C9mw2xRN.js.gz} +0 -0
  3012. /package/dist/web/assets/{one-dark-pro-DJQor_US.js → one-dark-pro-SMBlneFb.js} +0 -0
  3013. /package/dist/web/assets/{one-dark-pro-DJQor_US.js.br → one-dark-pro-SMBlneFb.js.br} +0 -0
  3014. /package/dist/web/assets/{one-dark-pro-DJQor_US.js.gz → one-dark-pro-SMBlneFb.js.gz} +0 -0
  3015. /package/dist/web/assets/{one-light-BMvQ1R6M.js → one-light-C9JMU1Cx.js} +0 -0
  3016. /package/dist/web/assets/{one-light-BMvQ1R6M.js.br → one-light-C9JMU1Cx.js.br} +0 -0
  3017. /package/dist/web/assets/{one-light-BMvQ1R6M.js.gz → one-light-C9JMU1Cx.js.gz} +0 -0
  3018. /package/dist/web/assets/{openscad-DTylcqP8.js → openscad-C0I9CtuA.js} +0 -0
  3019. /package/dist/web/assets/{openscad-DTylcqP8.js.br → openscad-C0I9CtuA.js.br} +0 -0
  3020. /package/dist/web/assets/{openscad-DTylcqP8.js.gz → openscad-C0I9CtuA.js.gz} +0 -0
  3021. /package/dist/web/assets/{pascal-D0N_7LGg.js → pascal-D0z4DJnY.js} +0 -0
  3022. /package/dist/web/assets/{pascal-D0N_7LGg.js.br → pascal-D0z4DJnY.js.br} +0 -0
  3023. /package/dist/web/assets/{pascal-D0N_7LGg.js.gz → pascal-D0z4DJnY.js.gz} +0 -0
  3024. /package/dist/web/assets/{path-LyOWnqX5.js → path-z62pEMqs.js} +0 -0
  3025. /package/dist/web/assets/{path-LyOWnqX5.js.br → path-z62pEMqs.js.br} +0 -0
  3026. /package/dist/web/assets/{path-LyOWnqX5.js.gz → path-z62pEMqs.js.gz} +0 -0
  3027. /package/dist/web/assets/{pkl-HQNdCmJT.js → pkl-CITYNGVz.js} +0 -0
  3028. /package/dist/web/assets/{pkl-HQNdCmJT.js.br → pkl-CITYNGVz.js.br} +0 -0
  3029. /package/dist/web/assets/{pkl-HQNdCmJT.js.gz → pkl-CITYNGVz.js.gz} +0 -0
  3030. /package/dist/web/assets/{plastic-QMrjD10f.js → plastic-Bf0T6rmg.js} +0 -0
  3031. /package/dist/web/assets/{plastic-QMrjD10f.js.br → plastic-Bf0T6rmg.js.br} +0 -0
  3032. /package/dist/web/assets/{plastic-QMrjD10f.js.gz → plastic-Bf0T6rmg.js.gz} +0 -0
  3033. /package/dist/web/assets/{plsql-Ds9EzM4F.js → plsql-Chr907pu.js} +0 -0
  3034. /package/dist/web/assets/{plsql-Ds9EzM4F.js.br → plsql-Chr907pu.js.br} +0 -0
  3035. /package/dist/web/assets/{plsql-Ds9EzM4F.js.gz → plsql-Chr907pu.js.gz} +0 -0
  3036. /package/dist/web/assets/{po-CM8JtETE.js → po-07U75CYV.js} +0 -0
  3037. /package/dist/web/assets/{po-CM8JtETE.js.br → po-07U75CYV.js.br} +0 -0
  3038. /package/dist/web/assets/{po-CM8JtETE.js.gz → po-07U75CYV.js.gz} +0 -0
  3039. /package/dist/web/assets/{poimandres-fat7kglW.js → poimandres-B0T4qwXY.js} +0 -0
  3040. /package/dist/web/assets/{poimandres-fat7kglW.js.br → poimandres-B0T4qwXY.js.br} +0 -0
  3041. /package/dist/web/assets/{poimandres-fat7kglW.js.gz → poimandres-B0T4qwXY.js.gz} +0 -0
  3042. /package/dist/web/assets/{polar-CnOzO2UD.js → polar-BvNJMMV5.js} +0 -0
  3043. /package/dist/web/assets/{polar-CnOzO2UD.js.br → polar-BvNJMMV5.js.br} +0 -0
  3044. /package/dist/web/assets/{polar-CnOzO2UD.js.gz → polar-BvNJMMV5.js.gz} +0 -0
  3045. /package/dist/web/assets/{portal-container-context-NFSuymMu.js → portal-container-context-BXAsDqrB.js} +0 -0
  3046. /package/dist/web/assets/{postcss-BaqfiaQC.js → postcss-BSdf-zzo.js} +0 -0
  3047. /package/dist/web/assets/{postcss-BaqfiaQC.js.br → postcss-BSdf-zzo.js.br} +0 -0
  3048. /package/dist/web/assets/{postcss-BaqfiaQC.js.gz → postcss-BSdf-zzo.js.gz} +0 -0
  3049. /package/dist/web/assets/{powerquery-CtMX6ik_.js → powerquery-B2Ad_HK8.js} +0 -0
  3050. /package/dist/web/assets/{powerquery-CtMX6ik_.js.br → powerquery-B2Ad_HK8.js.br} +0 -0
  3051. /package/dist/web/assets/{powerquery-CtMX6ik_.js.gz → powerquery-B2Ad_HK8.js.gz} +0 -0
  3052. /package/dist/web/assets/{powershell-BaTgHUxS.js → powershell-DO5WY2v2.js} +0 -0
  3053. /package/dist/web/assets/{powershell-BaTgHUxS.js.br → powershell-DO5WY2v2.js.br} +0 -0
  3054. /package/dist/web/assets/{powershell-BaTgHUxS.js.gz → powershell-DO5WY2v2.js.gz} +0 -0
  3055. /package/dist/web/assets/{preload-helper-BEFjQwLd.js → preload-helper-CM8YhcCa.js} +0 -0
  3056. /package/dist/web/assets/{preload-helper-BEFjQwLd.js.br → preload-helper-CM8YhcCa.js.br} +0 -0
  3057. /package/dist/web/assets/{preload-helper-BEFjQwLd.js.gz → preload-helper-CM8YhcCa.js.gz} +0 -0
  3058. /package/dist/web/assets/{prisma-BLaoUK-7.js → prisma-BfaRPYzs.js} +0 -0
  3059. /package/dist/web/assets/{prisma-BLaoUK-7.js.br → prisma-BfaRPYzs.js.br} +0 -0
  3060. /package/dist/web/assets/{prisma-BLaoUK-7.js.gz → prisma-BfaRPYzs.js.gz} +0 -0
  3061. /package/dist/web/assets/{prolog-0I-GhZLt.js → prolog-Cz0Nue9e.js} +0 -0
  3062. /package/dist/web/assets/{prolog-0I-GhZLt.js.br → prolog-Cz0Nue9e.js.br} +0 -0
  3063. /package/dist/web/assets/{prolog-0I-GhZLt.js.gz → prolog-Cz0Nue9e.js.gz} +0 -0
  3064. /package/dist/web/assets/{proto-CHfg51WI.js → proto-FVleUZJO.js} +0 -0
  3065. /package/dist/web/assets/{proto-CHfg51WI.js.br → proto-FVleUZJO.js.br} +0 -0
  3066. /package/dist/web/assets/{proto-CHfg51WI.js.gz → proto-FVleUZJO.js.gz} +0 -0
  3067. /package/dist/web/assets/{puppet-B0WZdEhx.js → puppet-BEX5o7hE.js} +0 -0
  3068. /package/dist/web/assets/{puppet-B0WZdEhx.js.br → puppet-BEX5o7hE.js.br} +0 -0
  3069. /package/dist/web/assets/{puppet-B0WZdEhx.js.gz → puppet-BEX5o7hE.js.gz} +0 -0
  3070. /package/dist/web/assets/{purescript-CrVZ4Uql.js → purescript-BZX6Kw4j.js} +0 -0
  3071. /package/dist/web/assets/{purescript-CrVZ4Uql.js.br → purescript-BZX6Kw4j.js.br} +0 -0
  3072. /package/dist/web/assets/{purescript-CrVZ4Uql.js.gz → purescript-BZX6Kw4j.js.gz} +0 -0
  3073. /package/dist/web/assets/{python-aEpe7ZUF.js → python-CO89UIxE.js} +0 -0
  3074. /package/dist/web/assets/{python-aEpe7ZUF.js.br → python-CO89UIxE.js.br} +0 -0
  3075. /package/dist/web/assets/{python-aEpe7ZUF.js.gz → python-CO89UIxE.js.gz} +0 -0
  3076. /package/dist/web/assets/{qmldir-DxTPc3lc.js → qmldir-DH526DWB.js} +0 -0
  3077. /package/dist/web/assets/{qss-D-nPbCGx.js → qss-wp8im4Iz.js} +0 -0
  3078. /package/dist/web/assets/{qss-D-nPbCGx.js.br → qss-wp8im4Iz.js.br} +0 -0
  3079. /package/dist/web/assets/{qss-D-nPbCGx.js.gz → qss-wp8im4Iz.js.gz} +0 -0
  3080. /package/dist/web/assets/{r-BLnTqw3q.js → r-Ct7VghHm.js} +0 -0
  3081. /package/dist/web/assets/{r-BLnTqw3q.js.br → r-Ct7VghHm.js.br} +0 -0
  3082. /package/dist/web/assets/{r-BLnTqw3q.js.gz → r-Ct7VghHm.js.gz} +0 -0
  3083. /package/dist/web/assets/{racket-DNO4210g.js → racket-BQvbOE5D.js} +0 -0
  3084. /package/dist/web/assets/{racket-DNO4210g.js.br → racket-BQvbOE5D.js.br} +0 -0
  3085. /package/dist/web/assets/{racket-DNO4210g.js.gz → racket-BQvbOE5D.js.gz} +0 -0
  3086. /package/dist/web/assets/{raku-iZJO4hxf.js → raku-B0iWSynj.js} +0 -0
  3087. /package/dist/web/assets/{raku-iZJO4hxf.js.br → raku-B0iWSynj.js.br} +0 -0
  3088. /package/dist/web/assets/{raku-iZJO4hxf.js.gz → raku-B0iWSynj.js.gz} +0 -0
  3089. /package/dist/web/assets/{react-CzUPVyyG.js → react-PkBxFcos.js} +0 -0
  3090. /package/dist/web/assets/{red-F3EQNsNx.js → red-Cm00r9eI.js} +0 -0
  3091. /package/dist/web/assets/{red-F3EQNsNx.js.br → red-Cm00r9eI.js.br} +0 -0
  3092. /package/dist/web/assets/{red-F3EQNsNx.js.gz → red-Cm00r9eI.js.gz} +0 -0
  3093. /package/dist/web/assets/{reg-DD_Uwu3t.js → reg-CBuhna22.js} +0 -0
  3094. /package/dist/web/assets/{reg-DD_Uwu3t.js.br → reg-CBuhna22.js.br} +0 -0
  3095. /package/dist/web/assets/{reg-DD_Uwu3t.js.gz → reg-CBuhna22.js.gz} +0 -0
  3096. /package/dist/web/assets/{regexp-D3RlqUxN.js → regexp-BebzP4Rp.js} +0 -0
  3097. /package/dist/web/assets/{regexp-D3RlqUxN.js.br → regexp-BebzP4Rp.js.br} +0 -0
  3098. /package/dist/web/assets/{regexp-D3RlqUxN.js.gz → regexp-BebzP4Rp.js.gz} +0 -0
  3099. /package/dist/web/assets/{rel-DM5GSHUR.js → rel-BYzlBhbq.js} +0 -0
  3100. /package/dist/web/assets/{rel-DM5GSHUR.js.br → rel-BYzlBhbq.js.br} +0 -0
  3101. /package/dist/web/assets/{rel-DM5GSHUR.js.gz → rel-BYzlBhbq.js.gz} +0 -0
  3102. /package/dist/web/assets/{resolve-theme-STMsK2vc.js → resolve-theme-BqoL27BW.js} +0 -0
  3103. /package/dist/web/assets/{resolve-theme-STMsK2vc.js.br → resolve-theme-BqoL27BW.js.br} +0 -0
  3104. /package/dist/web/assets/{resolve-theme-STMsK2vc.js.gz → resolve-theme-BqoL27BW.js.gz} +0 -0
  3105. /package/dist/web/assets/{riscv-C_jO4gJw.js → riscv-CQQP0Ro9.js} +0 -0
  3106. /package/dist/web/assets/{riscv-C_jO4gJw.js.br → riscv-CQQP0Ro9.js.br} +0 -0
  3107. /package/dist/web/assets/{riscv-C_jO4gJw.js.gz → riscv-CQQP0Ro9.js.gz} +0 -0
  3108. /package/dist/web/assets/{ron--r6_MG5U.js → ron-j1ON9YzM.js} +0 -0
  3109. /package/dist/web/assets/{ron--r6_MG5U.js.br → ron-j1ON9YzM.js.br} +0 -0
  3110. /package/dist/web/assets/{ron--r6_MG5U.js.gz → ron-j1ON9YzM.js.gz} +0 -0
  3111. /package/dist/web/assets/{rose-pine-NjvlliYf.js → rose-pine-Cbri3jon.js} +0 -0
  3112. /package/dist/web/assets/{rose-pine-NjvlliYf.js.br → rose-pine-Cbri3jon.js.br} +0 -0
  3113. /package/dist/web/assets/{rose-pine-NjvlliYf.js.gz → rose-pine-Cbri3jon.js.gz} +0 -0
  3114. /package/dist/web/assets/{rose-pine-dawn-DnsL01oA.js → rose-pine-dawn-BMuvKrGo.js} +0 -0
  3115. /package/dist/web/assets/{rose-pine-dawn-DnsL01oA.js.br → rose-pine-dawn-BMuvKrGo.js.br} +0 -0
  3116. /package/dist/web/assets/{rose-pine-dawn-DnsL01oA.js.gz → rose-pine-dawn-BMuvKrGo.js.gz} +0 -0
  3117. /package/dist/web/assets/{rose-pine-moon-DQTuCjVy.js → rose-pine-moon-4biZzaYD.js} +0 -0
  3118. /package/dist/web/assets/{rose-pine-moon-DQTuCjVy.js.br → rose-pine-moon-4biZzaYD.js.br} +0 -0
  3119. /package/dist/web/assets/{rose-pine-moon-DQTuCjVy.js.gz → rose-pine-moon-4biZzaYD.js.gz} +0 -0
  3120. /package/dist/web/assets/{rosmsg-BQrgxzms.js → rosmsg-CXx22rtz.js} +0 -0
  3121. /package/dist/web/assets/{rosmsg-BQrgxzms.js.br → rosmsg-CXx22rtz.js.br} +0 -0
  3122. /package/dist/web/assets/{rosmsg-BQrgxzms.js.gz → rosmsg-CXx22rtz.js.gz} +0 -0
  3123. /package/dist/web/assets/{rough.esm-CSLcW3u5.js → rough.esm-DK8Fp44C.js} +0 -0
  3124. /package/dist/web/assets/{rough.esm-CSLcW3u5.js.br → rough.esm-DK8Fp44C.js.br} +0 -0
  3125. /package/dist/web/assets/{rough.esm-CSLcW3u5.js.gz → rough.esm-DK8Fp44C.js.gz} +0 -0
  3126. /package/dist/web/assets/{rust-CP39BBh-.js → rust-D28cFIhL.js} +0 -0
  3127. /package/dist/web/assets/{rust-CP39BBh-.js.br → rust-D28cFIhL.js.br} +0 -0
  3128. /package/dist/web/assets/{rust-CP39BBh-.js.gz → rust-D28cFIhL.js.gz} +0 -0
  3129. /package/dist/web/assets/{sass-CMiN16ff.js → sass-DtNw4V28.js} +0 -0
  3130. /package/dist/web/assets/{sass-CMiN16ff.js.br → sass-DtNw4V28.js.br} +0 -0
  3131. /package/dist/web/assets/{sass-CMiN16ff.js.gz → sass-DtNw4V28.js.gz} +0 -0
  3132. /package/dist/web/assets/{scala-jm4Hro87.js → scala-hv69_YQC.js} +0 -0
  3133. /package/dist/web/assets/{scala-jm4Hro87.js.br → scala-hv69_YQC.js.br} +0 -0
  3134. /package/dist/web/assets/{scala-jm4Hro87.js.gz → scala-hv69_YQC.js.gz} +0 -0
  3135. /package/dist/web/assets/{scheme-Ct_BnC2r.js → scheme-Dtp9B_ng.js} +0 -0
  3136. /package/dist/web/assets/{scheme-Ct_BnC2r.js.br → scheme-Dtp9B_ng.js.br} +0 -0
  3137. /package/dist/web/assets/{scheme-Ct_BnC2r.js.gz → scheme-Dtp9B_ng.js.gz} +0 -0
  3138. /package/dist/web/assets/{sdbl-CnOjqCoH.js → sdbl-DEwEngAE.js} +0 -0
  3139. /package/dist/web/assets/{sdbl-CnOjqCoH.js.br → sdbl-DEwEngAE.js.br} +0 -0
  3140. /package/dist/web/assets/{sdbl-CnOjqCoH.js.gz → sdbl-DEwEngAE.js.gz} +0 -0
  3141. /package/dist/web/assets/{shellscript-C6sdrDvR.js → shellscript-CYnZDrks.js} +0 -0
  3142. /package/dist/web/assets/{shellscript-C6sdrDvR.js.br → shellscript-CYnZDrks.js.br} +0 -0
  3143. /package/dist/web/assets/{shellscript-C6sdrDvR.js.gz → shellscript-CYnZDrks.js.gz} +0 -0
  3144. /package/dist/web/assets/{slack-dark-BOdgeH19.js → slack-dark-DT0E0ABt.js} +0 -0
  3145. /package/dist/web/assets/{slack-dark-BOdgeH19.js.br → slack-dark-DT0E0ABt.js.br} +0 -0
  3146. /package/dist/web/assets/{slack-dark-BOdgeH19.js.gz → slack-dark-DT0E0ABt.js.gz} +0 -0
  3147. /package/dist/web/assets/{slack-ochin-DBMQIw0j.js → slack-ochin-DHHiQnxo.js} +0 -0
  3148. /package/dist/web/assets/{slack-ochin-DBMQIw0j.js.br → slack-ochin-DHHiQnxo.js.br} +0 -0
  3149. /package/dist/web/assets/{slack-ochin-DBMQIw0j.js.gz → slack-ochin-DHHiQnxo.js.gz} +0 -0
  3150. /package/dist/web/assets/{smalltalk-BMQqYubg.js → smalltalk-BF_I35xJ.js} +0 -0
  3151. /package/dist/web/assets/{smalltalk-BMQqYubg.js.br → smalltalk-BF_I35xJ.js.br} +0 -0
  3152. /package/dist/web/assets/{smalltalk-BMQqYubg.js.gz → smalltalk-BF_I35xJ.js.gz} +0 -0
  3153. /package/dist/web/assets/{snazzy-light-DwnLbrVG.js → snazzy-light-Cv7tIZo9.js} +0 -0
  3154. /package/dist/web/assets/{snazzy-light-DwnLbrVG.js.br → snazzy-light-Cv7tIZo9.js.br} +0 -0
  3155. /package/dist/web/assets/{snazzy-light-DwnLbrVG.js.gz → snazzy-light-Cv7tIZo9.js.gz} +0 -0
  3156. /package/dist/web/assets/{solarized-dark-DXJnupYd.js → solarized-dark-wZ5YPCys.js} +0 -0
  3157. /package/dist/web/assets/{solarized-dark-DXJnupYd.js.br → solarized-dark-wZ5YPCys.js.br} +0 -0
  3158. /package/dist/web/assets/{solarized-dark-DXJnupYd.js.gz → solarized-dark-wZ5YPCys.js.gz} +0 -0
  3159. /package/dist/web/assets/{solarized-light-DqhyrtI4.js → solarized-light-DGDOr1AS.js} +0 -0
  3160. /package/dist/web/assets/{solarized-light-DqhyrtI4.js.br → solarized-light-DGDOr1AS.js.br} +0 -0
  3161. /package/dist/web/assets/{solarized-light-DqhyrtI4.js.gz → solarized-light-DGDOr1AS.js.gz} +0 -0
  3162. /package/dist/web/assets/{solidity-BM0p0sku.js → solidity-BJknuPqJ.js} +0 -0
  3163. /package/dist/web/assets/{solidity-BM0p0sku.js.br → solidity-BJknuPqJ.js.br} +0 -0
  3164. /package/dist/web/assets/{solidity-BM0p0sku.js.gz → solidity-BJknuPqJ.js.gz} +0 -0
  3165. /package/dist/web/assets/{splunk-Cq6_jbaY.js → splunk-B1ClO_KU.js} +0 -0
  3166. /package/dist/web/assets/{splunk-Cq6_jbaY.js.br → splunk-B1ClO_KU.js.br} +0 -0
  3167. /package/dist/web/assets/{splunk-Cq6_jbaY.js.gz → splunk-B1ClO_KU.js.gz} +0 -0
  3168. /package/dist/web/assets/{sql-CPfIb_cO.js → sql-CEkBuGIw.js} +0 -0
  3169. /package/dist/web/assets/{sql-CPfIb_cO.js.br → sql-CEkBuGIw.js.br} +0 -0
  3170. /package/dist/web/assets/{sql-CPfIb_cO.js.gz → sql-CEkBuGIw.js.gz} +0 -0
  3171. /package/dist/web/assets/{src-C7A68uNq.js → src-C1GX5Kxw.js} +0 -0
  3172. /package/dist/web/assets/{src-C7A68uNq.js.br → src-C1GX5Kxw.js.br} +0 -0
  3173. /package/dist/web/assets/{src-C7A68uNq.js.gz → src-C1GX5Kxw.js.gz} +0 -0
  3174. /package/dist/web/assets/{ssh-config-GRgzMVtG.js → ssh-config-kgM67Sf6.js} +0 -0
  3175. /package/dist/web/assets/{ssh-config-GRgzMVtG.js.br → ssh-config-kgM67Sf6.js.br} +0 -0
  3176. /package/dist/web/assets/{ssh-config-GRgzMVtG.js.gz → ssh-config-kgM67Sf6.js.gz} +0 -0
  3177. /package/dist/web/assets/{stylus-DNs7ubf9.js → stylus-RcVaInR-.js} +0 -0
  3178. /package/dist/web/assets/{stylus-DNs7ubf9.js.br → stylus-RcVaInR-.js.br} +0 -0
  3179. /package/dist/web/assets/{stylus-DNs7ubf9.js.gz → stylus-RcVaInR-.js.gz} +0 -0
  3180. /package/dist/web/assets/{swift-BQV34vng.js → swift-Cm0fh2lX.js} +0 -0
  3181. /package/dist/web/assets/{swift-BQV34vng.js.br → swift-Cm0fh2lX.js.br} +0 -0
  3182. /package/dist/web/assets/{swift-BQV34vng.js.gz → swift-Cm0fh2lX.js.gz} +0 -0
  3183. /package/dist/web/assets/{synthwave-84-CypcdXbA.js → synthwave-84-CwLiazxr.js} +0 -0
  3184. /package/dist/web/assets/{synthwave-84-CypcdXbA.js.br → synthwave-84-CwLiazxr.js.br} +0 -0
  3185. /package/dist/web/assets/{synthwave-84-CypcdXbA.js.gz → synthwave-84-CwLiazxr.js.gz} +0 -0
  3186. /package/dist/web/assets/{system-verilog-DaLPjQ4v.js → system-verilog-CzYaDVLH.js} +0 -0
  3187. /package/dist/web/assets/{system-verilog-DaLPjQ4v.js.br → system-verilog-CzYaDVLH.js.br} +0 -0
  3188. /package/dist/web/assets/{system-verilog-DaLPjQ4v.js.gz → system-verilog-CzYaDVLH.js.gz} +0 -0
  3189. /package/dist/web/assets/{systemd-CXHFtmNc.js → systemd-DbSagfLw.js} +0 -0
  3190. /package/dist/web/assets/{systemd-CXHFtmNc.js.br → systemd-DbSagfLw.js.br} +0 -0
  3191. /package/dist/web/assets/{systemd-CXHFtmNc.js.gz → systemd-DbSagfLw.js.gz} +0 -0
  3192. /package/dist/web/assets/{talonscript-DI9nO5jX.js → talonscript-BCFnWejL.js} +0 -0
  3193. /package/dist/web/assets/{talonscript-DI9nO5jX.js.br → talonscript-BCFnWejL.js.br} +0 -0
  3194. /package/dist/web/assets/{talonscript-DI9nO5jX.js.gz → talonscript-BCFnWejL.js.gz} +0 -0
  3195. /package/dist/web/assets/{tasl-BAQyAl0c.js → tasl-BUdqtEe1.js} +0 -0
  3196. /package/dist/web/assets/{tasl-BAQyAl0c.js.br → tasl-BUdqtEe1.js.br} +0 -0
  3197. /package/dist/web/assets/{tasl-BAQyAl0c.js.gz → tasl-BUdqtEe1.js.gz} +0 -0
  3198. /package/dist/web/assets/{tcl-BP_ozI58.js → tcl-CR_lTV9N.js} +0 -0
  3199. /package/dist/web/assets/{tcl-BP_ozI58.js.br → tcl-CR_lTV9N.js.br} +0 -0
  3200. /package/dist/web/assets/{tcl-BP_ozI58.js.gz → tcl-CR_lTV9N.js.gz} +0 -0
  3201. /package/dist/web/assets/{terraform-NrndR0yZ.js → terraform-Bqsha-xe.js} +0 -0
  3202. /package/dist/web/assets/{terraform-NrndR0yZ.js.br → terraform-Bqsha-xe.js.br} +0 -0
  3203. /package/dist/web/assets/{terraform-NrndR0yZ.js.gz → terraform-Bqsha-xe.js.gz} +0 -0
  3204. /package/dist/web/assets/{tokyo-night-CbUQlN8D.js → tokyo-night-Cnuo6JB6.js} +0 -0
  3205. /package/dist/web/assets/{tokyo-night-CbUQlN8D.js.br → tokyo-night-Cnuo6JB6.js.br} +0 -0
  3206. /package/dist/web/assets/{tokyo-night-CbUQlN8D.js.gz → tokyo-night-Cnuo6JB6.js.gz} +0 -0
  3207. /package/dist/web/assets/{toml-BM_zrMLj.js → toml-CLFdhT22.js} +0 -0
  3208. /package/dist/web/assets/{toml-BM_zrMLj.js.br → toml-CLFdhT22.js.br} +0 -0
  3209. /package/dist/web/assets/{toml-BM_zrMLj.js.gz → toml-CLFdhT22.js.gz} +0 -0
  3210. /package/dist/web/assets/{tsv-CfyllNPO.js → tsv-Dw3tLrZN.js} +0 -0
  3211. /package/dist/web/assets/{tsx-BROcpVjE.js → tsx-BuCbOiJi.js} +0 -0
  3212. /package/dist/web/assets/{tsx-BROcpVjE.js.br → tsx-BuCbOiJi.js.br} +0 -0
  3213. /package/dist/web/assets/{tsx-BROcpVjE.js.gz → tsx-BuCbOiJi.js.gz} +0 -0
  3214. /package/dist/web/assets/{turtle-CHmyeS9k.js → turtle-BMKMfTrj.js} +0 -0
  3215. /package/dist/web/assets/{turtle-CHmyeS9k.js.br → turtle-BMKMfTrj.js.br} +0 -0
  3216. /package/dist/web/assets/{turtle-CHmyeS9k.js.gz → turtle-BMKMfTrj.js.gz} +0 -0
  3217. /package/dist/web/assets/{typescript-BVwspRg8.js → typescript-Y6cbFqno.js} +0 -0
  3218. /package/dist/web/assets/{typescript-BVwspRg8.js.br → typescript-Y6cbFqno.js.br} +0 -0
  3219. /package/dist/web/assets/{typescript-BVwspRg8.js.gz → typescript-Y6cbFqno.js.gz} +0 -0
  3220. /package/dist/web/assets/{typespec-DXRppCgc.js → typespec-EbgGJHV_.js} +0 -0
  3221. /package/dist/web/assets/{typespec-DXRppCgc.js.br → typespec-EbgGJHV_.js.br} +0 -0
  3222. /package/dist/web/assets/{typespec-DXRppCgc.js.gz → typespec-EbgGJHV_.js.gz} +0 -0
  3223. /package/dist/web/assets/{typst-L5uwArOj.js → typst-CQXV2SzX.js} +0 -0
  3224. /package/dist/web/assets/{typst-L5uwArOj.js.br → typst-CQXV2SzX.js.br} +0 -0
  3225. /package/dist/web/assets/{typst-L5uwArOj.js.gz → typst-CQXV2SzX.js.gz} +0 -0
  3226. /package/dist/web/assets/{use-is-mobile-BClDZJP5.js → use-is-mobile-BXHbkfs9.js} +0 -0
  3227. /package/dist/web/assets/{use-visual-viewport-BGpcMnIx.js → use-visual-viewport-CQ6-A0Dt.js} +0 -0
  3228. /package/dist/web/assets/{utils-btZ8C8-R.js → utils-Bslrbb-G.js} +0 -0
  3229. /package/dist/web/assets/{utils-btZ8C8-R.js.br → utils-Bslrbb-G.js.br} +0 -0
  3230. /package/dist/web/assets/{utils-btZ8C8-R.js.gz → utils-Bslrbb-G.js.gz} +0 -0
  3231. /package/dist/web/assets/{v-Bz99d5uk.js → v-Ci1jObJJ.js} +0 -0
  3232. /package/dist/web/assets/{v-Bz99d5uk.js.br → v-Ci1jObJJ.js.br} +0 -0
  3233. /package/dist/web/assets/{v-Bz99d5uk.js.gz → v-Ci1jObJJ.js.gz} +0 -0
  3234. /package/dist/web/assets/{vala-B-CtBLX1.js → vala-C_NdfqrY.js} +0 -0
  3235. /package/dist/web/assets/{vala-B-CtBLX1.js.br → vala-C_NdfqrY.js.br} +0 -0
  3236. /package/dist/web/assets/{vala-B-CtBLX1.js.gz → vala-C_NdfqrY.js.gz} +0 -0
  3237. /package/dist/web/assets/{vb-DHqiz9Cp.js → vb-K_r_h_s8.js} +0 -0
  3238. /package/dist/web/assets/{vb-DHqiz9Cp.js.br → vb-K_r_h_s8.js.br} +0 -0
  3239. /package/dist/web/assets/{vb-DHqiz9Cp.js.gz → vb-K_r_h_s8.js.gz} +0 -0
  3240. /package/dist/web/assets/{vendor-xterm-Be4L1NHd.js → vendor-xterm-sFX94k3w.js} +0 -0
  3241. /package/dist/web/assets/{vendor-xterm-Be4L1NHd.js.br → vendor-xterm-sFX94k3w.js.br} +0 -0
  3242. /package/dist/web/assets/{vendor-xterm-Be4L1NHd.js.gz → vendor-xterm-sFX94k3w.js.gz} +0 -0
  3243. /package/dist/web/assets/{verilog-DbTkSkM7.js → verilog-DQPYLsZI.js} +0 -0
  3244. /package/dist/web/assets/{verilog-DbTkSkM7.js.br → verilog-DQPYLsZI.js.br} +0 -0
  3245. /package/dist/web/assets/{verilog-DbTkSkM7.js.gz → verilog-DQPYLsZI.js.gz} +0 -0
  3246. /package/dist/web/assets/{vesper-2aVei4Le.js → vesper-BrmzEV8s.js} +0 -0
  3247. /package/dist/web/assets/{vesper-2aVei4Le.js.br → vesper-BrmzEV8s.js.br} +0 -0
  3248. /package/dist/web/assets/{vesper-2aVei4Le.js.gz → vesper-BrmzEV8s.js.gz} +0 -0
  3249. /package/dist/web/assets/{vhdl-BJJSCnQQ.js → vhdl-CjxQGaH2.js} +0 -0
  3250. /package/dist/web/assets/{vhdl-BJJSCnQQ.js.br → vhdl-CjxQGaH2.js.br} +0 -0
  3251. /package/dist/web/assets/{vhdl-BJJSCnQQ.js.gz → vhdl-CjxQGaH2.js.gz} +0 -0
  3252. /package/dist/web/assets/{viml-qxSvRN8n.js → viml-CTKJNQH1.js} +0 -0
  3253. /package/dist/web/assets/{viml-qxSvRN8n.js.br → viml-CTKJNQH1.js.br} +0 -0
  3254. /package/dist/web/assets/{viml-qxSvRN8n.js.gz → viml-CTKJNQH1.js.gz} +0 -0
  3255. /package/dist/web/assets/{vitesse-black-CjR1y0Bv.js → vitesse-black-i-H_3p1i.js} +0 -0
  3256. /package/dist/web/assets/{vitesse-black-CjR1y0Bv.js.br → vitesse-black-i-H_3p1i.js.br} +0 -0
  3257. /package/dist/web/assets/{vitesse-black-CjR1y0Bv.js.gz → vitesse-black-i-H_3p1i.js.gz} +0 -0
  3258. /package/dist/web/assets/{vitesse-dark-jrcdsqkn.js → vitesse-dark-DZC_Yy3_.js} +0 -0
  3259. /package/dist/web/assets/{vitesse-dark-jrcdsqkn.js.br → vitesse-dark-DZC_Yy3_.js.br} +0 -0
  3260. /package/dist/web/assets/{vitesse-dark-jrcdsqkn.js.gz → vitesse-dark-DZC_Yy3_.js.gz} +0 -0
  3261. /package/dist/web/assets/{vitesse-light-DkC_qU0k.js → vitesse-light-rf4kpmk8.js} +0 -0
  3262. /package/dist/web/assets/{vitesse-light-DkC_qU0k.js.br → vitesse-light-rf4kpmk8.js.br} +0 -0
  3263. /package/dist/web/assets/{vitesse-light-DkC_qU0k.js.gz → vitesse-light-rf4kpmk8.js.gz} +0 -0
  3264. /package/dist/web/assets/{vyper-WAhkfwIX.js → vyper-BLnOw4Nf.js} +0 -0
  3265. /package/dist/web/assets/{vyper-WAhkfwIX.js.br → vyper-BLnOw4Nf.js.br} +0 -0
  3266. /package/dist/web/assets/{vyper-WAhkfwIX.js.gz → vyper-BLnOw4Nf.js.gz} +0 -0
  3267. /package/dist/web/assets/{wasm-BYGI5YYa.js → wasm-CTwH9oN2.js} +0 -0
  3268. /package/dist/web/assets/{wasm-BYGI5YYa.js.br → wasm-CTwH9oN2.js.br} +0 -0
  3269. /package/dist/web/assets/{wasm-BYGI5YYa.js.gz → wasm-CTwH9oN2.js.gz} +0 -0
  3270. /package/dist/web/assets/{wasm-Miuao4O0.js → wasm-CWeHvGNG.js} +0 -0
  3271. /package/dist/web/assets/{wasm-Miuao4O0.js.br → wasm-CWeHvGNG.js.br} +0 -0
  3272. /package/dist/web/assets/{wasm-Miuao4O0.js.gz → wasm-CWeHvGNG.js.gz} +0 -0
  3273. /package/dist/web/assets/{wenyan-Dd5qjF8u.js → wenyan-CLwdRuzd.js} +0 -0
  3274. /package/dist/web/assets/{wenyan-Dd5qjF8u.js.br → wenyan-CLwdRuzd.js.br} +0 -0
  3275. /package/dist/web/assets/{wenyan-Dd5qjF8u.js.gz → wenyan-CLwdRuzd.js.gz} +0 -0
  3276. /package/dist/web/assets/{wgsl-C3T5a0UO.js → wgsl-CBTDMVJR.js} +0 -0
  3277. /package/dist/web/assets/{wgsl-C3T5a0UO.js.br → wgsl-CBTDMVJR.js.br} +0 -0
  3278. /package/dist/web/assets/{wgsl-C3T5a0UO.js.gz → wgsl-CBTDMVJR.js.gz} +0 -0
  3279. /package/dist/web/assets/{wikitext-CvCJjxSa.js → wikitext-CQHrF84e.js} +0 -0
  3280. /package/dist/web/assets/{wikitext-CvCJjxSa.js.br → wikitext-CQHrF84e.js.br} +0 -0
  3281. /package/dist/web/assets/{wikitext-CvCJjxSa.js.gz → wikitext-CQHrF84e.js.gz} +0 -0
  3282. /package/dist/web/assets/{wit-DybvG9BU.js → wit-8xdbdipU.js} +0 -0
  3283. /package/dist/web/assets/{wit-DybvG9BU.js.br → wit-8xdbdipU.js.br} +0 -0
  3284. /package/dist/web/assets/{wit-DybvG9BU.js.gz → wit-8xdbdipU.js.gz} +0 -0
  3285. /package/dist/web/assets/{wolfram-CdhnrpZ7.js → wolfram-tFwx32a_.js} +0 -0
  3286. /package/dist/web/assets/{wolfram-CdhnrpZ7.js.br → wolfram-tFwx32a_.js.br} +0 -0
  3287. /package/dist/web/assets/{wolfram-CdhnrpZ7.js.gz → wolfram-tFwx32a_.js.gz} +0 -0
  3288. /package/dist/web/assets/{yaml-B0HIje0z.js → yaml-D5O1CXgB.js} +0 -0
  3289. /package/dist/web/assets/{yaml-B0HIje0z.js.br → yaml-D5O1CXgB.js.br} +0 -0
  3290. /package/dist/web/assets/{yaml-B0HIje0z.js.gz → yaml-D5O1CXgB.js.gz} +0 -0
  3291. /package/dist/web/assets/{zenscript-CcLSNTvD.js → zenscript-B10Pj7JT.js} +0 -0
  3292. /package/dist/web/assets/{zenscript-CcLSNTvD.js.br → zenscript-B10Pj7JT.js.br} +0 -0
  3293. /package/dist/web/assets/{zenscript-CcLSNTvD.js.gz → zenscript-B10Pj7JT.js.gz} +0 -0
  3294. /package/dist/web/assets/{zig-dAelYAUr.js → zig-BZKcTtrK.js} +0 -0
  3295. /package/dist/web/assets/{zig-dAelYAUr.js.br → zig-BZKcTtrK.js.br} +0 -0
  3296. /package/dist/web/assets/{zig-dAelYAUr.js.gz → zig-BZKcTtrK.js.gz} +0 -0
@@ -1,52 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/terminal-tab-B4y6at4h.js","assets/rolldown-runtime-C5c2KzVm.js","assets/vendor-ui-P9Ym7hCv.js","assets/vendor-markdown-QKPNiWEd.js","assets/vendor-xterm-Be4L1NHd.js","assets/vendor-xterm-DkTCHfhq.css","assets/utils-btZ8C8-R.js","assets/api-client-F5Zi1sR0.js","assets/panel-store-CWHPmHwj.js","assets/react-CzUPVyyG.js","assets/session-list-sync-triggers-ATvz-1g3.js","assets/project-store-CCimwgGF.js","assets/window-store-vo1N70nK.js","assets/settings-store-DfuiLq_9.js","assets/preload-helper-BEFjQwLd.js","assets/mobile-bottom-sheet-D4UyOatB.js","assets/portal-container-context-NFSuymMu.js","assets/use-visual-viewport-BGpcMnIx.js","assets/editor-font-BNwo7zo5.js","assets/icons-CO_II6D-.js","assets/run-in-terminal-DKBcEGVu.js","assets/send-to-chat-CCdOrKc7.js","assets/ws-auth-Ytui7dXP.js","assets/tab-store-CbPh8CAX.js","assets/apply-theme-Cc_cmrD5.js","assets/resolve-theme-STMsK2vc.js","assets/chat-tab-tbUDK__Y.js","assets/button-DeAyLH9U.js","assets/libesm-5f7T4AHA.js","assets/chat-tab-Cg3BKugo.js","assets/createLucideIcon-DBXq3G0e.js","assets/tool-cards-K0r_yxI0.js","assets/agent-session-sheet-store-DO682WSg.js","assets/image-preview-geometry-DN3DZQp0.js","assets/use-blob-url-DjuRQWnR.js","assets/use-is-mobile-BClDZJP5.js","assets/image-gallery-DC3gRAqk.js","assets/codex-reset-credit-button-Fr45FUxi.js","assets/dialog-Bocc0Fgb.js","assets/input-CG8PS8mS.js","assets/api-settings-CpO8SPk9.js","assets/chat-preparation-cache-BUCR58h4.js","assets/slash-command-picker-CLevA_Gf.js","assets/file-store-DY1_0nzY.js","assets/onboarding-entry-CuH1Kqwu.js","assets/onboarding-quick-orientation-DPHYFMbA.js","assets/ai-settings-section-CETpSpYd.js","assets/use-websocket-CiWQKhHr.js","assets/format-date-BMtvCeb9.js","assets/context-menu-7OX80HDB.js","assets/code-editor-6ZiQehbr.js","assets/glide-data-grid-C_SeOhSq.js","assets/dist-CBtAY9iX.js","assets/data-grid-types-CHD9-pon.js","assets/marked.esm-DDb9MclE.js","assets/csv-parser-DcRWxcNV.js","assets/use-monaco-theme-CpXT2uh3.js","assets/glide-data-grid-nthEL3fk.css","assets/can-open-in-ppm-Bw_xiOXX.js","assets/format-file-meta-Drxf2J-k.js","assets/fs-api-IX9SHt5k.js","assets/scroll-area-sjOeAfoD.js","assets/use-inline-blame-BK23icsE.js","assets/file-icons-CK0J4QSy.js","assets/git-repo-store-B_u5RzIM.js","assets/monaco-dotenv-language-Bwq3gQsi.js","assets/database-viewer-CdPBUQPY.js","assets/sql-query-editor-Db8b0jEr.js","assets/sqlite-viewer-VzYLMqkD.js","assets/postgres-viewer-DW0Gkmow.js","assets/dist-CWwUZUqE.js","assets/lib-B9k5tn9s.js","assets/diff-viewer-BqEqwSw6.js","assets/branch-review-tab-DhTMSpSU.js","assets/settings-tab-Du5AUPni.js","assets/settings-body-CEIF8lkl.js","assets/separator-DMu7VFQa.js","assets/extension-webview-CMq-VTLu.js","assets/conflict-editor-B-wdjSXI.js","assets/system-monitor-tab-BYpantE2.js","assets/system-monitor-body-BR60W_mG.js","assets/git-log-panel-CJakNMDc.js","assets/ai-resource-editor-DhUVgDEG.js","assets/group-chat-tab--by1xCQW.js","assets/markdown-renderer-AHHFS3jc.js","assets/problems-panel-V5zqpuXq.js","assets/design-tab-BZb9eemI.js","assets/design-responsive-dialog-DSCpv6O1.js","assets/design-export-client-CHffN3DM.js","assets/designs-sidebar-panel-CF4tp6j-.js","assets/design-system-status-label-B_0I_3a8.js","assets/explorer-window-content-CRJ2eMZ4.js","assets/explorer-body-Ds7oKuz7.js","assets/window-pip-registry-mDgwpAwP.js","assets/agent-session-window-content-D9C9FA7E.js","assets/system-monitor-window-content-BLw1QBXo.js","assets/tab-host-window-content-BL61SB5m.js","assets/remote-desktop-window-content-BnznIby3.js","assets/remote-desktop-clipboard-notice-Cgoznh8L.js","assets/remote-desktop-readiness-gate-CHiQEd9Q.js","assets/settings-window-content-BTflfLez.js","assets/angular-html-Djm1KT_p.js","assets/html-BmwVFf5D.js","assets/css-CQ_jz6Vl.js","assets/javascript-R2SZ_OEC.js","assets/angular-ts-D8ZYU4i0.js","assets/scss-d9PFDNvb.js","assets/apl-Bxk9ez2r.js","assets/json-CYCJeTwK.js","assets/xml-Zepcw_qF.js","assets/java-BjdsRxXN.js","assets/astro-CCE8GTuJ.js","assets/postcss-BaqfiaQC.js","assets/tsx-BROcpVjE.js","assets/typescript-BVwspRg8.js","assets/blade-pJLFJ0pe.js","assets/html-derivative-C1JIrmAY.js","assets/sql-CPfIb_cO.js","assets/bsl-DJPQP6gj.js","assets/sdbl-CnOjqCoH.js","assets/c-BX-1170_.js","assets/cairo-6pdze4qN.js","assets/python-aEpe7ZUF.js","assets/cobol-6JrtZ3xT.js","assets/coffee-eR0Qd-vR.js","assets/cpp-Bp_Laxmd.js","assets/glsl-E9hxFBBJ.js","assets/regexp-D3RlqUxN.js","assets/crystal-bc0lS6i8.js","assets/shellscript-C6sdrDvR.js","assets/edge-BxayftlC.js","assets/elixir-CncTBq2d.js","assets/elm-1uJDe5N1.js","assets/erb-dH8FUiNl.js","assets/ruby-C5DczJCc.js","assets/graphql-DAalq3Uo.js","assets/jsx-CsWR7aMm.js","assets/haml-Pr4yq62b.js","assets/lua-IFhrYmKl.js","assets/yaml-B0HIje0z.js","assets/erlang-D0F-1O48.js","assets/markdown-DC-eWqXi.js","assets/fortran-fixed-form-DB7wVefV.js","assets/fortran-free-form-xnlj2dLW.js","assets/fsharp-B5-po_gS.js","assets/gdresource-DkWx6_xT.js","assets/gdscript-DFnznHD1.js","assets/gdshader-B9wvgXVU.js","assets/git-commit-XsMhdamD.js","assets/diff-CXSq83h3.js","assets/git-rebase-CXs4QunZ.js","assets/glimmer-js-CHoxSy4K.js","assets/glimmer-ts-DY0DCf-r.js","assets/hack-e6ehmpqx.js","assets/handlebars-ZERVZ8gn.js","assets/http-BI6PtTvX.js","assets/hurl-CJGLGxAF.js","assets/csv-DP77pbR8.js","assets/hxml-B6i0QuF9.js","assets/haxe-DwOdNXRl.js","assets/jinja-CM-duDMo.js","assets/jison-F9rAmqyI.js","assets/julia-AVSSuAUz.js","assets/r-BLnTqw3q.js","assets/just-Dw8IR-fy.js","assets/perl-DmdIiZTm.js","assets/latex-37_9fLdz.js","assets/tex-D8IJD2J1.js","assets/liquid-CaR1gaJt.js","assets/marko-2g0T6atb.js","assets/less-D7VWEXeK.js","assets/mdc-Dku_3sTh.js","assets/nextflow-DwUrPV3b.js","assets/nextflow-groovy-CisdbLPv.js","assets/nginx-D10J2vrQ.js","assets/nim-BonDnBCZ.js","assets/php-DXGvCIY0.js","assets/pug-BgMlgmpT.js","assets/qml-DjqBS8bc.js","assets/razor-CzV29vlj.js","assets/csharp-CuWM1IYq.js","assets/rst-DffOOLD7.js","assets/cmake-DyjUMpXU.js","assets/sas-CoO1xLdH.js","assets/shaderlab-BkB57LhQ.js","assets/hlsl-VEZxDU3L.js","assets/shellsession-CTpUym8_.js","assets/soy-CGmWpNZ2.js","assets/sparql-DtdOj_MX.js","assets/turtle-CHmyeS9k.js","assets/stata-6W_BX14b.js","assets/surrealql-BhmbH4Yk.js","assets/svelte-D6EOFdO-.js","assets/templ-DuLJgZN8.js","assets/go-atNMhmH3.js","assets/ts-tags-BxVcUOvj.js","assets/twig-BT8vDHa2.js","assets/vue-BcyG2SyR.js","assets/vue-html-D8iVjZTe.js","assets/vue-vine-DxBjHHk4.js","assets/stylus-DNs7ubf9.js","assets/xsl-_m-WMWv3.js","assets/new-design-dialog-B9tgnQXq.js","assets/design-skill-suggestion-DkT2E2IV.js","assets/mobile-explorer-sheet-CqCsLWSr.js","assets/agent-session-sheet-CBMsnl_p.js","assets/remote-desktop-mobile-sheet-X12QbPhO.js","assets/keybindings-store-30LYZU0l.js","assets/notification-store-HUVzO_bp.js"])))=>i.map(i=>d[i]);
2
- import{r as e,s as t,t as n}from"./rolldown-runtime-C5c2KzVm.js";import{C as r,S as i,_ as a,b as o,g as s,h as c,v as l,x as u,y as d}from"./vendor-markdown-QKPNiWEd.js";import{B as f,C as p,F as m,G as h,H as g,I as _,J as v,K as y,L as b,M as x,N as S,P as C,R as w,S as T,T as E,U as D,V as O,W as k,Y as A,_ as ee,_t as j,a as te,b as M,d as N,f as P,g as F,h as ne,i as re,j as ie,m as ae,n as I,o as oe,q as se,r as ce,t as le,v as ue,w as de,x as fe,y as pe,z as me}from"./vendor-ui-P9Ym7hCv.js";import{$t as he,A as ge,An as _e,Ar as ve,B as ye,Bn as be,C as xe,Cr as Se,Ct as Ce,D as we,Dn as Te,Dr as Ee,Dt as De,E as Oe,En as ke,Fr as Ae,Ft as je,Gt as Me,H as Ne,I as Pe,In as Fe,Ir as Ie,It as Le,J as Re,Jn as ze,Jr as Be,Kn as Ve,Kr as He,L as Ue,Ln as We,Lr as Ge,Lt as Ke,M as qe,Mr as Je,Mt as Ye,N as Xe,Nr as Ze,O as Qe,Or as $e,Ot as et,P as tt,Pr as nt,Pt as rt,Q as it,Qr as at,R as ot,Rn as st,Rt as ct,Sr as lt,T as ut,Tn as dt,Tt as ft,U as pt,Ut as mt,Vn as ht,Vr as gt,Vt as _t,W as vt,Wn as yt,Wt as bt,Xn as xt,Xt as St,Y as Ct,Yn as wt,Yt as Tt,Z as Et,Zn as Dt,Zr as Ot,Zt as kt,_n as At,a as jt,an as Mt,ar as Nt,at as Pt,br as Ft,c as It,cn as Lt,ct as Rt,d as zt,dn as Bt,dt as Vt,ei as Ht,et as Ut,f as Wt,fn as Gt,fr as Kt,g as qt,gn as Jt,h as Yt,hr as Xt,ht as Zt,i as Qt,in as $t,ir as en,it as tn,j as nn,jn as rn,k as an,kn as on,kr as sn,kt as cn,l as ln,lt as un,m as dn,mn as fn,mr as pn,n as mn,nn as hn,nr as gn,nt as _n,o as vn,or as yn,pr as bn,pt as xn,q as Sn,qn as Cn,qr as wn,r as Tn,rn as En,rt as Dn,s as On,sn as kn,st as An,ti as jn,tr as Mn,un as L,ur as Nn,ut as Pn,v as Fn,vn as In,vt as Ln,w as Rn,wn as zn,wr as Bn,x as Vn,xn as Hn,xr as Un,y as Wn,yn as Gn,yr as Kn,z as qn,zn as Jn}from"./icons-CO_II6D-.js";import{t as Yn}from"./createLucideIcon-DBXq3G0e.js";import{D as Xn,E as Zn,O as R,T as Qn,_ as $n,a as er,b as tr,c as nr,g as rr,h as ir,i as ar,l as or,m as sr,o as z,r as B,s as cr}from"./api-client-F5Zi1sR0.js";import{t as lr}from"./react-CzUPVyyG.js";import{t as V}from"./settings-store-DfuiLq_9.js";import{t as H}from"./preload-helper-BEFjQwLd.js";import{n as U,r as ur,t as dr}from"./utils-btZ8C8-R.js";import{n as fr,t as pr}from"./portal-container-context-NFSuymMu.js";import{a as mr,c as hr,d as gr,f as _r,h as vr,i as yr,m as br,o as xr,p as Sr,r as Cr,s as wr,t as W,u as Tr}from"./panel-store-CWHPmHwj.js";import{a as Er,c as Dr,i as Or,n as kr,o as Ar,r as jr,t as Mr}from"./window-store-vo1N70nK.js";import{i as G,n as Nr,r as Pr,t as Fr}from"./project-store-CCimwgGF.js";import{a as Ir,c as Lr,d as Rr,i as zr,l as Br,n as Vr,o as Hr,r as Ur,s as Wr,t as Gr,u as Kr}from"./session-list-sync-triggers-ATvz-1g3.js";import{t as K}from"./tab-store-CbPh8CAX.js";import{t as qr}from"./format-date-BMtvCeb9.js";import{a as Jr,c as Yr,i as Xr,l as Zr,n as Qr,o as $r,r as ei,s as ti,t as ni,u as ri}from"./context-menu-7OX80HDB.js";import{a as ii,o as ai}from"./chat-preparation-cache-BUCR58h4.js";import{a as oi,c as si,i as ci,l as li,n as ui,o as di,r as fi,s as pi,t as mi}from"./file-store-DY1_0nzY.js";import{n as hi,t as gi}from"./use-is-mobile-BClDZJP5.js";import{a as _i,c as vi,i as yi,l as bi,n as xi,o as Si,r as Ci,s as wi,t as Ti,u as Ei}from"./git-repo-store-B_u5RzIM.js";import{a as Di,c as Oi,i as ki,l as Ai,n as ji,o as Mi,r as Ni,s as Pi,t as Fi,u as Ii}from"./onboarding-quick-orientation-DPHYFMbA.js";import{n as Li,r as Ri,t as zi}from"./apply-theme-Cc_cmrD5.js";import{a as Bi,c as Vi,i as Hi,l as Ui,n as Wi,o as Gi,r as Ki,s as qi,t as Ji,u as Yi}from"./window-pip-registry-mDgwpAwP.js";import{t as q}from"./button-DeAyLH9U.js";import{a as Xi,i as Zi,n as J,o as Qi,r as $i,s as ea,t as ta}from"./dialog-Bocc0Fgb.js";import{n as na,t as ra}from"./file-icons-CK0J4QSy.js";import{a as ia,i as aa,n as oa,o as sa,r as ca,t as la}from"./mobile-bottom-sheet-D4UyOatB.js";import{t as ua}from"./use-visual-viewport-BGpcMnIx.js";import{n as da,t as fa}from"./fs-api-IX9SHt5k.js";import{a as pa,c as ma,i as ha,n as ga,o as _a,r as va,s as ya,t as ba}from"./format-file-meta-Drxf2J-k.js";import{t as xa}from"./input-CG8PS8mS.js";import{t as Sa}from"./scroll-area-sjOeAfoD.js";import{n as Ca,r as wa,t as Ta}from"./resolve-theme-STMsK2vc.js";import{t as Ea}from"./ws-auth-Ytui7dXP.js";(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 Da=n((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&&ee(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&&ee(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 ee(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,ee(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}}}})),Oa=n(((e,t)=>{t.exports=Da()})),ka=n((e=>{var t=Oa(),n=r(),i=j();function a(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 o(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function s(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 c(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 l(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 u(e){if(s(e)!==e)throw Error(a(188))}function d(e){var t=e.alternate;if(!t){if(t=s(e),t===null)throw Error(a(188));return t===e?e:null}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var o=i.alternate;if(o===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===o.child){for(o=i.child;o;){if(o===n)return u(i),e;if(o===r)return u(i),t;o=o.sibling}throw Error(a(188))}if(n.return!==r.return)n=i,r=o;else{for(var c=!1,l=i.child;l;){if(l===n){c=!0,n=i,r=o;break}if(l===r){c=!0,r=i,n=o;break}l=l.sibling}if(!c){for(l=o.child;l;){if(l===n){c=!0,n=o,r=i;break}if(l===r){c=!0,r=o,n=i;break}l=l.sibling}if(!c)throw Error(a(189))}}if(n.alternate!==r)throw Error(a(190))}if(n.tag!==3)throw Error(a(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 p=Object.assign,m=Symbol.for(`react.element`),h=Symbol.for(`react.transitional.element`),g=Symbol.for(`react.portal`),_=Symbol.for(`react.fragment`),v=Symbol.for(`react.strict_mode`),y=Symbol.for(`react.profiler`),b=Symbol.for(`react.consumer`),x=Symbol.for(`react.context`),S=Symbol.for(`react.forward_ref`),C=Symbol.for(`react.suspense`),w=Symbol.for(`react.suspense_list`),T=Symbol.for(`react.memo`),E=Symbol.for(`react.lazy`),D=Symbol.for(`react.activity`),O=Symbol.for(`react.memo_cache_sentinel`),k=Symbol.iterator;function A(e){return typeof e!=`object`||!e?null:(e=k&&e[k]||e[`@@iterator`],typeof e==`function`?e:null)}var ee=Symbol.for(`react.client.reference`);function te(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ee?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case _:return`Fragment`;case y:return`Profiler`;case v:return`StrictMode`;case C:return`Suspense`;case w:return`SuspenseList`;case D:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case g:return`Portal`;case x:return e.displayName||`Context`;case b:return(e._context.displayName||`Context`)+`.Consumer`;case S:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case T:return t=e.displayName||null,t===null?te(e.type)||`Memo`:t;case E:t=e._payload,e=e._init;try{return te(e(t))}catch{}}return null}var M=Array.isArray,N=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,P=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,F={pending:!1,data:null,method:null,action:null},ne=[],re=-1;function ie(e){return{current:e}}function ae(e){0>re||(e.current=ne[re],ne[re]=null,re--)}function I(e,t){re++,ne[re]=e.current,e.current=t}var oe=ie(null),se=ie(null),ce=ie(null),le=ie(null);function ue(e,t){switch(I(ce,t),I(se,e),I(oe,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Hd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Hd(t),e=Ud(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}ae(oe),I(oe,e)}function de(){ae(oe),ae(se),ae(ce)}function fe(e){e.memoizedState!==null&&I(le,e);var t=oe.current,n=Ud(t,e.type);t!==n&&(I(se,e),I(oe,n))}function pe(e){se.current===e&&(ae(oe),ae(se)),le.current===e&&(ae(le),Qf._currentValue=F)}var me,he;function ge(e){if(me===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);me=t&&t[1]||``,he=-1<e.stack.indexOf(`
3
- at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
4
- `+me+e+he}var _e=!1;function ve(e,t){if(!e||_e)return``;_e=!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(`
5
- `),l=s.split(`
6
- `);for(i=r=0;r<c.length&&!c[r].includes(`DetermineComponentFrameRoot`);)r++;for(;i<l.length&&!l[i].includes(`DetermineComponentFrameRoot`);)i++;if(r===c.length||i===l.length)for(r=c.length-1,i=l.length-1;1<=r&&0<=i&&c[r]!==l[i];)i--;for(;1<=r&&0<=i;r--,i--)if(c[r]!==l[i]){if(r!==1||i!==1)do if(r--,i--,0>i||c[r]!==l[i]){var u=`
7
- `+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{_e=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?ge(n):``}function ye(e,t){switch(e.tag){case 26:case 27:case 5:return ge(e.type);case 16:return ge(`Lazy`);case 13:return e.child!==t&&t!==null?ge(`Suspense Fallback`):ge(`Suspense`);case 19:return ge(`SuspenseList`);case 0:case 15:return ve(e.type,!1);case 11:return ve(e.type.render,!1);case 1:return ve(e.type,!0);case 31:return ge(`Activity`);default:return``}}function be(e){try{var t=``,n=null;do t+=ye(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
8
- Error generating stack: `+e.message+`
9
- `+e.stack}}var xe=Object.prototype.hasOwnProperty,Se=t.unstable_scheduleCallback,Ce=t.unstable_cancelCallback,we=t.unstable_shouldYield,Te=t.unstable_requestPaint,Ee=t.unstable_now,De=t.unstable_getCurrentPriorityLevel,Oe=t.unstable_ImmediatePriority,ke=t.unstable_UserBlockingPriority,Ae=t.unstable_NormalPriority,je=t.unstable_LowPriority,Me=t.unstable_IdlePriority,Ne=t.log,Pe=t.unstable_setDisableYieldValue,Fe=null,Ie=null;function Le(e){if(typeof Ne==`function`&&Pe(e),Ie&&typeof Ie.setStrictMode==`function`)try{Ie.setStrictMode(Fe,e)}catch{}}var Re=Math.clz32?Math.clz32:Ve,ze=Math.log,Be=Math.LN2;function Ve(e){return e>>>=0,e===0?32:31-(ze(e)/Be|0)|0}var He=256,Ue=262144,We=4194304;function Ge(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ke(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Ge(n))):i=Ge(o):i=Ge(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Ge(n))):i=Ge(o)):i=Ge(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function qe(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Je(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ye(){var e=We;return We<<=1,!(We&62914560)&&(We=4194304),e}function Xe(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Ze(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Qe(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-Re(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&$e(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function $e(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Re(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function et(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Re(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function tt(e,t){var n=t&-t;return n=n&42?1:nt(n),(n&(e.suspendedLanes|t))===0?n:0}function nt(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function rt(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function it(){var e=P.p;return e===0?(e=window.event,e===void 0?32:mp(e.type)):e}function at(e,t){var n=P.p;try{return P.p=e,t()}finally{P.p=n}}var ot=Math.random().toString(36).slice(2),st=`__reactFiber$`+ot,ct=`__reactProps$`+ot,lt=`__reactContainer$`+ot,ut=`__reactEvents$`+ot,dt=`__reactListeners$`+ot,ft=`__reactHandles$`+ot,pt=`__reactResources$`+ot,mt=`__reactMarker$`+ot;function ht(e){delete e[st],delete e[ct],delete e[ut],delete e[dt],delete e[ft]}function gt(e){var t=e[st];if(t)return t;for(var n=e.parentNode;n;){if(t=n[lt]||n[st]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=df(e);e!==null;){if(n=e[st])return n;e=df(e)}return t}e=n,n=e.parentNode}return null}function _t(e){if(e=e[st]||e[lt]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function vt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(a(33))}function yt(e){var t=e[pt];return t||=e[pt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function bt(e){e[mt]=!0}var xt=new Set,St={};function Ct(e,t){wt(e,t),wt(e+`Capture`,t)}function wt(e,t){for(St[e]=t,e=0;e<t.length;e++)xt.add(t[e])}var Tt=RegExp(`^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),Et={},Dt={};function Ot(e){return xe.call(Dt,e)?!0:xe.call(Et,e)?!1:Tt.test(e)?Dt[e]=!0:(Et[e]=!0,!1)}function kt(e,t,n){if(Ot(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,``+n)}}function At(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,``+n)}}function jt(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,``+r)}}function Mt(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function Nt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function Pt(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ft(e){if(!e._valueTracker){var t=Nt(e)?`checked`:`value`;e._valueTracker=Pt(e,t,``+e[t])}}function It(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=Nt(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function Lt(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}var Rt=/[\n"\\]/g;function zt(e){return e.replace(Rt,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function Bt(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+Mt(t)):e.value!==``+Mt(t)&&(e.value=``+Mt(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):Ht(e,o,Mt(n)):Ht(e,o,Mt(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+Mt(s):e.removeAttribute(`name`)}function Vt(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){Ft(e);return}n=n==null?``:``+Mt(n),t=t==null?n:``+Mt(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),Ft(e)}function Ht(e,t,n){t===`number`&&Lt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function Ut(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+Mt(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function Wt(e,t,n){if(t!=null&&(t=``+Mt(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+Mt(n)}function Gt(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(a(92));if(M(r)){if(1<r.length)throw Error(a(93));r=r[0]}n=r}n??=``,t=n}n=Mt(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),Ft(e)}function Kt(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var qt=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function Jt(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||qt.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function Yt(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(a(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``);for(var i in t)r=t[i],t.hasOwnProperty(i)&&n[i]!==r&&Jt(e,i,r)}else for(var o in t)t.hasOwnProperty(o)&&Jt(e,o,t[o])}function Xt(e){if(e.indexOf(`-`)===-1)return!1;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var Zt=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),Qt=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function $t(e){return Qt.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function en(){}var tn=null;function nn(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var rn=null,an=null;function on(e){var t=_t(e);if(t&&(e=t.stateNode)){var n=e[ct]||null;a:switch(e=t.stateNode,t.type){case`input`:if(Bt(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+zt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var i=r[ct]||null;if(!i)throw Error(a(90));Bt(r,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&It(r)}break a;case`textarea`:Wt(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&Ut(e,!!n.multiple,t,!1)}}}var sn=!1;function cn(e,t,n){if(sn)return e(t,n);sn=!0;try{return e(t)}finally{if(sn=!1,(rn!==null||an!==null)&&(vu(),rn&&(t=rn,e=an,an=rn=null,on(t),e)))for(t=0;t<e.length;t++)on(e[t])}}function ln(e,t){var n=e.stateNode;if(n===null)return null;var r=n[ct]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=!(e===`button`||e===`input`||e===`select`||e===`textarea`)),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(a(231,t,typeof n));return n}var un=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),dn=!1;if(un)try{var fn={};Object.defineProperty(fn,`passive`,{get:function(){dn=!0}}),window.addEventListener(`test`,fn,fn),window.removeEventListener(`test`,fn,fn)}catch{dn=!1}var pn=null,mn=null,hn=null;function gn(){if(hn)return hn;var e,t=mn,n=t.length,r,i=`value`in pn?pn.value:pn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return hn=i.slice(e,1<r?1-r:void 0)}function _n(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function vn(){return!0}function yn(){return!1}function bn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?vn:yn,this.isPropagationStopped=yn,this}return p(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=vn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=vn)},persist:function(){},isPersistent:vn}),t}var xn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Sn=bn(xn),Cn=p({},xn,{view:0,detail:0}),wn=bn(Cn),Tn,En,Dn,On=p({},Cn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Rn,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==Dn&&(Dn&&e.type===`mousemove`?(Tn=e.screenX-Dn.screenX,En=e.screenY-Dn.screenY):En=Tn=0,Dn=e),Tn)},movementY:function(e){return`movementY`in e?e.movementY:En}}),kn=bn(On),An=bn(p({},On,{dataTransfer:0})),jn=bn(p({},Cn,{relatedTarget:0})),Mn=bn(p({},xn,{animationName:0,elapsedTime:0,pseudoElement:0})),L=bn(p({},xn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Nn=bn(p({},xn,{data:0})),Pn={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Fn={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},In={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function Ln(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=In[e])?!!t[e]:!1}function Rn(){return Ln}var zn=bn(p({},Cn,{key:function(e){if(e.key){var t=Pn[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=_n(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Fn[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Rn,charCode:function(e){return e.type===`keypress`?_n(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?_n(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),Bn=bn(p({},On,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Vn=bn(p({},Cn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Rn})),Hn=bn(p({},xn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Un=bn(p({},On,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),Wn=bn(p({},xn,{newState:0,oldState:0})),Gn=[9,13,27,32],Kn=un&&`CompositionEvent`in window,qn=null;un&&`documentMode`in document&&(qn=document.documentMode);var Jn=un&&`TextEvent`in window&&!qn,Yn=un&&(!Kn||qn&&8<qn&&11>=qn),Xn=` `,Zn=!1;function R(e,t){switch(e){case`keyup`:return Gn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function Qn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var $n=!1;function er(e,t){switch(e){case`compositionend`:return Qn(t);case`keypress`:return t.which===32?(Zn=!0,Xn):null;case`textInput`:return e=t.data,e===Xn&&Zn?null:e;default:return null}}function tr(e,t){if($n)return e===`compositionend`||!Kn&&R(e,t)?(e=gn(),hn=mn=pn=null,$n=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return Yn&&t.locale!==`ko`?null:t.data;default:return null}}var nr={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function rr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!nr[e.type]:t===`textarea`}function ir(e,t,n,r){rn?an?an.push(r):an=[r]:rn=r,t=Ed(t,`onChange`),0<t.length&&(n=new Sn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var ar=null,or=null;function sr(e){vd(e,0)}function z(e){if(It(vt(e)))return e}function B(e,t){if(e===`change`)return t}var cr=!1;if(un){var lr;if(un){var V=`oninput`in document;if(!V){var H=document.createElement(`div`);H.setAttribute(`oninput`,`return;`),V=typeof H.oninput==`function`}lr=V}else lr=!1;cr=lr&&(!document.documentMode||9<document.documentMode)}function U(){ar&&(ar.detachEvent(`onpropertychange`,ur),or=ar=null)}function ur(e){if(e.propertyName===`value`&&z(or)){var t=[];ir(t,or,e,nn(e)),cn(sr,t)}}function dr(e,t,n){e===`focusin`?(U(),ar=t,or=n,ar.attachEvent(`onpropertychange`,ur)):e===`focusout`&&U()}function fr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return z(or)}function pr(e,t){if(e===`click`)return z(t)}function mr(e,t){if(e===`input`||e===`change`)return z(t)}function hr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var gr=typeof Object.is==`function`?Object.is:hr;function _r(e,t){if(gr(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!xe.call(t,i)||!gr(e[i],t[i]))return!1}return!0}function vr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function yr(e,t){var n=vr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=vr(n)}}function br(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?br(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function xr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Lt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Lt(e.document)}return t}function Sr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var Cr=un&&`documentMode`in document&&11>=document.documentMode,wr=null,W=null,Tr=null,Er=!1;function Dr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Er||wr==null||wr!==Lt(r)||(r=wr,`selectionStart`in r&&Sr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Tr&&_r(Tr,r)||(Tr=r,r=Ed(W,`onSelect`),0<r.length&&(t=new Sn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=wr)))}function Or(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var kr={animationend:Or(`Animation`,`AnimationEnd`),animationiteration:Or(`Animation`,`AnimationIteration`),animationstart:Or(`Animation`,`AnimationStart`),transitionrun:Or(`Transition`,`TransitionRun`),transitionstart:Or(`Transition`,`TransitionStart`),transitioncancel:Or(`Transition`,`TransitionCancel`),transitionend:Or(`Transition`,`TransitionEnd`)},Ar={},jr={};un&&(jr=document.createElement(`div`).style,`AnimationEvent`in window||(delete kr.animationend.animation,delete kr.animationiteration.animation,delete kr.animationstart.animation),`TransitionEvent`in window||delete kr.transitionend.transition);function Mr(e){if(Ar[e])return Ar[e];if(!kr[e])return e;var t=kr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in jr)return Ar[e]=t[n];return e}var G=Mr(`animationend`),Nr=Mr(`animationiteration`),Pr=Mr(`animationstart`),Fr=Mr(`transitionrun`),Ir=Mr(`transitionstart`),Lr=Mr(`transitioncancel`),Rr=Mr(`transitionend`),zr=new Map,Br=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);Br.push(`scrollEnd`);function Vr(e,t){zr.set(e,t),Ct(t,[e])}var Hr=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)},Ur=[],Wr=0,Gr=0;function Kr(){for(var e=Wr,t=Gr=Wr=0;t<e;){var n=Ur[t];Ur[t++]=null;var r=Ur[t];Ur[t++]=null;var i=Ur[t];Ur[t++]=null;var a=Ur[t];if(Ur[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&Yr(n,i,a)}}function K(e,t,n,r){Ur[Wr++]=e,Ur[Wr++]=t,Ur[Wr++]=n,Ur[Wr++]=r,Gr|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function qr(e,t,n,r){return K(e,t,n,r),Xr(e)}function Jr(e,t){return K(e,null,null,t),Xr(e)}function Yr(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Re(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function Xr(e){if(50<lu)throw lu=0,uu=null,Error(a(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Zr={};function Qr(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function $r(e,t,n,r){return new Qr(e,t,n,r)}function ei(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ti(e,t){var n=e.alternate;return n===null?(n=$r(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function ni(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function ri(e,t,n,r,i,o){var s=0;if(r=e,typeof e==`function`)ei(e)&&(s=1);else if(typeof e==`string`)s=Uf(e,n,oe.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case D:return e=$r(31,n,t,i),e.elementType=D,e.lanes=o,e;case _:return ii(n.children,i,o,t);case v:s=8,i|=24;break;case y:return e=$r(12,n,t,i|2),e.elementType=y,e.lanes=o,e;case C:return e=$r(13,n,t,i),e.elementType=C,e.lanes=o,e;case w:return e=$r(19,n,t,i),e.elementType=w,e.lanes=o,e;default:if(typeof e==`object`&&e)switch(e.$$typeof){case x:s=10;break a;case b:s=9;break a;case S:s=11;break a;case T:s=14;break a;case E:s=16,r=null;break a}s=29,n=Error(a(130,e===null?`null`:typeof e,``)),r=null}return t=$r(s,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function ii(e,t,n,r){return e=$r(7,e,r,t),e.lanes=n,e}function ai(e,t,n){return e=$r(6,e,null,t),e.lanes=n,e}function oi(e){var t=$r(18,null,null,0);return t.stateNode=e,t}function si(e,t,n){return t=$r(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var ci=new WeakMap;function li(e,t){if(typeof e==`object`&&e){var n=ci.get(e);return n===void 0?(t={value:e,source:t,stack:be(t)},ci.set(e,t),t):n}return{value:e,source:t,stack:be(t)}}var ui=[],di=0,fi=null,pi=0,mi=[],hi=0,gi=null,_i=1,vi=``;function yi(e,t){ui[di++]=pi,ui[di++]=fi,fi=e,pi=t}function bi(e,t,n){mi[hi++]=_i,mi[hi++]=vi,mi[hi++]=gi,gi=e;var r=_i;e=vi;var i=32-Re(r)-1;r&=~(1<<i),n+=1;var a=32-Re(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,_i=1<<32-Re(t)+i|n<<i|r,vi=a+e}else _i=1<<a|n<<i|r,vi=e}function xi(e){e.return!==null&&(yi(e,1),bi(e,1,0))}function Si(e){for(;e===fi;)fi=ui[--di],ui[di]=null,pi=ui[--di],ui[di]=null;for(;e===gi;)gi=mi[--hi],mi[hi]=null,vi=mi[--hi],mi[hi]=null,_i=mi[--hi],mi[hi]=null}function Ci(e,t){mi[hi++]=_i,mi[hi++]=vi,mi[hi++]=gi,_i=t.id,vi=t.overflow,gi=e}var wi=null,Ti=null,Ei=!1,Di=null,Oi=!1,ki=Error(a(519));function Ai(e){throw Ii(li(Error(a(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),ki}function ji(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[st]=e,t[ct]=r,n){case`dialog`:yd(`cancel`,t),yd(`close`,t);break;case`iframe`:case`object`:case`embed`:yd(`load`,t);break;case`video`:case`audio`:for(n=0;n<gd.length;n++)yd(gd[n],t);break;case`source`:yd(`error`,t);break;case`img`:case`image`:case`link`:yd(`error`,t),yd(`load`,t);break;case`details`:yd(`toggle`,t);break;case`input`:yd(`invalid`,t),Vt(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:yd(`invalid`,t);break;case`textarea`:yd(`invalid`,t),Gt(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||Md(t.textContent,n)?(r.popover!=null&&(yd(`beforetoggle`,t),yd(`toggle`,t)),r.onScroll!=null&&yd(`scroll`,t),r.onScrollEnd!=null&&yd(`scrollend`,t),r.onClick!=null&&(t.onclick=en),t=!0):t=!1,t||Ai(e,!0)}function Mi(e){for(wi=e.return;wi;)switch(wi.tag){case 5:case 31:case 13:Oi=!1;return;case 27:case 3:Oi=!0;return;default:wi=wi.return}}function Ni(e){if(e!==wi)return!1;if(!Ei)return Mi(e),Ei=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!==`form`&&n!==`button`)||Wd(e.type,e.memoizedProps)),n=!n),n&&Ti&&Ai(e),Mi(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(a(317));Ti=uf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(a(317));Ti=uf(e)}else t===27?(t=Ti,Qd(e.type)?(e=$,$=null,Ti=e):Ti=t):Ti=wi?lf(e.stateNode.nextSibling):null;return!0}function Pi(){Ti=wi=null,Ei=!1}function Fi(){var e=Di;return e!==null&&(Yl===null?Yl=e:Yl.push.apply(Yl,e),Di=null),e}function Ii(e){Di===null?Di=[e]:Di.push(e)}var Li=ie(null),Ri=null,zi=null;function Bi(e,t,n){I(Li,t._currentValue),t._currentValue=n}function Vi(e){e._currentValue=Li.current,ae(Li)}function Hi(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function Ui(e,t,n,r){var i=e.child;for(i!==null&&(i.return=e);i!==null;){var o=i.dependencies;if(o!==null){var s=i.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=i;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),Hi(o.return,n,e),r||(s=null);break a}o=c.next}}else if(i.tag===18){if(s=i.return,s===null)throw Error(a(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),Hi(s,n,e),s=null}else s=i.child;if(s!==null)s.return=i;else for(s=i;s!==null;){if(s===e){s=null;break}if(i=s.sibling,i!==null){i.return=s.return,s=i;break}s=s.return}i=s}}function Wi(e,t,n,r){e=null;for(var i=t,o=!1;i!==null;){if(!o){if(i.flags&524288)o=!0;else if(i.flags&262144)break}if(i.tag===10){var s=i.alternate;if(s===null)throw Error(a(387));if(s=s.memoizedProps,s!==null){var c=i.type;gr(i.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(i===le.current){if(s=i.alternate,s===null)throw Error(a(387));s.memoizedState.memoizedState!==i.memoizedState.memoizedState&&(e===null?e=[Qf]:e.push(Qf))}i=i.return}e!==null&&Ui(t,e,n,r),t.flags|=262144}function Gi(e){for(e=e.firstContext;e!==null;){if(!gr(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Ki(e){Ri=e,zi=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function qi(e){return Yi(Ri,e)}function Ji(e,t){return Ri===null&&Ki(e),Yi(e,t)}function Yi(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},zi===null){if(e===null)throw Error(a(308));zi=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else zi=zi.next=t;return n}var q=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},Xi=t.unstable_scheduleCallback,Zi=t.unstable_NormalPriority,J={$$typeof:x,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Qi(){return{controller:new q,data:new Map,refCount:0}}function $i(e){e.refCount--,e.refCount===0&&Xi(Zi,function(){e.controller.abort()})}var ea=null,ta=0,na=0,ra=null;function ia(e,t){if(ea===null){var n=ea=[];ta=0,na=ud(),ra={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return ta++,t.then(aa,aa),t}function aa(){if(--ta===0&&ea!==null){ra!==null&&(ra.status=`fulfilled`);var e=ea;ea=null,na=0,ra=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function oa(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var sa=N.S;N.S=function(e,t){Ql=Ee(),typeof t==`object`&&t&&typeof t.then==`function`&&ia(e,t),sa!==null&&sa(e,t)};var ca=ie(null);function la(){var e=ca.current;return e===null?Nl.pooledCache:e}function ua(e,t){t===null?I(ca,ca.current):I(ca,t.pool)}function da(){var e=la();return e===null?null:{parent:J._currentValue,pool:e}}var fa=Error(a(460)),pa=Error(a(474)),ma=Error(a(542)),ha={then:function(){}};function ga(e){return e=e.status,e===`fulfilled`||e===`rejected`}function _a(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(en,en),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,xa(e),e;default:if(typeof t.status==`string`)t.then(en,en);else{if(e=Nl,e!==null&&100<e.shellSuspendCounter)throw Error(a(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,xa(e),e}throw ya=t,fa}}function va(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(ya=e,fa):e}}var ya=null;function ba(){if(ya===null)throw Error(a(459));var e=ya;return ya=null,e}function xa(e){if(e===fa||e===ma)throw Error(a(483))}var Sa=null,Ca=0;function wa(e){var t=Ca;return Ca+=1,Sa===null&&(Sa=[]),_a(Sa,e,t)}function Ta(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Ea(e,t){throw t.$$typeof===m?Error(a(525)):(e=Object.prototype.toString.call(t),Error(a(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function Da(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function i(e,t){return e=ti(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=ai(n,e.mode,r),t.return=e,t):(t=i(t,n),t.return=e,t)}function l(e,t,n,r){var a=n.type;return a===_?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===a||typeof a==`object`&&a&&a.$$typeof===E&&va(a)===t.type)?(t=i(t,n.props),Ta(t,n),t.return=e,t):(t=ri(n.type,n.key,n.props,null,e.mode,r),Ta(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=si(n,e.mode,r),t.return=e,t):(t=i(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,a){return t===null||t.tag!==7?(t=ii(n,e.mode,r,a),t.return=e,t):(t=i(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=ai(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case h:return n=ri(t.type,t.key,t.props,null,e.mode,n),Ta(n,t),n.return=e,n;case g:return t=si(t,e.mode,n),t.return=e,t;case E:return t=va(t),f(e,t,n)}if(M(t)||A(t))return t=ii(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,wa(t),n);if(t.$$typeof===x)return f(e,Ji(e,t),n);Ea(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case h:return n.key===i?l(e,t,n,r):null;case g:return n.key===i?u(e,t,n,r):null;case E:return n=va(n),p(e,t,n,r)}if(M(n)||A(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,wa(n),r);if(n.$$typeof===x)return p(e,t,Ji(e,n),r);Ea(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case h:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case g:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case E:return r=va(r),m(e,t,n,r,i)}if(M(r)||A(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,wa(r),i);if(r.$$typeof===x)return m(e,t,n,Ji(t,r),i);Ea(t,r)}return null}function v(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),Ei&&yi(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return Ei&&yi(i,h),l}for(d=r(d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),Ei&&yi(i,h),l}function y(i,s,c,l){if(c==null)throw Error(a(151));for(var u=null,d=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(i,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(i,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(i,h),Ei&&yi(i,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(i,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return Ei&&yi(i,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,i,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(i,e)}),Ei&&yi(i,g),u}function b(e,r,o,c){if(typeof o==`object`&&o&&o.type===_&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case h:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===_){if(r.tag===7){n(e,r.sibling),c=i(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===E&&va(l)===r.type){n(e,r.sibling),c=i(r,o.props),Ta(c,o),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}o.type===_?(c=ii(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=ri(o.type,o.key,o.props,null,e.mode,c),Ta(c,o),c.return=e,e=c)}return s(e);case g:a:{for(l=o.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=i(r,o.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=si(o,e.mode,c),c.return=e,e=c}return s(e);case E:return o=va(o),b(e,r,o,c)}if(M(o))return v(e,r,o,c);if(A(o)){if(l=A(o),typeof l!=`function`)throw Error(a(150));return o=l.call(o),y(e,r,o,c)}if(typeof o.then==`function`)return b(e,r,wa(o),c);if(o.$$typeof===x)return b(e,r,Ji(e,o),c);Ea(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=i(r,o),c.return=e,e=c):(n(e,r),c=ai(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Ca=0;var i=b(e,t,n,r);return Sa=null,i}catch(t){if(t===fa||t===ma)throw t;var a=$r(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var ka=Da(!0),Aa=Da(!1),ja=!1;function Ma(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Na(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Pa(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Fa(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Ml&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=Xr(e),Yr(e,null,n),t}return K(e,r,t,n),Xr(e)}function Ia(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,et(e,n)}}function La(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ra=!1;function za(){if(Ra){var e=ra;if(e!==null)throw e}}function Ba(e,t,n,r){Ra=!1;var i=e.updateQueue;ja=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,m=f!==s.lane;if(m?(Fl&f)===f:(r&f)===f){f!==0&&f===na&&(Ra=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,f);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,f=typeof h==`function`?h.call(_,d,f):h,f==null)break a;d=p({},d,f);break a;case 2:ja=!0}}f=s.callback,f!==null&&(e.flags|=64,m&&(e.flags|=8192),m=i.callbacks,m===null?i.callbacks=[f]:m.push(f))}else m={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=m,c=d):u=u.next=m,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;m=s,s=m.next,m.next=null,i.lastBaseUpdate=m,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Ul|=o,e.lanes=o,e.memoizedState=d}}function Va(e,t){if(typeof e!=`function`)throw Error(a(191,e));e.call(t)}function Ha(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)Va(n[e],t)}var Y=ie(null),X=ie(0);function Ua(e,t){e=Vl,I(X,e),I(Y,t),Vl=e|t.baseLanes}function Wa(){I(X,Vl),I(Y,Y.current)}function Ga(){Vl=X.current,ae(Y),ae(X)}var Ka=ie(null),qa=null;function Ja(e){var t=e.alternate;I($a,$a.current&1),I(Ka,e),qa===null&&(t===null||Y.current!==null||t.memoizedState!==null)&&(qa=e)}function Ya(e){I($a,$a.current),I(Ka,e),qa===null&&(qa=e)}function Xa(e){e.tag===22?(I($a,$a.current),I(Ka,e),qa===null&&(qa=e)):Za(e)}function Za(){I($a,$a.current),I(Ka,Ka.current)}function Qa(e){ae(Ka),qa===e&&(qa=null),ae($a)}var $a=ie(0);function eo(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||of(n)||sf(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var to=0,Z=null,no=null,Q=null,ro=!1,io=!1,ao=!1,oo=0,so=0,co=null,lo=0;function uo(){throw Error(a(321))}function fo(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!gr(e[n],t[n]))return!1;return!0}function po(e,t,n,r,i,a){return to=a,Z=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,N.H=e===null||e.memoizedState===null?As:js,ao=!1,a=n(r,i),ao=!1,io&&(a=ho(t,n,r,i)),mo(e),a}function mo(e){N.H=ks;var t=no!==null&&no.next!==null;if(to=0,Q=no=Z=null,ro=!1,so=0,co=null,t)throw Error(a(300));e===null||Js||(e=e.dependencies,e!==null&&Gi(e)&&(Js=!0))}function ho(e,t,n,r){Z=e;var i=0;do{if(io&&(co=null),so=0,io=!1,25<=i)throw Error(a(301));if(i+=1,Q=no=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}N.H=Ms,o=t(n,r)}while(io);return o}function go(){var e=N.H,t=e.useState()[0];return t=typeof t.then==`function`?Co(t):t,e=e.useState()[0],(no===null?null:no.memoizedState)!==e&&(Z.flags|=1024),t}function _o(){var e=oo!==0;return oo=0,e}function vo(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function yo(e){if(ro){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}ro=!1}to=0,Q=no=Z=null,io=!1,so=oo=0,co=null}function bo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Q===null?Z.memoizedState=Q=e:Q=Q.next=e,Q}function xo(){if(no===null){var e=Z.alternate;e=e===null?null:e.memoizedState}else e=no.next;var t=Q===null?Z.memoizedState:Q.next;if(t!==null)Q=t,no=e;else{if(e===null)throw Z.alternate===null?Error(a(467)):Error(a(310));no=e,e={memoizedState:no.memoizedState,baseState:no.baseState,baseQueue:no.baseQueue,queue:no.queue,next:null},Q===null?Z.memoizedState=Q=e:Q=Q.next=e}return Q}function So(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Co(e){var t=so;return so+=1,co===null&&(co=[]),e=_a(co,e,t),t=Z,(Q===null?t.memoizedState:Q.next)===null&&(t=t.alternate,N.H=t===null||t.memoizedState===null?As:js),e}function wo(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return Co(e);if(e.$$typeof===x)return qi(e)}throw Error(a(438,String(e)))}function To(e){var t=null,n=Z.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=Z.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=So(),Z.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=O;return t.index++,n}function Eo(e,t){return typeof t==`function`?t(e):t}function Do(e){return Oo(xo(),no,e)}function Oo(e,t,n){var r=e.queue;if(r===null)throw Error(a(311));r.lastRenderedReducer=n;var i=e.baseQueue,o=r.pending;if(o!==null){if(i!==null){var s=i.next;i.next=o.next,o.next=s}t.baseQueue=i=o,r.pending=null}if(o=e.baseState,i===null)e.memoizedState=o;else{t=i.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(to&f)===f:(Fl&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===na&&(d=!0);else if((to&p)===p){u=u.next,p===na&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,Z.lanes|=p,Ul|=p;f=u.action,ao&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,Z.lanes|=f,Ul|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!gr(o,e.memoizedState)&&(Js=!0,d&&(n=ra,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return i===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function ko(e){var t=xo(),n=t.queue;if(n===null)throw Error(a(311));n.lastRenderedReducer=e;var r=n.dispatch,i=n.pending,o=t.memoizedState;if(i!==null){n.pending=null;var s=i=i.next;do o=e(o,s.action),s=s.next;while(s!==i);gr(o,t.memoizedState)||(Js=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function Ao(e,t,n){var r=Z,i=xo(),o=Ei;if(o){if(n===void 0)throw Error(a(407));n=n()}else n=t();var s=!gr((no||i).memoizedState,n);if(s&&(i.memoizedState=n,Js=!0),i=i.queue,ts(No.bind(null,r,i,e),[e]),i.getSnapshot!==t||s||Q!==null&&Q.memoizedState.tag&1){if(r.flags|=2048,Xo(9,{destroy:void 0},Mo.bind(null,r,i,n,t),null),Nl===null)throw Error(a(349));o||to&127||jo(r,t,n)}return n}function jo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Z.updateQueue,t===null?(t=So(),Z.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Mo(e,t,n,r){t.value=n,t.getSnapshot=r,Po(t)&&Fo(e)}function No(e,t,n){return n(function(){Po(t)&&Fo(e)})}function Po(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!gr(e,n)}catch{return!0}}function Fo(e){var t=Jr(e,2);t!==null&&pu(t,e,2)}function Io(e){var t=bo();if(typeof e==`function`){var n=e;if(e=n(),ao){Le(!0);try{n()}finally{Le(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Eo,lastRenderedState:e},t}function Lo(e,t,n,r){return e.baseState=n,Oo(e,no,typeof r==`function`?r:Eo)}function Ro(e,t,n,r,i){if(Es(e))throw Error(a(485));if(e=t.action,e!==null){var o={payload:i,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};N.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,zo(t,o)):(o.next=n.next,t.pending=n.next=o)}}function zo(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=N.T,o={};N.T=o;try{var s=n(i,r),c=N.S;c!==null&&c(o,s),Bo(e,t,s)}catch(n){Ho(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),N.T=a}}else try{a=n(i,r),Bo(e,t,a)}catch(n){Ho(e,t,n)}}function Bo(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){Vo(e,t,n)},function(n){return Ho(e,t,n)}):Vo(e,t,n)}function Vo(e,t,n){t.status=`fulfilled`,t.value=n,Uo(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,zo(e,n)))}function Ho(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,Uo(t),t=t.next;while(t!==r)}e.action=null}function Uo(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Wo(e,t){return t}function Go(e,t){if(Ei){var n=Nl.formState;if(n!==null){a:{var r=Z;if(Ei){if(Ti){b:{for(var i=Ti,a=Oi;i.nodeType!==8;){if(!a){i=null;break b}if(i=lf(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){Ti=lf(i.nextSibling),r=i.data===`F!`;break a}}Ai(r)}r=!1}r&&(t=n[0])}}return n=bo(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Wo,lastRenderedState:t},n.queue=r,n=Cs.bind(null,Z,r),r.dispatch=n,r=Io(!1),a=Ts.bind(null,Z,!1,r.queue),r=bo(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=Ro.bind(null,Z,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function Ko(e){return qo(xo(),no,e)}function qo(e,t,n){if(t=Oo(e,t,Wo)[0],e=Do(Eo)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=Co(t)}catch(e){throw e===fa?ma:e}else r=t;t=xo();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(Z.flags|=2048,Xo(9,{destroy:void 0},Jo.bind(null,i,n),null)),[r,a,e]}function Jo(e,t){e.action=t}function Yo(e){var t=xo(),n=no;if(n!==null)return qo(t,n,e);xo(),t=t.memoizedState,n=xo();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function Xo(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=Z.updateQueue,t===null&&(t=So(),Z.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function Zo(){return xo().memoizedState}function Qo(e,t,n,r){var i=bo();Z.flags|=e,i.memoizedState=Xo(1|t,{destroy:void 0},n,r===void 0?null:r)}function $o(e,t,n,r){var i=xo();r=r===void 0?null:r;var a=i.memoizedState.inst;no!==null&&r!==null&&fo(r,no.memoizedState.deps)?i.memoizedState=Xo(t,a,n,r):(Z.flags|=e,i.memoizedState=Xo(1|t,a,n,r))}function es(e,t){Qo(8390656,8,e,t)}function ts(e,t){$o(2048,8,e,t)}function ns(e){Z.flags|=4;var t=Z.updateQueue;if(t===null)t=So(),Z.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function rs(e){var t=xo().memoizedState;return ns({ref:t,nextImpl:e}),function(){if(Ml&2)throw Error(a(440));return t.impl.apply(void 0,arguments)}}function is(e,t){return $o(4,2,e,t)}function as(e,t){return $o(4,4,e,t)}function os(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function ss(e,t,n){n=n==null?null:n.concat([e]),$o(4,4,os.bind(null,t,e),n)}function cs(){}function ls(e,t){var n=xo();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&fo(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function us(e,t){var n=xo();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&fo(t,r[1]))return r[0];if(r=e(),ao){Le(!0);try{e()}finally{Le(!1)}}return n.memoizedState=[r,t],r}function ds(e,t,n){return n===void 0||to&1073741824&&!(Fl&261930)?e.memoizedState=t:(e.memoizedState=n,e=fu(),Z.lanes|=e,Ul|=e,n)}function fs(e,t,n,r){return gr(n,t)?n:Y.current===null?!(to&42)||to&1073741824&&!(Fl&261930)?(Js=!0,e.memoizedState=n):(e=fu(),Z.lanes|=e,Ul|=e,t):(e=ds(e,n,r),gr(e,t)||(Js=!0),e)}function ps(e,t,n,r,i){var a=P.p;P.p=a!==0&&8>a?a:8;var o=N.T,s={};N.T=s,Ts(e,!1,t,n);try{var c=i(),l=N.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?ws(e,t,oa(c,r),du(e)):ws(e,t,r,du(e))}catch(n){ws(e,t,{then:function(){},status:`rejected`,reason:n},du())}finally{P.p=a,o!==null&&s.types!==null&&(o.types=s.types),N.T=o}}function ms(){}function hs(e,t,n,r){if(e.tag!==5)throw Error(a(476));var i=gs(e).queue;ps(e,i,t,F,n===null?ms:function(){return _s(e),n(r)})}function gs(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Eo,lastRenderedState:F},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Eo,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function _s(e){var t=gs(e);t.next===null&&(t=e.alternate.memoizedState),ws(e,t.next.queue,{},du())}function vs(){return qi(Qf)}function ys(){return xo().memoizedState}function bs(){return xo().memoizedState}function xs(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=du();e=Pa(n);var r=Fa(t,e,n);r!==null&&(pu(r,t,n),Ia(r,t,n)),t={cache:Qi()},e.payload=t;return}t=t.return}}function Ss(e,t,n){var r=du();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Es(e)?Ds(t,n):(n=qr(e,t,n,r),n!==null&&(pu(n,e,r),Os(n,t,r)))}function Cs(e,t,n){ws(e,t,n,du())}function ws(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Es(e))Ds(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,gr(s,o))return K(e,t,i,0),Nl===null&&Kr(),!1}catch{}if(n=qr(e,t,i,r),n!==null)return pu(n,e,r),Os(n,t,r),!0}return!1}function Ts(e,t,n,r){if(r={lane:2,revertLane:ud(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Es(e)){if(t)throw Error(a(479))}else t=qr(e,n,r,2),t!==null&&pu(t,e,2)}function Es(e){var t=e.alternate;return e===Z||t!==null&&t===Z}function Ds(e,t){io=ro=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Os(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,et(e,n)}}var ks={readContext:qi,use:wo,useCallback:uo,useContext:uo,useEffect:uo,useImperativeHandle:uo,useLayoutEffect:uo,useInsertionEffect:uo,useMemo:uo,useReducer:uo,useRef:uo,useState:uo,useDebugValue:uo,useDeferredValue:uo,useTransition:uo,useSyncExternalStore:uo,useId:uo,useHostTransitionStatus:uo,useFormState:uo,useActionState:uo,useOptimistic:uo,useMemoCache:uo,useCacheRefresh:uo};ks.useEffectEvent=uo;var As={readContext:qi,use:wo,useCallback:function(e,t){return bo().memoizedState=[e,t===void 0?null:t],e},useContext:qi,useEffect:es,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),Qo(4194308,4,os.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Qo(4194308,4,e,t)},useInsertionEffect:function(e,t){Qo(4,2,e,t)},useMemo:function(e,t){var n=bo();t=t===void 0?null:t;var r=e();if(ao){Le(!0);try{e()}finally{Le(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=bo();if(n!==void 0){var i=n(t);if(ao){Le(!0);try{n(t)}finally{Le(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Ss.bind(null,Z,e),[r.memoizedState,e]},useRef:function(e){var t=bo();return e={current:e},t.memoizedState=e},useState:function(e){e=Io(e);var t=e.queue,n=Cs.bind(null,Z,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:cs,useDeferredValue:function(e,t){return ds(bo(),e,t)},useTransition:function(){var e=Io(!1);return e=ps.bind(null,Z,e.queue,!0,!1),bo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=Z,i=bo();if(Ei){if(n===void 0)throw Error(a(407));n=n()}else{if(n=t(),Nl===null)throw Error(a(349));Fl&127||jo(r,t,n)}i.memoizedState=n;var o={value:n,getSnapshot:t};return i.queue=o,es(No.bind(null,r,o,e),[e]),r.flags|=2048,Xo(9,{destroy:void 0},Mo.bind(null,r,o,n,t),null),n},useId:function(){var e=bo(),t=Nl.identifierPrefix;if(Ei){var n=vi,r=_i;n=(r&~(1<<32-Re(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=oo++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=lo++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:vs,useFormState:Go,useActionState:Go,useOptimistic:function(e){var t=bo();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Ts.bind(null,Z,!0,n),n.dispatch=t,[e,t]},useMemoCache:To,useCacheRefresh:function(){return bo().memoizedState=xs.bind(null,Z)},useEffectEvent:function(e){var t=bo(),n={impl:e};return t.memoizedState=n,function(){if(Ml&2)throw Error(a(440));return n.impl.apply(void 0,arguments)}}},js={readContext:qi,use:wo,useCallback:ls,useContext:qi,useEffect:ts,useImperativeHandle:ss,useInsertionEffect:is,useLayoutEffect:as,useMemo:us,useReducer:Do,useRef:Zo,useState:function(){return Do(Eo)},useDebugValue:cs,useDeferredValue:function(e,t){return fs(xo(),no.memoizedState,e,t)},useTransition:function(){var e=Do(Eo)[0],t=xo().memoizedState;return[typeof e==`boolean`?e:Co(e),t]},useSyncExternalStore:Ao,useId:ys,useHostTransitionStatus:vs,useFormState:Ko,useActionState:Ko,useOptimistic:function(e,t){return Lo(xo(),no,e,t)},useMemoCache:To,useCacheRefresh:bs};js.useEffectEvent=rs;var Ms={readContext:qi,use:wo,useCallback:ls,useContext:qi,useEffect:ts,useImperativeHandle:ss,useInsertionEffect:is,useLayoutEffect:as,useMemo:us,useReducer:ko,useRef:Zo,useState:function(){return ko(Eo)},useDebugValue:cs,useDeferredValue:function(e,t){var n=xo();return no===null?ds(n,e,t):fs(n,no.memoizedState,e,t)},useTransition:function(){var e=ko(Eo)[0],t=xo().memoizedState;return[typeof e==`boolean`?e:Co(e),t]},useSyncExternalStore:Ao,useId:ys,useHostTransitionStatus:vs,useFormState:Yo,useActionState:Yo,useOptimistic:function(e,t){var n=xo();return no===null?(n.baseState=e,[e,n.queue.dispatch]):Lo(n,no,e,t)},useMemoCache:To,useCacheRefresh:bs};Ms.useEffectEvent=rs;function Ns(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:p({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Ps={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=du(),i=Pa(r);i.payload=t,n!=null&&(i.callback=n),t=Fa(e,i,r),t!==null&&(pu(t,e,r),Ia(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=du(),i=Pa(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Fa(e,i,r),t!==null&&(pu(t,e,r),Ia(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=du(),r=Pa(n);r.tag=2,t!=null&&(r.callback=t),t=Fa(e,r,n),t!==null&&(pu(t,e,n),Ia(t,e,n))}};function Fs(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!_r(n,r)||!_r(i,a):!0}function Is(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Ps.enqueueReplaceState(t,t.state,null)}function Ls(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=p({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function Rs(e){Hr(e)}function zs(e){console.error(e)}function Bs(e){Hr(e)}function Vs(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function Hs(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function Us(e,t,n){return n=Pa(n),n.tag=3,n.payload={element:null},n.callback=function(){Vs(e,t)},n}function Ws(e){return e=Pa(e),e.tag=3,e}function Gs(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){Hs(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Hs(t,n,r),typeof i!=`function`&&(tu===null?tu=new Set([this]):tu.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function Ks(e,t,n,r,i){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Wi(t,n,i,!0),n=Ka.current,n!==null){switch(n.tag){case 31:case 13:return qa===null?Tu():n.alternate===null&&Hl===0&&(Hl=3),n.flags&=-257,n.flags|=65536,n.lanes=i,r===ha?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Wu(e,r,i)),!1;case 22:return n.flags|=65536,r===ha?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),Wu(e,r,i)),!1}throw Error(a(435,n.tag))}return Wu(e,r,i),Tu(),!1}if(Ei)return t=Ka.current,t===null?(r!==ki&&(t=Error(a(423),{cause:r}),Ii(li(t,n))),e=e.current.alternate,e.flags|=65536,i&=-i,e.lanes|=i,r=li(r,n),i=Us(e.stateNode,r,i),La(e,i),Hl!==4&&(Hl=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=i,r!==ki&&(e=Error(a(422),{cause:r}),Ii(li(e,n)))),!1;var o=Error(a(520),{cause:r});if(o=li(o,n),Jl===null?Jl=[o]:Jl.push(o),Hl!==4&&(Hl=2),t===null)return!0;r=li(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=i&-i,n.lanes|=e,e=Us(n.stateNode,r,e),La(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(tu===null||!tu.has(o))))return n.flags|=65536,i&=-i,n.lanes|=i,i=Ws(i),Gs(i,e,n,r),La(n,i),!1}n=n.return}while(n!==null);return!1}var qs=Error(a(461)),Js=!1;function Ys(e,t,n,r){t.child=e===null?Aa(t,null,n,r):ka(t,e.child,n,r)}function Xs(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return Ki(t),r=po(e,t,n,o,a,i),s=_o(),e!==null&&!Js?(vo(e,t,i),bc(e,t,i)):(Ei&&s&&xi(t),t.flags|=1,Ys(e,t,r,i),t.child)}function Zs(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!ei(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,Qs(e,t,a,r,i)):(e=ri(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!xc(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?_r:n,n(o,r)&&e.ref===t.ref)return bc(e,t,i)}return t.flags|=1,e=ti(a,r),e.ref=t.ref,e.return=t,t.child=e}function Qs(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(_r(a,r)&&e.ref===t.ref)if(Js=!1,t.pendingProps=r=a,xc(e,i))e.flags&131072&&(Js=!0);else return t.lanes=e.lanes,bc(e,t,i)}return oc(e,t,n,r,i)}function $s(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return tc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&ua(t,a===null?null:a.cachePool),a===null?Wa():Ua(t,a),Xa(t);else return r=t.lanes=536870912,tc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&ua(t,null),Wa(),Za(t)):(ua(t,a.cachePool),Ua(t,a),Za(t),t.memoizedState=null);return Ys(e,t,i,n),t.child}function ec(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function tc(e,t,n,r,i){var a=la();return a=a===null?null:{parent:J._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&ua(t,null),Wa(),Xa(t),e!==null&&Wi(e,t,r,!0),t.childLanes=i,null}function nc(e,t){return t=hc({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function rc(e,t,n){return ka(t,e.child,null,n),e=nc(t,t.pendingProps),e.flags|=2,Qa(t),t.memoizedState=null,e}function ic(e,t,n){var r=t.pendingProps,i=(t.flags&128)!=0;if(t.flags&=-129,e===null){if(Ei){if(r.mode===`hidden`)return e=nc(t,r),t.lanes=536870912,ec(null,e);if(Ya(t),(e=Ti)?(e=af(e,Oi),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:gi===null?null:{id:_i,overflow:vi},retryLane:536870912,hydrationErrors:null},n=oi(e),n.return=t,t.child=n,wi=t,Ti=null)):e=null,e===null)throw Ai(t);return t.lanes=536870912,null}return nc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(Ya(t),i)if(t.flags&256)t.flags&=-257,t=rc(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(a(558));else if(Js||Wi(e,t,n,!1),i=(n&e.childLanes)!==0,Js||i){if(r=Nl,r!==null&&(s=tt(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,Jr(e,s),pu(r,e,s),qs;Tu(),t=rc(e,t,n)}else e=o.treeContext,Ti=lf(s.nextSibling),wi=t,Ei=!0,Di=null,Oi=!1,e!==null&&Ci(t,e),t=nc(t,r),t.flags|=4096;return t}return e=ti(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function ac(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(a(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function oc(e,t,n,r,i){return Ki(t),n=po(e,t,n,r,void 0,i),r=_o(),e!==null&&!Js?(vo(e,t,i),bc(e,t,i)):(Ei&&r&&xi(t),t.flags|=1,Ys(e,t,n,i),t.child)}function sc(e,t,n,r,i,a){return Ki(t),t.updateQueue=null,n=ho(t,r,n,i),mo(e),r=_o(),e!==null&&!Js?(vo(e,t,a),bc(e,t,a)):(Ei&&r&&xi(t),t.flags|=1,Ys(e,t,n,a),t.child)}function cc(e,t,n,r,i){if(Ki(t),t.stateNode===null){var a=Zr,o=n.contextType;typeof o==`object`&&o&&(a=qi(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Ps,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Ma(t),o=n.contextType,a.context=typeof o==`object`&&o?qi(o):Zr,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(Ns(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&Ps.enqueueReplaceState(a,a.state,null),Ba(t,r,a,i),za(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=Ls(n,s);a.props=c;var l=a.context,u=n.contextType;o=Zr,typeof u==`object`&&u&&(o=qi(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Is(t,a,r,o),ja=!1;var f=t.memoizedState;a.state=f,Ba(t,r,a,i),za(),l=t.memoizedState,s||f!==l||ja?(typeof d==`function`&&(Ns(t,n,d,r),l=t.memoizedState),(c=ja||Fs(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,Na(e,t),o=t.memoizedProps,u=Ls(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=Zr,typeof l==`object`&&l&&(c=qi(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Is(t,a,r,c),ja=!1,f=t.memoizedState,a.state=f,Ba(t,r,a,i),za();var p=t.memoizedState;o!==d||f!==p||ja||e!==null&&e.dependencies!==null&&Gi(e.dependencies)?(typeof s==`function`&&(Ns(t,n,s,r),p=t.memoizedState),(u=ja||Fs(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Gi(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,ac(e,t),r=(t.flags&128)!=0,a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=ka(t,e.child,null,i),t.child=ka(t,null,n,i)):Ys(e,t,n,i),t.memoizedState=a.state,e=t.child):e=bc(e,t,i),e}function lc(e,t,n,r){return Pi(),t.flags|=256,Ys(e,t,n,r),t.child}var uc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function dc(e){return{baseLanes:e,cachePool:da()}}function fc(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=Kl),e}function pc(e,t,n){var r=t.pendingProps,i=!1,o=(t.flags&128)!=0,s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:($a.current&2)!=0),s&&(i=!0,t.flags&=-129),s=(t.flags&32)!=0,t.flags&=-33,e===null){if(Ei){if(i?Ja(t):Za(t),(e=Ti)?(e=af(e,Oi),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:gi===null?null:{id:_i,overflow:vi},retryLane:536870912,hydrationErrors:null},n=oi(e),n.return=t,t.child=n,wi=t,Ti=null)):e=null,e===null)throw Ai(t);return sf(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,i?(Za(t),i=t.mode,c=hc({mode:`hidden`,children:c},i),r=ii(r,i,n,null),c.return=t,r.return=t,c.sibling=r,t.child=c,r=t.child,r.memoizedState=dc(n),r.childLanes=fc(e,s,n),t.memoizedState=uc,ec(null,r)):(Ja(t),mc(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(o)t.flags&256?(Ja(t),t.flags&=-257,t=gc(e,t,n)):t.memoizedState===null?(Za(t),c=r.fallback,i=t.mode,r=hc({mode:`visible`,children:r.children},i),c=ii(c,i,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,ka(t,e.child,null,n),r=t.child,r.memoizedState=dc(n),r.childLanes=fc(e,s,n),t.memoizedState=uc,t=ec(null,r)):(Za(t),t.child=e.child,t.flags|=128,t=null);else if(Ja(t),sf(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(a(419)),r.stack=``,r.digest=s,Ii({value:r,source:null,stack:null}),t=gc(e,t,n)}else if(Js||Wi(e,t,n,!1),s=(n&e.childLanes)!==0,Js||s){if(s=Nl,s!==null&&(r=tt(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,Jr(e,r),pu(s,e,r),qs;of(c)||Tu(),t=gc(e,t,n)}else of(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,Ti=lf(c.nextSibling),wi=t,Ei=!0,Di=null,Oi=!1,e!==null&&Ci(t,e),t=mc(t,r.children),t.flags|=4096);return t}return i?(Za(t),c=r.fallback,i=t.mode,l=e.child,u=l.sibling,r=ti(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=ii(c,i,n,null),c.flags|=2):c=ti(u,c),c.return=t,r.return=t,r.sibling=c,t.child=r,ec(null,r),r=t.child,c=e.child.memoizedState,c===null?c=dc(n):(i=c.cachePool,i===null?i=da():(l=J._currentValue,i=i.parent===l?i:{parent:l,pool:l}),c={baseLanes:c.baseLanes|n,cachePool:i}),r.memoizedState=c,r.childLanes=fc(e,s,n),t.memoizedState=uc,ec(e.child,r)):(Ja(t),n=e.child,e=n.sibling,n=ti(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(s=t.deletions,s===null?(t.deletions=[e],t.flags|=16):s.push(e)),t.child=n,t.memoizedState=null,n)}function mc(e,t){return t=hc({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function hc(e,t){return e=$r(22,e,null,t),e.lanes=0,e}function gc(e,t,n){return ka(t,e.child,null,n),e=mc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function _c(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Hi(e.return,t,n)}function vc(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function yc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=$a.current,s=(o&2)!=0;if(s?(o=o&1|2,t.flags|=128):o&=1,I($a,o),Ys(e,t,r,n),r=Ei?pi:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&_c(e,n,t);else if(e.tag===19)_c(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&eo(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),vc(t,!1,i,n,a,r);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&eo(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}vc(t,!0,n,null,a,r);break;case`together`:vc(t,!1,null,null,void 0,r);break;default:t.memoizedState=null}return t.child}function bc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Ul|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(Wi(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(a(153));if(t.child!==null){for(e=t.child,n=ti(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=ti(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function xc(e,t){return(e.lanes&t)===0?(e=e.dependencies,!!(e!==null&&Gi(e))):!0}function Sc(e,t,n){switch(t.tag){case 3:ue(t,t.stateNode.containerInfo),Bi(t,J,e.memoizedState.cache),Pi();break;case 27:case 5:fe(t);break;case 4:ue(t,t.stateNode.containerInfo);break;case 10:Bi(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Ya(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(Ja(t),e=bc(e,t,n),e===null?null:e.sibling):pc(e,t,n):(Ja(t),t.flags|=128,null);Ja(t);break;case 19:var i=(e.flags&128)!=0;if(r=(n&t.childLanes)!==0,r||=(Wi(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return yc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),I($a,$a.current),r)break;return null;case 22:return t.lanes=0,$s(e,t,n,t.pendingProps);case 24:Bi(t,J,e.memoizedState.cache)}return bc(e,t,n)}function Cc(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps)Js=!0;else{if(!xc(e,n)&&!(t.flags&128))return Js=!1,Sc(e,t,n);Js=!!(e.flags&131072)}else Js=!1,Ei&&t.flags&1048576&&bi(t,pi,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=va(t.elementType),t.type=e,typeof e==`function`)ei(e)?(r=Ls(e,r),t.tag=1,t=cc(null,t,e,r,n)):(t.tag=0,t=oc(null,t,e,r,n));else{if(e!=null){var i=e.$$typeof;if(i===S){t.tag=11,t=Xs(null,t,e,r,n);break a}else if(i===T){t.tag=14,t=Zs(null,t,e,r,n);break a}}throw t=te(e)||e,Error(a(306,t,``))}}return t;case 0:return oc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,i=Ls(r,t.pendingProps),cc(e,t,r,i,n);case 3:a:{if(ue(t,t.stateNode.containerInfo),e===null)throw Error(a(387));r=t.pendingProps;var o=t.memoizedState;i=o.element,Na(e,t),Ba(t,r,null,n);var s=t.memoizedState;if(r=s.cache,Bi(t,J,r),r!==o.cache&&Ui(t,[J],n,!0),za(),r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=lc(e,t,r,n);break a}else if(r!==i){i=li(Error(a(424)),t),Ii(i),t=lc(e,t,r,n);break a}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(Ti=lf(e.firstChild),wi=t,Ei=!0,Di=null,Oi=!0,n=Aa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(Pi(),r===i){t=bc(e,t,n);break a}Ys(e,t,r,n)}t=t.child}return t;case 26:return ac(e,t),e===null?(n=kf(t.type,null,t.pendingProps,null))?t.memoizedState=n:Ei||(n=t.type,e=t.pendingProps,r=Vd(ce.current).createElement(n),r[st]=t,r[ct]=e,Fd(r,n,e),bt(r),t.stateNode=r):t.memoizedState=kf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return fe(t),e===null&&Ei&&(r=t.stateNode=ff(t.type,t.pendingProps,ce.current),wi=t,Oi=!0,i=Ti,Qd(t.type)?($=i,Ti=lf(r.firstChild)):Ti=i),Ys(e,t,t.pendingProps.children,n),ac(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Ei&&((i=r=Ti)&&(r=nf(r,t.type,t.pendingProps,Oi),r===null?i=!1:(t.stateNode=r,wi=t,Ti=lf(r.firstChild),Oi=!1,i=!0)),i||Ai(t)),fe(t),i=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Wd(i,o)?r=null:s!==null&&Wd(i,s)&&(t.flags|=32),t.memoizedState!==null&&(i=po(e,t,go,null,null,n),Qf._currentValue=i),ac(e,t),Ys(e,t,r,n),t.child;case 6:return e===null&&Ei&&((e=n=Ti)&&(n=rf(n,t.pendingProps,Oi),n===null?e=!1:(t.stateNode=n,wi=t,Ti=null,e=!0)),e||Ai(t)),null;case 13:return pc(e,t,n);case 4:return ue(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=ka(t,null,r,n):Ys(e,t,r,n),t.child;case 11:return Xs(e,t,t.type,t.pendingProps,n);case 7:return Ys(e,t,t.pendingProps,n),t.child;case 8:return Ys(e,t,t.pendingProps.children,n),t.child;case 12:return Ys(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,Bi(t,t.type,r.value),Ys(e,t,r.children,n),t.child;case 9:return i=t.type._context,r=t.pendingProps.children,Ki(t),i=qi(i),r=r(i),t.flags|=1,Ys(e,t,r,n),t.child;case 14:return Zs(e,t,t.type,t.pendingProps,n);case 15:return Qs(e,t,t.type,t.pendingProps,n);case 19:return yc(e,t,n);case 31:return ic(e,t,n);case 22:return $s(e,t,n,t.pendingProps);case 24:return Ki(t),r=qi(J),e===null?(i=la(),i===null&&(i=Nl,o=Qi(),i.pooledCache=o,o.refCount++,o!==null&&(i.pooledCacheLanes|=n),i=o),t.memoizedState={parent:r,cache:i},Ma(t),Bi(t,J,i)):((e.lanes&n)!==0&&(Na(e,t),Ba(t,null,null,n),za()),i=e.memoizedState,o=t.memoizedState,i.parent===r?(r=o.cache,Bi(t,J,r),r!==i.cache&&Ui(t,[J],n,!0)):(i={parent:r,cache:r},t.memoizedState=i,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=i),Bi(t,J,r))),Ys(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(a(156,t.tag))}function wc(e){e.flags|=4}function Tc(e,t,n,r,i){if((t=(e.mode&32)!=0)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(Su())e.flags|=8192;else throw ya=ha,pa}else e.flags&=-16777217}function Ec(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!Wf(t))if(Su())e.flags|=8192;else throw ya=ha,pa}function Dc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Ye(),e.lanes|=t,ql|=t)}function Oc(e,t){if(!Ei)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function kc(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&65011712,r|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Ac(e,t,n){var r=t.pendingProps;switch(Si(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return kc(t),null;case 1:return kc(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),Vi(J),de(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Ni(t)?wc(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Fi())),kc(t),null;case 26:var i=t.type,o=t.memoizedState;return e===null?(wc(t),o===null?(kc(t),Tc(t,i,null,r,n)):(kc(t),Ec(t,o))):o?o===e.memoizedState?(kc(t),t.flags&=-16777217):(wc(t),kc(t),Ec(t,o)):(e=e.memoizedProps,e!==r&&wc(t),kc(t),Tc(t,i,e,r,n)),null;case 27:if(pe(t),n=ce.current,i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&wc(t);else{if(!r){if(t.stateNode===null)throw Error(a(166));return kc(t),null}e=oe.current,Ni(t)?ji(t,e):(e=ff(i,r,n),t.stateNode=e,wc(t))}return kc(t),null;case 5:if(pe(t),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&wc(t);else{if(!r){if(t.stateNode===null)throw Error(a(166));return kc(t),null}if(o=oe.current,Ni(t))ji(t,o);else{var s=Vd(ce.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,i);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,i);break;default:switch(i){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,i);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,i);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(i,{is:r.is}):s.createElement(i)}}o[st]=t,o[ct]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Fd(o,i,r),i){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&wc(t)}}return kc(t),Tc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&wc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(a(166));if(e=ce.current,Ni(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,i=wi,i!==null)switch(i.tag){case 27:case 5:r=i.memoizedProps}e[st]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Md(e.nodeValue,n)),e||Ai(t,!0)}else e=Vd(e).createTextNode(r),e[st]=t,t.stateNode=e}return kc(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Ni(t),n!==null){if(e===null){if(!r)throw Error(a(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(a(557));e[st]=t}else Pi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;kc(t),e=!1}else n=Fi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Qa(t),t):(Qa(t),null);if(t.flags&128)throw Error(a(558))}return kc(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=Ni(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(a(318));if(i=t.memoizedState,i=i===null?null:i.dehydrated,!i)throw Error(a(317));i[st]=t}else Pi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;kc(t),i=!1}else i=Fi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(Qa(t),t):(Qa(t),null)}return Qa(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,i=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(i=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==i&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Dc(t,t.updateQueue),kc(t),null);case 4:return de(),e===null&&Sd(t.stateNode.containerInfo),kc(t),null;case 10:return Vi(t.type),kc(t),null;case 19:if(ae($a),r=t.memoizedState,r===null)return kc(t),null;if(i=(t.flags&128)!=0,o=r.rendering,o===null)if(i)Oc(r,!1);else{if(Hl!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=eo(e),o!==null){for(t.flags|=128,Oc(r,!1),e=o.updateQueue,t.updateQueue=e,Dc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)ni(n,e),n=n.sibling;return I($a,$a.current&1|2),Ei&&yi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Ee()>$l&&(t.flags|=128,i=!0,Oc(r,!1),t.lanes=4194304)}else{if(!i)if(e=eo(o),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Dc(t,e),Oc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!Ei)return kc(t),null}else 2*Ee()-r.renderingStartTime>$l&&n!==536870912&&(t.flags|=128,i=!0,Oc(r,!1),t.lanes=4194304);r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(kc(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Ee(),e.sibling=null,n=$a.current,I($a,i?n&1|2:n&1),Ei&&yi(t,r.treeForkCount),e);case 22:case 23:return Qa(t),Ga(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(kc(t),t.subtreeFlags&6&&(t.flags|=8192)):kc(t),n=t.updateQueue,n!==null&&Dc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&ae(ca),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Vi(J),kc(t),null;case 25:return null;case 30:return null}throw Error(a(156,t.tag))}function jc(e,t){switch(Si(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Vi(J),de(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return pe(t),null;case 31:if(t.memoizedState!==null){if(Qa(t),t.alternate===null)throw Error(a(340));Pi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Qa(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(a(340));Pi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ae($a),null;case 4:return de(),null;case 10:return Vi(t.type),null;case 22:case 23:return Qa(t),Ga(),e!==null&&ae(ca),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Vi(J),null;case 25:return null;default:return null}}function Mc(e,t){switch(Si(t),t.tag){case 3:Vi(J),de();break;case 26:case 27:case 5:pe(t);break;case 4:de();break;case 31:t.memoizedState!==null&&Qa(t);break;case 13:Qa(t);break;case 19:ae($a);break;case 10:Vi(t.type);break;case 22:case 23:Qa(t),Ga(),e!==null&&ae(ca);break;case 24:Vi(J)}}function Nc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Uu(t,t.return,e)}}function Pc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Uu(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Uu(t,t.return,e)}}function Fc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Ha(t,n)}catch(t){Uu(e,e.return,t)}}}function Ic(e,t,n){n.props=Ls(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Uu(e,t,n)}}function Lc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Uu(e,t,n)}}function Rc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Uu(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Uu(e,t,n)}else n.current=null}function zc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Uu(e,e.return,t)}}function Bc(e,t,n){try{var r=e.stateNode;Id(r,e.type,n,t),r[ct]=t}catch(t){Uu(e,e.return,t)}}function Vc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Qd(e.type)||e.tag===4}function Hc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Vc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Qd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Uc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=en));else if(r!==4&&(r===27&&Qd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Uc(e,t,n),e=e.sibling;e!==null;)Uc(e,t,n),e=e.sibling}function Wc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&Qd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Wc(e,t,n),e=e.sibling;e!==null;)Wc(e,t,n),e=e.sibling}function Gc(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Fd(t,r,n),t[st]=e,t[ct]=n}catch(t){Uu(e,e.return,t)}}var Kc=!1,qc=!1,Jc=!1,Yc=typeof WeakSet==`function`?WeakSet:Set,Xc=null;function Zc(e,t){if(e=e.containerInfo,zd=sp,e=xr(e),Sr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||i!==0&&f.nodeType!==3||(c=s+i),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===i&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(Bd={focusedElem:e,selectionRange:n},sp=!1,Xc=t;Xc!==null;)if(t=Xc,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,Xc=e;else for(;Xc!==null;){switch(t=Xc,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)i=e[n],i.ref.impl=i.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&o!==null){e=void 0,n=t,i=o.memoizedProps,o=o.memoizedState,r=n.stateNode;try{var h=Ls(n.type,i);e=r.getSnapshotBeforeUpdate(h,o),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){Uu(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)tf(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:tf(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(a(163))}if(e=t.sibling,e!==null){e.return=t.return,Xc=e;break}Xc=t.return}}function Qc(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:pl(e,n),r&4&&Nc(5,n);break;case 1:if(pl(e,n),r&4)if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){Uu(n,n.return,e)}else{var i=Ls(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Uu(n,n.return,e)}}r&64&&Fc(n),r&512&&Lc(n,n.return);break;case 3:if(pl(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{Ha(e,t)}catch(e){Uu(n,n.return,e)}}break;case 27:t===null&&r&4&&Gc(n);case 26:case 5:pl(e,n),t===null&&r&4&&zc(n),r&512&&Lc(n,n.return);break;case 12:pl(e,n);break;case 31:pl(e,n),r&4&&il(e,n);break;case 13:pl(e,n),r&4&&al(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=qu.bind(null,n),cf(e,n))));break;case 22:if(r=n.memoizedState!==null||Kc,!r){t=t!==null&&t.memoizedState!==null||qc,i=Kc;var a=qc;Kc=r,(qc=t)&&!a?hl(e,n,(n.subtreeFlags&8772)!=0):pl(e,n),Kc=i,qc=a}break;case 30:break;default:pl(e,n)}}function $c(e){var t=e.alternate;t!==null&&(e.alternate=null,$c(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&ht(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var el=null,tl=!1;function nl(e,t,n){for(n=n.child;n!==null;)rl(e,t,n),n=n.sibling}function rl(e,t,n){if(Ie&&typeof Ie.onCommitFiberUnmount==`function`)try{Ie.onCommitFiberUnmount(Fe,n)}catch{}switch(n.tag){case 26:qc||Rc(n,t),nl(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:qc||Rc(n,t);var r=el,i=tl;Qd(n.type)&&(el=n.stateNode,tl=!1),nl(e,t,n),pf(n.stateNode),el=r,tl=i;break;case 5:qc||Rc(n,t);case 6:if(r=el,i=tl,el=null,nl(e,t,n),el=r,tl=i,el!==null)if(tl)try{(el.nodeType===9?el.body:el.nodeName===`HTML`?el.ownerDocument.body:el).removeChild(n.stateNode)}catch(e){Uu(n,t,e)}else try{el.removeChild(n.stateNode)}catch(e){Uu(n,t,e)}break;case 18:el!==null&&(tl?(e=el,$d(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Np(e)):$d(el,n.stateNode));break;case 4:r=el,i=tl,el=n.stateNode.containerInfo,tl=!0,nl(e,t,n),el=r,tl=i;break;case 0:case 11:case 14:case 15:Pc(2,n,t),qc||Pc(4,n,t),nl(e,t,n);break;case 1:qc||(Rc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&Ic(n,t,r)),nl(e,t,n);break;case 21:nl(e,t,n);break;case 22:qc=(r=qc)||n.memoizedState!==null,nl(e,t,n),qc=r;break;default:nl(e,t,n)}}function il(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Np(e)}catch(e){Uu(t,t.return,e)}}}function al(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Np(e)}catch(e){Uu(t,t.return,e)}}function ol(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Yc),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Yc),t;default:throw Error(a(435,e.tag))}}function sl(e,t){var n=ol(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=Ju.bind(null,e,t);t.then(r,r)}})}function cl(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r],o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 27:if(Qd(c.type)){el=c.stateNode,tl=!1;break a}break;case 5:el=c.stateNode,tl=!1;break a;case 3:case 4:el=c.stateNode.containerInfo,tl=!0;break a}c=c.return}if(el===null)throw Error(a(160));rl(o,s,i),el=null,tl=!1,o=i.alternate,o!==null&&(o.return=null),i.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)ul(t,e),t=t.sibling}var ll=null;function ul(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:cl(t,e),dl(e),r&4&&(Pc(3,e,e.return),Nc(3,e),Pc(5,e,e.return));break;case 1:cl(t,e),dl(e),r&512&&(qc||n===null||Rc(n,n.return)),r&64&&Kc&&(e=e.updateQueue,e!==null&&(r=e.callbacks,r!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?r:n.concat(r))));break;case 26:var i=ll;if(cl(t,e),dl(e),r&512&&(qc||n===null||Rc(n,n.return)),r&4){var o=n===null?null:n.memoizedState;if(r=e.memoizedState,n===null)if(r===null)if(e.stateNode===null){a:{r=e.type,n=e.memoizedProps,i=i.ownerDocument||i;b:switch(r){case`title`:o=i.getElementsByTagName(`title`)[0],(!o||o[mt]||o[st]||o.namespaceURI===`http://www.w3.org/2000/svg`||o.hasAttribute(`itemprop`))&&(o=i.createElement(r),i.head.insertBefore(o,i.querySelector(`head > title`))),Fd(o,r,n),o[st]=e,bt(o),r=o;break a;case`link`:var s=Vf(`link`,`href`,i).get(r+(n.href||``));if(s){for(var c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&o.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&o.getAttribute(`title`)===(n.title==null?null:n.title)&&o.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){s.splice(c,1);break b}}o=i.createElement(r),Fd(o,r,n),i.head.appendChild(o);break;case`meta`:if(s=Vf(`meta`,`content`,i).get(r+(n.content||``))){for(c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`content`)===(n.content==null?null:``+n.content)&&o.getAttribute(`name`)===(n.name==null?null:n.name)&&o.getAttribute(`property`)===(n.property==null?null:n.property)&&o.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&o.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){s.splice(c,1);break b}}o=i.createElement(r),Fd(o,r,n),i.head.appendChild(o);break;default:throw Error(a(468,r))}o[st]=e,bt(o),r=o}e.stateNode=r}else Hf(i,e.type,e.stateNode);else e.stateNode=If(i,r,e.memoizedProps);else o===r?r===null&&e.stateNode!==null&&Bc(e,e.memoizedProps,n.memoizedProps):(o===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):o.count--,r===null?Hf(i,e.type,e.stateNode):If(i,r,e.memoizedProps))}break;case 27:cl(t,e),dl(e),r&512&&(qc||n===null||Rc(n,n.return)),n!==null&&r&4&&Bc(e,e.memoizedProps,n.memoizedProps);break;case 5:if(cl(t,e),dl(e),r&512&&(qc||n===null||Rc(n,n.return)),e.flags&32){i=e.stateNode;try{Kt(i,``)}catch(t){Uu(e,e.return,t)}}r&4&&e.stateNode!=null&&(i=e.memoizedProps,Bc(e,i,n===null?i:n.memoizedProps)),r&1024&&(Jc=!0);break;case 6:if(cl(t,e),dl(e),r&4){if(e.stateNode===null)throw Error(a(162));r=e.memoizedProps,n=e.stateNode;try{n.nodeValue=r}catch(t){Uu(e,e.return,t)}}break;case 3:if(Bf=null,i=ll,ll=gf(t.containerInfo),cl(t,e),ll=i,dl(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Np(t.containerInfo)}catch(t){Uu(e,e.return,t)}Jc&&(Jc=!1,fl(e));break;case 4:r=ll,ll=gf(e.stateNode.containerInfo),cl(t,e),dl(e),ll=r;break;case 12:cl(t,e),dl(e);break;case 31:cl(t,e),dl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,sl(e,r)));break;case 13:cl(t,e),dl(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(Zl=Ee()),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,sl(e,r)));break;case 22:i=e.memoizedState!==null;var l=n!==null&&n.memoizedState!==null,u=Kc,d=qc;if(Kc=u||i,qc=d||l,cl(t,e),qc=d,Kc=u,dl(e),r&8192)a:for(t=e.stateNode,t._visibility=i?t._visibility&-2:t._visibility|1,i&&(n===null||l||Kc||qc||ml(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){l=n=t;try{if(o=l.stateNode,i)s=o.style,typeof s.setProperty==`function`?s.setProperty(`display`,`none`,`important`):s.display=`none`;else{c=l.stateNode;var f=l.memoizedProps.style,p=f!=null&&f.hasOwnProperty(`display`)?f.display:null;c.style.display=p==null||typeof p==`boolean`?``:(``+p).trim()}}catch(e){Uu(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=i?``:l.memoizedProps}catch(e){Uu(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;i?ef(m,!0):ef(l.stateNode,!1)}catch(e){Uu(l,l.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}r&4&&(r=e.updateQueue,r!==null&&(n=r.retryQueue,n!==null&&(r.retryQueue=null,sl(e,n))));break;case 19:cl(t,e),dl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,sl(e,r)));break;case 30:break;case 21:break;default:cl(t,e),dl(e)}}function dl(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Vc(r)){n=r;break}r=r.return}if(n==null)throw Error(a(160));switch(n.tag){case 27:var i=n.stateNode;Wc(e,Hc(e),i);break;case 5:var o=n.stateNode;n.flags&32&&(Kt(o,``),n.flags&=-33),Wc(e,Hc(e),o);break;case 3:case 4:var s=n.stateNode.containerInfo;Uc(e,Hc(e),s);break;default:throw Error(a(161))}}catch(t){Uu(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function fl(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;fl(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function pl(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Qc(e,t.alternate,t),t=t.sibling}function ml(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Pc(4,t,t.return),ml(t);break;case 1:Rc(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount==`function`&&Ic(t,t.return,n),ml(t);break;case 27:pf(t.stateNode);case 26:case 5:Rc(t,t.return),ml(t);break;case 22:t.memoizedState===null&&ml(t);break;case 30:ml(t);break;default:ml(t)}e=e.sibling}}function hl(e,t,n){for(n&&=(t.subtreeFlags&8772)!=0,t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags;switch(a.tag){case 0:case 11:case 15:hl(i,a,n),Nc(4,a);break;case 1:if(hl(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){Uu(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var s=r.stateNode;try{var c=i.shared.hiddenCallbacks;if(c!==null)for(i.shared.hiddenCallbacks=null,i=0;i<c.length;i++)Va(c[i],s)}catch(e){Uu(r,r.return,e)}}n&&o&64&&Fc(a),Lc(a,a.return);break;case 27:Gc(a);case 26:case 5:hl(i,a,n),n&&r===null&&o&4&&zc(a),Lc(a,a.return);break;case 12:hl(i,a,n);break;case 31:hl(i,a,n),n&&o&4&&il(i,a);break;case 13:hl(i,a,n),n&&o&4&&al(i,a);break;case 22:a.memoizedState===null&&hl(i,a,n),Lc(a,a.return);break;case 30:break;default:hl(i,a,n)}t=t.sibling}}function gl(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&$i(n))}function _l(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&$i(e))}function vl(e,t,n,r){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)yl(e,t,n,r),t=t.sibling}function yl(e,t,n,r){var i=t.flags;switch(t.tag){case 0:case 11:case 15:vl(e,t,n,r),i&2048&&Nc(9,t);break;case 1:vl(e,t,n,r);break;case 3:vl(e,t,n,r),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&$i(e)));break;case 12:if(i&2048){vl(e,t,n,r),e=t.stateNode;try{var a=t.memoizedProps,o=a.id,s=a.onPostCommit;typeof s==`function`&&s(o,t.alternate===null?`mount`:`update`,e.passiveEffectDuration,-0)}catch(e){Uu(t,t.return,e)}}else vl(e,t,n,r);break;case 31:vl(e,t,n,r);break;case 13:vl(e,t,n,r);break;case 23:break;case 22:a=t.stateNode,o=t.alternate,t.memoizedState===null?a._visibility&2?vl(e,t,n,r):(a._visibility|=2,bl(e,t,n,r,(t.subtreeFlags&10256)!=0||!1)):a._visibility&2?vl(e,t,n,r):xl(e,t),i&2048&&gl(o,t);break;case 24:vl(e,t,n,r),i&2048&&_l(t.alternate,t);break;default:vl(e,t,n,r)}}function bl(e,t,n,r,i){for(i&&=(t.subtreeFlags&10256)!=0||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:bl(a,o,s,c,i),Nc(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,bl(a,o,s,c,i)):u._visibility&2?bl(a,o,s,c,i):xl(a,o),i&&l&2048&&gl(o.alternate,o);break;case 24:bl(a,o,s,c,i),i&&l&2048&&_l(o.alternate,o);break;default:bl(a,o,s,c,i)}t=t.sibling}}function xl(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:xl(n,r),i&2048&&gl(r.alternate,r);break;case 24:xl(n,r),i&2048&&_l(r.alternate,r);break;default:xl(n,r)}t=t.sibling}}var Sl=8192;function Cl(e,t,n){if(e.subtreeFlags&Sl)for(e=e.child;e!==null;)wl(e,t,n),e=e.sibling}function wl(e,t,n){switch(e.tag){case 26:Cl(e,t,n),e.flags&Sl&&e.memoizedState!==null&&Gf(n,ll,e.memoizedState,e.memoizedProps);break;case 5:Cl(e,t,n);break;case 3:case 4:var r=ll;ll=gf(e.stateNode.containerInfo),Cl(e,t,n),ll=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Sl,Sl=16777216,Cl(e,t,n),Sl=r):Cl(e,t,n));break;default:Cl(e,t,n)}}function Tl(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function El(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];Xc=r,kl(r,e)}Tl(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Dl(e),e=e.sibling}function Dl(e){switch(e.tag){case 0:case 11:case 15:El(e),e.flags&2048&&Pc(9,e,e.return);break;case 3:El(e);break;case 12:El(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Ol(e)):El(e);break;default:El(e)}}function Ol(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];Xc=r,kl(r,e)}Tl(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Pc(8,t,t.return),Ol(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,Ol(t));break;default:Ol(t)}e=e.sibling}}function kl(e,t){for(;Xc!==null;){var n=Xc;switch(n.tag){case 0:case 11:case 15:Pc(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:$i(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,Xc=r;else a:for(n=e;Xc!==null;){r=Xc;var i=r.sibling,a=r.return;if($c(r),r===n){Xc=null;break a}if(i!==null){i.return=a,Xc=i;break a}Xc=a}}}var Al={getCacheForType:function(e){var t=qi(J),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return qi(J).controller.signal}},jl=typeof WeakMap==`function`?WeakMap:Map,Ml=0,Nl=null,Pl=null,Fl=0,Il=0,Ll=null,Rl=!1,zl=!1,Bl=!1,Vl=0,Hl=0,Ul=0,Wl=0,Gl=0,Kl=0,ql=0,Jl=null,Yl=null,Xl=!1,Zl=0,Ql=0,$l=1/0,eu=null,tu=null,nu=0,ru=null,iu=null,au=0,ou=0,su=null,cu=null,lu=0,uu=null;function du(){return Ml&2&&Fl!==0?Fl&-Fl:N.T===null?it():ud()}function fu(){if(Kl===0)if(!(Fl&536870912)||Ei){var e=Ue;Ue<<=1,!(Ue&3932160)&&(Ue=262144),Kl=e}else Kl=536870912;return e=Ka.current,e!==null&&(e.flags|=32),Kl}function pu(e,t,n){(e===Nl&&(Il===2||Il===9)||e.cancelPendingCommit!==null)&&(bu(e,0),_u(e,Fl,Kl,!1)),Ze(e,n),(!(Ml&2)||e!==Nl)&&(e===Nl&&(!(Ml&2)&&(Wl|=n),Hl===4&&_u(e,Fl,Kl,!1)),nd(e))}function mu(e,t,n){if(Ml&6)throw Error(a(327));var r=!n&&(t&127)==0&&(t&e.expiredLanes)===0||qe(e,t),i=r?Ou(e,t):Eu(e,t,!0),o=r;do{if(i===0){zl&&!r&&_u(e,t,0,!1);break}else{if(n=e.current.alternate,o&&!gu(n)){i=Eu(e,t,!1),o=!1;continue}if(i===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;i=Jl;var l=c.current.memoizedState.isDehydrated;if(l&&(bu(c,s).flags|=256),s=Eu(c,s,!1),s!==2){if(Bl&&!l){c.errorRecoveryDisabledLanes|=o,Wl|=o,i=4;break a}o=Yl,Yl=i,o!==null&&(Yl===null?Yl=o:Yl.push.apply(Yl,o))}i=s}if(o=!1,i!==2)continue}}if(i===1){bu(e,0),_u(e,t,0,!0);break}a:{switch(r=e,o=i,o){case 0:case 1:throw Error(a(345));case 4:if((t&4194048)!==t)break;case 6:_u(r,t,Kl,!Rl);break a;case 2:Yl=null;break;case 3:case 5:break;default:throw Error(a(329))}if((t&62914560)===t&&(i=Zl+300-Ee(),10<i)){if(_u(r,t,Kl,!Rl),Ke(r,0,!0)!==0)break a;au=t,r.timeoutHandle=qd(hu.bind(null,r,n,Yl,eu,Xl,t,Kl,Wl,ql,Rl,o,`Throttled`,-0,0),i);break a}hu(r,n,Yl,eu,Xl,t,Kl,Wl,ql,Rl,o,null,-0,0)}}break}while(1);nd(e)}function hu(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(e.timeoutHandle=-1,d=t.subtreeFlags,d&8192||(d&16785408)==16785408){d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:en},wl(t,a,d);var m=(a&62914560)===a?Zl-Ee():(a&4194048)===a?Ql-Ee():0;if(m=qf(d,m),m!==null){au=a,e.cancelPendingCommit=m(Fu.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),_u(e,a,o,!l);return}}Fu(e,t,a,n,r,i,o,s,c)}function gu(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!gr(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function _u(e,t,n,r){t&=~Gl,t&=~Wl,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Re(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&$e(e,n,t)}function vu(){return Ml&6?!0:(rd(0,!1),!1)}function yu(){if(Pl!==null){if(Il===0)var e=Pl.return;else e=Pl,zi=Ri=null,yo(e),Sa=null,Ca=0,e=Pl;for(;e!==null;)Mc(e.alternate,e),e=e.return;Pl=null}}function bu(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,Jd(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),au=0,yu(),Nl=e,Pl=n=ti(e.current,null),Fl=t,Il=0,Ll=null,Rl=!1,zl=qe(e,t),Bl=!1,ql=Kl=Gl=Wl=Ul=Hl=0,Yl=Jl=null,Xl=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-Re(r),a=1<<i;t|=e[i],r&=~a}return Vl=t,Kr(),n}function xu(e,t){Z=null,N.H=ks,t===fa||t===ma?(t=ba(),Il=3):t===pa?(t=ba(),Il=4):Il=t===qs?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,Ll=t,Pl===null&&(Hl=1,Vs(e,li(t,e.current)))}function Su(){var e=Ka.current;return e===null?!0:(Fl&4194048)===Fl?qa===null:(Fl&62914560)===Fl||Fl&536870912?e===qa:!1}function Cu(){var e=N.H;return N.H=ks,e===null?ks:e}function wu(){var e=N.A;return N.A=Al,e}function Tu(){Hl=4,Rl||(Fl&4194048)!==Fl&&Ka.current!==null||(zl=!0),!(Ul&134217727)&&!(Wl&134217727)||Nl===null||_u(Nl,Fl,Kl,!1)}function Eu(e,t,n){var r=Ml;Ml|=2;var i=Cu(),a=wu();(Nl!==e||Fl!==t)&&(eu=null,bu(e,t)),t=!1;var o=Hl;a:do try{if(Il!==0&&Pl!==null){var s=Pl,c=Ll;switch(Il){case 8:yu(),o=6;break a;case 3:case 2:case 9:case 6:Ka.current===null&&(t=!0);var l=Il;if(Il=0,Ll=null,Mu(e,s,c,l),n&&zl){o=0;break a}break;default:l=Il,Il=0,Ll=null,Mu(e,s,c,l)}}Du(),o=Hl;break}catch(t){xu(e,t)}while(1);return t&&e.shellSuspendCounter++,zi=Ri=null,Ml=r,N.H=i,N.A=a,Pl===null&&(Nl=null,Fl=0,Kr()),o}function Du(){for(;Pl!==null;)Au(Pl)}function Ou(e,t){var n=Ml;Ml|=2;var r=Cu(),i=wu();Nl!==e||Fl!==t?(eu=null,$l=Ee()+500,bu(e,t)):zl=qe(e,t);a:do try{if(Il!==0&&Pl!==null){t=Pl;var o=Ll;b:switch(Il){case 1:Il=0,Ll=null,Mu(e,t,o,1);break;case 2:case 9:if(ga(o)){Il=0,Ll=null,ju(t);break}t=function(){Il!==2&&Il!==9||Nl!==e||(Il=7),nd(e)},o.then(t,t);break a;case 3:Il=7;break a;case 4:Il=5;break a;case 7:ga(o)?(Il=0,Ll=null,ju(t)):(Il=0,Ll=null,Mu(e,t,o,7));break;case 5:var s=null;switch(Pl.tag){case 26:s=Pl.memoizedState;case 5:case 27:var c=Pl;if(s?Wf(s):c.stateNode.complete){Il=0,Ll=null;var l=c.sibling;if(l!==null)Pl=l;else{var u=c.return;u===null?Pl=null:(Pl=u,Nu(u))}break b}}Il=0,Ll=null,Mu(e,t,o,5);break;case 6:Il=0,Ll=null,Mu(e,t,o,6);break;case 8:yu(),Hl=6;break a;default:throw Error(a(462))}}ku();break}catch(t){xu(e,t)}while(1);return zi=Ri=null,N.H=r,N.A=i,Ml=n,Pl===null?(Nl=null,Fl=0,Kr(),Hl):0}function ku(){for(;Pl!==null&&!we();)Au(Pl)}function Au(e){var t=Cc(e.alternate,e,Vl);e.memoizedProps=e.pendingProps,t===null?Nu(e):Pl=t}function ju(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=sc(n,t,t.pendingProps,t.type,void 0,Fl);break;case 11:t=sc(n,t,t.pendingProps,t.type.render,t.ref,Fl);break;case 5:yo(t);default:Mc(n,t),t=Pl=ni(t,Vl),t=Cc(n,t,Vl)}e.memoizedProps=e.pendingProps,t===null?Nu(e):Pl=t}function Mu(e,t,n,r){zi=Ri=null,yo(t),Sa=null,Ca=0;var i=t.return;try{if(Ks(e,i,t,n,Fl)){Hl=1,Vs(e,li(n,e.current)),Pl=null;return}}catch(t){if(i!==null)throw Pl=i,t;Hl=1,Vs(e,li(n,e.current)),Pl=null;return}t.flags&32768?(Ei||r===1?e=!0:zl||Fl&536870912?e=!1:(Rl=e=!0,(r===2||r===9||r===3||r===6)&&(r=Ka.current,r!==null&&r.tag===13&&(r.flags|=16384))),Pu(t,e)):Nu(t)}function Nu(e){var t=e;do{if(t.flags&32768){Pu(t,Rl);return}e=t.return;var n=Ac(t.alternate,t,Vl);if(n!==null){Pl=n;return}if(t=t.sibling,t!==null){Pl=t;return}Pl=t=e}while(t!==null);Hl===0&&(Hl=5)}function Pu(e,t){do{var n=jc(e.alternate,e);if(n!==null){n.flags&=32767,Pl=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){Pl=e;return}Pl=e=n}while(e!==null);Hl=6,Pl=null}function Fu(e,t,n,r,i,o,s,c,l){e.cancelPendingCommit=null;do Bu();while(nu!==0);if(Ml&6)throw Error(a(327));if(t!==null){if(t===e.current)throw Error(a(177));if(o=t.lanes|t.childLanes,o|=Gr,Qe(e,n,o,s,c,l),e===Nl&&(Pl=Nl=null,Fl=0),iu=t,ru=e,au=n,ou=o,su=i,cu=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,Yu(Ae,function(){return Vu(),null})):(e.callbackNode=null,e.callbackPriority=0),r=(t.flags&13878)!=0,t.subtreeFlags&13878||r){r=N.T,N.T=null,i=P.p,P.p=2,s=Ml,Ml|=4;try{Zc(e,t,n)}finally{Ml=s,P.p=i,N.T=r}}nu=1,Iu(),Lu(),Ru()}}function Iu(){if(nu===1){nu=0;var e=ru,t=iu,n=(t.flags&13878)!=0;if(t.subtreeFlags&13878||n){n=N.T,N.T=null;var r=P.p;P.p=2;var i=Ml;Ml|=4;try{ul(t,e);var a=Bd,o=xr(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&br(s.ownerDocument.documentElement,s)){if(c!==null&&Sr(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=yr(s,h),v=yr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}sp=!!zd,Bd=zd=null}finally{Ml=i,P.p=r,N.T=n}}e.current=t,nu=2}}function Lu(){if(nu===2){nu=0;var e=ru,t=iu,n=(t.flags&8772)!=0;if(t.subtreeFlags&8772||n){n=N.T,N.T=null;var r=P.p;P.p=2;var i=Ml;Ml|=4;try{Qc(e,t.alternate,t)}finally{Ml=i,P.p=r,N.T=n}}nu=3}}function Ru(){if(nu===4||nu===3){nu=0,Te();var e=ru,t=iu,n=au,r=cu;t.subtreeFlags&10256||t.flags&10256?nu=5:(nu=0,iu=ru=null,zu(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(tu=null),rt(n),t=t.stateNode,Ie&&typeof Ie.onCommitFiberRoot==`function`)try{Ie.onCommitFiberRoot(Fe,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=N.T,i=P.p,P.p=2,N.T=null;try{for(var a=e.onRecoverableError,o=0;o<r.length;o++){var s=r[o];a(s.value,{componentStack:s.stack})}}finally{N.T=t,P.p=i}}au&3&&Bu(),nd(e),i=e.pendingLanes,n&261930&&i&42?e===uu?lu++:(lu=0,uu=e):lu=0,rd(0,!1)}}function zu(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,$i(t)))}function Bu(){return Iu(),Lu(),Ru(),Vu()}function Vu(){if(nu!==5)return!1;var e=ru,t=ou;ou=0;var n=rt(au),r=N.T,i=P.p;try{P.p=32>n?32:n,N.T=null,n=su,su=null;var o=ru,s=au;if(nu=0,iu=ru=null,au=0,Ml&6)throw Error(a(331));var c=Ml;if(Ml|=4,Dl(o.current),yl(o,o.current,s,n),Ml=c,rd(0,!1),Ie&&typeof Ie.onPostCommitFiberRoot==`function`)try{Ie.onPostCommitFiberRoot(Fe,o)}catch{}return!0}finally{P.p=i,N.T=r,zu(e,t)}}function Hu(e,t,n){t=li(n,t),t=Us(e.stateNode,t,2),e=Fa(e,t,2),e!==null&&(Ze(e,2),nd(e))}function Uu(e,t,n){if(e.tag===3)Hu(e,e,n);else for(;t!==null;){if(t.tag===3){Hu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(tu===null||!tu.has(r))){e=li(n,e),n=Ws(2),r=Fa(t,n,2),r!==null&&(Gs(n,r,t,e),Ze(r,2),nd(r));break}}t=t.return}}function Wu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new jl;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Bl=!0,i.add(n),e=Gu.bind(null,e,t,n),t.then(e,e))}function Gu(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Nl===e&&(Fl&n)===n&&(Hl===4||Hl===3&&(Fl&62914560)===Fl&&300>Ee()-Zl?!(Ml&2)&&bu(e,0):Gl|=n,ql===Fl&&(ql=0)),nd(e)}function Ku(e,t){t===0&&(t=Ye()),e=Jr(e,t),e!==null&&(Ze(e,t),nd(e))}function qu(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Ku(e,n)}function Ju(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(a(314))}r!==null&&r.delete(t),Ku(e,n)}function Yu(e,t){return Se(e,t)}var Xu=null,Zu=null,Qu=!1,$u=!1,ed=!1,td=0;function nd(e){e!==Zu&&e.next===null&&(Zu===null?Xu=Zu=e:Zu=Zu.next=e),$u=!0,Qu||(Qu=!0,ld())}function rd(e,t){if(!ed&&$u){ed=!0;do for(var n=!1,r=Xu;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-Re(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,cd(r,a))}else a=Fl,a=Ke(r,r===Nl?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||qe(r,a)||(n=!0,cd(r,a));r=r.next}while(n);ed=!1}}function id(){ad()}function ad(){$u=Qu=!1;var e=0;td!==0&&Kd()&&(e=td);for(var t=Ee(),n=null,r=Xu;r!==null;){var i=r.next,a=od(r,t);a===0?(r.next=null,n===null?Xu=i:n.next=i,i===null&&(Zu=n)):(n=r,(e!==0||a&3)&&($u=!0)),r=i}nu!==0&&nu!==5||rd(e,!1),td!==0&&(td=0)}function od(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Re(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=Je(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=Nl,n=Fl,n=Ke(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(Il===2||Il===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&Ce(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||qe(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&Ce(r),rt(n)){case 2:case 8:n=ke;break;case 32:n=Ae;break;case 268435456:n=Me;break;default:n=Ae}return r=sd.bind(null,e),n=Se(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&Ce(r),e.callbackPriority=2,e.callbackNode=null,2}function sd(e,t){if(nu!==0&&nu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Bu()&&e.callbackNode!==n)return null;var r=Fl;return r=Ke(e,e===Nl?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(mu(e,r,t),od(e,Ee()),e.callbackNode!=null&&e.callbackNode===n?sd.bind(null,e):null)}function cd(e,t){if(Bu())return null;mu(e,t,!0)}function ld(){Xd(function(){Ml&6?Se(Oe,id):ad()})}function ud(){if(td===0){var e=na;e===0&&(e=He,He<<=1,!(He&261888)&&(He=256)),td=e}return td}function dd(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:$t(``+e)}function fd(e,t){var n=t.ownerDocument.createElement(`input`);return n.name=t.name,n.value=t.value,e.id&&n.setAttribute(`form`,e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function pd(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=dd((i[ct]||null).action),o=r.submitter;o&&(t=(t=o[ct]||null)?dd(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new Sn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(td!==0){var e=o?fd(i,o):new FormData(i);hs(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?fd(i,o):new FormData(i),hs(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var md=0;md<Br.length;md++){var hd=Br[md];Vr(hd.toLowerCase(),`on`+(hd[0].toUpperCase()+hd.slice(1)))}Vr(G,`onAnimationEnd`),Vr(Nr,`onAnimationIteration`),Vr(Pr,`onAnimationStart`),Vr(`dblclick`,`onDoubleClick`),Vr(`focusin`,`onFocus`),Vr(`focusout`,`onBlur`),Vr(Fr,`onTransitionRun`),Vr(Ir,`onTransitionStart`),Vr(Lr,`onTransitionCancel`),Vr(Rr,`onTransitionEnd`),wt(`onMouseEnter`,[`mouseout`,`mouseover`]),wt(`onMouseLeave`,[`mouseout`,`mouseover`]),wt(`onPointerEnter`,[`pointerout`,`pointerover`]),wt(`onPointerLeave`,[`pointerout`,`pointerover`]),Ct(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),Ct(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),Ct(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),Ct(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),Ct(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),Ct(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var gd=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),_d=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(gd));function vd(e,t){t=(t&4)!=0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Hr(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Hr(e)}i.currentTarget=null,a=c}}}}function yd(e,t){var n=t[ut];n===void 0&&(n=t[ut]=new Set);var r=e+`__bubble`;n.has(r)||(Cd(t,e,2,!1),n.add(r))}function bd(e,t,n){var r=0;t&&(r|=4),Cd(n,e,r,t)}var xd=`_reactListening`+Math.random().toString(36).slice(2);function Sd(e){if(!e[xd]){e[xd]=!0,xt.forEach(function(t){t!==`selectionchange`&&(_d.has(t)||bd(t,!1,e),bd(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[xd]||(t[xd]=!0,bd(`selectionchange`,!1,t))}}function Cd(e,t,n,r){switch(mp(t)){case 2:var i=cp;break;case 8:i=lp;break;default:i=up}n=i.bind(null,t,n,e),i=void 0,!dn||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function wd(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var c=r.stateNode.containerInfo;if(c===i)break;if(o===4)for(o=r.return;o!==null;){var l=o.tag;if((l===3||l===4)&&o.stateNode.containerInfo===i)return;o=o.return}for(;c!==null;){if(o=gt(c),o===null)return;if(l=o.tag,l===5||l===6||l===26||l===27){r=a=o;continue a}c=c.parentNode}}r=r.return}cn(function(){var r=a,i=nn(n),o=[];a:{var c=zr.get(e);if(c!==void 0){var l=Sn,u=e;switch(e){case`keypress`:if(_n(n)===0)break a;case`keydown`:case`keyup`:l=zn;break;case`focusin`:u=`focus`,l=jn;break;case`focusout`:u=`blur`,l=jn;break;case`beforeblur`:case`afterblur`:l=jn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=kn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=An;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=Vn;break;case G:case Nr:case Pr:l=Mn;break;case Rr:l=Hn;break;case`scroll`:case`scrollend`:l=wn;break;case`wheel`:l=Un;break;case`copy`:case`cut`:case`paste`:l=L;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=Bn;break;case`toggle`:case`beforetoggle`:l=Wn}var d=(t&4)!=0,f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=ln(m,p),g!=null&&d.push(Td(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),o.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(c=e===`mouseover`||e===`pointerover`,l=e===`mouseout`||e===`pointerout`,c&&n!==tn&&(u=n.relatedTarget||n.fromElement)&&(gt(u)||u[lt]))break a;if((l||c)&&(c=i.window===i?i:(c=i.ownerDocument)?c.defaultView||c.parentWindow:window,l?(u=n.relatedTarget||n.toElement,l=r,u=u?gt(u):null,u!==null&&(f=s(u),d=u.tag,u!==f||d!==5&&d!==27&&d!==6)&&(u=null)):(l=null,u=r),l!==u)){if(d=kn,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=Bn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?c:vt(l),h=u==null?c:vt(u),c=new d(g,m+`leave`,l,n,i),c.target=f,c.relatedTarget=h,g=null,gt(i)===r&&(d=new d(p,m+`enter`,u,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,l&&u)b:{for(d=Dd,p=l,m=u,h=0,g=p;g;g=d(g))h++;g=0;for(var _=m;_;_=d(_))g++;for(;0<h-g;)p=d(p),h--;for(;0<g-h;)m=d(m),g--;for(;h--;){if(p===m||m!==null&&p===m.alternate){d=p;break b}p=d(p),m=d(m)}d=null}else d=null;l!==null&&Od(o,c,l,d,!1),u!==null&&f!==null&&Od(o,f,u,d,!0)}}a:{if(c=r?vt(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var v=B;else if(rr(c))if(cr)v=mr;else{v=fr;var y=dr}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&Xt(r.elementType)&&(v=B):v=pr;if(v&&=v(e,r)){ir(o,v,n,i);break a}y&&y(e,c,r),e===`focusout`&&r&&c.type===`number`&&r.memoizedProps.value!=null&&Ht(c,`number`,c.value)}switch(y=r?vt(r):window,e){case`focusin`:(rr(y)||y.contentEditable===`true`)&&(wr=y,W=r,Tr=null);break;case`focusout`:Tr=W=wr=null;break;case`mousedown`:Er=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Er=!1,Dr(o,n,i);break;case`selectionchange`:if(Cr)break;case`keydown`:case`keyup`:Dr(o,n,i)}var b;if(Kn)b:{switch(e){case`compositionstart`:var x=`onCompositionStart`;break b;case`compositionend`:x=`onCompositionEnd`;break b;case`compositionupdate`:x=`onCompositionUpdate`;break b}x=void 0}else $n?R(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(Yn&&n.locale!==`ko`&&($n||x!==`onCompositionStart`?x===`onCompositionEnd`&&$n&&(b=gn()):(pn=i,mn=`value`in pn?pn.value:pn.textContent,$n=!0)),y=Ed(r,x),0<y.length&&(x=new Nn(x,e,null,n,i),o.push({event:x,listeners:y}),b?x.data=b:(b=Qn(n),b!==null&&(x.data=b)))),(b=Jn?er(e,n):tr(e,n))&&(x=Ed(r,`onBeforeInput`),0<x.length&&(y=new Nn(`onBeforeInput`,`beforeinput`,null,n,i),o.push({event:y,listeners:x}),y.data=b)),pd(o,e,r,n,i)}vd(o,t)})}function Td(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Ed(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=ln(e,n),i!=null&&r.unshift(Td(e,i,a)),i=ln(e,t),i!=null&&r.push(Td(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Dd(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Od(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=ln(n,a),l!=null&&o.unshift(Td(n,l,c))):i||(l=ln(n,a),l!=null&&o.push(Td(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var kd=/\r\n?/g,Ad=/\u0000|\uFFFD/g;function jd(e){return(typeof e==`string`?e:``+e).replace(kd,`
10
- `).replace(Ad,``)}function Md(e,t){return t=jd(t),jd(e)===t}function Nd(e,t,n,r,i,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||Kt(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&Kt(e,``+r);break;case`className`:At(e,`class`,r);break;case`tabIndex`:At(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:At(e,n,r);break;case`style`:Yt(e,r,o);break;case`data`:if(t!==`object`){At(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=$t(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}else typeof o==`function`&&(n===`formAction`?(t!==`input`&&Nd(e,t,`name`,i.name,i,null),Nd(e,t,`formEncType`,i.formEncType,i,null),Nd(e,t,`formMethod`,i.formMethod,i,null),Nd(e,t,`formTarget`,i.formTarget,i,null)):(Nd(e,t,`encType`,i.encType,i,null),Nd(e,t,`method`,i.method,i,null),Nd(e,t,`target`,i.target,i,null)));if(r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=$t(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=en);break;case`onScroll`:r!=null&&yd(`scroll`,e);break;case`onScrollEnd`:r!=null&&yd(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(a(61));if(n=r.__html,n!=null){if(i.children!=null)throw Error(a(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=$t(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:yd(`beforetoggle`,e),yd(`toggle`,e),kt(e,`popover`,r);break;case`xlinkActuate`:jt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:jt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:jt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:jt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:jt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:jt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:jt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:jt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:jt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:kt(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=Zt.get(n)||n,kt(e,n,r))}}function Pd(e,t,n,r,i,o){switch(n){case`style`:Yt(e,r,o);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(a(61));if(n=r.__html,n!=null){if(i.children!=null)throw Error(a(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?Kt(e,r):(typeof r==`number`||typeof r==`bigint`)&&Kt(e,``+r);break;case`onScroll`:r!=null&&yd(`scroll`,e);break;case`onScrollEnd`:r!=null&&yd(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=en);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!St.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(i=n.endsWith(`Capture`),t=n.slice(2,i?n.length-7:void 0),o=e[ct]||null,o=o==null?null:o[n],typeof o==`function`&&e.removeEventListener(t,o,i),typeof r==`function`)){typeof o!=`function`&&o!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,i);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):kt(e,n,r)}}}function Fd(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:yd(`error`,e),yd(`load`,e);var r=!1,i=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:i=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(a(137,t));default:Nd(e,t,o,s,n,null)}}i&&Nd(e,t,`srcSet`,n.srcSet,n,null),r&&Nd(e,t,`src`,n.src,n,null);return;case`input`:yd(`invalid`,e);var c=o=s=i=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:i=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(a(137,t));break;default:Nd(e,t,r,d,n,null)}}Vt(e,o,c,l,u,s,i,!1);return;case`select`:for(i in yd(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(i)&&(c=n[i],c!=null))switch(i){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:Nd(e,t,i,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&Ut(e,!!r,n,!0):Ut(e,!!r,t,!1);return;case`textarea`:for(s in yd(`invalid`,e),o=i=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:i=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(a(91));break;default:Nd(e,t,s,c,n,null)}Gt(e,r,i,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:Nd(e,t,l,r,n,null)}return;case`dialog`:yd(`beforetoggle`,e),yd(`toggle`,e),yd(`cancel`,e),yd(`close`,e);break;case`iframe`:case`object`:yd(`load`,e);break;case`video`:case`audio`:for(r=0;r<gd.length;r++)yd(gd[r],e);break;case`image`:yd(`error`,e),yd(`load`,e);break;case`details`:yd(`toggle`,e);break;case`embed`:case`source`:case`link`:yd(`error`,e),yd(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(a(137,t));default:Nd(e,t,u,r,n,null)}return;default:if(Xt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Pd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&Nd(e,t,c,r,n,null))}function Id(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var i=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||Nd(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:o=m;break;case`name`:i=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(a(137,t));break;default:m!==f&&Nd(e,t,p,m,r,f)}}Bt(e,s,c,l,u,d,o,i);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||Nd(e,t,o,null,r,l)}for(i in r)if(o=r[i],l=n[i],r.hasOwnProperty(i)&&(o!=null||l!=null))switch(i){case`value`:p=o;break;case`defaultValue`:c=o;break;case`multiple`:s=o;default:o!==l&&Nd(e,t,i,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?Ut(e,!!n,n?[]:``,!1):Ut(e,!!n,t,!0)):Ut(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(i=n[c],n.hasOwnProperty(c)&&i!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:Nd(e,t,c,null,r,i)}for(s in r)if(i=r[s],o=n[s],r.hasOwnProperty(s)&&(i!=null||o!=null))switch(s){case`value`:p=i;break;case`defaultValue`:m=i;break;case`children`:break;case`dangerouslySetInnerHTML`:if(i!=null)throw Error(a(91));break;default:i!==o&&Nd(e,t,s,i,r,o)}Wt(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:Nd(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:Nd(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&Nd(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(a(137,t));break;default:Nd(e,t,u,p,r,m)}return;default:if(Xt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Pd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Pd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&Nd(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||Nd(e,t,f,p,r,m)}function Ld(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Rd(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Ld(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Ld(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var zd=null,Bd=null;function Vd(e){return e.nodeType===9?e:e.ownerDocument}function Hd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Ud(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Wd(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Gd=null;function Kd(){var e=window.event;return e&&e.type===`popstate`?e===Gd?!1:(Gd=e,!0):(Gd=null,!1)}var qd=typeof setTimeout==`function`?setTimeout:void 0,Jd=typeof clearTimeout==`function`?clearTimeout:void 0,Yd=typeof Promise==`function`?Promise:void 0,Xd=typeof queueMicrotask==`function`?queueMicrotask:Yd===void 0?qd:function(e){return Yd.resolve(null).then(e).catch(Zd)};function Zd(e){setTimeout(function(){throw e})}function Qd(e){return e===`head`}function $d(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),Np(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)pf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,pf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[mt]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&pf(e.ownerDocument.body);n=i}while(n);Np(t)}function ef(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8)if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++;n=r}while(n)}function tf(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:tf(n),ht(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function nf(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r)if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e;else if(!e[mt])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=lf(e.nextSibling),e===null)break}return null}function rf(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=lf(e.nextSibling),e===null))return null;return e}function af(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=lf(e.nextSibling),e===null))return null;return e}function of(e){return e.data===`$?`||e.data===`$~`}function sf(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function cf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function lf(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var $=null;function uf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return lf(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function df(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function ff(e,t,n){switch(t=Vd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(a(452));return e;case`head`:if(e=t.head,!e)throw Error(a(453));return e;case`body`:if(e=t.body,!e)throw Error(a(454));return e;default:throw Error(a(451))}}function pf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);ht(e)}var mf=new Map,hf=new Set;function gf(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var _f=P.d;P.d={f:vf,r:yf,D:Sf,C:Cf,L:wf,m:Tf,X:Df,S:Ef,M:Of};function vf(){var e=_f.f(),t=vu();return e||t}function yf(e){var t=_t(e);t!==null&&t.tag===5&&t.type===`form`?_s(t):_f.r(e)}var bf=typeof document>`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=zt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Fd(t,`link`,e),bt(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+zt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+zt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+zt(n.imageSizes)+`"]`)):i+=`[href="`+zt(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=p({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Fd(t,`link`,e),bt(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+zt(r)+`"][href="`+zt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=p({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Fd(r,`link`,e),bt(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=yt(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=p({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);bt(c),Fd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=yt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=p({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),bt(a),Fd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=yt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=p({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),bt(a),Fd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var i=(i=ce.current)?gf(i):null;if(!i)throw Error(a(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=yt(i).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var o=yt(i).hoistableStyles,s=o.get(e);if(s||(i=i.ownerDocument||i,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=i.querySelector(jf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),o||Nf(i,e,n,s.state))),t&&r===null)throw Error(a(528,``));return s}if(t&&r!==null)throw Error(a(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=yt(i).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(a(444,e))}}function Af(e){return`href="`+zt(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return p({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Fd(t,`link`,n),bt(t),e.head.appendChild(t))}function Pf(e){return`[src="`+zt(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+zt(n.href)+`"]`);if(r)return t.instance=r,bt(r),r;var i=p({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),bt(r),Fd(r,`style`,i),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:i=Af(n.href);var o=e.querySelector(jf(i));if(o)return t.state.loading|=4,t.instance=o,bt(o),o;r=Mf(n),(i=mf.get(i))&&Rf(r,i),o=(e.ownerDocument||e).createElement(`link`),bt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Fd(o,`link`,r),t.state.loading|=4,Lf(o,n.precedence,e),t.instance=o;case`script`:return o=Pf(n.src),(i=e.querySelector(Ff(o)))?(t.instance=i,bt(i),i):(r=n,(i=mf.get(o))&&(r=p({},n),zf(r,i)),e=e.ownerDocument||e,i=e.createElement(`script`),bt(i),Fd(i,`link`,r),e.head.appendChild(i),t.instance=i);case`void`:return null;default:throw Error(a(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Rf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function zf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var Bf=null;function Vf(e,t,n){if(Bf===null){var r=new Map,i=Bf=new Map;i.set(n,r)}else i=Bf,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[mt]||a[st]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Hf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,bt(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),bt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Fd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&Kf===0&&(Kf=62500*Rd());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=Jf.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var Qf={$$typeof:x,Provider:null,Consumer:null,_currentValue:F,_currentValue2:F,_threadCount:0};function $f(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Xe(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Xe(0),this.hiddenUpdates=Xe(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function ep(e,t,n,r,i,a,o,s,c,l,u,d){return e=new $f(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=$r(3,null,null,t),e.current=a,a.stateNode=e,t=Qi(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Ma(a),e}function tp(e){return e?(e=Zr,e):Zr}function np(e,t,n,r,i,a){i=tp(i),r.context===null?r.context=i:r.pendingContext=i,r=Pa(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Fa(e,r,t),n!==null&&(pu(n,e,t),Ia(n,e,t))}function rp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function ip(e,t){rp(e,t),(e=e.alternate)&&rp(e,t)}function ap(e){if(e.tag===13||e.tag===31){var t=Jr(e,67108864);t!==null&&pu(t,e,67108864),ip(e,67108864)}}function op(e){if(e.tag===13||e.tag===31){var t=du();t=nt(t);var n=Jr(e,t);n!==null&&pu(n,e,t),ip(e,t)}}var sp=!0;function cp(e,t,n,r){var i=N.T;N.T=null;var a=P.p;try{P.p=2,up(e,t,n,r)}finally{P.p=a,N.T=i}}function lp(e,t,n,r){var i=N.T;N.T=null;var a=P.p;try{P.p=8,up(e,t,n,r)}finally{P.p=a,N.T=i}}function up(e,t,n,r){if(sp){var i=dp(r);if(i===null)wd(e,t,r,fp,n),Cp(e,r);else if(Tp(i,e,t,n,r))r.stopPropagation();else if(Cp(e,r),t&4&&-1<Sp.indexOf(e)){for(;i!==null;){var a=_t(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=Ge(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Re(o);s.entanglements[1]|=c,o&=~c}nd(a),!(Ml&6)&&($l=Ee()+500,rd(0,!1))}}break;case 31:case 13:s=Jr(a,2),s!==null&&pu(s,a,2),vu(),ip(a,2)}if(a=dp(r),a===null&&wd(e,t,r,fp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else wd(e,t,r,null,n)}}function dp(e){return e=nn(e),pp(e)}var fp=null;function pp(e){if(fp=null,e=gt(e),e!==null){var t=s(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=c(t),e!==null)return e;e=null}else if(n===31){if(e=l(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return fp=e,null}function mp(e){switch(e){case`beforetoggle`:case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`toggle`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 2;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(De()){case Oe:return 2;case ke:return 8;case Ae:case je:return 32;case Me:return 268435456;default:return 32}default:return 32}}var hp=!1,gp=null,_p=null,vp=null,yp=new Map,bp=new Map,xp=[],Sp=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `);function Cp(e,t){switch(e){case`focusin`:case`focusout`:gp=null;break;case`dragenter`:case`dragleave`:_p=null;break;case`mouseover`:case`mouseout`:vp=null;break;case`pointerover`:case`pointerout`:yp.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:bp.delete(t.pointerId)}}function wp(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=_t(t),t!==null&&ap(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Tp(e,t,n,r,i){switch(t){case`focusin`:return gp=wp(gp,e,t,n,r,i),!0;case`dragenter`:return _p=wp(_p,e,t,n,r,i),!0;case`mouseover`:return vp=wp(vp,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return yp.set(a,wp(yp.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,bp.set(a,wp(bp.get(a)||null,e,t,n,r,i)),!0}return!1}function Ep(e){var t=gt(e.target);if(t!==null){var n=s(t);if(n!==null){if(t=n.tag,t===13){if(t=c(n),t!==null){e.blockedOn=t,at(e.priority,function(){op(n)});return}}else if(t===31){if(t=l(n),t!==null){e.blockedOn=t,at(e.priority,function(){op(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Dp(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=dp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);tn=r,n.target.dispatchEvent(r),tn=null}else return t=_t(n),t!==null&&ap(t),e.blockedOn=n,!1;t.shift()}return!0}function Op(e,t,n){Dp(e)&&n.delete(t)}function kp(){hp=!1,gp!==null&&Dp(gp)&&(gp=null),_p!==null&&Dp(_p)&&(_p=null),vp!==null&&Dp(vp)&&(vp=null),yp.forEach(Op),bp.forEach(Op)}function Ap(e,n){e.blockedOn===n&&(e.blockedOn=null,hp||(hp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,kp)))}var jp=null;function Mp(e){jp!==e&&(jp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){jp===e&&(jp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(pp(r||n)===null)continue;break}var a=_t(n);a!==null&&(e.splice(t,3),t-=3,hs(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Np(e){function t(t){return Ap(t,e)}gp!==null&&Ap(gp,e),_p!==null&&Ap(_p,e),vp!==null&&Ap(vp,e),yp.forEach(t),bp.forEach(t);for(var n=0;n<xp.length;n++){var r=xp[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<xp.length&&(n=xp[0],n.blockedOn===null);)Ep(n),n.blockedOn===null&&xp.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[ct]||null;if(typeof a==`function`)o||Mp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[ct]||null)s=o.formAction;else if(pp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Mp(n)}}}function Pp(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function Fp(e){this._internalRoot=e}Ip.prototype.render=Fp.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(a(409));var n=t.current;np(n,du(),e,t,null,null)},Ip.prototype.unmount=Fp.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;np(e.current,2,null,e,null,null),vu(),t[lt]=null}};function Ip(e){this._internalRoot=e}Ip.prototype.unstable_scheduleHydration=function(e){if(e){var t=it();e={blockedOn:null,target:e,priority:t};for(var n=0;n<xp.length&&t!==0&&t<xp[n].priority;n++);xp.splice(n,0,e),n===0&&Ep(e)}};var Lp=n.version;if(Lp!==`19.2.4`)throw Error(a(527,Lp,`19.2.4`));P.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(a(188)):(e=Object.keys(e).join(`,`),Error(a(268,e)));return e=d(t),e=e===null?null:f(e),e=e===null?null:e.stateNode,e};var Rp={bundleType:0,version:`19.2.4`,rendererPackageName:`react-dom`,currentDispatcherRef:N,reconcilerVersion:`19.2.4`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var zp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!zp.isDisabled&&zp.supportsFiber)try{Fe=zp.inject(Rp),Ie=zp}catch{}}e.createRoot=function(e,t){if(!o(e))throw Error(a(299));var n=!1,r=``,i=Rs,s=zs,c=Bs;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=ep(e,1,!1,null,null,n,r,null,i,s,c,Pp),e[lt]=t.current,Sd(e),new Fp(t)}})),Aa=n(((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=ka()})),ja=Yn(`case-sensitive`,[[`path`,{d:`m2 16 4.039-9.69a.5.5 0 0 1 .923 0L11 16`,key:`d5nyq2`}],[`path`,{d:`M22 9v7`,key:`pvm9v3`}],[`path`,{d:`M3.304 13h6.392`,key:`1q3zxz`}],[`circle`,{cx:`18.5`,cy:`12.5`,r:`3.5`,key:`z97x68`}]]),Ma=Yn(`file-diff`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M9 10h6`,key:`9gxzsh`}],[`path`,{d:`M12 13V7`,key:`h0r20n`}],[`path`,{d:`M9 17h6`,key:`r8uit2`}]]),Na=Yn(`folder-git-2`,[[`path`,{d:`M18 19a5 5 0 0 1-5-5v8`,key:`sz5oeg`}],[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]),Pa=Yn(`git-commit-horizontal`,[[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}],[`line`,{x1:`3`,x2:`9`,y1:`12`,y2:`12`,key:`1dyftd`}],[`line`,{x1:`15`,x2:`21`,y1:`12`,y2:`12`,key:`oup4p8`}]]),Fa=Yn(`github`,[[`path`,{d:`M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4`,key:`tonef`}],[`path`,{d:`M9 18c-4.51 2-5-2-7-2`,key:`9comsn`}]]),Ia=Yn(`hexagon`,[[`path`,{d:`M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z`,key:`yt0hxn`}]]),La=Yn(`regex`,[[`path`,{d:`M17 3v10`,key:`15fgeh`}],[`path`,{d:`m12.67 5.5 8.66 5`,key:`1gpheq`}],[`path`,{d:`m12.67 10.5 8.66-5`,key:`1dkfa6`}],[`path`,{d:`M9 17a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-2z`,key:`swwfx4`}]]),Ra=Yn(`replace-all`,[[`path`,{d:`M14 14a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1`,key:`zg1ipl`}],[`path`,{d:`M14 4a1 1 0 0 1 1-1`,key:`dhj8ez`}],[`path`,{d:`M15 10a1 1 0 0 1-1-1`,key:`1mnyi5`}],[`path`,{d:`M19 14a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1`,key:`txt6k4`}],[`path`,{d:`M21 4a1 1 0 0 0-1-1`,key:`sfs9ap`}],[`path`,{d:`M21 9a1 1 0 0 1-1 1`,key:`mp6qeo`}],[`path`,{d:`m3 7 3 3 3-3`,key:`x25e72`}],[`path`,{d:`M6 10V5a2 2 0 0 1 2-2h2`,key:`15xut4`}],[`rect`,{x:`3`,y:`14`,width:`7`,height:`7`,rx:`1`,key:`1bkyp8`}]]),za=Yn(`scan`,[[`path`,{d:`M3 7V5a2 2 0 0 1 2-2h2`,key:`aa7l1z`}],[`path`,{d:`M17 3h2a2 2 0 0 1 2 2v2`,key:`4qcy5o`}],[`path`,{d:`M21 17v2a2 2 0 0 1-2 2h-2`,key:`6vwrx8`}],[`path`,{d:`M7 21H5a2 2 0 0 1-2-2v-2`,key:`ioqczr`}]]),Ba=Yn(`server-off`,[[`path`,{d:`M7 2h13a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-5`,key:`bt2siv`}],[`path`,{d:`M10 10 2.5 2.5C2 2 2 2.5 2 5v3a2 2 0 0 0 2 2h6z`,key:`1hjrv1`}],[`path`,{d:`M22 17v-1a2 2 0 0 0-2-2h-1`,key:`1iynyr`}],[`path`,{d:`M4 14a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16.5l1-.5.5.5-8-8H4z`,key:`161ggg`}],[`path`,{d:`M6 18h.01`,key:`uhywen`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),Va=Yn(`whole-word`,[[`circle`,{cx:`7`,cy:`12`,r:`3`,key:`12clwm`}],[`path`,{d:`M10 9v6`,key:`17i7lo`}],[`circle`,{cx:`17`,cy:`12`,r:`3`,key:`gl7c2s`}],[`path`,{d:`M14 7v8`,key:`dl84cr`}],[`path`,{d:`M22 17v1c0 .5-.5 1-1 1H3c-.5 0-1-.5-1-1v-1`,key:`lt2kga`}]]),Ha=Aa(),Y=t(r(),1),X=i(),Ua=({...e})=>{let t=V(e=>e.themeMode);return(0,X.jsx)(Xn,{theme:t===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:t,className:`toaster group`,icons:{success:(0,X.jsx)(ye,{className:`size-4`}),info:(0,X.jsx)(Tt,{className:`size-4`}),warning:(0,X.jsx)(nt,{className:`size-4`}),error:(0,X.jsx)(Fe,{className:`size-4`}),loading:(0,X.jsx)(Bt,{className:`size-4 animate-spin`})},style:{"--normal-bg":`var(--color-popover)`,"--normal-text":`var(--color-popover-foreground)`,"--normal-border":`var(--color-border)`,"--border-radius":`var(--radius)`},...e})},Wa=500;function Ga({delayDuration:e=Wa,disableHoverableContent:t=!0,...n}){return(0,X.jsx)(re,{"data-slot":`tooltip-provider`,delayDuration:e,disableHoverableContent:t,...n})}function Ka({...e}){return(0,X.jsx)(Ga,{children:(0,X.jsx)(te,{"data-slot":`tooltip`,...e})})}function qa({...e}){return(0,X.jsx)(oe,{"data-slot":`tooltip-trigger`,...e})}function Ja({className:e,sideOffset:t=0,children:n,...r}){let i=fr();return(0,X.jsx)(ce,{container:i,children:(0,X.jsxs)(I,{"data-slot":`tooltip-content`,sideOffset:t,className:U(`pointer-events-none z-50 w-fit origin-(--radix-tooltip-content-transform-origin) animate-in rounded-md bg-foreground px-3 py-1.5 text-xs text-balance text-background fade-in-0 zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95`,e),...r,children:[n,(0,X.jsx)(le,{className:`z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground`})]})})}function Ya(e,t){let n=getComputedStyle(e);return t*parseFloat(n.fontSize)}function Xa(e,t){let n=getComputedStyle(e.ownerDocument.body);return t*parseFloat(n.fontSize)}function Za(e){return e/100*window.innerHeight}function Qa(e){return e/100*window.innerWidth}function $a(e){switch(typeof e){case`number`:return[e,`px`];case`string`:{let t=parseFloat(e);return e.endsWith(`%`)?[t,`%`]:e.endsWith(`px`)?[t,`px`]:e.endsWith(`rem`)?[t,`rem`]:e.endsWith(`em`)?[t,`em`]:e.endsWith(`vh`)?[t,`vh`]:e.endsWith(`vw`)?[t,`vw`]:[t,`%`]}}}function eo({groupSize:e,panelElement:t,styleProp:n}){let r,[i,a]=$a(n);switch(a){case`%`:r=i/100*e;break;case`px`:r=i;break;case`rem`:r=Xa(t,i);break;case`em`:r=Ya(t,i);break;case`vh`:r=Za(i);break;case`vw`:r=Qa(i);break}return r}function to(e){return parseFloat(e.toFixed(3))}function Z({group:e}){let{orientation:t,panels:n}=e;return n.reduce((e,n)=>(e+=t===`horizontal`?n.element.offsetWidth:n.element.offsetHeight,e),0)}function no(e){let{panels:t}=e,n=Z({group:e});return n===0?t.map(e=>({groupResizeBehavior:e.panelConstraints.groupResizeBehavior,collapsedSize:0,collapsible:e.panelConstraints.collapsible===!0,defaultSize:void 0,disabled:e.panelConstraints.disabled,minSize:0,maxSize:100,panelId:e.id})):t.map(e=>{let{element:t,panelConstraints:r}=e,i=0;r.collapsedSize!==void 0&&(i=to(eo({groupSize:n,panelElement:t,styleProp:r.collapsedSize})/n*100));let a;r.defaultSize!==void 0&&(a=to(eo({groupSize:n,panelElement:t,styleProp:r.defaultSize})/n*100));let o=0;r.minSize!==void 0&&(o=to(eo({groupSize:n,panelElement:t,styleProp:r.minSize})/n*100));let s=100;return r.maxSize!==void 0&&(s=to(eo({groupSize:n,panelElement:t,styleProp:r.maxSize})/n*100)),{groupResizeBehavior:r.groupResizeBehavior,collapsedSize:i,collapsible:r.collapsible===!0,defaultSize:a,disabled:r.disabled,minSize:o,maxSize:s,panelId:e.id}})}function Q(e,t=`Assertion error`){if(!e)throw Error(t)}function ro(e,t){return Array.from(t).sort(e===`horizontal`?io:ao)}function io(e,t){let n=e.element.offsetLeft-t.element.offsetLeft;return n===0?e.element.offsetWidth-t.element.offsetWidth:n}function ao(e,t){let n=e.element.offsetTop-t.element.offsetTop;return n===0?e.element.offsetHeight-t.element.offsetHeight:n}function oo(e){return typeof e==`object`&&!!e&&`nodeType`in e&&e.nodeType===Node.ELEMENT_NODE}function so(e,t){return{x:e.x>=t.left&&e.x<=t.right?0:Math.min(Math.abs(e.x-t.left),Math.abs(e.x-t.right)),y:e.y>=t.top&&e.y<=t.bottom?0:Math.min(Math.abs(e.y-t.top),Math.abs(e.y-t.bottom))}}function co({orientation:e,rects:t,targetRect:n}){let r={x:n.x+n.width/2,y:n.y+n.height/2},i,a=Number.MAX_VALUE;for(let n of t){let{x:t,y:o}=so(r,n),s=e===`horizontal`?t:o;s<a&&(a=s,i=n)}return Q(i,`No rect found`),i}var lo;function uo(){return lo===void 0&&(lo=typeof matchMedia==`function`?!!matchMedia(`(pointer:coarse)`).matches:!1),lo}function fo(e){let{element:t,orientation:n,panels:r,separators:i}=e,a=ro(n,Array.from(t.children).filter(oo).map(e=>({element:e}))).map(({element:e})=>e),o=[],s=!1,c=!1,l=-1,u=-1,d=0,f,p=[];{let e=-1;for(let t of a)t.hasAttribute(`data-panel`)&&(e++,t.ariaDisabled===null&&(d++,l===-1&&(l=e),u=e))}if(d>1){let t=-1;for(let d of a)if(d.hasAttribute(`data-panel`)){t++;let i=r.find(e=>e.element===d);if(i){if(f){let r=f.element.getBoundingClientRect(),a=d.getBoundingClientRect(),m;if(c){let e=n===`horizontal`?new DOMRect(r.right,r.top,0,r.height):new DOMRect(r.left,r.bottom,r.width,0),t=n===`horizontal`?new DOMRect(a.left,a.top,0,a.height):new DOMRect(a.left,a.top,a.width,0);switch(p.length){case 0:m=[e,t];break;case 1:{let i=p[0];m=[i,co({orientation:n,rects:[r,a],targetRect:i.element.getBoundingClientRect()})===r?t:e];break}default:m=p;break}}else m=p.length?p:[n===`horizontal`?new DOMRect(r.right,a.top,a.left-r.right,a.height):new DOMRect(a.left,r.bottom,a.width,a.top-r.bottom)];for(let n of m){let r=`width`in n?n:n.element.getBoundingClientRect(),a=uo()?e.resizeTargetMinimumSize.coarse:e.resizeTargetMinimumSize.fine;if(r.width<a){let e=a-r.width;r=new DOMRect(r.x-e/2,r.y,r.width+e,r.height)}if(r.height<a){let e=a-r.height;r=new DOMRect(r.x,r.y-e/2,r.width,r.height+e)}!s&&!(t<=l||t>u)&&o.push({group:e,groupSize:Z({group:e}),panels:[f,i],separator:`width`in n?void 0:n,rect:r}),s=!1}}c=!1,f=i,p=[]}}else if(d.hasAttribute(`data-separator`)){d.ariaDisabled!==null&&(s=!0);let e=i.find(e=>e.element===d);e?p.push(e):(f=void 0,p=[])}else c=!0}return o}var po=class{#e={};addListener(e,t){let n=this.#e[e];return n===void 0?this.#e[e]=[t]:n.includes(t)||n.push(t),()=>{this.removeListener(e,t)}}emit(e,t){let n=this.#e[e];if(n!==void 0)if(n.length===1)n[0].call(null,t);else{let e=!1,r=null,i=Array.from(n);for(let n=0;n<i.length;n++){let a=i[n];try{a.call(null,t)}catch(t){r===null&&(e=!0,r=t)}}if(e)throw r}}removeAllListeners(){this.#e={}}removeListener(e,t){let n=this.#e[e];if(n!==void 0){let e=n.indexOf(t);e>=0&&n.splice(e,1)}}},mo=new Map,ho=new po;function go(e){mo=new Map(mo),mo.delete(e)}function _o(e,t){for(let[t]of mo)if(t.id===e)return t}function vo(e,t){for(let[t,n]of mo)if(t.id===e)return n;if(t)throw Error(`Could not find data for Group with id ${e}`)}function yo(){return mo}function bo(e,t){return ho.addListener(`groupChange`,n=>{n.group.id===e&&t(n)})}function xo(e,t){let n=mo.get(e);mo=new Map(mo),mo.set(e,t),ho.emit(`groupChange`,{group:e,prev:n,next:t})}function So(e,t,n){let r,i={x:1/0,y:1/0};for(let a of t){let t=so(n,a.rect);switch(e){case`horizontal`:t.x<=i.x&&(r=a,i=t);break;case`vertical`:t.y<=i.y&&(r=a,i=t);break}}return r?{distance:i,hitRegion:r}:void 0}function Co(e){return typeof e==`object`&&!!e&&`nodeType`in e&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE}function wo(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:Ao(e),b:Ao(t)},r;for(;n.a.at(-1)===n.b.at(-1);)r=n.a.pop(),n.b.pop();Q(r,`Stacking order can only be calculated for elements with a common ancestor`);let i={a:ko(Oo(n.a)),b:ko(Oo(n.b))};if(i.a===i.b){let e=r.childNodes,t={a:n.a.at(-1),b:n.b.at(-1)},i=e.length;for(;i--;){let n=e[i];if(n===t.a)return 1;if(n===t.b)return-1}}return Math.sign(i.a-i.b)}var To=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function Eo(e){let t=getComputedStyle(jo(e)??e).display;return t===`flex`||t===`inline-flex`}function Do(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||Eo(e))||+t.opacity<1||`transform`in t&&t.transform!==`none`||`webkitTransform`in t&&t.webkitTransform!==`none`||`mixBlendMode`in t&&t.mixBlendMode!==`normal`||`filter`in t&&t.filter!==`none`||`webkitFilter`in t&&t.webkitFilter!==`none`||`isolation`in t&&t.isolation===`isolate`||To.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function Oo(e){let t=e.length;for(;t--;){let n=e[t];if(Q(n,`Missing node`),Do(n))return n}return null}function ko(e){return e&&Number(getComputedStyle(e).zIndex)||0}function Ao(e){let t=[];for(;e;)t.push(e),e=jo(e);return t}function jo(e){let{parentNode:t}=e;return Co(t)?t.host:t}function Mo(e,t){return e.x<t.x+t.width&&e.x+e.width>t.x&&e.y<t.y+t.height&&e.y+e.height>t.y}function No({groupElement:e,hitRegion:t,pointerEventTarget:n}){if(!oo(n)||n.contains(e)||e.contains(n))return!0;if(wo(n,e)>0){let r=n;for(;r;){if(r.contains(e))return!0;if(Mo(r.getBoundingClientRect(),t))return!1;r=r.parentElement}}return!0}function Po(e,t){let n=[];return t.forEach((t,r)=>{if(r.disabled)return;let i=fo(r),a=So(r.orientation,i,{x:e.clientX,y:e.clientY});a&&a.distance.x<=0&&a.distance.y<=0&&No({groupElement:r.element,hitRegion:a.hitRegion.rect,pointerEventTarget:e.target})&&n.push(a.hitRegion)}),n}function Fo(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n])return!1;return!0}function Io(e,t,n=0){return Math.abs(to(e)-to(t))<=n}function Lo(e,t){return Io(e,t)?0:e>t?1:-1}function Ro({overrideDisabledPanels:e,panelConstraints:t,prevSize:n,size:r}){let{collapsedSize:i=0,collapsible:a,disabled:o,maxSize:s=100,minSize:c=0}=t;if(o&&!e)return n;if(Lo(r,c)<0)if(a){let e=(i+c)/2;r=Lo(r,e)<0?i:c}else r=c;return r=Math.min(s,r),r=to(r),r}function zo({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:r,prevLayout:i,trigger:a}){if(Io(e,0))return t;let o=a===`imperative-api`,s=Object.values(t),c=Object.values(i),l=[...s],[u,d]=r;Q(u!=null,`Invalid first pivot index`),Q(d!=null,`Invalid second pivot index`);let f=0;switch(a){case`keyboard`:{let t=e<0?d:u,r=n[t];Q(r,`Panel constraints not found for index ${t}`);let{collapsedSize:i=0,collapsible:a,minSize:o=0}=r;if(a){let n=s[t];if(Q(n!=null,`Previous layout not found for panel index ${t}`),Io(n,i)){let t=o-n;Lo(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let t=e<0?u:d,r=n[t];Q(r,`No panel constraints found for index ${t}`);let{collapsedSize:i=0,collapsible:a,minSize:o=0}=r;if(a){let n=s[t];if(Q(n!=null,`Previous layout not found for panel index ${t}`),Io(n,o)){let t=n-i;Lo(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}break;default:{let t=e<0?d:u,r=n[t];Q(r,`Panel constraints not found for index ${t}`);let i=s[t],{collapsible:a,collapsedSize:o,minSize:c}=r;if(a&&Lo(i,c)<0)if(e>0){let t=c-o,n=t/2;Lo(i+e,c)<0&&(e=Lo(e,n)<=0?0:t)}else{let t=c-o,n=100-t/2;Lo(i-e,c)<0&&(e=Lo(100+e,n)>0?0:-t)}break}}{let t=e<0?1:-1,r=e<0?d:u,i=0;for(;;){let e=s[r];Q(e!=null,`Previous layout not found for panel index ${r}`);let a=Ro({overrideDisabledPanels:o,panelConstraints:n[r],prevSize:e,size:100})-e;if(i+=a,r+=t,r<0||r>=n.length)break}let a=Math.min(Math.abs(e),Math.abs(i));e=e<0?0-a:a}{let t=e<0?u:d;for(;t>=0&&t<n.length;){let r=Math.abs(e)-Math.abs(f),i=s[t];Q(i!=null,`Previous layout not found for panel index ${t}`);let a=i-r,c=Ro({overrideDisabledPanels:o,panelConstraints:n[t],prevSize:i,size:a});if(!Io(i,c)&&(f+=i-c,l[t]=c,f.toFixed(3).localeCompare(Math.abs(e).toFixed(3),void 0,{numeric:!0})>=0))break;e<0?t--:t++}}if(Fo(c,l))return i;{let t=e<0?d:u,r=s[t];Q(r!=null,`Previous layout not found for panel index ${t}`);let i=r+f,a=Ro({overrideDisabledPanels:o,panelConstraints:n[t],prevSize:r,size:i});if(l[t]=a,!Io(a,i)){let t=i-a,r=e<0?d:u;for(;r>=0&&r<n.length;){let i=l[r];Q(i!=null,`Previous layout not found for panel index ${r}`);let a=i+t,s=Ro({overrideDisabledPanels:o,panelConstraints:n[r],prevSize:i,size:a});if(Io(i,s)||(t-=s-i,l[r]=s),Io(t,0))break;e>0?r--:r++}}}if(!Io(Object.values(l).reduce((e,t)=>t+e,0),100,.1))return i;let p=Object.keys(i);return l.reduce((e,t,n)=>(e[p[n]]=t,e),{})}function Bo(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(t[n]===void 0||Lo(e[n],t[n])!==0)return!1;return!0}function Vo({layout:e,panelConstraints:t}){let n=Object.values(e),r=[...n],i=r.reduce((e,t)=>e+t,0);if(r.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${r.map(e=>`${e}%`).join(`, `)}`);if(!Io(i,100)&&r.length>0)for(let e=0;e<t.length;e++){let t=r[e];Q(t!=null,`No layout data found for index ${e}`),r[e]=100/i*t}let a=0;for(let e=0;e<t.length;e++){let i=n[e];Q(i!=null,`No layout data found for index ${e}`);let o=r[e];Q(o!=null,`No layout data found for index ${e}`);let s=Ro({overrideDisabledPanels:!0,panelConstraints:t[e],prevSize:i,size:o});o!=s&&(a+=o-s,r[e]=s)}if(!Io(a,0))for(let e=0;e<t.length;e++){let n=r[e];Q(n!=null,`No layout data found for index ${e}`);let i=n+a,o=Ro({overrideDisabledPanels:!0,panelConstraints:t[e],prevSize:n,size:i});if(n!==o&&(a-=o-n,r[e]=o,Io(a,0)))break}let o=Object.keys(e);return r.reduce((e,t,n)=>(e[o[n]]=t,e),{})}function Ho({groupId:e,panelId:t}){let n=()=>{let t=yo();for(let[n,{defaultLayoutDeferred:r,derivedPanelConstraints:i,layout:a,groupSize:o,separatorToPanels:s}]of t)if(n.id===e)return{defaultLayoutDeferred:r,derivedPanelConstraints:i,group:n,groupSize:o,layout:a,separatorToPanels:s};throw Error(`Group ${e} not found`)},r=()=>{let e=n().derivedPanelConstraints.find(e=>e.panelId===t);if(e!==void 0)return e;throw Error(`Panel constraints not found for Panel ${t}`)},i=()=>{let e=n().group.panels.find(e=>e.id===t);if(e!==void 0)return e;throw Error(`Layout not found for Panel ${t}`)},a=()=>{let e=n().layout[t];if(e!==void 0)return e;throw Error(`Layout not found for Panel ${t}`)},o=e=>{let r=a();if(e===r)return;let{defaultLayoutDeferred:i,derivedPanelConstraints:o,group:s,groupSize:c,layout:l,separatorToPanels:u}=n(),d=s.panels.findIndex(e=>e.id===t),f=d===s.panels.length-1,p=Vo({layout:zo({delta:f?r-e:e-r,initialLayout:l,panelConstraints:o,pivotIndices:f?[d-1,d]:[d,d+1],prevLayout:l,trigger:`imperative-api`}),panelConstraints:o});Bo(l,p)||xo(s,{defaultLayoutDeferred:i,derivedPanelConstraints:o,groupSize:c,layout:p,separatorToPanels:u})};return{collapse:()=>{let{collapsible:e,collapsedSize:t}=r(),{mutableValues:n}=i(),s=a();e&&s!==t&&(n.expandToSize=s,o(t))},expand:()=>{let{collapsible:e,collapsedSize:t,minSize:n}=r(),{mutableValues:s}=i(),c=a();if(e&&c===t){let e=s.expandToSize??n;e===0&&(e=1),o(e)}},getSize:()=>{let{group:e}=n(),t=a(),{element:r}=i();return{asPercentage:t,inPixels:e.orientation===`horizontal`?r.offsetWidth:r.offsetHeight}},isCollapsed:()=>{let{collapsible:e,collapsedSize:t}=r(),n=a();return e&&Io(t,n)},resize:e=>{let{group:t}=n(),{element:r}=i(),a=Z({group:t});o(to(eo({groupSize:a,panelElement:r,styleProp:e})/a*100))}}}function Uo(e){e.defaultPrevented||Po(e,yo()).forEach(t=>{if(t.separator){let n=t.panels.find(e=>e.panelConstraints.defaultSize!==void 0);if(n){let r=n.panelConstraints.defaultSize,i=Ho({groupId:t.group.id,panelId:n.id});i&&r!==void 0&&(i.resize(r),e.preventDefault())}}})}function Wo(e){let t=yo();for(let[n]of t)if(n.separators.some(t=>t.element===e))return n;throw Error(`Could not find parent Group for separator element`)}function Go({groupId:e}){let t=()=>{let t=yo();for(let[n,r]of t)if(n.id===e)return{group:n,...r};throw Error(`Could not find Group with id "${e}"`)};return{getLayout(){let{defaultLayoutDeferred:e,layout:n}=t();return e?{}:n},setLayout(e){let{defaultLayoutDeferred:n,derivedPanelConstraints:r,group:i,groupSize:a,layout:o,separatorToPanels:s}=t(),c=Vo({layout:e,panelConstraints:r});return n?o:(Bo(o,c)||xo(i,{defaultLayoutDeferred:n,derivedPanelConstraints:r,groupSize:a,layout:c,separatorToPanels:s}),c)}}}function Ko(e,t){let n=Wo(e),r=vo(n.id,!0),i=n.separators.find(t=>t.element===e);Q(i,`Matching separator not found`);let a=r.separatorToPanels.get(i);Q(a,`Matching panels not found`);let o=a.map(e=>n.panels.indexOf(e)),s=Go({groupId:n.id}).getLayout(),c=Vo({layout:zo({delta:t,initialLayout:s,panelConstraints:r.derivedPanelConstraints,pivotIndices:o,prevLayout:s,trigger:`keyboard`}),panelConstraints:r.derivedPanelConstraints});Bo(s,c)||xo(n,{defaultLayoutDeferred:r.defaultLayoutDeferred,derivedPanelConstraints:r.derivedPanelConstraints,groupSize:r.groupSize,layout:c,separatorToPanels:r.separatorToPanels})}function qo(e){if(e.defaultPrevented)return;let t=e.currentTarget,n=Wo(t);if(!n.disabled)switch(e.key){case`ArrowDown`:e.preventDefault(),n.orientation===`vertical`&&Ko(t,5);break;case`ArrowLeft`:e.preventDefault(),n.orientation===`horizontal`&&Ko(t,-5);break;case`ArrowRight`:e.preventDefault(),n.orientation===`horizontal`&&Ko(t,5);break;case`ArrowUp`:e.preventDefault(),n.orientation===`vertical`&&Ko(t,-5);break;case`End`:e.preventDefault(),Ko(t,100);break;case`Enter`:{e.preventDefault();let n=Wo(t),{derivedPanelConstraints:r,layout:i,separatorToPanels:a}=vo(n.id,!0),o=n.separators.find(e=>e.element===t);Q(o,`Matching separator not found`);let s=a.get(o);Q(s,`Matching panels not found`);let c=s[0],l=r.find(e=>e.panelId===c.id);if(Q(l,`Panel metadata not found`),l.collapsible){let e=i[c.id];Ko(t,(l.collapsedSize===e?n.mutableState.expandedPanelSizes[c.id]??l.minSize:l.collapsedSize)-e)}break}case`F6`:{e.preventDefault();let n=Wo(t).separators.map(e=>e.element),r=Array.from(n).findIndex(t=>t===e.currentTarget);Q(r!==null,`Index not found`),n[e.shiftKey?r>0?r-1:n.length-1:r+1<n.length?r+1:0].focus({preventScroll:!0});break}case`Home`:e.preventDefault(),Ko(t,-100);break}}var Jo={cursorFlags:0,state:`inactive`},Yo=new po;function Xo(){return Jo}function Zo(e){return Yo.addListener(`change`,e)}function Qo(e){let t=Jo,n={...Jo};n.cursorFlags=e,Jo=n,Yo.emit(`change`,{prev:t,next:n})}function $o(e){let t=Jo;Jo=e,Yo.emit(`change`,{prev:t,next:e})}function es(e){if(e.defaultPrevented||e.pointerType===`mouse`&&e.button>0)return;let t=yo(),n=Po(e,t),r=new Map,i=!1;n.forEach(e=>{e.separator&&(i||(i=!0,e.separator.element.focus({preventScroll:!0})));let n=t.get(e.group);n&&r.set(e.group,n.layout)}),$o({cursorFlags:0,hitRegions:n,initialLayoutMap:r,pointerDownAtPoint:{x:e.clientX,y:e.clientY},state:`active`}),n.length&&e.preventDefault()}var ts=e=>e,ns=()=>{},rs=1,is=2,as=4,os=8,ss=3,cs=12,ls;function us(){return ls===void 0&&(ls=!1,typeof window<`u`&&(window.navigator.userAgent.includes(`Chrome`)||window.navigator.userAgent.includes(`Firefox`))&&(ls=!0)),ls}function ds({cursorFlags:e,groups:t,state:n}){let r=0,i=0;switch(n){case`active`:case`hover`:t.forEach(e=>{if(!e.mutableState.disableCursor)switch(e.orientation){case`horizontal`:r++;break;case`vertical`:i++;break}})}if(!(r===0&&i===0)){switch(n){case`active`:if(e&&us()){let t=(e&rs)!==0,n=(e&is)!==0,r=(e&as)!==0,i=(e&os)!==0;if(t)return r?`se-resize`:i?`ne-resize`:`e-resize`;if(n)return r?`sw-resize`:i?`nw-resize`:`w-resize`;if(r)return`s-resize`;if(i)return`n-resize`}break}return us()?r>0&&i>0?`move`:r>0?`ew-resize`:`ns-resize`:r>0&&i>0?`grab`:r>0?`col-resize`:`row-resize`}}var fs=new WeakMap;function ps(e){if(e.defaultView===null||e.defaultView===void 0)return;let{prevStyle:t,styleSheet:n}=fs.get(e)??{};n===void 0&&(n=new e.defaultView.CSSStyleSheet,e.adoptedStyleSheets&&e.adoptedStyleSheets.push(n));let r=Xo();switch(r.state){case`active`:case`hover`:{let e=ds({cursorFlags:r.cursorFlags,groups:r.hitRegions.map(e=>e.group),state:r.state}),i=`*, *:hover {cursor: ${e} !important; }`;if(t===i)return;t=i,e?n.cssRules.length===0?n.insertRule(i):n.replaceSync(i):n.cssRules.length===1&&n.deleteRule(0);break}case`inactive`:t=void 0,n.cssRules.length===1&&n.deleteRule(0);break}fs.set(e,{prevStyle:t,styleSheet:n})}function ms({document:e,event:t,hitRegions:n,initialLayoutMap:r,mountedGroups:i,pointerDownAtPoint:a,prevCursorFlags:o}){let s=0;n.forEach(e=>{let{group:n,groupSize:o}=e,{orientation:c,panels:l}=n,{disableCursor:u}=n.mutableState,d=0;d=a?c===`horizontal`?(t.clientX-a.x)/o*100:(t.clientY-a.y)/o*100:c===`horizontal`?t.clientX<0?-100:100:t.clientY<0?-100:100;let f=r.get(n),p=i.get(n);if(!f||!p)return;let{defaultLayoutDeferred:m,derivedPanelConstraints:h,groupSize:g,layout:_,separatorToPanels:v}=p;if(h&&_&&v){let t=zo({delta:d,initialLayout:f,panelConstraints:h,pivotIndices:e.panels.map(e=>l.indexOf(e)),prevLayout:_,trigger:`mouse-or-touch`});if(Bo(t,_)){if(d!==0&&!u)switch(c){case`horizontal`:s|=d<0?rs:is;break;case`vertical`:s|=d<0?as:os;break}}else xo(e.group,{defaultLayoutDeferred:m,derivedPanelConstraints:h,groupSize:g,layout:t,separatorToPanels:v})}});let c=0;t.movementX===0?c|=o&ss:c|=s&ss,t.movementY===0?c|=o&cs:c|=s&cs,Qo(c),ps(e)}function hs(e){let t=yo(),n=Xo();switch(n.state){case`active`:ms({document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedGroups:t,prevCursorFlags:n.cursorFlags})}}function gs(e){if(e.defaultPrevented)return;let t=Xo(),n=yo();switch(t.state){case`active`:if(e.buttons===0){$o({cursorFlags:0,state:`inactive`}),t.hitRegions.forEach(e=>{let t=vo(e.group.id,!0);xo(e.group,t)});return}ms({document:e.currentTarget,event:e,hitRegions:t.hitRegions,initialLayoutMap:t.initialLayoutMap,mountedGroups:n,pointerDownAtPoint:t.pointerDownAtPoint,prevCursorFlags:t.cursorFlags});break;default:{let r=Po(e,n);r.length===0?t.state!==`inactive`&&$o({cursorFlags:0,state:`inactive`}):$o({cursorFlags:0,hitRegions:r,state:`hover`}),ps(e.currentTarget);break}}}function _s(e){if(e.relatedTarget instanceof HTMLIFrameElement)switch(Xo().state){case`hover`:$o({cursorFlags:0,state:`inactive`})}}function vs(e){if(e.defaultPrevented||e.pointerType===`mouse`&&e.button>0)return;let t=Xo();switch(t.state){case`active`:$o({cursorFlags:0,state:`inactive`}),t.hitRegions.length>0&&(ps(e.currentTarget),t.hitRegions.forEach(e=>{let t=vo(e.group.id,!0);xo(e.group,t)}),e.preventDefault())}}function ys(e){let t=0,n=0,r={};for(let i of e)if(i.defaultSize!==void 0){t++;let e=to(i.defaultSize);n+=e,r[i.panelId]=e}else r[i.panelId]=void 0;let i=e.length-t;if(i!==0){let t=to((100-n)/i);for(let n of e)n.defaultSize===void 0&&(r[n.panelId]=t)}return r}function bs(e,t,n){if(!n[0])return;let r=e.panels.find(e=>e.element===t);if(!r||!r.onResize)return;let i=Z({group:e}),a=e.orientation===`horizontal`?r.element.offsetWidth:r.element.offsetHeight,o=r.mutableValues.prevSize,s={asPercentage:to(a/i*100),inPixels:a};r.mutableValues.prevSize=s,r.onResize(s,r.id,o)}function xs(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function Ss({group:e,nextGroupSize:t,prevGroupSize:n,prevLayout:r}){if(n<=0||t<=0||n===t)return r;let i=0,a=0,o=!1,s=new Map,c=[];for(let l of e.panels){let e=r[l.id]??0;switch(l.panelConstraints.groupResizeBehavior){case`preserve-pixel-size`:{o=!0;let r=to(e/100*n/t*100);s.set(l.id,r),i+=r;break}default:c.push(l.id),a+=e;break}}if(!o||c.length===0)return r;let l=100-i,u={...r};if(s.forEach((e,t)=>{u[t]=e}),a>0)for(let e of c)u[e]=to((r[e]??0)/a*l);else{let e=to(l/c.length);for(let t of c)u[t]=e}return u}function Cs(e,t){let n=e.map(e=>e.id),r=Object.keys(t);if(n.length!==r.length)return!1;for(let e of n)if(!r.includes(e))return!1;return!0}var ws=new Map;function Ts(e){let t=!0;Q(e.element.ownerDocument.defaultView,`Cannot register an unmounted Group`);let n=e.element.ownerDocument.defaultView.ResizeObserver,r=new Set,i=new Set,a=new n(n=>{for(let r of n){let{borderBoxSize:n,target:i}=r;if(i===e.element){if(t){let t=Z({group:e});if(t===0)return;let n=vo(e.id);if(!n)return;let r=no(e),i=n.defaultLayoutDeferred?ys(r):n.layout,a=Vo({layout:Ss({group:e,nextGroupSize:t,prevGroupSize:n.groupSize,prevLayout:i}),panelConstraints:r});if(!n.defaultLayoutDeferred&&Bo(n.layout,a)&&xs(n.derivedPanelConstraints,r)&&n.groupSize===t)return;xo(e,{defaultLayoutDeferred:!1,derivedPanelConstraints:r,groupSize:t,layout:a,separatorToPanels:n.separatorToPanels})}}else bs(e,i,n)}});a.observe(e.element),e.panels.forEach(e=>{Q(!r.has(e.id),`Panel ids must be unique; id "${e.id}" was used more than once`),r.add(e.id),e.onResize&&a.observe(e.element)});let o=Z({group:e}),s=no(e),c=e.panels.map(({id:e})=>e).join(`,`),l=e.mutableState.defaultLayout;l&&(Cs(e.panels,l)||(l=void 0));let u=Vo({layout:e.mutableState.layouts[c]??l??ys(s),panelConstraints:s}),d=e.element.ownerDocument;ws.set(d,(ws.get(d)??0)+1);let f=new Map;return fo(e).forEach(e=>{e.separator&&f.set(e.separator,e.panels)}),xo(e,{defaultLayoutDeferred:o===0,derivedPanelConstraints:s,groupSize:o,layout:u,separatorToPanels:f}),e.separators.forEach(e=>{Q(!i.has(e.id),`Separator ids must be unique; id "${e.id}" was used more than once`),i.add(e.id),e.element.addEventListener(`keydown`,qo)}),ws.get(d)===1&&(d.addEventListener(`dblclick`,Uo,!0),d.addEventListener(`pointerdown`,es,!0),d.addEventListener(`pointerleave`,hs),d.addEventListener(`pointermove`,gs),d.addEventListener(`pointerout`,_s),d.addEventListener(`pointerup`,vs,!0)),function(){t=!1,ws.set(d,Math.max(0,(ws.get(d)??0)-1)),go(e),e.separators.forEach(e=>{e.element.removeEventListener(`keydown`,qo)}),ws.get(d)||(d.removeEventListener(`dblclick`,Uo,!0),d.removeEventListener(`pointerdown`,es,!0),d.removeEventListener(`pointerleave`,hs),d.removeEventListener(`pointermove`,gs),d.removeEventListener(`pointerout`,_s),d.removeEventListener(`pointerup`,vs,!0)),a.disconnect()}}function Es(){let[e,t]=(0,Y.useState)({});return[e,(0,Y.useCallback)(()=>t({}),[])]}function Ds(e){let t=(0,Y.useId)();return`${e??t}`}var Os=typeof window<`u`?Y.useLayoutEffect:Y.useEffect;function ks(e){let t=(0,Y.useRef)(e);return Os(()=>{t.current=e},[e]),(0,Y.useCallback)((...e)=>t.current?.(...e),[t])}function As(...e){return ks(t=>{e.forEach(e=>{if(e)switch(typeof e){case`function`:e(t);break;case`object`:e.current=t;break}})})}function js(e){let t=(0,Y.useRef)({...e});return Os(()=>{for(let n in e)t.current[n]=e[n]},[e]),t.current}var Ms=(0,Y.createContext)(null);function Ns(e,t){let n=(0,Y.useRef)({getLayout:()=>({}),setLayout:ts});(0,Y.useImperativeHandle)(t,()=>n.current,[]),Os(()=>{Object.assign(n.current,Go({groupId:e}))})}function Ps({children:e,className:t,defaultLayout:n,disableCursor:r,disabled:i,elementRef:a,groupRef:o,id:s,onLayoutChange:c,onLayoutChanged:l,orientation:u=`horizontal`,resizeTargetMinimumSize:d={coarse:20,fine:10},style:f,...p}){let m=(0,Y.useRef)({onLayoutChange:{},onLayoutChanged:{}}),h=ks(e=>{Bo(m.current.onLayoutChange,e)||(m.current.onLayoutChange=e,c?.(e))}),g=ks(e=>{Bo(m.current.onLayoutChanged,e)||(m.current.onLayoutChanged=e,l?.(e))}),_=Ds(s),v=(0,Y.useRef)(null),[y,b]=Es(),x=(0,Y.useRef)({lastExpandedPanelSizes:{},layouts:{},panels:[],resizeTargetMinimumSize:d,separators:[]}),S=As(v,a);Ns(_,o);let C=ks((e,t)=>{let r=Xo(),i=_o(e),a=vo(e);if(a){let e=!1;switch(r.state){case`active`:e=r.hitRegions.some(e=>e.group===i);break}return{flexGrow:a.layout[t]??1,pointerEvents:e?`none`:void 0}}return{flexGrow:n?.[t]??1}}),w=js({defaultLayout:n,disableCursor:r}),T=(0,Y.useMemo)(()=>({get disableCursor(){return!!w.disableCursor},getPanelStyles:C,id:_,orientation:u,registerPanel:e=>{let t=x.current;return t.panels=ro(u,[...t.panels,e]),b(),()=>{t.panels=t.panels.filter(t=>t!==e),b()}},registerSeparator:e=>{let t=x.current;return t.separators=ro(u,[...t.separators,e]),b(),()=>{t.separators=t.separators.filter(t=>t!==e),b()}},togglePanelDisabled:(e,t)=>{let n=x.current.panels.find(t=>t.id===e);n&&(n.panelConstraints.disabled=t);let r=_o(_),i=vo(_);r&&i&&xo(r,{...i,derivedPanelConstraints:no(r)})},toggleSeparatorDisabled:(e,t)=>{let n=x.current.separators.find(t=>t.id===e);n&&(n.disabled=t)}}),[C,_,b,u,w]),E=(0,Y.useRef)(null);return Os(()=>{let e=v.current;if(e===null)return;let t=x.current,n;if(w.defaultLayout!==void 0&&Object.keys(w.defaultLayout).length===t.panels.length){n={};for(let e of t.panels){let t=w.defaultLayout[e.id];t!==void 0&&(n[e.id]=t)}}let r={disabled:!!i,element:e,id:_,mutableState:{defaultLayout:n,disableCursor:!!w.disableCursor,expandedPanelSizes:x.current.lastExpandedPanelSizes,layouts:x.current.layouts},orientation:u,panels:t.panels,resizeTargetMinimumSize:t.resizeTargetMinimumSize,separators:t.separators};E.current=r;let a=Ts(r),{defaultLayoutDeferred:o,derivedPanelConstraints:s,layout:c}=vo(r.id,!0);!o&&s.length>0&&(h(c),g(c));let l=bo(_,e=>{let{defaultLayoutDeferred:t,derivedPanelConstraints:n,layout:i}=e.next;if(t||n.length===0)return;let a=r.panels.map(({id:e})=>e).join(`,`);r.mutableState.layouts[a]=i,n.forEach(t=>{if(t.collapsible){let{layout:n}=e.prev??{};if(n){let e=Io(t.collapsedSize,i[t.panelId]),a=Io(t.collapsedSize,n[t.panelId]);e&&!a&&(r.mutableState.expandedPanelSizes[t.panelId]=n[t.panelId])}}});let o=Xo().state!==`active`;h(i),o&&g(i)});return()=>{E.current=null,a(),l()}},[i,_,g,h,u,y,w]),(0,Y.useEffect)(()=>{let e=E.current;e&&(e.mutableState.defaultLayout=n,e.mutableState.disableCursor=!!r)}),(0,X.jsx)(Ms.Provider,{value:T,children:(0,X.jsx)(`div`,{...p,className:t,"data-group":!0,"data-testid":_,id:_,ref:S,style:{height:`100%`,width:`100%`,overflow:`hidden`,...f,display:`flex`,flexDirection:u===`horizontal`?`row`:`column`,flexWrap:`nowrap`,touchAction:u===`horizontal`?`pan-y`:`pan-x`},children:e})})}Ps.displayName=`Group`;function Fs(){let e=(0,Y.useContext)(Ms);return Q(e,`Group Context not found; did you render a Panel or Separator outside of a Group?`),e}function Is(e,t){let{id:n}=Fs(),r=(0,Y.useRef)({collapse:ns,expand:ns,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:ns});(0,Y.useImperativeHandle)(t,()=>r.current,[]),Os(()=>{Object.assign(r.current,Ho({groupId:n,panelId:e}))})}function Ls({children:e,className:t,collapsedSize:n=`0%`,collapsible:r=!1,defaultSize:i,disabled:a,elementRef:o,groupResizeBehavior:s=`preserve-relative-size`,id:c,maxSize:l=`100%`,minSize:u=`0%`,onResize:d,panelRef:f,style:p,...m}){let h=!!c,g=Ds(c),_=js({disabled:a}),v=(0,Y.useRef)(null),y=As(v,o),{getPanelStyles:b,id:x,orientation:S,registerPanel:C,togglePanelDisabled:w}=Fs(),T=d!==null,E=ks((e,t,n)=>{d?.(e,c,n)});Os(()=>{let e=v.current;if(e!==null)return C({element:e,id:g,idIsStable:h,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:T?E:void 0,panelConstraints:{groupResizeBehavior:s,collapsedSize:n,collapsible:r,defaultSize:i,disabled:_.disabled,maxSize:l,minSize:u}})},[s,n,r,i,T,g,h,l,u,E,C,_]),(0,Y.useEffect)(()=>{w(g,!!a)},[a,g,w]),Is(g,f);let D=(0,Y.useSyncExternalStore)(e=>bo(x,e),()=>JSON.stringify(b(x,g)),()=>JSON.stringify(b(x,g)));return(0,X.jsx)(`div`,{...m,"aria-disabled":a||void 0,"data-panel":!0,"data-testid":g,id:g,ref:y,style:{...Rs,display:`flex`,flexBasis:0,flexShrink:1,overflow:`visible`,...JSON.parse(D)},children:(0,X.jsx)(`div`,{className:t,style:{maxHeight:`100%`,maxWidth:`100%`,flexGrow:1,overflow:`auto`,...p,touchAction:S===`horizontal`?`pan-y`:`pan-x`},children:e})})}Ls.displayName=`Panel`;var Rs={minHeight:0,maxHeight:`100%`,height:`auto`,minWidth:0,maxWidth:`100%`,width:`auto`,border:`none`,borderWidth:0,padding:0,margin:0};function zs({layout:e,panelConstraints:t,panelId:n,panelIndex:r}){let i,a,o=e[n],s=t.find(e=>e.panelId===n);if(s){let c=s.maxSize,l=s.collapsible?s.collapsedSize:s.minSize,u=[r,r+1];a=Vo({layout:zo({delta:l-o,initialLayout:e,panelConstraints:t,pivotIndices:u,prevLayout:e}),panelConstraints:t})[n],i=Vo({layout:zo({delta:c-o,initialLayout:e,panelConstraints:t,pivotIndices:u,prevLayout:e}),panelConstraints:t})[n]}return{valueControls:n,valueMax:i,valueMin:a,valueNow:o}}function Bs({children:e,className:t,disabled:n,elementRef:r,id:i,style:a,...o}){let s=Ds(i),c=js({disabled:n}),[l,u]=(0,Y.useState)({}),[d,f]=(0,Y.useState)(`inactive`),p=(0,Y.useRef)(null),m=As(p,r),{disableCursor:h,id:g,orientation:_,registerSeparator:v,toggleSeparatorDisabled:y}=Fs(),b=_===`horizontal`?`vertical`:`horizontal`;Os(()=>{let e=p.current;if(e!==null){let t={disabled:c.disabled,element:e,id:s},n=v(t),r=Zo(e=>{f(e.next.state!==`inactive`&&e.next.hitRegions.some(e=>e.separator===t)?e.next.state:`inactive`)}),i=bo(g,e=>{let{derivedPanelConstraints:n,layout:r,separatorToPanels:i}=e.next,a=i.get(t);if(a){let e=a[0],t=a.indexOf(e);u(zs({layout:r,panelConstraints:n,panelId:e.id,panelIndex:t}))}});return()=>{r(),i(),n()}}},[g,s,v,c]),(0,Y.useEffect)(()=>{y(s,!!n)},[n,s,y]);let x;return n&&!h&&(x=`not-allowed`),(0,X.jsx)(`div`,{...o,"aria-controls":l.valueControls,"aria-disabled":n||void 0,"aria-orientation":b,"aria-valuemax":l.valueMax,"aria-valuemin":l.valueMin,"aria-valuenow":l.valueNow,children:e,className:t,"data-separator":n?`disabled`:d,"data-testid":s,id:s,ref:m,role:`separator`,style:{flexBasis:`auto`,cursor:x,...a,flexGrow:0,flexShrink:0,touchAction:`none`},tabIndex:n?void 0:0})}Bs.displayName=`Separator`;function Vs(e){let[t,n]=(0,Y.useState)(()=>typeof window<`u`?window.matchMedia(e).matches:!1);return(0,Y.useEffect)(()=>{let t=window.matchMedia(e),r=e=>n(e.matches);return t.addEventListener(`change`,r),n(t.matches),()=>t.removeEventListener(`change`,r)},[e]),t}function Hs(e,t){let[n,r]=(0,Y.useState)(e);return(0,Y.useEffect)(()=>{let n=setTimeout(()=>r(e),t);return()=>clearTimeout(n)},[e,t]),n}function Us(e){let t=Ur(e),n=t?$n(t):null;(0,Y.useEffect)(()=>{t&&Hr.getState().ensure(t)},[t]);let r=Hr(e=>(n?e.byProject[n]?.tags:null)??null),i=(0,Y.useCallback)(()=>{t&&Hr.getState().refreshTags(t)},[t]);return{projectTags:r?.tags??[],tagCounts:r?.counts??{},loadTags:i}}function Ws({projectTags:e,tagCounts:t,totalCount:n,selectedTagId:r,onSelect:i}){return e.length===0?null:(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1.5 overflow-x-auto scrollbar-none`,children:[(0,X.jsxs)(`button`,{onClick:()=>i(null),className:`shrink-0 rounded-md border px-2 py-1 text-[10px] transition-colors ${r===null?`bg-primary/20 border-primary text-primary`:`border-border bg-surface text-text-secondary hover:bg-surface-elevated`}`,children:[`All (`,n,`)`]}),e.map(e=>(0,X.jsxs)(`button`,{onClick:()=>i(r===e.id?null:e.id),className:`shrink-0 flex items-center gap-1 rounded-md border px-2 py-1 text-[10px] transition-colors ${r===e.id?`border-current`:`border-border bg-surface hover:bg-surface-elevated`}`,style:r===e.id?{backgroundColor:e.color+`20`,color:e.color,borderColor:e.color}:void 0,children:[(0,X.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:e.color}}),e.name,` (`,t[e.id]??0,`)`]},e.id))]})}var Gs={approval_request:`bg-error`,question:`bg-warning`,done:`bg-primary`},Ks={done:0,question:1,approval_request:2};function qs(e){return e&&Gs[e]||`bg-error`}var Js={approval_request:`bg-error/10`,question:`bg-warning/10`,done:`bg-primary/10`};function Ys(e){return e&&Js[e]||`bg-error/10`}var Xs=lr()(e=>({notifications:new Map,addNotification:(t,n,r,i)=>{e(e=>{let a=new Map(e.notifications),o=a.get(t);return a.set(t,{count:(o?.count??0)+1,type:n,projectName:r,sessionTitle:i??o?.sessionTitle??null}),{notifications:a}})},markUnread:(t,n,r)=>{e(e=>{let i=new Map(e.notifications);return i.set(t,{count:1,type:`done`,projectName:n,sessionTitle:r??i.get(t)?.sessionTitle??null,manual:!0}),{notifications:i}}),B.post(`/api/project/${encodeURIComponent(n)}/chat/sessions/${encodeURIComponent(t)}/unread`,{projectName:n}).catch(()=>{})},clearForSession:t=>{let n=Xs.getState().notifications.get(t)?.projectName;e(e=>{if(!e.notifications.has(t))return e;let n=new Map(e.notifications);return n.delete(t),{notifications:n}}),n&&B.post(`/api/project/${encodeURIComponent(n)}/chat/sessions/${encodeURIComponent(t)}/read`).catch(()=>{})},clearAll:()=>{let t=[...Xs.getState().notifications];t.length!==0&&(e({notifications:new Map}),B.post(`/api/chat/sessions/read`,{sessionIds:t.map(([e])=>e)}).catch(()=>{e(e=>{let n=new Map(e.notifications);for(let[e,r]of t)n.has(e)||n.set(e,r);return{notifications:n}})}))},loadFromServer:async t=>{try{let n=await B.get(`/api/project/${encodeURIComponent(t)}/chat/sessions/unread`);e(()=>{let e=new Map;for(let t of n)t.unreadCount>0&&e.set(t.sessionId,{count:t.unreadCount,type:t.unreadType||`done`,projectName:t.projectName||``,sessionTitle:t.sessionTitle??null});return{notifications:e}})}catch{}},handleUnreadChanged:(t,n,r,i,a,o)=>{e(e=>{let s=new Map(e.notifications);if(n===0)s.delete(t);else{let e=s.get(t);s.set(t,{count:n>0?n:(e?.count??0)+1,type:r||`done`,projectName:i||e?.projectName||``,sessionTitle:a??e?.sessionTitle??null,manual:o??e?.manual})}return{notifications:s}})}}));function Zs(e){return e.notifications.size}function Qs(e){return t=>{if(!e)return 0;let n=0;for(let[,r]of t.notifications)r.projectName===e&&n++;return n}}function $s(e){return t=>{let n=null,r=-1;for(let[,i]of t.notifications){if(i.projectName!==e)continue;let t=Ks[i.type]??0;t>r&&(r=t,n=i.type)}return n}}function ec({session:e,projectName:t,projectTags:n,children:r,onTogglePin:i,onStartEditing:a,onDeleteSession:o,onTagChanged:s}){let c=Xs(e=>e.markUnread),l=Xs(t=>t.notifications.has(e.id)),u=(0,Y.useCallback)(async r=>{let i=r?n.find(e=>e.id===r):void 0;if(r&&!i)return;let a=e.tag??null;s(e.id,i?{id:i.id,name:i.name,color:i.color}:null);let o=`${z(t)}/chat/sessions/${e.id}/tag`;await Ir(Gr(t),()=>r?B.patch(o,{tagId:r}):B.del(o))||s(e.id,a)},[e.id,e.tag,t,n,s]);return(0,X.jsxs)(ni,{children:[(0,X.jsx)(ri,{asChild:!0,children:r}),(0,X.jsxs)(Qr,{children:[(0,X.jsxs)(ei,{onClick:t=>i(t,e),children:[e.pinned?(0,X.jsx)(ze,{className:`size-3.5 mr-2`}):(0,X.jsx)(Cn,{className:`size-3.5 mr-2`}),e.pinned?`Unpin`:`Pin`]}),!l&&(0,X.jsxs)(ei,{onClick:()=>c(e.id,t,e.title),children:[(0,X.jsx)(qn,{className:`size-3.5 mr-2 fill-primary text-primary`}),`Mark as unread`]}),a&&(0,X.jsxs)(ei,{onClick:t=>a(e,t),children:[(0,X.jsx)(yt,{className:`size-3.5 mr-2`}),`Rename`]}),n.length>0&&(0,X.jsxs)(ti,{children:[(0,X.jsxs)(Zr,{children:[(0,X.jsx)(Ee,{className:`size-3.5 mr-2`}),`Set Tag`]}),(0,X.jsxs)(Yr,{children:[n.map(t=>(0,X.jsxs)(ei,{onClick:()=>u(t.id),children:[(0,X.jsx)(`span`,{className:`size-2.5 rounded-full mr-2 shrink-0`,style:{backgroundColor:t.color}}),t.name,e.tag?.id===t.id&&(0,X.jsx)(Rn,{className:`size-3 ml-auto`})]},t.id)),e.tag&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)($r,{}),(0,X.jsx)(ei,{onClick:()=>u(null),children:`Remove tag`})]})]})]}),o&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)($r,{}),(0,X.jsxs)(ei,{className:`text-error focus:text-error`,onClick:t=>o(t,e),children:[(0,X.jsx)(Je,{className:`size-3.5 mr-2`}),`Delete`]})]})]})]})}function tc({name:e,children:t,...n}){return(0,X.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:24,height:24,"aria-hidden":`true`,focusable:`false`,"data-provider-logo":e,...n,children:t})}function nc(e){return(0,X.jsx)(tc,{name:`claude`,...e,children:(0,X.jsx)(`path`,{d:`M4.709 15.955l4.72-2.647.08-.23-.08-.128H9.2l-.79-.048-2.698-.073-2.339-.097-2.266-.122-.571-.121L0 11.784l.055-.352.48-.321.686.06 1.52.103 2.278.158 1.652.097 2.449.255h.389l.055-.157-.134-.098-.103-.097-2.358-1.596-2.552-1.688-1.336-.972-.724-.491-.364-.462-.158-1.008.656-.722.881.06.225.061.893.686 1.908 1.476 2.491 1.833.365.304.145-.103.019-.073-.164-.274-1.355-2.446-1.446-2.49-.644-1.032-.17-.619a2.97 2.97 0 01-.104-.729L6.283.134 6.696 0l.996.134.42.364.62 1.414 1.002 2.229 1.555 3.03.456.898.243.832.091.255h.158V9.01l.128-1.706.237-2.095.23-2.695.08-.76.376-.91.747-.492.584.28.48.685-.067.444-.286 1.851-.559 2.903-.364 1.942h.212l.243-.242.985-1.306 1.652-2.064.73-.82.85-.904.547-.431h1.033l.76 1.129-.34 1.166-1.064 1.347-.881 1.142-1.264 1.7-.79 1.36.073.11.188-.02 2.856-.606 1.543-.28 1.841-.315.833.388.091.395-.328.807-1.969.486-2.309.462-3.439.813-.042.03.049.061 1.549.146.662.036h1.622l3.02.225.79.522.474.638-.079.485-1.215.62-1.64-.389-3.829-.91-1.312-.329h-.182v.11l1.093 1.068 2.006 1.81 2.509 2.33.127.578-.322.455-.34-.049-2.205-1.657-.851-.747-1.926-1.62h-.128v.17l.444.649 2.345 3.521.122 1.08-.17.353-.608.213-.668-.122-1.374-1.925-1.415-2.167-1.143-1.943-.14.08-.674 7.254-.316.37-.729.28-.607-.461-.322-.747.322-1.476.389-1.924.315-1.53.286-1.9.17-.632-.012-.042-.14.018-1.434 1.967-2.18 2.945-1.726 1.845-.414.164-.717-.37.067-.662.401-.589 2.388-3.036 1.44-1.882.93-1.086-.006-.158h-.055L4.132 18.56l-1.13.146-.487-.456.061-.746.231-.243 1.908-1.312-.006.006z`,fill:`#D97757`})})}function rc(e){let t=`${(0,Y.useId)()}codex`;return(0,X.jsxs)(tc,{name:`codex`,...e,children:[(0,X.jsx)(`defs`,{children:(0,X.jsxs)(`linearGradient`,{id:t,gradientUnits:`userSpaceOnUse`,x1:`12`,x2:`12`,y1:`0`,y2:`24`,children:[(0,X.jsx)(`stop`,{stopColor:`#B1A7FF`}),(0,X.jsx)(`stop`,{offset:`.5`,stopColor:`#7A9DFF`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`#3941FF`})]})}),(0,X.jsx)(`path`,{d:`M8.086.457a6.105 6.105 0 013.046-.415c1.333.153 2.521.72 3.564 1.7a.117.117 0 00.107.029c1.408-.346 2.762-.224 4.061.366l.063.03.154.076c1.357.703 2.33 1.77 2.918 3.198.278.679.418 1.388.421 2.126a5.655 5.655 0 01-.18 1.631.167.167 0 00.04.155 5.982 5.982 0 011.578 2.891c.385 1.901-.01 3.615-1.183 5.14l-.182.22a6.063 6.063 0 01-2.934 1.851.162.162 0 00-.108.102c-.255.736-.511 1.364-.987 1.992-1.199 1.582-2.962 2.462-4.948 2.451-1.583-.008-2.986-.587-4.21-1.736a.145.145 0 00-.14-.032c-.518.167-1.04.191-1.604.185a5.924 5.924 0 01-2.595-.622 6.058 6.058 0 01-2.146-1.781c-.203-.269-.404-.522-.551-.821a7.74 7.74 0 01-.495-1.283 6.11 6.11 0 01-.017-3.064.166.166 0 00.008-.074.115.115 0 00-.037-.064 5.958 5.958 0 01-1.38-2.202 5.196 5.196 0 01-.333-1.589 6.915 6.915 0 01.188-2.132c.45-1.484 1.309-2.648 2.577-3.493.282-.188.55-.334.802-.438.286-.12.573-.22.861-.304a.129.129 0 00.087-.087A6.016 6.016 0 015.635 2.31C6.315 1.464 7.132.846 8.086.457zm-.804 7.85a.848.848 0 00-1.473.842l1.694 2.965-1.688 2.848a.849.849 0 001.46.864l1.94-3.272a.849.849 0 00.007-.854l-1.94-3.393zm5.446 6.24a.849.849 0 000 1.695h4.848a.849.849 0 000-1.696h-4.848z`,fill:`url(#${t})`,fillRule:`evenodd`,clipRule:`evenodd`})]})}function ic(e){return(0,X.jsx)(tc,{name:`cursor`,fill:`currentColor`,...e,children:(0,X.jsx)(`path`,{d:`M22.106 5.68L12.5.135a.998.998 0 00-.998 0L1.893 5.68a.84.84 0 00-.419.726v11.186c0 .3.16.577.42.727l9.607 5.547a.999.999 0 00.998 0l9.608-5.547a.84.84 0 00.42-.727V6.407a.84.84 0 00-.42-.726zm-.603 1.176L12.228 22.92c-.063.108-.228.064-.228-.061V12.34a.59.59 0 00-.295-.51l-9.11-5.26c-.107-.062-.063-.228.062-.228h18.55c.264 0 .428.286.296.514z`,fillRule:`evenodd`})})}function ac(e){let t=(0,Y.useId)(),n=[`#3186FF`,`url(#${t}green)`,`url(#${t}red)`,`url(#${t}yellow)`];return(0,X.jsxs)(tc,{name:`gemini`,...e,children:[(0,X.jsxs)(`defs`,{children:[(0,X.jsxs)(`linearGradient`,{id:`${t}green`,gradientUnits:`userSpaceOnUse`,x1:`7`,x2:`11`,y1:`15.5`,y2:`12`,children:[(0,X.jsx)(`stop`,{stopColor:`#08B962`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`#08B962`,stopOpacity:`0`})]}),(0,X.jsxs)(`linearGradient`,{id:`${t}red`,gradientUnits:`userSpaceOnUse`,x1:`8`,x2:`11.5`,y1:`5.5`,y2:`11`,children:[(0,X.jsx)(`stop`,{stopColor:`#F94543`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`#F94543`,stopOpacity:`0`})]}),(0,X.jsxs)(`linearGradient`,{id:`${t}yellow`,gradientUnits:`userSpaceOnUse`,x1:`3.5`,x2:`17.5`,y1:`13.5`,y2:`12`,children:[(0,X.jsx)(`stop`,{stopColor:`#FABC12`}),(0,X.jsx)(`stop`,{offset:`.46`,stopColor:`#FABC12`,stopOpacity:`0`})]})]}),n.map(e=>(0,X.jsx)(`path`,{d:`M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z`,fill:e},e))]})}var oc={claude:nc,codex:rc,cursor:ic,gemini:ac};function sc({providerId:e,className:t}){let n=e?oc[e]:void 0;return n?(0,X.jsx)(n,{className:U(`shrink-0`,t)}):(0,X.jsx)(`span`,{className:U(`inline-flex items-center justify-center rounded bg-surface-elevated text-[10px] font-bold text-text-subtle shrink-0`,t),children:`?`})}function cc({value:e,onChange:t,projectName:n}){let[r,i]=(0,Y.useState)(null),a=r?.projectName===n?r.providers:ai(n)??[],o=r?.projectName===n&&r.error,[s,c]=(0,Y.useState)(!1),l=(0,Y.useRef)(null),u=(0,Y.useRef)(0);(0,Y.useEffect)(()=>{if(!s||!n)return;let e=!0;return ii(n).then(t=>{e&&i({projectName:n,providers:t})}).catch(()=>{e&&i({projectName:n,providers:ai(n)??[],error:!0})}),()=>{e=!1}},[n,s]),(0,Y.useEffect)(()=>{if(!s)return;let e=e=>{l.current&&!l.current.contains(e.target)&&c(!1)},t=l.current?.ownerDocument??document;return t.addEventListener(`mousedown`,e),()=>t.removeEventListener(`mousedown`,e)},[s]),(0,Y.useEffect)(()=>{s&&(u.current=Math.max(0,a.findIndex(t=>t.id===e)))},[s,e,a]);let d=(0,Y.useCallback)(e=>{if(e.key===`Escape`){c(!1);return}if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault();let t=e.key===`ArrowDown`?1:-1;if(!a.length)return;u.current=(u.current+t+a.length)%a.length,(l.current?.querySelector(`[data-idx="${u.current}"]`))?.focus()}if(e.key===`Enter`){e.preventDefault();let n=a[u.current];n&&(t(n.id),c(!1))}},[t,a]),f=a.find(t=>t.id===e);return(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),c(e=>!e)},className:`inline-flex items-center gap-1.5 px-[9px] py-1 rounded-full text-[11.5px] text-text-2 bg-panel-2 border border-border-soft hover:text-text-primary hover:border-border transition-colors`,"aria-label":`AI Provider: ${f?.name??e}`,children:[(0,X.jsx)(sc,{providerId:e,className:`size-3.5`}),(0,X.jsx)(`span`,{className:`max-w-[80px] truncate capitalize`,children:f?.name??e})]}),s&&(0,X.jsxs)(`div`,{ref:l,role:`listbox`,"aria-label":`AI Providers`,onKeyDown:d,onMouseDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),className:`absolute bottom-full left-0 mb-1 z-50 w-56 rounded-lg border border-border popover-solid shadow-[var(--shadow-panel)]`,children:[(0,X.jsx)(`div`,{className:`px-3 py-2 border-b border-border`,children:(0,X.jsx)(`span`,{className:`text-xs font-medium text-text-secondary`,children:`Provider`})}),(0,X.jsxs)(`div`,{className:`py-1`,children:[a.length===0&&(0,X.jsx)(`div`,{role:`status`,className:`px-3 py-2 text-xs text-text-secondary`,children:o?`Unable to load providers`:r?.projectName===n?`No providers available`:`Loading providers...`}),a.map((n,r)=>{let i=n.id===e;return(0,X.jsxs)(`button`,{"data-idx":r,role:`option`,"aria-selected":i,tabIndex:0,onClick:()=>{t(n.id),c(!1)},className:`w-full flex items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-surface-elevated focus:bg-surface-elevated focus:outline-none ${i?`bg-surface-elevated`:``}`,children:[(0,X.jsx)(sc,{providerId:n.id,className:`size-4`}),(0,X.jsx)(`span`,{className:`flex-1 text-sm font-medium text-text-primary capitalize`,children:n.name}),i&&(0,X.jsx)(Rn,{className:`size-4 shrink-0 text-primary`})]},n.id)})]})]})]})}function lc({providerId:e}){return(0,X.jsx)(`span`,{className:`inline-flex shrink-0`,title:e,children:(0,X.jsx)(sc,{providerId:e,className:`size-4`})})}var uc=300,dc=4e3;function fc({project:e,className:t}){let n=$n(e),r=Hr(e=>e.byProject[n]?.isSyncing??!1),i=Hr(e=>e.byProject[n]?.lastSyncError??null),[a,o]=(0,Y.useState)(!1),s=(0,Y.useRef)(null),c=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{if(r){c.current&&=(clearTimeout(c.current),null),s.current=Date.now(),o(!0);return}if(!a)return;let e=s.current?Date.now()-s.current:uc,t=Math.max(0,uc-e);return c.current=setTimeout(()=>{o(!1),s.current=null},t),()=>{c.current&&clearTimeout(c.current)}},[r]);let[l,u]=(0,Y.useState)(!1),d=(0,Y.useRef)(null);return(0,Y.useEffect)(()=>{if(!i){d.current=null;return}if(i===d.current)return;d.current=i,u(!0);let e=setTimeout(()=>u(!1),dc);return()=>clearTimeout(e)},[i]),!a&&!l?null:(0,X.jsx)(`span`,{role:`status`,"aria-live":`polite`,className:U(`inline-flex items-center gap-1 text-xs text-text-dim`,t),children:a?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(en,{className:`size-3 animate-spin motion-reduce:animate-none`,"aria-hidden":`true`}),`Syncing…`]}):`Offline — showing saved list`})}var pc=5,mc=20;function hc({projectName:e,onSelectSession:t,className:n}){return(0,X.jsx)(gc,{projectName:e,onSelectSession:t,className:n},e)}function gc({projectName:e,onSelectSession:t,className:n}){let r=Ur(e),i=r?$n(r):null;(0,Y.useEffect)(()=>{r&&Hr.getState().ensure(r)},[r]);let a=Hr(e=>(i?e.byProject[i]?.sessions:void 0)??zr),[o,s]=(0,Y.useState)(null),c=(0,Y.useRef)(0),[l,u]=(0,Y.useState)(!1),[d,f]=(0,Y.useState)(``),p=Hs(d,300),[m,h]=(0,Y.useState)(null),{projectTags:g,tagCounts:_,loadTags:v}=Us(e);(0,Y.useEffect)(()=>{if(!e||!p){s(null);return}let t=++c.current;return(async()=>{try{let n=new URLSearchParams({limit:String(mc),q:p}),r=await B.get(`${z(e)}/chat/sessions?${n}`);if(t!==c.current)return;s(r.sessions.slice(0,mc))}catch{}})(),()=>{++c.current}},[e,p]);let y=o??a.slice(0,mc),b=(0,Y.useCallback)(async(e,t)=>{if(e.stopPropagation(),!r)return;let n=`${z(r.name)}/chat/sessions/${t.id}/pin`,i=!t.pinned,a=e=>s(n=>n&&n.map(n=>n.id===t.id?{...n,pinned:e}:n));Hr.getState().setPinned(r,t.id,i),a(i),await Ir(r,()=>i?B.put(n):B.del(n))||a(!i)},[r]),x=(0,Y.useCallback)((e,t)=>{r&&Hr.getState().setSessionTag(r,e,t),s(n=>n&&n.map(n=>n.id===e?{...n,tag:t}:n)),v()},[v,r]),S=m===null?y:y.filter(e=>e.tag?.id===m),C=S.filter(e=>e.pinned),w=S.filter(e=>!e.pinned),T=l?w:w.slice(0,pc),E=w.length>pc;return!e||y.length===0&&!d?null:(0,X.jsxs)(`div`,{className:n,children:[(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsx)(Nn,{className:`absolute left-2.5 top-1/2 -translate-y-1/2 size-3.5 text-text-subtle pointer-events-none`}),(0,X.jsx)(`input`,{type:`text`,value:d,onChange:e=>f(e.target.value),placeholder:`Search chats...`,className:`w-full pl-8 pr-8 py-1.5 text-xs rounded-md border border-border bg-surface text-text-primary placeholder:text-text-subtle focus:outline-none focus:ring-1 focus:ring-primary/50`}),d&&(0,X.jsx)(`button`,{onClick:()=>f(``),className:`absolute right-2 top-1/2 -translate-y-1/2 text-text-subtle hover:text-text-primary`,children:(0,X.jsx)(Be,{className:`size-3.5`})})]}),(0,X.jsx)(`div`,{className:`mt-3`,children:(0,X.jsx)(Ws,{projectTags:g,tagCounts:_,totalCount:y.length,selectedTagId:m,onSelect:h})}),C.length>0&&(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 w-full mt-4`,children:[(0,X.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Pinned`}),(0,X.jsx)(`div`,{className:`w-full rounded-md border border-border bg-surface overflow-hidden`,children:C.map(n=>(0,X.jsx)(_c,{session:n,projectName:e,projectTags:g,onSelect:t,onTogglePin:b,onTagChanged:x},n.id))})]}),T.length>0&&(0,X.jsxs)(`div`,{className:`flex flex-col gap-2 w-full mt-4`,children:[(0,X.jsxs)(`p`,{className:`text-xs text-text-subtle text-center`,children:[`Recent chats`,r&&(0,X.jsx)(fc,{project:r,className:`ml-1.5`})]}),(0,X.jsx)(`div`,{className:`w-full rounded-md border border-border bg-surface overflow-hidden`,children:T.map(n=>(0,X.jsx)(_c,{session:n,projectName:e,projectTags:g,onSelect:t,onTogglePin:b,onTagChanged:x},n.id))}),E&&(0,X.jsxs)(`button`,{onClick:()=>u(!l),className:`flex items-center justify-center gap-1 text-[11px] text-text-subtle hover:text-text-primary transition-colors py-1`,children:[l?(0,X.jsx)(Xe,{className:`size-3`}):(0,X.jsx)(Qe,{className:`size-3`}),l?`Show less`:`Show more (${w.length-pc})`]})]})]})}function _c({session:e,projectName:t,projectTags:n,onSelect:r,onTogglePin:i,onTagChanged:a}){let o=Xs(t=>t.notifications.get(e.id));return(0,X.jsx)(ec,{session:e,projectName:t,projectTags:n,onTogglePin:i,onTagChanged:a,children:(0,X.jsxs)(`button`,{onClick:()=>r(e),className:U(`group flex items-center gap-2.5 w-full px-3 py-2.5 text-left hover:bg-surface-elevated active:bg-surface-elevated transition-colors border-b border-border/50 last:border-0`,o&&Ys(o.type)),children:[(0,X.jsx)(lc,{providerId:e.providerId}),e.tag&&(0,X.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:e.tag.color},title:e.tag.name}),(0,X.jsx)(`span`,{className:U(`flex-1 min-w-0 text-xs truncate`,o?`font-semibold text-foreground`:`font-medium text-text-primary`),children:e.title||`Untitled`}),e.updatedAt&&(0,X.jsx)(`span`,{className:`text-[10px] text-text-subtle shrink-0`,children:qr(e.updatedAt)}),(0,X.jsx)(`span`,{role:`button`,tabIndex:0,onClick:t=>i(t,e),className:`p-1 rounded transition-colors shrink-0 ${e.pinned?`text-primary hover:text-primary/70`:`text-text-subtle can-hover:opacity-0 can-hover:group-hover:opacity-100 hover:text-text-primary`}`,"aria-label":e.pinned?`Unpin session`:`Pin session`,children:e.pinned?(0,X.jsx)(ze,{className:`size-3`}):(0,X.jsx)(Cn,{className:`size-3`})})]})})}function vc(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}var yc=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return yc(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return yc(t)(e)}}}},bc=(e,t)=>(n,r,i)=>{let a={storage:vc(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return yc(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(m,void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},xc=5e5,Sc=lr()(bc(e=>({selection:null,setSelection:t=>e({selection:t}),clearSelection:()=>e({selection:null})}),{name:`ppm:compare-selection`,partialize:e=>{if(!e.selection)return{selection:null};let t=e.selection;if(t.dirtyContent&&t.dirtyContent.length>xc){let{dirtyContent:e,...n}=t;return{selection:n}}return{selection:t}}})),Cc=null;G.subscribe(e=>{let t=e.activeProject?.name??null;Cc!==null&&Cc!==t&&Sc.getState().clearSelection(),Cc=t});async function wc(e,t,n){let r=`${dr(e.path)} ↔ ${dr(t.path)}`,i=e.dirtyContent!==void 0,a=t.dirtyContent!==void 0,o;if(i||a){let[r,i]=await Promise.all([Tc(e,n),Tc(t,n)]);o={projectName:n,original:r,modified:i,file1:e.path,file2:t.path}}else o={projectName:n,file1:e.path,file2:t.path};return K.getState().openTab({type:`git-diff`,title:r,projectId:n,metadata:o,closable:!0})}async function Tc(e,t){if(e.dirtyContent!==void 0)return e.dirtyContent;try{let{content:n}=await B.get(`${z(t)}/files/read?path=${encodeURIComponent(e.path)}`);return n}catch(t){let n=t instanceof Error?t.message:String(t);throw Error(`Failed to read "${e.path}": ${n}`)}}var Ec=`application/ppm-tab`,Dc=!1,Oc=new Set;function kc(e){Dc!==e&&(Dc=e,Oc.forEach(e=>e()))}function Ac(){return(0,Y.useSyncExternalStore)(e=>(Oc.add(e),()=>Oc.delete(e)),()=>Dc)}function jc(){kc(!1)}function Mc(e){let[t,n]=(0,Y.useState)(null),r=(0,Y.useRef)(null);return{dropIndex:t,handleDragStart:(0,Y.useCallback)((t,n)=>{let r={tabId:n,panelId:e};t.dataTransfer.setData(Ec,JSON.stringify(r)),t.dataTransfer.effectAllowed=`move`,requestAnimationFrame(()=>kc(!0))},[e]),handleDragOver:(0,Y.useCallback)((e,t,i)=>{if(!e.dataTransfer.types.includes(`application/ppm-tab`)||(e.preventDefault(),e.dataTransfer.dropEffect=`move`,r.current===t))return;r.current=t;let a=e.currentTarget.getBoundingClientRect(),o=a.left+a.width/2;n(e.clientX<o?i:i+1)},[]),handleDragOverBar:(0,Y.useCallback)(e=>{e.dataTransfer.types.includes(`application/ppm-tab`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`move`)},[]),handleDrop:(0,Y.useCallback)(i=>{i.preventDefault(),kc(!1);let a=i.dataTransfer.getData(Ec);if(a){try{let n=JSON.parse(a),r=W.getState();n.panelId===e?t!==null&&r.reorderTab(n.tabId,e,t):r.moveTab(n.tabId,n.panelId,e,t??void 0)}catch{}n(null),r.current=null}},[e,t]),handleDragEnd:(0,Y.useCallback)(()=>{kc(!1),n(null),r.current=null},[])}}var Nc=null,Pc=null,Fc=0,Ic=new Set;function Lc(){Ic.forEach(e=>e())}function Rc(){return(0,Y.useSyncExternalStore)(e=>(Ic.add(e),()=>Ic.delete(e)),()=>Pc)}function zc(){return Date.now()-Fc<300}var Bc=null;function Vc(e,t,n){let r=document.createElement(`div`);r.id=`touch-drag-ghost`,Object.assign(r.style,{position:`fixed`,zIndex:`9999`,pointerEvents:`none`,padding:`6px 14px`,borderRadius:`8px`,background:`rgba(30,30,30,0.92)`,color:`#fff`,fontSize:`12px`,whiteSpace:`nowrap`,opacity:`0.95`,boxShadow:`0 4px 16px rgba(0,0,0,0.35)`,transform:`translate(-50%, -130%)`,left:`${t}px`,top:`${n}px`}),r.textContent=e,document.body.appendChild(r),Bc=r}function Hc(e,t){Bc&&(Bc.style.left=`${e}px`,Bc.style.top=`${t}px`)}function Uc(){Bc?.remove(),Bc=null}function Wc(e,t){Bc&&(Bc.style.display=`none`);let n=document.elementFromPoint(e,t);Bc&&(Bc.style.display=``);let r=n?.closest(`[data-panel-drop-zone]`);if(!r)return null;let i=r.dataset.panelDropZone,a=r.getBoundingClientRect(),o=(e-a.left)/a.width,s=(t-a.top)/a.height,c=.25,{grid:l}=W.getState(),u=window.innerWidth<768,d=hr(l,i),f=d?!u&&(l[d.row]?.length??0)<_r(!1):!1,p=!u&&l.length<3,m=`center`;return o<c&&f?m=`left`:o>1-c&&f?m=`right`:s<c&&p?m=`top`:s>1-c&&p&&(m=`bottom`),{panelId:i,zone:m}}function Gc(e){if(!Nc)return;e.preventDefault();let t=e.touches[0];if(!t)return;Hc(t.clientX,t.clientY);let n=Wc(t.clientX,t.clientY);(n?.panelId!==Pc?.panelId||n?.zone!==Pc?.zone)&&(Pc=n,Lc())}function Kc(){Nc=null,Pc=null,Lc(),Uc(),jc(),document.removeEventListener(`touchmove`,Gc),document.removeEventListener(`touchend`,qc),document.removeEventListener(`touchcancel`,Jc)}function qc(){let e=Nc,t=Pc;if(Kc(),Fc=Date.now(),!e||!t)return;let n=W.getState();if(t.zone===`center`)e.panelId!==t.panelId&&n.moveTab(e.tabId,e.panelId,t.panelId);else{let r=t.zone===`top`?`up`:t.zone===`bottom`?`down`:t.zone;n.splitPanel(r,e.tabId,e.panelId,t.panelId)}}function Jc(){Kc(),Fc=Date.now()}function Yc(e,t,n,r){Nc=e,kc(!0),Vc(t,n,r),document.addEventListener(`touchmove`,Gc,{passive:!1}),document.addEventListener(`touchend`,qc),document.addEventListener(`touchcancel`,Jc)}var Xc=200,Zc=10;function Qc(e){let t=(0,Y.useRef)(null),n=(0,Y.useRef)(null),r=(0,Y.useRef)(!1),i=(0,Y.useCallback)((i,a,o)=>{let s=i.touches[0];s&&(n.current={x:s.clientX,y:s.clientY},r.current=!1,t.current=setTimeout(()=>{r.current=!0,Yc({tabId:a,panelId:e},o,n.current.x,n.current.y)},Xc))},[e]),a=(0,Y.useCallback)(e=>{if(r.current||!n.current||!t.current)return;let i=e.touches[0];i&&(Math.abs(i.clientX-n.current.x)>Zc||Math.abs(i.clientY-n.current.y)>Zc)&&(clearTimeout(t.current),t.current=null)},[]),o=(0,Y.useCallback)(()=>{t.current&&=(clearTimeout(t.current),null)},[]),s=(0,Y.useCallback)(()=>{t.current&&=(clearTimeout(t.current),null),n.current=null},[]);return(0,Y.useEffect)(()=>()=>{t.current&&clearTimeout(t.current)},[]),{handleTouchStart:i,handleTouchMove:a,handleTouchEnd:o,handleTouchCancel:s}}var $c=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.userAgent),el=[{id:`command-palette`,label:`Command Palette`,category:`general`,defaultKey:`F1`,note:`Shift+Shift also opens (not customizable)`},{id:`toggle-sidebar`,label:`Toggle Sidebar`,category:`general`,defaultKey:`Mod+B`},{id:`toggle-dock`,label:`Toggle Terminal Panel`,category:`general`,defaultKey:`Mod+'`,note:"Opens/closes the terminal panel; auto-opens a terminal when empty. Fires even when a terminal is focused. Ctrl+` also toggles it on desktop (fixed)."},{id:`save-prevent`,label:`Prevent Save Dialog`,category:`general`,defaultKey:`Mod+S`,locked:!0,note:`Always active — prevents browser save`},{id:`next-tab`,label:`Next Tab`,category:`tabs`,defaultKey:`Alt+]`},{id:`prev-tab`,label:`Previous Tab`,category:`tabs`,defaultKey:`Alt+[`},{id:`new-file`,label:`New File`,category:`tabs`,defaultKey:`Mod+N`},{id:`open-chat`,label:`Open Chat`,category:`tabs`,defaultKey:`Mod+L`},{id:`open-terminal`,label:`Open Terminal Tab`,category:`tabs`,defaultKey:``,note:`No default shortcut — Mod+' now toggles the terminal panel; still available via the command palette`},{id:`open-settings`,label:`Open Settings`,category:`tabs`,defaultKey:`Mod+,`},{id:`open-git-status`,label:`Git Status (sidebar)`,category:`tabs`,defaultKey:`Mod+Shift+E`},{id:`open-search`,label:`Search Files (sidebar)`,category:`tabs`,defaultKey:`Mod+Shift+F`},{id:`open-problems`,label:`Problems`,category:`tabs`,defaultKey:`Mod+Shift+M`,note:`Errors and warnings across the open files, in the panel — VS Code's shortcut`},{id:`voice-input`,label:`Voice Input`,category:`general`,defaultKey:`Mod+Shift+V`,note:`Toggle speech-to-text in chat`},{id:`chat-nav-prev`,label:`Previous Chat Message`,category:`general`,defaultKey:`Alt+ArrowUp`,note:`Jump to your previous message in the visible chat transcript`},{id:`chat-nav-next`,label:`Next Chat Message`,category:`general`,defaultKey:`Alt+ArrowDown`,note:`Jump to your next message in the visible chat transcript`},{id:`compare-files`,label:`Compare Files...`,category:`general`,defaultKey:`Mod+Alt+D`,note:`Open file-compare picker (seeds active file as A)`},...Array.from({length:9},(e,t)=>({id:`switch-project-${t+1}`,label:`Switch to Project ${t+1}`,category:`projects`,defaultKey:`Mod+${t+1}`}))],tl=new Map(el.map(e=>[e.id,e.defaultKey]));function nl(e){let t=e.split(`+`),n={ctrl:!1,meta:!1,alt:!1,shift:!1,key:``};for(let e of t){let t=e.trim();switch(t){case`Mod`:$c?n.meta=!0:n.ctrl=!0;break;case`Ctrl`:n.ctrl=!0;break;case`Meta`:case`Cmd`:n.meta=!0;break;case`Alt`:n.alt=!0;break;case`Shift`:n.shift=!0;break;default:n.key=t.toLowerCase();break}}return n}function rl(e,t){return e.ctrlKey!==t.ctrl||e.metaKey!==t.meta||e.altKey!==t.alt||e.shiftKey!==t.shift?!1:e.key.toLowerCase()===t.key}var il=nl("Ctrl+`");function al(e,t){return!t&&rl(e,il)}function ol(e){return e.replace(/Mod/g,$c?`⌘`:`Ctrl`).replace(/Shift/g,$c?`⇧`:`Shift`).replace(/Alt/g,$c?`⌥`:`Alt`).replace(/Meta|Cmd/g,`⌘`).replace(/Ctrl/g,$c?`⌃`:`Ctrl`)}function sl(e){if([`Control`,`Meta`,`Alt`,`Shift`].includes(e.key))return null;let t=[];e.ctrlKey&&!e.metaKey&&t.push($c?`Ctrl`:`Mod`),e.metaKey&&t.push($c?`Mod`:`Meta`),e.altKey&&t.push(`Alt`),e.shiftKey&&t.push(`Shift`);let n=e.key;return n===` `?n=`Space`:n.length===1&&(n=n.toUpperCase()),t.push(n),t.join(`+`)}function cl(e){let t=new Map;for(let n of el){let r=e[n.id]??n.defaultKey;r&&t.set(n.id,nl(r))}return t}var ll=cl({}),ul=lr((e,t)=>({overrides:{},parsedCache:ll,loaded:!1,getBinding:e=>t().overrides[e]??tl.get(e)??``,matchesEvent:(e,n)=>{let r=t().parsedCache.get(n);return r?rl(e,r):!1},setBinding:(n,r)=>{let i={...t().overrides,[n]:r};e({overrides:i,parsedCache:cl(i)}),B.put(`/api/settings/keybindings`,{[n]:r}).catch(()=>{})},resetBinding:n=>{let r={...t().overrides};delete r[n],e({overrides:r,parsedCache:cl(r)}),B.put(`/api/settings/keybindings`,{[n]:null}).catch(()=>{})},resetAll:()=>{let n={};for(let e of Object.keys(t().overrides))n[e]=null;e({overrides:{},parsedCache:cl({})}),Object.keys(n).length>0&&B.put(`/api/settings/keybindings`,n).catch(()=>{})},loadFromServer:async()=>{try{let t=await B.get(`/api/settings/keybindings`);e({overrides:t,parsedCache:cl(t),loaded:!0})}catch{e({loaded:!0})}}})),dl=lr((e,t)=>({statusBarItems:[],addStatusBarItem:t=>e(e=>({statusBarItems:[...e.statusBarItems.filter(e=>e.id!==t.id),t]})),removeStatusBarItem:t=>e(e=>({statusBarItems:e.statusBarItems.filter(e=>e.id!==t)})),updateStatusBarItem:(t,n)=>e(e=>({statusBarItems:e.statusBarItems.map(e=>e.id===t?{...e,...n}:e)})),treeViews:{},updateTree:(t,n)=>e(e=>({treeViews:{...e.treeViews,[t]:n}})),updateTreeChildren:(t,n,r)=>e(e=>{let i=e.treeViews[t];if(!i)return e;let a=e=>e.map(e=>e.id===n?{...e,children:r,collapsibleState:`expanded`}:e.children?{...e,children:a(e.children)}:e);return{treeViews:{...e.treeViews,[t]:a(i)}}}),removeTree:t=>e(e=>{let{[t]:n,...r}=e.treeViews;return{treeViews:r}}),webviewPanels:{},addWebviewPanel:t=>e(e=>({webviewPanels:{...e.webviewPanels,[t.id]:t}})),removeWebviewPanel:t=>e(e=>{let{[t]:n,...r}=e.webviewPanels;return{webviewPanels:r}}),updateWebviewPanel:(t,n)=>e(e=>{let r=e.webviewPanels[t];return r?{webviewPanels:{...e.webviewPanels,[t]:{...r,...n}}}:e}),contributions:null,setContributions:t=>e({contributions:t}),activationErrors:{},setActivationErrors:t=>e({activationErrors:t}),quickPick:null,showQuickPick:(n,r={})=>{let i=t().quickPick;return i&&i.resolve(void 0),new Promise(t=>{e({quickPick:{items:n,options:r,resolve:t}})})},resolveQuickPick:n=>{let r=t().quickPick;r&&(r.resolve(n),e({quickPick:null}))},inputBox:null,showInputBox:(n={})=>{let r=t().inputBox;return r&&r.resolve(void 0),new Promise(t=>{e({inputBox:{options:n,resolve:t}})})},resolveInputBox:n=>{let r=t().inputBox;r&&(r.resolve(n),e({inputBox:null}))},clearExtension:t=>e(e=>{let n={...e.webviewPanels};for(let[e,r]of Object.entries(n))r.extensionId===t&&delete n[e];return{statusBarItems:e.statusBarItems.filter(e=>e.extensionId!==t),webviewPanels:n}})}));function fl(e,t,n){return e?{kind:`tab`,tab:{type:`settings`,title:`Settings`,projectId:null,closable:!0,...n&&{metadata:{category:n}}}}:t?{kind:`focus`,id:t,...n&&{category:n}}:{kind:`window`,...n&&{category:n}}}function pl(e){let t=Mr.getState(),n=Object.values(t.windows).find(e=>e.kind===`settings`),r=fl(gi(),n?.id??null,e);if(r.kind===`tab`){K.getState().openTab(r.tab);return}if(r.kind===`focus`){r.category&&t.setPayload(r.id,{category:r.category}),t.focus(r.id);return}t.open(`settings`,r.category?{category:r.category}:void 0)}async function ml(e){let t=G.getState().activeProject,n=[];t?.path&&n.push(Ci(e)?await Ti(t.name,t.path):t.path),window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:e,args:n}}))}function hl(e){window.dispatchEvent(new CustomEvent(`open-command-palette`,{detail:e}))}function gl(){let[e,t]=(0,Y.useState)(!1),[n,r]=(0,Y.useState)(``);return(0,Y.useEffect)(()=>{let e=0,n=!1,{matchesEvent:i}=ul.getState(),a=new Map,o=!1;function s(){o=!0}function c(){o=!1}function l(e,t){let n=t(e,`chat-nav-prev`)?`prev`:t(e,`chat-nav-next`)?`next`:null;return n?(e.preventDefault(),window.dispatchEvent(new CustomEvent(`chat-nav-${n}`)),!0):!1}function u(i){if(i.type===`keydown`&&i.key===`Shift`){n=!0;return}if(i.type===`keydown`&&i.shiftKey&&(n=!1),i.type===`keydown`&&i.key!==`Shift`&&(e=0),i.type===`keyup`&&i.key===`Shift`&&n&&!i.ctrlKey&&!i.metaKey&&!i.altKey&&!o&&!i.isComposing){let n=Date.now();if(n-e<400){e=0,r(``),t(!0);return}e=n;return}if(i.type!==`keydown`||o||i.isComposing)return;let s=i.target?.tagName;if(s===`TEXTAREA`||s===`INPUT`||i.target?.isContentEditable){let{matchesEvent:e}=ul.getState();e(i,`save-prevent`)&&i.preventDefault(),(e(i,`toggle-dock`)||al(i,gi()))&&(i.preventDefault(),W.getState().toggleDock()),l(i,e);return}let{matchesEvent:c}=ul.getState();if(c(i,`save-prevent`)){i.preventDefault();return}if(c(i,`command-palette`)){i.preventDefault(),r(``),t(!0);return}if(c(i,`toggle-sidebar`)){i.preventDefault(),V.getState().toggleSidebar();return}if(c(i,`toggle-dock`)||al(i,gi())){i.preventDefault(),W.getState().toggleDock();return}if(c(i,`next-tab`)||c(i,`prev-tab`)){i.preventDefault();let{tabs:e,activeTabId:t,setActiveTab:n}=K.getState();if(e.length<2)return;let r=e.findIndex(e=>e.id===t);n(e[c(i,`next-tab`)?(r+1)%e.length:(r-1+e.length)%e.length].id);return}if(c(i,`new-file`)){i.preventDefault(),K.getState().openNewFile();return}for(let e of[{action:`open-chat`,type:`chat`,title:`AI Chat`},{action:`open-terminal`,type:`terminal`,title:`Terminal`}])if(c(i,e.action)){i.preventDefault();let t=G.getState().activeProject;K.getState().openTab({type:e.type,title:e.title,projectId:t?.name??null,metadata:t?{projectName:t.name}:void 0,closable:!0});return}if(c(i,`open-settings`)){i.preventDefault(),pl();return}if(c(i,`open-git-status`)){i.preventDefault();let e=V.getState();e.sidebarCollapsed&&e.toggleSidebar(),e.setSidebarActiveTab(`git`);return}if(c(i,`voice-input`)){i.preventDefault(),window.dispatchEvent(new CustomEvent(`toggle-voice-input`));return}if(l(i,c))return;if(c(i,`compare-files`)){i.preventDefault();let{activeTabId:e,tabs:t}=K.getState(),n=t.find(t=>t.id===e),r=n?.metadata;n?.type===`editor`&&r?.filePath&&r?.projectName&&Sc.getState().setSelection({filePath:r.filePath,projectName:r.projectName,dirtyContent:r.unsavedContent,label:dr(r.filePath)}),window.dispatchEvent(new CustomEvent(`open-compare-picker`));return}if(c(i,`open-search`)){i.preventDefault();let e=V.getState();e.sidebarCollapsed&&e.toggleSidebar(),e.setSidebarActiveTab(`search`);return}if(c(i,`open-problems`)){i.preventDefault(),W.getState().openInDock({type:`problems`,title:`Problems`,projectId:null,closable:!0});return}for(let e=1;e<=9;e++)if(c(i,`switch-project-${e}`)){i.preventDefault();let t=G.getState().projects[e-1];t&&(G.getState().setActiveProject(t),K.getState().switchProject(t.name));return}let u=dl.getState().contributions?.keybindings;if(u){let e=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.userAgent),{getBinding:t}=ul.getState();for(let n of u){let r=t(`ext:${n.command}`)||(e&&n.mac?n.mac:n.key);if(!r)continue;let o=a.get(r);if(o||(o=nl(r),a.set(r,o)),rl(i,o)){i.preventDefault(),ml(n.command);return}}}}function d(e){let n=e.detail;r(typeof n==`string`?n:``),t(!0)}return window.addEventListener(`keydown`,u),window.addEventListener(`keyup`,u),window.addEventListener(`compositionstart`,s),window.addEventListener(`compositionend`,c),window.addEventListener(`open-command-palette`,d),()=>{window.removeEventListener(`keydown`,u),window.removeEventListener(`keyup`,u),window.removeEventListener(`compositionstart`,s),window.removeEventListener(`compositionend`,c),window.removeEventListener(`open-command-palette`,d)}},[]),{paletteOpen:e,paletteInitialQuery:n,closePalette:(0,Y.useCallback)(()=>{t(!1),r(``)},[])}}function _l(e){let[t,n]=(0,Y.useState)(!1),[r,i]=(0,Y.useState)(!1),a=(0,Y.useCallback)(()=>{let t=e.current;t&&(n(t.scrollLeft>1),i(t.scrollLeft+t.clientWidth<t.scrollWidth-1))},[e]);return(0,Y.useEffect)(()=>{let t=e.current;if(!t)return;a(),t.addEventListener(`scroll`,a,{passive:!0});let n=new ResizeObserver(a);n.observe(t);let r=new MutationObserver(a);return r.observe(t,{childList:!0,subtree:!0}),()=>{t.removeEventListener(`scroll`,a),n.disconnect(),r.disconnect()}},[e,a]),{canScrollLeft:t,canScrollRight:r,scrollLeft:(0,Y.useCallback)(()=>{e.current?.scrollBy({left:-150,behavior:`smooth`})},[e]),scrollRight:(0,Y.useCallback)(()=>{e.current?.scrollBy({left:150,behavior:`smooth`})},[e])}}var vl={done:0,question:1,approval_request:2};function yl(e,t,n,r){if(!e)return{left:null,right:null};let i=e.scrollLeft,a=i+e.clientWidth,o=null,s=-1,c=null,l=-1,u=e.getBoundingClientRect();for(let d of n){if(d.type!==`chat`)continue;let n=d.metadata?.sessionId,f=n?r.get(n):void 0;if(!f||f.count===0)continue;let p=t.get(d.id);if(!p)continue;let m=p.getBoundingClientRect(),h=m.left-u.left+e.scrollLeft,g=h+m.width,_=vl[f.type]??0;g<=i&&_>s&&(s=_,o=f.type),h>=a&&_>l&&(l=_,c=f.type)}return{left:o,right:c}}var bl={default:{base:`group flex items-center gap-1 px-3 h-[41px] whitespace-nowrap text-xs transition-colors border-t-2 [border-right:1px_solid_var(--border-soft)] cursor-grab active:cursor-grabbing`,active:`border-t-primary bg-panel-2 text-primary`,inactive:`border-t-transparent text-text-secondary hover:text-foreground hover:bg-panel/60`,row:`flex items-center`,add:`flex items-center justify-center h-[41px] w-10 shrink-0 sticky right-0 border-t-2 border-transparent text-text-secondary hover:text-foreground transition-colors`},boxed:{base:`group flex items-center gap-1.5 px-2.5 h-8 rounded-md whitespace-nowrap text-xs transition-colors border cursor-grab active:cursor-grabbing`,active:`border-primary bg-primary/10 text-primary`,inactive:`border-border text-text-secondary hover:border-text-subtle hover:text-foreground`,row:`flex items-center gap-1.5 px-2 py-1.5`,add:`flex items-center justify-center size-8 shrink-0 sticky right-0 rounded-md text-text-secondary hover:text-foreground hover:bg-surface-elevated transition-colors`},pill:{base:`group flex items-center gap-1.5 px-3 h-8 rounded-lg whitespace-nowrap text-xs transition-colors border cursor-grab active:cursor-grabbing`,active:`border-border bg-surface-elevated text-foreground`,inactive:`border-transparent text-text-secondary hover:bg-surface hover:text-foreground`,row:`flex items-center gap-1 px-2 py-1.5`,add:`flex items-center justify-center size-8 shrink-0 sticky right-0 rounded-lg text-text-secondary hover:text-foreground hover:bg-surface-elevated transition-colors`}};function xl(e,t,n){let r=bl[e];return U(r.base,n?`border-t-transparent`:t?r.active:r.inactive)}function Sl(e,t){let n=e===`default`?` [background:repeating-linear-gradient(to_bottom,transparent_0,transparent_40px,var(--border-soft)_40px,var(--border-soft)_41px)]`:``;return U(bl[e].row,t?`flex-wrap min-h-[41px]`+n:`h-[41px]`)}function Cl(e){return bl[e].add}function wl(e){let t=/^#([0-9a-fA-F]{6})$/.exec(e.trim());if(!t)return null;let n=parseInt(t[1],16);return{r:n>>16&255,g:n>>8&255,b:n&255}}function Tl(e){let t=e.trim();if(t.startsWith(`#`)){let e=t.slice(1),n=e.length===3?e.split(``).map(e=>e+e).join(``):e;return/^[0-9a-fA-F]{6,8}$/.test(n)?{r:parseInt(n.slice(0,2),16),g:parseInt(n.slice(2,4),16),b:parseInt(n.slice(4,6),16),a:n.length===8?parseInt(n.slice(6,8),16)/255:1}:null}let n=/^rgba?\(([^)]+)\)$/.exec(t);if(!n)return null;let r=n[1].split(/[,\s/]+/).filter(Boolean).map(Number);return r.length<3||r.slice(0,4).some(e=>Number.isNaN(e))?null:{r:r[0],g:r[1],b:r[2],a:r[3]??1}}function El(e,t){let n=Tl(e),r=Tl(t);if(!n||!r||n.a>=1)return e;let i=(e,t)=>Math.round(e*n.a+t*(1-n.a));return`rgb(${i(n.r,r.r)}, ${i(n.g,r.g)}, ${i(n.b,r.b)})`}function Dl(e,t,n){let[r,i,a]=[e,t,n].map(e=>{let t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4});return .2126*r+.7152*i+.0722*a}function Ol(e){let t=wl(e);return t?Dl(t.r,t.g,t.b)<.4:!1}function kl({tab:e,isActive:t,icon:n,showDropBefore:r,notificationType:i,notificationManual:a,isStreaming:o,onSelect:s,onClose:c,onDragStart:l,onDragOver:u,onDragEnd:d,onTouchStart:f,onTouchMove:p,onTouchEnd:m,onTouchCancel:h,tabRef:g,onRename:_,onContextAction:v,tagColor:y,extraMenuContent:b}){let[x,S]=(0,Y.useState)(!1),[C,w]=(0,Y.useState)(e.title),T=(0,Y.useRef)(null),E=V(e=>e.editorTabStyle);(0,Y.useEffect)(()=>{x&&(w(e.title),setTimeout(()=>T.current?.select(),0))},[x]);let D=()=>{S(!1);let t=C.trim();t&&t!==e.title&&_&&_(t)},O=e.metadata?.connectionColor,k=O?{backgroundColor:t?O:`${O}33`,color:t&&Ol(O)?`#fff`:void 0}:void 0,A=e.type===`editor`,ee=(0,X.jsxs)(`button`,{ref:g,"data-tab-item":!0,"data-tab-id":e.id,draggable:!x,onClick:s,onAuxClick:t=>{t.button===1&&e.closable&&(t.preventDefault(),c())},onDragStart:l,onDragOver:u,onDragEnd:d,onTouchStart:f,onTouchMove:p,onTouchEnd:m,onTouchCancel:h,style:k,className:xl(E,t,!!k),children:[(0,X.jsxs)(`span`,{className:U(`relative`,o&&`text-warning`),children:[o?(0,X.jsx)(In,{className:`size-4`}):(0,X.jsx)(n,{className:`size-4`}),o?(0,X.jsxs)(`span`,{"aria-hidden":!0,className:`absolute inset-0 flex items-center justify-center gap-[1.5px]`,children:[(0,X.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`}),(0,X.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`,style:{animationDelay:`0.15s`}}),(0,X.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`,style:{animationDelay:`0.3s`}})]}):i&&(!t||a)?(0,X.jsx)(`span`,{className:U(`absolute -top-1 -right-1 size-2 rounded-full`,qs(i))}):null]}),x?(0,X.jsx)(`input`,{ref:T,value:C,onChange:e=>w(e.target.value),onBlur:D,onKeyDown:e=>{e.key===`Enter`&&D(),e.key===`Escape`&&S(!1),e.stopPropagation()},onClick:e=>e.stopPropagation(),className:`max-w-[120px] bg-surface-elevated text-xs px-1 py-0.5 rounded border border-border outline-none focus:border-primary`,autoFocus:!0}):(0,X.jsx)(`span`,{className:`max-w-[120px] truncate`,title:e.title,onDoubleClick:e=>{_&&(e.stopPropagation(),S(!0))},children:e.title}),e.closable&&!x&&(0,X.jsx)(`span`,{role:`button`,tabIndex:0,onClick:e=>{e.stopPropagation(),c()},onKeyDown:e=>{e.key===`Enter`&&(e.stopPropagation(),c())},className:`ml-1 can-hover:opacity-0 can-hover:group-hover:opacity-100 rounded-sm hover:bg-surface-elevated p-0.5 transition-opacity`,children:(0,X.jsx)(Be,{className:`size-3`})})]});return(0,X.jsxs)(`div`,{className:`relative flex items-center`,children:[r&&(0,X.jsx)(`div`,{className:`absolute left-0 top-1 bottom-1 w-0.5 bg-primary rounded-full z-10`}),y&&(0,X.jsx)(`span`,{"aria-hidden":!0,className:`absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full pointer-events-none`,style:{backgroundColor:y}}),v?(0,X.jsxs)(ni,{children:[(0,X.jsx)(ri,{asChild:!0,children:ee}),(0,X.jsxs)(Qr,{children:[A&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(ei,{onClick:()=>v(`copy-path`),children:`Copy Path`}),(0,X.jsx)(ei,{onClick:()=>v(`copy-full-path`),children:`Copy Full Path`}),(0,X.jsxs)(ei,{onClick:()=>v(`download`),children:[(0,X.jsx)(An,{className:`size-3.5 mr-2`}),`Download`]}),(0,X.jsx)($r,{}),(0,X.jsx)(ei,{onClick:()=>v(`rename`),children:`Rename`}),(0,X.jsx)(ei,{variant:`destructive`,onClick:()=>v(`delete`),children:`Delete`}),(0,X.jsx)($r,{})]}),b,e.closable&&(0,X.jsx)(ei,{onClick:()=>v(`close`),children:`Close`}),(0,X.jsx)(ei,{onClick:()=>v(`close-others`),children:`Close Others`}),(0,X.jsx)(ei,{onClick:()=>v(`close-right`),children:`Close to the Right`})]})]}):ee]})}var Al=[`.xterm-helper-textarea`,`.native-edit-context`,`textarea`,`[contenteditable]`,`button, [href], input, select, [tabindex]:not([tabindex="-1"])`];function jl(e){return typeof e.checkVisibility==`function`?e.checkVisibility():e.offsetParent!==null&&e.offsetParent!==void 0}function Ml(e){for(let t of Al)for(let n of e(t))if(jl(n))return n;return null}function Nl(e){Ml(t=>e.querySelectorAll(t))?.focus()}function Pl(){return typeof window<`u`&&`documentPictureInPicture`in window}function Fl(){return Pl()?window.documentPictureInPicture??null:null}var Il={width:1920,height:1080};function Ll(e,t,n){return Number.isFinite(e)?Math.round(Math.min(Math.max(e,t),Math.max(t,n))):t}function Rl(){if(typeof window>`u`||!window.screen)return Il;let{availWidth:e,availHeight:t}=window.screen;return{width:Number.isFinite(e)&&e>0?e:Il.width,height:Number.isFinite(t)&&t>0?t:Il.height}}function zl(e,t=Rl()){return{width:Ll(e.width,320,t.width),height:Ll(e.height,240,t.height)}}var Bl=`style, link[rel="stylesheet"]`,Vl=`html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden}
11
- body>*{position:relative;width:100%;height:100%}`;function Hl(e){return Array.from(e.querySelectorAll(Bl))}function Ul(e,t){let n=e.sheet;try{let e=n?.cssRules;if(e&&e.length>0){let n=t.createElement(`style`);n.textContent=Array.from(e,e=>e.cssText).join(`
12
- `),t.head.append(n);return}}catch{}t.head.append(e.cloneNode(!0))}function Wl(e,t){try{t.adoptedStyleSheets=[...e.adoptedStyleSheets]}catch{}for(let n of Hl(e))Ul(n,t);let n=t.createElement(`style`);n.textContent=Vl,t.head.append(n)}function Gl(e,t){t.documentElement.className=e.documentElement.className,t.documentElement.style.cssText=e.documentElement.style.cssText,t.body.className=e.body.className,t.body.style.cssText=e.body.style.cssText}function Kl(e,t){Gl(e,t);let n=e.defaultView;if(!n)return()=>{};let r=()=>Gl(e,t);return n.addEventListener(zi,r),()=>n.removeEventListener(zi,r)}function ql(e,t){if(typeof MutationObserver>`u`)return()=>{};let n=new MutationObserver(e=>{for(let n of e)for(let e of n.addedNodes)e instanceof Element&&e.matches(Bl)&&t.head.append(e.cloneNode(!0))});return n.observe(e.head,{childList:!0}),()=>n.disconnect()}var Jl=[`input`,`textarea`,`select`,`[contenteditable]`,`.native-edit-context`,`.monaco-editor`,`.xterm-helper-textarea`].join(`, `);function Yl(e){let t=e;return!t||typeof t.closest!=`function`?!1:t.closest(Jl)!==null}function Xl(e,t){let n=e=>{let n=e;Yl(n.target)||t.dispatchEvent(new KeyboardEvent(n.type,n))};return e.addEventListener(`keydown`,n),e.addEventListener(`keyup`,n),()=>{e.removeEventListener(`keydown`,n),e.removeEventListener(`keyup`,n)}}var Zl=`ppm:host-resize`;function Ql(e){if(e)for(let t of e.querySelectorAll(`[data-tab-pool-id]`))t.dispatchEvent(new CustomEvent(Zl,{bubbles:!1}))}function $l(e,t){let n=e?.closest(`[data-tab-pool-id]`);return n?(n.addEventListener(Zl,t),()=>n.removeEventListener(Zl,t)):()=>{}}var eu=null;function tu(){return eu}function nu(e,t,n,r){let i=[],a=!1,o=()=>{if(!a){a=!0,eu===s&&(eu=null);for(let e of i)try{e()}catch{}t.isConnected&&(t.append(e),Ql(e));try{n.close()}catch{}r.onDetach()}},s={detach:o,pipWindow:n};try{let t=n.document;Wl(document,t),i.push(Kl(document,t)),i.push(ql(document,t)),t.body.append(e),Ql(e);let r=()=>Ql(e);n.addEventListener(`resize`,r),i.push(()=>n.removeEventListener(`resize`,r)),n.addEventListener(`pagehide`,o),i.push(()=>n.removeEventListener(`pagehide`,o)),i.push(Xl(n,window)),window.addEventListener(`pagehide`,o),window.addEventListener(`beforeunload`,o),i.push(()=>{window.removeEventListener(`pagehide`,o),window.removeEventListener(`beforeunload`,o)})}catch(e){throw o(),e}return s}async function ru(e,t){let n=Fl();if(!n)throw Error(`Document Picture-in-Picture is not supported in this browser`);let r=e.parentElement;if(!r)throw Error(`attachPipHost: slot element must be in the document`);eu?.detach();let i;try{i=await n.requestWindow(zl({width:t.width,height:t.height}))}catch(e){throw t.onDetach(),e}if(!e.isConnected||e.parentElement!==r){try{i.close()}catch{}return t.onDetach(),null}let a=nu(e,r,i,t);return eu=a,a}function iu(e){Ji(e),Mr.getState().close(e)}async function au(e,t){let n=W.getState().popOutTab(e,t);if(!n)return`window-cap`;Ki(n);let r=await Vi(n);if(!r)return iu(n),`cancelled`;let i=Mr.getState().windows[n]?.rect,a;try{a=await ru(r,{width:i?.w??0,height:i?i.h-36:0,onDetach:()=>{Bi(n,null),iu(n)}})}catch(e){throw iu(n),e}return a?(Bi(n,a),Nl(a.pipWindow.document),`opened`):`cancelled`}function ou({tab:e,panelId:t}){return hi()||xr.has(e.type)?null:(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(ei,{onClick:()=>{W.getState().popOutTab(e.id,t)||R.error(`Too many windows open — close one first`)},children:[(0,X.jsx)(Rt,{className:`size-3.5 mr-2`}),`Open in window`]}),Pl()&&(0,X.jsxs)(ei,{onClick:()=>{au(e.id,t).then(e=>{e===`window-cap`&&R.error(`Too many windows open — close one first`)}).catch(()=>{R.error(`Could not open the picture-in-picture window`)})},children:[(0,X.jsx)(Ve,{className:`size-3.5 mr-2`}),`Open in picture-in-picture`]}),(0,X.jsx)($r,{})]})}async function su(e,t){if(/^(\/|[A-Za-z]:[/\\])/.test(t)){let{token:e}=await B.post(`/api/fs/download/token`,{path:t});lu(`/api/fs/raw?path=${encodeURIComponent(t)}&download=true&dl_token=${encodeURIComponent(e)}`,dr(t));return}let{token:n}=await B.post(`${z(e)}/files/download/token`);lu(`${z(e)}/files/raw?path=${encodeURIComponent(t)}&download=true&dl_token=${encodeURIComponent(n)}`,dr(t))}async function cu(e,t){let{token:n}=await B.post(`${z(e)}/files/download/token`),r=dr(t)||`folder`;lu(`${z(e)}/files/download/zip?path=${encodeURIComponent(t)}&dl_token=${encodeURIComponent(n)}`,`${r}.zip`)}function lu(e,t){let n=document.createElement(`a`);n.href=e,n.download=t,n.style.display=`none`,document.body.appendChild(n),n.click(),document.body.removeChild(n)}async function uu(e){if(navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(e),!0}catch{}return mu(e)}function du(){return typeof ClipboardItem<`u`&&!!navigator.clipboard?.write}async function fu(e){if(!du())return!1;try{let t=await fetch(e).then(e=>e.blob()),n=t.type===`image/png`?t:await pu(t);return await navigator.clipboard.write([new ClipboardItem({"image/png":n})]),!0}catch{return!1}}async function pu(e){let t=await createImageBitmap(e),n=document.createElement(`canvas`);return n.width=t.width,n.height=t.height,n.getContext(`2d`)?.drawImage(t,0,0),t.close(),new Promise((e,t)=>{n.toBlob(n=>n?e(n):t(Error(`canvas produced no blob`)),`image/png`)})}function mu(e){let t=document.createElement(`textarea`);t.value=e,t.setAttribute(`readonly`,``),t.style.cssText=`position:fixed;top:0;left:0;width:1px;height:1px;padding:0;border:none;opacity:0;`,document.body.appendChild(t);let n=document.getSelection(),r=n&&n.rangeCount>0?n.getRangeAt(0):null;try{return t.focus(),t.select(),t.setSelectionRange(0,e.length),document.execCommand(`copy`)}catch{return!1}finally{t.remove(),n&&r&&(n.removeAllRanges(),n.addRange(r))}}function hu({node:e,projectName:t,onClose:n,onRefresh:r}){let[i,a]=(0,Y.useState)(!1),[o,s]=(0,Y.useState)(null);async function c(){a(!0),s(null);try{await B.del(`${z(t)}/files/delete`,{path:e.path}),r(),n()}catch(e){s(e instanceof Error?e.message:`Failed to delete`)}finally{a(!1)}}return(0,X.jsx)(ta,{open:!0,onOpenChange:e=>!e&&n(),children:(0,X.jsxs)(J,{children:[(0,X.jsxs)(Xi,{children:[(0,X.jsxs)(Qi,{children:[`Delete `,e.type===`directory`?`Folder`:`File`]}),(0,X.jsxs)($i,{children:[`Are you sure you want to delete`,` `,(0,X.jsx)(`span`,{className:`font-mono font-semibold`,children:e.name}),`?`,e.type===`directory`&&` This will delete all contents.`]})]}),o&&(0,X.jsx)(`p`,{className:`text-sm text-error`,children:o}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(q,{variant:`outline`,onClick:n,disabled:i,children:`Cancel`}),(0,X.jsx)(q,{variant:`destructive`,onClick:c,disabled:i,children:i?`Deleting...`:`Delete`})]})]})})}var gu={"git-branch":rt,"git-commit":Pa,"git-compare":Ma,history:mt,users:gt,"list-ordered":Lt,refresh:en,edit:yt,trash:Je,plus:Dt,search:Nn,database:Pt,terminal:sn,settings:Kt,"file-code":xn,globe:je};function _u(e){return e?gu[e]:void 0}function vu(e,t){if(!(!e?.commands||!t))return _u(e.commands.find(e=>e.command===t||e.command.replace(/\.view$/,``)===t)?.icon)}var yu={terminal:sn,chat:Gn,editor:xn,database:Pt,sqlite:Pt,postgres:Pt,"git-diff":Ma,"branch-review":Ma,settings:Kt,extension:Mn,"extension-webview":Mn,"conflict-editor":Ma,"system-monitor":Kt,"git-log":Pa,"ai-resource":Ft,group:gt,problems:pt,design:We};function bu(e){return yu[e]??Mn}var xu=new Set([`editor`,`git-diff`,`conflict-editor`]);function Su(e){if(xu.has(e.type)){let t=e.metadata?.filePath||e.title;if(t)return na(t)}if(e.type===`chat`){let t=oc[e.metadata?.providerId??`claude`];if(t)return t}if(e.type===`extension`||e.type===`extension-webview`){let t=vu(dl.getState().contributions,e.metadata?.viewType);if(t)return t}return bu(e.type)}var Cu=(0,Y.memo)(function({panelId:e}){let t=G(e=>e.activeProject),n=(0,Y.useRef)(new Map),r=(0,Y.useRef)(null),i=(0,Y.useRef)(0),a=W(t=>e?t.panels[e]:t.panels[t.focusedPanelId]),o=t?.name??null,s=Sr(a?.tabs??[],o),c=a?.activeTabId??null,l=a?.id??W.getState().focusedPanelId,{dropIndex:u,handleDragStart:d,handleDragOver:f,handleDragOverBar:p,handleDrop:m,handleDragEnd:h}=Mc(l),{handleTouchStart:g,handleTouchMove:_,handleTouchEnd:v,handleTouchCancel:y}=Qc(l),{projectTags:b,loadTags:x}=Us(t?.name),S=t?$n(t):null,C=Hr(e=>(S?e.byProject[S]?.sessions:void 0)??zr),w={};for(let e of C)e.tag&&(w[e.id]=e.tag);let T=(0,Y.useCallback)(async(e,n)=>{if(!t?.name)return;let r={name:t.name,path:t.path},i=n===null?void 0:b.find(e=>e.id===n);if(n!==null&&!i)return;Hr.getState().setSessionTag(r,e,i?{id:i.id,name:i.name,color:i.color}:null);let a=`${z(t.name)}/chat/sessions/${e}/tag`;await Ir(r,()=>n===null?B.del(a):B.patch(a,{tagId:n})),x()},[t,b,x]),E=Xs(e=>e.notifications),D=Ii(e=>e.sessions),O=V(e=>e.tabWrap),k=V(e=>e.toggleTabWrap),A=V(e=>e.editorTabStyle),{canScrollLeft:ee,canScrollRight:j,scrollLeft:te,scrollRight:M}=_l(r),N=yl(r.current,n.current,s,E);(0,Y.useEffect)(()=>{if(s.length>i.current&&c){let e=n.current.get(c);e&&e.scrollIntoView({behavior:`smooth`,block:`nearest`,inline:`nearest`})}i.current=s.length},[s.length,c]);let P=(0,Y.useCallback)((e,t)=>{K.getState().updateTab(e.id,{title:t});let n=e.metadata?.projectName,r=e.metadata?.sessionId;n&&r&&B.patch(`${z(n)}/chat/sessions/${r}`,{title:t}).catch(()=>{})},[]),F=Sc(e=>e.selection),[ne,re]=(0,Y.useState)(null);function ie(e){if(e.type!==`editor`)return null;let t=e.metadata?.filePath,n=e.metadata?.projectName;if(!t||!n)return null;let r=F!=null&&F.projectName===n&&F.filePath!==t;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(ei,{onClick:()=>{let r=e.metadata?.unsavedContent;Sc.getState().setSelection({filePath:t,projectName:n,dirtyContent:r,label:dr(t)})},children:[(0,X.jsx)(Ut,{className:`size-3.5 mr-2`}),`Select for Compare`]}),r&&(0,X.jsxs)(ei,{onClick:async()=>{let r=Sc.getState().selection;if(!r)return;let i=e.metadata?.unsavedContent;try{await wc({path:r.filePath,dirtyContent:r.dirtyContent},{path:t,dirtyContent:i},n),Sc.getState().clearSelection()}catch(e){let t=e instanceof Error?e.message:`Compare failed`;R.error(t)}},children:[(0,X.jsx)(Ut,{className:`size-3.5 mr-2`}),`Compare with Selected (`,F.label,`)`]}),(0,X.jsx)($r,{})]})}function ae(e){if(e.type!==`terminal`)return null;let t=l===mr;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(ei,{onClick:()=>I(e,t?`move-to-editor`:`move-to-dock`),children:t?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Le,{className:`size-3.5 mr-2`}),`Move to Editor`]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(st,{className:`size-3.5 mr-2`}),`Move to Dock`]})}),(0,X.jsx)($r,{})]})}let I=(0,Y.useCallback)((e,t)=>{let n=W.getState(),r=n.panels[l]?.tabs??[];switch(t){case`close`:n.closeTab(e.id,l);break;case`move-to-dock`:n.redockTab(e.id,l);break;case`move-to-editor`:{let t=n.focusedPanelId===`__dock__`?n.grid.flat()[0]:n.focusedPanelId;t&&n.moveTab(e.id,mr,t);break}case`close-others`:for(let t of r)t.id!==e.id&&t.closable&&n.closeTab(t.id,l);break;case`close-right`:{let t=r.findIndex(t=>t.id===e.id);for(let e=t+1;e<r.length;e++)r[e].closable&&n.closeTab(r[e].id,l);break}case`copy-path`:{let t=e.metadata?.filePath;t&&uu(t);break}case`copy-full-path`:{let t=e.metadata?.filePath,n=e.metadata?.projectName;if(t){let e=n?G.getState().projects.find(e=>e.name===n):null;uu(e?`${e.path}/${t}`:t)}break}case`download`:{let t=e.metadata?.filePath,n=e.metadata?.projectName;t&&n&&su(n,t);break}case`rename`:case`delete`:{let n=e.metadata?.filePath;n&&re({action:t,tabId:e.id,node:{name:e.title,path:n,type:`file`}});break}}},[l]);function oe(e){e.target.closest(`[data-tab-item]`)||hl()}return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(ni,{children:[(0,X.jsx)(ri,{asChild:!0,children:(0,X.jsxs)(`div`,{className:U(`hidden md:flex items-center border-b border-border relative shrink-0`,O?`min-h-[41px] flex-wrap`:`h-[41px]`),onDragOver:p,onDrop:m,onDoubleClick:oe,children:[!O&&ee&&(0,X.jsx)(`button`,{onClick:te,className:`absolute left-0 z-10 flex items-center justify-center size-8 bg-gradient-to-r from-background via-background to-transparent`,children:(0,X.jsxs)(`span`,{className:`relative`,children:[(0,X.jsx)(ge,{className:`size-4 text-text-secondary`}),N.left&&(0,X.jsx)(`span`,{className:U(`absolute -top-1 -right-0.5 size-2 rounded-full`,qs(N.left))})]})}),(0,X.jsx)(`div`,{ref:r,className:U(`flex-1 min-w-0 scrollbar-none`,O?`overflow-y-auto overflow-x-hidden`:`overflow-x-auto overflow-y-hidden`),children:(0,X.jsxs)(`div`,{className:Sl(A,O),children:[s.map((e,t)=>{let r=Cr(e),i=r?E.get(r):void 0,a=i&&i.count>0?i.type:null,o=!!i?.manual,s=r?D.has(r):!1;return(0,X.jsx)(kl,{tab:e,isActive:e.id===c,icon:Su(e),showDropBefore:u===t,notificationType:a,notificationManual:o,isStreaming:s,onSelect:()=>{zc()||(W.getState().setActiveTab(e.id,l),r&&Xs.getState().clearForSession(r))},onClose:()=>W.getState().closeTab(e.id,l),onDragStart:t=>d(t,e.id),onDragOver:n=>f(n,e.id,t),onDragEnd:h,onTouchStart:t=>g(t,e.id,e.title),onTouchMove:_,onTouchEnd:v,onTouchCancel:y,tabRef:t=>{t?n.current.set(e.id,t):n.current.delete(e.id)},onRename:e.type===`chat`?t=>P(e,t):void 0,onContextAction:t=>I(e,t),tagColor:r?w[r]?.color:void 0,extraMenuContent:(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(ou,{tab:e,panelId:l}),ae(e),ie(e),r&&!a&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(ei,{onClick:()=>{let t=e.metadata?.projectName;t&&Xs.getState().markUnread(r,t,e.title)},children:[(0,X.jsx)(qn,{className:`size-3.5 mr-2 fill-primary text-primary`}),`Mark as unread`]}),(0,X.jsx)($r,{})]}),r&&b.length>0&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(ti,{children:[(0,X.jsxs)(Zr,{children:[(0,X.jsx)(Ee,{className:`size-3.5 mr-2`}),`Set Tag`]}),(0,X.jsxs)(Yr,{children:[b.map(e=>(0,X.jsxs)(ei,{onClick:()=>T(r,e.id),children:[(0,X.jsx)(`span`,{className:`size-2.5 rounded-full mr-2 shrink-0`,style:{backgroundColor:e.color}}),e.name,w[r]?.id===e.id&&(0,X.jsx)(Rn,{className:`size-3 ml-auto`})]},e.id)),w[r]&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)($r,{}),(0,X.jsx)(ei,{onClick:()=>T(r,null),children:`Remove tag`})]})]})]}),(0,X.jsx)($r,{})]})]})},e.id)}),u!==null&&u>=s.length&&(0,X.jsx)(`div`,{className:`w-0.5 h-6 bg-primary rounded-full`}),(0,X.jsx)(`button`,{onClick:()=>{if(l===`__dock__`){let e=G.getState().activeProject;W.getState().openInDock({type:`terminal`,title:`Terminal`,projectId:e?.name??null,closable:!0,metadata:e?{projectName:e.name}:void 0})}else W.getState().setFocusedPanel(l,!1),hl()},title:l===`__dock__`?`New terminal in dock`:`Open command palette (Shift+Shift)`,className:Cl(A),children:(0,X.jsx)(Dt,{className:`size-4`})})]})}),!O&&j&&(0,X.jsx)(`button`,{onClick:M,className:`absolute right-10 z-10 flex items-center justify-center size-8 bg-gradient-to-l from-background via-background to-transparent`,children:(0,X.jsxs)(`span`,{className:`relative`,children:[(0,X.jsx)(nn,{className:`size-4 text-text-secondary`}),N.right&&(0,X.jsx)(`span`,{className:U(`absolute -top-1 -left-0.5 size-2 rounded-full`,qs(N.right))})]})})]})}),(0,X.jsxs)(Qr,{children:[(0,X.jsx)(ei,{onClick:k,children:O?`Scroll Tabs`:`Wrap Tabs`}),(0,X.jsx)($r,{}),(0,X.jsx)(ei,{onClick:()=>hl(),children:`Open Command Palette`})]})]}),ne&&(0,X.jsx)(hu,{node:ne.node,projectName:t?.name??``,onClose:()=>re(null),onRefresh:()=>{t&&di.getState().fetchTree(t.name),ne.action===`delete`&&W.getState().closeTab(ne.tabId,l)}})]})});function wu({panelId:e}){let[t,n]=(0,Y.useState)(null),r=Ac(),i=Rc(),a=(i?.panelId===e?i.zone:null)??t,o=W(e=>e.grid),s=W(e=>e.isMobile()),c=hr(o,e),l=!s&&o.length<3,u=c?!s&&(o[c.row]?.length??0)<_r(!1):!1,d=(0,Y.useCallback)(e=>{let t=e.currentTarget.getBoundingClientRect(),n=(e.clientX-t.left)/t.width,r=(e.clientY-t.top)/t.height,i=.25;return n<i&&u?`left`:n>1-i&&u?`right`:r<i&&l?`top`:r>1-i&&l?`bottom`:`center`},[u,l]),f=(0,Y.useCallback)(e=>{e.dataTransfer.types.includes(`application/ppm-tab`)&&(e.preventDefault(),e.stopPropagation(),n(d(e)))},[d]),p=(0,Y.useCallback)(e=>{e.currentTarget.contains(e.relatedTarget)||n(null)},[]),m=(0,Y.useCallback)(t=>{t.preventDefault(),t.stopPropagation();let r=d(t);if(n(null),jc(),!r)return;let i=t.dataTransfer.getData(Ec);if(i)try{let t=JSON.parse(i),n=W.getState();if(r===`center`)t.panelId!==e&&n.moveTab(t.tabId,t.panelId,e);else{let i=r===`top`?`up`:r===`bottom`?`down`:r;n.splitPanel(i,t.tabId,t.panelId,e)}}catch{}},[d,e]);return r?(0,X.jsxs)(`div`,{className:`absolute inset-0 z-20`,onDragOver:f,onDragLeave:p,onDrop:m,children:[a===`left`&&(0,X.jsx)(`div`,{className:`absolute inset-y-0 left-0 w-1/3 bg-primary/10 border-2 border-primary/30 rounded-l-md`}),a===`right`&&(0,X.jsx)(`div`,{className:`absolute inset-y-0 right-0 w-1/3 bg-primary/10 border-2 border-primary/30 rounded-r-md`}),a===`top`&&(0,X.jsx)(`div`,{className:`absolute inset-x-0 top-0 h-1/3 bg-primary/10 border-2 border-primary/30 rounded-t-md`}),a===`bottom`&&(0,X.jsx)(`div`,{className:`absolute inset-x-0 bottom-0 h-1/3 bg-primary/10 border-2 border-primary/30 rounded-b-md`}),a===`center`&&(0,X.jsx)(`div`,{className:`absolute inset-0 bg-primary/5 border-2 border-dashed border-primary/30 rounded-md`})]}):null}var Tu=lr(e=>({mounted:new Set,mount:t=>e(e=>{if(e.mounted.has(t))return e;let n=new Set(e.mounted);return n.add(t),{mounted:n}})}));function Eu(e,t,n,r,i,a){for(let o of e.flat()){let e=r[o];if(e)for(let r of e.tabs)i.has(r.id)||r.projectId&&t&&r.projectId!==t||!n&&(r.type===`extension`||r.type===`extension-webview`)||(i.add(r.id),a.push({tabId:r.id,panelId:o,type:r.type,metadata:r.metadata,isActive:r.id===e.activeTabId}))}}function Du(e,t,n){for(let r of e.tabs)t.has(r.id)||(t.add(r.id),n.push({tabId:r.id,panelId:mr,type:r.type,metadata:r.metadata,isActive:r.id===e.activeTabId}))}function Ou(e,t,n){for(let[r,i]of Object.entries(e))if(gr(r))for(let e of i.tabs)t.has(e.id)||(t.add(e.id),n.push({tabId:e.id,panelId:r,type:e.type,metadata:e.metadata,isActive:e.id===i.activeTabId}))}function ku(e,t,n,r){let i=[],a=new Set;Eu(t,r,!0,e,a,i);for(let[t,o]of Object.entries(n))t!==r&&Eu(o,t,!1,e,a,i);Ou(e,a,i);let o=e[mr];return o&&Du(o,a,i),i.sort((e,t)=>e.tabId.localeCompare(t.tabId)),i}function Au(e,t){return e.filter(e=>e.isActive||t.has(e.tabId))}var ju=new class{slots=new Map;listeners=new Set;version=0;register(e,t){if(t){if(this.slots.get(e)===t)return;this.slots.set(e,t)}else{if(!this.slots.has(e))return;this.slots.delete(e)}this.version++,this.listeners.forEach(e=>e())}get(e){return this.slots.get(e)}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}getVersion(){return this.version}};function Mu(e,t){ju.register(e,t)}var Nu=t(j(),1);function Pu({tabId:e,panelId:t,component:n,metadata:r,isActive:i,hiddenContainer:a}){let o=(0,Y.useRef)(null);if(!o.current){let t=document.createElement(`div`);t.className=`absolute inset-0`,t.dataset.tabPoolId=e,o.current=t}let s=o.current,c=(0,Y.useRef)(t);return c.current=t,(0,Y.useLayoutEffect)(()=>{s.parentElement||a.appendChild(s);let e=()=>{let e=c.current;e===`__dock__`||gr(e)||W.getState().setFocusedPanel(e)};return s.addEventListener(`pointerdown`,e,!0),s.addEventListener(`focusin`,e,!0),()=>{s.removeEventListener(`pointerdown`,e,!0),s.removeEventListener(`focusin`,e,!0),s.remove()}},[s,a]),(0,Y.useLayoutEffect)(()=>{s.style.display=i?``:`none`},[s,i]),(0,Y.useLayoutEffect)(()=>{let e=ju.get(t);if(!e){s.parentElement!==a&&a.appendChild(s);return}if(s.parentElement===e)return;let n=[];s.querySelectorAll(`*`).forEach(e=>{(e.scrollTop||e.scrollLeft)&&n.push({el:e,top:e.scrollTop,left:e.scrollLeft})}),e.appendChild(s);for(let{el:e,top:t,left:r}of n)e.scrollTop=t,e.scrollLeft=r}),(0,Nu.createPortal)((0,X.jsx)(pr,{container:Gi(t),children:(0,X.jsx)(Y.Suspense,{fallback:(0,X.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,X.jsx)(L,{className:`size-6 animate-spin text-primary`})}),children:(0,X.jsx)(n,{metadata:r,tabId:e})})}),s)}function Fu(e,t){return`${e}|${t}`}function Iu(e,t){let n=new Set(e.tabs.map(e=>e.id)),r=t.filter(e=>!n.has(e.id));if(r.length===0)return e;let i=[...e.tabs,...r];return{...e,tabs:i,tabHistory:[...e.tabHistory,...r.map(e=>e.id)],activeTabId:e.activeTabId??i[i.length-1].id}}function Lu(e){let{grid:t,liveWindowIds:n}=e,r=new Set(n),i=t.flat(),a={...e.panels},o=e.focusedPanelId,s=!1,c=i.includes(o)?o:i[0];for(let[t,n]of Object.entries(e.panels)){if(!gr(t))continue;let e=br(t);if(e&&r.has(e)||!c)continue;let i=a[c];i&&(a[c]=Iu(i,n.tabs),delete a[t],s=!0)}let l=n.filter(e=>!a[vr(e)]);if(!i.includes(o)){let e=i[0];e&&(o=e,s=!0)}return{panels:a,focusedPanelId:o,windowIdsToClose:l,changed:s}}function Ru(){let e=hi(),t=W(e=>e.currentProject),n=Mr(e=>e.restored),r=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{if(!t||!n&&!e)return;let i=Fu(t,e);if(r.current===i)return;r.current=i;let{panels:a,grid:o,focusedPanelId:s}=W.getState(),c=Lu({panels:a,grid:o,focusedPanelId:s,liveWindowIds:e?[]:Object.values(Mr.getState().windows).filter(e=>e.kind===`tab-host`).map(e=>e.id)});c.changed&&(W.setState({panels:c.panels,focusedPanelId:c.focusedPanelId}),yr(W.getState));for(let e of c.windowIdsToClose)Mr.getState().close(e)},[t,n,e])}var zu={terminal:(0,Y.lazy)(()=>H(()=>import(`./terminal-tab-B4y6at4h.js`).then(e=>({default:e.TerminalTab})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]))),chat:(0,Y.lazy)(()=>H(()=>import(`./chat-tab-tbUDK__Y.js`).then(e=>({default:e.ChatTab})),__vite__mapDeps([26,2,1,3,27,6,28,29,14,30,7,31,9,32,33,12,34,35,19,36,23,8,10,11,37,38,16,39,15,17,40,41,42,13,43,44,45,46,47,48,21,49,22]))),editor:(0,Y.lazy)(()=>H(()=>import(`./code-editor-6ZiQehbr.js`).then(e=>({default:e.CodeEditor})),__vite__mapDeps([50,1,14,2,3,51,52,53,54,55,19,56,13,7,9,24,25,23,8,6,10,11,12,57,27,30,43,58,59,60,38,16,39,15,17,61,62,35,18,63,64,65]))),database:(0,Y.lazy)(()=>H(()=>import(`./database-viewer-CdPBUQPY.js`).then(e=>({default:e.DatabaseViewer})),__vite__mapDeps([66,1,2,3,51,14,52,53,54,55,19,56,13,7,9,24,25,23,8,6,10,11,12,57,67]))),sqlite:(0,Y.lazy)(()=>H(()=>import(`./sqlite-viewer-VzYLMqkD.js`).then(e=>({default:e.SqliteViewer})),__vite__mapDeps([68,1,2,3,51,14,52,53,54,55,19,56,13,7,9,24,25,23,8,6,10,11,12,57,67]))),postgres:(0,Y.lazy)(()=>H(()=>import(`./postgres-viewer-DW0Gkmow.js`).then(e=>({default:e.PostgresViewer})),__vite__mapDeps([69,1,14,70,2,3,71,7,19]))),"git-diff":(0,Y.lazy)(()=>H(()=>import(`./diff-viewer-BqEqwSw6.js`).then(e=>({default:e.DiffViewer})),__vite__mapDeps([72,1,2,3,27,6,7,13,14,9,33,58,62,11,18,19,64,65,56,24,25]))),"branch-review":(0,Y.lazy)(()=>H(()=>import(`./branch-review-tab-DhTMSpSU.js`).then(e=>({default:e.BranchReviewTab})),__vite__mapDeps([73,1,2,3,27,6,7,13,14,9,72,33,58,62,11,18,19,64,65,56,24,25,15,16,17,61,35,63]))),settings:(0,Y.lazy)(()=>H(()=>import(`./settings-tab-Du5AUPni.js`).then(e=>({default:e.SettingsTab})),__vite__mapDeps([74,2,1,3,27,6,75,14,61,76,19]))),extension:(0,Y.lazy)(()=>H(()=>import(`./extension-webview-CMq-VTLu.js`).then(e=>({default:e.ExtensionWebview})),__vite__mapDeps([77,1,2,3,7,19,64,9,24]))),"extension-webview":(0,Y.lazy)(()=>H(()=>import(`./extension-webview-CMq-VTLu.js`).then(e=>({default:e.ExtensionWebview})),__vite__mapDeps([77,1,2,3,7,19,64,9,24]))),"conflict-editor":(0,Y.lazy)(()=>H(()=>import(`./conflict-editor-B-wdjSXI.js`).then(e=>({default:e.ConflictEditor})),__vite__mapDeps([78,1,2,3,7,13,14,9,35,18,19,65,6,56,24,25]))),"system-monitor":(0,Y.lazy)(()=>H(()=>import(`./system-monitor-tab-BYpantE2.js`).then(e=>({default:e.SystemMonitorTab})),__vite__mapDeps([79,2,1,3,7,13,14,9,80,6,19]))),"git-log":(0,Y.lazy)(()=>H(()=>import(`./git-log-panel-CJakNMDc.js`).then(e=>({default:e.GitLogPanel})),__vite__mapDeps([81,1,2,3,6,7,61,19,64,9,11]))),"ai-resource":(0,Y.lazy)(()=>H(()=>import(`./ai-resource-editor-DhUVgDEG.js`).then(e=>({default:e.AiResourceEditor})),__vite__mapDeps([82,1,2,3,6,7,13,14,9,19,56,24,25]))),group:(0,Y.lazy)(()=>H(()=>import(`./group-chat-tab--by1xCQW.js`).then(e=>({default:e.GroupChatTab})),__vite__mapDeps([83,1,2,3,27,6,28,84,14,7,43,9,60,36,11,20,8,10,12,23,31,32,33,34,35,19,13,49,16,38,15,17,47,64,22]))),problems:(0,Y.lazy)(()=>H(()=>import(`./problems-panel-V5zqpuXq.js`).then(e=>({default:e.ProblemsPanel})),__vite__mapDeps([85,1,2,3,6,7,8,9,10,11,12,35,63,19]))),design:(0,Y.lazy)(()=>H(()=>import(`./design-tab-BZb9eemI.js`).then(e=>({default:e.DesignTab})),__vite__mapDeps([86,1,14,2,3,27,6,28,29,30,7,31,9,32,33,12,34,35,19,36,23,8,10,11,37,38,16,39,15,17,40,41,42,13,43,44,45,46,47,48,21,87,59,60,49,88,22])))},Bu={position:`fixed`,top:0,left:0,width:0,height:0,overflow:`hidden`,pointerEvents:`none`,visibility:`hidden`};function Vu(){let[e,t]=(0,Y.useState)(null);(0,Y.useSyncExternalStore)(e=>ju.subscribe(e),()=>ju.getVersion());let n=W(e=>e.panels),r=W(e=>e.grid),i=W(e=>e.currentProject),a=W(e=>e.projectGrids);Ru();let o=ku(n,r,a,i),s=Au(o,Tu(e=>e.mounted)),c=o.filter(e=>e.isActive).map(e=>e.tabId);return(0,Y.useEffect)(()=>{let{mount:e}=Tu.getState();for(let t of c)e(t)},[JSON.stringify(c)]),(0,X.jsx)(`div`,{ref:t,style:Bu,children:e&&s.map(t=>{let n=zu[t.type];return n?(0,X.jsx)(Pu,{tabId:t.tabId,panelId:t.panelId,component:n,metadata:t.metadata,isActive:t.isActive,hiddenContainer:e},t.tabId):null})})}function Hu(e,t){let n=W.getState(),r=n.getPanelForTab(e)?.tabs.find(t=>t.id===e)?.metadata;n.updateTab(e,{metadata:Uu(r,t)})}function Uu(e,t){return{...e,...t}}function Wu(e){return W.getState().getPanelForTab(e)?.tabs.find(t=>t.id===e)?.metadata}function Gu(e){let{projectName:t,designSlug:n,sessionId:r,providerId:i,fresh:a}=e;return{projectName:t,designSlug:n,...r?{sessionId:r}:{},...i?{providerId:i}:{providerPending:!0},...a?{designSessionChecked:!0}:{}}}function Ku(e){let{projectName:t,slug:n,title:r,sessionId:i,providerId:a,panelId:o,fresh:s}=e,c=W.getState().openTab({type:`design`,title:r||n,projectId:t,closable:!0,metadata:Gu({projectName:t,designSlug:n,sessionId:i,providerId:a,fresh:s})},o);if(!c||!i)return c;let l=Wu(c);return l&&l.sessionId!==i&&Hu(c,{sessionId:i,...a?{providerId:a,providerPending:void 0}:{},pendingMessage:void 0,designChatEpoch:qu(l)}),c}function qu(e){let t=e?.designChatEpoch;return(typeof t==`number`&&Number.isFinite(t)?t:0)+1}function Ju(e,t,n){return e.designSlug?Ku({projectName:t,slug:e.designSlug,sessionId:e.id,providerId:e.providerId,panelId:n}):W.getState().openTab({type:`chat`,title:e.title||`Chat`,projectId:t,metadata:{projectName:t,sessionId:e.id,...e.providerId?{providerId:e.providerId}:{}},closable:!0},n)}var Yu=[{type:`terminal`,label:`Terminal`,icon:sn},{type:`chat`,label:`AI Chat`,icon:Gn},{type:`editor`,label:`New File`,icon:Zt}];function Xu({panelId:e,projectName:t}){let n=W(t=>t.panels[e]),r=W(t=>t.focusedPanelId===e),i=W(e=>(e.currentProject===t?e.grid:e.projectGrids[t]??[[]]).flat().length),a=(0,Y.useCallback)(t=>{Mu(e,t)},[e]);if(!n)return null;let o=Sr(n.tabs,t).length===0;return(0,X.jsxs)(`div`,{className:U(`flex flex-col h-full overflow-hidden`,i>1&&`border border-transparent`,i>1&&r&&`border-primary/30`),onMouseDown:()=>{W.getState().focusedPanelId!==e&&W.getState().setFocusedPanel(e,!1)},children:[(0,X.jsx)(Cu,{panelId:e}),(0,X.jsxs)(`div`,{className:`flex-1 overflow-hidden relative`,"data-panel-drop-zone":e,onAuxClick:t=>{t.button!==1||!o||(t.preventDefault(),W.getState().closePanel(e))},children:[o&&(0,X.jsx)(Zu,{panelId:e,canClose:i>1}),(0,X.jsx)(`div`,{ref:a,className:`absolute inset-0`,style:o?{display:`none`}:void 0}),(0,X.jsx)(wu,{panelId:e})]})]})}function Zu({panelId:e,canClose:t}){let n=G(e=>e.activeProject);function r(t){if(t===`editor`){K.getState().openNewFile();return}let r=t!==`settings`&&n?{projectName:n.name}:void 0;W.getState().openTab({type:t,title:Yu.find(e=>e.type===t)?.label??t,metadata:r,projectId:n?.name??null,closable:!0},e)}let i=(0,Y.useCallback)(t=>{n?.name&&Ju(t,n.name,e)},[n?.name,e]);return(0,X.jsx)(`div`,{className:`flex flex-col h-full overflow-y-auto text-text-secondary`,children:(0,X.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-6 px-4 flex-1`,children:[(0,X.jsx)(`p`,{className:`text-sm`,children:`Open a tab to get started`}),(0,X.jsx)(`div`,{className:`grid grid-cols-3 gap-2 w-full max-w-sm`,children:Yu.map(e=>{let t=e.icon;return(0,X.jsxs)(`button`,{onClick:()=>r(e.type),className:`flex flex-col items-center justify-center gap-1.5 px-2 py-3 rounded-md border border-border bg-surface hover:bg-surface-elevated active:bg-surface-elevated text-xs text-foreground transition-colors`,children:[(0,X.jsx)(t,{className:`size-5`}),e.label]},e.type)})}),t&&(0,X.jsxs)(`button`,{onClick:()=>W.getState().closePanel(e),className:`flex items-center gap-1.5 px-4 py-3.5 rounded-md text-xs text-text-subtle hover:text-foreground active:bg-surface-elevated transition-colors`,children:[(0,X.jsx)(Be,{className:`size-3.5`}),`Close Panel`]}),(0,X.jsx)(hc,{projectName:n?.name,onSelectSession:i,className:`w-full`})]})})}function Qu(e,t,n){let r=n!==`bottom`;if(n===`bottom`||e.length<=2)return{visible:[...e],overflow:[],iconOnlyInactive:r};let i=new Set;t&&e.includes(t)&&i.add(t);for(let t of e){if(i.size>=2)break;i.add(t)}return{visible:e.filter(e=>i.has(e)),overflow:e.filter(e=>!i.has(e)),iconOnlyInactive:r}}function $u({...e}){return(0,X.jsx)(k,{"data-slot":`dropdown-menu`,...e})}function ed({container:e,...t}){let n=fr();return(0,X.jsx)(O,{"data-slot":`dropdown-menu-portal`,container:e??n,...t})}function td({...e}){return(0,X.jsx)(A,{"data-slot":`dropdown-menu-trigger`,...e})}function nd({className:e,sideOffset:t=4,...n}){return(0,X.jsx)(ed,{children:(0,X.jsx)(b,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:U(`z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95`,e),...n})})}function rd({className:e,inset:t,variant:n=`default`,...r}){return(0,X.jsx)(w,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:U(`relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:text-destructive!`,e),...r})}function id({className:e,children:t,checked:n,...r}){return(0,X.jsxs)(_,{"data-slot":`dropdown-menu-checkbox-item`,className:U(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),checked:n,...r,children:[(0,X.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,X.jsx)(me,{children:(0,X.jsx)(we,{className:`size-4`})})}),t]})}function ad({...e}){return(0,X.jsx)(g,{"data-slot":`dropdown-menu-radio-group`,...e})}function od({className:e,children:t,...n}){return(0,X.jsxs)(D,{"data-slot":`dropdown-menu-radio-item`,className:U(`relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...n,children:[(0,X.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,X.jsx)(me,{children:(0,X.jsx)(Ne,{className:`size-2 fill-current`})})}),t]})}function sd({className:e,inset:t,...n}){return(0,X.jsx)(f,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:U(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...n})}function cd({className:e,...t}){return(0,X.jsx)(h,{"data-slot":`dropdown-menu-separator`,className:U(`-mx-1 my-1 h-px bg-border`,e),...t})}function ld({...e}){return(0,X.jsx)(y,{"data-slot":`dropdown-menu-sub`,...e})}function ud({className:e,inset:t,children:n,...r}){return(0,X.jsxs)(v,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":t,className:U(`flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[inset]:pl-8 data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground`,e),...r,children:[n,(0,X.jsx)(qe,{className:`ml-auto size-4`})]})}function dd({className:e,...t}){return(0,X.jsx)(se,{"data-slot":`dropdown-menu-sub-content`,className:U(`z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95`,e),...t})}var fd={left:Jn,bottom:st,right:ht},pd={left:`Left`,bottom:`Bottom`,right:`Right`},md=[`left`,`bottom`,`right`];function hd(){let e=W(e=>e.panels[mr]),t=G(e=>e.activeProject?.name??null),n=V(e=>e.dockPosition),r=V(e=>e.setDockPosition),i=W(e=>e.dockExpanded),a=(e?.tabs??[]).filter(e=>!e.projectId||!t||e.projectId===t),o=e?.activeTabId??null,s=new Map(a.map(e=>[e.id,e])),c=Qu(a.map(e=>e.id),o,n);function l(e){W.getState().setActiveTab(e,mr)}function u(e){W.getState().closeTab(e,mr)}function d(){let e=G.getState().activeProject;W.getState().openInDock({type:`terminal`,title:`Terminal`,projectId:e?.name??null,closable:!0,metadata:e?{projectName:e.name}:void 0})}let f=fd[n];return(0,X.jsxs)(`div`,{className:`flex items-center h-8 min-w-0 flex-1 gap-1 px-1`,children:[(0,X.jsxs)(`div`,{className:`flex-1 min-w-0 flex items-center gap-1 overflow-x-auto scrollbar-none`,children:[c.visible.map(e=>{let t=s.get(e);if(!t)return null;let n=Su(t),r=e===o,i=!c.iconOnlyInactive||r,a=(0,X.jsxs)(`button`,{onClick:()=>l(e),className:U(`flex items-center gap-1.5 h-6 rounded-full border shrink-0 transition-colors`,i?`px-2.5`:`px-1.5`,r?`border-primary text-primary bg-primary/10`:`border-border text-text-secondary hover:bg-surface-elevated`),children:[(0,X.jsx)(n,{className:`size-3`}),i&&(0,X.jsx)(`span`,{className:`text-[11px] font-medium max-w-[120px] truncate`,children:t.title}),i&&t.closable&&(0,X.jsx)(`span`,{role:`button`,tabIndex:0,"aria-label":`Close ${t.title}`,onClick:t=>{t.stopPropagation(),u(e)},className:`flex items-center justify-center size-4 -mr-1 rounded hover:bg-surface-elevated hover:text-foreground`,children:(0,X.jsx)(Be,{className:`size-3`})})]},e);return i?a:(0,X.jsxs)(Ka,{children:[(0,X.jsx)(qa,{asChild:!0,children:a}),(0,X.jsx)(Ja,{side:`top`,className:`text-xs`,children:t.title})]},e)}),c.overflow.length>0&&(0,X.jsxs)($u,{children:[(0,X.jsx)(td,{asChild:!0,children:(0,X.jsxs)(`button`,{className:`flex items-center justify-center h-6 px-2 rounded-full border border-border text-text-secondary text-[10px] font-mono shrink-0 hover:bg-surface-elevated`,children:[`+`,c.overflow.length]})}),(0,X.jsx)(nd,{align:`start`,className:`min-w-[10rem]`,children:c.overflow.map(e=>{let t=s.get(e);return t?(0,X.jsxs)(rd,{onClick:()=>l(e),children:[(0,X.jsx)(Su(t),{className:`size-3.5`}),(0,X.jsx)(`span`,{className:`truncate`,children:t.title})]},e):null})})]}),(0,X.jsx)(`button`,{onClick:d,title:`New panel tab`,"aria-label":`New panel tab`,className:`flex items-center justify-center size-6 rounded-full border border-dashed border-border text-text-subtle shrink-0 hover:bg-surface-elevated hover:text-foreground`,children:(0,X.jsx)(Dt,{className:`size-3.5`})})]}),(0,X.jsxs)($u,{children:[(0,X.jsx)(td,{asChild:!0,children:(0,X.jsxs)(`button`,{title:`Panel position`,"aria-label":`Panel position`,className:`flex items-center gap-0.5 h-6 px-1.5 rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground shrink-0`,children:[(0,X.jsx)(f,{className:`size-3.5`}),(0,X.jsx)(Qe,{className:`size-2.5`})]})}),(0,X.jsxs)(nd,{align:`end`,children:[(0,X.jsx)(sd,{className:`text-[10px] uppercase tracking-wide text-text-subtle`,children:`Panel Position`}),md.map(e=>{let t=fd[e],i=e===n;return(0,X.jsxs)(rd,{onClick:()=>r(e),className:U(i&&`text-primary bg-primary/10`),children:[(0,X.jsx)(t,{className:`size-3.5`}),(0,X.jsx)(`span`,{className:`flex-1`,children:pd[e]}),i&&(0,X.jsx)(Rn,{className:`size-3.5`})]},e)})]})]}),(0,X.jsx)(`div`,{className:`w-px h-4 bg-border shrink-0`}),(0,X.jsx)(`button`,{onClick:()=>W.getState().toggleDockExpanded(),title:i?`Restore panel`:`Maximize panel`,"aria-label":i?`Restore panel`:`Maximize panel`,className:`flex items-center justify-center size-7 rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground shrink-0`,children:i?(0,X.jsx)(zn,{className:`size-3.5`}):(0,X.jsx)(Jt,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:()=>W.getState().setDockVisible(!1),title:`Hide panel`,"aria-label":`Hide panel`,className:`flex items-center justify-center size-7 rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground shrink-0`,children:(0,X.jsx)(Qe,{className:`size-3.5`})})]})}var gd={top:`border-t`,left:`border-l`,right:`border-r`};function _d({variant:e=`desktop`,borderEdge:t=`top`}){let n=W(e=>e.panels[mr]),r=G(e=>e.activeProject?.name??null),i=(n?.tabs??[]).some(e=>!e.projectId||!r||e.projectId===r),a=(0,Y.useCallback)(e=>{Mu(mr,e)},[]);return(0,X.jsxs)(`div`,{className:U(`flex flex-col h-full overflow-hidden border-border bg-panel`,e===`desktop`&&gd[t]),children:[(0,X.jsx)(`div`,{className:`flex items-center shrink-0`,children:e===`mobile`?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(vd,{}),(0,X.jsx)(`button`,{onClick:()=>W.getState().setDockVisible(!1),title:`Hide terminal dock`,className:U(`shrink-0 flex items-center justify-center mr-1 size-11`,`text-text-subtle hover:text-foreground hover:bg-surface-elevated`,`active:bg-surface-elevated rounded transition-colors`),"aria-label":`Hide terminal dock`,children:(0,X.jsx)(Be,{className:`size-3.5`})})]}):(0,X.jsx)(hd,{})}),(0,X.jsxs)(`div`,{className:`flex-1 overflow-hidden relative`,children:[!i&&(0,X.jsx)(yd,{variant:e}),(0,X.jsx)(`div`,{ref:a,className:`absolute inset-0`,style:i?void 0:{display:`none`}})]})]})}function vd(){let e=W(e=>e.panels[mr]),t=G(e=>e.activeProject),n=W(e=>e.dockExpanded),r=t?.name??null,i=(e?.tabs??[]).filter(e=>!e.projectId||!r||e.projectId===r),a=e?.activeTabId??null;function o(e){W.getState().setActiveTab(e,mr)}function s(){let e=t;W.getState().openInDock({type:`terminal`,title:`Terminal`,projectId:e?.name??null,closable:!0,metadata:e?{projectName:e.name}:void 0})}return(0,X.jsxs)(`div`,{className:`flex-1 min-w-0 flex items-center h-11 gap-1 pl-2 overflow-hidden`,children:[(0,X.jsxs)(`div`,{className:`flex-1 min-w-0 flex items-center gap-1.5 overflow-x-auto scrollbar-none`,children:[i.map(e=>{let t=Su(e);return(0,X.jsxs)(`div`,{className:U(`flex items-center h-8 pl-3 pr-1 gap-1 rounded-full border shrink-0 transition-colors`,e.id===a?`border-primary text-primary bg-primary/10`:`border-border text-text-secondary`),children:[(0,X.jsxs)(`button`,{onClick:()=>o(e.id),className:`flex items-center gap-1.5 min-w-0`,children:[(0,X.jsx)(t,{className:`size-[13px] shrink-0`}),(0,X.jsx)(`span`,{className:`max-w-[96px] truncate text-xs font-medium`,children:e.title})]}),e.closable&&(0,X.jsx)(`button`,{onClick:()=>W.getState().closeTab(e.id,`__dock__`),"aria-label":`Close ${e.title}`,className:`shrink-0 flex items-center justify-center size-6 rounded-full text-text-subtle active:bg-surface-elevated active:text-foreground`,children:(0,X.jsx)(Be,{className:`size-3.5`})})]},e.id)}),(0,X.jsx)(`button`,{onClick:s,title:`New panel tab`,"aria-label":`New panel tab`,className:`shrink-0 flex items-center justify-center size-8 rounded-full border border-dashed border-border text-text-subtle active:bg-surface-elevated`,children:(0,X.jsx)(Dt,{className:`size-4`})})]}),(0,X.jsx)(`button`,{onClick:()=>W.getState().toggleDockExpanded(),title:n?`Collapse panel`:`Expand panel`,"aria-label":n?`Collapse panel`:`Expand panel`,className:`shrink-0 flex items-center justify-center size-9 text-text-subtle active:bg-surface-elevated rounded transition-colors`,children:n?(0,X.jsx)(zn,{className:`size-4`}):(0,X.jsx)(Jt,{className:`size-4`})})]})}function yd({variant:e}){let t=G(e=>e.activeProject);function n(){let e=t;W.getState().openInDock({type:`terminal`,title:`Terminal`,projectId:e?.name??null,closable:!0,metadata:e?{projectName:e.name}:void 0})}return(0,X.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,X.jsxs)(`button`,{onClick:n,className:U(`flex items-center gap-2 rounded-md`,e===`mobile`?`px-4 py-3`:`px-3 py-2`,`border border-border bg-surface hover:bg-surface-elevated active:bg-surface-elevated`,`text-sm text-foreground transition-colors`),children:[(0,X.jsx)(sn,{className:`size-4`}),`Open Terminal`]})})}function bd(e,t,n){return e===`bottom`?{orientation:`vertical`,dockFirst:!1,dockSize:`${n?70:t}%`,borderEdge:`top`}:{orientation:`horizontal`,dockFirst:e===`left`,dockSize:`${n?55:t}%`,borderEdge:e===`left`?`right`:`left`}}var xd=[[]],Sd=(0,Y.memo)(function({projectName:e}){let t=Vs(`(min-width: 768px)`),n=W(t=>t.currentProject===e?t.grid:t.projectGrids[e]??xd),r=W(e=>e.focusedPanelId),i=W(e=>e.dock),a=W(e=>e.dockExpanded),o=V(e=>e.dockPosition),s=W(e=>e.currentProject),c=n.flat().length,l=s===e;(0,Y.useEffect)(()=>{if(l&&c===0){let e=wr();W.setState(t=>({panels:{...t.panels,[e.id]:e},grid:[[e.id]],focusedPanelId:e.id}))}},[l,c]);let u=(0,Y.useCallback)(({asPercentage:e})=>{W.getState().dockExpanded||W.getState().setDockHeight(e)},[]),d=(0,Y.useRef)({key:``,size:``});if(c===0)return null;if(!t){let t=n.flat(),i=t.includes(r)?r:t[0];return i?(0,X.jsx)(Xu,{panelId:i,projectName:e}):null}let f=c===1&&n[0]?.[0]?(0,X.jsx)(Xu,{panelId:n[0][0],projectName:e}):(0,X.jsx)(Ps,{orientation:`vertical`,style:{height:`100%`},children:n.map((t,r)=>(0,X.jsx)(Cd,{row:t,rowIdx:r,totalRows:n.length,projectName:e},`row-${r}`))});if(!l)return(0,X.jsx)(X.Fragment,{children:f});let p=bd(o,i.height,a),m=p.orientation===`vertical`?`horizontal`:`vertical`,h=`${o}-${a}`;d.current.key!==h&&(d.current={key:h,size:p.dockSize});let g=(0,X.jsx)(Ls,{minSize:`15%`,children:f}),_=i.visible?(0,X.jsx)(Ls,{defaultSize:d.current.size,minSize:`10%`,maxSize:`85%`,onResize:u,children:(0,X.jsx)(_d,{borderEdge:p.borderEdge})}):null,v=i.visible?(0,X.jsx)(Td,{orientation:m}):null;return(0,X.jsxs)(Ps,{orientation:p.orientation,style:{height:`100%`},children:[p.dockFirst?_:g,v,p.dockFirst?g:_]},h)});function Cd({row:e,rowIdx:t,totalRows:n,projectName:r}){return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Ls,{minSize:`15%`,defaultSize:`${Math.round(100/n)}%`,children:e.length===1?(0,X.jsx)(Xu,{panelId:e[0],projectName:r}):(0,X.jsx)(Ps,{orientation:`horizontal`,children:e.map((t,n)=>(0,X.jsx)(wd,{panelId:t,colIdx:n,totalCols:e.length,projectName:r},t))})}),t<n-1&&(0,X.jsx)(Td,{orientation:`horizontal`})]})}function wd({panelId:e,colIdx:t,totalCols:n,projectName:r}){return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Ls,{minSize:`15%`,defaultSize:`${Math.round(100/n)}%`,children:(0,X.jsx)(Xu,{panelId:e,projectName:r})}),t<n-1&&(0,X.jsx)(Td,{orientation:`vertical`})]})}function Td({orientation:e}){let t=e===`vertical`;return(0,X.jsx)(Bs,{className:`
13
- group/handle relative flex items-center justify-center
14
- ${t?`w-px cursor-col-resize`:`h-px cursor-row-resize`}
15
- bg-border/30 hover:bg-primary/30 active:bg-primary/50
16
- transition-colors duration-150
17
- `,children:(0,X.jsx)(`div`,{className:`absolute can-hover:opacity-0 can-hover:group-hover/handle:opacity-70 transition-opacity text-foreground/50`,children:t?(0,X.jsx)(ct,{className:`size-3`}):(0,X.jsx)(Ke,{className:`size-3`})})})}var Ed=e=>Symbol.iterator in e,Dd=e=>`entries`in e,Od=(e,t)=>{let n=e instanceof Map?e:new Map(e.entries()),r=t instanceof Map?t:new Map(t.entries());if(n.size!==r.size)return!1;for(let[e,t]of n)if(!r.has(e)||!Object.is(t,r.get(e)))return!1;return!0},kd=(e,t)=>{let n=e[Symbol.iterator](),r=t[Symbol.iterator](),i=n.next(),a=r.next();for(;!i.done&&!a.done;){if(!Object.is(i.value,a.value))return!1;i=n.next(),a=r.next()}return!!i.done&&!!a.done};function Ad(e,t){return Object.is(e,t)?!0:typeof e!=`object`||!e||typeof t!=`object`||!t||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:Ed(e)&&Ed(t)?Dd(e)&&Dd(t)?Od(e,t):kd(e,t):Od({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function jd(e){let t=Y.useRef(void 0);return n=>{let r=e(n);return Ad(t.current,r)?t.current:t.current=r}}function Md(e,t,n){let r=Array(e);return new Proxy(r,{get(r,i,a){if(typeof i==`string`){let a=i.charCodeAt(0);if(a>=48&&a<=57){let a=+i;if(Number.isInteger(a)&&a>=0&&a<e){let e=r[a];if(!e){let i=t[a*2];e=r[a]={index:a,key:n(a),start:i,size:t[a*2+1],end:i+t[a*2+1],lane:0}}return e}}if(i===`length`)return e}return Reflect.get(r,i,a)}})}function Nd(e,t,n){let r=n.initialDeps??[],i,a=!0;function o(){let o=e();return o.length!==r.length||o.some((e,t)=>r[t]!==e)?(r=o,i=t(...o),n?.onChange&&!(a&&n.skipInitialOnChange)&&n.onChange(i),a=!1,i):i}return o.updateDeps=e=>{r=e},o}function Pd(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var Fd=(e,t)=>Math.abs(e-t)<1.01,Id=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},Ld,Rd=()=>{if(Ld!==void 0)return Ld;if(typeof navigator>`u`)return Ld=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return Ld=!0;let e=navigator.maxTouchPoints;return Ld=navigator.platform===`MacIntel`&&e!==void 0&&e>0},zd=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},Bd=e=>e,Vd=e=>{let t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1)-t+1,r=Array(n);for(let e=0;e<n;e++)r[e]=t+e;return r},Hd=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=e=>{let{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(i(zd(n)),!r.ResizeObserver)return()=>{};let a=new r.ResizeObserver(t=>{let r=()=>{let e=t[0];if(e?.borderBoxSize){let t=e.borderBoxSize[0];if(t){i({width:t.inlineSize,height:t.blockSize});return}}i(zd(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},Ud={passive:!0},Wd=typeof window>`u`?!0:`onscrollend`in window,Gd=(e,t,n)=>{let r=e.scrollElement;if(!r)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Wd,o=0,s=a?null:Id(i,()=>t(o,!1),e.options.isScrollingResetDelay),c=e=>()=>{o=n(r),s?.(),t(o,e)},l=c(!0),u=c(!1);return r.addEventListener(`scroll`,l,Ud),a&&r.addEventListener(`scrollend`,u,Ud),()=>{r.removeEventListener(`scroll`,l),a&&r.removeEventListener(`scrollend`,u)}},Kd=(e,t)=>Gd(e,t,t=>{let{horizontal:n,isRtl:r}=e.options;return n?t.scrollLeft*(r&&-1||1):t.scrollTop}),qd=(e,t,n)=>{if(n.options.useCachedMeasurements){let t=n.indexFromElement(e),r=n.options.getItemKey(t);return n.itemSizeCache.get(r)??n.options.estimateSize(t)}if(t?.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?`inlineSize`:`blockSize`])}if(!t){let t=n.indexFromElement(e),r=n.options.getItemKey(t),i=n.itemSizeCache.get(r);if(i!==void 0)return i}return e[n.options.horizontal?`offsetWidth`:`offsetHeight`]},Jd=(e,{adjustments:t=0,behavior:n},r)=>{var i,a;(a=(i=r.scrollElement)?.scrollTo)==null||a.call(i,{[r.options.horizontal?`left`:`top`]:e+t,behavior:n})},Yd=class{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var e;return((e=this.targetWindow?.performance)?.now)?.call(e)??Date.now()},this.observer=(()=>{let e=null,t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(e=>{e.forEach(e=>{let t=()=>{let t=e.target,n=this.indexFromElement(t);if(!t.isConnected){this.observer.unobserve(t);for(let[e,n]of this.elementsCache)if(n===t){this.elementsCache.delete(e);break}return}this.shouldMeasureDuringScroll(n)&&this.resizeItem(n,this.options.measureElement(t,e,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(t):t()})}));return{disconnect:()=>{var n;(n=t())==null||n.disconnect(),e=null},observe:e=>t()?.observe(e,{box:`border-box`}),unobserve:e=>t()?.unobserve(e)}})(),this.range=null,this.setOptions=e=>{let t={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Bd,rangeExtractor:Vd,onChange:()=>{},measureElement:qd,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:`data-index`,initialMeasurementsCache:[],lanes:1,anchorTo:`start`,followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:`estimate`,useCachedMeasurements:!1};for(let n in e){let r=e[n];r!==void 0&&(t[n]=r)}let n=this.options,r=null,i=null,a=!1;if(n!==void 0&&n.enabled&&t.enabled&&t.anchorTo===`end`&&this.scrollElement!==null){let e=n.count,o=t.count,s=this.getMeasurements(),c=e>0?s[0]?.key??n.getItemKey(0):null,l=e>0?s[e-1]?.key??n.getItemKey(e-1):null;if(o!==e||e>0&&o>0&&(t.getItemKey(0)!==c||t.getItemKey(o-1)!==l)){a=!0;let c=e>0?this.getVirtualItemForOffset(this.getScrollOffset())??s[0]:null;c&&(r=[c.key,this.getScrollOffset()-c.start]);let u=t.followOnAppend===!0?`auto`:t.followOnAppend||null;u&&o>e&&this.isAtEnd(n.scrollEndThreshold)&&(e===0||t.getItemKey(o-1)!==l)&&(i=u)}}this.options=t,a&&(this.pendingMin=0,this.itemSizeCacheVersion++);let o=!1,s=0;if(r&&this.scrollOffset!==null){let[e,t]=r,n=this.getMeasurements(),{count:i,getItemKey:a}=this.options,c=0;for(;c<i&&a(c)!==e;)c++;if(c<i){let e=n[c];if(e){let n=e.start+t;n!==this.scrollOffset&&(s=n-this.scrollOffset,this.scrollOffset=n,o=!0)}}}(o||i)&&(this.pendingScrollAnchor=[o?r[0]:null,o?r[1]:0,i,s])},this.notify=e=>{var t,n;(n=(t=this.options).onChange)==null||n.call(t,this,e)},this.maybeNotify=Nd(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{let e=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==e){if(this.cleanup(),!e){this.maybeNotify();return}if(this.scrollElement=e,this.scrollElement&&`ownerDocument`in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=this.scrollElement?.window??null,this.elementsCache.forEach(e=>{this.observer.observe(e)}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{if(t&&this._intendedScrollOffset===null&&e===this.scrollOffset)return;this._intendedScrollOffset!==null&&Math.abs(e-this._intendedScrollOffset)<1.5&&(e=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0;let n=this.getScrollOffset();this.scrollDirection=t?n===e?this.scrollDirection:n<e?`forward`:`backward`:null,this.scrollOffset=e,this.isScrolling=t,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),`addEventListener`in this.scrollElement){let e=this.scrollElement,t=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},n=()=>{this._iosTouching=!1,!(!Rd()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};e.addEventListener(`touchstart`,t,Ud),e.addEventListener(`touchend`,n,Ud),this.unsubs.push(()=>{e.removeEventListener(`touchstart`,t),e.removeEventListener(`touchend`,n),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}let t=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,t&&this.scrollElement&&this.options.enabled){let[e,n,r,i]=t;e!==null&&!r&&(Rd()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?i!==0&&(this._iosDeferredAdjustment+=i):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),r&&this.scrollToEnd({behavior:r})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;let e=this.getScrollOffset(),t=this.getMaxScrollOffset();if(e<0||e>t)return;let n=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(e,{adjustments:this.scrollAdjustments+=n,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?`width`:`height`]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==`function`?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(e,t)=>{let n=new Map,r=new Map;for(let i=t-1;i>=0;i--){let t=e[i];if(n.has(t.lane))continue;let a=r.get(t.lane);if(a==null||t.end>a.end?r.set(t.lane,t):t.end<a.end&&n.set(t.lane,!0),n.size===this.options.lanes)break}return r.size===this.options.lanes?Array.from(r.values()).sort((e,t)=>e.end===t.end?e.index-t.index:e.end-t.end)[0]:void 0},this.getMeasurementOptions=Nd(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode],(e,t,n,r,i,a,o)=>(this.prevLanes!==void 0&&this.prevLanes!==a&&(this.lanesChangedFlag=!0),this.prevLanes=a,this.pendingMin=null,{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a,laneAssignmentMode:o}),{key:!1}),this.getMeasurements=Nd(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a,laneAssignmentMode:o},s)=>{let c=this.itemSizeCache;if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(let t of this.laneAssignments.keys())t>=e&&this.laneAssignments.delete(t);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let l=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1),a===1){let i=this.options.gap,a=e*2,o=this._flatMeasurements;if(!o||o.length<a){let e=new Float64Array(a);o&&l>0&&e.set(o.subarray(0,l*2)),o=e,this._flatMeasurements=o}let s;if(l===0)s=t+n;else{let e=l-1;s=o[e*2]+o[e*2+1]+i}for(let t=l;t<e;t++){let e=r(t),n=c.get(e),a=typeof n==`number`?n:this.options.estimateSize(t);o[t*2]=s,o[t*2+1]=a,s+=a+i}let u=Md(e,o,r);return this.measurementsCache=u,u}let u=this.measurementsCache.slice(0,l),d=Array(a).fill(void 0);for(let e=0;e<l;e++){let t=u[e];t&&(d[t.lane]=e)}for(let i=l;i<e;i++){let e=r(i),a=this.laneAssignments.get(i),s,l,f=o===`estimate`||c.has(e);if(a!==void 0&&this.options.lanes>1){s=a;let e=d[s],r=e===void 0?void 0:u[e];l=r?r.end+this.options.gap:t+n}else{let e=this.options.lanes===1?u[i-1]:this.getFurthestMeasurement(u,i);l=e?e.end+this.options.gap:t+n,s=e?e.lane:i%this.options.lanes,this.options.lanes>1&&f&&this.laneAssignments.set(i,s)}let p=c.get(e),m=typeof p==`number`?p:this.options.estimateSize(i),h=l+m;u[i]={index:i,start:l,size:m,end:h,key:e,lane:s},d[s]=i}return this.measurementsCache=u,u},{key:!1,debug:()=>this.options.debug}),this.calculateRange=Nd(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>e.length===0||t===0?(this.range=null,null):(this.range=Qd(e,t,n,r,r===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Nd(()=>{let e=null,t=null,n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]},(e,t,n,r,i)=>r===null||i===null?[]:e({startIndex:r,endIndex:i,overscan:t,count:n}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=e=>{if(!this.scrollState||this.scrollState.behavior!==`smooth`)return!0;let t=this.scrollState.index??this.getVirtualItemForOffset(this.scrollState.lastTargetOffset)?.index;if(t!==void 0&&this.range){let n=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),r=Math.max(0,t-n),i=Math.min(this.options.count-1,t+n);return e>=r&&e<=i}return!0},this.measureElement=e=>{if(!e){this.elementsCache.forEach((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))});return}let t=this.indexFromElement(e),n=this.options.getItemKey(t),r=this.elementsCache.get(n);r!==e&&(r&&this.observer.unobserve(r),this.observer.observe(e),this.elementsCache.set(n,e)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(t)&&this.resizeItem(t,this.options.measureElement(e,void 0,this))},this.resizeItem=(e,t)=>{if(e<0||e>=this.options.count)return;let n,r,i,a=this._flatMeasurements;if(this.options.lanes===1&&a!==null)i=this.options.getItemKey(e),r=a[e*2],n=a[e*2+1];else{let t=this.measurementsCache[e];if(!t)return;i=t.key,r=t.start,n=t.size}let o=t-(this.itemSizeCache.get(i)??n);if(o!==0){let a=this.options.anchorTo===`end`&&this.scrollState?.behavior!==`smooth`&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,s=a?this.getTotalSize():0,c=this.scrollState?.behavior!==`smooth`&&(this.shouldAdjustScrollPositionOnItemSizeChange===void 0?r<this.getScrollOffset()+this.scrollAdjustments&&(!this.itemSizeCache.has(i)||this.scrollDirection!==`backward`):this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[e]??{index:e,key:i,start:r,size:n,end:r+n,lane:0},o,this));(this.pendingMin===null||e<this.pendingMin)&&(this.pendingMin=e),this.itemSizeCache.set(i,t),this.itemSizeCacheVersion++,a?this.applyScrollAdjustment(this.getTotalSize()-s):c&&this.applyScrollAdjustment(o),this.notify(!1)}},this.getVirtualItems=Nd(()=>[this.getVirtualIndexes(),this.getMeasurements()],(e,t)=>{let n=[];for(let r=0,i=e.length;r<i;r++){let i=t[e[r]];n.push(i)}return n},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=e=>{let t=this.getMeasurements();if(t.length===0)return;let n=this._flatMeasurements,r=this.options.lanes===1&&n!=null;return Pd(t[Xd(0,t.length-1,r?e=>n[e*2]:e=>Pd(t[e]).start,e)])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if(`scrollHeight`in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{let e=this.scrollElement.document.documentElement;return this.options.horizontal?e.scrollWidth-this.scrollElement.innerWidth:e.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(e=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=e,this.getOffsetForAlignment=(e,t,n=0)=>{if(!this.scrollElement)return 0;let r=this.getSize(),i=this.getScrollOffset();t===`auto`&&(t=e>=i+r?`end`:`start`),t===`center`?e+=(n-r)/2:t===`end`&&(e-=r);let a=this.getMaxScrollOffset();return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t=`auto`)=>{e=Math.max(0,Math.min(e,this.options.count-1));let n=this.getSize(),r=this.getScrollOffset(),i=this.measurementsCache[e];if(!i)return;if(t===`auto`)if(i.end>=r+n-this.options.scrollPaddingEnd)t=`end`;else if(i.start<=r+this.options.scrollPaddingStart)t=`start`;else return[r,t];if(t===`end`&&e===this.options.count-1)return[this.getMaxScrollOffset(),t];let a=t===`end`?i.end+this.options.scrollPaddingEnd:i.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,i.size),t]},this.scrollToOffset=(e,{align:t=`start`,behavior:n=`auto`}={})=>{let r=this.getOffsetForAlignment(e,t);this.scrollState={index:null,align:t,behavior:n,startedAt:this.now(),lastTargetOffset:r,stableFrames:0},this._scrollToOffset(r,{adjustments:void 0,behavior:n}),this.scheduleScrollReconcile()},this.scrollToIndex=(e,{align:t=`auto`,behavior:n=`auto`}={})=>{e=Math.max(0,Math.min(e,this.options.count-1));let r=this.getOffsetForIndex(e,t);if(!r)return;let[i,a]=r,o=this.now();this.scrollState={index:e,align:a,behavior:n,startedAt:o,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:n}),this.scheduleScrollReconcile()},this.scrollBy=(e,{behavior:t=`auto`}={})=>{let n=this.getScrollOffset()+e;this.scrollState={index:null,align:`start`,behavior:t,startedAt:this.now(),lastTargetOffset:n,stableFrames:0},this._scrollToOffset(n,{adjustments:void 0,behavior:t}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:e=`auto`}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:`end`,behavior:e});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:e})},this.getTotalSize=()=>{let e=this.getMeasurements(),t;if(e.length===0)t=this.options.paddingStart;else if(this.options.lanes===1){let n=e.length-1,r=this._flatMeasurements;t=r==null?e[n]?.end??0:r[n*2]+r[n*2+1]}else{let n=Array(this.options.lanes).fill(null),r=e.length-1;for(;r>=0&&n.some(e=>e===null);){let t=e[r];n[t.lane]===null&&(n[t.lane]=t.end),r--}t=Math.max(...n.filter(e=>e!==null))}return Math.max(t-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{let e=[];if(this.itemSizeCache.size===0)return e;let t=this.getMeasurements();for(let n of t)n&&this.itemSizeCache.has(n.key)&&e.push({index:n.index,key:n.key,start:n.start,size:n.size,end:n.end,lane:n.lane});return e},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this._intendedScrollOffset=e+(t??0),this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(e)}applyScrollAdjustment(e,t){e!==0&&(Rd()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=e:(this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=e,behavior:t}),this.scrollOffset!==null&&(this.scrollOffset+=this.scrollAdjustments,this.scrollAdjustments=0)))}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId??=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()})}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}let e=this.scrollState.index==null?void 0:this.getOffsetForIndex(this.scrollState.index,this.scrollState.align),t=e?e[0]:this.scrollState.lastTargetOffset,n=t!==this.scrollState.lastTargetOffset;if(!n&&Fd(t,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=1){this.getScrollOffset()!==t&&this._scrollToOffset(t,{adjustments:void 0,behavior:`auto`}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,n){let e=this.getSize()||600,n=Math.abs(t-this.getScrollOffset()),r=this.scrollState.behavior===`smooth`&&n>e;this.scrollState.lastTargetOffset=t,r||(this.scrollState.behavior=`auto`),this._scrollToOffset(t,{adjustments:void 0,behavior:r?`smooth`:`auto`})}this.scheduleScrollReconcile()}},Xd=(e,t,n,r)=>{for(;e<=t;){let i=(e+t)/2|0,a=n(i);if(a<r)e=i+1;else if(a>r)t=i-1;else return i}return e>0?e-1:0};function Zd(e,t,n){let r=0;for(;r<=t;){let i=(r+t)/2|0,a=e[i*2];if(a<n)r=i+1;else if(a>n)t=i-1;else return i}return r>0?r-1:0}function Qd(e,t,n,r,i){let a=e.length-1;if(e.length<=r)return{startIndex:0,endIndex:a};if(r===1&&i!==null){let e=Zd(i,a,n),r=e,o=n+t;for(;r<a&&i[r*2]+i[r*2+1]<o;)r++;return{startIndex:e,endIndex:r}}let o=Xd(0,a,t=>e[t].start,n),s=o;if(r===1)for(;s<a&&e[s].end<n+t;)s++;else if(r>1){let i=Array(r).fill(0);for(;s<a&&i.some(e=>e<n+t);){let t=e[s];i[t.lane]=t.end,s++}let c=Array(r).fill(n+t);for(;o>=0&&c.some(e=>e>=n);){let t=e[o];c[t.lane]=t.start,o--}o=Math.max(0,o-o%r),s=Math.min(a,s+(r-1-s%r))}return{startIndex:o,endIndex:s}}var $d=typeof document<`u`?Y.useLayoutEffect:Y.useEffect;function ef({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n=`transform`,...r}){let i=Y.useReducer(e=>e+1,0)[1],a=Y.useRef({enabled:t,mode:n,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});a.current.enabled=t,a.current.mode=n;let o=e=>{let t=a.current;if(!t.enabled||!t.container)return;let n=e.getTotalSize();if(n!==t.lastSize){t.lastSize=n;let r=e.options.horizontal?`width`:`height`;t.container.style[r]=`${n}px`}let r=!!e.options.horizontal,i=t.mode===`transform`,o=r?`left`:`top`,s=e.options.scrollMargin,c=e.getVirtualItems();for(let n of c){let a=n.start-s,c=e.elementsCache.get(n.key);c&&t.lastPositions.get(c)!==a&&(t.lastPositions.set(c,a),i?c.style.transform=r?`translate3d(${a}px, 0, 0)`:`translate3d(0, ${a}px, 0)`:c.style[o]=`${a}px`)}},s={...r,onChange:(t,n)=>{var s;let c=a.current,l=!0;if(c.enabled){o(t);let e=t.range,n=c.prevRange;l=!n||n.isScrolling!==t.isScrolling||n.startIndex!==e?.startIndex||n.endIndex!==e?.endIndex,l&&(c.prevRange=e?{startIndex:e.startIndex,endIndex:e.endIndex,isScrolling:t.isScrolling}:null)}l&&(e&&n?(0,Nu.flushSync)(i):i()),(s=r.onChange)==null||s.call(r,t,n)}},[c]=Y.useState(()=>{let e=new Yd(s);return Object.assign(e,{containerRef:t=>{let n=a.current;if(n.container=t,n.lastSize=null,t&&n.enabled){let r=e.getTotalSize();n.lastSize=r;let i=e.options.horizontal?`width`:`height`;t.style[i]=`${r}px`}}})});return c.setOptions(s),$d(()=>c._didMount(),[]),$d(()=>c._willUpdate()),$d(()=>{o(c)}),c}function tf(e){return ef({observeElementRect:Hd,observeElementOffset:Kd,scrollToFn:Jd,...e})}function nf({icon:e,title:t,children:n}){return(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-2 border-b border-border shrink-0`,children:[(0,X.jsx)(e,{className:`size-4 text-primary`}),(0,X.jsx)(`span`,{className:`text-xs font-semibold uppercase tracking-wide text-text-secondary flex-1`,children:t}),n]})}var rf=400,af=Y.createContext(!1),of=Y.createContext({});function sf({children:e,...t}){let n=hi(),[r,i]=(0,Y.useState)(!1);return n?(0,X.jsx)(af.Provider,{value:!0,children:(0,X.jsx)(oa.Provider,{value:{open:r,setOpen:i},children:e})}):(0,X.jsx)(ni,{...t,children:e})}function cf({children:e,asChild:t,...n}){let r=Y.useContext(af),{setOpen:i}=Y.useContext(oa),a=(0,Y.useRef)(void 0),o=(0,Y.useRef)(!1);if(!r)return(0,X.jsx)(ri,{asChild:t,...n,children:e});let s=(0,Y.useCallback)(e=>{e.stopPropagation(),o.current=!1,a.current=setTimeout(()=>{i(!0),o.current=!0},rf)},[i]),c=(0,Y.useCallback)(()=>{clearTimeout(a.current)},[]),l=(0,Y.useCallback)(()=>{clearTimeout(a.current)},[]);return(0,Y.useEffect)(()=>()=>clearTimeout(a.current),[]),(0,X.jsx)(`div`,{onTouchStart:s,onTouchMove:c,onTouchEnd:l,onTouchCancel:l,onClickCapture:(0,Y.useCallback)(e=>{o.current&&=(e.preventDefault(),e.stopPropagation(),!1)},[]),onContextMenu:(0,Y.useCallback)(e=>{e.preventDefault(),e.stopPropagation()},[]),className:`contents`,children:e})}function lf({children:e,className:t,...n}){if(!Y.useContext(af))return(0,X.jsx)(Qr,{className:t,...n,children:e});let{open:r,setOpen:i}=Y.useContext(oa);return(0,X.jsx)(la,{open:r,onClose:()=>i(!1),className:U(`p-2`,t),children:(0,X.jsx)(`div`,{className:`max-h-[60vh] overflow-y-auto`,children:e})})}function $({children:e,className:t,variant:n,onClick:r,disabled:i,...a}){return Y.useContext(af)?(0,X.jsx)(ca,{className:t,variant:n,disabled:i,onClick:r,children:e}):(0,X.jsx)(ei,{className:t,variant:n,disabled:i,onClick:r,...a,children:e})}function uf({className:e,...t}){return Y.useContext(af)?(0,X.jsx)(aa,{className:e}):(0,X.jsx)($r,{className:e,...t})}function df({value:e,onValueChange:t,children:n,...r}){return Y.useContext(af)?(0,X.jsx)(of.Provider,{value:{value:e,onValueChange:t},children:n}):(0,X.jsx)(Xr,{value:e,onValueChange:t,...r,children:n})}function ff({value:e,children:t,className:n,...r}){let i=Y.useContext(af),{value:a,onValueChange:o}=Y.useContext(of);return i?(0,X.jsxs)(ca,{className:n,onClick:()=>o?.(e),children:[(0,X.jsx)(`span`,{className:`flex size-4 shrink-0 items-center justify-center`,children:a===e&&(0,X.jsx)(Ne,{className:`size-2 fill-current`})}),t]}):(0,X.jsx)(Jr,{value:e,className:n,...r,children:t})}function pf({children:e,...t}){return Y.useContext(af)?(0,X.jsx)(X.Fragment,{children:e}):(0,X.jsx)(ti,{...t,children:e})}function mf({children:e,className:t,...n}){return Y.useContext(af)?(0,X.jsx)(sa,{className:t,children:e}):(0,X.jsx)(Zr,{className:t,...n,children:e})}function hf({children:e,className:t,...n}){return Y.useContext(af)?(0,X.jsx)(ia,{className:t,children:e}):(0,X.jsx)(Yr,{className:t,...n,children:e})}function gf({node:e,isDir:t,projectName:n,selectedFiles:r,compareSelection:i,clipboard:a,onAction:o}){return(0,X.jsxs)(lf,{children:[t&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)($,{onClick:()=>o(`new-file`,e),children:`New File`}),(0,X.jsx)($,{onClick:()=>o(`new-folder`,e),children:`New Folder`}),(0,X.jsx)(uf,{}),(0,X.jsxs)($,{onClick:()=>o(`open-in-file-explorer`,e),children:[(0,X.jsx)(et,{className:`size-3.5 mr-2`}),`Open in File Explorer`]}),(0,X.jsxs)($,{onClick:()=>o(`open-in-terminal`,e),children:[(0,X.jsx)(ve,{className:`size-3.5 mr-2`}),`Open in Terminal`]}),(0,X.jsx)(uf,{})]}),(0,X.jsx)($,{onClick:()=>o(`cut`,e),children:`Cut`}),(0,X.jsx)($,{onClick:()=>o(`copy-file`,e),children:`Copy`}),t&&a&&(0,X.jsx)($,{onClick:()=>o(`paste`,e),children:`Paste`}),(0,X.jsx)(uf,{}),(0,X.jsx)($,{onClick:()=>o(`rename`,e),children:`Rename`}),(0,X.jsx)($,{variant:`destructive`,onClick:()=>o(`delete`,e),children:`Delete`}),(0,X.jsx)(uf,{}),(0,X.jsx)($,{onClick:()=>o(`copy-path`,e),children:`Copy Path`}),(0,X.jsx)($,{onClick:()=>o(`copy-full-path`,e),children:`Copy Full Path`}),(0,X.jsx)(uf,{}),(0,X.jsxs)($,{onClick:()=>o(`download`,e),children:[(0,X.jsx)(An,{className:`size-3.5 mr-2`}),`Download`,t?` as Zip`:``]}),!t&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(uf,{}),(0,X.jsx)($,{onClick:()=>o(`select-for-compare`,e),children:`Select for Compare`}),i&&i.projectName===n&&i.filePath!==e.path&&(0,X.jsxs)($,{onClick:()=>o(`compare-with-selected`,e),children:[`Compare with Selected (`,i.label,`)`]})]}),!t&&r.length===2&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(uf,{}),(0,X.jsx)($,{onClick:()=>o(`compare-selected`,e),children:`Compare Selected`})]})]})}function _f(e){let t=xi(t=>e?t.discovery[e]:void 0),n=xi(t=>e?t.chosen[e]:void 0),r=xi(e=>e.load),i=xi(e=>e.choose);(0,Y.useEffect)(()=>{e&&r(e)},[e,r]);let a=bi(t,n),o=(0,Y.useCallback)(t=>Ei(`${z(e??``)}/git${t}`,a),[e,a]),s=(0,Y.useCallback)(e=>vi(e,a),[a]),c=(0,Y.useCallback)(e=>Si(e,a),[a]),l=(0,Y.useCallback)(e=>wi(e,a),[a]),u=(0,Y.useCallback)(t=>{e&&i(e,t)},[e,i]),d=(0,Y.useCallback)(()=>{e&&r(e,!0)},[e,r]);return(0,Y.useMemo)(()=>({repo:a,repos:t?.repos??[],isNested:!!t&&!t.rootIsRepo&&t.repos.length>0,needsPick:_i(t,n),noRepo:yi(t),gitUrl:o,repoPath:s,projectFile:c,rebaseStatus:l,choose:u,reload:d}),[a,t,n,o,s,c,l,u,d])}var vf={M:`text-warning`,A:`text-success`,D:`text-error`,R:`text-primary`,C:`text-accent-2`,U:`text-text-3`};function yf(e){let t=new Map;for(let n of e.untracked)t.set(n,`U`);for(let n of e.unstaged){let e=n.status===`?`?`U`:n.status;t.set(n.path,e)}for(let n of e.staged){let e=n.status===`?`?`U`:n.status;t.set(n.path,e)}return t}function bf(e){let t={D:5,A:4,M:3,R:2,C:1,U:0},n=new Map;for(let[r,i]of e){let e=r.split(`/`);for(let r=1;r<e.length;r++){let a=e.slice(0,r).join(`/`),o=n.get(a);(!o||t[i]>t[o])&&n.set(a,i)}}return n}var xf=lr()(e=>({counts:new Map,fileStatuses:new Map,folderStatuses:new Map,meta:new Map,setCount:(t,n)=>{e(e=>{if(e.counts.get(t)===n)return e;let r=new Map(e.counts);return r.set(t,n),{counts:r}})},setFileStatuses:(t,n)=>{let r=yf(n),i=bf(r);e(e=>{let n=new Map(e.fileStatuses);n.set(t,r);let a=new Map(e.folderStatuses);return a.set(t,i),{fileStatuses:n,folderStatuses:a}})},setMeta:(t,n)=>{e(e=>{let r=e.meta.get(t);if(r&&r.branch===n.current&&r.ahead===n.ahead&&r.behind===n.behind&&r.tracking===n.tracking)return e;let i=new Map(e.meta);return i.set(t,{branch:n.current,ahead:n.ahead,behind:n.behind,tracking:n.tracking}),{meta:i}})}}));async function Sf(e,t,n){let{setCount:r,setFileStatuses:i,setMeta:a}=xf.getState();try{let o=await B.get(t(`/status`));r(e,o.staged.length+o.unstaged.length+o.untracked.length),i(e,n(o)),a(e,o)}catch{}}function Cf(e,t){let{repo:n,gitUrl:r,rebaseStatus:i}=_f(e),a=(0,Y.useCallback)(async()=>{!e||!n||await Sf(e,r,i)},[e,n,r,i]);(0,Y.useEffect)(()=>{if(t)return;a();let e=setInterval(a,1e4);return()=>clearInterval(e)},[a,t])}var wf=`ring-1 ring-dashed ring-primary bg-primary/10`,Tf=`ppm-explorer-view`,Ef={sort:{key:`name`,dir:`asc`},viewMode:`list`,showHidden:!1};function Df(){try{let e=localStorage.getItem(Tf);if(!e)return Ef;let t=JSON.parse(e);return{sort:t.sort?.key?t.sort:Ef.sort,viewMode:t.viewMode??Ef.viewMode,showHidden:t.showHidden??Ef.showHidden}}catch{return Ef}}function Of(e){try{localStorage.setItem(Tf,JSON.stringify(e))}catch{}}function kf(e){return{path:e,history:[e],historyIndex:0,entries:[],breadcrumbs:[],parent:null,sep:`/`,truncated:!1,loading:!0,error:null,selection:new Set,anchor:null,filter:``,inlineEdit:null}}var Af=lr((e,t)=>({...Df(),slices:{},ensure:(n,r)=>{t().slices[n]||e(e=>({slices:{...e.slices,[n]:kf(r)}}))},discard:t=>{e(e=>{if(!e.slices[t])return e;let n={...e.slices};return delete n[t],{slices:n}})},patch:(t,n)=>{e(e=>{let r=e.slices[t];return r?{slices:{...e.slices,[t]:{...r,...n}}}:e})},setPrefs:t=>{e(e=>{let n={sort:t.sort??e.sort,viewMode:t.viewMode??e.viewMode,showHidden:t.showHidden??e.showHidden};return Of(n),n})}})),jf=new Set;function Mf(...e){for(let t of e)if(t)for(let e of jf)e(t)}function Nf(e){return jf.add(e),()=>jf.delete(e)}var Pf=`application/x-ppm-paths`,Ff=`application/x-ppm-path`;function If(e){return/^[a-zA-Z]:[\\/]/.test(e)||e.startsWith(`\\\\`)}function Lf(e){let t=e.replace(/\\/g,`/`).replace(/\/+$/,``);return If(e)?t.toLowerCase():t}function Rf(e){return JSON.stringify(e)}function zf(e){if(!e)return null;let t;try{t=JSON.parse(e)}catch{return null}if(typeof t!=`object`||!t)return null;let n=t;if(!Array.isArray(n.paths))return null;let r=n.paths.filter(e=>typeof e==`string`&&e.length>0);if(r.length===0)return null;let i={paths:r,origin:n.origin===`tree`?`tree`:`explorer`};return typeof n.projectName==`string`&&(i.projectName=n.projectName),i}function Bf(e,t){let n=Lf(t);return e.some(e=>{let t=Lf(e);return n===t||n.startsWith(`${t}/`)})}function Vf(e,t){let n=Lf(t);return e.every(e=>{let t=Lf(e),r=t.lastIndexOf(`/`);return(r<=0?t.slice(0,r+1):t.slice(0,r))===n})}function Hf(e){return e.ctrlKey||e.altKey?`copy`:`move`}function Uf(e){return e.map(e=>{let t=e.replace(/\\/g,`/`);return`file://${(t.startsWith(`/`)?t:`/${t}`).split(`/`).map(encodeURIComponent).join(`/`)}`}).join(`\r
18
- `)}var Wf=null;function Gf(e){Wf=e}function Kf(){return Wf}function qf(){Wf=null}typeof window<`u`&&(window.addEventListener(`dragend`,qf),window.addEventListener(`drop`,qf));function Jf(e,t){return t?(e.current++,e.current===1):!1}function Yf(e,t){return t?(e.current=Math.max(0,e.current-1),e.current===0):!1}function Xf(e){e.current=0}var Zf=99;async function Qf(e){try{return await da.stat(e),!0}catch(e){return!(e instanceof fa&&e.code===`ENOENT`)}}async function $f(e,t,n){for(let r=2;r<=Zf;r++){let i=ma(t,r);if(!await Qf(ya(e,i,n)))return i}return null}async function ep(e,t,n){n===`copy`?await da.copy(e,t):await da.move(e,t)}async function tp(e,t,n,r){let i={succeeded:0,skipped:0,failed:0},a=new Set([t]);r.startBatch?.();try{await np(e,t,n,r,i,a)}finally{r.endBatch?.()}return Mf(...a),i}async function np(e,t,n,r,i,a){for(let o of e){let e=o.split(/[/\\]/).filter(Boolean).pop()??o,s=ba(o,r.sep);if(a.add(s),n===`move`&&s===t){i.skipped++;continue}let c=ya(t,e,r.sep);if(n===`copy`&&s===t){let a=await $f(t,e,r.sep);if(!a){i.failed++,R.error(`Copy failed: ${e}`,{description:`No free name available`});continue}c=ya(t,a,r.sep);try{await ep(o,c,n),i.succeeded++}catch(t){i.failed++,R.error(`Copy failed: ${e}`,{description:ga(t)})}continue}try{await ep(o,c,n),i.succeeded++;continue}catch(t){if(!(t instanceof fa)||t.code!==`EEXIST`){i.failed++,R.error(`${n===`copy`?`Copy`:`Move`} failed: ${e}`,{description:ga(t)});continue}}let l=await r.resolve({name:e,destination:c});if(l===`skip`){i.skipped++;continue}if(l===`keep-both`){try{let a=await $f(t,e,r.sep);if(!a)throw Error(`No free name available`);c=ya(t,a,r.sep),await ep(o,c,n),i.succeeded++}catch(t){i.failed++,R.error(`${n===`copy`?`Copy`:`Move`} failed: ${e}`,{description:ga(t)})}continue}try{await da.remove(c,!1)}catch(t){if(!(t instanceof fa)||t.code!==`NO_TRASH`){i.failed++,R.error(`Could not remove existing ${e}`,{description:ga(t)});continue}if(!await r.confirmPermanentOverwrite(e)){i.skipped++;continue}try{await da.remove(c,!0)}catch(t){i.failed++,R.error(`Could not remove existing ${e}`,{description:ga(t)});continue}}try{await ep(o,c,n),i.succeeded++}catch(t){i.failed++,R.error(`${e} was removed but the replacement could not be written`,{description:ga(t)})}}}function rp(e,t,n){e.length!==0&&di.getState().setClipboard({paths:[...e],operation:t,origin:n})}async function ip(e,t){let n=di.getState().clipboard;if(!n||n.paths.length===0)return;let r=await tp(n.paths,e,n.operation===`cut`?`move`:`copy`,t);if(n.operation===`cut`&&r.failed===0&&di.getState().setClipboard(null),r.succeeded>0){let e=n.operation===`cut`?`Moved`:`Copied`;R.success(`${e} ${r.succeeded} item${r.succeeded===1?``:`s`}`)}}async function ap(e,t,n,r){if(e.paths.length!==0){if(Bf(e.paths,t)){R.error(`Cannot place an item inside itself`);return}await r(e.paths,t,n)}}function op(e){return async(t,n,r)=>{await tp(t,n,r,e)}}var sp=12,cp=12;function lp(e,t){if(typeof document>`u`||t.length===0)return;let n=t.length===1?t[0]:`${t.length} items`,r=document.createElement(`div`);r.textContent=n,r.style.cssText=[`position:fixed`,`top:-1000px`,`left:-1000px`,`padding:4px 10px`,`border-radius:6px`,`font:500 12px/1.4 var(--x-font, system-ui, sans-serif)`,`color:var(--text, #fff)`,`background:var(--panel-2, #2a2a2a)`,`border:1px solid var(--border, #444)`,`box-shadow:0 2px 8px rgba(0,0,0,.35)`,`white-space:nowrap`,`pointer-events:none`].join(`;`),document.body.appendChild(r);try{e.setDragImage(r,sp,cp)}catch{}requestAnimationFrame(()=>r.remove())}var up=400,dp=10;function fp(){let[e,t]=(0,Y.useState)(()=>typeof window<`u`&&window.matchMedia?.(`(pointer: coarse)`).matches===!0);return(0,Y.useEffect)(()=>{let e=window.matchMedia?.(`(pointer: coarse)`);if(!e)return;let n=()=>t(e.matches);return e.addEventListener(`change`,n),()=>e.removeEventListener(`change`,n)},[]),e}function pp(e){let t=fp(),n=(0,Y.useRef)(null),r=(0,Y.useRef)(null),i=(0,Y.useRef)(!1),a=(0,Y.useCallback)(()=>{n.current&&clearTimeout(n.current),n.current=null},[]);(0,Y.useEffect)(()=>a,[a]);let o=(0,Y.useCallback)(t=>{let o=t.touches[0];if(!o)return;let s=t.currentTarget;r.current={x:o.clientX,y:o.clientY},i.current=!1,a(),n.current=setTimeout(()=>{i.current=!0,e?.(),s.dispatchEvent(new MouseEvent(`contextmenu`,{bubbles:!0,cancelable:!0,clientX:o.clientX,clientY:o.clientY}))},up)},[a,e]),s=(0,Y.useCallback)(e=>{let t=e.touches[0];!t||!r.current||(Math.abs(t.clientX-r.current.x)>dp||Math.abs(t.clientY-r.current.y)>dp)&&a()},[a]);return t?{onTouchStart:o,onTouchMove:s,onTouchEnd:a,onTouchCancel:a}:{}}function mp(e){return e.split(/[/\\]/).filter(Boolean).pop()??e}function hp(e){let{paths:t,names:n,origin:r,projectName:i,extraData:a,disabled:o,onDragStarted:s}=e,c=!fp()&&!o&&t.length>0,l=(0,Y.useCallback)(e=>{s?.();let o={paths:t,origin:r,...i?{projectName:i}:{}},c=e.dataTransfer;c.setData(Pf,Rf(o)),c.setData(`text/uri-list`,Uf(t)),c.setData(`text/plain`,t.join(`
19
- `));for(let[e,t]of Object.entries(a??{}))c.setData(e,t);c.effectAllowed=`copyMove`,lp(c,n??t.map(mp)),Gf(o)},[t,n,r,i,a,s]);return(0,Y.useMemo)(()=>c?{draggable:!0,onDragStart:l,onDragEnd:qf}:{},[c,l])}function gp({types:e,payload:t,targetDir:n,modifiers:r}){if(!e.includes(`application/x-ppm-paths`))return{accept:!1,reason:`not-an-entry-drag`};if(n==null||n===``)return{accept:!1,reason:`no-target`};let i=Hf(r);return t?Bf(t.paths,n)?{accept:!1,reason:`self-or-descendant`}:i===`move`&&Vf(t.paths,n)?{accept:!1,reason:`same-directory`}:{accept:!0,op:i}:{accept:!0,op:i}}var _p=120,vp=800;function yp(e,t,n){return gp({types:Array.from(e.dataTransfer.types),payload:n,targetDir:t,modifiers:{ctrlKey:e.ctrlKey,altKey:e.altKey}})}function bp(e){let{targetDir:t,onDropEntries:n,springLoad:r,disabled:i}=e,[a,o]=(0,Y.useState)(!1),s=(0,Y.useRef)(0),c=(0,Y.useRef)([]),l=(0,Y.useCallback)(()=>{for(let e of c.current)clearTimeout(e);c.current=[]},[]),u=(0,Y.useCallback)(()=>{s.current=0,l(),o(!1)},[l]);return(0,Y.useEffect)(()=>l,[l]),{isOver:a,handlers:{onDragEnter:(0,Y.useCallback)(e=>{if(i||!e.dataTransfer.types.includes(`application/x-ppm-paths`))return;let n=yp(e,t,Kf());n.accept&&(e.preventDefault(),e.stopPropagation()),s.current++,!(s.current>1||!n.accept)&&(c.current.push(setTimeout(()=>o(!0),_p)),r&&c.current.push(setTimeout(r,vp)))},[i,t,r]),onDragOver:(0,Y.useCallback)(e=>{if(i)return;let n=yp(e,t,Kf());n.accept&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect=n.op===`copy`?`copy`:`move`)},[i,t]),onDragLeave:(0,Y.useCallback)(e=>{s.current!==0&&(e.stopPropagation(),s.current--,s.current===0&&(l(),o(!1)))},[l]),onDrop:(0,Y.useCallback)(e=>{if(i)return;let r=zf(e.dataTransfer.getData(`application/x-ppm-paths`))??Kf();qf();let a=yp(e,t,r);if(!a.accept){a.reason!==`not-an-entry-drag`&&(e.preventDefault(),e.stopPropagation()),u();return}if(!r||t==null){u();return}e.preventDefault(),e.stopPropagation(),u(),n(r,a.op,t)},[i,t,n,u])}}}function xp(e){return e.dataTransfer.types.includes(`Files`)&&!e.dataTransfer.types.includes(`application/x-ppm-path`)}function Sp(e,t,n){return t&&e?.origin===`tree`&&e.projectName===n}function Cp(e){return e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)):``}function wp(e){let{path:t,name:n,isDir:r,isSelected:i,selectedFiles:a,isExpanded:o,projectName:s,projectRoot:c,toggleExpand:l,onFileDrop:u,transferRun:d}=e,[f,p]=(0,Y.useState)(!1),m=(0,Y.useRef)(0),h=hp({paths:(i&&a.length>1?a:[t]).map(e=>c?mi(c,e):e),origin:`tree`,projectName:s,extraData:{[Ff]:r?`${t}/`:t}}),g=r?t:Cp(t),_=bp({targetDir:r&&c?mi(c,g):null,onDropEntries:(e,t,n)=>void ap(e,n,t,d),springLoad:r&&!o?()=>l(s,t):void 0});function v(e){return e.type===`drop`?zf(e.dataTransfer.getData(Pf)):Kf()}function y(e){return xp(e)?!0:Sp(v(e),e.dataTransfer.types.includes(Ff),s)}function b(e){y(e)&&(e.preventDefault(),e.stopPropagation(),Jf(m,!0)&&p(!0))}function x(e){e.stopPropagation(),Yf(m,!0)&&p(!1)}function S(e){y(e)&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect=xp(e)?`copy`:`move`)}function C(e){if(e.preventDefault(),e.stopPropagation(),Xf(m),p(!1),xp(e)){e.dataTransfer.files.length>0&&u(g,e.dataTransfer.files);return}let t=e.dataTransfer.getData(Ff).replace(/\/$/,``);if(!t||t===g||g.startsWith(`${t}/`))return;let n=Cp(t);if(n===g)return;let r=t.includes(`/`)?t.slice(t.lastIndexOf(`/`)+1):t,i=g?`${g}/${r}`:r;B.post(`${z(s)}/files/move`,{source:t,destination:i}).then(()=>{let e=di.getState();e.invalidateIndex(),e.loadIndex(s),e.invalidateFolder(s,n),e.invalidateFolder(s,g),c&&Mf(mi(c,n),mi(c,g))}).catch(e=>{R.error(e instanceof Error?e.message:`Move failed`)})}return{entrySource:h,isDragOver:f||_.isOver,containerHandlers:{onDragEnter:e=>{y(e)?b(e):_.handlers.onDragEnter(e)},onDragLeave:e=>{y(e)?x(e):_.handlers.onDragLeave(e)},onDragOver:e=>{y(e)?S(e):_.handlers.onDragOver(e)},onDrop:e=>{y(e)?C(e):_.handlers.onDrop(e)}}}}var Tp=(0,Y.memo)(function({row:e,projectName:t,onAction:n,onFileDrop:r,onFileOpen:i,transferRun:a}){let{node:o,depth:s}=e,{expandedPaths:c,loadedPaths:l,inflight:u,toggleExpand:d,selectedFiles:f,toggleFileSelect:p,clipboard:m,focusedPath:h,setFocusedPath:g}=di(jd(e=>({expandedPaths:e.expandedPaths,loadedPaths:e.loadedPaths,inflight:e.inflight,toggleExpand:e.toggleExpand,selectedFiles:e.selectedFiles,toggleFileSelect:e.toggleFileSelect,clipboard:e.clipboard,focusedPath:e.focusedPath,setFocusedPath:e.setFocusedPath}))),_=K(e=>e.openTab),v=G(e=>e.activeProject?.path),y=o.type===`directory`,b=xf(e=>(y?e.folderStatuses.get(t):e.fileStatuses.get(t))?.get(o.path)),x=b?vf[b]:void 0,S=c.has(o.path),C=f.includes(o.path),w=o.ignored===!0,T=m?.operation===`cut`&&v!=null&&m.paths.includes(mi(v,o.path)),E=h===o.path,D=y&&S&&!l.has(o.path)&&u.has(o.path),O=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{E&&O.current&&O.current.scrollIntoView({block:`nearest`})},[E]);function k(e){if(e.metaKey||e.ctrlKey){g(o.path),p(o.path);return}if(e.shiftKey&&h!=null){let e=ui(),t=e.indexOf(h),n=e.indexOf(o.path);if(t>=0&&n>=0){let r=Math.min(t,n),i=Math.max(t,n);di.getState().setSelectedFiles(e.slice(r,i+1))}return}if(g(o.path),di.getState().clearSelection(),y){d(t,o.path);return}let n=o.name.split(`.`).pop()?.toLowerCase()??``;_({type:n===`db`||n===`sqlite`||n===`sqlite3`?`sqlite`:`editor`,title:o.name,metadata:{filePath:o.path,projectName:t},projectId:t,closable:!0}),i?.()}let A=wp({path:o.path,name:o.name,isDir:y,isSelected:C,selectedFiles:f,isExpanded:S,projectName:t,projectRoot:v,toggleExpand:d,onFileDrop:r,transferRun:a});return(0,X.jsx)(`div`,{...A.containerHandlers,children:(0,X.jsxs)(`button`,{ref:O,...A.entrySource,onClick:k,className:U(`flex items-center w-full gap-1.5 px-2 py-1 rounded-[var(--rad-sm)] text-[13px] leading-[18px]`,`min-h-[32px] md:min-h-[26px] hover:bg-surface-elevated transition-colors text-left`,`select-none`,T&&`opacity-40`,E&&`bg-surface-elevated`,C&&`bg-accent-wash`,A.isDragOver&&`ring-1 ring-dashed ring-primary bg-primary/10`),style:{paddingLeft:`${s*16+8}px`},children:[y?D?(0,X.jsx)(L,{className:`size-3.5 shrink-0 text-text-subtle animate-spin`}):S?(0,X.jsx)(Qe,{className:`size-3.5 shrink-0 text-text-subtle`}):(0,X.jsx)(nn,{className:`size-3.5 shrink-0 text-text-subtle`}):(0,X.jsx)(`span`,{className:`w-3.5 shrink-0`}),(0,X.jsx)(ra,{name:o.name,kind:y?`directory`:`file`,open:S}),(0,X.jsx)(`span`,{className:U(`truncate`,x??(C?`text-text`:w?`text-text-dim`:y&&S?`text-text font-medium`:`text-text-2`)),children:o.name}),b&&!y&&(0,X.jsx)(`span`,{className:U(`text-[10px] ml-auto shrink-0 font-mono`,x),children:b})]})})});function Ep({defaultValue:e,placeholder:t,depth:n,icon:r,onConfirm:i,onCancel:a}){let[o,s]=(0,Y.useState)(e),[c,l]=(0,Y.useState)(null),[u,d]=(0,Y.useState)(!1),f=(0,Y.useRef)(null),p=(0,Y.useRef)(!1);(0,Y.useEffect)(()=>{let t=f.current;t&&requestAnimationFrame(()=>{if(t.focus(),e){let n=e.lastIndexOf(`.`);t.setSelectionRange(0,n>0?n:e.length)}})},[e]);let m=(0,Y.useCallback)(async()=>{if(p.current||u)return;let e=o.trim();if(!e){a();return}p.current=!0,d(!0),l(null);try{await i(e)}catch(e){p.current=!1,l(e instanceof Error?e.message:`Failed`),d(!1)}},[o,u,i,a]);function h(e){e.key===`Enter`?(e.preventDefault(),m()):e.key===`Escape`&&(e.preventDefault(),a())}function g(){p.current||m()}let _=r===`folder`?De:Vt;return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:U(`flex items-center w-full gap-1.5 px-2 py-0.5`,`min-h-[32px] text-left`),style:{paddingLeft:`${n*16+8}px`},children:[(0,X.jsx)(`span`,{className:`w-3.5 shrink-0`}),(0,X.jsx)(_,{className:`size-4 shrink-0 text-text-secondary`}),(0,X.jsx)(`input`,{ref:f,value:o,onChange:e=>{s(e.target.value),l(null)},onKeyDown:h,onBlur:g,placeholder:t,disabled:u,className:U(`flex-1 min-w-0 bg-input text-sm px-1.5 py-0.5 rounded border outline-none`,`focus:ring-1 focus:ring-primary/50`,c?`border-destructive`:`border-primary`)})]}),c&&(0,X.jsx)(`p`,{className:`text-[10px] text-destructive truncate`,style:{paddingLeft:`${n*16+8+14+22}px`},children:c})]})}var Dp=6e4,Op=null,kp=null,Ap=new Set;function jp(){return Op&&Date.now()-Op.at<Dp?Promise.resolve(Op.value):kp||(kp=B.get(`/api/system/host`).then(e=>{Op={at:Date.now(),value:e};for(let t of Ap)t(e);return e}).finally(()=>{kp=null}),kp)}function Mp(){let[e,t]=(0,Y.useState)(()=>({host:Op?.value??null,loading:Op==null,error:null}));return(0,Y.useEffect)(()=>{let e=!0,n=n=>{e&&t({host:n,loading:!1,error:null})};return Ap.add(n),jp().then(n).catch(n=>{e&&t({host:null,loading:!1,error:n instanceof Error?n.message:`Failed to read host info`})}),()=>{e=!1,Ap.delete(n)}},[]),e}function Np(){return jp()}function Pp(){return Op?.value.homedir??null}var Fp=`mobile`,Ip=lr(e=>({isOpen:!1,selectMode:!1,close:()=>e({isOpen:!1,selectMode:!1}),setSelectMode:t=>e({selectMode:t})}));async function Lp(e){let t=Af.getState(),n=t.slices[Fp],r=e??n?.path??Pp();if(!r)try{r=(await Np()).homedir}catch{return}n?e&&n.path!==e&&t.patch(Fp,{path:r,history:[r],historyIndex:0,selection:new Set,anchor:null,filter:``,inlineEdit:null}):t.ensure(Fp,r),Ip.setState({isOpen:!0,selectMode:!1})}async function Rp(e){if(gi())return await Lp(e),Fp;let t=e??Pp();if(!t)try{t=(await Np()).homedir}catch{return null}return Mr.getState().open(`explorer`,{path:t})}function zp(e,t){let n=dr(e)||e;return W.getState().openInDock({type:`terminal`,title:n,projectId:t??null,closable:!0,metadata:{cwd:e,...t?{projectName:t}:{}}})}var Bp=48,Vp=16;function Hp(e){if(e>=Bp)return 0;let t=Math.min(1,Math.max(0,(Bp-e)/Bp));return Math.ceil(t*Vp)}function Up(e){(0,Y.useEffect)(()=>{let t=e.current;if(!t)return;let n=null,r={x:0,y:0},i=()=>{n!==null&&cancelAnimationFrame(n),n=null,r={x:0,y:0}},a=()=>{if(r.x===0&&r.y===0){n=null;return}t.scrollBy(r.x,r.y),n=requestAnimationFrame(a)},o=e=>{if(!e.dataTransfer?.types.includes(`application/x-ppm-paths`))return;let i=t.getBoundingClientRect(),o=Hp(e.clientY-i.top),s=Hp(i.bottom-e.clientY),c=Hp(e.clientX-i.left);r={x:Hp(i.right-e.clientX)-c,y:s-o},n===null&&(r.x!==0||r.y!==0)&&(n=requestAnimationFrame(a))};return t.addEventListener(`dragover`,o),t.addEventListener(`dragleave`,i),t.addEventListener(`drop`,i),window.addEventListener(`dragend`,i),()=>{i(),t.removeEventListener(`dragover`,o),t.removeEventListener(`dragleave`,i),t.removeEventListener(`drop`,i),window.removeEventListener(`dragend`,i)}},[e])}function Wp(e,t,n,r,i){return new Promise((a,o)=>{if(i?.aborted){o(new DOMException(`Upload aborted`,`AbortError`));return}let s=new XMLHttpRequest;s.open(`PUT`,da.uploadUrl(e,n));let c=er();c&&s.setRequestHeader(`Authorization`,`Bearer ${c}`),s.setRequestHeader(`x-ppm-client`,`web`),s.upload.onprogress=e=>{e.lengthComputable&&r({loaded:e.loaded,total:e.total})};let l=()=>s.abort();i?.addEventListener(`abort`,l);let u=()=>i?.removeEventListener(`abort`,l);s.onload=()=>{u();let e={};try{e=JSON.parse(s.responseText)}catch{}if(s.status>=200&&s.status<300&&e.ok!==!1&&e.data){a(e.data);return}o(new fa(e.error??`HTTP ${s.status}`,e.code??`EUNKNOWN`,s.status))},s.onerror=()=>{u(),o(Error(`Network error during upload`))},s.onabort=()=>{u(),o(new DOMException(`Upload aborted`,`AbortError`))},s.send(t)})}function Gp(e){return e instanceof fa?e.status===403?`Not allowed here`:e.status===413?`File too large for the tunnel (100 MB)`:e.message||`Upload failed`:e instanceof Error?`Connection lost`:`Upload failed`}function Kp(e){return e.every(e=>e.state!==`queued`&&e.state!==`uploading`)}var qp=lr((e,t)=>({order:[],batches:{},cancellers:{},addBatch:(t,n,r)=>{let i={id:t,dstDir:n,items:r.map(e=>({...e,bytesLoaded:0,state:`queued`})),settled:!1};e(e=>({order:[...e.order,t],batches:{...e.batches,[t]:i}}))},registerCanceller:(t,n,r)=>{e(e=>({cancellers:{...e.cancellers,[`${t}:${n}`]:r}}))},setItemState:(t,n,r,i)=>{e(e=>{let a=e.batches[t];if(!a)return e;let o=a.items.map(e=>e.id===n?{...e,state:r,errorMessage:i}:e);return{batches:{...e.batches,[t]:{...a,items:o,settled:Kp(o)}}}})},setItemProgress:(t,n,r)=>{e(e=>{let i=e.batches[t];if(!i)return e;let a=i.items.map(e=>e.id===n?{...e,bytesLoaded:r}:e);return{batches:{...e.batches,[t]:{...i,items:a}}}})},cancelItem:(e,n)=>{t().cancellers[`${e}:${n}`]?.()},cancelBatch:e=>{let n=t().batches[e];if(n)for(let r of n.items)t().cancelItem(e,r.id)},dismissBatch:t=>{e(e=>{let{[t]:n,...r}=e.batches;return{batches:r,order:e.order.filter(e=>e!==t)}})}}));async function Jp(e,t,n){let r=e.reduce((e,t)=>e+t.size,0),i=Array(e.length).fill(0),a=Array(e.length),o=0,s=()=>{n({completed:o,total:e.length,bytesLoaded:i.reduce((e,t)=>e+t,0),bytesTotal:r})},c=0;async function l(){for(;;){let t=c++;if(t>=e.length)return;let n=e[t];try{let e=await n.run(e=>{i[t]=e,s()});a[t]={id:n.id,ok:!0,value:e}}catch(e){a[t]={id:n.id,ok:!1,error:e}}i[t]=n.size,o++,s()}}let u=Math.max(1,Math.min(t,e.length));return await Promise.all(Array.from({length:u},l)),a}var Yp=3;function Xp(e){return e.split(`/`).pop()??e}function Zp(e,t,n){return ya(e,t.split(`/`).join(n),n)}async function Qp(e,t,n,r,i,a){let o=Zp(t,e.relativePath,n);try{return await Wp(o,e.file,!1,e=>a(e.loaded),i),`done`}catch(e){if(!(e instanceof fa)||e.code!==`EEXIST`)throw e}let s=Xp(e.relativePath),c=await r.resolve({name:s,destination:o});if(c===`skip`)return`skipped`;if(c===`keep-both`){let t=ba(o,n),r=await $f(t,s,n);if(!r)throw Error(`No free name available`);return await Wp(ya(t,r,n),e.file,!1,e=>a(e.loaded),i),`done`}try{await da.remove(o,!1)}catch(t){if(t instanceof fa&&t.code===`ENOENT`)return await Wp(o,e.file,!0,e=>a(e.loaded),i),`done`;if(!(t instanceof fa)||t.code!==`NO_TRASH`)throw t;if(!await r.confirmPermanentOverwrite(s))return`skipped`;await da.remove(o,!0)}return await Wp(o,e.file,!0,e=>a(e.loaded),i),`done`}async function $p(e,t,n,r){if(e.length===0)return;let i=crypto.randomUUID(),a=qp.getState();a.addBatch(i,t,e.map((e,t)=>({id:String(t),name:Xp(e.relativePath),relativePath:e.relativePath,size:e.file.size})));let o=e.map((e,t)=>{let n=new AbortController;return a.registerCanceller(i,String(t),()=>n.abort()),n});r.startBatch?.();try{await Jp(e.map((e,s)=>{let c=String(s),l=o[s];return{id:c,size:e.file.size,run:async o=>{if(l.signal.aborted)throw a.setItemState(i,c,`cancelled`),new DOMException(`Upload aborted`,`AbortError`);a.setItemState(i,c,`uploading`);try{let s=await Qp(e,t,n,r,l.signal,e=>{o(e),a.setItemProgress(i,c,e)});a.setItemState(i,c,s===`skipped`?`skipped`:`done`)}catch(e){let t=e instanceof DOMException&&e.name===`AbortError`;throw a.setItemState(i,c,t?`cancelled`:`failed`,t?void 0:Gp(e)),e}}}}),Yp,()=>{})}finally{r.endBatch?.(),Mf(t)}}var em=class{queue=[];constructor(e){this.onChange=e}request(e){return new Promise(t=>{this.queue.push({request:e,settle:t}),this.onChange()})}snapshot(){let e=this.queue[0];return e?{request:e.request,remaining:this.queue.length-1}:null}choose(e){let t=this.queue.shift();t&&(t.settle(e),this.onChange())}drain(e){let t=this.queue.splice(0);if(t.length!==0){for(let n of t)n.settle(e);this.onChange()}}},tm=class{core;stickyChoice=null;activeBatches=0;constructor(e){this.core=new em(e)}startBatch(){this.activeBatches++}endBatch(){this.activeBatches=Math.max(0,this.activeBatches-1),this.activeBatches===0&&(this.stickyChoice=null)}request(e){return this.stickyChoice?Promise.resolve(this.stickyChoice):this.core.request(e)}snapshot(){return this.core.snapshot()}choose(e,t){t?(this.stickyChoice=e,this.core.drain(e)):this.core.choose(e)}};function nm(){let[e,t]=(0,Y.useState)(0),[n,r]=(0,Y.useState)(!1),i=(0,Y.useRef)(null);i.current||=new tm(()=>t(e=>e+1));let a=i.current;return(0,Y.useMemo)(()=>{let e=a.snapshot();return{state:e&&{...e.request,remaining:e.remaining,applyToAll:n,setApplyToAll:r,resolve:e=>{a.choose(e,n),r(!1)}},resolve:e=>a.request(e),startBatch:()=>a.startBatch(),endBatch:()=>a.endBatch()}},[a,n,e])}function rm(){let[e,t]=(0,Y.useState)(0),n=(0,Y.useRef)(null);n.current||=new em(()=>t(e=>e+1));let r=n.current;return(0,Y.useMemo)(()=>{let e=r.snapshot();return{state:e&&{name:e.request,remaining:e.remaining,resolve:e=>r.choose(e)},confirm:e=>r.request(e)}},[r,e])}function im({open:e,onClose:t,title:n,description:r,children:i,footer:a,className:o}){return hi()?(0,X.jsx)(la,{open:e,onClose:t,className:`p-4`,children:(0,X.jsxs)(`div`,{className:U(`space-y-3`,o),children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-text`,children:n}),r&&(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-2`,children:r})]}),(0,X.jsx)(`div`,{className:`max-h-[50vh] overflow-y-auto`,children:i}),a&&(0,X.jsx)(`div`,{className:`flex flex-col gap-2 pt-1`,children:a})]})}):(0,X.jsx)(ta,{open:e,onOpenChange:e=>{e||t()},children:(0,X.jsxs)(J,{className:U(`sm:max-w-md`,o),children:[(0,X.jsxs)(Xi,{children:[(0,X.jsx)(Qi,{children:n}),r&&(0,X.jsx)($i,{children:r})]}),(0,X.jsx)(`div`,{className:`max-h-[60vh] overflow-y-auto`,children:i}),a&&(0,X.jsx)(`div`,{className:`flex justify-end gap-2 pt-2`,children:a})]})})}var am={file:`File`,directory:`Folder`,symlink:`Symbolic link`,unknown:`Unknown`};function om({label:e,value:t}){return t?(0,X.jsxs)(`div`,{className:`grid grid-cols-[7rem_1fr] gap-2 py-1 text-sm`,children:[(0,X.jsx)(`span`,{className:`text-text-2`,children:e}),(0,X.jsx)(`span`,{className:`break-all text-text`,children:t})]}):null}function sm({entry:e,platform:t,sep:n,onClose:r}){let[i,a]=(0,Y.useState)(null),[o,s]=(0,Y.useState)(null);(0,Y.useEffect)(()=>{let t=!0,n=new AbortController;return a(null),s(null),da.stat(e.path,n.signal).then(e=>{t&&a(e)}).catch(e=>{t&&s(e instanceof Error?e.message:`Could not read properties`)}),()=>{t=!1,n.abort()}},[e.path]);let c=i?i.kind===`directory`?`${i.childCount??0}${i.truncated?`+`:``} item${i.childCount===1?``:`s`}`:`${_a(i.size)} (${i.size.toLocaleString()} bytes)`:``,l=i?t===`win32`?i.readonly?`Read-only`:`Read / write`:`${ha(i.mode)}${i.readonly?` (read-only)`:``}`:``;return(0,X.jsxs)(im,{open:!0,onClose:r,title:e.name,description:`Properties`,footer:(0,X.jsx)(q,{variant:`outline`,onClick:r,children:`Close`}),children:[o&&(0,X.jsx)(`p`,{className:`py-2 text-sm text-error`,children:o}),!i&&!o&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 py-4 text-sm text-text-2`,children:[(0,X.jsx)(L,{className:`size-4 animate-spin`}),` Reading…`]}),i&&(0,X.jsxs)(`div`,{className:`divide-y divide-border`,children:[(0,X.jsx)(om,{label:`Name`,value:i.name}),(0,X.jsx)(om,{label:`Kind`,value:am[i.kind]}),(0,X.jsx)(om,{label:`Location`,value:ba(i.path,n)}),(0,X.jsx)(om,{label:i.kind===`directory`?`Contains`:`Size`,value:c}),(0,X.jsx)(om,{label:`Created`,value:va(i.birthtime)}),(0,X.jsx)(om,{label:`Modified`,value:va(i.mtime)}),(0,X.jsx)(om,{label:`Permissions`,value:l}),(0,X.jsx)(om,{label:`Hidden`,value:i.isHidden?`Yes`:``}),(0,X.jsx)(om,{label:`Links to`,value:i.target??``})]})]})}function cm({dialogs:e,platform:t,sep:n}){let{collision:r,pendingDelete:i,permanentOverwrite:a,properties:o}=e;return(0,X.jsxs)(X.Fragment,{children:[e.uploadInputs,r&&(0,X.jsxs)(im,{open:!0,onClose:()=>r.resolve(`skip`),title:`An item with that name already exists`,description:r.remaining>0?`${r.name} — and ${r.remaining} more`:r.name,footer:(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(q,{variant:`outline`,onClick:()=>r.resolve(`skip`),children:`Skip`}),(0,X.jsx)(q,{variant:`outline`,onClick:()=>r.resolve(`keep-both`),children:`Keep both`}),(0,X.jsx)(q,{variant:`destructive`,onClick:()=>r.resolve(`replace`),children:`Replace`})]}),children:[(0,X.jsx)(`p`,{className:`py-1 text-sm text-text-2`,children:`Replacing moves the existing item to the Trash first, so it stays recoverable. Keep both adds a numbered suffix.`}),r.remaining>0&&(0,X.jsxs)(`label`,{className:`flex min-h-11 items-center gap-2 text-sm text-text-2`,children:[(0,X.jsx)(`input`,{type:`checkbox`,className:`size-4`,checked:r.applyToAll,onChange:e=>r.setApplyToAll(e.target.checked)}),`Apply to all `,r.remaining,` remaining item`,r.remaining===1?``:`s`]})]}),i&&(0,X.jsx)(im,{open:!0,onClose:e.closeDelete,title:`Delete ${i.paths.length} item${i.paths.length===1?``:`s`} permanently?`,description:`This cannot be undone — the items do not go to the Trash.`,footer:(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(q,{variant:`outline`,onClick:e.closeDelete,children:`Cancel`}),(0,X.jsx)(q,{variant:`destructive`,onClick:e.runPermanentDelete,children:`Delete permanently`})]}),children:(0,X.jsxs)(`ul`,{className:`space-y-0.5 py-1 text-sm text-text-2`,children:[i.names.slice(0,10).map(e=>(0,X.jsx)(`li`,{className:`truncate`,children:e},e)),i.names.length>10&&(0,X.jsxs)(`li`,{className:`text-text-subtle`,children:[`and `,i.names.length-10,` more…`]})]})}),a&&(0,X.jsx)(im,{open:!0,onClose:()=>a.resolve(!1),title:`This host has no Trash`,description:a.name,footer:(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(q,{variant:`outline`,onClick:()=>a.resolve(!1),children:`Cancel`}),(0,X.jsx)(q,{variant:`destructive`,onClick:()=>a.resolve(!0),children:`Delete permanently`})]}),children:(0,X.jsx)(`p`,{className:`py-1 text-sm text-text-2`,children:`Replacing this item cannot go through the Trash on this host. Deleting it permanently cannot be undone.`})}),o&&(0,X.jsx)(sm,{entry:o,platform:t,sep:n,onClose:e.closeProperties})]})}function lm(e,t){let n=nm(),r=rm(),i=(0,Y.useRef)(e);(0,Y.useEffect)(()=>{i.current=e},[e]);let a=(0,Y.useRef)(n);a.current=n;let o=(0,Y.useRef)(r);o.current=r;let s=(0,Y.useMemo)(()=>({get sep(){return i.current},resolve:e=>a.current.resolve(e),startBatch:()=>a.current.startBatch(),endBatch:()=>a.current.endBatch(),confirmPermanentOverwrite:e=>o.current.confirm(e)}),[]);return{run:(0,Y.useMemo)(()=>op(s),[s]),uploadRun:(0,Y.useMemo)(()=>(e,t)=>$p(e,t,i.current,s),[s]),prompts:(0,X.jsx)(cm,{dialogs:{collision:n.state,permanentOverwrite:r.state,pendingDelete:null,properties:null,inlineError:null,closeDelete:()=>{},runPermanentDelete:()=>{},closeProperties:()=>{},uploadInputs:null},platform:t,sep:e})}}function um(e){let t=e.replace(/\\/g,`/`).replace(/^\/+/,``).split(`/`).filter(e=>e.length>0&&e!==`.`);return t.length===0||t.some(e=>e===`..`)?null:t.join(`/`)}function dm(e){return new Promise((t,n)=>e.file(t,n))}function fm(e){return new Promise((t,n)=>{let r=[],i=()=>{e.readEntries(e=>{if(e.length===0){t(r);return}r.push(...e),i()},n)};i()})}async function pm(e,t){if(e.isFile){let n=um(e.fullPath);if(!n)return;t.push({file:await dm(e),relativePath:n});return}if(e.isDirectory){let n=e.createReader();for(let e of await fm(n))await pm(e,t)}}async function mm(e){let t=Array.from(e.items??[]).filter(e=>e.kind===`file`&&typeof e.webkitGetAsEntry==`function`).map(e=>e.webkitGetAsEntry()).filter(e=>e!=null);if(t.length>0){let e=[];for(let n of t)await pm(n,e);return e}let n=[];for(let t of Array.from(e.files)){let e=um(t.name);e&&n.push({file:t,relativePath:e})}return n}function hm(e){let{targetDir:t,onFiles:n,disabled:r}=e,[i,a]=(0,Y.useState)(!1),o=(0,Y.useRef)(0),s=(0,Y.useCallback)(()=>{o.current=0,a(!1)},[]),c=(0,Y.useCallback)(e=>!r&&t!=null&&xp(e),[r,t]);return{isOver:i,handlers:{onDragEnter:(0,Y.useCallback)(e=>{c(e)&&(e.preventDefault(),e.stopPropagation(),o.current++,a(!0))},[c]),onDragOver:(0,Y.useCallback)(e=>{c(e)&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect=`copy`)},[c]),onDragLeave:(0,Y.useCallback)(e=>{o.current!==0&&(e.stopPropagation(),o.current--,o.current===0&&a(!1))},[]),onDrop:(0,Y.useCallback)(e=>{if(!c(e)||t==null)return;e.preventDefault(),e.stopPropagation();let r=e.dataTransfer;s(),mm(r).then(e=>{e.length>0&&n(e,t)})},[c,t,n,s])}}}function gm(){}function _m(e){let{targetDir:t,run:n,springLoad:r,disabled:i,onFiles:a}=e,o=bp({targetDir:t,onDropEntries:(0,Y.useCallback)((e,t,r)=>{ap(e,r,t,n)},[n]),springLoad:r,disabled:i}),s=hm({targetDir:t,onFiles:a??gm,disabled:i||!a});return a?{isOver:o.isOver||s.isOver,handlers:{onDragEnter:e=>{o.handlers.onDragEnter(e),s.handlers.onDragEnter(e)},onDragOver:e=>{o.handlers.onDragOver(e),s.handlers.onDragOver(e)},onDragLeave:e=>{o.handlers.onDragLeave(e),s.handlers.onDragLeave(e)},onDrop:e=>{o.handlers.onDrop(e),s.handlers.onDrop(e)}}}:o}function vm({projectName:e,setExpanded:t}){let[n,r]=(0,Y.useState)(!1),i=(0,Y.useRef)(0),a=(0,Y.useCallback)(async(n,r)=>{if(!e)return;let i=r.length,a=i===1?r[0].name:`${i} files`,o=R.loading(`Uploading ${a}…`),s=new FormData;s.append(`targetDir`,n);for(let e of r)s.append(`files`,e);let c={},l=er();l&&(c.Authorization=`Bearer ${l}`);try{let r=await fetch(`${z(e)}/files/upload`,{method:`POST`,headers:c,body:s});if(!r.ok){let e=await r.json();R.error(`Upload failed: ${e.error??`Unknown error`}`,{id:o});return}R.success(`Uploaded ${a}`,{id:o});let i=di.getState();i.loadedPaths.has(n)&&await i.invalidateFolder(e,n),n&&t(n,!0)}catch(e){R.error(e instanceof Error?e.message:`Upload failed`,{id:o})}},[e,t]);function o(e){let t=xp(e);t&&(e.preventDefault(),Jf(i,t)&&r(!0))}function s(e){Yf(i,xp(e))&&r(!1)}function c(e){xp(e)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`)}function l(e){xp(e)&&(e.preventDefault(),Xf(i),r(!1),e.dataTransfer.files.length>0&&a(``,e.dataTransfer.files))}return{uploadFiles:a,isRootDragOver:n,handleRootDragEnter:o,handleRootDragLeave:s,handleRootDragOver:c,handleRootDrop:l}}function ym({tree:e,expandedPaths:t,focusedPath:n,setFocusedPath:r,setExpanded:i,toggleExpand:a,projectName:o,onAction:s}){let c=(0,Y.useMemo)(()=>li(e,t),[e,t]),l=(0,Y.useMemo)(()=>c.find(e=>e.path===n)??null,[c,n]);function u(e){if(!o)return;let u=e.target;if(u.tagName===`INPUT`||u.tagName===`TEXTAREA`)return;let d=n==null?-1:c.findIndex(e=>e.path===n);switch(e.key){case`ArrowDown`:e.preventDefault(),r(c[d<c.length-1?d+1:0].path);break;case`ArrowUp`:e.preventDefault(),r(c[d>0?d-1:c.length-1].path);break;case`ArrowRight`:e.preventDefault(),l?.type===`directory`&&!t.has(l.path)&&a(o,l.path);break;case`ArrowLeft`:if(e.preventDefault(),l?.type===`directory`&&t.has(l.path))i(l.path,!1);else if(l){let e=l.path.includes(`/`)?l.path.slice(0,l.path.lastIndexOf(`/`)):``;if(e||e===``){let t=c.find(t=>t.path===e);t&&r(t.path)}}break;case`Enter`:e.preventDefault(),l&&s(l.type===`directory`?`toggle-expand`:`open-file`,l);break;case`F2`:e.preventDefault(),l&&s(`rename`,l);break;case`Delete`:e.preventDefault(),l&&s(`delete`,l);break}}return{visibleNodes:c,focusedNode:l,handleTreeKeyDown:u}}var bm={name:``,path:``,type:`directory`};function xm(e){return e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)):``}function Sm({onFileOpen:e}={}){let{tree:t,loading:n,error:r,loadRoot:i,loadIndex:a,loadChildren:o,invalidateIndex:s,invalidateFolder:c,reset:l,selectedFiles:u,clearSelection:d,setExpanded:f,fetchTree:p,inlineAction:m,setInlineAction:h,clearInlineAction:g,clipboard:_,setClipboard:v,collapseAll:y,focusedPath:b,setFocusedPath:x,expandedPaths:S,toggleExpand:C}=di(jd(e=>({tree:e.tree,loading:e.loading,error:e.error,loadRoot:e.loadRoot,loadIndex:e.loadIndex,loadChildren:e.loadChildren,invalidateIndex:e.invalidateIndex,invalidateFolder:e.invalidateFolder,reset:e.reset,selectedFiles:e.selectedFiles,clearSelection:e.clearSelection,setExpanded:e.setExpanded,fetchTree:e.fetchTree,inlineAction:e.inlineAction,setInlineAction:e.setInlineAction,clearInlineAction:e.clearInlineAction,clipboard:e.clipboard,setClipboard:e.setClipboard,collapseAll:e.collapseAll,focusedPath:e.focusedPath,setFocusedPath:e.setFocusedPath,expandedPaths:e.expandedPaths,toggleExpand:e.toggleExpand}))),w=G(e=>e.activeProject),T=K(e=>e.openTab),[E,D]=(0,Y.useState)(null),O=(0,Y.useCallback)(()=>{w&&(l(),i(w.name),a(w.name))},[w,l,i,a]),k=(0,Y.useCallback)(async()=>{if(!w)return;let{tabs:e,activeTabId:t}=K.getState(),n=e.find(e=>e.id===t)?.metadata?.filePath;if(!n)return;let r=n.split(`/`),i=w.name;for(let e=1;e<r.length;e++){let t=r.slice(0,e).join(`/`);f(t,!0),await o(i,t)}x(n)},[w,f,o,x]),A=(0,Y.useCallback)(async e=>{if(!w||!_)return;let t=w.name,n=w.path,r=n.includes(`\\`)?`\\`:`/`,i=_.operation===`cut`?`move`:`copy`,a=new Set([mi(n,e)]);for(let o of _.paths){let s=o.split(/[/\\]/).filter(Boolean).pop()??o,c=ci(n,o);a.add(ba(o,r));try{if(c!=null){let n=e?`${e}/${s}`:s;await B.post(`${z(t)}/files/${i}`,{source:c,destination:n})}else{let t=mi(n,e?`${e}/${s}`:s);await B.post(`/api/fs/${i}`,{source:o,destination:t})}}catch(e){R.error(e instanceof Error?e.message:`Failed to ${i}`)}}_.operation===`cut`&&v(null),Mf(...a),O()},[w,_,v,O]),ee=(0,Y.useRef)(null),j=(0,Y.useCallback)((e,t)=>{if(!w)return;let n=w.path;v({paths:e.map(e=>mi(n,e)),operation:t,origin:{projectName:w.name,root:n}})},[w,v]),te=(0,Y.useCallback)(e=>{if(!w)return;let t=e.target;t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable||(e.metaKey||e.ctrlKey)&&((e.key===`x`||e.key===`c`)&&u.length>0?(e.preventDefault(),j(u,e.key===`x`?`cut`:`copy`)):e.key===`v`&&_&&(e.preventDefault(),A(``)))},[w,u,_,v,A]),M=(0,Y.useCallback)(async(t,n)=>{let r=di.getState().selectedFiles;if(t===`toggle-expand`&&n.type===`directory`){C(w.name,n.path);return}if(t===`open-file`&&n.type===`file`){let t=n.name.split(`.`).pop()?.toLowerCase()??``;T({type:t===`db`||t===`sqlite`||t===`sqlite3`?`sqlite`:`editor`,title:n.name,metadata:{filePath:n.path,projectName:w.name},projectId:w.name,closable:!0}),e?.();return}if(t===`cut`||t===`copy-file`){j(r.length>0&&r.includes(n.path)?[...r]:[n.path],t===`cut`?`cut`:`copy`);return}if(t===`open-in-file-explorer`){let e=n.type===`directory`?n.path:xm(n.path);Rp(mi(w.path,e));return}if(t===`open-in-terminal`){let e=n.type===`directory`?n.path:xm(n.path);zp(mi(w.path,e),w.name);return}if(t===`paste`&&n.type===`directory`){A(n.path);return}if(t===`copy-path`){uu(n.path);return}if(t===`copy-full-path`){let e=w?.path;uu(e?`${e}/${n.path}`:n.path);return}if(t===`select-for-compare`){Sc.getState().setSelection({filePath:n.path,projectName:w.name,label:n.name});return}if(t===`compare-with-selected`){let e=Sc.getState().selection;if(!e)return;try{await wc({path:e.filePath,dirtyContent:e.dirtyContent},{path:n.path},w.name),Sc.getState().clearSelection()}catch(e){let t=e instanceof Error?e.message:`Compare failed`;R.error(t)}return}if(t===`download`){n.type===`directory`?cu(w.name,n.path):su(w.name,n.path);return}if(t===`compare-selected`&&r.length===2){let e=r[0],t=r[1];T({type:`git-diff`,title:`Compare ${dr(e)} vs ${dr(t)}`,closable:!0,metadata:{projectName:w.name,file1:e,file2:t},projectId:w.name}),d();return}if(t===`new-file`||t===`new-folder`){let e=n.type===`directory`?n.path:``;e&&f(e,!0),h({type:t,parentPath:e});return}if(t===`rename`){h({type:`rename`,parentPath:n.path.includes(`/`)?n.path.slice(0,n.path.lastIndexOf(`/`)):``,existingNode:n});return}D({action:t,node:n})},[w,C,T,e,j,A,d,f,h]),{handleTreeKeyDown:N}=ym({tree:t,expandedPaths:S,focusedPath:b,setFocusedPath:x,setExpanded:f,toggleExpand:C,projectName:w?.name,onAction:M});(0,Y.useEffect)(()=>{if(!w)return;l();let e=w.name,t=fi(e);di.setState({expandedPaths:new Set([``,...t])}),t.length>0?di.getState().loadPathsBatch(e,[``,...t]):i(e),a(e)},[w?.name]),(0,Y.useEffect)(()=>{w&&oi(w.name,di.getState().expandedPaths)},[S,w?.name]),(0,Y.useEffect)(()=>{if(!w)return;let e=w.name,t,n=n=>{let r=n.detail;r.projectName===e&&(clearTimeout(t),t=setTimeout(()=>{let t=di.getState(),n=r.path??``,i=n.includes(`/`)?n.slice(0,n.lastIndexOf(`/`)):``;t.invalidateFolder(e,i)},300))};return window.addEventListener(`file:changed`,n),()=>{clearTimeout(t),window.removeEventListener(`file:changed`,n)}},[w]),(0,Y.useEffect)(()=>{if(!w)return;let e=w.name,t=w.path;return Nf(n=>{let r=ci(t,n);r!=null&&di.getState().invalidateFolder(e,r)})},[w]);let{uploadFiles:P,isRootDragOver:F,handleRootDragEnter:ne,handleRootDragLeave:re,handleRootDragOver:ie,handleRootDrop:ae}=vm({projectName:w?.name,setExpanded:f}),{run:I,prompts:oe}=lm(w?.path.includes(`\\`)?`\\`:`/`),se=_m({targetDir:w?.path??null,run:I,disabled:!w}),ce=(0,Y.useMemo)(()=>pi(t,S,m),[t,S,m]),[le,ue]=(0,Y.useState)(null),de=(0,Y.useRef)(ce);de.current=ce;let fe=Sc(e=>e.selection),pe=(0,Y.useCallback)(e=>{if(e.type===`pointerdown`&&e.pointerType===`mouse`)return;let t=e.target?.closest?.(`[data-index]`),n=t?Number(t.getAttribute(`data-index`)):-1,r=Number.isInteger(n)&&n>=0?de.current[n]:void 0,i=r?.kind===`node`?r.node:null;ue(e=>e===i?e:i)},[]),me=(0,Y.useRef)(null);Up(me);let he=(0,Y.useCallback)(e=>{if(e.key!==`ContextMenu`&&!(e.key===`F10`&&e.shiftKey))return;let t=de.current.findIndex(e=>e.kind===`node`&&e.node.path===b),n=t>=0?me.current?.querySelector(`[data-index="${t}"]`):null;if(!n)return;e.preventDefault();let r=n.getBoundingClientRect();n.dispatchEvent(new MouseEvent(`contextmenu`,{bubbles:!0,cancelable:!0,button:2,clientX:Math.round(r.left+8),clientY:Math.round(r.top+r.height/2)}))},[b]),ge=hi(),_e=tf({count:ce.length,getScrollElement:()=>me.current,estimateSize:()=>ge?32:26,getItemKey:e=>{let t=ce[e];return t?si(t):`#${e}`},overscan:10,paddingStart:4,paddingEnd:4,directDomUpdates:!0});(0,Y.useEffect)(()=>{if(b==null)return;let e=ce.findIndex(e=>e.kind===`node`&&e.node.path===b);e>=0&&_e.scrollToIndex(e,{align:`auto`})},[b]);let ve=(0,Y.useCallback)(async(e,t)=>{let n=w.name,r=di.getState();if(e.inline.type===`rename`){let i=e.inline.existingNode;if(t===i.name){g();return}let a=i.path.includes(`/`)?i.path.slice(0,i.path.lastIndexOf(`/`)):``,o=a?`${a}/${t}`:t;await B.post(`${z(n)}/files/rename`,{oldPath:i.path,newPath:o}),g(),r.invalidateIndex(),r.loadIndex(n),r.invalidateFolder(n,a),Mf(mi(w.path,a))}else{let i=e.inline.type===`new-file`?`file`:`directory`,a=e.targetPath?`${e.targetPath}/${t}`:t;await B.post(`${z(n)}/files/create`,{path:a,type:i}),g(),r.invalidateIndex(),r.loadIndex(n),r.invalidateFolder(n,e.targetPath),Mf(mi(w.path,e.targetPath))}},[w,g]);if(!w)return(0,X.jsx)(`div`,{className:`p-3 text-xs text-text-subtle`,children:`Select a project to browse files.`});if(n&&t.length===0)return(0,X.jsxs)(`div`,{className:`flex items-center gap-2 p-3 text-xs text-text-secondary`,children:[(0,X.jsx)(L,{className:`size-3 animate-spin`}),`Loading files...`]});if(r)return(0,X.jsxs)(`div`,{className:`p-3 text-xs text-error`,children:[r,(0,X.jsx)(`button`,{onClick:O,className:`block mt-1 text-primary underline`,children:`Retry`})]});let ye=`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground`;return(0,X.jsxs)(`div`,{ref:ee,className:U(`flex flex-col h-full outline-none`,(F||se.isOver)&&`bg-primary/5`),tabIndex:0,onKeyDown:e=>{te(e),N(e),he(e)},onDragEnter:e=>{ne(e),se.handlers.onDragEnter(e)},onDragLeave:e=>{re(e),se.handlers.onDragLeave(e)},onDragOver:e=>{ie(e),se.handlers.onDragOver(e)},onDrop:e=>{ae(e),se.handlers.onDrop(e)},children:[(0,X.jsxs)(nf,{icon:et,title:`Explorer`,children:[(0,X.jsx)(`button`,{onClick:()=>M(`new-file`,bm),title:`New File`,className:ye,children:(0,X.jsx)(Zt,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:()=>M(`new-folder`,bm),title:`New Folder`,className:ye,children:(0,X.jsx)(cn,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:k,title:`Reveal Active File`,className:ye,children:(0,X.jsx)(tn,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:y,title:`Collapse All`,className:ye,children:(0,X.jsx)(Pe,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:O,title:`Refresh`,className:ye,children:(0,X.jsx)(en,{className:`size-3.5`})})]}),(0,X.jsxs)(sf,{children:[(0,X.jsx)(cf,{asChild:!0,children:(0,X.jsx)(`div`,{ref:me,className:`flex-1 overflow-y-auto`,onContextMenuCapture:pe,onPointerDownCapture:pe,children:(0,X.jsxs)(`div`,{ref:_e.containerRef,className:`relative w-full`,children:[_e.getVirtualItems().map(t=>{let n=ce[t.index];return(0,X.jsx)(`div`,{"data-index":t.index,ref:_e.measureElement,className:`absolute left-0 top-0 w-full`,children:n.kind===`input`?(0,X.jsx)(Ep,{defaultValue:n.inline.type===`rename`?n.inline.existingNode.name:``,placeholder:n.inline.type===`rename`?n.inline.existingNode.name:n.inline.type===`new-file`?`filename.ts`:`folder-name`,depth:n.depth,icon:n.inline.type===`rename`?n.inline.existingNode.type===`directory`?`folder`:`file`:n.inline.type===`new-file`?`file`:`folder`,onConfirm:e=>ve(n,e),onCancel:g}):(0,X.jsx)(Tp,{row:n,projectName:w.name,onAction:M,onFileDrop:P,onFileOpen:e,transferRun:I})},si(n))}),ce.length===0&&(0,X.jsx)(`p`,{className:`p-3 text-xs text-text-subtle`,children:`Empty project.`})]})})}),le?(0,X.jsx)(gf,{node:le,isDir:le.type===`directory`,projectName:w.name,selectedFiles:u,compareSelection:fe,clipboard:_,onAction:M}):(0,X.jsxs)(lf,{children:[(0,X.jsxs)($,{onClick:()=>M(`new-file`,bm),children:[(0,X.jsx)(Zt,{className:`size-3.5 mr-2`}),`New File`]}),(0,X.jsxs)($,{onClick:()=>M(`new-folder`,bm),children:[(0,X.jsx)(cn,{className:`size-3.5 mr-2`}),`New Folder`]}),(0,X.jsx)(uf,{}),(0,X.jsxs)($,{onClick:O,children:[(0,X.jsx)(en,{className:`size-3.5 mr-2`}),`Refresh`]})]})]}),E?.action===`delete`&&(0,X.jsx)(hu,{node:E.node,projectName:w.name,onClose:()=>D(null),onRefresh:()=>{Mf(mi(w.path,xm(E.node.path))),O()}}),oe]})}var Cm=`ppm:onboarding-evidence`;function wm(e){typeof window<`u`&&window.dispatchEvent(new CustomEvent(Cm,{detail:e}))}function Tm({className:e,...t}){return(0,X.jsx)(m,{"data-slot":`label`,className:U(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}function Em({children:e}){return(0,X.jsx)(`span`,{dir:`rtl`,className:`truncate text-left min-w-0 flex-1`,children:(0,X.jsx)(`bdi`,{children:e})})}var Dm=[{action:`create`,label:`Create new branch...`},{action:`create-from`,label:`Create new branch from...`},{action:`detach`,label:`Checkout detached...`}],Om=[{type:`branch`,label:`branches`},{type:`remote`,label:`remote branches`},{type:`tag`,label:`tags`}];function km(e,t){return!t||e.name.toLowerCase().includes(t)||e.subject.toLowerCase().includes(t)}function Am(e,t,n={actions:!0}){let r=t.trim().toLowerCase(),i=[];if(n.actions)for(let e of Dm)(!r||e.label.toLowerCase().includes(r))&&i.push({kind:`action`,...e});for(let t of Om){let n=e.filter(e=>e.type===t.type&&km(e,r));if(n.length){i.push({kind:`separator`,label:t.label});for(let e of n)i.push({kind:`ref`,ref:e})}}return i}function jm(e){return e.findIndex(e=>e.kind!==`separator`)}function Mm(e,t,n){let r=e.length;if(!r)return-1;let i=t;for(let t=0;t<r;t++)if(i=(i+n+r)%r,e[i].kind!==`separator`)return i;return-1}function Nm(e){let t=e.indexOf(`/`);return t<0?e:e.slice(t+1)}function Pm(e,t){if(e.type!==`remote`)return{ref:e.name,mode:`checkout`};let n=Nm(e.name);return t.some(e=>e.type===`branch`&&e.name===n)?{ref:n,mode:`checkout`}:{ref:e.name,mode:`track`}}function Fm(e){return[e.author,e.shortHash,e.subject].filter(Boolean).join(` · `)}function Im(e,t){let n=t.trim().toLowerCase(),r=n?e.filter(e=>e.label.toLowerCase().includes(n)):e,i=[];for(let t of new Set(e.map(e=>e.group))){let e=r.filter(e=>e.group===t);if(e.length){t!==void 0&&i.push({kind:`separator`,label:t});for(let t of e)i.push({kind:`item`,item:t})}}return i}function Lm(e,t){return e.findIndex(e=>e.kind===`item`&&e.item.value===t)}function Rm({value:e,items:t,onChange:n,label:r,searchPlaceholder:i,emptyText:a,icon:o,placeholder:s,testId:c,className:l,modal:u}){let d=hi(),f=fr(),[p,m]=(0,Y.useState)(!1),[h,g]=(0,Y.useState)(``),[_,v]=(0,Y.useState)(-1),y=(0,Y.useRef)(null),b=(0,Y.useRef)(null),w=(0,Y.useMemo)(()=>Im(t,h),[t,h]),T=t.find(t=>t.value===e);(0,Y.useEffect)(()=>{let t=Lm(w,e);v(t>=0?t:jm(w))},[w,e]),(0,Y.useEffect)(()=>{p||g(``)},[p]),(0,Y.useEffect)(()=>{p&&b.current?.querySelector(`[data-active="true"]`)?.scrollIntoView?.({block:`nearest`})},[p,_]);let E=(0,Y.useCallback)(e=>{n(e),m(!1)},[n]);function D(e){switch(e.key){case`ArrowDown`:e.preventDefault(),v(e=>Mm(w,e,1));break;case`ArrowUp`:e.preventDefault(),v(e=>Mm(w,e,-1));break;case`Enter`:{e.preventDefault();let t=w[_];t?.kind===`item`&&E(t.item.value);break}case`Escape`:e.preventDefault(),m(!1);break}}let O=(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-2.5 py-2 shrink-0`,children:[(0,X.jsx)(Nn,{className:`size-4 shrink-0 text-text-subtle`}),(0,X.jsx)(`input`,{ref:y,type:`text`,value:h,onChange:e=>g(e.target.value),placeholder:i,"aria-label":`Search ${r.toLowerCase()}`,className:`min-w-0 flex-1 bg-transparent text-sm text-text-primary outline-none placeholder:text-text-subtle`})]}),(0,X.jsx)(`div`,{ref:b,role:`listbox`,"aria-label":r,className:`min-h-0 flex-1 overflow-y-auto py-1`,"data-testid":c&&`${c}-list`,children:w.length===0?(0,X.jsx)(`p`,{className:`px-3 py-4 text-center text-sm text-text-subtle`,children:a}):w.map((t,n)=>t.kind===`separator`?(0,X.jsx)(`div`,{className:`border-t border-border-soft px-3 pt-2 pb-1 text-[10px] uppercase tracking-wide text-text-3 first:border-t-0 first:pt-1`,children:t.label},`sep-${t.label}`):(0,X.jsx)(zm,{item:t.item,active:n===_,picked:t.item.value===e,mobile:d,onPick:()=>E(t.item.value),onHover:()=>v(n)},t.item.value))})]}),k=(0,X.jsxs)(`button`,{type:`button`,"aria-expanded":p,"aria-haspopup":`dialog`,"aria-label":r,title:T?.title??T?.label??e,"data-testid":c,onClick:d?()=>m(!0):void 0,className:U(`flex h-10 items-center gap-1 rounded-md border border-border bg-panel px-2 text-xs text-text-primary min-w-0 md:h-7`,l),children:[o&&(0,X.jsx)(o,{className:`size-3.5 shrink-0 text-text-3`}),(0,X.jsx)(Em,{children:T?.label??(e||s||``)}),(0,X.jsx)(Qe,{className:`size-3.5 shrink-0 text-text-3`})]});return d?(0,X.jsxs)(X.Fragment,{children:[k,(0,X.jsxs)(la,{open:p,onClose:()=>m(!1),className:`popover-solid flex max-h-[80dvh] flex-col`,children:[(0,X.jsx)(`div`,{className:`shrink-0 px-3 pb-1 text-xs font-medium text-text-2`,children:r}),(0,X.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,onKeyDown:D,children:O})]})]}):(0,X.jsxs)(S,{open:p,onOpenChange:m,modal:u,children:[(0,X.jsx)(C,{asChild:!0,children:k}),(0,X.jsx)(x,{container:f,children:(0,X.jsx)(ie,{align:`start`,sideOffset:4,collisionPadding:8,onKeyDown:D,onOpenAutoFocus:e=>{e.preventDefault(),y.current?.focus()},className:`popover-solid z-50 flex w-[min(26rem,calc(100vw-1.5rem))] flex-col overflow-hidden rounded-md border border-border text-popover-foreground shadow-lg max-h-[min(20rem,var(--radix-popover-content-available-height))]`,children:O})})]})}function zm({item:e,active:t,picked:n,mobile:r,onPick:i,onHover:a}){let o=e.icon;return(0,X.jsxs)(`button`,{type:`button`,role:`option`,"aria-selected":n,"data-active":t||void 0,"data-value":e.value,title:e.title,onClick:i,onMouseEnter:a,className:U(`flex w-full items-center gap-2 px-3 text-left text-sm`,r?`min-h-11 py-2`:`py-1`,t?`bg-primary/15 text-text-primary`:`text-text-2`),children:[o&&(0,X.jsx)(o,{className:`size-3.5 shrink-0 text-text-3`}),(0,X.jsx)(Em,{children:e.label}),e.hint&&(0,X.jsx)(`span`,{className:`shrink-0 text-[10px] text-text-3`,children:e.hint}),n&&(0,X.jsx)(Rn,{className:`size-3.5 shrink-0 text-primary`})]})}function Bm(e){return{value:e.name,label:e.name,group:e.remote?`Remote branches`:`Branches`,icon:e.remote?Ct:rt,hint:e.current?`current`:void 0}}function Vm(e){return[...e.filter(e=>!e.remote),...e.filter(e=>e.remote)].map(Bm)}function Hm({branches:e,...t}){let n=(0,Y.useMemo)(()=>Vm(e),[e]);return(0,X.jsx)(Rm,{...t,items:n,icon:rt,placeholder:`Select a branch`,searchPlaceholder:`Search branches`,emptyText:`No matching branches`})}function Um({open:e,onOpenChange:t,projectName:n,onCreated:r}){let{gitUrl:i}=_f(n),[a,o]=(0,Y.useState)(``),[s,c]=(0,Y.useState)(`new`),[l,u]=(0,Y.useState)(``),[d,f]=(0,Y.useState)(``),[p,m]=(0,Y.useState)([]),[h,g]=(0,Y.useState)(!1),[_,v]=(0,Y.useState)(null);(0,Y.useEffect)(()=>{!e||!n||B.get(i(`/branches`)).then(e=>{let t=e.filter(e=>!e.remote);m(t),t.length>0&&!d&&f((t.find(e=>e.current)??t[0]).name)}).catch(()=>m([]))},[e,n]);function y(){o(``),c(`new`),u(``),v(null)}function b(){y(),t(!1)}async function x(){if(!a.trim()){v(`Worktree path is required`);return}let e=s===`existing`?d:void 0,t=s===`new`&&l.trim()?l.trim():void 0;g(!0),v(null);try{await B.post(i(`/worktree/add`),{path:a.trim(),branch:e,newBranch:t}),r(),b()}catch(e){v(e instanceof Error?e.message:`Failed to create worktree`)}finally{g(!1)}}let S=(0,X.jsxs)(`div`,{className:`space-y-4`,children:[_&&(0,X.jsx)(`p`,{className:`text-xs text-destructive bg-destructive/10 px-3 py-2 rounded-md`,children:_}),(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(Tm,{htmlFor:`wt-path`,children:`Worktree Path`}),(0,X.jsx)(xa,{id:`wt-path`,placeholder:`../my-feature`,value:a,onChange:e=>o(e.target.value),autoFocus:!0,className:`w-full`}),(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Relative or absolute path for the new worktree directory`})]}),(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(Tm,{children:`Branch`}),(0,X.jsxs)(`div`,{className:`flex gap-3`,children:[(0,X.jsxs)(`label`,{className:`flex items-center gap-2 cursor-pointer`,children:[(0,X.jsx)(`input`,{type:`radio`,checked:s===`new`,onChange:()=>c(`new`),className:`accent-primary`}),(0,X.jsx)(`span`,{className:`text-sm`,children:`Create new branch`})]}),(0,X.jsxs)(`label`,{className:`flex items-center gap-2 cursor-pointer`,children:[(0,X.jsx)(`input`,{type:`radio`,checked:s===`existing`,onChange:()=>c(`existing`),className:`accent-primary`}),(0,X.jsx)(`span`,{className:`text-sm`,children:`Use existing branch`})]})]}),s===`new`?(0,X.jsx)(xa,{placeholder:`feature/my-branch`,value:l,onChange:e=>u(e.target.value),className:`w-full`}):p.length===0?(0,X.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No branches available`}):(0,X.jsx)(Hm,{value:d,branches:p,onChange:f,label:`Existing branch`,testId:`worktree-branch`,className:`h-9 w-full md:h-9`,modal:!0})]})]}),C=(0,X.jsxs)(`div`,{className:`flex gap-2 justify-end pt-2`,children:[(0,X.jsx)(q,{variant:`outline`,size:`sm`,onClick:b,disabled:h,children:`Cancel`}),(0,X.jsxs)(q,{size:`sm`,onClick:x,disabled:h||!a.trim(),children:[h?(0,X.jsx)(L,{className:`size-3 animate-spin mr-1`}):null,`Create Worktree`]})]});return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(ta,{open:e,onOpenChange:e=>{e||b()},children:(0,X.jsxs)(J,{className:`hidden md:grid sm:max-w-md`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:`Add Worktree`})}),S,(0,X.jsx)(Zi,{children:C})]})}),e&&(0,X.jsxs)(`div`,{className:`md:hidden`,children:[(0,X.jsx)(`div`,{className:`fixed inset-0 z-50 bg-black/50`,onClick:b}),(0,X.jsxs)(`div`,{className:U(`fixed bottom-0 left-0 right-0 z-50 bg-background rounded-t-2xl border-t border-border shadow-2xl`,`animate-in slide-in-from-bottom-2 duration-200`),children:[(0,X.jsx)(`div`,{className:`flex justify-center pt-3 pb-1`,children:(0,X.jsx)(`div`,{className:`w-10 h-1 rounded-full bg-border`})}),(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 border-b border-border`,children:[(0,X.jsx)(`span`,{className:`text-sm font-semibold`,children:`Add Worktree`}),(0,X.jsx)(`button`,{onClick:b,className:`flex items-center justify-center size-7 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(Be,{className:`size-4`})})]}),(0,X.jsxs)(`div`,{className:`px-4 py-4 space-y-4 max-h-[70vh] overflow-y-auto`,children:[S,C]})]})]})]})}function Wm({projectName:e,projectPath:t}){let{gitUrl:n}=_f(e),[r,i]=(0,Y.useState)(!1),[a,o]=(0,Y.useState)([]),[s,c]=(0,Y.useState)(!1),[l,u]=(0,Y.useState)(null),[d,f]=(0,Y.useState)(!1),[p,m]=(0,Y.useState)(null),[h,g]=(0,Y.useState)(!1),_=(0,Y.useCallback)(async()=>{if(e){c(!0),u(null);try{o(await B.get(n(`/worktrees`)))}catch(e){u(e instanceof Error?e.message:`Failed to load worktrees`)}finally{c(!1)}}},[e]);(0,Y.useEffect)(()=>{r&&_()},[r,_]);async function v(e=!1){if(p){g(!0);try{await B.post(n(`/worktree/remove`),{path:p.path,force:e}),m(null),await _()}catch(e){u(e instanceof Error?e.message:`Failed to remove worktree`),m(null)}finally{g(!1)}}}async function y(){try{await B.post(n(`/worktree/prune`),{}),await _()}catch(e){u(e instanceof Error?e.message:`Prune failed`)}}return(0,X.jsxs)(`div`,{className:`border-t border-border`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center justify-between w-full px-3 py-2 hover:bg-muted/50 transition-colors`,onClick:()=>i(e=>!e),children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[r?(0,X.jsx)(Qe,{className:`size-3.5 text-muted-foreground`}):(0,X.jsx)(nn,{className:`size-3.5 text-muted-foreground`}),(0,X.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase`,children:`Worktrees`}),a.length>0&&(0,X.jsx)(`span`,{className:`text-[10px] bg-muted text-muted-foreground rounded px-1`,children:a.length})]}),(0,X.jsx)(`div`,{className:`flex items-center gap-0.5`,children:r&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{role:`button`,tabIndex:0,className:`flex items-center justify-center size-5 rounded text-muted-foreground hover:text-foreground transition-colors`,onClick:e=>{e.stopPropagation(),y()},onKeyDown:e=>{e.key===`Enter`&&(e.stopPropagation(),y())},title:`Prune stale worktrees`,"aria-label":`Prune stale worktrees`,children:(0,X.jsx)(en,{className:U(`size-3`,s&&`animate-spin`)})}),(0,X.jsx)(`span`,{role:`button`,tabIndex:0,className:`flex items-center justify-center size-5 rounded text-muted-foreground hover:text-foreground transition-colors`,onClick:e=>{e.stopPropagation(),f(!0)},onKeyDown:e=>{e.key===`Enter`&&(e.stopPropagation(),f(!0))},title:`Add worktree`,"aria-label":`Add worktree`,children:(0,X.jsx)(Dt,{className:`size-3`})})]})})]}),r&&(0,X.jsxs)(`div`,{className:`pb-1`,children:[l&&(0,X.jsx)(`p`,{className:`text-xs text-destructive px-3 py-1`,children:l}),s&&a.length===0&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 text-muted-foreground`,children:[(0,X.jsx)(L,{className:`size-3.5 animate-spin`}),(0,X.jsx)(`span`,{className:`text-xs`,children:`Loading worktrees...`})]}),!s&&a.length===0&&!l&&(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground px-3 py-1`,children:`No worktrees found.`}),a.map(e=>(0,X.jsx)(Gm,{worktree:e,isActive:!!t&&e.path===t,onRemove:()=>m(e)},e.path)),(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center gap-2 w-full px-3 py-2 text-xs text-muted-foreground hover:text-foreground hover:bg-muted/50 transition-colors`,onClick:()=>f(!0),children:[(0,X.jsx)(Dt,{className:`size-3.5`}),`Add worktree`]})]}),(0,X.jsx)(Um,{open:d,onOpenChange:f,projectName:e,onCreated:_}),(0,X.jsx)(ta,{open:!!p,onOpenChange:e=>!e&&m(null),children:(0,X.jsxs)(J,{showCloseButton:!1,children:[(0,X.jsxs)(Xi,{children:[(0,X.jsx)(Qi,{children:`Remove Worktree`}),(0,X.jsxs)($i,{children:[`Remove worktree at`,` `,(0,X.jsx)(`code`,{className:`px-1 py-0.5 rounded bg-muted text-xs font-mono`,children:p?.path}),p?.branch&&(0,X.jsxs)(X.Fragment,{children:[` (branch: `,(0,X.jsx)(`strong`,{children:p.branch}),`)`]}),`? The directory will be deleted.`]})]}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(q,{variant:`outline`,size:`sm`,onClick:()=>m(null),disabled:h,children:`Cancel`}),(0,X.jsx)(q,{variant:`outline`,size:`sm`,onClick:()=>v(!0),disabled:h,children:h?(0,X.jsx)(L,{className:`size-3 animate-spin`}):`Force Remove`}),(0,X.jsx)(q,{variant:`destructive`,size:`sm`,onClick:()=>v(!1),disabled:h,children:h?(0,X.jsx)(L,{className:`size-3 animate-spin`}):`Remove`})]})]})})]})}function Gm({worktree:e,isActive:t,onRemove:n}){let r=e.branch||e.head.slice(0,7)||`detached`,i=e.path.replace(/^\/home\/[^/]+/,`~`);return(0,X.jsxs)(`div`,{className:U(`group flex items-center gap-2 px-3 py-1.5 hover:bg-muted/50 transition-colors`,t&&`bg-accent/10`),children:[(0,X.jsx)(rt,{className:`size-3.5 text-muted-foreground shrink-0`}),(0,X.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1 min-w-0`,children:[(0,X.jsx)(`span`,{className:`text-xs font-mono truncate`,title:e.branch,children:r}),t&&(0,X.jsx)(Rn,{className:`size-3 text-success shrink-0`}),e.isMain&&(0,X.jsx)(`span`,{className:`text-[10px] bg-muted text-muted-foreground rounded px-1 shrink-0`,children:`main`}),e.locked&&(0,X.jsx)(`span`,{title:e.lockReason??`locked`,children:(0,X.jsx)(Gt,{className:`size-3 text-warning shrink-0`})}),e.prunable&&(0,X.jsx)(`span`,{title:`stale/prunable`,children:(0,X.jsx)(mn,{className:`size-3 text-destructive shrink-0`})})]}),(0,X.jsx)(`p`,{className:`text-[10px] text-muted-foreground truncate`,title:e.path,children:i})]}),!e.isMain&&(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-5 rounded text-muted-foreground hover:text-destructive opacity-0 group-hover:opacity-100 can-hover:opacity-0 can-hover:group-hover:opacity-100 transition-all active:scale-95 shrink-0`,onClick:n,title:`Remove worktree`,"aria-label":`Remove worktree`,children:(0,X.jsx)(Je,{className:`size-3`})})]})}var Km=(e,t)=>`${e}:${t}`;function qm(e){let t=[];return e.lines.forEach((e,n)=>{e.kind!==` `&&t.push(n)}),t}function Jm(e){return e.flatMap((e,t)=>qm(e).map(e=>Km(t,e)))}function Ym(e,t,n){let r=e[t];if(!r)return{picked:0,total:0};let i=qm(r);return{picked:i.filter(e=>n.has(Km(t,e))).length,total:i.length}}function Xm(e,t,n){let r=e[t];if(!r)return n;let i=qm(r).map(e=>Km(t,e)),a=new Set(n),o=i.every(e=>a.has(e));for(let e of i)o?a.delete(e):a.add(e);return a}function Zm(e,t,n){let r=new Set(n),i=Km(e,t);return r.has(i)?r.delete(i):r.add(i),r}function Qm(e,t){let n=[];return e.forEach((e,r)=>{let i=qm(e),a=i.filter(e=>t.has(Km(r,e)));a.length!==0&&n.push(a.length===i.length?{hunk:r,id:e.id}:{hunk:r,id:e.id,lines:a})}),n}function $m(e){let t=e.oldStart,n=e.newStart;return e.lines.map(e=>({old:e.kind===`+`?``:String(t++),next:e.kind===`-`?``:String(n++)}))}function eh({projectName:e,target:t,onClose:n,onApplied:r}){let i=hi();if(!t)return null;let a=(0,X.jsx)(th,{projectName:e,target:t,onClose:n,onApplied:r,isMobile:i});return i?(0,X.jsx)(la,{open:!0,onClose:n,className:`popover-solid max-h-[85dvh] flex flex-col`,children:a}):(0,X.jsx)(ta,{open:!0,onOpenChange:e=>!e&&n(),children:(0,X.jsxs)(J,{showCloseButton:!1,className:`sm:max-w-3xl max-h-[85vh] p-0 gap-0 flex flex-col overflow-hidden`,children:[(0,X.jsxs)(Qi,{className:`sr-only`,children:[t.scope===`index`?`Unstage`:`Stage`,` lines in `,t.filePath]}),a]})})}function th({projectName:e,target:t,onClose:n,onApplied:r,isMobile:i}){let{gitUrl:a}=_f(e),{filePath:o,scope:s}=t,[c,l]=(0,Y.useState)(null),[u,d]=(0,Y.useState)(!0),[f,p]=(0,Y.useState)(null),[m,h]=(0,Y.useState)(new Set),[g,_]=(0,Y.useState)(!1),[v,y]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{let e=!1;return d(!0),p(null),B.get(a(`/hunks?path=${encodeURIComponent(o)}&scope=${s}`)).then(t=>{e||(l(t),h(new Set(Jm(t.hunks))))}).catch(t=>{e||p(t instanceof Error?t.message:`Failed to load hunks`)}).finally(()=>{e||d(!1)}),()=>{e=!0}},[e,o,s]);let b=(0,Y.useMemo)(()=>c?.hunks??[],[c]),x=(0,Y.useMemo)(()=>Jm(b),[b]),S=(0,Y.useMemo)(()=>Qm(b,m),[b,m]),C=(0,Y.useCallback)((e,t)=>{h(n=>Zm(e,t,n))},[]),w=(0,Y.useCallback)(e=>h(t=>Xm(b,e,t)),[b]),T=(0,Y.useCallback)(()=>h(e=>e.size===x.length?new Set:new Set(x)),[x]),E=async e=>{if(S.length!==0){_(!0),p(null);try{await B.post(a(`/${e}-hunks`),{path:o,hunks:S}),r(),n()}catch(t){p(t instanceof Error?t.message:`${e} failed`),_(!1)}}},D=s===`index`?`Unstage`:`Stage`,O=s===`index`?dt:Dt,k=S.length===0;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`shrink-0 px-4 pt-3 pb-2 md:px-5 md:pt-5 border-b border-border`,children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold truncate`,children:dr(o)}),(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground truncate`,title:o,children:o})]}),s===`worktree`&&(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-11 md:size-8 rounded-lg text-muted-foreground hover:text-destructive hover:bg-destructive/10 active:scale-95 transition-colors disabled:opacity-40`,onClick:()=>y(!0),disabled:g||k,title:`Discard selected lines`,children:(0,X.jsx)(Je,{className:`size-4`})})]}),x.length>0&&(0,X.jsxs)(`button`,{type:`button`,className:`mt-1 flex items-center gap-2 min-h-11 md:min-h-0 md:py-1 text-xs text-muted-foreground active:text-foreground`,onClick:T,children:[(0,X.jsx)(ih,{checked:m.size===x.length,partial:m.size>0}),(0,X.jsxs)(`span`,{children:[m.size,` of `,x.length,` line`,x.length===1?``:`s`,` selected`]})]})]}),(0,X.jsx)(`div`,{className:`flex-1 min-h-0 overflow-auto`,children:u?(0,X.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-10 text-muted-foreground`,children:[(0,X.jsx)(L,{className:`size-4 animate-spin`}),(0,X.jsx)(`span`,{className:`text-sm`,children:`Loading diff…`})]}):c?.binary?(0,X.jsx)(`p`,{className:`px-4 py-10 text-sm text-center text-muted-foreground`,children:`This is a binary file — it can only be staged whole.`}):b.length===0?(0,X.jsxs)(`p`,{className:`px-4 py-10 text-sm text-center text-muted-foreground`,children:[`No `,s===`index`?`staged`:`unstaged`,` changes in this file.`]}):b.map((e,t)=>(0,X.jsx)(nh,{hunks:b,hunk:e,index:t,selected:m,onToggleHunk:w,onToggleLine:C,isMobile:i},t))}),f&&(0,X.jsx)(`div`,{className:`shrink-0 px-4 py-2 text-xs text-destructive bg-destructive/10`,children:f}),(0,X.jsx)(`div`,{className:`shrink-0 flex gap-2 px-4 py-3 md:px-5 border-t border-border`,children:v?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(q,{variant:`outline`,className:`h-11 md:h-9 px-4`,onClick:()=>y(!1),disabled:g,children:`Cancel`}),(0,X.jsx)(q,{variant:`destructive`,className:`flex-1 h-11 md:h-9`,disabled:g,onClick:()=>E(`discard`),children:g?(0,X.jsx)(L,{className:`size-4 animate-spin`}):`Discard ${m.size} line${m.size===1?``:`s`} — cannot be undone`})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(q,{variant:`outline`,className:`h-11 md:h-9 px-4`,onClick:n,disabled:g,children:`Cancel`}),(0,X.jsx)(q,{className:`flex-1 h-11 md:h-9`,disabled:g||k,onClick:()=>E(s===`index`?`unstage`:`stage`),children:g?(0,X.jsx)(L,{className:`size-4 animate-spin`}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(O,{className:`size-4`}),D,` `,m.size,` line`,m.size===1?``:`s`]})})]})})]})}function nh({hunks:e,hunk:t,index:n,selected:r,onToggleHunk:i,onToggleLine:a,isMobile:o}){let{picked:s,total:c}=Ym(e,n,r),l=$m(t);return(0,X.jsxs)(`div`,{className:`border-b border-border last:border-b-0`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center gap-2 w-full min-h-11 md:min-h-0 md:py-1 px-3 text-left bg-muted/40 active:bg-muted transition-colors`,onClick:()=>i(n),children:[(0,X.jsx)(ih,{checked:s===c,partial:s>0}),(0,X.jsxs)(`span`,{className:`text-xs font-mono text-muted-foreground truncate`,children:[`@@ -`,t.oldStart,`,`,t.oldLines,` +`,t.newStart,`,`,t.newLines,` @@`,t.heading?` ${t.heading}`:``]})]}),t.lines.map((e,t)=>{let i=l[t];if(e.kind===` `)return(0,X.jsxs)(`div`,{className:`flex items-center font-mono text-xs`,children:[(0,X.jsx)(rh,{old:i.old,next:i.next}),(0,X.jsx)(`span`,{className:`w-7 shrink-0`}),(0,X.jsxs)(`span`,{className:`whitespace-pre px-1 py-0.5 text-muted-foreground`,children:[` `,e.text]})]},t);let s=r.has(Km(n,t));return(0,X.jsxs)(`button`,{type:`button`,className:U(`flex items-center w-full text-left font-mono text-xs transition-colors active:brightness-125`,o&&`min-h-11`,e.kind===`+`?`bg-diff-added`:`bg-diff-removed`,!s&&`opacity-45`),onClick:()=>a(n,t),children:[(0,X.jsx)(rh,{old:i.old,next:i.next}),(0,X.jsx)(`span`,{className:`flex items-center justify-center w-7 shrink-0`,children:(0,X.jsx)(ih,{checked:s})}),(0,X.jsxs)(`span`,{className:U(`whitespace-pre px-1 py-0.5`,e.kind===`+`?`text-success`:`text-error`),children:[e.kind,e.text]})]},t)})]})}function rh({old:e,next:t}){return(0,X.jsxs)(`span`,{className:`flex shrink-0 select-none text-[10px] text-muted-foreground/70 tabular-nums`,children:[(0,X.jsx)(`span`,{className:`w-10 text-right pr-1`,children:e}),(0,X.jsx)(`span`,{className:`w-10 text-right pr-1`,children:t})]})}function ih({checked:e,partial:t}){return(0,X.jsx)(`span`,{className:U(`flex items-center justify-center size-4 shrink-0 rounded border transition-colors`,e?`bg-primary border-primary text-primary-foreground`:t?`border-primary`:`border-border`),children:e?(0,X.jsx)(Rn,{className:`size-3`,strokeWidth:3}):t?(0,X.jsx)(`span`,{className:`size-2 rounded-[1px] bg-primary`}):null})}function ah({repo:e,repos:t,onChoose:n}){let r=t.length<2,i=fp(),a=(0,Y.useMemo)(()=>t.map(e=>({value:e.path,label:e.relative,title:e.path,icon:rt})),[t]);return(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 px-3 py-1.5 border-b border-border shrink-0 text-xs text-text-secondary`,children:[(0,X.jsx)(Na,{className:`size-3.5 shrink-0 text-text-subtle`}),r?(0,X.jsx)(`span`,{className:`truncate`,title:e.path,children:e.relative}):(0,X.jsx)(Rm,{value:e.path,items:a,onChange:n,label:`Repository`,searchPlaceholder:`Search repositories`,emptyText:`No matching repositories`,testId:`git-repo-picker`,className:U(`border-transparent bg-transparent px-1.5 text-text-secondary hover:bg-accent`,i?`h-11 md:h-11`:`h-8 md:h-8`)})]})}function oh({repos:e,onChoose:t}){return(0,X.jsxs)(`div`,{className:`flex-1 overflow-y-auto p-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,X.jsx)(Na,{className:`size-4 text-text-subtle shrink-0`}),(0,X.jsxs)(`h3`,{className:`text-sm font-medium`,children:[e.length,` repositories in this folder`]})]}),(0,X.jsx)(`p`,{className:`text-xs text-text-secondary leading-relaxed mb-3`,children:`This project folder is not a git repository itself. Pick the one to work with — you can switch later from the header.`}),(0,X.jsx)(`div`,{className:`flex flex-col gap-1`,children:e.map(e=>(0,X.jsxs)(`button`,{type:`button`,onClick:()=>t(e.path),className:`flex items-center gap-2.5 min-h-11 px-3 py-2 rounded-md text-left border border-border bg-panel can-hover:hover:bg-panel-2 active:bg-panel-2`,children:[(0,X.jsx)(rt,{className:`size-4 shrink-0 text-text-subtle`}),(0,X.jsxs)(`span`,{className:`min-w-0`,children:[(0,X.jsx)(`span`,{className:`block text-sm truncate`,children:e.name}),e.relative!==e.name&&(0,X.jsx)(`span`,{className:`block text-xs text-text-subtle truncate`,children:e.relative})]})]},e.path))})]})}function sh({onReload:e}){return(0,X.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center gap-3 p-6 text-center`,children:[(0,X.jsx)(Na,{className:`size-8 text-text-subtle`}),(0,X.jsx)(`p`,{className:`text-sm text-text-secondary leading-relaxed max-w-xs`,children:`No git repository in this project, or in any folder two levels below it.`}),(0,X.jsxs)(q,{variant:`outline`,size:`sm`,className:`h-9 gap-1.5`,onClick:e,children:[(0,X.jsx)(en,{className:`size-3.5`}),`Scan again`]})]})}function ch(e){let t=[];for(let n of e){let e=n.path.split(`/`),r=t;for(let t=0;t<e.length;t++){let i=e[t],a=e.slice(0,t+1).join(`/`),o=t===e.length-1,s=r.find(e=>e.name===i);s||(s={name:i,fullPath:a,file:o?n:void 0,children:[]},r.push(s)),o&&(s.file=n),r=s.children}}return t}function lh(e){return e.map(e=>{let t=e;for(;!t.file&&t.children.length===1&&!t.children[0].file;){let e=t.children[0];t={...e,name:`${t.name}/${e.name}`}}return{...t,children:lh(t.children)}})}function uh(e){let t=[];e.file&&t.push(e.file);for(let n of e.children)t.push(...uh(n));return t}var dh={M:`text-warning`,A:`text-success`,D:`text-error`,R:`text-primary`,C:`text-accent-2`,"?":`text-text-3`},fh=14,ph=7;function mh({children:e,className:t}){return(0,X.jsx)(`span`,{dir:`rtl`,className:`truncate text-left ${t??``}`,children:(0,X.jsx)(`bdi`,{children:e})})}function hh({metadata:e,tabId:t,onNavigate:n}){let r=e?.projectName,[i,a]=(0,Y.useState)(null),[o,s]=(0,Y.useState)(!0),[c,l]=(0,Y.useState)(null),[u,d]=(0,Y.useState)(``),[f,p]=(0,Y.useState)(!1),[m,h]=(0,Y.useState)(null),[g,_]=(0,Y.useState)(null),{openTab:v}=K(jd(e=>({openTab:e.openTab}))),y=V(e=>e.gitStatusViewMode),b=V(e=>e.setGitStatusViewMode),x=G(e=>e.projects.find(e=>e.name===r)?.path),S=xf(e=>e.setCount),C=_f(r),w=C.repo?.path??x,T=(0,Y.useRef)(null),E=(0,Y.useRef)(0),D=`${r}:${C.repo?.path??``}`,O=(0,Y.useRef)(D);O.current!==D&&(O.current=D,E.current++);let[k,A]=(0,Y.useState)(null),ee=G(e=>e.activeProject?.name),j=K(e=>e.activeTabId),[te,M]=(0,Y.useState)(0);(0,Y.useEffect)(()=>{let e=()=>M(e=>e+1);return window.addEventListener(`ppm:onboarding-refresh`,e),()=>window.removeEventListener(`ppm:onboarding-refresh`,e)},[]),(0,Y.useEffect)(()=>{if(!r||r!==ee||t&&t!==j||!C.repo||o||c||!i||k!==D)return;let e=!!T.current?.checkVisibility({checkOpacity:!0,checkVisibilityCSS:!0});e&&wm({type:`git-ready`,projectName:r,visible:e})},[te,r,ee,t,j,C.repo,o,c,i,k,D]);let N=dl(e=>e.contributions?.commands?.some(e=>e.command===`git-graph.view`)??!1),P=(0,Y.useCallback)(async()=>{if(!r||!C.repo)return;let e=++E.current;try{s(!0);let t=await B.get(C.gitUrl(`/status`));if(e!==E.current)return;a(t),A(`${r}:${C.repo.path}`),S(r,t.staged.length+t.unstaged.length+t.untracked.length),xf.getState().setMeta(r,t),l(null)}catch(t){if(e!==E.current)return;l(t instanceof Error?t.message:`Failed to fetch status`)}finally{e===E.current&&s(!1)}},[r,C,S]);(0,Y.useEffect)(()=>{P();let e=setInterval(P,5e3);return()=>{E.current++,clearInterval(e)}},[P]);let F=async e=>{if(r){p(!0);try{await B.post(C.gitUrl(`/stage`),{files:e}),await P()}catch(e){l(e instanceof Error?e.message:`Stage failed`)}finally{p(!1)}}},ne=async e=>{if(r){p(!0);try{await B.post(C.gitUrl(`/unstage`),{files:e}),await P()}catch(e){l(e instanceof Error?e.message:`Unstage failed`)}finally{p(!1)}}},re=async e=>{if(r){p(!0);try{await B.post(C.gitUrl(`/discard`),{files:e}),await P()}catch(e){l(e instanceof Error?e.message:`Discard failed`)}finally{p(!1)}}},ie=async()=>{m&&(await re(m.files),h(null))},ae=async()=>{if(!(!r||!u.trim()||!i?.staged.length)){p(!0);try{await B.post(C.gitUrl(`/commit`),{message:u.trim()}),d(``),await P()}catch(e){l(e instanceof Error?e.message:`Commit failed`)}finally{p(!1)}}},I=async()=>{if(r){p(!0);try{await B.post(C.gitUrl(`/push`),{}),await P()}catch(e){l(e instanceof Error?e.message:`Push failed`)}finally{p(!1)}}},oe=async()=>{if(r){p(!0);try{await B.post(C.gitUrl(`/pull`),{}),await P()}catch(e){l(e instanceof Error?e.message:`Pull failed`)}finally{p(!1)}}},se=async()=>{if(r){p(!0);try{await B.post(C.gitUrl(`/commit`),{message:u.trim(),amend:!0}),d(``),await P()}catch(e){l(e instanceof Error?e.message:`Amend failed`)}finally{p(!1)}}},ce=async()=>{if(r){p(!0);try{await B.post(C.gitUrl(`/fetch`),{}),await P()}catch(e){l(e instanceof Error?e.message:`Fetch failed`)}finally{p(!1)}}},le=async()=>{await ae(),await I()},ue=async()=>{await ae(),await oe(),await I()},de=e=>{v({type:`git-diff`,title:dr(e.path),closable:!0,metadata:{projectName:r,filePath:C.projectFile(e.path)},projectId:r??null}),n?.()},fe=e=>{v({type:`editor`,title:dr(e.path),closable:!0,metadata:{projectName:r,filePath:C.projectFile(e.path)},projectId:r??null}),n?.()},pe=(0,Y.useMemo)(()=>[...i?.unstaged??[],...i?.untracked.map(e=>({path:e,status:`?`}))??[]],[i]);if(!r)return(0,X.jsx)(`div`,{className:`flex items-center justify-center h-full text-muted-foreground text-sm`,children:`No project selected.`});if(!C.repo&&!C.needsPick&&!C.noRepo)return(0,X.jsxs)(`div`,{className:`flex items-center justify-center h-full gap-2 text-muted-foreground`,children:[(0,X.jsx)(L,{className:`size-5 animate-spin`}),(0,X.jsx)(`span`,{className:`text-sm`,children:`Looking for a repository...`})]});if(o&&!i&&C.repo)return(0,X.jsxs)(`div`,{className:`flex items-center justify-center h-full gap-2 text-muted-foreground`,children:[(0,X.jsx)(L,{className:`size-5 animate-spin`}),(0,X.jsx)(`span`,{className:`text-sm`,children:`Loading git status...`})]});if(c&&!i)return(0,X.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-2 text-destructive text-sm`,children:[(0,X.jsx)(`p`,{children:c}),(0,X.jsx)(q,{variant:`outline`,size:`sm`,onClick:P,children:`Retry`})]});let me=i?.staged.length??0,he=f||!u.trim()||!me,ge=(0,X.jsxs)(`div`,{className:`p-2 flex flex-col gap-2`,children:[(0,X.jsx)(`textarea`,{className:`w-full h-10 px-3 py-2 text-base md:text-sm text-foreground bg-surface border border-border rounded-lg resize-none focus:outline-none focus:border-ring placeholder:text-muted-foreground`,placeholder:`Message (⌘↵)`,value:u,onChange:e=>d(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&ae()}}),(0,X.jsxs)(`div`,{className:`flex h-8`,children:[(0,X.jsx)(q,{size:`sm`,className:`flex-1 rounded-r-none`,disabled:he,onClick:ae,children:f?(0,X.jsx)(L,{className:`size-3 animate-spin`}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Rn,{className:`size-3.5`}),`Commit (`,me,`)`]})}),(0,X.jsxs)($u,{children:[(0,X.jsx)(td,{asChild:!0,children:(0,X.jsx)(q,{size:`sm`,className:`w-8 px-0 rounded-l-none border-l border-white/20`,disabled:f,title:`More commit actions`,children:(0,X.jsx)(Qe,{className:`size-3.5`})})}),(0,X.jsxs)(nd,{align:`end`,className:`w-56`,children:[(0,X.jsxs)(rd,{onClick:le,disabled:he,children:[(0,X.jsx)(dn,{className:`size-3.5`}),`Commit & Push`]}),(0,X.jsxs)(rd,{onClick:ue,disabled:he,children:[(0,X.jsx)(en,{className:`size-3.5`}),`Commit & Sync`]}),(0,X.jsx)(cd,{}),(0,X.jsxs)(rd,{onClick:se,disabled:f,children:[(0,X.jsx)(Pa,{className:`size-3.5`}),`Amend Last Commit`]}),(0,X.jsx)(cd,{}),(0,X.jsxs)(rd,{onClick:I,disabled:f,children:[(0,X.jsx)(dn,{className:`size-3.5`}),`Push`]}),(0,X.jsxs)(rd,{onClick:oe,disabled:f,children:[(0,X.jsx)(On,{className:`size-3.5`}),`Pull`]}),(0,X.jsxs)(rd,{onClick:ce,disabled:f,children:[(0,X.jsx)(en,{className:`size-3.5`}),`Fetch`]})]})]})]})]});return(0,X.jsxs)(`div`,{ref:T,"data-onboarding":`git`,className:`flex flex-col h-full overflow-hidden`,children:[(0,X.jsxs)(nf,{icon:rt,title:i?.current?`On: ${i.current}`:`Source Control`,children:[(0,X.jsx)(q,{variant:y===`flat`?`secondary`:`ghost`,size:`icon-xs`,onClick:()=>b(`flat`),title:`Flat view`,children:(0,X.jsx)(Mt,{className:`size-3.5`})}),(0,X.jsx)(q,{variant:y===`tree`?`secondary`:`ghost`,size:`icon-xs`,onClick:()=>b(`tree`),title:`Tree view`,children:(0,X.jsx)(Ye,{className:`size-3.5`})}),(0,X.jsx)(q,{variant:`ghost`,size:`icon-xs`,onClick:()=>{if(N){let e=[];w&&e.push(w),window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:`git-graph.view`,args:e}}))}else v({type:`git-log`,title:`Git Log`,projectId:r??null,closable:!0,metadata:{projectName:r}});n?.()},title:N?`Open Git Graph (⌘G)`:`View Git Log`,children:(0,X.jsx)(rt,{className:`size-3.5`})}),(0,X.jsx)(q,{variant:`ghost`,size:`icon-xs`,onClick:()=>{v({type:`branch-review`,title:`Branch Review`,projectId:r??null,closable:!0,metadata:{projectName:r}}),n?.()},title:`Review this branch against another`,children:(0,X.jsx)(Ma,{className:`size-3.5`})}),(0,X.jsx)(q,{variant:`ghost`,size:`icon-xs`,onClick:P,disabled:f,children:(0,X.jsx)(en,{className:o?`animate-spin`:``})})]}),c&&(0,X.jsx)(`div`,{className:`px-3 py-1.5 text-xs text-destructive bg-destructive/10 shrink-0`,children:c}),C.isNested&&C.repo&&(0,X.jsx)(ah,{repo:C.repo,repos:C.repos,onChoose:C.choose}),C.needsPick?(0,X.jsx)(oh,{repos:C.repos,onChoose:C.choose}):C.noRepo?(0,X.jsx)(sh,{onReload:C.reload}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`hidden md:block border-b border-border`,children:ge}),r&&(0,X.jsx)(Wm,{projectName:r,projectPath:w}),(0,X.jsx)(Sa,{className:`flex-1 overflow-hidden`,children:(0,X.jsxs)(`div`,{className:`p-1.5 space-y-2 overflow-hidden`,children:[(0,X.jsx)(_h,{title:`Staged Changes`,count:i?.staged.length??0,files:i?.staged??[],viewMode:y,actionIcon:(0,X.jsx)(dt,{className:`size-3`}),actionAllIcon:(0,X.jsx)(dt,{className:`size-3`}),actionTitle:`Unstage`,onAction:e=>ne([e.path]),onActionAll:i?.staged.length?()=>ne(i.staged.map(e=>e.path)):void 0,actionAllLabel:`Unstage All`,onFolderAction:e=>ne(e.map(e=>e.path)),onClickFile:de,onOpenFile:fe,onPickHunks:e=>_({filePath:e.path,scope:`index`}),disabled:f}),(0,X.jsx)(_h,{title:`Changes`,count:pe.length,files:pe,viewMode:y,actionIcon:(0,X.jsx)(Dt,{className:`size-3`}),actionAllIcon:(0,X.jsx)(Dt,{className:`size-3`}),actionTitle:`Stage`,onAction:e=>F([e.path]),onActionAll:pe.length?()=>F(pe.map(e=>e.path)):void 0,actionAllLabel:`Stage All`,onFolderAction:e=>F(e.map(e=>e.path)),onClickFile:de,onOpenFile:fe,onPickHunks:e=>_({filePath:e.path,scope:`worktree`}),disabled:f,showRevert:!0,onRevert:e=>h({label:e.path,files:[e.path]}),onFolderRevert:(e,t)=>h({label:`${t}/ (${e.length} files)`,files:e.map(e=>e.path)})})]})}),(0,X.jsx)(`div`,{className:`md:hidden border-t border-border shrink-0`,children:ge})]}),(0,X.jsx)(eh,{projectName:r,target:g,onClose:()=>_(null),onApplied:P}),(0,X.jsx)(ta,{open:!!m,onOpenChange:e=>!e&&h(null),children:(0,X.jsxs)(J,{showCloseButton:!1,children:[(0,X.jsxs)(Xi,{children:[(0,X.jsx)(Qi,{children:`Discard Changes`}),(0,X.jsxs)($i,{children:[`Are you sure you want to discard all changes to`,` `,(0,X.jsx)(`code`,{className:`px-1 py-0.5 rounded bg-muted text-sm font-mono`,children:m?.label}),`? This action cannot be undone.`]})]}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(q,{variant:`outline`,onClick:()=>h(null),children:`Cancel`}),(0,X.jsx)(q,{variant:`destructive`,onClick:ie,disabled:f,children:f?(0,X.jsx)(L,{className:`size-3 animate-spin`}):`Discard`})]})]})})]})}function gh({showRevert:e,onRevert:t,onAction:n,onOpenFile:r,onPickHunks:i,actionIcon:a,actionTitle:o,disabled:s}){return(0,X.jsxs)(`div`,{className:`hidden md:flex absolute right-0 top-0 bottom-0 items-center gap-0.5 pl-6 pr-1 bg-gradient-to-l from-background from-70% to-transparent can-hover:opacity-0 can-hover:group-hover:opacity-100 transition-opacity`,children:[r&&(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-5 rounded text-muted-foreground hover:text-primary active:scale-95 transition-colors`,onClick:e=>{e.stopPropagation(),r()},disabled:s,title:`Open file`,children:(0,X.jsx)(Ln,{className:`size-3`})}),i&&(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-5 rounded text-muted-foreground hover:text-primary active:scale-95 transition-colors`,onClick:e=>{e.stopPropagation(),i()},disabled:s,title:`${o} lines…`,children:(0,X.jsx)(lt,{className:`size-3`})}),e&&t&&(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-5 rounded text-muted-foreground hover:text-destructive active:scale-95 transition-colors`,onClick:e=>{e.stopPropagation(),t()},disabled:s,title:`Discard changes`,children:(0,X.jsx)(Ae,{className:`size-3`})}),(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-5 rounded text-muted-foreground hover:text-accent-foreground active:scale-95 transition-colors`,onClick:e=>{e.stopPropagation(),n()},disabled:s,title:o,children:a})]})}function _h({title:e,count:t,files:n,viewMode:r,actionIcon:i,actionAllIcon:a,actionTitle:o,onAction:s,onActionAll:c,actionAllLabel:l,onFolderAction:u,onClickFile:d,onOpenFile:f,onPickHunks:p,disabled:m,showRevert:h,onRevert:g,onFolderRevert:_}){return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between mb-0.5`,children:[(0,X.jsxs)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase`,children:[e,` (`,t,`)`]}),c&&t>0&&(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-5 rounded text-muted-foreground hover:text-accent-foreground active:scale-95 transition-colors`,onClick:c,disabled:m,title:l,children:a})]}),n.length===0?(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground px-1`,children:`No changes`}):r===`flat`?(0,X.jsx)(`div`,{className:`w-full overflow-hidden`,children:n.map(e=>(0,X.jsx)(vh,{file:e,actionIcon:i,actionTitle:o,onAction:s,onClickFile:d,onOpenFile:f,onPickHunks:p,disabled:m,showRevert:h,onRevert:g},e.path))}):(0,X.jsx)(yh,{files:n,actionIcon:i,actionTitle:o,onAction:s,onFolderAction:u,onClickFile:d,onOpenFile:f,onPickHunks:p,disabled:m,showRevert:h,onRevert:g,onFolderRevert:_})]})}function vh({file:e,actionIcon:t,actionTitle:n,onAction:r,onClickFile:i,onOpenFile:a,onPickHunks:o,disabled:s,showRevert:c,onRevert:l,displayName:u}){return(0,X.jsxs)(sf,{children:[(0,X.jsx)(cf,{asChild:!0,children:(0,X.jsxs)(`div`,{className:`group relative flex items-center gap-1.5 hover:bg-muted/50 rounded pl-1 py-3 md:py-1 w-full min-w-0 select-none`,children:[(0,X.jsx)(`span`,{className:`text-xs font-mono w-3.5 text-center shrink-0 ${dh[e.status]??``}`,children:e.status}),(0,X.jsx)(ra,{name:e.path,className:`size-4 shrink-0`}),(0,X.jsx)(`button`,{type:`button`,className:`flex-1 flex min-w-0 text-left text-sm can-hover:hover:underline`,onClick:()=>i(e),title:e.path,children:(0,X.jsx)(mh,{className:`min-w-0 flex-1`,children:u??e.path})}),(0,X.jsx)(gh,{showRevert:c,onRevert:l?()=>l(e):void 0,onOpenFile:a?()=>a(e):void 0,onPickHunks:o?()=>o(e):void 0,onAction:()=>r(e),actionIcon:t,actionTitle:n,disabled:s})]})}),(0,X.jsxs)(lf,{className:`min-w-40`,children:[(0,X.jsx)($,{onClick:()=>i(e),children:`View Diff`}),a&&(0,X.jsx)($,{onClick:()=>a(e),children:`Open File`}),(0,X.jsx)($,{onClick:()=>r(e),disabled:s,children:n}),o&&(0,X.jsxs)($,{onClick:()=>o(e),disabled:s,children:[n,` Lines…`]}),c&&l&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(uf,{}),(0,X.jsx)($,{variant:`destructive`,onClick:()=>l(e),disabled:s,children:`Discard Changes`})]})]})]})}function yh({files:e,actionIcon:t,actionTitle:n,onAction:r,onFolderAction:i,onClickFile:a,onOpenFile:o,onPickHunks:s,disabled:c,showRevert:l,onRevert:u,onFolderRevert:d}){return(0,X.jsx)(`div`,{children:(0,Y.useMemo)(()=>lh(ch(e)),[e]).map((e,f)=>(0,X.jsx)(bh,{node:e,depth:0,actionIcon:t,actionTitle:n,onAction:r,onFolderAction:i,onClickFile:a,onOpenFile:o,onPickHunks:s,disabled:c,showRevert:l,onRevert:u,onFolderRevert:d},e.fullPath))})}function bh({node:e,depth:t,actionIcon:n,actionTitle:r,onAction:i,onFolderAction:a,onClickFile:o,onOpenFile:s,onPickHunks:c,disabled:l,showRevert:u,onRevert:d,onFolderRevert:f}){let[p,m]=(0,Y.useState)(!0),h=e.children.length>0&&!e.file;if(e.file)return(0,X.jsx)(`div`,{style:{paddingLeft:t*fh},children:(0,X.jsx)(vh,{file:e.file,displayName:e.name,actionIcon:n,actionTitle:r,onAction:i,onClickFile:o,onOpenFile:s,onPickHunks:c,disabled:l,showRevert:u,onRevert:d})});if(h){let h=uh(e),g=e.name.lastIndexOf(`/`),_=g>=0?e.name.slice(0,g+1):``,v=g>=0?e.name.slice(g+1):e.name;return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(sf,{children:[(0,X.jsx)(cf,{asChild:!0,children:(0,X.jsxs)(`div`,{className:`group relative flex items-center hover:bg-muted/50 rounded py-3 md:py-1 select-none`,style:{paddingLeft:t*fh},children:[(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 flex-1 min-w-0 text-sm text-muted-foreground`,onClick:()=>m(!p),children:[p?(0,X.jsx)(Qe,{className:`size-4 shrink-0`}):(0,X.jsx)(nn,{className:`size-4 shrink-0`}),(0,X.jsx)(`span`,{dir:`rtl`,className:`flex-1 min-w-0 truncate text-left`,children:(0,X.jsxs)(`bdi`,{children:[_&&(0,X.jsx)(`span`,{className:`opacity-55`,children:_}),(0,X.jsx)(`span`,{className:`font-medium`,children:v})]})}),(0,X.jsxs)(`span`,{className:`text-xs opacity-55 shrink-0`,children:[`(`,h.length,`)`]})]}),(0,X.jsx)(gh,{showRevert:u,onRevert:f?()=>f(h,e.fullPath):void 0,onAction:()=>a?.(h),actionIcon:n,actionTitle:`${r} ${e.name}/`,disabled:l})]})}),(0,X.jsxs)(lf,{className:`min-w-40`,children:[(0,X.jsxs)($,{onClick:()=>a?.(h),disabled:l,children:[r,` `,e.name,`/`]}),f&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(uf,{}),(0,X.jsx)($,{variant:`destructive`,onClick:()=>f(h,e.fullPath),disabled:l,children:`Discard Changes`})]})]})]}),p&&(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsx)(`span`,{"aria-hidden":!0,className:`absolute top-0 bottom-0 w-px bg-border/70`,style:{left:t*fh+ph}}),e.children.map((e,p)=>(0,X.jsx)(bh,{node:e,depth:t+1,actionIcon:n,actionTitle:r,onAction:i,onFolderAction:a,onClickFile:o,onOpenFile:s,onPickHunks:c,disabled:l,showRevert:u,onRevert:d,onFolderRevert:f},e.fullPath))]})]})}return null}function xh({connId:e,schemas:t,isSingleSchema:n,filter:r,expandedTables:i,loadingColumns:a,columnCache:o,columnErrors:s,onToggleTable:c,onOpenTable:l}){let u=r.toLowerCase();return(0,X.jsxs)(`div`,{className:`overflow-y-auto max-h-[40vh]`,children:[Array.from(t.entries()).map(([t,r])=>{let d=u?r.filter(e=>e.tableName.toLowerCase().includes(u)):r;return d.length===0?null:(0,X.jsxs)(`div`,{children:[!n&&(0,X.jsx)(`p`,{className:`px-2 py-0.5 text-[9px] font-semibold text-text-subtle uppercase tracking-wider`,children:t}),d.map(t=>{let n=`${e}:${t.schemaName}.${t.tableName}`,r=i.has(n),u=a.has(n),d=o?.get(n),f=s?.has(n);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1 pl-2 pr-2 py-0.5 hover:bg-surface-elevated transition-colors group/table`,children:[(0,X.jsx)(`button`,{onClick:()=>c(e,t.tableName,t.schemaName),className:`shrink-0 text-text-subtle hover:text-foreground transition-colors`,children:r?(0,X.jsx)(Qe,{className:`size-2.5`}):(0,X.jsx)(nn,{className:`size-2.5`})}),(0,X.jsx)(Pt,{className:`size-2.5 shrink-0 text-text-subtle`}),(0,X.jsx)(`button`,{onClick:()=>l(t.tableName,t.schemaName),className:`flex-1 text-left text-[11px] text-text-secondary hover:text-foreground transition-colors truncate`,children:t.tableName}),(0,X.jsx)(`span`,{className:`text-[9px] text-text-subtle`,children:t.rowCount})]}),r&&(0,X.jsxs)(`div`,{className:`ml-[18px] border-l border-dotted border-border pl-2`,children:[u&&(0,X.jsx)(`p`,{className:`text-[9px] text-text-subtle px-1 py-0.5`,children:`Loading…`}),f&&(0,X.jsx)(`p`,{className:`text-[9px] text-error px-1 py-0.5`,children:`Failed to load columns`}),d&&d.map(e=>(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-1 py-px text-[10px] text-text-subtle`,title:e.fk?`FK → ${e.fk.table}.${e.fk.column}`:void 0,children:[e.pk&&(0,X.jsx)(St,{className:`size-2.5 text-warning shrink-0`}),e.fk&&(0,X.jsx)(En,{className:`size-2.5 text-primary shrink-0`}),!e.pk&&!e.fk&&(0,X.jsx)(`span`,{className:`size-2.5 shrink-0`}),(0,X.jsxs)(`span`,{className:`truncate`,children:[e.name,e.nullable?`?`:``]}),(0,X.jsx)(`span`,{className:`ml-auto text-[9px] text-text-subtle/60 shrink-0`,children:e.type})]},e.name)),!u&&!f&&!d&&(0,X.jsx)(`p`,{className:`text-[9px] text-text-subtle px-1 py-0.5`,children:`No columns`})]})]},n)})]},t)}),r&&Array.from(t.values()).every(e=>!e.some(e=>e.tableName.toLowerCase().includes(u)))&&(0,X.jsx)(`p`,{className:`text-[10px] text-text-subtle px-2 py-1`,children:`No match`})]})}function Sh({conn:e,isExpanded:t,isRefreshing:n,tables:r,schemas:i,isSingleSchema:a,filter:o,expandedTables:s,loadingColumns:c,columnCache:l,columnErrors:u,refreshError:d,hasGroup:f,onToggle:p,onRefresh:m,onEdit:h,onDelete:g,onOpenTable:_,onToggleTable:v,onFilterChange:y}){let b=()=>p(e.id,!t&&r.length===0);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:U(`group flex items-center gap-1 py-1 hover:bg-surface-elevated transition-colors`,f?`pl-3 pr-2`:`px-2`),children:[(0,X.jsx)(`button`,{onClick:b,className:`shrink-0 text-text-subtle hover:text-foreground transition-colors`,children:t?(0,X.jsx)(Qe,{className:`size-3`}):(0,X.jsx)(nn,{className:`size-3`})}),(0,X.jsx)(`span`,{className:`shrink-0 size-2 rounded-full border border-border`,style:{backgroundColor:e.color??`transparent`}}),(0,X.jsx)(`button`,{className:`flex-1 text-left text-xs truncate hover:text-primary transition-colors`,onClick:b,children:e.name}),(0,X.jsx)(`span`,{className:`shrink-0 text-[9px] text-text-subtle uppercase px-1 rounded bg-surface-elevated`,children:e.type===`postgres`?`PG`:`DB`}),e.readonly===1&&(0,X.jsx)(`span`,{title:`Readonly`,children:(0,X.jsx)(Gt,{className:`shrink-0 size-2.5 text-text-subtle`})}),(0,X.jsxs)(`div`,{className:`flex can-hover:hidden can-hover:group-hover:flex items-center gap-0.5 shrink-0`,children:[(0,X.jsx)(`button`,{onClick:()=>m(e.id),disabled:n,className:`p-0.5 text-text-subtle hover:text-foreground transition-colors`,title:`Refresh tables`,children:(0,X.jsx)(en,{className:U(`size-3`,n&&`animate-spin`)})}),(0,X.jsx)(`button`,{onClick:()=>h(e),className:`p-0.5 text-text-subtle hover:text-foreground transition-colors`,title:`Edit`,children:(0,X.jsx)(yt,{className:`size-3`})}),(0,X.jsx)(`button`,{onClick:()=>g(e.id),className:`p-0.5 text-text-subtle hover:text-error transition-colors`,title:`Delete`,children:(0,X.jsx)(Je,{className:`size-3`})})]})]}),t&&(0,X.jsxs)(`div`,{className:`ml-[11px] border-l border-dashed border-border pl-1`,children:[n&&r.length===0&&(0,X.jsx)(`p`,{className:`text-[10px] text-text-subtle px-2 py-1`,children:`Loading…`}),!n&&r.length===0&&(d?(0,X.jsx)(`p`,{className:`text-[10px] text-error px-2 py-1 break-all`,children:d}):(0,X.jsx)(`p`,{className:`text-[10px] text-text-subtle px-2 py-1`,children:`No tables cached`})),r.length>0&&(0,X.jsxs)(X.Fragment,{children:[r.length>5&&(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-0.5`,children:[(0,X.jsx)(Nn,{className:`size-2.5 text-text-subtle shrink-0`}),(0,X.jsx)(`input`,{type:`text`,value:o,onChange:t=>y(e.id,t.target.value),placeholder:`Filter tables…`,className:`w-full text-[10px] bg-transparent border-none outline-none text-foreground placeholder:text-text-subtle`})]}),(0,X.jsx)(xh,{connId:e.id,schemas:i,isSingleSchema:a,filter:o,expandedTables:s,loadingColumns:c,columnCache:l,columnErrors:u,onToggleTable:v,onOpenTable:(t,n)=>_(e,t,n)})]})]})]})}function Ch(e,t,n){return`${e}:${t}.${n}`}function wh(e){return Number(e.slice(0,e.indexOf(`:`)))}function Th(){let e=V(e=>e.dbSidebarExpanded),t=V(e=>e.setDbSidebarExpanded),n=(0,Y.useMemo)(()=>new Set(e.conns),[e.conns]),r=(0,Y.useMemo)(()=>new Set(e.groups),[e.groups]),i=(0,Y.useMemo)(()=>new Set(e.tables),[e.tables]),a=(0,Y.useCallback)(e=>{let n=V.getState().dbSidebarExpanded,r=e(n);r!==n&&t(r)},[t]);return{expandedConns:n,expandedGroups:r,expandedTables:i,toggleConn:(0,Y.useCallback)(e=>{a(t=>({...t,conns:t.conns.includes(e)?t.conns.filter(t=>t!==e):[...t.conns,e]}))},[a]),toggleGroup:(0,Y.useCallback)(e=>{a(t=>({...t,groups:t.groups.includes(e)?t.groups.filter(t=>t!==e):[...t.groups,e]}))},[a]),setTableExpanded:(0,Y.useCallback)((e,t)=>{a(n=>({...n,tables:t?n.tables.includes(e)?n.tables:[...n.tables,e]:n.tables.filter(t=>t!==e)}))},[a]),pruneDeletedConns:(0,Y.useCallback)(e=>{let t=new Set(e);a(e=>{let n=e.conns.filter(e=>t.has(e)),r=e.tables.filter(e=>t.has(wh(e)));return n.length===e.conns.length&&r.length===e.tables.length?e:{...e,conns:n,tables:r}})},[a])}}function Eh({connections:e,cachedTables:t,refreshErrors:n,onOpenTable:r,onRefreshTables:i,onEdit:a,onDelete:o,onFetchColumns:s,columnCache:c}){let{expandedConns:l,expandedGroups:u,expandedTables:d,toggleConn:f,toggleGroup:p,setTableExpanded:m,pruneDeletedConns:h}=Th(),[g,_]=(0,Y.useState)(new Set),[v,y]=(0,Y.useState)(new Map),[b,x]=(0,Y.useState)(new Set),[S,C]=(0,Y.useState)(new Set),w=(e,t)=>{f(e),t&&D(e)},T=async(e,t,n)=>{let r=Ch(e,n,t);if(!(!s||c?.has(r))){x(e=>new Set(e).add(r)),C(e=>{let t=new Set(e);return t.delete(r),t});try{await s(e,t,n)}catch{C(e=>new Set(e).add(r))}x(e=>{let t=new Set(e);return t.delete(r),t})}},E=async(e,t,n)=>{let r=Ch(e,n,t);if(d.has(r)){m(r,!1);return}m(r,!0),await T(e,t,n)},D=async e=>{_(t=>new Set(t).add(e));try{await i(e)}finally{_(t=>{let n=new Set(t);return n.delete(e),n})}},O=(e,t)=>{y(n=>new Map(n).set(e,t))},k=(0,Y.useRef)(new Set);(0,Y.useEffect)(()=>{if(e.length!==0){h(e.map(e=>e.id));for(let n of e){if(!l.has(n.id))continue;let e=t.get(n.id)??[];if(e.length===0){if(k.current.has(`conn:${n.id}`))continue;k.current.add(`conn:${n.id}`),D(n.id).catch(()=>{});continue}for(let t of e){let e=Ch(n.id,t.schemaName,t.tableName);!d.has(e)||c?.has(e)||k.current.has(e)||(k.current.add(e),T(n.id,t.tableName,t.schemaName))}}}},[e,t,l,d,c,h]);let{groups:A,groupKeys:ee}=(0,Y.useMemo)(()=>{let t={};for(let n of e){let e=n.group_name??`__ungrouped__`;(t[e]??=[]).push(n)}return{groups:t,groupKeys:Object.keys(t).sort((e,t)=>e===`__ungrouped__`?1:t===`__ungrouped__`?-1:e.localeCompare(t))}},[e]),j=(0,Y.useMemo)(()=>{let n=new Map;for(let r of e){let e=t.get(r.id)??[],i=new Map;for(let t of e){let e=t.schemaName;(i.get(e)??i.set(e,[]).get(e)).push(t)}n.set(r.id,i)}return n},[e,t]);return e.length===0?(0,X.jsxs)(`p`,{className:`px-4 py-6 text-xs text-text-subtle text-center`,children:[`No connections yet.`,(0,X.jsx)(`br`,{}),`Click + to add one.`]}):(0,X.jsx)(`div`,{className:`py-1`,children:ee.map(e=>{let i=u.has(e),s=e===`__ungrouped__`?`Ungrouped`:e,f=A[e],m=ee.length>1||e!==`__ungrouped__`;return(0,X.jsxs)(`div`,{children:[m&&(0,X.jsxs)(`button`,{onClick:()=>p(e),className:`w-full flex items-center gap-1 px-2 py-1 text-[10px] font-semibold text-text-subtle uppercase tracking-wider hover:text-text-secondary transition-colors`,children:[i?(0,X.jsx)(Qe,{className:`size-3`}):(0,X.jsx)(nn,{className:`size-3`}),s]}),i&&(0,X.jsx)(`div`,{className:m?`ml-[11px] border-l border-dashed border-border`:``,children:f.map(e=>(0,X.jsx)(Sh,{conn:e,isExpanded:l.has(e.id),isRefreshing:g.has(e.id),tables:t.get(e.id)??[],schemas:j.get(e.id)??new Map,isSingleSchema:(j.get(e.id)?.size??0)<=1,filter:v.get(e.id)??``,expandedTables:d,loadingColumns:b,columnCache:c,columnErrors:S,refreshError:n?.get(e.id),hasGroup:m,onToggle:w,onRefresh:D,onEdit:a,onDelete:o,onOpenTable:r,onToggleTable:E,onFilterChange:O},e.id))})]},e)})})}var Dh=`ppm-recent-paths`,Oh=5,kh=[{name:`Home`,path:`~`,icon:bt},{name:`Desktop`,path:`~/Desktop`,icon:ke},{name:`Documents`,path:`~/Documents`,icon:Ln},{name:`Downloads`,path:`~/Downloads`,icon:An}];function Ah(){try{return JSON.parse(localStorage.getItem(Dh)??`[]`)}catch{return[]}}function jh(e){let t=[e,...Ah().filter(t=>t!==e)].slice(0,Oh);localStorage.setItem(Dh,JSON.stringify(t))}function Mh(e){return(0,X.jsx)(ra,{name:e.name,kind:e.type===`directory`?`directory`:`file`})}function Nh(e,t){if(!t?.length)return!0;let n=`.`+e.split(`.`).pop()?.toLowerCase();return t.includes(n)}function Ph({open:e,mode:t,accept:n,root:r,title:i,onSelect:a,onCancel:o}){let[s,c]=(0,Y.useState)([]),[l,u]=(0,Y.useState)(``),[d,f]=(0,Y.useState)(null),[p,m]=(0,Y.useState)([]),[h,g]=(0,Y.useState)(null),[_,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(null),[x,S]=(0,Y.useState)(``),[C,w]=(0,Y.useState)(``),[T,E]=(0,Y.useState)(!1),[D,O]=(0,Y.useState)([]),[k,A]=(0,Y.useState)(null),[ee,j]=(0,Y.useState)(!1),[te,M]=(0,Y.useState)(null),N=(0,Y.useRef)(null),P=(0,Y.useRef)(null),F=typeof window<`u`&&window.innerWidth<768,ne=t===`folder`?`Select Folder`:t===`file`?`Select File`:`Select File or Folder`,re=(0,Y.useCallback)(async(e,t)=>{v(!0),b(null),g(null),S(``);try{let n=new URLSearchParams;e&&n.set(`path`,e),t&&n.set(`showHidden`,`true`);let r=await B.get(`/api/fs/browse?${n}`);c(r.entries),u(r.current),f(r.parent),m(r.breadcrumbs),w(r.current)}catch(e){b(e.message||`Failed to browse directory`)}finally{v(!1)}},[]);(0,Y.useEffect)(()=>{e&&(re(r??`~`,T),O(Ah()))},[e,r,re,T]);let ie=e=>re(e,T),ae=()=>{let e=!T;E(e),re(l||(r??`~`),e)},I=e=>{e.key===`Enter`&&C.trim()&&re(C.trim())},oe=e=>{e.type===`directory`?t===`file`?ie(e.path):g(e.path):t!==`folder`&&g(e.path)},se=e=>{e.type===`directory`&&ie(e.path)},ce=()=>{h&&(jh(l),a(h))},le=async()=>{if(!k?.trim()||!l)return;let e=`${l}/${k.trim()}`;j(!0),M(null);try{await B.post(`/api/fs/mkdir`,{path:e}),A(null),M(null),await re(l,T),g(e)}catch(e){M(e.message||`Failed to create folder`)}finally{j(!1)}},ue=async()=>{if(!h)return;let e=s.find(e=>e.path===h);if(!(!e||e.type!==`directory`)&&window.confirm(`Delete folder "${e.name}"? This cannot be undone.`))try{await B.del(`/api/fs/rmdir`,{path:h}),g(null),await re(l,T)}catch(e){b(e.message||`Failed to delete folder`)}},de=h?s.some(e=>e.path===h&&e.type===`directory`):!1,fe=s.filter(e=>!(x&&!e.name.toLowerCase().includes(x.toLowerCase())||e.type===`file`&&n?.length&&!Nh(e.name,n))),pe=e=>e.type===`directory`?t!==`file`:t!==`folder`,me=(0,X.jsxs)(`div`,{className:`flex flex-col flex-1 min-h-0`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 px-3 py-2 border-b border-border`,children:[d&&(0,X.jsx)(q,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,onClick:()=>ie(d),children:(0,X.jsx)(ln,{className:`size-4`})}),(0,X.jsx)(xa,{value:C,onChange:e=>w(e.target.value),onKeyDown:I,placeholder:`Type path and press Enter`,className:`h-7 text-xs font-mono flex-1`})]}),(0,X.jsx)(`div`,{className:`flex items-center gap-0.5 px-3 py-1.5 border-b border-border overflow-x-auto text-xs`,children:p.map((e,t)=>(0,X.jsxs)(`span`,{className:`flex items-center shrink-0`,children:[t>0&&(0,X.jsx)(nn,{className:`size-3 text-text-subtle mx-0.5`}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>ie(e.path),className:`hover:text-primary hover:underline text-text-secondary`,children:e.name})]},e.path))}),(0,X.jsxs)(`div`,{className:`flex flex-1 min-h-0 overflow-hidden`,children:[!F&&(0,X.jsxs)(`div`,{className:`w-36 border-r border-border py-2 px-1 shrink-0 overflow-y-auto`,children:[kh.map(e=>(0,X.jsxs)(`button`,{type:`button`,onClick:()=>ie(e.path),className:U(`flex items-center gap-2 w-full px-2 py-1 text-xs rounded-md hover:bg-surface-hover text-left`,l.endsWith(e.name)&&`bg-primary/10 text-primary`),children:[(0,X.jsx)(e.icon,{className:`size-3.5`}),e.name]},e.path)),D.length>0&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`text-[10px] text-text-subtle px-2 mt-3 mb-1 font-medium`,children:`Recent`}),D.map(e=>(0,X.jsxs)(`button`,{type:`button`,onClick:()=>ie(e),className:`flex items-center gap-2 w-full px-2 py-1 text-xs rounded-md hover:bg-surface-hover text-left truncate`,children:[(0,X.jsx)(Re,{className:`size-3 shrink-0`}),(0,X.jsx)(`span`,{className:`truncate`,children:e.split(`/`).pop()})]},e))]})]}),(0,X.jsx)(Sa,{className:`flex-1 min-h-0`,children:_?(0,X.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,X.jsx)(L,{className:`size-5 animate-spin text-text-subtle`})}):y?(0,X.jsx)(`div`,{className:`text-center py-8 text-xs text-error`,children:y}):fe.length===0?(0,X.jsx)(`div`,{className:`text-center py-8 text-xs text-text-subtle`,children:x?`No matching entries`:`Empty directory`}):(0,X.jsxs)(`div`,{ref:P,className:`py-1`,children:[k!=null&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 bg-primary/5 border-b border-border`,children:[(0,X.jsx)(cn,{className:`size-4 text-primary shrink-0`}),(0,X.jsx)(xa,{ref:N,value:k,onChange:e=>A(e.target.value),onKeyDown:e=>{e.key===`Enter`&&le(),e.key===`Escape`&&A(null)},placeholder:`Folder name`,className:`h-6 text-xs flex-1`,disabled:ee,autoFocus:!0}),ee&&(0,X.jsx)(L,{className:`size-3.5 animate-spin text-primary shrink-0`})]}),te&&(0,X.jsx)(`div`,{className:`px-3 py-1 text-[11px] text-destructive bg-destructive/5 border-b border-border`,children:te})]}),fe.map(e=>{let t=pe(e);return(0,X.jsxs)(`button`,{type:`button`,onClick:()=>oe(e),onDoubleClick:()=>se(e),className:U(`flex items-center gap-2 w-full px-3 py-1.5 text-left text-xs transition-colors`,h===e.path?`bg-primary/10 text-primary`:t?`hover:bg-surface-hover text-text-primary`:`opacity-40 cursor-default`),disabled:!t&&e.type===`file`,children:[Mh(e),(0,X.jsx)(`span`,{className:U(`flex-1 truncate`,e.type===`directory`&&`font-medium`),children:e.name}),(0,X.jsx)(`span`,{className:`text-text-subtle text-[10px] shrink-0 w-14 text-right`,children:_a(e.size)}),(0,X.jsx)(`span`,{className:`text-text-subtle text-[10px] shrink-0 w-14 text-right`,children:pa(e.modified)})]},e.path)})]})})]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 border-t border-border shrink-0`,children:[(0,X.jsx)(q,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,onClick:()=>{A(``),M(null),setTimeout(()=>N.current?.focus(),50)},title:`New Folder`,children:(0,X.jsx)(cn,{className:`size-3.5`})}),(0,X.jsx)(q,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0 text-destructive/70 hover:text-destructive disabled:opacity-30`,onClick:ue,disabled:!de,title:`Delete selected folder`,children:(0,X.jsx)(Je,{className:`size-3.5`})}),(0,X.jsx)(q,{variant:`ghost`,size:`icon`,className:U(`size-7 shrink-0`,T&&`text-primary`),onClick:ae,title:T?`Hide hidden files`:`Show hidden files`,children:T?(0,X.jsx)(un,{className:`size-3.5`}):(0,X.jsx)(Pn,{className:`size-3.5`})}),n?.length?(0,X.jsx)(`span`,{className:`text-[10px] text-text-subtle bg-surface-hover px-1.5 py-0.5 rounded`,children:n.join(`, `)}):null,(0,X.jsx)(`div`,{className:`flex-1 max-w-48`,children:(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsx)(Nn,{className:`absolute left-2 top-1/2 -translate-y-1/2 size-3 text-text-subtle`}),(0,X.jsx)(xa,{value:x,onChange:e=>S(e.target.value),placeholder:`Filter...`,className:`h-6 text-[11px] pl-6`})]})}),(0,X.jsx)(`div`,{className:`flex-1`}),(0,X.jsx)(q,{variant:`outline`,size:`sm`,onClick:o,className:`h-7 text-xs`,children:`Cancel`}),(0,X.jsx)(q,{size:`sm`,onClick:ce,disabled:!h,className:`h-7 text-xs`,children:`Select`})]})]});return(0,X.jsx)(ta,{open:e,onOpenChange:e=>{e||o()},children:(0,X.jsxs)(J,{className:U(`p-0 gap-0 overflow-hidden flex flex-col`,F?`max-w-[95vw] h-[85vh]`:`max-w-2xl h-[70vh]`),children:[(0,X.jsx)(Xi,{className:`px-3 py-2 border-b border-border`,children:(0,X.jsx)(Qi,{className:`text-sm`,children:i??ne})}),me]})})}function Fh({mode:e,accept:t,root:n,title:r,onSelect:i,className:a}){let[o,s]=(0,Y.useState)(!1);return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(q,{type:`button`,variant:`ghost`,size:`icon`,className:U(`size-8 shrink-0`,a),onClick:()=>s(!0),title:r??`Browse...`,children:(0,X.jsx)(et,{className:`size-4`})}),(0,X.jsx)(Ph,{open:o,mode:e,accept:t,root:n,title:r,onSelect:e=>{i(e),s(!1)},onCancel:()=>s(!1)})]})}var Ih=[`#ef4444`,`#f97316`,`#eab308`,`#22c55e`,`#06b6d4`,`#3b82f6`,`#8b5cf6`,`#ec4899`,`#6b7280`,`#000000`];function Lh({value:e,onChange:t}){return(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-1.5`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:()=>t(null),className:U(`size-6 rounded-full border-2 transition-all`,e?`border-border hover:scale-105`:`border-primary scale-110`,`bg-transparent relative`),title:`No color`,children:(0,X.jsx)(`span`,{className:`absolute inset-0 flex items-center justify-center text-[8px] text-text-subtle`,children:`×`})}),Ih.map(n=>(0,X.jsx)(`button`,{type:`button`,onClick:()=>t(n),className:U(`size-6 rounded-full border-2 transition-all hover:scale-105`,e===n?`border-primary scale-110`:`border-transparent`),style:{backgroundColor:n},title:n},n))]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`div`,{className:`size-6 rounded-full border border-border shrink-0`,style:{backgroundColor:e??`transparent`}}),(0,X.jsx)(`input`,{type:`text`,value:e??``,onChange:e=>{let n=e.target.value.trim();if(n===``){t(null);return}/^#[0-9a-fA-F]{6}$/.test(n),t(n)},placeholder:`#3b82f6`,className:`flex-1 h-7 text-xs px-2 rounded-md border border-border bg-background focus:outline-none focus:border-primary font-mono`})]})]})}function Rh({open:e,onClose:t,connection:n,onSave:r,onUpdate:i,onTest:a,onTestRaw:o}){let s=!!n,[c,l]=(0,Y.useState)({name:``,type:`postgres`,path:``,connectionString:``,groupName:``,color:null,readonly:!0}),[u,d]=(0,Y.useState)(!1),[f,p]=(0,Y.useState)(null),[m,h]=(0,Y.useState)(!1),[g,_]=(0,Y.useState)(null);(0,Y.useEffect)(()=>{if(!e){p(null),_(null);return}l(n?{name:n.name,type:n.type,path:``,connectionString:``,groupName:n.group_name??``,color:n.color,readonly:n.readonly===1}:{name:``,type:`postgres`,path:``,connectionString:``,groupName:``,color:null,readonly:!0})},[e,n]);let v=(e,t)=>{l(n=>({...n,[e]:t})),p(null)};return(0,X.jsx)(ta,{open:e,onOpenChange:e=>{e||t()},children:(0,X.jsxs)(J,{className:`max-w-md`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:s?`Edit Connection`:`Add Connection`})}),(0,X.jsxs)(`div`,{className:`space-y-3 py-1`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Name *`}),(0,X.jsx)(`input`,{value:c.name,onChange:e=>v(`name`,e.target.value),placeholder:`my-database`,className:`w-full h-8 text-sm px-2.5 rounded-md border border-border bg-background focus:outline-none focus:border-primary`})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Type`}),(0,X.jsxs)(`select`,{value:c.type,onChange:e=>v(`type`,e.target.value),className:`w-full h-8 text-sm px-2 rounded-md border border-border bg-background focus:outline-none focus:border-primary`,children:[(0,X.jsx)(`option`,{value:`postgres`,children:`PostgreSQL`}),(0,X.jsx)(`option`,{value:`sqlite`,children:`SQLite`})]})]}),c.type===`postgres`?(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Connection String *`}),(0,X.jsx)(`input`,{type:`password`,value:c.connectionString,onChange:e=>v(`connectionString`,e.target.value),placeholder:`postgresql://user:pass@host:5432/db`,className:`w-full h-8 text-sm px-2.5 rounded-md border border-border bg-background focus:outline-none focus:border-primary font-mono`})]}):(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`File Path *`}),(0,X.jsxs)(`div`,{className:`flex gap-1.5 items-center`,children:[(0,X.jsx)(`input`,{value:c.path,onChange:e=>v(`path`,e.target.value),placeholder:`/path/to/database.db`,className:`flex-1 h-8 text-sm px-2.5 rounded-md border border-border bg-background focus:outline-none focus:border-primary font-mono`}),(0,X.jsx)(Fh,{mode:`file`,accept:[`.db`,`.sqlite`,`.sqlite3`],title:`Browse for SQLite database`,onSelect:e=>v(`path`,e)})]})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Group`}),(0,X.jsx)(`input`,{value:c.groupName,onChange:e=>v(`groupName`,e.target.value),placeholder:`Production`,className:`w-full h-8 text-sm px-2.5 rounded-md border border-border bg-background focus:outline-none focus:border-primary`})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Tab Color`}),(0,X.jsx)(Lh,{value:c.color,onChange:e=>v(`color`,e)})]}),s&&(0,X.jsxs)(`div`,{className:`flex items-center justify-between py-1`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`p`,{className:`text-xs font-medium`,children:`Readonly`}),(0,X.jsx)(`p`,{className:`text-[10px] text-text-subtle`,children:`Block non-SELECT queries (AI protection)`})]}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>v(`readonly`,!c.readonly),className:`relative w-9 h-5 rounded-full transition-colors ${c.readonly?`bg-primary`:`bg-border`}`,children:(0,X.jsx)(`span`,{className:`absolute top-0.5 left-0.5 size-4 rounded-full bg-white transition-transform ${c.readonly?`translate-x-4`:``}`})})]}),f&&(0,X.jsx)(`p`,{className:`text-xs ${f.ok?`text-success`:`text-error`}`,children:f.ok?`✓ Connection successful`:`✗ ${f.error}`}),g&&(0,X.jsx)(`p`,{className:`text-xs text-error`,children:g})]}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(q,{variant:`outline`,size:`sm`,onClick:async()=>{d(!0),p(null);try{let e;if(s)e=await a(n.id);else if(o){let t=c.type===`postgres`?{type:`postgres`,connectionString:c.connectionString}:{type:`sqlite`,path:c.path};e=await o(c.type,t)}else e={ok:!1,error:`Save connection first`};p(e)}finally{d(!1)}},disabled:u,className:`mr-auto`,children:u?`Testing…`:`Test Connection`}),(0,X.jsx)(q,{variant:`outline`,size:`sm`,onClick:t,children:`Cancel`}),(0,X.jsx)(q,{size:`sm`,onClick:async()=>{if(_(null),!c.name.trim()){_(`Name is required`);return}h(!0);try{if(s&&i){let e=(c.type===`postgres`?c.connectionString.trim():c.path.trim())?c.type===`postgres`?{type:`postgres`,connectionString:c.connectionString}:{type:`sqlite`,path:c.path}:void 0;await i(n.id,{name:c.name.trim(),...e!==void 0&&{connectionConfig:e},groupName:c.groupName.trim()||null,color:c.color,readonly:c.readonly?1:0})}else if(r){let e=c.type===`postgres`?{type:`postgres`,connectionString:c.connectionString}:{type:`sqlite`,path:c.path};await r({type:c.type,name:c.name.trim(),connectionConfig:e,groupName:c.groupName.trim()||void 0,color:c.color??void 0})}t()}catch(e){_(e.message)}finally{h(!1)}},disabled:m,children:m?`Saving…`:s?`Save`:`Add`})]})]})})}function zh({onExport:e,onImport:t}){let[n,r]=(0,Y.useState)(!1),i=(0,Y.useRef)(null),a=()=>r(!1),o=async()=>{a();try{let t=await e(),n=new Blob([JSON.stringify(t,null,2)],{type:`application/json`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`ppm-connections-${new Date().toISOString().slice(0,10)}.json`,i.click(),URL.revokeObjectURL(r)}catch(e){alert(`Export failed: ${e.message}`)}},s=async()=>{a();try{let t=await e(),n=await uu(JSON.stringify(t,null,2));alert(n?`Copied ${t.connections.length} connection(s) to clipboard`:`Copy failed — clipboard unavailable`)}catch(e){alert(`Export failed: ${e.message}`)}},c=async e=>{try{let n=JSON.parse(e),r=n.connections??n;if(!Array.isArray(r)){alert(`Invalid format: expected connections array`);return}let i=await t({connections:r}),a=`Imported ${i.imported} connection(s)`;i.skipped>0&&(a+=`, ${i.skipped} skipped`),i.errors?.length>0&&(a+=`\n\nErrors:\n${i.errors.join(`
20
- `)}`),alert(a)}catch(e){alert(`Import failed: ${e.message}`)}};return(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsx)(`button`,{onClick:()=>r(e=>!e),className:`flex items-center justify-center size-5 rounded hover:bg-surface-elevated transition-colors text-text-subtle hover:text-foreground`,title:`Import / Export`,children:(0,X.jsx)(rn,{className:`size-3.5`})}),n&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:a}),(0,X.jsxs)(`div`,{className:`absolute right-0 top-full mt-1 z-50 w-44 bg-background border border-border rounded-md shadow-lg py-1 text-xs`,children:[(0,X.jsxs)(`button`,{onClick:o,className:`w-full flex items-center gap-2 px-3 py-1.5 hover:bg-surface-elevated transition-colors text-left`,children:[(0,X.jsx)(An,{className:`size-3`}),` Export to file`]}),(0,X.jsxs)(`button`,{onClick:s,className:`w-full flex items-center gap-2 px-3 py-1.5 hover:bg-surface-elevated transition-colors text-left`,children:[(0,X.jsx)(vt,{className:`size-3`}),` Export to clipboard`]}),(0,X.jsx)(`div`,{className:`border-t border-border my-1`}),(0,X.jsxs)(`button`,{onClick:()=>{a(),i.current?.click()},className:`w-full flex items-center gap-2 px-3 py-1.5 hover:bg-surface-elevated transition-colors text-left`,children:[(0,X.jsx)(Ge,{className:`size-3`}),` Import from file`]}),(0,X.jsxs)(`button`,{onClick:async()=>{a();try{let e=await navigator.clipboard.readText();if(!e.trim()){alert(`Clipboard is empty`);return}await c(e)}catch(e){alert(`Clipboard read failed: ${e.message}`)}},className:`w-full flex items-center gap-2 px-3 py-1.5 hover:bg-surface-elevated transition-colors text-left`,children:[(0,X.jsx)(Sn,{className:`size-3`}),` Import from clipboard`]})]})]}),(0,X.jsx)(`input`,{ref:i,type:`file`,accept:`.json`,className:`hidden`,onChange:e=>{let t=e.target.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>c(n.result),n.readAsText(t),e.target.value=``}})]})}function Bh(){let[e,t]=(0,Y.useState)([]),[n,r]=(0,Y.useState)(!0),[i,a]=(0,Y.useState)(new Map),[o,s]=(0,Y.useState)(new Map),c=(0,Y.useCallback)(async()=>{try{t(await B.get(`/api/db/connections`))}catch{}finally{r(!1)}},[]);(0,Y.useEffect)(()=>{c()},[c]);let l=(0,Y.useCallback)(async e=>{let n=await B.post(`/api/db/connections`,e);return t(e=>[...e,n]),n},[]),u=(0,Y.useCallback)(async(e,n)=>{let r=await B.put(`/api/db/connections/${e}`,n);t(t=>t.map(t=>t.id===e?r:t))},[]),d=(0,Y.useCallback)(async e=>{await B.del(`/api/db/connections/${e}`),t(t=>t.filter(t=>t.id!==e)),a(t=>{let n=new Map(t);return n.delete(e),n})},[]),f=(0,Y.useCallback)(async e=>B.post(`/api/db/connections/${e}/test`),[]),p=(0,Y.useCallback)(async(e,t)=>B.post(`/api/db/test`,{type:e,connectionConfig:t}),[]),m=(0,Y.useCallback)(async e=>{s(t=>{let n=new Map(t);return n.delete(e),n});try{let t=(await B.get(`/api/db/connections/${e}/tables`)).map(t=>({connectionId:e,tableName:t.name,schemaName:t.schema,rowCount:t.rowCount,cachedAt:new Date().toISOString()}));a(n=>new Map(n).set(e,t))}catch(t){let n=t.message||`Connection failed`;throw s(t=>new Map(t).set(e,n)),t}},[]),[h,g]=(0,Y.useState)(new Map),_=(0,Y.useRef)(h);return _.current=h,{connections:e,loading:n,cachedTables:i,refreshErrors:o,columnCache:h,createConnection:l,updateConnection:u,deleteConnection:d,testConnection:f,testRawConnection:p,refreshTables:m,fetchColumns:(0,Y.useCallback)(async(e,t,n)=>{let r=`${e}:${n??`main`}.${t}`,i=_.current.get(r);if(i)return i;let a=await B.get(`/api/db/connections/${e}/schema?table=${encodeURIComponent(t)}${n?`&schema=${encodeURIComponent(n)}`:``}`);return g(e=>new Map(e).set(r,a)),a},[]),exportConnections:(0,Y.useCallback)(async()=>B.get(`/api/db/connections/export`),[]),importConnections:(0,Y.useCallback)(async e=>{let t=await B.post(`/api/db/connections/import`,e);await c();let n=t.connections??[];return n.length>0&&Promise.all(n.map(e=>m(e.id).catch(()=>{}))),t},[c,m])}}function Vh(){let{connections:e,loading:t,cachedTables:n,refreshErrors:r,columnCache:i,createConnection:a,updateConnection:o,deleteConnection:s,testConnection:c,testRawConnection:l,refreshTables:u,fetchColumns:d,exportConnections:f,importConnections:p}=Bh(),m=K(e=>e.openTab),[h,g]=(0,Y.useState)(!1),[_,v]=(0,Y.useState)(null);return(0,X.jsxs)(`div`,{className:`flex flex-col h-full`,children:[(0,X.jsxs)(nf,{icon:Pt,title:`Database`,children:[(0,X.jsx)(zh,{onExport:f,onImport:p}),(0,X.jsx)(`button`,{onClick:()=>g(!0),className:`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground`,title:`Add connection`,children:(0,X.jsx)(Dt,{className:`size-3.5`})})]}),(0,X.jsx)(`div`,{className:`flex-1 overflow-y-auto min-h-0`,children:t?(0,X.jsx)(`p`,{className:`px-4 py-6 text-xs text-text-subtle text-center`,children:`Loading…`}):(0,X.jsx)(Eh,{connections:e,cachedTables:n,refreshErrors:r,onOpenTable:(e,t,n)=>{m({type:`database`,title:`${e.name} · ${t}`,projectId:null,closable:!0,metadata:{connectionId:e.id,connectionName:e.name,dbType:e.type,tableName:t,schemaName:n,connectionColor:e.color}})},onRefreshTables:u,onEdit:v,onDelete:async e=>{if(confirm(`Delete this connection?`))try{await s(e)}catch{}},onFetchColumns:d,columnCache:i})}),(0,X.jsx)(Rh,{open:h,onClose:()=>g(!1),onSave:async e=>{let t=await a(e);t&&u(t.id).catch(()=>{})},onTest:()=>Promise.resolve({ok:!1,error:`Save connection first`}),onTestRaw:l}),_&&(0,X.jsx)(Rh,{open:!!_,onClose:()=>v(null),connection:_,onUpdate:async(e,t)=>{await o(e,t)},onTest:e=>c(e)})]})}function Hh(e,t,n,r){if(!e)return null;try{let i=r?e:e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);return n&&(i=`\\b${i}\\b`),RegExp(`(${i})`,t?`g`:`gi`)}catch{return null}}function Uh({text:e,re:t}){if(!t)return(0,X.jsx)(`span`,{children:e});try{t.lastIndex=0;let n=e.split(t);return t.lastIndex=0,(0,X.jsx)(`span`,{children:n.map((e,n)=>(t.lastIndex=0,t.test(e)?(0,X.jsx)(`mark`,{className:`bg-warning/40 text-foreground rounded-sm`,children:e},n):e))})}catch{return(0,X.jsx)(`span`,{children:e})}}function Wh({active:e,onClick:t,title:n,children:r}){return(0,X.jsx)(`button`,{onClick:t,title:n,className:U(`flex items-center justify-center w-6 h-6 rounded border shrink-0`,e?`border-primary text-primary bg-primary/10`:`border-border text-text-subtle hover:text-foreground hover:border-border/80`),children:r})}function Gh({onNavigate:e}={}){let{activeProject:t}=G(jd(e=>({activeProject:e.activeProject}))),n=K(e=>e.openTab),[r,i]=(0,Y.useState)(``),[a,o]=(0,Y.useState)(!1),[s,c]=(0,Y.useState)(!1),[l,u]=(0,Y.useState)(!1),[d,f]=(0,Y.useState)(!1),[p,m]=(0,Y.useState)(``),[h,g]=(0,Y.useState)(``),[_,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(null),[x,S]=(0,Y.useState)([]),[C,w]=(0,Y.useState)(0),[T,E]=(0,Y.useState)(!1),[D,O]=(0,Y.useState)(new Set),k=(0,Y.useRef)(null),A=(0,Y.useRef)(null),ee=(0,Y.useRef)(null),j=(0,Y.useRef)(0),[te,M]=(0,Y.useState)(null),[N,P]=(0,Y.useState)(!1),F=JSON.stringify([t?.name,r,a,s,l,p]),ne=(0,Y.useRef)(F);ne.current!==F&&(ne.current=F,j.current++);let re=(0,Y.useCallback)(async(e,n,r,i,a)=>{let o=++j.current;if(M(null),P(!1),E(!1),S([]),w(0),f(!1),!t||!i&&e.length<2||i&&e.length<1){S([]),w(0);return}if(i)try{new RegExp(e)}catch{f(!0),S([]);return}E(!0);try{let s=new URLSearchParams({q:e,caseSensitive:String(n),wholeWord:String(r),regex:String(i)});a&&s.set(`include`,a);let c=await B.get(`${z(t.name)}/files/search?${s}`);if(o!==j.current)return;S(c.results),w(c.total),P(!0);let l=!!ee.current?.checkVisibility({checkOpacity:!0,checkVisibilityCSS:!0});l&&wm({type:`search-succeeded`,projectName:t.name,requestId:String(o),visible:l})}catch(e){if(o!==j.current)return;S([]),M(e instanceof Error?e.message:`Unable to search this project.`)}finally{o===j.current&&E(!1)}},[t]);(0,Y.useEffect)(()=>(A.current&&clearTimeout(A.current),P(!1),M(null),S([]),w(0),E(!1),A.current=setTimeout(()=>re(r,a,s,l,p),300),()=>{j.current++,A.current&&clearTimeout(A.current)}),[r,a,s,l,p,re]),(0,Y.useEffect)(()=>{k.current?.focus()},[]);let ie=Hh(r,a,s,l);function ae(r,i){t&&(n({type:`editor`,title:r.split(`/`).pop()??r,metadata:{filePath:r,projectName:t.name,lineNumber:i},projectId:t.name,closable:!0}),e?.())}function I(e){O(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}async function oe(){if(!t||!r||x.length===0||_)return;v(!0),b(null);let e=0;try{for(let n of x){let i=await B.get(`${z(t.name)}/files/read?path=${encodeURIComponent(n.file)}`),o=Hh(r,a,s,l);if(!o)continue;o.lastIndex=0;let c=i.content.match(o)??[];if(!c.length)continue;e+=c.length,o.lastIndex=0;let u=i.content.replace(o,h);await B.put(`${z(t.name)}/files/write`,{path:n.file,content:u})}b(e),re(r,a,s,l,p)}catch{}finally{v(!1)}}return(0,X.jsxs)(`div`,{ref:ee,"data-onboarding":`search`,className:`flex flex-col h-full`,children:[(0,X.jsxs)(`div`,{className:`p-2 border-b border-border space-y-1.5`,children:[(0,X.jsx)(`div`,{className:`relative flex items-center gap-1`,children:(0,X.jsxs)(`div`,{className:`relative flex-1`,children:[(0,X.jsx)(Nn,{className:`absolute left-2 top-1/2 -translate-y-1/2 size-3.5 text-text-subtle pointer-events-none`}),(0,X.jsx)(`input`,{ref:k,value:r,onChange:e=>{i(e.target.value),b(null)},placeholder:t?`Search files…`:`Select a project first`,disabled:!t,className:U(`w-full pl-7 pr-6 py-1 text-xs bg-input border rounded focus:outline-none focus:ring-1 focus:ring-primary/50 disabled:opacity-50`,d?`border-destructive`:`border-border`)}),r&&(0,X.jsx)(`button`,{onClick:()=>{i(``),S([]),w(0),f(!1),b(null)},className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-text-subtle hover:text-foreground`,children:(0,X.jsx)(Be,{className:`size-3`})})]})}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,X.jsx)(Wh,{active:a,onClick:()=>o(e=>!e),title:`Match Case (Alt+C)`,children:(0,X.jsx)(ja,{className:`size-3.5`})}),(0,X.jsx)(Wh,{active:s,onClick:()=>{c(e=>!e),l&&u(!1)},title:`Match Whole Word (Alt+W)`,children:(0,X.jsx)(Va,{className:`size-3.5`})}),(0,X.jsx)(Wh,{active:l,onClick:()=>{u(e=>!e),s&&c(!1)},title:`Use Regular Expression (Alt+R)`,children:(0,X.jsx)(La,{className:`size-3.5`})}),d&&(0,X.jsx)(`span`,{className:`text-[10px] text-destructive ml-1`,children:`Invalid regex`})]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,X.jsxs)(`div`,{className:`relative flex-1`,children:[(0,X.jsx)(`input`,{value:h,onChange:e=>g(e.target.value),placeholder:`Replace…`,disabled:!t,className:`w-full pl-2 pr-6 py-1 text-xs bg-input border border-border rounded focus:outline-none focus:ring-1 focus:ring-primary/50 disabled:opacity-50`}),h&&(0,X.jsx)(`button`,{onClick:()=>g(``),className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-text-subtle hover:text-foreground`,children:(0,X.jsx)(Be,{className:`size-3`})})]}),(0,X.jsx)(`button`,{onClick:oe,disabled:!r||x.length===0||_,title:`Replace All`,className:`flex items-center justify-center w-6 h-6 rounded border border-border text-text-subtle hover:text-foreground hover:border-border/80 disabled:opacity-40 shrink-0`,children:_?(0,X.jsx)(L,{className:`size-3.5 animate-spin`}):(0,X.jsx)(Ra,{className:`size-3.5`})})]}),(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsx)(`input`,{value:p,onChange:e=>m(e.target.value),placeholder:`Files to include (e.g. *.ts, src/**)`,disabled:!t,className:`w-full pl-2 pr-6 py-1 text-xs bg-input border border-border rounded focus:outline-none focus:ring-1 focus:ring-primary/50 disabled:opacity-50`}),p&&(0,X.jsx)(`button`,{onClick:()=>m(``),className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-text-subtle hover:text-foreground`,children:(0,X.jsx)(Be,{className:`size-3`})})]}),(0,X.jsxs)(`div`,{className:`text-[10px] text-text-subtle h-3`,children:[(T||_)&&(0,X.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,X.jsx)(L,{className:`size-2.5 animate-spin`}),_?`Replacing…`:`Searching…`]}),!T&&!_&&y!==null&&(0,X.jsxs)(`span`,{className:`text-success`,children:[y,` replacement`,y===1?``:`s`,` made`]}),te&&(0,X.jsxs)(`span`,{role:`alert`,className:`text-destructive`,children:[`Search failed: `,te,` `,(0,X.jsx)(`button`,{className:`underline`,onClick:()=>void re(r,a,s,l,p),children:`Retry search`})]}),!T&&!_&&!te&&N&&y===null&&!d&&x.length===0&&(0,X.jsx)(`span`,{children:`No results`}),!T&&!_&&y===null&&C>0&&(0,X.jsxs)(`span`,{children:[C,` result`,C===1?``:`s`,` in `,x.length,` file`,x.length===1?``:`s`]})]})]}),(0,X.jsx)(`div`,{className:`flex-1 overflow-y-auto min-h-0`,children:x.map(e=>{let t=D.has(e.file),n=e.file.split(`/`).pop()??e.file,r=e.file.includes(`/`)?e.file.slice(0,e.file.lastIndexOf(`/`)):``;return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`button`,{onClick:()=>I(e.file),className:`w-full flex items-center gap-1 px-2 py-1 hover:bg-muted/50 text-left`,children:[t?(0,X.jsx)(nn,{className:`size-3 shrink-0 text-text-subtle`}):(0,X.jsx)(Qe,{className:`size-3 shrink-0 text-text-subtle`}),(0,X.jsx)(ra,{name:n,className:`size-3.5`}),(0,X.jsx)(`span`,{className:`text-xs font-medium text-foreground truncate`,children:n}),(0,X.jsx)(`span`,{className:`text-[10px] text-text-subtle truncate flex-1 min-w-0 ml-1`,children:r}),(0,X.jsx)(`span`,{className:`text-[10px] text-text-subtle shrink-0 ml-1 bg-muted px-1 rounded`,children:e.matches.length})]}),!t&&e.matches.map(t=>(0,X.jsxs)(`button`,{onClick:()=>ae(e.file,t.lineNum),className:`w-full flex items-start gap-2 pl-7 pr-2 py-0.5 hover:bg-primary/10 text-left`,children:[(0,X.jsx)(`span`,{className:`text-[10px] text-text-subtle shrink-0 w-7 text-right pt-px`,children:t.lineNum}),(0,X.jsx)(`span`,{className:`text-xs text-text-secondary truncate font-mono leading-4`,children:(0,X.jsx)(Uh,{text:t.content.trimStart(),re:ie})})]},`${e.file}-${t.lineNum}`))]},e.file)})})]})}function Kh(e,t){window.dispatchEvent(new CustomEvent(`ext:tree:expand`,{detail:{viewId:e,itemId:t}}))}function qh(e,t){window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:e,args:t}}))}function Jh({viewId:e,className:t}){let n=dl(t=>t.treeViews[e])??[],r=dl(e=>e.contributions),i=(0,Y.useMemo)(()=>{if(!r)return{name:e,headerActions:[]};let t=e,n=r.views;if(n)for(let r of Object.values(n)){let n=r.find(t=>t.id===e);if(n){t=n.name;break}}let i=[],a=r.menus?.[`view/title`];if(a)for(let t of a){if(t.when){let n=t.when.match(/view\s*==\s*(\S+)/);if(n&&n[1]!==e)continue}let n=r.commands?.find(e=>e.command===t.command);n&&i.push({command:n.command,title:n.title,icon:n.icon})}return{name:t,headerActions:i}},[r,e]);return(0,X.jsxs)(`div`,{className:U(`flex flex-col h-full`,t),children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border shrink-0`,children:[(0,X.jsx)(`span`,{className:`text-[10px] font-semibold text-text-subtle uppercase tracking-wider`,children:i.name}),(0,X.jsx)(`div`,{className:`flex items-center gap-0.5`,children:i.headerActions.map(e=>{let t=_u(e.icon??Yh(e.command))??en;return(0,X.jsx)(`button`,{onClick:()=>qh(e.command),className:`flex items-center justify-center size-5 rounded hover:bg-surface-elevated transition-colors text-text-subtle hover:text-foreground`,title:e.title,children:(0,X.jsx)(t,{className:`size-3.5`})},e.command)})})]}),(0,X.jsx)(`div`,{className:`flex-1 overflow-y-auto min-h-0 py-1`,role:`tree`,"aria-label":e,children:n.length===0?(0,X.jsx)(`p`,{className:`px-4 py-6 text-xs text-text-subtle text-center`,children:`No items`}):n.map(t=>(0,X.jsx)(Xh,{item:t,depth:0,viewId:e},t.id))})]})}function Yh(e){return e.includes(`refresh`)?`refresh`:e.includes(`add`)||e.includes(`create`)||e.includes(`new`)?`plus`:e.includes(`delete`)||e.includes(`remove`)?`trash`:e.includes(`edit`)||e.includes(`update`)?`edit`:e.includes(`search`)||e.includes(`find`)?`search`:`refresh`}function Xh({item:e,depth:t,viewId:n}){let[r,i]=(0,Y.useState)(!1),a=e.collapsibleState!==`none`,o=(0,Y.useRef)(!1);e.children&&e.children.length>0&&!o.current&&(o.current=!0,r||i(!0));let s=(0,Y.useCallback)(()=>{if(!a)return;let t=!r;i(t),t&&(!e.children||e.children.length===0)&&Kh(n,e.id)},[a,r,e.id,e.children,n]),c=(0,Y.useCallback)(()=>{s(),e.command&&qh(e.command,e.commandArgs)},[s,e.command,e.commandArgs]),l=8+t*16;return(0,X.jsxs)(`div`,{role:`treeitem`,"aria-expanded":a?r:void 0,children:[(0,X.jsxs)(`div`,{className:U(`group/node flex items-center gap-1 py-1 hover:bg-surface-elevated transition-colors`),style:{paddingLeft:l,paddingRight:8},children:[(0,X.jsx)(`button`,{onClick:s,className:`shrink-0 text-text-subtle hover:text-foreground transition-colors`,children:a?r?(0,X.jsx)(Qe,{className:`size-3`}):(0,X.jsx)(nn,{className:`size-3`}):(0,X.jsx)(`span`,{className:`size-3`})}),e.color&&(0,X.jsx)(`span`,{className:`shrink-0 size-2 rounded-full border border-border`,style:{backgroundColor:e.color}}),(0,X.jsx)(`button`,{className:`flex-1 text-left text-xs truncate hover:text-primary transition-colors`,onClick:c,children:e.label}),e.description&&(0,X.jsx)(`span`,{className:`shrink-0 ml-1 text-text-subtle text-[10px]`,children:e.description}),e.badge&&(0,X.jsx)(`span`,{className:`shrink-0 text-[9px] text-text-subtle uppercase px-1 rounded bg-surface-elevated`,children:e.badge}),e.actions&&e.actions.length>0&&(0,X.jsx)(`div`,{className:`flex can-hover:hidden can-hover:group-hover/node:flex items-center gap-0.5 shrink-0`,children:e.actions.map(e=>(0,X.jsx)(Zh,{action:e},e.command))})]}),a&&r&&e.children&&(0,X.jsx)(`div`,{role:`group`,children:e.children.map(e=>(0,X.jsx)(Xh,{item:e,depth:t+1,viewId:n},e.id))})]})}function Zh({action:e}){let[t,n]=(0,Y.useState)(!1),r=_u(e.icon)??en,i=e.icon===`trash`;return(0,X.jsx)(`button`,{onClick:(0,Y.useCallback)(t=>{t.stopPropagation(),e.icon===`refresh`&&(n(!0),setTimeout(()=>n(!1),1e3)),qh(e.command,e.commandArgs)},[e]),className:U(`p-0.5 text-text-subtle transition-colors`,i?`hover:text-error`:`hover:text-foreground`),title:e.tooltip,children:(0,X.jsx)(r,{className:U(`size-3`,t&&`animate-spin`)})})}var Qh=lr((e,t)=>({projectsWithIds:[],configs:[],selectedProjectId:null,watchers:[],results:[],unreadCount:0,setSelectedProjectId:t=>e({selectedProjectId:t}),loadProjectsWithIds:async()=>{let t=await B.get(`/api/jira/config/projects`);e({projectsWithIds:Array.isArray(t)?t:[]})},loadConfigs:async()=>{e({configs:await B.get(`/api/jira/config`)})},saveConfig:async(e,n)=>{await B.put(`/api/jira/config/${e}`,n),await t().loadConfigs()},deleteConfig:async t=>{await B.del(`/api/jira/config/${t}`),e(e=>({configs:e.configs.filter(e=>e.projectId!==t),watchers:[]}))},testConnection:async e=>(await B.post(`/api/jira/config/${e}/test`)).connected,loadWatchers:async t=>{e({watchers:await B.get(`/api/jira/watchers?configId=${t}`)})},createWatcher:async e=>{await B.post(`/api/jira/watchers`,e),e.configId&&await t().loadWatchers(e.configId)},updateWatcher:async(e,n)=>{await B.put(`/api/jira/watchers/${e}`,n);let r=t().watchers.find(t=>t.id===e);r&&await t().loadWatchers(r.jiraConfigId)},deleteWatcher:async e=>{let n=t().watchers.find(t=>t.id===e);await B.del(`/api/jira/watchers/${e}`),n&&await t().loadWatchers(n.jiraConfigId)},toggleWatcher:async(t,n)=>{e(e=>({watchers:e.watchers.map(e=>e.id===t?{...e,enabled:n}:e)}));try{await B.put(`/api/jira/watchers/${t}`,{enabled:n})}catch{e(e=>({watchers:e.watchers.map(e=>e.id===t?{...e,enabled:!n}:e)}))}},pullWatcher:async e=>{let n=await B.post(`/api/jira/watchers/${e}/pull`);return await t().loadResults(),n},testJql:async(e,t)=>await B.post(`/api/jira/watchers/test-jql`,{configId:e,jql:t}),loadResults:async(t,n,r=50,i=0)=>{let a=new URLSearchParams;t!==void 0&&a.set(`watcherId`,String(t)),n&&a.set(`status`,n),a.set(`limit`,String(r)),a.set(`offset`,String(i));let o=await B.get(`/api/jira/results?${a}`);e(i>0?e=>({results:[...e.results,...o]}):{results:o})},softDeleteResult:async t=>{e(e=>({results:e.results.filter(e=>e.id!==t)}));try{await B.del(`/api/jira/results/${t}`)}catch{}},startDebug:async(n,r)=>{let i=t().results.find(e=>e.id===n)?.status;e(e=>({results:e.results.map(e=>e.id===n?{...e,status:`queued`}:e)}));try{await B.post(`/api/jira/results/${n}/debug`,r?{prompt:r}:{})}catch{e(e=>({results:e.results.map(e=>e.id===n?{...e,status:i??`pending`}:e)}))}},resumeDebug:async n=>{let r=t().results.find(e=>e.id===n)?.status;e(e=>({results:e.results.map(e=>e.id===n?{...e,status:`queued`}:e)}));try{await B.post(`/api/jira/results/${n}/resume`)}catch{e(e=>({results:e.results.map(e=>e.id===n?{...e,status:r??`failed`}:e)}))}},cancelDebug:async e=>{try{await B.post(`/api/jira/results/${e}/cancel`),await t().loadResults()}catch{}},markRead:async t=>{e(e=>({results:e.results.map(e=>e.id===t?{...e,readAt:new Date().toISOString()}:e),unreadCount:Math.max(0,e.unreadCount-1)}));try{await B.patch(`/api/jira/results/${t}/read`)}catch{}},loadUnreadCount:async()=>{try{e({unreadCount:(await B.get(`/api/jira/results/unread-count`)).count})}catch{}}})),$h={pending:`bg-warning`,queued:`bg-warning/80`,running:`bg-primary animate-pulse`,done:`bg-success`,failed:`bg-error`};function eg(e){let t=Date.now()-new Date(e).getTime(),n=Math.floor(t/6e4);if(n<1)return`now`;if(n<60)return`${n}m`;let r=Math.floor(n/60);return r<24?`${r}h`:`${Math.floor(r/24)}d`}function tg({result:e,onDebug:t,onResume:n,onCancel:r,onOpenSession:i,onDelete:a,onClick:o}){let s=e,c=s.status===`done`&&!s.readAt,l=!!s.sessionId,u=s.status===`failed`&&l,d=s.status===`pending`||s.status===`failed`&&!l,f=s.status===`queued`||s.status===`running`,p=s.status;return(0,X.jsxs)(`div`,{className:U(`group rounded bg-card shadow-sm hover:shadow-md hover:bg-accent/50 hover:-translate-y-px cursor-pointer transition-all duration-150`,`px-2.5 py-2 space-y-1`,c&&`ring-1 ring-primary/30`),onClick:()=>o(s),children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,X.jsx)(`span`,{className:`text-xs font-mono font-semibold text-foreground shrink-0`,children:s.issueKey}),c&&(0,X.jsx)(`span`,{className:`size-1.5 rounded-full bg-primary shrink-0`}),(0,X.jsx)(`span`,{className:`text-xs text-muted-foreground truncate flex-1 min-w-0`,children:s.issueSummary||`No summary`}),(0,X.jsx)(`span`,{className:`text-[10px] text-muted-foreground/60 tabular-nums shrink-0`,children:eg(s.createdAt)})]}),(0,X.jsxs)(`div`,{className:`flex items-center justify-between min-w-0`,children:[(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-[11px] text-muted-foreground`,children:[(0,X.jsx)(`span`,{className:U(`size-1.5 rounded-full shrink-0`,$h[p])}),p]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-0.5 shrink-0`,onClick:e=>e.stopPropagation(),children:[u&&(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 h-6 px-1.5 rounded text-[10px] font-medium text-primary hover:bg-primary/10 active:scale-95 transition-colors`,onClick:()=>n(s),title:`Resume debug session`,children:[(0,X.jsx)(Nt,{className:`size-3`}),(0,X.jsx)(`span`,{children:`Resume`})]}),d&&(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-6 rounded text-muted-foreground hover:text-primary active:scale-95 transition-colors`,onClick:()=>t(s),title:`Debug`,children:(0,X.jsx)(wt,{className:`size-3`})}),f&&(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-6 rounded text-muted-foreground hover:text-destructive active:scale-95 transition-colors`,onClick:()=>r(s),title:`Stop debug`,children:(0,X.jsx)(Un,{className:`size-3`})}),s.status===`running`&&(0,X.jsx)(L,{className:`size-3 animate-spin text-primary`}),l&&(0,X.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 h-6 px-1.5 rounded text-[10px] font-medium text-primary hover:bg-primary/10 active:scale-95 transition-colors`,onClick:()=>i(s),title:`Open session`,children:[(0,X.jsx)(Rt,{className:`size-3`}),(0,X.jsx)(`span`,{children:`Open`})]}),(0,X.jsxs)($u,{children:[(0,X.jsx)(td,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-6 rounded text-muted-foreground hover:text-foreground active:scale-95 transition-colors`,children:(0,X.jsx)(_e,{className:`size-3`})})}),(0,X.jsx)(nd,{align:`end`,children:(0,X.jsxs)(rd,{className:`text-destructive`,onClick:()=>a(s.id),children:[(0,X.jsx)(Je,{className:`size-3.5 mr-2`}),` Delete`]})})]})]})]})]})}var ng=Y.forwardRef(({className:e,...t},n)=>(0,X.jsx)(N,{className:U(`peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input`,e),...t,ref:n,children:(0,X.jsx)(P,{className:U(`pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0`)})}));ng.displayName=N.displayName;function rg({...e}){return(0,X.jsx)(M,{"data-slot":`select`,...e})}function ig({...e}){return(0,X.jsx)(de,{"data-slot":`select-value`,...e})}function ag({className:e,size:t=`default`,children:n,...r}){return(0,X.jsxs)(p,{"data-slot":`select-trigger`,"data-size":t,className:U(`flex w-fit items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground`,e),...r,children:[n,(0,X.jsx)(ne,{asChild:!0,children:(0,X.jsx)(an,{className:`size-4 opacity-50`})})]})}function og({className:e,children:t,position:n=`item-aligned`,align:r=`center`,...i}){let a=fr();return(0,X.jsx)(pe,{container:a,children:(0,X.jsxs)(ae,{"data-slot":`select-content`,className:U(`relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95`,n===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,e),position:n,align:r,...i,children:[(0,X.jsx)(cg,{}),(0,X.jsx)(E,{className:U(`p-1`,n===`popper`&&`h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1`),children:t}),(0,X.jsx)(lg,{})]})})}function sg({className:e,children:t,...n}){return(0,X.jsxs)(F,{"data-slot":`select-item`,className:U(`relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2`,e),...n,children:[(0,X.jsx)(`span`,{"data-slot":`select-item-indicator`,className:`absolute right-2 flex size-3.5 items-center justify-center`,children:(0,X.jsx)(ee,{children:(0,X.jsx)(we,{className:`size-4`})})}),(0,X.jsx)(ue,{children:t})]})}function cg({className:e,...t}){return(0,X.jsx)(T,{"data-slot":`select-scroll-up-button`,className:U(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,X.jsx)(tt,{className:`size-4`})})}function lg({className:e,...t}){return(0,X.jsx)(fe,{"data-slot":`select-scroll-down-button`,className:U(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,X.jsx)(an,{className:`size-4`})})}function ug(e){let t=[];return e.project.length&&t.push(`project IN (${e.project.join(`, `)})`),e.issueType.length&&t.push(`issuetype IN (${e.issueType.map(e=>`"${e}"`).join(`, `)})`),e.priority.length&&t.push(`priority IN (${e.priority.map(e=>`"${e}"`).join(`, `)})`),e.status.length&&t.push(`status IN (${e.status.map(e=>`"${e}"`).join(`, `)})`),e.assignee.length&&t.push(`assignee IN (${e.assignee.map(e=>`"${e}"`).join(`, `)})`),(t.join(` AND `)||`ORDER BY updated DESC`)+(t.length?` ORDER BY updated DESC`:``)}var dg={project:[],issueType:[],priority:[],status:[],assignee:[]};function fg({value:e,onChange:t,configId:n}){let[r,i]=(0,Y.useState)(e?`raw`:`builder`),[a,o]=(0,Y.useState)(dg),[s,c]=(0,Y.useState)(e),[l,u]=(0,Y.useState)([]),[d,f]=(0,Y.useState)([]),[p,m]=(0,Y.useState)([]),[h,g]=(0,Y.useState)([]),[_,v]=(0,Y.useState)([]),[y,b]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{n&&(b(!0),Promise.all([B.get(`/api/jira/metadata/${n}/projects`).catch(()=>[]),B.get(`/api/jira/metadata/${n}/issuetype`).catch(()=>[]),B.get(`/api/jira/metadata/${n}/priority`).catch(()=>[]),B.get(`/api/jira/metadata/${n}/status`).catch(()=>[]),B.get(`/api/jira/metadata/${n}/assignees`).catch(()=>[])]).then(([e,t,n,r,i])=>{u(e),f(t),m(n),g(r),v(i.map(e=>({id:e.accountId,name:e.displayName})))}).finally(()=>b(!1)))},[n]),(0,Y.useEffect)(()=>{r===`builder`&&t(ug(a))},[a,r]);let x=(0,Y.useCallback)(e=>{c(e),t(e)},[t]),S=(e,t)=>{!t||a[e].includes(t)||o(n=>({...n,[e]:[...n[e],t]}))},C=(e,t)=>{o(n=>({...n,[e]:n[e].filter(e=>e!==t)}))};return(0,X.jsxs)(`div`,{className:`space-y-2 min-w-0`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(q,{type:`button`,size:`sm`,variant:r===`builder`?`default`:`outline`,onClick:()=>i(`builder`),className:`min-h-[44px] text-xs`,children:`Builder`}),(0,X.jsx)(q,{type:`button`,size:`sm`,variant:r===`raw`?`default`:`outline`,onClick:()=>i(`raw`),className:`min-h-[44px] text-xs`,children:`Raw JQL`}),y&&(0,X.jsx)(L,{className:`size-3.5 animate-spin text-muted-foreground`})]}),r===`raw`?(0,X.jsx)(`textarea`,{value:s,onChange:e=>x(e.target.value),className:`w-full h-20 rounded-md border border-input bg-background px-3 py-2 text-sm font-mono resize-none focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,placeholder:`e.g. project = MYPROJ AND status = "In Progress"`}):(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(pg,{label:`Project`,field:`project`,filters:a,onAdd:S,onRemove:C,options:l.map(e=>({value:e.key??e.name,label:`${e.key??e.name} — ${e.name}`})),placeholder:`Select project...`}),(0,X.jsx)(pg,{label:`Issue Type`,field:`issueType`,filters:a,onAdd:S,onRemove:C,options:d.map(e=>({value:e.name,label:e.name})),placeholder:`Select issue type...`}),(0,X.jsx)(pg,{label:`Priority`,field:`priority`,filters:a,onAdd:S,onRemove:C,options:p.map(e=>({value:e.name,label:e.name})),placeholder:`Select priority...`}),(0,X.jsx)(pg,{label:`Status`,field:`status`,filters:a,onAdd:S,onRemove:C,options:h.map(e=>({value:e.name,label:e.name})),placeholder:`Select status...`}),(0,X.jsx)(pg,{label:`Assignee`,field:`assignee`,filters:a,onAdd:S,onRemove:C,options:_.map(e=>({value:e.id??e.name,label:e.name})),placeholder:`Select assignee...`})]}),(0,X.jsx)(`div`,{className:`text-xs text-muted-foreground bg-muted/50 rounded px-2 py-1 font-mono break-all`,children:r===`builder`?ug(a):s||`(empty)`})]})}function pg({label:e,field:t,filters:n,onAdd:r,onRemove:i,options:a,placeholder:o}){let s=a.filter(e=>!n[t].includes(e.value));return(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:e}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1 flex-wrap`,children:[n[t].map(e=>(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-0.5 px-2 py-0.5 rounded-full bg-primary/10 text-xs`,children:[a.find(t=>t.value===e)?.label??e,(0,X.jsx)(`button`,{type:`button`,onClick:()=>i(t,e),className:`hover:text-destructive`,children:(0,X.jsx)(Be,{className:`size-3`})})]},e)),s.length>0?(0,X.jsxs)(rg,{onValueChange:e=>r(t,e),children:[(0,X.jsx)(ag,{className:`h-7 w-auto min-w-[120px] text-xs`,children:(0,X.jsx)(ig,{placeholder:o})}),(0,X.jsx)(og,{children:s.map(e=>(0,X.jsx)(sg,{value:e.value,children:e.label},e.value))})]}):a.length>0?(0,X.jsx)(`span`,{className:`text-xs text-muted-foreground italic`,children:`All selected`}):(0,X.jsx)(`span`,{className:`text-xs text-muted-foreground italic`,children:`Loading...`})]})]})}var mg=[{label:`30s`,value:3e4},{label:`1m`,value:6e4},{label:`2m`,value:12e4},{label:`5m`,value:3e5},{label:`10m`,value:6e5},{label:`30m`,value:18e5},{label:`1h`,value:36e5}];function hg({configId:e,existing:t,onDone:n}){let{createWatcher:r,updateWatcher:i,testJql:a}=Qh(),[o,s]=(0,Y.useState)(t?.name??``),[c,l]=(0,Y.useState)(t?.jql??``),[u,d]=(0,Y.useState)(t?.intervalMs??12e4),[f,p]=(0,Y.useState)(t?.mode??`debug`),[m,h]=(0,Y.useState)(t?.promptTemplate??``),[g,_]=(0,Y.useState)(!1),[v,y]=(0,Y.useState)(!1),[b,x]=(0,Y.useState)(null),[S,C]=(0,Y.useState)(0),[w,T]=(0,Y.useState)(null),E=!!t;return(0,X.jsxs)(`form`,{onSubmit:async a=>{if(a.preventDefault(),!(!o||!c)){_(!0);try{E?await i(t.id,{name:o,jql:c,intervalMs:u,mode:f,promptTemplate:m||null}):await r({configId:e,name:o,jql:c,intervalMs:u,mode:f,promptTemplate:m||void 0}),n()}catch{}_(!1)}},className:`space-y-3 min-w-0`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Name`}),(0,X.jsx)(xa,{value:o,onChange:e=>s(e.target.value),placeholder:`Bug watcher`,className:`h-9`})]}),(0,X.jsx)(fg,{value:c,onChange:l,configId:e}),(0,X.jsxs)(q,{type:`button`,size:`sm`,variant:`outline`,className:`w-full min-h-[44px]`,disabled:!c||v,onClick:async()=>{if(c){y(!0),T(null),x(null);try{let t=await a(e,c);x(t.issues),C(t.total)}catch(e){T(e.message??`Test failed`)}y(!1)}},children:[v?(0,X.jsx)(L,{className:`size-4 animate-spin mr-1.5`}):(0,X.jsx)(Nn,{className:`size-4 mr-1.5`}),`Test Filter`]}),w&&(0,X.jsx)(`p`,{className:`text-xs text-destructive bg-destructive/10 rounded-md px-3 py-2`,children:w}),b&&(0,X.jsxs)(`div`,{className:`border rounded-md max-h-48 overflow-hidden`,children:[(0,X.jsxs)(`div`,{className:`px-3 py-1.5 border-b bg-muted/50 text-xs text-muted-foreground font-medium`,children:[S,` ticket`,S===1?``:`s`,` found`,S>b.length&&` (showing ${b.length})`]}),(0,X.jsx)(`div`,{className:`overflow-y-auto max-h-[calc(12rem-30px)]`,children:b.length===0?(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground text-center py-4`,children:`No tickets match this filter.`}):b.map(e=>(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b last:border-b-0 text-xs min-w-0`,children:[(0,X.jsx)(`span`,{className:`font-mono font-medium shrink-0`,children:e.key}),(0,X.jsx)(`span`,{className:`truncate text-muted-foreground flex-1 min-w-0`,children:e.fields.summary}),(0,X.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground px-1.5 py-0.5 bg-muted rounded whitespace-nowrap`,children:e.fields.status.name})]},e.key))})]}),(0,X.jsxs)(`div`,{className:`flex gap-2`,children:[(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Interval`}),(0,X.jsxs)(rg,{value:String(u),onValueChange:e=>d(Number(e)),children:[(0,X.jsx)(ag,{className:`h-9`,children:(0,X.jsx)(ig,{})}),(0,X.jsx)(og,{children:mg.map(e=>(0,X.jsx)(sg,{value:String(e.value),children:e.label},e.value))})]})]}),(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Mode`}),(0,X.jsxs)(rg,{value:f,onValueChange:e=>p(e),children:[(0,X.jsx)(ag,{className:`h-9`,children:(0,X.jsx)(ig,{})}),(0,X.jsxs)(og,{children:[(0,X.jsx)(sg,{value:`debug`,children:`Debug + Notify`}),(0,X.jsx)(sg,{value:`notify`,children:`Notify only`})]})]})]})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Prompt template (optional)`}),(0,X.jsx)(`textarea`,{value:m,onChange:e=>h(e.target.value),className:`w-full h-16 rounded-md border border-input bg-background px-3 py-2 text-xs font-mono resize-none focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,placeholder:`Debug Jira issue {issue_key}: {summary}`})]}),(0,X.jsx)(q,{type:`submit`,size:`sm`,disabled:g||!o||!c,className:`min-h-[44px] w-full`,children:g?(0,X.jsx)(L,{className:`size-4 animate-spin`}):E?`Save Changes`:`Create Watcher`})]})}function gg({configId:e}){let{watchers:t,deleteWatcher:n,toggleWatcher:r,pullWatcher:i}=Qh(),[a,o]=(0,Y.useState)(!1),[s,c]=(0,Y.useState)(null),[l,u]=(0,Y.useState)(null),d=async e=>{u(e);try{let t=await i(e);R.success(`Pulled ${t.newIssues} new issue${t.newIssues===1?``:`s`}`)}catch(e){R.error(e.message??`Pull failed`)}u(null)};return(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,X.jsx)(`h4`,{className:`text-sm font-medium`,children:`Watchers`}),(0,X.jsxs)(ta,{open:a,onOpenChange:o,children:[(0,X.jsx)(ea,{asChild:!0,children:(0,X.jsxs)(q,{size:`sm`,variant:`outline`,className:`min-h-[44px]`,children:[(0,X.jsx)(Dt,{className:`size-4 mr-1`}),` Add`]})}),(0,X.jsxs)(J,{className:`max-w-md overflow-hidden`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:`New Watcher`})}),(0,X.jsx)(hg,{configId:e,onDone:()=>o(!1)})]})]})]}),t.length===0&&(0,X.jsx)(`p`,{className:`text-sm text-muted-foreground py-4 text-center`,children:`No watchers yet.`}),t.map(e=>(0,X.jsxs)(`div`,{className:`flex items-center gap-2 p-2 rounded-md border text-sm`,children:[(0,X.jsx)(ng,{checked:e.enabled,onCheckedChange:t=>r(e.id,t),className:`shrink-0`}),(0,X.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,X.jsx)(`div`,{className:`font-medium truncate`,children:e.name}),(0,X.jsx)(`div`,{className:`text-xs text-muted-foreground truncate font-mono`,children:e.jql})]}),(0,X.jsxs)(`span`,{className:`text-xs text-muted-foreground shrink-0`,children:[e.mode===`notify`?`notify`:`debug`,` · `,_g(e.intervalMs)]}),(0,X.jsx)(q,{size:`icon`,variant:`ghost`,className:`size-8`,onClick:()=>c(e),children:(0,X.jsx)(yt,{className:`size-3.5`})}),(0,X.jsx)(q,{size:`icon`,variant:`ghost`,className:`size-8`,onClick:()=>d(e.id),disabled:l===e.id,children:l===e.id?(0,X.jsx)(L,{className:`size-3.5 animate-spin`}):(0,X.jsx)(wt,{className:`size-3.5`})}),(0,X.jsx)(q,{size:`icon`,variant:`ghost`,className:`size-8 text-destructive`,onClick:()=>n(e.id),children:(0,X.jsx)(Je,{className:`size-3.5`})})]},e.id)),(0,X.jsx)(ta,{open:!!s,onOpenChange:e=>{e||c(null)},children:(0,X.jsxs)(J,{className:`max-w-md overflow-hidden`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:`Edit Watcher`})}),s&&(0,X.jsx)(hg,{configId:e,existing:s,onDone:()=>c(null)})]})})]})}function _g(e){return e>=36e5?`${e/36e5}h`:e>=6e4?`${e/6e4}m`:`${e/1e3}s`}function vg({projectId:e,existing:t}){let{saveConfig:n,deleteConfig:r,testConnection:i}=Qh(),[a,o]=(0,Y.useState)(t?.baseUrl??``),[s,c]=(0,Y.useState)(t?.email??``),[l,u]=(0,Y.useState)(``);(0,Y.useEffect)(()=>{t&&(o(t.baseUrl),c(t.email))},[t?.baseUrl,t?.email]);let[d,f]=(0,Y.useState)(!1),[p,m]=(0,Y.useState)(!1),[h,g]=(0,Y.useState)(null),[_,v]=(0,Y.useState)(null);return(0,X.jsxs)(`form`,{onSubmit:async r=>{if(r.preventDefault(),!(!a||!s||!l&&!t?.hasToken)){f(!0);try{await n(e,{baseUrl:a,email:s,...l?{token:l}:{}}),u(``)}catch{}f(!1)}},className:`space-y-3`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Base URL`}),(0,X.jsx)(xa,{value:a,onChange:e=>o(e.target.value),placeholder:`https://mysite.atlassian.net`,className:`h-9`})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Email`}),(0,X.jsx)(xa,{value:s,onChange:e=>c(e.target.value),placeholder:`you@company.com`,className:`h-9`})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`label`,{className:`text-xs text-muted-foreground`,children:[`API Token `,t?.hasToken&&(0,X.jsx)(`span`,{className:`text-success`,children:`(saved)`})]}),(0,X.jsx)(xa,{type:`password`,value:l,onChange:e=>u(e.target.value),placeholder:t?.hasToken?`Enter new token to replace`:`Your Jira API token`,className:`h-9`})]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,X.jsx)(q,{type:`submit`,size:`sm`,disabled:d,className:`min-w-[44px] min-h-[44px]`,children:d?(0,X.jsx)(L,{className:`size-4 animate-spin`}):`Save`}),t&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(q,{type:`button`,size:`sm`,variant:`outline`,onClick:async()=>{m(!0),g(null),v(null);try{g(await i(e)?`ok`:`fail`)}catch(e){g(`fail`),v(e?.message??`Connection failed`)}m(!1)},disabled:p,className:`min-h-[44px]`,children:p?(0,X.jsx)(L,{className:`size-4 animate-spin`}):`Test Connection`}),(0,X.jsx)(q,{type:`button`,size:`sm`,variant:`destructive`,onClick:()=>r(e),className:`min-h-[44px]`,children:(0,X.jsx)(Je,{className:`size-4`})})]}),h===`ok`&&(0,X.jsx)(ut,{className:`size-4 text-success`}),h===`fail`&&(0,X.jsx)(mn,{className:`size-4 text-error`})]}),_&&(0,X.jsx)(`p`,{className:`text-xs text-error break-all`,children:_})]})}function yg({result:e,onClose:t}){let{watchers:n,startDebug:r}=Qh(),[i,a]=(0,Y.useState)(``);return(0,Y.useEffect)(()=>{e&&a((n.find(t=>t.id===e.watcherId)?.promptTemplate??`Debug Jira issue {issue_key}: {summary}`).replace(/\{issue_key\}/g,e.issueKey).replace(/\{summary\}/g,e.issueSummary??``))},[e,n]),(0,X.jsx)(ta,{open:!!e,onOpenChange:e=>{e||t()},children:(0,X.jsxs)(J,{className:`max-w-md`,children:[(0,X.jsx)(Xi,{children:(0,X.jsxs)(Qi,{children:[`Start Debug: `,e?.issueKey]})}),(0,X.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e?.issueSummary}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Debug Prompt`}),(0,X.jsx)(`textarea`,{value:i,onChange:e=>a(e.target.value),className:`w-full h-24 rounded-md border border-input bg-background px-3 py-2 text-xs font-mono resize-none mt-1`,placeholder:`Debug Jira issue {issue_key}: {summary}`})]}),(0,X.jsx)(q,{size:`sm`,className:`w-full min-h-[44px]`,onClick:async()=>{if(e){try{await r(e.id,i)}catch{}t()}},children:`Start Debug Session`})]})})}function bg(){let e=G(e=>e.activeProject),t=K(e=>e.openTab),{configs:n,watchers:r,results:i,loadConfigs:a,loadWatchers:o,loadResults:s,loadProjectsWithIds:c,projectsWithIds:l,softDeleteResult:u,resumeDebug:d,cancelDebug:f,markRead:p,unreadCount:m,loadUnreadCount:h}=Qh(),[g,_]=(0,Y.useState)(`tickets`),[v,y]=(0,Y.useState)(!1),[b,x]=(0,Y.useState)(null),S=l.find(t=>t.name===e?.name),C=n.find(e=>e.projectId===S?.id);(0,Y.useEffect)(()=>{a(),c()},[]),(0,Y.useEffect)(()=>{C&&o(C.id)},[C?.id]);let w=(0,Y.useCallback)(async()=>{y(!0);try{await s()}catch{}y(!1)},[s]);(0,Y.useEffect)(()=>{w(),h()},[C?.id]),(0,Y.useEffect)(()=>{let n=n=>{let r=n.detail;r&&(w(),r.status===`done`?(h(),R.success(`Debug complete: ${r.issueKey}`,{action:r.sessionId?{label:`View`,onClick:()=>t({type:`chat`,title:`[Jira] ${r.issueKey}`,projectId:e?.name??null,metadata:{projectName:e?.name,sessionId:r.sessionId},closable:!0})}:void 0})):r.status===`failed`&&R.error(`Debug failed: ${r.issueKey}`))};return window.addEventListener(`jira:status_change`,n),()=>window.removeEventListener(`jira:status_change`,n)},[w,h]);let T=(0,Y.useCallback)(n=>{n.sessionId&&(n.status===`done`&&!n.readAt&&p(n.id),t({type:`chat`,title:`[Jira] ${n.issueKey}`,projectId:e?.name??null,metadata:{projectName:e?.name,sessionId:n.sessionId},closable:!0}))},[t,p,e]),E=e=>{e.sessionId&&T(e)};return e?g===`tickets`?(0,X.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,X.jsxs)(nf,{icon:Vn,title:`Jira`,children:[m>0&&(0,X.jsx)(`span`,{className:`inline-flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full bg-primary text-primary-foreground text-[10px] font-bold`,children:m}),(0,X.jsx)(`button`,{onClick:w,disabled:v,title:`Refresh`,className:`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground disabled:opacity-50`,children:v?(0,X.jsx)(L,{className:`size-3.5 animate-spin`}):(0,X.jsx)(en,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:()=>_(`watchers`),title:`Watchers`,className:`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground`,children:(0,X.jsx)(kn,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:()=>_(`credentials`),title:`Credentials`,className:`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground`,children:(0,X.jsx)(bn,{className:`size-3.5`})})]}),(0,X.jsx)(Sa,{className:`flex-1 min-h-0`,children:(0,X.jsx)(`div`,{className:`p-1.5 space-y-1.5`,children:C?i.length===0&&r.length===0?(0,X.jsx)(xg,{message:`No watchers yet`,action:`Add Watcher`,onAction:()=>_(`watchers`)}):i.length===0?(0,X.jsx)(xg,{message:`No tickets yet. Watchers will pick up new issues.`}):i.map(e=>(0,X.jsx)(tg,{result:e,onDebug:x,onResume:e=>d(e.id),onCancel:e=>f(e.id),onOpenSession:T,onDelete:u,onClick:E},e.id)):(0,X.jsx)(xg,{message:`No Jira credentials configured`,action:`Set up Jira`,onAction:()=>_(`credentials`)})})}),(0,X.jsx)(yg,{result:b,onClose:()=>x(null)})]}):(0,X.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,X.jsxs)(`div`,{className:`shrink-0 px-2 py-2 flex items-center gap-1.5 border-b border-border/50`,children:[(0,X.jsx)(q,{size:`icon`,variant:`ghost`,className:`size-7`,onClick:()=>_(`tickets`),children:(0,X.jsx)(ln,{className:`size-4`})}),(0,X.jsx)(`h2`,{className:`text-sm font-semibold truncate`,children:g===`watchers`?`Watchers`:`Jira Credentials`})]}),(0,X.jsx)(Sa,{className:`flex-1 min-h-0`,children:(0,X.jsx)(`div`,{className:`p-3`,children:g===`watchers`?C?(0,X.jsx)(gg,{configId:C.id}):(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground text-center py-4`,children:`Configure Jira credentials first.`}):S?(0,X.jsx)(vg,{projectId:S.id,existing:C?{baseUrl:C.baseUrl,email:C.email,hasToken:C.hasToken}:null}):(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground text-center py-4`,children:`Project not found in database.`})})})]}):(0,X.jsx)(`div`,{className:`flex items-center justify-center h-32 p-4`,children:(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground text-center`,children:`Select a project to use Jira`})})}function xg({message:e,action:t,onAction:n}){return(0,X.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-12 gap-3`,children:[(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground text-center`,children:e}),t&&n&&(0,X.jsxs)(q,{size:`sm`,variant:`outline`,className:`min-h-[44px]`,onClick:n,children:[(0,X.jsx)(Dt,{className:`size-4 mr-1.5`}),` `,t]})]})}var Sg=`/api/ai-resources`;function Cg(e){return B.get(`${Sg}?project=${encodeURIComponent(e)}`)}function wg(e,t){return B.get(`${Sg}/content?project=${encodeURIComponent(t)}&path=${encodeURIComponent(e)}`)}function Tg(e,t,n){return B.put(`${Sg}/content`,{path:e,content:t,project:n})}function Eg(e,t,n,r){return B.post(Sg,{type:e,scope:t,name:n,project:r})}function Dg(e,t,n,r,i){return B.post(`${Sg}/duplicate`,{path:e,type:t,scope:n,name:r,project:i})}function Og(e,t,n){return B.del(Sg,{path:e,type:t,project:n})}var kg=lr((e,t)=>({project:null,loading:!1,error:null,result:null,load:async n=>{e({project:n,loading:!0,error:null});try{let r=await Cg(n);if(t().project!==n)return;e({result:r,loading:!1})}catch(r){if(t().project!==n)return;e({error:r.message,loading:!1})}},reload:async()=>{let e=t().project;e&&await t().load(e)}}));function Ag(){return B.get(`/api/settings/mcp`)}function jg(e,t){return B.post(`/api/settings/mcp`,{name:e,config:t})}function Mg(e,t){return B.put(`/api/settings/mcp/${encodeURIComponent(e)}`,t)}function Ng(e){return B.del(`/api/settings/mcp/${encodeURIComponent(e)}`)}function Pg(){return B.post(`/api/settings/mcp/import`,{})}function Fg(e){return!e||!/^[a-zA-Z0-9][a-zA-Z0-9_-]*$/.test(e)?`Name must start with a letter/digit, then alphanumeric, hyphens, or underscores`:e.length>50?`Name max 50 chars`:null}function Ig(e){let t=[];if(!e||typeof e!=`object`)return[`Config must be an object`];let n=e,r=n.type??`stdio`;return r===`stdio`?(!n.command||typeof n.command!=`string`)&&t.push(`command is required for stdio`):r===`http`||r===`sse`?((!n.url||typeof n.url!=`string`)&&t.push(`url is required for `+r),n.url&&typeof n.url==`string`&&!/^https?:\/\/.+/.test(n.url)&&t.push(`url must be HTTP(S)`)):t.push(`type must be stdio, http, or sse`),t}var Lg=[`stdio`,`http`,`sse`];function Rg({open:e,onClose:t,editServer:n}){let r=!!n,[i,a]=(0,Y.useState)(``),[o,s]=(0,Y.useState)(`stdio`),[c,l]=(0,Y.useState)(``),[u,d]=(0,Y.useState)(``),[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)([]),[g,_]=(0,Y.useState)(!1),[v,y]=(0,Y.useState)(null);(0,Y.useEffect)(()=>{if(e)if(y(null),_(!1),n){a(n.name),s(n.transport||`stdio`);let e=n.config;`command`in e?(l(e.command||``),d((e.args??[]).join(` `)),h(zg(e.env))):`url`in e&&(p(e.url||``),h(zg(e.headers)))}else a(``),s(`stdio`),l(``),d(``),p(``),h([])},[e,n]);let b=()=>{let e=Bg(m);return o===`stdio`?{type:`stdio`,command:c,...u.trim()&&{args:u.trim().split(/\s+/)},...Object.keys(e).length>0&&{env:e}}:{type:o,url:f,...Object.keys(e).length>0&&{headers:e}}},x=async()=>{if(y(null),!r){let e=Fg(i);if(e){y(e);return}}let e=b(),n=Ig(e);if(n.length){y(n.join(`; `));return}_(!0);try{r?await Mg(i,e):await jg(i,e),t(!0)}catch(e){y(e.message||`Save failed`)}finally{_(!1)}},S=()=>h([...m,{key:``,value:``}]),C=e=>h(m.filter((t,n)=>n!==e)),w=(e,t,n)=>{h(m.map((r,i)=>i===e?{key:t===`key`?n:r.key,value:t===`value`?n:r.value}:r))},T=o===`stdio`,E=T?`Environment Variables`:`Headers`;return(0,X.jsx)(ta,{open:e,onOpenChange:e=>{e||t()},children:(0,X.jsxs)(J,{className:`max-h-[85vh] overflow-y-auto sm:max-w-md`,children:[(0,X.jsxs)(Xi,{children:[(0,X.jsx)(Qi,{className:`text-sm`,children:r?`Edit MCP Server`:`Add MCP Server`}),(0,X.jsx)($i,{className:`text-[11px]`,children:`Configure a Model Context Protocol server connection.`})]}),(0,X.jsxs)(`div`,{className:`space-y-3`,children:[(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Name`}),(0,X.jsx)(xa,{value:i,onChange:e=>a(e.target.value),placeholder:`my-mcp-server`,className:`h-8 text-xs`,disabled:r})]}),(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Transport`}),(0,X.jsx)(`div`,{className:`flex gap-1`,children:Lg.map(e=>(0,X.jsx)(q,{variant:o===e?`default`:`outline`,size:`sm`,className:`flex-1 h-7 text-xs cursor-pointer`,onClick:()=>{s(e),h([]),l(``),d(``),p(``)},children:e},e))})]}),T?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Command *`}),(0,X.jsx)(xa,{value:c,onChange:e=>l(e.target.value),placeholder:`npx`,className:`h-8 text-xs`})]}),(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Arguments (space-separated)`}),(0,X.jsx)(xa,{value:u,onChange:e=>d(e.target.value),placeholder:`@playwright/mcp@latest`,className:`h-8 text-xs`})]})]}):(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`URL *`}),(0,X.jsx)(xa,{value:f,onChange:e=>p(e.target.value),placeholder:`https://mcp.example.com`,className:`h-8 text-xs`})]}),(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:E}),m.map((e,t)=>(0,X.jsxs)(`div`,{className:`flex gap-1 items-center`,children:[(0,X.jsx)(xa,{value:e.key,onChange:e=>w(t,`key`,e.target.value),placeholder:`KEY`,className:`h-7 text-xs flex-1`}),(0,X.jsx)(xa,{value:e.value,onChange:e=>w(t,`value`,e.target.value),placeholder:`value`,className:`h-7 text-xs flex-1`}),(0,X.jsx)(q,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0 cursor-pointer`,onClick:()=>C(t),children:(0,X.jsx)(Be,{className:`size-3`})})]},t)),(0,X.jsxs)(q,{variant:`outline`,size:`sm`,className:`h-7 text-xs gap-1 cursor-pointer`,onClick:S,children:[(0,X.jsx)(Dt,{className:`size-3`}),` Add `,T?`Variable`:`Header`]})]}),v&&(0,X.jsx)(`p`,{className:`text-[11px] text-destructive`,children:v})]}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(q,{variant:`outline`,size:`sm`,className:`h-8 text-xs cursor-pointer`,onClick:()=>t(),children:`Cancel`}),(0,X.jsx)(q,{size:`sm`,className:`h-8 text-xs cursor-pointer`,onClick:x,disabled:g,children:g?`Saving...`:`Save`})]})]})})}function zg(e){return e?Object.entries(e).map(([e,t])=>({key:e,value:t})):[]}function Bg(e){let t={};for(let{key:n,value:r}of e)n.trim()&&(t[n.trim()]=r);return t}var Vg={skill:Ia,agent:Fn,command:Se},Hg={skill:`Skills`,agent:`Agents`,command:`Commands`},Ug={project:`text-primary border-primary/30 bg-primary/10`,user:`text-emerald-400 border-emerald-500/30 bg-emerald-500/10`,bundled:`text-text-subtle border-border bg-surface-elevated`},Wg={project:`Project`,user:`User`,bundled:`Bundled`};function Gg({scope:e,className:t}){return(0,X.jsx)(`span`,{className:U(`shrink-0 rounded border px-1 py-px text-[9px] font-medium uppercase leading-none tracking-wide`,Ug[e],t),children:Wg[e]})}var Kg=(0,Y.memo)(function({item:e,active:t,onOpen:n,onDuplicate:r,onDelete:i}){let a=Vg[e.type];return(0,X.jsxs)(sf,{children:[(0,X.jsx)(cf,{asChild:!0,children:(0,X.jsxs)(`button`,{onClick:()=>n(e),className:U(`group relative flex w-full items-center gap-2 px-2 py-1.5 text-left transition-colors`,t?`bg-accent-wash text-foreground shadow-[inset_2px_0_0_var(--accent)]`:`hover:bg-surface-elevated`,e.shadowed&&`opacity-55`),children:[(0,X.jsx)(a,{className:`size-4 shrink-0 text-text-subtle`,strokeWidth:t?2.3:2}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,X.jsx)(`span`,{className:U(`truncate text-[13px] font-medium`,e.shadowed&&`line-through`),children:e.name}),e.overrides?(0,X.jsx)(`span`,{className:`shrink-0 rounded bg-amber-500/15 px-1 py-px text-[9px] font-medium text-amber-400 leading-none`,children:`overrides`}):null,e.shadowed?(0,X.jsx)(`span`,{className:`shrink-0 text-[9px] text-text-subtle`,children:`shadowed`}):null]}),e.description?(0,X.jsx)(`span`,{className:`block truncate text-[11px] text-text-subtle`,children:e.description}):null]}),(0,X.jsx)(Gg,{scope:e.scope})]})}),(0,X.jsxs)(lf,{className:`w-48`,children:[(0,X.jsx)($,{onClick:()=>n(e),children:e.readOnly?`Open (read-only)`:`Open / Edit`}),(0,X.jsx)($,{onClick:()=>r(e),children:`Duplicate…`}),!e.readOnly&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(uf,{}),(0,X.jsx)($,{variant:`destructive`,onClick:()=>i(e),children:`Delete`})]})]})]})});function qg({open:e,onOpenChange:t,mode:n,source:r,initialType:i,project:a,hasProject:o,onSuccess:s}){let[c,l]=(0,Y.useState)(`skill`),[u,d]=(0,Y.useState)(o?`project`:`user`),[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{e&&(l(n===`duplicate`&&r?r.type:i??`skill`),p(n===`duplicate`&&r?`${r.name}-copy`:``),d(o?`project`:`user`),h(!1))},[e,n,r,i,o]);let g=/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(f);async function _(){if(!(!g||m)){h(!0);try{let e=n===`duplicate`&&r?await Dg(r.filePath,c,u,f,a):await Eg(c,u,f,a);R.success(n===`duplicate`?`Resource duplicated`:`Resource created`),t(!1),s(e.filePath)}catch(e){R.error(e.message),h(!1)}}}return(0,X.jsx)(ta,{open:e,onOpenChange:t,children:(0,X.jsxs)(J,{className:`sm:max-w-md`,children:[(0,X.jsxs)(Xi,{children:[(0,X.jsx)(Qi,{children:n===`duplicate`?`Duplicate resource`:`New resource`}),(0,X.jsx)($i,{children:n===`duplicate`?`Copy this resource into a writable scope under a new name.`:`Create a new skill, agent, or command from a template.`})]}),(0,X.jsxs)(`div`,{className:`space-y-3 py-1`,children:[(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(Tm,{children:`Type`}),(0,X.jsxs)(rg,{value:c,onValueChange:e=>l(e),disabled:n===`duplicate`,children:[(0,X.jsx)(ag,{children:(0,X.jsx)(ig,{})}),(0,X.jsxs)(og,{children:[(0,X.jsx)(sg,{value:`skill`,children:`Skill`}),(0,X.jsx)(sg,{value:`agent`,children:`Agent`}),(0,X.jsx)(sg,{value:`command`,children:`Command`})]})]})]}),(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(Tm,{children:`Scope`}),(0,X.jsxs)(rg,{value:u,onValueChange:e=>d(e),children:[(0,X.jsx)(ag,{children:(0,X.jsx)(ig,{})}),(0,X.jsxs)(og,{children:[(0,X.jsxs)(sg,{value:`project`,disabled:!o,children:[`Project`,o?``:` (no project selected)`]}),(0,X.jsx)(sg,{value:`user`,children:`User (~/.claude)`})]})]})]}),(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(Tm,{children:`Name`}),(0,X.jsx)(xa,{value:f,autoFocus:!0,placeholder:`my-resource`,onChange:e=>p(e.target.value),onKeyDown:e=>{e.key===`Enter`&&_()}}),f&&!g&&(0,X.jsx)(`p`,{className:`text-[11px] text-destructive`,children:`Use letters, numbers, dots, dashes, underscores (no spaces or slashes).`})]})]}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(q,{variant:`ghost`,onClick:()=>t(!1),disabled:m,children:`Cancel`}),(0,X.jsx)(q,{onClick:_,disabled:!g||m,children:m?`Working…`:n===`duplicate`?`Duplicate`:`Create`})]})]})})}function Jg({open:e,kind:t,name:n,folderWarning:r,onCancel:i,onConfirm:a}){return(0,X.jsx)(ta,{open:e,onOpenChange:e=>{e||i()},children:(0,X.jsxs)(J,{className:`sm:max-w-md`,children:[(0,X.jsxs)(Xi,{children:[(0,X.jsxs)(Qi,{children:[`Delete `,t,`?`]}),(0,X.jsxs)($i,{children:[`This permanently deletes `,(0,X.jsx)(`span`,{className:`font-medium text-foreground`,children:n}),r?` and its entire skill folder`:``,`. This cannot be undone.`]})]}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(q,{variant:`ghost`,onClick:i,children:`Cancel`}),(0,X.jsx)(q,{variant:`destructive`,onClick:a,children:`Delete`})]})]})})}function Yg(e,t){let n=K.getState(),r=n.tabs.find(t=>t.type===`ai-resource`&&t.metadata?.filePath===e.filePath);if(r){n.setActiveTab(r.id);return}n.openTab({type:`ai-resource`,title:e.name,projectId:null,closable:!0,metadata:{filePath:e.filePath,name:e.name,resourceType:e.type,scope:e.scope,readOnly:e.readOnly,shadowed:e.shadowed,shadowedBy:e.shadowedBy??null,project:t}})}function Xg(){let[e,t]=(0,Y.useState)([]),[n,r]=(0,Y.useState)(!0),i=(0,Y.useCallback)(async()=>{try{t(await Ag())}catch{}finally{r(!1)}},[]);return(0,Y.useEffect)(()=>{i()},[i]),{servers:e,loading:n,reload:i,remove:(0,Y.useCallback)(async e=>{await Ng(e),await i()},[i])}}function Zg({servers:e,showActions:t,importing:n,onAdd:r,onImport:i,onEdit:a,onDelete:o}){return e.length===0&&!t?null:(0,X.jsxs)(`div`,{className:`pb-1`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1 text-[10px] font-semibold uppercase tracking-wide text-text-subtle`,children:[(0,X.jsx)(`span`,{children:`MCP Servers`}),(0,X.jsx)(`span`,{className:`text-text-subtle/60`,children:e.length})]}),e.map(e=>(0,X.jsxs)(sf,{children:[(0,X.jsx)(cf,{asChild:!0,children:(0,X.jsxs)(`button`,{onClick:()=>a(e),className:`group flex w-full items-center gap-2 px-2 py-1.5 text-left transition-colors hover:bg-surface-elevated`,children:[(0,X.jsx)(xt,{className:`size-4 shrink-0 text-text-subtle`}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`span`,{className:`block truncate text-[13px] font-medium`,children:e.name}),(0,X.jsx)(`span`,{className:`block truncate text-[11px] text-text-subtle`,children:Qg(e)})]}),(0,X.jsx)(`span`,{className:`shrink-0 rounded border border-border bg-surface-elevated px-1 py-px text-[9px] font-medium uppercase leading-none tracking-wide text-text-subtle`,children:e.transport})]})}),(0,X.jsxs)(lf,{className:`w-40`,children:[(0,X.jsx)($,{onClick:()=>a(e),children:`Edit…`}),(0,X.jsx)(uf,{}),(0,X.jsx)($,{variant:`destructive`,onClick:()=>o(e),children:`Delete`})]})]},e.name)),e.length===0&&t&&(0,X.jsx)(`p`,{className:`px-2 py-2 text-[11px] text-text-subtle`,children:`No MCP servers configured.`}),t&&(0,X.jsxs)(`div`,{className:`flex flex-col gap-1 px-2 pt-1.5`,children:[(0,X.jsxs)(`button`,{onClick:r,className:`flex items-center justify-center gap-1.5 rounded-md bg-primary py-1.5 text-[11px] font-medium text-primary-foreground hover:bg-primary/90`,children:[(0,X.jsx)(Dt,{className:`size-3.5`}),` Add MCP server`]}),(0,X.jsxs)(`button`,{onClick:i,disabled:n,className:U(`flex items-center justify-center gap-1.5 rounded-md border border-border py-1.5 text-[11px] text-text-secondary hover:bg-surface-elevated`,n&&`opacity-50`),children:[(0,X.jsx)(An,{className:`size-3.5`}),` `,n?`Importing…`:`Import from Claude Code`]})]})]})}function Qg(e){let t=e.config;if(e.transport===`stdio`||!(`url`in t)){let e=t;return[e.command,...e.args??[]].filter(Boolean).join(` `)}return t.url??``}function $g({onCreate:e,onAddMcp:t,onImportMcp:n}){return(0,X.jsxs)($u,{children:[(0,X.jsx)(td,{asChild:!0,children:(0,X.jsxs)(`button`,{className:`flex items-center gap-1 rounded bg-primary px-2 py-1 text-[11px] font-medium text-primary-foreground hover:bg-primary/90`,children:[(0,X.jsx)(Dt,{className:`size-3`}),` New`]})}),(0,X.jsxs)(nd,{align:`end`,className:`w-44`,children:[(0,X.jsxs)(rd,{onClick:()=>e(`skill`),children:[(0,X.jsx)(Ia,{className:`size-3.5`}),` New Skill`]}),(0,X.jsxs)(rd,{onClick:()=>e(`agent`),children:[(0,X.jsx)(Fn,{className:`size-3.5`}),` New Agent`]}),(0,X.jsxs)(rd,{onClick:()=>e(`command`),children:[(0,X.jsx)(Se,{className:`size-3.5`}),` New Command`]}),(0,X.jsx)(cd,{}),(0,X.jsxs)(rd,{onClick:t,children:[(0,X.jsx)(xt,{className:`size-3.5`}),` New MCP Server`]}),(0,X.jsxs)(rd,{onClick:n,children:[(0,X.jsx)(An,{className:`size-3.5`}),` Import MCP…`]})]})]})}function e_(e,t=!1){let n=new URLSearchParams;e&&n.set(`project`,e),t&&n.set(`fresh`,`1`);let r=n.toString();return B.get(`/api/mcp-auth/status${r?`?${r}`:``}`)}function t_(e,t){return B.post(`/api/mcp-auth/start`,{server:e,project:t,origin:window.location.origin})}function n_(e){return B.get(`/api/mcp-auth/flows/${encodeURIComponent(e)}`)}function r_(e,t){return B.post(`/api/mcp-auth/flows/${encodeURIComponent(e)}/callback`,{url:t})}function i_(e){return B.post(`/api/mcp-auth/flows/${encodeURIComponent(e)}/confirm`,{})}function a_(e){return B.del(`/api/mcp-auth/flows/${encodeURIComponent(e)}`)}var o_=2e3;function s_(e){return e?.status===`waiting`||e?.status===`completing`}function c_(e,t,n){let[r,i]=(0,Y.useState)(null),[a,o]=(0,Y.useState)(!1),[s,c]=(0,Y.useState)(!1),[l,u]=(0,Y.useState)(null),d=(0,Y.useRef)(null),f=(0,Y.useRef)(n);f.current=n;let p=(0,Y.useRef)(null),m=(0,Y.useCallback)(e=>{let t=d.current;t?.id===e.id&&!s_(t)&&s_(e)||(d.current=e,i(e),e.status===`done`&&p.current!==e.id&&(p.current=e.id,V.getState().undismissMcpSignIn(e.serverName),f.current?.(e.serverName)))},[]),h=(0,Y.useRef)(0),g=(0,Y.useCallback)(async()=>{if(!e)return;let n=++h.current;o(!0),u(null),i(null),d.current=null;try{let r=await t_(e,t);if(n!==h.current){s_(r)&&a_(r.id).catch(()=>{});return}m(r)}catch(e){n===h.current&&u(e.message)}finally{n===h.current&&o(!1)}},[e,t,m]);(0,Y.useEffect)(()=>{if(e)return g(),()=>{h.current++;let e=d.current;e&&s_(e)&&a_(e.id).catch(()=>{}),d.current=null}},[e,g]);let _=r?.id,v=s_(r);(0,Y.useEffect)(()=>{if(!_||!v)return;let e=setInterval(()=>{n_(_).then(m).catch(e=>{let t=d.current;t?.id===_&&m({...t,status:`failed`,authUrl:void 0,error:e.message})})},o_);return()=>clearInterval(e)},[_,v,m]);let y=(0,Y.useCallback)(async e=>{let t=d.current;if(t){c(!0),u(null);try{m(await e(t.id))}catch(e){u(e.message)}finally{c(!1)}}},[m]);return{flow:r,starting:a,busy:s,error:l,retry:g,submitCallback:(0,Y.useCallback)(e=>y(t=>r_(t,e)),[y]),confirm:(0,Y.useCallback)(()=>y(i_),[y])}}var l_=`https://claude.ai/settings/connectors`;function u_(e,t){return t===`claudeai`||e.startsWith(`claude.ai `)}function d_({serverName:e,project:t,onClose:n,onSignedIn:r}){let i=hi(),a=e!==null,o=e?`Sign in to ${e}`:`Sign in`,s=e!==null&&u_(e),c=c_(s?null:e,t,r),l=e?s?(0,X.jsx)(p_,{onClose:n}):(0,X.jsx)(f_,{serverName:e,flowState:c,onClose:n},e):null;return i?(0,X.jsx)(la,{open:a,onClose:n,className:`popover-solid`,children:(0,X.jsxs)(`div`,{className:`px-4 pb-4 pt-1`,children:[(0,X.jsx)(`h2`,{className:`mb-3 text-base font-semibold`,children:o}),l]})}):(0,X.jsx)(ta,{open:a,onOpenChange:e=>{e||n()},children:(0,X.jsxs)(J,{className:`sm:max-w-md`,children:[(0,X.jsxs)(Xi,{children:[(0,X.jsx)(Qi,{children:o}),(0,X.jsx)($i,{children:`Grant PPM's Claude sessions access to this MCP server.`})]}),l]})})}function f_({serverName:e,flowState:t,onClose:n}){let{flow:r,starting:i,busy:a,error:o,retry:s,submitCallback:c,confirm:l}=t,[u,d]=(0,Y.useState)(``);if(i||!r&&!o)return(0,X.jsx)(m_,{icon:(0,X.jsx)(L,{className:`size-4 animate-spin`}),text:`Preparing the sign-in…`});if(!r||r.status===`failed`||r.status===`expired`||r.status===`cancelled`)return(0,X.jsxs)(`div`,{className:`space-y-3`,children:[(0,X.jsx)(h_,{text:r?.error??o??`The sign-in did not finish.`}),(0,X.jsxs)(`div`,{className:`flex gap-2`,children:[(0,X.jsx)(q,{className:`h-11 flex-1 md:h-9`,onClick:()=>void s(),children:`Try again`}),(0,X.jsx)(q,{variant:`outline`,className:`h-11 md:h-9`,onClick:n,children:`Close`})]})]});if(r.status===`done`)return(0,X.jsxs)(`div`,{className:`space-y-3`,children:[(0,X.jsx)(m_,{icon:(0,X.jsx)(Oe,{className:`size-4 text-success`}),text:`Signed in. ${e} is available to Claude — open chats reconnect it on their own.`}),(0,X.jsx)(q,{className:`h-11 w-full md:h-9`,onClick:n,children:`Done`})]});let f=r.error??o;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[r.authUrl&&(0,X.jsx)(q,{asChild:!0,className:`h-11 w-full md:h-9`,children:(0,X.jsxs)(`a`,{href:r.authUrl,target:`_blank`,rel:`noopener noreferrer`,children:[(0,X.jsx)(Rt,{className:`size-4`}),` Open sign-in page`]})}),r.callbackExpected?(0,X.jsx)(m_,{icon:(0,X.jsx)(L,{className:`size-4 animate-spin`}),text:r.redirectScheme===`custom`?`Waiting for you to approve access. The page returns to PPM by itself.`:`Waiting for you to approve access in the browser…`}):(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(`p`,{className:`text-sm text-text-secondary`,children:`Grant access on the page that opens, then come back here.`}),(0,X.jsxs)(q,{variant:`outline`,className:`h-11 w-full md:h-9`,disabled:a,onClick:()=>void l(),children:[a?(0,X.jsx)(L,{className:`size-4 animate-spin`}):null,` I've granted access`]})]}),r.callbackExpected&&(0,X.jsxs)(`form`,{className:`space-y-2 rounded-md border border-border p-3`,onSubmit:e=>{e.preventDefault(),u.trim()&&c(u.trim())},children:[(0,X.jsx)(`p`,{className:`text-xs text-text-secondary`,children:r.redirectScheme===`custom`?(0,X.jsx)(X.Fragment,{children:`Did the page not come back to PPM? Copy the address the browser ended on after approving and paste it here.`}):(0,X.jsxs)(X.Fragment,{children:[`Not on the machine running PPM? After approving, the browser lands on a `,(0,X.jsx)(`code`,{children:`localhost`}),` page that does not load. Copy that page's address and paste it here.`]})}),(0,X.jsxs)(`div`,{className:`flex gap-2`,children:[(0,X.jsx)(xa,{value:u,onChange:e=>d(e.target.value),placeholder:r.redirectScheme===`custom`?`https://…/callback?code=…`:`http://localhost:…/callback?code=…`,className:`h-11 flex-1 md:h-9`,autoComplete:`off`,spellCheck:!1}),(0,X.jsx)(q,{type:`submit`,variant:`outline`,className:`h-11 md:h-9`,disabled:a||!u.trim(),children:a?(0,X.jsx)(L,{className:`size-4 animate-spin`}):`Submit`})]})]}),f&&(0,X.jsx)(h_,{text:f})]})}function p_({onClose:e}){return(0,X.jsxs)(`div`,{className:`space-y-3`,children:[(0,X.jsx)(`p`,{className:`text-sm text-text-secondary`,children:`This connector belongs to your claude.ai account. Connect it in claude.ai's connector settings, then start a new chat to use it here.`}),(0,X.jsxs)(`div`,{className:`flex gap-2`,children:[(0,X.jsx)(q,{asChild:!0,className:`h-11 flex-1 md:h-9`,children:(0,X.jsxs)(`a`,{href:l_,target:`_blank`,rel:`noopener noreferrer`,children:[(0,X.jsx)(Rt,{className:`size-4`}),` Open claude.ai connectors`]})}),(0,X.jsx)(q,{variant:`outline`,className:`h-11 md:h-9`,onClick:e,children:`Close`})]})]})}function m_({icon:e,text:t}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-2 text-sm text-text-secondary`,children:[(0,X.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:e}),(0,X.jsx)(`span`,{children:t})]})}function h_({text:e}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-2 text-sm text-error`,children:[(0,X.jsx)(Ze,{className:`mt-0.5 size-4 shrink-0`}),(0,X.jsx)(`span`,{className:`min-w-0 break-words`,children:e})]})}function g_(e){return u_(e.name,e.scope)?`claude.ai connector`:e.source===`plugin`?`Plugin`:e.scope&&e.scope!==`dynamic`?e.scope:null}function __({project:e,search:t=``,showWhenEmpty:n=!1}){let[r,i]=(0,Y.useState)([]),[a,o]=(0,Y.useState)(!0),[s,c]=(0,Y.useState)(null),l=(0,Y.useRef)(0),u=(0,Y.useCallback)(async(t=!1)=>{let n=++l.current;o(!0);try{let r=await e_(e,t);n===l.current&&i(r)}catch{n===l.current&&i([])}finally{n===l.current&&o(!1)}},[e]);(0,Y.useEffect)(()=>{u()},[u]);let d=t.trim().toLowerCase(),f=r.filter(e=>e.status===`needs-auth`&&(!d||e.name.toLowerCase().includes(d)));return(0,X.jsxs)(X.Fragment,{children:[(f.length>0||n)&&(0,X.jsxs)(`div`,{className:`pb-1`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1 text-[10px] font-semibold uppercase tracking-wide text-text-subtle`,children:[(0,X.jsx)(`span`,{children:`Needs sign-in`}),(0,X.jsx)(`span`,{className:`text-text-subtle/60`,children:f.length}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>void u(!0),disabled:a,className:`ml-auto flex size-6 items-center justify-center rounded hover:bg-surface-elevated disabled:opacity-50 max-md:size-9`,"aria-label":`Check again`,title:`Check again`,children:a?(0,X.jsx)(L,{className:`size-3 animate-spin`}):(0,X.jsx)(en,{className:`size-3`})})]}),f.length===0&&(0,X.jsx)(`p`,{className:`px-2 py-1.5 text-[11px] text-text-subtle`,children:a?`Checking MCP servers…`:`No MCP server is waiting for a sign-in.`}),f.map(e=>(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-2 py-1.5`,children:[(0,X.jsx)(kt,{className:`size-4 shrink-0 text-warning`}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`span`,{className:`block truncate text-[13px] font-medium`,children:e.name}),g_(e)&&(0,X.jsx)(`span`,{className:`block truncate text-[11px] text-text-subtle`,children:g_(e)})]}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>c(e.name),className:`shrink-0 rounded-md bg-primary px-2.5 py-1 text-[11px] font-medium text-primary-foreground hover:bg-primary/90 max-md:min-h-9 max-md:px-3`,children:u_(e.name,e.scope)?`Connect`:`Sign in`})]},e.name))]}),(0,X.jsx)(d_,{serverName:s,project:e,onClose:()=>c(null),onSignedIn:()=>void u(!0)})]})}var v_=[{id:`all`,label:`All`},{id:`skill`,label:`Skills`},{id:`agent`,label:`Agents`},{id:`command`,label:`Commands`},{id:`mcp`,label:`MCP`}];function y_(){let e=G(jd(e=>e.activeProject)),t=e?.path??``,{result:n,loading:r,error:i,load:a,reload:o}=kg(jd(e=>({result:e.result,loading:e.loading,error:e.error,load:e.load,reload:e.reload}))),{tabs:s,activeTabId:c}=K(jd(e=>({tabs:e.tabs,activeTabId:e.activeTabId}))),{servers:l,reload:u,remove:d}=Xg(),[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)(`all`),[g,_]=(0,Y.useState)(!1),[v,y]=(0,Y.useState)(`skill`),[b,x]=(0,Y.useState)(null),[S,C]=(0,Y.useState)(null),[w,T]=(0,Y.useState)(!1),[E,D]=(0,Y.useState)(null),[O,k]=(0,Y.useState)(null),[A,ee]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{a(t)},[t,a]);let j=(0,Y.useMemo)(()=>s.find(e=>e.id===c&&e.type===`ai-resource`)?.metadata?.filePath??null,[s,c]),te=m!==`mcp`,M=m===`all`||m===`mcp`,N=(0,Y.useMemo)(()=>{if(!n||!te)return[];let e=f.trim().toLowerCase();return n.groups.filter(e=>m===`all`||e.type===m).map(t=>({...t,items:t.items.filter(t=>!e||t.name.toLowerCase().includes(e)||t.description.toLowerCase().includes(e))})).filter(e=>e.items.length>0)},[n,m,f,te]),P=(0,Y.useMemo)(()=>{if(!M)return[];let e=f.trim().toLowerCase();return e?l.filter(t=>t.name.toLowerCase().includes(e)||Qg(t).toLowerCase().includes(e)):l},[l,f,M]),F=e=>Yg(e,t),ne=async e=>{await o();let n=kg.getState().result?.groups.flatMap(e=>e.items).find(t=>t.filePath===e);n&&Yg(n,t)},re=async()=>{if(S)try{await Og(S.filePath,S.type,t),R.success(`Deleted ${S.name}`),C(null),await o()}catch(e){R.error(e.message)}},ie=e=>{x(null),y(e),_(!0)},ae=()=>{D(null),T(!0)},I=e=>{T(!1),D(null),e&&u()},oe=async()=>{if(O)try{await d(O.name),R.success(`Deleted ${O.name}`),k(null)}catch(e){R.error(e.message)}},se=async()=>{ee(!0);try{let e=await Pg();R.success(`Imported ${e.imported}, skipped ${e.skipped}`),await u()}catch(e){R.error(e.message)}finally{ee(!1)}},ce=n?.stats,le=N.length===0&&(!M||P.length===0)&&m!==`mcp`;return(0,X.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,X.jsxs)(nf,{icon:Ft,title:`AI Resources`,children:[(0,X.jsx)(`button`,{onClick:()=>{o(),u()},title:`Refresh`,className:`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground`,children:(0,X.jsx)(en,{className:U(`size-3.5`,r&&`animate-spin`)})}),(0,X.jsx)($g,{onCreate:ie,onAddMcp:ae,onImportMcp:se})]}),(0,X.jsx)(`div`,{className:`px-2 pt-2 shrink-0`,children:(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsx)(Nn,{className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-text-subtle`}),(0,X.jsx)(`input`,{value:f,onChange:e=>p(e.target.value),placeholder:`Filter resources…`,className:`w-full rounded-md border border-border bg-surface-elevated py-1.5 pl-7 pr-2 text-xs outline-none focus:border-primary/50`})]})}),(0,X.jsx)(`div`,{className:`flex gap-1 px-2 py-2 shrink-0`,children:v_.map(e=>(0,X.jsx)(`button`,{onClick:()=>h(e.id),className:U(`rounded-full border px-2 py-0.5 text-[11px] transition-colors`,m===e.id?`border-primary/40 bg-primary/10 text-primary`:`border-border text-text-subtle hover:bg-surface-elevated`),children:e.label},e.id))}),(0,X.jsxs)(`div`,{className:`flex-1 min-h-0 overflow-y-auto`,children:[M&&(0,X.jsx)(__,{project:e?.name,search:f}),i?(0,X.jsx)(`div`,{className:`p-4 text-center text-xs text-destructive`,children:i}):r&&!n?(0,X.jsx)(`div`,{className:`space-y-1 p-2`,children:Array.from({length:6}).map((e,t)=>(0,X.jsx)(`div`,{className:`h-9 animate-pulse rounded bg-surface-elevated`},t))}):le?(0,X.jsx)(b_,{hasProject:!!e,search:f}):(0,X.jsxs)(X.Fragment,{children:[N.map(e=>(0,X.jsxs)(`div`,{className:`pb-1`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1 text-[10px] font-semibold uppercase tracking-wide text-text-subtle`,children:[(0,X.jsx)(`span`,{children:Hg[e.type]}),(0,X.jsx)(`span`,{className:`text-text-subtle/60`,children:e.items.length})]}),e.items.map(e=>(0,X.jsx)(Kg,{item:e,active:j===e.filePath,onOpen:F,onDuplicate:e=>x(e),onDelete:e=>C(e)},`${e.source}:${e.filePath}`))]},e.type)),M&&(0,X.jsx)(Zg,{servers:P,showActions:m===`mcp`,importing:A,onAdd:ae,onImport:se,onEdit:e=>{D(e),T(!0)},onDelete:e=>k(e)})]})]}),ce&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-t border-border px-2 py-1 text-[10px] text-text-subtle shrink-0`,children:[(0,X.jsxs)(`span`,{children:[ce.active,` active`]}),(0,X.jsx)(`span`,{children:`·`}),(0,X.jsxs)(`span`,{children:[ce.project,` project`]}),(0,X.jsx)(`span`,{children:`·`}),(0,X.jsxs)(`span`,{children:[ce.shadowed,` shadowed`]})]}),(0,X.jsx)(qg,{open:g||!!b,onOpenChange:e=>{e||(_(!1),x(null))},mode:b?`duplicate`:`create`,source:b,initialType:v,project:t,hasProject:!!e,onSuccess:ne}),(0,X.jsx)(Jg,{open:!!S,kind:S?.type??``,name:S?.name??``,folderWarning:S?.type===`skill`,onCancel:()=>C(null),onConfirm:re}),(0,X.jsx)(Rg,{open:w,onClose:I,editServer:E}),(0,X.jsx)(Jg,{open:!!O,kind:`MCP server`,name:O?.name??``,onCancel:()=>k(null),onConfirm:oe})]})}function b_({hasProject:e,search:t}){return t?(0,X.jsxs)(`div`,{className:`p-6 text-center text-xs text-text-subtle`,children:[`No resources match “`,t,`”.`]}):(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-2 p-6 text-center`,children:[(0,X.jsx)(et,{className:`size-6 text-text-subtle`}),(0,X.jsx)(`p`,{className:`text-xs font-medium`,children:e?`No resources yet`:`No project selected`}),(0,X.jsx)(`p`,{className:`text-[11px] text-text-subtle`,children:e?`Create one with the New button above.`:`Project resources appear here once a project is open. User & bundled resources are still shown.`})]})}var x_={list:(e=!1)=>B.get(`/api/tunnels${e?`?force=1`:``}`),start:e=>B.post(`/api/tunnels`,{port:e}),stop:e=>B.del(`/api/tunnels/${e}`)},S_={status:()=>B.get(`/api/tunnel`),setEnabled:e=>B.post(`/api/tunnel/enabled`,{enabled:e})},C_={status:()=>B.get(`/api/tunnel/named/status`),dismiss:()=>B.post(`/api/tunnel/named/dismiss`),zone:()=>B.get(`/api/tunnel/named/zone`),login:(e=!1)=>B.post(`/api/tunnel/named/login${e?`?relogin=1`:``}`),cancelLogin:()=>B.post(`/api/tunnel/named/login/cancel`),setup:e=>B.post(`/api/tunnel/named/setup`,{hostname:e}),disable:()=>B.post(`/api/tunnel/named/disable`)},w_={askDomain:{title:`Do you have a domain on Cloudflare?`,body:`With your own domain, PPM can keep one fixed address that survives restarts. Without one, everything still works through a temporary link.`,yes:`Yes`,no:`Not yet`},noDomain:{title:`No problem`,body:`PPM will keep using a temporary link (quick tunnel). You can turn this on later from Tunnel Manager.`,close:`Close`},login:{title:`Sign in to Cloudflare`,hint:`Open the link below to sign in — a phone works just as well.`,finishOnPhone:`You can finish this step on your phone if that is easier.`,copy:`Copy`,copied:`Copied`,open:`Open link`,waiting:`Waiting for sign-in…`,slowTitle:`Still signing in?`,slowBody:`Cloudflare sometimes takes a few minutes. The process is still running — keep waiting or cancel.`,keepWaiting:`Keep waiting`,cancel:`Cancel`},timeout:{title:`Sign-in link expired`,body:`The link expires after 5 minutes unused. Press Retry to get a fresh one.`,retry:`Retry`},cancelled:{title:`Sign-in cancelled`,body:`You cancelled the Cloudflare sign-in.`,retry:`Retry`},confirmZone:{title:`Confirm your zone`,body:e=>`This machine will get a fixed address under ${e}. Continue?`,confirm:`Continue`,startOver:`Start over`},needsRelogin:{title:`Cloudflare sign-in needed`,certInvalid:`Your Cloudflare sign-in is no longer valid.`,certMismatch:`This certificate belongs to a different Cloudflare account — sign in again.`,action:`Sign in again`},hostname:{title:`Choose the address`,prefixLabel:`Prefix`,suffixHint:`The suffix is fixed by the account you just signed in with.`,submit:`Confirm`},applying:{title:`Setting up…`},done:{title:`All set`,body:e=>`Fixed address: https://${e}`,close:`Close`},pending:{title:`Saved — waiting to apply`,restartHint:"Run `ppm restart` to apply it now.",close:`Close`},error:{title:`Something went wrong`,retry:`Retry`,relogin:`Sign in again`,close:`Close`},section:{title:`Named Tunnel`,modeQuick:`quick`,modeNamed:`named`,hostnameLabel:`Address`,tokenLabel:`Token`,setup:`Set up named tunnel`,retry:`Retry`,relogin:`Sign in again`,disable:`Switch back to quick tunnel`,disableConfirm:`Press again to confirm`,disableSelfCut:`You are viewing PPM through this very domain — turning it off cuts this page immediately and you would never see the temporary link. Open PPM on your local network first, then turn it off.`,certInvalid:`Cloudflare sign-in needed`,certMismatch:`Certificate belongs to a different Cloudflare account — sign in again`,authDisabled:`Enable PPM authentication to use your own domain`,configuredAs:e=>`configured: ${e}`}},T_=/^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$/,E_=253;function D_(e,t){return`${e.trim().toLowerCase()}.${t.trim().toLowerCase()}`}function O_(e,t){let n=e.trim().toLowerCase(),r=t.trim().toLowerCase();if(!n||!r)return{ok:!1,reason:`hostname and zone are required`};if(n.length>E_)return{ok:!1,reason:`hostname exceeds 253 characters`};if(n===r)return{ok:!1,reason:`hostname cannot be the zone apex — a PPM token must never rewrite the zone's own record`};if(n===`www.${r}`)return{ok:!1,reason:`www is reserved`};if(!n.endsWith(`.${r}`))return{ok:!1,reason:`hostname must be a subdomain of ${r} — cloudflared silently mis-routes anything else`};if(n.slice(0,n.length-r.length-1).includes(`.`))return{ok:!1,reason:`hostname must be exactly one label above the zone`};for(let e of n.split(`.`))if(!T_.test(e))return{ok:!1,reason:`invalid DNS label: "${e}"`};return{ok:!0}}function k_(e){return e.authEnabled??!0?e.certState===`invalid`||e.certState===`mismatch`?{k:`needs-relogin`,message:e.certState===`mismatch`?w_.needsRelogin.certMismatch:w_.needsRelogin.certInvalid}:e.mode!==`quick`||e.dismissed?{k:`hidden`}:M_(e.login.state,e.login.url,e.login.message):{k:`hidden`}}var A_=new Set([`hidden`,`ask-domain`,`login-wait`,`login-timeout`,`login-cancelled`,`needs-relogin`,`error`]),j_=new Set([`login-wait`,`needs-relogin`]);function M_(e,t,n){switch(e){case`waiting`:return{k:`login-wait`,url:t,slow:!1};case`slow`:return{k:`login-wait`,url:t,slow:!0};case`timeout`:return{k:`login-timeout`};case`cancelled`:return{k:`login-cancelled`};case`error`:return{k:`error`,message:n??w_.error.title};case`success`:return{k:`login-wait`,url:t,slow:!1};default:return{k:`ask-domain`}}}function N_(e,t){switch(t.type){case`status`:return A_.has(e.k)?k_(e.k===`hidden`?t.status:{...t.status,dismissed:!1}):e;case`answer-yes`:return{k:`login-wait`,url:null,slow:!1};case`answer-no`:return{k:`no-domain`};case`login-url`:return e.k===`login-wait`?{...e,url:t.url}:{k:`login-wait`,url:t.url,slow:!1};case`login-state`:return M_(t.state,e.k===`login-wait`?e.url:null,t.message??null);case`cancel`:return{k:`login-cancelled`};case`retry`:return{k:`login-wait`,url:null,slow:!1};case`zone-loaded`:return j_.has(e.k)?{k:`confirm-zone`,zone:t.zone}:e;case`zone-error`:return j_.has(e.k)?{k:`error`,message:t.message}:e;case`confirm-zone`:return e.k===`confirm-zone`?{k:`choose-hostname`,zone:e.zone,prefix:`ppm`}:e;case`start-over`:return{k:`ask-domain`};case`hostname-prefix`:return e.k===`choose-hostname`?{...e,prefix:t.prefix,error:t.error}:e;case`submit`:return e.k===`choose-hostname`?{k:`applying`,zone:e.zone,prefix:e.prefix,message:w_.applying.title}:e;case`setup-step`:return e.k===`applying`?{...e,message:t.message}:e;case`setup-done`:return{k:`done`,hostname:t.hostname};case`setup-pending`:return{k:`pending`,hostname:t.hostname,message:t.message};case`setup-error`:return e.k===`applying`?{k:`choose-hostname`,zone:e.zone,prefix:e.prefix,error:t.message}:{k:`error`,message:t.message};case`needs-relogin`:return{k:`needs-relogin`,message:t.message};case`close`:return{k:`hidden`};default:return e}}var P_=null;function F_(){return P_}var I_=[`tunnel:login_url`,`tunnel:login_state`,`tunnel:setup_step`,`tunnel:setup_done`,`tunnel:setup_pending`,`tunnel:setup_error`];function L_(e){return e instanceof Error?e.message:w_.error.title}function R_(){let[e,t]=(0,Y.useState)({k:`hidden`}),[n,r]=(0,Y.useState)(null),i=(0,Y.useRef)(!1),a=(0,Y.useRef)(e);a.current=e;let o=(0,Y.useCallback)(e=>{t(t=>N_(t,e))},[]),s=(0,Y.useCallback)(()=>{i.current||(i.current=!0,C_.zone().then(e=>o({type:`zone-loaded`,zone:e.zone})).catch(e=>o({type:`zone-error`,message:L_(e)})).finally(()=>{i.current=!1}))},[o]),c=(0,Y.useCallback)(()=>{j_.has(a.current.k)&&s()},[s]),l=(0,Y.useCallback)(async()=>{try{let e=await C_.status();r(e),e.mode===`named`&&e.hostname&&(P_=e.hostname),o({type:`status`,status:e}),e.mode===`quick`&&e.login.state===`success`&&c()}catch{}},[o,c]);(0,Y.useEffect)(()=>{l()},[l]),(0,Y.useEffect)(()=>{function e(e){let t=e.detail;switch(t.type){case`tunnel:login_url`:o({type:`login-url`,url:t.url});break;case`tunnel:login_state`:{let e=t.state;o({type:`login-state`,state:e,message:t.message??null}),e===`success`&&(c(),l());break}case`tunnel:setup_step`:o({type:`setup-step`,message:t.message});break;case`tunnel:setup_done`:P_=t.hostname,o({type:`setup-done`,hostname:t.hostname}),l();break;case`tunnel:setup_pending`:o({type:`setup-pending`,hostname:t.hostname,message:t.message}),l();break;case`tunnel:setup_error`:o({type:`setup-error`,message:t.message});break}}return I_.forEach(t=>window.addEventListener(t,e)),()=>I_.forEach(t=>window.removeEventListener(t,e))},[o,c,l]);let u=(0,Y.useCallback)(e=>{o({type:`answer-yes`}),C_.login(e).then(e=>{e.url&&o({type:`login-url`,url:e.url}),o({type:`login-state`,state:e.state,message:e.message}),e.state===`success`&&(c(),l())}).catch(e=>o({type:`login-state`,state:`error`,message:L_(e)}))},[o,c,l]),d=(0,Y.useCallback)(()=>u(!1),[u]),f=(0,Y.useCallback)(()=>u(!1),[u]),p=(0,Y.useCallback)(()=>u(!0),[u]),m=(0,Y.useCallback)(()=>{o({type:`answer-no`}),C_.dismiss().catch(()=>{})},[o]),h=(0,Y.useCallback)(()=>{o({type:`cancel`}),C_.cancelLogin().catch(()=>{})},[o]),g=(0,Y.useCallback)(()=>o({type:`confirm-zone`}),[o]),_=(0,Y.useCallback)(()=>o({type:`start-over`}),[o]),v=(0,Y.useCallback)(()=>o({type:`close`}),[o]);return{step:e,status:n,answerYes:d,answerNo:m,cancelLogin:h,retryLogin:f,confirmZone:g,startOver:_,setHostnamePrefix:(0,Y.useCallback)(e=>{let t=a.current;if(t.k!==`choose-hostname`)return;let n=O_(D_(e,t.zone),t.zone);o({type:`hostname-prefix`,prefix:e,error:n.ok?void 0:n.reason})},[o]),submitHostname:(0,Y.useCallback)(()=>{let e=a.current;if(e.k!==`choose-hostname`)return;let t=D_(e.prefix,e.zone),n=O_(t,e.zone);if(!n.ok){o({type:`hostname-prefix`,prefix:e.prefix,error:n.reason});return}o({type:`submit`}),C_.setup(t).then(e=>{P_=e.hostname,e.pending?o({type:`setup-pending`,hostname:e.hostname,message:e.message??w_.pending.title}):o({type:`setup-done`,hostname:e.hostname}),l()}).catch(e=>o({type:`setup-error`,message:L_(e)}))},[o,l]),requestRelogin:p,close:v,refreshStatus:l}}function z_({url:e,slow:t,onCancel:n}){let[r,i]=(0,Y.useState)(!1),[a,o]=(0,Y.useState)(!1),s=w_.login,c=t&&!a;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:s.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:s.hint})]}),e?(0,X.jsxs)(`div`,{className:`flex items-stretch gap-2`,children:[(0,X.jsx)(`div`,{className:`min-w-0 flex-1 flex items-center px-3 py-3 rounded-lg border border-border bg-surface font-mono text-xs text-foreground truncate`,children:e}),(0,X.jsx)(`button`,{type:`button`,onClick:async()=>{await uu(e)&&(i(!0),setTimeout(()=>i(!1),2e3))},"aria-label":s.copy,className:`shrink-0 size-11 flex items-center justify-center rounded-lg border border-border hover:bg-surface-elevated transition-colors`,children:r?(0,X.jsx)(Rn,{className:`size-4 text-success`}):(0,X.jsx)(_n,{className:`size-4`})}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>window.open(e,`_blank`,`noopener`),"aria-label":s.open,className:`shrink-0 size-11 flex items-center justify-center rounded-lg border border-border hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(Rt,{className:`size-4`})})]}):(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-text-secondary`,children:[(0,X.jsx)(L,{className:`size-4 animate-spin`}),s.waiting]}),(0,X.jsx)(`p`,{className:`text-xs text-text-subtle`,children:s.finishOnPhone}),c&&(0,X.jsxs)(`div`,{className:`rounded-lg border border-warning/30 bg-warning/10 p-3 space-y-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(Tn,{className:`size-4 text-warning shrink-0 mt-0.5`}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:s.slowTitle}),(0,X.jsx)(`p`,{className:`text-xs text-text-secondary leading-relaxed mt-0.5`,children:s.slowBody})]})]}),(0,X.jsxs)(`div`,{className:`flex gap-2 pt-1`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:()=>o(!0),className:`flex-1 min-h-11 py-2.5 rounded-md bg-primary text-primary-foreground text-sm font-medium hover:bg-primary/90 transition-colors`,children:s.keepWaiting}),(0,X.jsx)(`button`,{type:`button`,onClick:n,className:`flex-1 min-h-11 py-2.5 rounded-md border border-border text-sm text-text-secondary hover:bg-surface-elevated transition-colors`,children:s.cancel})]})]}),!c&&(0,X.jsx)(`button`,{type:`button`,onClick:n,className:`w-full min-h-11 py-3 rounded-lg border border-border text-sm text-text-secondary hover:bg-surface-elevated transition-colors`,children:s.cancel})]})}function B_({zone:e,prefix:t,error:n,onChange:r}){let i=(0,Y.useRef)(null);return(0,Y.useEffect)(()=>{i.current?.focus()},[]),(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(`label`,{htmlFor:`named-tunnel-prefix`,className:`block text-sm font-medium text-foreground`,children:w_.hostname.prefixLabel}),(0,X.jsxs)(`div`,{className:`flex items-stretch rounded-lg border border-border bg-background focus-within:border-primary/50 transition-colors overflow-hidden`,children:[(0,X.jsx)(`input`,{ref:i,id:`named-tunnel-prefix`,type:`text`,value:t,onChange:e=>r(e.target.value),spellCheck:!1,autoCapitalize:`off`,autoCorrect:`off`,className:`min-w-0 flex-1 px-3 py-3 bg-transparent text-sm text-foreground outline-none`}),(0,X.jsxs)(`span`,{className:`flex items-center px-3 py-3 text-sm text-text-subtle bg-surface-elevated border-l border-border select-none whitespace-nowrap`,children:[`.`,e]})]}),(0,X.jsx)(`p`,{className:`text-xs text-text-subtle`,children:w_.hostname.suffixHint}),n&&(0,X.jsx)(`p`,{className:`text-xs text-destructive`,children:n})]})}var V_=`w-full min-h-11 py-3 rounded-lg bg-primary text-primary-foreground text-sm font-medium hover:bg-primary/90 transition-colors disabled:opacity-50 disabled:pointer-events-none`,H_=`w-full min-h-11 py-3 rounded-lg border border-border text-sm text-text-secondary hover:bg-surface-elevated transition-colors`;function U_({step:e,t}){switch(e.k){case`hidden`:return null;case`ask-domain`:{let e=w_.askDomain;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:e.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.body})]}),(0,X.jsxs)(`div`,{className:`flex gap-2`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:t.answerNo,className:H_,children:e.no}),(0,X.jsx)(`button`,{type:`button`,onClick:t.answerYes,className:V_,children:e.yes})]})]})}case`no-domain`:{let e=w_.noDomain;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:e.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.body})]}),(0,X.jsx)(`button`,{type:`button`,onClick:t.close,className:V_,children:e.close})]})}case`login-wait`:return(0,X.jsx)(z_,{url:e.url,slow:e.slow,onCancel:t.cancelLogin});case`login-timeout`:{let e=w_.timeout;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:e.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.body})]}),(0,X.jsx)(`button`,{type:`button`,onClick:t.retryLogin,className:V_,children:e.retry})]})}case`login-cancelled`:{let e=w_.cancelled;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:e.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.body})]}),(0,X.jsx)(`button`,{type:`button`,onClick:t.retryLogin,className:V_,children:e.retry})]})}case`confirm-zone`:{let n=w_.confirmZone;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:n.body(e.zone)})]}),(0,X.jsxs)(`div`,{className:`flex gap-2`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:t.startOver,className:H_,children:n.startOver}),(0,X.jsx)(`button`,{type:`button`,onClick:t.confirmZone,className:V_,children:n.confirm})]})]})}case`needs-relogin`:{let n=w_.needsRelogin;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.message})]}),(0,X.jsx)(`button`,{type:`button`,onClick:t.requestRelogin,className:V_,children:n.action})]})}case`choose-hostname`:{let n=w_.hostname;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,X.jsx)(B_,{zone:e.zone,prefix:e.prefix,error:e.error,onChange:t.setHostnamePrefix}),(0,X.jsx)(`button`,{type:`button`,onClick:t.submitHostname,disabled:!e.prefix||!!e.error,className:V_,children:n.submit})]})}case`applying`:return(0,X.jsx)(`div`,{className:`space-y-4 py-4`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-foreground`,children:[(0,X.jsx)(L,{className:`size-4 animate-spin text-primary`}),e.message]})});case`done`:{let n=w_.done;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary break-all`,children:n.body(e.hostname)})]}),(0,X.jsx)(`button`,{type:`button`,onClick:t.close,className:V_,children:n.close})]})}case`pending`:{let n=w_.pending;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.message}),(0,X.jsx)(`p`,{className:`mt-2 text-xs font-mono text-text-subtle bg-surface-elevated rounded px-2 py-1.5 inline-block`,children:`ppm restart`})]}),(0,X.jsx)(`button`,{type:`button`,onClick:t.close,className:V_,children:n.close})]})}case`error`:{let n=w_.error;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,X.jsx)(mn,{className:`size-4 text-destructive shrink-0 mt-0.5`}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,X.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.message})]})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:t.close,className:H_,children:n.close}),(0,X.jsx)(`button`,{type:`button`,onClick:t.retryLogin,className:H_,children:n.retry}),(0,X.jsx)(`button`,{type:`button`,onClick:t.requestRelogin,className:V_,children:n.relogin})]})]})}default:return null}}function W_(){let e=R_(),[t,n]=(0,Y.useState)(!1),[r,i]=(0,Y.useState)(!1),[a,o]=(0,Y.useState)(!1),s=w_.section,c=e.status;if(!c)return null;let l=!!c.hostname&&typeof window<`u`&&window.location.hostname===c.hostname,u=e.step.k!==`hidden`&&e.step.k!==`ask-domain`,d=c.authEnabled??!0,f=c.liveMode??c.mode,p=c.certState===`invalid`||c.certState===`mismatch`;async function m(){if(!t){n(!0),setTimeout(()=>n(!1),4e3);return}n(!1),i(!0);try{await C_.disable(),R.success(`Switched back to a quick tunnel`),await e.refreshStatus()}catch(e){R.error(e instanceof Error?e.message:`Could not switch back to a quick tunnel`)}finally{i(!1)}}async function h(e){if(!await uu(`https://${e}`)){R.error(`Failed to copy URL`);return}o(!0),setTimeout(()=>o(!1),2e3)}return(0,X.jsxs)(`div`,{className:`p-3 border-b border-border bg-surface space-y-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`span`,{className:`text-sm font-medium text-text-primary`,children:s.title}),(0,X.jsx)(`span`,{className:`px-1.5 py-0.5 rounded text-[10px] font-medium uppercase tracking-wide ${f===`named`?`bg-success/10 text-success`:`bg-surface-elevated text-text-secondary`}`,children:f===`named`?s.modeNamed:s.modeQuick}),c.mode!==f&&(0,X.jsxs)(`span`,{className:`text-[10px] text-text-subtle`,children:[`(`,s.configuredAs(c.mode),`)`]})]}),c.mode===`named`&&c.hostname&&(0,X.jsxs)(`div`,{className:`flex items-center gap-1 text-xs`,children:[(0,X.jsx)(`a`,{href:`https://${c.hostname}`,target:`_blank`,rel:`noopener noreferrer`,className:`flex-1 min-w-0 truncate text-primary hover:underline`,children:c.hostname}),(0,X.jsx)(`button`,{onClick:()=>h(c.hostname),"aria-label":`Copy URL`,className:`shrink-0 size-11 flex items-center justify-center rounded-md hover:bg-surface-elevated transition-colors`,children:a?(0,X.jsx)(Rn,{className:`size-3.5 text-success`}):(0,X.jsx)(_n,{className:`size-3.5 text-text-secondary`})}),(0,X.jsx)(`a`,{href:`https://${c.hostname}`,target:`_blank`,rel:`noopener noreferrer`,className:`shrink-0 size-11 flex items-center justify-center rounded-md hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(Rt,{className:`size-3.5 text-text-secondary`})})]}),c.tokenMasked&&(0,X.jsxs)(`p`,{className:`text-[10px] font-mono text-text-subtle`,children:[s.tokenLabel,`: `,c.tokenMasked]}),c.tunnelWarning&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md border border-warning/30 bg-warning/10 px-2.5 py-2 text-xs text-foreground`,children:[(0,X.jsx)(Tn,{className:`size-3.5 text-warning shrink-0`}),c.tunnelWarning]}),p&&!u&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md border border-warning/30 bg-warning/10 px-2.5 py-2 text-xs text-foreground`,children:[(0,X.jsx)(Xt,{className:`size-3.5 text-warning shrink-0`}),c.certState===`mismatch`?s.certMismatch:s.certInvalid]}),u?(0,X.jsx)(U_,{step:e.step,t:e}):d?(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[c.mode===`quick`&&(0,X.jsx)(`button`,{onClick:e.answerYes,className:`min-h-11 px-3 py-2 rounded-md bg-primary text-primary-foreground text-xs font-medium hover:bg-primary/90 transition-colors`,children:s.setup}),c.mode===`named`&&(0,X.jsx)(`button`,{onClick:m,disabled:r||l,title:l?s.disableSelfCut:void 0,className:`min-h-11 px-3 py-2 rounded-md text-xs transition-colors disabled:opacity-50 ${t?`bg-destructive/15 text-destructive`:`border border-border text-text-secondary hover:bg-surface-elevated`}`,children:t?s.disableConfirm:s.disable})]}):(0,X.jsx)(`p`,{className:`text-xs text-text-secondary`,children:s.authDisabled}),c.mode===`named`&&l&&(0,X.jsx)(`p`,{className:`text-[11px] text-text-secondary leading-relaxed`,children:s.disableSelfCut})]})}function G_(){let[e,t]=(0,Y.useState)(null),[n,r]=(0,Y.useState)(!1),i=(0,Y.useCallback)(async()=>{try{t(await S_.status())}catch{}},[]);if((0,Y.useEffect)(()=>{i();let e=setInterval(i,1e4);return()=>clearInterval(e)},[i]),!e)return null;let a=e.enabled??!0,o=a&&!e.active;async function s(e){r(!0),t(t=>t&&{...t,enabled:e});try{await S_.setEnabled(e),await i()}catch(n){t(t=>t&&{...t,enabled:!e}),R.error(n instanceof Error?n.message:`Could not change the tunnel setting`)}finally{r(!1)}}return(0,X.jsxs)(`div`,{className:`flex items-center gap-3 p-3 border-b border-border bg-surface`,children:[(0,X.jsx)(je,{className:`size-4 shrink-0 text-text-secondary`}),(0,X.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,X.jsx)(`div`,{className:`text-sm font-medium text-text-primary`,children:`Public tunnel`}),(0,X.jsx)(`p`,{className:`text-xs text-text-secondary leading-relaxed truncate`,children:a?o?`Starting…`:e.url??`On — waiting for a public URL`:`Off — PPM stays reachable on this network only`})]}),(n||o)&&(0,X.jsx)(L,{className:`size-4 shrink-0 animate-spin text-text-subtle`}),(0,X.jsx)(ng,{checked:a,onCheckedChange:s,disabled:n,"aria-label":`Public tunnel`,className:`relative shrink-0 before:absolute before:-inset-3 before:content-['']`})]})}var K_={app:{label:`app`,cls:`bg-primary/10 text-primary`},ppm:{label:`ppm`,cls:`bg-success/10 text-success`},external:{label:`external`,cls:`bg-surface-elevated text-text-secondary`}};function q_(){let[e,t]=(0,Y.useState)([]),[n,r]=(0,Y.useState)(``),[i,a]=(0,Y.useState)(!1),[o,s]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(null),[u,d]=(0,Y.useState)(null),[f,p]=(0,Y.useState)(!1),[m,h]=(0,Y.useState)(!1),g=(0,Y.useCallback)(async(e=!1)=>{e&&h(!0);try{t(await x_.list(e))}catch(e){console.warn(`[tunnels] failed to fetch`,e)}finally{p(!0),e&&h(!1)}},[]);(0,Y.useEffect)(()=>{g();let e=setInterval(()=>g(),1e4);return()=>clearInterval(e)},[g]);let _=async e=>{a(!0),s(null);try{let t=await x_.start(e);window.open(t.url,`_blank`),r(``),await g()}catch(t){s(t.message||`Failed to start tunnel for port ${e}`)}finally{a(!1)}},v=async e=>{if(e.source===`external`&&u!==e.pid){d(e.pid),setTimeout(()=>d(t=>t===e.pid?null:t),4e3);return}d(null);try{await x_.stop(e.pid),await g()}catch(t){R.error(t.message||`Failed to stop tunnel (pid ${e.pid})`)}},y=(e,t)=>{uu(t).then(t=>{if(!t){R.error(`Failed to copy URL`);return}l(e),R.success(`URL copied`),setTimeout(()=>l(null),2e3)})};return(0,X.jsxs)(`div`,{className:`flex flex-col h-full w-full bg-background`,children:[(0,X.jsx)(G_,{}),(0,X.jsx)(W_,{}),(0,X.jsxs)(`div`,{className:`p-3 border-b border-border bg-surface`,children:[(0,X.jsxs)(`form`,{onSubmit:e=>{e.preventDefault();let t=parseInt(n,10);t>=1&&t<=65535?_(t):s(`Port must be 1-65535`)},className:`flex items-center gap-2`,children:[(0,X.jsxs)(`div`,{className:`flex-1 min-w-0 flex items-center gap-1.5 px-2.5 py-2 rounded-lg bg-background border border-border focus-within:border-primary/50 transition-colors`,children:[(0,X.jsx)(`span`,{className:`text-xs text-text-subtle shrink-0`,children:`localhost:`}),(0,X.jsx)(`input`,{type:`number`,value:n,onChange:e=>{r(e.target.value),s(null)},placeholder:`3000`,min:1,max:65535,className:`flex-1 min-w-0 bg-transparent text-sm text-text-primary outline-none placeholder:text-text-subtle [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none`})]}),(0,X.jsx)(`button`,{type:`submit`,disabled:i||!n,className:`px-3 py-2 rounded-lg bg-primary text-primary-foreground text-sm font-medium hover:bg-primary/90 disabled:opacity-50 transition-colors shrink-0 flex items-center justify-center`,children:i?(0,X.jsx)(L,{className:`size-4 animate-spin`}):`Forward`}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>g(!0),disabled:m,title:`Refresh`,"aria-label":`Refresh tunnels`,className:`shrink-0 p-2 rounded-lg hover:bg-surface-elevated transition-colors disabled:opacity-50`,children:(0,X.jsx)(en,{className:`size-4 text-text-secondary ${m?`animate-spin`:``}`})})]}),o&&(0,X.jsx)(`p`,{className:`text-xs text-error mt-2`,children:o})]}),(0,X.jsx)(`div`,{className:`flex-1 overflow-y-auto p-3`,children:f?e.length===0?(0,X.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-center px-2`,children:[(0,X.jsx)(je,{className:`size-8 text-text-subtle`}),(0,X.jsx)(`p`,{className:`text-xs text-text-secondary`,children:`No cloudflared tunnels running. Forward a port, or start one elsewhere and it will appear here.`})]}):(0,X.jsx)(`div`,{className:`space-y-2`,children:e.map(e=>(0,X.jsxs)(`div`,{className:`p-2.5 rounded-lg bg-surface border border-border`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`span`,{className:`shrink-0 font-mono text-sm font-medium text-text-primary`,children:e.port==null?`—`:`:${e.port}`}),(0,X.jsx)(`span`,{className:`shrink-0 px-1.5 py-0.5 rounded text-[10px] font-medium uppercase tracking-wide ${K_[e.source].cls}`,children:K_[e.source].label}),(0,X.jsx)(`div`,{className:`flex-1`}),e.protected?(0,X.jsx)(`div`,{className:`shrink-0 p-1.5`,title:`App tunnel — managed by PPM, not stoppable here`,children:(0,X.jsx)(Gt,{className:`size-4 text-text-subtle`})}):(0,X.jsx)(`button`,{onClick:()=>v(e),className:`shrink-0 h-8 min-w-8 px-1.5 flex items-center justify-center rounded-md transition-colors ${u===e.pid?`bg-error/15`:`hover:bg-error/10`}`,title:u===e.pid?`Click again to confirm stop`:`Stop tunnel`,children:u===e.pid?(0,X.jsx)(`span`,{className:`text-[10px] font-medium text-error`,children:`Sure?`}):(0,X.jsx)(Un,{className:`size-4 text-error`})})]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1 mt-1`,children:[(0,X.jsx)(`span`,{className:`flex-1 min-w-0 truncate text-xs ${e.url?`text-text-secondary`:`text-text-subtle italic`}`,children:e.url??`unknown`}),e.url&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`button`,{onClick:()=>window.open(e.url,`_blank`),className:`shrink-0 p-1.5 rounded-md hover:bg-surface-elevated transition-colors`,title:`Open in browser`,children:(0,X.jsx)(Rt,{className:`size-3.5 text-text-secondary`})}),(0,X.jsx)(`button`,{onClick:()=>y(e.pid,e.url),className:`shrink-0 p-1.5 rounded-md hover:bg-surface-elevated transition-colors`,title:`Copy URL`,children:c===e.pid?(0,X.jsx)(Rn,{className:`size-3.5 text-success`}):(0,X.jsx)(_n,{className:`size-3.5 text-text-secondary`})})]})]}),(0,X.jsxs)(`div`,{className:`mt-1 text-[10px] font-mono text-text-subtle`,children:[`pid `,e.pid]})]},e.pid))}):(0,X.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,X.jsx)(L,{className:`size-6 animate-spin text-primary`})})})]})}function J_({projectName:e,onTagsChanged:t}){let[n,r]=(0,Y.useState)([]),[i,a]=(0,Y.useState)(null),[o,s]=(0,Y.useState)(!0),[c,l]=(0,Y.useState)(null),[u,d]=(0,Y.useState)(``),[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)(``),[g,_]=(0,Y.useState)(`#22c55e`),[v,y]=(0,Y.useState)(!1),b=`${z(e)}/tags`,x=(0,Y.useCallback)(async()=>{try{let e=await B.get(b);r(e.tags),a(e.defaultTagId)}catch{}s(!1)},[b]);(0,Y.useEffect)(()=>{x()},[x]);let S=(0,Y.useCallback)(()=>{Hr.getState().refreshTags(Gr(e))},[e]),C=async()=>{if(m.trim())try{await B.post(b,{name:m.trim(),color:g}),h(``),y(!1),x(),S(),t?.()}catch{}},w=async e=>{try{await B.patch(`${b}/${e}`,{name:u.trim()||void 0,color:f||void 0}),l(null),x(),S(),t?.()}catch{}},T=async(n,r)=>{if(!window.confirm(`Delete tag "${r}"? Sessions with this tag will become untagged.`))return;let i=Gr(e);Hr.getState().onTagDeleted(i,n),await Ir(i,()=>B.del(`${b}/${n}`)),x(),S(),t?.()},E=async e=>{let t=e===i?null:e;try{await B.patch(`${b}/default-tag`,{tagId:t}),a(t),S()}catch{}};return o?(0,X.jsx)(`p`,{className:`text-[11px] text-muted-foreground animate-pulse`,children:`Loading tags...`}):(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,X.jsx)(`h3`,{className:`text-xs font-medium text-muted-foreground`,children:`Session Tags`}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,X.jsx)(`button`,{onClick:async()=>{try{await B.post(`${b}/reset`,{}),x(),S(),t?.()}catch{}},className:`p-1 rounded text-text-subtle hover:text-text-secondary`,title:`Reset to defaults`,children:(0,X.jsx)(Nt,{className:`size-3`})}),(0,X.jsx)(`button`,{onClick:()=>y(!v),className:`p-1 rounded text-primary hover:bg-primary/10`,title:`Add tag`,children:(0,X.jsx)(Dt,{className:`size-3.5`})})]})]}),v&&(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 px-1`,children:[(0,X.jsx)(`input`,{type:`color`,value:g,onChange:e=>_(e.target.value),className:`size-6 rounded cursor-pointer border-0 p-0`}),(0,X.jsx)(`input`,{value:m,onChange:e=>h(e.target.value),onKeyDown:e=>{e.key===`Enter`&&C(),e.key===`Escape`&&y(!1)},placeholder:`Tag name`,className:`flex-1 min-w-0 bg-surface-elevated text-[11px] text-text-primary px-2 py-1 rounded border border-border outline-none focus:border-primary`,autoFocus:!0}),(0,X.jsx)(`button`,{onClick:C,className:`p-1 text-success hover:text-success/80`,children:(0,X.jsx)(Rn,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:()=>y(!1),className:`p-1 text-text-subtle hover:text-text-secondary`,children:(0,X.jsx)(Be,{className:`size-3.5`})})]}),(0,X.jsxs)(`div`,{className:`space-y-0.5`,children:[n.map(e=>(0,X.jsx)(`div`,{className:`flex items-center gap-1.5 px-1 py-1 rounded hover:bg-surface-elevated group`,children:c===e.id?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`input`,{type:`color`,value:f,onChange:e=>p(e.target.value),className:`size-5 rounded cursor-pointer border-0 p-0`}),(0,X.jsx)(`input`,{value:u,onChange:e=>d(e.target.value),onKeyDown:t=>{t.key===`Enter`&&w(e.id),t.key===`Escape`&&l(null)},className:`flex-1 min-w-0 bg-surface-elevated text-[11px] px-1.5 py-0.5 rounded border border-border outline-none focus:border-primary`,autoFocus:!0}),(0,X.jsx)(`button`,{onClick:()=>w(e.id),className:`p-0.5 text-success`,children:(0,X.jsx)(Rn,{className:`size-3`})}),(0,X.jsx)(`button`,{onClick:()=>l(null),className:`p-0.5 text-text-subtle`,children:(0,X.jsx)(Be,{className:`size-3`})})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`size-3 rounded-full shrink-0`,style:{backgroundColor:e.color}}),(0,X.jsx)(`span`,{className:`flex-1 text-[11px] text-text-primary truncate`,children:e.name}),(0,X.jsx)(`button`,{onClick:()=>E(e.id),className:`px-1.5 py-0.5 rounded text-[9px] font-medium transition-colors ${e.id===i?`bg-primary/15 text-primary border border-primary/30`:`text-text-subtle border border-transparent can-hover:opacity-0 can-hover:group-hover:opacity-100 hover:bg-surface-elevated hover:border-border`}`,title:e.id===i?`Default tag (click to unset)`:`Set as default for new sessions`,children:e.id===i?`Default`:`Set default`}),(0,X.jsx)(`button`,{onClick:()=>{l(e.id),d(e.name),p(e.color)},className:`p-0.5 rounded text-text-subtle hover:text-text-secondary can-hover:opacity-0 can-hover:group-hover:opacity-100`,children:(0,X.jsx)(yt,{className:`size-3`})}),(0,X.jsx)(`button`,{onClick:()=>T(e.id,e.name),className:`p-0.5 rounded text-text-subtle hover:text-error can-hover:opacity-0 can-hover:group-hover:opacity-100`,children:(0,X.jsx)(Je,{className:`size-3`})})]})},e.id)),n.length===0&&(0,X.jsx)(`p`,{className:`text-[11px] text-muted-foreground py-2 text-center`,children:`No tags. Click + to create one.`})]})]})}function Y_(e){let t=[],n=/<mark>([\s\S]*?)<\/mark>/g,r=0,i;for(;(i=n.exec(e))!==null;)i.index>r&&t.push({text:e.slice(r,i.index),mark:!1}),t.push({text:i[1]??``,mark:!0}),r=n.lastIndex;return r<e.length&&t.push({text:e.slice(r),mark:!1}),t}function X_({snippet:e,className:t}){return(0,X.jsx)(`span`,{className:t,children:Y_(e).map((e,t)=>e.mark?(0,X.jsx)(`mark`,{className:`bg-warning/30 text-foreground rounded-sm px-0.5`,children:e.text},t):(0,X.jsx)(`span`,{children:e.text},t))})}var Z_=50;function Q_({projectName:e,sessionId:t,onSelectSession:n,enableKeyboardShortcuts:r=!1}){let i=Ur(e),a=i?$n(i):null;(0,Y.useEffect)(()=>{i&&Hr.getState().ensure(i)},[i]);let o=Hr(e=>(a?e.byProject[a]?.sessions:void 0)??zr),s=Hr(e=>(a?e.byProject[a]?.hasMore:void 0)??!1),c=Hr(e=>(a?e.byProject[a]?.isSyncing:void 0)??!1),l=Hr(e=>(a?e.byProject[a]?.tags:void 0)??null),[u,d]=(0,Y.useState)(!1),[f,p]=(0,Y.useState)(``),m=Hs(f,300),[h,g]=(0,Y.useState)(null),[_,v]=(0,Y.useState)(``),[y,b]=(0,Y.useState)(!1),[x,S]=(0,Y.useState)(null),[C,w]=(0,Y.useState)(!1),T=(0,Y.useRef)(null),[E,D]=(0,Y.useState)([]),[O,k]=(0,Y.useState)(null),[A,ee]=(0,Y.useState)(null),j=(0,Y.useRef)(0),te=m?A??[]:o,M=Rr([...te,...E]),N=O??(m?!1:s),P=u||!m&&c;(0,Y.useEffect)(()=>{if(D([]),k(null),!e||!m){ee(null);return}let t=++j.current;d(!0),(async()=>{try{let n=new URLSearchParams({limit:String(Z_),offset:`0`,q:m}),r=await B.get(`${z(e)}/chat/sessions?${n}`);if(t!==j.current)return;ee(r.sessions),k(r.hasMore)}catch{}finally{t===j.current&&d(!1)}})()},[e,m]);let F=(0,Y.useCallback)(async t=>{if(D([]),k(null),e)if(t){d(!0);try{let n=new URLSearchParams({limit:String(Z_),offset:`0`,q:t}),r=await B.get(`${z(e)}/chat/sessions?${n}`);ee(r.sessions),k(r.hasMore)}catch{}finally{d(!1)}}else i&&(ee(null),await Hr.getState().sync(i))},[e,i]),ne=(0,Y.useCallback)(async()=>{if(!(!e||y||!N)){b(!0);try{let t=M.filter(e=>!e.pinned).length,n=new URLSearchParams({limit:String(Z_),offset:String(t)});m&&n.set(`q`,m);let r=await B.get(`${z(e)}/chat/sessions?${n}`);D(e=>{let t=new Set([...te,...e].map(e=>e.id));return[...e,...r.sessions.filter(e=>!t.has(e.id))]}),k(r.hasMore)}catch{}finally{b(!1)}}},[e,y,N,M,m,te]),re=(0,Y.useCallback)(async()=>{i&&await Hr.getState().refreshTags(i)},[i]);function ie(t){n&&!t.designSlug?n(t):Ju(t,e)}let ae=(0,Y.useCallback)((e,t)=>{t.stopPropagation(),g(e.id),v(e.title||``),setTimeout(()=>T.current?.select(),0)},[]),I=(0,Y.useCallback)(async()=>{if(!h||!_.trim()||!e){g(null);return}let t=_.trim(),n=h,r=i??Gr(e);Hr.getState().renameSession(r,n,t),D(e=>Lr(e,n,t)),ee(e=>e&&Lr(e,n,t)),g(null),await Ir(r,()=>B.patch(`${z(e)}/chat/sessions/${n}`,{title:t}))||F(m||void 0)},[h,_,e,i,F,m]),oe=(0,Y.useCallback)(()=>g(null),[]),se=(0,Y.useCallback)(async(t,n)=>{if(t.stopPropagation(),!e)return;let r=`${z(e)}/chat/sessions/${n.id}/pin`,a=!n.pinned,o=i??Gr(e);Hr.getState().setPinned(o,n.id,a),D(e=>Br(e,n.id,a)),ee(e=>e&&Br(e,n.id,a)),await Ir(o,()=>a?B.put(r):B.del(r))||F(m||void 0)},[e,i,F,m]),ce=(0,Y.useCallback)(async(t,n)=>{if(t.stopPropagation(),!e||!window.confirm(`Delete this session? This cannot be undone.`))return;let r=i??Gr(e);Hr.getState().removeSession(r,n.id),D(e=>Wr(e,n.id)),ee(e=>e&&Wr(e,n.id)),await Ir(r,()=>B.del(`${z(e)}/chat/sessions/${n.id}?providerId=${n.providerId}`))||F(m||void 0)},[e,i,F,m]),le=(0,Y.useCallback)((t,n)=>{let r=i??(e?Gr(e):null);r&&Hr.getState().setSessionTag(r,t,n),D(e=>Kr(e,t,n)),ee(e=>e&&Kr(e,t,n)),re()},[re,i,e]),ue=(0,Y.useCallback)(async()=>{if(!e)return;let t=window.prompt(`Delete sessions older than how many days? (pinned sessions are kept)`,`30`);if(!t)return;let n=parseInt(t,10);if(!n||n<1||!window.confirm(`Delete all unpinned sessions older than ${n} days? This cannot be undone.`))return;d(!0);let r=i??Gr(e);Hr.getState().removeOlderThan(r,n),await Ir(r,()=>B.del(`${z(e)}/chat/sessions?olderThanDays=${n}`)),await F(m||void 0),d(!1)},[e,i,F,m]),de=(0,Y.useMemo)(()=>l?.tags??[],[l]);return(0,Y.useEffect)(()=>{if(!r)return;let n=n=>{if(n.target instanceof HTMLInputElement||n.target instanceof HTMLTextAreaElement)return;let r=parseInt(n.key);if(r>=1&&r<=de.length&&t){let n=de[r-1];n&&(le(t,{id:n.id,name:n.name,color:n.color}),Ir(Gr(e),()=>B.patch(`${z(e)}/chat/sessions/${t}/tag`,{tagId:n.id})))}};return window.addEventListener(`keydown`,n),()=>window.removeEventListener(`keydown`,n)},[r,de,t,e,le]),{sessions:M,filteredSessions:x===null?M:M.filter(e=>e.tag?.id===x),loading:P,hasMore:N,loadingMore:y,searchQuery:f,setSearchQuery:p,editingId:h,editingTitle:_,setEditingTitle:v,editInputRef:T,projectTags:de,selectedTagId:x,setSelectedTagId:S,tagCounts:l?.counts??{},showTagSettings:C,setShowTagSettings:w,load:F,loadMore:ne,loadTags:re,openSession:ie,startEditing:ae,saveTitle:I,cancelEditing:oe,togglePin:se,deleteSession:ce,handleTagChanged:le,bulkDelete:ue}}var $_={results:[],indexing:{total:0,indexed:0,running:!1}};function ev(e,t){let n=Hs(t,300),[r,i]=(0,Y.useState)($_),[a,o]=(0,Y.useState)(!1);return(0,Y.useEffect)(()=>{let t=n.trim();if(!t||!e){i($_),o(!1);return}let r=!1;return o(!0),B.get(`${z(e)}/chat/search?q=${encodeURIComponent(t)}`).then(e=>{r||i(e)}).catch(()=>{r||i($_)}).finally(()=>{r||o(!1)}),()=>{r=!0}},[e,n]),{results:r.results,indexing:r.indexing,loading:a,query:n}}function tv({search:e,onOpen:t}){return(0,X.jsxs)(`div`,{children:[e.indexing.running&&(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-3 py-1 text-[10px] text-text-subtle`,children:[(0,X.jsx)(L,{className:`size-2.5 animate-spin`}),` Indexing `,e.indexing.indexed,`/`,e.indexing.total,`…`]}),e.loading&&e.results.length===0?(0,X.jsx)(`div`,{className:`flex items-center justify-center py-3`,children:(0,X.jsx)(L,{className:`size-3.5 animate-spin text-text-subtle`})}):e.results.length===0?(0,X.jsx)(`div`,{className:`flex items-center justify-center py-3 text-[11px] text-text-subtle`,children:e.indexing.running?`No matches yet — indexing…`:`No matches`}):e.results.map(e=>(0,X.jsxs)(`button`,{onClick:()=>t(e),className:`group relative flex w-full items-center gap-2 px-2 py-1.5 text-left hover:bg-surface-elevated transition-colors`,children:[(0,X.jsx)(lc,{providerId:e.providerId}),(0,X.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`span`,{className:`flex items-center gap-1.5`,children:(0,X.jsx)(`span`,{className:`truncate text-[13px] font-medium`,children:e.title||`Untitled`})}),e.matchedIn===`content`&&e.snippet&&(0,X.jsx)(X_,{snippet:e.snippet,className:`block text-[11px] text-text-subtle line-clamp-2`})]})]},e.sessionId))]})}function nv({projectName:e,variant:t,sessionId:n,onSelectSession:r,onNavigate:i,className:a}){let o=Q_({projectName:e,sessionId:n,onSelectSession:r,enableKeyboardShortcuts:t===`bar`}),s=Xs(e=>e.notifications),c=Ur(e),l=t===`sidebar`,u=ev(e,l?o.searchQuery:``),d=l&&o.searchQuery.trim().length>0;function f(t){Ju({id:t.sessionId,providerId:t.providerId,title:t.title??void 0,designSlug:t.designSlug},e),i?.()}function p(e){o.openSession(e),i?.()}return(0,X.jsxs)(`div`,{className:U(l?`flex flex-col h-full min-h-0`:`border-t border-border/30 bg-surface`,a),children:[l&&(0,X.jsx)(nf,{icon:Wn,title:`Chat History`,children:c&&(0,X.jsx)(fc,{project:c})}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-2 shrink-0`,children:[(0,X.jsxs)(`div`,{className:`relative flex-1`,children:[(0,X.jsx)(Nn,{className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-text-subtle`}),(0,X.jsx)(`input`,{type:`text`,value:o.searchQuery,onChange:e=>o.setSearchQuery(e.target.value),placeholder:`Filter sessions…`,className:`w-full rounded-md border border-border bg-surface-elevated py-1.5 pl-7 pr-2 text-xs outline-none focus:border-primary/50`})]}),(0,X.jsx)(`button`,{onClick:o.bulkDelete,className:`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-error`,title:`Delete old sessions...`,children:(0,X.jsx)(xe,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:()=>o.load(o.searchQuery||void 0),disabled:o.loading,className:`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground disabled:opacity-50`,title:`Refresh`,children:(0,X.jsx)(en,{className:U(`size-3.5`,o.loading&&`animate-spin`)})})]}),o.projectTags.length>0&&(0,X.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-2 overflow-x-auto scrollbar-none shrink-0`,children:[(0,X.jsxs)(`button`,{onClick:()=>o.setSelectedTagId(null),className:U(`shrink-0 rounded-full border px-2 py-0.5 text-[11px] transition-colors`,o.selectedTagId===null?`border-primary/40 bg-primary/10 text-primary`:`border-border text-text-subtle hover:bg-surface-elevated`),children:[`All (`,o.sessions.length,`)`]}),o.projectTags.map(e=>(0,X.jsxs)(`button`,{onClick:()=>o.setSelectedTagId(o.selectedTagId===e.id?null:e.id),className:U(`shrink-0 flex items-center gap-1 rounded-full border px-2 py-0.5 text-[11px] transition-colors`,o.selectedTagId===e.id?`border-current`:`border-border text-text-subtle hover:bg-surface-elevated`),style:o.selectedTagId===e.id?{backgroundColor:e.color+`20`,color:e.color,borderColor:e.color}:void 0,children:[(0,X.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:e.color}}),e.name,` (`,o.tagCounts[e.id]??0,`)`]},e.id)),(0,X.jsx)(`button`,{onClick:()=>o.setShowTagSettings(!o.showTagSettings),className:U(`shrink-0 flex size-5 items-center justify-center rounded-full transition-colors`,o.showTagSettings?`text-primary bg-primary/10`:`text-text-subtle hover:bg-surface-elevated`),title:`Manage tags`,children:(0,X.jsx)($e,{className:`size-3`})})]}),o.showTagSettings&&(0,X.jsx)(`div`,{className:`border-b border-border/30 px-2 py-2 max-h-[180px] overflow-y-auto bg-surface-elevated/50 shrink-0`,children:(0,X.jsx)(J_,{projectName:e,onTagsChanged:o.loadTags})}),(0,X.jsx)(`div`,{className:l?`flex-1 overflow-y-auto min-h-0`:`max-h-[200px] overflow-y-auto`,children:d?(0,X.jsx)(tv,{search:u,onOpen:f}):o.loading&&o.sessions.length===0?(0,X.jsx)(`div`,{className:`flex items-center justify-center py-3`,children:(0,X.jsx)(L,{className:`size-3.5 animate-spin text-text-subtle`})}):o.filteredSessions.length===0?(0,X.jsx)(`div`,{className:`flex items-center justify-center py-3 text-[11px] text-text-subtle`,children:o.searchQuery?`No matching sessions`:`No sessions yet`}):(0,X.jsxs)(X.Fragment,{children:[o.filteredSessions.map(t=>{let r=s.get(t.id),i=!!r;return(0,X.jsx)(ec,{session:t,projectName:e,projectTags:o.projectTags,onTogglePin:o.togglePin,onStartEditing:o.startEditing,onDeleteSession:o.deleteSession,onTagChanged:o.handleTagChanged,children:(0,X.jsxs)(`div`,{className:U(`group relative flex w-full items-center gap-2 px-2 py-1.5 text-left transition-colors`,n===t.id?`bg-accent-wash text-foreground shadow-[inset_2px_0_0_var(--accent)]`:`hover:bg-surface-elevated`,i&&Ys(r.type),!i&&n!==t.id&&`text-text-secondary`),children:[(0,X.jsx)(lc,{providerId:t.providerId}),t.tag&&(0,X.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:t.tag.color},title:t.tag.name}),o.editingId===t.id?(0,X.jsxs)(`form`,{className:`flex items-center gap-1 flex-1 min-w-0`,onSubmit:e=>{e.preventDefault(),o.saveTitle()},children:[(0,X.jsx)(`input`,{ref:o.editInputRef,value:o.editingTitle,onChange:e=>o.setEditingTitle(e.target.value),onBlur:o.saveTitle,onKeyDown:e=>{e.key===`Escape`&&o.cancelEditing()},className:`flex-1 min-w-0 bg-surface-elevated text-xs text-text-primary px-1.5 py-0.5 rounded border border-border outline-none focus:border-primary/50`,autoFocus:!0}),(0,X.jsx)(`button`,{type:`submit`,className:`p-0.5 text-success hover:text-success/80`,onClick:e=>e.stopPropagation(),children:(0,X.jsx)(Rn,{className:`size-3`})}),(0,X.jsx)(`button`,{type:`button`,className:`p-0.5 text-text-subtle hover:text-text-secondary`,onClick:e=>{e.stopPropagation(),o.cancelEditing()},children:(0,X.jsx)(Be,{className:`size-3`})})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`min-w-0 flex-1`,children:(0,X.jsxs)(`button`,{onClick:()=>p(t),className:`w-full min-w-0 text-left`,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-1`,children:[t.title?.startsWith(`[PPM]`)&&(0,X.jsx)(Fn,{className:`size-3.5 text-muted-foreground shrink-0`}),(0,X.jsx)(`span`,{className:U(`truncate text-[13px]`,i?`font-semibold`:`font-medium`),children:t.title?.startsWith(`[PPM]`)?t.title.slice(7):t.title||`Untitled`})]}),t.updatedAt&&(0,X.jsx)(`span`,{className:`block text-[11px] text-text-subtle`,children:qr(t.updatedAt)})]})}),(0,X.jsx)(`button`,{onClick:e=>o.togglePin(e,t),className:U(`p-0.5 rounded transition-all`,t.pinned?`text-primary hover:text-primary/70`:`text-text-subtle hover:text-text-secondary can-hover:opacity-0 can-hover:group-hover:opacity-100`),title:t.pinned?`Unpin session`:`Pin session`,children:t.pinned?(0,X.jsx)(ze,{className:`size-3`}):(0,X.jsx)(Cn,{className:`size-3`})}),(0,X.jsxs)(`span`,{className:`flex items-center shrink-0 can-hover:hidden can-hover:group-hover:flex`,children:[(0,X.jsx)(`button`,{onClick:e=>o.startEditing(t,e),className:`p-0.5 rounded text-text-subtle hover:text-text-secondary transition-colors`,title:`Rename session`,children:(0,X.jsx)(yt,{className:`size-3`})}),(0,X.jsx)(`button`,{onClick:e=>o.deleteSession(e,t),className:`p-0.5 rounded text-text-subtle hover:text-error hover:bg-error/20 transition-colors`,title:`Delete session`,children:(0,X.jsx)(Je,{className:`size-3`})})]})]})]})},t.id)}),o.hasMore&&(0,X.jsxs)(`button`,{onClick:o.loadMore,disabled:o.loadingMore,className:`flex items-center justify-center gap-1 w-full py-1.5 text-[11px] text-text-subtle hover:text-text-secondary hover:bg-surface-elevated transition-colors`,children:[o.loadingMore?(0,X.jsx)(L,{className:`size-3 animate-spin`}):null,o.loadingMore?`Loading...`:`Load more`]})]})})]})}var rv={teams:`beta`,"os-explorer":`new`,"remote-desktop":`beta`,designs:`new`};function iv(e){return e?rv[e]:void 0}function av({id:e,variant:t=`inline`,className:n}){let r=iv(e);if(!r)return null;let i=r===`new`?`bg-success/15 text-success`:`bg-accent-wash text-primary`;return(0,X.jsx)(`span`,{"aria-label":r,className:U(`rounded-full font-bold uppercase tracking-wide`,t===`corner`?`absolute -top-0.5 -right-0.5 px-1 text-[7px] leading-[1.4] shadow-sm`:`px-1.5 py-px text-[9px] font-semibold leading-[1.4]`,i,n),children:r})}var ov=`/api/group-chat`;function sv(e){return B.get(`${ov}?projectPath=${encodeURIComponent(e)}`)}function cv(e){return B.get(`${ov}/${encodeURIComponent(e)}`)}function lv(e){return B.post(ov,e)}function uv(e,t){return B.patch(`${ov}/${encodeURIComponent(e)}`,t)}function dv(e,t){let n=new URLSearchParams;t?.limit!=null&&n.set(`limit`,String(t.limit)),t?.sinceTurn!=null&&n.set(`sinceTurn`,String(t.sinceTurn));let r=n.toString();return B.get(`${ov}/${encodeURIComponent(e)}/feed${r?`?${r}`:``}`)}function fv(e,t){return B.post(`${ov}/${encodeURIComponent(e)}/message`,{content:t})}function pv(e){return B.post(`${ov}/${encodeURIComponent(e)}/stop`)}function mv(e){return B.post(`${ov}/${encodeURIComponent(e)}/resume`)}function hv(e){return B.del(`${ov}/${encodeURIComponent(e)}`)}function gv(e,t){return B.post(`${ov}/${encodeURIComponent(e)}/members`,t)}function _v(e,t,n){return B.patch(`${ov}/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}`,n)}function vv(e,t){return B.del(`${ov}/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}`)}function yv(e,t){return B.get(`${ov}/${encodeURIComponent(e)}/transcript?sessionRef=${encodeURIComponent(t)}`)}function bv(e){return e.replace(/^Claude\s+/i,``)}function xv({value:e,onChange:t,projectName:n,providerId:r,disabled:i}){let[a,o]=(0,Y.useState)([]),[s,c]=(0,Y.useState)(!1),l=(0,Y.useRef)(null),u=(0,Y.useRef)(0);(0,Y.useEffect)(()=>{!n||!r||B.get(`${z(n)}/chat/providers/${r}/models`).then(o).catch(()=>{})},[n,r]),(0,Y.useEffect)(()=>{i&&c(!1)},[i]),(0,Y.useEffect)(()=>{if(!s)return;let e=e=>{l.current&&!l.current.contains(e.target)&&c(!1)},t=l.current?.ownerDocument??document;return t.addEventListener(`mousedown`,e),()=>t.removeEventListener(`mousedown`,e)},[s]),(0,Y.useEffect)(()=>{s&&(u.current=Math.max(0,a.findIndex(t=>t.value===e)))},[s,e,a]);let d=(0,Y.useCallback)(e=>{if(e.key===`Escape`){c(!1);return}if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault();let t=e.key===`ArrowDown`?1:-1;u.current=(u.current+t+a.length)%a.length,(l.current?.querySelector(`[data-idx="${u.current}"]`))?.focus()}if(e.key===`Enter`){e.preventDefault();let n=a[u.current];n&&(t(n.value),c(!1))}},[t,a]);if(a.length<=1)return null;let f=a.find(t=>t.value===e),p=f?bv(f.label):e??`Model`;return(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsxs)(`button`,{type:`button`,disabled:i,onClick:e=>{e.stopPropagation(),i||c(e=>!e)},className:`inline-flex items-center gap-1.5 px-[9px] py-1 rounded-full text-[11.5px] text-primary bg-accent-wash border border-accent-wash-border hover:brightness-110 transition-[filter] disabled:opacity-50 disabled:cursor-default`,"aria-label":`Model: ${f?.label??e??`default`}`,title:i?`Model can't change while running`:f?.label??void 0,children:[(0,X.jsx)(Ft,{className:`h-3.5 w-3.5 shrink-0`}),(0,X.jsx)(`span`,{className:`max-w-[90px] truncate`,children:p})]}),s&&!i&&(0,X.jsxs)(`div`,{ref:l,role:`listbox`,"aria-label":`Models`,onKeyDown:d,onMouseDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),className:`absolute bottom-full left-0 mb-1 z-50 w-56 rounded-lg border border-border popover-solid shadow-[var(--shadow-panel)]`,children:[(0,X.jsx)(`div`,{className:`px-3 py-2 border-b border-border`,children:(0,X.jsx)(`span`,{className:`text-xs font-medium text-text-secondary`,children:`Model`})}),(0,X.jsx)(`div`,{className:`py-1`,children:a.map((n,r)=>{let i=n.value===e;return(0,X.jsxs)(`button`,{"data-idx":r,role:`option`,"aria-selected":i,tabIndex:0,onClick:()=>{t(n.value),c(!1)},className:`w-full flex items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-surface-elevated focus:bg-surface-elevated focus:outline-none ${i?`bg-surface-elevated`:``}`,children:[(0,X.jsx)(`span`,{className:`flex-1 text-sm font-medium text-text-primary`,children:n.label}),i&&(0,X.jsx)(Rn,{className:`size-4 shrink-0 text-primary`})]},n.value)})})]})]})}var Sv=[`#6366f1`,`#ec4899`,`#14b8a6`,`#f59e0b`,`#8b5cf6`,`#ef4444`];function Cv(){return{key:ur(),name:``,persona:``,model:null}}function wv({open:e,onClose:t,projectName:n,projectPath:r,providerId:i=`claude`,onCreated:a}){let o=hi(),[s,c]=(0,Y.useState)(``),[l,u]=(0,Y.useState)(10),[d,f]=(0,Y.useState)(`Leader`),[p,m]=(0,Y.useState)(``),[h,g]=(0,Y.useState)(null),[_,v]=(0,Y.useState)([Cv()]),[y,b]=(0,Y.useState)(!1),[x,S]=(0,Y.useState)(null),C=(0,Y.useCallback)(()=>{c(``),u(10),f(`Leader`),m(``),g(null),v([Cv()]),S(null),b(!1)},[]),w=(0,Y.useCallback)(()=>{C(),t()},[C,t]),T=(e,t)=>v(n=>n.map(n=>n.key===e?{...n,...t}:n)),E=(0,Y.useCallback)(async()=>{let e=s.trim();if(!e){S(`Group name is required`);return}if(!d.trim()){S(`Leader name is required`);return}let t=_.filter(e=>e.name.trim());if(t.length===0){S(`Add at least one member`);return}let i=[{role:`leader`,name:d.trim(),persona:p.trim()||null,model:h,color:Sv[0]},...t.map((e,t)=>({role:`member`,name:e.name.trim(),persona:e.persona.trim()||null,model:e.model,color:Sv[(t+1)%Sv.length]}))];b(!0),S(null);try{a(await lv({projectName:n,projectPath:r,name:e,maxTurns:l,members:i})),w()}catch(e){S(e instanceof Error?e.message:`Failed to create group`),b(!1)}},[s,l,d,p,h,_,n,r,a,w]),D=`w-full min-h-[40px] rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder:text-text-subtle focus:outline-none focus:ring-1 focus:ring-primary`,O=(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-y-auto px-1 py-1`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`mb-1 block text-xs font-medium text-text-secondary`,children:`Group name`}),(0,X.jsx)(`input`,{className:D,value:s,onChange:e=>c(e.target.value),placeholder:`e.g. Design Review`,autoFocus:!0})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`mb-1 block text-xs font-medium text-text-secondary`,children:`Reply cap (max AI turns per message, 1–50)`}),(0,X.jsx)(`input`,{type:`number`,min:1,max:50,className:D,value:l,onChange:e=>u(Math.max(1,Math.min(50,Number(e.target.value)||1)))})]}),(0,X.jsxs)(`div`,{className:`rounded-lg border border-border p-3`,children:[(0,X.jsx)(`p`,{className:`mb-2 text-xs font-semibold uppercase tracking-wide text-primary`,children:`Leader`}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,X.jsx)(`input`,{className:D,value:d,onChange:e=>f(e.target.value),placeholder:`Leader name`}),(0,X.jsx)(`input`,{className:D,value:p,onChange:e=>m(e.target.value),placeholder:`Persona (optional)`}),(0,X.jsx)(xv,{value:h,onChange:g,projectName:n,providerId:i})]})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,X.jsx)(`p`,{className:`text-xs font-semibold uppercase tracking-wide text-text-secondary`,children:`Members`}),(0,X.jsxs)(`button`,{type:`button`,onClick:()=>v(e=>[...e,Cv()]),className:`inline-flex min-h-[32px] items-center gap-1 text-xs font-medium text-primary hover:underline`,children:[(0,X.jsx)(Dt,{className:`size-3.5`}),` Add`]})]}),(0,X.jsx)(`div`,{className:`flex flex-col gap-3`,children:_.map((e,t)=>(0,X.jsxs)(`div`,{className:`rounded-lg border border-border p-3`,children:[(0,X.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,X.jsxs)(`span`,{className:`text-[11px] text-text-subtle`,children:[`Member `,t+1]}),_.length>1&&(0,X.jsx)(`button`,{type:`button`,onClick:()=>v(t=>t.filter(t=>t.key!==e.key)),className:`flex size-8 items-center justify-center rounded-md text-text-subtle hover:bg-surface-elevated hover:text-destructive`,"aria-label":`Remove member`,children:(0,X.jsx)(Je,{className:`size-4`})})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,X.jsx)(`input`,{className:D,value:e.name,onChange:t=>T(e.key,{name:t.target.value}),placeholder:`Member name`}),(0,X.jsx)(`input`,{className:D,value:e.persona,onChange:t=>T(e.key,{persona:t.target.value}),placeholder:`Persona (optional)`}),(0,X.jsx)(xv,{value:e.model,onChange:t=>T(e.key,{model:t}),projectName:n,providerId:i})]})]},e.key))})]}),x&&(0,X.jsx)(`p`,{className:`text-xs text-destructive`,children:x}),(0,X.jsxs)(`div`,{className:`flex justify-end gap-2 pt-1`,children:[(0,X.jsx)(q,{variant:`outline`,onClick:w,disabled:y,children:`Cancel`}),(0,X.jsxs)(q,{onClick:E,disabled:y,children:[y&&(0,X.jsx)(L,{className:`mr-1.5 size-4 animate-spin`}),`Create group`]})]})]});return e?o?(0,X.jsx)(la,{open:!0,onClose:w,className:`flex max-h-[90vh] flex-col`,children:(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-col px-4 pb-2`,children:[(0,X.jsx)(`h2`,{className:`mb-2 text-base font-semibold text-foreground`,children:`New group`}),O]})}):(0,X.jsx)(ta,{open:!0,onOpenChange:e=>{e||w()},children:(0,X.jsxs)(J,{className:`flex max-h-[85vh] flex-col sm:max-w-lg`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:`New group`})}),O]})}):null}function Tv(){let{activeProject:e}=G(jd(e=>({activeProject:e.activeProject}))),t=W(e=>e.openTab),[n,r]=(0,Y.useState)([]),[i,a]=(0,Y.useState)(!1),[o,s]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(!1),u=e?.path??null,d=e?.name??``,f=(0,Y.useCallback)(()=>{if(!u){r([]);return}a(!0),sv(u).then(r).catch(e=>s(e instanceof Error?e.message:`Failed to load groups`)).finally(()=>a(!1))},[u]);(0,Y.useEffect)(()=>{f()},[f]);let p=(0,Y.useCallback)(e=>{t({type:`group`,title:e.name,projectId:d,closable:!0,metadata:{groupId:e.id,projectName:d}})},[t,d]),m=(0,Y.useCallback)(async e=>{try{await hv(e.id),r(t=>t.filter(t=>t.id!==e.id))}catch(e){s(e instanceof Error?e.message:`Failed to delete group`)}},[]);return e?(0,X.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,X.jsxs)(`div`,{className:`flex h-9 shrink-0 items-center justify-between border-b border-border px-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,X.jsx)(`span`,{className:`text-xs font-semibold uppercase tracking-wide text-text-secondary`,children:`Teams`}),(0,X.jsx)(av,{id:`teams`})]}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>l(!0),className:`flex size-11 items-center justify-center rounded-md text-text-subtle hover:bg-surface-elevated hover:text-foreground md:size-7`,"aria-label":`New group`,children:(0,X.jsx)(Dt,{className:`size-4`})})]}),(0,X.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-1`,children:i?(0,X.jsx)(`div`,{className:`flex items-center justify-center py-6`,children:(0,X.jsx)(L,{className:`size-4 animate-spin text-primary`})}):o?(0,X.jsx)(`p`,{className:`px-2 py-3 text-xs text-destructive`,children:o}):n.length===0?(0,X.jsx)(`p`,{className:`px-2 py-3 text-xs text-text-subtle`,children:`No groups yet. Create one to start.`}):n.map(e=>(0,X.jsxs)(sf,{children:[(0,X.jsx)(cf,{asChild:!0,children:(0,X.jsxs)(`button`,{type:`button`,onClick:()=>p(e),className:`flex w-full min-h-[40px] items-center gap-2 rounded-md px-2 py-2 text-left text-sm text-text-secondary hover:bg-surface-elevated hover:text-foreground`,children:[(0,X.jsx)(gt,{className:`size-4 shrink-0 text-text-subtle`}),(0,X.jsx)(`span`,{className:`truncate`,children:e.name})]})}),(0,X.jsx)(lf,{children:(0,X.jsxs)($,{variant:`destructive`,onClick:()=>m(e),children:[(0,X.jsx)(Je,{className:`size-4`}),` Delete group`]})})]},e.id))}),(0,X.jsx)(wv,{open:c,onClose:()=>l(!1),projectName:d,projectPath:u??``,onCreated:e=>{r(t=>[e,...t]),p(e)}})]}):(0,X.jsx)(`div`,{className:`flex items-center justify-center h-24 p-4`,children:(0,X.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Select a project to view groups`})})}var Ev=[{mode:`recent`,label:`Recent`,Icon:Re},{mode:`priority`,label:`Priority`,Icon:It},{mode:`name`,label:`Name`,Icon:vn}];function Dv(e,t,n){return n===`recent`?Pr(e):n===`name`?[...e].sort((e,t)=>e.name.localeCompare(t.name)):Nr(e,t)}var Ov=/^[a-z0-9][a-z0-9-]{0,62}$/,kv=new Set([`systems`]);function Av(e){return typeof e==`string`&&Ov.test(e)&&!kv.has(e)}var jv=[`terminal`,`chat`,`editor`,`database`,`sqlite`,`postgres`,`git-diff`,`settings`,`extension`,`group`,`design`];function Mv(e){try{return decodeURIComponent(e)}catch{return e}}function Nv(){let e=window.location.pathname,t=new URLSearchParams(window.location.search).get(`openChat`),n=e.match(/^\/project\/([^/]+)(?:\/([^/]+)(\/.*)?)?/);if(!n)return{projectName:null,tabType:null,tabIdentifier:null,openChat:t};let r=Mv(n[1]),i=n[2]??null,a=n[3]?n[3].slice(1):null;return i===`tab`?{projectName:r,tabType:null,tabIdentifier:null,openChat:t}:{projectName:r,tabType:jv.includes(i)?i:null,tabIdentifier:a,openChat:t}}function Pv(e,t){if(!e||e===`__global__`)return`/`;let n=`/project/${encodeURIComponent(e)}`;if(!t)return n;let r=t.indexOf(`@`),i=r===-1?t:t.slice(0,r),a=i.indexOf(`:`);if(a===-1)n+=`/${i}`;else{let e=i.slice(0,a),t=i.slice(a+1);n+=`/${e}/${t.replace(/[?#]/g,encodeURIComponent)}`}return n}function Fv(e,t){return t?`${e}:${t}`:e}function Iv(e,t,n){switch(e){case`editor`:return t?{filePath:t,projectName:n}:null;case`chat`:{if(!t)return null;let e=t.indexOf(`/`),r=e===-1?t:t.slice(e+1),i=e===-1?void 0:t.slice(0,e),a=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(r)?r:void 0;return{...a&&{sessionId:a},...i&&{providerId:i},projectName:n}}case`terminal`:return{terminalIndex:parseInt(t??`1`,10),projectName:n};case`git-diff`:return t?{filePath:t,projectName:n}:null;case`settings`:return{};case`database`:{let[e,n]=(t??``).split(`:`);return e?{connectionId:e,tableName:n??``}:null}case`sqlite`:return t?{filePath:t,projectName:n}:null;case`postgres`:{let[e,n]=(t??``).split(`:`);return e?{connectionId:e,tableName:n??``}:null}case`extension`:return t?{viewType:t,projectName:n}:null;case`group`:return t?{groupId:t,projectName:n}:null;case`design`:return Av(t)?Gu({projectName:n,designSlug:t}):null;default:return null}}function Lv(e,t){switch(e){case`editor`:return t?.split(`/`).pop()??`File`;case`chat`:return`Chat`;case`terminal`:return`Terminal ${t??`1`}`;case`git-diff`:return t?.split(`/`).pop()??`Diff`;case`settings`:return`Settings`;case`database`:return t??`Database`;case`sqlite`:return t?.split(`/`).pop()??`SQLite`;case`postgres`:return t??`PostgreSQL`;case`extension`:return t?t.split(`-`).map(e=>(e[0]?.toUpperCase()??``)+e.slice(1)).join(` `):`Extension`;case`group`:return`Group`;case`design`:return`Design`;default:return e}}function Rv(){if(gi()||Mr.getState().restored){pl();return}let e=Mr.subscribe(t=>{t.restored&&(e(),pl())})}function zv(e,t,n){if(e===`settings`){Rv();return}let{tabs:r,setActiveTab:i,openTab:a}=K.getState(),o=Fv(e,t),s=r.find(e=>e.id===o);if(s){i(s.id);return}let c=Iv(e,t,n);c&&a({type:e,title:Lv(e,t),projectId:n,closable:!0,metadata:c})}function Bv(){let e=K(e=>e.activeTabId),t=K(e=>e.currentProject),n=(0,Y.useRef)(!1);(0,Y.useEffect)(()=>{if(n.current){n.current=!1;return}let r=Pv(t,e);window.location.pathname!==r&&window.history.pushState(null,``,r)},[e,t]),(0,Y.useEffect)(()=>{function e(){let{tabType:e,tabIdentifier:t}=Nv();if(!e)return;n.current=!0;let{tabs:r,setActiveTab:i}=K.getState(),a=Fv(e,t),o=r.find(e=>e.id===a);if(o)i(o.id);else{let n=K.getState().currentProject;n&&zv(e,t,n)}}return window.addEventListener(`popstate`,e),()=>window.removeEventListener(`popstate`,e)},[])}var Vv=[`linear-gradient(135deg, #667eea, #764ba2)`,`linear-gradient(135deg, #f5576c, #f093fb)`,`linear-gradient(135deg, #4facfe, #00c6ff)`,`linear-gradient(135deg, #43e97b, #38f9d7)`,`linear-gradient(135deg, #fa709a, #fee140)`,`linear-gradient(135deg, #a18cd1, #6a3de8)`,`linear-gradient(135deg, #fd7043, #ff8a65)`,`linear-gradient(135deg, #26c6da, #0097a7)`,`linear-gradient(135deg, #ab47bc, #7b1fa2)`,`linear-gradient(135deg, #ef5350, #b71c1c)`,`linear-gradient(135deg, #1976d2, #42a5f5)`,`linear-gradient(135deg, #2e7d32, #66bb6a)`];function Hv(e,t){return e??Vv[t%Vv.length]}function Uv(e,t){let n=e.split(/[-_.\s]+/).filter(Boolean),r=(n[0]?.[0]??e[0]??`?`).toUpperCase(),i=n.length>1?r+(n[1][0]??``).toUpperCase():r,a=t.filter(t=>t!==e);if(!a.map(e=>(e.split(/[-_.\s]+/).filter(Boolean)[0]?.[0]??e[0]??``).toUpperCase()).includes(r))return r;if(!a.map(e=>{let t=e.split(/[-_.\s]+/).filter(Boolean),n=(t[0]?.[0]??e[0]??``).toUpperCase(),r=t.length>1?(t[1][0]??``).toUpperCase():n;return t.length>1?n+r:n}).includes(i))return i;let o=t.indexOf(e);return String(o>=0?o+1:`?`)}var Wv=(0,Y.memo)(function({name:e,color:t,image:n,size:r,allNames:i,shape:a=`circle`}){let[o,s]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{s(!1)},[n]);let c=a===`square`?`rounded-[7px]`:`rounded-full`;if(n&&!o){let t=er(),i=new URLSearchParams({v:n});return t&&i.set(`token`,t),(0,X.jsx)(`img`,{src:`/api/projects/${encodeURIComponent(e)}/image?${i.toString()}`,alt:e,onError:()=>s(!0),className:U(`object-cover shrink-0 select-none`,c),style:{width:r,height:r}})}return(0,X.jsx)(`div`,{className:U(`flex items-center justify-center font-bold text-white select-none shrink-0`,c),style:{background:t,width:r,height:r,fontSize:r<=24?10:11},children:Uv(e,i)})});function Gv({onSuccess:e,onCancel:t,footerClassName:n}){let{addProject:r}=G(jd(e=>({addProject:e.addProject}))),[i,a]=(0,Y.useState)(`local`),[o,s]=(0,Y.useState)(``),[c,l]=(0,Y.useState)(``),[u,d]=(0,Y.useState)([]),[f,p]=(0,Y.useState)(!1),[m,h]=(0,Y.useState)(!1),[g,_]=(0,Y.useState)(!1),[v,y]=(0,Y.useState)(``),[b,x]=(0,Y.useState)(`~/Projects`),[S,C]=(0,Y.useState)(``),[w,T]=(0,Y.useState)(!1),[E,D]=(0,Y.useState)(``),O=(0,Y.useRef)(null),k=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{B.get(`/api/projects/last-clone-dir`).then(e=>{e?.dir&&x(e.dir)}).catch(()=>{})},[]),(0,Y.useEffect)(()=>{if(!v.trim()){C(``);return}let e=v.match(/[/:]([^/:]+?)(?:\.git)?\s*$/);e?.[1]&&C(e[1])},[v]),(0,Y.useEffect)(()=>{if(O.current&&clearTimeout(O.current),!o.trim()){d([]),p(!1);return}O.current=setTimeout(async()=>{h(!0);try{d(await B.get(`/api/projects/suggest-dirs?q=${encodeURIComponent(o)}`)??[]),p(!0)}catch{d([])}finally{h(!1)}},250)},[o]),(0,Y.useEffect)(()=>{function e(e){k.current&&!k.current.contains(e.target)&&p(!1)}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[]);function A(e){s(e.path),c||l(e.name),p(!1)}async function ee(t){if(t?.preventDefault(),!o.trim()){D(`Path is required`);return}D(``),_(!0);try{await r(o.trim(),c.trim()||void 0),e()}catch(e){D(e instanceof Error?e.message:`Failed to add project`)}finally{_(!1)}}async function j(t){if(t?.preventDefault(),!v.trim()){D(`Git URL is required`);return}if(!b.trim()){D(`Clone directory is required`);return}D(``),T(!0);try{let t=await B.post(`/api/projects/git/clone`,{url:v.trim(),targetDir:b.trim(),name:S.trim()||void 0}),{fetchProjects:n,setActiveProject:r}=G.getState();await n();let i=G.getState().projects.find(e=>e.path===t.path);i&&r(i),e()}catch(e){D(e instanceof Error?e.message:`Clone failed`)}finally{T(!1)}}return(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,X.jsx)(`div`,{className:`flex gap-1 border-b border-border`,children:[`local`,`clone`].map(e=>(0,X.jsx)(`button`,{type:`button`,onClick:()=>{a(e),D(``)},className:U(`px-3 py-1.5 text-sm font-medium border-b-2 -mb-px transition-colors`,i===e?`border-primary text-foreground`:`border-transparent text-text-secondary hover:text-foreground`),children:e===`local`?`Local folder`:`Clone from Git`},e))}),i===`local`?(0,X.jsxs)(`form`,{onSubmit:ee,className:`flex flex-col gap-3`,children:[(0,X.jsxs)(`div`,{ref:k,className:`relative`,children:[(0,X.jsx)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:`Project path`}),(0,X.jsxs)(`div`,{className:`flex gap-1.5 items-center`,children:[(0,X.jsxs)(`div`,{className:`relative flex items-center flex-1`,children:[(0,X.jsx)(et,{className:`absolute left-2.5 size-3.5 text-text-subtle pointer-events-none`}),(0,X.jsx)(`input`,{type:`text`,value:o,onChange:e=>{s(e.target.value),D(``)},onFocus:()=>u.length>0&&p(!0),placeholder:`/path/to/project`,className:`w-full pl-8 pr-3 py-2 rounded-md border border-border bg-background text-sm focus:outline-none focus:ring-1 focus:ring-primary`,autoFocus:!0,autoComplete:`off`}),m&&(0,X.jsx)(L,{className:`absolute right-2.5 size-3.5 text-text-subtle animate-spin`})]}),(0,X.jsx)(Fh,{mode:`folder`,onSelect:e=>{s(e),c||l(e.split(`/`).pop()??``),D(``)}})]}),f&&u.length>0&&(0,X.jsx)(`div`,{className:`absolute top-full left-0 right-0 mt-1 z-10 popover-solid border border-border rounded-md shadow-md max-h-48 overflow-y-auto`,children:u.map(e=>(0,X.jsxs)(`button`,{type:`button`,onMouseDown:()=>A(e),className:`w-full flex flex-col items-start px-3 py-2 text-left hover:bg-accent/50 transition-colors`,children:[(0,X.jsx)(`span`,{className:`text-sm font-medium truncate w-full`,children:e.name}),(0,X.jsx)(`span`,{className:`text-xs text-text-subtle truncate w-full`,children:e.path})]},e.path))})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:[`Display name `,(0,X.jsx)(`span`,{className:`text-muted-foreground`,children:`(optional)`})]}),(0,X.jsx)(`input`,{type:`text`,value:c,onChange:e=>l(e.target.value),placeholder:`my-project`,className:`w-full px-3 py-2 rounded-md border border-border bg-background text-sm focus:outline-none focus:ring-1 focus:ring-primary`})]}),E&&(0,X.jsx)(`p`,{className:`text-xs text-destructive`,children:E}),(0,X.jsxs)(`div`,{className:U(`flex justify-end gap-2 pt-1`,n),children:[(0,X.jsx)(`button`,{type:`button`,onClick:t,className:`px-3 py-1.5 text-sm text-text-secondary hover:text-foreground transition-colors`,children:`Cancel`}),(0,X.jsx)(`button`,{type:`submit`,disabled:g||!o.trim(),className:`px-3 py-1.5 text-sm bg-primary text-white rounded-md hover:bg-primary/90 transition-colors disabled:opacity-50`,children:g?`Adding…`:`Add Project`})]})]}):(0,X.jsxs)(`form`,{onSubmit:j,className:`flex flex-col gap-3`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:`Git URL`}),(0,X.jsx)(`input`,{type:`text`,value:v,onChange:e=>{y(e.target.value),D(``)},placeholder:`https://github.com/user/repo.git`,className:`w-full px-3 py-2 rounded-md border border-border bg-background text-sm focus:outline-none focus:ring-1 focus:ring-primary`,autoFocus:!0,autoComplete:`off`})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:`Clone to`}),(0,X.jsxs)(`div`,{className:`flex gap-1.5 items-center`,children:[(0,X.jsx)(`input`,{type:`text`,value:b,onChange:e=>{x(e.target.value),D(``)},placeholder:`~/Projects`,className:`flex-1 px-3 py-2 rounded-md border border-border bg-background text-sm focus:outline-none focus:ring-1 focus:ring-primary`}),(0,X.jsx)(Fh,{mode:`folder`,onSelect:e=>{x(e),D(``)}})]})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:[`Name `,(0,X.jsx)(`span`,{className:`text-muted-foreground`,children:`(auto-parsed from URL)`})]}),(0,X.jsx)(`input`,{type:`text`,value:S,onChange:e=>C(e.target.value),placeholder:`repo-name`,className:`w-full px-3 py-2 rounded-md border border-border bg-background text-sm focus:outline-none focus:ring-1 focus:ring-primary`})]}),E&&(0,X.jsx)(`p`,{className:`text-xs text-destructive`,children:E}),(0,X.jsxs)(`div`,{className:U(`flex justify-end gap-2 pt-1`,n),children:[(0,X.jsx)(`button`,{type:`button`,onClick:t,className:`px-3 py-1.5 text-sm text-text-secondary hover:text-foreground transition-colors`,children:`Cancel`}),(0,X.jsx)(`button`,{type:`submit`,disabled:w||!v.trim()||!b.trim(),className:`px-3 py-1.5 text-sm bg-primary text-white rounded-md hover:bg-primary/90 transition-colors disabled:opacity-50`,children:w?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(L,{className:`inline size-3.5 animate-spin mr-1.5`}),`Cloning…`]}):`Clone & Add`})]})]})]})}var Kv=(0,Y.memo)(function({name:e,color:t,image:n,size:r,allNames:i,shape:a}){let o=Xs((0,Y.useMemo)(()=>$s(e),[e]));return(0,X.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,X.jsx)(Wv,{name:e,color:t,image:n,size:r,allNames:i,shape:a}),o&&(0,X.jsx)(`div`,{className:U(`absolute -top-0.5 -right-0.5 size-2 rounded-full border-2 border-background`,qs(o))})]})});function qv({current:e,onChange:t}){return(0,X.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Vv.map(n=>(0,X.jsx)(`button`,{type:`button`,onClick:()=>t(n),className:U(`size-8 rounded-full border-2 transition-all`,e===n?`border-primary scale-110`:`border-transparent hover:scale-105`),style:{background:n}},n))})}var Jv=(0,Y.memo)(function(){let{projects:e,activeProject:t,setActiveProject:n,setProjectColor:r,setProjectImage:i,removeProjectImage:a,reorderProjects:o,renameProject:s,deleteProject:c,customOrder:l,sortMode:u,setProjectSortMode:d}=G(jd(e=>({projects:e.projects,activeProject:e.activeProject,setActiveProject:e.setActiveProject,setProjectColor:e.setProjectColor,setProjectImage:e.setProjectImage,removeProjectImage:e.removeProjectImage,reorderProjects:e.reorderProjects,renameProject:e.renameProject,deleteProject:e.deleteProject,customOrder:e.customOrder,sortMode:e.projectSortMode,setProjectSortMode:e.setProjectSortMode}))),f=Nr(e,l),p=f.map(e=>e.name),m=t??f[0]??null,h=m?f.findIndex(e=>e.name===m.name):-1,g=m?Hv(m.color,h<0?0:h):`transparent`,[_,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(``),x=(0,Y.useRef)(null),[S,C]=(0,Y.useState)(null),w=(0,Y.useCallback)(()=>{if(!_&&x.current){let e=x.current.getBoundingClientRect();C({left:e.left,top:e.bottom+4})}v(e=>!e)},[_]),T=(0,Y.useCallback)(()=>{v(!1),b(``)},[]),[E,D]=(0,Y.useState)(0),O=(0,Y.useRef)(null),k=(0,Y.useMemo)(()=>Dv(e,l,u),[e,l,u,_]),A=(0,Y.useMemo)(()=>Fr(),[_]),ee=y.trim().toLowerCase(),j=ee?k.filter(e=>e.name.toLowerCase().includes(ee)||e.path.toLowerCase().includes(ee)):k,te=u===`priority`&&!ee,M=(0,Y.useCallback)(e=>{n(e),T()},[n,T]),N=(0,Y.useCallback)(e=>{window.open(Pv(e.name,null),`_blank`,`noopener`)},[]);(0,Y.useEffect)(()=>{D(0)},[y,u,_]),(0,Y.useEffect)(()=>{O.current?.querySelector(`[data-row-index="${E}"]`)?.scrollIntoView({block:`nearest`})},[E]);let P=(0,Y.useCallback)(e=>{if(e.key===`ArrowDown`)e.preventDefault(),D(e=>Math.min(e+1,j.length-1));else if(e.key===`ArrowUp`)e.preventDefault(),D(e=>Math.max(e-1,0));else if(e.key===`Enter`){e.preventDefault();let t=j[E]??j[0];if(!t)return;e.ctrlKey||e.metaKey?N(t):M(t)}else e.key===`Escape`&&(e.preventDefault(),T())},[j,E,N,M,T]),[F,ne]=(0,Y.useState)(null),[re,ie]=(0,Y.useState)(null),[ae,I]=(0,Y.useState)(!1),[oe,se]=(0,Y.useState)(!1),[ce,le]=(0,Y.useState)(``),[ue,de]=(0,Y.useState)(``),[fe,pe]=(0,Y.useState)(!1),[me,he]=(0,Y.useState)(``),[ge,_e]=(0,Y.useState)(!1),[ve,ye]=(0,Y.useState)(``),[be,xe]=(0,Y.useState)(``),[Se,Ce]=(0,Y.useState)(!1),we=(0,Y.useRef)(null),[Te,Ee]=(0,Y.useState)(null),De=(0,Y.useCallback)(async e=>{let t=e.target.files?.[0];if(e.target.value=``,!(!t||!Te))try{await i(Te,t)}catch(e){alert(e instanceof Error?e.message:`Upload failed`)}},[Te,i]),Oe=(0,Y.useCallback)(e=>{le(e),de(e),se(!0)},[]),ke=(0,Y.useCallback)(e=>{he(e),pe(!0)},[]),Ae=(0,Y.useCallback)((e,t)=>{ye(e),xe(t),_e(!0)},[]);async function je(){if(!ue.trim()||ue===ce){se(!1);return}try{await s(ce,ue.trim())}catch{}se(!1)}async function Ne(){try{await c(me)}catch{}pe(!1)}async function Pe(){Ce(!0);try{await r(ve,be),_e(!1)}catch(e){console.error(`Failed to save color:`,e)}finally{Ce(!1)}}return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`input`,{ref:we,type:`file`,accept:`image/*`,className:`hidden`,onChange:De}),(0,X.jsxs)(`button`,{ref:x,"data-onboarding":`project`,onClick:w,title:`Switch project`,className:U(`flex items-center gap-[9px] w-full h-8 px-2 rounded-lg transition-colors border`,_?`bg-surface-elevated border-border`:`border-transparent hover:bg-surface-elevated`),children:[m?(0,X.jsx)(Kv,{name:m.name,color:g,image:m.image,size:24,allNames:p,shape:`square`}):(0,X.jsx)(`div`,{className:`size-6 rounded-full bg-surface-elevated shrink-0`}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1 flex flex-col text-left leading-tight`,children:[(0,X.jsx)(`span`,{className:`text-[13px] font-semibold text-foreground truncate`,children:m?.name??`Select project`}),m?.path&&(0,X.jsx)(`span`,{className:`text-[10px] font-mono text-text-subtle truncate`,children:m.path})]}),(0,X.jsx)(ot,{className:`size-3.5 text-text-subtle shrink-0`})]}),_&&S&&(0,Nu.createPortal)((0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:T}),(0,X.jsxs)(`div`,{className:`fixed z-50 w-[340px] max-h-[680px] flex flex-col rounded-xl border border-border popover-solid shadow-[var(--shadow-panel)] overflow-hidden`,style:{left:S.left,top:S.top},children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-2.5 py-2 border-b border-border`,children:[(0,X.jsx)(Nn,{className:`size-3.5 text-text-subtle shrink-0`}),(0,X.jsx)(`input`,{value:y,onChange:e=>b(e.target.value),onKeyDown:P,placeholder:`Search projects…`,autoFocus:!0,className:`flex-1 bg-transparent text-xs text-foreground placeholder:text-text-subtle focus:outline-none`})]}),(0,X.jsx)(`div`,{className:`flex items-center gap-1 px-1.5 py-1.5 border-b border-border`,children:Ev.map(({mode:e,label:t,Icon:n})=>(0,X.jsxs)(`button`,{onClick:()=>d(e),title:`Sort by ${t.toLowerCase()}`,className:U(`flex items-center justify-center gap-1 flex-1 px-2 py-1 rounded-md text-[11px] font-medium transition-colors`,u===e?`bg-primary/[0.12] text-primary`:`text-text-subtle hover:bg-surface-elevated hover:text-foreground`),children:[(0,X.jsx)(n,{className:`size-3`}),` `,t]},e))}),(0,X.jsxs)(`div`,{ref:O,className:`overflow-y-auto p-1.5`,children:[j.map((e,t)=>{let n=f.findIndex(t=>t.name===e.name),r=Hv(e.color,n),i=m?.name===e.name,s=t===E,c=F===n,l=re===n&&F!==n,u=A[e.name];return(0,X.jsxs)(sf,{children:[(0,X.jsx)(cf,{asChild:!0,children:(0,X.jsxs)(`div`,{"data-row-index":t,draggable:te,onDragStart:()=>te&&ne(n),onDragOver:e=>{te&&(e.preventDefault(),ie(n))},onDragLeave:()=>ie(null),onDragEnd:()=>{ne(null),ie(null)},onDrop:()=>{if(te&&F!=null&&F!==n){let e=f.map(e=>e.name),[t]=e.splice(F,1);e.splice(n,0,t),o(e)}ne(null),ie(null)},onMouseEnter:()=>D(t),className:U(`group relative flex items-center rounded-lg transition-colors`,i?`bg-primary/[0.12]`:s?`bg-surface-elevated`:``,c&&`opacity-40`,l&&`ring-2 ring-primary`),children:[(0,X.jsxs)(`button`,{onClick:()=>M(e),className:`flex items-center gap-2.5 min-w-0 flex-1 px-2 py-1.5 text-left`,children:[(0,X.jsx)(Kv,{name:e.name,color:r,image:e.image,size:26,allNames:p}),(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`div`,{className:U(`text-[13px] whitespace-nowrap overflow-hidden text-ellipsis`,i?`font-semibold text-primary`:`text-foreground`),children:e.name}),(0,X.jsx)(`div`,{className:`text-[10px] font-mono text-text-subtle whitespace-nowrap overflow-hidden text-ellipsis`,children:e.path})]})]}),u&&(0,X.jsx)(`span`,{title:`Last opened ${new Date(u).toLocaleString()}`,className:`shrink-0 mr-2 text-[10px] text-text-subtle whitespace-nowrap`,children:qr(new Date(u).toISOString())}),(0,X.jsx)(`button`,{onClick:t=>{t.stopPropagation(),N(e)},title:`Open in new browser tab`,className:U(`shrink-0 mr-1 p-1.5 rounded-md text-text-subtle hover:bg-background hover:text-foreground transition-opacity`,s?`opacity-100`:`opacity-0 group-hover:opacity-100`),children:(0,X.jsx)(Rt,{className:`size-3.5`})})]})}),(0,X.jsxs)(lf,{children:[(0,X.jsxs)($,{onClick:()=>N(e),children:[(0,X.jsx)(Rt,{className:`size-3.5 mr-2`}),` Open in New Tab`]}),(0,X.jsx)(uf,{}),(0,X.jsxs)($,{onClick:()=>Oe(e.name),children:[(0,X.jsx)(yt,{className:`size-3.5 mr-2`}),` Rename`]}),(0,X.jsxs)($,{onClick:()=>Ae(e.name,r),children:[(0,X.jsx)(We,{className:`size-3.5 mr-2`}),` Change Color`]}),(0,X.jsxs)($,{onClick:()=>{Ee(e.name),we.current?.click()},children:[(0,X.jsx)(Me,{className:`size-3.5 mr-2`}),` Change Image`]}),e.image&&(0,X.jsxs)($,{onClick:()=>{a(e.name).catch(()=>{})},children:[(0,X.jsx)(Je,{className:`size-3.5 mr-2`}),` Remove Image`]}),(0,X.jsxs)($,{onClick:()=>void uu(e.path),children:[(0,X.jsx)(_n,{className:`size-3.5 mr-2`}),` Copy Path`]}),(0,X.jsx)(uf,{}),(0,X.jsxs)($,{className:`text-destructive focus:text-destructive`,onClick:()=>ke(e.name),children:[(0,X.jsx)(Je,{className:`size-3.5 mr-2`}),` Delete`]})]})]},e.name)}),j.length===0&&(0,X.jsx)(`div`,{className:`px-2 py-4 text-center text-xs text-text-subtle`,children:`No projects found`})]}),(0,X.jsxs)(`button`,{onClick:()=>{I(!0),T()},className:`flex items-center gap-2 px-3 py-2.5 border-t border-border text-text-secondary text-[13px] font-medium hover:bg-surface-elevated transition-colors`,children:[(0,X.jsx)(Dt,{className:`size-[15px]`}),` Add Project`]})]})]}),document.body),(0,X.jsx)(ta,{open:ae,onOpenChange:I,children:(0,X.jsxs)(J,{className:`sm:max-w-sm`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:`Add Project`})}),(0,X.jsx)(Gv,{onSuccess:()=>I(!1),onCancel:()=>I(!1)})]})}),(0,X.jsx)(ta,{open:oe,onOpenChange:se,children:(0,X.jsxs)(J,{className:`sm:max-w-sm`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:`Rename Project`})}),(0,X.jsx)(`input`,{type:`text`,value:ue,onChange:e=>de(e.target.value),onKeyDown:e=>{e.key===`Enter`&&je()},className:`w-full px-3 py-2 rounded-md border border-border bg-background text-sm focus:outline-none focus:ring-1 focus:ring-primary`,autoFocus:!0}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(`button`,{onClick:()=>se(!1),className:`px-3 py-1.5 text-sm text-text-secondary hover:text-foreground transition-colors`,children:`Cancel`}),(0,X.jsx)(`button`,{onClick:je,className:`px-3 py-1.5 text-sm bg-primary text-white rounded-md hover:bg-primary/90 transition-colors`,children:`Rename`})]})]})}),(0,X.jsx)(ta,{open:fe,onOpenChange:pe,children:(0,X.jsxs)(J,{className:`sm:max-w-sm`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:`Delete Project`})}),(0,X.jsxs)(`p`,{className:`text-sm text-text-secondary`,children:[`Remove `,(0,X.jsx)(`strong`,{className:`text-foreground`,children:me}),` from PPM? The files on disk won't be deleted.`]}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(`button`,{onClick:()=>pe(!1),className:`px-3 py-1.5 text-sm text-text-secondary hover:text-foreground transition-colors`,children:`Cancel`}),(0,X.jsx)(`button`,{onClick:Ne,className:`px-3 py-1.5 text-sm bg-destructive text-white rounded-md hover:bg-destructive/90 transition-colors`,children:`Delete`})]})]})}),(0,X.jsx)(ta,{open:ge,onOpenChange:_e,children:(0,X.jsxs)(J,{className:`sm:max-w-sm`,children:[(0,X.jsx)(Xi,{children:(0,X.jsx)(Qi,{children:`Change Color`})}),(0,X.jsx)(qv,{current:be,onChange:xe}),(0,X.jsxs)(Zi,{children:[(0,X.jsx)(`button`,{onClick:()=>_e(!1),className:`px-3 py-1.5 text-sm text-text-secondary hover:text-foreground transition-colors`,children:`Cancel`}),(0,X.jsx)(`button`,{onClick:Pe,disabled:Se,className:`px-3 py-1.5 text-sm bg-primary text-white rounded-md hover:bg-primary/90 transition-colors disabled:opacity-50`,children:Se?`Saving…`:`Save`})]})]})})]})}),Yv=lr(e=>({isOpen:!1,open:()=>e({isOpen:!0}),close:()=>e({isOpen:!1})}));function Xv(){let e=Mr(e=>e.open),t=Mr(e=>e.focus),n=Yv(e=>e.open);return(0,Y.useCallback)(()=>{if(gi()){n();return}let r=Object.values(Mr.getState().windows).find(e=>e.kind===`remote-desktop`);r?t(r.id):e(`remote-desktop`)},[e,t,n])}function Zv(e){return{...e,displays:e.displays??[],encoders:e.encoders??[],requirements:e.requirements??[],clipboard:e.clipboard??{available:!1,action:null},audio:e.audio??{available:!1,reason:null},privacy:e.privacy??{available:!1,reason:null,canBlank:!1},resolutions:e.resolutions??{output:null,modes:[],reason:null}}}var Qv=2e3;function $v(e){let[t,n]=(0,Y.useState)(null),[r,i]=(0,Y.useState)(!1),[a,o]=(0,Y.useState)(0),s=(0,Y.useCallback)(()=>o(e=>e+1),[]);return(0,Y.useEffect)(()=>{let e=!1;return B.get(`/api/remote-desktop/capabilities`).then(t=>{e||(n(Zv(t)),i(!1))}).catch(()=>{e||i(!0)}),()=>{e=!0}},[a]),(0,Y.useEffect)(()=>{if(!e)return;let t=setInterval(s,Qv);return()=>clearInterval(t)},[e,s]),{caps:t,failed:r,refresh:s,runHostAction:(0,Y.useCallback)(async(e,t)=>{try{await B.post(`/api/remote-desktop/requirements/${encodeURIComponent(e)}/${t}`)}catch{}s()},[s])}}function ey(){let{caps:e}=$v(!1);return{available:!!e?.platformSupported,authRequired:!!e?.authRequired}}function ty(e,t){if(!t||t.length===0)return[...e];let n=new Map(e.map(e=>[e.id,e])),r=[],i=new Set;for(let e of t){let t=n.get(e);t&&!i.has(e)&&(r.push(t),i.add(e))}for(let t of e)i.has(t.id)||r.push(t);return r}function ny({expanded:e}){let t=Xs(e=>e.notifications),n=Xs(e=>e.clearAll),r=Xs(Zs),{projects:i,setActiveProject:a,customOrder:o}=G(jd(e=>({projects:e.projects,setActiveProject:e.setActiveProject,customOrder:e.customOrder}))),s=Nr(i,o),c=K(e=>e.openTab),[l,u]=(0,Y.useState)(!1),d=(0,Y.useRef)(null),[f,p]=(0,Y.useState)(null),m=()=>{if(!l&&d.current){let e=d.current.getBoundingClientRect();p({left:e.right+6,bottom:window.innerHeight-e.bottom})}u(!l)},h=(e,t)=>{let n=i.find(e=>e.name===t);n&&(a(n),c({type:`chat`,title:`Chat`,projectId:t,metadata:{projectName:t,sessionId:e,providerId:`claude`},closable:!0}),u(!1))},g=e=>{let t=s.findIndex(t=>t.name===e);if(t!==-1)return Hv(s[t].color,t)},_=new Map;for(let[e,n]of t){let t=n.projectName||`Unknown`;_.has(t)||_.set(t,[]),_.get(t).push({sessionId:e,count:n.count,type:n.type,sessionTitle:n.sessionTitle})}return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`button`,{ref:d,onClick:m,className:U(`relative flex items-center rounded-md transition-colors`,e?`w-full h-8 gap-2 px-2 justify-start`:`justify-center size-8`,l?`text-primary bg-primary/10`:`text-text-subtle hover:text-foreground hover:bg-surface-elevated`),children:[(0,X.jsx)(Yt,{className:`size-4 shrink-0`}),e&&(0,X.jsx)(`span`,{className:`text-xs whitespace-nowrap`,children:`Notifications`}),r>0&&(0,X.jsx)(`span`,{className:U(`absolute flex items-center justify-center text-[9px] font-bold text-white bg-error rounded-full min-w-[16px] h-4 px-1`,e?`right-1.5`:`-top-1 -right-1`),children:r})]}),l&&f&&(0,Nu.createPortal)((0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:()=>u(!1)}),(0,X.jsxs)(`div`,{className:`fixed z-50 w-72 max-h-80 overflow-y-auto rounded-lg border border-border bg-background shadow-lg`,style:{left:f.left,bottom:f.bottom},children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[(0,X.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:r>0?`${r} unread session${r>1?`s`:``}`:`No unread`}),r>0&&(0,X.jsxs)(`button`,{onClick:()=>{n(),u(!1)},className:`text-[10px] text-text-subtle hover:text-foreground transition-colors flex items-center gap-1`,children:[(0,X.jsx)(qt,{className:`size-3`}),`Clear all`]})]}),r===0?(0,X.jsx)(`div`,{className:`px-3 py-4 text-center text-xs text-text-subtle`,children:`All caught up`}):(0,X.jsx)(`div`,{className:`py-1`,children:[..._.entries()].map(([e,t])=>(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:`px-3 py-1 text-[10px] font-medium text-text-subtle uppercase tracking-wider flex items-center gap-1.5`,children:[(0,X.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{background:g(e)||`currentColor`}}),e]}),t.map(({sessionId:t,type:n,sessionTitle:r})=>(0,X.jsx)(`button`,{onClick:()=>h(t,e),className:U(`w-full px-3 py-1.5 text-left text-[11px] text-foreground truncate hover:bg-surface-elevated transition-colors`,Ys(n)),children:r||`${t.slice(0,12)}...`},t))]},e))})]})]}),document.body)]})}var ry=Object.defineProperty,iy=Object.getOwnPropertySymbols,ay=Object.prototype.hasOwnProperty,oy=Object.prototype.propertyIsEnumerable,sy=(e,t,n)=>t in e?ry(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,cy=(e,t)=>{for(var n in t||={})ay.call(t,n)&&sy(e,n,t[n]);if(iy)for(var n of iy(t))oy.call(t,n)&&sy(e,n,t[n]);return e},ly=(e,t)=>{var n={};for(var r in e)ay.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&iy)for(var r of iy(e))t.indexOf(r)<0&&oy.call(e,r)&&(n[r]=e[r]);return n},uy;(e=>{let t=class t{constructor(e,n,r,a){if(this.version=e,this.errorCorrectionLevel=n,this.modules=[],this.isFunction=[],e<t.MIN_VERSION||e>t.MAX_VERSION)throw RangeError(`Version value out of range`);if(a<-1||a>7)throw RangeError(`Mask value out of range`);this.size=e*4+17;let o=[];for(let e=0;e<this.size;e++)o.push(!1);for(let e=0;e<this.size;e++)this.modules.push(o.slice()),this.isFunction.push(o.slice());this.drawFunctionPatterns();let s=this.addEccAndInterleave(r);if(this.drawCodewords(s),a==-1){let e=1e9;for(let t=0;t<8;t++){this.applyMask(t),this.drawFormatBits(t);let n=this.getPenaltyScore();n<e&&(a=t,e=n),this.applyMask(t)}}i(0<=a&&a<=7),this.mask=a,this.applyMask(a),this.drawFormatBits(a),this.isFunction=[]}static encodeText(n,r){let i=e.QrSegment.makeSegments(n);return t.encodeSegments(i,r)}static encodeBinary(n,r){let i=e.QrSegment.makeBytes(n);return t.encodeSegments([i],r)}static encodeSegments(e,r,a=1,s=40,c=-1,l=!0){if(!(t.MIN_VERSION<=a&&a<=s&&s<=t.MAX_VERSION)||c<-1||c>7)throw RangeError(`Invalid value`);let u,d;for(u=a;;u++){let n=t.getNumDataCodewords(u,r)*8,i=o.getTotalBits(e,u);if(i<=n){d=i;break}if(u>=s)throw RangeError(`Data too long`)}for(let e of[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH])l&&d<=t.getNumDataCodewords(u,e)*8&&(r=e);let f=[];for(let t of e){n(t.mode.modeBits,4,f),n(t.numChars,t.mode.numCharCountBits(u),f);for(let e of t.getData())f.push(e)}i(f.length==d);let p=t.getNumDataCodewords(u,r)*8;i(f.length<=p),n(0,Math.min(4,p-f.length),f),n(0,(8-f.length%8)%8,f),i(f.length%8==0);for(let e=236;f.length<p;e^=253)n(e,8,f);let m=[];for(;m.length*8<f.length;)m.push(0);return f.forEach((e,t)=>m[t>>>3]|=e<<7-(t&7)),new t(u,r,m,c)}getModule(e,t){return 0<=e&&e<this.size&&0<=t&&t<this.size&&this.modules[t][e]}getModules(){return this.modules}drawFunctionPatterns(){for(let e=0;e<this.size;e++)this.setFunctionModule(6,e,e%2==0),this.setFunctionModule(e,6,e%2==0);this.drawFinderPattern(3,3),this.drawFinderPattern(this.size-4,3),this.drawFinderPattern(3,this.size-4);let e=this.getAlignmentPatternPositions(),t=e.length;for(let n=0;n<t;n++)for(let r=0;r<t;r++)n==0&&r==0||n==0&&r==t-1||n==t-1&&r==0||this.drawAlignmentPattern(e[n],e[r]);this.drawFormatBits(0),this.drawVersion()}drawFormatBits(e){let t=this.errorCorrectionLevel.formatBits<<3|e,n=t;for(let e=0;e<10;e++)n=n<<1^(n>>>9)*1335;let a=(t<<10|n)^21522;i(a>>>15==0);for(let e=0;e<=5;e++)this.setFunctionModule(8,e,r(a,e));this.setFunctionModule(8,7,r(a,6)),this.setFunctionModule(8,8,r(a,7)),this.setFunctionModule(7,8,r(a,8));for(let e=9;e<15;e++)this.setFunctionModule(14-e,8,r(a,e));for(let e=0;e<8;e++)this.setFunctionModule(this.size-1-e,8,r(a,e));for(let e=8;e<15;e++)this.setFunctionModule(8,this.size-15+e,r(a,e));this.setFunctionModule(8,this.size-8,!0)}drawVersion(){if(this.version<7)return;let e=this.version;for(let t=0;t<12;t++)e=e<<1^(e>>>11)*7973;let t=this.version<<12|e;i(t>>>18==0);for(let e=0;e<18;e++){let n=r(t,e),i=this.size-11+e%3,a=Math.floor(e/3);this.setFunctionModule(i,a,n),this.setFunctionModule(a,i,n)}}drawFinderPattern(e,t){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){let i=Math.max(Math.abs(r),Math.abs(n)),a=e+r,o=t+n;0<=a&&a<this.size&&0<=o&&o<this.size&&this.setFunctionModule(a,o,i!=2&&i!=4)}}drawAlignmentPattern(e,t){for(let n=-2;n<=2;n++)for(let r=-2;r<=2;r++)this.setFunctionModule(e+r,t+n,Math.max(Math.abs(r),Math.abs(n))!=1)}setFunctionModule(e,t,n){this.modules[t][e]=n,this.isFunction[t][e]=!0}addEccAndInterleave(e){let n=this.version,r=this.errorCorrectionLevel;if(e.length!=t.getNumDataCodewords(n,r))throw RangeError(`Invalid argument`);let a=t.NUM_ERROR_CORRECTION_BLOCKS[r.ordinal][n],o=t.ECC_CODEWORDS_PER_BLOCK[r.ordinal][n],s=Math.floor(t.getNumRawDataModules(n)/8),c=a-s%a,l=Math.floor(s/a),u=[],d=t.reedSolomonComputeDivisor(o);for(let n=0,r=0;n<a;n++){let i=e.slice(r,r+l-o+(n<c?0:1));r+=i.length;let a=t.reedSolomonComputeRemainder(i,d);n<c&&i.push(0),u.push(i.concat(a))}let f=[];for(let e=0;e<u[0].length;e++)u.forEach((t,n)=>{(e!=l-o||n>=c)&&f.push(t[e])});return i(f.length==s),f}drawCodewords(e){if(e.length!=Math.floor(t.getNumRawDataModules(this.version)/8))throw RangeError(`Invalid argument`);let n=0;for(let t=this.size-1;t>=1;t-=2){t==6&&(t=5);for(let i=0;i<this.size;i++)for(let a=0;a<2;a++){let o=t-a,s=t+1&2?i:this.size-1-i;!this.isFunction[s][o]&&n<e.length*8&&(this.modules[s][o]=r(e[n>>>3],7-(n&7)),n++)}}i(n==e.length*8)}applyMask(e){if(e<0||e>7)throw RangeError(`Mask value out of range`);for(let t=0;t<this.size;t++)for(let n=0;n<this.size;n++){let r;switch(e){case 0:r=(n+t)%2==0;break;case 1:r=t%2==0;break;case 2:r=n%3==0;break;case 3:r=(n+t)%3==0;break;case 4:r=(Math.floor(n/3)+Math.floor(t/2))%2==0;break;case 5:r=n*t%2+n*t%3==0;break;case 6:r=(n*t%2+n*t%3)%2==0;break;case 7:r=((n+t)%2+n*t%3)%2==0;break;default:throw Error(`Unreachable`)}!this.isFunction[t][n]&&r&&(this.modules[t][n]=!this.modules[t][n])}}getPenaltyScore(){let e=0;for(let n=0;n<this.size;n++){let r=!1,i=0,a=[0,0,0,0,0,0,0];for(let o=0;o<this.size;o++)this.modules[n][o]==r?(i++,i==5?e+=t.PENALTY_N1:i>5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[n][o],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n<this.size;n++){let r=!1,i=0,a=[0,0,0,0,0,0,0];for(let o=0;o<this.size;o++)this.modules[o][n]==r?(i++,i==5?e+=t.PENALTY_N1:i>5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[o][n],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n<this.size-1;n++)for(let r=0;r<this.size-1;r++){let i=this.modules[n][r];i==this.modules[n][r+1]&&i==this.modules[n+1][r]&&i==this.modules[n+1][r+1]&&(e+=t.PENALTY_N2)}let n=0;for(let e of this.modules)n=e.reduce((e,t)=>e+(t?1:0),n);let r=this.size*this.size,a=Math.ceil(Math.abs(n*20-r*10)/r)-1;return i(0<=a&&a<=9),e+=a*t.PENALTY_N4,i(0<=e&&e<=2568888),e}getAlignmentPatternPositions(){if(this.version==1)return[];{let e=Math.floor(this.version/7)+2,t=this.version==32?26:Math.ceil((this.version*4+4)/(e*2-2))*2,n=[6];for(let r=this.size-7;n.length<e;r-=t)n.splice(1,0,r);return n}}static getNumRawDataModules(e){if(e<t.MIN_VERSION||e>t.MAX_VERSION)throw RangeError(`Version number out of range`);let n=(16*e+128)*e+64;if(e>=2){let t=Math.floor(e/7)+2;n-=(25*t-10)*t-55,e>=7&&(n-=36)}return i(208<=n&&n<=29648),n}static getNumDataCodewords(e,n){return Math.floor(t.getNumRawDataModules(e)/8)-t.ECC_CODEWORDS_PER_BLOCK[n.ordinal][e]*t.NUM_ERROR_CORRECTION_BLOCKS[n.ordinal][e]}static reedSolomonComputeDivisor(e){if(e<1||e>255)throw RangeError(`Degree out of range`);let n=[];for(let t=0;t<e-1;t++)n.push(0);n.push(1);let r=1;for(let i=0;i<e;i++){for(let e=0;e<n.length;e++)n[e]=t.reedSolomonMultiply(n[e],r),e+1<n.length&&(n[e]^=n[e+1]);r=t.reedSolomonMultiply(r,2)}return n}static reedSolomonComputeRemainder(e,n){let r=n.map(e=>0);for(let i of e){let e=i^r.shift();r.push(0),n.forEach((n,i)=>r[i]^=t.reedSolomonMultiply(n,e))}return r}static reedSolomonMultiply(e,t){if(e>>>8||t>>>8)throw RangeError(`Byte out of range`);let n=0;for(let r=7;r>=0;r--)n=n<<1^(n>>>7)*285,n^=(t>>>r&1)*e;return i(n>>>8==0),n}finderPenaltyCountPatterns(e){let t=e[1];i(t<=this.size*3);let n=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(n&&e[0]>=t*4&&e[6]>=t?1:0)+(n&&e[6]>=t*4&&e[0]>=t?1:0)}finderPenaltyTerminateAndCount(e,t,n){return e&&(this.finderPenaltyAddHistory(t,n),t=0),t+=this.size,this.finderPenaltyAddHistory(t,n),this.finderPenaltyCountPatterns(n)}finderPenaltyAddHistory(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)}};t.MIN_VERSION=1,t.MAX_VERSION=40,t.PENALTY_N1=3,t.PENALTY_N2=3,t.PENALTY_N3=40,t.PENALTY_N4=10,t.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],t.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],e.QrCode=t;function n(e,t,n){if(t<0||t>31||e>>>t)throw RangeError(`Value out of range`);for(let r=t-1;r>=0;r--)n.push(e>>>r&1)}function r(e,t){return(e>>>t&1)!=0}function i(e){if(!e)throw Error(`Assertion error`)}let a=class e{constructor(e,t,n){if(this.mode=e,this.numChars=t,this.bitData=n,t<0)throw RangeError(`Invalid argument`);this.bitData=n.slice()}static makeBytes(t){let r=[];for(let e of t)n(e,8,r);return new e(e.Mode.BYTE,t.length,r)}static makeNumeric(t){if(!e.isNumeric(t))throw RangeError(`String contains non-numeric characters`);let r=[];for(let e=0;e<t.length;){let i=Math.min(t.length-e,3);n(parseInt(t.substring(e,e+i),10),i*3+1,r),e+=i}return new e(e.Mode.NUMERIC,t.length,r)}static makeAlphanumeric(t){if(!e.isAlphanumeric(t))throw RangeError(`String contains unencodable characters in alphanumeric mode`);let r=[],i;for(i=0;i+2<=t.length;i+=2){let a=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i))*45;a+=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i+1)),n(a,11,r)}return i<t.length&&n(e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i)),6,r),new e(e.Mode.ALPHANUMERIC,t.length,r)}static makeSegments(t){return t==``?[]:e.isNumeric(t)?[e.makeNumeric(t)]:e.isAlphanumeric(t)?[e.makeAlphanumeric(t)]:[e.makeBytes(e.toUtf8ByteArray(t))]}static makeEci(t){let r=[];if(t<0)throw RangeError(`ECI assignment value out of range`);if(t<128)n(t,8,r);else if(t<16384)n(2,2,r),n(t,14,r);else if(t<1e6)n(6,3,r),n(t,21,r);else throw RangeError(`ECI assignment value out of range`);return new e(e.Mode.ECI,0,r)}static isNumeric(t){return e.NUMERIC_REGEX.test(t)}static isAlphanumeric(t){return e.ALPHANUMERIC_REGEX.test(t)}getData(){return this.bitData.slice()}static getTotalBits(e,t){let n=0;for(let r of e){let e=r.mode.numCharCountBits(t);if(r.numChars>=1<<e)return 1/0;n+=4+e+r.bitData.length}return n}static toUtf8ByteArray(e){e=encodeURI(e);let t=[];for(let n=0;n<e.length;n++)e.charAt(n)==`%`?(t.push(parseInt(e.substring(n+1,n+3),16)),n+=2):t.push(e.charCodeAt(n));return t}};a.NUMERIC_REGEX=/^[0-9]*$/,a.ALPHANUMERIC_REGEX=/^[A-Z0-9 $%*+.\/:-]*$/,a.ALPHANUMERIC_CHARSET=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`;let o=a;e.QrSegment=a})(uy||={}),(e=>{(e=>{let t=class{constructor(e,t){this.ordinal=e,this.formatBits=t}};t.LOW=new t(0,1),t.MEDIUM=new t(1,0),t.QUARTILE=new t(2,3),t.HIGH=new t(3,2),e.Ecc=t})(e.QrCode||={})})(uy||={}),(e=>{(e=>{let t=class{constructor(e,t){this.modeBits=e,this.numBitsCharCount=t}numCharCountBits(e){return this.numBitsCharCount[Math.floor((e+7)/17)]}};t.NUMERIC=new t(1,[10,12,14]),t.ALPHANUMERIC=new t(2,[9,11,13]),t.BYTE=new t(4,[8,16,16]),t.KANJI=new t(8,[8,10,12]),t.ECI=new t(7,[0,0,0]),e.Mode=t})(e.QrSegment||={})})(uy||={});var dy=uy,fy={L:dy.QrCode.Ecc.LOW,M:dy.QrCode.Ecc.MEDIUM,Q:dy.QrCode.Ecc.QUARTILE,H:dy.QrCode.Ecc.HIGH},py=128,my=`L`,hy=`#FFFFFF`,gy=`#000000`,_y=!1,vy=1,yy=4,by=0,xy=.1;function Sy(e,t=0){let n=[];return e.forEach(function(e,r){let i=null;e.forEach(function(a,o){if(!a&&i!==null){n.push(`M${i+t} ${r+t}h${o-i}v1H${i+t}z`),i=null;return}if(o===e.length-1){if(!a)return;i===null?n.push(`M${o+t},${r+t} h1v1H${o+t}z`):n.push(`M${i+t},${r+t} h${o+1-i}v1H${i+t}z`);return}a&&i===null&&(i=o)})}),n.join(``)}function Cy(e,t){return e.slice().map((e,n)=>n<t.y||n>=t.y+t.h?e:e.map((e,n)=>n<t.x||n>=t.x+t.w?e:!1))}function wy(e,t,n,r){if(r==null)return null;let i=e.length+n*2,a=Math.floor(t*xy),o=i/t,s=(r.width||a)*o,c=(r.height||a)*o,l=r.x==null?e.length/2-s/2:r.x*o,u=r.y==null?e.length/2-c/2:r.y*o,d=r.opacity==null?1:r.opacity,f=null;if(r.excavate){let e=Math.floor(l),t=Math.floor(u);f={x:e,y:t,w:Math.ceil(s+l-e),h:Math.ceil(c+u-t)}}let p=r.crossOrigin;return{x:l,y:u,h:c,w:s,excavation:f,opacity:d,crossOrigin:p}}function Ty(e,t){return t==null?e?yy:by:Math.max(Math.floor(t),0)}function Ey({value:e,level:t,minVersion:n,includeMargin:r,marginSize:i,imageSettings:a,size:o,boostLevel:s}){let c=Y.useMemo(()=>{let r=(Array.isArray(e)?e:[e]).reduce((e,t)=>(e.push(...dy.QrSegment.makeSegments(t)),e),[]);return dy.QrCode.encodeSegments(r,fy[t],n,void 0,void 0,s)},[e,t,n,s]),{cells:l,margin:u,numCells:d,calculatedImageSettings:f}=Y.useMemo(()=>{let e=c.getModules(),t=Ty(r,i);return{cells:e,margin:t,numCells:e.length+t*2,calculatedImageSettings:wy(e,o,t,a)}},[c,o,a,r,i]);return{qrcode:c,margin:u,cells:l,numCells:d,calculatedImageSettings:f}}var Dy=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}(),Oy=Y.forwardRef(function(e,t){let n=e,{value:r,size:i=py,level:a=my,bgColor:o=hy,fgColor:s=gy,includeMargin:c=_y,minVersion:l=vy,boostLevel:u,marginSize:d,imageSettings:f}=n,p=ly(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`marginSize`,`imageSettings`]),{style:m}=p,h=ly(p,[`style`]),g=f?.src,_=Y.useRef(null),v=Y.useRef(null),y=Y.useCallback(e=>{_.current=e,typeof t==`function`?t(e):t&&(t.current=e)},[t]),[b,x]=Y.useState(!1),{margin:S,cells:C,numCells:w,calculatedImageSettings:T}=Ey({value:r,level:a,minVersion:l,boostLevel:u,includeMargin:c,marginSize:d,imageSettings:f,size:i});Y.useEffect(()=>{if(_.current!=null){let e=_.current,t=e.getContext(`2d`);if(!t)return;let n=C,r=v.current,a=T!=null&&r!==null&&r.complete&&r.naturalHeight!==0&&r.naturalWidth!==0;a&&T.excavation!=null&&(n=Cy(C,T.excavation));let c=window.devicePixelRatio||1;e.height=e.width=i*c;let l=i/w*c;t.scale(l,l),t.fillStyle=o,t.fillRect(0,0,w,w),t.fillStyle=s,Dy?t.fill(new Path2D(Sy(n,S))):C.forEach(function(e,n){e.forEach(function(e,r){e&&t.fillRect(r+S,n+S,1,1)})}),T&&(t.globalAlpha=T.opacity),a&&t.drawImage(r,T.x+S,T.y+S,T.w,T.h)}}),Y.useEffect(()=>{x(!1)},[g]);let E=cy({height:i,width:i},m),D=null;return g!=null&&(D=Y.createElement(`img`,{src:g,key:g,style:{display:`none`},onLoad:()=>{x(!0)},ref:v,crossOrigin:T?.crossOrigin})),Y.createElement(Y.Fragment,null,Y.createElement(`canvas`,cy({style:E,height:i,width:i,ref:y,role:`img`},h)),D)});Oy.displayName=`QRCodeCanvas`;var ky=Y.forwardRef(function(e,t){let n=e,{value:r,size:i=py,level:a=my,bgColor:o=hy,fgColor:s=gy,includeMargin:c=_y,minVersion:l=vy,boostLevel:u,title:d,marginSize:f,imageSettings:p}=n,m=ly(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`title`,`marginSize`,`imageSettings`]),{margin:h,cells:g,numCells:_,calculatedImageSettings:v}=Ey({value:r,level:a,minVersion:l,boostLevel:u,includeMargin:c,marginSize:f,imageSettings:p,size:i}),y=g,b=null;p!=null&&v!=null&&(v.excavation!=null&&(y=Cy(g,v.excavation)),b=Y.createElement(`image`,{href:p.src,height:v.h,width:v.w,x:v.x+h,y:v.y+h,preserveAspectRatio:`none`,opacity:v.opacity,crossOrigin:v.crossOrigin}));let x=Sy(y,h);return Y.createElement(`svg`,cy({height:i,width:i,viewBox:`0 0 ${_} ${_}`,ref:t,role:`img`},m),!!d&&Y.createElement(`title`,null,d),Y.createElement(`path`,{fill:o,d:`M0,0 h${_}v${_}H0z`,shapeRendering:`crispEdges`}),Y.createElement(`path`,{fill:s,d:x,shapeRendering:`crispEdges`}),b)});ky.displayName=`QRCodeSVG`;var Ay=/^[a-z0-9][a-z0-9-]{1,31}$/,jy=`2–32 characters: lowercase letters, numbers, hyphens.`;function My(e){return e.replace(/^https?:\/\//,``).replace(/\/$/,``)}function Ny(e){if(!e)return``;let t=e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``).slice(0,32);return Ay.test(t)?t:``}function Py({cloudUrl:e,deviceName:t}){let[n,r]=(0,Y.useState)(null),[i,a]=(0,Y.useState)(!0),[o,s]=(0,Y.useState)(!1),[c,l]=(0,Y.useState)(!1),[u,d]=(0,Y.useState)(``),[f,p]=(0,Y.useState)(!1),[m,h]=(0,Y.useState)(null);(0,Y.useEffect)(()=>{(async()=>{try{r((await B.get(`/api/cloud/alias`)).slug)}catch{s(!0)}a(!1)})()},[]);let g=(0,Y.useCallback)(()=>{d(n??Ny(t)),h(null),l(!0)},[n,t]),_=(0,Y.useCallback)(async()=>{let e=u.trim().toLowerCase();if(!Ay.test(e)){h(jy);return}p(!0),h(null);try{r((await B.patch(`/api/cloud/alias`,{slug:e})).slug),l(!1)}catch(e){h(e instanceof Error?e.message:`Could not save that name`)}finally{p(!1)}},[u]);return i?null:o?(0,X.jsx)(`p`,{className:`text-[11px] text-muted-foreground leading-relaxed`,children:`Couldn't check this machine's permanent link. Open the cloud dashboard, or sign in again.`}):c?(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Permanent link`}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,X.jsxs)(`span`,{className:`text-xs font-mono text-muted-foreground shrink-0`,children:[My(e),`/`]}),(0,X.jsx)(`input`,{autoFocus:!0,value:u,onChange:e=>d(e.target.value),onKeyDown:e=>{e.key===`Enter`&&_(),e.key===`Escape`&&l(!1)},placeholder:`my-mac`,className:`flex-1 min-w-0 text-base md:text-xs font-mono text-foreground bg-muted px-2 min-h-11 md:min-h-0 md:py-1.5 rounded border border-border outline-none focus:border-primary`}),(0,X.jsx)(`button`,{onClick:_,disabled:f,title:`Save`,className:`flex items-center justify-center size-11 md:size-8 rounded border border-border text-primary bg-muted hover:bg-accent transition-colors shrink-0 disabled:opacity-50`,children:f?(0,X.jsx)(L,{className:`size-3.5 animate-spin`}):(0,X.jsx)(Rn,{className:`size-3.5`})}),(0,X.jsx)(`button`,{onClick:()=>l(!1),title:`Cancel`,className:`flex items-center justify-center size-11 md:size-8 rounded border border-border text-muted-foreground bg-muted hover:bg-accent transition-colors shrink-0`,children:(0,X.jsx)(Be,{className:`size-3.5`})})]}),(0,X.jsx)(`p`,{className:`text-[10px] text-muted-foreground`,children:m??jy})]}):n?(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Permanent link`}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,X.jsxs)(`a`,{href:`${e}/${n}`,target:`_blank`,rel:`noopener noreferrer`,className:`flex-1 min-w-0 flex items-center gap-1 text-xs font-mono text-primary hover:underline truncate`,children:[(0,X.jsxs)(`span`,{className:`truncate`,children:[My(e),`/`,n]}),(0,X.jsx)(Rt,{className:`size-3 shrink-0`})]}),(0,X.jsx)(`button`,{onClick:g,title:`Change permanent link`,className:`flex items-center justify-center size-11 md:size-8 rounded border border-border text-muted-foreground bg-muted hover:bg-accent hover:text-foreground transition-colors shrink-0`,children:(0,X.jsx)(yt,{className:`size-3.5`})})]})]}):(0,X.jsxs)(`button`,{onClick:g,className:`w-full flex items-center justify-center gap-1.5 px-3 min-h-11 md:min-h-0 md:py-2 text-xs font-medium rounded-md border border-border hover:bg-muted transition-colors`,children:[(0,X.jsx)(yt,{className:`size-3.5`}),`Set a permanent link`]})}function Fy({onStatus:e,publicPort:t,onTempUrl:n}){let[r,i]=(0,Y.useState)(null),[a,o]=(0,Y.useState)(null),[s,c]=(0,Y.useState)(null),[l,u]=(0,Y.useState)(null),d=(0,Y.useCallback)((e,n)=>e.find(e=>e.source===`ppm`&&!e.protected&&e.port===t&&e.url&&e.url!==n)??null,[t]),f=(0,Y.useCallback)(async()=>{try{let t=await C_.status();i(t),e(t);let r=d(await B.get(`/api/tunnels`).catch(()=>[]),t.hostname?`https://${t.hostname}`:null);o(r),n(r?.url??null)}catch{}},[e,n,d]);(0,Y.useEffect)(()=>{f()},[f]);let p=(0,Y.useCallback)(async()=>{if(t){c(`add`),u(null);try{let e=await B.post(`/api/tunnels`,{port:t});o({pid:0,port:t,url:e.url,source:`ppm`,protected:!1}),n(e.url),f()}catch(e){u(e instanceof Error?e.message:`Could not create a temporary link`)}finally{c(null)}}},[t,n,f]),m=(0,Y.useCallback)(async()=>{if(a?.pid){c(`stop`),u(null);try{await B.del(`/api/tunnels/${a.pid}`),o(null),n(null)}catch(e){u(e instanceof Error?e.message:`Could not stop the temporary link`)}finally{c(null)}}},[a?.pid,n]);return!r||r.authEnabled===!1||!r.hostname||(r.liveMode??r.mode)!==`named`?null:(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-xs`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,X.jsx)(je,{className:`size-3 text-primary shrink-0`}),(0,X.jsxs)(`span`,{className:`text-foreground truncate`,children:[`Your domain · `,r.hostname]})]}),(0,X.jsx)(`button`,{onClick:a?m:p,disabled:s!==null||!t,className:`shrink-0 min-h-11 px-2.5 flex items-center gap-1 text-xs rounded-md border border-border hover:bg-muted transition-colors disabled:opacity-50`,title:a?`Stop the temporary link`:`Also expose a temporary link for one-off sharing`,children:s?(0,X.jsx)(L,{className:`size-3.5 animate-spin`}):a?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Un,{className:`size-3`}),` Stop temp link`]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Dt,{className:`size-3`}),` Temp link`]})})]}),r.tunnelWarning&&(0,X.jsx)(`p`,{className:`text-[11px] text-amber-500 leading-relaxed`,children:r.tunnelWarning}),l&&(0,X.jsx)(`p`,{className:`text-[11px] text-destructive`,children:l})]})}var Iy=`ppm-last-local-url`;function Ly(e){try{e&&localStorage.setItem(Iy,e)}catch{}}function Ry(){try{let e=localStorage.getItem(Iy);return e&&/^https?:\/\//.test(e)?e:null}catch{return null}}function zy({onClose:e,variant:t=`popover`}){let[n,r]=(0,Y.useState)(null),[i,a]=(0,Y.useState)(null),[o,s]=(0,Y.useState)(!0),[c,l]=(0,Y.useState)(!1),[u,d]=(0,Y.useState)(!1),[f,p]=(0,Y.useState)(!1),[m,h]=(0,Y.useState)(null),[g,_]=(0,Y.useState)(null),[v,y]=(0,Y.useState)(null),[b,x]=(0,Y.useState)(!1),[S,C]=(0,Y.useState)(!1),[w,T]=(0,Y.useState)(null),E=(0,Y.useCallback)(async()=>{try{let[e,t]=await Promise.all([B.get(`/api/cloud/status`),B.get(`/api/tunnel`)]);r(e),a(t),Ly(t.localUrl)}catch{}},[]);(0,Y.useEffect)(()=>{E().finally(()=>s(!1))},[E]);let D=(0,Y.useCallback)(e=>{C((e.liveMode??e.mode)===`named`)},[]),O=(()=>{if(!i?.localUrl)return null;let e=Number(new URL(i.localUrl).port);return Number.isFinite(e)&&e>0?e:null})(),k=(0,Y.useCallback)(e=>{uu(e),_(e),setTimeout(()=>_(null),2e3)},[]),A=(0,Y.useCallback)(async()=>{l(!0),h(null);try{a({active:!0,url:(await B.post(`/api/tunnel/start`,{})).url,localUrl:i?.localUrl??null}),r(await B.get(`/api/cloud/status`))}catch(e){h(e instanceof Error?e.message:`Failed to start tunnel`)}finally{l(!1)}},[i]),ee=(0,Y.useCallback)(async()=>{h(null);try{let{cloud_url:e}=await B.get(`/api/cloud/login-url`),t=await fetch(`${e}/auth/device-code`,{method:`POST`,headers:{"Content-Type":`application/json`}});if(!t.ok)throw Error(`Failed to get device code`);let n=await t.json();y({userCode:n.user_code,verifyUrl:n.verification_uri}),x(!0);let i=(n.interval||5)*1e3,a=Date.now()+n.expires_in*1e3,o=setInterval(async()=>{if(Date.now()>a){clearInterval(o),x(!1),y(null),h(`Login expired. Try again.`);return}try{let t=await fetch(`${e}/auth/device-code/poll`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({device_code:n.device_code})});if(!t.ok)return;let i=await t.json();i.status===`approved`&&i.access_token&&i.email&&(clearInterval(o),x(!1),y(null),await B.post(`/api/cloud/login`,{access_token:i.access_token,email:i.email,cloud_url:e}),r(await B.get(`/api/cloud/status`)))}catch{}},i)}catch(e){h(e instanceof Error?e.message:`Failed to start login`),x(!1),y(null)}},[]),j=(0,Y.useCallback)(async()=>{d(!0),h(null);try{i?.active||a({active:!0,url:(await B.post(`/api/tunnel/start`,{})).url,localUrl:i?.localUrl??null}),await B.post(`/api/cloud/link`,{}),r(await B.get(`/api/cloud/status`))}catch(e){h(e instanceof Error?e.message:`Failed to link device`)}finally{d(!1)}},[i]),te=(0,Y.useCallback)(async()=>{if(confirm(`Unlink this device from PPM Cloud? It will no longer appear on your cloud dashboard.`)){p(!0);try{await B.post(`/api/cloud/unlink`,{}),r(await B.get(`/api/cloud/status`))}catch{}p(!1)}},[]),M=(0,Y.useCallback)(async()=>{let e=n?.linked?`Sign out from PPM Cloud? This will also unlink your device.`:`Sign out from PPM Cloud?`;if(confirm(e)){if(n?.linked)try{await B.post(`/api/cloud/unlink`,{})}catch{}await B.post(`/api/cloud/logout`,{}),r(e=>e?{...e,logged_in:!1,email:null,linked:!1,device_name:null,device_id:null}:null)}},[n?.linked]),N=i?.url||n?.tunnel_url;return(0,X.jsxs)(`div`,{className:t===`sheet`?`w-full p-3 space-y-3`:`w-72 bg-background border border-border rounded-lg shadow-lg p-3 space-y-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,X.jsx)(Ct,{className:`size-4 text-primary`}),(0,X.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:`PPM Cloud`})]}),(0,X.jsx)(`button`,{onClick:e,className:`text-text-subtle hover:text-foreground`,children:(0,X.jsx)(Be,{className:`size-3.5`})})]}),o&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-muted-foreground text-xs py-2`,children:[(0,X.jsx)(L,{className:`size-4 animate-spin`}),(0,X.jsx)(`span`,{children:`Loading...`})]}),!o&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`space-y-1.5`,children:n?.logged_in?(0,X.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,X.jsx)(`div`,{className:`size-2 rounded-full bg-success shrink-0`}),(0,X.jsx)(`span`,{className:`text-xs text-foreground truncate`,children:n.email})]}),(0,X.jsx)(`button`,{onClick:M,className:`text-text-subtle hover:text-foreground p-1 rounded hover:bg-muted transition-colors shrink-0`,title:`Sign out`,children:(0,X.jsx)(fn,{className:`size-3`})})]}):v?(0,X.jsxs)(`div`,{className:`space-y-2 text-center`,children:[(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Open the link below and enter the code:`}),(0,X.jsx)(`div`,{className:`font-mono text-2xl font-bold tracking-[0.3em] text-primary`,children:v.userCode}),(0,X.jsx)(`a`,{href:v.verifyUrl,target:`_blank`,rel:`noopener noreferrer`,className:`text-xs text-primary hover:underline`,children:v.verifyUrl}),b&&(0,X.jsxs)(`div`,{className:`flex items-center justify-center gap-1.5 text-xs text-muted-foreground`,children:[(0,X.jsx)(L,{className:`size-3 animate-spin`}),(0,X.jsx)(`span`,{children:`Waiting for verification...`})]})]}):(0,X.jsxs)(X.Fragment,{children:[N&&(0,X.jsx)(`p`,{className:`text-[11px] text-muted-foreground leading-relaxed`,children:S?`This link is permanent — it lives on your own domain. Sign in to PPM Cloud to keep your devices in sync.`:`This link changes every time PPM restarts. Sign in to get a permanent one that always points here — private to your account.`}),(0,X.jsxs)(`button`,{onClick:ee,className:`w-full flex items-center justify-center gap-1.5 px-3 py-2 text-xs font-medium rounded-md border border-border hover:bg-muted transition-colors`,children:[(0,X.jsx)(Ct,{className:`size-3.5`}),N&&!S?`Get a permanent link`:`Sign in to PPM Cloud`]})]})}),n?.logged_in&&(0,X.jsx)(`div`,{className:`space-y-1.5`,children:n.linked?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,X.jsx)(hn,{className:`size-3 text-primary shrink-0`}),(0,X.jsx)(`span`,{className:`text-foreground truncate`,children:n.device_name})]}),(0,X.jsx)(`button`,{onClick:te,disabled:f,className:`text-text-subtle hover:text-destructive p-1 rounded hover:bg-muted transition-colors shrink-0`,title:`Unlink device`,children:f?(0,X.jsx)(L,{className:`size-3 animate-spin`}):(0,X.jsx)(Ie,{className:`size-3`})})]}),(0,X.jsx)(Py,{cloudUrl:n.cloud_url,deviceName:n.device_name})]}):(0,X.jsx)(`button`,{onClick:j,disabled:u,className:`w-full flex items-center justify-center gap-1.5 px-3 py-1.5 text-xs font-medium rounded-md bg-primary text-primary-foreground hover:bg-primary/90 transition-colors disabled:opacity-50`,children:u?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(L,{className:`size-3.5 animate-spin`}),` Linking...`]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(hn,{className:`size-3.5`}),` Link this machine`]})})}),(0,X.jsx)(`div`,{className:`border-t border-border`}),(0,X.jsx)(Fy,{onStatus:D,publicPort:O,onTempUrl:T}),i?.localUrl&&(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Local Network`}),(0,X.jsx)(By,{url:i.localUrl,copied:g,onCopy:k})]}),!N&&!c&&(0,X.jsxs)(`button`,{onClick:A,className:`w-full flex items-center justify-center gap-1.5 px-3 py-1.5 text-xs font-medium rounded-md bg-primary text-primary-foreground hover:bg-primary/90 transition-colors`,children:[(0,X.jsx)(pn,{className:`size-3.5`}),`Start Sharing`]}),c&&(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-2`,children:[(0,X.jsx)(L,{className:`size-5 animate-spin text-primary`}),(0,X.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Starting tunnel...`})]}),N&&(0,X.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,X.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Public URL`}),(0,X.jsx)(`div`,{className:`flex justify-center`,children:(0,X.jsx)(`div`,{className:`p-3 rounded-lg`,style:{backgroundColor:`#ffffff`,colorScheme:`light`},children:(0,X.jsx)(ky,{value:N,size:180,bgColor:`#ffffff`,fgColor:`#000000`,level:`L`,style:{display:`block`}})})}),(0,X.jsx)(By,{url:N,copied:g,onCopy:k})]}),w&&w!==N&&(0,X.jsxs)(`div`,{className:`space-y-1`,children:[(0,X.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Temporary link`}),(0,X.jsx)(By,{url:w,copied:g,onCopy:k}),(0,X.jsx)(`p`,{className:`text-[11px] text-muted-foreground leading-relaxed`,children:`Stops when you press Stop temp link, or when PPM restarts.`})]}),n?.logged_in&&n.linked&&(0,X.jsxs)(`a`,{href:n.cloud_url+`/dashboard`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center justify-center gap-1.5 w-full px-3 py-1.5 text-xs text-muted-foreground hover:text-foreground rounded-md border border-border hover:bg-muted transition-colors`,children:[(0,X.jsx)(Rt,{className:`size-3`}),`Open Cloud Dashboard`]}),m&&(0,X.jsx)(`p`,{className:`text-xs text-destructive`,children:m})]})]})}function By({url:e,copied:t,onCopy:n}){return(0,X.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,X.jsx)(`input`,{readOnly:!0,value:e,className:`flex-1 text-xs font-mono text-foreground bg-muted px-2 py-1.5 rounded border border-border truncate`,onClick:e=>e.target.select()}),(0,X.jsx)(`button`,{onClick:()=>n(e),className:`flex items-center justify-center size-7 rounded border border-border text-muted-foreground bg-muted hover:bg-accent hover:text-foreground transition-colors shrink-0`,title:`Copy URL`,children:t===e?(0,X.jsx)(Rn,{className:`size-3.5 text-primary`}):(0,X.jsx)(_n,{className:`size-3.5`})})]})}var Vy=`hienlh/ppm`;async function Hy(e,t){let n=`(could not fetch)`;try{let e=er(),t=await(await fetch(`/api/logs/recent`,e?{headers:{Authorization:`Bearer ${e}`}}:{})).json();t.ok&&(n=t.data.logs||`(empty)`)}catch{}let r=``;if(t?.sessionId&&t?.projectName)try{let e=await B.get(`${z(t.projectName)}/chat/sessions/${t.sessionId}/logs?tail=100`);e.logs&&(r=e.logs)}catch{}return[`## Environment`,`- PPM: v${e??`unknown`}`,`- Browser: ${navigator.userAgent}`,``,`## Description`,`<!-- Describe the bug -->`,``,`## Steps to Reproduce`,`1. `,``,`## Expected Behavior`,``,...r?[`## Chat Session Logs (${t?.sessionId?.slice(0,8)})`,"```",r,"```",``]:[],`## Server Logs (last 30 lines)`,"```",n,"```"].join(`
21
- `)}function Uy(e){let t=`https://github.com/${Vy}/issues/new?title=bug%3A%20&body=${encodeURIComponent(e)}`;window.open(t,`_blank`)}function Wy(e,t){Hy(e,t).then(e=>{window.dispatchEvent(new CustomEvent(`open-bug-report`,{detail:e}))})}var Gy=`pointer-events-none absolute left-[calc(100%+8px)] z-50 hidden can-hover:group-hover:block hover-label-delayed whitespace-nowrap rounded-md border border-border bg-surface-elevated px-2 py-1 text-xs font-medium text-foreground shadow-[0_4px_12px_rgba(0,0,0,.4)]`;function Ky({count:e}){return(0,X.jsx)(`span`,{className:`absolute top-1 right-1 min-w-[16px] h-4 px-1 flex items-center justify-center rounded-full bg-primary text-primary-foreground text-[10px] font-medium leading-none`,children:e>99?`99+`:e})}function qy({icon:e,label:t,active:n,badge:r,featureBadge:i,onClick:a,dragging:o,dropBefore:s,onDragStart:c,onDragOver:l,onDrop:u,onDragEnd:d}){return(0,X.jsxs)(`button`,{draggable:!0,onDragStart:c,onDragOver:l,onDrop:u,onDragEnd:d,onClick:a,className:U(`group relative flex items-center justify-center size-[38px] rounded-[9px] transition-colors shrink-0`,n?`bg-accent-wash text-primary shadow-[inset_2px_0_0_var(--accent)]`:`text-text-subtle hover:bg-surface-elevated hover:text-foreground`,o&&`opacity-40`,s&&`shadow-[inset_0_2px_0_var(--accent)]`),children:[(0,X.jsx)(e,{className:`size-[18px]`,strokeWidth:n?2.4:2}),r!=null&&r>0&&(0,X.jsx)(Ky,{count:r}),(0,X.jsx)(av,{id:i,variant:`corner`}),(0,X.jsx)(`span`,{className:Gy,children:t})]})}function Jy({icon:e,label:t,onClick:n,active:r,featureBadge:i}){return(0,X.jsxs)(`button`,{type:`button`,"aria-label":t,title:t,onClick:n,className:U(`group relative flex items-center justify-center size-8 rounded-[7px] transition-colors shrink-0`,r?`text-primary bg-accent-wash`:`text-text-subtle hover:bg-surface-elevated hover:text-foreground`),children:[(0,X.jsx)(e,{className:`size-4`}),(0,X.jsx)(av,{id:i,variant:`corner`}),(0,X.jsx)(`span`,{className:Gy,children:t})]})}var Yy=(0,Y.memo)(function({className:e}){let{activeProject:t}=G(jd(e=>({activeProject:e.activeProject}))),n=V(e=>e.sidebarActiveTab),r=V(e=>e.setSidebarActiveTab),i=V(e=>e.sidebarTabOrder),a=V(e=>e.setSidebarTabOrder),o=V(e=>e.sidebarCollapsed),s=V(e=>e.toggleSidebar),c=V(e=>e.jiraEnabled),l=V(e=>e.version),u=dl(e=>e.contributions),d=xf(e=>t?.name?e.counts.get(t.name)??0:0),f=Qh(e=>e.unreadCount),p=Xs(Qs(t?.name)),m=(0,Y.useMemo)(()=>ty(Oi({jiraEnabled:c,contributions:u}),i),[u,c,i]),[h,g]=(0,Y.useState)(null),[_,v]=(0,Y.useState)(null),y=e=>{if(h&&h!==e){let t=m.map(e=>e.id),n=t.indexOf(h);if(n>=0){t.splice(n,1);let r=t.indexOf(e);t.splice(r<0?t.length:r,0,h),a(t)}}g(null),v(null)},[b,x]=(0,Y.useState)(!1),S=(0,Y.useRef)(null),[C,w]=(0,Y.useState)(null);(0,Y.useEffect)(()=>{if(!b||!S.current){w(null);return}let e=S.current.getBoundingClientRect();w({left:e.right+6,bottom:window.innerHeight-e.bottom})},[b]),(0,Y.useEffect)(()=>{let e=()=>{gi()||x(!0)};return window.addEventListener(`open-cloud-share`,e),()=>window.removeEventListener(`open-cloud-share`,e)},[]);let T=Xv(),{available:E}=ey(),D=()=>Wy(l),O=e=>{o?(r(e),s()):n===e?s():r(e)};return(0,X.jsxs)(`div`,{className:U(`w-[52px] shrink-0 border-r border-border flex flex-col`,e),children:[(0,X.jsx)(`div`,{className:`flex-1 overflow-y-auto min-h-0 flex flex-col items-center gap-[3px] px-[3px] py-2 scrollbar-none`,children:m.map(e=>(0,X.jsx)(qy,{icon:e.icon,label:e.label,active:n===e.id,badge:e.id===`git`?d:e.id===`jira`?f:e.id===`history`?p:void 0,featureBadge:e.badge,onClick:()=>O(e.id),dragging:h===e.id,dropBefore:_===e.id&&h!==e.id,onDragStart:t=>{g(e.id),t.dataTransfer.effectAllowed=`move`},onDragOver:t=>{t.preventDefault(),v(e.id)},onDrop:t=>{t.preventDefault(),y(e.id)},onDragEnd:()=>{g(null),v(null)}},e.id))}),(0,X.jsxs)(`div`,{className:`shrink-0 flex flex-col items-center gap-0.5 px-[3px] py-2 border-t border-border`,children:[(0,X.jsx)(ny,{expanded:!1}),(0,X.jsxs)(`button`,{ref:S,onClick:()=>x(!b),className:U(`group relative flex items-center justify-center size-8 rounded-[7px] transition-colors shrink-0`,b?`text-primary bg-primary/10`:`text-text-subtle hover:bg-surface-elevated hover:text-foreground`),children:[(0,X.jsx)(Ct,{className:`size-4`}),(0,X.jsx)(`span`,{className:Gy,children:`Cloud & Share`})]}),b&&C&&(0,Nu.createPortal)((0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:()=>x(!1)}),(0,X.jsx)(`div`,{className:`fixed z-50`,style:{left:C.left,bottom:C.bottom},children:(0,X.jsx)(zy,{onClose:()=>x(!1)})})]}),document.body),(0,X.jsx)(Jy,{icon:Ye,label:`File Explorer`,featureBadge:`os-explorer`,onClick:()=>void Rp()}),E&&(0,X.jsx)(Jy,{icon:Te,label:`Remote Desktop`,featureBadge:`remote-desktop`,onClick:T}),(0,X.jsx)(Jy,{icon:Vn,label:`Report Bug`,onClick:D}),(0,X.jsx)(Jy,{icon:Kt,label:`Settings`,onClick:()=>pl()})]})]})}),Xy=(0,Y.lazy)(()=>H(()=>import(`./designs-sidebar-panel-CF4tp6j-.js`).then(e=>({default:e.DesignsSidebarPanel})),__vite__mapDeps([89,1,2,3,27,6,7,8,9,10,11,12,87,38,16,19,15,17,35,49,90,48,23])));function Zy({onResize:e}){let t=(0,Y.useRef)(!1);return(0,X.jsx)(`div`,{className:`absolute right-0 top-0 bottom-0 w-1 cursor-col-resize hover:bg-primary/30 active:bg-primary/50 transition-colors z-10`,onPointerDown:(0,Y.useCallback)(e=>{e.preventDefault(),t.current=!0,e.currentTarget.setPointerCapture(e.pointerId),document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`},[]),onPointerMove:(0,Y.useCallback)(n=>{t.current&&e(n.clientX)},[e]),onPointerUp:(0,Y.useCallback)(e=>{t.current=!1,e.currentTarget.releasePointerCapture(e.pointerId),document.body.style.cursor=``,document.body.style.userSelect=``},[])})}function Qy({onToggle:e}){return(0,X.jsx)(`button`,{onClick:e,title:`Toggle sidebar (⌘B)`,className:`w-[52px] shrink-0 flex items-center justify-center border-r border-border hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(`span`,{className:`text-sm font-extrabold text-primary leading-none tracking-tight`,children:`PPM`})})}var $y=(0,Y.memo)(function(){let{activeProject:e}=G(jd(e=>({activeProject:e.activeProject}))),t=V(e=>e.sidebarCollapsed),n=V(e=>e.sidebarWidth),r=V(e=>e.toggleSidebar),i=V(e=>e.setSidebarWidth),a=V(e=>e.sidebarActiveTab);return Cf(e?.name,a===`git`),t?(0,X.jsxs)(`aside`,{className:`hidden md:flex flex-col w-[52px] min-w-[52px] bg-rail border-r border-border`,children:[(0,X.jsx)(`button`,{onClick:r,title:`Expand sidebar (⌘B)`,className:`flex flex-col items-center justify-center gap-px h-[41px] border-b border-border text-primary hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(be,{className:`size-4 text-text-secondary`})}),(0,X.jsx)(Yy,{className:`flex-1 min-h-0`})]}):(0,X.jsxs)(`aside`,{className:`hidden md:flex flex-col bg-panel border-r border-border overflow-hidden relative`,style:{width:n,minWidth:200,maxWidth:600},children:[(0,X.jsxs)(`div`,{className:`flex h-[41px] border-b border-border shrink-0`,children:[(0,X.jsx)(Qy,{onToggle:r}),(0,X.jsx)(`div`,{className:`flex-1 min-w-0 flex items-center px-1.5`,children:(0,X.jsx)(Jv,{})})]}),(0,X.jsxs)(`div`,{className:`flex-1 min-h-0 flex`,children:[(0,X.jsx)(Yy,{}),(0,X.jsx)(`div`,{className:`flex-1 min-w-0 flex flex-col`,children:(0,X.jsxs)(`div`,{className:`flex-1 overflow-y-auto min-h-0`,"data-onboarding":a===`explorer`?`explorer`:void 0,children:[a===`explorer`&&(e?(0,X.jsx)(Sm,{}):(0,X.jsx)(`div`,{className:`flex items-center justify-center h-24 p-4`,children:(0,X.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Select a project to browse files`})})),a===`git`&&(0,X.jsx)(hh,{metadata:{projectName:e?.name}}),a===`search`&&(0,X.jsx)(Gh,{}),a===`history`&&(e?(0,X.jsx)(nv,{variant:`sidebar`,projectName:e.name}):(0,X.jsx)(`div`,{className:`flex items-center justify-center h-24 p-4`,children:(0,X.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Select a project to view chat history`})})),a===`teams`&&(0,X.jsx)(Tv,{}),a===`designs`&&(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(Xy,{})}),a===`database`&&(0,X.jsx)(Vh,{}),a===`tunnels`&&(0,X.jsx)(q_,{}),a===`jira`&&(0,X.jsx)(bg,{}),a===`ai-resources`&&(0,X.jsx)(y_,{}),typeof a==`string`&&a.startsWith(`ext:`)&&(0,X.jsx)(Jh,{viewId:a.slice(4),className:`h-full`})]})})]}),(0,X.jsx)(Zy,{onResize:i})]})}),eb=1e4;function tb(){let e=er();return e?{Authorization:`Bearer ${e}`}:{}}async function nb(e){await fetch(`/api/system/resources/stream/${encodeURIComponent(e)}/ping`,{method:`POST`,headers:tb()}).catch(()=>{})}async function rb(e){await fetch(`/api/system/resources/stream/${encodeURIComponent(e)}`,{method:`DELETE`,headers:tb()}).catch(()=>{})}function ib(e,t){let n=e.length-t;if(n<=0)return e;let r=!1,i=e.map((e,t)=>t>=n||Object.keys(e.groups).length===0?e:(r=!0,{...e,groups:{}}));return r?i:e}var ab=null,ob=0,sb=0,cb=!1,lb=null,ub=[],db=!1,fb=null,pb=0,mb=null,hb=new Set;function gb(){for(let e of hb)e()}function _b(){mb&&=(clearInterval(mb),null);let e=fb;fb=null,e&&rb(e)}function vb(e){fb=e,mb&&clearInterval(mb),mb=setInterval(()=>{let e=fb;e&&nb(e)},eb)}function yb(e){let t=er(),n=new URLSearchParams;t&&n.set(`token`,t),e&&n.set(`processes`,`1`);let r=n.toString();return`/api/system/resources/stream${r?`?${r}`:``}`}function bb(e){if(ab)return;pb=0;let t=new EventSource(yb(e));cb=e,t.addEventListener(`session`,e=>{try{let t=JSON.parse(e.data);t.sid&&vb(t.sid)}catch{}}),t.addEventListener(`snapshot`,e=>{try{let t=JSON.parse(e.data);lb=t;let n={ts:t.ts,system:t.system,groups:Object.fromEntries(t.groups.map(e=>[e.key,{cpu:e.cpu,ramMB:e.ramMB}]))};ub=[...ub,n],ub.length>900&&(ub=ub.slice(-900)),ub=ib(ub,60),pb++,db=!0,gb()}catch{}}),t.onerror=()=>{if(db=!1,_b(),ab&&=(ab.close(),null),gb(),ob>0){let e=sb>0;setTimeout(()=>{!ab&&ob>0&&bb(e)},5e3)}},t.onopen=()=>{db=!0,gb()},ab=t}function xb(){_b(),ab&&(ab.close(),ab=null,db=!1,gb())}function Sb(){let e=sb>0;if(ob===0){xb();return}if(!ab){bb(e);return}cb!==e&&(xb(),bb(e))}function Cb(e={}){let[,t]=(0,Y.useState)(0),n=(0,Y.useRef)(!0),r=!!e.processes,i=(0,Y.useCallback)(()=>{n.current&&t(e=>e+1)},[]);return(0,Y.useEffect)(()=>(n.current=!0,hb.add(i),ob++,r&&sb++,Sb(),()=>{n.current=!1,hb.delete(i),ob--,r&&sb--,Sb()}),[i,r]),{latest:lb,history:ub,isConnected:db,tickCount:pb}}function wb(e,t){return e?{kind:`tab`,tab:{type:`system-monitor`,title:`System Monitor`,projectId:null,closable:!0}}:t?{kind:`focus`,id:t}:{kind:`window`}}function Tb(){let e=hi(),t=Mr(e=>e.open),n=Mr(e=>e.focus),r=K(e=>e.openTab);return(0,Y.useCallback)(()=>{let i=wb(e,Object.values(Mr.getState().windows).find(e=>e.kind===`system-monitor`)?.id??null);i.kind===`tab`?r(i.tab):i.kind===`focus`?n(i.id):t(`system-monitor`)},[e,t,n,r])}function Eb(e){return e>80?`text-error`:e>50?`text-warning`:`text-success`}var Db=(0,Y.memo)(function({compact:e=!1}){let{latest:t,isConnected:n}=Cb(),r=Tb(),i=hi();if(!n||!t)return e?null:(0,X.jsxs)(`button`,{onClick:r,"data-testid":`status-bar-resources`,"aria-label":`Open System Monitor`,className:`flex items-center gap-1.5 px-2 py-1 text-[10px] text-text-subtle hover:text-text-secondary transition-colors w-full`,children:[(0,X.jsx)(Dn,{className:`size-3 opacity-50`}),(0,X.jsx)(`span`,{className:`opacity-50`,children:`Connecting...`})]});let a=t.system.cpu.total,o=t.system.mem.usedMB,s=t.system.processCount,c=o<1024?`${o.toFixed(0)}M`:`${(o/1024).toFixed(1)}G`;return e?(0,X.jsxs)(`button`,{onClick:r,"data-testid":`status-bar-resources`,"aria-label":`Open System Monitor`,className:`flex items-center gap-2 px-1 rounded-sm hover:bg-accent/15 transition-colors cursor-pointer`,title:`Open System Monitor`,children:[(0,X.jsxs)(`span`,{className:Eb(a),children:[`CPU `,a.toFixed(0),`%`]}),(0,X.jsxs)(`span`,{className:`text-text-secondary`,children:[`MEM `,c]})]}):(0,X.jsxs)(`button`,{onClick:r,"data-testid":`status-bar-resources`,"aria-label":`Open System Monitor`,className:`flex items-center gap-1.5 px-2 py-1 text-[10px] hover:bg-surface-hover transition-colors w-full cursor-pointer`,title:`Open System Monitor`,children:[(0,X.jsx)(Dn,{className:U(`size-3`,Eb(a))}),(0,X.jsx)(`span`,{className:Eb(a),children:i?`${a.toFixed(0)}%`:`CPU ${a.toFixed(1)}%`}),(0,X.jsx)(`span`,{className:`text-text-subtle`,children:`|`}),(0,X.jsx)(`span`,{className:`text-text-secondary`,children:o<1024?`${o.toFixed(0)}MB`:`${(o/1024).toFixed(1)}GB`}),!i&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`text-text-subtle`,children:`|`}),(0,X.jsxs)(`span`,{className:`text-text-subtle`,children:[s,` proc`]})]})]})}),Ob=(e,t)=>`${e}\u0000${t}`,kb=lr(e=>({files:{},publish:(t,n,r)=>e(e=>{let i=Ob(t,n);if(r.length===0){if(!e.files[i])return e;let{[i]:t,...n}=e.files;return{files:n}}return{files:{...e.files,[i]:{projectName:t,filePath:n,diagnostics:r}}}}),clear:(t,n)=>e(e=>{let r=Ob(t,n);if(!e.files[r])return e;let{[r]:i,...a}=e.files;return{files:a}})}));function Ab(e,t){return t?Object.fromEntries(Object.entries(e).filter(([,e])=>e.projectName===t)):e}function jb(e){let t=0,n=0;for(let r of Object.values(e))for(let e of r.diagnostics)e.severity===1?t++:e.severity===2&&n++;return{errors:t,warnings:n}}function Mb(e){return Object.values(e).map(e=>({...e,diagnostics:[...e.diagnostics].sort((e,t)=>e.range.start.line-t.range.start.line||e.range.start.character-t.range.start.character)})).sort((e,t)=>e.filePath.localeCompare(t.filePath))}function Nb(){let e=W(e=>e.openInDock);return(0,Y.useCallback)(()=>{e({type:`problems`,title:`Problems`,projectId:null,closable:!0})},[e])}var Pb=(0,Y.memo)(function(){let e=kb(jd(e=>e.files)),t=G(e=>e.activeProject?.name??null),n=Nb(),{errors:r,warnings:i}=jb(Ab(e,t));return(0,X.jsxs)(`button`,{onClick:n,title:`${r} error${r===1?``:`s`}, ${i} warning${i===1?``:`s`} — open the Problems panel`,"aria-label":`Open the Problems panel`,className:`flex items-center gap-2 px-1 rounded-sm transition-colors hover:bg-accent/15 hover:text-text-primary shrink-0`,children:[(0,X.jsxs)(`span`,{className:U(`flex items-center gap-1`,r>0&&`text-error`),children:[(0,X.jsx)(pt,{className:`size-[11px]`}),r]}),(0,X.jsxs)(`span`,{className:U(`flex items-center gap-1`,i>0&&`text-warning`),children:[(0,X.jsx)(Tn,{className:`size-[11px]`}),i]})]})});function Fb({swatch:e,className:t}){return(0,X.jsx)(`span`,{className:U(`inline-flex overflow-hidden rounded-md border border-border shrink-0`,t),"aria-hidden":!0,children:e.map((e,t)=>(0,X.jsx)(`span`,{className:`w-3 h-6`,style:{background:e}},t))})}var Ib=(0,Y.memo)(function(){let e=V(e=>e.themeStyle),t=V(e=>e.themeMode),n=V(e=>e.customThemeId),r=V(e=>e.customThemes),i=V(e=>e.setThemeStyle),a=V(e=>e.setThemeMode),o=V(e=>e.setCustomTheme),s=Ta(e,t,r,n),c=e=>{let t=wa[e];t&&(i(t.style),a(t.mode))};return(0,X.jsxs)($u,{children:[(0,X.jsx)(td,{asChild:!0,children:(0,X.jsxs)(`button`,{title:`Theme`,"aria-label":`Theme`,className:`flex items-center gap-1 px-1 rounded-sm transition-colors hover:bg-accent/40 hover:text-text-primary`,children:[(0,X.jsx)(We,{className:`size-[11px]`}),(0,X.jsx)(`span`,{className:`truncate max-w-[90px] @max-3xl:hidden`,children:s.name})]})}),(0,X.jsxs)(nd,{side:`top`,align:`end`,className:`w-56`,children:[(0,X.jsx)(sd,{children:`Theme`}),Ca.map(e=>{let t=wa[e];if(!t)return null;let n=s.id===e;return(0,X.jsxs)(rd,{onClick:()=>c(e),className:`gap-2`,children:[(0,X.jsx)(Fb,{swatch:t.swatch}),(0,X.jsx)(`span`,{className:`flex-1 truncate`,children:t.name}),(0,X.jsx)(Rn,{className:U(`size-4 shrink-0`,n?`opacity-100`:`opacity-0`)})]},e)}),r.length>0&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(sd,{children:`Imported`}),r.map(t=>{let r=e===`custom`&&n===t.id;return(0,X.jsxs)(rd,{onClick:()=>o(t.id),className:`gap-2`,children:[(0,X.jsx)(Fb,{swatch:t.swatch}),(0,X.jsx)(`span`,{className:`flex-1 truncate`,children:t.name}),(0,X.jsx)(Rn,{className:U(`size-4 shrink-0`,r?`opacity-100`:`opacity-0`)})]},t.id)})]})]})]})}),Lb=`https://raw.githubusercontent.com/hienlh/ppm/main/CHANGELOG.md`;function Rb(e,t){let n=e.split(`.`).map(e=>parseInt(e,10)||0),r=t.split(`.`).map(e=>parseInt(e,10)||0);for(let e=0;e<3;e++){let t=(n[e]??0)-(r[e]??0);if(t!==0)return t}return 0}var zb=/^##\s*\[(\d+\.\d+\.\d+)\]\s*(?:-\s*(.+))?\s*$/;function Bb(e){let t=e.split(/\r?\n/),n=[],r=null,i=[],a=()=>{r&&(r.body=i.join(`
22
- `).trim(),n.push(r)),i.length=0};for(let e of t){let t=e.match(zb);t?(a(),r={version:t[1],date:(t[2]??``).trim(),body:``}):r&&i.push(e)}return a(),n}function Vb(e){return e.reduce((e,t)=>e&&Rb(t.version,e)<=0?e:t.version,null)}async function Hb(){let e=await fetch(`${Lb}?t=${Date.now()}`,{cache:`no-store`});if(!e.ok)throw Error(`CHANGELOG fetch failed (${e.status})`);return e.text()}async function Ub(e=10){return Bb(await Hb()).slice(0,e)}var Wb=6e4,Gb=`ppm-upgrade-dismissed-`,Kb=`https://github.com/hienlh/ppm/releases`,qb=`ppm-upgrade-test`;(function(){if(typeof window>`u`)return;let e=new URLSearchParams(window.location.search);if(!e.has(`ppm_upgrade_test`))return;let t=e.get(`ppm_upgrade_test`);t===`off`||t===`0`||t===`false`?sessionStorage.removeItem(qb):sessionStorage.setItem(qb,t||`1`)})();function Jb(){if(typeof window>`u`)return null;let e=sessionStorage.getItem(qb);return e===null?null:e===`1`?``:e}function Yb(e){let[t=0,n=0]=e.split(`.`).map(e=>parseInt(e,10)||0);return`${t}.${n+1}.0`}async function Xb(){if(`caches`in window){let e=await caches.keys();await Promise.all(e.map(e=>caches.delete(e)))}window.location.reload()}async function Zb(){let e=Date.now()+6e4;for(;Date.now()<e;){try{if((await fetch(`/api/health`,{cache:`no-store`})).ok)break}catch{}await new Promise(e=>setTimeout(e,2e3))}await Xb()}function Qb(e){if(e instanceof TypeError)return!0;let t=e?.message??``;return/fetch|network|failed to fetch|load failed/i.test(t)?!0:/HTTP 5(0[234]|2\d)\b/.test(t)}function $b({align:e=`right`}){let t=V(e=>e.version),[n,r]=(0,Y.useState)(null),[i,a]=(0,Y.useState)(null),[o,s]=(0,Y.useState)(!1),[c,l]=(0,Y.useState)(!1),[u,d]=(0,Y.useState)(!1),[f,p]=(0,Y.useState)(!1),[m,h]=(0,Y.useState)(!1),[g,_]=(0,Y.useState)(null),[v,y]=(0,Y.useState)(!1),b=(0,Y.useCallback)(async(e=!1)=>{try{let t=await B.get(e?`/api/upgrade?refresh=1`:`/api/upgrade`);r(t.currentVersion),t.availableVersion?(a(t.availableVersion),h(!!sessionStorage.getItem(Gb+t.availableVersion))):a(null)}catch{}},[]);(0,Y.useEffect)(()=>{b();let e=setInterval(()=>b(),Wb);return()=>clearInterval(e)},[b]),(0,Y.useEffect)(()=>{o&&b(!0)},[o,b]);let x=n??t,S=Jb(),C=S!==null,w=S||(x?Yb(x):`9.9.9`),T=i&&x&&Rb(i,x)>0?i:null;(0,Y.useEffect)(()=>{!o||!x||(y(!0),Ub().then(_).catch(()=>_([])).finally(()=>y(!1)))},[o,x]);let E=(0,Y.useMemo)(()=>{if(!g||!x)return null;let e=Vb(g);return e&&Rb(e,x)>0?e:null},[g,x]),D=T??E??(C?w:null),O=!!D&&!m,k=(0,Y.useMemo)(()=>{if(!g||!O||C||!x)return g;let e=g.filter(e=>Rb(e.version,x)>0);return e.length>0?e:g},[g,O,C,x]),A=(0,Y.useCallback)(()=>{l(!1),d(!0),p(!0),Zb()},[]),ee=(0,Y.useCallback)(async()=>{l(!0),s(!1);try{let e=await B.post(`/api/upgrade/apply`);e.restart?A():(R.info(e.message||`Upgrade installed. Restart PPM manually.`),l(!1),D&&sessionStorage.setItem(Gb+D,`1`),h(!0))}catch(e){Qb(e)?A():/already on latest/i.test(e.message)?(R.info(`v${D} is announced but not published yet — try again shortly.`),l(!1)):(R.error(`Upgrade failed: ${e.message}`),l(!1))}},[D,A]),j=(0,Y.useCallback)(()=>{D&&sessionStorage.setItem(Gb+D,`1`),h(!0),s(!1)},[D]);return!x&&!O?null:u?(0,X.jsx)(`button`,{onClick:()=>{p(!0),Zb()},disabled:f,className:`flex items-center gap-1 px-1 rounded-sm text-success hover:brightness-110 transition-[filter] disabled:opacity-70`,title:f?`Applying update — reconnecting to the server…`:`Reload to apply the update`,children:f?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(L,{className:`size-3 animate-spin`}),` Updating, reconnecting…`]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(en,{className:`size-3`}),` Reload`]})}):c?(0,X.jsxs)(`span`,{className:`flex items-center gap-1 px-1 text-success`,children:[(0,X.jsx)(L,{className:`size-3 animate-spin`}),` Updating…`]}):(0,X.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,X.jsxs)(`button`,{onClick:()=>x&&s(e=>!e),title:O?`Update available: v${D}`:`PPM v${x} — release notes`,className:U(`flex items-center gap-1 px-1 rounded-sm transition-colors`,O?`text-success hover:brightness-110`:`hover:text-text`),children:[O&&(0,X.jsx)(Wt,{className:`size-3`}),(0,X.jsxs)(`span`,{children:[O&&(0,X.jsx)(`span`,{className:`@max-3xl:hidden`,children:`New version · `}),`v`,O?D:x]})]}),o&&x&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:()=>s(!1)}),(0,X.jsxs)(`div`,{className:U(`absolute bottom-full mb-2 w-72 z-50 rounded-[var(--rad-sm)] border border-border popover-solid shadow-[var(--shadow-panel)] overflow-hidden font-sans`,e===`left`?`left-0`:`right-0`),children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2.5 px-3 py-3 border-b border-border-soft`,children:[(0,X.jsx)(`span`,{className:U(`flex items-center justify-center size-[26px] shrink-0 rounded-lg`,O?`bg-success/20`:`bg-accent/15`),children:O?(0,X.jsx)(Wt,{className:`size-[15px] text-success`}):(0,X.jsx)(mt,{className:`size-[15px] text-accent`})}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`div`,{className:`text-[13px] font-semibold text-text leading-tight`,children:O?`Update available`:`Release notes`}),(0,X.jsx)(`div`,{className:`text-[11px] text-text-3 font-mono mt-0.5`,children:O?`v${x} → v${D}`:`PPM v${x}`})]})]}),(0,X.jsx)(`div`,{className:`max-h-56 overflow-y-auto overflow-x-hidden px-3 py-2.5 text-[12px] text-text-2 leading-relaxed break-words`,children:v?(0,X.jsxs)(`span`,{className:`flex items-center gap-2 text-text-3`,children:[(0,X.jsx)(L,{className:`size-3.5 animate-spin`}),` Loading release notes…`]}):k&&k.length>0?(0,X.jsx)(`div`,{className:`space-y-2.5`,children:k.map(e=>(0,X.jsx)(tx,{version:e.version,body:e.body},e.version))}):(0,X.jsx)(`span`,{className:`text-text-3`,children:O?`A new version of PPM is available. Open the release notes for details.`:`No release notes available right now.`})}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1.5 px-3 pb-3`,children:[O&&(0,X.jsxs)(`button`,{onClick:C&&!T?()=>{R.info(`Test mode — no real update to install`),s(!1)}:ee,className:`flex items-center justify-center gap-1.5 w-full py-2 rounded-lg bg-success text-[12.5px] font-bold text-[#04130c] hover:brightness-105 transition-[filter]`,children:[(0,X.jsx)(An,{className:`size-3.5`}),` Update now`]}),(0,X.jsxs)(`div`,{className:`flex gap-1.5`,children:[(0,X.jsxs)(`a`,{href:Kb,target:`_blank`,rel:`noopener noreferrer`,className:`flex-1 flex items-center justify-center gap-1.5 py-2 rounded-lg border border-border bg-panel text-xs font-medium text-text-2 hover:text-text transition-colors`,children:[(0,X.jsx)(Rt,{className:`size-3`}),` Release notes`]}),O&&(0,X.jsx)(`button`,{onClick:j,className:`px-3 py-2 rounded-lg border border-border text-xs text-text-3 hover:text-text-2 transition-colors`,children:`Later`})]})]})]})]})]})}function ex(e){return e.replace(/\*\*(.+?)\*\*/g,`$1`).replace(/`([^`]+)`/g,`$1`)}function tx({version:e,body:t}){let n=t.split(`
23
- `);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:`text-[11px] font-mono font-semibold text-text mb-1`,children:[`v`,e]}),(0,X.jsx)(`div`,{className:`space-y-1`,children:n.map((e,t)=>{let n=e.trim();return n?n.startsWith(`### `)?(0,X.jsx)(`div`,{className:`text-[10px] font-semibold uppercase tracking-wide text-text-3 pt-1`,children:n.slice(4)},t):n.startsWith(`- `)?(0,X.jsxs)(`div`,{className:`flex gap-1.5 text-text-2`,children:[(0,X.jsx)(`span`,{className:`text-text-3 shrink-0`,children:`•`}),(0,X.jsx)(`span`,{className:`min-w-0 break-words`,children:ex(n.slice(2))})]},t):(0,X.jsx)(`div`,{className:`text-text-2 break-words`,children:ex(n)},t):null})})]})}var nx=lr(e=>({active:!1,setActive:t=>e(e=>e.active===t?e:{active:t})})),rx=`Screen awake`,ix=`Screen is being kept on while this turn runs`,ax=(0,Y.memo)(function(){return nx(e=>e.active)?(0,X.jsxs)(`span`,{className:`flex items-center gap-1 text-warning shrink-0`,title:ix,children:[(0,X.jsx)(Bn,{className:`size-3 shrink-0`}),(0,X.jsx)(`span`,{children:`awake`})]}):null}),ox=(0,Y.memo)(function(){return nx(e=>e.active)?(0,X.jsxs)(`div`,{className:`md:hidden fixed left-1/2 -translate-x-1/2 top-0 z-50 flex items-center gap-1 px-2 py-0.5 rounded-b bg-warning/85 text-white text-[10px] font-medium pointer-events-none`,title:ix,children:[(0,X.jsx)(Bn,{className:`size-3 shrink-0`}),(0,X.jsx)(`span`,{children:rx})]}):null});function sx(e,t){return e?e.tabs.filter(e=>!e.projectId||!t||e.projectId===t).length:0}`0`.repeat(40);function cx(e){return/^0+$/.test(e)}function lx(e,t=Date.now()){if(!e)return``;if(cx(e.hash))return`You, uncommitted changes`;let n=e.author||`Unknown`,r=e.authorTime>0?ux(e.authorTime*1e3,t):``,i=r?`${n}, ${r}`:n;return e.summary?`${i} • ${e.summary}`:i}function ux(e,t=Date.now()){let n=Math.max(0,Math.round((t-e)/1e3));if(n<60)return`just now`;for(let[e,t,r]of[[3600,60,`minute`],[86400,3600,`hour`],[2592e3,86400,`day`],[31536e3,2592e3,`month`],[1/0,31536e3,`year`]])if(n<e){let e=Math.floor(n/t);return`${e} ${r}${e===1?``:`s`} ago`}return`just now`}function dx(e){let t=new Date(e),n=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],r=t.getDate(),i=t.getHours()%12||12,a=String(t.getMinutes()).padStart(2,`0`),o=t.getHours()<12?`AM`:`PM`;return`${n[t.getMonth()]} ${r}${fx(r)}, ${t.getFullYear()} ${i}:${a} ${o}`}function fx(e){return e%100>=11&&e%100<=13?`th`:[`th`,`st`,`nd`,`rd`][e%10]??`th`}var px={pick:`Select a branch or tag to checkout`,name:`Branch name`,"pick-ref":`Select a ref`};function mx(e){return e.kind===`pick-ref`?e.purpose===`from`?`Select a ref to create the branch from`:`Select a branch or tag to checkout in detached mode`:px[e.kind]}var hx=`bg-primary/15 text-text-primary`,gx=`hover:bg-primary/10`,_x={branch:rt,remote:Ct,tag:Ee},vx={create:Dt,"create-from":Dt,detach:$t};function yx({projectName:e,onClose:t}){let{repo:n,gitUrl:r,rebaseStatus:i}=_f(e),[a,o]=(0,Y.useState)(null),[s,c]=(0,Y.useState)(null),[l,u]=(0,Y.useState)({kind:`pick`}),[d,f]=(0,Y.useState)(``),[p,m]=(0,Y.useState)(0),[h,g]=(0,Y.useState)(!1),_=(0,Y.useRef)(null),v=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{if(!n)return;let e=!1;return B.get(r(`/refs`)).then(t=>!e&&o(t)).catch(t=>!e&&c(t instanceof Error?t.message:`Could not list refs`)),()=>{e=!0}},[n,r]),(0,Y.useEffect)(()=>{requestAnimationFrame(()=>_.current?.focus())},[]);let y=(0,Y.useMemo)(()=>l.kind===`name`?[]:Am(a??[],d,{actions:l.kind===`pick`}),[a,d,l.kind]);(0,Y.useEffect)(()=>{m(jm(y))},[y]),(0,Y.useEffect)(()=>{v.current?.children[p]?.scrollIntoView({block:`nearest`})},[p]);let b=(0,Y.useCallback)(async(n,a)=>{g(!0);try{await n()}catch(e){g(!1),R.error(e instanceof Error?e.message:`Git command failed`);return}t(),R.success(a),Sf(e,r,i)},[t,e,r,i]),x=(0,Y.useCallback)(e=>{if(h)return;if(l.kind===`pick-ref`&&l.purpose===`detach`){b(()=>B.post(r(`/checkout`),{ref:e.name,mode:`detach`}),`Detached HEAD at ${e.name}`);return}if(l.kind===`pick-ref`&&l.name){let t=l.name;b(()=>B.post(r(`/branch/create`),{name:t,from:e.name}),`Created ${t} from ${e.name}`);return}if(e.current){t();return}let n=Pm(e,a??[]);b(()=>B.post(r(`/checkout`),n),`Switched to ${n.mode===`track`?Nm(n.ref):n.ref}`)},[h,l,b,r,a,t]),S=(0,Y.useCallback)(e=>{f(``),u(e===`detach`?{kind:`pick-ref`,purpose:`detach`}:{kind:`name`,then:e===`create`?`create`:`from`}),_.current?.focus()},[]),C=(0,Y.useCallback)(()=>{let e=d.trim();if(!(!e||l.kind!==`name`||h)){if(l.then===`from`){u({kind:`pick-ref`,purpose:`from`,name:e}),f(``);return}b(()=>B.post(r(`/branch/create`),{name:e}),`Created ${e}`)}},[d,l,h,b,r]);function w(e){e&&(e.kind===`action`?S(e.action):e.kind===`ref`&&x(e.ref))}function T(e){switch(e.key){case`ArrowDown`:e.preventDefault(),m(e=>Mm(y,e,1));break;case`ArrowUp`:e.preventDefault(),m(e=>Mm(y,e,-1));break;case`Enter`:e.preventDefault(),l.kind===`name`?C():w(y[p]);break;case`Escape`:e.preventDefault(),l.kind===`pick`?t():(u({kind:`pick`}),f(``));break}}return(0,X.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-end justify-center md:items-start md:px-4 md:pt-[12vh] md:pb-[10vh]`,onClick:t,children:[(0,X.jsx)(`div`,{className:`fixed inset-0 bg-black/50`}),(0,X.jsxs)(`div`,{role:`dialog`,"aria-label":`Checkout a branch or tag`,className:`relative z-10 w-full max-w-xl rounded-t-xl md:rounded-xl border border-border bg-background shadow-2xl overflow-hidden max-h-[80vh] md:max-h-full flex flex-col`,onClick:e=>e.stopPropagation(),onKeyDown:T,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2.5 shrink-0`,children:[h?(0,X.jsx)(L,{className:`size-4 text-text-subtle shrink-0 animate-spin`}):(0,X.jsx)(Nn,{className:`size-4 text-text-subtle shrink-0`}),(0,X.jsx)(`input`,{ref:_,type:`text`,value:d,disabled:h,onChange:e=>f(e.target.value),placeholder:mx(l),className:`flex-1 bg-transparent text-sm text-text-primary outline-none placeholder:text-text-subtle disabled:opacity-60`}),(0,X.jsx)(`kbd`,{className:`hidden sm:inline-flex items-center rounded border border-border bg-surface px-1.5 py-0.5 text-[10px] text-text-subtle font-mono`,children:`ESC`})]}),l.kind===`name`?(0,X.jsx)(`p`,{className:`px-3 py-4 text-xs text-text-3`,children:l.then===`from`?`Press Enter, then choose the ref to branch from.`:`Press Enter to create the branch from HEAD and switch to it.`}):(0,X.jsx)(`div`,{ref:v,className:`overflow-y-auto py-1`,children:s?(0,X.jsx)(`p`,{className:`px-3 py-4 text-sm text-error text-center`,children:s}):a?y.length===0?(0,X.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`No matching branches or tags`}):y.map((e,t)=>e.kind===`separator`?(0,X.jsx)(`div`,{className:`px-3 pt-2 pb-1 text-[10px] uppercase tracking-wide text-text-3 border-t border-border-soft first:border-t-0 first:pt-1`,children:e.label},`sep-${e.label}`):e.kind===`action`?(0,X.jsx)(bx,{icon:vx[e.action],active:t===p,onSelect:()=>S(e.action),label:e.label},`act-${e.action}`):(0,X.jsx)(xx,{refItem:e.ref,active:t===p,onSelect:()=>x(e.ref)},e.ref.refName)):(0,X.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`Loading refs…`})})]})]})}function bx({icon:e,label:t,active:n,onSelect:r}){return(0,X.jsxs)(`button`,{type:`button`,onClick:r,className:U(`flex items-center gap-2.5 w-full px-3 py-2 text-sm text-left transition-colors`,n?hx:`text-text-secondary `+gx),children:[(0,X.jsx)(e,{className:`size-4 shrink-0 text-text-3`}),(0,X.jsx)(`span`,{className:`truncate`,children:t})]})}function xx({refItem:e,active:t,onSelect:n}){let r=e.current?Rn:_x[e.type];return(0,X.jsxs)(`button`,{type:`button`,onClick:n,className:U(`flex items-start gap-2.5 w-full px-3 py-1.5 text-sm text-left transition-colors`,t?hx:`text-text-secondary `+gx),children:[(0,X.jsx)(r,{className:U(`size-4 shrink-0 mt-0.5`,e.current?`text-primary`:`text-text-3`)}),(0,X.jsxs)(`span`,{className:`flex-1 min-w-0`,children:[(0,X.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,X.jsx)(`span`,{className:`truncate`,children:e.name}),(0,X.jsxs)(`span`,{className:`ml-auto shrink-0 flex items-center gap-1.5 text-xs text-text-3`,children:[e.behind>0&&(0,X.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,X.jsx)(jt,{className:`size-3`}),e.behind]}),e.ahead>0&&(0,X.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,X.jsx)(zt,{className:`size-3`}),e.ahead]}),e.gone&&(0,X.jsx)(`span`,{className:`text-warning`,children:`gone`}),(e.ahead>0||e.behind>0||e.gone)&&(0,X.jsx)(`span`,{"aria-hidden":!0,children:`·`}),(0,X.jsx)(`span`,{children:ux(Date.parse(e.date))})]})]}),(0,X.jsx)(`span`,{className:`block truncate text-xs text-text-3`,children:Fm(e)})]})]})}var Sx=(0,Y.memo)(function(){let e=dl(e=>e.statusBarItems),t=e.filter(e=>e.alignment===`left`).sort((e,t)=>t.priority-e.priority),n=e.filter(e=>e.alignment===`right`).sort((e,t)=>t.priority-e.priority);return(0,X.jsxs)(`div`,{className:`@container hidden md:flex items-center justify-between gap-3 h-[26px] px-3.5 bg-panel border-t border-border-soft text-[11px] font-mono text-text-3 select-none shrink-0`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0 overflow-hidden`,children:[(0,X.jsx)(Cx,{}),(0,X.jsx)(Pb,{}),t.map(e=>(0,X.jsx)(Tx,{item:e},e.id)),(0,X.jsx)(wx,{})]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-3 shrink-0`,children:[(0,X.jsx)(ax,{}),(0,X.jsx)(Db,{compact:!0}),n.map(e=>(0,X.jsx)(Tx,{item:e},e.id)),(0,X.jsx)(Ib,{}),(0,X.jsx)($b,{})]})]})}),Cx=(0,Y.memo)(function(){let e=G(e=>e.activeProject?.name??null),t=xf(t=>e?t.meta.get(e):void 0),[n,r]=(0,Y.useState)(!1);if(!t?.branch||!e)return null;let{branch:i,ahead:a,behind:o,tracking:s}=t,c=!!s&&a===0&&o===0;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`button`,{onClick:()=>r(!0),title:`Checkout a branch or tag — ${s?`tracking ${s}`:`no upstream`}`,"aria-label":`Current branch ${i}. Checkout a branch or tag`,className:`flex items-center gap-2 min-w-0 px-1 rounded-sm transition-colors hover:bg-primary/10`,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-1 text-primary min-w-0`,children:[(0,X.jsx)(rt,{className:`size-3 shrink-0`}),(0,X.jsx)(`span`,{className:`truncate max-w-[140px]`,children:i})]}),(a>0||o>0)&&(0,X.jsxs)(`span`,{className:`flex items-center gap-1.5 shrink-0 @max-xl:hidden`,children:[a>0&&(0,X.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,X.jsx)(zt,{className:`size-3`}),a]}),o>0&&(0,X.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,X.jsx)(jt,{className:`size-3`}),o]})]}),c&&(0,X.jsxs)(`span`,{className:`flex items-center gap-1 text-success shrink-0 @max-xl:hidden`,children:[(0,X.jsx)(Rn,{className:`size-3`}),`synced`]})]}),n&&(0,X.jsx)(yx,{projectName:e,onClose:()=>r(!1)})]})}),wx=(0,Y.memo)(function(){let e=W(e=>e.dock.visible),t=sx(W(e=>e.panels[mr]),G(e=>e.activeProject?.name??null));return(0,X.jsxs)(`button`,{onClick:()=>W.getState().toggleDock(),title:e?`Hide panel`:`Show panel`,"aria-label":e?`Hide panel`:`Show panel`,className:U(`flex items-center gap-1 px-1 rounded-sm transition-colors hover:bg-accent/15`,e?`text-primary`:`text-text-subtle hover:text-text-primary`),children:[(0,X.jsx)(st,{className:`size-[11px]`}),t>0&&(0,X.jsx)(`span`,{children:t})]})}),Tx=(0,Y.memo)(function({item:e}){let t=(0,X.jsx)(`button`,{className:`truncate px-1 rounded-sm transition-colors ${e.command?`hover:bg-accent/15 hover:text-text-primary cursor-pointer`:`cursor-default`}`,onClick:()=>{e.command&&window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:e.command}}))},children:e.text});return e.tooltip?(0,X.jsxs)(Ka,{children:[(0,X.jsx)(qa,{asChild:!0,children:t}),(0,X.jsx)(Ja,{side:`top`,className:`text-xs`,children:e.tooltip})]}):t}),Ex=`relative flex-1 min-h-0 overflow-hidden rounded-b-[8px] bg-panel`;function Dx(e,t,n){let r=qi(e),[i]=(0,Y.useState)(()=>{let e=document.createElement(`div`);return e.className=Ex,e});return(0,Y.useLayoutEffect)(()=>{let n=t.current;if(n)return n.append(i),Hi(e,i),()=>{let t=Ui(e);t&&tu()===t&&t.detach(),Hi(e,null),i.remove()}},[i,t,e]),(0,Y.useLayoutEffect)(()=>{i.classList.toggle(`hidden`,n&&!r)},[i,n,r]),{body:i,pip:r}}function Ox({pip:e,minimized:t}){return(0,X.jsxs)(`div`,{className:U(`relative flex-1 min-h-0 flex flex-col items-center justify-center gap-3`,`rounded-b-[8px] bg-panel text-center px-4`,t&&`hidden`),children:[(0,X.jsx)(`span`,{className:`text-xs text-text-2`,children:`Playing in picture-in-picture`}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>e.detach(),className:`min-h-11 min-w-11 px-4 rounded-md border border-border bg-surface-elevated text-sm text-text can-hover:hover:bg-panel-2 transition-colors`,children:`Bring back`})]})}function kx(e){let t=`mac-folder-${(0,Y.useId)()}`;return(0,X.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,X.jsx)(`defs`,{children:(0,X.jsxs)(`linearGradient`,{id:t,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,X.jsx)(`stop`,{offset:`0`,stopColor:`#7FC1FF`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`#3E92E5`})]})}),(0,X.jsx)(`path`,{d:`M2.5 8a2 2 0 0 1 2-2h5.2l1.7 2H19.5a2 2 0 0 1 2 2v7.5a2 2 0 0 1-2 2h-15a2 2 0 0 1-2-2V8Z`,fill:`url(#${t})`}),(0,X.jsx)(`path`,{d:`M2.5 10.5h19V9.8H4.7A2 2 0 0 0 2.5 10.5Z`,fill:`#FFFFFF`,fillOpacity:`.3`})]})}function Ax(e){let t=`mac-folder-open-${(0,Y.useId)()}`;return(0,X.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,X.jsx)(`defs`,{children:(0,X.jsxs)(`linearGradient`,{id:t,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,X.jsx)(`stop`,{offset:`0`,stopColor:`#8FCBFF`}),(0,X.jsx)(`stop`,{offset:`1`,stopColor:`#2F82D9`})]})}),(0,X.jsx)(`path`,{d:`M2.5 8a2 2 0 0 1 2-2h5.2l1.7 2H19.5a2 2 0 0 1 2 2v.3H5.9a2 2 0 0 0-1.94 1.51L2.5 17.9V8Z`,fill:`#7FC1FF`}),(0,X.jsx)(`path`,{d:`M2.13 18.36 3.98 11.1A2 2 0 0 1 5.92 9.6H21l-2.16 8a2 2 0 0 1-1.93 1.48H4.06a2 2 0 0 1-1.93-2.52Z`,fill:`url(#${t})`})]})}var jx=`grid place-items-center size-6 rounded text-text-2 can-hover:hover:bg-surface-elevated can-hover:hover:text-text transition-colors`;function Mx({id:e,className:t}){let n=qi(e);if(!Pl())return null;let r=()=>{let t=Ui(e);if(t){t.detach();return}let n=Yi(e);if(!n){R.error(`This window has nothing to pop out yet`);return}let r=Mr.getState().windows[e]?.rect;ru(n,{width:r?.w??0,height:r?r.h-36:0,onDetach:()=>Bi(e,null)}).then(t=>{if(!(!t||tu()!==t)){if(Yi(e)!==n){t.detach();return}Bi(e,t),Nl(t.pipWindow.document)}}).catch(()=>{R.error(`Could not open the picture-in-picture window`)})},i=n?`Bring back from picture-in-picture`:`Open in picture-in-picture`;return(0,X.jsx)(`button`,{type:`button`,title:i,"aria-label":i,"aria-pressed":!!n,className:U(t??jx,n&&`text-primary`),onClick:r,children:(0,X.jsx)(Ve,{className:`size-3.5`})})}var Nx=[{color:`#FF5F57`,label:`Close window`,Icon:Be},{color:`#FEBC2E`,label:`Minimize window`,Icon:dt},{color:`#28C840`,label:`Maximize window`,Icon:Dt}];function Px({id:e,title:t,focused:n,titlebarProps:r,onMinimize:i,onToggleMaximize:a,onClose:o}){let{className:s,style:c,...l}=r,u=[o,i,a];return(0,X.jsxs)(`div`,{...l,"data-skin":`macos`,style:{height:36,fontFamily:`var(--x-font)`,...c},className:U(`group/titlebar relative flex items-center shrink-0 rounded-t-[var(--x-radius)] overflow-hidden`,`bg-[var(--x-titlebar-bg)] border-b border-border`,`outline-none focus-visible:ring-1 focus-visible:ring-primary focus-visible:ring-inset`,s),children:[(0,X.jsx)(`div`,{className:`flex items-center gap-2 pl-3`,children:Nx.map(({color:e,label:t,Icon:r},i)=>(0,X.jsx)(`button`,{type:`button`,"aria-label":t,onClick:u[i],className:`grid size-3 place-items-center rounded-full`,style:{backgroundColor:n?e:`#8E8E93`},children:(0,X.jsx)(r,{className:`size-2 text-black/60 can-hover:opacity-0 can-hover:group-hover/titlebar:opacity-100`,strokeWidth:3})},t))}),(0,X.jsx)(`span`,{className:U(`pointer-events-none flex-1 min-w-0 truncate text-center text-[13px] px-2`,n?`text-text`:`text-text-2`),children:t}),(0,X.jsx)(`div`,{className:`flex items-center pr-2`,children:(0,X.jsx)(Mx,{id:e})})]})}var Fx={id:`macos`,vocab:{home:`Home`,pinned:`Favorites`,known:`Locations`,drives:`Devices`},FolderIcon:kx,FolderOpenIcon:Ax,chrome:Px};function Ix(e){return(0,X.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,X.jsx)(`path`,{d:`M3 7.5a1.5 1.5 0 0 1 1.5-1.5H10l1.6 2H19.5A1.5 1.5 0 0 1 21 9.5v8A1.5 1.5 0 0 1 19.5 19h-15A1.5 1.5 0 0 1 3 17.5v-10Z`,fill:`#FFC93E`}),(0,X.jsx)(`path`,{d:`M3 9.5h18v8A1.5 1.5 0 0 1 19.5 19h-15A1.5 1.5 0 0 1 3 17.5v-8Z`,fill:`#FFCE49`}),(0,X.jsx)(`path`,{d:`M4 9.2h16`,stroke:`#FFFFFF`,strokeOpacity:`.35`,strokeWidth:`1`})]})}function Lx(e){return(0,X.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,X.jsx)(`path`,{d:`M3 7.5a1.5 1.5 0 0 1 1.5-1.5H10l1.6 2H19.5A1.5 1.5 0 0 1 21 9.5v.5H5.2a1.5 1.5 0 0 0-1.45 1.13L2 18.2V7.5Z`,fill:`#FFC93E`}),(0,X.jsx)(`path`,{d:`M2.62 18.66 4.3 12.1A1.5 1.5 0 0 1 5.75 11H21l-1.86 6.63A1.5 1.5 0 0 1 17.7 18.7H4.06a1.5 1.5 0 0 1-1.44-1.9Z`,fill:`#FFB92E`})]})}var Rx=`grid place-items-center w-[46px] self-stretch text-text-2 can-hover:hover:bg-surface-elevated can-hover:hover:text-text transition-colors`,zx=U(Rx,`can-hover:hover:!bg-[#c42b1c] can-hover:hover:!text-white`);function Bx({id:e,kind:t,title:n,state:r,focused:i,titlebarProps:a,onMinimize:o,onToggleMaximize:s,onClose:c}){let{className:l,style:u,...d}=a;return(0,X.jsxs)(`div`,{...d,"data-skin":`windows`,style:{height:36,fontFamily:`var(--x-font)`,...u},className:U(`flex items-stretch shrink-0 rounded-t-[var(--x-radius)] overflow-hidden`,`bg-[var(--x-titlebar-bg)] border-b border-border`,`outline-none focus-visible:ring-1 focus-visible:ring-primary focus-visible:ring-inset`,l),children:[(0,X.jsxs)(`div`,{className:`flex flex-1 min-w-0 items-center gap-2 px-2.5 cursor-default`,children:[t===`explorer`&&(0,X.jsx)(Ix,{className:`size-4 shrink-0`}),(0,X.jsx)(`span`,{className:U(`truncate text-[12px]`,i?`text-text`:`text-text-2`),children:n})]}),(0,X.jsx)(Mx,{id:e,className:Rx}),(0,X.jsx)(`button`,{type:`button`,"aria-label":`Minimize window`,className:Rx,onClick:o,children:(0,X.jsx)(dt,{className:`size-3.5`})}),(0,X.jsx)(`button`,{type:`button`,"aria-label":r===`maximized`?`Restore window`:`Maximize window`,className:Rx,onClick:s,children:r===`maximized`?(0,X.jsx)(_n,{className:`size-3`}):(0,X.jsx)(Un,{className:`size-3`})}),(0,X.jsx)(`button`,{type:`button`,"aria-label":`Close window`,className:zx,onClick:c,children:(0,X.jsx)(Be,{className:`size-3.5`})})]})}var Vx={id:`windows`,vocab:{home:`Home`,pinned:`Quick access`,known:`Folders`,drives:`Drives`},FolderIcon:Ix,FolderOpenIcon:Lx,chrome:Bx};function Hx(){let e=V(e=>e.explorerSkin),{host:t}=Mp();return e===`windows`?Vx:e===`macos`?Fx:t?.platform===`win32`?Vx:Fx}function Ux(e){let t=Hx().chrome;return(0,X.jsx)(t,{...e})}function Wx(e,t,n){return Math.max(t,Math.min(e,n))}var Gx={toVector(e,t){return e===void 0&&(e=t),Array.isArray(e)?e:[e,e]},add(e,t){return[e[0]+t[0],e[1]+t[1]]},sub(e,t){return[e[0]-t[0],e[1]-t[1]]},addTo(e,t){e[0]+=t[0],e[1]+=t[1]},subTo(e,t){e[0]-=t[0],e[1]-=t[1]}};function Kx(e,t,n){return t===0||Math.abs(t)===1/0?e**(n*5):e*t*n/(t+n*e)}function qx(e,t,n,r=.15){return r===0?Wx(e,t,n):e<t?-Kx(t-e,n-t,r)+t:e>n?+Kx(e-n,n-t,r)+n:e}function Jx(e,[t,n],[r,i]){let[[a,o],[s,c]]=e;return[qx(t,a,o,r),qx(n,s,c,i)]}function Yx(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function Xx(e){var t=Yx(e,`string`);return typeof t==`symbol`?t:String(t)}function Zx(e,t,n){return t=Xx(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Qx(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function $x(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Qx(Object(n),!0).forEach(function(t){Zx(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Qx(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var eS={pointer:{start:`down`,change:`move`,end:`up`},mouse:{start:`down`,change:`move`,end:`up`},touch:{start:`start`,change:`move`,end:`end`},gesture:{start:`start`,change:`change`,end:`end`}};function tS(e){return e?e[0].toUpperCase()+e.slice(1):``}var nS=[`enter`,`leave`];function rS(e=!1,t){return e&&!nS.includes(t)}function iS(e,t=``,n=!1){let r=eS[e],i=r&&r[t]||t;return`on`+tS(e)+tS(i)+(rS(n,i)?`Capture`:``)}var aS=[`gotpointercapture`,`lostpointercapture`];function oS(e){let t=e.substring(2).toLowerCase(),n=!!~t.indexOf(`passive`);n&&(t=t.replace(`passive`,``));let r=aS.includes(t)?`capturecapture`:`capture`,i=!!~t.indexOf(r);return i&&(t=t.replace(`capture`,``)),{device:t,capture:i,passive:n}}function sS(e,t=``){let n=eS[e];return e+(n&&n[t]||t)}function cS(e){return`touches`in e}function lS(e){return cS(e)?`touch`:`pointerType`in e?e.pointerType:`mouse`}function uS(e){return Array.from(e.touches).filter(t=>{var n,r;return t.target===e.currentTarget||((n=e.currentTarget)==null||(r=n.contains)==null?void 0:r.call(n,t.target))})}function dS(e){return e.type===`touchend`||e.type===`touchcancel`?e.changedTouches:e.targetTouches}function fS(e){return cS(e)?dS(e)[0]:e}function pS(e,t){try{let n=t.clientX-e.clientX,r=t.clientY-e.clientY,i=(t.clientX+e.clientX)/2,a=(t.clientY+e.clientY)/2,o=Math.hypot(n,r);return{angle:-(Math.atan2(n,r)*180)/Math.PI,distance:o,origin:[i,a]}}catch{}return null}function mS(e){return uS(e).map(e=>e.identifier)}function hS(e,t){let[n,r]=Array.from(e.touches).filter(e=>t.includes(e.identifier));return pS(n,r)}function gS(e){let t=fS(e);return cS(e)?t.identifier:t.pointerId}function _S(e){let t=fS(e);return[t.clientX,t.clientY]}var vS=40,yS=800;function bS(e){let{deltaX:t,deltaY:n,deltaMode:r}=e;return r===1?(t*=vS,n*=vS):r===2&&(t*=yS,n*=yS),[t,n]}function xS(e){let{scrollX:t,scrollY:n,scrollLeft:r,scrollTop:i}=e.currentTarget;return[t??r??0,n??i??0]}function SS(e){let t={};if(`buttons`in e&&(t.buttons=e.buttons),`shiftKey`in e){let{shiftKey:n,altKey:r,metaKey:i,ctrlKey:a}=e;Object.assign(t,{shiftKey:n,altKey:r,metaKey:i,ctrlKey:a})}return t}function CS(e,...t){return typeof e==`function`?e(...t):e}function wS(){}function TS(...e){return e.length===0?wS:e.length===1?e[0]:function(){let t;for(let n of e)t=n.apply(this,arguments)||t;return t}}function ES(e,t){return Object.assign({},t,e||{})}var DS=32,OS=class{constructor(e,t,n){this.ctrl=e,this.args=t,this.key=n,this.state||(this.state={},this.computeValues([0,0]),this.computeInitial(),this.init&&this.init(),this.reset())}get state(){return this.ctrl.state[this.key]}set state(e){this.ctrl.state[this.key]=e}get shared(){return this.ctrl.state.shared}get eventStore(){return this.ctrl.gestureEventStores[this.key]}get timeoutStore(){return this.ctrl.gestureTimeoutStores[this.key]}get config(){return this.ctrl.config[this.key]}get sharedConfig(){return this.ctrl.config.shared}get handler(){return this.ctrl.handlers[this.key]}reset(){let{state:e,shared:t,ingKey:n,args:r}=this;t[n]=e._active=e.active=e._blocked=e._force=!1,e._step=[!1,!1],e.intentional=!1,e._movement=[0,0],e._distance=[0,0],e._direction=[0,0],e._delta=[0,0],e._bounds=[[-1/0,1/0],[-1/0,1/0]],e.args=r,e.axis=void 0,e.memo=void 0,e.elapsedTime=e.timeDelta=0,e.direction=[0,0],e.distance=[0,0],e.overflow=[0,0],e._movementBound=[!1,!1],e.velocity=[0,0],e.movement=[0,0],e.delta=[0,0],e.timeStamp=0}start(e){let t=this.state,n=this.config;t._active||(this.reset(),this.computeInitial(),t._active=!0,t.target=e.target,t.currentTarget=e.currentTarget,t.lastOffset=n.from?CS(n.from,t):t.offset,t.offset=t.lastOffset,t.startTime=t.timeStamp=e.timeStamp)}computeValues(e){let t=this.state;t._values=e,t.values=this.config.transform(e)}computeInitial(){let e=this.state;e._initial=e._values,e.initial=e.values}compute(e){let{state:t,config:n,shared:r}=this;t.args=this.args;let i=0;if(e&&(t.event=e,n.preventDefault&&e.cancelable&&t.event.preventDefault(),t.type=e.type,r.touches=this.ctrl.pointerIds.size||this.ctrl.touchIds.size,r.locked=!!document.pointerLockElement,Object.assign(r,SS(e)),r.down=r.pressed=r.buttons%2==1||r.touches>0,i=e.timeStamp-t.timeStamp,t.timeStamp=e.timeStamp,t.elapsedTime=t.timeStamp-t.startTime),t._active){let e=t._delta.map(Math.abs);Gx.addTo(t._distance,e)}this.axisIntent&&this.axisIntent(e);let[a,o]=t._movement,[s,c]=n.threshold,{_step:l,values:u}=t;if(n.hasCustomTransform?(l[0]===!1&&(l[0]=Math.abs(a)>=s&&u[0]),l[1]===!1&&(l[1]=Math.abs(o)>=c&&u[1])):(l[0]===!1&&(l[0]=Math.abs(a)>=s&&Math.sign(a)*s),l[1]===!1&&(l[1]=Math.abs(o)>=c&&Math.sign(o)*c)),t.intentional=l[0]!==!1||l[1]!==!1,!t.intentional)return;let d=[0,0];if(n.hasCustomTransform){let[e,t]=u;d[0]=l[0]===!1?0:e-l[0],d[1]=l[1]===!1?0:t-l[1]}else d[0]=l[0]===!1?0:a-l[0],d[1]=l[1]===!1?0:o-l[1];this.restrictToAxis&&!t._blocked&&this.restrictToAxis(d);let f=t.offset,p=t._active&&!t._blocked||t.active;p&&(t.first=t._active&&!t.active,t.last=!t._active&&t.active,t.active=r[this.ingKey]=t._active,e&&(t.first&&(`bounds`in n&&(t._bounds=CS(n.bounds,t)),this.setup&&this.setup()),t.movement=d,this.computeOffset()));let[m,h]=t.offset,[[g,_],[v,y]]=t._bounds;t.overflow=[m<g?-1:m>_?1:0,h<v?-1:h>y?1:0],t._movementBound[0]=t.overflow[0]?t._movementBound[0]===!1?t._movement[0]:t._movementBound[0]:!1,t._movementBound[1]=t.overflow[1]?t._movementBound[1]===!1?t._movement[1]:t._movementBound[1]:!1;let b=t._active&&n.rubberband||[0,0];if(t.offset=Jx(t._bounds,t.offset,b),t.delta=Gx.sub(t.offset,f),this.computeMovement(),p&&(!t.last||i>DS)){t.delta=Gx.sub(t.offset,f);let e=t.delta.map(Math.abs);Gx.addTo(t.distance,e),t.direction=t.delta.map(Math.sign),t._direction=t._delta.map(Math.sign),!t.first&&i>0&&(t.velocity=[e[0]/i,e[1]/i],t.timeDelta=i)}}emit(){let e=this.state,t=this.shared,n=this.config;if(e._active||this.clean(),(e._blocked||!e.intentional)&&!e._force&&!n.triggerAllEvents)return;let r=this.handler($x($x($x({},t),e),{},{[this.aliasKey]:e.values}));r!==void 0&&(e.memo=r)}clean(){this.eventStore.clean(),this.timeoutStore.clean()}};function kS([e,t],n){let r=Math.abs(e),i=Math.abs(t);if(r>i&&r>n)return`x`;if(i>r&&i>n)return`y`}var AS=class extends OS{constructor(...e){super(...e),Zx(this,`aliasKey`,`xy`)}reset(){super.reset(),this.state.axis=void 0}init(){this.state.offset=[0,0],this.state.lastOffset=[0,0]}computeOffset(){this.state.offset=Gx.add(this.state.lastOffset,this.state.movement)}computeMovement(){this.state.movement=Gx.sub(this.state.offset,this.state.lastOffset)}axisIntent(e){let t=this.state,n=this.config;if(!t.axis&&e){let r=typeof n.axisThreshold==`object`?n.axisThreshold[lS(e)]:n.axisThreshold;t.axis=kS(t._movement,r)}t._blocked=(n.lockDirection||!!n.axis)&&!t.axis||!!n.axis&&n.axis!==t.axis}restrictToAxis(e){if(this.config.axis||this.config.lockDirection)switch(this.state.axis){case`x`:e[1]=0;break;case`y`:e[0]=0;break}}},jS=e=>e,MS=.15,NS={enabled(e=!0){return e},eventOptions(e,t,n){return $x($x({},n.shared.eventOptions),e)},preventDefault(e=!1){return e},triggerAllEvents(e=!1){return e},rubberband(e=0){switch(e){case!0:return[MS,MS];case!1:return[0,0];default:return Gx.toVector(e)}},from(e){if(typeof e==`function`)return e;if(e!=null)return Gx.toVector(e)},transform(e,t,n){let r=e||n.shared.transform;return this.hasCustomTransform=!!r,r||jS},threshold(e){return Gx.toVector(e,0)}},PS=0,FS=$x($x({},NS),{},{axis(e,t,{axis:n}){if(this.lockDirection=n===`lock`,!this.lockDirection)return n},axisThreshold(e=PS){return e},bounds(e={}){if(typeof e==`function`)return t=>FS.bounds(e(t));if(`current`in e)return()=>e.current;if(typeof HTMLElement==`function`&&e instanceof HTMLElement)return e;let{left:t=-1/0,right:n=1/0,top:r=-1/0,bottom:i=1/0}=e;return[[t,n],[r,i]]}}),IS={ArrowRight:(e,t=1)=>[e*t,0],ArrowLeft:(e,t=1)=>[-1*e*t,0],ArrowUp:(e,t=1)=>[0,-1*e*t],ArrowDown:(e,t=1)=>[0,e*t]},LS=class extends AS{constructor(...e){super(...e),Zx(this,`ingKey`,`dragging`)}reset(){super.reset();let e=this.state;e._pointerId=void 0,e._pointerActive=!1,e._keyboardActive=!1,e._preventScroll=!1,e._delayed=!1,e.swipe=[0,0],e.tap=!1,e.canceled=!1,e.cancel=this.cancel.bind(this)}setup(){let e=this.state;if(e._bounds instanceof HTMLElement){let t=e._bounds.getBoundingClientRect(),n=e.currentTarget.getBoundingClientRect(),r={left:t.left-n.left+e.offset[0],right:t.right-n.right+e.offset[0],top:t.top-n.top+e.offset[1],bottom:t.bottom-n.bottom+e.offset[1]};e._bounds=FS.bounds(r)}}cancel(){let e=this.state;e.canceled||(e.canceled=!0,e._active=!1,setTimeout(()=>{this.compute(),this.emit()},0))}setActive(){this.state._active=this.state._pointerActive||this.state._keyboardActive}clean(){this.pointerClean(),this.state._pointerActive=!1,this.state._keyboardActive=!1,super.clean()}pointerDown(e){let t=this.config,n=this.state;if(e.buttons!=null&&(Array.isArray(t.pointerButtons)?!t.pointerButtons.includes(e.buttons):t.pointerButtons!==-1&&t.pointerButtons!==e.buttons))return;let r=this.ctrl.setEventIds(e);t.pointerCapture&&e.target.setPointerCapture(e.pointerId),!(r&&r.size>1&&n._pointerActive)&&(this.start(e),this.setupPointer(e),n._pointerId=gS(e),n._pointerActive=!0,this.computeValues(_S(e)),this.computeInitial(),t.preventScrollAxis&&lS(e)!==`mouse`?(n._active=!1,this.setupScrollPrevention(e)):t.delay>0?(this.setupDelayTrigger(e),t.triggerAllEvents&&(this.compute(e),this.emit())):this.startPointerDrag(e))}startPointerDrag(e){let t=this.state;t._active=!0,t._preventScroll=!0,t._delayed=!1,this.compute(e),this.emit()}pointerMove(e){let t=this.state,n=this.config;if(!t._pointerActive)return;let r=gS(e);if(t._pointerId!==void 0&&r!==t._pointerId)return;let i=_S(e);if(document.pointerLockElement===e.target?t._delta=[e.movementX,e.movementY]:(t._delta=Gx.sub(i,t._values),this.computeValues(i)),Gx.addTo(t._movement,t._delta),this.compute(e),t._delayed&&t.intentional){this.timeoutStore.remove(`dragDelay`),t.active=!1,this.startPointerDrag(e);return}if(n.preventScrollAxis&&!t._preventScroll)if(t.axis)if(t.axis===n.preventScrollAxis||n.preventScrollAxis===`xy`){t._active=!1,this.clean();return}else{this.timeoutStore.remove(`startPointerDrag`),this.startPointerDrag(e);return}else return;this.emit()}pointerUp(e){this.ctrl.setEventIds(e);try{this.config.pointerCapture&&e.target.hasPointerCapture(e.pointerId)&&e.target.releasePointerCapture(e.pointerId)}catch{}let t=this.state,n=this.config;if(!t._active||!t._pointerActive)return;let r=gS(e);if(t._pointerId!==void 0&&r!==t._pointerId)return;this.state._pointerActive=!1,this.setActive(),this.compute(e);let[i,a]=t._distance;if(t.tap=i<=n.tapsThreshold&&a<=n.tapsThreshold,t.tap&&n.filterTaps)t._force=!0;else{let[e,r]=t._delta,[i,a]=t._movement,[o,s]=n.swipe.velocity,[c,l]=n.swipe.distance,u=n.swipe.duration;if(t.elapsedTime<u){let n=Math.abs(e/t.timeDelta),u=Math.abs(r/t.timeDelta);n>o&&Math.abs(i)>c&&(t.swipe[0]=Math.sign(e)),u>s&&Math.abs(a)>l&&(t.swipe[1]=Math.sign(r))}}this.emit()}pointerClick(e){!this.state.tap&&e.detail>0&&(e.preventDefault(),e.stopPropagation())}setupPointer(e){let t=this.config,n=t.device;t.pointerLock&&e.currentTarget.requestPointerLock(),t.pointerCapture||(this.eventStore.add(this.sharedConfig.window,n,`change`,this.pointerMove.bind(this)),this.eventStore.add(this.sharedConfig.window,n,`end`,this.pointerUp.bind(this)),this.eventStore.add(this.sharedConfig.window,n,`cancel`,this.pointerUp.bind(this)))}pointerClean(){this.config.pointerLock&&document.pointerLockElement===this.state.currentTarget&&document.exitPointerLock()}preventScroll(e){this.state._preventScroll&&e.cancelable&&e.preventDefault()}setupScrollPrevention(e){this.state._preventScroll=!1,RS(e);let t=this.eventStore.add(this.sharedConfig.window,`touch`,`change`,this.preventScroll.bind(this),{passive:!1});this.eventStore.add(this.sharedConfig.window,`touch`,`end`,t),this.eventStore.add(this.sharedConfig.window,`touch`,`cancel`,t),this.timeoutStore.add(`startPointerDrag`,this.startPointerDrag.bind(this),this.config.preventScrollDelay,e)}setupDelayTrigger(e){this.state._delayed=!0,this.timeoutStore.add(`dragDelay`,()=>{this.state._step=[0,0],this.startPointerDrag(e)},this.config.delay)}keyDown(e){let t=IS[e.key];if(t){let n=this.state,r=e.shiftKey?10:e.altKey?.1:1;this.start(e),n._delta=t(this.config.keyboardDisplacement,r),n._keyboardActive=!0,Gx.addTo(n._movement,n._delta),this.compute(e),this.emit()}}keyUp(e){e.key in IS&&(this.state._keyboardActive=!1,this.setActive(),this.compute(e),this.emit())}bind(e){let t=this.config.device;e(t,`start`,this.pointerDown.bind(this)),this.config.pointerCapture&&(e(t,`change`,this.pointerMove.bind(this)),e(t,`end`,this.pointerUp.bind(this)),e(t,`cancel`,this.pointerUp.bind(this)),e(`lostPointerCapture`,``,this.pointerUp.bind(this))),this.config.keys&&(e(`key`,`down`,this.keyDown.bind(this)),e(`key`,`up`,this.keyUp.bind(this))),this.config.filterTaps&&e(`click`,``,this.pointerClick.bind(this),{capture:!0,passive:!1})}};function RS(e){`persist`in e&&typeof e.persist==`function`&&e.persist()}var zS=typeof window<`u`&&window.document&&window.document.createElement;function BS(){return zS&&`ontouchstart`in window}function VS(){return BS()||zS&&window.navigator.maxTouchPoints>1}function HS(){return zS&&`onpointerdown`in window}function US(){return zS&&`exitPointerLock`in window.document}function WS(){try{return`constructor`in GestureEvent}catch{return!1}}var GS={isBrowser:zS,gesture:WS(),touch:BS(),touchscreen:VS(),pointer:HS(),pointerLock:US()},KS=250,qS=180,JS=.5,YS=50,XS=250,ZS=10,QS={mouse:0,touch:0,pen:8},$S=$x($x({},FS),{},{device(e,t,{pointer:{touch:n=!1,lock:r=!1,mouse:i=!1}={}}){return this.pointerLock=r&&GS.pointerLock,GS.touch&&n?`touch`:this.pointerLock?`mouse`:GS.pointer&&!i?`pointer`:GS.touch?`touch`:`mouse`},preventScrollAxis(e,t,{preventScroll:n}){if(this.preventScrollDelay=typeof n==`number`?n:n||n===void 0&&e?KS:void 0,!(!GS.touchscreen||n===!1))return e||(n===void 0?void 0:`y`)},pointerCapture(e,t,{pointer:{capture:n=!0,buttons:r=1,keys:i=!0}={}}){return this.pointerButtons=r,this.keys=i,!this.pointerLock&&this.device===`pointer`&&n},threshold(e,t,{filterTaps:n=!1,tapsThreshold:r=3,axis:i=void 0}){let a=Gx.toVector(e,n?r:i?1:0);return this.filterTaps=n,this.tapsThreshold=r,a},swipe({velocity:e=JS,distance:t=YS,duration:n=XS}={}){return{velocity:this.transform(Gx.toVector(e)),distance:this.transform(Gx.toVector(t)),duration:n}},delay(e=0){switch(e){case!0:return qS;case!1:return 0;default:return e}},axisThreshold(e){return e?$x($x({},QS),e):QS},keyboardDisplacement(e=ZS){return e}});function eC(e){let[t,n]=e.overflow,[r,i]=e._delta,[a,o]=e._direction;(t<0&&r>0&&a<0||t>0&&r<0&&a>0)&&(e._movement[0]=e._movementBound[0]),(n<0&&i>0&&o<0||n>0&&i<0&&o>0)&&(e._movement[1]=e._movementBound[1])}var tC=30,nC=100,rC=class extends OS{constructor(...e){super(...e),Zx(this,`ingKey`,`pinching`),Zx(this,`aliasKey`,`da`)}init(){this.state.offset=[1,0],this.state.lastOffset=[1,0],this.state._pointerEvents=new Map}reset(){super.reset();let e=this.state;e._touchIds=[],e.canceled=!1,e.cancel=this.cancel.bind(this),e.turns=0}computeOffset(){let{type:e,movement:t,lastOffset:n}=this.state;e===`wheel`?this.state.offset=Gx.add(t,n):this.state.offset=[(1+t[0])*n[0],t[1]+n[1]]}computeMovement(){let{offset:e,lastOffset:t}=this.state;this.state.movement=[e[0]/t[0],e[1]-t[1]]}axisIntent(){let e=this.state,[t,n]=e._movement;if(!e.axis){let r=Math.abs(t)*tC-Math.abs(n);r<0?e.axis=`angle`:r>0&&(e.axis=`scale`)}}restrictToAxis(e){this.config.lockDirection&&(this.state.axis===`scale`?e[1]=0:this.state.axis===`angle`&&(e[0]=0))}cancel(){let e=this.state;e.canceled||setTimeout(()=>{e.canceled=!0,e._active=!1,this.compute(),this.emit()},0)}touchStart(e){this.ctrl.setEventIds(e);let t=this.state,n=this.ctrl.touchIds;if(t._active&&t._touchIds.every(e=>n.has(e))||n.size<2)return;this.start(e),t._touchIds=Array.from(n).slice(0,2);let r=hS(e,t._touchIds);r&&this.pinchStart(e,r)}pointerStart(e){if(e.buttons!=null&&e.buttons%2!=1)return;this.ctrl.setEventIds(e),e.target.setPointerCapture(e.pointerId);let t=this.state,n=t._pointerEvents,r=this.ctrl.pointerIds;if(t._active&&Array.from(n.keys()).every(e=>r.has(e))||(n.size<2&&n.set(e.pointerId,e),t._pointerEvents.size<2))return;this.start(e);let i=pS(...Array.from(n.values()));i&&this.pinchStart(e,i)}pinchStart(e,t){let n=this.state;n.origin=t.origin,this.computeValues([t.distance,t.angle]),this.computeInitial(),this.compute(e),this.emit()}touchMove(e){if(!this.state._active)return;let t=hS(e,this.state._touchIds);t&&this.pinchMove(e,t)}pointerMove(e){let t=this.state._pointerEvents;if(t.has(e.pointerId)&&t.set(e.pointerId,e),!this.state._active)return;let n=pS(...Array.from(t.values()));n&&this.pinchMove(e,n)}pinchMove(e,t){let n=this.state,r=n._values[1],i=t.angle-r,a=0;Math.abs(i)>270&&(a+=Math.sign(i)),this.computeValues([t.distance,t.angle-360*a]),n.origin=t.origin,n.turns=a,n._movement=[n._values[0]/n._initial[0]-1,n._values[1]-n._initial[1]],this.compute(e),this.emit()}touchEnd(e){this.ctrl.setEventIds(e),this.state._active&&this.state._touchIds.some(e=>!this.ctrl.touchIds.has(e))&&(this.state._active=!1,this.compute(e),this.emit())}pointerEnd(e){let t=this.state;this.ctrl.setEventIds(e);try{e.target.releasePointerCapture(e.pointerId)}catch{}t._pointerEvents.has(e.pointerId)&&t._pointerEvents.delete(e.pointerId),t._active&&t._pointerEvents.size<2&&(t._active=!1,this.compute(e),this.emit())}gestureStart(e){e.cancelable&&e.preventDefault();let t=this.state;t._active||(this.start(e),this.computeValues([e.scale,e.rotation]),t.origin=[e.clientX,e.clientY],this.compute(e),this.emit())}gestureMove(e){if(e.cancelable&&e.preventDefault(),!this.state._active)return;let t=this.state;this.computeValues([e.scale,e.rotation]),t.origin=[e.clientX,e.clientY];let n=t._movement;t._movement=[e.scale-1,e.rotation],t._delta=Gx.sub(t._movement,n),this.compute(e),this.emit()}gestureEnd(e){this.state._active&&(this.state._active=!1,this.compute(e),this.emit())}wheel(e){let t=this.config.modifierKey;t&&(Array.isArray(t)?!t.find(t=>e[t]):!e[t])||(this.state._active?this.wheelChange(e):this.wheelStart(e),this.timeoutStore.add(`wheelEnd`,this.wheelEnd.bind(this)))}wheelStart(e){this.start(e),this.wheelChange(e)}wheelChange(e){`uv`in e||e.cancelable&&e.preventDefault();let t=this.state;t._delta=[-bS(e)[1]/nC*t.offset[0],0],Gx.addTo(t._movement,t._delta),eC(t),this.state.origin=[e.clientX,e.clientY],this.compute(e),this.emit()}wheelEnd(){this.state._active&&(this.state._active=!1,this.compute(),this.emit())}bind(e){let t=this.config.device;t&&(e(t,`start`,this[t+`Start`].bind(this)),e(t,`change`,this[t+`Move`].bind(this)),e(t,`end`,this[t+`End`].bind(this)),e(t,`cancel`,this[t+`End`].bind(this)),e(`lostPointerCapture`,``,this[t+`End`].bind(this))),this.config.pinchOnWheel&&e(`wheel`,``,this.wheel.bind(this),{passive:!1})}},iC=$x($x({},NS),{},{device(e,t,{shared:n,pointer:{touch:r=!1}={}}){if(n.target&&!GS.touch&&GS.gesture)return`gesture`;if(GS.touch&&r)return`touch`;if(GS.touchscreen){if(GS.pointer)return`pointer`;if(GS.touch)return`touch`}},bounds(e,t,{scaleBounds:n={},angleBounds:r={}}){let i=e=>{let t=ES(CS(n,e),{min:-1/0,max:1/0});return[t.min,t.max]},a=e=>{let t=ES(CS(r,e),{min:-1/0,max:1/0});return[t.min,t.max]};return typeof n!=`function`&&typeof r!=`function`?[i(),a()]:e=>[i(e),a(e)]},threshold(e,t,n){return this.lockDirection=n.axis===`lock`,Gx.toVector(e,this.lockDirection?[.1,3]:0)},modifierKey(e){return e===void 0?`ctrlKey`:e},pinchOnWheel(e=!0){return e}}),aC=class extends AS{constructor(...e){super(...e),Zx(this,`ingKey`,`moving`)}move(e){this.config.mouseOnly&&e.pointerType!==`mouse`||(this.state._active?this.moveChange(e):this.moveStart(e),this.timeoutStore.add(`moveEnd`,this.moveEnd.bind(this)))}moveStart(e){this.start(e),this.computeValues(_S(e)),this.compute(e),this.computeInitial(),this.emit()}moveChange(e){if(!this.state._active)return;let t=_S(e),n=this.state;n._delta=Gx.sub(t,n._values),Gx.addTo(n._movement,n._delta),this.computeValues(t),this.compute(e),this.emit()}moveEnd(e){this.state._active&&(this.state._active=!1,this.compute(e),this.emit())}bind(e){e(`pointer`,`change`,this.move.bind(this)),e(`pointer`,`leave`,this.moveEnd.bind(this))}},oC=$x($x({},FS),{},{mouseOnly:(e=!0)=>e}),sC=class extends AS{constructor(...e){super(...e),Zx(this,`ingKey`,`scrolling`)}scroll(e){this.state._active||this.start(e),this.scrollChange(e),this.timeoutStore.add(`scrollEnd`,this.scrollEnd.bind(this))}scrollChange(e){e.cancelable&&e.preventDefault();let t=this.state,n=xS(e);t._delta=Gx.sub(n,t._values),Gx.addTo(t._movement,t._delta),this.computeValues(n),this.compute(e),this.emit()}scrollEnd(){this.state._active&&(this.state._active=!1,this.compute(),this.emit())}bind(e){e(`scroll`,``,this.scroll.bind(this))}},cC=FS,lC=class extends AS{constructor(...e){super(...e),Zx(this,`ingKey`,`wheeling`)}wheel(e){this.state._active||this.start(e),this.wheelChange(e),this.timeoutStore.add(`wheelEnd`,this.wheelEnd.bind(this))}wheelChange(e){let t=this.state;t._delta=bS(e),Gx.addTo(t._movement,t._delta),eC(t),this.compute(e),this.emit()}wheelEnd(){this.state._active&&(this.state._active=!1,this.compute(),this.emit())}bind(e){e(`wheel`,``,this.wheel.bind(this))}},uC=FS,dC=class extends AS{constructor(...e){super(...e),Zx(this,`ingKey`,`hovering`)}enter(e){this.config.mouseOnly&&e.pointerType!==`mouse`||(this.start(e),this.computeValues(_S(e)),this.compute(e),this.emit())}leave(e){if(this.config.mouseOnly&&e.pointerType!==`mouse`)return;let t=this.state;if(!t._active)return;t._active=!1;let n=_S(e);t._movement=t._delta=Gx.sub(n,t._values),this.computeValues(n),this.compute(e),t.delta=t.movement,this.emit()}bind(e){e(`pointer`,`enter`,this.enter.bind(this)),e(`pointer`,`leave`,this.leave.bind(this))}},fC=$x($x({},FS),{},{mouseOnly:(e=!0)=>e}),pC=new Map,mC=new Map;function hC(e){pC.set(e.key,e.engine),mC.set(e.key,e.resolver)}var gC={key:`drag`,engine:LS,resolver:$S},_C={key:`hover`,engine:dC,resolver:fC},vC={key:`move`,engine:aC,resolver:oC},yC={key:`pinch`,engine:rC,resolver:iC},bC={key:`scroll`,engine:sC,resolver:cC},xC={key:`wheel`,engine:lC,resolver:uC};function SC(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}function CC(e,t){if(e==null)return{};var n=SC(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var wC={target(e){if(e)return()=>`current`in e?e.current:e},enabled(e=!0){return e},window(e=GS.isBrowser?window:void 0){return e},eventOptions({passive:e=!0,capture:t=!1}={}){return{passive:e,capture:t}},transform(e){return e}},TC=[`target`,`eventOptions`,`window`,`enabled`,`transform`];function EC(e={},t){let n={};for(let[r,i]of Object.entries(t))switch(typeof i){case`function`:n[r]=i.call(n,e[r],r,e);break;case`object`:n[r]=EC(e[r],i);break;case`boolean`:i&&(n[r]=e[r]);break}return n}function DC(e,t,n={}){let r=e,{target:i,eventOptions:a,window:o,enabled:s,transform:c}=r,l=CC(r,TC);if(n.shared=EC({target:i,eventOptions:a,window:o,enabled:s,transform:c},wC),t){let e=mC.get(t);n[t]=EC($x({shared:n.shared},l),e)}else for(let e in l){let t=mC.get(e);t&&(n[e]=EC($x({shared:n.shared},l[e]),t))}return n}var OC=class{constructor(e,t){Zx(this,`_listeners`,new Set),this._ctrl=e,this._gestureKey=t}add(e,t,n,r,i){let a=this._listeners,o=sS(t,n),s=$x($x({},this._gestureKey?this._ctrl.config[this._gestureKey].eventOptions:{}),i);e.addEventListener(o,r,s);let c=()=>{e.removeEventListener(o,r,s),a.delete(c)};return a.add(c),c}clean(){this._listeners.forEach(e=>e()),this._listeners.clear()}},kC=class{constructor(){Zx(this,`_timeouts`,new Map)}add(e,t,n=140,...r){this.remove(e),this._timeouts.set(e,window.setTimeout(t,n,...r))}remove(e){let t=this._timeouts.get(e);t&&window.clearTimeout(t)}clean(){this._timeouts.forEach(e=>void window.clearTimeout(e)),this._timeouts.clear()}},AC=class{constructor(e){Zx(this,`gestures`,new Set),Zx(this,`_targetEventStore`,new OC(this)),Zx(this,`gestureEventStores`,{}),Zx(this,`gestureTimeoutStores`,{}),Zx(this,`handlers`,{}),Zx(this,`config`,{}),Zx(this,`pointerIds`,new Set),Zx(this,`touchIds`,new Set),Zx(this,`state`,{shared:{shiftKey:!1,metaKey:!1,ctrlKey:!1,altKey:!1}}),MC(this,e)}setEventIds(e){if(cS(e))return this.touchIds=new Set(mS(e)),this.touchIds;if(`pointerId`in e)return e.type===`pointerup`||e.type===`pointercancel`?this.pointerIds.delete(e.pointerId):e.type===`pointerdown`&&this.pointerIds.add(e.pointerId),this.pointerIds}applyHandlers(e,t){this.handlers=e,this.nativeHandlers=t}applyConfig(e,t){this.config=DC(e,t,this.config)}clean(){this._targetEventStore.clean();for(let e of this.gestures)this.gestureEventStores[e].clean(),this.gestureTimeoutStores[e].clean()}effect(){return this.config.shared.target&&this.bind(),()=>this._targetEventStore.clean()}bind(...e){let t=this.config.shared,n={},r;if(!(t.target&&(r=t.target(),!r))){if(t.enabled){for(let t of this.gestures){let i=this.config[t],a=NC(n,i.eventOptions,!!r);i.enabled&&new(pC.get(t))(this,e,t).bind(a)}let i=NC(n,t.eventOptions,!!r);for(let t in this.nativeHandlers)i(t,``,n=>this.nativeHandlers[t]($x($x({},this.state.shared),{},{event:n,args:e})),void 0,!0)}for(let e in n)n[e]=TS(...n[e]);if(!r)return n;for(let e in n){let{device:t,capture:i,passive:a}=oS(e);this._targetEventStore.add(r,t,``,n[e],{capture:i,passive:a})}}}};function jC(e,t){e.gestures.add(t),e.gestureEventStores[t]=new OC(e,t),e.gestureTimeoutStores[t]=new kC}function MC(e,t){t.drag&&jC(e,`drag`),t.wheel&&jC(e,`wheel`),t.scroll&&jC(e,`scroll`),t.move&&jC(e,`move`),t.pinch&&jC(e,`pinch`),t.hover&&jC(e,`hover`)}var NC=(e,t,n)=>(r,i,a,o={},s=!1)=>{let c=o.capture??t.capture,l=o.passive??t.passive,u=s?r:iS(r,i,c);n&&l&&(u+=`Passive`),e[u]=e[u]||[],e[u].push(a)},PC=/^on(Drag|Wheel|Scroll|Move|Pinch|Hover)/;function FC(e){let t={},n={},r=new Set;for(let i in e)PC.test(i)?(r.add(RegExp.lastMatch),n[i]=e[i]):t[i]=e[i];return[n,t,r]}function IC(e,t,n,r,i,a){if(!e.has(n)||!pC.has(r))return;let o=n+`Start`,s=n+`End`;i[r]=e=>{let r;return e.first&&o in t&&t[o](e),n in t&&(r=t[n](e)),e.last&&s in t&&t[s](e),r},a[r]=a[r]||{}}function LC(e,t){let[n,r,i]=FC(e),a={};return IC(i,n,`onDrag`,`drag`,a,t),IC(i,n,`onWheel`,`wheel`,a,t),IC(i,n,`onScroll`,`scroll`,a,t),IC(i,n,`onPinch`,`pinch`,a,t),IC(i,n,`onMove`,`move`,a,t),IC(i,n,`onHover`,`hover`,a,t),{handlers:a,config:t,nativeHandlers:r}}function RC(e,t={},n,r){let i=Y.useMemo(()=>new AC(e),[]);if(i.applyHandlers(e,r),i.applyConfig(t,n),Y.useEffect(i.effect.bind(i)),Y.useEffect(()=>i.clean.bind(i),[]),t.target===void 0)return i.bind.bind(i)}function zC(e,t){return hC(gC),RC({drag:e},t||{},`drag`)}function BC(e){return e.forEach(hC),function(e,t){let{handlers:n,nativeHandlers:r,config:i}=LC(e,t||{});return RC(n,i,void 0,r)}}function VC(e,t){return BC([gC,yC,bC,xC,vC,_C])(e,t||{})}var HC={filterTaps:!0,pointer:{capture:!0}};function UC(e,t){return!e&&t===void 0}function WC(e,t,n){let r=n>0?n:1;return{dx:(e[0]-t[0])/r,dy:(e[1]-t[1])/r}}function GC(e){return zC(({xy:t,initial:n,first:r,last:i,memo:a})=>{if(UC(r,a)){i&&e.onGestureActive(!1);return}let o=r?{...e.getRect()}:a;r&&e.onGestureActive(!0);let{dx:s,dy:c}=WC(t,n,e.getScale()),l=Er({...o,x:o.x+s,y:o.y+c},e.getBounds());return e.onChange(l,i),i&&e.onGestureActive(!1),o},{...HC,enabled:!e.disabled})}var KC=10,qC=1,JC={ArrowLeft:[-1,0],ArrowRight:[1,0],ArrowUp:[0,-1],ArrowDown:[0,1]};function YC(e){return(0,Y.useCallback)(t=>{if(t.key===`Escape`){t.stopPropagation(),e.onClose();return}if(t.altKey&&t.key===`Enter`){t.preventDefault(),e.onToggleMaximize();return}let n=JC[t.key];if(!n||!e.movable)return;t.preventDefault();let r=t.shiftKey?qC:KC;e.onMove(Ar(e.getRect(),n[0]*r,n[1]*r,e.getBounds()))},[e])}function XC(e){return zC(({args:t,xy:n,initial:r,first:i,last:a,memo:o})=>{if(UC(i,o)){a&&e.onGestureActive(!1);return}let s=t[0],c=i?{...e.getRect()}:o;i&&e.onGestureActive(!0);let{dx:l,dy:u}=WC(n,r,e.getScale()),d=Er(Or(c,s,l,u),e.getBounds());return e.onChange(d,a),a&&e.onGestureActive(!1),c},{...HC,enabled:!e.disabled})}var ZC={edge:6,corner:12},QC={edge:12,corner:20},$C={n:`cursor-n-resize`,s:`cursor-s-resize`,e:`cursor-e-resize`,w:`cursor-w-resize`,ne:`cursor-ne-resize`,nw:`cursor-nw-resize`,se:`cursor-se-resize`,sw:`cursor-sw-resize`};function ew(e,t){let n=e.length===2,r={position:`absolute`,touchAction:`none`,zIndex:1};return e.includes(`n`)&&(r.top=-t.edge/2),e.includes(`s`)&&(r.bottom=-t.edge/2),e.includes(`w`)&&(r.left=-t.edge/2),e.includes(`e`)&&(r.right=-t.edge/2),n?(r.width=t.corner,r.height=t.corner,r):(e===`n`||e===`s`?(r.left=t.corner,r.right=t.corner,r.height=t.edge):(r.top=t.corner,r.bottom=t.corner,r.width=t.edge),r)}function tw({bind:e}){let t=Vs(`(pointer: coarse)`)?QC:ZC;return(0,X.jsx)(X.Fragment,{children:jr.map(n=>(0,X.jsx)(`div`,{...e(n),"data-resize-handle":n,"aria-hidden":!0,className:$C[n],style:ew(n,t)},n))})}function nw(e,t,n){e&&(e.style.transform=`translate3d(${Math.round(t.x)}px, ${Math.round(t.y)}px, 0)`,e.style.width=`${Math.round(t.w)}px`,e.style.height=n?`36px`:`${Math.round(t.h)}px`)}function rw({win:e,bounds:t,title:n,focused:r,getScale:i,onGestureActive:a,children:o}){let s=(0,Y.useRef)(null),[c,l]=(0,Y.useState)(!1),u=e.state===`maximized`,d=e.state===`minimized`,f=u?{x:0,y:0,w:t.w,h:t.h}:e.rect,{body:p,pip:m}=Dx(e.id,s,d),h=(0,Y.useRef)(f);h.current=f;let g=(0,Y.useRef)(t);g.current=t,(0,Y.useLayoutEffect)(()=>{nw(s.current,h.current,d)},[f.x,f.y,f.w,f.h,d]);let _=(0,Y.useCallback)(e=>{l(e),a(e)},[a]),v=(0,Y.useCallback)((t,n)=>{nw(s.current,t,Mr.getState().windows[e.id]?.state===`minimized`),n&&Mr.getState().move(e.id,{x:t.x,y:t.y})},[e.id]),y=(0,Y.useCallback)((t,n)=>{nw(s.current,t,!1),n&&Mr.getState().resize(e.id,t)},[e.id]),b={getRect:()=>h.current,getBounds:()=>g.current,getScale:i,onGestureActive:_},x=GC({...b,onChange:v,disabled:u}),S=XC({...b,onChange:y,disabled:u||d}),C=(0,Y.useCallback)(()=>Mr.getState().close(e.id),[e.id]),w=(0,Y.useCallback)(()=>{Mr.getState().setState(e.id,u?`normal`:`maximized`)},[e.id,u]),T=(0,Y.useCallback)(()=>{Mr.getState().setState(e.id,d?`normal`:`minimized`)},[e.id,d]),E=YC({getRect:()=>h.current,getBounds:()=>g.current,onMove:t=>Mr.getState().move(e.id,{x:t.x,y:t.y}),onToggleMaximize:w,onClose:C,movable:!u}),D=!!m&&Wi(e.id);return(0,X.jsxs)(`div`,{ref:s,role:`group`,"aria-roledescription":`window`,"aria-label":n,onPointerDownCapture:()=>Mr.getState().focus(e.id),style:{zIndex:Dr(e.rank)},className:U(`absolute left-0 top-0 flex flex-col pointer-events-auto`,`rounded-[8px] border border-border bg-panel overflow-visible`,r?`shadow-2xl shadow-black/40`:`shadow-lg shadow-black/20`,c?`transition-none`:`transition-[transform,width,height] duration-150 motion-reduce:transition-none`,D&&`hidden`),children:[(0,X.jsx)(Ux,{id:e.id,kind:e.kind,title:n,state:e.state,focused:r,titlebarProps:{...x(),onKeyDown:E,tabIndex:0,role:`toolbar`,"aria-label":`${n} title bar`,style:{touchAction:`none`,userSelect:`none`}},onMinimize:T,onToggleMaximize:w,onClose:C}),m&&!D&&(0,X.jsx)(Ox,{pip:m,minimized:d}),!u&&!d&&(0,X.jsx)(tw,{bind:e=>S(e)}),(0,Nu.createPortal)((0,X.jsx)(pr,{container:m?.pipWindow.document.body,children:o}),p)]})}var iw={explorer:(0,Y.lazy)(()=>H(()=>import(`./explorer-window-content-CRJ2eMZ4.js`),__vite__mapDeps([91,1,2,3,92,6,30,7,9,43,12,58,59,60,15,16,17,35,63,11,19,23,8,10,27,13,14,93,49,38]))),"agent-session":(0,Y.lazy)(()=>H(()=>import(`./agent-session-window-content-D9C9FA7E.js`),__vite__mapDeps([94,1,2,3,6,28,7,31,14,9,32,33,12,34,35,19,36,23,8,10,11]))),"system-monitor":(0,Y.lazy)(()=>H(()=>import(`./system-monitor-window-content-BLw1QBXo.js`),__vite__mapDeps([95,2,1,3,7,13,14,9,12,80,6,19]))),"tab-host":(0,Y.lazy)(()=>H(()=>import(`./tab-host-window-content-BL61SB5m.js`),__vite__mapDeps([96,1,2,3,7,8,6,9,10,11,12,93,16,35,19]))),"remote-desktop":(0,Y.lazy)(()=>H(()=>import(`./remote-desktop-window-content-BnznIby3.js`),__vite__mapDeps([97,1,2,3,27,6,7,8,9,10,11,12,13,14,98,19,20,22,99,38,16]))),settings:(0,Y.lazy)(()=>H(()=>import(`./settings-window-content-BTflfLez.js`),__vite__mapDeps([100,2,1,3,27,6,12,9,75,14,61,76,19])))};function aw(e,t){let n=t?.title;if(typeof n==`string`&&n.trim())return n;if(e===`agent-session`)return`Agent session`;if(e===`system-monitor`)return`System Monitor`;if(e===`remote-desktop`)return`Remote Desktop`;if(e===`settings`)return`Settings`;if(e===`tab-host`)return`Tab`;let r=t?.path;if(e===`explorer`&&typeof r==`string`&&r){let e=r.split(/[\\/]/).filter(Boolean);return e[e.length-1]??r}return`Explorer`}function ow(){return hi()?null:(0,X.jsx)(sw,{})}function sw(){let e=(0,Y.useRef)(null),t=Mr(e=>e.windows),n=Mr(e=>e.bounds),[r,i]=(0,Y.useState)(!1);(0,Y.useLayoutEffect)(()=>{let t=e.current;if(!t)return;let n=()=>{let e=t.getBoundingClientRect(),n=t.offsetWidth>0?e.width/t.offsetWidth:1;return{w:Math.round(e.width/n),h:Math.round(e.height/n)}},r=Mr.getState();r.setBounds(n()),r.restoreAll(n());let i=new ResizeObserver(()=>Mr.getState().setBounds(n()));return i.observe(t),()=>i.disconnect()},[]);let a=(0,Y.useCallback)(()=>{let t=e.current;return!t||t.offsetWidth===0?1:t.getBoundingClientRect().width/t.offsetWidth},[]),o=kr(t),s=o[o.length-1]?.id;return(0,X.jsxs)(`div`,{ref:e,className:`absolute inset-0 overflow-hidden pointer-events-none`,children:[o.map(e=>{let t=iw[e.kind];return(0,X.jsx)(rw,{win:e,bounds:n,title:aw(e.kind,e.payload),focused:e.id===s,getScale:a,onGestureActive:i,children:(0,X.jsx)(Y.Suspense,{fallback:(0,X.jsx)(`div`,{className:`p-3 text-xs text-text-2`,children:`Loading…`}),children:(0,X.jsx)(t,{id:e.id,payload:e.payload})})},e.id)}),r&&(0,X.jsx)(`div`,{className:`absolute inset-0 pointer-events-auto`,style:{zIndex:38}})]})}function cw(e,t,n,r,i){let a=r.trim().toLowerCase(),o=e=>!a||e.title.toLowerCase().includes(a)||e.type.toLowerCase().includes(a);if(i?.sortMode===`recent`){let t=i.recency,n=e=>t?.get(e.id)??2**53-1,r=e.filter(o).sort((e,t)=>n(e)-n(t));return{groups:r.length?[{panelId:`__recent__`,label:``,tabs:r}]:[],total:r.length}}let s=new Map;for(let r of e){if(!o(r))continue;let e=t[r.id]??n[0]??`__unknown__`;(s.get(e)??s.set(e,[]).get(e)).push(r)}let c=[];return(n.length>0?n:[...s.keys()]).forEach((e,t)=>{let n=s.get(e);!n||n.length===0||c.push({panelId:e,label:`Panel ${t+1}`,tabs:n})}),{groups:c,total:c.reduce((e,t)=>e+t.tabs.length,0)}}var lw=`ppm:tab-sort-mode`;function uw(){try{return localStorage.getItem(lw)===`recent`?`recent`:`default`}catch{return`default`}}function dw({open:e,onClose:t,onOpenPalette:n,tabs:r,tabPanelMap:i,panelOrder:a,activeTabId:o,projectColor:s,onTabLongPress:c,recency:l,sessionTagMap:u}){let[d,f]=(0,Y.useState)(``),p=Xs(e=>e.notifications),m=Ii(e=>e.sessions),[h,g]=(0,Y.useState)(uw),_=(0,Y.useCallback)(e=>{g(e);try{localStorage.setItem(lw,e)}catch{}},[]),{groups:v,total:y}=cw(r,i,a,d,{sortMode:h,recency:l}),b=(0,Y.useRef)(null),x=(0,Y.useCallback)(e=>{c&&(b.current=setTimeout(()=>c(e),400))},[c]),S=(0,Y.useCallback)(()=>{b.current&&=(clearTimeout(b.current),null)},[]);function C(e){W.getState().setActiveTab(e.id,i[e.id]);let n=Cr(e);n&&Xs.getState().clearForSession(n),t()}function w(e,t){t.stopPropagation(),W.getState().closeTab(e.id,i[e.id])}function T(){t(),n()}return(0,X.jsxs)(la,{open:e,onClose:t,className:`max-h-[72vh] flex flex-col`,children:[(0,X.jsxs)(`div`,{className:`shrink-0 flex items-center gap-2 pl-4 pr-3 pt-1 pb-2.5`,children:[(0,X.jsx)(`span`,{className:`text-[13px] font-semibold text-text-primary`,children:`Open Tabs`}),(0,X.jsx)(`span`,{className:`px-1.5 h-[18px] inline-flex items-center rounded-md border border-border bg-surface-elevated text-[10px] font-mono text-text-secondary`,children:r.length}),(0,X.jsx)(`div`,{className:`flex-1`}),(0,X.jsx)(`div`,{className:`flex items-center gap-0.5 p-0.5 rounded-lg bg-background border border-border`,children:[[`default`,`Default`],[`recent`,`Recent`]].map(([e,t])=>(0,X.jsx)(`button`,{onClick:()=>_(e),"aria-pressed":h===e,className:U(`h-7 px-2.5 rounded-md text-[11px] font-medium transition-colors select-none`,h===e?`bg-primary/10 text-primary`:`text-text-secondary active:bg-surface-elevated`),children:t},e))}),(0,X.jsx)(`button`,{onClick:T,title:`New tab`,"aria-label":`New tab`,className:`flex items-center justify-center size-8 rounded-full border border-dashed border-border text-text-subtle active:bg-surface-elevated`,children:(0,X.jsx)(Dt,{className:`size-4`})})]}),(0,X.jsx)(`div`,{className:`shrink-0 px-3 pb-2`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-2 h-10 px-3 rounded-xl bg-background border border-border`,children:[(0,X.jsx)(Nn,{className:`size-4 text-text-subtle shrink-0`}),(0,X.jsx)(`input`,{value:d,onChange:e=>f(e.target.value),placeholder:`Filter tabs...`,className:`flex-1 bg-transparent outline-none text-text-primary placeholder:text-text-subtle`,style:{fontSize:16}})]})}),(0,X.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto overscroll-contain px-2 pb-2`,children:y===0?(0,X.jsx)(`p`,{className:`text-center text-[13px] text-text-subtle py-6`,children:`No tabs match`}):v.map(e=>(0,X.jsxs)(`div`,{className:`mb-1`,children:[e.label&&(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 px-2 pt-2 pb-1`,children:[(0,X.jsx)(Ut,{className:`size-3 text-text-subtle`}),(0,X.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-[0.05em] text-text-subtle`,children:e.label}),(0,X.jsx)(`span`,{className:`text-[10px] font-mono text-text-subtle`,children:e.tabs.length})]}),e.tabs.map(e=>{let t=Su(e),n=e.id===o,r=Cr(e),i=r?u[r]?.color:void 0,a=r?p.get(r):void 0,c=a&&a.count>0?a.type:null,l=!!a?.manual,d=r?m.has(r):!1,f=i??(e.projectId&&s?s:void 0);return(0,X.jsxs)(`button`,{onClick:()=>C(e),onTouchStart:()=>x(e.id),onTouchEnd:S,onTouchMove:S,onTouchCancel:S,onContextMenu:e=>e.preventDefault(),className:U(`relative flex items-center gap-2.5 w-full h-11 rounded-lg pl-3.5 pr-2 transition-colors`,n?`bg-primary/10`:`active:bg-surface-elevated`),children:[(0,X.jsx)(`span`,{"aria-hidden":!0,className:`absolute left-0 top-2 bottom-2 w-[3px] rounded-r-sm`,style:{backgroundColor:f??`transparent`}}),(0,X.jsxs)(`span`,{className:U(`relative shrink-0`,d&&`text-warning`),children:[d?(0,X.jsx)(In,{className:`size-4`}):(0,X.jsx)(t,{className:U(`size-4`,n?`text-primary`:`text-text-secondary`)}),d?(0,X.jsxs)(`span`,{"aria-hidden":!0,className:`absolute inset-0 flex items-center justify-center gap-[1.5px]`,children:[(0,X.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`}),(0,X.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`,style:{animationDelay:`0.15s`}}),(0,X.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`,style:{animationDelay:`0.3s`}})]}):c&&(!n||l)?(0,X.jsx)(`span`,{className:U(`absolute -top-1 -right-1 size-2 rounded-full`,qs(c))}):null]}),(0,X.jsx)(`span`,{className:U(`flex-1 text-left text-sm font-medium truncate`,n?`text-primary`:`text-text-primary`),children:e.title}),n&&(0,X.jsx)(`span`,{className:`size-1.5 rounded-full bg-primary shrink-0`}),e.closable&&(0,X.jsx)(`span`,{role:`button`,tabIndex:0,onClick:t=>w(e,t),className:`flex items-center justify-center size-8 rounded-lg text-text-subtle active:bg-surface-elevated shrink-0`,children:(0,X.jsx)(Be,{className:`size-4`})})]},e.id)})]},e.panelId))})]})}function fw({onMenuPress:e,onProjectsPress:t}){let n=W(e=>e.focusedPanelId),r=W(e=>e.panels),i=W(e=>e.grid),a=W(e=>e.dock),o=W(e=>e.dockExpanded),s=ua(!0)?.keyboardOpen??!1,c=hi(),l=W(e=>e.currentProject),{tabs:u,tabPanelMap:d}=(0,Y.useMemo)(()=>{let e=i.flat(),t=[],n={};for(let i of e){let e=r[i];if(e)for(let r of e.tabs)r.projectId&&l&&r.projectId!==l||(t.push(r),n[r.id]=i)}return{tabs:t,tabPanelMap:n}},[r,i,l]),f=(0,Y.useMemo)(()=>{let e=e=>typeof e.metadata?.lastActiveAt==`number`?e.metadata.lastActiveAt:-1,t=new Map;return[...u].filter(t=>e(t)>=0).sort((t,n)=>e(n)-e(t)).forEach((e,n)=>t.set(e.id,n)),t},[u]),p=i.flat(),m=p.includes(n)?n:p[0],h=(m?r[m]?.activeTabId:null)??null,g=Xs(e=>e.notifications),_=Sc(e=>e.selection),[v,y]=(0,Y.useState)(null),[b,x]=(0,Y.useState)(!1),[S,C]=(0,Y.useState)(null),[w,T]=(0,Y.useState)(``),E=u.find(e=>e.id===h)??null,D=r[mr],O=sx(D,l),k=v?u.find(e=>e.id===v):null,A=r[v?d[v]??n:n]?.tabs??[],ee=v?A.findIndex(e=>e.id===v):-1,j=Cr(k),te=j?(g.get(j)?.count??0)>0:!1,M=k?.metadata?.filePath,N=k?.metadata?.projectName,P=_!=null&&!!N&&_.projectName===N&&_.filePath!==M;function F(e){y(null),C(e.id),T(e.title)}async function ne(){let e=u.find(e=>e.id===S),t=e?.metadata?.sessionId,n=w.trim();if(!e||!t||!n||!l){C(null);return}try{await B.patch(`${z(l)}/chat/sessions/${t}`,{title:n}),W.getState().updateTab(e.id,{title:n})}catch{}C(null)}function re(e){let t=d[e]??n,r=W.getState().panels[t]?.tabs??[];for(let n of r)n.id!==e&&n.closable&&W.getState().closeTab(n.id,t);y(null)}function ie(e){let t=d[e]??n,r=W.getState().panels[t]?.tabs??[],i=r.findIndex(t=>t.id===e);for(let e=i+1;e<r.length;e++)r[e].closable&&W.getState().closeTab(r[e].id,t);y(null)}function ae(e){let t=e.metadata?.filePath,n=e.metadata?.projectName;if(!t||!n)return;let r=e.metadata?.unsavedContent;Sc.getState().setSelection({filePath:t,projectName:n,dirtyContent:r,label:dr(t)}),y(null)}async function I(e){let t=e.metadata?.filePath,n=e.metadata?.projectName,r=Sc.getState().selection;if(!r||!t||!n)return;let i=e.metadata?.unsavedContent;try{await wc({path:r.filePath,dirtyContent:r.dirtyContent},{path:t,dirtyContent:i},n),Sc.getState().clearSelection()}catch(e){R.error(e instanceof Error?e.message:`Compare failed`)}y(null)}function oe(e){let t=e.metadata?.sessionId,n=e.metadata?.projectName;t&&n&&Xs.getState().markUnread(t,n,e.title),y(null)}let[se,ce]=(0,Y.useState)(null);function le(e,t){let n=e.metadata?.filePath,r=e.metadata?.projectName;switch(t){case`copy-path`:n&&uu(n);break;case`copy-full-path`:if(n){let e=r?G.getState().projects.find(e=>e.name===r):null;uu(e?`${e.path}/${n}`:n)}break;case`download`:n&&r&&su(r,n);break;case`rename`:case`delete`:n&&ce({action:t,tabId:e.id,node:{name:e.title,path:n,type:`file`}});break}y(null)}let{activeProject:ue}=G.getState(),{activeProject:de,projects:fe,customOrder:pe}=G(jd(e=>({activeProject:e.activeProject,projects:e.projects,customOrder:e.customOrder}))),{projectTags:me,loadTags:ge}=Us(de?.name),_e=(0,Y.useCallback)(async(e,t)=>{if(!de?.name)return;let n={name:de.name,path:de.path},r=t===null?void 0:me.find(e=>e.id===t);if(t!==null&&!r){y(null);return}Hr.getState().setSessionTag(n,e,r?{id:r.id,name:r.name,color:r.color}:null),y(null);let i=`${z(de.name)}/chat/sessions/${e}/tag`;await Ir(n,()=>t===null?B.del(i):B.patch(i,{tagId:t})),ge()},[de,me,ge]),ve=de?$n(de):null,ye=Hr(e=>(ve?e.byProject[ve]?.sessions:void 0)??zr),be={};for(let e of ye)e.tag&&(be[e.id]=e.tag);let xe=Nr(fe,pe??null),Se=xe.map(e=>e.name),Ce=xe.findIndex(e=>e.name===de?.name),we=de?Hv(de.color,Ce>=0?Ce:0):`#4f86c6`,Te=E?Su(E):null;return(0,X.jsxs)(`nav`,{className:`fixed bottom-0 left-0 right-0 md:hidden bg-background border-t border-border z-40 select-none`,children:[(0,X.jsxs)(`div`,{className:`flex items-center h-12`,children:[(0,X.jsxs)(`div`,{className:`flex items-center shrink-0 border-r border-border`,children:[(0,X.jsx)(`button`,{onClick:e,"aria-label":`Open menu`,className:`flex items-center justify-center size-12 shrink-0 text-text-secondary`,children:(0,X.jsx)(At,{className:`size-5`})}),(0,X.jsx)(`div`,{className:`w-px self-stretch bg-border shrink-0`}),(0,X.jsx)(`button`,{onClick:t,className:`flex items-center justify-center size-12 shrink-0 text-text-secondary`,title:`Switch project`,children:de?(0,X.jsx)(Wv,{name:de.name,color:we,image:de.image,size:28,allNames:Se}):(0,X.jsx)(he,{className:`size-5`})}),(0,X.jsx)(`div`,{className:`w-px self-stretch bg-border shrink-0`}),(0,X.jsxs)(`button`,{onClick:()=>W.getState().toggleDock(),title:a.visible?`Hide panel`:`Show panel`,"aria-label":a.visible?`Hide panel`:`Show panel`,className:U(`relative flex items-center justify-center size-12 shrink-0 transition-colors`,a.visible?`text-primary bg-primary/10`:`text-text-secondary`),children:[(0,X.jsx)(sn,{className:`size-5`}),O>0&&(0,X.jsx)(`span`,{"aria-hidden":!0,className:`absolute top-1.5 right-1.5 size-[7px] rounded-full ring-[1.5px] ring-background`,style:{backgroundColor:`var(--color-success)`}})]}),(0,X.jsx)(`div`,{className:`w-px self-stretch bg-border shrink-0`}),(0,X.jsx)(`button`,{onClick:()=>hl(),title:`New tab`,"aria-label":`New tab`,className:`flex items-center justify-center size-12 shrink-0 text-text-secondary`,children:(0,X.jsx)(Dt,{className:`size-5`})})]}),E&&Te?(0,X.jsxs)(`button`,{onClick:()=>x(!0),className:`flex-1 min-w-0 flex items-center gap-2 h-12 px-3 border-t-2 border-primary bg-surface`,children:[(0,X.jsx)(Te,{className:`size-4 text-primary shrink-0`}),(0,X.jsx)(`span`,{className:`flex-1 min-w-0 truncate text-left text-xs font-medium text-primary`,children:E.title}),(0,X.jsx)(`span`,{className:`px-1.5 h-[18px] inline-flex items-center rounded-md border border-border bg-surface-elevated text-[10px] font-mono text-text-secondary shrink-0`,children:u.length}),(0,X.jsx)(Xe,{className:`size-3.5 text-text-subtle shrink-0`})]}):(0,X.jsxs)(`button`,{onClick:()=>hl(),className:`flex-1 flex items-center gap-1.5 h-12 px-3 text-text-secondary text-xs`,children:[(0,X.jsx)(Dt,{className:`size-4`}),` New Tab`]})]}),(0,X.jsx)(dw,{open:b,onClose:()=>x(!1),onOpenPalette:()=>hl(),tabs:u,tabPanelMap:d,panelOrder:i.flat(),activeTabId:h,projectColor:de?we:null,onTabLongPress:e=>y(e),recency:f,sessionTagMap:be}),(0,X.jsxs)(la,{open:!!k,onClose:()=>y(null),className:`select-none`,children:[(0,X.jsx)(`div`,{className:`px-3 py-2 text-xs text-text-secondary border-b border-border truncate`,children:k?.title}),j&&(0,X.jsxs)(`button`,{onClick:()=>F(k),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(yt,{className:`size-4`}),` Rename`]}),k?.type===`editor`&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`button`,{onClick:()=>le(k,`copy-path`),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(_n,{className:`size-4`}),` Copy Path`]}),(0,X.jsxs)(`button`,{onClick:()=>le(k,`copy-full-path`),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(_n,{className:`size-4`}),` Copy Full Path`]}),(0,X.jsxs)(`button`,{onClick:()=>le(k,`download`),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(An,{className:`size-4`}),` Download`]}),(0,X.jsxs)(`button`,{onClick:()=>le(k,`rename`),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(yt,{className:`size-4`}),` Rename`]}),(0,X.jsxs)(`button`,{onClick:()=>le(k,`delete`),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-error active:bg-surface-elevated`,children:[(0,X.jsx)(Je,{className:`size-4`}),` Delete`]}),(0,X.jsx)(`div`,{className:`h-px bg-border mx-2`}),(0,X.jsxs)(`button`,{onClick:()=>ae(k),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(Ut,{className:`size-4`}),` Select for Compare`]}),P&&(0,X.jsxs)(`button`,{onClick:()=>I(k),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(Ut,{className:`size-4`}),` Compare with Selected (`,_.label,`)`]}),(0,X.jsx)(`div`,{className:`h-px bg-border mx-2`})]}),j&&!te&&(0,X.jsxs)(`button`,{onClick:()=>oe(k),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(qn,{className:`size-4 fill-primary text-primary`}),` Mark as unread`]}),j&&me.length>0&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`px-3 pt-2 pb-1 text-xs text-text-secondary flex items-center gap-2`,children:[(0,X.jsx)(Ee,{className:`size-3.5`}),` Set Tag`]}),me.map(e=>(0,X.jsxs)(`button`,{onClick:()=>_e(j,e.id),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(`span`,{className:`size-2.5 rounded-full shrink-0`,style:{backgroundColor:e.color}}),e.name,be[j]?.id===e.id&&(0,X.jsx)(Rn,{className:`size-3.5 ml-auto`})]},e.id)),be[j]&&(0,X.jsx)(`button`,{onClick:()=>_e(j,null),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:`Remove tag`}),(0,X.jsx)(`div`,{className:`h-px bg-border mx-2`})]}),k?.closable&&(0,X.jsxs)(`button`,{onClick:()=>{W.getState().closeTab(v),y(null)},className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(Be,{className:`size-4`}),` Close`]}),A.some(e=>e.id!==v&&e.closable)&&(0,X.jsxs)(`button`,{onClick:()=>re(v),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(Ot,{className:`size-4`}),` Close Others`]}),ee>=0&&ee<A.length-1&&(0,X.jsxs)(`button`,{onClick:()=>ie(v),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,X.jsx)(Ue,{className:`size-4`}),` Close to the Right`]})]}),(0,X.jsx)(la,{open:!!S,onClose:()=>C(null),children:(0,X.jsxs)(`div`,{className:`px-4 pt-1 pb-3`,children:[(0,X.jsx)(`div`,{className:`text-[13px] font-semibold text-text-primary mb-2`,children:`Rename chat`}),(0,X.jsx)(`input`,{autoFocus:!0,value:w,onChange:e=>T(e.target.value),onKeyDown:e=>{e.key===`Enter`&&ne()},placeholder:`Session title`,className:`w-full h-11 px-3 rounded-xl bg-background border border-border text-text-primary outline-none focus:border-primary`,style:{fontSize:16}}),(0,X.jsxs)(`div`,{className:`flex gap-2 mt-3`,children:[(0,X.jsx)(`button`,{onClick:()=>C(null),className:`flex-1 h-11 rounded-xl border border-border text-sm text-text-secondary active:bg-surface-elevated`,children:`Cancel`}),(0,X.jsx)(`button`,{onClick:ne,className:`flex-1 h-11 rounded-xl bg-primary text-primary-foreground text-sm font-medium active:opacity-90`,children:`Save`})]})]})}),se&&(0,X.jsx)(hu,{node:se.node,projectName:ue?.name??``,onClose:()=>ce(null),onRefresh:()=>{ue&&di.getState().fetchTree(ue.name),se.action===`delete`&&W.getState().closeTab(se.tabId)}}),c&&(0,X.jsx)(la,{open:a.visible,onClose:()=>W.getState().setDockVisible(!1),zIndex:60,className:U(`flex flex-col`,s?`h-[calc(var(--sheet-vh,100dvh)+var(--sheet-kb,0px))]`:o?`h-[calc(var(--sheet-vh,100dvh)*0.92)]`:`h-[calc(var(--sheet-vh,100dvh)*0.6)]`),children:(0,X.jsx)(`div`,{className:`flex flex-col flex-1 min-h-0 overflow-hidden`,children:(0,X.jsx)(_d,{variant:`mobile`})})})]})}var pw=64,mw=350,hw=10;function gw(e,t,n){let r=[...e],i=r.indexOf(t);if(i<0||t===n)return e;r.splice(i,1);let a=r.indexOf(n);return r.splice(a<0?r.length:a,0,t),r}function _w({tabs:e,activeId:t,onSelect:n,onReorder:r}){let i=(0,Y.useRef)(null),[a,o]=(0,Y.useState)(0),[s,c]=(0,Y.useState)(null),[l,u]=(0,Y.useState)(null),d=(0,Y.useRef)(null),f=(0,Y.useRef)(null),[p,m]=(0,Y.useState)(!1),h=(0,Y.useRef)(null),g=(0,Y.useRef)(null),_=e=>{d.current=e,c(e)},v=e=>{f.current=e,u(e)},y=()=>{_(null),v(null)},b=()=>{h.current&&=(clearTimeout(h.current),null)};(0,Y.useEffect)(()=>{let e=i.current;if(!e)return;let t=new ResizeObserver(e=>o(e[0].contentRect.width));return t.observe(e),()=>t.disconnect()},[]),(0,Y.useEffect)(()=>{let e=i.current;if(!e)return;let t=e=>{if(!d.current)return;e.preventDefault();let t=e.touches[0];if(!t)return;let n=(document.elementFromPoint(t.clientX,t.clientY)?.closest(`[data-tabid]`))?.getAttribute(`data-tabid`);n&&v(n)};return e.addEventListener(`touchmove`,t,{passive:!1}),()=>e.removeEventListener(`touchmove`,t)},[]);let x=a?Math.max(1,Math.floor(a/pw)):e.length,S=e.length>x,C=S?Math.max(1,x-1):e.length,w=e.slice(0,C),T=S&&!w.some(e=>e.id===t)&&e.some(e=>e.id===t);if(T){let n=e.find(e=>e.id===t);w=[...e.slice(0,C-1),n]}let E=new Set(w.map(e=>e.id)),D=e.filter(e=>!E.has(e.id)),O=t=>{d.current&&r(gw(e.map(e=>e.id),d.current,t)),y()},k=(e,t)=>U(`relative flex flex-col items-center justify-center gap-0.5 shrink-0 py-2.5 text-[10px] select-none transition-colors`,t?`text-primary`:`text-text-secondary`,s===e&&`opacity-40`,l===e&&s!==e&&`shadow-[inset_2px_0_0_var(--accent)]`);return(0,X.jsxs)(`div`,{ref:i,className:`flex items-center overflow-hidden`,children:[w.map(e=>{let r=e.icon;return(0,X.jsxs)(`button`,{"data-tabid":e.id,style:{width:pw},className:k(e.id,t===e.id),draggable:!0,onDragStart:t=>{_(e.id),t.dataTransfer.effectAllowed=`move`},onDragOver:t=>{t.preventDefault(),v(e.id)},onDrop:t=>{t.preventDefault(),O(e.id)},onDragEnd:y,onClick:()=>n(e.id),onTouchStart:t=>{g.current={x:t.touches[0].clientX,y:t.touches[0].clientY},b(),h.current=setTimeout(()=>_(e.id),mw)},onTouchMove:e=>{if(!d.current&&g.current){let t=Math.abs(e.touches[0].clientX-g.current.x),n=Math.abs(e.touches[0].clientY-g.current.y);(t>hw||n>hw)&&b()}},onTouchEnd:()=>{b(),d.current&&f.current?O(f.current):y(),g.current=null},onTouchCancel:()=>{b(),y(),g.current=null},children:[(0,X.jsx)(r,{className:`size-4`}),(0,X.jsx)(`span`,{children:e.shortLabel??e.label}),(0,X.jsx)(av,{id:e.badge,variant:`corner`,className:`top-1 right-2 shadow-none`})]},e.id)}),S&&(0,X.jsxs)(`button`,{style:{width:pw},onClick:()=>m(!0),className:U(`flex flex-col items-center justify-center gap-0.5 shrink-0 py-2.5 text-[10px] transition-colors`,T?`text-primary`:`text-text-secondary`),children:[(0,X.jsx)(_e,{className:`size-4`}),(0,X.jsx)(`span`,{children:`More`})]}),(0,X.jsx)(la,{open:p,onClose:()=>m(!1),children:(0,X.jsxs)(`div`,{className:`px-2 pb-3 pt-1`,children:[(0,X.jsx)(`div`,{className:`px-2 py-1 text-xs text-text-secondary`,children:`More tabs`}),D.map(e=>{let r=e.icon;return(0,X.jsxs)(`button`,{onClick:()=>{n(e.id),m(!1)},className:U(`flex items-center gap-3 w-full px-3 py-2.5 rounded-md text-sm active:bg-surface-elevated`,t===e.id?`text-primary`:`text-foreground`),children:[(0,X.jsx)(r,{className:`size-4 shrink-0`}),(0,X.jsx)(`span`,{children:e.label}),(0,X.jsx)(av,{id:e.badge})]},e.id)})]})})]})}var vw=(0,Y.lazy)(()=>H(()=>import(`./designs-sidebar-panel-CF4tp6j-.js`).then(e=>({default:e.DesignsSidebarPanel})),__vite__mapDeps([89,1,2,3,27,6,7,8,9,10,11,12,87,38,16,19,15,17,35,49,90,48,23]))),yw=new Set([`history`,`teams`,`designs`,`explorer`,`search`,`git`,`database`,`tunnels`,`ai-resources`,`jira`]),bw=e=>yw.has(e)||e.startsWith(`ext:`);function xw({icon:e,label:t,badge:n,onClick:r}){return(0,X.jsxs)(`button`,{onClick:r,className:`group flex flex-col items-center justify-center gap-1 rounded-lg py-2.5 text-text-subtle hover:bg-surface-elevated hover:text-text-secondary transition-colors`,children:[(0,X.jsxs)(`span`,{className:`relative flex items-center justify-center`,children:[(0,X.jsx)(e,{className:`size-4`}),(0,X.jsx)(av,{id:n,variant:`corner`,className:`-top-2 -right-3`})]}),(0,X.jsx)(`span`,{className:`text-[10px] leading-none`,children:t})]})}function Sw({isOpen:e,onClose:t,initialTab:n}){let{activeProject:r}=G(jd(e=>({activeProject:e.activeProject}))),i=V(e=>e.version),a=V(e=>e.jiraEnabled),o=V(e=>e.sidebarTabOrder),s=V(e=>e.setSidebarTabOrder),c=dl(e=>e.contributions),{available:l}=ey(),u=Xv(),[d,f]=(0,Y.useState)(n??`explorer`),[p,m]=(0,Y.useState)(!1),h=(0,Y.useMemo)(()=>ty(Oi({jiraEnabled:a,contributions:c}),o).filter(e=>bw(e.id)),[a,c,o]);(0,Y.useEffect)(()=>{n&&f(n)},[n]),(0,Y.useEffect)(()=>{h.length>0&&!h.some(e=>e.id===d)&&f(h[0].id)},[h,d]),(0,Y.useEffect)(()=>{let e=()=>{gi()&&m(!0)};return window.addEventListener(`open-cloud-share`,e),()=>window.removeEventListener(`open-cloud-share`,e)},[]);let g=(0,Y.useCallback)(()=>Wy(i),[i]),_=[{icon:Ye,label:`Files`,badge:`os-explorer`,onClick:()=>{t(),Rp()}},...l?[{icon:Te,label:`Remote`,badge:`remote-desktop`,onClick:()=>{t(),u()}}]:[],{icon:Ct,label:`Cloud`,onClick:()=>m(!0)},{icon:Kt,label:`Settings`,onClick:()=>{t(),pl()}},{icon:Vn,label:`Bug`,onClick:g}],v=(0,X.jsx)(`p`,{className:`px-4 py-6 text-xs text-text-secondary text-center`,children:`Select a project from the bottom nav bar`});return(0,X.jsxs)(`div`,{className:U(`fixed inset-0 z-50 md:hidden transition-opacity duration-200`,e?`opacity-100`:`opacity-0 pointer-events-none`),children:[(0,X.jsx)(`div`,{className:`absolute inset-0 bg-black/50`,onClick:t,"aria-label":`Close drawer`}),(0,X.jsxs)(`div`,{className:U(`fixed left-0 top-0 bottom-0 w-[90vw] bg-background border-r border-border`,`z-50 flex flex-col transition-transform duration-300 ease-out`,e?`translate-x-0`:`-translate-x-full`),children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-b border-border shrink-0`,children:[(0,X.jsx)(`span`,{className:`text-sm font-bold text-primary tracking-tight`,children:r?.name??`PPM`}),(0,X.jsx)(`button`,{onClick:t,className:`flex items-center justify-center size-8 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(Be,{className:`size-4`})})]}),(0,X.jsxs)(`div`,{"data-onboarding":e?d:void 0,className:`flex-1 overflow-y-auto min-h-0`,children:[d===`history`&&(r?(0,X.jsx)(nv,{variant:`sidebar`,projectName:r.name,onNavigate:t}):v),d===`teams`&&(r?(0,X.jsx)(Tv,{}):v),d===`designs`&&(r?(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(vw,{onNavigate:t})}):v),e&&d===`explorer`&&(r?(0,X.jsx)(Sm,{onFileOpen:t}):v),e&&d===`search`&&(0,X.jsx)(Gh,{onNavigate:t}),e&&d===`git`&&(0,X.jsx)(hh,{metadata:{projectName:r?.name},onNavigate:t}),d===`database`&&(0,X.jsx)(Vh,{}),d===`tunnels`&&(0,X.jsx)(q_,{}),d===`jira`&&(0,X.jsx)(bg,{}),d===`ai-resources`&&(0,X.jsx)(y_,{}),d.startsWith(`ext:`)&&(0,X.jsx)(Jh,{viewId:d.slice(4),className:`h-full`})]}),(0,X.jsxs)(`div`,{className:`shrink-0 border-t border-border`,children:[(0,X.jsx)(_w,{tabs:h,activeId:d,onSelect:f,onReorder:s}),(0,X.jsxs)(`div`,{className:`border-t border-border px-3 py-2`,children:[(0,X.jsx)(`div`,{className:`grid gap-1`,style:{gridTemplateColumns:`repeat(${_.length}, minmax(0, 1fr))`},children:_.map(e=>(0,X.jsx)(xw,{...e},e.label))}),(0,X.jsx)(`div`,{className:`mt-2 pt-2 border-t border-border px-1 text-[11px]`,children:(0,X.jsx)($b,{align:`left`})})]})]})]}),(0,X.jsx)(la,{open:p,onClose:()=>m(!1),zIndex:60,children:(0,X.jsx)(zy,{variant:`sheet`,onClose:()=>m(!1)})})]})}function Cw({isOpen:e,onClose:t}){let{projects:n,activeProject:r,setActiveProject:i,setProjectColor:a,setProjectImage:o,removeProjectImage:s,reorderProjects:c,renameProject:l,deleteProject:u,customOrder:d,sortMode:f,setProjectSortMode:p}=G(jd(e=>({projects:e.projects,activeProject:e.activeProject,setActiveProject:e.setActiveProject,setProjectColor:e.setProjectColor,setProjectImage:e.setProjectImage,removeProjectImage:e.removeProjectImage,reorderProjects:e.reorderProjects,renameProject:e.renameProject,deleteProject:e.deleteProject,customOrder:e.customOrder,sortMode:e.projectSortMode,setProjectSortMode:e.setProjectSortMode}))),m=V(e=>e.version),h=Nr(n,d),g=h.map(e=>e.name),[_,v]=(0,Y.useState)(`list`),[y,b]=(0,Y.useState)(``),x=(0,Y.useMemo)(()=>Fr(),[e]),S=(0,Y.useMemo)(()=>Dv(n,d,f),[n,d,f]),C=y.trim().toLowerCase(),w=C?S.filter(e=>e.name.toLowerCase().includes(C)||e.path.toLowerCase().includes(C)):S,T=f===`priority`&&!C,E=(0,Y.useCallback)(e=>{window.open(Pv(e,null),`_blank`,`noopener`)},[]),[D,O]=(0,Y.useState)(null),[k,A]=(0,Y.useState)(``),[ee,j]=(0,Y.useState)(!1),te=(0,Y.useRef)(null),[M,N]=(0,Y.useState)(null),[P,F]=(0,Y.useState)(``),ne=(0,Y.useRef)(null),[re,ie]=(0,Y.useState)(null);async function ae(e){let t=e.target.files?.[0];if(e.target.value=``,!(!t||!re)){O(null);try{await o(re,t)}catch(e){alert(e instanceof Error?e.message:`Upload failed`)}}}let I=(0,Y.useCallback)(e=>{te.current=setTimeout(()=>O(e),400)},[]),oe=(0,Y.useCallback)(()=>{te.current&&=(clearTimeout(te.current),null)},[]);function se(){v(`list`),t()}function ce(e){let t=n.find(t=>t.name===e);t&&(i(t),se())}function le(){v(`add`)}function ue(){se(),pl()}async function de(){if(!M||!P.trim()||P===M){N(null);return}try{await l(M,P.trim())}catch{}N(null)}async function fe(e){O(null);try{await u(e)}catch{}}async function pe(e,t){try{await a(e,t),j(!1),O(null)}catch(e){console.error(`Failed to save color:`,e)}}let me=D?h.find(e=>e.name===D):null,he=D?h.findIndex(e=>e.name===D):-1,ge=D?[{label:`Open in New Tab`,icon:Rt,onClick:()=>{E(D),O(null)}},{label:`Rename`,icon:yt,onClick:()=>{F(D),N(D),O(null)}},{label:`Change Color`,icon:We,onClick:()=>{let e=h.findIndex(e=>e.name===D),t=h[e];A(Hv(t?.color,e)),j(!0)}},{label:`Change Image`,icon:Me,onClick:()=>{ie(D),ne.current?.click()}},...me?.image?[{label:`Remove Image`,icon:Je,onClick:()=>{s(D).catch(()=>{}),O(null)}}]:[],{label:`Copy Path`,icon:_n,onClick:()=>{me&&uu(me.path),O(null)}},...T&&he>0?[{label:`Move Up`,icon:Xe,onClick:()=>{let e=h.map(e=>e.name),[t]=e.splice(he,1);e.splice(he-1,0,t),c(e),O(null)}}]:[],...T&&he<h.length-1?[{label:`Move Down`,icon:Qe,onClick:()=>{let e=h.map(e=>e.name),[t]=e.splice(he,1);e.splice(he+1,0,t),c(e),O(null)}}]:[],{label:`Delete`,icon:Je,destructive:!0,onClick:()=>fe(D)}]:[];return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`input`,{ref:ne,type:`file`,accept:`image/*`,className:`hidden`,onChange:ae}),(0,X.jsxs)(la,{open:e,onClose:se,className:`bg-background`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 border-b border-border`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[_===`add`&&(0,X.jsx)(`button`,{onClick:()=>v(`list`),className:`flex items-center justify-center size-7 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(ln,{className:`size-4`})}),(0,X.jsx)(`span`,{className:`text-sm font-semibold`,children:_===`add`?`Add Project`:`Projects`})]}),(0,X.jsx)(`button`,{onClick:se,className:`flex items-center justify-center size-7 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(Be,{className:`size-4`})})]}),_===`add`&&(0,X.jsx)(`div`,{className:`px-4 py-4`,children:(0,X.jsx)(Gv,{onSuccess:()=>{v(`list`),t()},onCancel:()=>v(`list`),footerClassName:`pt-2`})}),_!==`add`&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-2 border-b border-border`,children:[(0,X.jsx)(Nn,{className:`size-4 text-text-subtle shrink-0`}),(0,X.jsx)(`input`,{value:y,onChange:e=>b(e.target.value),placeholder:`Search projects…`,className:`flex-1 bg-transparent text-sm text-foreground placeholder:text-text-subtle focus:outline-none`})]}),(0,X.jsx)(`div`,{className:`flex items-center gap-1 px-2 py-2 border-b border-border`,children:Ev.map(({mode:e,label:t,Icon:n})=>(0,X.jsxs)(`button`,{onClick:()=>p(e),className:U(`flex items-center justify-center gap-1 flex-1 px-2 py-1.5 rounded-md text-xs font-medium transition-colors`,f===e?`bg-primary/[0.12] text-primary`:`text-text-subtle active:bg-surface-elevated`),children:[(0,X.jsx)(n,{className:`size-3.5`}),` `,t]},e))})]}),(0,X.jsxs)(`div`,{className:_===`add`?`hidden`:`max-h-[60vh] overflow-y-auto`,children:[w.map(e=>{let t=h.findIndex(t=>t.name===e.name),n=Hv(e.color,t),i=r?.name===e.name,a=M===e.name,o=x[e.name];return(0,X.jsxs)(`div`,{className:U(`flex items-center gap-3 px-4 py-3 transition-colors active:bg-surface-elevated`,i&&`bg-accent/10`),onClick:()=>!a&&ce(e.name),onTouchStart:()=>I(e.name),onTouchEnd:oe,onTouchMove:oe,onTouchCancel:oe,children:[(0,X.jsx)(Wv,{name:e.name,color:n,image:e.image,size:40,allNames:g}),(0,X.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[a?(0,X.jsx)(`input`,{type:`text`,value:P,onChange:e=>F(e.target.value),onKeyDown:e=>{e.key===`Enter`&&de(),e.key===`Escape`&&N(null)},onBlur:de,onClick:e=>e.stopPropagation(),className:`w-full bg-transparent border-b border-primary text-sm outline-none`,autoFocus:!0}):(0,X.jsx)(`p`,{className:`text-sm font-medium truncate`,children:e.name}),(0,X.jsx)(`p`,{className:`text-xs text-text-subtle truncate`,children:e.path})]}),o&&!i&&(0,X.jsx)(`span`,{className:`shrink-0 text-[10px] text-text-subtle whitespace-nowrap`,children:qr(new Date(o).toISOString())}),i&&(0,X.jsx)(Rn,{className:`size-4 text-primary shrink-0`})]},e.name)}),w.length===0&&(0,X.jsx)(`div`,{className:`px-4 py-6 text-center text-sm text-text-subtle`,children:`No projects found`})]}),(0,X.jsx)(`div`,{className:`border-t border-border`,children:(0,X.jsxs)(`button`,{onClick:le,className:`w-full flex items-center gap-3 px-4 py-3 text-text-secondary hover:bg-surface-elevated transition-colors`,children:[(0,X.jsx)(Dt,{className:`size-4 shrink-0`}),(0,X.jsx)(`span`,{className:`text-sm`,children:`Add Project`})]})}),(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-t border-border`,children:[(0,X.jsxs)(`button`,{onClick:ue,className:`flex items-center gap-2 text-text-secondary hover:text-foreground transition-colors`,children:[(0,X.jsx)(Kt,{className:`size-4`}),(0,X.jsx)(`span`,{className:`text-sm`,children:`Settings`})]}),m&&(0,X.jsxs)(`span`,{className:`text-xs text-text-subtle`,children:[`v`,m]})]})]}),(0,X.jsxs)(la,{open:!!D&&!ee,onClose:()=>O(null),zIndex:60,children:[(0,X.jsx)(`div`,{className:`px-4 py-2 border-b border-border`,children:(0,X.jsx)(`p`,{className:`text-xs font-medium text-text-secondary`,children:D})}),ge.map(e=>{let t=e.icon;return(0,X.jsxs)(`button`,{onClick:e.onClick,className:U(`w-full flex items-center gap-3 px-4 py-3 text-sm transition-colors active:bg-surface-elevated`,e.destructive?`text-destructive`:`text-foreground`),children:[(0,X.jsx)(t,{className:`size-4 shrink-0`}),e.label]},e.label)})]}),(0,X.jsxs)(la,{open:ee&&!!D,onClose:()=>{j(!1),O(null)},zIndex:60,className:`p-4 space-y-4`,children:[(0,X.jsx)(`p`,{className:`text-sm font-medium`,children:`Change Color`}),(0,X.jsx)(`div`,{className:`flex flex-wrap gap-3`,children:Vv.map(e=>(0,X.jsx)(`button`,{type:`button`,onClick:()=>A(e),className:U(`size-9 rounded-full border-2 transition-all`,k===e?`border-primary scale-110`:`border-transparent`),style:{background:e}},e))}),(0,X.jsxs)(`div`,{className:`flex gap-2 pt-2`,children:[(0,X.jsx)(`button`,{onClick:()=>{j(!1),O(null)},className:`flex-1 py-2 text-sm text-text-secondary border border-border rounded-md`,children:`Cancel`}),(0,X.jsx)(`button`,{onClick:()=>pe(D,k),className:`flex-1 py-2 text-sm bg-primary text-white rounded-md`,children:`Save`})]})]})]})}var ww=`https://wise.com/pay/me/lehongh`,Tw=`/donate-qr.png`,Ew=`LE HONG HIEN`,Dw=`Techcombank`;function Ow({children:e}){return(0,X.jsx)(`span`,{className:`font-mono text-[11px] font-medium uppercase tracking-wide text-text-subtle`,children:e})}function kw(){let[e,t]=(0,Y.useState)(!1);return(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-1 text-center`,children:[(0,X.jsx)(`div`,{className:`flex size-11 items-center justify-center rounded-xl bg-surface-elevated`,children:(0,X.jsx)(_t,{className:`size-5 text-primary`})}),(0,X.jsx)(`h2`,{className:`text-lg font-semibold text-foreground`,children:`Support PPM`}),(0,X.jsx)(`p`,{className:`text-sm text-text-secondary`,children:`Thanks for keeping this project alive.`})]}),(0,X.jsxs)(`div`,{className:`grid gap-5 md:grid-cols-2 md:gap-6`,children:[(0,X.jsxs)(`section`,{className:`flex flex-col items-center gap-3`,children:[(0,X.jsx)(Ow,{children:`Vietnam`}),e?(0,X.jsxs)(`div`,{className:`flex size-40 flex-col items-center justify-center gap-2 rounded-xl border border-dashed border-border text-text-subtle`,children:[(0,X.jsx)(gn,{className:`size-8`}),(0,X.jsx)(`span`,{className:`text-xs`,children:`QR code coming soon`})]}):(0,X.jsx)(`img`,{src:Tw,alt:`Bank transfer QR code`,onError:()=>t(!0),className:`size-40 rounded-xl border border-border bg-white object-contain p-2`}),(0,X.jsxs)(`div`,{className:`text-center`,children:[(0,X.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:Ew}),(0,X.jsx)(`p`,{className:`text-xs text-text-subtle`,children:Dw})]}),(0,X.jsx)(`p`,{className:`text-center text-xs text-text-secondary`,children:`Quét mã QR bằng ứng dụng ngân hàng để chuyển khoản.`})]}),(0,X.jsxs)(`section`,{className:`flex flex-col items-center justify-center gap-3 border-t border-border pt-5 md:border-l md:border-t-0 md:pl-6 md:pt-0`,children:[(0,X.jsx)(Ow,{children:`International`}),(0,X.jsx)(`p`,{className:`text-center text-sm text-text-secondary`,children:`Send an international transfer via Wise — multi-currency, low fees.`}),(0,X.jsx)(q,{asChild:!0,className:`w-full`,children:(0,X.jsxs)(`a`,{href:ww,target:`_blank`,rel:`noopener noreferrer`,children:[(0,X.jsx)(je,{className:`size-4`}),`Support via Wise`]})})]})]})]})}function Aw({open:e,onOpenChange:t}){return hi()?(0,X.jsx)(la,{open:e,onClose:()=>t(!1),className:`popover-solid`,children:(0,X.jsx)(`div`,{className:`px-4 pb-4 pt-1`,children:(0,X.jsx)(kw,{})})}):(0,X.jsx)(ta,{open:e,onOpenChange:t,children:(0,X.jsxs)(J,{className:`sm:max-w-xl`,children:[(0,X.jsx)(Qi,{className:`sr-only`,children:`Support PPM`}),(0,X.jsx)(kw,{})]})})}function jw(){let[e,t]=(0,Y.useState)(null),[n,r]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{function e(e){let n=e.detail;n&&(t(n),r(!1))}return window.addEventListener(`open-bug-report`,e),()=>window.removeEventListener(`open-bug-report`,e)},[]);let i=(0,Y.useCallback)(()=>t(null),[]);return e?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`fixed inset-0 z-50 bg-black/50`,onClick:i}),(0,X.jsxs)(`div`,{className:`fixed inset-4 md:inset-auto md:top-[15%] md:left-1/2 md:-translate-x-1/2 md:w-full md:max-w-lg md:max-h-[70vh] z-50 flex flex-col bg-background border border-border rounded-lg shadow-2xl overflow-hidden`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 border-b border-border`,children:[(0,X.jsx)(`span`,{className:`text-sm font-medium`,children:`Bug Report`}),(0,X.jsx)(`button`,{onClick:i,className:`p-1 rounded hover:bg-surface-elevated`,children:(0,X.jsx)(Be,{className:`size-4`})})]}),(0,X.jsx)(`pre`,{className:`flex-1 overflow-auto px-4 py-2 text-xs font-mono whitespace-pre-wrap break-all`,children:e}),(0,X.jsxs)(`div`,{className:`flex gap-2 p-3 border-t border-border`,children:[(0,X.jsxs)(`button`,{onClick:async()=>{await uu(e)&&r(!0)},className:`flex items-center gap-1.5 px-3 py-1.5 rounded-md bg-surface-elevated text-xs text-foreground hover:bg-surface transition-colors`,children:[n?(0,X.jsx)(Rn,{className:`size-3`}):(0,X.jsx)(_n,{className:`size-3`}),n?`Copied`:`Copy`]}),(0,X.jsxs)(`button`,{onClick:()=>{Uy(e),i()},className:`flex items-center gap-1.5 px-3 py-1.5 rounded-md bg-primary text-primary-foreground text-xs hover:bg-primary/90 transition-colors`,children:[(0,X.jsx)(Rt,{className:`size-3`}),`Open GitHub Issue`]})]})]})]}):null}var Mw=[{value:`light`,label:`Light`,icon:Bn},{value:`dark`,label:`Dark`,icon:on},{value:`system`,label:`System`,icon:ke}],Nw=(0,Y.memo)(function({className:e}){let t=V(e=>e.themeMode),n=V(e=>e.setThemeMode),r=Mw.find(e=>e.value===t)??Mw[2],i=r.icon;return(0,X.jsxs)($u,{children:[(0,X.jsx)(td,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,title:`Appearance: ${r.label}`,"aria-label":`Appearance: ${r.label}`,className:U(`flex size-11 items-center justify-center rounded-xl text-text-subtle`,`can-hover:hover:bg-surface-elevated can-hover:hover:text-foreground`,e),children:(0,X.jsx)(i,{className:`size-[18px]`})})}),(0,X.jsxs)(nd,{align:`end`,className:`w-44`,children:[(0,X.jsx)(sd,{children:`Appearance`}),Mw.map(e=>{let r=e.icon;return(0,X.jsxs)(rd,{onClick:()=>n(e.value),className:`gap-2`,children:[(0,X.jsx)(r,{className:`size-4 shrink-0`}),(0,X.jsx)(`span`,{className:`flex-1 truncate`,children:e.label}),(0,X.jsx)(Rn,{className:U(`size-4 shrink-0`,t===e.value?`opacity-100`:`opacity-0`)})]},e.value)})]})]})}),Pw=`https://github.com/hienlh/ppm`,Fw={background:`radial-gradient(80% 60% at 50% -10%, color-mix(in srgb, var(--accent) 12%, transparent) 0%, transparent 60%)`},Iw={backgroundImage:`radial-gradient(circle at 1px 1px, color-mix(in srgb, var(--text) 5%, transparent) 1px, transparent 0)`,backgroundSize:`26px 26px`};function Lw({onSuccess:e}){let[t,n]=(0,Y.useState)(``),[r,i]=(0,Y.useState)(!1),a=V(e=>e.deviceName),o=V(e=>e.version),s=V(e=>e.tunnelActive),[c,l]=(0,Y.useState)(null),[u,d]=(0,Y.useState)(!1),[f,p]=(0,Y.useState)(!1),m=hi(),h=V(e=>e.themeMode),g=V(e=>e.syncThemeToServer),_=h!==(0,Y.useRef)(h).current;async function v(n){if(n.preventDefault(),!t.trim()){l(`Enter your password to continue`);return}d(!0),l(null);try{cr(t.trim());let n=await(await fetch(`/api/auth/check`,{headers:{Authorization:`Bearer ${t.trim()}`}})).json();if(!n.ok)throw Error(n.error??`Invalid password`);_&&await g(),e()}catch(e){l(e instanceof Error?e.message:`Authentication failed`),ar()}finally{d(!1)}}return(0,X.jsxs)(`div`,{className:`app-backdrop relative min-h-dvh overflow-hidden flex items-center justify-center p-6`,children:[(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:Fw}),(0,X.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:Iw}),(0,X.jsx)(Nw,{className:`absolute right-[max(1rem,env(safe-area-inset-right))] top-[max(1rem,env(safe-area-inset-top))]`}),(0,X.jsxs)(`div`,{className:`relative flex w-full max-w-[392px] flex-col items-center gap-[22px] text-center`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-4`,children:[(0,X.jsx)(`div`,{className:`flex size-16 items-center justify-center rounded-2xl border border-border bg-background shadow-float`,children:(0,X.jsx)(`div`,{className:`flex size-[52px] items-center justify-center rounded-xl bg-surface-elevated`,children:(0,X.jsx)(`span`,{className:`text-[15px] font-bold tracking-wide text-primary`,children:`PPM`})})}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h1`,{className:`mb-1.5 text-2xl font-semibold tracking-tight text-foreground`,children:`Unlock your workspace`}),(0,X.jsx)(`p`,{className:`text-sm text-text-secondary`,children:`Enter your access password to unlock`})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center justify-center gap-2`,children:[a&&(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 rounded-full border border-border bg-surface-elevated px-2.5 py-0.5 font-mono text-[11px] text-text-secondary`,children:[(0,X.jsx)(m?Kn:ke,{className:`size-3 text-text-subtle`}),a]}),m?(s||o)&&(0,X.jsxs)(`span`,{className:U(`inline-flex items-center gap-1.5 rounded-full border px-2.5 py-0.5 font-mono text-[11px]`,s?`border-success/30 bg-success/10 text-success`:`border-border bg-surface-elevated text-text-secondary`),children:[s&&(0,X.jsx)(`span`,{className:`size-1.5 animate-pulse rounded-full bg-success`}),s?`tunnel · `:``,o?`v${o}`:``]}):(0,X.jsxs)(X.Fragment,{children:[o&&(0,X.jsxs)(`span`,{className:`inline-flex items-center rounded-full border border-border bg-surface-elevated px-2.5 py-0.5 font-mono text-[11px] text-text-secondary`,children:[`v`,o]}),s&&(0,X.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 rounded-full border border-success/30 bg-success/10 px-2.5 py-0.5 font-mono text-[11px] text-success`,children:[(0,X.jsx)(`span`,{className:`size-1.5 animate-pulse rounded-full bg-success`}),`tunnel active`]})]})]})]}),(0,X.jsxs)(`form`,{onSubmit:v,className:`flex w-full flex-col gap-3`,children:[(0,X.jsxs)(`div`,{className:`relative w-full`,children:[(0,X.jsx)(xa,{type:r?`text`:`password`,placeholder:`Password`,value:t,onChange:e=>{n(e.target.value),c&&l(null)},className:`h-[50px] rounded-xl bg-surface-elevated pr-12 text-[15px] max-md:text-base`,autoFocus:!0}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>i(e=>!e),"aria-label":r?`Hide password`:`Show password`,className:`absolute right-2 top-1/2 flex size-9 -translate-y-1/2 items-center justify-center rounded-lg text-text-subtle can-hover:hover:bg-surface-elevated can-hover:hover:text-foreground`,children:r?(0,X.jsx)(Pn,{className:`size-[18px]`}):(0,X.jsx)(un,{className:`size-[18px]`})})]}),c&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-[13px] text-error`,children:[(0,X.jsx)(mn,{className:`size-[15px] shrink-0`}),(0,X.jsx)(`span`,{children:c})]}),(0,X.jsx)(q,{type:`submit`,disabled:u,className:`h-[50px] w-full text-[15px]`,children:u?`Checking…`:`Unlock`})]}),(0,X.jsx)(`div`,{className:`hidden h-px w-full bg-border md:block`}),(0,X.jsxs)(`div`,{className:`flex items-center justify-center gap-5`,children:[(0,X.jsxs)(`button`,{type:`button`,onClick:()=>Wy(o),className:`inline-flex items-center gap-1.5 text-xs text-text-subtle can-hover:hover:text-foreground`,children:[(0,X.jsx)(Vn,{className:`size-[18px] md:size-3.5`}),(0,X.jsx)(`span`,{className:`max-md:sr-only`,children:`Report Bug`})]}),(0,X.jsxs)(`a`,{href:Pw,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1.5 text-xs text-text-subtle can-hover:hover:text-foreground`,children:[(0,X.jsx)(Fa,{className:`size-[18px] md:size-3.5`}),(0,X.jsx)(`span`,{className:`max-md:sr-only`,children:`Repo`})]}),(0,X.jsxs)(`button`,{type:`button`,onClick:()=>p(!0),className:`inline-flex items-center gap-1.5 text-xs text-text-subtle can-hover:hover:text-foreground`,children:[(0,X.jsx)(it,{className:`size-[18px] md:size-3.5`}),(0,X.jsx)(`span`,{className:`max-md:sr-only`,children:`Buy me a coffee`})]})]})]}),(0,X.jsx)(Aw,{open:f,onOpenChange:p}),(0,X.jsx)(jw,{})]})}function Rw(){let e=V(e=>e.themeStyle),t=V(e=>e.themeMode),n=V(e=>e.customThemeId),r=V(e=>e.customThemes),[i,a]=(0,Y.useState)(0),o=(0,Y.useMemo)(()=>Ta(e,t,r,n),[e,t,r,n,i]);return(0,Y.useEffect)(()=>{Li(o)},[o,i]),(0,Y.useEffect)(()=>{let e=window.matchMedia(`(prefers-color-scheme: dark)`),t=window.matchMedia(`(max-width: 767px)`),n=()=>a(e=>e+1);return e.addEventListener(`change`,n),t.addEventListener(`change`,n),()=>{e.removeEventListener(`change`,n),t.removeEventListener(`change`,n)}},[]),o}var zw=Object.defineProperty,Bw=Object.getOwnPropertyDescriptor,Vw=Object.getOwnPropertyNames,Hw=Object.prototype.hasOwnProperty,Uw=(e,t)=>{let n={};for(var r in e)zw(n,r,{get:e[r],enumerable:!0});return t||zw(n,Symbol.toStringTag,{value:`Module`}),n},Ww=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=Vw(t),a=0,o=i.length,s;a<o;a++)s=i[a],!Hw.call(e,s)&&s!==n&&zw(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=Bw(t,s))||r.enumerable});return e},Gw=(e,t,n)=>(Ww(e,t,`default`),n&&Ww(n,t,`default`)),Kw=[{id:`abap`,name:`ABAP`,import:(()=>H(()=>import(`./abap-Ds6L4g_T.js`),[]))},{id:`actionscript-3`,name:`ActionScript`,import:(()=>H(()=>import(`./actionscript-3-CLNiH4aj.js`),[]))},{id:`ada`,name:`Ada`,import:(()=>H(()=>import(`./ada-BoiebnO1.js`),[]))},{id:`angular-html`,name:`Angular HTML`,import:(()=>H(()=>import(`./angular-html-Djm1KT_p.js`).then(e=>e.n),__vite__mapDeps([101,1,102,103,104])))},{id:`angular-ts`,name:`Angular TypeScript`,import:(()=>H(()=>import(`./angular-ts-D8ZYU4i0.js`),__vite__mapDeps([105,101,1,102,103,104,106])))},{id:`apache`,name:`Apache Conf`,import:(()=>H(()=>import(`./apache-BKOdPQIP.js`),[]))},{id:`apex`,name:`Apex`,import:(()=>H(()=>import(`./apex-kTmPDDVo.js`),[]))},{id:`apl`,name:`APL`,import:(()=>H(()=>import(`./apl-Bxk9ez2r.js`),__vite__mapDeps([107,103,1,102,104,108,109,110])))},{id:`applescript`,name:`AppleScript`,import:(()=>H(()=>import(`./applescript-C65SMPLe.js`),[]))},{id:`ara`,name:`Ara`,import:(()=>H(()=>import(`./ara-BKT6no2T.js`),[]))},{id:`asciidoc`,name:`AsciiDoc`,aliases:[`adoc`],import:(()=>H(()=>import(`./asciidoc-BGur0ue3.js`),[]))},{id:`asm`,name:`Assembly`,import:(()=>H(()=>import(`./asm-DOfgqCKD.js`),[]))},{id:`astro`,name:`Astro`,import:(()=>H(()=>import(`./astro-CCE8GTuJ.js`),__vite__mapDeps([111,103,1,104,108,112,113,114])))},{id:`awk`,name:`AWK`,import:(()=>H(()=>import(`./awk-B_r8LcWp.js`),[]))},{id:`ballerina`,name:`Ballerina`,import:(()=>H(()=>import(`./ballerina-CyhD34qA.js`),[]))},{id:`bat`,name:`Batch File`,aliases:[`batch`],import:(()=>H(()=>import(`./bat-wHB_k1YG.js`),[]))},{id:`beancount`,name:`Beancount`,import:(()=>H(()=>import(`./beancount-SUF8MnzM.js`),[]))},{id:`berry`,name:`Berry`,aliases:[`be`],import:(()=>H(()=>import(`./berry-BP_34_jr.js`),[]))},{id:`bibtex`,name:`BibTeX`,import:(()=>H(()=>import(`./bibtex-DKgKw2bN.js`),[]))},{id:`bicep`,name:`Bicep`,import:(()=>H(()=>import(`./bicep-BjU-KQeN.js`),[]))},{id:`bird2`,name:`BIRD2 Configuration`,aliases:[`bird`],import:(()=>H(()=>import(`./bird2-CCFmrT2P.js`),[]))},{id:`blade`,name:`Blade`,import:(()=>H(()=>import(`./blade-pJLFJ0pe.js`),__vite__mapDeps([115,103,1,116,102,104,108,117,109,110])))},{id:`bsl`,name:`1C (Enterprise)`,aliases:[`1c`],import:(()=>H(()=>import(`./bsl-DJPQP6gj.js`),__vite__mapDeps([118,119])))},{id:`c`,name:`C`,import:(()=>H(()=>import(`./c-BX-1170_.js`).then(e=>e.n),__vite__mapDeps([120,1])))},{id:`c3`,name:`C3`,import:(()=>H(()=>import(`./c3-DSc4IcLQ.js`),[]))},{id:`cadence`,name:`Cadence`,aliases:[`cdc`],import:(()=>H(()=>import(`./cadence-CUaLlWyn.js`),[]))},{id:`cairo`,name:`Cairo`,import:(()=>H(()=>import(`./cairo-6pdze4qN.js`),__vite__mapDeps([121,122])))},{id:`clarity`,name:`Clarity`,import:(()=>H(()=>import(`./clarity-BijZXjQ6.js`),[]))},{id:`clojure`,name:`Clojure`,aliases:[`clj`],import:(()=>H(()=>import(`./clojure--ad2221W.js`),[]))},{id:`cmake`,name:`CMake`,import:(()=>H(()=>import(`./cmake-DyjUMpXU.js`),[]))},{id:`cobol`,name:`COBOL`,import:(()=>H(()=>import(`./cobol-6JrtZ3xT.js`),__vite__mapDeps([123,102,1,103,104,110])))},{id:`codeowners`,name:`CODEOWNERS`,import:(()=>H(()=>import(`./codeowners-BeMhKnC9.js`),[]))},{id:`codeql`,name:`CodeQL`,aliases:[`ql`],import:(()=>H(()=>import(`./codeql-BGtwwp5_.js`),[]))},{id:`coffee`,name:`CoffeeScript`,aliases:[`coffeescript`],import:(()=>H(()=>import(`./coffee-eR0Qd-vR.js`),__vite__mapDeps([124,104,1])))},{id:`common-lisp`,name:`Common Lisp`,aliases:[`lisp`],import:(()=>H(()=>import(`./common-lisp--ldIKs5M.js`),[]))},{id:`coq`,name:`Coq`,import:(()=>H(()=>import(`./coq-CRn01_Db.js`),[]))},{id:`cpp`,name:`C++`,aliases:[`c++`],import:(()=>H(()=>import(`./cpp-Bp_Laxmd.js`).then(e=>e.n),__vite__mapDeps([125,1,126,120,127,117])))},{id:`crystal`,name:`Crystal`,import:(()=>H(()=>import(`./crystal-bc0lS6i8.js`),__vite__mapDeps([128,120,1,103,102,104,129,117])))},{id:`csharp`,name:`C#`,aliases:[`c#`,`cs`],import:(()=>H(()=>import(`./csharp-CuWM1IYq.js`),[]))},{id:`css`,name:`CSS`,import:(()=>H(()=>import(`./css-CQ_jz6Vl.js`).then(e=>e.n),__vite__mapDeps([103,1])))},{id:`csv`,name:`CSV`,import:(()=>H(()=>import(`./csv-DP77pbR8.js`),[]))},{id:`cue`,name:`CUE`,import:(()=>H(()=>import(`./cue-DScL5ELc.js`),[]))},{id:`cypher`,name:`Cypher`,aliases:[`cql`],import:(()=>H(()=>import(`./cypher-8ehI2vrw.js`),[]))},{id:`d`,name:`D`,import:(()=>H(()=>import(`./d-BvFZUewv.js`),[]))},{id:`dart`,name:`Dart`,import:(()=>H(()=>import(`./dart-Cs_NJAZ7.js`),[]))},{id:`dax`,name:`DAX`,import:(()=>H(()=>import(`./dax-BB8KgXzI.js`),[]))},{id:`desktop`,name:`Desktop`,import:(()=>H(()=>import(`./desktop-Cs6Sk5Pu.js`),[]))},{id:`diff`,name:`Diff`,import:(()=>H(()=>import(`./diff-CXSq83h3.js`),[]))},{id:`docker`,name:`Dockerfile`,aliases:[`dockerfile`],import:(()=>H(()=>import(`./docker-BX5p1mZ3.js`),[]))},{id:`dotenv`,name:`dotEnv`,import:(()=>H(()=>import(`./dotenv-D8xdMiRo.js`),[]))},{id:`dream-maker`,name:`Dream Maker`,import:(()=>H(()=>import(`./dream-maker-Yg8FPJu3.js`),[]))},{id:`edge`,name:`Edge`,import:(()=>H(()=>import(`./edge-BxayftlC.js`),__vite__mapDeps([130,116,102,1,103,104,114])))},{id:`elixir`,name:`Elixir`,import:(()=>H(()=>import(`./elixir-CncTBq2d.js`),__vite__mapDeps([131,102,1,103,104])))},{id:`elm`,name:`Elm`,import:(()=>H(()=>import(`./elm-1uJDe5N1.js`),__vite__mapDeps([132,126,1,120])))},{id:`emacs-lisp`,name:`Emacs Lisp`,aliases:[`elisp`],import:(()=>H(()=>import(`./emacs-lisp-kBgNJmB7.js`),[]))},{id:`erb`,name:`ERB`,import:(()=>H(()=>import(`./erb-dH8FUiNl.js`),__vite__mapDeps([133,102,1,103,104,134,120,125,126,127,117,135,136,113,114,137,138,129,109,110,139])))},{id:`erlang`,name:`Erlang`,aliases:[`erl`],import:(()=>H(()=>import(`./erlang-D0F-1O48.js`),__vite__mapDeps([140,141])))},{id:`fennel`,name:`Fennel`,import:(()=>H(()=>import(`./fennel-Dm71IPM6.js`),[]))},{id:`fish`,name:`Fish`,import:(()=>H(()=>import(`./fish-CIzcfZjZ.js`),[]))},{id:`fluent`,name:`Fluent`,aliases:[`ftl`],import:(()=>H(()=>import(`./fluent-DFSMEphj.js`),[]))},{id:`fortran-fixed-form`,name:`Fortran (Fixed Form)`,aliases:[`f`,`for`,`f77`],import:(()=>H(()=>import(`./fortran-fixed-form-DB7wVefV.js`),__vite__mapDeps([142,143])))},{id:`fortran-free-form`,name:`Fortran (Free Form)`,aliases:[`f90`,`f95`,`f03`,`f08`,`f18`],import:(()=>H(()=>import(`./fortran-free-form-xnlj2dLW.js`),[]))},{id:`fsharp`,name:`F#`,aliases:[`f#`,`fs`],import:(()=>H(()=>import(`./fsharp-B5-po_gS.js`),__vite__mapDeps([144,141])))},{id:`gdresource`,name:`GDResource`,aliases:[`tscn`,`tres`],import:(()=>H(()=>import(`./gdresource-DkWx6_xT.js`),__vite__mapDeps([145,146,147])))},{id:`gdscript`,name:`GDScript`,aliases:[`gd`],import:(()=>H(()=>import(`./gdscript-DFnznHD1.js`),[]))},{id:`gdshader`,name:`GDShader`,import:(()=>H(()=>import(`./gdshader-B9wvgXVU.js`),[]))},{id:`genie`,name:`Genie`,import:(()=>H(()=>import(`./genie-Bz0RXdFf.js`),[]))},{id:`gherkin`,name:`Gherkin`,import:(()=>H(()=>import(`./gherkin-ZD8lWd_U.js`),[]))},{id:`git-commit`,name:`Git Commit Message`,import:(()=>H(()=>import(`./git-commit-XsMhdamD.js`),__vite__mapDeps([148,149])))},{id:`git-rebase`,name:`Git Rebase Message`,import:(()=>H(()=>import(`./git-rebase-CXs4QunZ.js`),__vite__mapDeps([150,129,1])))},{id:`gleam`,name:`Gleam`,import:(()=>H(()=>import(`./gleam-UeA7_OU8.js`),[]))},{id:`glimmer-js`,name:`Glimmer JS`,aliases:[`gjs`],import:(()=>H(()=>import(`./glimmer-js-CHoxSy4K.js`),__vite__mapDeps([151,103,1,102,104,114])))},{id:`glimmer-ts`,name:`Glimmer TS`,aliases:[`gts`],import:(()=>H(()=>import(`./glimmer-ts-DY0DCf-r.js`),__vite__mapDeps([152,103,1,102,104,114])))},{id:`glsl`,name:`GLSL`,import:(()=>H(()=>import(`./glsl-E9hxFBBJ.js`).then(e=>e.n),__vite__mapDeps([126,1,120])))},{id:`gn`,name:`GN`,import:(()=>H(()=>import(`./gn-DrdNDhFj.js`),[]))},{id:`gnuplot`,name:`Gnuplot`,import:(()=>H(()=>import(`./gnuplot-D8vxhaGw.js`),[]))},{id:`go`,name:`Go`,import:(()=>H(()=>import(`./go-atNMhmH3.js`),[]))},{id:`graphql`,name:`GraphQL`,aliases:[`gql`],import:(()=>H(()=>import(`./graphql-DAalq3Uo.js`).then(e=>e.n),__vite__mapDeps([135,1,104,136,113,114])))},{id:`groovy`,name:`Groovy`,import:(()=>H(()=>import(`./groovy-CLRzHDW2.js`),[]))},{id:`hack`,name:`Hack`,import:(()=>H(()=>import(`./hack-e6ehmpqx.js`),__vite__mapDeps([153,102,1,103,104,117])))},{id:`haml`,name:`Ruby Haml`,import:(()=>H(()=>import(`./haml-Pr4yq62b.js`).then(e=>e.n),__vite__mapDeps([137,1,103,104])))},{id:`handlebars`,name:`Handlebars`,aliases:[`hbs`],import:(()=>H(()=>import(`./handlebars-ZERVZ8gn.js`),__vite__mapDeps([154,103,1,102,104,139])))},{id:`haskell`,name:`Haskell`,aliases:[`hs`],import:(()=>H(()=>import(`./haskell-CkgCblz9.js`),[]))},{id:`haxe`,name:`Haxe`,import:(()=>H(()=>import(`./haxe-DwOdNXRl.js`),[]))},{id:`hcl`,name:`HashiCorp HCL`,import:(()=>H(()=>import(`./hcl-DXsxN8nX.js`),[]))},{id:`hjson`,name:`Hjson`,import:(()=>H(()=>import(`./hjson-oBOZxrL4.js`),[]))},{id:`hlsl`,name:`HLSL`,import:(()=>H(()=>import(`./hlsl-VEZxDU3L.js`),[]))},{id:`html`,name:`HTML`,import:(()=>H(()=>import(`./html-BmwVFf5D.js`).then(e=>e.n),__vite__mapDeps([102,1,103,104])))},{id:`html-derivative`,name:`HTML (Derivative)`,import:(()=>H(()=>import(`./html-derivative-C1JIrmAY.js`),__vite__mapDeps([116,102,1,103,104])))},{id:`http`,name:`HTTP`,import:(()=>H(()=>import(`./http-BI6PtTvX.js`),__vite__mapDeps([155,135,1,104,136,113,114,108,129,109,110])))},{id:`hurl`,name:`Hurl`,import:(()=>H(()=>import(`./hurl-CJGLGxAF.js`),__vite__mapDeps([156,157,135,1,104,136,113,114,109,110])))},{id:`hxml`,name:`HXML`,import:(()=>H(()=>import(`./hxml-B6i0QuF9.js`),__vite__mapDeps([158,159])))},{id:`hy`,name:`Hy`,import:(()=>H(()=>import(`./hy-DiruP4wR.js`),[]))},{id:`imba`,name:`Imba`,import:(()=>H(()=>import(`./imba-BBm5cmpQ.js`),[]))},{id:`ini`,name:`INI`,aliases:[`properties`],import:(()=>H(()=>import(`./ini-DIjchSIH.js`),[]))},{id:`java`,name:`Java`,import:(()=>H(()=>import(`./java-BjdsRxXN.js`).then(e=>e.n),__vite__mapDeps([110,1])))},{id:`javascript`,name:`JavaScript`,aliases:[`js`,`cjs`,`mjs`],import:(()=>H(()=>import(`./javascript-R2SZ_OEC.js`).then(e=>e.n),__vite__mapDeps([104,1])))},{id:`jinja`,name:`Jinja`,import:(()=>H(()=>import(`./jinja-CM-duDMo.js`),__vite__mapDeps([160,102,1,103,104])))},{id:`jison`,name:`Jison`,import:(()=>H(()=>import(`./jison-F9rAmqyI.js`),__vite__mapDeps([161,104,1])))},{id:`json`,name:`JSON`,import:(()=>H(()=>import(`./json-CYCJeTwK.js`).then(e=>e.n),__vite__mapDeps([108,1])))},{id:`json5`,name:`JSON5`,import:(()=>H(()=>import(`./json5-0Pz845K0.js`),[]))},{id:`jsonc`,name:`JSON with Comments`,import:(()=>H(()=>import(`./jsonc-B0jdT4uM.js`),[]))},{id:`jsonl`,name:`JSON Lines`,import:(()=>H(()=>import(`./jsonl-CdvFKZtz.js`),[]))},{id:`jsonnet`,name:`Jsonnet`,import:(()=>H(()=>import(`./jsonnet-BYd5ZGqe.js`),[]))},{id:`jssm`,name:`JSSM`,aliases:[`fsl`],import:(()=>H(()=>import(`./jssm-BlBU_IK1.js`),[]))},{id:`jsx`,name:`JSX`,import:(()=>H(()=>import(`./jsx-CsWR7aMm.js`).then(e=>e.n),__vite__mapDeps([136,1])))},{id:`julia`,name:`Julia`,aliases:[`jl`],import:(()=>H(()=>import(`./julia-AVSSuAUz.js`),__vite__mapDeps([162,125,1,126,120,127,117,104,122,163])))},{id:`just`,name:`Just`,import:(()=>H(()=>import(`./just-Dw8IR-fy.js`),__vite__mapDeps([164,104,1,165,103,102,117,109,110,122,134,120,125,126,127,135,136,113,114,137,138,129,139])))},{id:`kdl`,name:`KDL`,import:(()=>H(()=>import(`./kdl-D712OVXR.js`),[]))},{id:`kotlin`,name:`Kotlin`,aliases:[`kt`,`kts`],import:(()=>H(()=>import(`./kotlin-BEUa7XzN.js`),[]))},{id:`kusto`,name:`Kusto`,aliases:[`kql`],import:(()=>H(()=>import(`./kusto-n4J6aIey.js`),[]))},{id:`latex`,name:`LaTeX`,import:(()=>H(()=>import(`./latex-37_9fLdz.js`),__vite__mapDeps([166,167,163,1])))},{id:`lean`,name:`Lean 4`,aliases:[`lean4`],import:(()=>H(()=>import(`./lean-CS8dnaPi.js`),[]))},{id:`less`,name:`Less`,import:(()=>H(()=>import(`./less-D7VWEXeK.js`),[]))},{id:`liquid`,name:`Liquid`,import:(()=>H(()=>import(`./liquid-CaR1gaJt.js`),__vite__mapDeps([168,103,1,102,104,108])))},{id:`llvm`,name:`LLVM IR`,import:(()=>H(()=>import(`./llvm-P1D8XyMB.js`),[]))},{id:`log`,name:`Log file`,import:(()=>H(()=>import(`./log-BGft0RQz.js`),[]))},{id:`logo`,name:`Logo`,import:(()=>H(()=>import(`./logo-uFZx2JEw.js`),[]))},{id:`lua`,name:`Lua`,import:(()=>H(()=>import(`./lua-IFhrYmKl.js`).then(e=>e.n),__vite__mapDeps([138,1,120])))},{id:`luau`,name:`Luau`,import:(()=>H(()=>import(`./luau-aDpnpIe3.js`),[]))},{id:`make`,name:`Makefile`,aliases:[`makefile`],import:(()=>H(()=>import(`./make-DwjpJeU5.js`),[]))},{id:`markdown`,name:`Markdown`,aliases:[`md`],import:(()=>H(()=>import(`./markdown-DC-eWqXi.js`),[]))},{id:`marko`,name:`Marko`,import:(()=>H(()=>import(`./marko-2g0T6atb.js`),__vite__mapDeps([169,103,1,170,106,114])))},{id:`matlab`,name:`MATLAB`,import:(()=>H(()=>import(`./matlab-CqBfVqYF.js`),[]))},{id:`mdc`,name:`MDC`,import:(()=>H(()=>import(`./mdc-Dku_3sTh.js`),__vite__mapDeps([171,116,102,1,103,104,141,139])))},{id:`mdx`,name:`MDX`,import:(()=>H(()=>import(`./mdx-CdC2mVzF.js`),[]))},{id:`mermaid`,name:`Mermaid`,aliases:[`mmd`],import:(()=>H(()=>import(`./mermaid-B542RnGP.js`),[]))},{id:`mipsasm`,name:`MIPS Assembly`,aliases:[`mips`],import:(()=>H(()=>import(`./mipsasm-CkaxcMA-.js`),[]))},{id:`mojo`,name:`Mojo`,import:(()=>H(()=>import(`./mojo-DDh7AQLv.js`),[]))},{id:`moonbit`,name:`MoonBit`,aliases:[`mbt`,`mbti`],import:(()=>H(()=>import(`./moonbit-DGxZDax4.js`),[]))},{id:`move`,name:`Move`,import:(()=>H(()=>import(`./move-C1HZaVNc.js`),[]))},{id:`narrat`,name:`Narrat Language`,aliases:[`nar`],import:(()=>H(()=>import(`./narrat-g4c9qhYS.js`),[]))},{id:`nextflow`,name:`Nextflow`,aliases:[`nf`],import:(()=>H(()=>import(`./nextflow-DwUrPV3b.js`),__vite__mapDeps([172,173])))},{id:`nextflow-groovy`,name:`Nextflow Groovy`,import:(()=>H(()=>import(`./nextflow-groovy-CisdbLPv.js`),[]))},{id:`nginx`,name:`Nginx`,import:(()=>H(()=>import(`./nginx-D10J2vrQ.js`),__vite__mapDeps([174,138,1,120])))},{id:`nim`,name:`Nim`,import:(()=>H(()=>import(`./nim-BonDnBCZ.js`),__vite__mapDeps([175,120,1,103,126,102,104,141,109,110])))},{id:`nix`,name:`Nix`,import:(()=>H(()=>import(`./nix-D7kCv9F9.js`),[]))},{id:`nushell`,name:`nushell`,aliases:[`nu`],import:(()=>H(()=>import(`./nushell-oUYTGkzu.js`),[]))},{id:`objective-c`,name:`Objective-C`,aliases:[`objc`],import:(()=>H(()=>import(`./objective-c-CzqHoRSj.js`),[]))},{id:`objective-cpp`,name:`Objective-C++`,import:(()=>H(()=>import(`./objective-cpp-DJ8fgF2d.js`),[]))},{id:`ocaml`,name:`OCaml`,import:(()=>H(()=>import(`./ocaml-B_nWFfqA.js`),[]))},{id:`odin`,name:`Odin`,import:(()=>H(()=>import(`./odin-BUQfWY13.js`),[]))},{id:`openscad`,name:`OpenSCAD`,aliases:[`scad`],import:(()=>H(()=>import(`./openscad-DTylcqP8.js`),[]))},{id:`pascal`,name:`Pascal`,import:(()=>H(()=>import(`./pascal-D0N_7LGg.js`),[]))},{id:`perl`,name:`Perl`,import:(()=>H(()=>import(`./perl-DmdIiZTm.js`),__vite__mapDeps([165,103,1,102,104,117,109,110])))},{id:`php`,name:`PHP`,import:(()=>H(()=>import(`./php-DXGvCIY0.js`),__vite__mapDeps([176,103,1,102,104,108,117,109,110])))},{id:`pkl`,name:`Pkl`,import:(()=>H(()=>import(`./pkl-HQNdCmJT.js`),[]))},{id:`plsql`,name:`PL/SQL`,import:(()=>H(()=>import(`./plsql-Ds9EzM4F.js`),[]))},{id:`po`,name:`Gettext PO`,aliases:[`pot`,`potx`],import:(()=>H(()=>import(`./po-CM8JtETE.js`),[]))},{id:`polar`,name:`Polar`,import:(()=>H(()=>import(`./polar-CnOzO2UD.js`),[]))},{id:`postcss`,name:`PostCSS`,import:(()=>H(()=>import(`./postcss-BaqfiaQC.js`),[]))},{id:`powerquery`,name:`PowerQuery`,import:(()=>H(()=>import(`./powerquery-CtMX6ik_.js`),[]))},{id:`powershell`,name:`PowerShell`,aliases:[`ps`,`ps1`],import:(()=>H(()=>import(`./powershell-BaTgHUxS.js`),[]))},{id:`prisma`,name:`Prisma`,import:(()=>H(()=>import(`./prisma-BLaoUK-7.js`),[]))},{id:`prolog`,name:`Prolog`,import:(()=>H(()=>import(`./prolog-0I-GhZLt.js`),[]))},{id:`proto`,name:`Protocol Buffer 3`,aliases:[`protobuf`],import:(()=>H(()=>import(`./proto-CHfg51WI.js`),[]))},{id:`pug`,name:`Pug`,aliases:[`jade`],import:(()=>H(()=>import(`./pug-BgMlgmpT.js`),__vite__mapDeps([177,103,1,102,104])))},{id:`puppet`,name:`Puppet`,import:(()=>H(()=>import(`./puppet-B0WZdEhx.js`),[]))},{id:`purescript`,name:`PureScript`,import:(()=>H(()=>import(`./purescript-CrVZ4Uql.js`),[]))},{id:`python`,name:`Python`,aliases:[`py`],import:(()=>H(()=>import(`./python-aEpe7ZUF.js`),[]))},{id:`qml`,name:`QML`,import:(()=>H(()=>import(`./qml-DjqBS8bc.js`),__vite__mapDeps([178,104,1])))},{id:`qmldir`,name:`QML Directory`,import:(()=>H(()=>import(`./qmldir-DxTPc3lc.js`),[]))},{id:`qss`,name:`Qt Style Sheets`,import:(()=>H(()=>import(`./qss-D-nPbCGx.js`),[]))},{id:`r`,name:`R`,import:(()=>H(()=>import(`./r-BLnTqw3q.js`).then(e=>e.n),__vite__mapDeps([163,1])))},{id:`racket`,name:`Racket`,import:(()=>H(()=>import(`./racket-DNO4210g.js`),[]))},{id:`raku`,name:`Raku`,aliases:[`perl6`],import:(()=>H(()=>import(`./raku-iZJO4hxf.js`),[]))},{id:`razor`,name:`ASP.NET Razor`,import:(()=>H(()=>import(`./razor-CzV29vlj.js`),__vite__mapDeps([179,180,102,1,103,104])))},{id:`reg`,name:`Windows Registry Script`,import:(()=>H(()=>import(`./reg-DD_Uwu3t.js`),[]))},{id:`regexp`,name:`RegExp`,aliases:[`regex`],import:(()=>H(()=>import(`./regexp-D3RlqUxN.js`).then(e=>e.n),__vite__mapDeps([127,1])))},{id:`rel`,name:`Rel`,import:(()=>H(()=>import(`./rel-DM5GSHUR.js`),[]))},{id:`riscv`,name:`RISC-V`,import:(()=>H(()=>import(`./riscv-C_jO4gJw.js`),[]))},{id:`ron`,name:`RON`,import:(()=>H(()=>import(`./ron--r6_MG5U.js`),[]))},{id:`rosmsg`,name:`ROS Interface`,import:(()=>H(()=>import(`./rosmsg-BQrgxzms.js`),[]))},{id:`rst`,name:`reStructuredText`,import:(()=>H(()=>import(`./rst-DffOOLD7.js`),__vite__mapDeps([181,182,125,1,126,120,127,117,116,102,103,104,122,134,135,136,113,114,137,138,129,109,110,139])))},{id:`ruby`,name:`Ruby`,aliases:[`rb`],import:(()=>H(()=>import(`./ruby-C5DczJCc.js`),__vite__mapDeps([134,120,1,125,126,127,117,103,135,104,136,113,114,137,102,138,129,109,110,139])))},{id:`rust`,name:`Rust`,aliases:[`rs`],import:(()=>H(()=>import(`./rust-CP39BBh-.js`),[]))},{id:`sas`,name:`SAS`,import:(()=>H(()=>import(`./sas-CoO1xLdH.js`),__vite__mapDeps([183,117,1])))},{id:`sass`,name:`Sass`,import:(()=>H(()=>import(`./sass-CMiN16ff.js`),[]))},{id:`scala`,name:`Scala`,import:(()=>H(()=>import(`./scala-jm4Hro87.js`),[]))},{id:`scheme`,name:`Scheme`,import:(()=>H(()=>import(`./scheme-Ct_BnC2r.js`),[]))},{id:`scss`,name:`SCSS`,import:(()=>H(()=>import(`./scss-d9PFDNvb.js`).then(e=>e.n),__vite__mapDeps([106,1,103])))},{id:`sdbl`,name:`1C (Query)`,aliases:[`1c-query`],import:(()=>H(()=>import(`./sdbl-CnOjqCoH.js`),[]))},{id:`shaderlab`,name:`ShaderLab`,aliases:[`shader`],import:(()=>H(()=>import(`./shaderlab-BkB57LhQ.js`),__vite__mapDeps([184,185])))},{id:`shellscript`,name:`Shell`,aliases:[`bash`,`sh`,`shell`,`zsh`],import:(()=>H(()=>import(`./shellscript-C6sdrDvR.js`).then(e=>e.n),__vite__mapDeps([129,1])))},{id:`shellsession`,name:`Shell Session`,aliases:[`console`],import:(()=>H(()=>import(`./shellsession-CTpUym8_.js`),__vite__mapDeps([186,129,1])))},{id:`smalltalk`,name:`Smalltalk`,import:(()=>H(()=>import(`./smalltalk-BMQqYubg.js`),[]))},{id:`solidity`,name:`Solidity`,import:(()=>H(()=>import(`./solidity-BM0p0sku.js`),[]))},{id:`soy`,name:`Closure Templates`,aliases:[`closure-templates`],import:(()=>H(()=>import(`./soy-CGmWpNZ2.js`),__vite__mapDeps([187,102,1,103,104])))},{id:`sparql`,name:`SPARQL`,import:(()=>H(()=>import(`./sparql-DtdOj_MX.js`),__vite__mapDeps([188,189])))},{id:`splunk`,name:`Splunk Query Language`,aliases:[`spl`],import:(()=>H(()=>import(`./splunk-Cq6_jbaY.js`),[]))},{id:`sql`,name:`SQL`,import:(()=>H(()=>import(`./sql-CPfIb_cO.js`).then(e=>e.n),__vite__mapDeps([117,1])))},{id:`ssh-config`,name:`SSH Config`,import:(()=>H(()=>import(`./ssh-config-GRgzMVtG.js`),[]))},{id:`stata`,name:`Stata`,import:(()=>H(()=>import(`./stata-6W_BX14b.js`),__vite__mapDeps([190,117,1])))},{id:`stylus`,name:`Stylus`,aliases:[`styl`],import:(()=>H(()=>import(`./stylus-DNs7ubf9.js`),[]))},{id:`surrealql`,name:`SurrealQL`,aliases:[`surql`],import:(()=>H(()=>import(`./surrealql-BhmbH4Yk.js`),__vite__mapDeps([191,104,1])))},{id:`svelte`,name:`Svelte`,import:(()=>H(()=>import(`./svelte-D6EOFdO-.js`),__vite__mapDeps([192,103,1,104,112,114])))},{id:`swift`,name:`Swift`,import:(()=>H(()=>import(`./swift-BQV34vng.js`),[]))},{id:`system-verilog`,name:`SystemVerilog`,import:(()=>H(()=>import(`./system-verilog-DaLPjQ4v.js`),[]))},{id:`systemd`,name:`Systemd Units`,import:(()=>H(()=>import(`./systemd-CXHFtmNc.js`),[]))},{id:`talonscript`,name:`TalonScript`,aliases:[`talon`],import:(()=>H(()=>import(`./talonscript-DI9nO5jX.js`),[]))},{id:`tasl`,name:`Tasl`,import:(()=>H(()=>import(`./tasl-BAQyAl0c.js`),[]))},{id:`tcl`,name:`Tcl`,import:(()=>H(()=>import(`./tcl-BP_ozI58.js`),[]))},{id:`templ`,name:`Templ`,import:(()=>H(()=>import(`./templ-DuLJgZN8.js`),__vite__mapDeps([193,103,1,194,104])))},{id:`terraform`,name:`Terraform`,aliases:[`tf`,`tfvars`],import:(()=>H(()=>import(`./terraform-NrndR0yZ.js`),[]))},{id:`tex`,name:`TeX`,import:(()=>H(()=>import(`./tex-D8IJD2J1.js`),__vite__mapDeps([167,163,1])))},{id:`toml`,name:`TOML`,import:(()=>H(()=>import(`./toml-BM_zrMLj.js`),[]))},{id:`ts-tags`,name:`TypeScript with Tags`,aliases:[`lit`],import:(()=>H(()=>import(`./ts-tags-BxVcUOvj.js`),__vite__mapDeps([195,103,1,126,120,102,104,117,114,109,110])))},{id:`tsv`,name:`TSV`,import:(()=>H(()=>import(`./tsv-CfyllNPO.js`),[]))},{id:`tsx`,name:`TSX`,import:(()=>H(()=>import(`./tsx-BROcpVjE.js`).then(e=>e.n),__vite__mapDeps([113,1])))},{id:`turtle`,name:`Turtle`,import:(()=>H(()=>import(`./turtle-CHmyeS9k.js`),[]))},{id:`twig`,name:`Twig`,import:(()=>H(()=>import(`./twig-BT8vDHa2.js`),__vite__mapDeps([196,103,1,104,176,102,108,117,109,110,122,134,120,125,126,127,135,136,113,114,137,138,129,139,106])))},{id:`typescript`,name:`TypeScript`,aliases:[`ts`,`cts`,`mts`],import:(()=>H(()=>import(`./typescript-BVwspRg8.js`).then(e=>e.n),__vite__mapDeps([114,1])))},{id:`typespec`,name:`TypeSpec`,aliases:[`tsp`],import:(()=>H(()=>import(`./typespec-DXRppCgc.js`),[]))},{id:`typst`,name:`Typst`,aliases:[`typ`],import:(()=>H(()=>import(`./typst-L5uwArOj.js`),[]))},{id:`v`,name:`V`,import:(()=>H(()=>import(`./v-Bz99d5uk.js`),[]))},{id:`vala`,name:`Vala`,import:(()=>H(()=>import(`./vala-B-CtBLX1.js`),[]))},{id:`vb`,name:`Visual Basic`,aliases:[`cmd`],import:(()=>H(()=>import(`./vb-DHqiz9Cp.js`),[]))},{id:`verilog`,name:`Verilog`,import:(()=>H(()=>import(`./verilog-DbTkSkM7.js`),[]))},{id:`vhdl`,name:`VHDL`,import:(()=>H(()=>import(`./vhdl-BJJSCnQQ.js`),[]))},{id:`viml`,name:`Vim Script`,aliases:[`vim`,`vimscript`],import:(()=>H(()=>import(`./viml-qxSvRN8n.js`),[]))},{id:`vue`,name:`Vue`,import:(()=>H(()=>import(`./vue-BcyG2SyR.js`),__vite__mapDeps([197,103,1,116,102,104,108,114])))},{id:`vue-html`,name:`Vue HTML`,import:(()=>H(()=>import(`./vue-html-D8iVjZTe.js`),__vite__mapDeps([198,104,1])))},{id:`vue-vine`,name:`Vue Vine`,import:(()=>H(()=>import(`./vue-vine-DxBjHHk4.js`),__vite__mapDeps([199,103,1,104,170,112,106,200])))},{id:`vyper`,name:`Vyper`,aliases:[`vy`],import:(()=>H(()=>import(`./vyper-WAhkfwIX.js`),[]))},{id:`wasm`,name:`WebAssembly`,import:(()=>H(()=>import(`./wasm-Miuao4O0.js`),[]))},{id:`wenyan`,name:`Wenyan`,aliases:[`文言`],import:(()=>H(()=>import(`./wenyan-Dd5qjF8u.js`),[]))},{id:`wgsl`,name:`WGSL`,import:(()=>H(()=>import(`./wgsl-C3T5a0UO.js`),[]))},{id:`wikitext`,name:`Wikitext`,aliases:[`mediawiki`,`wiki`],import:(()=>H(()=>import(`./wikitext-CvCJjxSa.js`),[]))},{id:`wit`,name:`WebAssembly Interface Types`,import:(()=>H(()=>import(`./wit-DybvG9BU.js`),[]))},{id:`wolfram`,name:`Wolfram`,aliases:[`wl`],import:(()=>H(()=>import(`./wolfram-CdhnrpZ7.js`),[]))},{id:`xml`,name:`XML`,import:(()=>H(()=>import(`./xml-Zepcw_qF.js`).then(e=>e.n),__vite__mapDeps([109,1,110])))},{id:`xsl`,name:`XSL`,import:(()=>H(()=>import(`./xsl-_m-WMWv3.js`),__vite__mapDeps([201,109,1,110])))},{id:`yaml`,name:`YAML`,aliases:[`yml`],import:(()=>H(()=>import(`./yaml-B0HIje0z.js`).then(e=>e.n),__vite__mapDeps([139,1])))},{id:`zenscript`,name:`ZenScript`,import:(()=>H(()=>import(`./zenscript-CcLSNTvD.js`),[]))},{id:`zig`,name:`Zig`,import:(()=>H(()=>import(`./zig-dAelYAUr.js`),[]))}],qw=Object.fromEntries(Kw.map(e=>[e.id,e.import])),Jw=Object.fromEntries(Kw.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Yw={...qw,...Jw},Xw=Object.fromEntries([{id:`andromeeda`,displayName:`Andromeeda`,type:`dark`,import:(()=>H(()=>import(`./andromeeda-CdMZLp1H.js`),[]))},{id:`aurora-x`,displayName:`Aurora X`,type:`dark`,import:(()=>H(()=>import(`./aurora-x-D64MWGxe.js`),[]))},{id:`ayu-dark`,displayName:`Ayu Dark`,type:`dark`,import:(()=>H(()=>import(`./ayu-dark-DlDyr9-5.js`),[]))},{id:`ayu-light`,displayName:`Ayu Light`,type:`light`,import:(()=>H(()=>import(`./ayu-light-BF0a181n.js`),[]))},{id:`ayu-mirage`,displayName:`Ayu Mirage`,type:`dark`,import:(()=>H(()=>import(`./ayu-mirage-B6hnRsHM.js`),[]))},{id:`catppuccin-frappe`,displayName:`Catppuccin Frappé`,type:`dark`,import:(()=>H(()=>import(`./catppuccin-frappe-BT3IMDYa.js`),[]))},{id:`catppuccin-latte`,displayName:`Catppuccin Latte`,type:`light`,import:(()=>H(()=>import(`./catppuccin-latte-DM9i15n3.js`),[]))},{id:`catppuccin-macchiato`,displayName:`Catppuccin Macchiato`,type:`dark`,import:(()=>H(()=>import(`./catppuccin-macchiato-CAEDr_h3.js`),[]))},{id:`catppuccin-mocha`,displayName:`Catppuccin Mocha`,type:`dark`,import:(()=>H(()=>import(`./catppuccin-mocha-BzOmDckq.js`),[]))},{id:`dark-plus`,displayName:`Dark Plus`,type:`dark`,import:(()=>H(()=>import(`./dark-plus-DKLywSFP.js`),[]))},{id:`dracula`,displayName:`Dracula Theme`,type:`dark`,import:(()=>H(()=>import(`./dracula-BNPKmiGE.js`),[]))},{id:`dracula-soft`,displayName:`Dracula Theme Soft`,type:`dark`,import:(()=>H(()=>import(`./dracula-soft-Bv4lLEFc.js`),[]))},{id:`everforest-dark`,displayName:`Everforest Dark`,type:`dark`,import:(()=>H(()=>import(`./everforest-dark-7XTfQW4s.js`),[]))},{id:`everforest-light`,displayName:`Everforest Light`,type:`light`,import:(()=>H(()=>import(`./everforest-light-CmPZPQmV.js`),[]))},{id:`github-dark`,displayName:`GitHub Dark`,type:`dark`,import:(()=>H(()=>import(`./github-dark-D8IE4lln.js`),[]))},{id:`github-dark-default`,displayName:`GitHub Dark Default`,type:`dark`,import:(()=>H(()=>import(`./github-dark-default-Bv2-je5j.js`),[]))},{id:`github-dark-dimmed`,displayName:`GitHub Dark Dimmed`,type:`dark`,import:(()=>H(()=>import(`./github-dark-dimmed-Dn2Abfcl.js`),[]))},{id:`github-dark-high-contrast`,displayName:`GitHub Dark High Contrast`,type:`dark`,import:(()=>H(()=>import(`./github-dark-high-contrast-CPYPXNHn.js`),[]))},{id:`github-light`,displayName:`GitHub Light`,type:`light`,import:(()=>H(()=>import(`./github-light-CVOMBMvb.js`),[]))},{id:`github-light-default`,displayName:`GitHub Light Default`,type:`light`,import:(()=>H(()=>import(`./github-light-default-6Ayk6lJY.js`),[]))},{id:`github-light-high-contrast`,displayName:`GitHub Light High Contrast`,type:`light`,import:(()=>H(()=>import(`./github-light-high-contrast-BTGKd6JI.js`),[]))},{id:`gruvbox-dark-hard`,displayName:`Gruvbox Dark Hard`,type:`dark`,import:(()=>H(()=>import(`./gruvbox-dark-hard-CMSNCrAk.js`),[]))},{id:`gruvbox-dark-medium`,displayName:`Gruvbox Dark Medium`,type:`dark`,import:(()=>H(()=>import(`./gruvbox-dark-medium-CR5wAM1c.js`),[]))},{id:`gruvbox-dark-soft`,displayName:`Gruvbox Dark Soft`,type:`dark`,import:(()=>H(()=>import(`./gruvbox-dark-soft-Ba1gP2O2.js`),[]))},{id:`gruvbox-light-hard`,displayName:`Gruvbox Light Hard`,type:`light`,import:(()=>H(()=>import(`./gruvbox-light-hard-ChSY383t.js`),[]))},{id:`gruvbox-light-medium`,displayName:`Gruvbox Light Medium`,type:`light`,import:(()=>H(()=>import(`./gruvbox-light-medium-DebZzeA2.js`),[]))},{id:`gruvbox-light-soft`,displayName:`Gruvbox Light Soft`,type:`light`,import:(()=>H(()=>import(`./gruvbox-light-soft-CEWqv8Ew.js`),[]))},{id:`horizon`,displayName:`Horizon`,type:`dark`,import:(()=>H(()=>import(`./horizon-C_xHTsMO.js`),[]))},{id:`horizon-bright`,displayName:`Horizon Bright`,type:`light`,import:(()=>H(()=>import(`./horizon-bright-CJd-vMFG.js`),[]))},{id:`houston`,displayName:`Houston`,type:`dark`,import:(()=>H(()=>import(`./houston-BYOfZpV9.js`),[]))},{id:`kanagawa-dragon`,displayName:`Kanagawa Dragon`,type:`dark`,import:(()=>H(()=>import(`./kanagawa-dragon-C6ogFc3X.js`),[]))},{id:`kanagawa-lotus`,displayName:`Kanagawa Lotus`,type:`light`,import:(()=>H(()=>import(`./kanagawa-lotus-8esZNUbA.js`),[]))},{id:`kanagawa-wave`,displayName:`Kanagawa Wave`,type:`dark`,import:(()=>H(()=>import(`./kanagawa-wave-C-yWQ6RD.js`),[]))},{id:`laserwave`,displayName:`LaserWave`,type:`dark`,import:(()=>H(()=>import(`./laserwave-CddL9sH-.js`),[]))},{id:`light-plus`,displayName:`Light Plus`,type:`light`,import:(()=>H(()=>import(`./light-plus-DUh-yC9k.js`),[]))},{id:`material-theme`,displayName:`Material Theme`,type:`dark`,import:(()=>H(()=>import(`./material-theme-9BivM5cB.js`),[]))},{id:`material-theme-darker`,displayName:`Material Theme Darker`,type:`dark`,import:(()=>H(()=>import(`./material-theme-darker-Bg7I3WIw.js`),[]))},{id:`material-theme-lighter`,displayName:`Material Theme Lighter`,type:`light`,import:(()=>H(()=>import(`./material-theme-lighter-BoEshpBb.js`),[]))},{id:`material-theme-ocean`,displayName:`Material Theme Ocean`,type:`dark`,import:(()=>H(()=>import(`./material-theme-ocean-CmKcBlBP.js`),[]))},{id:`material-theme-palenight`,displayName:`Material Theme Palenight`,type:`dark`,import:(()=>H(()=>import(`./material-theme-palenight-CUyfHC0C.js`),[]))},{id:`min-dark`,displayName:`Min Dark`,type:`dark`,import:(()=>H(()=>import(`./min-dark-uGP-9UE_.js`),[]))},{id:`min-light`,displayName:`Min Light`,type:`light`,import:(()=>H(()=>import(`./min-light-BkFlXt3G.js`),[]))},{id:`monokai`,displayName:`Monokai`,type:`dark`,import:(()=>H(()=>import(`./monokai-BA4dkSrE.js`),[]))},{id:`night-owl`,displayName:`Night Owl`,type:`dark`,import:(()=>H(()=>import(`./night-owl-ds7NNgBg.js`),[]))},{id:`night-owl-light`,displayName:`Night Owl Light`,type:`light`,import:(()=>H(()=>import(`./night-owl-light-DurCGAfC.js`),[]))},{id:`nord`,displayName:`Nord`,type:`dark`,import:(()=>H(()=>import(`./nord-C-O3ceAv.js`),[]))},{id:`one-dark-pro`,displayName:`One Dark Pro`,type:`dark`,import:(()=>H(()=>import(`./one-dark-pro-DJQor_US.js`),[]))},{id:`one-light`,displayName:`One Light`,type:`light`,import:(()=>H(()=>import(`./one-light-BMvQ1R6M.js`),[]))},{id:`plastic`,displayName:`Plastic`,type:`dark`,import:(()=>H(()=>import(`./plastic-QMrjD10f.js`),[]))},{id:`poimandres`,displayName:`Poimandres`,type:`dark`,import:(()=>H(()=>import(`./poimandres-fat7kglW.js`),[]))},{id:`red`,displayName:`Red`,type:`dark`,import:(()=>H(()=>import(`./red-F3EQNsNx.js`),[]))},{id:`rose-pine`,displayName:`Rosé Pine`,type:`dark`,import:(()=>H(()=>import(`./rose-pine-NjvlliYf.js`),[]))},{id:`rose-pine-dawn`,displayName:`Rosé Pine Dawn`,type:`light`,import:(()=>H(()=>import(`./rose-pine-dawn-DnsL01oA.js`),[]))},{id:`rose-pine-moon`,displayName:`Rosé Pine Moon`,type:`dark`,import:(()=>H(()=>import(`./rose-pine-moon-DQTuCjVy.js`),[]))},{id:`slack-dark`,displayName:`Slack Dark`,type:`dark`,import:(()=>H(()=>import(`./slack-dark-BOdgeH19.js`),[]))},{id:`slack-ochin`,displayName:`Slack Ochin`,type:`light`,import:(()=>H(()=>import(`./slack-ochin-DBMQIw0j.js`),[]))},{id:`snazzy-light`,displayName:`Snazzy Light`,type:`light`,import:(()=>H(()=>import(`./snazzy-light-DwnLbrVG.js`),[]))},{id:`solarized-dark`,displayName:`Solarized Dark`,type:`dark`,import:(()=>H(()=>import(`./solarized-dark-DXJnupYd.js`),[]))},{id:`solarized-light`,displayName:`Solarized Light`,type:`light`,import:(()=>H(()=>import(`./solarized-light-DqhyrtI4.js`),[]))},{id:`synthwave-84`,displayName:`Synthwave '84`,type:`dark`,import:(()=>H(()=>import(`./synthwave-84-CypcdXbA.js`),[]))},{id:`tokyo-night`,displayName:`Tokyo Night`,type:`dark`,import:(()=>H(()=>import(`./tokyo-night-CbUQlN8D.js`),[]))},{id:`vesper`,displayName:`Vesper`,type:`dark`,import:(()=>H(()=>import(`./vesper-2aVei4Le.js`),[]))},{id:`vitesse-black`,displayName:`Vitesse Black`,type:`dark`,import:(()=>H(()=>import(`./vitesse-black-CjR1y0Bv.js`),[]))},{id:`vitesse-dark`,displayName:`Vitesse Dark`,type:`dark`,import:(()=>H(()=>import(`./vitesse-dark-jrcdsqkn.js`),[]))},{id:`vitesse-light`,displayName:`Vitesse Light`,type:`light`,import:(()=>H(()=>import(`./vitesse-light-DkC_qU0k.js`),[]))}].map(e=>[e.id,e.import])),Zw=e({createOnigurumaEngine:()=>TT,getDefaultWasmLoader:()=>wT,loadWasm:()=>vT,setDefaultWasmLoader:()=>CT}),Qw=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function $w(){return 2147483648}function eT(){return typeof performance<`u`?performance.now():Date.now()}var tT=(e,t)=>e+(t-e%t)%t;async function nT(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=$w();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,tT(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:eT,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 rT=Object.defineProperty,iT=(e,t,n)=>t in e?rT(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,aT=(e,t,n)=>iT(e,typeof t==`symbol`?t:t+``,n),oT=null;function sT(e){throw new Qw(e.UTF8ToString(e.getLastOnigError()))}var cT=class e{constructor(t){aT(this,`utf16Length`),aT(this,`utf8Length`),aT(this,`utf16Value`),aT(this,`utf8Value`),aT(this,`utf16OffsetToUtf8`),aT(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}},lT=class e{constructor(t){if(aT(this,`id`,++e.LAST_ID),aT(this,`_onigBinding`),aT(this,`content`),aT(this,`utf16Length`),aT(this,`utf8Length`),aT(this,`utf16OffsetToUtf8`),aT(this,`utf8OffsetToUtf16`),aT(this,`ptr`),!oT)throw new Qw(`Must invoke loadWasm first.`);this._onigBinding=oT,this.content=t;let n=new cT(t);this.utf16Length=n.utf16Length,this.utf8Length=n.utf8Length,this.utf16OffsetToUtf8=n.utf16OffsetToUtf8,this.utf8OffsetToUtf16=n.utf8OffsetToUtf16,this.utf8Length<1e4&&!e._sharedPtrInUse?(e._sharedPtr||=oT.omalloc(1e4),e._sharedPtrInUse=!0,oT.HEAPU8.set(n.utf8Value,e._sharedPtr),this.ptr=e._sharedPtr):this.ptr=n.createString(oT)}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)}};aT(lT,`LAST_ID`,0),aT(lT,`_sharedPtr`,0),aT(lT,`_sharedPtrInUse`,!1);var uT=lT,dT=class{constructor(e){if(aT(this,`_onigBinding`),aT(this,`_ptr`),!oT)throw new Qw(`Must invoke loadWasm first.`);let t=[],n=[];for(let r=0,i=e.length;r<i;r++){let i=new cT(e[r]);t[r]=i.createString(oT),n[r]=i.utf8Length}let r=oT.omalloc(4*e.length);oT.HEAPU32.set(t,r/4);let i=oT.omalloc(4*e.length);oT.HEAPU32.set(n,i/4);let a=oT.createOnigScanner(r,i,e.length);for(let n=0,r=e.length;n<r;n++)oT.ofree(t[n]);oT.ofree(i),oT.ofree(r),a===0&&sT(oT),this._onigBinding=oT,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 uT(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 fT(e){return typeof e.instantiator==`function`}function pT(e){return typeof e.default==`function`}function mT(e){return e.data!==void 0}function hT(e){return typeof Response<`u`&&e instanceof Response}function gT(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 _T;function vT(e){if(_T)return _T;async function t(){oT=await nT(async t=>{let n=e;return n=await n,typeof n==`function`&&(n=await n(t)),typeof n==`function`&&(n=await n(t)),fT(n)?n=await n.instantiator(t):pT(n)?n=await n.default(t):(mT(n)&&(n=n.data),hT(n)?n=typeof WebAssembly.instantiateStreaming==`function`?await bT(n)(t):await xT(n)(t):gT(n)||n instanceof WebAssembly.Module?n=await yT(n)(t):`default`in n&&n.default instanceof WebAssembly.Module&&(n=await yT(n.default)(t))),`instance`in n&&(n=n.instance),`exports`in n&&(n=n.exports),n})}return _T=t(),_T}function yT(e){return t=>WebAssembly.instantiate(e,t)}function bT(e){return t=>WebAssembly.instantiateStreaming(e,t)}function xT(e){return async t=>{let n=await e.arrayBuffer();return WebAssembly.instantiate(n,t)}}var ST;function CT(e){ST=e}function wT(){return ST}async function TT(e){return e&&await vT(e),{createScanner(e){return new dT(e.map(e=>typeof e==`string`?e:e.source))},createString(e){return new uT(e)}}}var ET=Uw({});Gw(ET,Zw);var DT=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function OT(e){return kT(e)}function kT(e){return Array.isArray(e)?AT(e):e instanceof RegExp?e:typeof e==`object`?jT(e):e}function AT(e){let t=[];for(let n=0,r=e.length;n<r;n++)t[n]=kT(e[n]);return t}function jT(e){let t={};for(let n in e)t[n]=kT(e[n]);return t}function MT(e,...t){return t.forEach(t=>{for(let n in t)e[n]=t[n]}),e}function NT(e){let t=~e.lastIndexOf(`/`)||~e.lastIndexOf(`\\`);return t===0?e:~t===e.length-1?NT(e.substring(0,e.length-1)):e.substr(~t+1)}var PT=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,FT=class{static hasCaptures(e){return e===null?!1:(PT.lastIndex=0,PT.test(e))}static replaceCaptures(e,t,n){return e.replace(PT,(e,r,i,a)=>{let o=n[parseInt(r||i,10)];if(o){let e=t.substring(o.start,o.end);for(;e[0]===`.`;)e=e.substring(1);switch(a){case`downcase`:return e.toLowerCase();case`upcase`:return e.toUpperCase();default:return e}}else return e})}};function IT(e,t){return e<t?-1:e>t?1:0}function LT(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let n=e.length,r=t.length;if(n===r){for(let r=0;r<n;r++){let n=IT(e[r],t[r]);if(n!==0)return n}return 0}return n-r}function RT(e){return!!(/^#[0-9a-f]{6}$/i.test(e)||/^#[0-9a-f]{8}$/i.test(e)||/^#[0-9a-f]{3}$/i.test(e)||/^#[0-9a-f]{4}$/i.test(e))}function zT(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,`\\$&`)}var BT=class{constructor(e){this.fn=e}cache=new Map;get(e){if(this.cache.has(e))return this.cache.get(e);let t=this.fn(e);return this.cache.set(e,t),t}},VT=class{constructor(e,t,n){this._colorMap=e,this._defaults=t,this._root=n}static createFromRawTheme(e,t){return this.createFromParsedTheme(KT(e),t)}static createFromParsedTheme(e,t){return YT(e,t)}_cachedMatchRoot=new BT(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,n=this._cachedMatchRoot.get(t).find(t=>UT(e.parent,t.parentScopes));return n?new GT(n.fontStyle,n.foreground,n.background):null}},HT=class e{constructor(e,t){this.parent=e,this.scopeName=t}static push(t,n){for(let r of n)t=new e(t,r);return t}static from(...t){let n=null;for(let r=0;r<t.length;r++)n=new e(n,t[r]);return n}push(t){return new e(this,t)}getSegments(){let e=this,t=[];for(;e;)t.push(e.scopeName),e=e.parent;return t.reverse(),t}toString(){return this.getSegments().join(` `)}extends(e){return this===e?!0:this.parent===null?!1:this.parent.extends(e)}getExtensionIfDefined(e){let t=[],n=this;for(;n&&n!==e;)t.push(n.scopeName),n=n.parent;return n===e?t.reverse():void 0}};function UT(e,t){if(t.length===0)return!0;for(let n=0;n<t.length;n++){let r=t[n],i=!1;if(r===`>`){if(n===t.length-1)return!1;r=t[++n],i=!0}for(;e&&!WT(e.scopeName,r);){if(i)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function WT(e,t){return t===e||e.startsWith(t)&&e[t.length]===`.`}var GT=class{constructor(e,t,n){this.fontStyle=e,this.foregroundId=t,this.backgroundId=n}};function KT(e){if(!e||!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,n=[],r=0;for(let e=0,i=t.length;e<i;e++){let i=t[e];if(!i.settings)continue;let a;if(typeof i.scope==`string`){let e=i.scope;e=e.replace(/^[,]+/,``),e=e.replace(/[,]+$/,``),a=e.split(`,`)}else a=Array.isArray(i.scope)?i.scope:[``];let o=-1;if(typeof i.settings.fontStyle==`string`){o=0;let e=i.settings.fontStyle.split(` `);for(let t=0,n=e.length;t<n;t++)switch(e[t]){case`italic`:o|=1;break;case`bold`:o|=2;break;case`underline`:o|=4;break;case`strikethrough`:o|=8;break}}let s=null;typeof i.settings.foreground==`string`&&RT(i.settings.foreground)&&(s=i.settings.foreground);let c=null;typeof i.settings.background==`string`&&RT(i.settings.background)&&(c=i.settings.background);for(let t=0,i=a.length;t<i;t++){let i=a[t].trim().split(` `),l=i[i.length-1],u=null;i.length>1&&(u=i.slice(0,i.length-1),u.reverse()),n[r++]=new qT(l,u,e,o,s,c)}}return n}var qT=class{constructor(e,t,n,r,i,a){this.scope=e,this.parentScopes=t,this.index=n,this.fontStyle=r,this.foreground=i,this.background=a}},JT=(e=>(e[e.NotSet=-1]=`NotSet`,e[e.None=0]=`None`,e[e.Italic=1]=`Italic`,e[e.Bold=2]=`Bold`,e[e.Underline=4]=`Underline`,e[e.Strikethrough=8]=`Strikethrough`,e))(JT||{});function YT(e,t){e.sort((e,t)=>{let n=IT(e.scope,t.scope);return n!==0||(n=LT(e.parentScopes,t.parentScopes),n!==0)?n:e.index-t.index});let n=0,r=`#000000`,i=`#ffffff`;for(;e.length>=1&&e[0].scope===``;){let t=e.shift();t.fontStyle!==-1&&(n=t.fontStyle),t.foreground!==null&&(r=t.foreground),t.background!==null&&(i=t.background)}let a=new XT(t),o=new GT(n,a.getId(r),a.getId(i)),s=new $T(new QT(0,null,-1,0,0),[]);for(let t=0,n=e.length;t<n;t++){let n=e[t];s.insert(0,n.scope,n.parentScopes,n.fontStyle,a.getId(n.foreground),a.getId(n.background))}return new VT(a,o,s)}var XT=class{_isFrozen;_lastColorId;_id2color;_color2id;constructor(e){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(e)){this._isFrozen=!0;for(let t=0,n=e.length;t<n;t++)this._color2id[e[t]]=t,this._id2color[t]=e[t]}else this._isFrozen=!1}getId(e){if(e===null)return 0;e=e.toUpperCase();let t=this._color2id[e];if(t)return t;if(this._isFrozen)throw Error(`Missing color in color map - ${e}`);return t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e,t}getColorMap(){return this._id2color.slice(0)}},ZT=Object.freeze([]),QT=class e{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(e,t,n,r,i){this.scopeDepth=e,this.parentScopes=t||ZT,this.fontStyle=n,this.foreground=r,this.background=i}clone(){return new e(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(e){let t=[];for(let n=0,r=e.length;n<r;n++)t[n]=e[n].clone();return t}acceptOverwrite(e,t,n,r){this.scopeDepth>e?console.log(`how did this happen?`):this.scopeDepth=e,t!==-1&&(this.fontStyle=t),n!==0&&(this.foreground=n),r!==0&&(this.background=r)}},$T=class e{constructor(e,t=[],n={}){this._mainRule=e,this._children=n,this._rulesWithParentScopes=t}_rulesWithParentScopes;static _cmpBySpecificity(e,t){if(e.scopeDepth!==t.scopeDepth)return t.scopeDepth-e.scopeDepth;let n=0,r=0;for(;e.parentScopes[n]===`>`&&n++,t.parentScopes[r]===`>`&&r++,!(n>=e.parentScopes.length||r>=t.parentScopes.length);){let i=t.parentScopes[r].length-e.parentScopes[n].length;if(i!==0)return i;n++,r++}return t.parentScopes.length-e.parentScopes.length}match(t){if(t!==``){let e=t.indexOf(`.`),n,r;if(e===-1?(n=t,r=``):(n=t.substring(0,e),r=t.substring(e+1)),this._children.hasOwnProperty(n))return this._children[n].match(r)}let n=this._rulesWithParentScopes.concat(this._mainRule);return n.sort(e._cmpBySpecificity),n}insert(t,n,r,i,a,o){if(n===``){this._doInsertHere(t,r,i,a,o);return}let s=n.indexOf(`.`),c,l;s===-1?(c=n,l=``):(c=n.substring(0,s),l=n.substring(s+1));let u;this._children.hasOwnProperty(c)?u=this._children[c]:(u=new e(this._mainRule.clone(),QT.cloneArr(this._rulesWithParentScopes)),this._children[c]=u),u.insert(t+1,l,r,i,a,o)}_doInsertHere(e,t,n,r,i){if(t===null){this._mainRule.acceptOverwrite(e,n,r,i);return}for(let a=0,o=this._rulesWithParentScopes.length;a<o;a++){let o=this._rulesWithParentScopes[a];if(LT(o.parentScopes,t)===0){o.acceptOverwrite(e,n,r,i);return}}n===-1&&(n=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),i===0&&(i=this._mainRule.background),this._rulesWithParentScopes.push(new QT(e,t,n,r,i))}},eE=class e{static toBinaryStr(e){return e.toString(2).padStart(32,`0`)}static print(t){let n=e.getLanguageId(t),r=e.getTokenType(t),i=e.getFontStyle(t),a=e.getForeground(t),o=e.getBackground(t);console.log({languageId:n,tokenType:r,fontStyle:i,foreground:a,background:o})}static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!=0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static set(t,n,r,i,a,o,s){let c=e.getLanguageId(t),l=e.getTokenType(t),u=e.containsBalancedBrackets(t)?1:0,d=e.getFontStyle(t),f=e.getForeground(t),p=e.getBackground(t);return n!==0&&(c=n),r!==8&&(l=nE(r)),i!==null&&(u=i?1:0),a!==-1&&(d=a),o!==0&&(f=o),s!==0&&(p=s),(c<<0|l<<8|u<<10|d<<11|f<<15|p<<24)>>>0}};function tE(e){return e}function nE(e){return e}function rE(e,t){let n=[],r=aE(e),i=r.next();for(;i!==null;){let e=0;if(i.length===2&&i.charAt(1)===`:`){switch(i.charAt(0)){case`R`:e=1;break;case`L`:e=-1;break;default:console.log(`Unknown priority ${i} in scope selector`)}i=r.next()}let t=o();if(n.push({matcher:t,priority:e}),i!==`,`)break;i=r.next()}return n;function a(){if(i===`-`){i=r.next();let e=a();return t=>!!e&&!e(t)}if(i===`(`){i=r.next();let e=s();return i===`)`&&(i=r.next()),e}if(iE(i)){let e=[];do e.push(i),i=r.next();while(iE(i));return n=>t(e,n)}return null}function o(){let e=[],t=a();for(;t;)e.push(t),t=a();return t=>e.every(e=>e(t))}function s(){let e=[],t=o();for(;t&&(e.push(t),i===`|`||i===`,`);){do i=r.next();while(i===`|`||i===`,`);t=o()}return t=>e.some(e=>e(t))}}function iE(e){return!!e&&!!e.match(/[\w\.:]+/)}function aE(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,n=t.exec(e);return{next:()=>{if(!n)return null;let r=n[0];return n=t.exec(e),r}}}function oE(e){typeof e.dispose==`function`&&e.dispose()}var sE=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},cE=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},lE=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(e){let t=e.toKey();this._seenReferenceKeys.has(t)||(this._seenReferenceKeys.add(t),this._references.push(e))}},uE=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new sE(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new lE;for(let n of e)dE(n,this.initialScopeName,this.repo,t);for(let e of t.references)if(e instanceof sE){if(this.seenFullScopeRequests.has(e.scopeName))continue;this.seenFullScopeRequests.add(e.scopeName),this.Q.push(e)}else{if(this.seenFullScopeRequests.has(e.scopeName)||this.seenPartialScopeRequests.has(e.toKey()))continue;this.seenPartialScopeRequests.add(e.toKey()),this.Q.push(e)}}};function dE(e,t,n,r){let i=n.lookup(e.scopeName);if(!i){if(e.scopeName===t)throw Error(`No grammar provided for <${t}>`);return}let a=n.lookup(t);e instanceof sE?pE({baseGrammar:a,selfGrammar:i},r):fE(e.ruleName,{baseGrammar:a,selfGrammar:i,repository:i.repository},r);let o=n.injections(e.scopeName);if(o)for(let e of o)r.add(new sE(e))}function fE(e,t,n){if(t.repository&&t.repository[e]){let r=t.repository[e];mE([r],t,n)}}function pE(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&mE(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&mE(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function mE(e,t,n){for(let r of e){if(n.visitedRule.has(r))continue;n.visitedRule.add(r);let e=r.repository?MT({},t.repository,r.repository):t.repository;Array.isArray(r.patterns)&&mE(r.patterns,{...t,repository:e},n);let i=r.include;if(!i)continue;let a=bE(i);switch(a.kind){case 0:pE({...t,selfGrammar:t.baseGrammar},n);break;case 1:pE(t,n);break;case 2:fE(a.ruleName,{...t,repository:e},n);break;case 3:case 4:let r=a.scopeName===t.selfGrammar.scopeName?t.selfGrammar:a.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(r){let i={baseGrammar:t.baseGrammar,selfGrammar:r,repository:e};a.kind===4?fE(a.ruleName,i,n):pE(i,n)}else a.kind===4?n.add(new cE(a.scopeName,a.ruleName)):n.add(new sE(a.scopeName));break}}}var hE=class{kind=0},gE=class{kind=1},_E=class{constructor(e){this.ruleName=e}kind=2},vE=class{constructor(e){this.scopeName=e}kind=3},yE=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function bE(e){if(e===`$base`)return new hE;if(e===`$self`)return new gE;let t=e.indexOf(`#`);return t===-1?new vE(e):t===0?new _E(e.substring(1)):new yE(e.substring(0,t),e.substring(t+1))}var xE=/\\(\d+)/,SE=/\\(\d+)/g,CE=-1,wE=-2;function TE(e){return e}function EE(e){return e}var DE=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,n,r){this.$location=e,this.id=t,this._name=n||null,this._nameIsCapturing=FT.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=FT.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${NT(this.$location.filename)}:${this.$location.line}`:`unknown`;return`${this.constructor.name}#${this.id} @ ${e}`}getName(e,t){return!this._nameIsCapturing||this._name===null||e===null||t===null?this._name:FT.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:FT.replaceCaptures(this._contentName,e,t)}},OE=class extends DE{retokenizeCapturedWithRuleId;constructor(e,t,n,r,i){super(e,t,n,r),this.retokenizeCapturedWithRuleId=i}dispose(){}collectPatterns(e,t){throw Error(`Not supported!`)}compile(e,t){throw Error(`Not supported!`)}compileAG(e,t,n,r){throw Error(`Not supported!`)}},kE=class extends DE{_match;captures;_cachedCompiledPatterns;constructor(e,t,n,r,i){super(e,t,n,null),this._match=new PE(r,this.id),this.captures=i,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&=(this._cachedCompiledPatterns.dispose(),null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new FE,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},AE=class extends DE{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,n,r,i){super(e,t,n,r),this.patterns=i.patterns,this.hasMissingPatterns=i.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&=(this._cachedCompiledPatterns.dispose(),null)}collectPatterns(e,t){for(let n of this.patterns)e.getRule(n).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new FE,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},jE=class extends DE{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,n,r,i,a,o,s,c,l){super(e,t,n,r),this._begin=new PE(i,this.id),this.beginCaptures=a,this._end=new PE(o||`￿`,-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=s,this.applyEndPatternLast=c||!1,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&=(this._cachedCompiledPatterns.dispose(),null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e,t).compileAG(e,n,r)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new FE;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},ME=class extends DE{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r),this._begin=new PE(i,this.id),this.beginCaptures=a,this.whileCaptures=s,this._while=new PE(o,wE),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=c.patterns,this.hasMissingPatterns=c.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&=(this._cachedCompiledPatterns.dispose(),null),this._cachedCompiledWhilePatterns&&=(this._cachedCompiledWhilePatterns.dispose(),null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new FE;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,n,r){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,n,r)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new FE,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||`￿`),this._cachedCompiledWhilePatterns}},NE=class e{static createCaptureRule(e,t,n,r,i){return e.registerRule(e=>new OE(t,e,n,r,i))}static getCompiledRuleId(t,n,r){return t.id||n.registerRule(i=>{if(t.id=i,t.match)return new kE(t.$vscodeTextmateLocation,t.id,t.name,t.match,e._compileCaptures(t.captures,n,r));if(t.begin===void 0){t.repository&&(r=MT({},r,t.repository));let i=t.patterns;return i===void 0&&t.include&&(i=[{include:t.include}]),new AE(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,e._compilePatterns(i,n,r))}return t.while?new ME(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,e._compileCaptures(t.beginCaptures||t.captures,n,r),t.while,e._compileCaptures(t.whileCaptures||t.captures,n,r),e._compilePatterns(t.patterns,n,r)):new jE(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,e._compileCaptures(t.beginCaptures||t.captures,n,r),t.end,e._compileCaptures(t.endCaptures||t.captures,n,r),t.applyEndPatternLast,e._compilePatterns(t.patterns,n,r))}),t.id}static _compileCaptures(t,n,r){let i=[];if(t){let a=0;for(let e in t){if(e===`$vscodeTextmateLocation`)continue;let t=parseInt(e,10);t>a&&(a=t)}for(let e=0;e<=a;e++)i[e]=null;for(let a in t){if(a===`$vscodeTextmateLocation`)continue;let o=parseInt(a,10),s=0;t[a].patterns&&(s=e.getCompiledRuleId(t[a],n,r)),i[o]=e.createCaptureRule(n,t[a].$vscodeTextmateLocation,t[a].name,t[a].contentName,s)}}return i}static _compilePatterns(t,n,r){let i=[];if(t)for(let a=0,o=t.length;a<o;a++){let o=t[a],s=-1;if(o.include){let t=bE(o.include);switch(t.kind){case 0:case 1:s=e.getCompiledRuleId(r[o.include],n,r);break;case 2:let i=r[t.ruleName];i&&(s=e.getCompiledRuleId(i,n,r));break;case 3:case 4:let a=t.scopeName,c=t.kind===4?t.ruleName:null,l=n.getExternalGrammar(a,r);if(l)if(c){let t=l.repository[c];t&&(s=e.getCompiledRuleId(t,n,l.repository))}else s=e.getCompiledRuleId(l.repository.$self,n,l.repository);break}}else s=e.getCompiledRuleId(o,n,r);if(s!==-1){let e=n.getRule(s),t=!1;if((e instanceof AE||e instanceof jE||e instanceof ME)&&e.hasMissingPatterns&&e.patterns.length===0&&(t=!0),t)continue;i.push(s)}}return{patterns:i,hasMissingPatterns:(t?t.length:0)!==i.length}}},PE=class e{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(e,t){if(e&&typeof e==`string`){let t=e.length,n=0,r=[],i=!1;for(let a=0;a<t;a++)if(e.charAt(a)===`\\`&&a+1<t){let t=e.charAt(a+1);t===`z`?(r.push(e.substring(n,a)),r.push(`$(?!\\n)(?<!\\n)`),n=a+2):(t===`A`||t===`G`)&&(i=!0),a++}this.hasAnchor=i,n===0?this.source=e:(r.push(e.substring(n,t)),this.source=r.join(``))}else this.hasAnchor=!1,this.source=e;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=t,typeof this.source==`string`?this.hasBackReferences=xE.test(this.source):this.hasBackReferences=!1}clone(){return new e(this.source,this.ruleId)}setSource(e){this.source!==e&&(this.source=e,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(e,t){if(typeof this.source!=`string`)throw Error(`This method should only be called if the source is a string`);let n=t.map(t=>e.substring(t.start,t.end));return SE.lastIndex=0,this.source.replace(SE,(e,t)=>zT(n[parseInt(t,10)]||``))}_buildAnchorCache(){if(typeof this.source!=`string`)throw Error(`This method should only be called if the source is a string`);let e=[],t=[],n=[],r=[],i,a,o,s;for(i=0,a=this.source.length;i<a;i++)o=this.source.charAt(i),e[i]=o,t[i]=o,n[i]=o,r[i]=o,o===`\\`&&i+1<a&&(s=this.source.charAt(i+1),s===`A`?(e[i+1]=`￿`,t[i+1]=`￿`,n[i+1]=`A`,r[i+1]=`A`):s===`G`?(e[i+1]=`￿`,t[i+1]=`G`,n[i+1]=`￿`,r[i+1]=`G`):(e[i+1]=s,t[i+1]=s,n[i+1]=s,r[i+1]=s),i++);return{A0_G0:e.join(``),A0_G1:t.join(``),A1_G0:n.join(``),A1_G1:r.join(``)}}resolveAnchors(e,t){return!this.hasAnchor||!this._anchorCache||typeof this.source!=`string`?this.source:e?t?this._anchorCache.A1_G1:this._anchorCache.A1_G0:t?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},FE=class{_items;_hasAnchors;_cached;_anchorCache;constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&=(this._cached.dispose(),null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(e){this._items.push(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}unshift(e){this._items.unshift(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}length(){return this._items.length}setSource(e,t){this._items[e].source!==t&&(this._disposeCaches(),this._items[e].setSource(t))}compile(e){return this._cached||=new IE(e,this._items.map(e=>e.source),this._items.map(e=>e.ruleId)),this._cached}compileAG(e,t,n){return this._hasAnchors?t?n?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,n)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,n)),this._anchorCache.A1_G0):n?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,n)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,n)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,n){return new IE(e,this._items.map(e=>e.resolveAnchors(t,n)),this._items.map(e=>e.ruleId))}},IE=class{constructor(e,t,n){this.regExps=t,this.rules=n,this.scanner=e.createOnigScanner(t)}scanner;dispose(){typeof this.scanner.dispose==`function`&&this.scanner.dispose()}toString(){let e=[];for(let t=0,n=this.rules.length;t<n;t++)e.push(` - `+this.rules[t]+`: `+this.regExps[t]);return e.join(`
24
- `)}findNextMatchSync(e,t,n){let r=this.scanner.findNextMatchSync(e,t,n);return r?{ruleId:this.rules[r.index],captureIndices:r.captureIndices}:null}},LE=class{constructor(e,t){this.languageId=e,this.tokenType=t}},RE=class e{_defaultAttributes;_embeddedLanguagesMatcher;constructor(e,t){this._defaultAttributes=new LE(e,8),this._embeddedLanguagesMatcher=new zE(Object.entries(t||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?e._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new LE(0,0);_getBasicScopeAttributes=new BT(e=>new LE(this._scopeToLanguage(e),this._toStandardTokenType(e)));_scopeToLanguage(e){return this._embeddedLanguagesMatcher.match(e)||0}_toStandardTokenType(t){let n=t.match(e.STANDARD_TOKEN_TYPE_REGEXP);if(!n)return 8;switch(n[1]){case`comment`:return 1;case`string`:return 2;case`regex`:return 3;case`meta.embedded`:return 0}throw Error(`Unexpected match for standard token type!`)}static STANDARD_TOKEN_TYPE_REGEXP=/\b(comment|string|regex|meta\.embedded)\b/},zE=class{values;scopesRegExp;constructor(e){if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);let t=e.map(([e,t])=>zT(e));t.sort(),t.reverse(),this.scopesRegExp=RegExp(`^((${t.join(`)|(`)}))($|\\.)`,``)}}match(e){if(!this.scopesRegExp)return;let t=e.match(this.scopesRegExp);if(t)return this.values.get(t[1])}};typeof process<`u`&&{}.VSCODE_TEXTMATE_DEBUG;var BE=!1,VE=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function HE(e,t,n,r,i,a,o,s){let c=t.content.length,l=!1,u=-1;if(o){let o=UE(e,t,n,r,i,a);i=o.stack,r=o.linePos,n=o.isFirstLine,u=o.anchorPosition}let d=Date.now();for(;!l;){if(s!==0&&Date.now()-d>s)return new VE(i,!0);f()}return new VE(i,!1);function f(){let o=WE(e,t,n,r,i,u);if(!o){a.produce(i,c),l=!0;return}let s=o.captureIndices,d=o.matchedRuleId,f=s&&s.length>0?s[0].end>r:!1;if(d===CE){let o=i.getRule(e);a.produce(i,s[0].start),i=i.withContentNameScopesList(i.nameScopesList),XE(e,t,n,i,a,o.endCaptures,s),a.produce(i,s[0].end);let d=i;if(i=i.parent,u=d.getAnchorPos(),!f&&d.getEnterPos()===r){i=d,a.produce(i,c),l=!0;return}}else{let o=e.getRule(d);a.produce(i,s[0].start);let p=i,m=o.getName(t.content,s),h=i.contentNameScopesList.pushAttributed(m,e);if(i=i.push(d,r,u,s[0].end===c,null,h,h),o instanceof jE){let r=o;XE(e,t,n,i,a,r.beginCaptures,s),a.produce(i,s[0].end),u=s[0].end;let d=r.getContentName(t.content,s),m=h.pushAttributed(d,e);if(i=i.withContentNameScopesList(m),r.endHasBackReferences&&(i=i.withEndRule(r.getEndWithResolvedBackReferences(t.content,s))),!f&&p.hasSameRuleAs(i)){i=i.pop(),a.produce(i,c),l=!0;return}}else if(o instanceof ME){let r=o;XE(e,t,n,i,a,r.beginCaptures,s),a.produce(i,s[0].end),u=s[0].end;let d=r.getContentName(t.content,s),m=h.pushAttributed(d,e);if(i=i.withContentNameScopesList(m),r.whileHasBackReferences&&(i=i.withEndRule(r.getWhileWithResolvedBackReferences(t.content,s))),!f&&p.hasSameRuleAs(i)){i=i.pop(),a.produce(i,c),l=!0;return}}else if(XE(e,t,n,i,a,o.captures,s),a.produce(i,s[0].end),i=i.pop(),!f){i=i.safePop(),a.produce(i,c),l=!0;return}}s[0].end>r&&(r=s[0].end,n=!1)}}function UE(e,t,n,r,i,a){let o=i.beginRuleCapturedEOL?0:-1,s=[];for(let t=i;t;t=t.pop()){let n=t.getRule(e);n instanceof ME&&s.push({rule:n,stack:t})}for(let c=s.pop();c;c=s.pop()){let{ruleScanner:s,findOptions:l}=JE(c.rule,e,c.stack.endRule,n,r===o),u=s.findNextMatchSync(t,r,l);if(u){if(u.ruleId!==wE){i=c.stack.pop();break}u.captureIndices&&u.captureIndices.length&&(a.produce(c.stack,u.captureIndices[0].start),XE(e,t,n,c.stack,a,c.rule.whileCaptures,u.captureIndices),a.produce(c.stack,u.captureIndices[0].end),o=u.captureIndices[0].end,u.captureIndices[0].end>r&&(r=u.captureIndices[0].end,n=!1))}else{i=c.stack.pop();break}}return{stack:i,linePos:r,anchorPosition:o,isFirstLine:n}}function WE(e,t,n,r,i,a){let o=GE(e,t,n,r,i,a),s=e.getInjections();if(s.length===0)return o;let c=KE(s,e,t,n,r,i,a);if(!c)return o;if(!o)return c;let l=o.captureIndices[0].start,u=c.captureIndices[0].start;return u<l||c.priorityMatch&&u===l?c:o}function GE(e,t,n,r,i,a){let{ruleScanner:o,findOptions:s}=qE(i.getRule(e),e,i.endRule,n,r===a),c=o.findNextMatchSync(t,r,s);return c?{captureIndices:c.captureIndices,matchedRuleId:c.ruleId}:null}function KE(e,t,n,r,i,a,o){let s=Number.MAX_VALUE,c=null,l,u=0,d=a.contentNameScopesList.getScopeNames();for(let a=0,f=e.length;a<f;a++){let f=e[a];if(!f.matcher(d))continue;let{ruleScanner:p,findOptions:m}=qE(t.getRule(f.ruleId),t,null,r,i===o),h=p.findNextMatchSync(n,i,m);if(!h)continue;let g=h.captureIndices[0].start;if(!(g>=s)&&(s=g,c=h.captureIndices,l=h.ruleId,u=f.priority,s===i))break}return c?{priorityMatch:u===-1,captureIndices:c,matchedRuleId:l}:null}function qE(e,t,n,r,i){return BE?{ruleScanner:e.compile(t,n),findOptions:YE(r,i)}:{ruleScanner:e.compileAG(t,n,r,i),findOptions:0}}function JE(e,t,n,r,i){return BE?{ruleScanner:e.compileWhile(t,n),findOptions:YE(r,i)}:{ruleScanner:e.compileWhileAG(t,n,r,i),findOptions:0}}function YE(e,t){let n=0;return e||(n|=1),t||(n|=4),n}function XE(e,t,n,r,i,a,o){if(a.length===0)return;let s=t.content,c=Math.min(a.length,o.length),l=[],u=o[0].end;for(let t=0;t<c;t++){let c=a[t];if(c===null)continue;let d=o[t];if(d.length===0)continue;if(d.start>u)break;for(;l.length>0&&l[l.length-1].endPos<=d.start;)i.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop();if(l.length>0?i.produceFromScopes(l[l.length-1].scopes,d.start):i.produce(r,d.start),c.retokenizeCapturedWithRuleId){let t=c.getName(s,o),a=r.contentNameScopesList.pushAttributed(t,e),l=c.getContentName(s,o),u=a.pushAttributed(l,e),f=r.push(c.retokenizeCapturedWithRuleId,d.start,-1,!1,null,a,u),p=e.createOnigString(s.substring(0,d.end));HE(e,p,n&&d.start===0,d.start,f,i,!1,0),oE(p);continue}let f=c.getName(s,o);if(f!==null){let t=(l.length>0?l[l.length-1].scopes:r.contentNameScopesList).pushAttributed(f,e);l.push(new ZE(t,d.end))}}for(;l.length>0;)i.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop()}var ZE=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function QE(e,t,n,r,i,a,o,s){return new nD(e,t,n,r,i,a,o,s)}function $E(e,t,n,r,i){let a=rE(t,eD),o=NE.getCompiledRuleId(n,r,i.repository);for(let n of a)e.push({debugSelector:t,matcher:n.matcher,ruleId:o,grammar:i,priority:n.priority})}function eD(e,t){if(t.length<e.length)return!1;let n=0;return e.every(e=>{for(let r=n;r<t.length;r++)if(tD(t[r],e))return n=r+1,!0;return!1})}function tD(e,t){if(!e)return!1;if(e===t)return!0;let n=t.length;return e.length>n&&e.substr(0,n)===t&&e[n]===`.`}var nD=class{constructor(e,t,n,r,i,a,o,s){if(this._rootScopeName=e,this.balancedBracketSelectors=a,this._onigLib=s,this._basicScopeAttributesProvider=new RE(n,r),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=o,this._grammar=rD(t,null),this._injections=null,this._tokenTypeMatchers=[],i)for(let e of Object.keys(i)){let t=rE(e,eD);for(let n of t)this._tokenTypeMatchers.push({matcher:n.matcher,type:i[e]})}}_rootId;_lastRuleId;_ruleId2desc;_includedGrammars;_grammarRepository;_grammar;_injections;_basicScopeAttributesProvider;_tokenTypeMatchers;get themeProvider(){return this._grammarRepository}dispose(){for(let e of this._ruleId2desc)e&&e.dispose()}createOnigScanner(e){return this._onigLib.createOnigScanner(e)}createOnigString(e){return this._onigLib.createOnigString(e)}getMetadataForScope(e){return this._basicScopeAttributesProvider.getBasicScopeAttributes(e)}_collectInjections(){let e={lookup:e=>e===this._rootScopeName?this._grammar:this.getExternalGrammar(e),injections:e=>this._grammarRepository.injections(e)},t=[],n=this._rootScopeName,r=e.lookup(n);if(r){let e=r.injections;if(e)for(let n in e)$E(t,n,e[n],this,r);let i=this._grammarRepository.injections(n);i&&i.forEach(e=>{let n=this.getExternalGrammar(e);if(n){let e=n.injectionSelector;e&&$E(t,e,n,this,n)}})}return t.sort((e,t)=>e.priority-t.priority),t}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(e){let t=++this._lastRuleId,n=e(TE(t));return this._ruleId2desc[t]=n,n}getRule(e){return this._ruleId2desc[EE(e)]}getExternalGrammar(e,t){if(this._includedGrammars[e])return this._includedGrammars[e];if(this._grammarRepository){let n=this._grammarRepository.lookup(e);if(n)return this._includedGrammars[e]=rD(n,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,n=0){let r=this._tokenize(e,t,!1,n);return{tokens:r.lineTokens.getResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}tokenizeLine2(e,t,n=0){let r=this._tokenize(e,t,!0,n);return{tokens:r.lineTokens.getBinaryResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}_tokenize(e,t,n,r){this._rootId===-1&&(this._rootId=NE.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let i;if(!t||t===aD.NULL){i=!0;let e=this._basicScopeAttributesProvider.getDefaultAttributes(),n=this.themeProvider.getDefaults(),r=eE.set(0,e.languageId,e.tokenType,null,n.fontStyle,n.foregroundId,n.backgroundId),a=this.getRule(this._rootId).getName(null,null),o;o=a?iD.createRootAndLookUpScopeName(a,r,this):iD.createRoot(`unknown`,r),t=new aD(null,this._rootId,-1,-1,!1,null,o,o)}else i=!1,t.reset();e+=`
25
- `;let a=this.createOnigString(e),o=a.content.length,s=new sD(n,e,this._tokenTypeMatchers,this.balancedBracketSelectors),c=HE(this,a,i,0,t,s,!0,r);return oE(a),{lineLength:o,lineTokens:s,ruleStack:c.stack,stoppedEarly:c.stoppedEarly}}};function rD(e,t){return e=OT(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var iD=class e{constructor(e,t,n){this.parent=e,this.scopePath=t,this.tokenAttributes=n}static fromExtension(t,n){let r=t,i=t?.scopePath??null;for(let t of n)i=HT.push(i,t.scopeNames),r=new e(r,i,t.encodedTokenAttributes);return r}static createRoot(t,n){return new e(null,new HT(null,t),n)}static createRootAndLookUpScopeName(t,n,r){let i=r.getMetadataForScope(t),a=new HT(null,t),o=r.themeProvider.themeMatch(a);return new e(null,a,e.mergeAttributes(n,i,o))}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(` `)}equals(t){return e.equals(this,t)}static equals(e,t){do{if(e===t||!e&&!t)return!0;if(!e||!t||e.scopeName!==t.scopeName||e.tokenAttributes!==t.tokenAttributes)return!1;e=e.parent,t=t.parent}while(!0)}static mergeAttributes(e,t,n){let r=-1,i=0,a=0;return n!==null&&(r=n.fontStyle,i=n.foregroundId,a=n.backgroundId),eE.set(e,t.languageId,t.tokenType,null,r,i,a)}pushAttributed(t,n){if(t===null)return this;if(t.indexOf(` `)===-1)return e._pushAttributed(this,t,n);let r=t.split(/ /g),i=this;for(let t of r)i=e._pushAttributed(i,t,n);return i}static _pushAttributed(t,n,r){let i=r.getMetadataForScope(n),a=t.scopePath.push(n),o=r.themeProvider.themeMatch(a);return new e(t,a,e.mergeAttributes(t.tokenAttributes,i,o))}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(e){let t=[],n=this;for(;n&&n!==e;)t.push({encodedTokenAttributes:n.tokenAttributes,scopeNames:n.scopePath.getExtensionIfDefined(n.parent?.scopePath??null)}),n=n.parent;return n===e?t.reverse():void 0}},aD=class e{constructor(e,t,n,r,i,a,o,s){this.parent=e,this.ruleId=t,this.beginRuleCapturedEOL=i,this.endRule=a,this.nameScopesList=o,this.contentNameScopesList=s,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=n,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new e(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:e._equals(this,t)}static _equals(e,t){return e===t?!0:this._structuralEquals(e,t)?iD.equals(e.contentNameScopesList,t.contentNameScopesList):!1}static _structuralEquals(e,t){do{if(e===t||!e&&!t)return!0;if(!e||!t||e.depth!==t.depth||e.ruleId!==t.ruleId||e.endRule!==t.endRule)return!1;e=e.parent,t=t.parent}while(!0)}clone(){return this}static _reset(e){for(;e;)e._enterPos=-1,e._anchorPos=-1,e=e.parent}reset(){e._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,n,r,i,a,o,s){return new e(this,t,n,r,i,a,o,s)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(e){return e.getRule(this.ruleId)}toString(){let e=[];return this._writeString(e,0),`[`+e.join(`,`)+`]`}_writeString(e,t){return this.parent&&(t=this.parent._writeString(e,t)),e[t++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,t}withContentNameScopesList(e){return this.contentNameScopesList===e?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,e)}withEndRule(t){return this.endRule===t?this:new e(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(e){let t=this;for(;t&&t._enterPos===e._enterPos;){if(t.ruleId===e.ruleId)return!0;t=t.parent}return!1}toStateStackFrame(){return{ruleId:EE(this.ruleId),beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,n){let r=iD.fromExtension(t?.nameScopesList??null,n.nameScopesList);return new e(t,TE(n.ruleId),n.enterPos??-1,n.anchorPos??-1,n.beginRuleCapturedEOL,n.endRule,r,iD.fromExtension(r,n.contentNameScopesList))}},oD=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(e=>e===`*`?(this.allowAny=!0,[]):rE(e,eD).map(e=>e.matcher)),this.unbalancedBracketScopes=t.flatMap(e=>rE(e,eD).map(e=>e.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},sD=class{constructor(e,t,n,r){this.balancedBracketSelectors=r,this._emitBinaryTokens=e,this._tokenTypeOverrides=n,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let n=e?.tokenAttributes??0,r=!1;if(this.balancedBracketSelectors?.matchesAlways&&(r=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let t=e?.getScopeNames()??[];for(let e of this._tokenTypeOverrides)e.matcher(t)&&(n=eE.set(n,0,tE(e.type),null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(t))}if(r&&(n=eE.set(n,0,8,r,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===n){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(n),this._lastTokenEndIndex=t;return}let n=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:n}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let n=new Uint32Array(this._binaryTokens.length);for(let e=0,t=this._binaryTokens.length;e<t;e++)n[e]=this._binaryTokens[e];return n}},cD=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,n,r,i){if(!this._grammars.has(e)){let a=this._rawGrammars.get(e);if(!a)return null;this._grammars.set(e,QE(e,a,t,n,r,i,this,this._onigLib))}return this._grammars.get(e)}},lD=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new cD(VT.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(VT.createFromRawTheme(e,t))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(e,t,n){return this.loadGrammarWithConfiguration(e,t,{embeddedLanguages:n})}loadGrammarWithConfiguration(e,t,n){return this._loadGrammar(e,t,n.embeddedLanguages,n.tokenTypes,new oD(n.balancedBracketSelectors||[],n.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,n,r,i){let a=new uE(this._syncRegistry,e);for(;a.Q.length>0;)a.Q.map(e=>this._loadSingleGrammar(e.scopeName)),a.processQueue();return this._grammarForScopeName(e,t,n,r,i)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let n=typeof this._options.getInjections==`function`?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,n)}}addGrammar(e,t=[],n=0,r=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,n,r)}_grammarForScopeName(e,t=0,n=null,r=null,i=null){return this._syncRegistry.grammarForScopeName(e,t,n,r,i)}},uD=aD.NULL;function dD(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 fD(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function pD(e){return Array.isArray(e)?e:[e]}async function mD(e){return Promise.resolve(typeof e==`function`?e():e).then(e=>e.default||e)}function hD(e){return!e||[`plaintext`,`txt`,`text`,`plain`].includes(e)}function gD(e){return e===`ansi`||hD(e)}function _D(e){return e===`none`}function vD(e){return _D(e)}var yD=/(\r?\n)/g;function bD(e,t=!1){if(e.length===0)return[[``,0]];let n=e.split(yD),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}var xD={light:`#333333`,dark:`#bbbbbb`},SD={light:`#fffffe`,dark:`#1e1e1e`},CD=`__shiki_resolved`;function wD(e){if(e?.[CD])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`?xD.light:xD.dark,n||=t.type===`light`?SD.light:SD.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,CD,{enumerable:!1,writable:!1,value:!0}),t}async function TD(e){return[...new Set((await Promise.all(e.filter(e=>!gD(e)).map(async e=>await mD(e).then(e=>Array.isArray(e)?e:[e])))).flat())]}async function ED(e){return(await Promise.all(e.map(async e=>vD(e)?null:wD(await mD(e))))).filter(e=>!!e)}function DD(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 DT(`Circular alias \`${[...n].join(` -> `)} -> ${e}\``);n.add(e)}}return e}var OD=class extends lD{_resolver;_themes;_langs;_alias;_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;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)}getTheme(e){return typeof e==`string`?this._resolvedThemes.get(e):this.loadTheme(e)}loadTheme(e){let t=wD(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=VT.createFromRawTheme(e),this._textmateThemeCache.set(e,t)),this._syncRegistry.setTheme(t)}getGrammar(e){return e=DD(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=[...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 DT(`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))}},kD=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}},AD=0;function jD(e){AD+=1,e.warnings!==!1&&AD>=10&&AD%10==0&&console.warn(`[Shiki] ${AD} 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 DT("`engine` option is required for synchronous mode");let n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(wD),i=new OD(new kD(e.engine,n),r,n,e.langAlias),a;function o(t){return DD(t,e.langAlias)}function s(e){g();let t=i.getGrammar(typeof e==`string`?e:e.name);if(!t)throw new DT(`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 DT(`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 TD(e))}function m(...e){g();for(let t of e.flat(1))i.loadTheme(t)}async function h(...e){return g(),m(await ED(e))}function g(){if(t)throw new DT(`Shiki instance has been disposed`)}function _(){t||(t=!0,i.dispose(),--AD)}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 MD(e){e.engine||console.warn("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,n,r]=await Promise.all([ED(e.themes||[]),TD(e.langs||[]),e.engine]);return jD({...e,themes:t,langs:n,engine:r})}var ND=new WeakMap;function PD(e,t){ND.set(e,t)}function FD(e){return ND.get(e)}var ID=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(pD(n).map(e=>[e,uD])),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 LD(this._stacks[e])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function LD(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 RD(e,t){if(!(e instanceof ID))throw new DT(`Invalid grammar state`);return e.getInternalStack(t)}var zD=/,/,BD=/ /;function VD(e,t,n={}){let{theme:r=e.getLoadedThemes()[0]}=n;if(hD(e.resolveLangAlias(n.lang||`text`))||_D(r))return bD(t).map(e=>[{content:e[0],offset:e[1]}]);let{theme:i,colorMap:a}=e.setTheme(r),o=e.getLanguage(n.lang||`text`);if(n.grammarState){if(n.grammarState.lang!==o.name)throw new DT(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${o.name}"`);if(!n.grammarState.themes.includes(i.name))throw new DT(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${i.name}"`)}return UD(t,o,i,a,n)}function HD(...e){if(e.length===2)return FD(e[1]);let[t,n,r={}]=e,{lang:i=`text`,theme:a=t.getLoadedThemes()[0]}=r;if(hD(i)||_D(a))throw new DT(`Plain language does not have grammar state`);if(i===`ansi`)throw new DT(`ANSI language does not have grammar state`);let{theme:o,colorMap:s}=t.setTheme(a),c=t.getLanguage(i);return new ID(WD(n,c,o,s,r).stateStack,c.name,o.name)}function UD(e,t,n,r,i){let a=WD(e,t,n,r,i),o=new ID(a.stateStack,t.name,n.name);return PD(a.tokens,o),a.tokens}function WD(e,t,n,r,i){let a=dD(n,i),{tokenizeMaxLineLength:o=0,tokenizeTimeLimit:s=500,includeExplanation:c=!1}=i,l=bD(e),u=i.grammarState?RD(i.grammarState,n.name)??uD:i.grammarContextCode==null?uD:WD(i.grammarContextCode,t,n,r,{...i,grammarState:void 0,grammarContextCode:void 0}).stateStack,d=[],f=[];for(let e=0,i=l.length;e<i;e++){let[i,p]=l[e];if(i===``){d=[],f.push([]);continue}if(o>0&&i.length>=o){d=[],f.push([{content:i,offset:p,color:``,fontStyle:0}]);continue}let m,h,g;c&&c!==`tokenType`&&(m=t.tokenizeLine(i,u,s),h=m.tokens,g=0);let _=t.tokenizeLine2(i,u,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]:i.length;if(t===o)continue;let s=_.tokens[2*e+1],l=fD(r[eE.getForeground(s)],a),u=eE.getFontStyle(s),f={content:i.substring(t,o),offset:p+t,color:l,fontStyle:u};if(c===`tokenType`)f.type=eE.getTokenType(s);else if(c){let e=[];if(c!==`scopeName`)for(let t of n.settings){let n;switch(typeof t.scope){case`string`:n=t.scope.split(zD).map(e=>e.trim());break;case`object`:n=t.scope;break;default:continue}e.push({settings:t,selectors:n.map(e=>e.split(BD))})}f.explanation=[];let r=0;for(;t+r<o;){let t=h[g],n=i.substring(t.startIndex,t.endIndex);r+=n.length,f.explanation.push({content:n,scopes:c===`scopeName`?GD(t.scopes):KD(e,t.scopes)}),g+=1}}d.push(f)}f.push(d),d=[],u=_.ruleStack}return{tokens:f,stateStack:u}}function GD(e){return e.map(e=>({scopeName:e}))}function KD(e,t){let n=[];for(let r=0,i=t.length;r<i;r++){let i=t[r];n[r]={scopeName:i,themeMatches:YD(e,i,t.slice(0,r))}}return n}function qD(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]===`.`}function JD(e,t,n){if(!qD(e.at(-1),t))return!1;let r=e.length-2,i=n.length-1;for(;r>=0&&i>=0;)qD(e[r],n[i])&&--r,--i;return r===-1}function YD(e,t,n){let r=[];for(let{selectors:i,settings:a}of e)for(let e of i)if(JD(e,t,n)){r.push(a);break}return r}function XD(e,t,n,r=VD){let i=Object.entries(n.themes).filter(e=>e[1]).map(e=>({color:e[0],theme:e[1]})),a=i.map(i=>{let a=r(e,t,{...n,theme:i.theme});return{tokens:a,state:FD(a),theme:typeof i.theme==`string`?i.theme:i.theme.name}}),o=ZD(...a.map(e=>e.tokens)),s=o[0].map((e,t)=>e.map((e,r)=>{let a={content:e.content,variants:{},offset:e.offset};return`includeExplanation`in n&&n.includeExplanation&&(a.explanation=e.explanation),o.forEach((e,n)=>{let{content:o,explanation:s,offset:c,...l}=e[t][r];a.variants[i[n].color]=l}),a})),c=a[0].state?new ID(Object.fromEntries(a.map(e=>[e.theme,e.state?.getInternalStack(e.theme)])),a[0].state.lang):void 0;return c&&PD(s,c),s}function ZD(...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}var QD=[`area`,`base`,`basefont`,`bgsound`,`br`,`col`,`command`,`embed`,`frame`,`hr`,`image`,`img`,`input`,`keygen`,`link`,`meta`,`param`,`source`,`track`,`wbr`],$D={}.hasOwnProperty;function eO(e,t){let n=t||{};function r(t,...n){let i=r.invalid,a=r.handlers;if(t&&$D.call(t,e)){let n=String(t[e]);i=$D.call(a,n)?a[n]:r.unknown}if(i)return i.call(this,t,...n)}return r.handlers=n.handlers||{},r.invalid=n.invalid,r.unknown=n.unknown,r}var tO=/["&'<>`]/g,nO=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,rO=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,iO=/[|\\{}()[\]^$+*?.]/g,aO=new WeakMap;function oO(e,t){if(e=e.replace(t.subset?sO(t.subset):tO,r),t.subset||t.escapeOnly)return e;return e.replace(nO,n).replace(rO,r);function n(e,n,r){return t.format((e.charCodeAt(0)-55296)*1024+e.charCodeAt(1)-56320+65536,r.charCodeAt(n+2),t)}function r(e,n,r){return t.format(e.charCodeAt(0),r.charCodeAt(n+1),t)}}function sO(e){let t=aO.get(e);return t||(t=cO(e),aO.set(e,t)),t}function cO(e){let t=[],n=-1;for(;++n<e.length;)t.push(e[n].replace(iO,`\\$&`));return RegExp(`(?:`+t.join(`|`)+`)`,`g`)}var lO=/[\dA-Fa-f]/;function uO(e,t,n){let r=`&#x`+e.toString(16).toUpperCase();return n&&t&&!lO.test(String.fromCharCode(t))?r:r+`;`}var dO=/\d/;function fO(e,t,n){let r=`&#`+String(e);return n&&t&&!dO.test(String.fromCharCode(t))?r:r+`;`}var pO=`AElig.AMP.Aacute.Acirc.Agrave.Aring.Atilde.Auml.COPY.Ccedil.ETH.Eacute.Ecirc.Egrave.Euml.GT.Iacute.Icirc.Igrave.Iuml.LT.Ntilde.Oacute.Ocirc.Ograve.Oslash.Otilde.Ouml.QUOT.REG.THORN.Uacute.Ucirc.Ugrave.Uuml.Yacute.aacute.acirc.acute.aelig.agrave.amp.aring.atilde.auml.brvbar.ccedil.cedil.cent.copy.curren.deg.divide.eacute.ecirc.egrave.eth.euml.frac12.frac14.frac34.gt.iacute.icirc.iexcl.igrave.iquest.iuml.laquo.lt.macr.micro.middot.nbsp.not.ntilde.oacute.ocirc.ograve.ordf.ordm.oslash.otilde.ouml.para.plusmn.pound.quot.raquo.reg.sect.shy.sup1.sup2.sup3.szlig.thorn.times.uacute.ucirc.ugrave.uml.uuml.yacute.yen.yuml`.split(`.`),mO={nbsp:`\xA0`,iexcl:`¡`,cent:`¢`,pound:`£`,curren:`¤`,yen:`¥`,brvbar:`¦`,sect:`§`,uml:`¨`,copy:`©`,ordf:`ª`,laquo:`«`,not:`¬`,shy:`­`,reg:`®`,macr:`¯`,deg:`°`,plusmn:`±`,sup2:`²`,sup3:`³`,acute:`´`,micro:`µ`,para:`¶`,middot:`·`,cedil:`¸`,sup1:`¹`,ordm:`º`,raquo:`»`,frac14:`¼`,frac12:`½`,frac34:`¾`,iquest:`¿`,Agrave:`À`,Aacute:`Á`,Acirc:`Â`,Atilde:`Ã`,Auml:`Ä`,Aring:`Å`,AElig:`Æ`,Ccedil:`Ç`,Egrave:`È`,Eacute:`É`,Ecirc:`Ê`,Euml:`Ë`,Igrave:`Ì`,Iacute:`Í`,Icirc:`Î`,Iuml:`Ï`,ETH:`Ð`,Ntilde:`Ñ`,Ograve:`Ò`,Oacute:`Ó`,Ocirc:`Ô`,Otilde:`Õ`,Ouml:`Ö`,times:`×`,Oslash:`Ø`,Ugrave:`Ù`,Uacute:`Ú`,Ucirc:`Û`,Uuml:`Ü`,Yacute:`Ý`,THORN:`Þ`,szlig:`ß`,agrave:`à`,aacute:`á`,acirc:`â`,atilde:`ã`,auml:`ä`,aring:`å`,aelig:`æ`,ccedil:`ç`,egrave:`è`,eacute:`é`,ecirc:`ê`,euml:`ë`,igrave:`ì`,iacute:`í`,icirc:`î`,iuml:`ï`,eth:`ð`,ntilde:`ñ`,ograve:`ò`,oacute:`ó`,ocirc:`ô`,otilde:`õ`,ouml:`ö`,divide:`÷`,oslash:`ø`,ugrave:`ù`,uacute:`ú`,ucirc:`û`,uuml:`ü`,yacute:`ý`,thorn:`þ`,yuml:`ÿ`,fnof:`ƒ`,Alpha:`Α`,Beta:`Β`,Gamma:`Γ`,Delta:`Δ`,Epsilon:`Ε`,Zeta:`Ζ`,Eta:`Η`,Theta:`Θ`,Iota:`Ι`,Kappa:`Κ`,Lambda:`Λ`,Mu:`Μ`,Nu:`Ν`,Xi:`Ξ`,Omicron:`Ο`,Pi:`Π`,Rho:`Ρ`,Sigma:`Σ`,Tau:`Τ`,Upsilon:`Υ`,Phi:`Φ`,Chi:`Χ`,Psi:`Ψ`,Omega:`Ω`,alpha:`α`,beta:`β`,gamma:`γ`,delta:`δ`,epsilon:`ε`,zeta:`ζ`,eta:`η`,theta:`θ`,iota:`ι`,kappa:`κ`,lambda:`λ`,mu:`μ`,nu:`ν`,xi:`ξ`,omicron:`ο`,pi:`π`,rho:`ρ`,sigmaf:`ς`,sigma:`σ`,tau:`τ`,upsilon:`υ`,phi:`φ`,chi:`χ`,psi:`ψ`,omega:`ω`,thetasym:`ϑ`,upsih:`ϒ`,piv:`ϖ`,bull:`•`,hellip:`…`,prime:`′`,Prime:`″`,oline:`‾`,frasl:`⁄`,weierp:`℘`,image:`ℑ`,real:`ℜ`,trade:`™`,alefsym:`ℵ`,larr:`←`,uarr:`↑`,rarr:`→`,darr:`↓`,harr:`↔`,crarr:`↵`,lArr:`⇐`,uArr:`⇑`,rArr:`⇒`,dArr:`⇓`,hArr:`⇔`,forall:`∀`,part:`∂`,exist:`∃`,empty:`∅`,nabla:`∇`,isin:`∈`,notin:`∉`,ni:`∋`,prod:`∏`,sum:`∑`,minus:`−`,lowast:`∗`,radic:`√`,prop:`∝`,infin:`∞`,ang:`∠`,and:`∧`,or:`∨`,cap:`∩`,cup:`∪`,int:`∫`,there4:`∴`,sim:`∼`,cong:`≅`,asymp:`≈`,ne:`≠`,equiv:`≡`,le:`≤`,ge:`≥`,sub:`⊂`,sup:`⊃`,nsub:`⊄`,sube:`⊆`,supe:`⊇`,oplus:`⊕`,otimes:`⊗`,perp:`⊥`,sdot:`⋅`,lceil:`⌈`,rceil:`⌉`,lfloor:`⌊`,rfloor:`⌋`,lang:`〈`,rang:`〉`,loz:`◊`,spades:`♠`,clubs:`♣`,hearts:`♥`,diams:`♦`,quot:`"`,amp:`&`,lt:`<`,gt:`>`,OElig:`Œ`,oelig:`œ`,Scaron:`Š`,scaron:`š`,Yuml:`Ÿ`,circ:`ˆ`,tilde:`˜`,ensp:` `,emsp:` `,thinsp:` `,zwnj:`‌`,zwj:`‍`,lrm:`‎`,rlm:`‏`,ndash:`–`,mdash:`—`,lsquo:`‘`,rsquo:`’`,sbquo:`‚`,ldquo:`“`,rdquo:`”`,bdquo:`„`,dagger:`†`,Dagger:`‡`,permil:`‰`,lsaquo:`‹`,rsaquo:`›`,euro:`€`},hO=[`cent`,`copy`,`divide`,`gt`,`lt`,`not`,`para`,`times`],gO={}.hasOwnProperty,_O={},vO;for(vO in mO)gO.call(mO,vO)&&(_O[mO[vO]]=vO);var yO=/[^\dA-Za-z]/;function bO(e,t,n,r){let i=String.fromCharCode(e);if(gO.call(_O,i)){let e=_O[i],a=`&`+e;return n&&pO.includes(e)&&!hO.includes(e)&&(!r||t&&t!==61&&yO.test(String.fromCharCode(t)))?a:a+`;`}return``}function xO(e,t,n){let r=uO(e,t,n.omitOptionalSemicolons),i;if((n.useNamedReferences||n.useShortestReferences)&&(i=bO(e,t,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!i)&&n.useShortestReferences){let i=fO(e,t,n.omitOptionalSemicolons);i.length<r.length&&(r=i)}return i&&(!n.useShortestReferences||i.length<r.length)?i:r}function SO(e,t){return oO(e,Object.assign({format:xO},t))}var CO=/^>|^->|<!--|-->|--!>|<!-$/g,wO=[`>`],TO=[`<`,`>`];function EO(e,t,n,r){return r.settings.bogusComments?`<?`+SO(e.value,Object.assign({},r.settings.characterReferences,{subset:wO}))+`>`:`<!--`+e.value.replace(CO,i)+`-->`;function i(e){return SO(e,Object.assign({},r.settings.characterReferences,{subset:TO}))}}function DO(e,t,n,r){return`<!`+(r.settings.upperDoctype?`DOCTYPE`:`doctype`)+(r.settings.tightDoctype?``:` `)+`html>`}var OO=jO(1),kO=jO(-1),AO=[];function jO(e){return t;function t(t,n,r){let i=t?t.children:AO,a=(n||0)+e,o=i[a];if(!r)for(;o&&c(o);)a+=e,o=i[a];return o}}var MO={}.hasOwnProperty;function NO(e){return t;function t(t,n,r){return MO.call(e,t.tagName)&&e[t.tagName](t,n,r)}}var PO=NO({body:LO,caption:FO,colgroup:FO,dd:VO,dt:BO,head:FO,html:IO,li:zO,optgroup:UO,option:WO,p:RO,rp:HO,rt:HO,tbody:KO,td:YO,tfoot:qO,th:YO,thead:GO,tr:JO});function FO(e,t,n){let r=OO(n,t,!0);return!r||r.type!==`comment`&&!(r.type===`text`&&c(r.value.charAt(0)))}function IO(e,t,n){let r=OO(n,t);return!r||r.type!==`comment`}function LO(e,t,n){let r=OO(n,t);return!r||r.type!==`comment`}function RO(e,t,n){let r=OO(n,t);return r?r.type===`element`&&(r.tagName===`address`||r.tagName===`article`||r.tagName===`aside`||r.tagName===`blockquote`||r.tagName===`details`||r.tagName===`div`||r.tagName===`dl`||r.tagName===`fieldset`||r.tagName===`figcaption`||r.tagName===`figure`||r.tagName===`footer`||r.tagName===`form`||r.tagName===`h1`||r.tagName===`h2`||r.tagName===`h3`||r.tagName===`h4`||r.tagName===`h5`||r.tagName===`h6`||r.tagName===`header`||r.tagName===`hgroup`||r.tagName===`hr`||r.tagName===`main`||r.tagName===`menu`||r.tagName===`nav`||r.tagName===`ol`||r.tagName===`p`||r.tagName===`pre`||r.tagName===`section`||r.tagName===`table`||r.tagName===`ul`):!n||!(n.type===`element`&&(n.tagName===`a`||n.tagName===`audio`||n.tagName===`del`||n.tagName===`ins`||n.tagName===`map`||n.tagName===`noscript`||n.tagName===`video`))}function zO(e,t,n){let r=OO(n,t);return!r||r.type===`element`&&r.tagName===`li`}function BO(e,t,n){let r=OO(n,t);return!!(r&&r.type===`element`&&(r.tagName===`dt`||r.tagName===`dd`))}function VO(e,t,n){let r=OO(n,t);return!r||r.type===`element`&&(r.tagName===`dt`||r.tagName===`dd`)}function HO(e,t,n){let r=OO(n,t);return!r||r.type===`element`&&(r.tagName===`rp`||r.tagName===`rt`)}function UO(e,t,n){let r=OO(n,t);return!r||r.type===`element`&&r.tagName===`optgroup`}function WO(e,t,n){let r=OO(n,t);return!r||r.type===`element`&&(r.tagName===`option`||r.tagName===`optgroup`)}function GO(e,t,n){let r=OO(n,t);return!!(r&&r.type===`element`&&(r.tagName===`tbody`||r.tagName===`tfoot`))}function KO(e,t,n){let r=OO(n,t);return!r||r.type===`element`&&(r.tagName===`tbody`||r.tagName===`tfoot`)}function qO(e,t,n){return!OO(n,t)}function JO(e,t,n){let r=OO(n,t);return!r||r.type===`element`&&r.tagName===`tr`}function YO(e,t,n){let r=OO(n,t);return!r||r.type===`element`&&(r.tagName===`td`||r.tagName===`th`)}var XO=NO({body:$O,colgroup:ek,head:QO,html:ZO,tbody:tk});function ZO(e){let t=OO(e,-1);return!t||t.type!==`comment`}function QO(e){let t=new Set;for(let n of e.children)if(n.type===`element`&&(n.tagName===`base`||n.tagName===`title`)){if(t.has(n.tagName))return!1;t.add(n.tagName)}let n=e.children[0];return!n||n.type===`element`}function $O(e){let t=OO(e,-1,!0);return!t||t.type!==`comment`&&!(t.type===`text`&&c(t.value.charAt(0)))&&!(t.type===`element`&&(t.tagName===`meta`||t.tagName===`link`||t.tagName===`script`||t.tagName===`style`||t.tagName===`template`))}function ek(e,t,n){let r=kO(n,t),i=OO(e,-1,!0);return n&&r&&r.type===`element`&&r.tagName===`colgroup`&&PO(r,n.children.indexOf(r),n)?!1:!!(i&&i.type===`element`&&i.tagName===`col`)}function tk(e,t,n){let r=kO(n,t),i=OO(e,-1);return n&&r&&r.type===`element`&&(r.tagName===`thead`||r.tagName===`tbody`)&&PO(r,n.children.indexOf(r),n)?!1:!!(i&&i.type===`element`&&i.tagName===`tr`)}var nk={name:[[`
26
- \f\r &/=>`.split(``),`
27
- \f\r "&'/=>\``.split(``)],[`\0
28
- \f\r "&'/<=>`.split(``),`\0
29
- \f\r "&'/<=>\``.split(``)]],unquoted:[[`
30
- \f\r &>`.split(``),`\0
31
- \f\r "&'<=>\``.split(``)],[`\0
32
- \f\r "&'<=>\``.split(``),`\0
33
- \f\r "&'<=>\``.split(``)]],single:[[`&'`.split(``),`"&'\``.split(``)],[`\0&'`.split(``),`\0"&'\``.split(``)]],double:[[`"&`.split(``),`"&'\``.split(``)],[`\0"&`.split(``),`\0"&'\``.split(``)]]};function rk(e,t,n,r){let i=r.schema,a=i.space===`svg`?!1:r.settings.omitOptionalTags,s=i.space===`svg`?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase()),c=[],l;i.space===`html`&&e.tagName===`svg`&&(r.schema=o);let u=ik(r,e.properties),d=r.all(i.space===`html`&&e.tagName===`template`?e.content:e);return r.schema=i,d&&(s=!1),(u||!a||!XO(e,t,n))&&(c.push(`<`,e.tagName,u?` `+u:``),s&&(i.space===`svg`||r.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!r.settings.tightSelfClosing||l===`/`||l&&l!==`"`&&l!==`'`)&&c.push(` `),c.push(`/`)),c.push(`>`)),c.push(d),!s&&(!a||!PO(e,t,n))&&c.push(`</`+e.tagName+`>`),c.join(``)}function ik(e,t){let n=[],r=-1,i;if(t){for(i in t)if(t[i]!==null&&t[i]!==void 0){let r=ak(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 ak(e,t,n){let r=u(e.schema,t),i=e.settings.allowParseErrors&&e.schema.space===`html`?0:1,o=e.settings.allowDangerousCharacters?0:1,c=e.quote,d;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 f=SO(r.attribute,Object.assign({},e.settings.characterReferences,{subset:nk.name[i][o]}));return n===!0||(n=Array.isArray(n)?(r.commaSeparated?a:s)(n,{padLeft:!e.settings.tightCommaSeparatedLists}):String(n),e.settings.collapseEmptyAttributes&&!n)?f:(e.settings.preferUnquoted&&(d=SO(n,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:nk.unquoted[i][o]}))),d!==n&&(e.settings.quoteSmart&&l(n,c)>l(n,e.alternative)&&(c=e.alternative),d=c+SO(n,Object.assign({},e.settings.characterReferences,{subset:(c===`'`?nk.single:nk.double)[i][o],attribute:!0}))+c),f+(d&&`=`+d))}var ok=[`<`,`&`];function sk(e,t,n,r){return n&&n.type===`element`&&(n.tagName===`script`||n.tagName===`style`)?e.value:SO(e.value,Object.assign({},r.settings.characterReferences,{subset:ok}))}function ck(e,t,n,r){return r.settings.allowDangerousHtml?e.value:sk(e,t,n,r)}function lk(e,t,n,r){return r.all(e)}var uk=eO(`type`,{invalid:dk,unknown:fk,handlers:{comment:EO,doctype:DO,element:rk,raw:ck,root:lk,text:sk}});function dk(e){throw Error("Expected node, not `"+e+"`")}function fk(e){let t=e;throw Error("Cannot compile unknown node `"+t.type+"`")}var pk={},mk={},hk=[];function gk(e,t){let n=t||pk,r=n.quote||`"`,i=r===`"`?`'`:`"`;if(r!==`"`&&r!==`'`)throw Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:_k,all:vk,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||QD,characterReferences:n.characterReferences||mk,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space===`svg`?o:d,quote:r,alternative:i}.one(Array.isArray(e)?{type:`root`,children:e}:e,void 0,void 0)}function _k(e,t,n){return uk(e,t,n,this)}function vk(e){let t=[],n=e&&e.children||hk,r=-1;for(;++r<n.length;)t[r]=this.one(n[r],r,e);return t.join(``)}var yk=/\s+/g;function bk(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class==`string`&&(e.properties.class=e.properties.class.split(yk)),Array.isArray(e.properties.class)||(e.properties.class=[]);let n=Array.isArray(t)?t:t.split(yk);for(let t of n)t&&!e.properties.class.includes(t)&&e.properties.class.push(t);return e}var xk=/:?lang=["']([^"']+)["']/g,Sk=/(?:```|~~~)([\w-]+)/g,Ck=/\\begin\{([\w-]+)\}/g,wk=/<script\s+(?:type|lang)=["']([^"']+)["']/gi;function Tk(e){let t=bD(e,!0).map(([e])=>e);function n(n){if(n===e.length)return{line:t.length-1,character:t.at(-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 Ek(e,t,n){let r=new Set;for(let t of e.matchAll(xk)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(Sk)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(Ck)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(wk)){let e=t[1].toLowerCase().trim(),n=e.includes(`/`)?e.split(`/`).pop():e;n&&r.add(n)}if(!n)return[...r];let i=n.getBundledLanguages();return[...r].filter(e=>e&&i[e])}var Dk=[`color`,`background-color`];function Ok(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 kk(e,t){let n=[...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?Ok(e,t):e})):e}function Ak(e,t,n,r,i=`css-vars`){let a={content:e.content,explanation:e.explanation,offset:e.offset},o=t.map(t=>jk(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&&Dk.includes(a))if(r===`light-dark()`&&o.length>1){let e=t.findIndex(e=>e===`light`),r=t.findIndex(e=>e===`dark`);if(e===-1||r===-1)throw new DT('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 jk(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t[`background-color`]=e.bgColor),e.fontStyle){e.fontStyle&JT.Italic&&(t[`font-style`]=`italic`),e.fontStyle&JT.Bold&&(t[`font-weight`]=`bold`);let n=[];e.fontStyle&JT.Underline&&n.push(`underline`),e.fontStyle&JT.Strikethrough&&n.push(`line-through`),n.length&&(t[`text-decoration`]=n.join(` `))}return t}function Mk(e){return typeof e==`string`?e:Object.entries(e).map(([e,t])=>`${e}:${t}`).join(`;`)}function Nk(){let e=new WeakMap;function t(t){if(!e.has(t.meta)){let n=Tk(t.source);function r(e){if(typeof e==`number`){if(e<0||e>t.source.length)throw new DT(`Invalid decoration offset: ${e}. Code length: ${t.source.length}`);return{...n.indexToPos(e),offset:e}}else{let t=n.lines[e.line];if(t===void 0)throw new DT(`Invalid decoration position ${JSON.stringify(e)}. Lines length: ${n.lines.length}`);let r=e.character;if(r<0&&(r=t.length+r),r<0||r>t.length)throw new DT(`Invalid decoration position ${JSON.stringify(e)}. Line ${e.line} length: ${t.length}`);return{...e,character:r,offset:n.posToIndex(e.line,r)}}}let i=(t.options.decorations||[]).map(e=>({...e,start:r(e.start),end:r(e.end)}));Pk(i),e.set(t.meta,{decorations:i,converter:n,source:t.source})}return e.get(t.meta)}return{name:`shiki:decorations`,tokens(e){if(this.options.decorations?.length)return kk(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=[...e.children].filter(e=>e.type===`element`&&e.tagName===`span`);if(r.length!==n.converter.lines.length)throw new DT(`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+=Fk(a.children[e]),c===-1&&s.length===t&&(c=e+1),l===-1&&s.length===n&&(l=e+1);if(c===-1)throw new DT(`Failed to find start index for decoration ${JSON.stringify(i.start)}`);if(l===-1)throw new DT(`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&&bk(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 Pk(e){for(let t=0;t<e.length;t++){let n=e[t];if(n.start.offset>n.end.offset)throw new DT(`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 DT(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(t.start)} intersect.`)}}}}function Fk(e){return e.type===`text`?e.value:e.type===`element`?e.children.map(Fk).join(``):``}var Ik=[Nk()];function Lk(e){let t=Rk(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Ik]}function Rk(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 zk=[`black`,`red`,`green`,`yellow`,`blue`,`magenta`,`cyan`,`white`,`brightBlack`,`brightRed`,`brightGreen`,`brightYellow`,`brightBlue`,`brightMagenta`,`brightCyan`,`brightWhite`],Bk={1:`bold`,2:`dim`,3:`italic`,4:`underline`,7:`reverse`,8:`hidden`,9:`strikethrough`};function Vk(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 Hk(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 Uk(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)Bk[r]&&t.push({type:`setDecoration`,value:Bk[r]});else if(r<=29){let e=Bk[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:zk[r-30]}});else if(r===38){let n=Hk(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:zk[r-40]}});else if(r===48){let n=Hk(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:zk[r-90+8]}}):r>=100&&r<=107&&t.push({type:`setBackgroundColor`,value:{type:`named`,name:zk[r-100+8]}})}return t}function Wk(){let e=null,t=null,n=new Set;return{parse(r){let i=[],a=0;do{let o=Vk(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=Uk(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 Gk={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 Kk(e=Gk){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<zk.length;e++)r.push(t(zk[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 qk=/#([0-9a-f]{3,8})/i,Jk=/var\((--[\w-]+-ansi-[\w-]+)\)/,Yk={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 Xk(e,t,n){let r=dD(e,n),i=bD(t),a=Kk(Object.fromEntries(zk.map(t=>{let n=`terminal.ansi${t[0].toUpperCase()}${t.substring(1)}`;return[t,e.colors?.[n]||Yk[t]]}))),o=Wk();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=fD(i,r),o=fD(o,r),n.decorations.has(`dim`)&&(i=Zk(i));let s=JT.None;return n.decorations.has(`bold`)&&(s|=JT.Bold),n.decorations.has(`italic`)&&(s|=JT.Italic),n.decorations.has(`underline`)&&(s|=JT.Underline),n.decorations.has(`strikethrough`)&&(s|=JT.Strikethrough),{content:n.value,offset:t[1],color:i,bgColor:o,fontStyle:s}}))}function Zk(e){let t=e.match(qk);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(Jk);return n?`var(${n[1]}-dim)`:e}function Qk(e,t,n={}){let r=e.resolveLangAlias(n.lang||`text`),{theme:i=e.getLoadedThemes()[0]}=n;if(!hD(r)&&!_D(i)&&r===`ansi`){let{theme:r}=e.setTheme(i);return Xk(r,t,n)}return VD(e,t,n)}function $k(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 DT("`themes` option must not be empty");let p=XD(e,t,n,Qk);if(c=FD(p),l&&l!==`light-dark()`&&!f.some(e=>e.color===l))throw new DT(`\`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=>Ak(e,h,u,l,d))),c&&PD(a,c);let g=f.map(e=>dD(e.theme,n));i=eA(f,m,g,u,l,`fg`,d),r=eA(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=dD(n.theme,n);a=Qk(e,t,n);let l=e.getTheme(n.theme);r=fD(l.bg,s),i=fD(l.fg,s),o=l.name,c=FD(a)}else throw new DT("Invalid options, either `theme` or `themes` must be provided");return{tokens:a,fg:i,bg:r,themeName:o,rootStyle:s,grammarState:c}}function eA(e,t,n,r,i,a,o){return e.map((s,c)=>{let l=fD(t[c][a],n[c])||`inherit`,u=`${r+s.color}${a===`bg`?`-bg`:``}:${l}`;if(c===0&&i){if(i===`light-dark()`&&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 DT('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');return`light-dark(${fD(t[r][a],n[r])||`inherit`}, ${fD(t[i][a],n[i])||`inherit`});${u}`}return l}return o===`css-vars`?u:null}).filter(e=>!!e).join(`;`)}var tA=/^\s+$/,nA=/^(\s*)(.*?)(\s*)$/;function rA(e,t,n,r={meta:{},options:n,codeToHast:(t,n)=>rA(e,t,n),codeToTokens:(t,n)=>$k(e,t,n)}){let i=t;for(let e of Lk(n))i=e.preprocess?.call(r,i,n)||i;let{tokens:a,fg:o,bg:s,themeName:c,rootStyle:l,grammarState:u}=$k(e,i,n),{mergeWhitespaces:d=!0,mergeSameStyleTokens:f=!1}=n;d===!0?a=aA(a):d===`never`&&(a=oA(a)),f&&(a=sA(a));let p={...r,get source(){return i}};for(let e of Lk(n))a=e.tokens?.call(p,a)||a;return iA(a,{...n,fg:o,bg:s,themeName:c,rootStyle:n.rootStyle===!1?!1:n.rootStyle??l},p,u)}function iA(e,t,n,r=FD(e)){let i=Lk(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:bk,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:`
34
- `}));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=Mk(a.htmlStyle||jk(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&&PD(m,r),m}function aA(e){return e.map(e=>{let t=[],n=``,r;return e.forEach((i,a)=>{let o=!(i.fontStyle&&(i.fontStyle&JT.Underline||i.fontStyle&JT.Strikethrough));o&&tA.test(i.content)&&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 oA(e){return e.map(e=>e.flatMap(e=>{if(tA.test(e.content))return e;let t=e.content.match(nA);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 sA(e){return e.map(e=>{let t=[];for(let n of e){if(t.length===0){t.push({...n});continue}let e=t.at(-1),r=Mk(e.htmlStyle||jk(e)),i=Mk(n.htmlStyle||jk(n)),a=e.fontStyle&&(e.fontStyle&JT.Underline||e.fontStyle&JT.Strikethrough),o=n.fontStyle&&(n.fontStyle&JT.Underline||n.fontStyle&JT.Strikethrough);!a&&!o&&r===i?e.content+=n.content:t.push({...n})}return t})}var cA=gk;function lA(e,t,n){let r={meta:{},options:n,codeToHast:(t,n)=>rA(e,t,n),codeToTokens:(t,n)=>$k(e,t,n)},i=cA(rA(e,t,n,r));for(let e of Lk(n))i=e.postprocess?.call(r,i,n)||i;return i}async function uA(e){let t=await MD(e);return{getLastGrammarState:(...e)=>HD(t,...e),codeToTokensBase:(e,n)=>Qk(t,e,n),codeToTokensWithThemes:(e,n)=>XD(t,e,n),codeToTokens:(e,n)=>$k(t,e,n),codeToHast:(e,n)=>rA(t,e,n),codeToHtml:(e,n)=>lA(t,e,n),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function dA(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,gD(n))return[];let r=t[n];if(!r)throw new DT(`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(vD(e))return`none`;if(typeof e==`string`){let t=n[e];if(!t)throw new DT(`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 uA({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 fA(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 pA(e,t){let n=fA(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 mA=dA({langs:Yw,themes:Xw,engine:()=>(0,ET.createOnigurumaEngine)(H(()=>import(`./wasm-BYGI5YYa.js`),[]))}),{codeToHtml:hA,codeToHast:gA,codeToTokens:_A,codeToTokensBase:vA,codeToTokensWithThemes:yA,getSingletonHighlighter:bA,getLastGrammarState:xA}=pA(mA,{guessEmbeddedLanguages:Ek}),SA=[`github-dark-dimmed`,`github-light`,`one-dark-pro`],CA=[`javascript`,`typescript`,`tsx`,`jsx`,`json`,`shellscript`,`bash`,`python`,`go`,`rust`,`sql`,`yaml`,`markdown`,`html`,`css`,`docker`],wA={js:`javascript`,ts:`typescript`,sh:`bash`,shell:`bash`,zsh:`bash`,py:`python`,rs:`rust`,yml:`yaml`,md:`markdown`,dockerfile:`docker`,golang:`go`},TA=null,EA=null,DA=`github-dark-dimmed`,OA=DA,kA=new Set(CA),AA=new Set(SA),jA=new Map,MA=600;function NA(e,t){return`${DA}::${t}::${e}`}function PA(e,t){if(jA.size>=MA){let e=jA.keys().next().value;e!==void 0&&jA.delete(e)}jA.set(e,t)}function FA(){if(!TA){let e=OA;TA=mA({themes:SA,langs:CA}).then(async t=>{let n=typeof e==`string`?e:e.name;if(typeof n==`string`&&!AA.has(n))try{await t.loadTheme(e),AA.add(n)}catch{DA===n&&(DA=`github-dark-dimmed`)}return EA=t,t})}return TA}function IA(e,t){let n=LA(t)||`text`,r=NA(e,n),i=jA.get(r);if(i!==void 0)return i;if(!EA||n!==`text`&&!kA.has(n))return null;try{let t=EA.codeToHtml(e,{lang:n,theme:DA});return PA(r,t),t}catch{return null}}function LA(e){let t=(e||``).toLowerCase().trim();return wA[t]??t}async function RA(e,t){let n=await FA(),r=LA(t);if(r&&!kA.has(r))try{await n.loadLanguage(r),kA.add(r)}catch{r=`text`}r||=`text`;let i=n.codeToHtml(e,{lang:r,theme:DA});return PA(NA(e,r),i),i}function zA(){return DA}async function BA(e){if(OA=e,!TA){let t=typeof e==`string`?e:e.name;typeof t==`string`&&(DA=t);return}let t=await FA();if(typeof e==`string`){if(!AA.has(e))try{await t.loadTheme(e),AA.add(e)}catch{return}DA=e}else{let n=e.name;if(!n)return;if(!AA.has(n))try{await t.loadTheme(e),AA.add(n)}catch{return}DA=n}}function VA(e){return e.syntax?.shikiTheme?e.syntax.shikiTheme:e.mode===`light`?`github-light`:`github-dark-dimmed`}var HA=!1;function UA(){if(HA||typeof window>`u`)return;HA=!0,window.addEventListener(zi,e=>{let t=e.detail;t&&BA(VA(t)).then(()=>{window.dispatchEvent(new CustomEvent(`ppm:shiki-theme-change`))})});let e=Ri();e&&BA(VA(e)).then(()=>{window.dispatchEvent(new CustomEvent(`ppm:shiki-theme-change`))})}function WA(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function GA(e){if(Array.isArray(e))return e}function KA(e,t,n){return(t=tj(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function qA(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t!==0)for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function JA(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
35
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function YA(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function XA(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?YA(Object(n),!0).forEach(function(t){KA(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):YA(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function ZA(e,t){if(e==null)return{};var n,r,i=QA(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function QA(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function $A(e,t){return GA(e)||qA(e,t)||nj(e,t)||JA()}function ej(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function tj(e){var t=ej(e,`string`);return typeof t==`symbol`?t:t+``}function nj(e,t){if(e){if(typeof e==`string`)return WA(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?WA(e,t):void 0}}function rj(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ij(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function aj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?ij(Object(n),!0).forEach(function(t){rj(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ij(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function oj(){var e=[...arguments];return function(t){return e.reduceRight(function(e,t){return t(e)},t)}}function sj(e){return function t(){var n=this,r=[...arguments];return r.length>=e.length?e.apply(this,r):function(){var e=[...arguments];return t.apply(n,[].concat(r,e))}}}function cj(e){return{}.toString.call(e).includes(`Object`)}function lj(e){return!Object.keys(e).length}function uj(e){return typeof e==`function`}function dj(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function fj(e,t){return cj(t)||_j(`changeType`),Object.keys(t).some(function(t){return!dj(e,t)})&&_j(`changeField`),t}function pj(e){uj(e)||_j(`selectorType`)}function mj(e){uj(e)||cj(e)||_j(`handlerType`),cj(e)&&Object.values(e).some(function(e){return!uj(e)})&&_j(`handlersType`)}function hj(e){e||_j(`initialIsRequired`),cj(e)||_j(`initialType`),lj(e)&&_j(`initialContent`)}function gj(e,t){throw Error(e[t]||e.default)}var _j=sj(gj)({initialIsRequired:`initial state is required`,initialType:`initial state should be an object`,initialContent:`initial state shouldn't be an empty object`,handlerType:`handler should be an object or a function`,handlersType:`all handlers should be a functions`,selectorType:`selector should be a function`,changeType:`provided value of changes should be an object`,changeField:`it seams you want to change a field in the state which is not specified in the "initial" state`,default:"an unknown error accured in `state-local` package"}),vj={changes:fj,selector:pj,handler:mj,initial:hj};function yj(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};vj.initial(e),vj.handler(t);var n={current:e},r=sj(Sj)(n,t),i=sj(xj)(n),a=sj(vj.changes)(e),o=sj(bj)(n);function s(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(e){return e};return vj.selector(e),e(n.current)}function c(e){oj(r,i,a,o)(e)}return[s,c]}function bj(e,t){return uj(t)?t(e.current):t}function xj(e,t){return e.current=aj(aj({},e.current),t),t}function Sj(e,t,n){return uj(t)?t(e.current):Object.keys(n).forEach(function(n){return t[n]?.call(t,e.current[n])}),n}var Cj={create:yj},wj={paths:{vs:`https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs`}};function Tj(e){return function t(){var n=this,r=[...arguments];return r.length>=e.length?e.apply(this,r):function(){var e=[...arguments];return t.apply(n,[].concat(r,e))}}}function Ej(e){return{}.toString.call(e).includes(`Object`)}function Dj(e){return e||jj(`configIsRequired`),Ej(e)||jj(`configType`),e.urls?(Oj(),{paths:{vs:e.urls.monacoBase}}):e}function Oj(){console.warn(Aj.deprecation)}function kj(e,t){throw Error(e[t]||e.default)}var Aj={configIsRequired:`the configuration object is required`,configType:`the configuration object should be an object`,default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:`Deprecation warning!
36
- You are using deprecated way of configuration.
37
-
38
- Instead of using
39
- monaco.config({ urls: { monacoBase: '...' } })
40
- use
41
- monaco.config({ paths: { vs: '...' } })
42
-
43
- For more please check the link https://github.com/suren-atoyan/monaco-loader#config
44
- `},jj=Tj(kj)(Aj),Mj={config:Dj},Nj=function(){var e=[...arguments];return function(t){return e.reduceRight(function(e,t){return t(e)},t)}};function Pj(e,t){return Object.keys(t).forEach(function(n){t[n]instanceof Object&&e[n]&&Object.assign(t[n],Pj(e[n],t[n]))}),XA(XA({},e),t)}var Fj={type:`cancelation`,msg:`operation is manually canceled`};function Ij(e){var t=!1,n=new Promise(function(n,r){e.then(function(e){return t?r(Fj):n(e)}),e.catch(r)});return n.cancel=function(){return t=!0},n}var Lj=[`monaco`],Rj=$A(Cj.create({config:wj,isInitialized:!1,resolve:null,reject:null,monaco:null}),2),zj=Rj[0],Bj=Rj[1];function Vj(e){var t=Mj.config(e),n=t.monaco,r=ZA(t,Lj);Bj(function(e){return{config:Pj(e.config,r),monaco:n}})}function Hj(){var e=zj(function(e){return{monaco:e.monaco,isInitialized:e.isInitialized,resolve:e.resolve}});if(!e.isInitialized){if(Bj({isInitialized:!0}),e.monaco)return e.resolve(e.monaco),Ij(Yj);if(window.monaco&&window.monaco.editor)return qj(window.monaco),e.resolve(window.monaco),Ij(Yj);Nj(Uj,Gj)(Kj)}return Ij(Yj)}function Uj(e){return document.body.appendChild(e)}function Wj(e){var t=document.createElement(`script`);return e&&(t.src=e),t}function Gj(e){var t=zj(function(e){return{config:e.config,reject:e.reject}}),n=Wj(`${t.config.paths.vs}/loader.js`);return n.onload=function(){return e()},n.onerror=t.reject,n}function Kj(){var e=zj(function(e){return{config:e.config,resolve:e.resolve,reject:e.reject}}),t=window.require;t.config(e.config),t([`vs/editor/editor.main`],function(t){var n=t.m||t;qj(n),e.resolve(n)},function(t){e.reject(t)})}function qj(e){zj().monaco||Bj({monaco:e})}function Jj(){return zj(function(e){return e.monaco})}var Yj=new Promise(function(e,t){return Bj({resolve:e,reject:t})}),Xj={config:Vj,init:Hj,__getMonacoInstance:Jj},Zj={wrapper:{display:`flex`,position:`relative`,textAlign:`initial`},fullWidth:{width:`100%`},hide:{display:`none`}},Qj={container:{display:`flex`,height:`100%`,width:`100%`,justifyContent:`center`,alignItems:`center`}};function $j({children:e}){return Y.createElement(`div`,{style:Qj.container},e)}var eM=$j;function tM({width:e,height:t,isEditorReady:n,loading:r,_ref:i,className:a,wrapperProps:o}){return Y.createElement(`section`,{style:{...Zj.wrapper,width:e,height:t},...o},!n&&Y.createElement(eM,null,r),Y.createElement(`div`,{ref:i,style:{...Zj.fullWidth,...!n&&Zj.hide},className:a}))}var nM=(0,Y.memo)(tM);function rM(e){(0,Y.useEffect)(e,[])}var iM=rM;function aM(e,t,n=!0){let r=(0,Y.useRef)(!0);(0,Y.useEffect)(r.current||!n?()=>{r.current=!1}:e,t)}var oM=aM;function sM(){}function cM(e,t,n,r){return lM(e,r)||uM(e,t,n,r)}function lM(e,t){return e.editor.getModel(dM(e,t))}function uM(e,t,n,r){return e.editor.createModel(t,n,r?dM(e,r):void 0)}function dM(e,t){return e.Uri.parse(t)}function fM({original:e,modified:t,language:n,originalLanguage:r,modifiedLanguage:i,originalModelPath:a,modifiedModelPath:o,keepCurrentOriginalModel:s=!1,keepCurrentModifiedModel:c=!1,theme:l=`light`,loading:u=`Loading...`,options:d={},height:f=`100%`,width:p=`100%`,className:m,wrapperProps:h={},beforeMount:g=sM,onMount:_=sM}){let[v,y]=(0,Y.useState)(!1),[b,x]=(0,Y.useState)(!0),S=(0,Y.useRef)(null),C=(0,Y.useRef)(null),w=(0,Y.useRef)(null),T=(0,Y.useRef)(_),E=(0,Y.useRef)(g),D=(0,Y.useRef)(!1);iM(()=>{let e=Xj.init();return e.then(e=>(C.current=e)&&x(!1)).catch(e=>e?.type!==`cancelation`&&console.error(`Monaco initialization: error:`,e)),()=>S.current?A():e.cancel()}),oM(()=>{if(S.current&&C.current){let t=S.current.getOriginalEditor(),i=cM(C.current,e||``,r||n||`text`,a||``);i!==t.getModel()&&t.setModel(i)}},[a],v),oM(()=>{if(S.current&&C.current){let e=S.current.getModifiedEditor(),r=cM(C.current,t||``,i||n||`text`,o||``);r!==e.getModel()&&e.setModel(r)}},[o],v),oM(()=>{let e=S.current.getModifiedEditor();e.getOption(C.current.editor.EditorOption.readOnly)?e.setValue(t||``):t!==e.getValue()&&(e.executeEdits(``,[{range:e.getModel().getFullModelRange(),text:t||``,forceMoveMarkers:!0}]),e.pushUndoStop())},[t],v),oM(()=>{S.current?.getModel()?.original.setValue(e||``)},[e],v),oM(()=>{let{original:e,modified:t}=S.current.getModel();C.current.editor.setModelLanguage(e,r||n||`text`),C.current.editor.setModelLanguage(t,i||n||`text`)},[n,r,i],v),oM(()=>{C.current?.editor.setTheme(l)},[l],v),oM(()=>{S.current?.updateOptions(d)},[d],v);let O=(0,Y.useCallback)(()=>{if(!C.current)return;E.current(C.current);let s=cM(C.current,e||``,r||n||`text`,a||``),c=cM(C.current,t||``,i||n||`text`,o||``);S.current?.setModel({original:s,modified:c})},[n,t,i,e,r,a,o]),k=(0,Y.useCallback)(()=>{!D.current&&w.current&&(S.current=C.current.editor.createDiffEditor(w.current,{automaticLayout:!0,...d}),O(),C.current?.editor.setTheme(l),y(!0),D.current=!0)},[d,l,O]);(0,Y.useEffect)(()=>{v&&T.current(S.current,C.current)},[v]),(0,Y.useEffect)(()=>{!b&&!v&&k()},[b,v,k]);function A(){let e=S.current?.getModel();s||e?.original?.dispose(),c||e?.modified?.dispose(),S.current?.dispose()}return Y.createElement(nM,{width:p,height:f,isEditorReady:v,loading:u,_ref:w,className:m,wrapperProps:h})}var pM=(0,Y.memo)(fM);function mM(e){let t=(0,Y.useRef)();return(0,Y.useEffect)(()=>{t.current=e},[e]),t.current}var hM=mM,gM=new Map;function _M({defaultValue:e,defaultLanguage:t,defaultPath:n,value:r,language:i,path:a,theme:o=`light`,line:s,loading:c=`Loading...`,options:l={},overrideServices:u={},saveViewState:d=!0,keepCurrentModel:f=!1,width:p=`100%`,height:m=`100%`,className:h,wrapperProps:g={},beforeMount:_=sM,onMount:v=sM,onChange:y,onValidate:b=sM}){let[x,S]=(0,Y.useState)(!1),[C,w]=(0,Y.useState)(!0),T=(0,Y.useRef)(null),E=(0,Y.useRef)(null),D=(0,Y.useRef)(null),O=(0,Y.useRef)(v),k=(0,Y.useRef)(_),A=(0,Y.useRef)(),ee=(0,Y.useRef)(r),j=hM(a),te=(0,Y.useRef)(!1),M=(0,Y.useRef)(!1);iM(()=>{let e=Xj.init();return e.then(e=>(T.current=e)&&w(!1)).catch(e=>e?.type!==`cancelation`&&console.error(`Monaco initialization: error:`,e)),()=>E.current?P():e.cancel()}),oM(()=>{let o=cM(T.current,e||r||``,t||i||``,a||n||``);o!==E.current?.getModel()&&(d&&gM.set(j,E.current?.saveViewState()),E.current?.setModel(o),d&&E.current?.restoreViewState(gM.get(a)))},[a],x),oM(()=>{E.current?.updateOptions(l)},[l],x),oM(()=>{!E.current||r===void 0||(E.current.getOption(T.current.editor.EditorOption.readOnly)?E.current.setValue(r):r!==E.current.getValue()&&(M.current=!0,E.current.executeEdits(``,[{range:E.current.getModel().getFullModelRange(),text:r,forceMoveMarkers:!0}]),E.current.pushUndoStop(),M.current=!1))},[r],x),oM(()=>{let e=E.current?.getModel();e&&i&&T.current?.editor.setModelLanguage(e,i)},[i],x),oM(()=>{s!==void 0&&E.current?.revealLine(s)},[s],x),oM(()=>{T.current?.editor.setTheme(o)},[o],x);let N=(0,Y.useCallback)(()=>{if(!(!D.current||!T.current)&&!te.current){k.current(T.current);let c=a||n,f=cM(T.current,r||e||``,t||i||``,c||``);E.current=T.current?.editor.create(D.current,{model:f,automaticLayout:!0,...l},u),d&&E.current.restoreViewState(gM.get(c)),T.current.editor.setTheme(o),s!==void 0&&E.current.revealLine(s),S(!0),te.current=!0}},[e,t,n,r,i,a,l,u,d,o,s]);(0,Y.useEffect)(()=>{x&&O.current(E.current,T.current)},[x]),(0,Y.useEffect)(()=>{!C&&!x&&N()},[C,x,N]),ee.current=r,(0,Y.useEffect)(()=>{x&&y&&(A.current?.dispose(),A.current=E.current?.onDidChangeModelContent(e=>{M.current||y(E.current.getValue(),e)}))},[x,y]),(0,Y.useEffect)(()=>{if(x){let e=T.current.editor.onDidChangeMarkers(e=>{let t=E.current.getModel()?.uri;if(t&&e.find(e=>e.path===t.path)){let e=T.current.editor.getModelMarkers({resource:t});b?.(e)}});return()=>{e?.dispose()}}return()=>{}},[x,b]);function P(){A.current?.dispose(),f?d&&gM.set(a,E.current.saveViewState()):E.current.getModel()?.dispose(),E.current.dispose()}return Y.createElement(nM,{width:p,height:m,isEditorReady:x,loading:c,_ref:D,className:h,wrapperProps:g})}var vM=(0,Y.memo)(_M),yM={type:`4EC9B0`,function:`DCDCAA`,variable:`9CDCFE`,constant:`4FC1FF`,keyword:`569CD6`},bM={type:`267F99`,function:`795E26`,variable:`001080`,constant:`0070C1`,keyword:`0000FF`};function xM(e){let t=e===`dark`?yM:bM;return[{token:`namespace`,foreground:t.type},{token:`type`,foreground:t.type},{token:`class`,foreground:t.type},{token:`enum`,foreground:t.type},{token:`interface`,foreground:t.type},{token:`struct`,foreground:t.type},{token:`typeParameter`,foreground:t.type},{token:`function`,foreground:t.function},{token:`method`,foreground:t.function},{token:`member`,foreground:t.function},{token:`macro`,foreground:t.function},{token:`decorator`,foreground:t.function},{token:`variable`,foreground:t.variable},{token:`parameter`,foreground:t.variable},{token:`property`,foreground:t.variable},{token:`event`,foreground:t.variable},{token:`enumMember`,foreground:t.constant},{token:`variable.readonly`,foreground:t.constant},{token:`property.readonly`,foreground:t.constant},{token:`modifier`,foreground:t.keyword}]}var SM={inserted:`6A9955`,deleted:`CE9178`,header:`569CD6`},CM={inserted:`098658`,deleted:`A31515`,header:`0000FF`};function wM(e){let t=e===`dark`?SM:CM;return[{token:`inserted`,foreground:t.inserted},{token:`deleted`,foreground:t.deleted},{token:`meta.diff.header`,foreground:t.header},{token:`meta.diff.range`,foreground:t.header}]}function TM(e){return`ppm-${e.id}`}function EM(e,t){return/^#[0-9a-fA-F]{6}$/.test(e)?e+t:e}function DM(e){let t=e.tokens;return{"editor.background":t.bgSolid,"editor.foreground":t.text,"editorLineNumber.foreground":t.text3,"editorLineNumber.activeForeground":t.text2,"editorCursor.foreground":t.accent,"editor.selectionBackground":EM(t.accent,`33`),"editor.lineHighlightBackground":EM(t.accent,`12`),"editorWidget.background":t.bgSolid,"editorGutter.background":t.bgSolid,"editorIndentGuide.background1":EM(t.text3,`40`),"editorWhitespace.foreground":EM(t.text3,`40`),...e.editor?.colors}}Xj.config({paths:{vs:`/assets/monaco/vs`}});var OM=null;function kM(e,t){let n=TM(t);return e.editor.defineTheme(n,{base:t.mode===`dark`?`vs-dark`:`vs`,inherit:!0,rules:[...xM(t.mode),...wM(t.mode),...t.editor?.rules??[]],colors:DM(t)}),n}function AM(){let e=V.getState();return Ri()??Ta(e.themeStyle,e.themeMode,e.customThemes,e.customThemeId)}var jM=!1;function MM(){OM&&OM.editor.setTheme(kM(OM,AM()))}function NM(e){OM=e,PM(),MM()}function PM(){jM||typeof window>`u`||(jM=!0,window.addEventListener(zi,MM))}var FM=30*6e4,IM=new Map,LM=new Map,RM=new Set,zM=(e,t=`claude`)=>JSON.stringify([e,t]);function BM(e,t=`claude`){return IM.get(zM(e,t))?.data??LM.get(t)}function VM(e){return RM.add(e),()=>{RM.delete(e)}}function HM(e,t,n){let r=new URLSearchParams({providerId:t});return n&&r.set(`sessionId`,n),B.get(`${z(e)}/chat/slash-items?${r}`).then(e=>({items:e.items??[],recentNames:e.recentNames??[]}))}function UM(e,t,n,r){let i=r.then(r=>(IM.get(e)===t&&(t.data=r,t.expiresAt=Date.now()+FM,LM.set(n,{items:r.items.filter(e=>e.scope!==`project`),recentNames:[]}),RM.forEach(e=>e())),r)).finally(()=>{t.promise===i&&(t.promise=void 0)});return t.promise=i,i}function WM(e,t=`claude`,n){let r=zM(e,t),i=IM.get(r);if(i?.promise)return i.promise;if(i?.data&&Date.now()<i.expiresAt)return Promise.resolve(i.data);let a=i??{expiresAt:0};return i||IM.set(r,a),UM(r,a,t,HM(e,t,n))}function GM(e,t,n){let r=zM(e,t),i=IM.get(r);if(i?.promise||i?.data&&Date.now()<i.expiresAt)return;let a=i??{expiresAt:0};i||IM.set(r,a),UM(r,a,t,n.then(n=>n??HM(e,t)))}function KM(e,t,n){let r=zM(e.name,t);IM.set(r,{data:n,expiresAt:Date.now()+FM}),LM.set(t,{items:n.items.filter(e=>e.scope!==`project`),recentNames:[]}),RM.forEach(e=>e()),Zn(tr($n(e),t),n)}function qM(e){if(!e){IM.clear(),LM.clear();return}for(let[e,t]of IM)IM.set(e,{data:t.data,expiresAt:0})}async function JM(e,t){let n=await Qn(tr($n(e),t));if(!n||!Array.isArray(n.data?.items))return;let r=zM(e.name,t),i=IM.get(r);if(i?.data)return;let a=n.at+FM;i?(i.data=n.data,i.expiresAt=a):IM.set(r,{data:n.data,expiresAt:a}),RM.forEach(e=>e())}rr(async e=>{let t=new Set([`claude`,or()?.default_provider??`claude`]);await Promise.all([...t].map(t=>JM(e,t)))}),nr(()=>{IM.clear(),LM.clear()});var YM=`#3b82f6`,XM=`#f59e0b`,ZM=`#ef4444`;function QM(e){return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
45
- <rect width="32" height="32" rx="6" fill="${YM}"/>
46
- <text x="16" y="22" text-anchor="middle" font-family="system-ui,sans-serif" font-weight="700" font-size="11" fill="white">PPM</text>
47
- ${e?`<circle cx="26" cy="6" r="5" fill="${ZM}"/>`:``}
48
- </svg>`}function $M(e,t){return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
49
- <rect width="32" height="32" rx="6" fill="${XM}"/>
50
- ${[10,16,22].map((t,n)=>`<circle cx="${t}" cy="${n===e?13:17}" r="3" fill="white"/>`).join(``)}
51
- ${t?`<circle cx="26" cy="6" r="5" fill="${ZM}"/>`:``}
52
- </svg>`}var eN=e=>`data:image/svg+xml,${encodeURIComponent(e)}`,tN=[eN(QM(!1)),eN(QM(!0))],nN=[0,1,2,-1].map(e=>[eN($M(e,!1)),eN($M(e,!0))]),rN=nN.length;function iN(e,t=null){let n=document.getElementById(`ppm-favicon`);if(!n)return;let r=e?1:0;t===null?n.href=tN[r]:n.href=nN[(t%rN+rN)%rN][r]}function aN(e,t,n){let r=[t,n||null,`PPM`].filter(Boolean).join(` - `);return e>0?`(${e}) ${r}`:r}function oN(){let e=G(e=>e.activeProject),t=V(e=>e.deviceName),n=e?.name,r=Ii(Ai(n)),i=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{let e=()=>Qs(n)(Xs.getState()),a=()=>e()>0,o=()=>{document.title=aN(e(),n,t??void 0)};if(o(),r){let e=0;iN(a(),e),i.current=setInterval(()=>{e=(e+1)%rN,iN(a(),e)},300)}else iN(a());let s=Xs.subscribe(()=>{o(),r||iN(a())});return()=>{s(),i.current&&=(clearInterval(i.current),null)}},[n,t,r])}function sN(){return typeof navigator<`u`&&`wakeLock`in navigator?`ok`:typeof window<`u`&&window.isSecureContext===!1?`insecure`:`unsupported`}function cN(e){let t=null,n=!1,r=!1,i=async()=>{if(!(n||t||r||!e.isVisible())){r=!0;try{let r=await e.request();if(n){r.release().catch(()=>{});return}t=r,r.addEventListener(`release`,()=>{t===r&&(t=null),n||e.onActive(!1)}),e.onActive(!0)}catch{e.onActive(!1)}finally{r=!1}}},a=e.onVisibilityChange(()=>{if(e.isVisible()){i();return}t=null,e.onActive(!1)});return i(),()=>{n=!0,a(),e.onActive(!1);let r=t;t=null,r&&r.release().catch(()=>{})}}function lN(){let e=Ii(e=>e.sessions.size>0),t=V(e=>e.keepScreenAwake);(0,Y.useEffect)(()=>{if(!t||!e||sN()!==`ok`)return;let n=navigator.wakeLock;return cN({request:()=>n.request(`screen`),isVisible:()=>document.visibilityState===`visible`,onVisibilityChange:e=>(document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)),onActive:e=>nx.getState().setActive(e)})},[t,e])}var uN=`chat`;function dN(e,t,n){if(n<=0)return[];let r=[];for(let n of Object.values(e)){let e=new Map(n.tabs.map(e=>[e.id,e.type])),i=new Set,a=[],o=n.tabHistory??[];for(let n=o.length-1;n>=0;n--){let r=o[n];i.has(r)||t.has(r)||e.get(r)===uN&&(i.add(r),a.push(r))}a.length>0&&r.push(a)}let i=[],a=new Set;for(let e=0;i.length<n;e++){let t=!1;for(let o of r){if(i.length>=n)break;let r=o[e];r!==void 0&&(t=!0,!a.has(r)&&(a.add(r),i.push(r)))}if(!t)break}return i}var fN=3,pN=2500,mN=1200;function hN(e,t){let n,r=window,i=setTimeout(()=>{r.requestIdleCallback?n=r.requestIdleCallback(e,{timeout:2e3}):e()},t);return{cancel:()=>{clearTimeout(i),n!==void 0&&r.cancelIdleCallback?.(n)}}}function gN(){let e=hi();(0,Y.useEffect)(()=>{if(e)return;let t=!1,n=fN,r=null,i=()=>{r?.cancel(),r=null},a=()=>{if(r=null,t||n<=0)return;let{panels:e}=W.getState(),{mounted:i,mount:a}=Tu.getState(),[s]=dN(e,i,1);s&&(a(s),n--,o(mN))},o=e=>{t||n<=0||(i(),r=hN(a,e))},s=W.subscribe((e,t)=>{if(e.panels!==t.panels){for(let n of Object.keys(e.panels))if(n in t.panels&&e.panels[n]?.activeTabId!==t.panels[n]?.activeTabId){o(pN);return}}});return o(pN),()=>{t=!0,i(),s()}},[e,W(e=>e.currentProject)])}function _N(){(0,Y.useEffect)(()=>{let e=e=>{let t=e.detail?.projectName,n=di.getState();t&&t===n.indexProjectName&&n.invalidateIndex()};window.addEventListener(`file:changed`,e);let t=Nf(e=>{let t=di.getState(),n=G.getState().projects.find(e=>e.name===t.indexProjectName);n&&ci(n.path,e)!==null&&t.invalidateIndex()}),n=G.subscribe((e,t)=>{e.activeProject?.name!==t.activeProject?.name&&di.getState().reset()});return()=>{window.removeEventListener(`file:changed`,e),t(),n()}},[])}var vN=3e4,yN=1e3,bN=class{ws=null;url;handlers=[];reconnectAttempts=0;reconnectTimer=null;intentionalClose=!1;pendingMessages=[];visibilityHandler=null;idleTimer=null;lastReceivedAt=0;connected=!1;constructor(e,t={}){this.options=t,this.url=e,this.visibilityHandler=()=>{let e=this.ws?.readyState,t=!!this.options.idleTimeoutMs&&Date.now()-this.lastReceivedAt>=this.options.idleTimeoutMs;document.visibilityState===`visible`&&!this.intentionalClose&&(t||e!==WebSocket.OPEN&&e!==WebSocket.CONNECTING)&&(this.reconnectAttempts=0,this.connect())},document.addEventListener(`visibilitychange`,this.visibilityHandler)}connect(){this.intentionalClose=!1,this.reconnectTimer&&clearTimeout(this.reconnectTimer),this.reconnectTimer=null,this.cleanup();let e=window.location.protocol===`https:`?`wss:`:`ws:`,t=this.url.startsWith(`ws`)?this.url:Ea(this.url),n;n=t.startsWith(`ws`)?t:`${e}//${window.location.host}${t}`,this.ws=new WebSocket(n),this.lastReceivedAt=Date.now(),this.armIdleCheck(),this.ws.onopen=()=>{this.reconnectAttempts=0,this.lastReceivedAt=Date.now(),this.setConnected(!0);try{this.ws?.send(JSON.stringify({type:`ready`}))}catch{}if(this.pendingMessages.length>0){console.log(`[ws] flushing ${this.pendingMessages.length} queued message(s)`);for(let e of this.pendingMessages)try{this.ws?.send(e)}catch{}this.pendingMessages=[]}},this.ws.onmessage=e=>{this.lastReceivedAt=Date.now();for(let t of this.handlers)t(e)},this.ws.onclose=()=>{this.clearIdleCheck(),this.setConnected(!1),this.intentionalClose||this.scheduleReconnect()},this.ws.onerror=()=>{this.ws?.close()}}disconnect(){this.intentionalClose=!0,this.pendingMessages=[],this.cleanup(),this.reconnectTimer&&=(clearTimeout(this.reconnectTimer),null),this.visibilityHandler&&=(document.removeEventListener(`visibilitychange`,this.visibilityHandler),null)}send(e){this.ws?.readyState===WebSocket.OPEN?this.ws.send(e):this.intentionalClose?console.warn(`[ws] message dropped — WS intentionally closed`):(console.warn(`[ws] WS not open (readyState=${this.ws?.readyState??`no-ws`}) — queuing message`),this.pendingMessages.push(e))}onMessage(e){return this.handlers.push(e),()=>{this.handlers=this.handlers.filter(t=>t!==e)}}get isConnected(){return this.ws?.readyState===WebSocket.OPEN}cleanup(){this.clearIdleCheck(),this.setConnected(!1),this.ws&&=(this.ws.onopen=null,this.ws.onclose=null,this.ws.onmessage=null,this.ws.onerror=null,(this.ws.readyState===WebSocket.OPEN||this.ws.readyState===WebSocket.CONNECTING)&&this.ws.close(),null)}scheduleReconnect(){this.reconnectTimer&&clearTimeout(this.reconnectTimer);let e=Math.min(yN*2**this.reconnectAttempts,vN);this.reconnectAttempts++,this.reconnectTimer=setTimeout(()=>this.connect(),e)}setConnected(e){this.connected!==e&&(this.connected=e,this.options.onConnectionChange?.(e))}clearIdleCheck(){this.idleTimer&&clearTimeout(this.idleTimer),this.idleTimer=null}armIdleCheck(){this.clearIdleCheck();let e=this.options.idleTimeoutMs;if(!e||e<=0||!Number.isFinite(e))return;let t=Math.max(0,e-(Date.now()-this.lastReceivedAt));this.idleTimer=setTimeout(()=>{this.idleTimer=null,!this.intentionalClose&&(Date.now()-this.lastReceivedAt>=e?this.connect():this.armIdleCheck())},t)}};async function xN(){try{let e=await B.get(`/api/chat/sessions/running`);Ii.getState().replaceAllStreaming(e)}catch{}}var SN=null,CN=new Set;function wN(e){SN=e}function TN(e){return SN?.isConnected?(SN.send(e),!0):!1}function EN(e){return CN.add(e),()=>CN.delete(e)}function DN(){for(let e of CN)e()}var ON=2e4,kN=45e3;function AN(e,t){let n=(0,Y.useRef)(null),r=(0,Y.useRef)(t);r.current=t,(0,Y.useEffect)(()=>{if(!e)return;let t=er(),i=new bN(`/ws/global${t?`?token=${encodeURIComponent(t)}`:``}`,{idleTimeoutMs:kN});n.current=i,wN(i);let a=i.onMessage(e=>{let t;try{t=JSON.parse(e.data)}catch{return}let n=t.type;if(typeof n==`string`){if(n===`global_ready`){r.current&&i.send(JSON.stringify({type:`watch`,projectName:r.current})),xN(),Vr(),DN();return}if(n===`file:changed`){window.dispatchEvent(new CustomEvent(`file:changed`,{detail:t}));return}if(n===`session:unread_changed`){let e=t;Xs.getState().handleUnreadChanged(e.sessionId,e.unreadCount,e.unreadType,e.projectName,e.sessionTitle,e.manual);return}if(n===`session:phase_changed`){let e=t;Ii.getState().setStreaming(e.sessionId,e.phase!==`idle`,e.projectName);return}if(n===`session:migrated`){let e=t;Ii.getState().dropSession(e.oldSessionId);return}(n.startsWith(`jira:`)||n.startsWith(`tunnel:`)||n.startsWith(`design:`)||n.startsWith(`agent-transcript:`)||n===`agent-activity`)&&window.dispatchEvent(new CustomEvent(n,{detail:t}))}});i.connect();let o=setInterval(()=>{TN(JSON.stringify({type:`ping`}))},ON);return()=>{clearInterval(o),a(),i.disconnect(),n.current=null,wN(null)}},[e]),(0,Y.useEffect)(()=>{!e||!t||(n.current?.send(JSON.stringify({type:`watch`,projectName:t})),xN())},[e,t])}var jN=15e3,MN=lr((e,t)=>({isDown:!1,downSince:null,showOverlay:!1,markDown:()=>{let{downSince:n}=t(),r=Date.now(),i=n??r;e({isDown:!0,downSince:i,showOverlay:r-i>=jN})},markUp:()=>{e({isDown:!1,downSince:null,showOverlay:!1})}})),NN=1e4,PN=2e3;function FN(){(0,Y.useEffect)(()=>{let e=!1,t,{markDown:n,markUp:r}=MN.getState();async function i(){try{let t=await fetch(`/api/health`,{cache:`no-store`});if(t.ok&&e){if(r(),`caches`in window){let e=await caches.keys();await Promise.all(e.map(e=>caches.delete(e)))}window.location.reload();return}t.ok&&r(),e=!1}catch{e=!0,n()}t=setTimeout(i,e?PN:NN)}return t=setTimeout(i,NN),()=>clearTimeout(t)},[])}var IN=`(pointer: coarse) and (hover: none)`;function LN(){return typeof window<`u`&&window.matchMedia?window.matchMedia(IN):null}function RN(e){let t=LN();return t?.addEventListener?.(`change`,e),()=>t?.removeEventListener?.(`change`,e)}function zN(){return LN()?.matches??!1}function BN(){return!1}function VN(){return(0,Y.useSyncExternalStore)(RN,zN,BN)}function HN(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t>=0?e.slice(t+1):e}function UN(e,t){let n=0,r=0,i=-1;for(let a=0;a<e.length;a++){if(n=t.indexOf(e[a],n),n===-1)return-1;i>=0&&(r+=n-i-1),i=n,n++}return r}function WN(e,t,n,r,i){if(e.includes(` `)){let a=e.split(/\s+/).filter(Boolean);if(a.length===0)return null;if(a.length===1)return WN(a[0],t,n,r,i);let o=0,s=0;for(let e of a){let a=WN(e,t,n,r,i);if(!a)return null;o=Math.max(o,a.tier),s+=a.offset}return{tier:o,offset:s,nameLen:r,depth:i}}if(t===e)return{tier:0,offset:0,nameLen:r,depth:i};if(t.startsWith(e))return{tier:1,offset:0,nameLen:r,depth:i};let a=t.indexOf(e);if(a>=0)return{tier:2,offset:a,nameLen:r,depth:i};let o=n.indexOf(e);if(o>=0)return{tier:3,offset:o,nameLen:r,depth:i};let s=UN(e,t);if(s>=0)return{tier:4,offset:s,nameLen:r,depth:i};let c=UN(e,n);return c>=0?{tier:5,offset:c,nameLen:r,depth:i}:null}function GN(e,t,n){let r=n.toLowerCase();return WN(e.toLowerCase(),HN(r),r,t.length,n.split(`/`).length)}function KN(e,t){return e.tier-t.tier||e.offset-t.offset||e.nameLen-t.nameLen||e.depth-t.depth}var qN=/^(.*?)(?::(\d+)(?::\d+|-(\d+))?|#L(\d+)(?:-L?(\d+))?)$/;function JN(e){let t=e.match(qN);if(!t)return{path:e};let n=Number(t[2]??t[4]),r=t[3]??t[5];if(!Number.isSafeInteger(n)||n<1)return null;if(r!==void 0){let e=Number(r);return!Number.isSafeInteger(e)||e<n?null:{path:t[1],line:{start:n,end:e}}}return{path:t[1],line:{start:n}}}function YN(e,t){return t?`${e}:${t.start}${t.end?`-${t.end}`:``}`:e}var XN={action:{label:`Actions`,icon:at},file:{label:`Files`,icon:xn},db:{label:`Database`,icon:Pt},fs:{label:`Filesystem`,icon:et}};function ZN({availableGroups:e,groupCounts:t,activeFilters:n,onToggle:r}){return e.length<=1?null:(0,X.jsx)(`div`,{className:`flex items-center gap-1.5 border-b border-border/50 px-3 py-1.5 overflow-x-auto`,children:e.map(e=>{let i=XN[e];if(!i)return null;let a=t[e]??0,o=n.has(e),s=i.icon;return(0,X.jsxs)(`button`,{type:`button`,role:`switch`,"aria-checked":o,"aria-label":`Filter by ${i.label}`,onClick:()=>r(e),className:`inline-flex items-center gap-1 shrink-0 rounded-full border px-2.5 py-1 text-xs font-medium transition-colors ${o?`bg-primary/15 border-primary text-primary`:`bg-surface border-border text-text-subtle hover:bg-surface-elevated`} ${a===0?`opacity-50`:``}`,children:[(0,X.jsx)(s,{className:`size-3`}),(0,X.jsx)(`span`,{children:i.label}),(0,X.jsxs)(`span`,{className:`text-[10px] opacity-70`,children:[`(`,a,`)`]})]},e)})})}var QN=e=>`${z(e)}/designs`,$N=(e,t)=>`${QN(e)}/${encodeURIComponent(t)}`;async function eP(e){let t=await B.get(QN(e));return{designs:Array.isArray(t?.designs)?t.designs:[],systems:Array.isArray(t?.systems)?t.systems:[]}}function tP(e,t){return B.get($N(e,t))}function nP(e,t){return B.post(QN(e),t)}function rP(e,t,n){return B.patch($N(e,t),{title:n})}function iP(e,t){return B.del(`${$N(e,t)}?confirm=${encodeURIComponent(t)}`)}function aP(e,t){return B.get(`${$N(e,t)}/history`)}function oP(e,t,n){return B.post(`${$N(e,t)}/history/${encodeURIComponent(n)}/restore`)}function sP(e,t,n,r){return B.post(`/api/design-preview`,{projectName:e,slug:t,purpose:`canvas`,...n?{token:n}:{},...r?{entry:r}:{}})}async function cP(e){return(await B.get(`${z(e)}/chat/providers`)).filter(e=>e.supportsDesignInstructions===!0)}var lP=`ppm:new-design`,uP=`ppm:designs-changed`;function dP(e){window.dispatchEvent(new CustomEvent(lP,{detail:{projectName:e}}))}function fP(e){window.dispatchEvent(new CustomEvent(uP,{detail:{projectName:e}}))}var pP=(0,Y.lazy)(()=>H(()=>import(`./new-design-dialog-B9tgnQXq.js`).then(e=>({default:e.NewDesignDialog})),__vite__mapDeps([202,1,2,3,27,6,7,203,19,8,9,10,11,12,87,38,16,15,17,35,40,41,23])));function mP(e,t,n){let[r,i]=(0,Y.useState)([]);return(0,Y.useEffect)(()=>{if(!t||!e){i([]);return}let n=!1;return eP(e).then(e=>{n||i(e.designs)}).catch(()=>{n||i([])}),()=>{n=!0}},[t,e]),(0,Y.useMemo)(()=>e?[{id:`new-design`,label:`New Design…`,icon:Dt,group:`action`,keywords:`design mockup prototype page slides deck presentation canvas create`,action:()=>{n(),dP(e)}},{id:`designs`,label:`Designs`,icon:We,group:`action`,keywords:`design list canvas`,action:()=>{let e=V.getState();e.sidebarCollapsed&&e.toggleSidebar(),e.setSidebarActiveTab(`designs`),n()}},...r.map(t=>({id:`design:${t.slug}`,label:`Open Design: ${t.title}`,hint:`designs/${t.slug}`,icon:We,group:`action`,keywords:`design ${t.slug} ${t.kind}`,action:()=>{Ku({projectName:e,slug:t.slug,title:t.title}),n()}}))]:[],[e,r,n])}function hP(){let[e,t]=(0,Y.useState)(null);return(0,Y.useEffect)(()=>{let e=e=>{let n=e.detail?.projectName;n&&t(n)};return window.addEventListener(lP,e),()=>window.removeEventListener(lP,e)},[]),e?(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(pP,{projectName:e,onClose:()=>t(null)})}):null}var gP=100,_P=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.userAgent);function vP(e){return e?e.replace(/Mod\+/g,_P?`⌘`:`Ctrl+`).replace(/Alt\+/g,_P?`⌥`:`Alt+`).replace(/Shift\+/g,_P?`⇧`:`Shift+`).replace(/Meta\+/g,`⌘`).replace(/Ctrl\+/g,_P?`⌃`:`Ctrl+`):``}function yP(e){let t=[];for(let n of e)n.type===`file`&&t.push({name:n.name,path:n.path}),n.children&&t.push(...yP(n.children));return t}function bP(e){return e?e.startsWith(`/`)||e.startsWith(`~/`)||e.startsWith(`~\\`)||/^[A-Za-z]:[/\\]/.test(e):!1}function xP(e){let t=e.replace(/\\/g,`/`);if(t.endsWith(`/`))return e;let n=Math.max(t.lastIndexOf(`/`),e.lastIndexOf(`\\`));return n>0?e.slice(0,n+1):e}var SP=new Map;function CP({open:e,onClose:t,initialQuery:n=``}){let[r,i]=(0,Y.useState)(``),a=(0,Y.useDeferredValue)(r),[o,s]=(0,Y.useState)(0),[c,l]=(0,Y.useState)([]),[u,d]=(0,Y.useState)(!1),[f,p]=(0,Y.useState)([]),[m,h]=(0,Y.useState)(new Set),g=(0,Y.useRef)(null),_=(0,Y.useRef)(null),v=K(e=>e.openTab),y=K(e=>e.updateTab),b=G(e=>e.activeProject),x=di(e=>e.fileIndex),S=di(e=>e.indexStatus),C=di(e=>e.indexProjectName),w=di(e=>e.loadIndex),T=di(e=>e.tree),E=V(e=>e.setSidebarActiveTab),D=V(e=>e.sidebarCollapsed),O=V(e=>e.toggleSidebar),k=ul(e=>e.getBinding),A=dl(e=>e.contributions),ee=hi(),j=VN(),te=V(e=>e.lspEnabled),M=(0,Y.useMemo)(()=>JN(r)??{path:r},[r]),N=(0,Y.useMemo)(()=>JN(a)?.path??a,[a]),P=(0,Y.useRef)(void 0);(0,Y.useEffect)(()=>{P.current=M.line},[M.line]);let F=(0,Y.useCallback)((e,n,r,i)=>{let a=P.current,o={...i,filePath:e};a&&Object.assign(o,{lineNumber:a.start,endLine:a.end,revealAt:Date.now()});let s=v({type:`editor`,title:n,projectId:r,metadata:o,closable:!0});a&&s&&y(s,{metadata:o}),t()},[v,y,t]),ne=(0,Y.useCallback)(async e=>{if(SP.has(e)){l(SP.get(e));return}d(!0);try{let t=await B.get(`/api/fs/list?dir=${encodeURIComponent(e)}`);SP.set(e,t),l(t)}catch{l([])}finally{d(!1)}},[]);(0,Y.useEffect)(()=>{if(!bP(M.path)){l([]);return}ne(xP(M.path))},[M.path,ne]),(0,Y.useEffect)(()=>{if(bP(r)||r.trim().length<2){p([]);return}let e=setTimeout(async()=>{try{p(await B.get(`/api/db/search?q=${encodeURIComponent(r.trim())}`)??[])}catch{p([])}},300);return()=>clearTimeout(e)},[r]);let re=mP(b?.name??null,e,t),ie=(0,Y.useMemo)(()=>{let e=b?.name??null,n=b?{projectName:b.name}:void 0,r=(r,i)=>()=>{v({type:r,title:i,projectId:e,metadata:n,closable:!0}),t()},i=[{id:`chat`,label:`New AI Chat`,icon:Gn,action:r(`chat`,`AI Chat`),keywords:`ai assistant claude`,group:`action`,shortcut:vP(k(`open-chat`))},{id:`new-file`,label:`New File`,icon:Zt,action:()=>{K.getState().openNewFile(),t()},keywords:`create untitled blank empty`,group:`action`,shortcut:vP(k(`new-file`))},{id:`new-db-query`,label:`New DB Query`,icon:Pt,action:()=>{K.getState().openNewFile({language:`sql`,title:`SQL Query`}),t()},keywords:`sql database query scratchpad new`,group:`action`},{id:`terminal`,label:`New Terminal`,icon:sn,action:r(`terminal`,`Terminal`),keywords:`bash shell console`,group:`action`,shortcut:vP(k(`open-terminal`))},{id:`tunnels`,label:`Cloudflare Tunnels`,icon:je,action:()=>{D&&O(),E(`tunnels`),t()},keywords:`web preview localhost port forward tunnel cloudflare url`,group:`action`},{id:`cloud-share`,label:`PPM Cloud & Share`,icon:Ct,action:()=>{window.dispatchEvent(new CustomEvent(`open-cloud-share`)),t()},keywords:`cloud permanent link alias share phone remote device qr sign in login`,group:`action`},{id:`postgres`,label:`PostgreSQL`,icon:Pt,action:r(`postgres`,`PostgreSQL`),keywords:`database pg sql query`,group:`action`},{id:`voice-input`,label:`Voice Input`,icon:Hn,action:()=>{window.dispatchEvent(new CustomEvent(`toggle-voice-input`)),t()},keywords:`speech microphone dictate voice`,group:`action`,shortcut:vP(k(`voice-input`))},{id:`git-status`,label:`Git Status`,icon:Pa,action:()=>{E(`git`),t()},keywords:`changes diff staged`,group:`action`,shortcut:vP(k(`open-git-status`))},{id:`problems`,label:`Problems`,icon:pt,action:()=>{W.getState().openInDock({type:`problems`,title:`Problems`,projectId:null,closable:!0}),t()},keywords:`errors warnings diagnostics lint typescript`,group:`action`,shortcut:vP(k(`open-problems`))},{id:`word-wrap`,label:`Toggle Word Wrap`,icon:wn,group:`action`,keywords:`wrap unwrap word lines editor soft`,action:()=>{let e=V.getState();ee?e.toggleMobileWordWrap():e.toggleWordWrap(),t()},shortcut:ee?void 0:`Alt+Z`},{id:`compare-files`,label:`Compare Files...`,icon:Ut,group:`action`,keywords:`diff compare two files select`,shortcut:vP(k(`compare-files`)),action:()=>{let{activeTabId:e,tabs:n}=K.getState(),r=n.find(t=>t.id===e),i=r?.metadata;r?.type===`editor`&&i?.filePath&&i?.projectName&&Sc.getState().setSelection({filePath:i.filePath,projectName:i.projectName,dirtyContent:i.unsavedContent,label:dr(i.filePath)}),window.dispatchEvent(new CustomEvent(`open-compare-picker`)),t()}},...j?[]:[{id:`language-server`,label:te?`Turn Off Language Server`:`Turn On Language Server`,icon:at,group:`action`,keywords:`lsp language server completions intellisense hover definition typescript pyright gopls`,hint:`This device`,action:()=>{let e=V.getState();e.setLspEnabled(!e.lspEnabled),t()}}],{id:`settings`,label:`Settings`,icon:Kt,action:()=>{pl(),t()},keywords:`config preferences theme`,group:`action`,shortcut:vP(k(`open-settings`))},{id:`open-file-explorer`,label:`Open File Explorer`,icon:Qt,group:`action`,keywords:`open file explorer finder browse files folders disk drive window`,action:()=>{Rp(),t()}}],a=A?.keybindings??[],o=(A?.commands??[]).map(e=>{let n=a.find(t=>t.command===e.command),r=(n?k(`ext:${n.command}`):``)||(n?_P&&n.mac?n.mac:n.key:``);return{id:`ext:${e.command}`,label:e.title,hint:e.category,icon:_u(e.icon)??Mn,group:`action`,keywords:`extension ${e.command} ${e.category??``}`,shortcut:r?vP(r):void 0,action:()=>{ml(e.command),t()}}});return[...i,...re,...o]},[b,v,t,E,D,O,k,A,ee,j,te,re]),ae=(0,Y.useMemo)(()=>{let e=b?.name??null,t=b?{projectName:b.name}:void 0;return(S===`ready`&&C===b?.name?x.filter(e=>e.type===`file`):yP(T)).map(n=>({id:`file:${n.path}`,label:n.name,hint:n.path,icon:na(n.name),group:`file`,keywords:n.path,isIgnored:`isIgnored`in n?n.isIgnored:void 0,action:()=>F(n.path,n.name,e,t)}))},[S,C,x,T,b,F]),I=(0,Y.useMemo)(()=>{let e=b?.name??null,t=b?{projectName:b.name}:void 0;return c.map(n=>{let r=dr(n);return{id:`fs:${n}`,label:r,hint:n,icon:et,group:`fs`,keywords:n,action:()=>F(n,r,e,t)}})},[c,b,F]),oe=(0,Y.useMemo)(()=>f.map(e=>({id:`db:${e.connectionId}:${e.schemaName}.${e.tableName}`,label:e.tableName,hint:`${e.connectionName} (${e.connectionType===`postgres`?`PG`:`SQLite`})`,icon:Pt,group:`db`,connectionColor:e.connectionColor,action:()=>{v({type:`database`,title:`${e.connectionName} · ${e.tableName}`,projectId:null,closable:!0,metadata:{connectionId:e.connectionId,connectionName:e.connectionName,dbType:e.connectionType,tableName:e.tableName,schemaName:e.schemaName,connectionColor:e.connectionColor}}),t()}})),[f,v,t]),se=(0,Y.useMemo)(()=>[...ie,...ae],[ie,ae]),ce=(0,Y.useMemo)(()=>se.map(e=>{let t=e.keywords??e.label,n=t.toLowerCase();return{cmd:e,filenameLower:HN(n),pathLower:n,labelLen:e.label.length,depth:t.split(`/`).length}}),[se]),le=(0,Y.useMemo)(()=>{if(bP(N)){let e=N.lastIndexOf(`/`),t=e>=0?N.slice(e+1).toLowerCase():``;return t?I.filter(e=>{let n=e.label.toLowerCase(),r=(e.keywords??``).toLowerCase();return n.includes(t)||r.includes(t)}).slice(0,50):I.slice(0,50)}if(!N.trim())return ie;let e=N.toLowerCase().replace(/^\.\.?\//,``),t=[];for(let n of ce){let r=WN(e,n.filenameLower,n.pathLower,n.labelLen,n.depth);r&&t.push({cmd:n.cmd,score:r})}t.sort((e,t)=>KN(e.score,t.score));let n=t.slice(0,gP).map(e=>e.cmd);return a.trim().length>=2?[...oe,...n]:n},[ce,ie,I,oe,a,N]),ue=(0,Y.useMemo)(()=>{let e=new Set;for(let t of se)e.add(t.group);return f.length>0&&e.add(`db`),c.length>0&&e.add(`fs`),Array.from(e)},[se,f.length,c.length]),de=(0,Y.useMemo)(()=>{let e={};for(let t of le)e[t.group]=(e[t.group]??0)+1;return e},[le]),fe=(0,Y.useMemo)(()=>m.size===0?le:le.filter(e=>m.has(e.group)),[le,m]),pe=(0,Y.useCallback)(e=>{h(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),s(0)},[]);(0,Y.useEffect)(()=>{e&&b&&(S===`idle`||C!==b.name)&&w(b.name)},[e,S,C,b,w]),(0,Y.useEffect)(()=>{e&&(i(n||``),s(0),l([]),p([]),h(new Set),requestAnimationFrame(()=>g.current?.focus()))},[e]),(0,Y.useEffect)(()=>{s(e=>Math.min(e,Math.max(fe.length-1,0)))},[fe.length]),(0,Y.useEffect)(()=>{let e=_.current;e&&e.children[o]?.scrollIntoView({block:`nearest`})},[o]);let me=(0,Y.useCallback)(()=>{r.trim()&&(v({type:`chat`,title:`AI Chat`,projectId:b?.name??null,metadata:{projectName:b?.name,pendingMessage:r.trim()},closable:!0}),t())},[r,b,v,t]);function he(e){let n=fe.length;switch(e.key){case`ArrowDown`:e.preventDefault(),n>0&&s(e=>(e+1)%n);break;case`ArrowUp`:e.preventDefault(),n>0&&s(e=>(e-1+n)%n);break;case`Enter`:e.preventDefault(),n>0?fe[o]?.action():r.trim()&&me();break;case`Escape`:e.preventDefault(),t();break}}if(!e)return(0,X.jsx)(X.Fragment,{children:(0,X.jsx)(hP,{})});let ge=bP(M.path);return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(hP,{}),(0,X.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-end md:items-start justify-center md:pt-[20vh]`,onClick:t,children:[(0,X.jsx)(`div`,{className:`fixed inset-0 bg-black/50`}),(0,X.jsxs)(`div`,{className:`relative z-10 w-full max-w-md rounded-t-xl md:rounded-xl border border-border bg-background shadow-2xl overflow-hidden max-h-[80vh] md:max-h-none`,onClick:e=>e.stopPropagation(),onKeyDown:he,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2.5`,children:[(0,X.jsx)(Nn,{className:`size-4 text-text-subtle shrink-0`}),(0,X.jsx)(`input`,{ref:g,type:`text`,value:r,onChange:e=>i(e.target.value),placeholder:`Search actions & files... (type / or ~/ for filesystem)`,className:`flex-1 bg-transparent text-sm text-text-primary outline-none placeholder:text-text-subtle`}),u&&(0,X.jsx)(L,{className:`size-3.5 animate-spin text-text-subtle shrink-0`}),(0,X.jsx)(`kbd`,{className:`hidden sm:inline-flex items-center rounded border border-border bg-surface px-1.5 py-0.5 text-[10px] text-text-subtle font-mono`,children:`ESC`})]}),ge&&!u&&c.length===0&&r.length<4&&(0,X.jsx)(`div`,{className:`px-3 py-2 text-xs text-text-subtle border-b border-border/50`,children:`Type a directory path to browse files (e.g. ~/Projects/)`}),!ge&&(S===`loading`||S===`idle`)&&(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 px-3 py-1.5 border-b border-border/50`,children:[(0,X.jsx)(L,{className:`size-3 animate-spin text-text-subtle shrink-0`}),(0,X.jsx)(`span`,{className:`text-[11px] text-text-subtle italic`,children:`Indexing project…`})]}),!ge&&S===`error`&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border/50`,children:[(0,X.jsx)(`span`,{className:`text-[11px] text-text-subtle`,children:`Failed to build file index —`}),(0,X.jsx)(`button`,{onClick:()=>b&&w(b.name),className:`text-[11px] text-primary hover:underline`,children:`retry`})]}),!ge&&(0,X.jsx)(ZN,{availableGroups:ue,groupCounts:de,activeFilters:m,onToggle:pe}),(0,X.jsx)(`div`,{ref:_,className:`max-h-72 overflow-y-auto py-1`,children:fe.length===0?u?(0,X.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`Searching...`}):m.size>0&&le.length>0?(0,X.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`No results in selected filters`}):r.trim()?(0,X.jsxs)(`button`,{onClick:me,className:`flex items-center gap-3 w-full px-3 py-3 text-sm text-left text-text-secondary hover:bg-accent/15 hover:text-text-primary transition-colors`,children:[(0,X.jsx)(Gn,{className:`size-4 shrink-0 text-primary`}),(0,X.jsxs)(`span`,{children:[`Ask AI: `,(0,X.jsx)(`span`,{className:`text-text-primary font-medium`,children:r.trim().slice(0,60)})]})]}):(0,X.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`No results`}):fe.map((e,t)=>{let n=e.icon;return(0,X.jsxs)(`button`,{onClick:e.action,className:`flex items-center gap-3 w-full px-3 py-2 text-sm text-left transition-colors ${t===o?`bg-accent/15 text-text-primary`:`text-text-secondary hover:bg-surface-elevated`} ${e.isIgnored?`opacity-60`:``}`,title:e.isIgnored?`Gitignored file`:void 0,children:[(0,X.jsx)(n,{className:`size-4 shrink-0`}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label}),e.hint&&(0,X.jsxs)(`span`,{className:`ml-auto flex items-center gap-1.5 text-xs text-text-subtle truncate max-w-[200px]`,children:[e.connectionColor&&(0,X.jsx)(`span`,{className:`shrink-0 size-2 rounded-full`,style:{backgroundColor:e.connectionColor}}),e.hint]}),e.shortcut&&(0,X.jsx)(`kbd`,{className:`ml-auto shrink-0 rounded border border-border bg-surface px-1.5 py-0.5 text-[10px] text-text-subtle font-mono`,children:e.shortcut})]},e.id)})}),(0,X.jsxs)(`div`,{className:`flex items-center justify-center gap-1.5 border-t border-border px-3 py-1.5`,children:[(0,X.jsx)(`span`,{className:`text-[10px] text-text-subtle`,children:`Press`}),(0,X.jsx)(`kbd`,{className:`inline-flex items-center rounded border border-border bg-surface px-1 py-0.5 text-[10px] text-text-subtle font-mono`,children:`Shift`}),(0,X.jsx)(`kbd`,{className:`inline-flex items-center rounded border border-border bg-surface px-1 py-0.5 text-[10px] text-text-subtle font-mono`,children:`Shift`}),(0,X.jsx)(`span`,{className:`text-[10px] text-text-subtle`,children:`to open this palette`})]})]})]})]})}var wP=50;function TP({open:e,onOpenChange:t,initialA:n}={}){let r=e!==void 0,[i,a]=(0,Y.useState)(!1),o=r?e:i,s=e=>{r?t?.(e):a(e)},[c,l]=(0,Y.useState)(n??null);(0,Y.useEffect)(()=>{if(r)return;function e(){l(Sc.getState().selection),a(!0)}return window.addEventListener(`open-compare-picker`,e),()=>window.removeEventListener(`open-compare-picker`,e)},[r]);let[u,d]=(0,Y.useState)(``),[f,p]=(0,Y.useState)(0),[m,h]=(0,Y.useState)(null),g=(0,Y.useRef)(null),_=K(e=>e.tabs),v=di(e=>e.fileIndex),y=G(e=>e.activeProject);(0,Y.useEffect)(()=>{o&&(r&&l(n??null),d(``),p(0),h(null),setTimeout(()=>g.current?.focus(),50))},[o,n,r]);let b=(0,Y.useMemo)(()=>{let e=_.filter(e=>e.type===`editor`&&e.metadata?.filePath).map(e=>({id:`tab:${e.id}`,path:e.metadata.filePath,label:dr(e.metadata.filePath),source:`tab`,dirtyContent:e.metadata.unsavedContent})),t=new Set(e.map(e=>e.path)),n=v.filter(e=>e.type===`file`&&!t.has(e.path)).map(e=>({id:`file:${e.path}`,path:e.path,label:e.name,source:`file`}));return[...e,...n]},[_,v]),x=(0,Y.useMemo)(()=>u.trim()?b.map(e=>{let t=GN(u,e.label,e.path);return t?{c:e,score:t}:null}).filter(e=>e!==null).sort((e,t)=>KN(e.score,t.score)).slice(0,wP).map(e=>e.c):b.slice(0,wP),[b,u]);(0,Y.useEffect)(()=>{f>=x.length&&p(Math.max(0,x.length-1))},[x,f]);let S=(0,Y.useRef)(!1);async function C(e){if(y){if(!c){l({filePath:e.path,projectName:y.name,dirtyContent:e.dirtyContent,label:e.label}),d(``),p(0),g.current?.focus();return}if(!S.current){S.current=!0;try{await wc({path:c.filePath,dirtyContent:c.dirtyContent},{path:e.path,dirtyContent:e.dirtyContent},y.name),Sc.getState().clearSelection(),s(!1)}catch(e){h(e instanceof Error?e.message:`Compare failed`)}finally{S.current=!1}}}}function w(e){if(e.key===`ArrowDown`)e.preventDefault(),p(e=>Math.min(x.length-1,e+1));else if(e.key===`ArrowUp`)e.preventDefault(),p(e=>Math.max(0,e-1));else if(e.key===`Enter`){e.preventDefault();let t=x[f];t&&C(t)}}return(0,X.jsx)(ta,{open:o,onOpenChange:s,children:(0,X.jsxs)(J,{className:`max-w-lg p-0 gap-0 overflow-hidden`,children:[(0,X.jsx)(Xi,{className:`px-4 pt-4 pb-2`,children:(0,X.jsxs)(Qi,{className:`flex items-center gap-2 text-sm`,children:[(0,X.jsx)(Ut,{className:`size-4`}),`Compare Files`]})}),(0,X.jsx)(`div`,{className:`px-4 pb-2`,children:c?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-xs bg-muted rounded px-2 py-1 w-fit max-w-full`,children:[(0,X.jsx)(xn,{className:`size-3.5 shrink-0`}),(0,X.jsx)(`span`,{className:`truncate`,title:c.filePath,children:c.label}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>l(null),className:`hover:bg-surface-elevated rounded p-0.5`,"aria-label":`Clear first file`,children:(0,X.jsx)(Be,{className:`size-3`})})]}):(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Pick first file, then second.`})}),(0,X.jsx)(`input`,{ref:g,type:`text`,value:u,onChange:e=>{d(e.target.value),p(0)},onKeyDown:w,placeholder:c?`Search for file B...`:`Search for file A...`,className:`w-full px-4 py-2 bg-transparent border-y border-border text-sm outline-none`}),m&&(0,X.jsx)(`div`,{className:`px-4 py-2 text-xs text-destructive border-b border-border`,children:m}),(0,X.jsx)(`div`,{className:`max-h-[50vh] md:max-h-80 overflow-y-auto`,children:x.length===0?(0,X.jsx)(`div`,{className:`px-4 py-6 text-center text-xs text-muted-foreground`,children:b.length===0?`No files available`:`No matches`}):x.map((e,t)=>(0,X.jsxs)(`button`,{type:`button`,onClick:()=>C(e),onMouseEnter:()=>p(t),className:U(`w-full flex items-center gap-2 px-4 py-1.5 text-left text-sm`,`hover:bg-surface-elevated transition-colors`,t===f&&`bg-surface-elevated`),children:[(0,X.jsx)(xn,{className:`size-3.5 shrink-0 text-text-secondary`}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label}),(0,X.jsx)(`span`,{className:`text-xs text-muted-foreground truncate ml-auto`,title:e.path,children:e.source===`tab`?`open`:e.path})]},e.id))})]})})}function EP(){let e=R_(),t=hi(),[n,r]=(0,Y.useState)(!1),i=e.step.k!==`hidden`&&!n;if(!i)return null;let a=()=>r(!0);return t?(0,X.jsx)(la,{open:i,onClose:a,zIndex:45,children:(0,X.jsx)(`div`,{className:`px-4 pb-4`,children:(0,X.jsx)(U_,{step:e.step,t:e})})}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`fixed inset-0 z-[45] bg-black/40`,onClick:a}),(0,X.jsxs)(`div`,{className:`fixed z-[45] top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-full max-w-md max-h-[85vh] overflow-y-auto rounded-xl bg-popover text-popover-foreground border border-border shadow-2xl p-5`,onClick:e=>e.stopPropagation(),children:[(0,X.jsx)(`button`,{type:`button`,onClick:a,"aria-label":`Close`,className:`absolute right-3 top-3 size-11 flex items-center justify-center rounded-md hover:bg-surface-elevated transition-colors`,children:(0,X.jsx)(Be,{className:`size-4`})}),(0,X.jsx)(`div`,{className:`pr-8`,children:(0,X.jsx)(U_,{step:e.step,t:e})})]})]})}var DP=lr((e,t)=>({images:[],index:0,src:null,alt:``,open:(t,n=``,r)=>{let i=r?.length?r:[{src:t,alt:n}],a=i.findIndex(e=>e.src===t),o=a>=0?a:0,s=i[o];e({images:i,index:o,src:s.src,alt:s.alt||n})},close:()=>e({images:[],index:0,src:null,alt:``}),go:n=>{let{images:r,index:i}=t(),a=i+n;if(a<0||a>=r.length)return;let o=r[a];e({index:a,src:o.src,alt:o.alt})}})),OP={scale:1,x:0,y:0,rotation:0,flipX:!1,flipY:!1},kP=.1,AP=20,jP=2.5,MP=(e,t,n)=>Math.min(n,Math.max(t,e));function NP(e){return e.deltaMode===0?e.deltaX===0?Number.isInteger(e.deltaY)&&Math.abs(e.deltaY)>=40:!1:!0}function PP(){let e=(0,Y.useRef)(null),t=(0,Y.useRef)(null),n=(0,Y.useRef)({...OP}),r=(0,Y.useRef)(null),[i,a]=(0,Y.useState)(100),[o,s]=(0,Y.useState)(0),c=(0,Y.useCallback)(()=>{let n=t.current,r=e.current;return{dw:n?.clientWidth??0,dh:n?.clientHeight??0,cw:r?.clientWidth??0,ch:r?.clientHeight??0,natural:n?.naturalWidth??0}},[]),l=(0,Y.useCallback)(()=>{let{dw:e,dh:t,cw:r,ch:i}=c(),a=Math.abs(n.current.rotation%180)===90,o=(a?t:e)*n.current.scale,s=(a?e:t)*n.current.scale;return{maxX:Math.max(0,(o-r)/2),maxY:Math.max(0,(s-i)/2)}},[c]),u=(0,Y.useCallback)(()=>{a(Math.round(n.current.scale*100)),s(n.current.rotation)},[]),d=(0,Y.useCallback)((e=!1)=>{let i=t.current;if(!i)return;let{scale:a,x:o,y:s,rotation:c,flipX:l,flipY:d}=n.current;if(i.style.transform=`translate3d(${o}px, ${s}px, 0) rotate(${c}deg) scale(${a*(l?-1:1)}, ${a*(d?-1:1)})`,e){r.current!=null&&(cancelAnimationFrame(r.current),r.current=null),u();return}r.current??=requestAnimationFrame(()=>{r.current=null,u()})},[u]),f=(0,Y.useCallback)((e=!1)=>{let{maxX:t,maxY:r}=l();n.current.x=MP(n.current.x,-t,t),n.current.y=MP(n.current.y,-r,r),d(e)},[d,l]),p=(0,Y.useCallback)((t,r,i,a=!1)=>{let o=e.current;if(!o)return;let s=o.getBoundingClientRect(),c=(r??s.left+s.width/2)-(s.left+s.width/2),l=(i??s.top+s.height/2)-(s.top+s.height/2),u=n.current.scale,d=MP(t,kP,AP),p=d/u;n.current.scale=d,n.current.x=c-(c-n.current.x)*p,n.current.y=l-(l-n.current.y)*p,f(a)},[f]),m=(0,Y.useCallback)(()=>{n.current={...OP},d(!0)},[d]),h=(0,Y.useCallback)(()=>{let{dw:e,dh:t,cw:r,ch:i}=c(),a=Math.abs(n.current.rotation%180)===90;n.current.scale=a&&e>0&&t>0?Math.min(r/t,i/e):1,n.current.x=0,n.current.y=0,f(!0)},[c,f]),g=(0,Y.useCallback)(()=>{let{dw:e,natural:t}=c();e>0&&t>0&&p(t/e,void 0,void 0,!0)},[c,p]),_=(0,Y.useCallback)(e=>{n.current.rotation=((n.current.rotation+e)%360+360)%360,h()},[h]),v=(0,Y.useCallback)(e=>{e===`x`?n.current.flipX=!n.current.flipX:n.current.flipY=!n.current.flipY,d(!0)},[d]),y=(0,Y.useCallback)(e=>p(n.current.scale*e,void 0,void 0,!0),[p]);return VC({onDrag:({delta:[e,t],pinching:r,cancel:i,last:a})=>{if(r)return i();n.current.x+=e,n.current.y+=t,f(a)},onPinch:({offset:[e],origin:[t,r],first:i,last:a,memo:o})=>{let s=i?n.current.scale/(e||1):o??1;return p(s*e,t,r,a),s},onWheel:({event:e,last:t})=>{if(t){d(!0);return}let{deltaX:r,deltaY:i}=e;if(!(r===0&&i===0)){if(e.preventDefault(),e.ctrlKey||e.metaKey||NP(e)){p(n.current.scale*Math.exp(-i/300),e.clientX,e.clientY);return}n.current.x-=r,n.current.y-=i,f()}},onDoubleClick:({event:e})=>{n.current.scale>1.05?h():p(jP,e.clientX,e.clientY,!0)}},{target:e,drag:{from:()=>[n.current.x,n.current.y],filterTaps:!0,pointer:{touch:!0}},pinch:{scaleBounds:{min:kP,max:AP},rubberband:!0},eventOptions:{passive:!1}}),(0,Y.useEffect)(()=>{let e=()=>f();return window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e),r.current!=null&&cancelAnimationFrame(r.current)}},[f]),{containerRef:e,imageRef:t,zoomPercent:i,rotation:o,zoomBy:y,reset:m,fit:h,actualSize:g,rotate:_,flip:v}}function FP(){let e=DP(e=>e.src);return e?(0,X.jsx)(IP,{},e):null}function IP(){let{src:e,alt:t,images:n,index:r,close:i,go:a}=DP(),{containerRef:o,imageRef:s,zoomPercent:c,rotation:l,zoomBy:u,reset:d,fit:f,actualSize:p,rotate:m,flip:h}=PP(),[g,_]=(0,Y.useState)(!1),v=du();(0,Y.useEffect)(()=>{d()},[d]);let y=(0,Y.useRef)({close:i,go:a,zoomBy:u,reset:d,fit:f,actualSize:p,rotate:m,flip:h});if(y.current={close:i,go:a,zoomBy:u,reset:d,fit:f,actualSize:p,rotate:m,flip:h},(0,Y.useEffect)(()=>{if(!e)return;let t=e=>{let t=y.current,n=e.key;if(n===`Escape`)return t.close();if(n===`ArrowLeft`)return t.go(-1);if(n===`ArrowRight`)return t.go(1);if(n===`+`||n===`=`)return t.zoomBy(1.25);if(n===`-`||n===`_`)return t.zoomBy(.8);if(n===`0`)return t.fit();if(n===`1`)return t.actualSize();if(n===`r`)return t.rotate(90);if(n===`R`)return t.rotate(-90);if(n===`h`)return t.flip(`x`);if(n===`v`)return t.flip(`y`)};return document.addEventListener(`keydown`,t),()=>document.removeEventListener(`keydown`,t)},[e]),!e)return null;let b=t?.trim()||`image`,x=n.length>1,S=async()=>{await fu(e)&&(_(!0),setTimeout(()=>_(!1),1500))};return(0,X.jsxs)(`div`,{className:`fixed inset-0 z-[100] flex flex-col bg-black/90 backdrop-blur-sm animate-in fade-in duration-150`,children:[(0,X.jsx)(`button`,{onClick:i,className:`absolute top-3 right-3 z-20 flex size-11 items-center justify-center rounded-full bg-white/10 text-white transition-colors hover:bg-white/20 active:bg-white/30`,"aria-label":`Close`,children:(0,X.jsx)(Be,{className:`size-5`})}),x&&(0,X.jsxs)(`div`,{className:`absolute top-3 left-3 z-20 rounded-full bg-white/10 px-3 py-1.5 font-mono text-xs text-white/80`,children:[r+1,` / `,n.length]}),(0,X.jsx)(`div`,{ref:o,className:`relative flex flex-1 touch-none select-none items-center justify-center overflow-hidden`,onPointerDown:e=>{e.target===e.currentTarget&&(e.currentTarget.dataset.bg=`1`)},onPointerUp:e=>{e.target===e.currentTarget&&e.currentTarget.dataset.bg===`1`&&i(),delete e.currentTarget.dataset.bg},children:(0,X.jsx)(`img`,{ref:s,src:e,alt:t,draggable:!1,style:{willChange:`transform`},className:`max-h-full max-w-full object-contain rounded-lg shadow-2xl`})}),(0,X.jsxs)(LP,{children:[x&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(zP,{onClick:()=>a(-1),disabled:r===0,label:`Previous image (←)`,children:(0,X.jsx)(ge,{className:`size-5`})}),(0,X.jsx)(zP,{onClick:()=>a(1),disabled:r===n.length-1,label:`Next image (→)`,children:(0,X.jsx)(nn,{className:`size-5`})}),(0,X.jsx)(RP,{})]}),(0,X.jsx)(zP,{onClick:()=>u(.8),label:`Zoom out (-)`,children:(0,X.jsx)(dt,{className:`size-5`})}),(0,X.jsxs)(`button`,{onClick:d,className:`h-11 min-w-[4.5rem] rounded-lg px-2 font-mono text-xs text-white/80 transition-colors hover:bg-white/10 active:bg-white/20`,title:`Reset view`,children:[c,`%`]}),(0,X.jsx)(zP,{onClick:()=>u(1.25),label:`Zoom in (+)`,children:(0,X.jsx)(Dt,{className:`size-5`})}),(0,X.jsx)(zP,{onClick:f,label:`Fit to screen (0)`,children:(0,X.jsx)(Jt,{className:`size-5`})}),(0,X.jsx)(zP,{onClick:p,label:`Actual size (1)`,children:(0,X.jsx)(za,{className:`size-5`})}),(0,X.jsx)(RP,{}),(0,X.jsx)(zP,{onClick:()=>m(-90),label:`Rotate left (Shift+R)`,active:l!==0,children:(0,X.jsx)(Nt,{className:`size-5`})}),(0,X.jsx)(zP,{onClick:()=>m(90),label:`Rotate right (R)`,active:l!==0,children:(0,X.jsx)(yn,{className:`size-5`})}),(0,X.jsx)(zP,{onClick:()=>h(`x`),label:`Flip horizontally (H)`,children:(0,X.jsx)(Ce,{className:`size-5`})}),(0,X.jsx)(zP,{onClick:()=>h(`y`),label:`Flip vertically (V)`,children:(0,X.jsx)(ft,{className:`size-5`})}),(0,X.jsx)(RP,{}),(0,X.jsx)(zP,{onClick:()=>lu(e,b),label:`Download`,children:(0,X.jsx)(An,{className:`size-5`})}),(0,X.jsx)(zP,{onClick:S,disabled:!v,label:v?`Copy image`:`Copying images needs an HTTPS or localhost address`,children:g?(0,X.jsx)(Rn,{className:`size-5 text-green-400`}):(0,X.jsx)(_n,{className:`size-5`})})]})]})}function LP({children:e}){return(0,X.jsx)(`div`,{className:`flex shrink-0 justify-center px-2 pb-[max(0.75rem,env(safe-area-inset-bottom))] pt-2`,children:(0,X.jsx)(`div`,{className:`flex flex-wrap items-center justify-center gap-0.5 rounded-2xl bg-white/10 p-1 backdrop-blur`,children:e})})}function RP(){return(0,X.jsx)(`span`,{className:`mx-1 h-6 w-px bg-white/20`,"aria-hidden":!0})}function zP({onClick:e,label:t,children:n,disabled:r,active:i}){return(0,X.jsx)(`button`,{type:`button`,onClick:e,disabled:r,title:t,"aria-label":t,className:U(`flex size-11 items-center justify-center rounded-lg text-white transition-colors`,`hover:bg-white/15 active:bg-white/25`,i&&`text-primary`,r&&`pointer-events-none opacity-30`),children:n})}var BP=lr(e=>({svg:null,open:t=>e({svg:t}),close:()=>e({svg:null})})),VP=.25,HP=4,UP=.25;function WP(){let{svg:e,close:t}=BP(),n=(0,Y.useRef)(null),[r,i]=(0,Y.useState)(1),[a,o]=(0,Y.useState)({x:0,y:0}),s=(0,Y.useRef)(!1),c=(0,Y.useRef)({x:0,y:0});(0,Y.useEffect)(()=>{e&&(i(1),o({x:0,y:0}))},[e]);let l=(0,Y.useCallback)(e=>{e.key===`Escape`&&t(),(e.key===`=`||e.key===`+`)&&i(e=>Math.min(HP,e+UP)),e.key===`-`&&i(e=>Math.max(VP,e-UP)),e.key===`0`&&(i(1),o({x:0,y:0}))},[t]);(0,Y.useEffect)(()=>{if(e)return document.addEventListener(`keydown`,l),()=>document.removeEventListener(`keydown`,l)},[e,l]);let u=(0,Y.useCallback)(e=>{e.preventDefault();let t=e.deltaY>0?-UP:UP;i(e=>Math.min(HP,Math.max(VP,e+t)))},[]),d=(0,Y.useCallback)(e=>{e.button===0&&(s.current=!0,c.current={x:e.clientX,y:e.clientY},e.target.setPointerCapture(e.pointerId))},[]),f=(0,Y.useCallback)(e=>{if(!s.current)return;let t=e.clientX-c.current.x,n=e.clientY-c.current.y;c.current={x:e.clientX,y:e.clientY},o(e=>({x:e.x+t,y:e.y+n}))},[]),p=(0,Y.useCallback)(()=>{s.current=!1},[]);return e?(0,X.jsxs)(`div`,{className:`fixed inset-0 z-[100] flex flex-col bg-black/85 backdrop-blur-sm animate-in fade-in duration-150`,onClick:t,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 bg-black/40`,onClick:e=>e.stopPropagation(),children:[(0,X.jsxs)(`span`,{className:`text-sm text-white/70`,children:[Math.round(r*100),`% — Scroll to zoom, drag to pan, 0 to reset`]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,X.jsx)(`button`,{onClick:()=>i(e=>Math.max(VP,e-UP)),className:`flex items-center justify-center size-8 rounded bg-white/10 hover:bg-white/20 text-white transition-colors`,"aria-label":`Zoom out`,children:(0,X.jsx)(jn,{className:`size-4`})}),(0,X.jsx)(`button`,{onClick:()=>i(e=>Math.min(HP,e+UP)),className:`flex items-center justify-center size-8 rounded bg-white/10 hover:bg-white/20 text-white transition-colors`,"aria-label":`Zoom in`,children:(0,X.jsx)(Ht,{className:`size-4`})}),(0,X.jsx)(`button`,{onClick:()=>{i(1),o({x:0,y:0})},className:`flex items-center justify-center size-8 rounded bg-white/10 hover:bg-white/20 text-white transition-colors`,"aria-label":`Reset zoom`,children:(0,X.jsx)(Nt,{className:`size-4`})}),(0,X.jsx)(`button`,{onClick:t,className:`flex items-center justify-center size-8 rounded bg-white/10 hover:bg-white/20 text-white transition-colors ml-2`,"aria-label":`Close`,children:(0,X.jsx)(Be,{className:`size-5`})})]})]}),(0,X.jsx)(`div`,{ref:n,className:`flex-1 overflow-hidden cursor-grab active:cursor-grabbing`,onClick:e=>e.stopPropagation(),onWheel:u,onPointerDown:d,onPointerMove:f,onPointerUp:p,children:(0,X.jsx)(`div`,{className:`w-full h-full flex items-center justify-center`,style:{transform:`translate(${a.x}px, ${a.y}px) scale(${r})`,transformOrigin:`center center`},children:(0,X.jsx)(`div`,{className:`mermaid-overlay-content bg-white rounded-lg p-6 shadow-2xl [&_svg]:max-w-full [&_svg]:h-auto`,dangerouslySetInnerHTML:{__html:e}})})})]}):null}var GP=new Map,KP=lr((e,t)=>({shellsBySession:{},panelShellId:null,setSessionShells:(t,n)=>e(e=>({shellsBySession:{...e.shellsBySession,[t]:n}})),retainSession:e=>{GP.set(e,(GP.get(e)??0)+1)},releaseSession:t=>{let n=(GP.get(t)??1)-1;if(n>0){GP.set(t,n);return}GP.delete(t),e(e=>{let n={...e.shellsBySession};return delete n[t],{shellsBySession:n}})},findByOutput:e=>{if(!e)return;let n=dr(e).replace(/\.output$/,``);for(let r of Object.values(t().shellsBySession)){let t=r.find(t=>t.shellId===n||t.outputPath.endsWith(`${n}.output`)||t.outputPath.endsWith(e));if(t)return t}},getShell:e=>{for(let n of Object.values(t().shellsBySession)){let t=n.find(t=>t.shellId===e);if(t)return t}},openPanel:t=>e({panelShellId:t}),closePanel:()=>e({panelShellId:null})})),qP=1500,JP=5e5;function YP(){let e=KP(e=>e.panelShellId),t=KP(e=>e.getShell),n=KP(e=>e.closePanel),r=e?t(e):void 0,[i,a]=(0,Y.useState)(``),[o,s]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(!1),u=(0,Y.useRef)(null),d=r?.outputPath,f=r?.status,p=(0,Y.useCallback)(async()=>{if(d)try{let e=(await B.get(`/api/fs/read?path=${encodeURIComponent(d)}`)).content??``;a(e.length>JP?e.slice(-JP):e),s(null)}catch(e){s(e.message)}finally{l(!1)}},[d]);return(0,Y.useEffect)(()=>{if(!d||(l(!0),a(``),p(),f!==`running`))return;let e=setInterval(p,qP);return()=>clearInterval(e)},[d,f,p]),(0,Y.useEffect)(()=>{u.current&&(u.current.scrollTop=u.current.scrollHeight)},[i]),(0,Y.useEffect)(()=>{if(!e)return;let t=e=>{e.key===`Escape`&&n()};return document.addEventListener(`keydown`,t),()=>document.removeEventListener(`keydown`,t)},[e,n]),e?(0,X.jsx)(`div`,{className:`fixed inset-0 z-[100] flex items-end md:items-center justify-center bg-black/60 backdrop-blur-sm animate-in fade-in duration-150`,onClick:n,children:(0,X.jsxs)(`div`,{className:`flex flex-col w-full md:max-w-3xl md:w-[90vw] max-h-[80vh] md:max-h-[75vh] overflow-hidden rounded-t-xl md:rounded-xl border border-border bg-surface shadow-2xl`,onClick:e=>e.stopPropagation(),children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-3 border-b border-border`,children:[(0,X.jsx)(ve,{className:`size-4 shrink-0 text-text-secondary`}),(0,X.jsx)(`span`,{className:`flex-1 truncate text-sm font-mono text-text-primary`,title:r?.command,children:r?.command||`Background command`}),f===`running`&&(0,X.jsxs)(`span`,{className:`flex items-center gap-1 text-[11px] text-emerald-500`,children:[(0,X.jsx)(L,{className:`size-3 animate-spin`}),` live`]}),f===`stopping`&&(0,X.jsx)(`span`,{className:`text-[11px] text-warning`,children:`stopping…`}),f===`stopped`&&(0,X.jsx)(`span`,{className:`text-[11px] text-text-subtle`,children:`stopped`}),(0,X.jsx)(`button`,{type:`button`,onClick:n,className:`flex items-center justify-center size-9 -mr-1 rounded hover:bg-surface-elevated text-text-secondary`,"aria-label":`Close`,children:(0,X.jsx)(Be,{className:`size-5`})})]}),(0,X.jsx)(`pre`,{ref:u,className:`flex-1 overflow-auto p-4 text-xs font-mono whitespace-pre-wrap break-words text-text-primary bg-background`,children:o?`Failed to read output: ${o}`:i||(c?`Loading…`:`(no output yet)`)})]})}):null}var XP=`https://cloud.ppm.sh`;function ZP(){let e=window.location.hostname;return e.endsWith(`.trycloudflare.com`)||e===F_()}function QP(){let e=F_();return!!e&&window.location.hostname===e}function $P(){let e=MN(e=>e.showOverlay),[t,n]=(0,Y.useState)(!1);if(!e)return null;let r=ZP(),i=QP(),a=Ry();async function o(){n(!0);try{if((await fetch(`/api/health`,{cache:`no-store`})).ok){if(MN.getState().markUp(),`caches`in window){let e=await caches.keys();await Promise.all(e.map(e=>caches.delete(e)))}window.location.reload();return}}catch{}n(!1)}return(0,X.jsx)(`div`,{className:`fixed inset-0 z-[200] bg-background/95 backdrop-blur-sm flex items-center justify-center p-4`,children:(0,X.jsxs)(`div`,{className:`max-w-sm w-full text-center space-y-6`,children:[(0,X.jsx)(`div`,{className:`flex justify-center`,children:(0,X.jsx)(`div`,{className:`rounded-full bg-destructive/10 p-4`,children:(0,X.jsx)(r?He:Ba,{className:`h-10 w-10 text-destructive`})})}),(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(`h2`,{className:`text-xl font-semibold text-foreground`,children:i?`Domain Not Responding`:r?`Connection Lost`:`Server Unreachable`}),(0,X.jsx)(`p`,{className:`text-sm text-muted-foreground leading-relaxed`,children:i?`This address stays the same, so keep it. The machine may be asleep, offline, or restarting — it will answer again on this same URL.`:r?`The tunnel appears to have closed. The server may have restarted with a new URL.`:`Cannot connect to the PPM server. It may have stopped or is restarting.`})]}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[r&&a&&(0,X.jsxs)(`a`,{href:a,className:`inline-flex items-center justify-center gap-2 rounded-md bg-primary px-4 py-2.5 text-sm font-medium text-primary-foreground hover:bg-primary/90 transition-colors`,children:[(0,X.jsx)(bt,{className:`h-4 w-4`}),`Open on local network`]}),r&&(0,X.jsx)(`a`,{href:XP,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center justify-center rounded-md px-4 py-2.5 text-sm font-medium transition-colors ${a?`border border-border text-foreground hover:bg-accent`:`bg-primary text-primary-foreground hover:bg-primary/90`}`,children:`Open PPM Cloud`}),(0,X.jsxs)(`button`,{onClick:o,disabled:t,className:`inline-flex items-center justify-center gap-2 rounded-md border border-border px-4 py-2.5 text-sm font-medium text-foreground hover:bg-accent transition-colors disabled:opacity-50`,children:[(0,X.jsx)(en,{className:`h-4 w-4 ${t?`animate-spin`:``}`}),t?`Retrying…`:`Retry Connection`]})]}),!r&&(0,X.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`If the server was stopped, run `,(0,X.jsx)(`code`,{className:`bg-muted px-1 py-0.5 rounded text-[11px]`,children:`ppm start`}),` to restart it.`]})]})})}function eF(){let e=dl(e=>e.quickPick),t=dl(e=>e.resolveQuickPick);return e?(0,X.jsx)(tF,{items:e.items,options:e.options,onSelect:e=>t(e),onCancel:()=>t(void 0)}):null}function tF({items:e,options:t,onSelect:n,onCancel:r}){let[i,a]=(0,Y.useState)(``),[o,s]=(0,Y.useState)(0),[c,l]=(0,Y.useState)(()=>{let t=new Set;return e.forEach((e,n)=>{e.picked&&t.add(n)}),t}),u=(0,Y.useRef)(null),d=(0,Y.useRef)(null),f=t.canPickMany??!1;(0,Y.useEffect)(()=>{requestAnimationFrame(()=>u.current?.focus())},[]);let p=(0,Y.useMemo)(()=>{if(!i.trim())return e.map((e,t)=>({item:e,originalIdx:t}));let t=i.toLowerCase();return e.map((e,t)=>({item:e,originalIdx:t})).filter(({item:e})=>e.label.toLowerCase().includes(t)||e.description?.toLowerCase().includes(t)||e.detail?.toLowerCase().includes(t))},[e,i]);(0,Y.useEffect)(()=>{s(e=>Math.min(e,Math.max(p.length-1,0)))},[p.length]),(0,Y.useEffect)(()=>{(d.current?.children[o])?.scrollIntoView({block:`nearest`})},[o]);let m=(0,Y.useCallback)(()=>{f?n(e.filter((e,t)=>c.has(t))):p[o]&&n([p[o].item])},[f,c,e,p,o,n]);function h(e){switch(e.key){case`ArrowDown`:e.preventDefault(),p.length>0&&s(e=>(e+1)%p.length);break;case`ArrowUp`:e.preventDefault(),p.length>0&&s(e=>(e-1+p.length)%p.length);break;case` `:if(f&&p[o]){e.preventDefault();let t=p[o].originalIdx;l(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n})}break;case`Enter`:e.preventDefault(),m();break;case`Escape`:e.preventDefault(),r();break}}return(0,X.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-end md:items-start justify-center md:pt-[20vh]`,onClick:r,children:[(0,X.jsx)(`div`,{className:`fixed inset-0 bg-black/50`}),(0,X.jsxs)(`div`,{className:`relative z-10 w-full max-w-md rounded-t-xl md:rounded-xl border border-border bg-background shadow-2xl overflow-hidden max-h-[80vh] md:max-h-none`,onClick:e=>e.stopPropagation(),onKeyDown:h,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2.5`,children:[(0,X.jsx)(Nn,{className:`size-4 text-text-subtle shrink-0`}),(0,X.jsx)(`input`,{ref:u,type:`text`,value:i,onChange:e=>a(e.target.value),placeholder:t.placeholder??`Select an item...`,className:`flex-1 bg-transparent text-sm text-text-primary outline-none placeholder:text-text-subtle`}),(0,X.jsx)(`kbd`,{className:`hidden sm:inline-flex items-center rounded border border-border bg-surface px-1.5 py-0.5 text-[10px] text-text-subtle font-mono`,children:`ESC`})]}),(0,X.jsx)(`div`,{ref:d,className:`max-h-72 overflow-y-auto py-1`,children:p.length===0?(0,X.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`No matching items`}):p.map(({item:e,originalIdx:t},r)=>(0,X.jsxs)(`button`,{onClick:()=>{f?l(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n}):n([e])},className:U(`flex items-center gap-3 w-full px-3 py-2 text-sm text-left transition-colors`,r===o?`bg-accent/15 text-text-primary`:`text-text-secondary hover:bg-surface-elevated`),children:[f&&(0,X.jsx)(`span`,{className:U(`size-4 shrink-0 rounded border flex items-center justify-center`,c.has(t)?`bg-primary border-primary text-primary-foreground`:`border-border`),children:c.has(t)&&(0,X.jsx)(Rn,{className:`size-3`})}),(0,X.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,X.jsx)(`div`,{className:`truncate`,children:e.label}),e.description&&(0,X.jsx)(`span`,{className:`text-xs text-text-subtle ml-2`,children:e.description}),e.detail&&(0,X.jsx)(`div`,{className:`text-xs text-text-subtle truncate mt-0.5`,children:e.detail})]})]},t))}),f&&(0,X.jsxs)(`div`,{className:`flex items-center justify-between border-t border-border px-3 py-1.5`,children:[(0,X.jsxs)(`span`,{className:`text-[10px] text-text-subtle`,children:[c.size,` selected`]}),(0,X.jsx)(`button`,{onClick:m,className:`text-xs text-primary hover:text-primary/80 font-medium`,children:`Confirm`})]})]})]})}function nF(){let e=dl(e=>e.inputBox),t=dl(e=>e.resolveInputBox);return e?(0,X.jsx)(rF,{options:e.options,onConfirm:e=>t(e),onCancel:()=>t(void 0)}):null}function rF({options:e,onConfirm:t,onCancel:n}){let[r,i]=(0,Y.useState)(e.value??``),a=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{requestAnimationFrame(()=>{a.current?.focus(),a.current?.select()})},[]);function o(e){e.key===`Enter`?(e.preventDefault(),t(r)):e.key===`Escape`&&(e.preventDefault(),n())}return(0,X.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-end md:items-start justify-center md:pt-[20vh]`,onClick:n,children:[(0,X.jsx)(`div`,{className:`fixed inset-0 bg-black/50`}),(0,X.jsxs)(`div`,{className:`relative z-10 w-full max-w-md rounded-t-xl md:rounded-xl border border-border bg-background shadow-2xl overflow-hidden`,onClick:e=>e.stopPropagation(),children:[e.prompt&&(0,X.jsx)(`div`,{className:`px-3 pt-3 pb-1 text-sm text-text-primary`,children:e.prompt}),(0,X.jsx)(`div`,{className:`flex items-center gap-2 px-3 py-2.5`,children:(0,X.jsx)(`input`,{ref:a,type:e.password?`password`:`text`,value:r,onChange:e=>i(e.target.value),onKeyDown:o,placeholder:e.placeholder??``,className:`flex-1 bg-surface border border-border rounded px-2 py-1.5 text-sm text-text-primary outline-none focus:border-primary placeholder:text-text-subtle`})}),(0,X.jsxs)(`div`,{className:`flex items-center justify-end gap-2 border-t border-border px-3 py-2`,children:[(0,X.jsx)(`button`,{onClick:n,className:`px-3 py-1.5 text-xs text-text-secondary hover:text-text-primary transition-colors rounded`,children:`Cancel`}),(0,X.jsx)(`button`,{onClick:()=>t(r),className:`px-3 py-1.5 text-xs bg-primary text-primary-foreground rounded hover:bg-primary/90 transition-colors font-medium`,children:`OK`})]})]})]})}var iF=new Set;function aF(e,t){return`${e}:${t??``}`}var oF=new Map,sF=15e3;function cF(e,t){let n=Date.now();for(let[e,t]of oF)n-t>sF&&oF.delete(e);if(oF.delete(`${e}:${t??``}`)||t&&oF.delete(`${e}:`))return!0;if(!t){for(let t of oF.keys())if(t.startsWith(`${e}:`))return oF.delete(t),!0}return!1}var lF=new Set;function uF(e=!0){let t=(0,Y.useRef)(null),n=(0,Y.useCallback)(e=>{t.current?.send(JSON.stringify(e))},[]);return(0,Y.useEffect)(()=>{if(!e)return;let r=er(),i=new bN(r?`/ws/extensions?token=${encodeURIComponent(r)}`:`/ws/extensions`);t.current=i,i.onMessage(e=>{let t;try{t=JSON.parse(e.data)}catch{return}let r=dl.getState();switch(t.type){case`contributions:update`:if(r.setContributions(t.contributions),t.activationErrors){let e=r.activationErrors;r.setActivationErrors(t.activationErrors);for(let[n,r]of Object.entries(t.activationErrors))e[n]||R.error(`Extension "${n}" failed to activate: ${r}`)}break;case`statusbar:update`:r.addStatusBarItem(t.item);break;case`statusbar:remove`:r.removeStatusBarItem(t.itemId);break;case`tree:update`:t.parentId?r.updateTreeChildren(t.viewId,t.parentId,t.items):r.updateTree(t.viewId,t.items);break;case`tree:refresh`:r.removeTree(t.viewId);break;case`notification`:{let e=t.level===`error`?R.error:t.level===`warn`?R.warning:R.info;if(t.actions&&t.actions.length>0){let r={action:{label:t.actions[0],onClick:()=>n({type:`notification:action`,id:t.id,action:t.actions[0]??null})},onDismiss:()=>n({type:`notification:action`,id:t.id,action:null})};t.actions.length>1&&(r.cancel={label:t.actions[1],onClick:()=>n({type:`notification:action`,id:t.id,action:t.actions[1]??null})}),e(t.message,r)}else e(t.message);break}case`quickpick:show`:r.showQuickPick(t.items,t.options).then(e=>{n({type:`quickpick:resolve`,requestId:t.requestId,selected:e??null})});break;case`inputbox:show`:r.showInputBox(t.options).then(e=>{n({type:`inputbox:resolve`,requestId:t.requestId,value:e??null})});break;case`webview:create`:{let e=t.viewType.replace(/\.view$/,``),n=cF(e,t.projectPath);r.addWebviewPanel({id:t.panelId,extensionId:t.extensionId,viewType:t.viewType,title:t.title,html:``,projectName:t.projectName});let i=`extension:${e}`,a=W.getState(),o=Object.values(a.panels).flatMap(e=>e.tabs).filter(e=>e.id===i||e.id.startsWith(`${i}@`)),s=e=>e.metadata?.projectName,c=t.projectName?o.find(e=>s(e)===t.projectName)??o.find(e=>!s(e)):o[0];if(c)K.getState().updateTab(c.id,{title:t.title,metadata:{...c.metadata,viewType:e,panelId:t.panelId,extensionId:t.extensionId,...t.projectName&&{projectName:t.projectName}}}),n&&!lF.has(e)&&K.getState().setActiveTab(c.id),lF.delete(e);else if(n&&!iF.has(aF(e,t.projectName))){let n=K.getState().currentProject,r=t.projectName??n??void 0;K.getState().openTab({type:`extension`,title:t.title,projectId:null,closable:!0,metadata:{viewType:e,panelId:t.panelId,extensionId:t.extensionId,...r&&{projectName:r}}})}break}case`webview:html`:r.updateWebviewPanel(t.panelId,{html:t.html});break;case`webview:dispose`:r.removeWebviewPanel(t.panelId);break;case`webview:postMessage`:window.dispatchEvent(new CustomEvent(`ext:webview:message`,{detail:{panelId:t.panelId,message:t.message}}));break;case`tab:open`:K.getState().openTab({type:t.tabType,title:t.title,projectId:t.projectId??null,closable:t.closable??!0,metadata:t.metadata});break;case`project:switch`:K.getState().switchProject(t.projectName);break}});let a=e=>{let{panelId:t,message:n}=e.detail;i.send(JSON.stringify({type:`webview:message`,panelId:t,message:n}))};window.addEventListener(`ext:webview:send`,a);let o=e=>{let{viewId:t,itemId:n}=e.detail;i.send(JSON.stringify({type:`tree:expand`,viewId:t,itemId:n}))};window.addEventListener(`ext:tree:expand`,o);let s=e=>{let{command:t,args:n,recovery:r}=e.detail,a=t.replace(/\.view$/,``);for(let e of iF)e.startsWith(`${a}:`)&&iF.delete(e);let o=Array.isArray(n)&&typeof n[0]==`string`?n[0]:``;oF.set(`${a}:${o}`,Date.now()),r?lF.add(a):lF.delete(a),i.send(JSON.stringify({type:`command:execute`,command:t,args:n}))};window.addEventListener(`ext:command:execute`,s);let c=e=>{let{panelId:t,viewType:n,projectName:r}=e.detail;if(i.send(JSON.stringify({type:`webview:close`,panelId:t})),n){let e=aF(n.replace(/\.view$/,``),r);iF.add(e),setTimeout(()=>iF.delete(e),5e3)}};return window.addEventListener(`ext:webview:close`,c),i.connect(),()=>{window.removeEventListener(`ext:webview:send`,a),window.removeEventListener(`ext:tree:expand`,o),window.removeEventListener(`ext:command:execute`,s),window.removeEventListener(`ext:webview:close`,c),i.disconnect(),t.current=null}},[n,e]),{send:n}}function dF(e){let t=0,n=0,r=0,i=0;for(let a of e)n+=a.size,t+=a.state===`done`||a.state===`skipped`?a.size:Math.min(a.bytesLoaded,a.size),(a.state===`done`||a.state===`skipped`)&&r++,(a.state===`failed`||a.state===`cancelled`)&&i++;return{bytesLoaded:t,bytesTotal:n,doneCount:r,failedCount:i,totalCount:e.length}}function fF(e){if(e<1024)return`${e} B`;let t=[`KB`,`MB`,`GB`],n=e/1024,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r++;return`${n.toFixed(n>=10?0:1)} ${t[r]}`}function pF({item:e,onCancel:t}){let n=e.size>0?Math.min(100,Math.round(e.bytesLoaded/e.size*100)):0,r=e.state===`queued`||e.state===`uploading`,i=e.relativePath!==e.name;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-1 px-3 py-2`,"data-testid":`upload-row`,"data-state":e.state,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`p`,{className:`truncate text-sm text-text`,children:e.name}),i&&(0,X.jsx)(`p`,{className:`truncate text-xs text-text-2`,children:e.relativePath})]}),(0,X.jsx)(`span`,{className:`shrink-0 text-xs text-text-2`,children:fF(e.size)}),r?(0,X.jsx)(`button`,{type:`button`,"aria-label":`Cancel ${e.name}`,onClick:t,className:`flex size-11 shrink-0 items-center justify-center rounded-md can-hover:hover:bg-surface-elevated`,children:(0,X.jsx)(Be,{className:`size-4 text-text-2`})}):(0,X.jsxs)(`span`,{className:`flex size-11 shrink-0 items-center justify-center`,"aria-label":e.state,children:[e.state===`done`&&(0,X.jsx)(Rn,{className:`size-4 text-success`}),e.state===`skipped`&&(0,X.jsx)(`span`,{className:`text-xs text-text-2`,children:`Skipped`}),(e.state===`failed`||e.state===`cancelled`)&&(0,X.jsx)(Tn,{className:`size-4 text-destructive`})]})]}),r&&(0,X.jsx)(`div`,{className:`h-1 w-full overflow-hidden rounded-full bg-surface-elevated`,children:(0,X.jsx)(`div`,{className:U(`h-full rounded-full bg-primary transition-[width]`,e.state===`queued`&&`w-0 opacity-40`),style:e.state===`uploading`?{width:`${n}%`}:void 0})}),(e.state===`failed`||e.state===`cancelled`)&&(0,X.jsx)(`p`,{className:`text-xs text-destructive`,children:e.state===`cancelled`?`Cancelled`:e.errorMessage??`Upload failed`})]})}function mF(e){return`${(e/(1024*1024)).toFixed(1)} MB`}function hF({batch:e}){let t=qp(e=>e.cancelItem),n=qp(e=>e.cancelBatch),r=qp(e=>e.dismissBatch),i=dF(e.items),a=e.settled,o=i.bytesTotal>0?Math.round(i.bytesLoaded/i.bytesTotal*100):0;return(0,X.jsxs)(`div`,{className:`w-full overflow-hidden rounded-lg border border-border bg-panel shadow-lg`,"data-testid":`upload-batch-card`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsx)(`p`,{className:`truncate text-sm font-medium text-text`,children:a?`${i.doneCount}/${i.totalCount} uploaded${i.failedCount>0?`, ${i.failedCount} failed`:``}`:`Uploading ${i.totalCount} item${i.totalCount===1?``:`s`}… ${o}%`}),(0,X.jsxs)(`p`,{className:`truncate text-xs text-text-2`,children:[mF(i.bytesLoaded),` / `,mF(i.bytesTotal)]})]}),a?(0,X.jsx)(q,{variant:`ghost`,size:`sm`,className:`h-11 shrink-0`,onClick:()=>r(e.id),children:`Close`}):(0,X.jsx)(`button`,{type:`button`,"aria-label":`Cancel all`,onClick:()=>n(e.id),className:`flex size-11 shrink-0 items-center justify-center rounded-md can-hover:hover:bg-surface-elevated`,children:(0,X.jsx)(Be,{className:`size-4 text-text-2`})})]}),(0,X.jsx)(`div`,{className:`max-h-64 divide-y divide-border overflow-y-auto`,children:e.items.map(n=>(0,X.jsx)(pF,{item:n,onCancel:()=>t(e.id,n.id)},n.id))})]})}function gF(){return qp(jd(e=>e.order.map(t=>e.batches[t]).filter(e=>e!=null)))}function _F(){let e=hi(),t=gF(),[n,r]=(0,Y.useState)(!1);if(t.length===0)return null;if(!e)return(0,X.jsx)(`div`,{className:`fixed bottom-4 right-4 z-30 flex w-80 max-w-[calc(100vw-2rem)] flex-col gap-2`,"data-testid":`upload-progress-panel`,children:t.map(e=>(0,X.jsx)(hF,{batch:e},e.id))});let i=t.filter(e=>!e.settled).length>0?`Uploading ${t.reduce((e,t)=>e+t.items.length,0)}…`:`Uploads finished`;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`button`,{type:`button`,onClick:()=>r(!0),"data-testid":`upload-progress-pill`,className:`fixed bottom-20 right-3 z-30 flex h-11 items-center gap-2 rounded-full border border-border bg-panel px-4 text-sm text-text shadow-lg`,children:i}),(0,X.jsx)(la,{open:n,onClose:()=>r(!1),className:`max-h-[70vh] overflow-y-auto p-2`,children:(0,X.jsx)(`div`,{className:`flex flex-col gap-2 px-2 pb-2`,children:t.map(e=>(0,X.jsx)(hF,{batch:e},e.id))})})]})}var vF=`ppm:chunk-reload`,yF=!1;function bF(){return yF}var xF=/dynamically imported module|importing a module script failed|failed to load module script|error loading chunk|expected a javascript(-or-wasm)? module script/i;function SF(e){if(!e)return!1;let t=e instanceof Error?`${e.name}: ${e.message}`:String(e);return xF.test(t)}async function CF(){if(!(typeof caches>`u`))try{let e=await caches.keys();await Promise.all(e.filter(e=>e.startsWith(`ppm-`)).map(e=>caches.delete(e)))}catch{}}async function wF(){try{sessionStorage.removeItem(vF)}catch{}yF=!0,await CF(),window.location.reload()}function TF(){let e;try{e=sessionStorage.getItem(vF)===`1`,sessionStorage.setItem(vF,`1`)}catch{return!1}return e?!1:(yF=!0,CF().then(()=>window.location.reload()),!0)}function EF(){window.addEventListener(`vite:preloadError`,()=>{TF()})}var DF={project:{title:`Choose a project`,action:`Choose project`,bodies:[`A project is a folder with the files you want to work on. Choose one on the computer running PPM, which may be different from your phone.`,`Choose or add a project to begin.`,`Select the workspace for this walkthrough.`],more:`Use the project picker to select an existing folder or add one. The tour never creates files or changes your project.`},chat:{title:`Open AI chat`,action:`Open chat`,bodies:[`Chat lets you ask an AI assistant about your project. Open a chat and choose an available AI provider.`,`Open a chat with your preferred available provider.`,`Open a provider-backed chat tab.`],more:`If no provider is ready, use the existing setup or retry controls, or open AI Settings. You can pause this guide and return after setup.`},send:{title:`Ask about your project`,action:`Use suggested question`,bodies:[`Ask AI to explain your project. You can use our suggested question or write your own, then press Send yourself.`,`Send a question and wait for a successful answer.`,`Complete one AI turn in this project.`],more:`The suggestion requests reading only; your provider's existing permissions still apply. Your draft is never replaced and nothing is sent automatically. Errors or interrupted replies do not complete this step.`},history:{title:`Find your conversation`,action:`Show conversation history`,bodies:[`Use the chat history menu to open the conversation you just had. This is how you return to your work later.`,`Reopen this conversation from the chat history menu.`,`Select the completed session in chat history.`],more:`Choose the conversation from the history menu above the chat, even if it is already open. If you skipped sending a message, you can skip this step too.`},file:{title:`Read a project file`,action:`Open files`,bodies:[`The file explorer shows your project's folders and files. Open any text file that you want to read.`,`Open any text file from the explorer.`,`Open any source, text or Markdown file.`],more:`This step completes when a text editor or Markdown Preview loads successfully. The filename does not matter. Images and databases are not part of this reading exercise. If the project is empty or has no readable files, skip this step or choose another project; no sample file is created automatically.`},search:{title:`Search your project`,action:`Open search`,bodies:[`Search helps you find words inside project files. Type at least two characters and look at the results.`,`Search file contents using at least two characters.`,`Run a project content search.`],more:`A successful search with no matches still counts. A failed request does not. Try a different word, retry an error, or open a result to read its file.`},terminal:{title:`Open the terminal`,action:`Open terminal`,bodies:[`A terminal runs commands on the computer hosting PPM. Open one and wait for it to connect; you do not need to type a command yet.`,`Open a terminal and wait for the shell to become ready.`,`Connect a terminal for this project.`],more:`The tour never types or executes commands. If connection fails, retry using the terminal controls or skip this step.`},git:{title:`View project changes`,action:`Open Git changes`,bodies:[`Git tracks changes in a project. Open its changes view to see whether files have changed.`,`Inspect the project's Git status.`,`Load the working-tree status.`],more:`A clean repository counts too. If the folder does not use Git, skip this step or choose another project. The tour never initializes a repository or commits changes.`},run:{title:`Find how to run the project`,action:`Find run instructions`,bodies:[`Open README or a package manifest and look for instructions to start the project. You can use those instructions in the terminal when you are ready.`,`Find the documented run instructions in README or a package manifest.`,`Inspect README or package scripts for the run command.`],more:`Find run instructions opens a README in the project root, or package.json if there is no readable README. README Preview counts too. After reading, confirm that you know where to find the instructions. This does not run the project. If no file is found, browse Files or skip this step.`}},OF=`Summarize this project and explain how to run it. Only read; do not edit files.`;function kF(e,t){let n=DF[e],r=t===`advanced`?2:t===`familiar`?1:0;return{title:n.title,body:n.bodies[r],more:n.more,action:n.action}}var AF=[{id:`beginner`,title:`I'm just getting started`,body:`One step at a time, with the basics explained.`,icon:Ft},{id:`familiar`,title:`I've used similar tools`,body:`A quick introduction to finding your way around PPM.`,icon:Ft},{id:`advanced`,title:`I'm a developer / advanced user`,body:`Go straight to the workspace and tools.`,icon:Et}],jF=[{id:`ai`,title:`Work with AI`,body:`Ask about a project and find your conversation again.`,icon:Gn},{id:`explore`,title:`Explore a project`,body:`Open a file and search through your project.`,icon:Ft},{id:`developer`,title:`Use development tools`,body:`Find the terminal, Git changes and run instructions.`,icon:Et}];function MF({projectName:e}){let t=Di(),n=(0,Y.useRef)(document.activeElement),[r,i]=(0,Y.useState)(`level`);return(0,X.jsx)(ta,{open:!0,onOpenChange:e=>{e||t.dismiss()},children:(0,X.jsx)(J,{onCloseAutoFocus:e=>{e.preventDefault(),(n.current?.isConnected?n.current:document.querySelector(`aside[aria-label="PPM guided tour"] button`))?.focus()},className:`max-h-[90dvh] overflow-y-auto sm:max-w-[520px] p-5 sm:p-7`,children:(0,X.jsxs)(ki,{stepKey:r,order:r===`level`?0:1,className:`grid gap-4`,children:[(0,X.jsxs)(`div`,{className:`text-xs font-medium tracking-widest uppercase text-primary`,children:[`Your first steps · `,r===`level`?`1`:`2`,` of 2`]}),(0,X.jsx)(Qi,{className:`text-2xl leading-tight`,children:r===`level`?`Make PPM feel familiar`:`What would you like to do first?`}),(0,X.jsx)($i,{children:r===`level`?`Choose the amount of guidance that suits you. You can change this anytime.`:`Every path is available to you. Start with something useful.`}),(0,X.jsx)(`div`,{className:`grid gap-3 mt-1`,children:r===`level`?AF.map(({id:e,title:n,body:r,icon:a})=>(0,X.jsxs)(`button`,{onClick:()=>{t.chooseFamiliarity(e),i(`goal`)},className:`flex items-start gap-4 rounded-lg border border-border bg-surface p-4 text-left hover:border-primary focus-visible:outline-2 focus-visible:outline-primary`,children:[(0,X.jsx)(a,{className:`size-5 shrink-0 text-primary mt-0.5`}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`span`,{className:`block font-medium text-sm`,children:n}),(0,X.jsx)(`span`,{className:`block mt-1 text-sm text-text-secondary`,children:r})]})]},e)):jF.map(({id:n,title:r,body:i,icon:a})=>(0,X.jsxs)(`button`,{onClick:()=>{t.chooseGoal(n),t.start(e)},className:`flex items-start gap-4 rounded-lg border border-border bg-surface p-4 text-left hover:border-primary focus-visible:outline-2 focus-visible:outline-primary`,children:[(0,X.jsx)(a,{className:`size-5 shrink-0 text-primary mt-0.5`}),(0,X.jsxs)(`span`,{children:[(0,X.jsxs)(`span`,{className:`block font-medium text-sm`,children:[r,n===`ai`&&(0,X.jsx)(`span`,{className:`ml-2 text-xs text-primary`,children:`Suggested`})]}),(0,X.jsx)(`span`,{className:`block mt-1 text-sm text-text-secondary`,children:i})]})]},n))}),(0,X.jsxs)(`div`,{className:`flex items-center justify-between`,children:[r===`goal`?(0,X.jsxs)(q,{variant:`ghost`,className:`min-h-11`,onClick:()=>i(`level`),children:[(0,X.jsx)(ln,{}),`Back`]}):(0,X.jsx)(`span`,{}),(0,X.jsx)(q,{variant:`ghost`,className:`min-h-11 text-text-secondary`,onClick:t.dismiss,children:`I'll explore on my own`})]})]})})})}function NF(){let e=Di(e=>e.projectName),t=Di(e=>e.skip),[n,r]=(0,Y.useState)(!1);return(0,Y.useEffect)(()=>{let t=!1,n=0;if(r(!1),!e)return;let i=()=>{let i=++n;B.get(`${z(e)}/files/list`).then(e=>{!t&&i===n&&r(e.length===0)}).catch(()=>{!t&&i===n&&r(!1)})};return i(),window.addEventListener(`ppm:onboarding-refresh`,i),()=>{t=!0,window.removeEventListener(`ppm:onboarding-refresh`,i)}},[e]),n?(0,X.jsxs)(`div`,{className:`mt-3 rounded-lg border border-border p-3`,role:`status`,children:[(0,X.jsx)(`p`,{className:`text-sm text-text-secondary`,children:`No files are visible in this project yet. You can create your own files later or choose another project. Nothing needs to be created for this tour.`}),(0,X.jsx)(q,{variant:`outline`,className:`w-full min-h-11 mt-2`,onClick:t,children:`Skip empty project step`}),(0,X.jsx)(`p`,{className:`text-xs text-text-secondary mt-2`,children:`This step will be marked skipped, not completed.`})]}):(0,X.jsx)(`p`,{className:`text-xs text-text-secondary mt-2`,children:`Choose any text file, such as .txt, .js, .py or .md. No README or package.json is required. Markdown Preview counts too. If there is no readable file, use Skip step.`})}function PF({collapsed:e,setCollapsed:t,onAction:n,onSettings:r}){let i=Di(),[a,o]=(0,Y.useState)(!1),s=Pi(i.goal),c=i.currentStep;if(!c)return null;let l=kF(c,i.familiarity??`beginner`),u=s.indexOf(c);return(0,X.jsxs)(`div`,{className:`p-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,X.jsxs)(`p`,{className:`text-[11px] uppercase tracking-widest text-primary font-medium`,children:[`Guided tour · `,u+1,` of `,s.length]}),(0,X.jsx)(`h2`,{className:`font-semibold text-sm mt-1`,"aria-live":`polite`,children:l.title})]}),(0,X.jsx)(q,{variant:`ghost`,className:`min-h-11 min-w-11`,"aria-label":e?`Expand guide`:`Collapse guide`,onClick:()=>t(!e),children:e?(0,X.jsx)(Xe,{}):(0,X.jsx)(Qe,{})}),(0,X.jsx)(q,{variant:`ghost`,className:`min-h-11 min-w-11`,"aria-label":`Pause tour`,onClick:i.pause,children:(0,X.jsx)(Be,{})})]}),!e&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`flex gap-1 mt-3 mb-4`,"aria-label":`Tour progress`,children:s.map(e=>(0,X.jsx)(`span`,{className:`h-1 flex-1 rounded-full ${i.completed.includes(e)?`bg-primary`:i.skipped.includes(e)?`bg-text-subtle`:`bg-border`}`},e))}),(0,X.jsx)(`p`,{className:`text-sm text-text-secondary leading-relaxed`,children:l.body}),c===`file`&&(0,X.jsx)(NF,{}),c===`run`&&(0,X.jsx)(`p`,{className:`text-xs text-text-secondary mt-2`,children:`Open README directly, or package.json if no README is available. README Preview counts too.`}),c===`run`&&i.runDocumentReady&&(0,X.jsxs)(`p`,{className:`text-sm text-primary mt-2 flex items-center gap-1`,children:[(0,X.jsx)(Rn,{className:`size-4`}),`Run instructions opened`]}),(0,X.jsx)(q,{className:`w-full mt-4 min-h-11`,onClick:()=>n(c),children:c===`run`&&i.runDocumentReady?`I know where to run commands`:l.action}),(c===`chat`||c===`send`)&&(0,X.jsx)(q,{variant:`ghost`,className:`w-full min-h-11 mt-1`,onClick:r,children:`AI settings`}),(0,X.jsx)(`button`,{className:`text-xs text-primary py-3 min-h-11`,onClick:()=>o(!a),"aria-expanded":a,children:a?`Less explanation`:`Explain this step`}),a&&(0,X.jsx)(`p`,{className:`text-sm text-text-secondary leading-relaxed mb-3`,children:l.more}),(0,X.jsx)(q,{variant:`link`,className:`w-full min-h-11`,onClick:Ni,children:`Quick orientation`}),(0,X.jsxs)(`div`,{className:`flex items-center justify-between border-t border-border pt-2`,children:[(0,X.jsx)(q,{variant:`ghost`,className:`min-h-11 px-2`,disabled:u===0,onClick:i.back,children:`Back`}),(0,X.jsx)(q,{variant:`ghost`,className:`min-h-11 px-2`,onClick:i.changeChoices,children:`Change guide`}),(0,X.jsx)(q,{variant:`ghost`,className:`min-h-11 px-2`,onClick:i.skip,children:`Skip step`})]})]})]})}function FF(e){return Array.from(document.querySelectorAll(`[data-onboarding="${e}"]`)).find(e=>e.getClientRects().length>0&&e.getBoundingClientRect().width>0)}function IF({target:e,children:t,collapsed:n}){let r=hi(),i=ua(r),[a,o]=(0,Y.useState)(null),s=(0,Y.useRef)(null),[c,l]=(0,Y.useState)(360);(0,Y.useEffect)(()=>{if(!s.current)return;let e=new ResizeObserver(()=>l(s.current?.getBoundingClientRect().height??360));return e.observe(s.current),()=>e.disconnect()},[]),(0,Y.useEffect)(()=>{if(!e||n){o(null);return}let t=()=>o(FF(e)?.getBoundingClientRect()??null);t();let r=window.setInterval(t,500);return window.addEventListener(`resize`,t),window.addEventListener(`scroll`,t,!0),()=>{clearInterval(r),window.removeEventListener(`resize`,t),window.removeEventListener(`scroll`,t,!0)}},[e,n]);let u=!r&&a&&a.right+380<window.innerWidth?a.right+12:void 0,d=n?48:!r&&a?Math.max(16,Math.min(u===void 0?a.top-c-12:a.top,window.innerHeight-c-44)):void 0;return(0,X.jsxs)(X.Fragment,{children:[a&&!r&&!n&&(0,X.jsx)(`div`,{"aria-hidden":!0,className:`fixed pointer-events-none z-[59] rounded-md border-2 border-primary`,style:{left:a.left,top:a.top,width:a.width,height:a.height}}),(0,X.jsx)(`aside`,{ref:s,"aria-label":`PPM guided tour`,className:`fixed z-[60] overflow-x-hidden rounded-xl border border-border bg-background text-foreground shadow-xl`,style:{width:r?`calc(100% - 24px)`:352,maxWidth:`calc(100vw - 24px)`,left:r?12:u,right:r||u!==void 0?void 0:20,top:d,bottom:d===void 0?r?(i?.keyboardInset??0)+60:44:void 0,maxHeight:r?`min(48dvh, 370px)`:`calc(100dvh - 80px)`,overflowY:`auto`},children:t})]})}function LF(e){let{status:t,currentStep:n,projectName:r,sessionId:i}=Di();(0,Y.useEffect)(()=>{if(t!==`active`||n!==`history`||!r||!i)return;let a=!1;return(async()=>{let t=0;for(let n=0;n<10;n++){let n=await B.get(`${z(r)}/chat/sessions?limit=100&offset=${t}`);if(a||n.sessions.some(e=>e.id===i))return;if(!n.hasMore){Di.setState(e=>e.status===`active`&&e.sessionId===i&&e.currentStep===`history`?{currentStep:`chat`,sessionId:null,attempt:null,completed:e.completed.filter(e=>e===`project`),skipped:[]}:{}),e(`That conversation is no longer available. Open a chat to try again, or skip this step.`);return}t+=n.sessions.filter(e=>!e.pinned).length}a||e(`Open chat history to find the conversation, or skip this step.`)})().catch(()=>{a||e(`History could not be checked. Try the history menu again when connected, or pause the tour.`)}),()=>{a=!0}},[t,n,r,i,e])}function RF(e){let t=e.filter(e=>e.type===`file`).map(e=>e.name);return[`readme.md`,`readme.markdown`,`readme.txt`,`readme`,`readme.rst`,`package.json`].map(e=>t.find(t=>t.toLowerCase()===e)).find(Boolean)}async function zF(e,t){let n=await B.get(`${z(e)}/files/list`);if(!t())return`stale`;let r=RF(n);return r?(K.getState().openTab({type:`editor`,title:r,projectId:e,metadata:{projectName:e,filePath:r},closable:!0}),requestAnimationFrame(()=>window.dispatchEvent(new Event(`ppm:onboarding-refresh`))),`opened`):`missing`}function BF({openProjects:e,openNavigation:t,closeNavigation:n,paletteOpen:r=!1,navigationOpen:i=!1}){let a=Di(),o=G(e=>e.activeProject),s=hi(),[c,l]=(0,Y.useState)(!1),[u,d]=(0,Y.useState)(``),[f,p]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{let e=()=>p(!0);return window.addEventListener(Fi,e),()=>window.removeEventListener(Fi,e)},[]),LF(d),(0,Y.useEffect)(()=>{let e=e=>Di.getState().observe(e.detail);return window.addEventListener(Cm,e),()=>window.removeEventListener(Cm,e)},[]),(0,Y.useEffect)(()=>{a.setProjectContext(o?.name??null)},[o?.name,a.setProjectContext]),(0,Y.useEffect)(()=>{if(a.status!==`active`)return;d(``),l(!1);let e=window.setTimeout(()=>window.dispatchEvent(new Event(`ppm:onboarding-refresh`)),50);return()=>clearTimeout(e)},[a.status,a.currentStep]),(0,Y.useEffect)(()=>{if(a.status!==`active`||f||r)return;let e=e=>{e.key===`Escape`&&!e.defaultPrevented&&Di.getState().pause()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[a.status,f,r]);function m(e){if(s)t(e),l(!0);else{let t=V.getState();t.sidebarCollapsed&&t.toggleSidebar(),t.setSidebarActiveTab(e)}}function h(e){if(!o){a.setProjectContext(null);return}n();let t=K.getState();t.tabs.find(n=>n.id===t.activeTabId&&n.type===e&&n.projectId===o.name)||t.openTab({type:e,title:e===`chat`?`New Chat`:`Terminal - ${o.name}`,projectId:o.name,metadata:{projectName:o.name},closable:!0}),window.setTimeout(()=>window.dispatchEvent(new Event(`ppm:onboarding-refresh`)),50),s&&l(!0)}function g(t){if(t===`project`)if(s)e(),l(!0);else{let e=V.getState();e.sidebarCollapsed&&e.toggleSidebar(),window.setTimeout(()=>FF(`project`)?.click(),0)}else if(t===`run`){if(!o){d(`Choose a project first, or skip this step.`);return}if(a.runDocumentReady){a.observe({type:`run-acknowledged`,projectName:o.name,visible:!0});return}let e=o.name,t=()=>{let t=Di.getState();return t.status===`active`&&t.currentStep===`run`&&t.projectName===e&&G.getState().activeProject?.name===e};d(`Looking for README or package.json…`),zF(e,t).then(e=>{t()&&(e===`missing`?d(`No README or package.json found in the project root. Browse Files to find other documentation, or skip this step.`):e===`opened`&&(n(),l(!0),d(``)))}).catch(()=>{t()&&d(`Could not find run instructions. Click Find run instructions to retry, or skip this step.`)})}else if(t===`file`)m(`explorer`);else if(t===`search`||t===`git`)m(t);else if(t===`chat`||t===`terminal`)h(t);else if(t===`send`&&o)window.dispatchEvent(new CustomEvent(`ppm:onboarding-prompt`,{detail:{projectName:o.name,text:OF}})),d(`Review the question in chat, then send it yourself. If you already have a draft, it stays unchanged.`),l(!0);else if(t===`history`){let e=FF(`chat-history`);e?(e.click(),l(!0)):d(`Open the chat you used, then choose its history menu. You can skip if no conversation was created.`)}}return r||s&&i&&c&&a.status===`active`?null:f?(0,X.jsx)(ji,{onClose:()=>p(!1),onTryPalette:()=>{p(!1),l(!0),requestAnimationFrame(()=>hl())}}):a.status===`dismissed`?null:a.status===`choosing`?(0,X.jsx)(MF,{projectName:o?.name}):(0,X.jsx)(IF,{collapsed:c,target:a.status===`active`&&a.currentStep?Mi[a.currentStep]:void 0,children:(0,X.jsx)(ki,{stepKey:a.status===`active`?a.currentStep??`project`:a.status,order:a.status===`finished`?100:a.status===`active`?Pi(a.goal).indexOf(a.currentStep)+1:0,children:a.status===`active`?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(PF,{collapsed:c,setCollapsed:l,onAction:g,onSettings:()=>{pl(`ai-provider`),l(!0)}}),u&&!c&&(0,X.jsx)(`p`,{role:`status`,className:`px-4 pb-4 text-xs text-text-secondary`,children:u})]}):(0,X.jsxs)(`div`,{className:`p-5`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-primary text-xs uppercase tracking-widest`,children:[(0,X.jsx)(Ft,{className:`size-4`}),`Your first steps`]}),(0,X.jsx)(`h2`,{className:`font-semibold text-lg mt-2`,children:a.status===`finished`?`Your walkthrough is complete`:a.status===`paused`?`Continue when you're ready`:`Get started with PPM`}),(0,X.jsx)(`p`,{className:`text-sm text-text-secondary leading-relaxed mt-2`,children:a.status===`finished`?`${a.completed.length} steps completed${a.skipped.length?` · ${a.skipped.length} skipped`:``}. Choose another path, or keep exploring.`:a.status===`paused`?`Your progress is saved in this browser. Resume here or choose a different guide.`:`Choose a guide that fits your experience, then try your first task.`}),(0,X.jsx)(q,{className:`w-full min-h-11 mt-4`,onClick:()=>{l(!1),a.status===`paused`?a.resume(o?.name??null):a.status===`finished`?a.replay():a.begin()},children:a.status===`paused`?`Resume tour`:a.status===`finished`?`Try another guide`:`Start guided tour`}),(0,X.jsx)(q,{variant:`ghost`,className:`w-full min-h-11 mt-1`,onClick:a.dismiss,children:a.status===`finished`?`Keep exploring`:`Maybe later`}),(0,X.jsx)(q,{variant:`link`,className:`w-full min-h-11`,onClick:()=>p(!0),children:`Quick orientation`})]})})})}var VF=(0,Y.lazy)(()=>H(()=>import(`./mobile-explorer-sheet-CqCsLWSr.js`).then(e=>({default:e.MobileExplorerSheet})),__vite__mapDeps([204,1,2,3,92,6,30,7,9,43,12,58,59,60,15,16,17,35,63,11,19,23,8,10,27,13,14,93,49,38]))),HF=(0,Y.lazy)(()=>H(()=>import(`./agent-session-sheet-CBMsnl_p.js`).then(e=>({default:e.AgentSessionSheet})),__vite__mapDeps([205,1,14,2,3,32,9,15,6,16,17,19]))),UF=(0,Y.lazy)(()=>H(()=>import(`./remote-desktop-mobile-sheet-X12QbPhO.js`).then(e=>({default:e.RemoteDesktopMobileSheet})),__vite__mapDeps([206,1,14,2,3,7,8,6,9,10,11,12,13,99,19,20,16])));function WF(){_N();let[e,t]=(0,Y.useState)(`checking`),n=hi(),[r,i]=(0,Y.useState)(!1),[a,o]=(0,Y.useState)(),[s,c]=(0,Y.useState)(!1),[l,u]=(0,Y.useState)(()=>new Set([`__global__`]));Rw(),(0,Y.useEffect)(()=>{UA(),PM()},[]);let d=V(e=>e.deviceName),f=G(e=>e.fetchProjects),p=V(e=>e.fetchServerInfo),m=G(e=>e.activeProject),h=(0,Y.useRef)(Nv());(0,Y.useEffect)(()=>{p()},[p,e===`authenticated`]),(0,Y.useEffect)(()=>{async function e(){let e=er();try{let n={};e&&(n.Authorization=`Bearer ${e}`),(await(await fetch(`/api/auth/check`,{headers:n})).json()).ok?t(`authenticated`):t(`unauthenticated`)}catch{t(`unauthenticated`)}}e()},[]),Bv();let{paletteOpen:g,paletteInitialQuery:_,closePalette:v}=gl();oN(),lN(),FN(),uF(e===`authenticated`),AN(e===`authenticated`,m?.name),gN(),(0,Y.useEffect)(()=>{if(e!==`authenticated`)return;let t=e=>{bF()||e.preventDefault()};return window.addEventListener(`beforeunload`,t),()=>window.removeEventListener(`beforeunload`,t)},[e]),(0,Y.useEffect)(()=>{e===`authenticated`&&(H(async()=>{let{useKeybindingsStore:e}=await import(`./keybindings-store-30LYZU0l.js`);return{useKeybindingsStore:e}},__vite__mapDeps([207,2,1,3,7])).then(({useKeybindingsStore:e})=>{e.getState().loadFromServer()}),G.getState().hydrateUiPrefs())},[e]),(0,Y.useEffect)(()=>{if(e!==`authenticated`)return;let t=h.current,n=ir();n&&(!t.projectName||t.projectName===n.name)&&sr(n)},[e]),(0,Y.useEffect)(()=>{e===`authenticated`&&f().then(async()=>{let e=h.current,{projects:t,customOrder:n}=G.getState();if(t.length===0)return;let r=e.projectName?t.find(t=>t.name===e.projectName):void 0;if(r||=Nr(t,n)[0],r&&(await Tr(r.name),G.getState().setActiveProject(r),K.getState().switchProject(r.name),e.tabType&&zv(e.tabType,e.tabIdentifier,r.name),e.openChat)){zv(`chat`,e.openChat,r.name);let t=new URL(window.location.href);t.searchParams.delete(`openChat`),window.history.replaceState(null,``,t.pathname)}})},[e,f]),(0,Y.useEffect)(()=>{let e=m?.name??`__global__`,t=!1;return(async()=>{e!==`__global__`&&!localStorage.getItem(`ppm-panels-${e}`)&&(await Tr(e),t)||K.getState().switchProject(e)})(),()=>{t=!0}},[m?.name]),(0,Y.useEffect)(()=>{e!==`authenticated`||!m?.name||H(async()=>{let{useNotificationStore:e}=await import(`./notification-store-HUVzO_bp.js`);return{useNotificationStore:e}},__vite__mapDeps([208,2,1,3,7])).then(({useNotificationStore:e})=>{e.getState().loadFromServer(m.name)})},[e,m?.name]),(0,Y.useEffect)(()=>{let e=m?.name??`__global__`;u(t=>t.has(e)?t:new Set([...t,e]))},[m?.name]),(0,Y.useEffect)(()=>{e===`authenticated`&&!m&&K.getState().switchProject(`__global__`)},[e,m]);let y=(0,Y.useCallback)(()=>{t(`authenticated`)},[]);if(e===`checking`)return(0,X.jsx)(`div`,{className:`app-backdrop min-h-dvh flex items-center justify-center`,children:(0,X.jsx)(`div`,{className:`animate-pulse text-text-secondary text-sm`,children:`Loading...`})});if(e===`unauthenticated`)return(0,X.jsx)(Lw,{onSuccess:y});let b=m?.name??`__global__`;return(0,X.jsx)(Ga,{children:(0,X.jsxs)(`div`,{className:`app-backdrop h-dvh flex flex-col text-foreground overflow-hidden relative`,children:[(0,X.jsx)(`div`,{className:`fixed z-50 overflow-hidden pointer-events-none max-md:right-0 max-md:top-0 md:left-0 md:top-0 w-10 h-10`,children:(0,X.jsx)(`div`,{className:`absolute flex items-center justify-center max-md:rotate-45 max-md:right-[-18px] max-md:top-[4px] md:-rotate-45 md:left-[-18px] md:top-[4px] w-[60px] bg-warning text-white text-[6px] font-bold leading-none py-[2.5px] shadow-sm`,children:`BETA`})}),d&&(0,X.jsx)(`div`,{className:`md:hidden fixed left-0 top-0 z-50 px-2 py-0.5 bg-primary/80 text-primary-foreground text-[10px] font-medium rounded-br`,children:d}),(0,X.jsx)(ox,{}),(0,X.jsxs)(`div`,{className:`flex flex-1 overflow-hidden`,children:[!n&&(0,X.jsx)($y,{}),(0,X.jsxs)(`div`,{className:`relative flex-1 flex flex-col overflow-hidden`,children:[[...l].map(e=>(0,X.jsx)(`div`,{className:U(`flex-1 overflow-hidden pb-12 md:pb-0`,b!==e&&`hidden`),children:(0,X.jsx)(Sd,{projectName:e})},e)),(0,X.jsx)(Vu,{}),(0,X.jsx)(Sx,{}),(0,X.jsx)(ow,{})]})]}),(0,X.jsx)(fw,{onMenuPress:()=>i(!0),onProjectsPress:()=>c(!0)}),(0,X.jsx)(Sw,{isOpen:r,onClose:()=>{i(!1),o(void 0)},initialTab:a}),(0,X.jsx)(Cw,{isOpen:s,onClose:()=>c(!1)}),(0,X.jsx)(BF,{paletteOpen:g,navigationOpen:r||s,openProjects:()=>c(!0),openNavigation:e=>{o(e),i(!0)},closeNavigation:()=>{i(!1),c(!1)}}),(0,X.jsx)(CP,{open:g,onClose:v,initialQuery:_}),(0,X.jsx)(TP,{}),(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(VF,{})}),(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(HF,{})}),(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(UF,{})}),(0,X.jsx)(jw,{}),(0,X.jsx)(EP,{}),(0,X.jsx)(FP,{}),(0,X.jsx)(WP,{}),(0,X.jsx)(YP,{}),(0,X.jsx)(eF,{}),(0,X.jsx)(nF,{}),(0,X.jsx)($P,{}),(0,X.jsx)(_F,{}),(0,X.jsx)(Ua,{position:n?`top-center`:`bottom-left`,closeButton:!0,toastOptions:{className:`bg-surface border-border text-foreground`}})]})})}var GF={minHeight:`100dvh`,display:`flex`,alignItems:`center`,justifyContent:`center`,padding:`24px`,background:`var(--bg-solid, #0a0e17)`,color:`var(--text, #eaeefb)`,font:`16px/1.5 system-ui, sans-serif`},KF={width:`100%`,maxWidth:`440px`,background:`var(--panel, #141820)`,border:`1px solid var(--border, rgba(255,255,255,0.12))`,borderRadius:`var(--rad, 18px)`,padding:`24px`},qF={minHeight:`44px`,width:`100%`,marginTop:`20px`,padding:`0 20px`,border:`none`,borderRadius:`var(--rad-sm, 12px)`,background:`var(--accent, #5b8cff)`,color:`var(--accent-fg, #fff)`,font:`inherit`,fontWeight:600,cursor:`pointer`},JF={marginTop:`16px`,maxHeight:`8lh`,overflow:`auto`,color:`var(--text-2, #9aa6c2)`,fontFamily:`ui-monospace, monospace`,fontSize:`13px`,whiteSpace:`pre-wrap`,wordBreak:`break-word`},YF=class extends Y.Component{state={error:null,stale:!1};static getDerivedStateFromError(e){return{error:e,stale:SF(e)}}componentDidCatch(e,t){console.error(`[ppm] unhandled render error`,e,t.componentStack)}render(){let{error:e,stale:t}=this.state;return e?(0,X.jsx)(`div`,{style:GF,children:(0,X.jsxs)(`div`,{style:KF,role:`alert`,children:[(0,X.jsx)(`h1`,{style:{margin:0,fontSize:`18px`,fontWeight:600},children:t?`PPM has been updated`:`Something went wrong`}),(0,X.jsx)(`p`,{style:{margin:`12px 0 0`,color:`var(--text-2, #9aa6c2)`},children:t?`This tab is still running an older version and asked for a file that no longer exists. Reloading picks up the new one.`:`The page could not finish rendering. Reloading usually clears it.`}),!t&&(0,X.jsx)(`div`,{style:JF,children:e.message}),(0,X.jsx)(`button`,{type:`button`,style:qF,onClick:()=>void wF(),children:`Reload`})]})}):this.props.children}};if(typeof Node<`u`){let e=Node.prototype.removeChild;Node.prototype.removeChild=function(t){try{return e.call(this,t)}catch(e){if(e instanceof DOMException&&e.name===`NotFoundError`)return t;throw e}};let t=Node.prototype.insertBefore;Node.prototype.insertBefore=function(e,n){try{return t.call(this,e,n)}catch(t){if(t instanceof DOMException&&t.name===`NotFoundError`)return e;throw t}}}window.__ppmEntryRan=!0,EF(),(0,Ha.createRoot)(document.getElementById(`root`)).render((0,X.jsx)(Y.StrictMode,{children:(0,X.jsx)(YF,{children:(0,X.jsx)(WF,{})})}));export{$v as $,hc as $n,ip as $t,TM as A,td as An,sh as At,Hx as B,lu as Bn,rm as Bt,FM as C,sd as Cn,ag as Ct,GM as D,ld as Dn,Ph as Dt,BM as E,cd as En,Bh as Et,IA as F,Hu as Fn,Tm as Ft,Fb as G,dl as Gn,Rp as Gt,lx as H,El as Hn,$p as Ht,RA as I,Mu as In,wm as It,Ob as J,rl as Jn,Pp as Jt,Ab as K,el as Kn,Fp as Kt,eO as L,_u as Ln,_m as Lt,vM as M,Ku as Mn,oh as Mt,pM as N,Ju as Nn,Hm as Nt,KM as O,dd as On,ch as Ot,zA as P,Wu as Pn,Em as Pt,Wy as Q,ul as Qn,fp as Qt,QD as R,uu as Rn,lm as Rt,sN as S,rd as Sn,sg as St,WM as T,od as Tn,ng as Tt,ux as U,hl as Un,Up as Ut,dx as V,$l as Vn,nm as Vt,cx as W,pl as Wn,zp as Wt,kb as X,al as Xn,hp as Xt,Mb as Y,ol as Yn,Mp as Yt,Cb as Z,nl as Zn,pp as Zt,JN as _,tf as _n,kg as _t,fP as a,wf as an,Qs as ar,yv as at,TN as b,id as bn,rg as bt,iP as c,lf as cn,Xs as cr,fv as ct,cP as d,ff as dn,Bs as dr,uv as dt,rp as en,lc as er,Yv as et,eP as f,uf as fn,Ls as fr,J_ as ft,YN as g,cf as gn,Pa as gr,Vg as gt,oP as h,mf as hn,qa as hr,Gg as ht,uP as i,Af as in,Ys as ir,cv as it,NM as j,qu as jn,ah as jt,VM as k,ud as kn,lh as kt,tP as l,$ as ln,Hs as lr,pv as lt,sP as m,hf as mn,Ja as mr,d_ as mt,BP as n,Mf as nn,ec as nr,gv as nt,dP as o,_f as on,$s as or,vv as ot,rP as p,pf as pn,Ka as pr,__ as pt,jb as q,sl as qn,Ip as qt,DP as r,Nf as rn,qs as rr,dv as rt,nP as s,sf as sn,Zs as sr,mv as st,KP as t,tp as tn,cc as tr,xv as tt,aP as u,df as un,Ps as ur,_v as ut,VN as v,jd as vn,wg as vt,qM as w,ad as wn,ig as wt,bN as x,nd as xn,og as xt,EN as y,$u as yn,Tg as yt,Mw as z,su as zn,cm as zt};