@hienlh/ppm 0.18.12 → 0.18.14

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 (548) hide show
  1. package/AGENTS.md +17 -5
  2. package/CHANGELOG.md +27 -0
  3. package/CLAUDE.md +3 -0
  4. package/README.md +6 -6
  5. package/assets/skills/ppm/SKILL.md +1 -1
  6. package/assets/skills/ppm/references/cli-reference.md +4 -4
  7. package/assets/skills/ppm/references/http-api.md +19 -1
  8. package/dist/web/assets/{adaptive-context-menu-DGCKKeTy.js → adaptive-context-menu-DCZtgOL7.js} +1 -1
  9. package/dist/web/assets/{ai-resource-editor-BOHHTTe7.js → ai-resource-editor-D5CPBg06.js} +1 -1
  10. package/dist/web/assets/{ai-settings-section-BigC_nZR.js → ai-settings-section-DY-t1bK8.js} +1 -1
  11. package/dist/web/assets/{angular-html-BYPaydvh.js → angular-html-CTvM4ulF.js} +1 -1
  12. package/dist/web/assets/{angular-ts-Bb4AMKlk.js → angular-ts-B_vSkjco.js} +1 -1
  13. package/dist/web/assets/api-client-BogqsFna.js +1 -0
  14. package/dist/web/assets/{api-settings-Bd3M4YpI.js → api-settings-B2iNXQ0c.js} +1 -1
  15. package/dist/web/assets/api-settings-DRF9oYkn.js +1 -0
  16. package/dist/web/assets/{api-themes-Cpx419SL.js → api-themes-DrWnJbhs.js} +1 -1
  17. package/dist/web/assets/{apl-DB2VjFCS.js → apl-DywzTry0.js} +1 -1
  18. package/dist/web/assets/architecture-PBZL5I3N-nw5-j_I_.js +1 -0
  19. package/dist/web/assets/{astro-BeoJdVpk.js → astro-1JaRgaSb.js} +1 -1
  20. package/dist/web/assets/{audio-preview-BgFuTn-0.js → audio-preview-DAuGvOiK.js} +1 -1
  21. package/dist/web/assets/{blade-Cf2q1sPf.js → blade-CDeeJWBb.js} +1 -1
  22. package/dist/web/assets/{bsl-W1kOaNpu.js → bsl-BfgoPVYR.js} +1 -1
  23. package/dist/web/assets/{button-5zTrkEoN.js → button-tNy0ba3y.js} +1 -1
  24. package/dist/web/assets/{cairo-BoAZFcje.js → cairo-C26gNwWW.js} +1 -1
  25. package/dist/web/assets/chat-tab-IcnU3nqQ.js +15 -0
  26. package/dist/web/assets/{cobol-B0Nm7RXj.js → cobol-D92nBnON.js} +1 -1
  27. package/dist/web/assets/code-editor-Dno5Srkm.js +10 -0
  28. package/dist/web/assets/{coffee-BakMn3on.js → coffee-CIWH40R1.js} +1 -1
  29. package/dist/web/assets/{conflict-editor-BUs5k9q_.js → conflict-editor-CDp0I3mD.js} +1 -1
  30. package/dist/web/assets/{context-menu-Bq92km4s.js → context-menu-BO1c9jKy.js} +1 -1
  31. package/dist/web/assets/{cpp-BRAJQHK2.js → cpp-DOrBqXCn.js} +1 -1
  32. package/dist/web/assets/{crystal-kqqO3zkK.js → crystal-BNKqmHux.js} +1 -1
  33. package/dist/web/assets/{csv-preview-ByoDgLAZ.js → csv-preview-D4svNDAq.js} +1 -1
  34. package/dist/web/assets/{data-grid-overlay-editor-Brkf9z41.js → data-grid-overlay-editor-BqV0AxZg.js} +1 -1
  35. package/dist/web/assets/{database-viewer-Btc3h8Yu.js → database-viewer-BCvv_Bwf.js} +1 -1
  36. package/dist/web/assets/{dialog-DwtGlowE.js → dialog-DcLGDwaX.js} +1 -1
  37. package/dist/web/assets/diff-viewer-D41fCFAi.js +4 -0
  38. package/dist/web/assets/{docx-preview-DAD_vg59.js → docx-preview-DfaQn9v7.js} +1 -1
  39. package/dist/web/assets/{edge-Cq1ZKZuE.js → edge-Dbjp42Pt.js} +1 -1
  40. package/dist/web/assets/{edit-diff-preview-B_VE7ppQ.js → edit-diff-preview-BqcUuFCc.js} +1 -1
  41. package/dist/web/assets/{elixir-BM_JoJRk.js → elixir-na3b1pYy.js} +1 -1
  42. package/dist/web/assets/{elm-Dw7oO08Y.js → elm-_Nalil1R.js} +1 -1
  43. package/dist/web/assets/{erb-CfKOGAfk.js → erb-CW_7dubf.js} +1 -1
  44. package/dist/web/assets/{erlang-DlDmGVeE.js → erlang-DmZ7Zzb0.js} +1 -1
  45. package/dist/web/assets/{esm-DGAP0GFh.js → esm-CwyBetO1.js} +1 -1
  46. package/dist/web/assets/explorer-body-DB1L30pa.js +2 -0
  47. package/dist/web/assets/explorer-window-content-Cwlt3C3I.js +1 -0
  48. package/dist/web/assets/{extension-store-Cpfh2vMm.js → extension-store-DUaZINyC.js} +1 -1
  49. package/dist/web/assets/{extension-webview-B2OnjuCu.js → extension-webview-BW_mccb3.js} +1 -1
  50. package/dist/web/assets/{file-store-aOERIEo-.js → file-store-yReVbR8q.js} +1 -1
  51. package/dist/web/assets/{fortran-fixed-form-XnAhQWxS.js → fortran-fixed-form-DB2A8L4-.js} +1 -1
  52. package/dist/web/assets/{fsharp-CdNvy0PG.js → fsharp-BYHrti7z.js} +1 -1
  53. package/dist/web/assets/{gdresource-DxuG5i8i.js → gdresource-D5GBin40.js} +1 -1
  54. package/dist/web/assets/{git-commit-3lMonsur.js → git-commit-CUiOBoIL.js} +1 -1
  55. package/dist/web/assets/{git-log-panel-Co0PBPHC.js → git-log-panel-C1QDkmgl.js} +1 -1
  56. package/dist/web/assets/{git-rebase-N8Z9kIMf.js → git-rebase-DOxGnpdw.js} +1 -1
  57. package/dist/web/assets/gitGraph-HDMCJU4V-C1xf87gN.js +1 -0
  58. package/dist/web/assets/glide-data-grid-Dz8lx6n2.js +138 -0
  59. package/dist/web/assets/{glimmer-js-Dp9OXiib.js → glimmer-js-Begy4UT7.js} +1 -1
  60. package/dist/web/assets/{glimmer-ts-CDVKBcDj.js → glimmer-ts-rPApRY8N.js} +1 -1
  61. package/dist/web/assets/{glsl-DPJxI4us.js → glsl-wrbPvrBL.js} +1 -1
  62. package/dist/web/assets/{graphql-BrFhaQQl.js → graphql-Cu4-NR__.js} +1 -1
  63. package/dist/web/assets/group-chat-tab-DFwr-pig.js +1 -0
  64. package/dist/web/assets/{hack-BzXbDMlA.js → hack-Ddo93XKD.js} +1 -1
  65. package/dist/web/assets/{haml-CPpkX0s5.js → haml-BFX_1i8j.js} +1 -1
  66. package/dist/web/assets/{handlebars-BqrApy52.js → handlebars-5gFKA4H5.js} +1 -1
  67. package/dist/web/assets/{html-DmjUl-OA.js → html-C06I-zeO.js} +1 -1
  68. package/dist/web/assets/{html-derivative-Cnd6XFR5.js → html-derivative-e5JLAFZF.js} +1 -1
  69. package/dist/web/assets/{http-DMLWYun2.js → http-CrAAhSU7.js} +1 -1
  70. package/dist/web/assets/{hurl-CKkCVxbj.js → hurl-T1V3SX9T.js} +1 -1
  71. package/dist/web/assets/{hxml-CAx19TtQ.js → hxml-B056LLKN.js} +1 -1
  72. package/dist/web/assets/{image-preview-DHUoylQ1.js → image-preview-DWyuCYT3.js} +1 -1
  73. package/dist/web/assets/index-DWpNR3nB.css +2 -0
  74. package/dist/web/assets/index-oUKV5nIA.js +52 -0
  75. package/dist/web/assets/info-3K5VOQVL-C2z7FTDe.js +1 -0
  76. package/dist/web/assets/{input-DcEk7mA3.js → input-DouJ9Zvt.js} +1 -1
  77. package/dist/web/assets/{jinja-BmB9YN9l.js → jinja-DGdtRh43.js} +1 -1
  78. package/dist/web/assets/{jison-BaVsKKpw.js → jison-Ah6QobPS.js} +1 -1
  79. package/dist/web/assets/{julia-BgVBLveX.js → julia-BJeGOK0K.js} +1 -1
  80. package/dist/web/assets/{just-C2ENIbl9.js → just-iw9oRs7j.js} +1 -1
  81. package/dist/web/assets/{keybindings-store-BGIyqXHI.js → keybindings-store-0Wqfa7Qp.js} +1 -1
  82. package/dist/web/assets/keybindings-store-d54pv2NK.js +1 -0
  83. package/dist/web/assets/{latex-BiDIWxKL.js → latex-DHjj5hyN.js} +1 -1
  84. package/dist/web/assets/{liquid-NxpapreE.js → liquid-B-FFecDc.js} +1 -1
  85. package/dist/web/assets/{lua-DVepQvwH.js → lua-DDianJp_.js} +1 -1
  86. package/dist/web/assets/{markdown-renderer-DlcDhgrF.js → markdown-renderer-BHiUhQN8.js} +3 -3
  87. package/dist/web/assets/markdown-renderer-CnE36_gd.js +1 -0
  88. package/dist/web/assets/{marko-CJ2606Xl.js → marko-BW5SBVng.js} +1 -1
  89. package/dist/web/assets/{mdc-D2bjqclE.js → mdc-B9gL9bjl.js} +1 -1
  90. package/dist/web/assets/{media-url-H17XJF-I.js → media-url-DUK-k0bB.js} +1 -1
  91. package/dist/web/assets/{mobile-bottom-sheet-g-r2hCFa.js → mobile-bottom-sheet-CJ7ApOkI.js} +1 -1
  92. package/dist/web/assets/mobile-explorer-sheet-BzjlS1Xn.js +1 -0
  93. package/dist/web/assets/{nextflow-BtJwUbfF.js → nextflow-dTluY6qy.js} +1 -1
  94. package/dist/web/assets/{nginx-j4gyIhHE.js → nginx-DlwghGI-.js} +1 -1
  95. package/dist/web/assets/{nim-ClH_gjP5.js → nim-N9jddb5D.js} +1 -1
  96. package/dist/web/assets/notification-store-C7UBqxYP.js +1 -0
  97. package/dist/web/assets/{number-overlay-editor-C1EqJnWq.js → number-overlay-editor-BVXM7aAs.js} +1 -1
  98. package/dist/web/assets/{overview-panel-vTeeJYVZ.js → overview-panel-DCCDmtCQ.js} +1 -1
  99. package/dist/web/assets/packet-RMMSAZCW-DQUxN0wU.js +1 -0
  100. package/dist/web/assets/{panel-store-BSnkjgHt.js → panel-store-B4rijFKN.js} +1 -1
  101. package/dist/web/assets/{pdf-preview-CqFGRY0Z.js → pdf-preview-D7yLmAZW.js} +1 -1
  102. package/dist/web/assets/{perl-C9H7X7CT.js → perl-CkmpYKa_.js} +1 -1
  103. package/dist/web/assets/{php-Bx2U-cQ_.js → php-BwZ3KDPo.js} +1 -1
  104. package/dist/web/assets/pie-UPGHQEXC-BOr9ek4Q.js +1 -0
  105. package/dist/web/assets/{postgres-viewer-DHwcQucn.js → postgres-viewer--CRN1fvO.js} +3 -3
  106. package/dist/web/assets/{process-table-BGRJNlpn.js → process-table-CXC10GSy.js} +1 -1
  107. package/dist/web/assets/{project-store--nvQiy75.js → project-store-BuY7rxn_.js} +1 -1
  108. package/dist/web/assets/{pug-Cw74sKsE.js → pug-B3rBPqQo.js} +1 -1
  109. package/dist/web/assets/{qml-BXD94Eqz.js → qml-BfDbWFmg.js} +1 -1
  110. package/dist/web/assets/radar-KQ55EAFF-DSErxZFb.js +1 -0
  111. package/dist/web/assets/{razor-DZ0-Ge0S.js → razor-B1ww1r38.js} +1 -1
  112. package/dist/web/assets/{rst-Dtdh0QUj.js → rst-C0MSq6m-.js} +1 -1
  113. package/dist/web/assets/{ruby-BC51BW2Q.js → ruby-ClIZ1wb3.js} +1 -1
  114. package/dist/web/assets/{run-in-terminal-Sd3KyjN4.js → run-in-terminal-4efbW2Xv.js} +1 -1
  115. package/dist/web/assets/{sas-BN8i4qOU.js → sas-DR0j3o4_.js} +1 -1
  116. package/dist/web/assets/{scroll-area-0gljZ6lF.js → scroll-area-ZP8wcwTI.js} +1 -1
  117. package/dist/web/assets/{scss-H-QtA7Rz.js → scss-Vh3JLayR.js} +1 -1
  118. package/dist/web/assets/{send-to-chat-u6m8l-rH.js → send-to-chat-BNrEpAyC.js} +1 -1
  119. package/dist/web/assets/{settings-store-CHY6Kzin.js → settings-store-OLJE7dPH.js} +2 -2
  120. package/dist/web/assets/{settings-tab-IY6K1MiZ.js → settings-tab-B1rvHFc6.js} +1 -1
  121. package/dist/web/assets/settings-tab-BUlmPJ2w.js +1 -0
  122. package/dist/web/assets/{shaderlab-CalNsj_x.js → shaderlab-0rHRnQ18.js} +1 -1
  123. package/dist/web/assets/{shellsession-BFrcoR8x.js → shellsession-Dxdw6D8c.js} +1 -1
  124. package/dist/web/assets/{soy-CNbku7vP.js → soy-BHlSNj1y.js} +1 -1
  125. package/dist/web/assets/{sparql-BN_orcVp.js → sparql-B2QaPpni.js} +1 -1
  126. package/dist/web/assets/{sql-query-editor-C6pC3I8l.js → sql-query-editor-R_iKjPP9.js} +1 -1
  127. package/dist/web/assets/{sqlite-viewer-DTr5PzUb.js → sqlite-viewer-b2onA0SP.js} +1 -1
  128. package/dist/web/assets/{stata-C6a5Ijzq.js → stata-CwIxjsEJ.js} +1 -1
  129. package/dist/web/assets/{surrealql-ClplI_HY.js → surrealql-C6vo-rp-.js} +1 -1
  130. package/dist/web/assets/{svelte-DNm-UNXB.js → svelte-LLdJ6rlH.js} +1 -1
  131. package/dist/web/assets/{switch-DKvKya9y.js → switch-DV-BDjyk.js} +1 -1
  132. package/dist/web/assets/system-monitor-body-DPYQlBEt.js +2 -0
  133. package/dist/web/assets/system-monitor-tab-CPQdWv27.js +1 -0
  134. package/dist/web/assets/{system-monitor-window-content-BUqRsPK2.js → system-monitor-window-content-BPif0azo.js} +1 -1
  135. package/dist/web/assets/tab-host-window-content-BnAN6m4K.js +1 -0
  136. package/dist/web/assets/{tab-store-CJuJRapl.js → tab-store-tFnyPmm4.js} +1 -1
  137. package/dist/web/assets/team-member-sheet-Bu2wG1sm.js +2 -0
  138. package/dist/web/assets/{team-member-window-content-T4Q5JI-G.js → team-member-window-content-BSyU-5Uc.js} +1 -1
  139. package/dist/web/assets/{templ-CSdqVobu.js → templ-CJGvhEP5.js} +1 -1
  140. package/dist/web/assets/{terminal-tab-Bb2rZegQ.js → terminal-tab-Ncor0Rfu.js} +3 -3
  141. package/dist/web/assets/{tex-DzSJ4kcZ.js → tex-psXWhc4t.js} +1 -1
  142. package/dist/web/assets/{tool-cards-lhqhrDTT.js → tool-cards-DdVP1wrD.js} +4 -4
  143. package/dist/web/assets/treemap-KZPCXAKY-C17p0LQw.js +1 -0
  144. package/dist/web/assets/{ts-tags-C28w3bTg.js → ts-tags-D5Ar_ZCO.js} +1 -1
  145. package/dist/web/assets/{twig-i5jY3QXB.js → twig-vJgGC-qY.js} +1 -1
  146. package/dist/web/assets/{use-blob-url-Dsq9OjTh.js → use-blob-url-BOVGWg9F.js} +1 -1
  147. package/dist/web/assets/use-coarse-long-press-BmI_GVW5.js +1 -0
  148. package/dist/web/assets/use-monaco-theme-BshnLXoY.js +1 -0
  149. package/dist/web/assets/{use-open-team-member-DkiEjFYE.js → use-open-team-member-CY3wOdWL.js} +1 -1
  150. package/dist/web/assets/{use-websocket-B8R50f7f.js → use-websocket-B7xjNsyD.js} +1 -1
  151. package/dist/web/assets/{vendor-mermaid-By4AVvJY.js → vendor-mermaid-999ksD45.js} +1 -1
  152. package/dist/web/assets/video-preview-7F72sRwf.js +1 -0
  153. package/dist/web/assets/{vue-Ceyet_lv.js → vue-BWngFyav.js} +1 -1
  154. package/dist/web/assets/{vue-html-GuU7g_hg.js → vue-html-BN5ZLu-H.js} +1 -1
  155. package/dist/web/assets/{vue-vine-CxXoaJr2.js → vue-vine-BZHnO8yV.js} +1 -1
  156. package/dist/web/assets/window-pip-registry-BnYU83LE.js +1 -0
  157. package/dist/web/assets/{window-store-CsEW6jiE.js → window-store-CQ1lghvv.js} +1 -1
  158. package/dist/web/assets/{xml-CbqOVhkP.js → xml-DS2beZHp.js} +1 -1
  159. package/dist/web/assets/{xsl-KfAmCauy.js → xsl-Ciiku1Bq.js} +1 -1
  160. package/dist/web/index.html +47 -45
  161. package/dist/web/sw.js +1 -1
  162. package/docs/architecture/ai-chat-and-providers.md +309 -0
  163. package/docs/architecture/data-and-storage.md +356 -0
  164. package/docs/architecture/extensions.md +496 -0
  165. package/docs/architecture/integrations.md +214 -0
  166. package/docs/architecture/workspace-and-ui.md +399 -0
  167. package/docs/claude-agent-sdk-reference.md +1 -1
  168. package/docs/code-patterns.md +361 -0
  169. package/docs/code-standards.md +8 -358
  170. package/docs/codebase-subsystems.md +364 -0
  171. package/docs/codebase-summary.md +34 -379
  172. package/docs/deployment-guide.md +280 -490
  173. package/docs/design-guidelines.md +4 -3
  174. package/docs/lessons-learned.md +27 -10
  175. package/docs/project-changelog.md +18 -806
  176. package/docs/project-overview-pdr.md +117 -111
  177. package/docs/project-roadmap.md +89 -133
  178. package/docs/system-architecture.md +77 -1826
  179. package/package.json +2 -2
  180. package/src/cli/commands/autostart.ts +2 -2
  181. package/src/cli/commands/config-cmd.ts +12 -3
  182. package/src/cli/commands/status.ts +3 -2
  183. package/src/cli/commands/stop.ts +32 -4
  184. package/src/server/index.ts +17 -3
  185. package/src/server/routes/chat-unread.ts +36 -0
  186. package/src/server/routes/named-tunnel.ts +132 -0
  187. package/src/server/routes/tunnel.ts +13 -0
  188. package/src/server/ws/chat.ts +5 -2
  189. package/src/services/autostart-register.ts +47 -29
  190. package/src/services/cloud.service.ts +26 -1
  191. package/src/services/config-secret-keys.ts +48 -0
  192. package/src/services/config.service.ts +1 -1
  193. package/src/services/db.service.ts +62 -12
  194. package/src/services/edge-forwarder.ts +191 -191
  195. package/src/services/extension-rpc-handlers.ts +9 -1
  196. package/src/services/file-watcher/watch-tree.ts +67 -33
  197. package/src/services/file-watcher.service.ts +28 -10
  198. package/src/services/fs-credential-path-guard.ts +103 -0
  199. package/src/services/fs-path-guard.service.ts +14 -66
  200. package/src/services/named-tunnel/cloudflare-dns-api.ts +40 -0
  201. package/src/services/named-tunnel/cloudflare-zone-api.ts +28 -0
  202. package/src/services/named-tunnel/cloudflared-cert.ts +95 -0
  203. package/src/services/named-tunnel/cloudflared-exec.ts +50 -0
  204. package/src/services/named-tunnel/cloudflared-login-helpers.ts +98 -0
  205. package/src/services/named-tunnel/cloudflared-login.service.ts +182 -0
  206. package/src/services/named-tunnel/hostname-rules.ts +58 -0
  207. package/src/services/named-tunnel/login-output-parser.ts +36 -0
  208. package/src/services/named-tunnel/named-tunnel-args.ts +110 -0
  209. package/src/services/named-tunnel/named-tunnel-config.ts +67 -0
  210. package/src/services/named-tunnel/named-tunnel-probe-state.ts +95 -0
  211. package/src/services/named-tunnel/named-tunnel-readiness.ts +59 -0
  212. package/src/services/named-tunnel/named-tunnel-runtime.ts +42 -0
  213. package/src/services/named-tunnel/named-tunnel-setup-confirm.ts +98 -0
  214. package/src/services/named-tunnel/named-tunnel-setup.service.ts +191 -0
  215. package/src/services/supervisor-state.ts +67 -2
  216. package/src/services/supervisor.ts +454 -157
  217. package/src/services/tunnel-registry-parse.ts +27 -0
  218. package/src/services/tunnel-registry.service.ts +2 -15
  219. package/src/services/tunnel.service.ts +12 -3
  220. package/src/services/windows-process-tree.ts +351 -351
  221. package/src/types/config.ts +31 -0
  222. package/src/web/app.tsx +5 -0
  223. package/src/web/components/chat/chat-history-bar.tsx +95 -98
  224. package/src/web/components/chat/chat-toolbar-overflow-menu.tsx +57 -0
  225. package/src/web/components/chat/session-debug-dialog.tsx +35 -27
  226. package/src/web/components/floating-window/floating-window.tsx +8 -1
  227. package/src/web/components/floating-window/open-tab-in-pip.ts +78 -0
  228. package/src/web/components/floating-window/window-pip-registry.ts +46 -0
  229. package/src/web/components/layout/cloud-share-named-tunnel-row.tsx +111 -0
  230. package/src/web/components/layout/cloud-share-popover.tsx +56 -14
  231. package/src/web/components/layout/tab-pop-out-menu-item.tsx +25 -2
  232. package/src/web/components/shared/connection-lost-overlay.tsx +44 -5
  233. package/src/web/components/tunnels/named-tunnel/hostname-validation.ts +14 -0
  234. package/src/web/components/tunnels/named-tunnel/named-tunnel-copy.ts +96 -0
  235. package/src/web/components/tunnels/named-tunnel/named-tunnel-hostname-field.tsx +51 -0
  236. package/src/web/components/tunnels/named-tunnel/named-tunnel-login-step.tsx +105 -0
  237. package/src/web/components/tunnels/named-tunnel/named-tunnel-section.tsx +159 -0
  238. package/src/web/components/tunnels/named-tunnel/named-tunnel-setup-content.tsx +197 -0
  239. package/src/web/components/tunnels/named-tunnel/named-tunnel-setup-popup.tsx +57 -0
  240. package/src/web/components/tunnels/named-tunnel/named-tunnel-step-reducer.ts +191 -0
  241. package/src/web/components/tunnels/named-tunnel/use-named-tunnel-setup.ts +212 -0
  242. package/src/web/components/tunnels/tunnel-manager-tab.tsx +4 -0
  243. package/src/web/hooks/use-global-events.ts +3 -1
  244. package/src/web/lib/api-named-tunnel.ts +54 -0
  245. package/src/web/lib/last-known-local-url.ts +23 -0
  246. package/src/web/stores/notification-store.ts +20 -1
  247. package/dist/web/assets/api-client-DTZEgjBQ.js +0 -1
  248. package/dist/web/assets/api-settings-kd1j4iR8.js +0 -1
  249. package/dist/web/assets/architecture-PBZL5I3N-8dCMT9r7.js +0 -1
  250. package/dist/web/assets/chat-tab-E3bf_V8X.js +0 -15
  251. package/dist/web/assets/code-editor-BUlM2gXk.js +0 -10
  252. package/dist/web/assets/diff-viewer-CZaDnR4w.js +0 -4
  253. package/dist/web/assets/explorer-body-9aBmyVpZ.js +0 -2
  254. package/dist/web/assets/explorer-window-content-DRtqoSPA.js +0 -1
  255. package/dist/web/assets/gitGraph-HDMCJU4V-2e_8dfbs.js +0 -1
  256. package/dist/web/assets/glide-data-grid-C4_zIneN.js +0 -138
  257. package/dist/web/assets/group-chat-tab-rOd8J8GC.js +0 -1
  258. package/dist/web/assets/index-BImUaigO.js +0 -52
  259. package/dist/web/assets/index-CSfi6DSU.css +0 -2
  260. package/dist/web/assets/info-3K5VOQVL-BZi1Gha1.js +0 -1
  261. package/dist/web/assets/keybindings-store-CzV2sPls.js +0 -1
  262. package/dist/web/assets/markdown-renderer-CcbR33VG.js +0 -1
  263. package/dist/web/assets/mobile-explorer-sheet-SIwQXlwA.js +0 -1
  264. package/dist/web/assets/notification-store-DV5QtUTg.js +0 -1
  265. package/dist/web/assets/packet-RMMSAZCW-o5htEcin.js +0 -1
  266. package/dist/web/assets/pie-UPGHQEXC-BXAIFSAD.js +0 -1
  267. package/dist/web/assets/radar-KQ55EAFF-Dbt2Aebl.js +0 -1
  268. package/dist/web/assets/settings-tab-Dic6TKkU.js +0 -1
  269. package/dist/web/assets/system-monitor-body-iwGiCns9.js +0 -2
  270. package/dist/web/assets/system-monitor-tab-DdXQhEel.js +0 -1
  271. package/dist/web/assets/tab-host-window-content-BnqGPu8a.js +0 -1
  272. package/dist/web/assets/team-member-sheet-LkAFSCvb.js +0 -2
  273. package/dist/web/assets/treemap-KZPCXAKY-DUbnl9dz.js +0 -1
  274. package/dist/web/assets/use-monaco-theme-BZvlsoBv.js +0 -1
  275. package/dist/web/assets/video-preview-m0-3p7QZ.js +0 -1
  276. package/packages/vscode-compat/node_modules/.bin/tsc.bunx +0 -0
  277. package/packages/vscode-compat/node_modules/.bin/tsc.exe +0 -0
  278. package/packages/vscode-compat/node_modules/.bin/tsserver.bunx +0 -0
  279. package/packages/vscode-compat/node_modules/.bin/tsserver.exe +0 -0
  280. /package/dist/web/assets/{abap-C6nB04tn.js → abap-CjzrhAS2.js} +0 -0
  281. /package/dist/web/assets/{actionscript-3-Vx4rw2sC.js → actionscript-3-B59Kbl-9.js} +0 -0
  282. /package/dist/web/assets/{ada-Ccd8vM20.js → ada-B7gItKAE.js} +0 -0
  283. /package/dist/web/assets/{andromeeda-DnBX5xMg.js → andromeeda-Dy5zcy0Q.js} +0 -0
  284. /package/dist/web/assets/{apache-B-9_sx0g.js → apache-B6T9jrc0.js} +0 -0
  285. /package/dist/web/assets/{apex-_wPVBYoL.js → apex-CTsIxDQw.js} +0 -0
  286. /package/dist/web/assets/{api-client-aQb5hHE5.js → api-client-oY1tC3tM.js} +0 -0
  287. /package/dist/web/assets/{applescript-CcvD-qr0.js → applescript-DuycKmmb.js} +0 -0
  288. /package/dist/web/assets/{apply-theme-BeLRfsSu.js → apply-theme-r8tKDrCR.js} +0 -0
  289. /package/dist/web/assets/{ara-C40Ztoms.js → ara-CISL3599.js} +0 -0
  290. /package/dist/web/assets/{asciidoc-CybYkJV4.js → asciidoc-BXyE2Lpr.js} +0 -0
  291. /package/dist/web/assets/{asm-9eOKwzR0.js → asm-y258phtP.js} +0 -0
  292. /package/dist/web/assets/{aurora-x-B5ZH4t7t.js → aurora-x-Dq3Jc78M.js} +0 -0
  293. /package/dist/web/assets/{awk-Dqilob-2.js → awk-DxL6XSJv.js} +0 -0
  294. /package/dist/web/assets/{ayu-dark-CPgRhf5r.js → ayu-dark-DjoK6Evo.js} +0 -0
  295. /package/dist/web/assets/{ayu-light-Do06Q52f.js → ayu-light-CKKXBLMI.js} +0 -0
  296. /package/dist/web/assets/{ayu-mirage-_BhxcrxY.js → ayu-mirage-DGXSrrXB.js} +0 -0
  297. /package/dist/web/assets/{ballerina-DDwK54QW.js → ballerina-DZSXFmUf.js} +0 -0
  298. /package/dist/web/assets/{bat-BGyGlzGk.js → bat-BNsZk6nY.js} +0 -0
  299. /package/dist/web/assets/{beancount-CRWBdapI.js → beancount-cPl4gJct.js} +0 -0
  300. /package/dist/web/assets/{berry-DbSFn2gO.js → berry-DGAodERk.js} +0 -0
  301. /package/dist/web/assets/{bibtex-QpsV9gm9.js → bibtex-DftVoRif.js} +0 -0
  302. /package/dist/web/assets/{bicep-CxS8CUve.js → bicep-Suioyyzh.js} +0 -0
  303. /package/dist/web/assets/{bird2-CuZhQzYR.js → bird2-DjU24I2P.js} +0 -0
  304. /package/dist/web/assets/{c-9bnDqE3g.js → c-DFi8Y_nN.js} +0 -0
  305. /package/dist/web/assets/{c3-JMZTrOhA.js → c3-1eSHnH5V.js} +0 -0
  306. /package/dist/web/assets/{cadence-DsDNayJS.js → cadence-DLLsFwQP.js} +0 -0
  307. /package/dist/web/assets/{can-open-in-ppm-BJfpynya.js → can-open-in-ppm-in727eFQ.js} +0 -0
  308. /package/dist/web/assets/{catppuccin-frappe-DYIKXXBe.js → catppuccin-frappe-DDj0JEiY.js} +0 -0
  309. /package/dist/web/assets/{catppuccin-latte-IYYOnUJ8.js → catppuccin-latte-DPyANHyR.js} +0 -0
  310. /package/dist/web/assets/{catppuccin-macchiato-BrJ_7mfS.js → catppuccin-macchiato-CO-h8VTT.js} +0 -0
  311. /package/dist/web/assets/{catppuccin-mocha-gzSu7v7-.js → catppuccin-mocha-BCmbN2IZ.js} +0 -0
  312. /package/dist/web/assets/{clarity-DLzsC0Hb.js → clarity-C0pYsZjs.js} +0 -0
  313. /package/dist/web/assets/{clipboard-7fw0Shic.js → clipboard-DBLGKMrH.js} +0 -0
  314. /package/dist/web/assets/{clojure-DS1BvoTt.js → clojure-JFr6s8iZ.js} +0 -0
  315. /package/dist/web/assets/{cmake-CDvsJwYp.js → cmake-EEcLEgVy.js} +0 -0
  316. /package/dist/web/assets/{codeowners-BjsYiflJ.js → codeowners-Deh3Lx0u.js} +0 -0
  317. /package/dist/web/assets/{codeql-CG-7ARat.js → codeql-C317igT5.js} +0 -0
  318. /package/dist/web/assets/{common-lisp-DSO1Lbh9.js → common-lisp-DepbATZs.js} +0 -0
  319. /package/dist/web/assets/{coq-DYdh3oP_.js → coq-MxgxU5ya.js} +0 -0
  320. /package/dist/web/assets/{csharp-DxEBz5s0.js → csharp-eEFXdsAq.js} +0 -0
  321. /package/dist/web/assets/{css-dal3Q-8C.js → css-Db-syWW9.js} +0 -0
  322. /package/dist/web/assets/{csv-CpqjMGiA.js → csv-DHeYcbaq.js} +0 -0
  323. /package/dist/web/assets/{csv-parser-3umBA4NY.js → csv-parser-_JWMLGl3.js} +0 -0
  324. /package/dist/web/assets/{cue-DinoJ_5k.js → cue-BmUNowrt.js} +0 -0
  325. /package/dist/web/assets/{cypher-DzxqmkUW.js → cypher-XjXHgCNS.js} +0 -0
  326. /package/dist/web/assets/{d-BxNwJuEC.js → d-BWJnZtig.js} +0 -0
  327. /package/dist/web/assets/{dark-plus-Clmv3V-0.js → dark-plus-Db7umas1.js} +0 -0
  328. /package/dist/web/assets/{dart-BWVtXD35.js → dart-DSI4HYh1.js} +0 -0
  329. /package/dist/web/assets/{data-grid-types-B4n51Fck.js → data-grid-types-CfVHh9gv.js} +0 -0
  330. /package/dist/web/assets/{dax-DsImuWgJ.js → dax-yw1JsAni.js} +0 -0
  331. /package/dist/web/assets/{desktop-B0jJuG2r.js → desktop-C2QO4RvD.js} +0 -0
  332. /package/dist/web/assets/{diff-CWqAAxoE.js → diff-Drt8aEyp.js} +0 -0
  333. /package/dist/web/assets/{dist-B-EXdSYE.js → dist-DNRvhVdz.js} +0 -0
  334. /package/dist/web/assets/{dist-C0eNNfbt.js → dist-VBxOHLmN.js} +0 -0
  335. /package/dist/web/assets/{docker-CYFCJdIL.js → docker-ByDKbmLl.js} +0 -0
  336. /package/dist/web/assets/{dotenv-CKDUjURg.js → dotenv-BkfOLytR.js} +0 -0
  337. /package/dist/web/assets/{dracula-CSoPspHE.js → dracula-DAmrm-Un.js} +0 -0
  338. /package/dist/web/assets/{dracula-soft-BuFjw5L1.js → dracula-soft-BUOEnKqR.js} +0 -0
  339. /package/dist/web/assets/{dream-maker-B6PdDRZu.js → dream-maker-DQBIfSiO.js} +0 -0
  340. /package/dist/web/assets/{emacs-lisp-CMcXvD0G.js → emacs-lisp-Blh5kBD3.js} +0 -0
  341. /package/dist/web/assets/{everforest-dark-cU8-wYzi.js → everforest-dark-CEzhDxHq.js} +0 -0
  342. /package/dist/web/assets/{everforest-light-KhorllqK.js → everforest-light-CPk_5Khm.js} +0 -0
  343. /package/dist/web/assets/{external-link-B8BynhvY.js → external-link-B6Hl0U4X.js} +0 -0
  344. /package/dist/web/assets/{fennel-BCELZK87.js → fennel-B1MT_EBZ.js} +0 -0
  345. /package/dist/web/assets/{file-exclamation-point-CZ4DiR75.js → file-exclamation-point-JzhTU2TX.js} +0 -0
  346. /package/dist/web/assets/{fish-BQc0y_jy.js → fish-C_HGcewt.js} +0 -0
  347. /package/dist/web/assets/{fluent-BTINnwF6.js → fluent-Dp1Iclmx.js} +0 -0
  348. /package/dist/web/assets/{folder-symlink-B8XrtvQK.js → folder-symlink-Dx1hOk8X.js} +0 -0
  349. /package/dist/web/assets/{format-bytes-WVcFxJuT.js → format-bytes-53WBtyi2.js} +0 -0
  350. /package/dist/web/assets/{fortran-free-form-BQim9wDz.js → fortran-free-form-B_-UA4XC.js} +0 -0
  351. /package/dist/web/assets/{gdscript-03w5u8un.js → gdscript-Bm_JpjS_.js} +0 -0
  352. /package/dist/web/assets/{gdshader-Dp2daNzU.js → gdshader-C_PNmfYU.js} +0 -0
  353. /package/dist/web/assets/{genie-CoNcjPiD.js → genie-B5rmR2TF.js} +0 -0
  354. /package/dist/web/assets/{gherkin-NrPOSPQL.js → gherkin-BTJ34TJ9.js} +0 -0
  355. /package/dist/web/assets/{github-dark-z4RE9ZqA.js → github-dark-DOkNVj9H.js} +0 -0
  356. /package/dist/web/assets/{github-dark-default-DOKw-1cI.js → github-dark-default-DTsmiyVo.js} +0 -0
  357. /package/dist/web/assets/{github-dark-dimmed-DJRNMkEA.js → github-dark-dimmed-CjbxAe9s.js} +0 -0
  358. /package/dist/web/assets/{github-dark-high-contrast-Bj7jJ_Gs.js → github-dark-high-contrast-r_M8F_k7.js} +0 -0
  359. /package/dist/web/assets/{github-light-B4k_yMFu.js → github-light-BzfxyMyb.js} +0 -0
  360. /package/dist/web/assets/{github-light-default-BHc-Uzhs.js → github-light-default-BOqiBIy5.js} +0 -0
  361. /package/dist/web/assets/{github-light-high-contrast-CHisIywL.js → github-light-high-contrast-DQzBrDM4.js} +0 -0
  362. /package/dist/web/assets/{gleam-CfbypZ4q.js → gleam-BWmuAtD8.js} +0 -0
  363. /package/dist/web/assets/{gn-YoAjyhJa.js → gn-CNQPjiZW.js} +0 -0
  364. /package/dist/web/assets/{gnuplot-xVkc1f1c.js → gnuplot-BlHjcPMe.js} +0 -0
  365. /package/dist/web/assets/{go-GPCwP3Gu.js → go-Bn8Ba9uz.js} +0 -0
  366. /package/dist/web/assets/{groovy-Crh4Yww9.js → groovy-C1Y1_F4V.js} +0 -0
  367. /package/dist/web/assets/{gruvbox-dark-hard-BluUFuDS.js → gruvbox-dark-hard-DueOsHav.js} +0 -0
  368. /package/dist/web/assets/{gruvbox-dark-medium-Cxk1FWQp.js → gruvbox-dark-medium-DaQjD538.js} +0 -0
  369. /package/dist/web/assets/{gruvbox-dark-soft-CHXMiFmj.js → gruvbox-dark-soft-CbbX2WOm.js} +0 -0
  370. /package/dist/web/assets/{gruvbox-light-hard-B6eKPjAD.js → gruvbox-light-hard-E2M70ljZ.js} +0 -0
  371. /package/dist/web/assets/{gruvbox-light-medium-pDwMm1ut.js → gruvbox-light-medium-B_DDLY6h.js} +0 -0
  372. /package/dist/web/assets/{gruvbox-light-soft-Cxu6kHqK.js → gruvbox-light-soft-2SZmyC1F.js} +0 -0
  373. /package/dist/web/assets/{haskell-C6JKHjbK.js → haskell-D8DeoXtG.js} +0 -0
  374. /package/dist/web/assets/{haxe-BuBNdF0a.js → haxe-BmZm7B0W.js} +0 -0
  375. /package/dist/web/assets/{hcl-DZpDdGj2.js → hcl-CKnBM3ng.js} +0 -0
  376. /package/dist/web/assets/{hjson-CBkhYRuo.js → hjson-Ct9t4-ci.js} +0 -0
  377. /package/dist/web/assets/{hlsl-C5nMxnp9.js → hlsl-BZSASBqS.js} +0 -0
  378. /package/dist/web/assets/{horizon-VAFvA6R6.js → horizon-CzX1AZ08.js} +0 -0
  379. /package/dist/web/assets/{horizon-bright-BC0xn7T3.js → horizon-bright-CCVNeRIP.js} +0 -0
  380. /package/dist/web/assets/{houston-BxrUivmz.js → houston-DBlJN7xc.js} +0 -0
  381. /package/dist/web/assets/{hy-DLtOXoaH.js → hy-Dyc6h6Xb.js} +0 -0
  382. /package/dist/web/assets/{image-gallery-Gnf7TdCR.js → image-gallery-DujlrjOC.js} +0 -0
  383. /package/dist/web/assets/{imba-BdpFXM2W.js → imba-Bauru7s2.js} +0 -0
  384. /package/dist/web/assets/{ini-BInJO_T0.js → ini-SjdwtaTp.js} +0 -0
  385. /package/dist/web/assets/{java-Dxuddnkb.js → java-D2r0ocpf.js} +0 -0
  386. /package/dist/web/assets/{javascript-CVamJfLY.js → javascript-y-lof7iP.js} +0 -0
  387. /package/dist/web/assets/{json-BLZ0ozYk.js → json-DO4LSx5A.js} +0 -0
  388. /package/dist/web/assets/{json5-BnXzmMKs.js → json5-BEwWf-W3.js} +0 -0
  389. /package/dist/web/assets/{jsonc-CSgkSga7.js → jsonc-OBEFv7gP.js} +0 -0
  390. /package/dist/web/assets/{jsonl-CY5W2nF2.js → jsonl-DOyW4Mg3.js} +0 -0
  391. /package/dist/web/assets/{jsonnet-CEJYH3sF.js → jsonnet-BL5R2CpP.js} +0 -0
  392. /package/dist/web/assets/{jssm-CsJc7Uhk.js → jssm-ksPusAyg.js} +0 -0
  393. /package/dist/web/assets/{jsx-jCiRaHU7.js → jsx-B6XEu6O-.js} +0 -0
  394. /package/dist/web/assets/{kanagawa-dragon-DfoA_GxX.js → kanagawa-dragon-JBVe_ji_.js} +0 -0
  395. /package/dist/web/assets/{kanagawa-lotus-BOLYJpWd.js → kanagawa-lotus-ChprO68_.js} +0 -0
  396. /package/dist/web/assets/{kanagawa-wave-DfKlbT1G.js → kanagawa-wave-D_uB_R0Q.js} +0 -0
  397. /package/dist/web/assets/{kdl-CmssIFTi.js → kdl-pf5B8N_m.js} +0 -0
  398. /package/dist/web/assets/{kotlin-BRsNgp6x.js → kotlin-BdF0METC.js} +0 -0
  399. /package/dist/web/assets/{kusto-T8X9jUab.js → kusto-BneVP-OU.js} +0 -0
  400. /package/dist/web/assets/{laserwave-DkJMVJ8Z.js → laserwave-C4-UPIyG.js} +0 -0
  401. /package/dist/web/assets/{lean-C65KGVPq.js → lean-BN6Jdymq.js} +0 -0
  402. /package/dist/web/assets/{less-exIPdDlf.js → less-Cx-fdlDC.js} +0 -0
  403. /package/dist/web/assets/{lib-mC1NZfuw.js → lib-CMuBa85c.js} +0 -0
  404. /package/dist/web/assets/{libesm-DSutUtl1.js → libesm-BB74PRsH.js} +0 -0
  405. /package/dist/web/assets/{light-plus-DiHUXAZt.js → light-plus-DFnnn_iL.js} +0 -0
  406. /package/dist/web/assets/{llvm-CJBnEzFM.js → llvm-BGxtW0Nw.js} +0 -0
  407. /package/dist/web/assets/{loader-circle-gSPVxfvH.js → loader-circle-Dpqcv0eS.js} +0 -0
  408. /package/dist/web/assets/{lock-Did-87UV.js → lock-DldbT31x.js} +0 -0
  409. /package/dist/web/assets/{log-DxMyUMuP.js → log-kQb4eJnj.js} +0 -0
  410. /package/dist/web/assets/{logo-CC9NKzca.js → logo-DqAzaq7s.js} +0 -0
  411. /package/dist/web/assets/{luau-Bw10I6zf.js → luau-Dc2cp-zS.js} +0 -0
  412. /package/dist/web/assets/{make-C_6M90m6.js → make-DYg9dwaJ.js} +0 -0
  413. /package/dist/web/assets/{markdown-bR9_R-LF.js → markdown-O4EPpS3K.js} +0 -0
  414. /package/dist/web/assets/{material-theme-BUx2Qujn.js → material-theme-ClP8yfQ2.js} +0 -0
  415. /package/dist/web/assets/{material-theme-darker-CRJrPgKm.js → material-theme-darker-LOK55hGu.js} +0 -0
  416. /package/dist/web/assets/{material-theme-lighter-CUAYppPa.js → material-theme-lighter-j72tzZqi.js} +0 -0
  417. /package/dist/web/assets/{material-theme-ocean-DuINF1fg.js → material-theme-ocean-C19LKClA.js} +0 -0
  418. /package/dist/web/assets/{material-theme-palenight-W6_icGCj.js → material-theme-palenight-DJ5tN2ax.js} +0 -0
  419. /package/dist/web/assets/{matlab-rfqn_b3z.js → matlab-DQNZ_NU8.js} +0 -0
  420. /package/dist/web/assets/{mdx-Bh1B_YOJ.js → mdx-CJayB7XK.js} +0 -0
  421. /package/dist/web/assets/{mermaid-Dxf6Ya2k.js → mermaid-Cb0TRX92.js} +0 -0
  422. /package/dist/web/assets/{min-dark-CivZ2L0h.js → min-dark-CWM8Bo-m.js} +0 -0
  423. /package/dist/web/assets/{min-light-B1Ykqtma.js → min-light-BBR1sjS2.js} +0 -0
  424. /package/dist/web/assets/{mipsasm-DynHaM0d.js → mipsasm-Jc7u7YSS.js} +0 -0
  425. /package/dist/web/assets/{mojo-Clw5PbGH.js → mojo-CTB0cutd.js} +0 -0
  426. /package/dist/web/assets/{monitor-Dv8vn_6O.js → monitor-4vWfqzuN.js} +0 -0
  427. /package/dist/web/assets/{monokai-DFIooFZT.js → monokai-CvM_YNKx.js} +0 -0
  428. /package/dist/web/assets/{moonbit-DnBSZWGM.js → moonbit-CbFEfYYM.js} +0 -0
  429. /package/dist/web/assets/{move-CCcL2PfL.js → move-BT38p0kT.js} +0 -0
  430. /package/dist/web/assets/{narrat-BDarg5Lk.js → narrat-55QZ_kOG.js} +0 -0
  431. /package/dist/web/assets/{nextflow-groovy-DrZOeCNW.js → nextflow-groovy-Bg8peyqg.js} +0 -0
  432. /package/dist/web/assets/{night-owl-BnZZCK7v.js → night-owl-DzS77iPK.js} +0 -0
  433. /package/dist/web/assets/{night-owl-light-CEwBsVHS.js → night-owl-light-DER7fGnx.js} +0 -0
  434. /package/dist/web/assets/{nix-amCzOPMR.js → nix-BSI8YesN.js} +0 -0
  435. /package/dist/web/assets/{nord-BIs2BC6q.js → nord-9bn7iNWo.js} +0 -0
  436. /package/dist/web/assets/{nushell-Y02fo4yw.js → nushell-qDVZn_lw.js} +0 -0
  437. /package/dist/web/assets/{objective-c-7xOZtWW1.js → objective-c-Blf-ATos.js} +0 -0
  438. /package/dist/web/assets/{objective-cpp-eVtjUvVB.js → objective-cpp-Bz8bAq47.js} +0 -0
  439. /package/dist/web/assets/{ocaml-Bi6ZwqG4.js → ocaml-B9heAsc3.js} +0 -0
  440. /package/dist/web/assets/{odin-8xf1Y0S9.js → odin-BaFYnOwO.js} +0 -0
  441. /package/dist/web/assets/{one-dark-pro-hVv-_y_b.js → one-dark-pro-D6B_hSe-.js} +0 -0
  442. /package/dist/web/assets/{one-light-CJJ3MtHt.js → one-light-Ba-f0wyk.js} +0 -0
  443. /package/dist/web/assets/{openscad-B2HcywLk.js → openscad-UvYyL2MK.js} +0 -0
  444. /package/dist/web/assets/{pascal-C7fllV_7.js → pascal-B4-qvEoG.js} +0 -0
  445. /package/dist/web/assets/{pkl-qvLC1IWP.js → pkl-B146nqGx.js} +0 -0
  446. /package/dist/web/assets/{plastic-BT1wHZv2.js → plastic-L38t-Id3.js} +0 -0
  447. /package/dist/web/assets/{play-4MZi1Axp.js → play-CpCAoQRZ.js} +0 -0
  448. /package/dist/web/assets/{plsql-1MsmdmJD.js → plsql-ItOG5Cca.js} +0 -0
  449. /package/dist/web/assets/{plus-BhMZqFsN.js → plus-BR0qewJI.js} +0 -0
  450. /package/dist/web/assets/{po-BigskytD.js → po-imiCTaNX.js} +0 -0
  451. /package/dist/web/assets/{poimandres-DuklniF7.js → poimandres-Bu6sIba9.js} +0 -0
  452. /package/dist/web/assets/{polar-e2pjN_sp.js → polar-CTeGoFxV.js} +0 -0
  453. /package/dist/web/assets/{portal-container-context-Cm5HipFr.js → portal-container-context-a399Hd9F.js} +0 -0
  454. /package/dist/web/assets/{postcss-DtAeYjWw.js → postcss-jvFe6GNE.js} +0 -0
  455. /package/dist/web/assets/{powerquery-Cr2PtehI.js → powerquery-D9Dw1hJp.js} +0 -0
  456. /package/dist/web/assets/{powershell-BxFTGLJ4.js → powershell-CZqvYQtg.js} +0 -0
  457. /package/dist/web/assets/{prisma-COWJiwdZ.js → prisma-B4D2nO_7.js} +0 -0
  458. /package/dist/web/assets/{prolog-DFvGKRx6.js → prolog-CQbyUcCF.js} +0 -0
  459. /package/dist/web/assets/{proto-CcK80lFt.js → proto-Cwpo0cW1.js} +0 -0
  460. /package/dist/web/assets/{puppet-BF60bZ4F.js → puppet-CKxCwBod.js} +0 -0
  461. /package/dist/web/assets/{purescript-zL_69MzU.js → purescript-B-MyXMMp.js} +0 -0
  462. /package/dist/web/assets/{python-CIwKhfb_.js → python-D6QbSR2S.js} +0 -0
  463. /package/dist/web/assets/{qmldir-CXNe04Lo.js → qmldir-BpTSVcw_.js} +0 -0
  464. /package/dist/web/assets/{qss-C8lAWe6G.js → qss-DBc4gbpe.js} +0 -0
  465. /package/dist/web/assets/{r-CL5ZVL3_.js → r-i9jMMi0s.js} +0 -0
  466. /package/dist/web/assets/{racket-BBfh0uh0.js → racket-BWNaxU7C.js} +0 -0
  467. /package/dist/web/assets/{raku-o6E8R5Q3.js → raku-fqTZLn7L.js} +0 -0
  468. /package/dist/web/assets/{react-CBTnT4sY.js → react-X4jUntEf.js} +0 -0
  469. /package/dist/web/assets/{red-GomRF2Xp.js → red-D-JEcuzA.js} +0 -0
  470. /package/dist/web/assets/{refresh-cw-B06yaBrW.js → refresh-cw-B9iv7csb.js} +0 -0
  471. /package/dist/web/assets/{reg-_ffDIvx9.js → reg-BbirlU1S.js} +0 -0
  472. /package/dist/web/assets/{regexp-Bl5sF65W.js → regexp-D8VTFrtg.js} +0 -0
  473. /package/dist/web/assets/{rel-DgMdqDuj.js → rel-ByQGKiNM.js} +0 -0
  474. /package/dist/web/assets/{resolve-theme-CRt_7wpd.js → resolve-theme-Cqb9zWYc.js} +0 -0
  475. /package/dist/web/assets/{riscv-8b3-Ye4X.js → riscv-B5nqCfLE.js} +0 -0
  476. /package/dist/web/assets/{ron-DrmU1KHP.js → ron-DOVh_iZR.js} +0 -0
  477. /package/dist/web/assets/{rose-pine-dawn-DEfhNlFH.js → rose-pine-dawn-B7hkmmWy.js} +0 -0
  478. /package/dist/web/assets/{rose-pine-C_-E2tF1.js → rose-pine-jp51ZUzi.js} +0 -0
  479. /package/dist/web/assets/{rose-pine-moon-BdvX3gdn.js → rose-pine-moon-Ff063yLj.js} +0 -0
  480. /package/dist/web/assets/{rosmsg-B6GhGpd5.js → rosmsg-Cyk7Il8z.js} +0 -0
  481. /package/dist/web/assets/{rotate-ccw-COXu_9oj.js → rotate-ccw-DnuPzJRE.js} +0 -0
  482. /package/dist/web/assets/{rust-DmC97M1-.js → rust-DRNM5epF.js} +0 -0
  483. /package/dist/web/assets/{sass-B0tJOHLM.js → sass-D_cB0-M1.js} +0 -0
  484. /package/dist/web/assets/{save-CtIGOjmx.js → save-DxonD4y1.js} +0 -0
  485. /package/dist/web/assets/{scala-n8zaFOXv.js → scala-Crl-1kKS.js} +0 -0
  486. /package/dist/web/assets/{scheme-BKD9ztBU.js → scheme-DCaWyEJ0.js} +0 -0
  487. /package/dist/web/assets/{sdbl-D8gB5-rS.js → sdbl-BbXNqwtX.js} +0 -0
  488. /package/dist/web/assets/{send-BlyNJAzy.js → send-B-t5Mz26.js} +0 -0
  489. /package/dist/web/assets/{shallow-DYo6goJ4.js → shallow-4zAfs2KW.js} +0 -0
  490. /package/dist/web/assets/{shellscript-BfXlf_Ao.js → shellscript-BAgksBhW.js} +0 -0
  491. /package/dist/web/assets/{shield-check-B0iGUiOK.js → shield-check-CdTiK1j2.js} +0 -0
  492. /package/dist/web/assets/{shield-off-BNLWBhcq.js → shield-off-DuetkXKM.js} +0 -0
  493. /package/dist/web/assets/{slack-dark-CylEddse.js → slack-dark-GB-ElUW_.js} +0 -0
  494. /package/dist/web/assets/{slack-ochin-w8wg8vuC.js → slack-ochin-tU6CFD3S.js} +0 -0
  495. /package/dist/web/assets/{smalltalk-hiAXA64u.js → smalltalk-DSVGUbtL.js} +0 -0
  496. /package/dist/web/assets/{snazzy-light-BwlV3Xty.js → snazzy-light-DZhi3PoS.js} +0 -0
  497. /package/dist/web/assets/{solarized-dark-vmNGdykz.js → solarized-dark-D6AMCco7.js} +0 -0
  498. /package/dist/web/assets/{solarized-light-DGv_0JXq.js → solarized-light-DepuTWSE.js} +0 -0
  499. /package/dist/web/assets/{solidity-Y7QSH0B1.js → solidity-CsxN618l.js} +0 -0
  500. /package/dist/web/assets/{splunk-BtgpLjHi.js → splunk-CF1m0Kkv.js} +0 -0
  501. /package/dist/web/assets/{sql-CRHYhOia.js → sql-DvyMDgrB.js} +0 -0
  502. /package/dist/web/assets/{ssh-config-DOqSs3au.js → ssh-config-a8sDo-Q8.js} +0 -0
  503. /package/dist/web/assets/{stylus-crCAEaBT.js → stylus-DCJ-6AjT.js} +0 -0
  504. /package/dist/web/assets/{swift-eE3rT7TC.js → swift-c-ZFxyPP.js} +0 -0
  505. /package/dist/web/assets/{synthwave-84-BWy14LBX.js → synthwave-84-9NPgBcuv.js} +0 -0
  506. /package/dist/web/assets/{system-verilog-DC0-DZM4.js → system-verilog-DPD02IOo.js} +0 -0
  507. /package/dist/web/assets/{systemd-to5p6N8I.js → systemd-BUr5HRtU.js} +0 -0
  508. /package/dist/web/assets/{table-Bbc783ko.js → table-FLU8ei8b.js} +0 -0
  509. /package/dist/web/assets/{talonscript-DoTcU8wm.js → talonscript-BNBQV5YJ.js} +0 -0
  510. /package/dist/web/assets/{tasl-cNZvUs95.js → tasl-BETjpSyu.js} +0 -0
  511. /package/dist/web/assets/{tcl-mZE8sZH8.js → tcl-Clp_AZiC.js} +0 -0
  512. /package/dist/web/assets/{terraform-CqHPpIfu.js → terraform-B0kZ0lim.js} +0 -0
  513. /package/dist/web/assets/{text-wrap-CBT4Gxtg.js → text-wrap-B05VGRa-.js} +0 -0
  514. /package/dist/web/assets/{tokyo-night-Tp2rTIZd.js → tokyo-night-oOJ0a7Dk.js} +0 -0
  515. /package/dist/web/assets/{toml-CU_vscgn.js → toml-DOPCSumy.js} +0 -0
  516. /package/dist/web/assets/{trash-2-Bk4yYlck.js → trash-2-CTXlTflF.js} +0 -0
  517. /package/dist/web/assets/{triangle-alert-B8EYecpe.js → triangle-alert-BRq0VAfd.js} +0 -0
  518. /package/dist/web/assets/{tsv-ik7iFB9D.js → tsv-D6qUGf84.js} +0 -0
  519. /package/dist/web/assets/{tsx-BMvvMKiv.js → tsx-B6qYhT6O.js} +0 -0
  520. /package/dist/web/assets/{turtle-DBqKCq9o.js → turtle-C0Rjzw73.js} +0 -0
  521. /package/dist/web/assets/{typescript-DXJDmMZZ.js → typescript-BiydShEu.js} +0 -0
  522. /package/dist/web/assets/{typespec-CBseCMtZ.js → typespec-DjmF6Aww.js} +0 -0
  523. /package/dist/web/assets/{typst-4oY25U9y.js → typst-CPuscfcL.js} +0 -0
  524. /package/dist/web/assets/{use-is-mobile-D1weanbj.js → use-is-mobile-b94q8RvF.js} +0 -0
  525. /package/dist/web/assets/{utils-BNRH507E.js → utils-C9OjCrou.js} +0 -0
  526. /package/dist/web/assets/{v-BXaZ_1oy.js → v-DE4vpLLQ.js} +0 -0
  527. /package/dist/web/assets/{vala-BImWJE7z.js → vala-CmUF2pS5.js} +0 -0
  528. /package/dist/web/assets/{vb-CLfj2_sy.js → vb-BvcRoX4b.js} +0 -0
  529. /package/dist/web/assets/{vendor-xterm-_yyu5n32.js → vendor-xterm-K8kpLxdb.js} +0 -0
  530. /package/dist/web/assets/{verilog-BWa8Ed2b.js → verilog-BGIzyH3R.js} +0 -0
  531. /package/dist/web/assets/{vesper-BGj1cg6m.js → vesper-CG7IrHQQ.js} +0 -0
  532. /package/dist/web/assets/{vhdl-mByK7mlx.js → vhdl-DMSumomw.js} +0 -0
  533. /package/dist/web/assets/{viml-CugmlW5g.js → viml-Drt7AEmU.js} +0 -0
  534. /package/dist/web/assets/{vitesse-black-vPdpy9TL.js → vitesse-black-DmsjfN0b.js} +0 -0
  535. /package/dist/web/assets/{vitesse-dark-BuQK3dUh.js → vitesse-dark-Dl55_WeJ.js} +0 -0
  536. /package/dist/web/assets/{vitesse-light-B3nz1XL9.js → vitesse-light-Crbv9aGg.js} +0 -0
  537. /package/dist/web/assets/{vyper-DH_GTIHG.js → vyper-CB7psEJj.js} +0 -0
  538. /package/dist/web/assets/{wasm-DfVbVJlW.js → wasm-BY1tuM5m.js} +0 -0
  539. /package/dist/web/assets/{wasm-C-LF9GjX.js → wasm-Dck8KPgP.js} +0 -0
  540. /package/dist/web/assets/{wenyan-CzQkHyHx.js → wenyan-DhewQ68b.js} +0 -0
  541. /package/dist/web/assets/{wgsl-Du_M1DW9.js → wgsl-DlmiP456.js} +0 -0
  542. /package/dist/web/assets/{wikitext-BWN_w5S7.js → wikitext-cQCnqNgE.js} +0 -0
  543. /package/dist/web/assets/{wit-BR13v5HD.js → wit-S5MaCngB.js} +0 -0
  544. /package/dist/web/assets/{wolfram-BoXxp_Xl.js → wolfram-Bh8n_9zr.js} +0 -0
  545. /package/dist/web/assets/{x-nhriOX9o.js → x-YDu4m2Iq.js} +0 -0
  546. /package/dist/web/assets/{yaml-DpR_EF-d.js → yaml-BoK_17l9.js} +0 -0
  547. /package/dist/web/assets/{zenscript-C-EdUtUd.js → zenscript-DB3ZFwNJ.js} +0 -0
  548. /package/dist/web/assets/{zig-BD4eA5nU.js → zig-Bv1BWmfT.js} +0 -0
@@ -0,0 +1,52 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/terminal-tab-Ncor0Rfu.js","assets/rolldown-runtime-FhOqtrmT.js","assets/vendor-mermaid-999ksD45.js","assets/vendor-ui-CaeeFO0B.js","assets/vendor-markdown-Ls5AcU91.js","assets/vendor-xterm-K8kpLxdb.js","assets/vendor-xterm-DkTCHfhq.css","assets/utils-C9OjCrou.js","assets/createLucideIcon-D8pyde1A.js","assets/copy-BewHj66E.js","assets/external-link-B6Hl0U4X.js","assets/loader-circle-Dpqcv0eS.js","assets/rotate-ccw-DnuPzJRE.js","assets/api-client-oY1tC3tM.js","assets/window-store-CQ1lghvv.js","assets/react-X4jUntEf.js","assets/mobile-bottom-sheet-CJ7ApOkI.js","assets/portal-container-context-a399Hd9F.js","assets/clipboard-DBLGKMrH.js","assets/run-in-terminal-4efbW2Xv.js","assets/panel-store-B4rijFKN.js","assets/send-to-chat-BNrEpAyC.js","assets/settings-store-OLJE7dPH.js","assets/apply-theme-r8tKDrCR.js","assets/resolve-theme-Cqb9zWYc.js","assets/chat-tab-IcnU3nqQ.js","assets/button-tNy0ba3y.js","assets/libesm-BB74PRsH.js","assets/bot-D6sx11y0.js","assets/pencil-BlIIg6RH.js","assets/ai-settings-section-DY-t1bK8.js","assets/context-menu-BO1c9jKy.js","assets/chevron-right-De-Wz5Lz.js","assets/circle-BCy0AUCo.js","assets/chevron-down-Dp0rpHb8.js","assets/upload-BNlX8D07.js","assets/download-DG3_9xXy.js","assets/refresh-cw-B9iv7csb.js","assets/trash-2-CTXlTflF.js","assets/input-DouJ9Zvt.js","assets/switch-DV-BDjyk.js","assets/api-settings-B2iNXQ0c.js","assets/tool-cards-DdVP1wrD.js","assets/circle-question-mark-CzR7YRc-.js","assets/clock-C1CQUQPZ.js","assets/code-DJgYrFzm.js","assets/sparkles-Dh-_J2Rd.js","assets/send-B-t5Mz26.js","assets/shallow-4zAfs2KW.js","assets/use-blob-url-BOVGWg9F.js","assets/image-gallery-DujlrjOC.js","assets/tab-store-tFnyPmm4.js","assets/use-coarse-long-press-BmI_GVW5.js","assets/plus-BR0qewJI.js","assets/lock-DldbT31x.js","assets/shield-off-DuetkXKM.js","assets/triangle-alert-BRq0VAfd.js","assets/x-YDu4m2Iq.js","assets/use-open-team-member-CY3wOdWL.js","assets/use-is-mobile-b94q8RvF.js","assets/file-store-yReVbR8q.js","assets/dialog-DcLGDwaX.js","assets/use-websocket-B7xjNsyD.js","assets/project-store-BuY7rxn_.js","assets/code-editor-Dno5Srkm.js","assets/glide-data-grid-Dz8lx6n2.js","assets/dist-VBxOHLmN.js","assets/data-grid-types-CfVHh9gv.js","assets/save-DxonD4y1.js","assets/text-wrap-B05VGRa-.js","assets/csv-parser-_JWMLGl3.js","assets/use-monaco-theme-BshnLXoY.js","assets/glide-data-grid-nthEL3fk.css","assets/database-Y3ESDK4-.js","assets/file-exclamation-point-JzhTU2TX.js","assets/play-CpCAoQRZ.js","assets/shield-check-CdTiK1j2.js","assets/table-FLU8ei8b.js","assets/can-open-in-ppm-in727eFQ.js","assets/scroll-area-ZP8wcwTI.js","assets/database-viewer-BCvv_Bwf.js","assets/sql-query-editor-R_iKjPP9.js","assets/sqlite-viewer-b2onA0SP.js","assets/postgres-viewer--CRN1fvO.js","assets/dist-DNRvhVdz.js","assets/lib-CMuBa85c.js","assets/diff-viewer-D41fCFAi.js","assets/settings-tab-BUlmPJ2w.js","assets/settings-tab-B1rvHFc6.js","assets/eye-off-CUdzgmX8.js","assets/folder-symlink-Dx1hOk8X.js","assets/monitor-4vWfqzuN.js","assets/adaptive-context-menu-DCZtgOL7.js","assets/extension-store-DUaZINyC.js","assets/keybindings-store-0Wqfa7Qp.js","assets/extension-webview-BW_mccb3.js","assets/conflict-editor-CDp0I3mD.js","assets/system-monitor-tab-CPQdWv27.js","assets/system-monitor-body-DPYQlBEt.js","assets/git-log-panel-C1QDkmgl.js","assets/ai-resource-editor-D5CPBg06.js","assets/group-chat-tab-DFwr-pig.js","assets/markdown-renderer-BHiUhQN8.js","assets/explorer-window-content-Cwlt3C3I.js","assets/explorer-body-DB1L30pa.js","assets/window-pip-registry-BnYU83LE.js","assets/team-member-window-content-BSyU-5Uc.js","assets/system-monitor-window-content-BPif0azo.js","assets/tab-host-window-content-BnAN6m4K.js","assets/angular-html-CTvM4ulF.js","assets/html-C06I-zeO.js","assets/css-Db-syWW9.js","assets/javascript-y-lof7iP.js","assets/angular-ts-B_vSkjco.js","assets/scss-Vh3JLayR.js","assets/apl-DywzTry0.js","assets/json-DO4LSx5A.js","assets/xml-DS2beZHp.js","assets/java-D2r0ocpf.js","assets/astro-1JaRgaSb.js","assets/postcss-jvFe6GNE.js","assets/tsx-B6qYhT6O.js","assets/typescript-BiydShEu.js","assets/blade-CDeeJWBb.js","assets/html-derivative-e5JLAFZF.js","assets/sql-DvyMDgrB.js","assets/bsl-BfgoPVYR.js","assets/sdbl-BbXNqwtX.js","assets/c-DFi8Y_nN.js","assets/cairo-C26gNwWW.js","assets/python-D6QbSR2S.js","assets/cobol-D92nBnON.js","assets/coffee-CIWH40R1.js","assets/cpp-DOrBqXCn.js","assets/glsl-wrbPvrBL.js","assets/regexp-D8VTFrtg.js","assets/crystal-BNKqmHux.js","assets/shellscript-BAgksBhW.js","assets/edge-Dbjp42Pt.js","assets/elixir-na3b1pYy.js","assets/elm-_Nalil1R.js","assets/erb-CW_7dubf.js","assets/ruby-ClIZ1wb3.js","assets/graphql-Cu4-NR__.js","assets/jsx-B6XEu6O-.js","assets/haml-BFX_1i8j.js","assets/lua-DDianJp_.js","assets/yaml-BoK_17l9.js","assets/erlang-DmZ7Zzb0.js","assets/markdown-O4EPpS3K.js","assets/fortran-fixed-form-DB2A8L4-.js","assets/fortran-free-form-B_-UA4XC.js","assets/fsharp-BYHrti7z.js","assets/gdresource-D5GBin40.js","assets/gdscript-Bm_JpjS_.js","assets/gdshader-C_PNmfYU.js","assets/git-commit-CUiOBoIL.js","assets/diff-Drt8aEyp.js","assets/git-rebase-DOxGnpdw.js","assets/glimmer-js-Begy4UT7.js","assets/glimmer-ts-rPApRY8N.js","assets/hack-Ddo93XKD.js","assets/handlebars-5gFKA4H5.js","assets/http-CrAAhSU7.js","assets/hurl-T1V3SX9T.js","assets/csv-DHeYcbaq.js","assets/hxml-B056LLKN.js","assets/haxe-BmZm7B0W.js","assets/jinja-DGdtRh43.js","assets/jison-Ah6QobPS.js","assets/julia-BJeGOK0K.js","assets/r-i9jMMi0s.js","assets/just-iw9oRs7j.js","assets/perl-CkmpYKa_.js","assets/latex-DHjj5hyN.js","assets/tex-psXWhc4t.js","assets/liquid-B-FFecDc.js","assets/marko-BW5SBVng.js","assets/less-Cx-fdlDC.js","assets/mdc-B9gL9bjl.js","assets/nextflow-dTluY6qy.js","assets/nextflow-groovy-Bg8peyqg.js","assets/nginx-DlwghGI-.js","assets/nim-N9jddb5D.js","assets/php-BwZ3KDPo.js","assets/pug-B3rBPqQo.js","assets/qml-BfDbWFmg.js","assets/razor-B1ww1r38.js","assets/csharp-eEFXdsAq.js","assets/rst-C0MSq6m-.js","assets/cmake-EEcLEgVy.js","assets/sas-DR0j3o4_.js","assets/shaderlab-0rHRnQ18.js","assets/hlsl-BZSASBqS.js","assets/shellsession-Dxdw6D8c.js","assets/soy-BHlSNj1y.js","assets/sparql-B2QaPpni.js","assets/turtle-C0Rjzw73.js","assets/stata-CwIxjsEJ.js","assets/surrealql-C6vo-rp-.js","assets/svelte-LLdJ6rlH.js","assets/templ-CJGvhEP5.js","assets/go-Bn8Ba9uz.js","assets/ts-tags-D5Ar_ZCO.js","assets/twig-vJgGC-qY.js","assets/vue-BWngFyav.js","assets/vue-html-BN5ZLu-H.js","assets/vue-vine-BZHnO8yV.js","assets/stylus-DCJ-6AjT.js","assets/xsl-Ciiku1Bq.js","assets/mobile-explorer-sheet-BzjlS1Xn.js","assets/team-member-sheet-Bu2wG1sm.js","assets/keybindings-store-d54pv2NK.js","assets/notification-store-C7UBqxYP.js"])))=>i.map(i=>d[i]);
2
+ import{o as e,r as t,t as n}from"./rolldown-runtime-FhOqtrmT.js";import{S as r,_ as i,b as a,g as o,h as s,m as c,v as l,x as u,y as d}from"./vendor-markdown-Ls5AcU91.js";import{B as f,F as p,H as m,I as h,L as g,M as _,N as v,P as y,R as b,U as x,V as S,W as C,a as w,ft as T,i as E,n as D,o as O,r as k,t as A,z as j}from"./vendor-ui-CaeeFO0B.js";import{t as M}from"./createLucideIcon-D8pyde1A.js";import{n as ee,t as N}from"./eye-off-CUdzgmX8.js";import{a as P,i as F,n as I,o as te,r as ne,t as re}from"./settings-tab-B1rvHFc6.js";import{t as ie}from"./bot-D6sx11y0.js";import{t as L}from"./pencil-BlIIg6RH.js";import{a as ae,c as oe,d as se,i as ce,l as le,n as ue,o as de,s as fe}from"./ai-settings-section-DY-t1bK8.js";import{c as pe,d as me,l as he,n as ge,o as _e,r as ve,s as ye,t as be,u as xe}from"./context-menu-BO1c9jKy.js";import{t as Se}from"./chevron-down-Dp0rpHb8.js";import{t as Ce}from"./chevron-right-De-Wz5Lz.js";import{n as we,t as Te}from"./upload-BNlX8D07.js";import{t as Ee}from"./circle-BCy0AUCo.js";import{t as De}from"./clock-C1CQUQPZ.js";import{n as Oe,t as ke}from"./sparkles-Dh-_J2Rd.js";import{t as Ae}from"./copy-BewHj66E.js";import{t as je}from"./database-Y3ESDK4-.js";import{t as Me}from"./download-DG3_9xXy.js";import{n as Ne,r as Pe}from"./use-coarse-long-press-BmI_GVW5.js";import{t as Fe}from"./external-link-B6Hl0U4X.js";import{n as Ie,t as R}from"./plus-BR0qewJI.js";import{n as Le}from"./send-B-t5Mz26.js";import{t as z}from"./loader-circle-Dpqcv0eS.js";import{t as Re}from"./lock-DldbT31x.js";import{t as ze}from"./monitor-4vWfqzuN.js";import{t as Be}from"./play-CpCAoQRZ.js";import{t as Ve}from"./refresh-cw-B9iv7csb.js";import{t as He}from"./rotate-ccw-DnuPzJRE.js";import{t as Ue}from"./trash-2-CTXlTflF.js";import{t as We}from"./triangle-alert-BRq0VAfd.js";import{t as Ge}from"./x-YDu4m2Iq.js";import{a as Ke,i as B,n as V,o as qe,r as Je,s as H}from"./api-client-oY1tC3tM.js";import{t as Ye}from"./react-X4jUntEf.js";import{q as U}from"./vendor-mermaid-999ksD45.js";import{t as W}from"./settings-store-OLJE7dPH.js";import{n as G,r as Xe,t as Ze}from"./utils-C9OjCrou.js";import{n as Qe,t as $e}from"./portal-container-context-a399Hd9F.js";import{a as et,c as tt,d as nt,f as rt,i as it,l as at,n as ot,r as st,s as ct,t as K,u as lt}from"./panel-store-B4rijFKN.js";import{a as ut,i as dt,n as ft,o as pt,r as mt,s as ht,t as gt}from"./window-store-CQ1lghvv.js";import{i as q,n as _t,r as vt,t as yt}from"./project-store-BuY7rxn_.js";import{t as J}from"./tab-store-tFnyPmm4.js";import{a as bt,c as xt,i as St,n as Ct,o as wt,r as Tt,s as Et,t as Dt}from"./file-store-yReVbR8q.js";import{a as Ot,o as kt,r as At}from"./keybindings-store-0Wqfa7Qp.js";import{t as jt}from"./extension-store-DUaZINyC.js";import{n as Mt,r as Nt,t as Pt}from"./apply-theme-r8tKDrCR.js";import{a as Ft,c as It,i as Lt,l as Rt,n as zt,o as Bt,r as Vt,s as Ht,t as Ut,u as Wt}from"./window-pip-registry-BnYU83LE.js";import{n as Gt,t as Kt}from"./use-is-mobile-b94q8RvF.js";import{n as qt,r as Jt,t as Yt}from"./clipboard-DBLGKMrH.js";import{t as Y}from"./button-tNy0ba3y.js";import{a as Xt,i as Zt,n as Qt,o as $t,r as en,s as tn,t as nn}from"./dialog-DcLGDwaX.js";import{t as rn}from"./shallow-4zAfs2KW.js";import{s as an,t as on}from"./mobile-bottom-sheet-CJ7ApOkI.js";import{n as sn,o as cn,r as ln,t as un,u as dn}from"./adaptive-context-menu-DCZtgOL7.js";import{t as fn}from"./input-DouJ9Zvt.js";import{t as pn}from"./scroll-area-ZP8wcwTI.js";import{t as mn}from"./switch-DV-BDjyk.js";import"./api-settings-B2iNXQ0c.js";import{n as hn,r as gn,t as _n}from"./resolve-theme-Cqb9zWYc.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 vn=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&&j(x,t.startTime-e)}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),yn=n(((e,t)=>{t.exports=vn()})),bn=n((e=>{var t=yn(),n=r(),i=T();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`),E=Symbol.for(`react.memo`),D=Symbol.for(`react.lazy`),O=Symbol.for(`react.activity`),k=Symbol.for(`react.memo_cache_sentinel`),A=Symbol.iterator;function j(e){return typeof e!=`object`||!e?null:(e=A&&e[A]||e[`@@iterator`],typeof e==`function`?e:null)}var M=Symbol.for(`react.client.reference`);function ee(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===M?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 O: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 E:return t=e.displayName||null,t===null?ee(e.type)||`Memo`:t;case D:t=e._payload,e=e._init;try{return ee(e(t))}catch{}}return null}var N=Array.isArray,P=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,F=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,I={pending:!1,data:null,method:null,action:null},te=[],ne=-1;function re(e){return{current:e}}function ie(e){0>ne||(e.current=te[ne],te[ne]=null,ne--)}function L(e,t){ne++,te[ne]=e.current,e.current=t}var ae=re(null),oe=re(null),se=re(null),ce=re(null);function le(e,t){switch(L(se,t),L(oe,e),L(ae,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}ie(ae),L(ae,e)}function ue(){ie(ae),ie(oe),ie(se)}function de(e){e.memoizedState!==null&&L(ce,e);var t=ae.current,n=Hd(t,e.type);t!==n&&(L(oe,e),L(ae,n))}function fe(e){oe.current===e&&(ie(ae),ie(oe)),ce.current===e&&(ie(ce),Qf._currentValue=I)}var pe,me;function he(e){if(pe===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);pe=t&&t[1]||``,me=-1<e.stack.indexOf(`
3
+ at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
4
+ `+pe+e+me}var ge=!1;function _e(e,t){if(!e||ge)return``;ge=!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{ge=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?he(n):``}function ve(e,t){switch(e.tag){case 26:case 27:case 5:return he(e.type);case 16:return he(`Lazy`);case 13:return e.child!==t&&t!==null?he(`Suspense Fallback`):he(`Suspense`);case 19:return he(`SuspenseList`);case 0:case 15:return _e(e.type,!1);case 11:return _e(e.type.render,!1);case 1:return _e(e.type,!0);case 31:return he(`Activity`);default:return``}}function ye(e){try{var t=``,n=null;do t+=ve(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
8
+ Error generating stack: `+e.message+`
9
+ `+e.stack}}var be=Object.prototype.hasOwnProperty,xe=t.unstable_scheduleCallback,Se=t.unstable_cancelCallback,Ce=t.unstable_shouldYield,we=t.unstable_requestPaint,Te=t.unstable_now,Ee=t.unstable_getCurrentPriorityLevel,De=t.unstable_ImmediatePriority,Oe=t.unstable_UserBlockingPriority,ke=t.unstable_NormalPriority,Ae=t.unstable_LowPriority,je=t.unstable_IdlePriority,Me=t.log,Ne=t.unstable_setDisableYieldValue,Pe=null,Fe=null;function Ie(e){if(typeof Me==`function`&&Ne(e),Fe&&typeof Fe.setStrictMode==`function`)try{Fe.setStrictMode(Pe,e)}catch{}}var R=Math.clz32?Math.clz32:Re,Le=Math.log,z=Math.LN2;function Re(e){return e>>>=0,e===0?32:31-(Le(e)/z|0)|0}var ze=256,Be=262144,Ve=4194304;function He(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 Ue(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=He(n))):i=He(o):i=He(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=He(n))):i=He(o)):i=He(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 We(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Ge(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 Ke(){var e=Ve;return Ve<<=1,!(Ve&62914560)&&(Ve=4194304),e}function B(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function V(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-R(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&&Je(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function Je(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-R(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function H(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-R(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function Ye(e,t){var n=t&-t;return n=n&42?1:U(n),(n&(e.suspendedLanes|t))===0?n:0}function U(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 W(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function G(){var e=F.p;return e===0?(e=window.event,e===void 0?32:mp(e.type)):e}function Xe(e,t){var n=F.p;try{return F.p=e,t()}finally{F.p=n}}var Ze=Math.random().toString(36).slice(2),Qe=`__reactFiber$`+Ze,$e=`__reactProps$`+Ze,et=`__reactContainer$`+Ze,tt=`__reactEvents$`+Ze,nt=`__reactListeners$`+Ze,rt=`__reactHandles$`+Ze,it=`__reactResources$`+Ze,at=`__reactMarker$`+Ze;function ot(e){delete e[Qe],delete e[$e],delete e[tt],delete e[nt],delete e[rt]}function st(e){var t=e[Qe];if(t)return t;for(var n=e.parentNode;n;){if(t=n[et]||n[Qe]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=df(e);e!==null;){if(n=e[Qe])return n;e=df(e)}return t}e=n,n=e.parentNode}return null}function ct(e){if(e=e[Qe]||e[et]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function K(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(a(33))}function lt(e){var t=e[it];return t||=e[it]={hoistableStyles:new Map,hoistableScripts:new Map},t}function ut(e){e[at]=!0}var dt=new Set,ft={};function pt(e,t){mt(e,t),mt(e+`Capture`,t)}function mt(e,t){for(ft[e]=t,e=0;e<t.length;e++)dt.add(t[e])}var ht=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]*$`),gt={},q={};function _t(e){return be.call(q,e)?!0:be.call(gt,e)?!1:ht.test(e)?q[e]=!0:(gt[e]=!0,!1)}function vt(e,t,n){if(_t(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 yt(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 J(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 bt(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function xt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function St(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 Ct(e){if(!e._valueTracker){var t=xt(e)?`checked`:`value`;e._valueTracker=St(e,t,``+e[t])}}function wt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=xt(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function Tt(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 Et=/[\n"\\]/g;function Dt(e){return e.replace(Et,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function Ot(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=``+bt(t)):e.value!==``+bt(t)&&(e.value=``+bt(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):At(e,o,bt(n)):At(e,o,bt(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=``+bt(s):e.removeAttribute(`name`)}function kt(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)){Ct(e);return}n=n==null?``:``+bt(n),t=t==null?n:``+bt(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),Ct(e)}function At(e,t,n){t===`number`&&Tt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function jt(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=``+bt(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 Mt(e,t,n){if(t!=null&&(t=``+bt(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+bt(n)}function Nt(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(a(92));if(N(r)){if(1<r.length)throw Error(a(93));r=r[0]}n=r}n??=``,t=n}n=bt(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),Ct(e)}function Pt(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Ft=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 It(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||Ft.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function Lt(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&&It(e,i,r)}else for(var o in t)t.hasOwnProperty(o)&&It(e,o,t[o])}function Rt(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`]]),Bt=/^[\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 Vt(e){return Bt.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function Ht(){}var Ut=null;function Wt(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Gt=null,Kt=null;function qt(e){var t=ct(e);if(t&&(e=t.stateNode)){var n=e[$e]||null;a:switch(e=t.stateNode,t.type){case`input`:if(Ot(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="`+Dt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var i=r[$e]||null;if(!i)throw Error(a(90));Ot(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&&wt(r)}break a;case`textarea`:Mt(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&jt(e,!!n.multiple,t,!1)}}}var Jt=!1;function Yt(e,t,n){if(Jt)return e(t,n);Jt=!0;try{return e(t)}finally{if(Jt=!1,(Gt!==null||Kt!==null)&&(_u(),Gt&&(t=Gt,e=Kt,Kt=Gt=null,qt(t),e)))for(t=0;t<e.length;t++)qt(e[t])}}function Y(e,t){var n=e.stateNode;if(n===null)return null;var r=n[$e]||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 Xt=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),Zt=!1;if(Xt)try{var Qt={};Object.defineProperty(Qt,`passive`,{get:function(){Zt=!0}}),window.addEventListener(`test`,Qt,Qt),window.removeEventListener(`test`,Qt,Qt)}catch{Zt=!1}var $t=null,en=null,tn=null;function nn(){if(tn)return tn;var e,t=en,n=t.length,r,i=`value`in $t?$t.value:$t.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 tn=i.slice(e,1<r?1-r:void 0)}function rn(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 an(){return!0}function on(){return!1}function sn(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)?an:on,this.isPropagationStopped=on,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=an)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=an)},persist:function(){},isPersistent:an}),t}var cn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},ln=sn(cn),un=p({},cn,{view:0,detail:0}),dn=sn(un),fn,pn,mn,hn=p({},un,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Dn,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!==mn&&(mn&&e.type===`mousemove`?(fn=e.screenX-mn.screenX,pn=e.screenY-mn.screenY):pn=fn=0,mn=e),fn)},movementY:function(e){return`movementY`in e?e.movementY:pn}}),gn=sn(hn),_n=sn(p({},hn,{dataTransfer:0})),vn=sn(p({},un,{relatedTarget:0})),bn=sn(p({},cn,{animationName:0,elapsedTime:0,pseudoElement:0})),xn=sn(p({},cn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Sn=sn(p({},cn,{data:0})),Cn={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},wn={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`},Tn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function En(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Tn[e])?!!t[e]:!1}function Dn(){return En}var On=sn(p({},un,{key:function(e){if(e.key){var t=Cn[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=rn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?wn[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Dn,charCode:function(e){return e.type===`keypress`?rn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?rn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),kn=sn(p({},hn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),An=sn(p({},un,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Dn})),jn=sn(p({},cn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Mn=sn(p({},hn,{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})),Nn=sn(p({},cn,{newState:0,oldState:0})),Pn=[9,13,27,32],Fn=Xt&&`CompositionEvent`in window,In=null;Xt&&`documentMode`in document&&(In=document.documentMode);var Ln=Xt&&`TextEvent`in window&&!In,Rn=Xt&&(!Fn||In&&8<In&&11>=In),zn=` `,Bn=!1;function Vn(e,t){switch(e){case`keyup`:return Pn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function Hn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var Un=!1;function Wn(e,t){switch(e){case`compositionend`:return Hn(t);case`keypress`:return t.which===32?(Bn=!0,zn):null;case`textInput`:return e=t.data,e===zn&&Bn?null:e;default:return null}}function Gn(e,t){if(Un)return e===`compositionend`||!Fn&&Vn(e,t)?(e=nn(),tn=en=$t=null,Un=!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 Rn&&t.locale!==`ko`?null:t.data;default:return null}}var Kn={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 qn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!Kn[e.type]:t===`textarea`}function Jn(e,t,n,r){Gt?Kt?Kt.push(r):Kt=[r]:Gt=r,t=Td(t,`onChange`),0<t.length&&(n=new ln(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var Yn=null,Xn=null;function Zn(e){_d(e,0)}function Qn(e){if(wt(K(e)))return e}function $n(e,t){if(e===`change`)return t}var er=!1;if(Xt){var tr;if(Xt){var nr=`oninput`in document;if(!nr){var rr=document.createElement(`div`);rr.setAttribute(`oninput`,`return;`),nr=typeof rr.oninput==`function`}tr=nr}else tr=!1;er=tr&&(!document.documentMode||9<document.documentMode)}function ir(){Yn&&(Yn.detachEvent(`onpropertychange`,ar),Xn=Yn=null)}function ar(e){if(e.propertyName===`value`&&Qn(Xn)){var t=[];Jn(t,Xn,e,Wt(e)),Yt(Zn,t)}}function or(e,t,n){e===`focusin`?(ir(),Yn=t,Xn=n,Yn.attachEvent(`onpropertychange`,ar)):e===`focusout`&&ir()}function sr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return Qn(Xn)}function cr(e,t){if(e===`click`)return Qn(t)}function lr(e,t){if(e===`input`||e===`change`)return Qn(t)}function ur(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var dr=typeof Object.is==`function`?Object.is:ur;function fr(e,t){if(dr(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(!be.call(t,i)||!dr(e[i],t[i]))return!1}return!0}function pr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function mr(e,t){var n=pr(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=pr(n)}}function hr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?hr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function gr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Tt(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=Tt(e.document)}return t}function _r(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 vr=Xt&&`documentMode`in document&&11>=document.documentMode,yr=null,br=null,xr=null,Sr=!1;function Cr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Sr||yr==null||yr!==Tt(r)||(r=yr,`selectionStart`in r&&_r(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}),xr&&fr(xr,r)||(xr=r,r=Td(br,`onSelect`),0<r.length&&(t=new ln(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=yr)))}function wr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var Tr={animationend:wr(`Animation`,`AnimationEnd`),animationiteration:wr(`Animation`,`AnimationIteration`),animationstart:wr(`Animation`,`AnimationStart`),transitionrun:wr(`Transition`,`TransitionRun`),transitionstart:wr(`Transition`,`TransitionStart`),transitioncancel:wr(`Transition`,`TransitionCancel`),transitionend:wr(`Transition`,`TransitionEnd`)},Er={},Dr={};Xt&&(Dr=document.createElement(`div`).style,`AnimationEvent`in window||(delete Tr.animationend.animation,delete Tr.animationiteration.animation,delete Tr.animationstart.animation),`TransitionEvent`in window||delete Tr.transitionend.transition);function Or(e){if(Er[e])return Er[e];if(!Tr[e])return e;var t=Tr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Dr)return Er[e]=t[n];return e}var kr=Or(`animationend`),Ar=Or(`animationiteration`),jr=Or(`animationstart`),Mr=Or(`transitionrun`),Nr=Or(`transitionstart`),Pr=Or(`transitioncancel`),Fr=Or(`transitionend`),Ir=new Map,Lr=`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(` `);Lr.push(`scrollEnd`);function Rr(e,t){Ir.set(e,t),pt(t,[e])}var zr=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)},Br=[],Vr=0,Hr=0;function Ur(){for(var e=Vr,t=Hr=Vr=0;t<e;){var n=Br[t];Br[t++]=null;var r=Br[t];Br[t++]=null;var i=Br[t];Br[t++]=null;var a=Br[t];if(Br[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&&qr(n,i,a)}}function Wr(e,t,n,r){Br[Vr++]=e,Br[Vr++]=t,Br[Vr++]=n,Br[Vr++]=r,Hr|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function Gr(e,t,n,r){return Wr(e,t,n,r),Jr(e)}function Kr(e,t){return Wr(e,null,null,t),Jr(e)}function qr(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-R(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function Jr(e){if(50<cu)throw cu=0,lu=null,Error(a(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Yr={};function Xr(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 Zr(e,t,n,r){return new Xr(e,t,n,r)}function Qr(e){return e=e.prototype,!(!e||!e.isReactComponent)}function $r(e,t){var n=e.alternate;return n===null?(n=Zr(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 ei(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 ti(e,t,n,r,i,o){var s=0;if(r=e,typeof e==`function`)Qr(e)&&(s=1);else if(typeof e==`string`)s=Uf(e,n,ae.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case O:return e=Zr(31,n,t,i),e.elementType=O,e.lanes=o,e;case _:return ni(n.children,i,o,t);case v:s=8,i|=24;break;case y:return e=Zr(12,n,t,i|2),e.elementType=y,e.lanes=o,e;case C:return e=Zr(13,n,t,i),e.elementType=C,e.lanes=o,e;case w:return e=Zr(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 E:s=14;break a;case D:s=16,r=null;break a}s=29,n=Error(a(130,e===null?`null`:typeof e,``)),r=null}return t=Zr(s,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function ni(e,t,n,r){return e=Zr(7,e,r,t),e.lanes=n,e}function ri(e,t,n){return e=Zr(6,e,null,t),e.lanes=n,e}function ii(e){var t=Zr(18,null,null,0);return t.stateNode=e,t}function ai(e,t,n){return t=Zr(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var oi=new WeakMap;function si(e,t){if(typeof e==`object`&&e){var n=oi.get(e);return n===void 0?(t={value:e,source:t,stack:ye(t)},oi.set(e,t),t):n}return{value:e,source:t,stack:ye(t)}}var ci=[],li=0,ui=null,di=0,fi=[],pi=0,mi=null,hi=1,gi=``;function _i(e,t){ci[li++]=di,ci[li++]=ui,ui=e,di=t}function vi(e,t,n){fi[pi++]=hi,fi[pi++]=gi,fi[pi++]=mi,mi=e;var r=hi;e=gi;var i=32-R(r)-1;r&=~(1<<i),n+=1;var a=32-R(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,hi=1<<32-R(t)+i|n<<i|r,gi=a+e}else hi=1<<a|n<<i|r,gi=e}function X(e){e.return!==null&&(_i(e,1),vi(e,1,0))}function Z(e){for(;e===ui;)ui=ci[--li],ci[li]=null,di=ci[--li],ci[li]=null;for(;e===mi;)mi=fi[--pi],fi[pi]=null,gi=fi[--pi],fi[pi]=null,hi=fi[--pi],fi[pi]=null}function yi(e,t){fi[pi++]=hi,fi[pi++]=gi,fi[pi++]=mi,hi=t.id,gi=t.overflow,mi=e}var bi=null,xi=null,Si=!1,Ci=null,wi=!1,Ti=Error(a(519));function Ei(e){throw Mi(si(Error(a(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),Ti}function Di(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[Qe]=e,t[$e]=r,n){case`dialog`:vd(`cancel`,t),vd(`close`,t);break;case`iframe`:case`object`:case`embed`:vd(`load`,t);break;case`video`:case`audio`:for(n=0;n<hd.length;n++)vd(hd[n],t);break;case`source`:vd(`error`,t);break;case`img`:case`image`:case`link`:vd(`error`,t),vd(`load`,t);break;case`details`:vd(`toggle`,t);break;case`input`:vd(`invalid`,t),kt(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:vd(`invalid`,t);break;case`textarea`:vd(`invalid`,t),Nt(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||jd(t.textContent,n)?(r.popover!=null&&(vd(`beforetoggle`,t),vd(`toggle`,t)),r.onScroll!=null&&vd(`scroll`,t),r.onScrollEnd!=null&&vd(`scrollend`,t),r.onClick!=null&&(t.onclick=Ht),t=!0):t=!1,t||Ei(e,!0)}function Oi(e){for(bi=e.return;bi;)switch(bi.tag){case 5:case 31:case 13:wi=!1;return;case 27:case 3:wi=!0;return;default:bi=bi.return}}function ki(e){if(e!==bi)return!1;if(!Si)return Oi(e),Si=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!==`form`&&n!==`button`)||Ud(e.type,e.memoizedProps)),n=!n),n&&xi&&Ei(e),Oi(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(a(317));xi=uf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(a(317));xi=uf(e)}else t===27?(t=xi,Zd(e.type)?(e=lf,lf=null,xi=e):xi=t):xi=bi?cf(e.stateNode.nextSibling):null;return!0}function Ai(){xi=bi=null,Si=!1}function ji(){var e=Ci;return e!==null&&(Jl===null?Jl=e:Jl.push.apply(Jl,e),Ci=null),e}function Mi(e){Ci===null?Ci=[e]:Ci.push(e)}var Ni=re(null),Pi=null,Fi=null;function Ii(e,t,n){L(Ni,t._currentValue),t._currentValue=n}function Li(e){e._currentValue=Ni.current,ie(Ni)}function Ri(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 zi(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),Ri(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),Ri(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 Bi(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;dr(i.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(i===ce.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&&zi(t,e,n,r),t.flags|=262144}function Vi(e){for(e=e.firstContext;e!==null;){if(!dr(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Hi(e){Pi=e,Fi=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function Ui(e){return Gi(Pi,e)}function Wi(e,t){return Pi===null&&Hi(e),Gi(e,t)}function Gi(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},Fi===null){if(e===null)throw Error(a(308));Fi=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Fi=Fi.next=t;return n}var Ki=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()})}},qi=t.unstable_scheduleCallback,Ji=t.unstable_NormalPriority,Yi={$$typeof:x,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Xi(){return{controller:new Ki,data:new Map,refCount:0}}function Zi(e){e.refCount--,e.refCount===0&&qi(Ji,function(){e.controller.abort()})}var Qi=null,$i=0,ea=0,ta=null;function na(e,t){if(Qi===null){var n=Qi=[];$i=0,ea=ld(),ta={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return $i++,t.then(ra,ra),t}function ra(){if(--$i===0&&Qi!==null){ta!==null&&(ta.status=`fulfilled`);var e=Qi;Qi=null,ea=0,ta=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function ia(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 aa=P.S;P.S=function(e,t){Zl=Te(),typeof t==`object`&&t&&typeof t.then==`function`&&na(e,t),aa!==null&&aa(e,t)};var oa=re(null);function sa(){var e=oa.current;return e===null?Nl.pooledCache:e}function ca(e,t){t===null?L(oa,oa.current):L(oa,t.pool)}function la(){var e=sa();return e===null?null:{parent:Yi._currentValue,pool:e}}var ua=Error(a(460)),da=Error(a(474)),fa=Error(a(542)),pa={then:function(){}};function ma(e){return e=e.status,e===`fulfilled`||e===`rejected`}function ha(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(Ht,Ht),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,ya(e),e;default:if(typeof t.status==`string`)t.then(Ht,Ht);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,ya(e),e}throw _a=t,ua}}function ga(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(_a=e,ua):e}}var _a=null;function va(){if(_a===null)throw Error(a(459));var e=_a;return _a=null,e}function ya(e){if(e===ua||e===fa)throw Error(a(483))}var ba=null,xa=0;function Sa(e){var t=xa;return xa+=1,ba===null&&(ba=[]),ha(ba,e,t)}function Ca(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function wa(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 Ta(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=$r(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=ri(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===D&&ga(a)===t.type)?(t=i(t,n.props),Ca(t,n),t.return=e,t):(t=ti(n.type,n.key,n.props,null,e.mode,r),Ca(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=ai(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=ni(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=ri(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case h:return n=ti(t.type,t.key,t.props,null,e.mode,n),Ca(n,t),n.return=e,n;case g:return t=ai(t,e.mode,n),t.return=e,t;case D:return t=ga(t),f(e,t,n)}if(N(t)||j(t))return t=ni(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,Sa(t),n);if(t.$$typeof===x)return f(e,Wi(e,t),n);wa(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 D:return n=ga(n),p(e,t,n,r)}if(N(n)||j(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,Sa(n),r);if(n.$$typeof===x)return p(e,t,Wi(e,n),r);wa(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 D:return r=ga(r),m(e,t,n,r,i)}if(N(r)||j(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,Sa(r),i);if(r.$$typeof===x)return m(e,t,n,Wi(t,r),i);wa(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),Si&&_i(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 Si&&_i(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)}),Si&&_i(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),Si&&_i(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 Si&&_i(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)}),Si&&_i(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===D&&ga(l)===r.type){n(e,r.sibling),c=i(r,o.props),Ca(c,o),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}o.type===_?(c=ni(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=ti(o.type,o.key,o.props,null,e.mode,c),Ca(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=ai(o,e.mode,c),c.return=e,e=c}return s(e);case D:return o=ga(o),b(e,r,o,c)}if(N(o))return v(e,r,o,c);if(j(o)){if(l=j(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,Sa(o),c);if(o.$$typeof===x)return b(e,r,Wi(e,o),c);wa(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=ri(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{xa=0;var i=b(e,t,n,r);return ba=null,i}catch(t){if(t===ua||t===fa)throw t;var a=Zr(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Ea=Ta(!0),Da=Ta(!1),Oa=!1;function ka(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Aa(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 ja(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Ma(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=Jr(e),qr(e,null,n),t}return Wr(e,r,t,n),Jr(e)}function Na(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,H(e,n)}}function Pa(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 Fa=!1;function Ia(){if(Fa){var e=ta;if(e!==null)throw e}}function La(e,t,n,r){Fa=!1;var i=e.updateQueue;Oa=!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?(Pl&f)===f:(r&f)===f){f!==0&&f===ea&&(Fa=!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:Oa=!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),Hl|=o,e.lanes=o,e.memoizedState=d}}function Ra(e,t){if(typeof e!=`function`)throw Error(a(191,e));e.call(t)}function za(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)Ra(n[e],t)}var Ba=re(null),Va=re(0);function Ha(e,t){e=Bl,L(Va,e),L(Ba,t),Bl=e|t.baseLanes}function Ua(){L(Va,Bl),L(Ba,Ba.current)}function Wa(){Bl=Va.current,ie(Ba),ie(Va)}var Ga=re(null),Ka=null;function qa(e){var t=e.alternate;L(Qa,Qa.current&1),L(Ga,e),Ka===null&&(t===null||Ba.current!==null||t.memoizedState!==null)&&(Ka=e)}function Ja(e){L(Qa,Qa.current),L(Ga,e),Ka===null&&(Ka=e)}function Ya(e){e.tag===22?(L(Qa,Qa.current),L(Ga,e),Ka===null&&(Ka=e)):Xa(e)}function Xa(){L(Qa,Qa.current),L(Ga,Ga.current)}function Za(e){ie(Ga),Ka===e&&(Ka=null),ie(Qa)}var Qa=re(0);function $a(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||af(n)||of(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 eo=0,Q=null,to=null,no=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(!dr(e[n],t[n]))return!1;return!0}function po(e,t,n,r,i,a){return eo=a,Q=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,P.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){P.H=ks;var t=to!==null&&to.next!==null;if(eo=0,no=to=Q=null,ro=!1,so=0,co=null,t)throw Error(a(300));e===null||Js||(e=e.dependencies,e!==null&&Vi(e)&&(Js=!0))}function ho(e,t,n,r){Q=e;var i=0;do{if(io&&(co=null),so=0,io=!1,25<=i)throw Error(a(301));if(i+=1,no=to=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}P.H=Ms,o=t(n,r)}while(io);return o}function go(){var e=P.H,t=e.useState()[0];return t=typeof t.then==`function`?Co(t):t,e=e.useState()[0],(to===null?null:to.memoizedState)!==e&&(Q.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}eo=0,no=to=Q=null,io=!1,so=oo=0,co=null}function bo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return no===null?Q.memoizedState=no=e:no=no.next=e,no}function xo(){if(to===null){var e=Q.alternate;e=e===null?null:e.memoizedState}else e=to.next;var t=no===null?Q.memoizedState:no.next;if(t!==null)no=t,to=e;else{if(e===null)throw Q.alternate===null?Error(a(467)):Error(a(310));to=e,e={memoizedState:to.memoizedState,baseState:to.baseState,baseQueue:to.baseQueue,queue:to.queue,next:null},no===null?Q.memoizedState=no=e:no=no.next=e}return no}function So(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Co(e){var t=so;return so+=1,co===null&&(co=[]),e=ha(co,e,t),t=Q,(no===null?t.memoizedState:no.next)===null&&(t=t.alternate,P.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 Ui(e)}throw Error(a(438,String(e)))}function To(e){var t=null,n=Q.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=Q.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(),Q.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]=k;return t.index++,n}function Eo(e,t){return typeof t==`function`?t(e):t}function Do(e){return Oo(xo(),to,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?(eo&f)===f:(Pl&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===ea&&(d=!0);else if((eo&p)===p){u=u.next,p===ea&&(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,Q.lanes|=p,Hl|=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,Q.lanes|=f,Hl|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!dr(o,e.memoizedState)&&(Js=!0,d&&(n=ta,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);dr(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=Q,i=xo(),o=Si;if(o){if(n===void 0)throw Error(a(407));n=n()}else n=t();var s=!dr((to||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||no!==null&&no.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||eo&127||jo(r,t,n)}return n}function jo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Q.updateQueue,t===null?(t=So(),Q.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!dr(e,n)}catch{return!0}}function Fo(e){var t=Kr(e,2);t!==null&&fu(t,e,2)}function Io(e){var t=bo();if(typeof e==`function`){var n=e;if(e=n(),ao){Ie(!0);try{n()}finally{Ie(!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,to,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)}};P.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=P.T,o={};P.T=o;try{var s=n(i,r),c=P.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),P.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(Si){var n=Nl.formState;if(n!==null){a:{var r=Q;if(Si){if(xi){b:{for(var i=xi,a=wi;i.nodeType!==8;){if(!a){i=null;break b}if(i=cf(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){xi=cf(i.nextSibling),r=i.data===`F!`;break a}}Ei(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,Q,r),r.dispatch=n,r=Io(!1),a=Ts.bind(null,Q,!1,r.queue),r=bo(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=Ro.bind(null,Q,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function Ko(e){return qo(xo(),to,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===ua?fa:e}else r=t;t=xo();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(Q.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=to;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=Q.updateQueue,t===null&&(t=So(),Q.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();Q.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;to!==null&&r!==null&&fo(r,to.memoizedState.deps)?i.memoizedState=Xo(t,a,n,r):(Q.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){Q.flags|=4;var t=Q.updateQueue;if(t===null)t=So(),Q.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){Ie(!0);try{e()}finally{Ie(!1)}}return n.memoizedState=[r,t],r}function ds(e,t,n){return n===void 0||eo&1073741824&&!(Pl&261930)?e.memoizedState=t:(e.memoizedState=n,e=du(),Q.lanes|=e,Hl|=e,n)}function fs(e,t,n,r){return dr(n,t)?n:Ba.current===null?!(eo&42)||eo&1073741824&&!(Pl&261930)?(Js=!0,e.memoizedState=n):(e=du(),Q.lanes|=e,Hl|=e,t):(e=ds(e,n,r),dr(e,t)||(Js=!0),e)}function ps(e,t,n,r,i){var a=F.p;F.p=a!==0&&8>a?a:8;var o=P.T,s={};P.T=s,Ts(e,!1,t,n);try{var c=i(),l=P.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?ws(e,t,ia(c,r),uu(e)):ws(e,t,r,uu(e))}catch(n){ws(e,t,{then:function(){},status:`rejected`,reason:n},uu())}finally{F.p=a,o!==null&&s.types!==null&&(o.types=s.types),P.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,I,n===null?ms:function(){return _s(e),n(r)})}function gs(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:I,baseState:I,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Eo,lastRenderedState:I},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,{},uu())}function vs(){return Ui(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=uu();e=ja(n);var r=Ma(t,e,n);r!==null&&(fu(r,t,n),Na(r,t,n)),t={cache:Xi()},e.payload=t;return}t=t.return}}function Ss(e,t,n){var r=uu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Es(e)?Ds(t,n):(n=Gr(e,t,n,r),n!==null&&(fu(n,e,r),Os(n,t,r)))}function Cs(e,t,n){ws(e,t,n,uu())}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,dr(s,o))return Wr(e,t,i,0),Nl===null&&Ur(),!1}catch{}if(n=Gr(e,t,i,r),n!==null)return fu(n,e,r),Os(n,t,r),!0}return!1}function Ts(e,t,n,r){if(r={lane:2,revertLane:ld(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Es(e)){if(t)throw Error(a(479))}else t=Gr(e,n,r,2),t!==null&&fu(t,e,2)}function Es(e){var t=e.alternate;return e===Q||t!==null&&t===Q}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,H(e,n)}}var ks={readContext:Ui,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:Ui,use:wo,useCallback:function(e,t){return bo().memoizedState=[e,t===void 0?null:t],e},useContext:Ui,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){Ie(!0);try{e()}finally{Ie(!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){Ie(!0);try{n(t)}finally{Ie(!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,Q,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,Q,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,Q,e.queue,!0,!1),bo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=Q,i=bo();if(Si){if(n===void 0)throw Error(a(407));n=n()}else{if(n=t(),Nl===null)throw Error(a(349));Pl&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(Si){var n=gi,r=hi;n=(r&~(1<<32-R(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,Q,!0,n),n.dispatch=t,[e,t]},useMemoCache:To,useCacheRefresh:function(){return bo().memoizedState=xs.bind(null,Q)},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:Ui,use:wo,useCallback:ls,useContext:Ui,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(),to.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(),to,e,t)},useMemoCache:To,useCacheRefresh:bs};js.useEffectEvent=rs;var Ms={readContext:Ui,use:wo,useCallback:ls,useContext:Ui,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 to===null?ds(n,e,t):fs(n,to.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 to===null?(n.baseState=e,[e,n.queue.dispatch]):Lo(n,to,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=uu(),i=ja(r);i.payload=t,n!=null&&(i.callback=n),t=Ma(e,i,r),t!==null&&(fu(t,e,r),Na(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=uu(),i=ja(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Ma(e,i,r),t!==null&&(fu(t,e,r),Na(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=uu(),r=ja(n);r.tag=2,t!=null&&(r.callback=t),t=Ma(e,r,n),t!==null&&(fu(t,e,n),Na(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?!fr(n,r)||!fr(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){zr(e)}function zs(e){console.error(e)}function Bs(e){zr(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=ja(n),n.tag=3,n.payload={element:null},n.callback=function(){Vs(e,t)},n}function Ws(e){return e=ja(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`&&(eu===null?eu=new Set([this]):eu.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&&Bi(t,n,i,!0),n=Ga.current,n!==null){switch(n.tag){case 31:case 13:return Ka===null?wu():n.alternate===null&&Vl===0&&(Vl=3),n.flags&=-257,n.flags|=65536,n.lanes=i,r===pa?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Uu(e,r,i)),!1;case 22:return n.flags|=65536,r===pa?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)),Uu(e,r,i)),!1}throw Error(a(435,n.tag))}return Uu(e,r,i),wu(),!1}if(Si)return t=Ga.current,t===null?(r!==Ti&&(t=Error(a(423),{cause:r}),Mi(si(t,n))),e=e.current.alternate,e.flags|=65536,i&=-i,e.lanes|=i,r=si(r,n),i=Us(e.stateNode,r,i),Pa(e,i),Vl!==4&&(Vl=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=i,r!==Ti&&(e=Error(a(422),{cause:r}),Mi(si(e,n)))),!1;var o=Error(a(520),{cause:r});if(o=si(o,n),ql===null?ql=[o]:ql.push(o),Vl!==4&&(Vl=2),t===null)return!0;r=si(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),Pa(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`&&(eu===null||!eu.has(o))))return n.flags|=65536,i&=-i,n.lanes|=i,i=Ws(i),Gs(i,e,n,r),Pa(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?Da(t,null,n,r):Ea(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 Hi(t),r=po(e,t,n,o,a,i),s=_o(),e!==null&&!Js?(vo(e,t,i),bc(e,t,i)):(Si&&s&&X(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`&&!Qr(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,Qs(e,t,a,r,i)):(e=ti(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?fr:n,n(o,r)&&e.ref===t.ref)return bc(e,t,i)}return t.flags|=1,e=$r(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(fr(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&&ca(t,a===null?null:a.cachePool),a===null?Ua():Ha(t,a),Ya(t);else return r=t.lanes=536870912,tc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&ca(t,null),Ua(),Xa(t)):(ca(t,a.cachePool),Ha(t,a),Xa(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=sa();return a=a===null?null:{parent:Yi._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&ca(t,null),Ua(),Ya(t),e!==null&&Bi(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 Ea(t,e.child,null,n),e=nc(t,t.pendingProps),e.flags|=2,Za(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(Si){if(r.mode===`hidden`)return e=nc(t,r),t.lanes=536870912,ec(null,e);if(Ja(t),(e=xi)?(e=rf(e,wi),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:mi===null?null:{id:hi,overflow:gi},retryLane:536870912,hydrationErrors:null},n=ii(e),n.return=t,t.child=n,bi=t,xi=null)):e=null,e===null)throw Ei(t);return t.lanes=536870912,null}return nc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(Ja(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||Bi(e,t,n,!1),i=(n&e.childLanes)!==0,Js||i){if(r=Nl,r!==null&&(s=Ye(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,Kr(e,s),fu(r,e,s),qs;wu(),t=rc(e,t,n)}else e=o.treeContext,xi=cf(s.nextSibling),bi=t,Si=!0,Ci=null,wi=!1,e!==null&&yi(t,e),t=nc(t,r),t.flags|=4096;return t}return e=$r(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 Hi(t),n=po(e,t,n,r,void 0,i),r=_o(),e!==null&&!Js?(vo(e,t,i),bc(e,t,i)):(Si&&r&&X(t),t.flags|=1,Ys(e,t,n,i),t.child)}function sc(e,t,n,r,i,a){return Hi(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)):(Si&&r&&X(t),t.flags|=1,Ys(e,t,n,a),t.child)}function cc(e,t,n,r,i){if(Hi(t),t.stateNode===null){var a=Yr,o=n.contextType;typeof o==`object`&&o&&(a=Ui(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={},ka(t),o=n.contextType,a.context=typeof o==`object`&&o?Ui(o):Yr,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),La(t,r,a,i),Ia(),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=Yr,typeof u==`object`&&u&&(o=Ui(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),Oa=!1;var f=t.memoizedState;a.state=f,La(t,r,a,i),Ia(),l=t.memoizedState,s||f!==l||Oa?(typeof d==`function`&&(Ns(t,n,d,r),l=t.memoizedState),(c=Oa||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,Aa(e,t),o=t.memoizedProps,u=Ls(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=Yr,typeof l==`object`&&l&&(c=Ui(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),Oa=!1,f=t.memoizedState,a.state=f,La(t,r,a,i),Ia();var p=t.memoizedState;o!==d||f!==p||Oa||e!==null&&e.dependencies!==null&&Vi(e.dependencies)?(typeof s==`function`&&(Ns(t,n,s,r),p=t.memoizedState),(u=Oa||Fs(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Vi(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=Ea(t,e.child,null,i),t.child=Ea(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 Ai(),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:la()}}function fc(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=Gl),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:(Qa.current&2)!=0),s&&(i=!0,t.flags&=-129),s=(t.flags&32)!=0,t.flags&=-33,e===null){if(Si){if(i?qa(t):Xa(t),(e=xi)?(e=rf(e,wi),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:mi===null?null:{id:hi,overflow:gi},retryLane:536870912,hydrationErrors:null},n=ii(e),n.return=t,t.child=n,bi=t,xi=null)):e=null,e===null)throw Ei(t);return of(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,i?(Xa(t),i=t.mode,c=hc({mode:`hidden`,children:c},i),r=ni(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)):(qa(t),mc(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(o)t.flags&256?(qa(t),t.flags&=-257,t=gc(e,t,n)):t.memoizedState===null?(Xa(t),c=r.fallback,i=t.mode,r=hc({mode:`visible`,children:r.children},i),c=ni(c,i,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,Ea(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)):(Xa(t),t.child=e.child,t.flags|=128,t=null);else if(qa(t),of(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(a(419)),r.stack=``,r.digest=s,Mi({value:r,source:null,stack:null}),t=gc(e,t,n)}else if(Js||Bi(e,t,n,!1),s=(n&e.childLanes)!==0,Js||s){if(s=Nl,s!==null&&(r=Ye(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,Kr(e,r),fu(s,e,r),qs;af(c)||wu(),t=gc(e,t,n)}else af(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,xi=cf(c.nextSibling),bi=t,Si=!0,Ci=null,wi=!1,e!==null&&yi(t,e),t=mc(t,r.children),t.flags|=4096);return t}return i?(Xa(t),c=r.fallback,i=t.mode,l=e.child,u=l.sibling,r=$r(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=ni(c,i,n,null),c.flags|=2):c=$r(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=la():(l=Yi._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)):(qa(t),n=e.child,e=n.sibling,n=$r(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=Zr(22,e,null,t),e.lanes=0,e}function gc(e,t,n){return Ea(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),Ri(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=Qa.current,s=(o&2)!=0;if(s?(o=o&1|2,t.flags|=128):o&=1,L(Qa,o),Ys(e,t,r,n),r=Si?di: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&&$a(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&&$a(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),Hl|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(Bi(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=$r(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=$r(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&&Vi(e))):!0}function Sc(e,t,n){switch(t.tag){case 3:le(t,t.stateNode.containerInfo),Ii(t,Yi,e.memoizedState.cache),Ai();break;case 27:case 5:de(t);break;case 4:le(t,t.stateNode.containerInfo);break;case 10:Ii(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Ja(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(qa(t),e=bc(e,t,n),e===null?null:e.sibling):pc(e,t,n):(qa(t),t.flags|=128,null);qa(t);break;case 19:var i=(e.flags&128)!=0;if(r=(n&t.childLanes)!==0,r||=(Bi(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),L(Qa,Qa.current),r)break;return null;case 22:return t.lanes=0,$s(e,t,n,t.pendingProps);case 24:Ii(t,Yi,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,Si&&t.flags&1048576&&vi(t,di,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=ga(t.elementType),t.type=e,typeof e==`function`)Qr(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===E){t.tag=14,t=Zs(null,t,e,r,n);break a}}throw t=ee(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(le(t,t.stateNode.containerInfo),e===null)throw Error(a(387));r=t.pendingProps;var o=t.memoizedState;i=o.element,Aa(e,t),La(t,r,null,n);var s=t.memoizedState;if(r=s.cache,Ii(t,Yi,r),r!==o.cache&&zi(t,[Yi],n,!0),Ia(),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=si(Error(a(424)),t),Mi(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(xi=cf(e.firstChild),bi=t,Si=!0,Ci=null,wi=!0,n=Da(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(Ai(),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:Si||(n=t.type,e=t.pendingProps,r=Bd(se.current).createElement(n),r[Qe]=t,r[$e]=e,Pd(r,n,e),ut(r),t.stateNode=r):t.memoizedState=kf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return de(t),e===null&&Si&&(r=t.stateNode=ff(t.type,t.pendingProps,se.current),bi=t,wi=!0,i=xi,Zd(t.type)?(lf=i,xi=cf(r.firstChild)):xi=i),Ys(e,t,t.pendingProps.children,n),ac(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Si&&((i=r=xi)&&(r=tf(r,t.type,t.pendingProps,wi),r===null?i=!1:(t.stateNode=r,bi=t,xi=cf(r.firstChild),wi=!1,i=!0)),i||Ei(t)),de(t),i=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Ud(i,o)?r=null:s!==null&&Ud(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&&Si&&((e=n=xi)&&(n=nf(n,t.pendingProps,wi),n===null?e=!1:(t.stateNode=n,bi=t,xi=null,e=!0)),e||Ei(t)),null;case 13:return pc(e,t,n);case 4:return le(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ea(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,Ii(t,t.type,r.value),Ys(e,t,r.children,n),t.child;case 9:return i=t.type._context,r=t.pendingProps.children,Hi(t),i=Ui(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 Hi(t),r=Ui(Yi),e===null?(i=sa(),i===null&&(i=Nl,o=Xi(),i.pooledCache=o,o.refCount++,o!==null&&(i.pooledCacheLanes|=n),i=o),t.memoizedState={parent:r,cache:i},ka(t),Ii(t,Yi,i)):((e.lanes&n)!==0&&(Aa(e,t),La(t,null,null,n),Ia()),i=e.memoizedState,o=t.memoizedState,i.parent===r?(r=o.cache,Ii(t,Yi,r),r!==i.cache&&zi(t,[Yi],n,!0)):(i={parent:r,cache:r},t.memoizedState=i,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=i),Ii(t,Yi,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(xu())e.flags|=8192;else throw _a=pa,da}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(xu())e.flags|=8192;else throw _a=pa,da}function Dc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Ke(),e.lanes|=t,Kl|=t)}function Oc(e,t){if(!Si)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(Z(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),Li(Yi),ue(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(ki(t)?wc(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,ji())),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(fe(t),n=se.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=ae.current,ki(t)?Di(t,e):(e=ff(i,r,n),t.stateNode=e,wc(t))}return kc(t),null;case 5:if(fe(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=ae.current,ki(t))Di(t,o);else{var s=Bd(se.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[Qe]=t,o[$e]=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(Pd(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=se.current,ki(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,i=bi,i!==null)switch(i.tag){case 27:case 5:r=i.memoizedProps}e[Qe]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||jd(e.nodeValue,n)),e||Ei(t,!0)}else e=Bd(e).createTextNode(r),e[Qe]=t,t.stateNode=e}return kc(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=ki(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[Qe]=t}else Ai(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;kc(t),e=!1}else n=ji(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Za(t),t):(Za(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=ki(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[Qe]=t}else Ai(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;kc(t),i=!1}else i=ji(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(Za(t),t):(Za(t),null)}return Za(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 ue(),e===null&&xd(t.stateNode.containerInfo),kc(t),null;case 10:return Li(t.type),kc(t),null;case 19:if(ie(Qa),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(Vl!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=$a(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;)ei(n,e),n=n.sibling;return L(Qa,Qa.current&1|2),Si&&_i(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Te()>Ql&&(t.flags|=128,i=!0,Oc(r,!1),t.lanes=4194304)}else{if(!i)if(e=$a(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&&!Si)return kc(t),null}else 2*Te()-r.renderingStartTime>Ql&&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=Te(),e.sibling=null,n=Qa.current,L(Qa,i?n&1|2:n&1),Si&&_i(t,r.treeForkCount),e);case 22:case 23:return Za(t),Wa(),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&&ie(oa),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Li(Yi),kc(t),null;case 25:return null;case 30:return null}throw Error(a(156,t.tag))}function jc(e,t){switch(Z(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Li(Yi),ue(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return fe(t),null;case 31:if(t.memoizedState!==null){if(Za(t),t.alternate===null)throw Error(a(340));Ai()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Za(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(a(340));Ai()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ie(Qa),null;case 4:return ue(),null;case 10:return Li(t.type),null;case 22:case 23:return Za(t),Wa(),e!==null&&ie(oa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Li(Yi),null;case 25:return null;default:return null}}function Mc(e,t){switch(Z(t),t.tag){case 3:Li(Yi),ue();break;case 26:case 27:case 5:fe(t);break;case 4:ue();break;case 31:t.memoizedState!==null&&Za(t);break;case 13:Za(t);break;case 19:ie(Qa);break;case 10:Li(t.type);break;case 22:case 23:Za(t),Wa(),e!==null&&ie(oa);break;case 24:Li(Yi)}}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){Hu(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){Hu(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Hu(t,t.return,e)}}function Fc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{za(t,n)}catch(t){Hu(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){Hu(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){Hu(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){Hu(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){Hu(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){Hu(e,e.return,t)}}function Bc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[$e]=t}catch(t){Hu(e,e.return,t)}}function Vc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(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&&Zd(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=Ht));else if(r!==4&&(r===27&&Zd(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&&Zd(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]);Pd(t,r,n),t[Qe]=e,t[$e]=n}catch(t){Hu(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,Rd=sp,e=gr(e),_r(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(zd={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){Hu(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)ef(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:ef(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){Hu(n,n.return,e)}else{var i=Ls(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Hu(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{za(e,t)}catch(e){Hu(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=Ku.bind(null,n),sf(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&&ot(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(Fe&&typeof Fe.onCommitFiberUnmount==`function`)try{Fe.onCommitFiberUnmount(Pe,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;Zd(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){Hu(n,t,e)}else try{el.removeChild(n.stateNode)}catch(e){Hu(n,t,e)}break;case 18:el!==null&&(tl?(e=el,Qd(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Np(e)):Qd(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){Hu(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){Hu(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=qu.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(Zd(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[at]||o[Qe]||o.namespaceURI===`http://www.w3.org/2000/svg`||o.hasAttribute(`itemprop`))&&(o=i.createElement(r),i.head.insertBefore(o,i.querySelector(`head > title`))),Pd(o,r,n),o[Qe]=e,ut(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),Pd(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),Pd(o,r,n),i.head.appendChild(o);break;default:throw Error(a(468,r))}o[Qe]=e,ut(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{Pt(i,``)}catch(t){Hu(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){Hu(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){Hu(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)&&(Xl=Te()),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){Hu(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=i?``:l.memoizedProps}catch(e){Hu(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;i?$d(m,!0):$d(l.stateNode,!1)}catch(e){Hu(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&&(Pt(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){Hu(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){Hu(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++)Ra(c[i],s)}catch(e){Hu(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&&Zi(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&&Zi(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&&Zi(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){Hu(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:Zi(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=Ui(Yi),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return Ui(Yi).controller.signal}},jl=typeof WeakMap==`function`?WeakMap:Map,Ml=0,Nl=null,$=null,Pl=0,Fl=0,Il=null,Ll=!1,Rl=!1,zl=!1,Bl=0,Vl=0,Hl=0,Ul=0,Wl=0,Gl=0,Kl=0,ql=null,Jl=null,Yl=!1,Xl=0,Zl=0,Ql=1/0,$l=null,eu=null,tu=0,nu=null,ru=null,iu=0,au=0,ou=null,su=null,cu=0,lu=null;function uu(){return Ml&2&&Pl!==0?Pl&-Pl:P.T===null?G():ld()}function du(){if(Gl===0)if(!(Pl&536870912)||Si){var e=Be;Be<<=1,!(Be&3932160)&&(Be=262144),Gl=e}else Gl=536870912;return e=Ga.current,e!==null&&(e.flags|=32),Gl}function fu(e,t,n){(e===Nl&&(Fl===2||Fl===9)||e.cancelPendingCommit!==null)&&(yu(e,0),gu(e,Pl,Gl,!1)),V(e,n),(!(Ml&2)||e!==Nl)&&(e===Nl&&(!(Ml&2)&&(Ul|=n),Vl===4&&gu(e,Pl,Gl,!1)),td(e))}function pu(e,t,n){if(Ml&6)throw Error(a(327));var r=!n&&(t&127)==0&&(t&e.expiredLanes)===0||We(e,t),i=r?Du(e,t):Tu(e,t,!0),o=r;do{if(i===0){Rl&&!r&&gu(e,t,0,!1);break}else{if(n=e.current.alternate,o&&!hu(n)){i=Tu(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=ql;var l=c.current.memoizedState.isDehydrated;if(l&&(yu(c,s).flags|=256),s=Tu(c,s,!1),s!==2){if(zl&&!l){c.errorRecoveryDisabledLanes|=o,Ul|=o,i=4;break a}o=Jl,Jl=i,o!==null&&(Jl===null?Jl=o:Jl.push.apply(Jl,o))}i=s}if(o=!1,i!==2)continue}}if(i===1){yu(e,0),gu(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:gu(r,t,Gl,!Ll);break a;case 2:Jl=null;break;case 3:case 5:break;default:throw Error(a(329))}if((t&62914560)===t&&(i=Xl+300-Te(),10<i)){if(gu(r,t,Gl,!Ll),Ue(r,0,!0)!==0)break a;iu=t,r.timeoutHandle=Kd(mu.bind(null,r,n,Jl,$l,Yl,t,Gl,Ul,Kl,Ll,o,`Throttled`,-0,0),i);break a}mu(r,n,Jl,$l,Yl,t,Gl,Ul,Kl,Ll,o,null,-0,0)}}break}while(1);td(e)}function mu(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:Ht},wl(t,a,d);var m=(a&62914560)===a?Xl-Te():(a&4194048)===a?Zl-Te():0;if(m=qf(d,m),m!==null){iu=a,e.cancelPendingCommit=m(Pu.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),gu(e,a,o,!l);return}}Pu(e,t,a,n,r,i,o,s,c)}function hu(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(!dr(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 gu(e,t,n,r){t&=~Wl,t&=~Ul,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-R(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&Je(e,n,t)}function _u(){return Ml&6?!0:(nd(0,!1),!1)}function vu(){if($!==null){if(Fl===0)var e=$.return;else e=$,Fi=Pi=null,yo(e),ba=null,xa=0,e=$;for(;e!==null;)Mc(e.alternate,e),e=e.return;$=null}}function yu(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,qd(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),iu=0,vu(),Nl=e,$=n=$r(e.current,null),Pl=t,Fl=0,Il=null,Ll=!1,Rl=We(e,t),zl=!1,Kl=Gl=Wl=Ul=Hl=Vl=0,Jl=ql=null,Yl=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-R(r),a=1<<i;t|=e[i],r&=~a}return Bl=t,Ur(),n}function bu(e,t){Q=null,P.H=ks,t===ua||t===fa?(t=va(),Fl=3):t===da?(t=va(),Fl=4):Fl=t===qs?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,Il=t,$===null&&(Vl=1,Vs(e,si(t,e.current)))}function xu(){var e=Ga.current;return e===null?!0:(Pl&4194048)===Pl?Ka===null:(Pl&62914560)===Pl||Pl&536870912?e===Ka:!1}function Su(){var e=P.H;return P.H=ks,e===null?ks:e}function Cu(){var e=P.A;return P.A=Al,e}function wu(){Vl=4,Ll||(Pl&4194048)!==Pl&&Ga.current!==null||(Rl=!0),!(Hl&134217727)&&!(Ul&134217727)||Nl===null||gu(Nl,Pl,Gl,!1)}function Tu(e,t,n){var r=Ml;Ml|=2;var i=Su(),a=Cu();(Nl!==e||Pl!==t)&&($l=null,yu(e,t)),t=!1;var o=Vl;a:do try{if(Fl!==0&&$!==null){var s=$,c=Il;switch(Fl){case 8:vu(),o=6;break a;case 3:case 2:case 9:case 6:Ga.current===null&&(t=!0);var l=Fl;if(Fl=0,Il=null,ju(e,s,c,l),n&&Rl){o=0;break a}break;default:l=Fl,Fl=0,Il=null,ju(e,s,c,l)}}Eu(),o=Vl;break}catch(t){bu(e,t)}while(1);return t&&e.shellSuspendCounter++,Fi=Pi=null,Ml=r,P.H=i,P.A=a,$===null&&(Nl=null,Pl=0,Ur()),o}function Eu(){for(;$!==null;)ku($)}function Du(e,t){var n=Ml;Ml|=2;var r=Su(),i=Cu();Nl!==e||Pl!==t?($l=null,Ql=Te()+500,yu(e,t)):Rl=We(e,t);a:do try{if(Fl!==0&&$!==null){t=$;var o=Il;b:switch(Fl){case 1:Fl=0,Il=null,ju(e,t,o,1);break;case 2:case 9:if(ma(o)){Fl=0,Il=null,Au(t);break}t=function(){Fl!==2&&Fl!==9||Nl!==e||(Fl=7),td(e)},o.then(t,t);break a;case 3:Fl=7;break a;case 4:Fl=5;break a;case 7:ma(o)?(Fl=0,Il=null,Au(t)):(Fl=0,Il=null,ju(e,t,o,7));break;case 5:var s=null;switch($.tag){case 26:s=$.memoizedState;case 5:case 27:var c=$;if(s?Wf(s):c.stateNode.complete){Fl=0,Il=null;var l=c.sibling;if(l!==null)$=l;else{var u=c.return;u===null?$=null:($=u,Mu(u))}break b}}Fl=0,Il=null,ju(e,t,o,5);break;case 6:Fl=0,Il=null,ju(e,t,o,6);break;case 8:vu(),Vl=6;break a;default:throw Error(a(462))}}Ou();break}catch(t){bu(e,t)}while(1);return Fi=Pi=null,P.H=r,P.A=i,Ml=n,$===null?(Nl=null,Pl=0,Ur(),Vl):0}function Ou(){for(;$!==null&&!Ce();)ku($)}function ku(e){var t=Cc(e.alternate,e,Bl);e.memoizedProps=e.pendingProps,t===null?Mu(e):$=t}function Au(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=sc(n,t,t.pendingProps,t.type,void 0,Pl);break;case 11:t=sc(n,t,t.pendingProps,t.type.render,t.ref,Pl);break;case 5:yo(t);default:Mc(n,t),t=$=ei(t,Bl),t=Cc(n,t,Bl)}e.memoizedProps=e.pendingProps,t===null?Mu(e):$=t}function ju(e,t,n,r){Fi=Pi=null,yo(t),ba=null,xa=0;var i=t.return;try{if(Ks(e,i,t,n,Pl)){Vl=1,Vs(e,si(n,e.current)),$=null;return}}catch(t){if(i!==null)throw $=i,t;Vl=1,Vs(e,si(n,e.current)),$=null;return}t.flags&32768?(Si||r===1?e=!0:Rl||Pl&536870912?e=!1:(Ll=e=!0,(r===2||r===9||r===3||r===6)&&(r=Ga.current,r!==null&&r.tag===13&&(r.flags|=16384))),Nu(t,e)):Mu(t)}function Mu(e){var t=e;do{if(t.flags&32768){Nu(t,Ll);return}e=t.return;var n=Ac(t.alternate,t,Bl);if(n!==null){$=n;return}if(t=t.sibling,t!==null){$=t;return}$=t=e}while(t!==null);Vl===0&&(Vl=5)}function Nu(e,t){do{var n=jc(e.alternate,e);if(n!==null){n.flags&=32767,$=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){$=e;return}$=e=n}while(e!==null);Vl=6,$=null}function Pu(e,t,n,r,i,o,s,c,l){e.cancelPendingCommit=null;do zu();while(tu!==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|=Hr,qe(e,n,o,s,c,l),e===Nl&&($=Nl=null,Pl=0),ru=t,nu=e,iu=n,au=o,ou=i,su=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,Ju(ke,function(){return Bu(),null})):(e.callbackNode=null,e.callbackPriority=0),r=(t.flags&13878)!=0,t.subtreeFlags&13878||r){r=P.T,P.T=null,i=F.p,F.p=2,s=Ml,Ml|=4;try{Zc(e,t,n)}finally{Ml=s,F.p=i,P.T=r}}tu=1,Fu(),Iu(),Lu()}}function Fu(){if(tu===1){tu=0;var e=nu,t=ru,n=(t.flags&13878)!=0;if(t.subtreeFlags&13878||n){n=P.T,P.T=null;var r=F.p;F.p=2;var i=Ml;Ml|=4;try{ul(t,e);var a=zd,o=gr(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&hr(s.ownerDocument.documentElement,s)){if(c!==null&&_r(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 _=mr(s,h),v=mr(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=!!Rd,zd=Rd=null}finally{Ml=i,F.p=r,P.T=n}}e.current=t,tu=2}}function Iu(){if(tu===2){tu=0;var e=nu,t=ru,n=(t.flags&8772)!=0;if(t.subtreeFlags&8772||n){n=P.T,P.T=null;var r=F.p;F.p=2;var i=Ml;Ml|=4;try{Qc(e,t.alternate,t)}finally{Ml=i,F.p=r,P.T=n}}tu=3}}function Lu(){if(tu===4||tu===3){tu=0,we();var e=nu,t=ru,n=iu,r=su;t.subtreeFlags&10256||t.flags&10256?tu=5:(tu=0,ru=nu=null,Ru(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(eu=null),W(n),t=t.stateNode,Fe&&typeof Fe.onCommitFiberRoot==`function`)try{Fe.onCommitFiberRoot(Pe,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=P.T,i=F.p,F.p=2,P.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{P.T=t,F.p=i}}iu&3&&zu(),td(e),i=e.pendingLanes,n&261930&&i&42?e===lu?cu++:(cu=0,lu=e):cu=0,nd(0,!1)}}function Ru(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,Zi(t)))}function zu(){return Fu(),Iu(),Lu(),Bu()}function Bu(){if(tu!==5)return!1;var e=nu,t=au;au=0;var n=W(iu),r=P.T,i=F.p;try{F.p=32>n?32:n,P.T=null,n=ou,ou=null;var o=nu,s=iu;if(tu=0,ru=nu=null,iu=0,Ml&6)throw Error(a(331));var c=Ml;if(Ml|=4,Dl(o.current),yl(o,o.current,s,n),Ml=c,nd(0,!1),Fe&&typeof Fe.onPostCommitFiberRoot==`function`)try{Fe.onPostCommitFiberRoot(Pe,o)}catch{}return!0}finally{F.p=i,P.T=r,Ru(e,t)}}function Vu(e,t,n){t=si(n,t),t=Us(e.stateNode,t,2),e=Ma(e,t,2),e!==null&&(V(e,2),td(e))}function Hu(e,t,n){if(e.tag===3)Vu(e,e,n);else for(;t!==null;){if(t.tag===3){Vu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(eu===null||!eu.has(r))){e=si(n,e),n=Ws(2),r=Ma(t,n,2),r!==null&&(Gs(n,r,t,e),V(r,2),td(r));break}}t=t.return}}function Uu(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)||(zl=!0,i.add(n),e=Wu.bind(null,e,t,n),t.then(e,e))}function Wu(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Nl===e&&(Pl&n)===n&&(Vl===4||Vl===3&&(Pl&62914560)===Pl&&300>Te()-Xl?!(Ml&2)&&yu(e,0):Wl|=n,Kl===Pl&&(Kl=0)),td(e)}function Gu(e,t){t===0&&(t=Ke()),e=Kr(e,t),e!==null&&(V(e,t),td(e))}function Ku(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Gu(e,n)}function qu(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),Gu(e,n)}function Ju(e,t){return xe(e,t)}var Yu=null,Xu=null,Zu=!1,Qu=!1,$u=!1,ed=0;function td(e){e!==Xu&&e.next===null&&(Xu===null?Yu=Xu=e:Xu=Xu.next=e),Qu=!0,Zu||(Zu=!0,cd())}function nd(e,t){if(!$u&&Qu){$u=!0;do for(var n=!1,r=Yu;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-R(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,sd(r,a))}else a=Pl,a=Ue(r,r===Nl?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||We(r,a)||(n=!0,sd(r,a));r=r.next}while(n);$u=!1}}function rd(){id()}function id(){Qu=Zu=!1;var e=0;ed!==0&&Gd()&&(e=ed);for(var t=Te(),n=null,r=Yu;r!==null;){var i=r.next,a=ad(r,t);a===0?(r.next=null,n===null?Yu=i:n.next=i,i===null&&(Xu=n)):(n=r,(e!==0||a&3)&&(Qu=!0)),r=i}tu!==0&&tu!==5||nd(e,!1),ed!==0&&(ed=0)}function ad(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-R(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=Ge(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=Nl,n=Pl,n=Ue(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(Fl===2||Fl===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&Se(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||We(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&Se(r),W(n)){case 2:case 8:n=Oe;break;case 32:n=ke;break;case 268435456:n=je;break;default:n=ke}return r=od.bind(null,e),n=xe(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&Se(r),e.callbackPriority=2,e.callbackNode=null,2}function od(e,t){if(tu!==0&&tu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(zu()&&e.callbackNode!==n)return null;var r=Pl;return r=Ue(e,e===Nl?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(pu(e,r,t),ad(e,Te()),e.callbackNode!=null&&e.callbackNode===n?od.bind(null,e):null)}function sd(e,t){if(zu())return null;pu(e,t,!0)}function cd(){Yd(function(){Ml&6?xe(De,rd):id()})}function ld(){if(ed===0){var e=ea;e===0&&(e=ze,ze<<=1,!(ze&261888)&&(ze=256)),ed=e}return ed}function ud(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:Vt(``+e)}function dd(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 fd(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=ud((i[$e]||null).action),o=r.submitter;o&&(t=(t=o[$e]||null)?ud(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new ln(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(ed!==0){var e=o?dd(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?dd(i,o):new FormData(i),hs(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var pd=0;pd<Lr.length;pd++){var md=Lr[pd];Rr(md.toLowerCase(),`on`+(md[0].toUpperCase()+md.slice(1)))}Rr(kr,`onAnimationEnd`),Rr(Ar,`onAnimationIteration`),Rr(jr,`onAnimationStart`),Rr(`dblclick`,`onDoubleClick`),Rr(`focusin`,`onFocus`),Rr(`focusout`,`onBlur`),Rr(Mr,`onTransitionRun`),Rr(Nr,`onTransitionStart`),Rr(Pr,`onTransitionCancel`),Rr(Fr,`onTransitionEnd`),mt(`onMouseEnter`,[`mouseout`,`mouseover`]),mt(`onMouseLeave`,[`mouseout`,`mouseover`]),mt(`onPointerEnter`,[`pointerout`,`pointerover`]),mt(`onPointerLeave`,[`pointerout`,`pointerover`]),pt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),pt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),pt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),pt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),pt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),pt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var hd=`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(` `),gd=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(hd));function _d(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){zr(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){zr(e)}i.currentTarget=null,a=c}}}}function vd(e,t){var n=t[tt];n===void 0&&(n=t[tt]=new Set);var r=e+`__bubble`;n.has(r)||(Sd(t,e,2,!1),n.add(r))}function yd(e,t,n){var r=0;t&&(r|=4),Sd(n,e,r,t)}var bd=`_reactListening`+Math.random().toString(36).slice(2);function xd(e){if(!e[bd]){e[bd]=!0,dt.forEach(function(t){t!==`selectionchange`&&(gd.has(t)||yd(t,!1,e),yd(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[bd]||(t[bd]=!0,yd(`selectionchange`,!1,t))}}function Sd(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,!Zt||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 Cd(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=st(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}Yt(function(){var r=a,i=Wt(n),o=[];a:{var c=Ir.get(e);if(c!==void 0){var l=ln,u=e;switch(e){case`keypress`:if(rn(n)===0)break a;case`keydown`:case`keyup`:l=On;break;case`focusin`:u=`focus`,l=vn;break;case`focusout`:u=`blur`,l=vn;break;case`beforeblur`:case`afterblur`:l=vn;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=gn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=_n;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=An;break;case kr:case Ar:case jr:l=bn;break;case Fr:l=jn;break;case`scroll`:case`scrollend`:l=dn;break;case`wheel`:l=Mn;break;case`copy`:case`cut`:case`paste`:l=xn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=kn;break;case`toggle`:case`beforetoggle`:l=Nn}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=Y(m,p),g!=null&&d.push(wd(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!==Ut&&(u=n.relatedTarget||n.fromElement)&&(st(u)||u[et]))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?st(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=gn,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=kn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?c:K(l),h=u==null?c:K(u),c=new d(g,m+`leave`,l,n,i),c.target=f,c.relatedTarget=h,g=null,st(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=Ed,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&&Dd(o,c,l,d,!1),u!==null&&f!==null&&Dd(o,f,u,d,!0)}}a:{if(c=r?K(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var v=$n;else if(qn(c))if(er)v=lr;else{v=sr;var y=or}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&Rt(r.elementType)&&(v=$n):v=cr;if(v&&=v(e,r)){Jn(o,v,n,i);break a}y&&y(e,c,r),e===`focusout`&&r&&c.type===`number`&&r.memoizedProps.value!=null&&At(c,`number`,c.value)}switch(y=r?K(r):window,e){case`focusin`:(qn(y)||y.contentEditable===`true`)&&(yr=y,br=r,xr=null);break;case`focusout`:xr=br=yr=null;break;case`mousedown`:Sr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Sr=!1,Cr(o,n,i);break;case`selectionchange`:if(vr)break;case`keydown`:case`keyup`:Cr(o,n,i)}var b;if(Fn)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 Un?Vn(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(Rn&&n.locale!==`ko`&&(Un||x!==`onCompositionStart`?x===`onCompositionEnd`&&Un&&(b=nn()):($t=i,en=`value`in $t?$t.value:$t.textContent,Un=!0)),y=Td(r,x),0<y.length&&(x=new Sn(x,e,null,n,i),o.push({event:x,listeners:y}),b?x.data=b:(b=Hn(n),b!==null&&(x.data=b)))),(b=Ln?Wn(e,n):Gn(e,n))&&(x=Td(r,`onBeforeInput`),0<x.length&&(y=new Sn(`onBeforeInput`,`beforeinput`,null,n,i),o.push({event:y,listeners:x}),y.data=b)),fd(o,e,r,n,i)}_d(o,t)})}function wd(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Td(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=Y(e,n),i!=null&&r.unshift(wd(e,i,a)),i=Y(e,t),i!=null&&r.push(wd(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Ed(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Dd(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=Y(n,a),l!=null&&o.unshift(wd(n,l,c))):i||(l=Y(n,a),l!=null&&o.push(wd(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var Od=/\r\n?/g,kd=/\u0000|\uFFFD/g;function Ad(e){return(typeof e==`string`?e:``+e).replace(Od,`
10
+ `).replace(kd,``)}function jd(e,t){return t=Ad(t),Ad(e)===t}function Md(e,t,n,r,i,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||Pt(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&Pt(e,``+r);break;case`className`:yt(e,`class`,r);break;case`tabIndex`:yt(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:yt(e,n,r);break;case`style`:Lt(e,r,o);break;case`data`:if(t!==`object`){yt(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=Vt(``+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`&&Md(e,t,`name`,i.name,i,null),Md(e,t,`formEncType`,i.formEncType,i,null),Md(e,t,`formMethod`,i.formMethod,i,null),Md(e,t,`formTarget`,i.formTarget,i,null)):(Md(e,t,`encType`,i.encType,i,null),Md(e,t,`method`,i.method,i,null),Md(e,t,`target`,i.target,i,null)));if(r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Vt(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=Ht);break;case`onScroll`:r!=null&&vd(`scroll`,e);break;case`onScrollEnd`:r!=null&&vd(`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=Vt(``+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`:vd(`beforetoggle`,e),vd(`toggle`,e),vt(e,`popover`,r);break;case`xlinkActuate`:J(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:J(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:J(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:J(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:J(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:J(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:J(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:J(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:J(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:vt(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,vt(e,n,r))}}function Nd(e,t,n,r,i,o){switch(n){case`style`:Lt(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`?Pt(e,r):(typeof r==`number`||typeof r==`bigint`)&&Pt(e,``+r);break;case`onScroll`:r!=null&&vd(`scroll`,e);break;case`onScrollEnd`:r!=null&&vd(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=Ht);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!ft.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[$e]||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,``):vt(e,n,r)}}}function Pd(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:vd(`error`,e),vd(`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:Md(e,t,o,s,n,null)}}i&&Md(e,t,`srcSet`,n.srcSet,n,null),r&&Md(e,t,`src`,n.src,n,null);return;case`input`:vd(`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:Md(e,t,r,d,n,null)}}kt(e,o,c,l,u,s,i,!1);return;case`select`:for(i in vd(`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:Md(e,t,i,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&jt(e,!!r,n,!0):jt(e,!!r,t,!1);return;case`textarea`:for(s in vd(`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:Md(e,t,s,c,n,null)}Nt(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:Md(e,t,l,r,n,null)}return;case`dialog`:vd(`beforetoggle`,e),vd(`toggle`,e),vd(`cancel`,e),vd(`close`,e);break;case`iframe`:case`object`:vd(`load`,e);break;case`video`:case`audio`:for(r=0;r<hd.length;r++)vd(hd[r],e);break;case`image`:vd(`error`,e),vd(`load`,e);break;case`details`:vd(`toggle`,e);break;case`embed`:case`source`:case`link`:vd(`error`,e),vd(`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:Md(e,t,u,r,n,null)}return;default:if(Rt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Nd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&Md(e,t,c,r,n,null))}function Fd(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)||Md(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&&Md(e,t,p,m,r,f)}}Ot(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)||Md(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&&Md(e,t,i,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?jt(e,!!n,n?[]:``,!1):jt(e,!!n,t,!0)):jt(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:Md(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&&Md(e,t,s,i,r,o)}Mt(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:Md(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:Md(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)&&Md(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:Md(e,t,u,p,r,m)}return;default:if(Rt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Nd(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||Nd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&Md(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||Md(e,t,f,p,r,m)}function Id(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Ld(){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&&Id(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&&Id(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 Rd=null,zd=null;function Bd(e){return e.nodeType===9?e:e.ownerDocument}function Vd(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 Hd(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 Ud(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 Wd=null;function Gd(){var e=window.event;return e&&e.type===`popstate`?e===Wd?!1:(Wd=e,!0):(Wd=null,!1)}var Kd=typeof setTimeout==`function`?setTimeout:void 0,qd=typeof clearTimeout==`function`?clearTimeout:void 0,Jd=typeof Promise==`function`?Promise:void 0,Yd=typeof queueMicrotask==`function`?queueMicrotask:Jd===void 0?Kd:function(e){return Jd.resolve(null).then(e).catch(Xd)};function Xd(e){setTimeout(function(){throw e})}function Zd(e){return e===`head`}function Qd(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[at]||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 $d(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 ef(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`:ef(n),ot(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function tf(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[at])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=cf(e.nextSibling),e===null)break}return null}function nf(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=cf(e.nextSibling),e===null))return null;return e}function rf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=cf(e.nextSibling),e===null))return null;return e}function af(e){return e.data===`$?`||e.data===`$~`}function of(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function sf(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 cf(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 lf=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 cf(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=Bd(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]);ot(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=F.d;F.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=_u();return e||t}function yf(e){var t=ct(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=Dt(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`),Pd(t,`link`,e),ut(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="`+Dt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Dt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Dt(n.imageSizes)+`"]`)):i+=`[href="`+Dt(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`),Pd(t,`link`,e),ut(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="`+Dt(r)+`"][href="`+Dt(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`),Pd(r,`link`,e),ut(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=lt(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`);ut(c),Pd(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=lt(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`),ut(a),Pd(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=lt(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`),ut(a),Pd(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=se.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=lt(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=lt(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=lt(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="`+Dt(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}),Pd(t,`link`,n),ut(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Dt(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~="`+Dt(n.href)+`"]`);if(r)return t.instance=r,ut(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`),ut(r),Pd(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,ut(o),o;r=Mf(n),(i=mf.get(i))&&Rf(r,i),o=(e.ownerDocument||e).createElement(`link`),ut(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Pd(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,ut(i),i):(r=n,(i=mf.get(o))&&(r=p({},n),zf(r,i)),e=e.ownerDocument||e,i=e.createElement(`script`),ut(i),Pd(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[at]||a[Qe]||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,ut(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),ut(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(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*Ld());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:I,_currentValue2:I,_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=B(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=B(0),this.hiddenUpdates=B(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=Zr(3,null,null,t),e.current=a,a.stateNode=e,t=Xi(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},ka(a),e}function tp(e){return e?(e=Yr,e):Yr}function np(e,t,n,r,i,a){i=tp(i),r.context===null?r.context=i:r.pendingContext=i,r=ja(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Ma(e,r,t),n!==null&&(fu(n,e,t),Na(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=Kr(e,67108864);t!==null&&fu(t,e,67108864),ip(e,67108864)}}function op(e){if(e.tag===13||e.tag===31){var t=uu();t=U(t);var n=Kr(e,t);n!==null&&fu(n,e,t),ip(e,t)}}var sp=!0;function cp(e,t,n,r){var i=P.T;P.T=null;var a=F.p;try{F.p=2,up(e,t,n,r)}finally{F.p=a,P.T=i}}function lp(e,t,n,r){var i=P.T;P.T=null;var a=F.p;try{F.p=8,up(e,t,n,r)}finally{F.p=a,P.T=i}}function up(e,t,n,r){if(sp){var i=dp(r);if(i===null)Cd(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=ct(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=He(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-R(o);s.entanglements[1]|=c,o&=~c}td(a),!(Ml&6)&&(Ql=Te()+500,nd(0,!1))}}break;case 31:case 13:s=Kr(a,2),s!==null&&fu(s,a,2),_u(),ip(a,2)}if(a=dp(r),a===null&&Cd(e,t,r,fp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else Cd(e,t,r,null,n)}}function dp(e){return e=Wt(e),pp(e)}var fp=null;function pp(e){if(fp=null,e=st(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(Ee()){case De:return 2;case Oe:return 8;case ke:case Ae:return 32;case je: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=ct(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=st(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,Xe(e.priority,function(){op(n)});return}}else if(t===31){if(t=l(n),t!==null){e.blockedOn=t,Xe(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);Ut=r,n.target.dispatchEvent(r),Ut=null}else return t=ct(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=ct(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[$e]||null;if(typeof a==`function`)o||Mp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[$e]||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,uu(),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),_u(),t[et]=null}};function Ip(e){this._internalRoot=e}Ip.prototype.unstable_scheduleHydration=function(e){if(e){var t=G();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`));F.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:P,reconcilerVersion:`19.2.4`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var zp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!zp.isDisabled&&zp.supportsFiber)try{Pe=zp.inject(Rp),Fe=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[et]=t.current,xd(e),new Fp(t)}})),xn=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=bn()})),Sn=M(`app-window`,[[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}],[`path`,{d:`M10 4v4`,key:`pp8u80`}],[`path`,{d:`M2 8h20`,key:`d11cs7`}],[`path`,{d:`M6 4v4`,key:`1svtjw`}]]),Cn=M(`arrow-down-a-z`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M20 8h-5`,key:`1vsyxs`}],[`path`,{d:`M15 10V6.5a2.5 2.5 0 0 1 5 0V10`,key:`ag13bf`}],[`path`,{d:`M15 14h5l-5 6h5`,key:`ur5jdg`}]]),wn=M(`arrow-down-up`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`m21 8-4-4-4 4`,key:`1c9v7m`}],[`path`,{d:`M17 4v16`,key:`7dpous`}]]),Tn=M(`arrow-down-to-line`,[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]),En=M(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),Dn=M(`arrow-up-from-line`,[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),On=M(`arrow-up`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),kn=M(`bell-off`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742`,key:`178tsu`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05`,key:`1hqiys`}]]),An=M(`bot-message-square`,[[`path`,{d:`M12 6V2H8`,key:`1155em`}],[`path`,{d:`M15 11v2`,key:`i11awn`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`M20 16a2 2 0 0 1-2 2H8.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 4 20.286V8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2z`,key:`11gyqh`}],[`path`,{d:`M9 11v2`,key:`1ueba0`}]]),jn=M(`calendar-x-2`,[[`path`,{d:`M8 2v4`,key:`1cmpym`}],[`path`,{d:`M16 2v4`,key:`4m81vk`}],[`path`,{d:`M21 13V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8`,key:`3spt84`}],[`path`,{d:`M3 10h18`,key:`8toen8`}],[`path`,{d:`m17 22 5-5`,key:`1k6ppv`}],[`path`,{d:`m17 17 5 5`,key:`p7ous7`}]]),Mn=M(`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`}]]),Nn=M(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),Pn=M(`chevrons-down-up`,[[`path`,{d:`m7 20 5-5 5 5`,key:`13a0gw`}],[`path`,{d:`m7 4 5 5 5-5`,key:`1kwcof`}]]),Fn=M(`chevrons-right`,[[`path`,{d:`m6 17 5-5-5-5`,key:`xnjwq`}],[`path`,{d:`m13 17 5-5-5-5`,key:`17xmmf`}]]),In=M(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),Ln=M(`circle-alert`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]),Rn=M(`circle-arrow-up`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 12-4-4-4 4`,key:`177agl`}],[`path`,{d:`M12 16V8`,key:`1sbj14`}]]),zn=M(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),Bn=M(`clipboard-paste`,[[`path`,{d:`M11 14h10`,key:`1w8e9d`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v1.344`,key:`1e62lh`}],[`path`,{d:`m17 18 4-4-4-4`,key:`z2g111`}],[`path`,{d:`M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 1.793-1.113`,key:`bjbb7m`}],[`rect`,{x:`8`,y:`2`,width:`8`,height:`4`,rx:`1`,key:`ublpy`}]]),Vn=M(`clipboard`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}]]),Hn=M(`cloud`,[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]),Un=M(`coffee`,[[`path`,{d:`M10 2v2`,key:`7u0qdc`}],[`path`,{d:`M14 2v2`,key:`6buw04`}],[`path`,{d:`M16 8a1 1 0 0 1 1 1v8a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1h14a4 4 0 1 1 0 8h-1`,key:`pwadti`}],[`path`,{d:`M6 2v2`,key:`colzsn`}]]),Wn=M(`cpu`,[[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M17 20v2`,key:`1rnc9c`}],[`path`,{d:`M17 2v2`,key:`11trls`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M2 17h2`,key:`7oei6x`}],[`path`,{d:`M2 7h2`,key:`asdhe0`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`M20 17h2`,key:`1fpfkl`}],[`path`,{d:`M20 7h2`,key:`1o8tra`}],[`path`,{d:`M7 20v2`,key:`4gnj0m`}],[`path`,{d:`M7 2v2`,key:`1i4yhu`}],[`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,rx:`2`,key:`1vbyd7`}],[`rect`,{x:`8`,y:`8`,width:`8`,height:`8`,rx:`1`,key:`z9xiuo`}]]),Gn=M(`crosshair`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`22`,x2:`18`,y1:`12`,y2:`12`,key:`l9bcsi`}],[`line`,{x1:`6`,x2:`2`,y1:`12`,y2:`12`,key:`13hhkx`}],[`line`,{x1:`12`,x2:`12`,y1:`6`,y2:`2`,key:`10w3f3`}],[`line`,{x1:`12`,x2:`12`,y1:`22`,y2:`18`,key:`15g9kq`}]]),Kn=M(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),qn=M(`file-archive`,[[`path`,{d:`M13.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v11.5`,key:`4pqfef`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M8 12v-1`,key:`1ej8lb`}],[`path`,{d:`M8 18v-2`,key:`qcmpov`}],[`path`,{d:`M8 7V6`,key:`1nbb54`}],[`circle`,{cx:`8`,cy:`20`,r:`2`,key:`ckkr5m`}]]),Jn=M(`file-braces`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]]),Yn=M(`file-code`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),Xn=M(`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`}]]),Zn=M(`file-headphone`,[[`path`,{d:`M4 6.835V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-.343`,key:`1vfytu`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M2 19a2 2 0 0 1 4 0v1a2 2 0 0 1-4 0v-4a6 6 0 0 1 12 0v4a2 2 0 0 1-4 0v-1a2 2 0 0 1 4 0`,key:`1etmh7`}]]),Qn=M(`file-image`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`circle`,{cx:`10`,cy:`12`,r:`2`,key:`737tya`}],[`path`,{d:`m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22`,key:`wt3hpn`}]]),$n=M(`file-play`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M15.033 13.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56v-4.704a.645.645 0 0 1 .967-.56z`,key:`1tzo1f`}]]),er=M(`file-plus`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M9 15h6`,key:`cctwl0`}],[`path`,{d:`M12 18v-6`,key:`17g6i2`}]]),tr=M(`file-spreadsheet`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M8 13h2`,key:`yr2amv`}],[`path`,{d:`M14 13h2`,key:`un5t4a`}],[`path`,{d:`M8 17h2`,key:`2yhykz`}],[`path`,{d:`M14 17h2`,key:`10kma7`}]]),nr=M(`file-text`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),rr=M(`file-type`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M11 18h2`,key:`12mj7e`}],[`path`,{d:`M12 12v6`,key:`3ahymv`}],[`path`,{d:`M9 13v-.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v.5`,key:`qbrxap`}]]),ir=M(`file`,[[`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:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}]]),ar=M(`folder-open`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 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.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),or=M(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),sr=M(`folder-tree`,[[`path`,{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`hod4my`}],[`path`,{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`w4yl2u`}],[`path`,{d:`M3 5a2 2 0 0 0 2 2h3`,key:`f2jnh7`}],[`path`,{d:`M3 3v13a2 2 0 0 0 2 2h3`,key:`k8epm1`}]]),cr=M(`folder`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),lr=M(`git-branch`,[[`path`,{d:`M15 6a9 9 0 0 0-9 9V3`,key:`1cii5b`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}]]),ur=M(`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`}]]),dr=M(`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`}]]),fr=M(`grid-2x2`,[[`path`,{d:`M12 3v18`,key:`108xh3`}],[`path`,{d:`M3 12h18`,key:`1i2n21`}],[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}]]),pr=M(`grip-horizontal`,[[`circle`,{cx:`12`,cy:`9`,r:`1`,key:`124mty`}],[`circle`,{cx:`19`,cy:`9`,r:`1`,key:`1ruzo2`}],[`circle`,{cx:`5`,cy:`9`,r:`1`,key:`1a8b28`}],[`circle`,{cx:`12`,cy:`15`,r:`1`,key:`1e56xg`}],[`circle`,{cx:`19`,cy:`15`,r:`1`,key:`1a92ep`}],[`circle`,{cx:`5`,cy:`15`,r:`1`,key:`5r1jwy`}]]),mr=M(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),hr=M(`heart`,[[`path`,{d:`M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5`,key:`mvr1a0`}]]),gr=M(`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`}]]),_r=M(`history`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}],[`path`,{d:`M12 7v5l4 2`,key:`1fdv2h`}]]),vr=M(`house`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]]),yr=M(`image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),br=M(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),xr=M(`key`,[[`path`,{d:`m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4`,key:`g0fldk`}],[`path`,{d:`m21 2-9.6 9.6`,key:`1j0ho8`}],[`circle`,{cx:`7.5`,cy:`15.5`,r:`5.5`,key:`yqb3hr`}]]),Sr=M(`layers`,[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]]),Cr=M(`link-2`,[[`path`,{d:`M9 17H7A5 5 0 0 1 7 7h2`,key:`8i5ue5`}],[`path`,{d:`M15 7h2a5 5 0 1 1 0 10h-2`,key:`1b9ql8`}],[`line`,{x1:`8`,x2:`16`,y1:`12`,y2:`12`,key:`1jonct`}]]),wr=M(`link`,[[`path`,{d:`M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71`,key:`1cjeqo`}],[`path`,{d:`M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71`,key:`19qd67`}]]),Tr=M(`list-filter`,[[`path`,{d:`M2 5h20`,key:`1fs1ex`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`path`,{d:`M9 19h6`,key:`456am0`}]]),Er=M(`list`,[[`path`,{d:`M3 5h.01`,key:`18ugdj`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M3 19h.01`,key:`noohij`}],[`path`,{d:`M8 5h13`,key:`1pao27`}],[`path`,{d:`M8 12h13`,key:`1za7za`}],[`path`,{d:`M8 19h13`,key:`m83p4d`}]]),Dr=M(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),Or=M(`maximize-2`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]),kr=M(`menu`,[[`path`,{d:`M4 5h16`,key:`1tepv9`}],[`path`,{d:`M4 12h16`,key:`1lakjw`}],[`path`,{d:`M4 19h16`,key:`1djgab`}]]),Ar=M(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),jr=M(`mic`,[[`path`,{d:`M12 19v3`,key:`npa21l`}],[`path`,{d:`M19 10v2a7 7 0 0 1-14 0v-2`,key:`1vc78b`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`13`,rx:`3`,key:`s6n7sd`}]]),Mr=M(`minimize-2`,[[`path`,{d:`m14 10 7-7`,key:`oa77jy`}],[`path`,{d:`M20 10h-6V4`,key:`mjg0md`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M4 14h6v6`,key:`rmj7iw`}]]),Nr=M(`minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),Pr=M(`octagon-x`,[[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),Fr=M(`palette`,[[`path`,{d:`M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z`,key:`e79jfc`}],[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`,key:`1okk4w`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`,key:`f64h9f`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`,key:`qy21gx`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`fotxhn`}]]),Ir=M(`panel-bottom`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 15h18`,key:`5xshup`}]]),Lr=M(`panel-left-open`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`m14 9 3 3-3 3`,key:`8010ee`}]]),Rr=M(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),zr=M(`panel-right`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),Br=M(`picture-in-picture-2`,[[`path`,{d:`M21 9V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v10c0 1.1.9 2 2 2h4`,key:`daa4of`}],[`rect`,{width:`10`,height:`7`,x:`12`,y:`13`,rx:`2`,key:`1nb8gs`}]]),Vr=M(`pin-off`,[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89`,key:`znwnzq`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11`,key:`c9qhm2`}]]),Hr=M(`pin`,[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`,key:`1nkz8b`}]]),Ur=M(`plug`,[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]),Wr=M(`qr-code`,[[`rect`,{width:`5`,height:`5`,x:`3`,y:`3`,rx:`1`,key:`1tu5fj`}],[`rect`,{width:`5`,height:`5`,x:`16`,y:`3`,rx:`1`,key:`1v8r4q`}],[`rect`,{width:`5`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`1x03jg`}],[`path`,{d:`M21 16h-3a2 2 0 0 0-2 2v3`,key:`177gqh`}],[`path`,{d:`M21 21v.01`,key:`ents32`}],[`path`,{d:`M12 7v3a2 2 0 0 1-2 2H7`,key:`8crl2c`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M12 3h.01`,key:`n36tog`}],[`path`,{d:`M12 16v.01`,key:`133mhm`}],[`path`,{d:`M16 12h1`,key:`1slzba`}],[`path`,{d:`M21 12v.01`,key:`1lwtk9`}],[`path`,{d:`M12 21v-1`,key:`1880an`}]]),Gr=M(`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`}]]),Kr=M(`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`}]]),qr=M(`rotate-cw`,[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]),Jr=M(`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`}]]),Yr=M(`search`,[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]),Xr=M(`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`}]]),Zr=M(`settings-2`,[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]),Qr=M(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),$r=M(`share-2`,[[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}],[`circle`,{cx:`6`,cy:`12`,r:`3`,key:`w7nqdw`}],[`circle`,{cx:`18`,cy:`19`,r:`3`,key:`1xt0gg`}],[`line`,{x1:`8.59`,x2:`15.42`,y1:`13.51`,y2:`17.49`,key:`47mynk`}],[`line`,{x1:`15.41`,x2:`8.59`,y1:`6.51`,y2:`10.49`,key:`1n3mei`}]]),ei=M(`shield-alert`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M12 8v4`,key:`1got3b`}],[`path`,{d:`M12 16h.01`,key:`1drbdi`}]]),ti=M(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),ni=M(`square-centerline-dashed-horizontal`,[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v14c0 1.1.9 2 2 2h3`,key:`1i73f7`}],[`path`,{d:`M16 3h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-3`,key:`saxlbk`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 14v2`,key:`8jcxud`}],[`path`,{d:`M12 8v2`,key:`1woqiv`}],[`path`,{d:`M12 2v2`,key:`tus03m`}]]),ri=M(`square-centerline-dashed-vertical`,[[`path`,{d:`M21 8V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v3`,key:`14bfxa`}],[`path`,{d:`M21 16v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-3`,key:`14rx03`}],[`path`,{d:`M4 12H2`,key:`rhcxmi`}],[`path`,{d:`M10 12H8`,key:`s88cx1`}],[`path`,{d:`M16 12h-2`,key:`10asgb`}],[`path`,{d:`M22 12h-2`,key:`14jgyd`}]]),ii=M(`square-terminal`,[[`path`,{d:`m7 11 2-2-2-2`,key:`1lz0vl`}],[`path`,{d:`M11 13h4`,key:`1p7l4v`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}]]),ai=M(`square-x`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),oi=M(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]),si=M(`tag`,[[`path`,{d:`M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z`,key:`vktsd0`}],[`circle`,{cx:`7.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`kqv944`}]]),ci=M(`tags`,[[`path`,{d:`M13.172 2a2 2 0 0 1 1.414.586l6.71 6.71a2.4 2.4 0 0 1 0 3.408l-4.592 4.592a2.4 2.4 0 0 1-3.408 0l-6.71-6.71A2 2 0 0 1 6 9.172V3a1 1 0 0 1 1-1z`,key:`16rjxf`}],[`path`,{d:`M2 7v6.172a2 2 0 0 0 .586 1.414l6.71 6.71a2.4 2.4 0 0 0 3.191.193`,key:`178nd4`}],[`circle`,{cx:`10.5`,cy:`6.5`,r:`.5`,fill:`currentColor`,key:`12ikhr`}]]),li=M(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),ui=M(`undo-2`,[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]),di=M(`unlink`,[[`path`,{d:`m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71`,key:`yqzxt4`}],[`path`,{d:`m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71`,key:`4qinb0`}],[`line`,{x1:`8`,x2:`8`,y1:`2`,y2:`5`,key:`1041cp`}],[`line`,{x1:`2`,x2:`5`,y1:`8`,y2:`8`,key:`14m1p5`}],[`line`,{x1:`16`,x2:`16`,y1:`19`,y2:`22`,key:`rzdirn`}],[`line`,{x1:`19`,x2:`22`,y1:`16`,y2:`16`,key:`ox905f`}]]),fi=M(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),pi=M(`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`}]]),mi=M(`wifi-off`,[[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M8.5 16.429a5 5 0 0 1 7 0`,key:`1bycff`}],[`path`,{d:`M5 12.859a10 10 0 0 1 5.17-2.69`,key:`1dl1wf`}],[`path`,{d:`M19 12.859a10 10 0 0 0-2.007-1.523`,key:`4k23kn`}],[`path`,{d:`M2 8.82a15 15 0 0 1 4.177-2.643`,key:`1grhjp`}],[`path`,{d:`M22 8.82a15 15 0 0 0-11.288-3.764`,key:`z3jwby`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),hi=M(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]),gi=M(`zoom-in`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`11`,x2:`11`,y1:`8`,y2:`14`,key:`1vmskp`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),_i=M(`zoom-out`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),vi=xn(),X=e(r(),1),Z=u(),yi=({...e})=>{let t=W(e=>e.themeMode);return(0,Z.jsx)(qe,{theme:t===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:t,className:`toaster group`,icons:{success:(0,Z.jsx)(zn,{className:`size-4`}),info:(0,Z.jsx)(br,{className:`size-4`}),warning:(0,Z.jsx)(We,{className:`size-4`}),error:(0,Z.jsx)(Pr,{className:`size-4`}),loading:(0,Z.jsx)(z,{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})};function bi({delayDuration:e=0,...t}){return(0,Z.jsx)(E,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function xi({...e}){return(0,Z.jsx)(w,{"data-slot":`tooltip`,...e})}function Si({...e}){return(0,Z.jsx)(O,{"data-slot":`tooltip-trigger`,...e})}function Ci({className:e,sideOffset:t=0,children:n,...r}){let i=Qe();return(0,Z.jsx)(k,{container:i,children:(0,Z.jsxs)(D,{"data-slot":`tooltip-content`,sideOffset:t,className:G(`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,Z.jsx)(A,{className:`z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground`})]})})}function wi(e,t){let n=getComputedStyle(e);return t*parseFloat(n.fontSize)}function Ti(e,t){let n=getComputedStyle(e.ownerDocument.body);return t*parseFloat(n.fontSize)}function Ei(e){return e/100*window.innerHeight}function Di(e){return e/100*window.innerWidth}function Oi(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 ki({groupSize:e,panelElement:t,styleProp:n}){let r,[i,a]=Oi(n);switch(a){case`%`:r=i/100*e;break;case`px`:r=i;break;case`rem`:r=Ti(t,i);break;case`em`:r=wi(t,i);break;case`vh`:r=Ei(i);break;case`vw`:r=Di(i);break}return r}function Ai(e){return parseFloat(e.toFixed(3))}function ji({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 Mi(e){let{panels:t}=e,n=ji({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=Ai(ki({groupSize:n,panelElement:t,styleProp:r.collapsedSize})/n*100));let a;r.defaultSize!==void 0&&(a=Ai(ki({groupSize:n,panelElement:t,styleProp:r.defaultSize})/n*100));let o=0;r.minSize!==void 0&&(o=Ai(ki({groupSize:n,panelElement:t,styleProp:r.minSize})/n*100));let s=100;return r.maxSize!==void 0&&(s=Ai(ki({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 Ni(e,t=`Assertion error`){if(!e)throw Error(t)}function Pi(e,t){return Array.from(t).sort(e===`horizontal`?Fi:Ii)}function Fi(e,t){let n=e.element.offsetLeft-t.element.offsetLeft;return n===0?e.element.offsetWidth-t.element.offsetWidth:n}function Ii(e,t){let n=e.element.offsetTop-t.element.offsetTop;return n===0?e.element.offsetHeight-t.element.offsetHeight:n}function Li(e){return typeof e==`object`&&!!e&&`nodeType`in e&&e.nodeType===Node.ELEMENT_NODE}function Ri(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 zi({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}=Ri(r,n),s=e===`horizontal`?t:o;s<a&&(a=s,i=n)}return Ni(i,`No rect found`),i}var Bi;function Vi(){return Bi===void 0&&(Bi=typeof matchMedia==`function`?!!matchMedia(`(pointer:coarse)`).matches:!1),Bi}function Hi(e){let{element:t,orientation:n,panels:r,separators:i}=e,a=Pi(n,Array.from(t.children).filter(Li).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,zi({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=Vi()?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:ji({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 Ui=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)}}},Wi=new Map,Gi=new Ui;function Ki(e){Wi=new Map(Wi),Wi.delete(e)}function qi(e,t){for(let[t]of Wi)if(t.id===e)return t}function Ji(e,t){for(let[t,n]of Wi)if(t.id===e)return n;if(t)throw Error(`Could not find data for Group with id ${e}`)}function Yi(){return Wi}function Xi(e,t){return Gi.addListener(`groupChange`,n=>{n.group.id===e&&t(n)})}function Zi(e,t){let n=Wi.get(e);Wi=new Map(Wi),Wi.set(e,t),Gi.emit(`groupChange`,{group:e,prev:n,next:t})}function Qi(e,t,n){let r,i={x:1/0,y:1/0};for(let a of t){let t=Ri(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 $i(e){return typeof e==`object`&&!!e&&`nodeType`in e&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE}function ea(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:oa(e),b:oa(t)},r;for(;n.a.at(-1)===n.b.at(-1);)r=n.a.pop(),n.b.pop();Ni(r,`Stacking order can only be calculated for elements with a common ancestor`);let i={a:aa(ia(n.a)),b:aa(ia(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 ta=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function na(e){let t=getComputedStyle(sa(e)??e).display;return t===`flex`||t===`inline-flex`}function ra(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||na(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`||ta.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function ia(e){let t=e.length;for(;t--;){let n=e[t];if(Ni(n,`Missing node`),ra(n))return n}return null}function aa(e){return e&&Number(getComputedStyle(e).zIndex)||0}function oa(e){let t=[];for(;e;)t.push(e),e=sa(e);return t}function sa(e){let{parentNode:t}=e;return $i(t)?t.host:t}function ca(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 la({groupElement:e,hitRegion:t,pointerEventTarget:n}){if(!Li(n)||n.contains(e)||e.contains(n))return!0;if(ea(n,e)>0){let r=n;for(;r;){if(r.contains(e))return!0;if(ca(r.getBoundingClientRect(),t))return!1;r=r.parentElement}}return!0}function ua(e,t){let n=[];return t.forEach((t,r)=>{if(r.disabled)return;let i=Hi(r),a=Qi(r.orientation,i,{x:e.clientX,y:e.clientY});a&&a.distance.x<=0&&a.distance.y<=0&&la({groupElement:r.element,hitRegion:a.hitRegion.rect,pointerEventTarget:e.target})&&n.push(a.hitRegion)}),n}function da(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 fa(e,t,n=0){return Math.abs(Ai(e)-Ai(t))<=n}function pa(e,t){return fa(e,t)?0:e>t?1:-1}function ma({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(pa(r,c)<0)if(a){let e=(i+c)/2;r=pa(r,e)<0?i:c}else r=c;return r=Math.min(s,r),r=Ai(r),r}function ha({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:r,prevLayout:i,trigger:a}){if(fa(e,0))return t;let o=a===`imperative-api`,s=Object.values(t),c=Object.values(i),l=[...s],[u,d]=r;Ni(u!=null,`Invalid first pivot index`),Ni(d!=null,`Invalid second pivot index`);let f=0;switch(a){case`keyboard`:{let t=e<0?d:u,r=n[t];Ni(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(Ni(n!=null,`Previous layout not found for panel index ${t}`),fa(n,i)){let t=o-n;pa(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let t=e<0?u:d,r=n[t];Ni(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(Ni(n!=null,`Previous layout not found for panel index ${t}`),fa(n,o)){let t=n-i;pa(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}break;default:{let t=e<0?d:u,r=n[t];Ni(r,`Panel constraints not found for index ${t}`);let i=s[t],{collapsible:a,collapsedSize:o,minSize:c}=r;if(a&&pa(i,c)<0)if(e>0){let t=c-o,n=t/2;pa(i+e,c)<0&&(e=pa(e,n)<=0?0:t)}else{let t=c-o,n=100-t/2;pa(i-e,c)<0&&(e=pa(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];Ni(e!=null,`Previous layout not found for panel index ${r}`);let a=ma({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];Ni(i!=null,`Previous layout not found for panel index ${t}`);let a=i-r,c=ma({overrideDisabledPanels:o,panelConstraints:n[t],prevSize:i,size:a});if(!fa(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(da(c,l))return i;{let t=e<0?d:u,r=s[t];Ni(r!=null,`Previous layout not found for panel index ${t}`);let i=r+f,a=ma({overrideDisabledPanels:o,panelConstraints:n[t],prevSize:r,size:i});if(l[t]=a,!fa(a,i)){let t=i-a,r=e<0?d:u;for(;r>=0&&r<n.length;){let i=l[r];Ni(i!=null,`Previous layout not found for panel index ${r}`);let a=i+t,s=ma({overrideDisabledPanels:o,panelConstraints:n[r],prevSize:i,size:a});if(fa(i,s)||(t-=s-i,l[r]=s),fa(t,0))break;e>0?r--:r++}}}if(!fa(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 ga(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(t[n]===void 0||pa(e[n],t[n])!==0)return!1;return!0}function _a({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(!fa(i,100)&&r.length>0)for(let e=0;e<t.length;e++){let t=r[e];Ni(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];Ni(i!=null,`No layout data found for index ${e}`);let o=r[e];Ni(o!=null,`No layout data found for index ${e}`);let s=ma({overrideDisabledPanels:!0,panelConstraints:t[e],prevSize:i,size:o});o!=s&&(a+=o-s,r[e]=s)}if(!fa(a,0))for(let e=0;e<t.length;e++){let n=r[e];Ni(n!=null,`No layout data found for index ${e}`);let i=n+a,o=ma({overrideDisabledPanels:!0,panelConstraints:t[e],prevSize:n,size:i});if(n!==o&&(a-=o-n,r[e]=o,fa(a,0)))break}let o=Object.keys(e);return r.reduce((e,t,n)=>(e[o[n]]=t,e),{})}function va({groupId:e,panelId:t}){let n=()=>{let t=Yi();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=_a({layout:ha({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});ga(l,p)||Zi(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&&fa(t,n)},resize:e=>{let{group:t}=n(),{element:r}=i(),a=ji({group:t});o(Ai(ki({groupSize:a,panelElement:r,styleProp:e})/a*100))}}}function ya(e){e.defaultPrevented||ua(e,Yi()).forEach(t=>{if(t.separator){let n=t.panels.find(e=>e.panelConstraints.defaultSize!==void 0);if(n){let r=n.panelConstraints.defaultSize,i=va({groupId:t.group.id,panelId:n.id});i&&r!==void 0&&(i.resize(r),e.preventDefault())}}})}function ba(e){let t=Yi();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 xa({groupId:e}){let t=()=>{let t=Yi();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=_a({layout:e,panelConstraints:r});return n?o:(ga(o,c)||Zi(i,{defaultLayoutDeferred:n,derivedPanelConstraints:r,groupSize:a,layout:c,separatorToPanels:s}),c)}}}function Sa(e,t){let n=ba(e),r=Ji(n.id,!0),i=n.separators.find(t=>t.element===e);Ni(i,`Matching separator not found`);let a=r.separatorToPanels.get(i);Ni(a,`Matching panels not found`);let o=a.map(e=>n.panels.indexOf(e)),s=xa({groupId:n.id}).getLayout(),c=_a({layout:ha({delta:t,initialLayout:s,panelConstraints:r.derivedPanelConstraints,pivotIndices:o,prevLayout:s,trigger:`keyboard`}),panelConstraints:r.derivedPanelConstraints});ga(s,c)||Zi(n,{defaultLayoutDeferred:r.defaultLayoutDeferred,derivedPanelConstraints:r.derivedPanelConstraints,groupSize:r.groupSize,layout:c,separatorToPanels:r.separatorToPanels})}function Ca(e){if(e.defaultPrevented)return;let t=e.currentTarget,n=ba(t);if(!n.disabled)switch(e.key){case`ArrowDown`:e.preventDefault(),n.orientation===`vertical`&&Sa(t,5);break;case`ArrowLeft`:e.preventDefault(),n.orientation===`horizontal`&&Sa(t,-5);break;case`ArrowRight`:e.preventDefault(),n.orientation===`horizontal`&&Sa(t,5);break;case`ArrowUp`:e.preventDefault(),n.orientation===`vertical`&&Sa(t,-5);break;case`End`:e.preventDefault(),Sa(t,100);break;case`Enter`:{e.preventDefault();let n=ba(t),{derivedPanelConstraints:r,layout:i,separatorToPanels:a}=Ji(n.id,!0),o=n.separators.find(e=>e.element===t);Ni(o,`Matching separator not found`);let s=a.get(o);Ni(s,`Matching panels not found`);let c=s[0],l=r.find(e=>e.panelId===c.id);if(Ni(l,`Panel metadata not found`),l.collapsible){let e=i[c.id];Sa(t,(l.collapsedSize===e?n.mutableState.expandedPanelSizes[c.id]??l.minSize:l.collapsedSize)-e)}break}case`F6`:{e.preventDefault();let n=ba(t).separators.map(e=>e.element),r=Array.from(n).findIndex(t=>t===e.currentTarget);Ni(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(),Sa(t,-100);break}}var wa={cursorFlags:0,state:`inactive`},Ta=new Ui;function Ea(){return wa}function Da(e){return Ta.addListener(`change`,e)}function Oa(e){let t=wa,n={...wa};n.cursorFlags=e,wa=n,Ta.emit(`change`,{prev:t,next:n})}function ka(e){let t=wa;wa=e,Ta.emit(`change`,{prev:t,next:e})}function Aa(e){if(e.defaultPrevented||e.pointerType===`mouse`&&e.button>0)return;let t=Yi(),n=ua(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)}),ka({cursorFlags:0,hitRegions:n,initialLayoutMap:r,pointerDownAtPoint:{x:e.clientX,y:e.clientY},state:`active`}),n.length&&e.preventDefault()}var ja=e=>e,Ma=()=>{},Na=1,Pa=2,Fa=4,Ia=8,La=3,Ra=12,za;function Ba(){return za===void 0&&(za=!1,typeof window<`u`&&(window.navigator.userAgent.includes(`Chrome`)||window.navigator.userAgent.includes(`Firefox`))&&(za=!0)),za}function Va({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&&Ba()){let t=(e&Na)!==0,n=(e&Pa)!==0,r=(e&Fa)!==0,i=(e&Ia)!==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 Ba()?r>0&&i>0?`move`:r>0?`ew-resize`:`ns-resize`:r>0&&i>0?`grab`:r>0?`col-resize`:`row-resize`}}var Ha=new WeakMap;function Ua(e){if(e.defaultView===null||e.defaultView===void 0)return;let{prevStyle:t,styleSheet:n}=Ha.get(e)??{};n===void 0&&(n=new e.defaultView.CSSStyleSheet,e.adoptedStyleSheets&&e.adoptedStyleSheets.push(n));let r=Ea();switch(r.state){case`active`:case`hover`:{let e=Va({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}Ha.set(e,{prevStyle:t,styleSheet:n})}function Wa({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=ha({delta:d,initialLayout:f,panelConstraints:h,pivotIndices:e.panels.map(e=>l.indexOf(e)),prevLayout:_,trigger:`mouse-or-touch`});if(ga(t,_)){if(d!==0&&!u)switch(c){case`horizontal`:s|=d<0?Na:Pa;break;case`vertical`:s|=d<0?Fa:Ia;break}}else Zi(e.group,{defaultLayoutDeferred:m,derivedPanelConstraints:h,groupSize:g,layout:t,separatorToPanels:v})}});let c=0;t.movementX===0?c|=o&La:c|=s&La,t.movementY===0?c|=o&Ra:c|=s&Ra,Oa(c),Ua(e)}function Ga(e){let t=Yi(),n=Ea();switch(n.state){case`active`:Wa({document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedGroups:t,prevCursorFlags:n.cursorFlags})}}function Ka(e){if(e.defaultPrevented)return;let t=Ea(),n=Yi();switch(t.state){case`active`:if(e.buttons===0){ka({cursorFlags:0,state:`inactive`}),t.hitRegions.forEach(e=>{let t=Ji(e.group.id,!0);Zi(e.group,t)});return}Wa({document:e.currentTarget,event:e,hitRegions:t.hitRegions,initialLayoutMap:t.initialLayoutMap,mountedGroups:n,pointerDownAtPoint:t.pointerDownAtPoint,prevCursorFlags:t.cursorFlags});break;default:{let r=ua(e,n);r.length===0?t.state!==`inactive`&&ka({cursorFlags:0,state:`inactive`}):ka({cursorFlags:0,hitRegions:r,state:`hover`}),Ua(e.currentTarget);break}}}function qa(e){if(e.relatedTarget instanceof HTMLIFrameElement)switch(Ea().state){case`hover`:ka({cursorFlags:0,state:`inactive`})}}function Ja(e){if(e.defaultPrevented||e.pointerType===`mouse`&&e.button>0)return;let t=Ea();switch(t.state){case`active`:ka({cursorFlags:0,state:`inactive`}),t.hitRegions.length>0&&(Ua(e.currentTarget),t.hitRegions.forEach(e=>{let t=Ji(e.group.id,!0);Zi(e.group,t)}),e.preventDefault())}}function Ya(e){let t=0,n=0,r={};for(let i of e)if(i.defaultSize!==void 0){t++;let e=Ai(i.defaultSize);n+=e,r[i.panelId]=e}else r[i.panelId]=void 0;let i=e.length-t;if(i!==0){let t=Ai((100-n)/i);for(let n of e)n.defaultSize===void 0&&(r[n.panelId]=t)}return r}function Xa(e,t,n){if(!n[0])return;let r=e.panels.find(e=>e.element===t);if(!r||!r.onResize)return;let i=ji({group:e}),a=e.orientation===`horizontal`?r.element.offsetWidth:r.element.offsetHeight,o=r.mutableValues.prevSize,s={asPercentage:Ai(a/i*100),inPixels:a};r.mutableValues.prevSize=s,r.onResize(s,r.id,o)}function Za(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 Qa({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=Ai(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]=Ai((r[e]??0)/a*l);else{let e=Ai(l/c.length);for(let t of c)u[t]=e}return u}function $a(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 eo=new Map;function Q(e){let t=!0;Ni(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=ji({group:e});if(t===0)return;let n=Ji(e.id);if(!n)return;let r=Mi(e),i=n.defaultLayoutDeferred?Ya(r):n.layout,a=_a({layout:Qa({group:e,nextGroupSize:t,prevGroupSize:n.groupSize,prevLayout:i}),panelConstraints:r});if(!n.defaultLayoutDeferred&&ga(n.layout,a)&&Za(n.derivedPanelConstraints,r)&&n.groupSize===t)return;Zi(e,{defaultLayoutDeferred:!1,derivedPanelConstraints:r,groupSize:t,layout:a,separatorToPanels:n.separatorToPanels})}}else Xa(e,i,n)}});a.observe(e.element),e.panels.forEach(e=>{Ni(!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=ji({group:e}),s=Mi(e),c=e.panels.map(({id:e})=>e).join(`,`),l=e.mutableState.defaultLayout;l&&($a(e.panels,l)||(l=void 0));let u=_a({layout:e.mutableState.layouts[c]??l??Ya(s),panelConstraints:s}),d=e.element.ownerDocument;eo.set(d,(eo.get(d)??0)+1);let f=new Map;return Hi(e).forEach(e=>{e.separator&&f.set(e.separator,e.panels)}),Zi(e,{defaultLayoutDeferred:o===0,derivedPanelConstraints:s,groupSize:o,layout:u,separatorToPanels:f}),e.separators.forEach(e=>{Ni(!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`,Ca)}),eo.get(d)===1&&(d.addEventListener(`dblclick`,ya,!0),d.addEventListener(`pointerdown`,Aa,!0),d.addEventListener(`pointerleave`,Ga),d.addEventListener(`pointermove`,Ka),d.addEventListener(`pointerout`,qa),d.addEventListener(`pointerup`,Ja,!0)),function(){t=!1,eo.set(d,Math.max(0,(eo.get(d)??0)-1)),Ki(e),e.separators.forEach(e=>{e.element.removeEventListener(`keydown`,Ca)}),eo.get(d)||(d.removeEventListener(`dblclick`,ya,!0),d.removeEventListener(`pointerdown`,Aa,!0),d.removeEventListener(`pointerleave`,Ga),d.removeEventListener(`pointermove`,Ka),d.removeEventListener(`pointerout`,qa),d.removeEventListener(`pointerup`,Ja,!0)),a.disconnect()}}function to(){let[e,t]=(0,X.useState)({});return[e,(0,X.useCallback)(()=>t({}),[])]}function no(e){let t=(0,X.useId)();return`${e??t}`}var ro=typeof window<`u`?X.useLayoutEffect:X.useEffect;function io(e){let t=(0,X.useRef)(e);return ro(()=>{t.current=e},[e]),(0,X.useCallback)((...e)=>t.current?.(...e),[t])}function ao(...e){return io(t=>{e.forEach(e=>{if(e)switch(typeof e){case`function`:e(t);break;case`object`:e.current=t;break}})})}function oo(e){let t=(0,X.useRef)({...e});return ro(()=>{for(let n in e)t.current[n]=e[n]},[e]),t.current}var so=(0,X.createContext)(null);function co(e,t){let n=(0,X.useRef)({getLayout:()=>({}),setLayout:ja});(0,X.useImperativeHandle)(t,()=>n.current,[]),ro(()=>{Object.assign(n.current,xa({groupId:e}))})}function lo({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,X.useRef)({onLayoutChange:{},onLayoutChanged:{}}),h=io(e=>{ga(m.current.onLayoutChange,e)||(m.current.onLayoutChange=e,c?.(e))}),g=io(e=>{ga(m.current.onLayoutChanged,e)||(m.current.onLayoutChanged=e,l?.(e))}),_=no(s),v=(0,X.useRef)(null),[y,b]=to(),x=(0,X.useRef)({lastExpandedPanelSizes:{},layouts:{},panels:[],resizeTargetMinimumSize:d,separators:[]}),S=ao(v,a);co(_,o);let C=io((e,t)=>{let r=Ea(),i=qi(e),a=Ji(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=oo({defaultLayout:n,disableCursor:r}),T=(0,X.useMemo)(()=>({get disableCursor(){return!!w.disableCursor},getPanelStyles:C,id:_,orientation:u,registerPanel:e=>{let t=x.current;return t.panels=Pi(u,[...t.panels,e]),b(),()=>{t.panels=t.panels.filter(t=>t!==e),b()}},registerSeparator:e=>{let t=x.current;return t.separators=Pi(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=qi(_),i=Ji(_);r&&i&&Zi(r,{...i,derivedPanelConstraints:Mi(r)})},toggleSeparatorDisabled:(e,t)=>{let n=x.current.separators.find(t=>t.id===e);n&&(n.disabled=t)}}),[C,_,b,u,w]),E=(0,X.useRef)(null);return ro(()=>{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=Q(r),{defaultLayoutDeferred:o,derivedPanelConstraints:s,layout:c}=Ji(r.id,!0);!o&&s.length>0&&(h(c),g(c));let l=Xi(_,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=fa(t.collapsedSize,i[t.panelId]),a=fa(t.collapsedSize,n[t.panelId]);e&&!a&&(r.mutableState.expandedPanelSizes[t.panelId]=n[t.panelId])}}});let o=Ea().state!==`active`;h(i),o&&g(i)});return()=>{E.current=null,a(),l()}},[i,_,g,h,u,y,w]),(0,X.useEffect)(()=>{let e=E.current;e&&(e.mutableState.defaultLayout=n,e.mutableState.disableCursor=!!r)}),(0,Z.jsx)(so.Provider,{value:T,children:(0,Z.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})})}lo.displayName=`Group`;function uo(){let e=(0,X.useContext)(so);return Ni(e,`Group Context not found; did you render a Panel or Separator outside of a Group?`),e}function fo(e,t){let{id:n}=uo(),r=(0,X.useRef)({collapse:Ma,expand:Ma,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:Ma});(0,X.useImperativeHandle)(t,()=>r.current,[]),ro(()=>{Object.assign(r.current,va({groupId:n,panelId:e}))})}function po({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=no(c),_=oo({disabled:a}),v=(0,X.useRef)(null),y=ao(v,o),{getPanelStyles:b,id:x,orientation:S,registerPanel:C,togglePanelDisabled:w}=uo(),T=d!==null,E=io((e,t,n)=>{d?.(e,c,n)});ro(()=>{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,X.useEffect)(()=>{w(g,!!a)},[a,g,w]),fo(g,f);let D=(0,X.useSyncExternalStore)(e=>Xi(x,e),()=>JSON.stringify(b(x,g)),()=>JSON.stringify(b(x,g)));return(0,Z.jsx)(`div`,{...m,"aria-disabled":a||void 0,"data-panel":!0,"data-testid":g,id:g,ref:y,style:{...mo,display:`flex`,flexBasis:0,flexShrink:1,overflow:`visible`,...JSON.parse(D)},children:(0,Z.jsx)(`div`,{className:t,style:{maxHeight:`100%`,maxWidth:`100%`,flexGrow:1,overflow:`auto`,...p,touchAction:S===`horizontal`?`pan-y`:`pan-x`},children:e})})}po.displayName=`Panel`;var mo={minHeight:0,maxHeight:`100%`,height:`auto`,minWidth:0,maxWidth:`100%`,width:`auto`,border:`none`,borderWidth:0,padding:0,margin:0};function ho({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=_a({layout:ha({delta:l-o,initialLayout:e,panelConstraints:t,pivotIndices:u,prevLayout:e}),panelConstraints:t})[n],i=_a({layout:ha({delta:c-o,initialLayout:e,panelConstraints:t,pivotIndices:u,prevLayout:e}),panelConstraints:t})[n]}return{valueControls:n,valueMax:i,valueMin:a,valueNow:o}}function go({children:e,className:t,disabled:n,elementRef:r,id:i,style:a,...o}){let s=no(i),c=oo({disabled:n}),[l,u]=(0,X.useState)({}),[d,f]=(0,X.useState)(`inactive`),p=(0,X.useRef)(null),m=ao(p,r),{disableCursor:h,id:g,orientation:_,registerSeparator:v,toggleSeparatorDisabled:y}=uo(),b=_===`horizontal`?`vertical`:`horizontal`;ro(()=>{let e=p.current;if(e!==null){let t={disabled:c.disabled,element:e,id:s},n=v(t),r=Da(e=>{f(e.next.state!==`inactive`&&e.next.hitRegions.some(e=>e.separator===t)?e.next.state:`inactive`)}),i=Xi(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(ho({layout:r,panelConstraints:n,panelId:e.id,panelIndex:t}))}});return()=>{r(),i(),n()}}},[g,s,v,c]),(0,X.useEffect)(()=>{y(s,!!n)},[n,s,y]);let x;return n&&!h&&(x=`not-allowed`),(0,Z.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})}go.displayName=`Separator`;function _o(e){let[t,n]=(0,X.useState)(()=>typeof window<`u`?window.matchMedia(e).matches:!1);return(0,X.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 vo(e){try{let t=new Date(e),n=new Date().getTime()-t.getTime(),r=Math.floor(n/6e4);if(r<1)return`just now`;if(r<60)return`${r}m ago`;let i=Math.floor(r/60);if(i<24)return`${i}h ago`;let a=Math.floor(i/24);return a<7?`${a}d ago`:t.toLocaleDateString(void 0,{month:`short`,day:`numeric`})}catch{return``}}function yo(e,t){let[n,r]=(0,X.useState)(e);return(0,X.useEffect)(()=>{let n=setTimeout(()=>r(e),t);return()=>clearTimeout(n)},[e,t]),n}function bo(e){let[t,n]=(0,X.useState)([]),[r,i]=(0,X.useState)({}),a=(0,X.useCallback)(async()=>{if(e)try{let t=await V.get(`${B(e)}/tags`);n(t.tags),i(t.counts)}catch{}},[e]);return(0,X.useEffect)(()=>{a()},[a]),{projectTags:t,tagCounts:r,loadTags:a}}function xo({projectTags:e,tagCounts:t,totalCount:n,selectedTagId:r,onSelect:i}){return e.length===0?null:(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1.5 overflow-x-auto scrollbar-none`,children:[(0,Z.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,Z.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,Z.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:e.color}}),e.name,` (`,t[e.id]??0,`)`]},e.id))]})}var So={approval_request:`bg-error`,question:`bg-warning`,done:`bg-primary`},Co={done:0,question:1,approval_request:2};function wo(e){return e&&So[e]||`bg-error`}var To={approval_request:`bg-error/10`,question:`bg-warning/10`,done:`bg-primary/10`};function Eo(e){return e&&To[e]||`bg-error/10`}var Do=Ye()(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}}),V.post(`/api/project/${encodeURIComponent(n)}/chat/sessions/${encodeURIComponent(t)}/unread`,{projectName:n}).catch(()=>{})},clearForSession:t=>{let n=Do.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&&V.post(`/api/project/${encodeURIComponent(n)}/chat/sessions/${encodeURIComponent(t)}/read`).catch(()=>{})},clearAll:()=>{let t=[...Do.getState().notifications];t.length!==0&&(e({notifications:new Map}),V.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 V.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 Oo(e){return e.notifications.size}function ko(e){return t=>{if(!e)return 0;let n=0;for(let[,r]of t.notifications)r.projectName===e&&n++;return n}}function Ao(e){return t=>{let n=null,r=-1;for(let[,i]of t.notifications){if(i.projectName!==e)continue;let t=Co[i.type]??0;t>r&&(r=t,n=i.type)}return n}}function jo({session:e,projectName:t,projectTags:n,children:r,onTogglePin:i,onStartEditing:a,onDeleteSession:o,onTagChanged:s}){let c=Do(e=>e.markUnread),l=Do(t=>t.notifications.has(e.id)),u=(0,X.useCallback)(async r=>{try{if(r){await V.patch(`${B(t)}/chat/sessions/${e.id}/tag`,{tagId:r});let i=n.find(e=>e.id===r);i&&s(e.id,{id:i.id,name:i.name,color:i.color})}else await V.del(`${B(t)}/chat/sessions/${e.id}/tag`),s(e.id,null)}catch{}},[e.id,t,n,s]);return(0,Z.jsxs)(be,{children:[(0,Z.jsx)(xe,{asChild:!0,children:r}),(0,Z.jsxs)(ge,{children:[(0,Z.jsxs)(ve,{onClick:t=>i(t,e),children:[e.pinned?(0,Z.jsx)(Vr,{className:`size-3.5 mr-2`}):(0,Z.jsx)(Hr,{className:`size-3.5 mr-2`}),e.pinned?`Unpin`:`Pin`]}),!l&&(0,Z.jsxs)(ve,{onClick:()=>c(e.id,t,e.title),children:[(0,Z.jsx)(Ee,{className:`size-3.5 mr-2 fill-primary text-primary`}),`Mark as unread`]}),a&&(0,Z.jsxs)(ve,{onClick:t=>a(e,t),children:[(0,Z.jsx)(L,{className:`size-3.5 mr-2`}),`Rename`]}),n.length>0&&(0,Z.jsxs)(ye,{children:[(0,Z.jsxs)(he,{children:[(0,Z.jsx)(si,{className:`size-3.5 mr-2`}),`Set Tag`]}),(0,Z.jsxs)(pe,{children:[n.map(t=>(0,Z.jsxs)(ve,{onClick:()=>u(t.id),children:[(0,Z.jsx)(`span`,{className:`size-2.5 rounded-full mr-2 shrink-0`,style:{backgroundColor:t.color}}),t.name,e.tag?.id===t.id&&(0,Z.jsx)(me,{className:`size-3 ml-auto`})]},t.id)),e.tag&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(_e,{}),(0,Z.jsx)(ve,{onClick:()=>u(null),children:`Remove tag`})]})]})]}),o&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(_e,{}),(0,Z.jsxs)(ve,{className:`text-error focus:text-error`,onClick:t=>o(t,e),children:[(0,Z.jsx)(Ue,{className:`size-3.5 mr-2`}),`Delete`]})]})]})]})}var Mo=5,No=20;function Po({projectName:e,onSelectSession:t,className:n}){let[r,i]=(0,X.useState)([]),[a,o]=(0,X.useState)(!1),[s,c]=(0,X.useState)(!1),[l,u]=(0,X.useState)(``),d=yo(l,300),[f,p]=(0,X.useState)(null),{projectTags:m,tagCounts:h,loadTags:g}=bo(e),_=(0,X.useCallback)(async t=>{if(e){o(!0);try{let n=new URLSearchParams({limit:String(No)});t&&n.set(`q`,t),i((await V.get(`${B(e)}/chat/sessions?${n}`)).sessions.slice(0,No))}catch{}finally{o(!1)}}},[e]);(0,X.useEffect)(()=>{_()},[_]),(0,X.useEffect)(()=>{_(d||void 0)},[d]);let v=(0,X.useCallback)(async(t,n)=>{if(t.stopPropagation(),!e)return;let r=`${B(e)}/chat/sessions/${n.id}/pin`;try{n.pinned?await V.del(r):await V.put(r),i(e=>e.map(e=>e.id===n.id?{...e,pinned:!e.pinned}:e).sort((e,t)=>e.pinned&&!t.pinned?-1:!e.pinned&&t.pinned?1:new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()))}catch{}},[e]),y=(0,X.useCallback)((e,t)=>{i(n=>n.map(n=>n.id===e?{...n,tag:t}:n)),g()},[g]),b=f===null?r:r.filter(e=>e.tag?.id===f),x=b.filter(e=>e.pinned),S=b.filter(e=>!e.pinned),C=s?S:S.slice(0,Mo),w=S.length>Mo;return a||!e||r.length===0?null:(0,Z.jsxs)(`div`,{className:n,children:[(0,Z.jsxs)(`div`,{className:`relative`,children:[(0,Z.jsx)(Yr,{className:`absolute left-2.5 top-1/2 -translate-y-1/2 size-3.5 text-text-subtle pointer-events-none`}),(0,Z.jsx)(`input`,{type:`text`,value:l,onChange:e=>u(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`}),l&&(0,Z.jsx)(`button`,{onClick:()=>u(``),className:`absolute right-2 top-1/2 -translate-y-1/2 text-text-subtle hover:text-text-primary`,children:(0,Z.jsx)(Ge,{className:`size-3.5`})})]}),(0,Z.jsx)(`div`,{className:`mt-3`,children:(0,Z.jsx)(xo,{projectTags:m,tagCounts:h,totalCount:r.length,selectedTagId:f,onSelect:p})}),x.length>0&&(0,Z.jsxs)(`div`,{className:`flex flex-col gap-2 w-full mt-4`,children:[(0,Z.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Pinned`}),(0,Z.jsx)(`div`,{className:`w-full rounded-md border border-border bg-surface overflow-hidden`,children:x.map(n=>(0,Z.jsx)(Fo,{session:n,projectName:e,projectTags:m,onSelect:t,onTogglePin:v,onTagChanged:y},n.id))})]}),C.length>0&&(0,Z.jsxs)(`div`,{className:`flex flex-col gap-2 w-full mt-4`,children:[(0,Z.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Recent chats`}),(0,Z.jsx)(`div`,{className:`w-full rounded-md border border-border bg-surface overflow-hidden`,children:C.map(n=>(0,Z.jsx)(Fo,{session:n,projectName:e,projectTags:m,onSelect:t,onTogglePin:v,onTagChanged:y},n.id))}),w&&(0,Z.jsxs)(`button`,{onClick:()=>c(!s),className:`flex items-center justify-center gap-1 text-[11px] text-text-subtle hover:text-text-primary transition-colors py-1`,children:[s?(0,Z.jsx)(we,{className:`size-3`}):(0,Z.jsx)(Se,{className:`size-3`}),s?`Show less`:`Show more (${S.length-Mo})`]})]})]})}function Fo({session:e,projectName:t,projectTags:n,onSelect:r,onTogglePin:i,onTagChanged:a}){let o=Do(t=>t.notifications.get(e.id));return(0,Z.jsx)(jo,{session:e,projectName:t,projectTags:n,onTogglePin:i,onTagChanged:a,children:(0,Z.jsxs)(`button`,{onClick:()=>r(e),className:G(`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&&Eo(o.type)),children:[(0,Z.jsx)(Ar,{className:`size-3.5 shrink-0 text-text-subtle`}),e.tag&&(0,Z.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:e.tag.color},title:e.tag.name}),(0,Z.jsx)(`span`,{className:G(`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,Z.jsx)(`span`,{className:`text-[10px] text-text-subtle shrink-0`,children:vo(e.updatedAt)}),(0,Z.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,Z.jsx)(Vr,{className:`size-3`}):(0,Z.jsx)(Hr,{className:`size-3`})})]})})}function Io(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 Lo=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return Lo(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return Lo(t)(e)}}}},Ro=(e,t)=>(n,r,i)=>{let a={storage:Io(()=>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 Lo(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},zo=5e5,Bo=Ye()(Ro(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>zo){let{dirtyContent:e,...n}=t;return{selection:n}}return{selection:t}}})),Vo=null;q.subscribe(e=>{let t=e.activeProject?.name??null;Vo!==null&&Vo!==t&&Bo.getState().clearSelection(),Vo=t});async function Ho(e,t,n){let r=`${Ze(e.path)} ↔ ${Ze(t.path)}`,i=e.dirtyContent!==void 0,a=t.dirtyContent!==void 0,o;if(i||a){let[r,i]=await Promise.all([Uo(e,n),Uo(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 J.getState().openTab({type:`git-diff`,title:r,projectId:n,metadata:o,closable:!0})}async function Uo(e,t){if(e.dirtyContent!==void 0)return e.dirtyContent;try{let{content:n}=await V.get(`${B(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 Wo=`application/ppm-tab`,Go=!1,Ko=new Set;function qo(e){Go!==e&&(Go=e,Ko.forEach(e=>e()))}function Jo(){return(0,X.useSyncExternalStore)(e=>(Ko.add(e),()=>Ko.delete(e)),()=>Go)}function Yo(){qo(!1)}function Xo(e){let[t,n]=(0,X.useState)(null),r=(0,X.useRef)(null);return{dropIndex:t,handleDragStart:(0,X.useCallback)((t,n)=>{let r={tabId:n,panelId:e};t.dataTransfer.setData(Wo,JSON.stringify(r)),t.dataTransfer.effectAllowed=`move`,requestAnimationFrame(()=>qo(!0))},[e]),handleDragOver:(0,X.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,X.useCallback)(e=>{e.dataTransfer.types.includes(`application/ppm-tab`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`move`)},[]),handleDrop:(0,X.useCallback)(i=>{i.preventDefault(),qo(!1);let a=i.dataTransfer.getData(Wo);if(a){try{let n=JSON.parse(a),r=K.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,X.useCallback)(()=>{qo(!1),n(null),r.current=null},[])}}var Zo=null,Qo=null,$o=0,es=new Set;function ts(){es.forEach(e=>e())}function ns(){return(0,X.useSyncExternalStore)(e=>(es.add(e),()=>es.delete(e)),()=>Qo)}function rs(){return Date.now()-$o<300}var is=null;function as(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),is=r}function os(e,t){is&&(is.style.left=`${e}px`,is.style.top=`${t}px`)}function ss(){is?.remove(),is=null}function cs(e,t){is&&(is.style.display=`none`);let n=document.elementFromPoint(e,t);is&&(is.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}=K.getState(),u=window.innerWidth<768,d=et(l,i),f=d?!u&&(l[d.row]?.length??0)<at(!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 ls(e){if(!Zo)return;e.preventDefault();let t=e.touches[0];if(!t)return;os(t.clientX,t.clientY);let n=cs(t.clientX,t.clientY);(n?.panelId!==Qo?.panelId||n?.zone!==Qo?.zone)&&(Qo=n,ts())}function us(){Zo=null,Qo=null,ts(),ss(),Yo(),document.removeEventListener(`touchmove`,ls),document.removeEventListener(`touchend`,ds),document.removeEventListener(`touchcancel`,fs)}function ds(){let e=Zo,t=Qo;if(us(),$o=Date.now(),!e||!t)return;let n=K.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 fs(){us(),$o=Date.now()}function ps(e,t,n,r){Zo=e,qo(!0),as(t,n,r),document.addEventListener(`touchmove`,ls,{passive:!1}),document.addEventListener(`touchend`,ds),document.addEventListener(`touchcancel`,fs)}var ms=200,hs=10;function gs(e){let t=(0,X.useRef)(null),n=(0,X.useRef)(null),r=(0,X.useRef)(!1);return{handleTouchStart:(0,X.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,ps({tabId:a,panelId:e},o,n.current.x,n.current.y)},ms))},[e]),handleTouchMove:(0,X.useCallback)(e=>{if(r.current||!n.current||!t.current)return;let i=e.touches[0];i&&(Math.abs(i.clientX-n.current.x)>hs||Math.abs(i.clientY-n.current.y)>hs)&&(clearTimeout(t.current),t.current=null)},[]),handleTouchEnd:(0,X.useCallback)(()=>{t.current&&=(clearTimeout(t.current),null)},[])}}function _s(e){window.dispatchEvent(new CustomEvent(`open-command-palette`,{detail:e}))}function vs(){let[e,t]=(0,X.useState)(!1),[n,r]=(0,X.useState)(``);return(0,X.useEffect)(()=>{let e=0,n=!1,{matchesEvent:i}=kt.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}=kt.getState();e(i,`save-prevent`)&&i.preventDefault(),e(i,`toggle-dock`)&&(i.preventDefault(),K.getState().toggleDock()),l(i,e);return}let{matchesEvent:c}=kt.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(),W.getState().toggleSidebar();return}if(c(i,`toggle-dock`)){i.preventDefault(),K.getState().toggleDock();return}if(c(i,`next-tab`)||c(i,`prev-tab`)){i.preventDefault();let{tabs:e,activeTabId:t,setActiveTab:n}=J.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(),J.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=q.getState().activeProject;J.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();let e=W.getState();e.sidebarCollapsed&&e.toggleSidebar(),e.setSidebarActiveTab(`settings`);return}if(c(i,`open-git-status`)){i.preventDefault();let e=W.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}=J.getState(),n=t.find(t=>t.id===e),r=n?.metadata;n?.type===`editor`&&r?.filePath&&r?.projectName&&Bo.getState().setSelection({filePath:r.filePath,projectName:r.projectName,dirtyContent:r.unsavedContent,label:Ze(r.filePath)}),window.dispatchEvent(new CustomEvent(`open-compare-picker`));return}if(c(i,`open-search`)){i.preventDefault();let e=W.getState();e.sidebarCollapsed&&e.toggleSidebar(),e.setSidebarActiveTab(`search`);return}for(let e=1;e<=9;e++)if(c(i,`switch-project-${e}`)){i.preventDefault();let t=q.getState().projects[e-1];t&&(q.getState().setActiveProject(t),J.getState().switchProject(t.name));return}let u=jt.getState().contributions?.keybindings;if(u){let e=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.userAgent),{getBinding:t}=kt.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=Ot(r),a.set(r,o)),At(i,o)){i.preventDefault();let e=q.getState().activeProject,t=[];e?.path&&t.push(e.path),window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:n.command,args:t}}));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,X.useCallback)(()=>{t(!1),r(``)},[])}}var ys=Ye(e=>({sessions:new Map,setStreaming:(t,n,r)=>e(e=>{let i=new Map(e.sessions);return n?i.set(t,r??i.get(t)??``):i.delete(t),{sessions:i}}),replaceProjectStreaming:(t,n)=>e(e=>{let r=new Set(n),i=new Map(e.sessions);for(let[n,a]of e.sessions)a===t&&!r.has(n)&&i.delete(n);for(let e of n)i.set(e,t);return{sessions:i}})})),bs=e=>e.sessions.size>0;function xs(e){let[t,n]=(0,X.useState)(!1),[r,i]=(0,X.useState)(!1),a=(0,X.useCallback)(()=>{let t=e.current;t&&(n(t.scrollLeft>1),i(t.scrollLeft+t.clientWidth<t.scrollWidth-1))},[e]);return(0,X.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,X.useCallback)(()=>{e.current?.scrollBy({left:-150,behavior:`smooth`})},[e]),scrollRight:(0,X.useCallback)(()=>{e.current?.scrollBy({left:150,behavior:`smooth`})},[e])}}var Ss={done:0,question:1,approval_request:2};function Cs(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,_=Ss[f.type]??0;g<=i&&_>s&&(s=_,o=f.type),h>=a&&_>l&&(l=_,c=f.type)}return{left:o,right:c}}var ws={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 Ts(e,t,n){let r=ws[e];return G(r.base,n?`border-t-transparent`:t?r.active:r.inactive)}function Es(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 G(ws[e].row,t?`flex-wrap min-h-[41px]`+n:`h-[41px]`)}function Ds(e){return ws[e].add}function Os(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 ks(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 As(e,t){let n=ks(e),r=ks(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 js(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 Ms(e){let t=Os(e);return t?js(t.r,t.g,t.b)<.4:!1}function Ns({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,tabRef:h,onRename:g,onContextAction:_,tagColor:v,extraMenuContent:y}){let[b,x]=(0,X.useState)(!1),[S,C]=(0,X.useState)(e.title),w=(0,X.useRef)(null),T=W(e=>e.editorTabStyle);(0,X.useEffect)(()=>{b&&(C(e.title),setTimeout(()=>w.current?.select(),0))},[b]);let E=()=>{x(!1);let t=S.trim();t&&t!==e.title&&g&&g(t)},D=e.metadata?.connectionColor,O=D?{backgroundColor:t?D:`${D}33`,color:t&&Ms(D)?`#fff`:void 0}:void 0,k=e.type===`editor`,A=(0,Z.jsxs)(`button`,{ref:h,"data-tab-item":!0,"data-tab-id":e.id,draggable:!b,onClick:s,onAuxClick:t=>{t.button===1&&e.closable&&(t.preventDefault(),c())},onDragStart:l,onDragOver:u,onDragEnd:d,onTouchStart:f,onTouchMove:p,onTouchEnd:m,style:O,className:Ts(T,t,!!O),children:[(0,Z.jsxs)(`span`,{className:G(`relative`,o&&`text-warning`),children:[(0,Z.jsx)(n,{className:`size-4`}),o?(0,Z.jsxs)(`span`,{"aria-hidden":!0,className:`absolute inset-0 flex items-center justify-center gap-[1.5px]`,children:[(0,Z.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`}),(0,Z.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`,style:{animationDelay:`0.15s`}}),(0,Z.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`,style:{animationDelay:`0.3s`}})]}):i&&(!t||a)?(0,Z.jsx)(`span`,{className:G(`absolute -top-1 -right-1 size-2 rounded-full`,wo(i))}):null]}),b?(0,Z.jsx)(`input`,{ref:w,value:S,onChange:e=>C(e.target.value),onBlur:E,onKeyDown:e=>{e.key===`Enter`&&E(),e.key===`Escape`&&x(!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,Z.jsx)(`span`,{className:`max-w-[120px] truncate`,title:e.title,onDoubleClick:e=>{g&&(e.stopPropagation(),x(!0))},children:e.title}),e.closable&&!b&&(0,Z.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,Z.jsx)(Ge,{className:`size-3`})})]});return(0,Z.jsxs)(`div`,{className:`relative flex items-center`,children:[r&&(0,Z.jsx)(`div`,{className:`absolute left-0 top-1 bottom-1 w-0.5 bg-primary rounded-full z-10`}),v&&(0,Z.jsx)(`span`,{"aria-hidden":!0,className:`absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full pointer-events-none`,style:{backgroundColor:v}}),_?(0,Z.jsxs)(be,{children:[(0,Z.jsx)(xe,{asChild:!0,children:A}),(0,Z.jsxs)(ge,{children:[k&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(ve,{onClick:()=>_(`copy-path`),children:`Copy Path`}),(0,Z.jsx)(ve,{onClick:()=>_(`copy-full-path`),children:`Copy Full Path`}),(0,Z.jsxs)(ve,{onClick:()=>_(`download`),children:[(0,Z.jsx)(Me,{className:`size-3.5 mr-2`}),`Download`]}),(0,Z.jsx)(_e,{}),(0,Z.jsx)(ve,{onClick:()=>_(`rename`),children:`Rename`}),(0,Z.jsx)(ve,{variant:`destructive`,onClick:()=>_(`delete`),children:`Delete`}),(0,Z.jsx)(_e,{})]}),y,e.closable&&(0,Z.jsx)(ve,{onClick:()=>_(`close`),children:`Close`}),(0,Z.jsx)(ve,{onClick:()=>_(`close-others`),children:`Close Others`}),(0,Z.jsx)(ve,{onClick:()=>_(`close-right`),children:`Close to the Right`})]})]}):A]})}var Ps=[`.xterm-helper-textarea`,`.native-edit-context`,`textarea`,`[contenteditable]`,`button, [href], input, select, [tabindex]:not([tabindex="-1"])`];function Fs(e){return typeof e.checkVisibility==`function`?e.checkVisibility():e.offsetParent!==null&&e.offsetParent!==void 0}function Is(e){for(let t of Ps)for(let n of e(t))if(Fs(n))return n;return null}function Ls(e){Is(t=>e.querySelectorAll(t))?.focus()}function Rs(){return typeof window<`u`&&`documentPictureInPicture`in window}function zs(){return Rs()?window.documentPictureInPicture??null:null}var Bs={width:1920,height:1080};function Vs(e,t,n){return Number.isFinite(e)?Math.round(Math.min(Math.max(e,t),Math.max(t,n))):t}function Hs(){if(typeof window>`u`||!window.screen)return Bs;let{availWidth:e,availHeight:t}=window.screen;return{width:Number.isFinite(e)&&e>0?e:Bs.width,height:Number.isFinite(t)&&t>0?t:Bs.height}}function Us(e,t=Hs()){return{width:Vs(e.width,320,t.width),height:Vs(e.height,240,t.height)}}var Ws=`style, link[rel="stylesheet"]`,Gs=`html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden}
11
+ body>*{position:relative;width:100%;height:100%}`;function Ks(e){return Array.from(e.querySelectorAll(Ws))}function qs(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 Js(e,t){try{t.adoptedStyleSheets=[...e.adoptedStyleSheets]}catch{}for(let n of Ks(e))qs(n,t);let n=t.createElement(`style`);n.textContent=Gs,t.head.append(n)}function Ys(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 Xs(e,t){Ys(e,t);let n=e.defaultView;if(!n)return()=>{};let r=()=>Ys(e,t);return n.addEventListener(Pt,r),()=>n.removeEventListener(Pt,r)}function Zs(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(Ws)&&t.head.append(e.cloneNode(!0))});return n.observe(e.head,{childList:!0}),()=>n.disconnect()}var Qs=[`input`,`textarea`,`select`,`[contenteditable]`,`.native-edit-context`,`.monaco-editor`,`.xterm-helper-textarea`].join(`, `);function $s(e){let t=e;return!t||typeof t.closest!=`function`?!1:t.closest(Qs)!==null}function ec(e,t){let n=e=>{let n=e;$s(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 tc=`ppm:host-resize`;function nc(e){if(e)for(let t of e.querySelectorAll(`[data-tab-pool-id]`))t.dispatchEvent(new CustomEvent(tc,{bubbles:!1}))}function rc(e,t){let n=e?.closest(`[data-tab-pool-id]`);return n?(n.addEventListener(tc,t),()=>n.removeEventListener(tc,t)):()=>{}}var ic=null;function ac(){return ic}function oc(e,t,n,r){let i=[],a=!1,o=()=>{if(!a){a=!0,ic===s&&(ic=null);for(let e of i)try{e()}catch{}t.isConnected&&(t.append(e),nc(e));try{n.close()}catch{}r.onDetach()}},s={detach:o,pipWindow:n};try{let t=n.document;Js(document,t),i.push(Xs(document,t)),i.push(Zs(document,t)),t.body.append(e),nc(e);let r=()=>nc(e);n.addEventListener(`resize`,r),i.push(()=>n.removeEventListener(`resize`,r)),n.addEventListener(`pagehide`,o),i.push(()=>n.removeEventListener(`pagehide`,o)),i.push(ec(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 sc(e,t){let n=zs();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`);ic?.detach();let i;try{i=await n.requestWindow(Us({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=oc(e,r,i,t);return ic=a,a}function cc(e){Ut(e),gt.getState().close(e)}async function lc(e,t){let n=K.getState().popOutTab(e,t);if(!n)return`window-cap`;Vt(n);let r=await It(n);if(!r)return cc(n),`cancelled`;let i=gt.getState().windows[n]?.rect,a;try{a=await sc(r,{width:i?.w??0,height:i?i.h-36:0,onDetach:()=>{Ft(n,null),cc(n)}})}catch(e){throw cc(n),e}return a?(Ft(n,a),Ls(a.pipWindow.document),`opened`):`cancelled`}function uc({tab:e,panelId:t}){return Gt()||e.type===`system-monitor`?null:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(ve,{onClick:()=>{K.getState().popOutTab(e.id,t)||H.error(`Too many windows open — close one first`)},children:[(0,Z.jsx)(Fe,{className:`size-3.5 mr-2`}),`Open in window`]}),Rs()&&(0,Z.jsxs)(ve,{onClick:()=>{lc(e.id,t).then(e=>{e===`window-cap`&&H.error(`Too many windows open — close one first`)}).catch(()=>{H.error(`Could not open the picture-in-picture window`)})},children:[(0,Z.jsx)(Br,{className:`size-3.5 mr-2`}),`Open in picture-in-picture`]}),(0,Z.jsx)(_e,{})]})}async function dc(e,t){if(/^(\/|[A-Za-z]:[/\\])/.test(t)){let{token:e}=await V.post(`/api/fs/download/token`,{path:t});pc(`/api/fs/raw?path=${encodeURIComponent(t)}&download=true&dl_token=${encodeURIComponent(e)}`,Ze(t));return}let{token:n}=await V.post(`${B(e)}/files/download/token`);pc(`${B(e)}/files/raw?path=${encodeURIComponent(t)}&download=true&dl_token=${encodeURIComponent(n)}`,Ze(t))}async function fc(e,t){let{token:n}=await V.post(`${B(e)}/files/download/token`),r=Ze(t)||`folder`;pc(`${B(e)}/files/download/zip?path=${encodeURIComponent(t)}&dl_token=${encodeURIComponent(n)}`,`${r}.zip`)}function pc(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)}function mc({node:e,projectName:t,onClose:n,onRefresh:r}){let[i,a]=(0,X.useState)(!1),[o,s]=(0,X.useState)(null);async function c(){a(!0),s(null);try{await V.del(`${B(t)}/files/delete`,{path:e.path}),r(),n()}catch(e){s(e instanceof Error?e.message:`Failed to delete`)}finally{a(!1)}}return(0,Z.jsx)(nn,{open:!0,onOpenChange:e=>!e&&n(),children:(0,Z.jsxs)(Qt,{children:[(0,Z.jsxs)(Xt,{children:[(0,Z.jsxs)($t,{children:[`Delete `,e.type===`directory`?`Folder`:`File`]}),(0,Z.jsxs)(en,{children:[`Are you sure you want to delete`,` `,(0,Z.jsx)(`span`,{className:`font-mono font-semibold`,children:e.name}),`?`,e.type===`directory`&&` This will delete all contents.`]})]}),o&&(0,Z.jsx)(`p`,{className:`text-sm text-error`,children:o}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(Y,{variant:`outline`,onClick:n,disabled:i,children:`Cancel`}),(0,Z.jsx)(Y,{variant:`destructive`,onClick:c,disabled:i,children:i?`Deleting...`:`Delete`})]})]})})}var hc={terminal:li,chat:Ar,editor:Yn,database:je,sqlite:je,postgres:je,"git-diff":Xn,settings:Qr,extension:F,"extension-webview":F,"conflict-editor":Xn,"system-monitor":Qr,"git-log":ur,"ai-resource":ke,group:fi},gc=(0,X.memo)(function({panelId:e}){let t=q(e=>e.activeProject),n=(0,X.useRef)(new Map),r=(0,X.useRef)(null),i=(0,X.useRef)(0),a=K(t=>e?t.panels[e]:t.panels[t.focusedPanelId]),o=t?.name??null,s=lt(a?.tabs??[],o),c=a?.activeTabId??null,l=a?.id??K.getState().focusedPanelId,{dropIndex:u,handleDragStart:d,handleDragOver:f,handleDragOverBar:p,handleDrop:m,handleDragEnd:h}=Xo(l),{handleTouchStart:g,handleTouchMove:_,handleTouchEnd:v}=gs(l),{projectTags:y,loadTags:b}=bo(t?.name),[x,S]=(0,X.useState)({}),C=s.filter(e=>e.type===`chat`&&e.metadata?.sessionId).map(e=>e.metadata.sessionId);(0,X.useEffect)(()=>{!t?.name||C.length===0||V.get(`${B(t.name)}/chat/sessions?limit=50`).then(e=>{let t={};for(let n of e.sessions)n.tag&&(t[n.id]=n.tag);S(t)}).catch(()=>{})},[t?.name,C.join(`,`)]);let w=(0,X.useCallback)(async(e,n)=>{if(t?.name)try{if(n!==null){await V.patch(`${B(t.name)}/chat/sessions/${e}/tag`,{tagId:n});let r=y.find(e=>e.id===n);r&&S(t=>({...t,[e]:{id:r.id,name:r.name,color:r.color}}))}else await V.del(`${B(t.name)}/chat/sessions/${e}/tag`),S(t=>{let n={...t};return delete n[e],n});b()}catch{}},[t?.name,y,b]),T=Do(e=>e.notifications),E=ys(e=>e.sessions),D=W(e=>e.tabWrap),O=W(e=>e.toggleTabWrap),k=W(e=>e.editorTabStyle),{canScrollLeft:A,canScrollRight:j,scrollLeft:M,scrollRight:ee}=xs(r),N=Cs(r.current,n.current,s,T);(0,X.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,X.useCallback)((e,t)=>{J.getState().updateTab(e.id,{title:t});let n=e.metadata?.projectName,r=e.metadata?.sessionId;n&&r&&V.patch(`${B(n)}/chat/sessions/${r}`,{title:t}).catch(()=>{})},[]),I=Bo(e=>e.selection),[te,ne]=(0,X.useState)(null);function re(e){if(e.type!==`editor`)return null;let t=e.metadata?.filePath,n=e.metadata?.projectName;if(!t||!n)return null;let r=I!=null&&I.projectName===n&&I.filePath!==t;return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(ve,{onClick:()=>{let r=e.metadata?.unsavedContent;Bo.getState().setSelection({filePath:t,projectName:n,dirtyContent:r,label:Ze(t)})},children:[(0,Z.jsx)(Oe,{className:`size-3.5 mr-2`}),`Select for Compare`]}),r&&(0,Z.jsxs)(ve,{onClick:async()=>{let r=Bo.getState().selection;if(!r)return;let i=e.metadata?.unsavedContent;try{await Ho({path:r.filePath,dirtyContent:r.dirtyContent},{path:t,dirtyContent:i},n),Bo.getState().clearSelection()}catch(e){let t=e instanceof Error?e.message:`Compare failed`;H.error(t)}},children:[(0,Z.jsx)(Oe,{className:`size-3.5 mr-2`}),`Compare with Selected (`,I.label,`)`]}),(0,Z.jsx)(_e,{})]})}function ie(e){if(e.type!==`terminal`)return null;let t=l===st;return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(ve,{onClick:()=>L(e,t?`move-to-editor`:`move-to-dock`),children:t?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(fr,{className:`size-3.5 mr-2`}),`Move to Editor`]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Ir,{className:`size-3.5 mr-2`}),`Move to Dock`]})}),(0,Z.jsx)(_e,{})]})}let L=(0,X.useCallback)((e,t)=>{let n=K.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,st,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&&Jt(t);break}case`copy-full-path`:{let t=e.metadata?.filePath,n=e.metadata?.projectName;if(t){let e=n?q.getState().projects.find(e=>e.name===n):null;Jt(e?`${e.path}/${t}`:t)}break}case`download`:{let t=e.metadata?.filePath,n=e.metadata?.projectName;t&&n&&dc(n,t);break}case`rename`:case`delete`:{let n=e.metadata?.filePath;n&&ne({action:t,tabId:e.id,node:{name:e.title,path:n,type:`file`}});break}}},[l]);function ae(e){e.target.closest(`[data-tab-item]`)||_s()}return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(be,{children:[(0,Z.jsx)(xe,{asChild:!0,children:(0,Z.jsxs)(`div`,{className:G(`hidden md:flex items-center border-b border-border relative shrink-0`,D?`min-h-[41px] flex-wrap`:`h-[41px]`),onDragOver:p,onDrop:m,onDoubleClick:ae,children:[!D&&A&&(0,Z.jsx)(`button`,{onClick:M,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,Z.jsxs)(`span`,{className:`relative`,children:[(0,Z.jsx)(Nn,{className:`size-4 text-text-secondary`}),N.left&&(0,Z.jsx)(`span`,{className:G(`absolute -top-1 -right-0.5 size-2 rounded-full`,wo(N.left))})]})}),(0,Z.jsx)(`div`,{ref:r,className:G(`flex-1 min-w-0 scrollbar-none`,D?`overflow-y-auto overflow-x-hidden`:`overflow-x-auto overflow-y-hidden`),children:(0,Z.jsxs)(`div`,{className:Es(k,D),children:[s.map((e,t)=>{let r=e.type===`chat`?e.metadata?.sessionId:void 0,i=r?T.get(r):void 0,a=i&&i.count>0?i.type:null,o=!!i?.manual,s=r?E.has(r):!1;return(0,Z.jsx)(Ns,{tab:e,isActive:e.id===c,icon:hc[e.type]||F,showDropBefore:u===t,notificationType:a,notificationManual:o,isStreaming:s,onSelect:()=>{rs()||(K.getState().setActiveTab(e.id,l),r&&Do.getState().clearForSession(r))},onClose:()=>K.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,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=>L(e,t),tagColor:r?x[r]?.color:void 0,extraMenuContent:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(uc,{tab:e,panelId:l}),ie(e),re(e),r&&!a&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(ve,{onClick:()=>{let t=e.metadata?.projectName;t&&Do.getState().markUnread(r,t,e.title)},children:[(0,Z.jsx)(Ee,{className:`size-3.5 mr-2 fill-primary text-primary`}),`Mark as unread`]}),(0,Z.jsx)(_e,{})]}),r&&y.length>0&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(ye,{children:[(0,Z.jsxs)(he,{children:[(0,Z.jsx)(si,{className:`size-3.5 mr-2`}),`Set Tag`]}),(0,Z.jsxs)(pe,{children:[y.map(e=>(0,Z.jsxs)(ve,{onClick:()=>w(r,e.id),children:[(0,Z.jsx)(`span`,{className:`size-2.5 rounded-full mr-2 shrink-0`,style:{backgroundColor:e.color}}),e.name,x[r]?.id===e.id&&(0,Z.jsx)(me,{className:`size-3 ml-auto`})]},e.id)),x[r]&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(_e,{}),(0,Z.jsx)(ve,{onClick:()=>w(r,null),children:`Remove tag`})]})]})]}),(0,Z.jsx)(_e,{})]})]})},e.id)}),u!==null&&u>=s.length&&(0,Z.jsx)(`div`,{className:`w-0.5 h-6 bg-primary rounded-full`}),(0,Z.jsx)(`button`,{onClick:()=>{if(l===`__dock__`){let e=q.getState().activeProject;K.getState().openInDock({type:`terminal`,title:`Terminal`,projectId:e?.name??null,closable:!0,metadata:e?{projectName:e.name}:void 0})}else _s()},title:l===`__dock__`?`New terminal in dock`:`Open command palette (Shift+Shift)`,className:Ds(k),children:(0,Z.jsx)(R,{className:`size-4`})})]})}),!D&&j&&(0,Z.jsx)(`button`,{onClick:ee,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,Z.jsxs)(`span`,{className:`relative`,children:[(0,Z.jsx)(Ce,{className:`size-4 text-text-secondary`}),N.right&&(0,Z.jsx)(`span`,{className:G(`absolute -top-1 -left-0.5 size-2 rounded-full`,wo(N.right))})]})})]})}),(0,Z.jsxs)(ge,{children:[(0,Z.jsx)(ve,{onClick:O,children:D?`Scroll Tabs`:`Wrap Tabs`}),(0,Z.jsx)(_e,{}),(0,Z.jsx)(ve,{onClick:()=>_s(),children:`Open Command Palette`})]})]}),te&&(0,Z.jsx)(mc,{node:te.node,projectName:t?.name??``,onClose:()=>ne(null),onRefresh:()=>{t&&wt.getState().fetchTree(t.name),te.action===`delete`&&K.getState().closeTab(te.tabId,l)}})]})});function _c({panelId:e}){let[t,n]=(0,X.useState)(null),r=Jo(),i=ns(),a=(i?.panelId===e?i.zone:null)??t,o=K(e=>e.grid),s=K(e=>e.isMobile()),c=et(o,e),l=!s&&o.length<3,u=c?!s&&(o[c.row]?.length??0)<at(!1):!1,d=(0,X.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,X.useCallback)(e=>{e.dataTransfer.types.includes(`application/ppm-tab`)&&(e.preventDefault(),e.stopPropagation(),n(d(e)))},[d]),p=(0,X.useCallback)(e=>{e.currentTarget.contains(e.relatedTarget)||n(null)},[]),m=(0,X.useCallback)(t=>{t.preventDefault(),t.stopPropagation();let r=d(t);if(n(null),Yo(),!r)return;let i=t.dataTransfer.getData(Wo);if(i)try{let t=JSON.parse(i),n=K.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,Z.jsxs)(`div`,{className:`absolute inset-0 z-20`,onDragOver:f,onDragLeave:p,onDrop:m,children:[a===`left`&&(0,Z.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,Z.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,Z.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,Z.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,Z.jsx)(`div`,{className:`absolute inset-0 bg-primary/5 border-2 border-dashed border-primary/30 rounded-md`})]}):null}var vc=Ye(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 yc(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 bc(e,t,n){for(let r of e.tabs)t.has(r.id)||(t.add(r.id),n.push({tabId:r.id,panelId:st,type:r.type,metadata:r.metadata,isActive:r.id===e.activeTabId}))}function xc(e,t,n){for(let[r,i]of Object.entries(e))if(tt(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 Sc(e,t,n,r){let i=[],a=new Set;yc(t,r,!0,e,a,i);for(let[t,o]of Object.entries(n))t!==r&&yc(o,t,!1,e,a,i);xc(e,a,i);let o=e[st];return o&&bc(o,a,i),i.sort((e,t)=>e.tabId.localeCompare(t.tabId)),i}function Cc(e,t){return e.filter(e=>e.isActive||t.has(e.tabId))}var wc=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 Tc(e,t){wc.register(e,t)}var Ec=e(T(),1);function Dc({tabId:e,panelId:t,component:n,metadata:r,isActive:i,hiddenContainer:a}){let o=(0,X.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,X.useRef)(t);return c.current=t,(0,X.useLayoutEffect)(()=>{s.parentElement||a.appendChild(s);let e=()=>{let e=c.current;e===`__dock__`||tt(e)||K.getState().setFocusedPanel(e)};return s.addEventListener(`mousedown`,e,!0),()=>{s.removeEventListener(`mousedown`,e,!0),s.remove()}},[s,a]),(0,X.useLayoutEffect)(()=>{s.style.display=i?``:`none`},[s,i]),(0,X.useLayoutEffect)(()=>{let e=wc.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,Ec.createPortal)((0,Z.jsx)($e,{container:Bt(t),children:(0,Z.jsx)(X.Suspense,{fallback:(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,Z.jsx)(z,{className:`size-6 animate-spin text-primary`})}),children:(0,Z.jsx)(n,{metadata:r,tabId:e})})}),s)}function Oc(e,t){return`${e}|${t}`}function kc(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 Ac(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(!tt(t))continue;let e=nt(t);if(e&&r.has(e)||!c)continue;let i=a[c];i&&(a[c]=kc(i,n.tabs),delete a[t],s=!0)}let l=n.filter(e=>!a[rt(e)]);if(!i.includes(o)){let e=i[0];e&&(o=e,s=!0)}return{panels:a,focusedPanelId:o,windowIdsToClose:l,changed:s}}function jc(){let e=Gt(),t=K(e=>e.currentProject),n=gt(e=>e.restored),r=(0,X.useRef)(null);(0,X.useEffect)(()=>{if(!t||!n&&!e)return;let i=Oc(t,e);if(r.current===i)return;r.current=i;let{panels:a,grid:o,focusedPanelId:s}=K.getState(),c=Ac({panels:a,grid:o,focusedPanelId:s,liveWindowIds:e?[]:Object.values(gt.getState().windows).filter(e=>e.kind===`tab-host`).map(e=>e.id)});c.changed&&(K.setState({panels:c.panels,focusedPanelId:c.focusedPanelId}),ot(K.getState));for(let e of c.windowIdsToClose)gt.getState().close(e)},[t,n,e])}var Mc={terminal:(0,X.lazy)(()=>U(()=>import(`./terminal-tab-Ncor0Rfu.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]))),chat:(0,X.lazy)(()=>U(()=>import(`./chat-tab-IcnU3nqQ.js`).then(e=>({default:e.ChatTab})),__vite__mapDeps([25,1,2,3,4,26,7,27,8,28,29,30,31,32,33,17,34,35,36,10,11,37,38,13,39,40,41,42,43,44,45,46,47,48,49,18,50,51,15,20,14,9,52,53,54,12,55,56,57,58,59,60,61,16,62,63,21,22]))),editor:(0,X.lazy)(()=>U(()=>import(`./code-editor-Dno5Srkm.js`).then(e=>({default:e.CodeEditor})),__vite__mapDeps([64,1,2,3,4,65,66,67,8,32,46,36,10,53,11,68,69,38,57,48,18,70,71,22,13,15,23,24,51,20,7,14,72,26,45,73,74,75,37,76,55,77,60,78,61,17,39,79,63]))),database:(0,X.lazy)(()=>U(()=>import(`./database-viewer-BCvv_Bwf.js`).then(e=>({default:e.DatabaseViewer})),__vite__mapDeps([80,1,2,3,4,65,66,67,8,32,46,36,10,53,11,68,69,38,57,48,18,70,71,22,13,15,23,24,51,20,7,14,72,73,37,76,55,81]))),sqlite:(0,X.lazy)(()=>U(()=>import(`./sqlite-viewer-b2onA0SP.js`).then(e=>({default:e.SqliteViewer})),__vite__mapDeps([82,1,2,3,4,65,66,67,8,32,46,36,10,53,11,68,69,38,57,48,18,70,71,22,13,15,23,24,51,20,7,14,72,73,37,77,81]))),postgres:(0,X.lazy)(()=>U(()=>import(`./postgres-viewer--CRN1fvO.js`).then(e=>({default:e.PostgresViewer})),__vite__mapDeps([83,1,2,84,3,4,85,32,8,73,11,75,37,77,13]))),"git-diff":(0,X.lazy)(()=>U(()=>import(`./diff-viewer-D41fCFAi.js`).then(e=>({default:e.DiffViewer})),__vite__mapDeps([86,1,2,3,4,11,8,69,13,48,71,22,15,23,24]))),settings:(0,X.lazy)(()=>U(()=>import(`./settings-tab-BUlmPJ2w.js`).then(e=>({default:e.SettingsTab})),__vite__mapDeps([87,2,1,3,4,26,7,88,8,89,28,29,30,31,32,33,17,34,35,36,10,11,37,38,13,39,40,41,44,9,53,90,47,54,91,75,12,69,56,57,48,60,15,92,16,59,61,79,18,63,93,94,22,24]))),extension:(0,X.lazy)(()=>U(()=>import(`./extension-webview-BW_mccb3.js`).then(e=>({default:e.ExtensionWebview})),__vite__mapDeps([95,1,3,4,11,8,13,93,15]))),"extension-webview":(0,X.lazy)(()=>U(()=>import(`./extension-webview-BW_mccb3.js`).then(e=>({default:e.ExtensionWebview})),__vite__mapDeps([95,1,3,4,11,8,13,93,15]))),"conflict-editor":(0,X.lazy)(()=>U(()=>import(`./conflict-editor-CDp0I3mD.js`).then(e=>({default:e.ConflictEditor})),__vite__mapDeps([96,1,2,3,4,11,8,13,48,71,22,15,23,24]))),"system-monitor":(0,X.lazy)(()=>U(()=>import(`./system-monitor-tab-CPQdWv27.js`).then(e=>({default:e.SystemMonitorTab})),__vite__mapDeps([97,2,1,3,4,98,7,8,13]))),"git-log":(0,X.lazy)(()=>U(()=>import(`./git-log-panel-C1QDkmgl.js`).then(e=>({default:e.GitLogPanel})),__vite__mapDeps([99,1,3,4,7,8,11,37,13,48,79,63,15]))),"ai-resource":(0,X.lazy)(()=>U(()=>import(`./ai-resource-editor-D5CPBg06.js`).then(e=>({default:e.AiResourceEditor})),__vite__mapDeps([100,1,2,3,4,7,11,8,54,68,56,13,71,22,15,23,24]))),group:(0,X.lazy)(()=>U(()=>import(`./group-chat-tab-DFwr-pig.js`).then(e=>({default:e.GroupChatTab})),__vite__mapDeps([101,1,2,3,4,26,7,102,13,60,15,18,50,19,20,14,51,8,29,31,32,33,17,42,43,28,34,44,45,46,10,47,11,48,49,75,38,92,16,59,61,57,62,63,93,94,22])))},Nc={position:`fixed`,top:0,left:0,width:0,height:0,overflow:`hidden`,pointerEvents:`none`,visibility:`hidden`};function Pc(){let[e,t]=(0,X.useState)(null);(0,X.useSyncExternalStore)(e=>wc.subscribe(e),()=>wc.getVersion());let n=K(e=>e.panels),r=K(e=>e.grid),i=K(e=>e.currentProject),a=K(e=>e.projectGrids);jc();let o=Sc(n,r,a,i),s=Cc(o,vc(e=>e.mounted)),c=o.filter(e=>e.isActive).map(e=>e.tabId);return(0,X.useEffect)(()=>{let{mount:e}=vc.getState();for(let t of c)e(t)},[JSON.stringify(c)]),(0,Z.jsx)(`div`,{ref:t,style:Nc,children:e&&s.map(t=>{let n=Mc[t.type];return n?(0,Z.jsx)(Dc,{tabId:t.tabId,panelId:t.panelId,component:n,metadata:t.metadata,isActive:t.isActive,hiddenContainer:e},t.tabId):null})})}var Fc=[{type:`terminal`,label:`Terminal`,icon:li},{type:`chat`,label:`AI Chat`,icon:Ar},{type:`editor`,label:`New File`,icon:er}];function Ic({panelId:e,projectName:t}){let n=K(t=>t.panels[e]),r=K(t=>t.focusedPanelId===e),i=K(e=>(e.currentProject===t?e.grid:e.projectGrids[t]??[[]]).flat().length),a=(0,X.useCallback)(t=>{Tc(e,t)},[e]);if(!n)return null;let o=lt(n.tabs,t).length===0;return(0,Z.jsxs)(`div`,{className:G(`flex flex-col h-full overflow-hidden`,i>1&&`border border-transparent`,i>1&&r&&`border-primary/30`),onMouseDown:()=>{K.getState().focusedPanelId!==e&&K.getState().setFocusedPanel(e)},children:[(0,Z.jsx)(gc,{panelId:e}),(0,Z.jsxs)(`div`,{className:`flex-1 overflow-hidden relative`,"data-panel-drop-zone":e,onAuxClick:t=>{t.button!==1||!o||(t.preventDefault(),K.getState().closePanel(e))},children:[o&&(0,Z.jsx)(Lc,{panelId:e,canClose:i>1}),(0,Z.jsx)(`div`,{ref:a,className:`absolute inset-0`,style:o?{display:`none`}:void 0}),(0,Z.jsx)(_c,{panelId:e})]})]})}function Lc({panelId:e,canClose:t}){let n=q(e=>e.activeProject);function r(t){if(t===`editor`){J.getState().openNewFile();return}let r=t!==`settings`&&n?{projectName:n.name}:void 0;K.getState().openTab({type:t,title:Fc.find(e=>e.type===t)?.label??t,metadata:r,projectId:n?.name??null,closable:!0},e)}let i=(0,X.useCallback)(t=>{K.getState().openTab({type:`chat`,title:t.title||`Chat`,projectId:n?.name??null,metadata:{projectName:n?.name,sessionId:t.id,providerId:t.providerId},closable:!0},e)},[n?.name,e]);return(0,Z.jsx)(`div`,{className:`flex flex-col h-full overflow-y-auto text-text-secondary`,children:(0,Z.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-6 px-4 flex-1`,children:[(0,Z.jsx)(`p`,{className:`text-sm`,children:`Open a tab to get started`}),(0,Z.jsx)(`div`,{className:`grid grid-cols-3 gap-2 w-full max-w-sm`,children:Fc.map(e=>{let t=e.icon;return(0,Z.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,Z.jsx)(t,{className:`size-5`}),e.label]},e.type)})}),t&&(0,Z.jsxs)(`button`,{onClick:()=>K.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,Z.jsx)(Ge,{className:`size-3.5`}),`Close Panel`]}),(0,Z.jsx)(Po,{projectName:n?.name,onSelectSession:i,className:`w-full`})]})})}var Rc={terminal:li,chat:Ar,editor:Yn,database:je,sqlite:je,postgres:je,"git-diff":Xn,settings:Qr,extension:F,"extension-webview":F,"conflict-editor":Xn,"system-monitor":Qr,"git-log":Yn,"ai-resource":ke,group:fi};function zc(e){return Rc[e]??F}function Bc(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 Vc({...e}){return(0,Z.jsx)(j,{"data-slot":`dropdown-menu`,...e})}function Hc({container:e,...t}){let n=Qe();return(0,Z.jsx)(h,{"data-slot":`dropdown-menu-portal`,container:e??n,...t})}function Uc({...e}){return(0,Z.jsx)(C,{"data-slot":`dropdown-menu-trigger`,...e})}function Wc({className:e,sideOffset:t=4,...n}){return(0,Z.jsx)(Hc,{children:(0,Z.jsx)(_,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:G(`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 Gc({className:e,inset:t,variant:n=`default`,...r}){return(0,Z.jsx)(v,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:G(`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 Kc({...e}){return(0,Z.jsx)(g,{"data-slot":`dropdown-menu-radio-group`,...e})}function qc({className:e,children:t,...n}){return(0,Z.jsxs)(b,{"data-slot":`dropdown-menu-radio-item`,className:G(`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,Z.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,Z.jsx)(y,{children:(0,Z.jsx)(Ee,{className:`size-2 fill-current`})})}),t]})}function Jc({className:e,inset:t,...n}){return(0,Z.jsx)(p,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:G(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...n})}function Yc({className:e,...t}){return(0,Z.jsx)(f,{"data-slot":`dropdown-menu-separator`,className:G(`-mx-1 my-1 h-px bg-border`,e),...t})}function Xc({...e}){return(0,Z.jsx)(S,{"data-slot":`dropdown-menu-sub`,...e})}function Zc({className:e,inset:t,children:n,...r}){return(0,Z.jsxs)(x,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":t,className:G(`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,Z.jsx)(Ce,{className:`ml-auto size-4`})]})}function Qc({className:e,...t}){return(0,Z.jsx)(m,{"data-slot":`dropdown-menu-sub-content`,className:G(`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 $c={left:Rr,bottom:Ir,right:zr},el={left:`Left`,bottom:`Bottom`,right:`Right`},tl=[`left`,`bottom`,`right`];function nl(){let e=K(e=>e.panels[st]),t=q(e=>e.activeProject?.name??null),n=W(e=>e.dockPosition),r=W(e=>e.setDockPosition),i=K(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=Bc(a.map(e=>e.id),o,n);function l(e){K.getState().setActiveTab(e,st)}function u(e){K.getState().closeTab(e,st)}function d(){let e=q.getState().activeProject;K.getState().openInDock({type:`terminal`,title:`Terminal`,projectId:e?.name??null,closable:!0,metadata:e?{projectName:e.name}:void 0})}let f=$c[n];return(0,Z.jsxs)(`div`,{className:`flex items-center h-8 min-w-0 flex-1 gap-1 px-1`,children:[(0,Z.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=zc(t.type),r=e===o,i=!c.iconOnlyInactive||r,a=(0,Z.jsxs)(`button`,{onClick:()=>l(e),className:G(`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,Z.jsx)(n,{className:`size-3`}),i&&(0,Z.jsx)(`span`,{className:`text-[11px] font-medium max-w-[120px] truncate`,children:t.title}),i&&t.closable&&(0,Z.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,Z.jsx)(Ge,{className:`size-3`})})]},e);return i?a:(0,Z.jsxs)(xi,{children:[(0,Z.jsx)(Si,{asChild:!0,children:a}),(0,Z.jsx)(Ci,{side:`top`,className:`text-xs`,children:t.title})]},e)}),c.overflow.length>0&&(0,Z.jsxs)(Vc,{children:[(0,Z.jsx)(Uc,{asChild:!0,children:(0,Z.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,Z.jsx)(Wc,{align:`start`,className:`min-w-[10rem]`,children:c.overflow.map(e=>{let t=s.get(e);return t?(0,Z.jsxs)(Gc,{onClick:()=>l(e),children:[(0,Z.jsx)(zc(t.type),{className:`size-3.5`}),(0,Z.jsx)(`span`,{className:`truncate`,children:t.title})]},e):null})})]}),(0,Z.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,Z.jsx)(R,{className:`size-3.5`})})]}),(0,Z.jsxs)(Vc,{children:[(0,Z.jsx)(Uc,{asChild:!0,children:(0,Z.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,Z.jsx)(f,{className:`size-3.5`}),(0,Z.jsx)(Se,{className:`size-2.5`})]})}),(0,Z.jsxs)(Wc,{align:`end`,children:[(0,Z.jsx)(Jc,{className:`text-[10px] uppercase tracking-wide text-text-subtle`,children:`Panel Position`}),tl.map(e=>{let t=$c[e],i=e===n;return(0,Z.jsxs)(Gc,{onClick:()=>r(e),className:G(i&&`text-primary bg-primary/10`),children:[(0,Z.jsx)(t,{className:`size-3.5`}),(0,Z.jsx)(`span`,{className:`flex-1`,children:el[e]}),i&&(0,Z.jsx)(me,{className:`size-3.5`})]},e)})]})]}),(0,Z.jsx)(`div`,{className:`w-px h-4 bg-border shrink-0`}),(0,Z.jsx)(`button`,{onClick:()=>K.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,Z.jsx)(Mr,{className:`size-3.5`}):(0,Z.jsx)(Or,{className:`size-3.5`})}),(0,Z.jsx)(`button`,{onClick:()=>K.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,Z.jsx)(Se,{className:`size-3.5`})})]})}var rl={top:`border-t`,left:`border-l`,right:`border-r`};function il({variant:e=`desktop`,borderEdge:t=`top`}){let n=K(e=>e.panels[st]),r=q(e=>e.activeProject?.name??null),i=(n?.tabs??[]).some(e=>!e.projectId||!r||e.projectId===r),a=(0,X.useCallback)(e=>{Tc(st,e)},[]);return(0,Z.jsxs)(`div`,{className:G(`flex flex-col h-full overflow-hidden border-border bg-panel`,e===`desktop`&&rl[t]),children:[(0,Z.jsx)(`div`,{className:`flex items-center shrink-0`,children:e===`mobile`?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(al,{}),(0,Z.jsx)(`button`,{onClick:()=>K.getState().setDockVisible(!1),title:`Hide terminal dock`,className:G(`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,Z.jsx)(Ge,{className:`size-3.5`})})]}):(0,Z.jsx)(nl,{})}),(0,Z.jsxs)(`div`,{className:`flex-1 overflow-hidden relative`,children:[!i&&(0,Z.jsx)(ol,{variant:e}),(0,Z.jsx)(`div`,{ref:a,className:`absolute inset-0`,style:i?void 0:{display:`none`}})]})]})}function al(){let e=K(e=>e.panels[st]),t=q(e=>e.activeProject),n=K(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){K.getState().setActiveTab(e,st)}function s(){let e=t;K.getState().openInDock({type:`terminal`,title:`Terminal`,projectId:e?.name??null,closable:!0,metadata:e?{projectName:e.name}:void 0})}return(0,Z.jsxs)(`div`,{className:`flex-1 min-w-0 flex items-center h-11 gap-1 pl-2 overflow-hidden`,children:[(0,Z.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=zc(e.type);return(0,Z.jsxs)(`div`,{className:G(`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,Z.jsxs)(`button`,{onClick:()=>o(e.id),className:`flex items-center gap-1.5 min-w-0`,children:[(0,Z.jsx)(t,{className:`size-[13px] shrink-0`}),(0,Z.jsx)(`span`,{className:`max-w-[96px] truncate text-xs font-medium`,children:e.title})]}),e.closable&&(0,Z.jsx)(`button`,{onClick:()=>K.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,Z.jsx)(Ge,{className:`size-3.5`})})]},e.id)}),(0,Z.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,Z.jsx)(R,{className:`size-4`})})]}),(0,Z.jsx)(`button`,{onClick:()=>K.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,Z.jsx)(Mr,{className:`size-4`}):(0,Z.jsx)(Or,{className:`size-4`})})]})}function ol({variant:e}){let t=q(e=>e.activeProject);function n(){let e=t;K.getState().openInDock({type:`terminal`,title:`Terminal`,projectId:e?.name??null,closable:!0,metadata:e?{projectName:e.name}:void 0})}return(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,Z.jsxs)(`button`,{onClick:n,className:G(`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,Z.jsx)(li,{className:`size-4`}),`Open Terminal`]})})}function sl(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 cl=[[]],ll=(0,X.memo)(function({projectName:e}){let t=_o(`(min-width: 768px)`),n=K(t=>t.currentProject===e?t.grid:t.projectGrids[e]??cl),r=K(e=>e.focusedPanelId),i=K(e=>e.dock),a=K(e=>e.dockExpanded),o=W(e=>e.dockPosition),s=K(e=>e.currentProject),c=n.flat().length,l=s===e;(0,X.useEffect)(()=>{if(l&&c===0){let e=it();K.setState(t=>({panels:{...t.panels,[e.id]:e},grid:[[e.id]],focusedPanelId:e.id}))}},[l,c]);let u=(0,X.useCallback)(({asPercentage:e})=>{K.getState().dockExpanded||K.getState().setDockHeight(e)},[]),d=(0,X.useRef)({key:``,size:``});if(c===0)return null;if(!t){let t=n.flat(),i=t.includes(r)?r:t[0];return i?(0,Z.jsx)(Ic,{panelId:i,projectName:e}):null}let f=c===1&&n[0]?.[0]?(0,Z.jsx)(Ic,{panelId:n[0][0],projectName:e}):(0,Z.jsx)(lo,{orientation:`vertical`,style:{height:`100%`},children:n.map((t,r)=>(0,Z.jsx)(ul,{row:t,rowIdx:r,totalRows:n.length,projectName:e},`row-${r}`))});if(!l)return(0,Z.jsx)(Z.Fragment,{children:f});let p=sl(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,Z.jsx)(po,{minSize:`15%`,children:f}),_=i.visible?(0,Z.jsx)(po,{defaultSize:d.current.size,minSize:`10%`,maxSize:`85%`,onResize:u,children:(0,Z.jsx)(il,{borderEdge:p.borderEdge})}):null,v=i.visible?(0,Z.jsx)(fl,{orientation:m}):null;return(0,Z.jsxs)(lo,{orientation:p.orientation,style:{height:`100%`},children:[p.dockFirst?_:g,v,p.dockFirst?g:_]},h)});function ul({row:e,rowIdx:t,totalRows:n,projectName:r}){return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(po,{minSize:`15%`,defaultSize:`${Math.round(100/n)}%`,children:e.length===1?(0,Z.jsx)(Ic,{panelId:e[0],projectName:r}):(0,Z.jsx)(lo,{orientation:`horizontal`,children:e.map((t,n)=>(0,Z.jsx)(dl,{panelId:t,colIdx:n,totalCols:e.length,projectName:r},t))})}),t<n-1&&(0,Z.jsx)(fl,{orientation:`horizontal`})]})}function dl({panelId:e,colIdx:t,totalCols:n,projectName:r}){return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(po,{minSize:`15%`,defaultSize:`${Math.round(100/n)}%`,children:(0,Z.jsx)(Ic,{panelId:e,projectName:r})}),t<n-1&&(0,Z.jsx)(fl,{orientation:`vertical`})]})}function fl({orientation:e}){let t=e===`vertical`;return(0,Z.jsx)(go,{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,Z.jsx)(`div`,{className:`absolute can-hover:opacity-0 can-hover:group-hover/handle:opacity-70 transition-opacity text-foreground/50`,children:t?(0,Z.jsx)(mr,{className:`size-3`}):(0,Z.jsx)(pr,{className:`size-3`})})})}function pl(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 ml(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 hl(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var gl=(e,t)=>Math.abs(e-t)<1.01,_l=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},vl,yl=()=>{if(vl!==void 0)return vl;if(typeof navigator>`u`)return vl=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return vl=!0;let e=navigator.maxTouchPoints;return vl=navigator.platform===`MacIntel`&&e!==void 0&&e>0},bl=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},xl=e=>e,Sl=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},Cl=(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(bl(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(bl(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},wl={passive:!0},Tl=typeof window>`u`?!0:`onscrollend`in window,El=(e,t,n)=>{let r=e.scrollElement;if(!r)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Tl,o=0,s=a?null:_l(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,wl),a&&r.addEventListener(`scrollend`,u,wl),()=>{r.removeEventListener(`scroll`,l),a&&r.removeEventListener(`scrollend`,u)}},Dl=(e,t)=>El(e,t,t=>{let{horizontal:n,isRtl:r}=e.options;return n?t.scrollLeft*(r&&-1||1):t.scrollTop}),Ol=(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`]},kl=(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})},Al=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:xl,rangeExtractor:Sl,onChange:()=>{},measureElement:Ol,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=ml(()=>(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,!(!yl()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};e.addEventListener(`touchstart`,t,wl),e.addEventListener(`touchend`,n,wl),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&&(yl()&&(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=ml(()=>[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=ml(()=>[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=pl(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=ml(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>e.length===0||t===0?(this.range=null,null):(this.range=Nl(e,t,n,r,r===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=ml(()=>{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=ml(()=>[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 hl(t[jl(0,t.length-1,r?e=>n[e*2]:e=>hl(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&&(yl()&&(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&&gl(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()}},jl=(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 Ml(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 Nl(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=Ml(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=jl(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 $=typeof document<`u`?X.useLayoutEffect:X.useEffect;function Pl({useFlushSync:e=!0,directDomUpdates:t=!1,directDomUpdatesMode:n=`transform`,...r}){let i=X.useReducer(e=>e+1,0)[1],a=X.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,Ec.flushSync)(i):i()),(s=r.onChange)==null||s.call(r,t,n)}},[c]=X.useState(()=>{let e=new Al(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),$(()=>c._didMount(),[]),$(()=>c._willUpdate()),$(()=>{o(c)}),c}function Fl(e){return Pl({observeElementRect:Cl,observeElementOffset:Dl,scrollToFn:kl,...e})}function Il({icon:e,title:t,children:n}){return(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-2 border-b border-border shrink-0`,children:[(0,Z.jsx)(e,{className:`size-4 text-primary`}),(0,Z.jsx)(`span`,{className:`text-xs font-semibold uppercase tracking-wide text-text-secondary flex-1`,children:t}),n]})}var Ll={M:`text-warning`,A:`text-success`,D:`text-error`,R:`text-primary`,C:`text-accent-2`,U:`text-text-3`};function Rl(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 zl(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 Bl=Ye()(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=Rl(n),i=zl(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}})}}));function Vl(e,t){let n=Bl(e=>e.setCount),r=Bl(e=>e.setFileStatuses),i=Bl(e=>e.setMeta),a=(0,X.useCallback)(async()=>{if(e)try{let t=await V.get(`${B(e)}/git/status`);n(e,t.staged.length+t.unstaged.length+t.untracked.length),r(e,t),i(e,t)}catch{}},[e,n,r]);(0,X.useEffect)(()=>{if(t)return;a();let e=setInterval(a,1e4);return()=>clearInterval(e)},[a,t])}var Hl=`ring-1 ring-dashed ring-primary bg-primary/10`,Ul={ts:{icon:Yn,color:`text-blue-400`},tsx:{icon:Yn,color:`text-blue-400`},js:{icon:Yn,color:`text-yellow-400`},jsx:{icon:Yn,color:`text-yellow-400`},py:{icon:Yn,color:`text-green-400`},rs:{icon:Yn,color:`text-orange-400`},go:{icon:Yn,color:`text-cyan-400`},c:{icon:Yn,color:`text-blue-300`},cpp:{icon:Yn,color:`text-blue-300`},java:{icon:Yn,color:`text-red-400`},rb:{icon:Yn,color:`text-red-400`},php:{icon:Yn,color:`text-purple-400`},swift:{icon:Yn,color:`text-orange-400`},kt:{icon:Yn,color:`text-purple-400`},dart:{icon:Yn,color:`text-cyan-400`},sh:{icon:Yn,color:`text-green-300`},html:{icon:Yn,color:`text-orange-400`},css:{icon:Yn,color:`text-blue-400`},scss:{icon:Yn,color:`text-pink-400`},json:{icon:Jn,color:`text-yellow-400`},yaml:{icon:rr,color:`text-orange-300`},yml:{icon:rr,color:`text-orange-300`},toml:{icon:rr,color:`text-orange-300`},ini:{icon:rr,color:`text-orange-300`},env:{icon:rr,color:`text-yellow-300`},csv:{icon:tr,color:`text-green-400`},xls:{icon:tr,color:`text-green-400`},xlsx:{icon:tr,color:`text-green-400`},md:{icon:nr,color:`text-text-secondary`},txt:{icon:nr,color:`text-text-secondary`},log:{icon:nr,color:`text-text-subtle`},pdf:{icon:nr,color:`text-red-400`},png:{icon:Qn,color:`text-green-400`},jpg:{icon:Qn,color:`text-green-400`},jpeg:{icon:Qn,color:`text-green-400`},gif:{icon:Qn,color:`text-green-400`},svg:{icon:Qn,color:`text-yellow-400`},webp:{icon:Qn,color:`text-green-400`},ico:{icon:Qn,color:`text-green-400`},bmp:{icon:Qn,color:`text-green-400`},mp4:{icon:$n,color:`text-purple-400`},webm:{icon:$n,color:`text-purple-400`},mov:{icon:$n,color:`text-purple-400`},avi:{icon:$n,color:`text-purple-400`},mkv:{icon:$n,color:`text-purple-400`},mp3:{icon:Zn,color:`text-pink-400`},wav:{icon:Zn,color:`text-pink-400`},ogg:{icon:Zn,color:`text-pink-400`},flac:{icon:Zn,color:`text-pink-400`},db:{icon:je,color:`text-amber-400`},sqlite:{icon:je,color:`text-amber-400`},sqlite3:{icon:je,color:`text-amber-400`},sql:{icon:je,color:`text-amber-400`},zip:{icon:qn,color:`text-amber-300`},tar:{icon:qn,color:`text-amber-300`},gz:{icon:qn,color:`text-amber-300`},rar:{icon:qn,color:`text-amber-300`},"7z":{icon:qn,color:`text-amber-300`}},Wl={icon:ir};function Gl(e){return Ul[e.split(`.`).pop()?.toLowerCase()??``]??Wl}function Kl({node:e,isDir:t,projectName:n,selectedFiles:r,compareSelection:i,clipboard:a,onAction:o}){return(0,Z.jsxs)(sn,{children:[t&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(ln,{onClick:()=>o(`new-file`,e),children:`New File`}),(0,Z.jsx)(ln,{onClick:()=>o(`new-folder`,e),children:`New Folder`}),(0,Z.jsx)(cn,{}),(0,Z.jsxs)(ln,{onClick:()=>o(`open-in-file-explorer`,e),children:[(0,Z.jsx)(ar,{className:`size-3.5 mr-2`}),`Open in File Explorer`]}),(0,Z.jsxs)(ln,{onClick:()=>o(`open-in-terminal`,e),children:[(0,Z.jsx)(ii,{className:`size-3.5 mr-2`}),`Open in Terminal`]}),(0,Z.jsx)(cn,{})]}),(0,Z.jsx)(ln,{onClick:()=>o(`cut`,e),children:`Cut`}),(0,Z.jsx)(ln,{onClick:()=>o(`copy-file`,e),children:`Copy`}),t&&a&&(0,Z.jsx)(ln,{onClick:()=>o(`paste`,e),children:`Paste`}),(0,Z.jsx)(cn,{}),(0,Z.jsx)(ln,{onClick:()=>o(`rename`,e),children:`Rename`}),(0,Z.jsx)(ln,{variant:`destructive`,onClick:()=>o(`delete`,e),children:`Delete`}),(0,Z.jsx)(cn,{}),(0,Z.jsx)(ln,{onClick:()=>o(`copy-path`,e),children:`Copy Path`}),(0,Z.jsx)(ln,{onClick:()=>o(`copy-full-path`,e),children:`Copy Full Path`}),(0,Z.jsx)(cn,{}),(0,Z.jsxs)(ln,{onClick:()=>o(`download`,e),children:[(0,Z.jsx)(Me,{className:`size-3.5 mr-2`}),`Download`,t?` as Zip`:``]}),!t&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(cn,{}),(0,Z.jsx)(ln,{onClick:()=>o(`select-for-compare`,e),children:`Select for Compare`}),i&&i.projectName===n&&i.filePath!==e.path&&(0,Z.jsxs)(ln,{onClick:()=>o(`compare-with-selected`,e),children:[`Compare with Selected (`,i.label,`)`]})]}),!t&&r.length===2&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(cn,{}),(0,Z.jsx)(ln,{onClick:()=>o(`compare-selected`,e),children:`Compare Selected`})]})]})}var ql=`ppm-explorer-view`,Jl={sort:{key:`name`,dir:`asc`},viewMode:`list`,showHidden:!1};function Yl(){try{let e=localStorage.getItem(ql);if(!e)return Jl;let t=JSON.parse(e);return{sort:t.sort?.key?t.sort:Jl.sort,viewMode:t.viewMode??Jl.viewMode,showHidden:t.showHidden??Jl.showHidden}}catch{return Jl}}function Xl(e){try{localStorage.setItem(ql,JSON.stringify(e))}catch{}}function Zl(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 Ql=Ye((e,t)=>({...Yl(),slices:{},ensure:(n,r)=>{t().slices[n]||e(e=>({slices:{...e.slices,[n]:Zl(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 Xl(n),n})}})),$l=new Set;function eu(...e){for(let t of e)if(t)for(let e of $l)e(t)}function tu(e){return $l.add(e),()=>$l.delete(e)}var nu=`application/x-ppm-paths`,ru=`application/x-ppm-path`;function iu(e){return/^[a-zA-Z]:[\\/]/.test(e)||e.startsWith(`\\\\`)}function au(e){let t=e.replace(/\\/g,`/`).replace(/\/+$/,``);return iu(e)?t.toLowerCase():t}function ou(e){return JSON.stringify(e)}function su(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 cu(e,t){let n=au(t);return e.some(e=>{let t=au(e);return n===t||n.startsWith(`${t}/`)})}function lu(e,t){let n=au(t);return e.every(e=>{let t=au(e),r=t.lastIndexOf(`/`);return(r<=0?t.slice(0,r+1):t.slice(0,r))===n})}function uu(e){return e.ctrlKey||e.altKey?`copy`:`move`}function du(e){return e.map(e=>{let t=e.replace(/\\/g,`/`);return`file://${(t.startsWith(`/`)?t:`/${t}`).split(`/`).map(encodeURIComponent).join(`/`)}`}).join(`\r
18
+ `)}var fu=null;function pu(e){fu=e}function mu(){return fu}function hu(){fu=null}typeof window<`u`&&(window.addEventListener(`dragend`,hu),window.addEventListener(`drop`,hu));function gu(e,t){return t?(e.current++,e.current===1):!1}function _u(e,t){return t?(e.current=Math.max(0,e.current-1),e.current===0):!1}function vu(e){e.current=0}var yu=class extends Error{constructor(e,t,n,r){super(e),this.code=t,this.status=n,this.hint=r,this.name=`FsError`}};async function bu(e,t={}){let n=Je(),r={"Content-Type":`application/json`,"x-ppm-client":`web`};n&&(r.Authorization=`Bearer ${n}`);let i=await fetch(e,{...t,headers:{...r,...t.headers}}),a;try{a=await i.json()}catch{throw new yu(i.ok?`Empty response from server`:`Server error (HTTP ${i.status})`,`EUNKNOWN`,i.status)}if(!i.ok||a.ok===!1)throw new yu(a.error??`HTTP ${i.status}`,a.code??`EUNKNOWN`,i.status,a.hint);return a.data}var xu=e=>JSON.stringify(e),Su=encodeURIComponent,Cu={browse(e,t={}){let n=t.showHidden?`&showHidden=true`:``;return bu(`/api/fs/browse?path=${Su(e)}${n}`,{signal:t.signal})},stat(e,t){return bu(`/api/fs/stat?path=${Su(e)}`,{signal:t})},copy(e,t){return bu(`/api/fs/copy`,{method:`POST`,body:xu({source:e,destination:t})})},move(e,t){return bu(`/api/fs/move`,{method:`POST`,body:xu({source:e,destination:t})})},rename(e,t){return bu(`/api/fs/rename`,{method:`POST`,body:xu({path:e,newName:t})})},touch(e){return bu(`/api/fs/touch`,{method:`POST`,body:xu({path:e})})},mkdir(e,t=!1){return bu(`/api/fs/mkdir`,{method:`POST`,body:xu({path:e,gitInit:t})})},remove(e,t=!1){return bu(`/api/fs/delete`,{method:`DELETE`,body:xu({path:e,permanent:t})})},async downloadUrl(e){let{token:t}=await bu(`/api/fs/download/token`,{method:`POST`,body:xu({path:e})});return`/api/fs/raw?path=${Su(e)}&download=true&dl_token=${Su(t)}`},uploadUrl(e,t){return`/api/fs/upload?path=${Su(e)}&overwrite=${t?`1`:`0`}`}};function wu(e){return e instanceof yu?e.hint??e.message:e instanceof Error?e.message:void 0}function Tu(e){return e==null?``:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(1)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}function Eu(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 ago`;let r=Math.floor(n/60);return r<24?`${r}h ago`:`${Math.floor(r/24)}d ago`}function Du(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:t.toLocaleString()}function Ou(e){return e==null?``:(e&511).toString(8).padStart(3,`0`)}function ku(e,t){let n=e.endsWith(t)&&e.length>t.length?e.slice(0,-t.length):e,r=n.lastIndexOf(t);if(r<0)return n;if(r===0)return t;let i=n.slice(0,r);return i.endsWith(`:`)?i+t:i}function Au(e,t,n){return e.endsWith(n)?`${e}${t}`:`${e}${n}${t}`}function ju(e,t){let n=e.lastIndexOf(`.`);return n<=0?`${e} (${t})`:`${e.slice(0,n)} (${t})${e.slice(n)}`}var Mu=99;async function Nu(e){try{return await Cu.stat(e),!0}catch(e){return!(e instanceof yu&&e.code===`ENOENT`)}}async function Pu(e,t,n){for(let r=2;r<=Mu;r++){let i=ju(t,r);if(!await Nu(Au(e,i,n)))return i}return null}async function Fu(e,t,n){n===`copy`?await Cu.copy(e,t):await Cu.move(e,t)}async function Iu(e,t,n,r){let i={succeeded:0,skipped:0,failed:0},a=new Set([t]);r.startBatch?.();try{await Lu(e,t,n,r,i,a)}finally{r.endBatch?.()}return eu(...a),i}async function Lu(e,t,n,r,i,a){for(let o of e){let e=o.split(/[/\\]/).filter(Boolean).pop()??o,s=ku(o,r.sep);if(a.add(s),n===`move`&&s===t){i.skipped++;continue}let c=Au(t,e,r.sep);if(n===`copy`&&s===t){let a=await Pu(t,e,r.sep);if(!a){i.failed++,H.error(`Copy failed: ${e}`,{description:`No free name available`});continue}c=Au(t,a,r.sep);try{await Fu(o,c,n),i.succeeded++}catch(t){i.failed++,H.error(`Copy failed: ${e}`,{description:wu(t)})}continue}try{await Fu(o,c,n),i.succeeded++;continue}catch(t){if(!(t instanceof yu)||t.code!==`EEXIST`){i.failed++,H.error(`${n===`copy`?`Copy`:`Move`} failed: ${e}`,{description:wu(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 Pu(t,e,r.sep);if(!a)throw Error(`No free name available`);c=Au(t,a,r.sep),await Fu(o,c,n),i.succeeded++}catch(t){i.failed++,H.error(`${n===`copy`?`Copy`:`Move`} failed: ${e}`,{description:wu(t)})}continue}try{await Cu.remove(c,!1)}catch(t){if(!(t instanceof yu)||t.code!==`NO_TRASH`){i.failed++,H.error(`Could not remove existing ${e}`,{description:wu(t)});continue}if(!await r.confirmPermanentOverwrite(e)){i.skipped++;continue}try{await Cu.remove(c,!0)}catch(t){i.failed++,H.error(`Could not remove existing ${e}`,{description:wu(t)});continue}}try{await Fu(o,c,n),i.succeeded++}catch(t){i.failed++,H.error(`${e} was removed but the replacement could not be written`,{description:wu(t)})}}}function Ru(e,t,n){e.length!==0&&wt.getState().setClipboard({paths:[...e],operation:t,origin:n})}async function zu(e,t){let n=wt.getState().clipboard;if(!n||n.paths.length===0)return;let r=await Iu(n.paths,e,n.operation===`cut`?`move`:`copy`,t);if(n.operation===`cut`&&r.failed===0&&wt.getState().setClipboard(null),r.succeeded>0){let e=n.operation===`cut`?`Moved`:`Copied`;H.success(`${e} ${r.succeeded} item${r.succeeded===1?``:`s`}`)}}async function Bu(e,t,n,r){if(e.paths.length!==0){if(cu(e.paths,t)){H.error(`Cannot place an item inside itself`);return}await r(e.paths,t,n)}}function Vu(e){return async(t,n,r)=>{await Iu(t,n,r,e)}}var Hu=12,Uu=12;function Wu(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,Hu,Uu)}catch{}requestAnimationFrame(()=>r.remove())}function Gu(e){return e.split(/[/\\]/).filter(Boolean).pop()??e}function Ku(e){let{paths:t,names:n,origin:r,projectName:i,extraData:a,disabled:o,onDragStarted:s}=e,c=!Ne()&&!o&&t.length>0,l=(0,X.useCallback)(e=>{s?.();let o={paths:t,origin:r,...i?{projectName:i}:{}},c=e.dataTransfer;c.setData(nu,ou(o)),c.setData(`text/uri-list`,du(t)),c.setData(`text/plain`,t.join(`
19
+ `));for(let[e,t]of Object.entries(a??{}))c.setData(e,t);c.effectAllowed=`copyMove`,Wu(c,n??t.map(Gu)),pu(o)},[t,n,r,i,a,s]);return(0,X.useMemo)(()=>c?{draggable:!0,onDragStart:l,onDragEnd:hu}:{},[c,l])}function qu({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=uu(r);return t?cu(t.paths,n)?{accept:!1,reason:`self-or-descendant`}:i===`move`&&lu(t.paths,n)?{accept:!1,reason:`same-directory`}:{accept:!0,op:i}:{accept:!0,op:i}}var Ju=120,Yu=800;function Xu(e,t,n){return qu({types:Array.from(e.dataTransfer.types),payload:n,targetDir:t,modifiers:{ctrlKey:e.ctrlKey,altKey:e.altKey}})}function Zu(e){let{targetDir:t,onDropEntries:n,springLoad:r,disabled:i}=e,[a,o]=(0,X.useState)(!1),s=(0,X.useRef)(0),c=(0,X.useRef)([]),l=(0,X.useCallback)(()=>{for(let e of c.current)clearTimeout(e);c.current=[]},[]),u=(0,X.useCallback)(()=>{s.current=0,l(),o(!1)},[l]);return(0,X.useEffect)(()=>l,[l]),{isOver:a,handlers:{onDragEnter:(0,X.useCallback)(e=>{if(i||!e.dataTransfer.types.includes(`application/x-ppm-paths`))return;let n=Xu(e,t,mu());n.accept&&(e.preventDefault(),e.stopPropagation()),s.current++,!(s.current>1||!n.accept)&&(c.current.push(setTimeout(()=>o(!0),Ju)),r&&c.current.push(setTimeout(r,Yu)))},[i,t,r]),onDragOver:(0,X.useCallback)(e=>{if(i)return;let n=Xu(e,t,mu());n.accept&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect=n.op===`copy`?`copy`:`move`)},[i,t]),onDragLeave:(0,X.useCallback)(e=>{s.current!==0&&(e.stopPropagation(),s.current--,s.current===0&&(l(),o(!1)))},[l]),onDrop:(0,X.useCallback)(e=>{if(i)return;let r=su(e.dataTransfer.getData(`application/x-ppm-paths`))??mu();hu();let a=Xu(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 Qu(e){return e.dataTransfer.types.includes(`Files`)&&!e.dataTransfer.types.includes(`application/x-ppm-path`)}function $u(e,t,n){return t&&e?.origin===`tree`&&e.projectName===n}function ed(e){return e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)):``}function td(e){let{path:t,name:n,isDir:r,effectivePath:i,isSelected:a,selectedFiles:o,isExpanded:s,projectName:c,projectRoot:l,toggleExpand:u,onFileDrop:d,transferRun:f}=e,[p,m]=(0,X.useState)(!1),h=(0,X.useRef)(0),g=Ku({paths:(a&&o.length>1?o:[t]).map(e=>l?Dt(l,e):e),origin:`tree`,projectName:c,extraData:{[ru]:r?`${t}/`:t}}),_=r?i:ed(t),v=Zu({targetDir:r&&l?Dt(l,_):null,onDropEntries:(e,t,n)=>void Bu(e,n,t,f),springLoad:r&&!s?()=>u(c,t):void 0});function y(e){return e.type===`drop`?su(e.dataTransfer.getData(nu)):mu()}function b(e){return Qu(e)?!0:$u(y(e),e.dataTransfer.types.includes(ru),c)}function x(e){b(e)&&(e.preventDefault(),e.stopPropagation(),gu(h,!0)&&m(!0))}function S(e){e.stopPropagation(),_u(h,!0)&&m(!1)}function C(e){b(e)&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect=Qu(e)?`copy`:`move`)}function w(e){if(e.preventDefault(),e.stopPropagation(),vu(h),m(!1),Qu(e)){e.dataTransfer.files.length>0&&d(_,e.dataTransfer.files);return}let t=e.dataTransfer.getData(ru).replace(/\/$/,``);if(!t||t===_||_.startsWith(`${t}/`))return;let n=ed(t);if(n===_)return;let r=t.includes(`/`)?t.slice(t.lastIndexOf(`/`)+1):t,i=_?`${_}/${r}`:r;V.post(`${B(c)}/files/move`,{source:t,destination:i}).then(()=>{let e=wt.getState();e.invalidateIndex(),e.loadIndex(c),e.invalidateFolder(c,n),e.invalidateFolder(c,_),l&&eu(Dt(l,n),Dt(l,_))}).catch(e=>{H.error(e instanceof Error?e.message:`Move failed`)})}return{entrySource:g,isDragOver:p||v.isOver,containerHandlers:{onDragEnter:e=>{b(e)?x(e):v.handlers.onDragEnter(e)},onDragLeave:e=>{b(e)?S(e):v.handlers.onDragLeave(e)},onDragOver:e=>{b(e)?C(e):v.handlers.onDragOver(e)},onDrop:e=>{b(e)?w(e):v.handlers.onDrop(e)}}}}var nd=(0,X.memo)(function({row:e,projectName:t,onAction:n,onFileDrop:r,onFileOpen:i,transferRun:a}){let{node:o,effectiveNode:s,displayName:c,depth:l}=e,{expandedPaths:u,loadedPaths:d,inflight:f,toggleExpand:p,selectedFiles:m,toggleFileSelect:h,clipboard:g,focusedPath:_,setFocusedPath:v}=wt(rn(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}))),y=J(e=>e.openTab),b=q(e=>e.activeProject?.path),x=Bo(e=>e.selection),S=o.type===`directory`,C=Bl(e=>(S?e.folderStatuses.get(t):e.fileStatuses.get(t))?.get(o.path)),w=C?Ll[C]:void 0,T=u.has(o.path),E=m.includes(o.path),D=o.ignored===!0,O=g?.operation===`cut`&&b!=null&&g.paths.includes(Dt(b,o.path)),k=_===o.path||_===s.path,A=S&&T&&!d.has(s.path)&&f.has(s.path),j=(0,X.useRef)(null);(0,X.useEffect)(()=>{k&&j.current&&j.current.scrollIntoView({block:`nearest`})},[k]);function M(e){if(e.metaKey||e.ctrlKey){v(o.path),h(o.path);return}if(e.shiftKey&&_!=null){let e=Ct(),t=e.indexOf(_),n=e.indexOf(s.path);if(t>=0&&n>=0){let r=Math.min(t,n),i=Math.max(t,n);wt.getState().setSelectedFiles(e.slice(r,i+1))}return}if(v(o.path),wt.getState().clearSelection(),S){p(t,o.path);return}let n=o.name.split(`.`).pop()?.toLowerCase()??``;y({type:n===`db`||n===`sqlite`||n===`sqlite3`?`sqlite`:`editor`,title:o.name,metadata:{filePath:o.path,projectName:t},projectId:t,closable:!0}),i?.()}let ee=td({path:o.path,name:o.name,isDir:S,effectivePath:s.path,isSelected:E,selectedFiles:m,isExpanded:T,projectName:t,projectRoot:b,toggleExpand:p,onFileDrop:r,transferRun:a}),{icon:N,color:P}=S?{icon:T?ar:cr,color:T?`text-primary`:`text-text-3`}:Gl(o.name);return(0,Z.jsx)(`div`,{...ee.containerHandlers,children:(0,Z.jsxs)(un,{children:[(0,Z.jsx)(dn,{asChild:!0,children:(0,Z.jsxs)(`button`,{ref:j,...ee.entrySource,onClick:M,className:G(`flex items-center w-full gap-1.5 px-2 py-1 rounded-[var(--rad-sm)] text-[13px]`,`min-h-[32px] md:min-h-[26px] hover:bg-surface-elevated transition-colors text-left`,`select-none`,(D||O)&&`opacity-40`,k&&`bg-surface-elevated`,E&&`bg-accent-wash`,ee.isDragOver&&`ring-1 ring-dashed ring-primary bg-primary/10`),style:{paddingLeft:`${l*16+8}px`},children:[S?A?(0,Z.jsx)(z,{className:`size-3.5 shrink-0 text-text-subtle animate-spin`}):T?(0,Z.jsx)(Se,{className:`size-3.5 shrink-0 text-text-subtle`}):(0,Z.jsx)(Ce,{className:`size-3.5 shrink-0 text-text-subtle`}):(0,Z.jsx)(`span`,{className:`w-3.5 shrink-0`}),(0,Z.jsx)(N,{className:G(`size-4 shrink-0`,P??`text-text-secondary`)}),(0,Z.jsx)(`span`,{className:G(`truncate`,w??(E?`text-text`:S&&T?`text-text font-medium`:`text-text-2`)),children:c}),C&&!S&&(0,Z.jsx)(`span`,{className:G(`text-[10px] ml-auto shrink-0 font-mono`,w),children:C})]})}),(0,Z.jsx)(Kl,{node:o,isDir:S,projectName:t,selectedFiles:m,compareSelection:x,clipboard:g,onAction:n})]})})});function rd({defaultValue:e,placeholder:t,depth:n,icon:r,onConfirm:i,onCancel:a}){let[o,s]=(0,X.useState)(e),[c,l]=(0,X.useState)(null),[u,d]=(0,X.useState)(!1),f=(0,X.useRef)(null),p=(0,X.useRef)(!1);(0,X.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,X.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`?cr:ir;return(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`div`,{className:G(`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,Z.jsx)(`span`,{className:`w-3.5 shrink-0`}),(0,Z.jsx)(_,{className:`size-4 shrink-0 text-text-secondary`}),(0,Z.jsx)(`input`,{ref:f,value:o,onChange:e=>{s(e.target.value),l(null)},onKeyDown:h,onBlur:g,placeholder:t,disabled:u,className:G(`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,Z.jsx)(`p`,{className:`text-[10px] text-destructive truncate`,style:{paddingLeft:`${n*16+8+14+22}px`},children:c})]})}var id=6e4,ad=null,od=null,sd=new Set;function cd(){return ad&&Date.now()-ad.at<id?Promise.resolve(ad.value):od||(od=V.get(`/api/system/host`).then(e=>{ad={at:Date.now(),value:e};for(let t of sd)t(e);return e}).finally(()=>{od=null}),od)}function ld(){let[e,t]=(0,X.useState)(()=>({host:ad?.value??null,loading:ad==null,error:null}));return(0,X.useEffect)(()=>{let e=!0,n=n=>{e&&t({host:n,loading:!1,error:null})};return sd.add(n),cd().then(n).catch(n=>{e&&t({host:null,loading:!1,error:n instanceof Error?n.message:`Failed to read host info`})}),()=>{e=!1,sd.delete(n)}},[]),e}function ud(){return cd()}function dd(){return ad?.value.homedir??null}var fd=`mobile`,pd=Ye(e=>({isOpen:!1,selectMode:!1,close:()=>e({isOpen:!1,selectMode:!1}),setSelectMode:t=>e({selectMode:t})}));async function md(e){let t=Ql.getState(),n=t.slices[fd],r=e??n?.path??dd();if(!r)try{r=(await ud()).homedir}catch{return}n?e&&n.path!==e&&t.patch(fd,{path:r,history:[r],historyIndex:0,selection:new Set,anchor:null,filter:``,inlineEdit:null}):t.ensure(fd,r),pd.setState({isOpen:!0,selectMode:!1})}async function hd(e){if(Kt())return await md(e),fd;let t=e??dd();if(!t)try{t=(await ud()).homedir}catch{return null}return gt.getState().open(`explorer`,{path:t})}function gd(e,t){let n=Ze(e)||e;return K.getState().openInDock({type:`terminal`,title:n,projectId:t??null,closable:!0,metadata:{cwd:e,...t?{projectName:t}:{}}})}var _d=48,vd=16;function yd(e){if(e>=_d)return 0;let t=Math.min(1,Math.max(0,(_d-e)/_d));return Math.ceil(t*vd)}function bd(e){(0,X.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=yd(e.clientY-i.top),s=yd(i.bottom-e.clientY),c=yd(e.clientX-i.left);r={x:yd(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 xd(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`,Cu.uploadUrl(e,n));let c=Je();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 yu(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 Sd(e){return e instanceof yu?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 Cd(e){return e.every(e=>e.state!==`queued`&&e.state!==`uploading`)}var wd=Ye((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:Cd(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 Td(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 Ed=3;function Dd(e){return e.split(`/`).pop()??e}function Od(e,t,n){return Au(e,t.split(`/`).join(n),n)}async function kd(e,t,n,r,i,a){let o=Od(t,e.relativePath,n);try{return await xd(o,e.file,!1,e=>a(e.loaded),i),`done`}catch(e){if(!(e instanceof yu)||e.code!==`EEXIST`)throw e}let s=Dd(e.relativePath),c=await r.resolve({name:s,destination:o});if(c===`skip`)return`skipped`;if(c===`keep-both`){let t=ku(o,n),r=await Pu(t,s,n);if(!r)throw Error(`No free name available`);return await xd(Au(t,r,n),e.file,!1,e=>a(e.loaded),i),`done`}try{await Cu.remove(o,!1)}catch(t){if(t instanceof yu&&t.code===`ENOENT`)return await xd(o,e.file,!0,e=>a(e.loaded),i),`done`;if(!(t instanceof yu)||t.code!==`NO_TRASH`)throw t;if(!await r.confirmPermanentOverwrite(s))return`skipped`;await Cu.remove(o,!0)}return await xd(o,e.file,!0,e=>a(e.loaded),i),`done`}async function Ad(e,t,n,r){if(e.length===0)return;let i=crypto.randomUUID(),a=wd.getState();a.addBatch(i,t,e.map((e,t)=>({id:String(t),name:Dd(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 Td(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 kd(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:Sd(e)),e}}}}),Ed,()=>{})}finally{r.endBatch?.(),eu(t)}}var jd=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()}}},Md=class{core;stickyChoice=null;activeBatches=0;constructor(e){this.core=new jd(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 Nd(){let[e,t]=(0,X.useState)(0),[n,r]=(0,X.useState)(!1),i=(0,X.useRef)(null);i.current||=new Md(()=>t(e=>e+1));let a=i.current;return(0,X.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 Pd(){let[e,t]=(0,X.useState)(0),n=(0,X.useRef)(null);n.current||=new jd(()=>t(e=>e+1));let r=n.current;return(0,X.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 Fd({open:e,onClose:t,title:n,description:r,children:i,footer:a,className:o}){return Gt()?(0,Z.jsx)(on,{open:e,onClose:t,className:`p-4`,children:(0,Z.jsxs)(`div`,{className:G(`space-y-3`,o),children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-text`,children:n}),r&&(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-2`,children:r})]}),(0,Z.jsx)(`div`,{className:`max-h-[50vh] overflow-y-auto`,children:i}),a&&(0,Z.jsx)(`div`,{className:`flex flex-col gap-2 pt-1`,children:a})]})}):(0,Z.jsx)(nn,{open:e,onOpenChange:e=>{e||t()},children:(0,Z.jsxs)(Qt,{className:G(`sm:max-w-md`,o),children:[(0,Z.jsxs)(Xt,{children:[(0,Z.jsx)($t,{children:n}),r&&(0,Z.jsx)(en,{children:r})]}),(0,Z.jsx)(`div`,{className:`max-h-[60vh] overflow-y-auto`,children:i}),a&&(0,Z.jsx)(`div`,{className:`flex justify-end gap-2 pt-2`,children:a})]})})}var Id={file:`File`,directory:`Folder`,symlink:`Symbolic link`,unknown:`Unknown`};function Ld({label:e,value:t}){return t?(0,Z.jsxs)(`div`,{className:`grid grid-cols-[7rem_1fr] gap-2 py-1 text-sm`,children:[(0,Z.jsx)(`span`,{className:`text-text-2`,children:e}),(0,Z.jsx)(`span`,{className:`break-all text-text`,children:t})]}):null}function Rd({entry:e,platform:t,sep:n,onClose:r}){let[i,a]=(0,X.useState)(null),[o,s]=(0,X.useState)(null);(0,X.useEffect)(()=>{let t=!0,n=new AbortController;return a(null),s(null),Cu.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`}`:`${Tu(i.size)} (${i.size.toLocaleString()} bytes)`:``,l=i?t===`win32`?i.readonly?`Read-only`:`Read / write`:`${Ou(i.mode)}${i.readonly?` (read-only)`:``}`:``;return(0,Z.jsxs)(Fd,{open:!0,onClose:r,title:e.name,description:`Properties`,footer:(0,Z.jsx)(Y,{variant:`outline`,onClick:r,children:`Close`}),children:[o&&(0,Z.jsx)(`p`,{className:`py-2 text-sm text-error`,children:o}),!i&&!o&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 py-4 text-sm text-text-2`,children:[(0,Z.jsx)(z,{className:`size-4 animate-spin`}),` Reading…`]}),i&&(0,Z.jsxs)(`div`,{className:`divide-y divide-border`,children:[(0,Z.jsx)(Ld,{label:`Name`,value:i.name}),(0,Z.jsx)(Ld,{label:`Kind`,value:Id[i.kind]}),(0,Z.jsx)(Ld,{label:`Location`,value:ku(i.path,n)}),(0,Z.jsx)(Ld,{label:i.kind===`directory`?`Contains`:`Size`,value:c}),(0,Z.jsx)(Ld,{label:`Created`,value:Du(i.birthtime)}),(0,Z.jsx)(Ld,{label:`Modified`,value:Du(i.mtime)}),(0,Z.jsx)(Ld,{label:`Permissions`,value:l}),(0,Z.jsx)(Ld,{label:`Hidden`,value:i.isHidden?`Yes`:``}),(0,Z.jsx)(Ld,{label:`Links to`,value:i.target??``})]})]})}function zd({dialogs:e,platform:t,sep:n}){let{collision:r,pendingDelete:i,permanentOverwrite:a,properties:o}=e;return(0,Z.jsxs)(Z.Fragment,{children:[e.uploadInputs,r&&(0,Z.jsxs)(Fd,{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,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Y,{variant:`outline`,onClick:()=>r.resolve(`skip`),children:`Skip`}),(0,Z.jsx)(Y,{variant:`outline`,onClick:()=>r.resolve(`keep-both`),children:`Keep both`}),(0,Z.jsx)(Y,{variant:`destructive`,onClick:()=>r.resolve(`replace`),children:`Replace`})]}),children:[(0,Z.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,Z.jsxs)(`label`,{className:`flex min-h-11 items-center gap-2 text-sm text-text-2`,children:[(0,Z.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,Z.jsx)(Fd,{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,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Y,{variant:`outline`,onClick:e.closeDelete,children:`Cancel`}),(0,Z.jsx)(Y,{variant:`destructive`,onClick:e.runPermanentDelete,children:`Delete permanently`})]}),children:(0,Z.jsxs)(`ul`,{className:`space-y-0.5 py-1 text-sm text-text-2`,children:[i.names.slice(0,10).map(e=>(0,Z.jsx)(`li`,{className:`truncate`,children:e},e)),i.names.length>10&&(0,Z.jsxs)(`li`,{className:`text-text-subtle`,children:[`and `,i.names.length-10,` more…`]})]})}),a&&(0,Z.jsx)(Fd,{open:!0,onClose:()=>a.resolve(!1),title:`This host has no Trash`,description:a.name,footer:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Y,{variant:`outline`,onClick:()=>a.resolve(!1),children:`Cancel`}),(0,Z.jsx)(Y,{variant:`destructive`,onClick:()=>a.resolve(!0),children:`Delete permanently`})]}),children:(0,Z.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,Z.jsx)(Rd,{entry:o,platform:t,sep:n,onClose:e.closeProperties})]})}function Bd(e,t){let n=Nd(),r=Pd(),i=(0,X.useRef)(e);(0,X.useEffect)(()=>{i.current=e},[e]);let a=(0,X.useRef)(n);a.current=n;let o=(0,X.useRef)(r);o.current=r;let s=(0,X.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,X.useMemo)(()=>Vu(s),[s]),uploadRun:(0,X.useMemo)(()=>(e,t)=>Ad(e,t,i.current,s),[s]),prompts:(0,Z.jsx)(zd,{dialogs:{collision:n.state,permanentOverwrite:r.state,pendingDelete:null,properties:null,inlineError:null,closeDelete:()=>{},runPermanentDelete:()=>{},closeProperties:()=>{},uploadInputs:null},platform:t,sep:e})}}function Vd(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 Hd(e){return new Promise((t,n)=>e.file(t,n))}function Ud(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 Wd(e,t){if(e.isFile){let n=Vd(e.fullPath);if(!n)return;t.push({file:await Hd(e),relativePath:n});return}if(e.isDirectory){let n=e.createReader();for(let e of await Ud(n))await Wd(e,t)}}async function Gd(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 Wd(n,e);return e}let n=[];for(let t of Array.from(e.files)){let e=Vd(t.name);e&&n.push({file:t,relativePath:e})}return n}function Kd(e){let{targetDir:t,onFiles:n,disabled:r}=e,[i,a]=(0,X.useState)(!1),o=(0,X.useRef)(0),s=(0,X.useCallback)(()=>{o.current=0,a(!1)},[]),c=(0,X.useCallback)(e=>!r&&t!=null&&Qu(e),[r,t]);return{isOver:i,handlers:{onDragEnter:(0,X.useCallback)(e=>{c(e)&&(e.preventDefault(),e.stopPropagation(),o.current++,a(!0))},[c]),onDragOver:(0,X.useCallback)(e=>{c(e)&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect=`copy`)},[c]),onDragLeave:(0,X.useCallback)(e=>{o.current!==0&&(e.stopPropagation(),o.current--,o.current===0&&a(!1))},[]),onDrop:(0,X.useCallback)(e=>{if(!c(e)||t==null)return;e.preventDefault(),e.stopPropagation();let r=e.dataTransfer;s(),Gd(r).then(e=>{e.length>0&&n(e,t)})},[c,t,n,s])}}}function qd(){}function Jd(e){let{targetDir:t,run:n,springLoad:r,disabled:i,onFiles:a}=e,o=Zu({targetDir:t,onDropEntries:(0,X.useCallback)((e,t,r)=>{Bu(e,r,t,n)},[n]),springLoad:r,disabled:i}),s=Kd({targetDir:t,onFiles:a??qd,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 Yd({projectName:e,setExpanded:t}){let[n,r]=(0,X.useState)(!1),i=(0,X.useRef)(0),a=(0,X.useCallback)(async(n,r)=>{if(!e)return;let i=r.length,a=i===1?r[0].name:`${i} files`,o=H.loading(`Uploading ${a}…`),s=new FormData;s.append(`targetDir`,n);for(let e of r)s.append(`files`,e);let c={},l=Je();l&&(c.Authorization=`Bearer ${l}`);try{let r=await fetch(`${B(e)}/files/upload`,{method:`POST`,headers:c,body:s});if(!r.ok){let e=await r.json();H.error(`Upload failed: ${e.error??`Unknown error`}`,{id:o});return}H.success(`Uploaded ${a}`,{id:o});let i=wt.getState();i.loadedPaths.has(n)&&await i.invalidateFolder(e,n),n&&t(n,!0)}catch(e){H.error(e instanceof Error?e.message:`Upload failed`,{id:o})}},[e,t]);function o(e){let t=Qu(e);t&&(e.preventDefault(),gu(i,t)&&r(!0))}function s(e){_u(i,Qu(e))&&r(!1)}function c(e){Qu(e)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`)}function l(e){Qu(e)&&(e.preventDefault(),vu(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 Xd({tree:e,expandedPaths:t,focusedPath:n,setFocusedPath:r,setExpanded:i,toggleExpand:a,projectName:o,onAction:s}){let c=(0,X.useMemo)(()=>xt(e,t),[e,t]),l=(0,X.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 Zd={name:``,path:``,type:`directory`};function Qd(e){return e.includes(`/`)?e.slice(0,e.lastIndexOf(`/`)):``}function $d({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}=wt(rn(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=q(e=>e.activeProject),T=J(e=>e.openTab),[E,D]=(0,X.useState)(null),O=(0,X.useCallback)(()=>{w&&(l(),i(w.name),a(w.name))},[w,l,i,a]),k=(0,X.useCallback)(async()=>{if(!w)return;let{tabs:e,activeTabId:t}=J.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,X.useCallback)(async e=>{if(!w||!_)return;let t=w.name,n=w.path,r=n.includes(`\\`)?`\\`:`/`,i=_.operation===`cut`?`move`:`copy`,a=new Set([Dt(n,e)]);for(let o of _.paths){let s=o.split(/[/\\]/).filter(Boolean).pop()??o,c=St(n,o);a.add(ku(o,r));try{if(c!=null){let n=e?`${e}/${s}`:s;await V.post(`${B(t)}/files/${i}`,{source:c,destination:n})}else{let t=Dt(n,e?`${e}/${s}`:s);await V.post(`/api/fs/${i}`,{source:o,destination:t})}}catch(e){H.error(e instanceof Error?e.message:`Failed to ${i}`)}}_.operation===`cut`&&v(null),eu(...a),O()},[w,_,v,O]),j=(0,X.useRef)(null),M=(0,X.useCallback)((e,t)=>{if(!w)return;let n=w.path;v({paths:e.map(e=>Dt(n,e)),operation:t,origin:{projectName:w.name,root:n}})},[w,v]),ee=(0,X.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(),M(u,e.key===`x`?`cut`:`copy`)):e.key===`v`&&_&&(e.preventDefault(),A(``)))},[w,u,_,v,A]),{handleTreeKeyDown:N}=Xd({tree:t,expandedPaths:S,focusedPath:b,setFocusedPath:x,setExpanded:f,toggleExpand:C,projectName:w?.name,onAction:de});(0,X.useEffect)(()=>{if(!w)return;l();let e=w.name,t=Tt(e);wt.setState({expandedPaths:new Set([``,...t])}),t.length>0?wt.getState().loadPathsBatch(e,[``,...t]):i(e),a(e)},[w?.name]),(0,X.useEffect)(()=>{w&&bt(w.name,wt.getState().expandedPaths)},[S,w?.name]),(0,X.useEffect)(()=>{if(!w)return;let e=w.name,t,n=n=>{let r=n.detail;r.projectName===e&&(clearTimeout(t),t=setTimeout(()=>{let t=wt.getState(),n=r.path??``,i=n.includes(`/`)?n.slice(0,n.lastIndexOf(`/`)):``;t.invalidateIndex(),t.loadIndex(e),t.invalidateFolder(e,i)},300))};return window.addEventListener(`file:changed`,n),()=>{clearTimeout(t),window.removeEventListener(`file:changed`,n)}},[w]),(0,X.useEffect)(()=>{if(!w)return;let e=w.name,t=w.path;return tu(n=>{let r=St(t,n);if(r==null)return;let i=wt.getState();i.invalidateIndex(),i.loadIndex(e),i.invalidateFolder(e,r)})},[w]);let{uploadFiles:P,isRootDragOver:F,handleRootDragEnter:I,handleRootDragLeave:te,handleRootDragOver:ne,handleRootDrop:re}=Yd({projectName:w?.name,setExpanded:f}),{run:ie,prompts:L}=Bd(w?.path.includes(`\\`)?`\\`:`/`),ae=Jd({targetDir:w?.path??null,run:ie,disabled:!w}),oe=(0,X.useMemo)(()=>Et(t,S,m),[t,S,m]),se=(0,X.useRef)(null);bd(se);let ce=Gt(),le=Fl({count:oe.length,getScrollElement:()=>se.current,estimateSize:()=>ce?32:26,overscan:10,paddingStart:4,paddingEnd:4});(0,X.useEffect)(()=>{if(b==null)return;let e=oe.findIndex(e=>e.kind===`node`&&(e.node.path===b||e.effectiveNode.path===b));e>=0&&le.scrollToIndex(e,{align:`auto`})},[b]);let ue=(0,X.useCallback)(async(e,t)=>{let n=w.name,r=wt.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 V.post(`${B(n)}/files/rename`,{oldPath:i.path,newPath:o}),g(),r.invalidateIndex(),r.loadIndex(n),r.invalidateFolder(n,a),eu(Dt(w.path,a))}else{let i=e.inline.type===`new-file`?`file`:`directory`,a=e.targetPath?`${e.targetPath}/${t}`:t;await V.post(`${B(n)}/files/create`,{path:a,type:i}),g(),r.invalidateIndex(),r.loadIndex(n),r.invalidateFolder(n,e.targetPath),eu(Dt(w.path,e.targetPath))}},[w,g]);async function de(t,n){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`){M(u.length>0&&u.includes(n.path)?[...u]:[n.path],t===`cut`?`cut`:`copy`);return}if(t===`open-in-file-explorer`){let e=n.type===`directory`?n.path:Qd(n.path);hd(Dt(w.path,e));return}if(t===`open-in-terminal`){let e=n.type===`directory`?n.path:Qd(n.path);gd(Dt(w.path,e),w.name);return}if(t===`paste`&&n.type===`directory`){A(n.path);return}if(t===`copy-path`){Jt(n.path);return}if(t===`copy-full-path`){let e=w?.path;Jt(e?`${e}/${n.path}`:n.path);return}if(t===`select-for-compare`){Bo.getState().setSelection({filePath:n.path,projectName:w.name,label:n.name});return}if(t===`compare-with-selected`){let e=Bo.getState().selection;if(!e)return;try{await Ho({path:e.filePath,dirtyContent:e.dirtyContent},{path:n.path},w.name),Bo.getState().clearSelection()}catch(e){let t=e instanceof Error?e.message:`Compare failed`;H.error(t)}return}if(t===`download`){n.type===`directory`?fc(w.name,n.path):dc(w.name,n.path);return}if(t===`compare-selected`&&u.length===2){let e=u[0],t=u[1];T({type:`git-diff`,title:`Compare ${Ze(e)} vs ${Ze(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})}if(!w)return(0,Z.jsx)(`div`,{className:`p-3 text-xs text-text-subtle`,children:`Select a project to browse files.`});if(n&&t.length===0)return(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 p-3 text-xs text-text-secondary`,children:[(0,Z.jsx)(z,{className:`size-3 animate-spin`}),`Loading files...`]});if(r)return(0,Z.jsxs)(`div`,{className:`p-3 text-xs text-error`,children:[r,(0,Z.jsx)(`button`,{onClick:O,className:`block mt-1 text-primary underline`,children:`Retry`})]});let fe=`flex size-6 items-center justify-center rounded text-text-subtle hover:bg-surface-elevated hover:text-foreground`;return(0,Z.jsxs)(`div`,{ref:j,className:G(`flex flex-col h-full outline-none`,(F||ae.isOver)&&`bg-primary/5`),tabIndex:0,onKeyDown:e=>{ee(e),N(e)},onDragEnter:e=>{I(e),ae.handlers.onDragEnter(e)},onDragLeave:e=>{te(e),ae.handlers.onDragLeave(e)},onDragOver:e=>{ne(e),ae.handlers.onDragOver(e)},onDrop:e=>{re(e),ae.handlers.onDrop(e)},children:[(0,Z.jsxs)(Il,{icon:ar,title:`Explorer`,children:[(0,Z.jsx)(`button`,{onClick:()=>de(`new-file`,Zd),title:`New File`,className:fe,children:(0,Z.jsx)(er,{className:`size-3.5`})}),(0,Z.jsx)(`button`,{onClick:()=>de(`new-folder`,Zd),title:`New Folder`,className:fe,children:(0,Z.jsx)(or,{className:`size-3.5`})}),(0,Z.jsx)(`button`,{onClick:k,title:`Reveal Active File`,className:fe,children:(0,Z.jsx)(Gn,{className:`size-3.5`})}),(0,Z.jsx)(`button`,{onClick:y,title:`Collapse All`,className:fe,children:(0,Z.jsx)(Pn,{className:`size-3.5`})}),(0,Z.jsx)(`button`,{onClick:O,title:`Refresh`,className:fe,children:(0,Z.jsx)(Ve,{className:`size-3.5`})})]}),(0,Z.jsxs)(un,{children:[(0,Z.jsx)(dn,{asChild:!0,children:(0,Z.jsx)(`div`,{ref:se,className:`flex-1 overflow-y-auto`,children:(0,Z.jsxs)(`div`,{className:`relative w-full`,style:{height:le.getTotalSize()},children:[le.getVirtualItems().map(t=>{let n=oe[t.index];return(0,Z.jsx)(`div`,{"data-index":t.index,ref:le.measureElement,className:`absolute left-0 top-0 w-full`,style:{transform:`translateY(${t.start}px)`},children:n.kind===`input`?(0,Z.jsx)(rd,{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=>ue(n,e),onCancel:g}):(0,Z.jsx)(nd,{row:n,projectName:w.name,onAction:de,onFileDrop:P,onFileOpen:e,transferRun:ie})},n.kind===`node`?n.node.path:`input:${n.targetPath}:${n.inline.type}`)}),oe.length===0&&(0,Z.jsx)(`p`,{className:`p-3 text-xs text-text-subtle`,children:`Empty project.`})]})})}),(0,Z.jsxs)(sn,{children:[(0,Z.jsxs)(ln,{onClick:()=>de(`new-file`,Zd),children:[(0,Z.jsx)(er,{className:`size-3.5 mr-2`}),`New File`]}),(0,Z.jsxs)(ln,{onClick:()=>de(`new-folder`,Zd),children:[(0,Z.jsx)(or,{className:`size-3.5 mr-2`}),`New Folder`]}),(0,Z.jsx)(cn,{}),(0,Z.jsxs)(ln,{onClick:O,children:[(0,Z.jsx)(Ve,{className:`size-3.5 mr-2`}),`Refresh`]})]})]}),E?.action===`delete`&&(0,Z.jsx)(mc,{node:E.node,projectName:w.name,onClose:()=>D(null),onRefresh:()=>{eu(Dt(w.path,Qd(E.node.path))),O()}}),L]})}function ef({open:e,onOpenChange:t,projectName:n,onCreated:r}){let[i,a]=(0,X.useState)(``),[o,s]=(0,X.useState)(`new`),[c,l]=(0,X.useState)(``),[u,d]=(0,X.useState)(``),[f,p]=(0,X.useState)([]),[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(null);(0,X.useEffect)(()=>{!e||!n||V.get(`${B(n)}/git/branches`).then(e=>{let t=e.filter(e=>!e.remote).map(e=>e.name);p(t),t.length>0&&!u&&d(t[0])}).catch(()=>p([]))},[e,n]);function v(){a(``),s(`new`),l(``),_(null)}function y(){v(),t(!1)}async function b(){if(!i.trim()){_(`Worktree path is required`);return}let e=o===`existing`?u:void 0,t=o===`new`&&c.trim()?c.trim():void 0;h(!0),_(null);try{await V.post(`${B(n)}/git/worktree/add`,{path:i.trim(),branch:e,newBranch:t}),r(),y()}catch(e){_(e instanceof Error?e.message:`Failed to create worktree`)}finally{h(!1)}}let x=(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[g&&(0,Z.jsx)(`p`,{className:`text-xs text-destructive bg-destructive/10 px-3 py-2 rounded-md`,children:g}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(le,{htmlFor:`wt-path`,children:`Worktree Path`}),(0,Z.jsx)(fn,{id:`wt-path`,placeholder:`../my-feature`,value:i,onChange:e=>a(e.target.value),autoFocus:!0,className:`w-full`}),(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Relative or absolute path for the new worktree directory`})]}),(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(le,{children:`Branch`}),(0,Z.jsxs)(`div`,{className:`flex gap-3`,children:[(0,Z.jsxs)(`label`,{className:`flex items-center gap-2 cursor-pointer`,children:[(0,Z.jsx)(`input`,{type:`radio`,checked:o===`new`,onChange:()=>s(`new`),className:`accent-primary`}),(0,Z.jsx)(`span`,{className:`text-sm`,children:`Create new branch`})]}),(0,Z.jsxs)(`label`,{className:`flex items-center gap-2 cursor-pointer`,children:[(0,Z.jsx)(`input`,{type:`radio`,checked:o===`existing`,onChange:()=>s(`existing`),className:`accent-primary`}),(0,Z.jsx)(`span`,{className:`text-sm`,children:`Use existing branch`})]})]}),o===`new`?(0,Z.jsx)(fn,{placeholder:`feature/my-branch`,value:c,onChange:e=>l(e.target.value),className:`w-full`}):(0,Z.jsxs)(`select`,{value:u,onChange:e=>d(e.target.value),className:`w-full h-9 px-3 rounded-md border border-input bg-transparent text-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:[f.length===0&&(0,Z.jsx)(`option`,{value:``,children:`No branches available`}),f.map(e=>(0,Z.jsx)(`option`,{value:e,children:e},e))]})]})]}),S=(0,Z.jsxs)(`div`,{className:`flex gap-2 justify-end pt-2`,children:[(0,Z.jsx)(Y,{variant:`outline`,size:`sm`,onClick:y,disabled:m,children:`Cancel`}),(0,Z.jsxs)(Y,{size:`sm`,onClick:b,disabled:m||!i.trim(),children:[m?(0,Z.jsx)(z,{className:`size-3 animate-spin mr-1`}):null,`Create Worktree`]})]});return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(nn,{open:e,onOpenChange:e=>{e||y()},children:(0,Z.jsxs)(Qt,{className:`hidden md:grid sm:max-w-md`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:`Add Worktree`})}),x,(0,Z.jsx)(Zt,{children:S})]})}),e&&(0,Z.jsxs)(`div`,{className:`md:hidden`,children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 z-50 bg-black/50`,onClick:y}),(0,Z.jsxs)(`div`,{className:G(`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,Z.jsx)(`div`,{className:`flex justify-center pt-3 pb-1`,children:(0,Z.jsx)(`div`,{className:`w-10 h-1 rounded-full bg-border`})}),(0,Z.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 border-b border-border`,children:[(0,Z.jsx)(`span`,{className:`text-sm font-semibold`,children:`Add Worktree`}),(0,Z.jsx)(`button`,{onClick:y,className:`flex items-center justify-center size-7 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,Z.jsx)(Ge,{className:`size-4`})})]}),(0,Z.jsxs)(`div`,{className:`px-4 py-4 space-y-4 max-h-[70vh] overflow-y-auto`,children:[x,S]})]})]})]})}function tf({projectName:e,projectPath:t}){let[n,r]=(0,X.useState)(!1),[i,a]=(0,X.useState)([]),[o,s]=(0,X.useState)(!1),[c,l]=(0,X.useState)(null),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)(null),[m,h]=(0,X.useState)(!1),g=(0,X.useCallback)(async()=>{if(e){s(!0),l(null);try{a(await V.get(`${B(e)}/git/worktrees`))}catch(e){l(e instanceof Error?e.message:`Failed to load worktrees`)}finally{s(!1)}}},[e]);(0,X.useEffect)(()=>{n&&g()},[n,g]);async function _(t=!1){if(f){h(!0);try{await V.post(`${B(e)}/git/worktree/remove`,{path:f.path,force:t}),p(null),await g()}catch(e){l(e instanceof Error?e.message:`Failed to remove worktree`),p(null)}finally{h(!1)}}}async function v(){try{await V.post(`${B(e)}/git/worktree/prune`,{}),await g()}catch(e){l(e instanceof Error?e.message:`Prune failed`)}}return(0,Z.jsxs)(`div`,{className:`border-t border-border`,children:[(0,Z.jsxs)(`button`,{type:`button`,className:`flex items-center justify-between w-full px-3 py-2 hover:bg-muted/50 transition-colors`,onClick:()=>r(e=>!e),children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[n?(0,Z.jsx)(Se,{className:`size-3.5 text-muted-foreground`}):(0,Z.jsx)(Ce,{className:`size-3.5 text-muted-foreground`}),(0,Z.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase`,children:`Worktrees`}),i.length>0&&(0,Z.jsx)(`span`,{className:`text-[10px] bg-muted text-muted-foreground rounded px-1`,children:i.length})]}),(0,Z.jsx)(`div`,{className:`flex items-center gap-0.5`,children:n&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.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(),v()},onKeyDown:e=>{e.key===`Enter`&&(e.stopPropagation(),v())},title:`Prune stale worktrees`,"aria-label":`Prune stale worktrees`,children:(0,Z.jsx)(Ve,{className:G(`size-3`,o&&`animate-spin`)})}),(0,Z.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(),d(!0)},onKeyDown:e=>{e.key===`Enter`&&(e.stopPropagation(),d(!0))},title:`Add worktree`,"aria-label":`Add worktree`,children:(0,Z.jsx)(R,{className:`size-3`})})]})})]}),n&&(0,Z.jsxs)(`div`,{className:`pb-1`,children:[c&&(0,Z.jsx)(`p`,{className:`text-xs text-destructive px-3 py-1`,children:c}),o&&i.length===0&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 text-muted-foreground`,children:[(0,Z.jsx)(z,{className:`size-3.5 animate-spin`}),(0,Z.jsx)(`span`,{className:`text-xs`,children:`Loading worktrees...`})]}),!o&&i.length===0&&!c&&(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground px-3 py-1`,children:`No worktrees found.`}),i.map(e=>(0,Z.jsx)(nf,{worktree:e,isActive:!!t&&e.path===t,onRemove:()=>p(e)},e.path)),(0,Z.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:()=>d(!0),children:[(0,Z.jsx)(R,{className:`size-3.5`}),`Add worktree`]})]}),(0,Z.jsx)(ef,{open:u,onOpenChange:d,projectName:e,onCreated:g}),(0,Z.jsx)(nn,{open:!!f,onOpenChange:e=>!e&&p(null),children:(0,Z.jsxs)(Qt,{showCloseButton:!1,children:[(0,Z.jsxs)(Xt,{children:[(0,Z.jsx)($t,{children:`Remove Worktree`}),(0,Z.jsxs)(en,{children:[`Remove worktree at`,` `,(0,Z.jsx)(`code`,{className:`px-1 py-0.5 rounded bg-muted text-xs font-mono`,children:f?.path}),f?.branch&&(0,Z.jsxs)(Z.Fragment,{children:[` (branch: `,(0,Z.jsx)(`strong`,{children:f.branch}),`)`]}),`? The directory will be deleted.`]})]}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(Y,{variant:`outline`,size:`sm`,onClick:()=>p(null),disabled:m,children:`Cancel`}),(0,Z.jsx)(Y,{variant:`outline`,size:`sm`,onClick:()=>_(!0),disabled:m,children:m?(0,Z.jsx)(z,{className:`size-3 animate-spin`}):`Force Remove`}),(0,Z.jsx)(Y,{variant:`destructive`,size:`sm`,onClick:()=>_(!1),disabled:m,children:m?(0,Z.jsx)(z,{className:`size-3 animate-spin`}):`Remove`})]})]})})]})}function nf({worktree:e,isActive:t,onRemove:n}){let r=e.branch||e.head.slice(0,7)||`detached`,i=e.path.replace(/^\/home\/[^/]+/,`~`);return(0,Z.jsxs)(`div`,{className:G(`group flex items-center gap-2 px-3 py-1.5 hover:bg-muted/50 transition-colors`,t&&`bg-accent/10`),children:[(0,Z.jsx)(lr,{className:`size-3.5 text-muted-foreground shrink-0`}),(0,Z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 min-w-0`,children:[(0,Z.jsx)(`span`,{className:`text-xs font-mono truncate`,title:e.branch,children:r}),t&&(0,Z.jsx)(me,{className:`size-3 text-success shrink-0`}),e.isMain&&(0,Z.jsx)(`span`,{className:`text-[10px] bg-muted text-muted-foreground rounded px-1 shrink-0`,children:`main`}),e.locked&&(0,Z.jsx)(`span`,{title:e.lockReason??`locked`,children:(0,Z.jsx)(Re,{className:`size-3 text-warning shrink-0`})}),e.prunable&&(0,Z.jsx)(`span`,{title:`stale/prunable`,children:(0,Z.jsx)(Ln,{className:`size-3 text-destructive shrink-0`})})]}),(0,Z.jsx)(`p`,{className:`text-[10px] text-muted-foreground truncate`,title:e.path,children:i})]}),!e.isMain&&(0,Z.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,Z.jsx)(Ue,{className:`size-3`})})]})}var rf={M:`text-warning`,A:`text-success`,D:`text-error`,R:`text-primary`,C:`text-accent-2`,"?":`text-text-3`};function af(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 of(e){let t=[];e.file&&t.push(e.file);for(let n of e.children)t.push(...of(n));return t}function sf({metadata:e,tabId:t,onNavigate:n}){let r=e?.projectName,[i,a]=(0,X.useState)(null),[o,s]=(0,X.useState)(!0),[c,l]=(0,X.useState)(null),[u,d]=(0,X.useState)(``),[f,p]=(0,X.useState)(!1),[m,h]=(0,X.useState)(null),{openTab:g}=J(rn(e=>({openTab:e.openTab}))),_=W(e=>e.gitStatusViewMode),v=W(e=>e.setGitStatusViewMode),y=q(e=>e.projects.find(e=>e.name===r)?.path),b=Bl(e=>e.setCount),x=jt(e=>e.contributions?.commands?.some(e=>e.command===`git-graph.view`)??!1),S=(0,X.useCallback)(async()=>{if(r)try{s(!0);let e=await V.get(`${B(r)}/git/status`);a(e),b(r,e.staged.length+e.unstaged.length+e.untracked.length),Bl.getState().setMeta(r,e),l(null)}catch(e){l(e instanceof Error?e.message:`Failed to fetch status`)}finally{s(!1)}},[r,b]);(0,X.useEffect)(()=>{S();let e=setInterval(S,5e3);return()=>clearInterval(e)},[S]);let C=async e=>{if(r){p(!0);try{await V.post(`${B(r)}/git/stage`,{files:e}),await S()}catch(e){l(e instanceof Error?e.message:`Stage failed`)}finally{p(!1)}}},w=async e=>{if(r){p(!0);try{await V.post(`${B(r)}/git/unstage`,{files:e}),await S()}catch(e){l(e instanceof Error?e.message:`Unstage failed`)}finally{p(!1)}}},T=async e=>{if(r){p(!0);try{await V.post(`${B(r)}/git/discard`,{files:e}),await S()}catch(e){l(e instanceof Error?e.message:`Discard failed`)}finally{p(!1)}}},E=async()=>{m&&(await T(m.files),h(null))},D=async()=>{if(!(!r||!u.trim()||!i?.staged.length)){p(!0);try{await V.post(`${B(r)}/git/commit`,{message:u.trim()}),d(``),await S()}catch(e){l(e instanceof Error?e.message:`Commit failed`)}finally{p(!1)}}},O=async()=>{if(r){p(!0);try{await V.post(`${B(r)}/git/push`,{}),await S()}catch(e){l(e instanceof Error?e.message:`Push failed`)}finally{p(!1)}}},k=async()=>{if(r){p(!0);try{await V.post(`${B(r)}/git/pull`,{}),await S()}catch(e){l(e instanceof Error?e.message:`Pull failed`)}finally{p(!1)}}},A=async()=>{if(r){p(!0);try{await V.post(`${B(r)}/git/commit`,{message:u.trim(),amend:!0}),d(``),await S()}catch(e){l(e instanceof Error?e.message:`Amend failed`)}finally{p(!1)}}},j=async()=>{if(r){p(!0);try{await V.post(`${B(r)}/git/fetch`,{}),await S()}catch(e){l(e instanceof Error?e.message:`Fetch failed`)}finally{p(!1)}}},M=async()=>{await D(),await O()},ee=async()=>{await D(),await k(),await O()},N=e=>{g({type:`git-diff`,title:Ze(e.path),closable:!0,metadata:{projectName:r,filePath:e.path},projectId:r??null}),n?.()},P=e=>{g({type:`editor`,title:Ze(e.path),closable:!0,metadata:{projectName:r,filePath:e.path},projectId:r??null}),n?.()},F=(0,X.useMemo)(()=>[...i?.unstaged??[],...i?.untracked.map(e=>({path:e,status:`?`}))??[]],[i]);if(!r)return(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-full text-muted-foreground text-sm`,children:`No project selected.`});if(o&&!i)return(0,Z.jsxs)(`div`,{className:`flex items-center justify-center h-full gap-2 text-muted-foreground`,children:[(0,Z.jsx)(z,{className:`size-5 animate-spin`}),(0,Z.jsx)(`span`,{className:`text-sm`,children:`Loading git status...`})]});if(c&&!i)return(0,Z.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-2 text-destructive text-sm`,children:[(0,Z.jsx)(`p`,{children:c}),(0,Z.jsx)(Y,{variant:`outline`,size:`sm`,onClick:S,children:`Retry`})]});let I=i?.staged.length??0,te=f||!u.trim()||!I,ne=(0,Z.jsxs)(`div`,{className:`p-2 flex flex-col gap-2`,children:[(0,Z.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)&&D()}}),(0,Z.jsxs)(`div`,{className:`flex h-8`,children:[(0,Z.jsx)(Y,{size:`sm`,className:`flex-1 rounded-r-none`,disabled:te,onClick:D,children:f?(0,Z.jsx)(z,{className:`size-3 animate-spin`}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(me,{className:`size-3.5`}),`Commit (`,I,`)`]})}),(0,Z.jsxs)(Vc,{children:[(0,Z.jsx)(Uc,{asChild:!0,children:(0,Z.jsx)(Y,{size:`sm`,className:`w-8 px-0 rounded-l-none border-l border-white/20`,disabled:f,title:`More commit actions`,children:(0,Z.jsx)(Se,{className:`size-3.5`})})}),(0,Z.jsxs)(Wc,{align:`end`,className:`w-56`,children:[(0,Z.jsxs)(Gc,{onClick:M,disabled:te,children:[(0,Z.jsx)(Dn,{className:`size-3.5`}),`Commit & Push`]}),(0,Z.jsxs)(Gc,{onClick:ee,disabled:te,children:[(0,Z.jsx)(Ve,{className:`size-3.5`}),`Commit & Sync`]}),(0,Z.jsx)(Yc,{}),(0,Z.jsxs)(Gc,{onClick:A,disabled:f,children:[(0,Z.jsx)(ur,{className:`size-3.5`}),`Amend Last Commit`]}),(0,Z.jsx)(Yc,{}),(0,Z.jsxs)(Gc,{onClick:O,disabled:f,children:[(0,Z.jsx)(Dn,{className:`size-3.5`}),`Push`]}),(0,Z.jsxs)(Gc,{onClick:k,disabled:f,children:[(0,Z.jsx)(Tn,{className:`size-3.5`}),`Pull`]}),(0,Z.jsxs)(Gc,{onClick:j,disabled:f,children:[(0,Z.jsx)(Ve,{className:`size-3.5`}),`Fetch`]})]})]})]})]});return(0,Z.jsxs)(`div`,{className:`flex flex-col h-full overflow-hidden`,children:[(0,Z.jsxs)(Il,{icon:lr,title:i?.current?`On: ${i.current}`:`Source Control`,children:[(0,Z.jsx)(Y,{variant:_===`flat`?`secondary`:`ghost`,size:`icon-xs`,onClick:()=>v(`flat`),title:`Flat view`,children:(0,Z.jsx)(Er,{className:`size-3.5`})}),(0,Z.jsx)(Y,{variant:_===`tree`?`secondary`:`ghost`,size:`icon-xs`,onClick:()=>v(`tree`),title:`Tree view`,children:(0,Z.jsx)(sr,{className:`size-3.5`})}),(0,Z.jsx)(Y,{variant:`ghost`,size:`icon-xs`,onClick:()=>{if(x){let e=[];y&&e.push(y),window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:`git-graph.view`,args:e}}))}else g({type:`git-log`,title:`Git Log`,projectId:r??null,closable:!0,metadata:{projectName:r}});n?.()},title:x?`Open Git Graph (⌘G)`:`View Git Log`,children:(0,Z.jsx)(lr,{className:`size-3.5`})}),(0,Z.jsx)(Y,{variant:`ghost`,size:`icon-xs`,onClick:S,disabled:f,children:(0,Z.jsx)(Ve,{className:o?`animate-spin`:``})})]}),c&&(0,Z.jsx)(`div`,{className:`px-3 py-1.5 text-xs text-destructive bg-destructive/10 shrink-0`,children:c}),(0,Z.jsx)(`div`,{className:`hidden md:block border-b border-border`,children:ne}),r&&(0,Z.jsx)(tf,{projectName:r,projectPath:y}),(0,Z.jsx)(pn,{className:`flex-1 overflow-hidden`,children:(0,Z.jsxs)(`div`,{className:`p-1.5 space-y-2 overflow-hidden`,children:[(0,Z.jsx)(lf,{title:`Staged Changes`,count:i?.staged.length??0,files:i?.staged??[],viewMode:_,actionIcon:(0,Z.jsx)(Nr,{className:`size-3`}),actionAllIcon:(0,Z.jsx)(Nr,{className:`size-3`}),actionTitle:`Unstage`,onAction:e=>w([e.path]),onActionAll:i?.staged.length?()=>w(i.staged.map(e=>e.path)):void 0,actionAllLabel:`Unstage All`,onFolderAction:e=>w(e.map(e=>e.path)),onClickFile:N,onOpenFile:P,disabled:f}),(0,Z.jsx)(lf,{title:`Changes`,count:F.length,files:F,viewMode:_,actionIcon:(0,Z.jsx)(R,{className:`size-3`}),actionAllIcon:(0,Z.jsx)(R,{className:`size-3`}),actionTitle:`Stage`,onAction:e=>C([e.path]),onActionAll:F.length?()=>C(F.map(e=>e.path)):void 0,actionAllLabel:`Stage All`,onFolderAction:e=>C(e.map(e=>e.path)),onClickFile:N,onOpenFile:P,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,Z.jsx)(`div`,{className:`md:hidden border-t border-border shrink-0`,children:ne}),(0,Z.jsx)(nn,{open:!!m,onOpenChange:e=>!e&&h(null),children:(0,Z.jsxs)(Qt,{showCloseButton:!1,children:[(0,Z.jsxs)(Xt,{children:[(0,Z.jsx)($t,{children:`Discard Changes`}),(0,Z.jsxs)(en,{children:[`Are you sure you want to discard all changes to`,` `,(0,Z.jsx)(`code`,{className:`px-1 py-0.5 rounded bg-muted text-sm font-mono`,children:m?.label}),`? This action cannot be undone.`]})]}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(Y,{variant:`outline`,onClick:()=>h(null),children:`Cancel`}),(0,Z.jsx)(Y,{variant:`destructive`,onClick:E,disabled:f,children:f?(0,Z.jsx)(z,{className:`size-3 animate-spin`}):`Discard`})]})]})})]})}function cf({showRevert:e,onRevert:t,onAction:n,onOpenFile:r,actionIcon:i,actionTitle:a,disabled:o}){return(0,Z.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,Z.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:o,title:`Open file`,children:(0,Z.jsx)(nr,{className:`size-3`})}),e&&t&&(0,Z.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:o,title:`Discard changes`,children:(0,Z.jsx)(ui,{className:`size-3`})}),(0,Z.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:o,title:a,children:i})]})}function lf({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,disabled:p,showRevert:m,onRevert:h,onFolderRevert:g}){return(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between mb-0.5`,children:[(0,Z.jsxs)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase`,children:[e,` (`,t,`)`]}),c&&t>0&&(0,Z.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:p,title:l,children:a})]}),n.length===0?(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground px-1`,children:`No changes`}):r===`flat`?(0,Z.jsx)(`div`,{className:`w-full overflow-hidden`,children:n.map(e=>(0,Z.jsx)(df,{file:e,actionIcon:i,actionTitle:o,onAction:s,onClickFile:d,onOpenFile:f,disabled:p,showRevert:m,onRevert:h},e.path))}):(0,Z.jsx)(ff,{files:n,actionIcon:i,actionTitle:o,onAction:s,onFolderAction:u,onClickFile:d,onOpenFile:f,disabled:p,showRevert:m,onRevert:h,onFolderRevert:g})]})}function uf(e,t,n=400){let r=(0,X.useRef)(null),i=(0,X.useRef)(!1),a=(0,X.useRef)(!1),o=(0,X.useCallback)(()=>{r.current&&=(clearTimeout(r.current),null)},[]);return{onTouchStart:(0,X.useCallback)(t=>{i.current=!1,a.current=!1,r.current=setTimeout(()=>{a.current=!0,e()},n)},[e,n]),onTouchMove:(0,X.useCallback)(()=>{i.current=!0,o()},[o]),onTouchEnd:(0,X.useCallback)(e=>{o(),!i.current&&!a.current&&(e.preventDefault(),t())},[o,t])}}function df({file:e,actionIcon:t,actionTitle:n,onAction:r,onClickFile:i,onOpenFile:a,disabled:o,showRevert:s,onRevert:c,displayName:l}){let[u,d]=(0,X.useState)(!1),f=uf((0,X.useCallback)(()=>d(!0),[]),(0,X.useCallback)(()=>i(e),[i,e])),p=(0,Z.jsxs)(`div`,{className:`group relative flex items-center gap-1 hover:bg-muted/50 rounded pl-1 py-px w-full min-w-0`,children:[(0,Z.jsx)(`span`,{className:`text-xs font-mono w-4 text-center shrink-0 ${rf[e.status]??``}`,children:e.status}),(0,Z.jsx)(`button`,{type:`button`,className:`hidden md:block flex-1 text-left text-xs font-mono truncate hover:underline min-w-0`,onClick:()=>i(e),title:e.path,children:l??e.path}),(0,Z.jsx)(`span`,{className:`md:hidden flex-1 text-left text-xs font-mono truncate min-w-0 select-none`,children:l??e.path}),(0,Z.jsx)(cf,{showRevert:s,onRevert:c?()=>c(e):void 0,onOpenFile:a?()=>a(e):void 0,onAction:()=>r(e),actionIcon:t,actionTitle:n,disabled:o})]});return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`hidden md:block`,children:p}),(0,Z.jsx)(`div`,{className:`md:hidden select-none`,...f,children:(0,Z.jsxs)(Vc,{open:u,onOpenChange:d,children:[(0,Z.jsx)(Uc,{asChild:!0,children:p}),(0,Z.jsxs)(Wc,{align:`start`,className:`min-w-40`,children:[(0,Z.jsx)(Gc,{onClick:()=>i(e),children:`View Diff`}),a&&(0,Z.jsx)(Gc,{onClick:()=>a(e),children:`Open File`}),(0,Z.jsx)(Gc,{onClick:()=>r(e),disabled:o,children:n}),s&&c&&(0,Z.jsx)(Gc,{className:`text-destructive focus:text-destructive`,onClick:()=>c(e),disabled:o,children:`Discard Changes`})]})]})})]})}function ff({files:e,actionIcon:t,actionTitle:n,onAction:r,onFolderAction:i,onClickFile:a,onOpenFile:o,disabled:s,showRevert:c,onRevert:l,onFolderRevert:u}){let d=(0,X.useMemo)(()=>af(e),[e]);return(0,Z.jsx)(`div`,{children:d.map((e,f)=>(0,Z.jsx)(pf,{node:e,depth:0,isLast:f===d.length-1,actionIcon:t,actionTitle:n,onAction:r,onFolderAction:i,onClickFile:a,onOpenFile:o,disabled:s,showRevert:c,onRevert:l,onFolderRevert:u},e.fullPath))})}function pf({node:e,depth:t,isLast:n,actionIcon:r,actionTitle:i,onAction:a,onFolderAction:o,onClickFile:s,onOpenFile:c,disabled:l,showRevert:u,onRevert:d,onFolderRevert:f}){let[p,m]=(0,X.useState)(!0),h=e.children.length>0&&!e.file,g=t*12-6,_=`absolute border-dashed border-border`;if(e.file)return(0,Z.jsxs)(`div`,{className:`relative`,style:{paddingLeft:t*12},children:[t>0&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`${_} border-l`,style:{left:g,top:0,bottom:n?`50%`:0}}),(0,Z.jsx)(`div`,{className:`${_} border-t`,style:{left:g,top:`50%`,width:6}})]}),(0,Z.jsx)(df,{file:e.file,displayName:e.name,actionIcon:r,actionTitle:i,onAction:a,onClickFile:s,onOpenFile:c,disabled:l,showRevert:u,onRevert:d})]});if(h){let h=of(e);return(0,Z.jsxs)(`div`,{className:`relative`,children:[t>0&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`${_} border-l`,style:{left:g,top:0,...n?{height:13}:{bottom:0}}}),(0,Z.jsx)(`div`,{className:`${_} border-t`,style:{left:g,top:13,width:8}})]}),(()=>{let n=(0,Z.jsxs)(`div`,{className:`group relative flex items-center hover:bg-muted/50 rounded py-0.5`,style:{paddingLeft:t*12+2},children:[(0,Z.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 flex-1 min-w-0 text-xs font-mono text-muted-foreground`,onClick:()=>m(!p),children:[p?(0,Z.jsx)(Se,{className:`size-3.5 shrink-0`}):(0,Z.jsx)(Ce,{className:`size-3.5 shrink-0`}),(0,Z.jsx)(`span`,{className:`truncate font-semibold`,children:e.name}),(0,Z.jsxs)(`span`,{className:`text-[10px] opacity-60 shrink-0`,children:[`(`,h.length,`)`]})]}),(0,Z.jsx)(cf,{showRevert:u,onRevert:f?()=>f(h,e.fullPath):void 0,onAction:()=>o?.(h),actionIcon:r,actionTitle:`${i} ${e.name}/`,disabled:l})]});return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`hidden md:block`,children:n}),(0,Z.jsx)(`div`,{className:`md:hidden`,children:(0,Z.jsxs)(Vc,{children:[(0,Z.jsx)(Uc,{asChild:!0,children:n}),(0,Z.jsxs)(Wc,{align:`start`,className:`min-w-40`,children:[(0,Z.jsxs)(Gc,{onClick:()=>o?.(h),disabled:l,children:[i,` `,e.name,`/`]}),f&&(0,Z.jsx)(Gc,{className:`text-destructive focus:text-destructive`,onClick:()=>f(h,e.fullPath),disabled:l,children:`Discard Changes`})]})]})})]})})(),p&&(0,Z.jsx)(`div`,{children:e.children.map((n,p)=>(0,Z.jsx)(pf,{node:n,depth:t+1,isLast:p===e.children.length-1,actionIcon:r,actionTitle:i,onAction:a,onFolderAction:o,onClickFile:s,onOpenFile:c,disabled:l,showRevert:u,onRevert:d,onFolderRevert:f},n.fullPath))})]})}return null}function mf({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,Z.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,Z.jsxs)(`div`,{children:[!n&&(0,Z.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,Z.jsxs)(`div`,{children:[(0,Z.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,Z.jsx)(`button`,{onClick:()=>c(e,t.tableName,t.schemaName),className:`shrink-0 text-text-subtle hover:text-foreground transition-colors`,children:r?(0,Z.jsx)(Se,{className:`size-2.5`}):(0,Z.jsx)(Ce,{className:`size-2.5`})}),(0,Z.jsx)(je,{className:`size-2.5 shrink-0 text-text-subtle`}),(0,Z.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,Z.jsx)(`span`,{className:`text-[9px] text-text-subtle`,children:t.rowCount})]}),r&&(0,Z.jsxs)(`div`,{className:`ml-[18px] border-l border-dotted border-border pl-2`,children:[u&&(0,Z.jsx)(`p`,{className:`text-[9px] text-text-subtle px-1 py-0.5`,children:`Loading…`}),f&&(0,Z.jsx)(`p`,{className:`text-[9px] text-error px-1 py-0.5`,children:`Failed to load columns`}),d&&d.map(e=>(0,Z.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,Z.jsx)(xr,{className:`size-2.5 text-warning shrink-0`}),e.fk&&(0,Z.jsx)(Cr,{className:`size-2.5 text-primary shrink-0`}),!e.pk&&!e.fk&&(0,Z.jsx)(`span`,{className:`size-2.5 shrink-0`}),(0,Z.jsxs)(`span`,{className:`truncate`,children:[e.name,e.nullable?`?`:``]}),(0,Z.jsx)(`span`,{className:`ml-auto text-[9px] text-text-subtle/60 shrink-0`,children:e.type})]},e.name)),!u&&!f&&!d&&(0,Z.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,Z.jsx)(`p`,{className:`text-[10px] text-text-subtle px-2 py-1`,children:`No match`})]})}function hf({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,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`div`,{className:G(`group flex items-center gap-1 py-1 hover:bg-surface-elevated transition-colors`,f?`pl-3 pr-2`:`px-2`),children:[(0,Z.jsx)(`button`,{onClick:b,className:`shrink-0 text-text-subtle hover:text-foreground transition-colors`,children:t?(0,Z.jsx)(Se,{className:`size-3`}):(0,Z.jsx)(Ce,{className:`size-3`})}),(0,Z.jsx)(`span`,{className:`shrink-0 size-2 rounded-full border border-border`,style:{backgroundColor:e.color??`transparent`}}),(0,Z.jsx)(`button`,{className:`flex-1 text-left text-xs truncate hover:text-primary transition-colors`,onClick:b,children:e.name}),(0,Z.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,Z.jsx)(`span`,{title:`Readonly`,children:(0,Z.jsx)(Re,{className:`shrink-0 size-2.5 text-text-subtle`})}),(0,Z.jsxs)(`div`,{className:`flex can-hover:hidden can-hover:group-hover:flex items-center gap-0.5 shrink-0`,children:[(0,Z.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,Z.jsx)(Ve,{className:G(`size-3`,n&&`animate-spin`)})}),(0,Z.jsx)(`button`,{onClick:()=>h(e),className:`p-0.5 text-text-subtle hover:text-foreground transition-colors`,title:`Edit`,children:(0,Z.jsx)(L,{className:`size-3`})}),(0,Z.jsx)(`button`,{onClick:()=>g(e.id),className:`p-0.5 text-text-subtle hover:text-error transition-colors`,title:`Delete`,children:(0,Z.jsx)(Ue,{className:`size-3`})})]})]}),t&&(0,Z.jsxs)(`div`,{className:`ml-[11px] border-l border-dashed border-border pl-1`,children:[n&&r.length===0&&(0,Z.jsx)(`p`,{className:`text-[10px] text-text-subtle px-2 py-1`,children:`Loading…`}),!n&&r.length===0&&(d?(0,Z.jsx)(`p`,{className:`text-[10px] text-error px-2 py-1 break-all`,children:d}):(0,Z.jsx)(`p`,{className:`text-[10px] text-text-subtle px-2 py-1`,children:`No tables cached`})),r.length>0&&(0,Z.jsxs)(Z.Fragment,{children:[r.length>5&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-0.5`,children:[(0,Z.jsx)(Yr,{className:`size-2.5 text-text-subtle shrink-0`}),(0,Z.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,Z.jsx)(mf,{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 gf(e,t,n){return`${e}:${t}.${n}`}function _f(e){return Number(e.slice(0,e.indexOf(`:`)))}function vf(){let e=W(e=>e.dbSidebarExpanded),t=W(e=>e.setDbSidebarExpanded),n=(0,X.useMemo)(()=>new Set(e.conns),[e.conns]),r=(0,X.useMemo)(()=>new Set(e.groups),[e.groups]),i=(0,X.useMemo)(()=>new Set(e.tables),[e.tables]),a=(0,X.useCallback)(e=>{let n=W.getState().dbSidebarExpanded,r=e(n);r!==n&&t(r)},[t]);return{expandedConns:n,expandedGroups:r,expandedTables:i,toggleConn:(0,X.useCallback)(e=>{a(t=>({...t,conns:t.conns.includes(e)?t.conns.filter(t=>t!==e):[...t.conns,e]}))},[a]),toggleGroup:(0,X.useCallback)(e=>{a(t=>({...t,groups:t.groups.includes(e)?t.groups.filter(t=>t!==e):[...t.groups,e]}))},[a]),setTableExpanded:(0,X.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,X.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(_f(e)));return n.length===e.conns.length&&r.length===e.tables.length?e:{...e,conns:n,tables:r}})},[a])}}function yf({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}=vf(),[g,_]=(0,X.useState)(new Set),[v,y]=(0,X.useState)(new Map),[b,x]=(0,X.useState)(new Set),[S,C]=(0,X.useState)(new Set),w=(e,t)=>{f(e),t&&D(e)},T=async(e,t,n)=>{let r=gf(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=gf(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,X.useRef)(new Set);(0,X.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=gf(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:j}=(0,X.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]),M=(0,X.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,Z.jsxs)(`p`,{className:`px-4 py-6 text-xs text-text-subtle text-center`,children:[`No connections yet.`,(0,Z.jsx)(`br`,{}),`Click + to add one.`]}):(0,Z.jsx)(`div`,{className:`py-1`,children:j.map(e=>{let i=u.has(e),s=e===`__ungrouped__`?`Ungrouped`:e,f=A[e],m=j.length>1||e!==`__ungrouped__`;return(0,Z.jsxs)(`div`,{children:[m&&(0,Z.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,Z.jsx)(Se,{className:`size-3`}):(0,Z.jsx)(Ce,{className:`size-3`}),s]}),i&&(0,Z.jsx)(`div`,{className:m?`ml-[11px] border-l border-dashed border-border`:``,children:f.map(e=>(0,Z.jsx)(hf,{conn:e,isExpanded:l.has(e.id),isRefreshing:g.has(e.id),tables:t.get(e.id)??[],schemas:M.get(e.id)??new Map,isSingleSchema:(M.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 bf=`ppm-recent-paths`,xf=5,Sf=[{name:`Home`,path:`~`,icon:vr},{name:`Desktop`,path:`~/Desktop`,icon:ze},{name:`Documents`,path:`~/Documents`,icon:nr},{name:`Downloads`,path:`~/Downloads`,icon:Me}];function Cf(){try{return JSON.parse(localStorage.getItem(bf)??`[]`)}catch{return[]}}function wf(e){let t=[e,...Cf().filter(t=>t!==e)].slice(0,xf);localStorage.setItem(bf,JSON.stringify(t))}function Tf(e){if(e.type===`directory`)return(0,Z.jsx)(cr,{className:`size-4 text-primary`});let t=e.name.split(`.`).pop()?.toLowerCase();return t&&[`db`,`sqlite`,`sqlite3`].includes(t)?(0,Z.jsx)(je,{className:`size-4 text-warning`}):(0,Z.jsx)(ir,{className:`size-4 text-text-subtle`})}function Ef(e,t){if(!t?.length)return!0;let n=`.`+e.split(`.`).pop()?.toLowerCase();return t.includes(n)}function Df({open:e,mode:t,accept:n,root:r,title:i,onSelect:a,onCancel:o}){let[s,c]=(0,X.useState)([]),[l,u]=(0,X.useState)(``),[d,f]=(0,X.useState)(null),[p,m]=(0,X.useState)([]),[h,g]=(0,X.useState)(null),[_,v]=(0,X.useState)(!1),[y,b]=(0,X.useState)(null),[x,S]=(0,X.useState)(``),[C,w]=(0,X.useState)(``),[T,E]=(0,X.useState)(!1),[D,O]=(0,X.useState)([]),[k,A]=(0,X.useState)(null),[j,M]=(0,X.useState)(!1),[P,F]=(0,X.useState)(null),I=(0,X.useRef)(null),te=(0,X.useRef)(null),ne=typeof window<`u`&&window.innerWidth<768,re=t===`folder`?`Select Folder`:t===`file`?`Select File`:`Select File or Folder`,ie=(0,X.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 V.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,X.useEffect)(()=>{e&&(ie(r??`~`,T),O(Cf()))},[e,r,ie,T]);let L=e=>ie(e,T),ae=()=>{let e=!T;E(e),ie(l||(r??`~`),e)},oe=e=>{e.key===`Enter`&&C.trim()&&ie(C.trim())},se=e=>{e.type===`directory`?t===`file`?L(e.path):g(e.path):t!==`folder`&&g(e.path)},ce=e=>{e.type===`directory`&&L(e.path)},le=()=>{h&&(wf(l),a(h))},ue=async()=>{if(!k?.trim()||!l)return;let e=`${l}/${k.trim()}`;M(!0),F(null);try{await V.post(`/api/fs/mkdir`,{path:e}),A(null),F(null),await ie(l,T),g(e)}catch(e){F(e.message||`Failed to create folder`)}finally{M(!1)}},de=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 V.del(`/api/fs/rmdir`,{path:h}),g(null),await ie(l,T)}catch(e){b(e.message||`Failed to delete folder`)}},fe=h?s.some(e=>e.path===h&&e.type===`directory`):!1,pe=s.filter(e=>!(x&&!e.name.toLowerCase().includes(x.toLowerCase())||e.type===`file`&&n?.length&&!Ef(e.name,n))),me=e=>e.type===`directory`?t!==`file`:t!==`folder`,he=(0,Z.jsxs)(`div`,{className:`flex flex-col flex-1 min-h-0`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 px-3 py-2 border-b border-border`,children:[d&&(0,Z.jsx)(Y,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,onClick:()=>L(d),children:(0,Z.jsx)(ee,{className:`size-4`})}),(0,Z.jsx)(fn,{value:C,onChange:e=>w(e.target.value),onKeyDown:oe,placeholder:`Type path and press Enter`,className:`h-7 text-xs font-mono flex-1`})]}),(0,Z.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,Z.jsxs)(`span`,{className:`flex items-center shrink-0`,children:[t>0&&(0,Z.jsx)(Ce,{className:`size-3 text-text-subtle mx-0.5`}),(0,Z.jsx)(`button`,{type:`button`,onClick:()=>L(e.path),className:`hover:text-primary hover:underline text-text-secondary`,children:e.name})]},e.path))}),(0,Z.jsxs)(`div`,{className:`flex flex-1 min-h-0 overflow-hidden`,children:[!ne&&(0,Z.jsxs)(`div`,{className:`w-36 border-r border-border py-2 px-1 shrink-0 overflow-y-auto`,children:[Sf.map(e=>(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>L(e.path),className:G(`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,Z.jsx)(e.icon,{className:`size-3.5`}),e.name]},e.path)),D.length>0&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`text-[10px] text-text-subtle px-2 mt-3 mb-1 font-medium`,children:`Recent`}),D.map(e=>(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>L(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,Z.jsx)(De,{className:`size-3 shrink-0`}),(0,Z.jsx)(`span`,{className:`truncate`,children:e.split(`/`).pop()})]},e))]})]}),(0,Z.jsx)(pn,{className:`flex-1 min-h-0`,children:_?(0,Z.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,Z.jsx)(z,{className:`size-5 animate-spin text-text-subtle`})}):y?(0,Z.jsx)(`div`,{className:`text-center py-8 text-xs text-error`,children:y}):pe.length===0?(0,Z.jsx)(`div`,{className:`text-center py-8 text-xs text-text-subtle`,children:x?`No matching entries`:`Empty directory`}):(0,Z.jsxs)(`div`,{ref:te,className:`py-1`,children:[k!=null&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 bg-primary/5 border-b border-border`,children:[(0,Z.jsx)(or,{className:`size-4 text-primary shrink-0`}),(0,Z.jsx)(fn,{ref:I,value:k,onChange:e=>A(e.target.value),onKeyDown:e=>{e.key===`Enter`&&ue(),e.key===`Escape`&&A(null)},placeholder:`Folder name`,className:`h-6 text-xs flex-1`,disabled:j,autoFocus:!0}),j&&(0,Z.jsx)(z,{className:`size-3.5 animate-spin text-primary shrink-0`})]}),P&&(0,Z.jsx)(`div`,{className:`px-3 py-1 text-[11px] text-destructive bg-destructive/5 border-b border-border`,children:P})]}),pe.map(e=>{let t=me(e);return(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>se(e),onDoubleClick:()=>ce(e),className:G(`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:[Tf(e),(0,Z.jsx)(`span`,{className:G(`flex-1 truncate`,e.type===`directory`&&`font-medium`),children:e.name}),(0,Z.jsx)(`span`,{className:`text-text-subtle text-[10px] shrink-0 w-14 text-right`,children:Tu(e.size)}),(0,Z.jsx)(`span`,{className:`text-text-subtle text-[10px] shrink-0 w-14 text-right`,children:Eu(e.modified)})]},e.path)})]})})]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 border-t border-border shrink-0`,children:[(0,Z.jsx)(Y,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0`,onClick:()=>{A(``),F(null),setTimeout(()=>I.current?.focus(),50)},title:`New Folder`,children:(0,Z.jsx)(or,{className:`size-3.5`})}),(0,Z.jsx)(Y,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0 text-destructive/70 hover:text-destructive disabled:opacity-30`,onClick:de,disabled:!fe,title:`Delete selected folder`,children:(0,Z.jsx)(Ue,{className:`size-3.5`})}),(0,Z.jsx)(Y,{variant:`ghost`,size:`icon`,className:G(`size-7 shrink-0`,T&&`text-primary`),onClick:ae,title:T?`Hide hidden files`:`Show hidden files`,children:T?(0,Z.jsx)(Ie,{className:`size-3.5`}):(0,Z.jsx)(N,{className:`size-3.5`})}),n?.length?(0,Z.jsx)(`span`,{className:`text-[10px] text-text-subtle bg-surface-hover px-1.5 py-0.5 rounded`,children:n.join(`, `)}):null,(0,Z.jsx)(`div`,{className:`flex-1 max-w-48`,children:(0,Z.jsxs)(`div`,{className:`relative`,children:[(0,Z.jsx)(Yr,{className:`absolute left-2 top-1/2 -translate-y-1/2 size-3 text-text-subtle`}),(0,Z.jsx)(fn,{value:x,onChange:e=>S(e.target.value),placeholder:`Filter...`,className:`h-6 text-[11px] pl-6`})]})}),(0,Z.jsx)(`div`,{className:`flex-1`}),(0,Z.jsx)(Y,{variant:`outline`,size:`sm`,onClick:o,className:`h-7 text-xs`,children:`Cancel`}),(0,Z.jsx)(Y,{size:`sm`,onClick:le,disabled:!h,className:`h-7 text-xs`,children:`Select`})]})]});return(0,Z.jsx)(nn,{open:e,onOpenChange:e=>{e||o()},children:(0,Z.jsxs)(Qt,{className:G(`p-0 gap-0 overflow-hidden flex flex-col`,ne?`max-w-[95vw] h-[85vh]`:`max-w-2xl h-[70vh]`),children:[(0,Z.jsx)(Xt,{className:`px-3 py-2 border-b border-border`,children:(0,Z.jsx)($t,{className:`text-sm`,children:i??re})}),he]})})}function Of({mode:e,accept:t,root:n,title:r,onSelect:i,className:a}){let[o,s]=(0,X.useState)(!1);return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Y,{type:`button`,variant:`ghost`,size:`icon`,className:G(`size-8 shrink-0`,a),onClick:()=>s(!0),title:r??`Browse...`,children:(0,Z.jsx)(ar,{className:`size-4`})}),(0,Z.jsx)(Df,{open:o,mode:e,accept:t,root:n,title:r,onSelect:e=>{i(e),s(!1)},onCancel:()=>s(!1)})]})}var kf=[`#ef4444`,`#f97316`,`#eab308`,`#22c55e`,`#06b6d4`,`#3b82f6`,`#8b5cf6`,`#ec4899`,`#6b7280`,`#000000`];function Af({value:e,onChange:t}){return(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsxs)(`div`,{className:`flex flex-wrap gap-1.5`,children:[(0,Z.jsx)(`button`,{type:`button`,onClick:()=>t(null),className:G(`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,Z.jsx)(`span`,{className:`absolute inset-0 flex items-center justify-center text-[8px] text-text-subtle`,children:`×`})}),kf.map(n=>(0,Z.jsx)(`button`,{type:`button`,onClick:()=>t(n),className:G(`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,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(`div`,{className:`size-6 rounded-full border border-border shrink-0`,style:{backgroundColor:e??`transparent`}}),(0,Z.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 jf({open:e,onClose:t,connection:n,onSave:r,onUpdate:i,onTest:a,onTestRaw:o}){let s=!!n,[c,l]=(0,X.useState)({name:``,type:`postgres`,path:``,connectionString:``,groupName:``,color:null,readonly:!0}),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)(null),[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(null);(0,X.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,Z.jsx)(nn,{open:e,onOpenChange:e=>{e||t()},children:(0,Z.jsxs)(Qt,{className:`max-w-md`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:s?`Edit Connection`:`Add Connection`})}),(0,Z.jsxs)(`div`,{className:`space-y-3 py-1`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Name *`}),(0,Z.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,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Type`}),(0,Z.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,Z.jsx)(`option`,{value:`postgres`,children:`PostgreSQL`}),(0,Z.jsx)(`option`,{value:`sqlite`,children:`SQLite`})]})]}),c.type===`postgres`?(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Connection String *`}),(0,Z.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,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`File Path *`}),(0,Z.jsxs)(`div`,{className:`flex gap-1.5 items-center`,children:[(0,Z.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,Z.jsx)(Of,{mode:`file`,accept:[`.db`,`.sqlite`,`.sqlite3`],title:`Browse for SQLite database`,onSelect:e=>v(`path`,e)})]})]}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Group`}),(0,Z.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,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs font-medium text-text-secondary mb-1 block`,children:`Tab Color`}),(0,Z.jsx)(Af,{value:c.color,onChange:e=>v(`color`,e)})]}),s&&(0,Z.jsxs)(`div`,{className:`flex items-center justify-between py-1`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`p`,{className:`text-xs font-medium`,children:`Readonly`}),(0,Z.jsx)(`p`,{className:`text-[10px] text-text-subtle`,children:`Block non-SELECT queries (AI protection)`})]}),(0,Z.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,Z.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,Z.jsx)(`p`,{className:`text-xs ${f.ok?`text-success`:`text-error`}`,children:f.ok?`✓ Connection successful`:`✗ ${f.error}`}),g&&(0,Z.jsx)(`p`,{className:`text-xs text-error`,children:g})]}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(Y,{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,Z.jsx)(Y,{variant:`outline`,size:`sm`,onClick:t,children:`Cancel`}),(0,Z.jsx)(Y,{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 Mf({onExport:e,onImport:t}){let[n,r]=(0,X.useState)(!1),i=(0,X.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 Jt(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,Z.jsxs)(`div`,{className:`relative`,children:[(0,Z.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,Z.jsx)(Kn,{className:`size-3.5`})}),n&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:a}),(0,Z.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,Z.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,Z.jsx)(Me,{className:`size-3`}),` Export to file`]}),(0,Z.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,Z.jsx)(Vn,{className:`size-3`}),` Export to clipboard`]}),(0,Z.jsx)(`div`,{className:`border-t border-border my-1`}),(0,Z.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,Z.jsx)(Te,{className:`size-3`}),` Import from file`]}),(0,Z.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,Z.jsx)(Bn,{className:`size-3`}),` Import from clipboard`]})]})]}),(0,Z.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 Nf(){let[e,t]=(0,X.useState)([]),[n,r]=(0,X.useState)(!0),[i,a]=(0,X.useState)(new Map),[o,s]=(0,X.useState)(new Map),c=(0,X.useCallback)(async()=>{try{t(await V.get(`/api/db/connections`))}catch{}finally{r(!1)}},[]);(0,X.useEffect)(()=>{c()},[c]);let l=(0,X.useCallback)(async e=>{let n=await V.post(`/api/db/connections`,e);return t(e=>[...e,n]),n},[]),u=(0,X.useCallback)(async(e,n)=>{let r=await V.put(`/api/db/connections/${e}`,n);t(t=>t.map(t=>t.id===e?r:t))},[]),d=(0,X.useCallback)(async e=>{await V.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,X.useCallback)(async e=>V.post(`/api/db/connections/${e}/test`),[]),p=(0,X.useCallback)(async(e,t)=>V.post(`/api/db/test`,{type:e,connectionConfig:t}),[]),m=(0,X.useCallback)(async e=>{s(t=>{let n=new Map(t);return n.delete(e),n});try{let t=(await V.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,X.useState)(new Map),_=(0,X.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,X.useCallback)(async(e,t,n)=>{let r=`${e}:${n??`main`}.${t}`,i=_.current.get(r);if(i)return i;let a=await V.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,X.useCallback)(async()=>V.get(`/api/db/connections/export`),[]),importConnections:(0,X.useCallback)(async e=>{let t=await V.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 Pf(){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}=Nf(),m=J(e=>e.openTab),[h,g]=(0,X.useState)(!1),[_,v]=(0,X.useState)(null);return(0,Z.jsxs)(`div`,{className:`flex flex-col h-full`,children:[(0,Z.jsxs)(Il,{icon:je,title:`Database`,children:[(0,Z.jsx)(Mf,{onExport:f,onImport:p}),(0,Z.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,Z.jsx)(R,{className:`size-3.5`})})]}),(0,Z.jsx)(`div`,{className:`flex-1 overflow-y-auto min-h-0`,children:t?(0,Z.jsx)(`p`,{className:`px-4 py-6 text-xs text-text-subtle text-center`,children:`Loading…`}):(0,Z.jsx)(yf,{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,Z.jsx)(jf,{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,Z.jsx)(jf,{open:!!_,onClose:()=>v(null),connection:_,onUpdate:async(e,t)=>{await o(e,t)},onTest:e=>c(e)})]})}function Ff(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 If({text:e,re:t}){if(!t)return(0,Z.jsx)(`span`,{children:e});try{t.lastIndex=0;let n=e.split(t);return t.lastIndex=0,(0,Z.jsx)(`span`,{children:n.map((e,n)=>(t.lastIndex=0,t.test(e)?(0,Z.jsx)(`mark`,{className:`bg-warning/40 text-foreground rounded-sm`,children:e},n):e))})}catch{return(0,Z.jsx)(`span`,{children:e})}}function Lf({active:e,onClick:t,title:n,children:r}){return(0,Z.jsx)(`button`,{onClick:t,title:n,className:G(`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 Rf(){let{activeProject:e}=q(rn(e=>({activeProject:e.activeProject}))),t=J(e=>e.openTab),[n,r]=(0,X.useState)(``),[i,a]=(0,X.useState)(!1),[o,s]=(0,X.useState)(!1),[c,l]=(0,X.useState)(!1),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)(``),[m,h]=(0,X.useState)(``),[g,_]=(0,X.useState)(!1),[v,y]=(0,X.useState)(null),[b,x]=(0,X.useState)([]),[S,C]=(0,X.useState)(0),[w,T]=(0,X.useState)(!1),[E,D]=(0,X.useState)(new Set),O=(0,X.useRef)(null),k=(0,X.useRef)(null),A=(0,X.useCallback)(async(t,n,r,i,a)=>{if(d(!1),!e||!i&&t.length<2||i&&t.length<1){x([]),C(0);return}if(i)try{new RegExp(t)}catch{d(!0),x([]);return}T(!0);try{let o=new URLSearchParams({q:t,caseSensitive:String(n),wholeWord:String(r),regex:String(i)});a&&o.set(`include`,a);let s=await V.get(`${B(e.name)}/files/search?${o}`);x(s.results),C(s.total)}catch{x([])}finally{T(!1)}},[e]);(0,X.useEffect)(()=>(k.current&&clearTimeout(k.current),k.current=setTimeout(()=>A(n,i,o,c,f),300),()=>{k.current&&clearTimeout(k.current)}),[n,i,o,c,f,A]),(0,X.useEffect)(()=>{O.current?.focus()},[]);let j=Ff(n,i,o,c);function M(n,r){e&&t({type:`editor`,title:n.split(`/`).pop()??n,metadata:{filePath:n,projectName:e.name,lineNumber:r},projectId:e.name,closable:!0})}function ee(e){D(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}async function N(){if(!e||!n||b.length===0||g)return;_(!0),y(null);let t=0;try{for(let r of b){let a=await V.get(`${B(e.name)}/files/read?path=${encodeURIComponent(r.file)}`),s=Ff(n,i,o,c);if(!s)continue;s.lastIndex=0;let l=a.content.match(s)??[];if(!l.length)continue;t+=l.length,s.lastIndex=0;let u=a.content.replace(s,m);await V.put(`${B(e.name)}/files/write`,{path:r.file,content:u})}y(t),A(n,i,o,c,f)}catch{}finally{_(!1)}}return(0,Z.jsxs)(`div`,{className:`flex flex-col h-full`,children:[(0,Z.jsxs)(`div`,{className:`p-2 border-b border-border space-y-1.5`,children:[(0,Z.jsx)(`div`,{className:`relative flex items-center gap-1`,children:(0,Z.jsxs)(`div`,{className:`relative flex-1`,children:[(0,Z.jsx)(Yr,{className:`absolute left-2 top-1/2 -translate-y-1/2 size-3.5 text-text-subtle pointer-events-none`}),(0,Z.jsx)(`input`,{ref:O,value:n,onChange:e=>{r(e.target.value),y(null)},placeholder:e?`Search files…`:`Select a project first`,disabled:!e,className:G(`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`,u?`border-destructive`:`border-border`)}),n&&(0,Z.jsx)(`button`,{onClick:()=>{r(``),x([]),C(0),d(!1),y(null)},className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-text-subtle hover:text-foreground`,children:(0,Z.jsx)(Ge,{className:`size-3`})})]})}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsx)(Lf,{active:i,onClick:()=>a(e=>!e),title:`Match Case (Alt+C)`,children:(0,Z.jsx)(Mn,{className:`size-3.5`})}),(0,Z.jsx)(Lf,{active:o,onClick:()=>{s(e=>!e),c&&l(!1)},title:`Match Whole Word (Alt+W)`,children:(0,Z.jsx)(pi,{className:`size-3.5`})}),(0,Z.jsx)(Lf,{active:c,onClick:()=>{l(e=>!e),o&&s(!1)},title:`Use Regular Expression (Alt+R)`,children:(0,Z.jsx)(Gr,{className:`size-3.5`})}),u&&(0,Z.jsx)(`span`,{className:`text-[10px] text-destructive ml-1`,children:`Invalid regex`})]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsxs)(`div`,{className:`relative flex-1`,children:[(0,Z.jsx)(`input`,{value:m,onChange:e=>h(e.target.value),placeholder:`Replace…`,disabled:!e,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`}),m&&(0,Z.jsx)(`button`,{onClick:()=>h(``),className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-text-subtle hover:text-foreground`,children:(0,Z.jsx)(Ge,{className:`size-3`})})]}),(0,Z.jsx)(`button`,{onClick:N,disabled:!n||b.length===0||g,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:g?(0,Z.jsx)(z,{className:`size-3.5 animate-spin`}):(0,Z.jsx)(Kr,{className:`size-3.5`})})]}),(0,Z.jsxs)(`div`,{className:`relative`,children:[(0,Z.jsx)(`input`,{value:f,onChange:e=>p(e.target.value),placeholder:`Files to include (e.g. *.ts, src/**)`,disabled:!e,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`}),f&&(0,Z.jsx)(`button`,{onClick:()=>p(``),className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-text-subtle hover:text-foreground`,children:(0,Z.jsx)(Ge,{className:`size-3`})})]}),(0,Z.jsxs)(`div`,{className:`text-[10px] text-text-subtle h-3`,children:[(w||g)&&(0,Z.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,Z.jsx)(z,{className:`size-2.5 animate-spin`}),g?`Replacing…`:`Searching…`]}),!w&&!g&&v!==null&&(0,Z.jsxs)(`span`,{className:`text-success`,children:[v,` replacement`,v===1?``:`s`,` made`]}),!w&&!g&&v===null&&!u&&n.length>=2&&b.length===0&&(0,Z.jsx)(`span`,{children:`No results`}),!w&&!g&&v===null&&S>0&&(0,Z.jsxs)(`span`,{children:[S,` result`,S===1?``:`s`,` in `,b.length,` file`,b.length===1?``:`s`]})]})]}),(0,Z.jsx)(`div`,{className:`flex-1 overflow-y-auto min-h-0`,children:b.map(e=>{let t=E.has(e.file),n=e.file.split(`/`).pop()??e.file,r=e.file.includes(`/`)?e.file.slice(0,e.file.lastIndexOf(`/`)):``;return(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`button`,{onClick:()=>ee(e.file),className:`w-full flex items-center gap-1 px-2 py-1 hover:bg-muted/50 text-left`,children:[t?(0,Z.jsx)(Ce,{className:`size-3 shrink-0 text-text-subtle`}):(0,Z.jsx)(Se,{className:`size-3 shrink-0 text-text-subtle`}),(0,Z.jsx)(nr,{className:`size-3 shrink-0 text-text-subtle`}),(0,Z.jsx)(`span`,{className:`text-xs font-medium text-foreground truncate`,children:n}),(0,Z.jsx)(`span`,{className:`text-[10px] text-text-subtle truncate flex-1 min-w-0 ml-1`,children:r}),(0,Z.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,Z.jsxs)(`button`,{onClick:()=>M(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,Z.jsx)(`span`,{className:`text-[10px] text-text-subtle shrink-0 w-7 text-right pt-px`,children:t.lineNum}),(0,Z.jsx)(`span`,{className:`text-xs text-text-secondary truncate font-mono leading-4`,children:(0,Z.jsx)(If,{text:t.content.trimStart(),re:j})})]},`${e.file}-${t.lineNum}`))]},e.file)})})]})}function zf(e,t){window.dispatchEvent(new CustomEvent(`ext:tree:expand`,{detail:{viewId:e,itemId:t}}))}function Bf(e,t){window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:e,args:t}}))}var Vf={refresh:Ve,edit:L,trash:Ue,plus:R,search:Yr};function Hf({viewId:e,className:t}){let n=jt(t=>t.treeViews[e])??[],r=jt(e=>e.contributions),i=(0,X.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,Z.jsxs)(`div`,{className:G(`flex flex-col h-full`,t),children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border shrink-0`,children:[(0,Z.jsx)(`span`,{className:`text-[10px] font-semibold text-text-subtle uppercase tracking-wider`,children:i.name}),(0,Z.jsx)(`div`,{className:`flex items-center gap-0.5`,children:i.headerActions.map(e=>{let t=Vf[e.icon??Uf(e.command)]??Ve;return(0,Z.jsx)(`button`,{onClick:()=>Bf(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,Z.jsx)(t,{className:`size-3.5`})},e.command)})})]}),(0,Z.jsx)(`div`,{className:`flex-1 overflow-y-auto min-h-0 py-1`,role:`tree`,"aria-label":e,children:n.length===0?(0,Z.jsx)(`p`,{className:`px-4 py-6 text-xs text-text-subtle text-center`,children:`No items`}):n.map(t=>(0,Z.jsx)(Wf,{item:t,depth:0,viewId:e},t.id))})]})}function Uf(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 Wf({item:e,depth:t,viewId:n}){let[r,i]=(0,X.useState)(!1),a=e.collapsibleState!==`none`,o=(0,X.useRef)(!1);e.children&&e.children.length>0&&!o.current&&(o.current=!0,r||i(!0));let s=(0,X.useCallback)(()=>{if(!a)return;let t=!r;i(t),t&&(!e.children||e.children.length===0)&&zf(n,e.id)},[a,r,e.id,e.children,n]),c=(0,X.useCallback)(()=>{s(),e.command&&Bf(e.command,e.commandArgs)},[s,e.command,e.commandArgs]),l=8+t*16;return(0,Z.jsxs)(`div`,{role:`treeitem`,"aria-expanded":a?r:void 0,children:[(0,Z.jsxs)(`div`,{className:G(`group/node flex items-center gap-1 py-1 hover:bg-surface-elevated transition-colors`),style:{paddingLeft:l,paddingRight:8},children:[(0,Z.jsx)(`button`,{onClick:s,className:`shrink-0 text-text-subtle hover:text-foreground transition-colors`,children:a?r?(0,Z.jsx)(Se,{className:`size-3`}):(0,Z.jsx)(Ce,{className:`size-3`}):(0,Z.jsx)(`span`,{className:`size-3`})}),e.color&&(0,Z.jsx)(`span`,{className:`shrink-0 size-2 rounded-full border border-border`,style:{backgroundColor:e.color}}),(0,Z.jsx)(`button`,{className:`flex-1 text-left text-xs truncate hover:text-primary transition-colors`,onClick:c,children:e.label}),e.description&&(0,Z.jsx)(`span`,{className:`shrink-0 ml-1 text-text-subtle text-[10px]`,children:e.description}),e.badge&&(0,Z.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,Z.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,Z.jsx)(Gf,{action:e},e.command))})]}),a&&r&&e.children&&(0,Z.jsx)(`div`,{role:`group`,children:e.children.map(e=>(0,Z.jsx)(Wf,{item:e,depth:t+1,viewId:n},e.id))})]})}function Gf({action:e}){let[t,n]=(0,X.useState)(!1),r=Vf[e.icon]??Ve,i=e.icon===`trash`;return(0,Z.jsx)(`button`,{onClick:(0,X.useCallback)(t=>{t.stopPropagation(),e.icon===`refresh`&&(n(!0),setTimeout(()=>n(!1),1e3)),Bf(e.command,e.commandArgs)},[e]),className:G(`p-0.5 text-text-subtle transition-colors`,i?`hover:text-error`:`hover:text-foreground`),title:e.tooltip,children:(0,Z.jsx)(r,{className:G(`size-3`,t&&`animate-spin`)})})}var Kf=Ye((e,t)=>({projectsWithIds:[],configs:[],selectedProjectId:null,watchers:[],results:[],unreadCount:0,setSelectedProjectId:t=>e({selectedProjectId:t}),loadProjectsWithIds:async()=>{let t=await V.get(`/api/jira/config/projects`);e({projectsWithIds:Array.isArray(t)?t:[]})},loadConfigs:async()=>{e({configs:await V.get(`/api/jira/config`)})},saveConfig:async(e,n)=>{await V.put(`/api/jira/config/${e}`,n),await t().loadConfigs()},deleteConfig:async t=>{await V.del(`/api/jira/config/${t}`),e(e=>({configs:e.configs.filter(e=>e.projectId!==t),watchers:[]}))},testConnection:async e=>(await V.post(`/api/jira/config/${e}/test`)).connected,loadWatchers:async t=>{e({watchers:await V.get(`/api/jira/watchers?configId=${t}`)})},createWatcher:async e=>{await V.post(`/api/jira/watchers`,e),e.configId&&await t().loadWatchers(e.configId)},updateWatcher:async(e,n)=>{await V.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 V.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 V.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 V.post(`/api/jira/watchers/${e}/pull`);return await t().loadResults(),n},testJql:async(e,t)=>await V.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 V.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 V.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 V.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 V.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 V.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 V.patch(`/api/jira/results/${t}/read`)}catch{}},loadUnreadCount:async()=>{try{e({unreadCount:(await V.get(`/api/jira/results/unread-count`)).count})}catch{}}})),qf={pending:`bg-warning`,queued:`bg-warning/80`,running:`bg-primary animate-pulse`,done:`bg-success`,failed:`bg-error`};function Jf(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 Yf({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,Z.jsxs)(`div`,{className:G(`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,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,Z.jsx)(`span`,{className:`text-xs font-mono font-semibold text-foreground shrink-0`,children:s.issueKey}),c&&(0,Z.jsx)(`span`,{className:`size-1.5 rounded-full bg-primary shrink-0`}),(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground truncate flex-1 min-w-0`,children:s.issueSummary||`No summary`}),(0,Z.jsx)(`span`,{className:`text-[10px] text-muted-foreground/60 tabular-nums shrink-0`,children:Jf(s.createdAt)})]}),(0,Z.jsxs)(`div`,{className:`flex items-center justify-between min-w-0`,children:[(0,Z.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-[11px] text-muted-foreground`,children:[(0,Z.jsx)(`span`,{className:G(`size-1.5 rounded-full shrink-0`,qf[p])}),p]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-0.5 shrink-0`,onClick:e=>e.stopPropagation(),children:[u&&(0,Z.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,Z.jsx)(He,{className:`size-3`}),(0,Z.jsx)(`span`,{children:`Resume`})]}),d&&(0,Z.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,Z.jsx)(Be,{className:`size-3`})}),f&&(0,Z.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,Z.jsx)(oi,{className:`size-3`})}),s.status===`running`&&(0,Z.jsx)(z,{className:`size-3 animate-spin text-primary`}),l&&(0,Z.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,Z.jsx)(Fe,{className:`size-3`}),(0,Z.jsx)(`span`,{children:`Open`})]}),(0,Z.jsxs)(Vc,{children:[(0,Z.jsx)(Uc,{asChild:!0,children:(0,Z.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,Z.jsx)(Pe,{className:`size-3`})})}),(0,Z.jsx)(Wc,{align:`end`,children:(0,Z.jsxs)(Gc,{className:`text-destructive`,onClick:()=>a(s.id),children:[(0,Z.jsx)(Ue,{className:`size-3.5 mr-2`}),` Delete`]})})]})]})]})]})}function Xf(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 Zf={project:[],issueType:[],priority:[],status:[],assignee:[]};function Qf({value:e,onChange:t,configId:n}){let[r,i]=(0,X.useState)(e?`raw`:`builder`),[a,o]=(0,X.useState)(Zf),[s,c]=(0,X.useState)(e),[l,u]=(0,X.useState)([]),[d,f]=(0,X.useState)([]),[p,m]=(0,X.useState)([]),[h,g]=(0,X.useState)([]),[_,v]=(0,X.useState)([]),[y,b]=(0,X.useState)(!1);(0,X.useEffect)(()=>{n&&(b(!0),Promise.all([V.get(`/api/jira/metadata/${n}/projects`).catch(()=>[]),V.get(`/api/jira/metadata/${n}/issuetype`).catch(()=>[]),V.get(`/api/jira/metadata/${n}/priority`).catch(()=>[]),V.get(`/api/jira/metadata/${n}/status`).catch(()=>[]),V.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,X.useEffect)(()=>{r===`builder`&&t(Xf(a))},[a,r]);let x=(0,X.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,Z.jsxs)(`div`,{className:`space-y-2 min-w-0`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(Y,{type:`button`,size:`sm`,variant:r===`builder`?`default`:`outline`,onClick:()=>i(`builder`),className:`min-h-[44px] text-xs`,children:`Builder`}),(0,Z.jsx)(Y,{type:`button`,size:`sm`,variant:r===`raw`?`default`:`outline`,onClick:()=>i(`raw`),className:`min-h-[44px] text-xs`,children:`Raw JQL`}),y&&(0,Z.jsx)(z,{className:`size-3.5 animate-spin text-muted-foreground`})]}),r===`raw`?(0,Z.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,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)($f,{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,Z.jsx)($f,{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,Z.jsx)($f,{label:`Priority`,field:`priority`,filters:a,onAdd:S,onRemove:C,options:p.map(e=>({value:e.name,label:e.name})),placeholder:`Select priority...`}),(0,Z.jsx)($f,{label:`Status`,field:`status`,filters:a,onAdd:S,onRemove:C,options:h.map(e=>({value:e.name,label:e.name})),placeholder:`Select status...`}),(0,Z.jsx)($f,{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,Z.jsx)(`div`,{className:`text-xs text-muted-foreground bg-muted/50 rounded px-2 py-1 font-mono break-all`,children:r===`builder`?Xf(a):s||`(empty)`})]})}function $f({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,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:e}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 flex-wrap`,children:[n[t].map(e=>(0,Z.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,Z.jsx)(`button`,{type:`button`,onClick:()=>i(t,e),className:`hover:text-destructive`,children:(0,Z.jsx)(Ge,{className:`size-3`})})]},e)),s.length>0?(0,Z.jsxs)(ce,{onValueChange:e=>r(t,e),children:[(0,Z.jsx)(fe,{className:`h-7 w-auto min-w-[120px] text-xs`,children:(0,Z.jsx)(oe,{placeholder:o})}),(0,Z.jsx)(ae,{children:s.map(e=>(0,Z.jsx)(de,{value:e.value,children:e.label},e.value))})]}):a.length>0?(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground italic`,children:`All selected`}):(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground italic`,children:`Loading...`})]})]})}var ep=[{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 tp({configId:e,existing:t,onDone:n}){let{createWatcher:r,updateWatcher:i,testJql:a}=Kf(),[o,s]=(0,X.useState)(t?.name??``),[c,l]=(0,X.useState)(t?.jql??``),[u,d]=(0,X.useState)(t?.intervalMs??12e4),[f,p]=(0,X.useState)(t?.mode??`debug`),[m,h]=(0,X.useState)(t?.promptTemplate??``),[g,_]=(0,X.useState)(!1),[v,y]=(0,X.useState)(!1),[b,x]=(0,X.useState)(null),[S,C]=(0,X.useState)(0),[w,T]=(0,X.useState)(null),E=!!t;return(0,Z.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,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Name`}),(0,Z.jsx)(fn,{value:o,onChange:e=>s(e.target.value),placeholder:`Bug watcher`,className:`h-9`})]}),(0,Z.jsx)(Qf,{value:c,onChange:l,configId:e}),(0,Z.jsxs)(Y,{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,Z.jsx)(z,{className:`size-4 animate-spin mr-1.5`}):(0,Z.jsx)(Yr,{className:`size-4 mr-1.5`}),`Test Filter`]}),w&&(0,Z.jsx)(`p`,{className:`text-xs text-destructive bg-destructive/10 rounded-md px-3 py-2`,children:w}),b&&(0,Z.jsxs)(`div`,{className:`border rounded-md max-h-48 overflow-hidden`,children:[(0,Z.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,Z.jsx)(`div`,{className:`overflow-y-auto max-h-[calc(12rem-30px)]`,children:b.length===0?(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground text-center py-4`,children:`No tickets match this filter.`}):b.map(e=>(0,Z.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,Z.jsx)(`span`,{className:`font-mono font-medium shrink-0`,children:e.key}),(0,Z.jsx)(`span`,{className:`truncate text-muted-foreground flex-1 min-w-0`,children:e.fields.summary}),(0,Z.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,Z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Z.jsxs)(`div`,{className:`flex-1`,children:[(0,Z.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Interval`}),(0,Z.jsxs)(ce,{value:String(u),onValueChange:e=>d(Number(e)),children:[(0,Z.jsx)(fe,{className:`h-9`,children:(0,Z.jsx)(oe,{})}),(0,Z.jsx)(ae,{children:ep.map(e=>(0,Z.jsx)(de,{value:String(e.value),children:e.label},e.value))})]})]}),(0,Z.jsxs)(`div`,{className:`flex-1`,children:[(0,Z.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Mode`}),(0,Z.jsxs)(ce,{value:f,onValueChange:e=>p(e),children:[(0,Z.jsx)(fe,{className:`h-9`,children:(0,Z.jsx)(oe,{})}),(0,Z.jsxs)(ae,{children:[(0,Z.jsx)(de,{value:`debug`,children:`Debug + Notify`}),(0,Z.jsx)(de,{value:`notify`,children:`Notify only`})]})]})]})]}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Prompt template (optional)`}),(0,Z.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,Z.jsx)(Y,{type:`submit`,size:`sm`,disabled:g||!o||!c,className:`min-h-[44px] w-full`,children:g?(0,Z.jsx)(z,{className:`size-4 animate-spin`}):E?`Save Changes`:`Create Watcher`})]})}function np({configId:e}){let{watchers:t,deleteWatcher:n,toggleWatcher:r,pullWatcher:i}=Kf(),[a,o]=(0,X.useState)(!1),[s,c]=(0,X.useState)(null),[l,u]=(0,X.useState)(null),d=async e=>{u(e);try{let t=await i(e);H.success(`Pulled ${t.newIssues} new issue${t.newIssues===1?``:`s`}`)}catch(e){H.error(e.message??`Pull failed`)}u(null)};return(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsx)(`h4`,{className:`text-sm font-medium`,children:`Watchers`}),(0,Z.jsxs)(nn,{open:a,onOpenChange:o,children:[(0,Z.jsx)(tn,{asChild:!0,children:(0,Z.jsxs)(Y,{size:`sm`,variant:`outline`,className:`min-h-[44px]`,children:[(0,Z.jsx)(R,{className:`size-4 mr-1`}),` Add`]})}),(0,Z.jsxs)(Qt,{className:`max-w-md overflow-hidden`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:`New Watcher`})}),(0,Z.jsx)(tp,{configId:e,onDone:()=>o(!1)})]})]})]}),t.length===0&&(0,Z.jsx)(`p`,{className:`text-sm text-muted-foreground py-4 text-center`,children:`No watchers yet.`}),t.map(e=>(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 p-2 rounded-md border text-sm`,children:[(0,Z.jsx)(mn,{checked:e.enabled,onCheckedChange:t=>r(e.id,t),className:`shrink-0`}),(0,Z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,Z.jsx)(`div`,{className:`font-medium truncate`,children:e.name}),(0,Z.jsx)(`div`,{className:`text-xs text-muted-foreground truncate font-mono`,children:e.jql})]}),(0,Z.jsxs)(`span`,{className:`text-xs text-muted-foreground shrink-0`,children:[e.mode===`notify`?`notify`:`debug`,` · `,rp(e.intervalMs)]}),(0,Z.jsx)(Y,{size:`icon`,variant:`ghost`,className:`size-8`,onClick:()=>c(e),children:(0,Z.jsx)(L,{className:`size-3.5`})}),(0,Z.jsx)(Y,{size:`icon`,variant:`ghost`,className:`size-8`,onClick:()=>d(e.id),disabled:l===e.id,children:l===e.id?(0,Z.jsx)(z,{className:`size-3.5 animate-spin`}):(0,Z.jsx)(Be,{className:`size-3.5`})}),(0,Z.jsx)(Y,{size:`icon`,variant:`ghost`,className:`size-8 text-destructive`,onClick:()=>n(e.id),children:(0,Z.jsx)(Ue,{className:`size-3.5`})})]},e.id)),(0,Z.jsx)(nn,{open:!!s,onOpenChange:e=>{e||c(null)},children:(0,Z.jsxs)(Qt,{className:`max-w-md overflow-hidden`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:`Edit Watcher`})}),s&&(0,Z.jsx)(tp,{configId:e,existing:s,onDone:()=>c(null)})]})})]})}function rp(e){return e>=36e5?`${e/36e5}h`:e>=6e4?`${e/6e4}m`:`${e/1e3}s`}function ip({projectId:e,existing:t}){let{saveConfig:n,deleteConfig:r,testConnection:i}=Kf(),[a,o]=(0,X.useState)(t?.baseUrl??``),[s,c]=(0,X.useState)(t?.email??``),[l,u]=(0,X.useState)(``);(0,X.useEffect)(()=>{t&&(o(t.baseUrl),c(t.email))},[t?.baseUrl,t?.email]);let[d,f]=(0,X.useState)(!1),[p,m]=(0,X.useState)(!1),[h,g]=(0,X.useState)(null),[_,v]=(0,X.useState)(null);return(0,Z.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,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Base URL`}),(0,Z.jsx)(fn,{value:a,onChange:e=>o(e.target.value),placeholder:`https://mysite.atlassian.net`,className:`h-9`})]}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Email`}),(0,Z.jsx)(fn,{value:s,onChange:e=>c(e.target.value),placeholder:`you@company.com`,className:`h-9`})]}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`label`,{className:`text-xs text-muted-foreground`,children:[`API Token `,t?.hasToken&&(0,Z.jsx)(`span`,{className:`text-success`,children:`(saved)`})]}),(0,Z.jsx)(fn,{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,Z.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,Z.jsx)(Y,{type:`submit`,size:`sm`,disabled:d,className:`min-w-[44px] min-h-[44px]`,children:d?(0,Z.jsx)(z,{className:`size-4 animate-spin`}):`Save`}),t&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Y,{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,Z.jsx)(z,{className:`size-4 animate-spin`}):`Test Connection`}),(0,Z.jsx)(Y,{type:`button`,size:`sm`,variant:`destructive`,onClick:()=>r(e),className:`min-h-[44px]`,children:(0,Z.jsx)(Ue,{className:`size-4`})})]}),h===`ok`&&(0,Z.jsx)(P,{className:`size-4 text-success`}),h===`fail`&&(0,Z.jsx)(Ln,{className:`size-4 text-error`})]}),_&&(0,Z.jsx)(`p`,{className:`text-xs text-error break-all`,children:_})]})}function ap({result:e,onClose:t}){let{watchers:n,startDebug:r}=Kf(),[i,a]=(0,X.useState)(``);return(0,X.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,Z.jsx)(nn,{open:!!e,onOpenChange:e=>{e||t()},children:(0,Z.jsxs)(Qt,{className:`max-w-md`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsxs)($t,{children:[`Start Debug: `,e?.issueKey]})}),(0,Z.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e?.issueSummary}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`text-xs text-muted-foreground`,children:`Debug Prompt`}),(0,Z.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,Z.jsx)(Y,{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 op(){let e=q(e=>e.activeProject),t=J(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}=Kf(),[g,_]=(0,X.useState)(`tickets`),[v,y]=(0,X.useState)(!1),[b,x]=(0,X.useState)(null),S=l.find(t=>t.name===e?.name),C=n.find(e=>e.projectId===S?.id);(0,X.useEffect)(()=>{a(),c()},[]),(0,X.useEffect)(()=>{C&&o(C.id)},[C?.id]);let w=(0,X.useCallback)(async()=>{y(!0);try{await s()}catch{}y(!1)},[s]);(0,X.useEffect)(()=>{w(),h()},[C?.id]),(0,X.useEffect)(()=>{let n=n=>{let r=n.detail;r&&(w(),r.status===`done`?(h(),H.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`&&H.error(`Debug failed: ${r.issueKey}`))};return window.addEventListener(`jira:status_change`,n),()=>window.removeEventListener(`jira:status_change`,n)},[w,h]);let T=(0,X.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,Z.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,Z.jsxs)(Il,{icon:se,title:`Jira`,children:[m>0&&(0,Z.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,Z.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,Z.jsx)(z,{className:`size-3.5 animate-spin`}):(0,Z.jsx)(Ve,{className:`size-3.5`})}),(0,Z.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,Z.jsx)(Tr,{className:`size-3.5`})}),(0,Z.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,Z.jsx)(Zr,{className:`size-3.5`})})]}),(0,Z.jsx)(pn,{className:`flex-1 min-h-0`,children:(0,Z.jsx)(`div`,{className:`p-1.5 space-y-1.5`,children:C?i.length===0&&r.length===0?(0,Z.jsx)(sp,{message:`No watchers yet`,action:`Add Watcher`,onAction:()=>_(`watchers`)}):i.length===0?(0,Z.jsx)(sp,{message:`No tickets yet. Watchers will pick up new issues.`}):i.map(e=>(0,Z.jsx)(Yf,{result:e,onDebug:x,onResume:e=>d(e.id),onCancel:e=>f(e.id),onOpenSession:T,onDelete:u,onClick:E},e.id)):(0,Z.jsx)(sp,{message:`No Jira credentials configured`,action:`Set up Jira`,onAction:()=>_(`credentials`)})})}),(0,Z.jsx)(ap,{result:b,onClose:()=>x(null)})]}):(0,Z.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,Z.jsxs)(`div`,{className:`shrink-0 px-2 py-2 flex items-center gap-1.5 border-b border-border/50`,children:[(0,Z.jsx)(Y,{size:`icon`,variant:`ghost`,className:`size-7`,onClick:()=>_(`tickets`),children:(0,Z.jsx)(ee,{className:`size-4`})}),(0,Z.jsx)(`h2`,{className:`text-sm font-semibold truncate`,children:g===`watchers`?`Watchers`:`Jira Credentials`})]}),(0,Z.jsx)(pn,{className:`flex-1 min-h-0`,children:(0,Z.jsx)(`div`,{className:`p-3`,children:g===`watchers`?C?(0,Z.jsx)(np,{configId:C.id}):(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground text-center py-4`,children:`Configure Jira credentials first.`}):S?(0,Z.jsx)(ip,{projectId:S.id,existing:C?{baseUrl:C.baseUrl,email:C.email,hasToken:C.hasToken}:null}):(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground text-center py-4`,children:`Project not found in database.`})})})]}):(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-32 p-4`,children:(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground text-center`,children:`Select a project to use Jira`})})}function sp({message:e,action:t,onAction:n}){return(0,Z.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-12 gap-3`,children:[(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground text-center`,children:e}),t&&n&&(0,Z.jsxs)(Y,{size:`sm`,variant:`outline`,className:`min-h-[44px]`,onClick:n,children:[(0,Z.jsx)(R,{className:`size-4 mr-1.5`}),` `,t]})]})}var cp=`/api/ai-resources`;function lp(e){return V.get(`${cp}?project=${encodeURIComponent(e)}`)}function up(e,t){return V.get(`${cp}/content?project=${encodeURIComponent(t)}&path=${encodeURIComponent(e)}`)}function dp(e,t,n){return V.put(`${cp}/content`,{path:e,content:t,project:n})}function fp(e,t,n,r){return V.post(cp,{type:e,scope:t,name:n,project:r})}function pp(e,t,n,r,i){return V.post(`${cp}/duplicate`,{path:e,type:t,scope:n,name:r,project:i})}function mp(e,t,n){return V.del(cp,{path:e,type:t,project:n})}var hp=Ye((e,t)=>({project:null,loading:!1,error:null,result:null,load:async n=>{e({project:n,loading:!0,error:null});try{let r=await lp(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 gp(){return V.get(`/api/settings/mcp`)}function _p(e,t){return V.post(`/api/settings/mcp`,{name:e,config:t})}function vp(e,t){return V.put(`/api/settings/mcp/${encodeURIComponent(e)}`,t)}function yp(e){return V.del(`/api/settings/mcp/${encodeURIComponent(e)}`)}function bp(){return V.post(`/api/settings/mcp/import`,{})}function xp(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 Sp(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 Cp=[`stdio`,`http`,`sse`];function wp({open:e,onClose:t,editServer:n}){let r=!!n,[i,a]=(0,X.useState)(``),[o,s]=(0,X.useState)(`stdio`),[c,l]=(0,X.useState)(``),[u,d]=(0,X.useState)(``),[f,p]=(0,X.useState)(``),[m,h]=(0,X.useState)([]),[g,_]=(0,X.useState)(!1),[v,y]=(0,X.useState)(null);(0,X.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(Tp(e.env))):`url`in e&&(p(e.url||``),h(Tp(e.headers)))}else a(``),s(`stdio`),l(``),d(``),p(``),h([])},[e,n]);let b=()=>{let e=Ep(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=xp(i);if(e){y(e);return}}let e=b(),n=Sp(e);if(n.length){y(n.join(`; `));return}_(!0);try{r?await vp(i,e):await _p(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,Z.jsx)(nn,{open:e,onOpenChange:e=>{e||t()},children:(0,Z.jsxs)(Qt,{className:`max-h-[85vh] overflow-y-auto sm:max-w-md`,children:[(0,Z.jsxs)(Xt,{children:[(0,Z.jsx)($t,{className:`text-sm`,children:r?`Edit MCP Server`:`Add MCP Server`}),(0,Z.jsx)(en,{className:`text-[11px]`,children:`Configure a Model Context Protocol server connection.`})]}),(0,Z.jsxs)(`div`,{className:`space-y-3`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Name`}),(0,Z.jsx)(fn,{value:i,onChange:e=>a(e.target.value),placeholder:`my-mcp-server`,className:`h-8 text-xs`,disabled:r})]}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Transport`}),(0,Z.jsx)(`div`,{className:`flex gap-1`,children:Cp.map(e=>(0,Z.jsx)(Y,{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,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Command *`}),(0,Z.jsx)(fn,{value:c,onChange:e=>l(e.target.value),placeholder:`npx`,className:`h-8 text-xs`})]}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Arguments (space-separated)`}),(0,Z.jsx)(fn,{value:u,onChange:e=>d(e.target.value),placeholder:`@playwright/mcp@latest`,className:`h-8 text-xs`})]})]}):(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:`URL *`}),(0,Z.jsx)(fn,{value:f,onChange:e=>p(e.target.value),placeholder:`https://mcp.example.com`,className:`h-8 text-xs`})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(`label`,{className:`text-[11px] font-medium text-muted-foreground`,children:E}),m.map((e,t)=>(0,Z.jsxs)(`div`,{className:`flex gap-1 items-center`,children:[(0,Z.jsx)(fn,{value:e.key,onChange:e=>w(t,`key`,e.target.value),placeholder:`KEY`,className:`h-7 text-xs flex-1`}),(0,Z.jsx)(fn,{value:e.value,onChange:e=>w(t,`value`,e.target.value),placeholder:`value`,className:`h-7 text-xs flex-1`}),(0,Z.jsx)(Y,{variant:`ghost`,size:`icon`,className:`size-7 shrink-0 cursor-pointer`,onClick:()=>C(t),children:(0,Z.jsx)(Ge,{className:`size-3`})})]},t)),(0,Z.jsxs)(Y,{variant:`outline`,size:`sm`,className:`h-7 text-xs gap-1 cursor-pointer`,onClick:S,children:[(0,Z.jsx)(R,{className:`size-3`}),` Add `,T?`Variable`:`Header`]})]}),v&&(0,Z.jsx)(`p`,{className:`text-[11px] text-destructive`,children:v})]}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(Y,{variant:`outline`,size:`sm`,className:`h-8 text-xs cursor-pointer`,onClick:()=>t(),children:`Cancel`}),(0,Z.jsx)(Y,{size:`sm`,className:`h-8 text-xs cursor-pointer`,onClick:x,disabled:g,children:g?`Saving...`:`Save`})]})]})})}function Tp(e){return e?Object.entries(e).map(([e,t])=>({key:e,value:t})):[]}function Ep(e){let t={};for(let{key:n,value:r}of e)n.trim()&&(t[n.trim()]=r);return t}var Dp={skill:gr,agent:ie,command:ii},Op={skill:`Skills`,agent:`Agents`,command:`Commands`},kp={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`},Ap={project:`Project`,user:`User`,bundled:`Bundled`};function jp({scope:e,className:t}){return(0,Z.jsx)(`span`,{className:G(`shrink-0 rounded border px-1 py-px text-[9px] font-medium uppercase leading-none tracking-wide`,kp[e],t),children:Ap[e]})}var Mp=(0,X.memo)(function({item:e,active:t,onOpen:n,onDuplicate:r,onDelete:i}){let a=Dp[e.type];return(0,Z.jsxs)(un,{children:[(0,Z.jsx)(dn,{asChild:!0,children:(0,Z.jsxs)(`button`,{onClick:()=>n(e),className:G(`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,Z.jsx)(a,{className:`size-4 shrink-0 text-text-subtle`,strokeWidth:t?2.3:2}),(0,Z.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Z.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(`span`,{className:G(`truncate text-[13px] font-medium`,e.shadowed&&`line-through`),children:e.name}),e.overrides?(0,Z.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,Z.jsx)(`span`,{className:`shrink-0 text-[9px] text-text-subtle`,children:`shadowed`}):null]}),e.description?(0,Z.jsx)(`span`,{className:`block truncate text-[11px] text-text-subtle`,children:e.description}):null]}),(0,Z.jsx)(jp,{scope:e.scope})]})}),(0,Z.jsxs)(sn,{className:`w-48`,children:[(0,Z.jsx)(ln,{onClick:()=>n(e),children:e.readOnly?`Open (read-only)`:`Open / Edit`}),(0,Z.jsx)(ln,{onClick:()=>r(e),children:`Duplicate…`}),!e.readOnly&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(cn,{}),(0,Z.jsx)(ln,{variant:`destructive`,onClick:()=>i(e),children:`Delete`})]})]})]})});function Np({open:e,onOpenChange:t,mode:n,source:r,initialType:i,project:a,hasProject:o,onSuccess:s}){let[c,l]=(0,X.useState)(`skill`),[u,d]=(0,X.useState)(o?`project`:`user`),[f,p]=(0,X.useState)(``),[m,h]=(0,X.useState)(!1);(0,X.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 pp(r.filePath,c,u,f,a):await fp(c,u,f,a);H.success(n===`duplicate`?`Resource duplicated`:`Resource created`),t(!1),s(e.filePath)}catch(e){H.error(e.message),h(!1)}}}return(0,Z.jsx)(nn,{open:e,onOpenChange:t,children:(0,Z.jsxs)(Qt,{className:`sm:max-w-md`,children:[(0,Z.jsxs)(Xt,{children:[(0,Z.jsx)($t,{children:n===`duplicate`?`Duplicate resource`:`New resource`}),(0,Z.jsx)(en,{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,Z.jsxs)(`div`,{className:`space-y-3 py-1`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(le,{children:`Type`}),(0,Z.jsxs)(ce,{value:c,onValueChange:e=>l(e),disabled:n===`duplicate`,children:[(0,Z.jsx)(fe,{children:(0,Z.jsx)(oe,{})}),(0,Z.jsxs)(ae,{children:[(0,Z.jsx)(de,{value:`skill`,children:`Skill`}),(0,Z.jsx)(de,{value:`agent`,children:`Agent`}),(0,Z.jsx)(de,{value:`command`,children:`Command`})]})]})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(le,{children:`Scope`}),(0,Z.jsxs)(ce,{value:u,onValueChange:e=>d(e),children:[(0,Z.jsx)(fe,{children:(0,Z.jsx)(oe,{})}),(0,Z.jsxs)(ae,{children:[(0,Z.jsxs)(de,{value:`project`,disabled:!o,children:[`Project`,o?``:` (no project selected)`]}),(0,Z.jsx)(de,{value:`user`,children:`User (~/.claude)`})]})]})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(le,{children:`Name`}),(0,Z.jsx)(fn,{value:f,autoFocus:!0,placeholder:`my-resource`,onChange:e=>p(e.target.value),onKeyDown:e=>{e.key===`Enter`&&_()}}),f&&!g&&(0,Z.jsx)(`p`,{className:`text-[11px] text-destructive`,children:`Use letters, numbers, dots, dashes, underscores (no spaces or slashes).`})]})]}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(Y,{variant:`ghost`,onClick:()=>t(!1),disabled:m,children:`Cancel`}),(0,Z.jsx)(Y,{onClick:_,disabled:!g||m,children:m?`Working…`:n===`duplicate`?`Duplicate`:`Create`})]})]})})}function Pp({open:e,kind:t,name:n,folderWarning:r,onCancel:i,onConfirm:a}){return(0,Z.jsx)(nn,{open:e,onOpenChange:e=>{e||i()},children:(0,Z.jsxs)(Qt,{className:`sm:max-w-md`,children:[(0,Z.jsxs)(Xt,{children:[(0,Z.jsxs)($t,{children:[`Delete `,t,`?`]}),(0,Z.jsxs)(en,{children:[`This permanently deletes `,(0,Z.jsx)(`span`,{className:`font-medium text-foreground`,children:n}),r?` and its entire skill folder`:``,`. This cannot be undone.`]})]}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(Y,{variant:`ghost`,onClick:i,children:`Cancel`}),(0,Z.jsx)(Y,{variant:`destructive`,onClick:a,children:`Delete`})]})]})})}function Fp(e,t){let n=J.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 Ip(){let[e,t]=(0,X.useState)([]),[n,r]=(0,X.useState)(!0),i=(0,X.useCallback)(async()=>{try{t(await gp())}catch{}finally{r(!1)}},[]);return(0,X.useEffect)(()=>{i()},[i]),{servers:e,loading:n,reload:i,remove:(0,X.useCallback)(async e=>{await yp(e),await i()},[i])}}function Lp({servers:e,showActions:t,importing:n,onAdd:r,onImport:i,onEdit:a,onDelete:o}){return e.length===0&&!t?null:(0,Z.jsxs)(`div`,{className:`pb-1`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1 text-[10px] font-semibold uppercase tracking-wide text-text-subtle`,children:[(0,Z.jsx)(`span`,{children:`MCP Servers`}),(0,Z.jsx)(`span`,{className:`text-text-subtle/60`,children:e.length})]}),e.map(e=>(0,Z.jsxs)(un,{children:[(0,Z.jsx)(dn,{asChild:!0,children:(0,Z.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,Z.jsx)(Ur,{className:`size-4 shrink-0 text-text-subtle`}),(0,Z.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Z.jsx)(`span`,{className:`block truncate text-[13px] font-medium`,children:e.name}),(0,Z.jsx)(`span`,{className:`block truncate text-[11px] text-text-subtle`,children:Rp(e)})]}),(0,Z.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,Z.jsxs)(sn,{className:`w-40`,children:[(0,Z.jsx)(ln,{onClick:()=>a(e),children:`Edit…`}),(0,Z.jsx)(cn,{}),(0,Z.jsx)(ln,{variant:`destructive`,onClick:()=>o(e),children:`Delete`})]})]},e.name)),e.length===0&&t&&(0,Z.jsx)(`p`,{className:`px-2 py-2 text-[11px] text-text-subtle`,children:`No MCP servers configured.`}),t&&(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1 px-2 pt-1.5`,children:[(0,Z.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,Z.jsx)(R,{className:`size-3.5`}),` Add MCP server`]}),(0,Z.jsxs)(`button`,{onClick:i,disabled:n,className:G(`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,Z.jsx)(Me,{className:`size-3.5`}),` `,n?`Importing…`:`Import from Claude Code`]})]})]})}function Rp(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 zp({onCreate:e,onAddMcp:t,onImportMcp:n}){return(0,Z.jsxs)(Vc,{children:[(0,Z.jsx)(Uc,{asChild:!0,children:(0,Z.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,Z.jsx)(R,{className:`size-3`}),` New`]})}),(0,Z.jsxs)(Wc,{align:`end`,className:`w-44`,children:[(0,Z.jsxs)(Gc,{onClick:()=>e(`skill`),children:[(0,Z.jsx)(gr,{className:`size-3.5`}),` New Skill`]}),(0,Z.jsxs)(Gc,{onClick:()=>e(`agent`),children:[(0,Z.jsx)(ie,{className:`size-3.5`}),` New Agent`]}),(0,Z.jsxs)(Gc,{onClick:()=>e(`command`),children:[(0,Z.jsx)(ii,{className:`size-3.5`}),` New Command`]}),(0,Z.jsx)(Yc,{}),(0,Z.jsxs)(Gc,{onClick:t,children:[(0,Z.jsx)(Ur,{className:`size-3.5`}),` New MCP Server`]}),(0,Z.jsxs)(Gc,{onClick:n,children:[(0,Z.jsx)(Me,{className:`size-3.5`}),` Import MCP…`]})]})]})}var Bp=[{id:`all`,label:`All`},{id:`skill`,label:`Skills`},{id:`agent`,label:`Agents`},{id:`command`,label:`Commands`},{id:`mcp`,label:`MCP`}];function Vp(){let e=q(rn(e=>e.activeProject)),t=e?.path??``,{result:n,loading:r,error:i,load:a,reload:o}=hp(rn(e=>({result:e.result,loading:e.loading,error:e.error,load:e.load,reload:e.reload}))),{tabs:s,activeTabId:c}=J(rn(e=>({tabs:e.tabs,activeTabId:e.activeTabId}))),{servers:l,reload:u,remove:d}=Ip(),[f,p]=(0,X.useState)(``),[m,h]=(0,X.useState)(`all`),[g,_]=(0,X.useState)(!1),[v,y]=(0,X.useState)(`skill`),[b,x]=(0,X.useState)(null),[S,C]=(0,X.useState)(null),[w,T]=(0,X.useState)(!1),[E,D]=(0,X.useState)(null),[O,k]=(0,X.useState)(null),[A,j]=(0,X.useState)(!1);(0,X.useEffect)(()=>{a(t)},[t,a]);let M=(0,X.useMemo)(()=>s.find(e=>e.id===c&&e.type===`ai-resource`)?.metadata?.filePath??null,[s,c]),ee=m!==`mcp`,N=m===`all`||m===`mcp`,P=(0,X.useMemo)(()=>{if(!n||!ee)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,ee]),F=(0,X.useMemo)(()=>{if(!N)return[];let e=f.trim().toLowerCase();return e?l.filter(t=>t.name.toLowerCase().includes(e)||Rp(t).toLowerCase().includes(e)):l},[l,f,N]),I=e=>Fp(e,t),te=async e=>{await o();let n=hp.getState().result?.groups.flatMap(e=>e.items).find(t=>t.filePath===e);n&&Fp(n,t)},ne=async()=>{if(S)try{await mp(S.filePath,S.type,t),H.success(`Deleted ${S.name}`),C(null),await o()}catch(e){H.error(e.message)}},re=e=>{x(null),y(e),_(!0)},ie=()=>{D(null),T(!0)},L=e=>{T(!1),D(null),e&&u()},ae=async()=>{if(O)try{await d(O.name),H.success(`Deleted ${O.name}`),k(null)}catch(e){H.error(e.message)}},oe=async()=>{j(!0);try{let e=await bp();H.success(`Imported ${e.imported}, skipped ${e.skipped}`),await u()}catch(e){H.error(e.message)}finally{j(!1)}},se=n?.stats,ce=P.length===0&&(!N||F.length===0)&&m!==`mcp`;return(0,Z.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Z.jsxs)(Il,{icon:ke,title:`AI Resources`,children:[(0,Z.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,Z.jsx)(Ve,{className:G(`size-3.5`,r&&`animate-spin`)})}),(0,Z.jsx)(zp,{onCreate:re,onAddMcp:ie,onImportMcp:oe})]}),(0,Z.jsx)(`div`,{className:`px-2 pt-2 shrink-0`,children:(0,Z.jsxs)(`div`,{className:`relative`,children:[(0,Z.jsx)(Yr,{className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-text-subtle`}),(0,Z.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,Z.jsx)(`div`,{className:`flex gap-1 px-2 py-2 shrink-0`,children:Bp.map(e=>(0,Z.jsx)(`button`,{onClick:()=>h(e.id),className:G(`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,Z.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto`,children:i?(0,Z.jsx)(`div`,{className:`p-4 text-center text-xs text-destructive`,children:i}):r&&!n?(0,Z.jsx)(`div`,{className:`space-y-1 p-2`,children:Array.from({length:6}).map((e,t)=>(0,Z.jsx)(`div`,{className:`h-9 animate-pulse rounded bg-surface-elevated`},t))}):ce?(0,Z.jsx)(Hp,{hasProject:!!e,search:f}):(0,Z.jsxs)(Z.Fragment,{children:[P.map(e=>(0,Z.jsxs)(`div`,{className:`pb-1`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1 text-[10px] font-semibold uppercase tracking-wide text-text-subtle`,children:[(0,Z.jsx)(`span`,{children:Op[e.type]}),(0,Z.jsx)(`span`,{className:`text-text-subtle/60`,children:e.items.length})]}),e.items.map(e=>(0,Z.jsx)(Mp,{item:e,active:M===e.filePath,onOpen:I,onDuplicate:e=>x(e),onDelete:e=>C(e)},`${e.source}:${e.filePath}`))]},e.type)),N&&(0,Z.jsx)(Lp,{servers:F,showActions:m===`mcp`,importing:A,onAdd:ie,onImport:oe,onEdit:e=>{D(e),T(!0)},onDelete:e=>k(e)})]})}),se&&(0,Z.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,Z.jsxs)(`span`,{children:[se.active,` active`]}),(0,Z.jsx)(`span`,{children:`·`}),(0,Z.jsxs)(`span`,{children:[se.project,` project`]}),(0,Z.jsx)(`span`,{children:`·`}),(0,Z.jsxs)(`span`,{children:[se.shadowed,` shadowed`]})]}),(0,Z.jsx)(Np,{open:g||!!b,onOpenChange:e=>{e||(_(!1),x(null))},mode:b?`duplicate`:`create`,source:b,initialType:v,project:t,hasProject:!!e,onSuccess:te}),(0,Z.jsx)(Pp,{open:!!S,kind:S?.type??``,name:S?.name??``,folderWarning:S?.type===`skill`,onCancel:()=>C(null),onConfirm:ne}),(0,Z.jsx)(wp,{open:w,onClose:L,editServer:E}),(0,Z.jsx)(Pp,{open:!!O,kind:`MCP server`,name:O?.name??``,onCancel:()=>k(null),onConfirm:ae})]})}function Hp({hasProject:e,search:t}){return t?(0,Z.jsxs)(`div`,{className:`p-6 text-center text-xs text-text-subtle`,children:[`No resources match “`,t,`”.`]}):(0,Z.jsxs)(`div`,{className:`flex flex-col items-center gap-2 p-6 text-center`,children:[(0,Z.jsx)(ar,{className:`size-6 text-text-subtle`}),(0,Z.jsx)(`p`,{className:`text-xs font-medium`,children:e?`No resources yet`:`No project selected`}),(0,Z.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 Up={list:(e=!1)=>V.get(`/api/tunnels${e?`?force=1`:``}`),start:e=>V.post(`/api/tunnels`,{port:e}),stop:e=>V.del(`/api/tunnels/${e}`)},Wp={status:()=>V.get(`/api/tunnel/named/status`),dismiss:()=>V.post(`/api/tunnel/named/dismiss`),zone:()=>V.get(`/api/tunnel/named/zone`),login:(e=!1)=>V.post(`/api/tunnel/named/login${e?`?relogin=1`:``}`),cancelLogin:()=>V.post(`/api/tunnel/named/login/cancel`),setup:e=>V.post(`/api/tunnel/named/setup`,{hostname:e}),disable:()=>V.post(`/api/tunnel/named/disable`)},Gp={askDomain:{title:`Bạn đã có domain trên Cloudflare chưa?`,body:`Có domain riêng thì PPM có thể gắn một địa chỉ cố định (không đổi khi khởi động lại). Không có domain thì vẫn dùng bình thường với link tạm thời.`,yes:`Có`,no:`Chưa`},noDomain:{title:`Không sao cả`,body:`PPM sẽ tiếp tục dùng link tạm thời (quick tunnel). Bạn có thể bật lại tính năng này bất cứ lúc nào trong mục Tunnel Manager.`,close:`Đóng`},login:{title:`Đăng nhập Cloudflare`,hint:`Mở link bên dưới để đăng nhập — có thể làm trên điện thoại nếu tiện hơn.`,finishOnPhone:`Có thể hoàn tất bước này trên điện thoại nếu dễ hơn.`,copy:`Sao chép`,copied:`Đã sao chép`,open:`Mở link`,waiting:`Đang chờ đăng nhập…`,slowTitle:`Vẫn đang đăng nhập?`,slowBody:`Cloudflare đôi khi mất vài phút. Tiến trình vẫn đang chạy — bạn có thể tiếp tục chờ hoặc huỷ.`,keepWaiting:`Tiếp tục chờ`,cancel:`Huỷ`},timeout:{title:`Link đăng nhập đã hết hạn`,body:`Link cũ hết hạn sau 5 phút không dùng. Bấm Thử lại để lấy link mới.`,retry:`Thử lại`},cancelled:{title:`Đã huỷ đăng nhập`,body:`Bạn đã huỷ quá trình đăng nhập Cloudflare.`,retry:`Thử lại`},confirmZone:{title:`Xác nhận vùng miền`,body:e=>`Máy này sẽ được gán một địa chỉ cố định dưới ${e}. Tiếp tục?`,confirm:`Tiếp tục`,startOver:`Bắt đầu lại`},needsRelogin:{title:`Cần đăng nhập lại Cloudflare`,certInvalid:`Phiên đăng nhập Cloudflare đã hết hiệu lực.`,certMismatch:`Chứng chỉ này thuộc một tài khoản Cloudflare khác — cần đăng nhập lại.`,action:`Đăng nhập lại`},hostname:{title:`Chọn địa chỉ`,prefixLabel:`Tiền tố`,suffixHint:`Phần đuôi được cố định theo tài khoản bạn vừa đăng nhập.`,submit:`Xác nhận`},applying:{title:`Đang thiết lập…`},done:{title:`Đã thiết lập xong`,body:e=>`Địa chỉ cố định: https://${e}`,close:`Đóng`},pending:{title:`Đã lưu — đang chờ áp dụng`,restartHint:"Chạy lệnh `ppm restart` để áp dụng ngay.",close:`Đóng`},error:{title:`Có lỗi xảy ra`,retry:`Thử lại`,close:`Đóng`},section:{title:`Named Tunnel`,modeQuick:`quick`,modeNamed:`named`,hostnameLabel:`Địa chỉ`,tokenLabel:`Token`,setup:`Thiết lập named tunnel`,retry:`Thử lại`,relogin:`Đăng nhập lại`,disable:`Chuyển về quick tunnel`,disableConfirm:`Bấm lần nữa để xác nhận`,disableSelfCut:`Bạn đang mở PPM qua chính tên miền này — tắt nó sẽ ngắt trang ngay và bạn sẽ không kịp thấy link tạm. Mở PPM qua địa chỉ mạng nội bộ rồi tắt.`,certInvalid:`Cần đăng nhập lại Cloudflare`,certMismatch:`Chứng chỉ thuộc tài khoản Cloudflare khác — cần đăng nhập lại`,authDisabled:`Bật xác thực PPM để dùng tên miền riêng`,configuredAs:e=>`đã cấu hình: ${e}`}},Kp=/^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$/,qp=253;function Jp(e,t){return`${e.trim().toLowerCase()}.${t.trim().toLowerCase()}`}function Yp(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>qp)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(!Kp.test(e))return{ok:!1,reason:`invalid DNS label: "${e}"`};return{ok:!0}}function Xp(e){return e.authEnabled??!0?e.certState===`invalid`||e.certState===`mismatch`?{k:`needs-relogin`,message:e.certState===`mismatch`?Gp.needsRelogin.certMismatch:Gp.needsRelogin.certInvalid}:e.mode!==`quick`||e.dismissed?{k:`hidden`}:$p(e.login.state,e.login.url,e.login.message):{k:`hidden`}}var Zp=new Set([`hidden`,`ask-domain`,`login-wait`,`login-timeout`,`login-cancelled`,`needs-relogin`,`error`]),Qp=new Set([`login-wait`,`needs-relogin`]);function $p(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??Gp.error.title};case`success`:return{k:`login-wait`,url:t,slow:!1};default:return{k:`ask-domain`}}}function em(e,t){switch(t.type){case`status`:return Zp.has(e.k)?Xp(t.status):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 $p(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 Qp.has(e.k)?{k:`confirm-zone`,zone:t.zone}:e;case`zone-error`:return Qp.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:Gp.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 tm=null;function nm(){return tm}var rm=[`tunnel:login_url`,`tunnel:login_state`,`tunnel:setup_step`,`tunnel:setup_done`,`tunnel:setup_pending`,`tunnel:setup_error`];function im(e){return e instanceof Error?e.message:Gp.error.title}function am(){let[e,t]=(0,X.useState)({k:`hidden`}),[n,r]=(0,X.useState)(null),i=(0,X.useRef)(!1),a=(0,X.useRef)(e);a.current=e;let o=(0,X.useCallback)(e=>{t(t=>em(t,e))},[]),s=(0,X.useCallback)(()=>{i.current||(i.current=!0,Wp.zone().then(e=>o({type:`zone-loaded`,zone:e.zone})).catch(e=>o({type:`zone-error`,message:im(e)})).finally(()=>{i.current=!1}))},[o]),c=(0,X.useCallback)(()=>{Qp.has(a.current.k)&&s()},[s]),l=(0,X.useCallback)(async()=>{try{let e=await Wp.status();r(e),e.mode===`named`&&e.hostname&&(tm=e.hostname),o({type:`status`,status:e}),e.mode===`quick`&&e.login.state===`success`&&c()}catch{}},[o,c]);(0,X.useEffect)(()=>{l()},[l]),(0,X.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`:tm=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 rm.forEach(t=>window.addEventListener(t,e)),()=>rm.forEach(t=>window.removeEventListener(t,e))},[o,c,l]);let u=(0,X.useCallback)(e=>{o({type:`answer-yes`}),Wp.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:im(e)}))},[o,c,l]),d=(0,X.useCallback)(()=>u(!1),[u]),f=(0,X.useCallback)(()=>u(!1),[u]),p=(0,X.useCallback)(()=>u(!0),[u]),m=(0,X.useCallback)(()=>{o({type:`answer-no`}),Wp.dismiss().catch(()=>{})},[o]),h=(0,X.useCallback)(()=>{o({type:`cancel`}),Wp.cancelLogin().catch(()=>{})},[o]),g=(0,X.useCallback)(()=>o({type:`confirm-zone`}),[o]),_=(0,X.useCallback)(()=>o({type:`start-over`}),[o]),v=(0,X.useCallback)(()=>o({type:`close`}),[o]);return{step:e,status:n,answerYes:d,answerNo:m,cancelLogin:h,retryLogin:f,confirmZone:g,startOver:_,setHostnamePrefix:(0,X.useCallback)(e=>{let t=a.current;if(t.k!==`choose-hostname`)return;let n=Yp(Jp(e,t.zone),t.zone);o({type:`hostname-prefix`,prefix:e,error:n.ok?void 0:n.reason})},[o]),submitHostname:(0,X.useCallback)(()=>{let e=a.current;if(e.k!==`choose-hostname`)return;let t=Jp(e.prefix,e.zone),n=Yp(t,e.zone);if(!n.ok){o({type:`hostname-prefix`,prefix:e.prefix,error:n.reason});return}o({type:`submit`}),Wp.setup(t).then(e=>{tm=e.hostname,e.pending?o({type:`setup-pending`,hostname:e.hostname,message:e.message??Gp.pending.title}):o({type:`setup-done`,hostname:e.hostname}),l()}).catch(e=>o({type:`setup-error`,message:im(e)}))},[o,l]),requestRelogin:p,close:v,refreshStatus:l}}function om({url:e,slow:t,onCancel:n}){let[r,i]=(0,X.useState)(!1),[a,o]=(0,X.useState)(!1),s=Gp.login,c=t&&!a;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:s.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:s.hint})]}),e?(0,Z.jsxs)(`div`,{className:`flex items-stretch gap-2`,children:[(0,Z.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,Z.jsx)(`button`,{type:`button`,onClick:async()=>{await Jt(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,Z.jsx)(me,{className:`size-4 text-success`}):(0,Z.jsx)(Ae,{className:`size-4`})}),(0,Z.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,Z.jsx)(Fe,{className:`size-4`})})]}):(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-text-secondary`,children:[(0,Z.jsx)(z,{className:`size-4 animate-spin`}),s.waiting]}),(0,Z.jsx)(`p`,{className:`text-xs text-text-subtle`,children:s.finishOnPhone}),c&&(0,Z.jsxs)(`div`,{className:`rounded-lg border border-warning/30 bg-warning/10 p-3 space-y-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,Z.jsx)(We,{className:`size-4 text-warning shrink-0 mt-0.5`}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:s.slowTitle}),(0,Z.jsx)(`p`,{className:`text-xs text-text-secondary leading-relaxed mt-0.5`,children:s.slowBody})]})]}),(0,Z.jsxs)(`div`,{className:`flex gap-2 pt-1`,children:[(0,Z.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,Z.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,Z.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 sm({zone:e,prefix:t,error:n,onChange:r}){let i=(0,X.useRef)(null);return(0,X.useEffect)(()=>{i.current?.focus()},[]),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(`label`,{htmlFor:`named-tunnel-prefix`,className:`block text-sm font-medium text-foreground`,children:Gp.hostname.prefixLabel}),(0,Z.jsxs)(`div`,{className:`flex items-stretch rounded-lg border border-border bg-background focus-within:border-primary/50 transition-colors overflow-hidden`,children:[(0,Z.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,Z.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,Z.jsx)(`p`,{className:`text-xs text-text-subtle`,children:Gp.hostname.suffixHint}),n&&(0,Z.jsx)(`p`,{className:`text-xs text-destructive`,children:n})]})}var cm=`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`,lm=`w-full min-h-11 py-3 rounded-lg border border-border text-sm text-text-secondary hover:bg-surface-elevated transition-colors`;function um({step:e,t}){switch(e.k){case`hidden`:return null;case`ask-domain`:{let e=Gp.askDomain;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:e.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.body})]}),(0,Z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Z.jsx)(`button`,{type:`button`,onClick:t.answerNo,className:lm,children:e.no}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.answerYes,className:cm,children:e.yes})]})]})}case`no-domain`:{let e=Gp.noDomain;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:e.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.body})]}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.close,className:cm,children:e.close})]})}case`login-wait`:return(0,Z.jsx)(om,{url:e.url,slow:e.slow,onCancel:t.cancelLogin});case`login-timeout`:{let e=Gp.timeout;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:e.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.body})]}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.retryLogin,className:cm,children:e.retry})]})}case`login-cancelled`:{let e=Gp.cancelled;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:e.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.body})]}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.retryLogin,className:cm,children:e.retry})]})}case`confirm-zone`:{let n=Gp.confirmZone;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:n.body(e.zone)})]}),(0,Z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Z.jsx)(`button`,{type:`button`,onClick:t.startOver,className:lm,children:n.startOver}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.confirmZone,className:cm,children:n.confirm})]})]})}case`needs-relogin`:{let n=Gp.needsRelogin;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.message})]}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.requestRelogin,className:cm,children:n.action})]})}case`choose-hostname`:{let n=Gp.hostname;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,Z.jsx)(sm,{zone:e.zone,prefix:e.prefix,error:e.error,onChange:t.setHostnamePrefix}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.submitHostname,disabled:!e.prefix||!!e.error,className:cm,children:n.submit})]})}case`applying`:return(0,Z.jsx)(`div`,{className:`space-y-4 py-4`,children:(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-foreground`,children:[(0,Z.jsx)(z,{className:`size-4 animate-spin text-primary`}),e.message]})});case`done`:{let n=Gp.done;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary break-all`,children:n.body(e.hostname)})]}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.close,className:cm,children:n.close})]})}case`pending`:{let n=Gp.pending;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.message}),(0,Z.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,Z.jsx)(`button`,{type:`button`,onClick:t.close,className:cm,children:n.close})]})}case`error`:{let n=Gp.error;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,Z.jsx)(Ln,{className:`size-4 text-destructive shrink-0 mt-0.5`}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h2`,{className:`text-base font-semibold text-foreground`,children:n.title}),(0,Z.jsx)(`p`,{className:`mt-1 text-sm text-text-secondary leading-relaxed`,children:e.message})]})]}),(0,Z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Z.jsx)(`button`,{type:`button`,onClick:t.close,className:lm,children:n.close}),(0,Z.jsx)(`button`,{type:`button`,onClick:t.retryLogin,className:cm,children:n.retry})]})]})}default:return null}}function dm(){let e=am(),[t,n]=(0,X.useState)(!1),[r,i]=(0,X.useState)(!1),[a,o]=(0,X.useState)(!1),s=Gp.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 Wp.disable(),H.success(`Đã chuyển về quick tunnel`),await e.refreshStatus()}catch(e){H.error(e instanceof Error?e.message:`Không chuyển được về quick tunnel`)}finally{i(!1)}}async function h(e){if(!await Jt(`https://${e}`)){H.error(`Failed to copy URL`);return}o(!0),setTimeout(()=>o(!1),2e3)}return(0,Z.jsxs)(`div`,{className:`p-3 border-b border-border bg-surface space-y-3`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(`span`,{className:`text-sm font-medium text-text-primary`,children:s.title}),(0,Z.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,Z.jsxs)(`span`,{className:`text-[10px] text-text-subtle`,children:[`(`,s.configuredAs(c.mode),`)`]})]}),c.mode===`named`&&c.hostname&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 text-xs`,children:[(0,Z.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,Z.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,Z.jsx)(me,{className:`size-3.5 text-success`}):(0,Z.jsx)(Ae,{className:`size-3.5 text-text-secondary`})}),(0,Z.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,Z.jsx)(Fe,{className:`size-3.5 text-text-secondary`})})]}),c.tokenMasked&&(0,Z.jsxs)(`p`,{className:`text-[10px] font-mono text-text-subtle`,children:[s.tokenLabel,`: `,c.tokenMasked]}),c.tunnelWarning&&(0,Z.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,Z.jsx)(We,{className:`size-3.5 text-warning shrink-0`}),c.tunnelWarning]}),p&&!u&&(0,Z.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,Z.jsx)(ei,{className:`size-3.5 text-warning shrink-0`}),c.certState===`mismatch`?s.certMismatch:s.certInvalid]}),u?(0,Z.jsx)(um,{step:e.step,t:e}):d?(0,Z.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[c.mode===`quick`&&(0,Z.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,Z.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,Z.jsx)(`p`,{className:`text-xs text-text-secondary`,children:s.authDisabled}),c.mode===`named`&&l&&(0,Z.jsx)(`p`,{className:`text-[11px] text-text-secondary leading-relaxed`,children:s.disableSelfCut})]})}var fm={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 pm(){let[e,t]=(0,X.useState)([]),[n,r]=(0,X.useState)(``),[i,a]=(0,X.useState)(!1),[o,s]=(0,X.useState)(null),[c,l]=(0,X.useState)(null),[u,d]=(0,X.useState)(null),[f,p]=(0,X.useState)(!1),[m,h]=(0,X.useState)(!1),g=(0,X.useCallback)(async(e=!1)=>{e&&h(!0);try{t(await Up.list(e))}catch(e){console.warn(`[tunnels] failed to fetch`,e)}finally{p(!0),e&&h(!1)}},[]);(0,X.useEffect)(()=>{g();let e=setInterval(()=>g(),1e4);return()=>clearInterval(e)},[g]);let _=async e=>{a(!0),s(null);try{let t=await Up.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 Up.stop(e.pid),await g()}catch(t){H.error(t.message||`Failed to stop tunnel (pid ${e.pid})`)}},y=(e,t)=>{Jt(t).then(t=>{if(!t){H.error(`Failed to copy URL`);return}l(e),H.success(`URL copied`),setTimeout(()=>l(null),2e3)})};return(0,Z.jsxs)(`div`,{className:`flex flex-col h-full w-full bg-background`,children:[(0,Z.jsx)(dm,{}),(0,Z.jsxs)(`div`,{className:`p-3 border-b border-border bg-surface`,children:[(0,Z.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,Z.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,Z.jsx)(`span`,{className:`text-xs text-text-subtle shrink-0`,children:`localhost:`}),(0,Z.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,Z.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,Z.jsx)(z,{className:`size-4 animate-spin`}):`Forward`}),(0,Z.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,Z.jsx)(Ve,{className:`size-4 text-text-secondary ${m?`animate-spin`:``}`})})]}),o&&(0,Z.jsx)(`p`,{className:`text-xs text-error mt-2`,children:o})]}),(0,Z.jsx)(`div`,{className:`flex-1 overflow-y-auto p-3`,children:f?e.length===0?(0,Z.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-center px-2`,children:[(0,Z.jsx)(Le,{className:`size-8 text-text-subtle`}),(0,Z.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,Z.jsx)(`div`,{className:`space-y-2`,children:e.map(e=>(0,Z.jsxs)(`div`,{className:`p-2.5 rounded-lg bg-surface border border-border`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(`span`,{className:`shrink-0 font-mono text-sm font-medium text-text-primary`,children:e.port==null?`—`:`:${e.port}`}),(0,Z.jsx)(`span`,{className:`shrink-0 px-1.5 py-0.5 rounded text-[10px] font-medium uppercase tracking-wide ${fm[e.source].cls}`,children:fm[e.source].label}),(0,Z.jsx)(`div`,{className:`flex-1`}),e.protected?(0,Z.jsx)(`div`,{className:`shrink-0 p-1.5`,title:`App tunnel — managed by PPM, not stoppable here`,children:(0,Z.jsx)(Re,{className:`size-4 text-text-subtle`})}):(0,Z.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,Z.jsx)(`span`,{className:`text-[10px] font-medium text-error`,children:`Sure?`}):(0,Z.jsx)(oi,{className:`size-4 text-error`})})]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 mt-1`,children:[(0,Z.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,Z.jsxs)(Z.Fragment,{children:[(0,Z.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,Z.jsx)(Fe,{className:`size-3.5 text-text-secondary`})}),(0,Z.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,Z.jsx)(me,{className:`size-3.5 text-success`}):(0,Z.jsx)(Ae,{className:`size-3.5 text-text-secondary`})})]})]}),(0,Z.jsxs)(`div`,{className:`mt-1 text-[10px] font-mono text-text-subtle`,children:[`pid `,e.pid]})]},e.pid))}):(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,Z.jsx)(z,{className:`size-6 animate-spin text-primary`})})})]})}function mm({projectName:e,onTagsChanged:t}){let[n,r]=(0,X.useState)([]),[i,a]=(0,X.useState)(null),[o,s]=(0,X.useState)(!0),[c,l]=(0,X.useState)(null),[u,d]=(0,X.useState)(``),[f,p]=(0,X.useState)(``),[m,h]=(0,X.useState)(``),[g,_]=(0,X.useState)(`#22c55e`),[v,y]=(0,X.useState)(!1),b=`${B(e)}/tags`,x=(0,X.useCallback)(async()=>{try{let e=await V.get(b);r(e.tags),a(e.defaultTagId)}catch{}s(!1)},[b]);(0,X.useEffect)(()=>{x()},[x]);let S=async()=>{if(m.trim())try{await V.post(b,{name:m.trim(),color:g}),h(``),y(!1),x(),t?.()}catch{}},C=async e=>{try{await V.patch(`${b}/${e}`,{name:u.trim()||void 0,color:f||void 0}),l(null),x(),t?.()}catch{}},w=async(e,n)=>{if(window.confirm(`Delete tag "${n}"? Sessions with this tag will become untagged.`))try{await V.del(`${b}/${e}`),x(),t?.()}catch{}},T=async e=>{let t=e===i?null:e;try{await V.patch(`${b}/default-tag`,{tagId:t}),a(t)}catch{}};return o?(0,Z.jsx)(`p`,{className:`text-[11px] text-muted-foreground animate-pulse`,children:`Loading tags...`}):(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsx)(`h3`,{className:`text-xs font-medium text-muted-foreground`,children:`Session Tags`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsx)(`button`,{onClick:async()=>{try{await V.post(`${b}/reset`,{}),x(),t?.()}catch{}},className:`p-1 rounded text-text-subtle hover:text-text-secondary`,title:`Reset to defaults`,children:(0,Z.jsx)(He,{className:`size-3`})}),(0,Z.jsx)(`button`,{onClick:()=>y(!v),className:`p-1 rounded text-primary hover:bg-primary/10`,title:`Add tag`,children:(0,Z.jsx)(R,{className:`size-3.5`})})]})]}),v&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 px-1`,children:[(0,Z.jsx)(`input`,{type:`color`,value:g,onChange:e=>_(e.target.value),className:`size-6 rounded cursor-pointer border-0 p-0`}),(0,Z.jsx)(`input`,{value:m,onChange:e=>h(e.target.value),onKeyDown:e=>{e.key===`Enter`&&S(),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,Z.jsx)(`button`,{onClick:S,className:`p-1 text-success hover:text-success/80`,children:(0,Z.jsx)(me,{className:`size-3.5`})}),(0,Z.jsx)(`button`,{onClick:()=>y(!1),className:`p-1 text-text-subtle hover:text-text-secondary`,children:(0,Z.jsx)(Ge,{className:`size-3.5`})})]}),(0,Z.jsxs)(`div`,{className:`space-y-0.5`,children:[n.map(e=>(0,Z.jsx)(`div`,{className:`flex items-center gap-1.5 px-1 py-1 rounded hover:bg-surface-elevated group`,children:c===e.id?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`input`,{type:`color`,value:f,onChange:e=>p(e.target.value),className:`size-5 rounded cursor-pointer border-0 p-0`}),(0,Z.jsx)(`input`,{value:u,onChange:e=>d(e.target.value),onKeyDown:t=>{t.key===`Enter`&&C(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,Z.jsx)(`button`,{onClick:()=>C(e.id),className:`p-0.5 text-success`,children:(0,Z.jsx)(me,{className:`size-3`})}),(0,Z.jsx)(`button`,{onClick:()=>l(null),className:`p-0.5 text-text-subtle`,children:(0,Z.jsx)(Ge,{className:`size-3`})})]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`span`,{className:`size-3 rounded-full shrink-0`,style:{backgroundColor:e.color}}),(0,Z.jsx)(`span`,{className:`flex-1 text-[11px] text-text-primary truncate`,children:e.name}),(0,Z.jsx)(`button`,{onClick:()=>T(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,Z.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,Z.jsx)(L,{className:`size-3`})}),(0,Z.jsx)(`button`,{onClick:()=>w(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,Z.jsx)(Ue,{className:`size-3`})})]})},e.id)),n.length===0&&(0,Z.jsx)(`p`,{className:`text-[11px] text-muted-foreground py-2 text-center`,children:`No tags. Click + to create one.`})]})]})}function hm(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 gm({snippet:e,className:t}){return(0,Z.jsx)(`span`,{className:t,children:hm(e).map((e,t)=>e.mark?(0,Z.jsx)(`mark`,{className:`bg-warning/30 text-foreground rounded-sm px-0.5`,children:e.text},t):(0,Z.jsx)(`span`,{children:e.text},t))})}var _m=50;function vm({projectName:e,sessionId:t,onSelectSession:n,enableKeyboardShortcuts:r=!1}){let[i,a]=(0,X.useState)([]),[o,s]=(0,X.useState)(!1),[c,l]=(0,X.useState)(``),u=yo(c,300),[d,f]=(0,X.useState)(null),[p,m]=(0,X.useState)(``),[h,g]=(0,X.useState)(!1),[_,v]=(0,X.useState)(!1),[y,b]=(0,X.useState)([]),[x,S]=(0,X.useState)(null),[C,w]=(0,X.useState)({}),[T,E]=(0,X.useState)(!1),D=(0,X.useRef)(null),O=J(e=>e.openTab),k=(0,X.useCallback)(async t=>{if(e){s(!0);try{let n=new URLSearchParams({limit:String(_m),offset:`0`});t&&n.set(`q`,t);let r=await V.get(`${B(e)}/chat/sessions?${n}`);a(r.sessions),g(r.hasMore)}catch{}finally{s(!1)}}},[e]),A=(0,X.useCallback)(async()=>{if(!(!e||_||!h)){v(!0);try{let t=i.filter(e=>!e.pinned).length,n=new URLSearchParams({limit:String(_m),offset:String(t)});u&&n.set(`q`,u);let r=await V.get(`${B(e)}/chat/sessions?${n}`);a(e=>{let t=new Set(e.map(e=>e.id)),n=r.sessions.filter(e=>!t.has(e.id));return[...e,...n]}),g(r.hasMore)}catch{}finally{v(!1)}}},[e,_,h,i,u]),j=(0,X.useCallback)(async()=>{if(e)try{let t=await V.get(`${B(e)}/tags`);b(t.tags),w(t.counts)}catch{}},[e]);(0,X.useEffect)(()=>{k()},[k]),(0,X.useEffect)(()=>{e&&j()},[e,j]),(0,X.useEffect)(()=>{k(u||void 0)},[u]);function M(t){n?n(t):O({type:`chat`,title:t.title||`Chat`,projectId:e??null,metadata:{projectName:e,sessionId:t.id,providerId:t.providerId},closable:!0})}let ee=(0,X.useCallback)((e,t)=>{t.stopPropagation(),f(e.id),m(e.title||``),setTimeout(()=>D.current?.select(),0)},[]),N=(0,X.useCallback)(async()=>{if(!d||!p.trim()||!e){f(null);return}try{await V.patch(`${B(e)}/chat/sessions/${d}`,{title:p.trim()}),a(e=>e.map(e=>e.id===d?{...e,title:p.trim()}:e))}catch{}f(null)},[d,p,e]),P=(0,X.useCallback)(()=>f(null),[]),F=(0,X.useCallback)(async(t,n)=>{if(t.stopPropagation(),!e)return;let r=`${B(e)}/chat/sessions/${n.id}/pin`;try{n.pinned?await V.del(r):await V.put(r),a(e=>e.map(e=>e.id===n.id?{...e,pinned:!e.pinned}:e).sort((e,t)=>e.pinned&&!t.pinned?-1:!e.pinned&&t.pinned?1:new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()))}catch{}},[e]),I=(0,X.useCallback)(async(t,n)=>{if(t.stopPropagation(),e&&window.confirm(`Delete this session? This cannot be undone.`))try{await V.del(`${B(e)}/chat/sessions/${n.id}?providerId=${n.providerId}`),a(e=>e.filter(e=>e.id!==n.id))}catch{}},[e]),te=(0,X.useCallback)((e,t)=>{a(n=>n.map(n=>n.id===e?{...n,tag:t}:n)),j()},[j]),ne=(0,X.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.`)){s(!0);try{await V.del(`${B(e)}/chat/sessions?olderThanDays=${n}`),k(u||void 0)}catch{}}},[e,k,u]);return(0,X.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<=y.length&&t){let n=y[r-1];n&&(V.patch(`${B(e)}/chat/sessions/${t}/tag`,{tagId:n.id}).catch(()=>{}),te(t,{id:n.id,name:n.name,color:n.color}))}};return window.addEventListener(`keydown`,n),()=>window.removeEventListener(`keydown`,n)},[r,y,t,e,te]),{sessions:i,filteredSessions:x===null?i:i.filter(e=>e.tag?.id===x),loading:o,hasMore:h,loadingMore:_,searchQuery:c,setSearchQuery:l,editingId:d,editingTitle:p,setEditingTitle:m,editInputRef:D,projectTags:y,selectedTagId:x,setSelectedTagId:S,tagCounts:C,showTagSettings:T,setShowTagSettings:E,load:k,loadMore:A,loadTags:j,openSession:M,startEditing:ee,saveTitle:N,cancelEditing:P,togglePin:F,deleteSession:I,handleTagChanged:te,bulkDelete:ne}}var ym={results:[],indexing:{total:0,indexed:0,running:!1}};function bm(e,t){let n=yo(t,300),[r,i]=(0,X.useState)(ym),[a,o]=(0,X.useState)(!1);return(0,X.useEffect)(()=>{let t=n.trim();if(!t||!e){i(ym),o(!1);return}let r=!1;return o(!0),V.get(`${B(e)}/chat/search?q=${encodeURIComponent(t)}`).then(e=>{r||i(e)}).catch(()=>{r||i(ym)}).finally(()=>{r||o(!1)}),()=>{r=!0}},[e,n]),{results:r.results,indexing:r.indexing,loading:a,query:n}}function xm({search:e,onOpen:t}){return(0,Z.jsxs)(`div`,{children:[e.indexing.running&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 px-3 py-1 text-[10px] text-text-subtle`,children:[(0,Z.jsx)(z,{className:`size-2.5 animate-spin`}),` Indexing `,e.indexing.indexed,`/`,e.indexing.total,`…`]}),e.loading&&e.results.length===0?(0,Z.jsx)(`div`,{className:`flex items-center justify-center py-3`,children:(0,Z.jsx)(z,{className:`size-3.5 animate-spin text-text-subtle`})}):e.results.length===0?(0,Z.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,Z.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,Z.jsx)(Ar,{className:`size-4 shrink-0 text-text-subtle`}),(0,Z.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Z.jsx)(`span`,{className:`flex items-center gap-1.5`,children:(0,Z.jsx)(`span`,{className:`truncate text-[13px] font-medium`,children:e.title||`Untitled`})}),e.matchedIn===`content`&&e.snippet&&(0,Z.jsx)(gm,{snippet:e.snippet,className:`block text-[11px] text-text-subtle line-clamp-2`})]})]},e.sessionId))]})}function Sm({projectName:e,variant:t,sessionId:n,onSelectSession:r,onNavigate:i,className:a}){let o=vm({projectName:e,sessionId:n,onSelectSession:r,enableKeyboardShortcuts:t===`bar`}),s=Do(e=>e.notifications),c=J(e=>e.openTab),l=t===`sidebar`,u=bm(e,l?o.searchQuery:``),d=l&&o.searchQuery.trim().length>0;function f(t){c({type:`chat`,title:t.title||`Chat`,projectId:e,metadata:{projectName:e,sessionId:t.sessionId,providerId:t.providerId},closable:!0}),i?.()}function p(e){o.openSession(e),i?.()}return(0,Z.jsxs)(`div`,{className:G(l?`flex flex-col h-full min-h-0`:`border-t border-border/30 bg-surface`,a),children:[l&&(0,Z.jsx)(Il,{icon:An,title:`Chat History`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-2 shrink-0`,children:[(0,Z.jsxs)(`div`,{className:`relative flex-1`,children:[(0,Z.jsx)(Yr,{className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-text-subtle`}),(0,Z.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,Z.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,Z.jsx)(jn,{className:`size-3.5`})}),(0,Z.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,Z.jsx)(Ve,{className:G(`size-3.5`,o.loading&&`animate-spin`)})})]}),o.projectTags.length>0&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-2 overflow-x-auto scrollbar-none shrink-0`,children:[(0,Z.jsxs)(`button`,{onClick:()=>o.setSelectedTagId(null),className:G(`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,Z.jsxs)(`button`,{onClick:()=>o.setSelectedTagId(o.selectedTagId===e.id?null:e.id),className:G(`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,Z.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:e.color}}),e.name,` (`,o.tagCounts[e.id]??0,`)`]},e.id)),(0,Z.jsx)(`button`,{onClick:()=>o.setShowTagSettings(!o.showTagSettings),className:G(`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,Z.jsx)(ci,{className:`size-3`})})]}),o.showTagSettings&&(0,Z.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,Z.jsx)(mm,{projectName:e,onTagsChanged:o.loadTags})}),(0,Z.jsx)(`div`,{className:l?`flex-1 overflow-y-auto min-h-0`:`max-h-[200px] overflow-y-auto`,children:d?(0,Z.jsx)(xm,{search:u,onOpen:f}):o.loading&&o.sessions.length===0?(0,Z.jsx)(`div`,{className:`flex items-center justify-center py-3`,children:(0,Z.jsx)(z,{className:`size-3.5 animate-spin text-text-subtle`})}):o.filteredSessions.length===0?(0,Z.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,Z.jsxs)(Z.Fragment,{children:[o.filteredSessions.map(t=>{let r=s.get(t.id),i=!!r;return(0,Z.jsx)(jo,{session:t,projectName:e,projectTags:o.projectTags,onTogglePin:o.togglePin,onStartEditing:o.startEditing,onDeleteSession:o.deleteSession,onTagChanged:o.handleTagChanged,children:(0,Z.jsxs)(`div`,{className:G(`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&&Eo(r.type),!i&&n!==t.id&&`text-text-secondary`),children:[(0,Z.jsx)(ue,{providerId:t.providerId}),t.tag&&(0,Z.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:t.tag.color},title:t.tag.name}),o.editingId===t.id?(0,Z.jsxs)(`form`,{className:`flex items-center gap-1 flex-1 min-w-0`,onSubmit:e=>{e.preventDefault(),o.saveTitle()},children:[(0,Z.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,Z.jsx)(`button`,{type:`submit`,className:`p-0.5 text-success hover:text-success/80`,onClick:e=>e.stopPropagation(),children:(0,Z.jsx)(me,{className:`size-3`})}),(0,Z.jsx)(`button`,{type:`button`,className:`p-0.5 text-text-subtle hover:text-text-secondary`,onClick:e=>{e.stopPropagation(),o.cancelEditing()},children:(0,Z.jsx)(Ge,{className:`size-3`})})]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`span`,{className:`min-w-0 flex-1`,children:(0,Z.jsxs)(`button`,{onClick:()=>p(t),className:`w-full min-w-0 text-left`,children:[(0,Z.jsxs)(`span`,{className:`flex items-center gap-1`,children:[t.title?.startsWith(`[PPM]`)&&(0,Z.jsx)(ie,{className:`size-3.5 text-muted-foreground shrink-0`}),(0,Z.jsx)(`span`,{className:G(`truncate text-[13px]`,i?`font-semibold`:`font-medium`),children:t.title?.startsWith(`[PPM]`)?t.title.slice(7):t.title||`Untitled`})]}),t.updatedAt&&(0,Z.jsx)(`span`,{className:`block text-[11px] text-text-subtle`,children:vo(t.updatedAt)})]})}),(0,Z.jsx)(`button`,{onClick:e=>o.togglePin(e,t),className:G(`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,Z.jsx)(Vr,{className:`size-3`}):(0,Z.jsx)(Hr,{className:`size-3`})}),(0,Z.jsxs)(`span`,{className:`flex items-center shrink-0 can-hover:hidden can-hover:group-hover:flex`,children:[(0,Z.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,Z.jsx)(L,{className:`size-3`})}),(0,Z.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,Z.jsx)(Ue,{className:`size-3`})})]})]})]})},t.id)}),o.hasMore&&(0,Z.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,Z.jsx)(z,{className:`size-3 animate-spin`}):null,o.loadingMore?`Loading...`:`Load more`]})]})})]})}var Cm={teams:`beta`,"os-explorer":`new`};function wm(e){return e?Cm[e]:void 0}function Tm({id:e,variant:t=`inline`,className:n}){let r=wm(e);if(!r)return null;let i=r===`new`?`bg-success/15 text-success`:`bg-accent-wash text-primary`;return(0,Z.jsx)(`span`,{"aria-label":r,className:G(`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 Em=`/api/group-chat`;function Dm(e){return V.get(`${Em}?projectPath=${encodeURIComponent(e)}`)}function Om(e){return V.get(`${Em}/${encodeURIComponent(e)}`)}function km(e){return V.post(Em,e)}function Am(e,t){return V.patch(`${Em}/${encodeURIComponent(e)}`,t)}function jm(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 V.get(`${Em}/${encodeURIComponent(e)}/feed${r?`?${r}`:``}`)}function Mm(e,t){return V.post(`${Em}/${encodeURIComponent(e)}/message`,{content:t})}function Nm(e){return V.post(`${Em}/${encodeURIComponent(e)}/stop`)}function Pm(e){return V.post(`${Em}/${encodeURIComponent(e)}/resume`)}function Fm(e){return V.del(`${Em}/${encodeURIComponent(e)}`)}function Im(e,t){return V.post(`${Em}/${encodeURIComponent(e)}/members`,t)}function Lm(e,t,n){return V.patch(`${Em}/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}`,n)}function Rm(e,t){return V.del(`${Em}/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}`)}function zm(e,t){return V.get(`${Em}/${encodeURIComponent(e)}/transcript?sessionRef=${encodeURIComponent(t)}`)}function Bm(e){return e.replace(/^Claude\s+/i,``)}function Vm({value:e,onChange:t,projectName:n,providerId:r,disabled:i}){let[a,o]=(0,X.useState)([]),[s,c]=(0,X.useState)(!1),l=(0,X.useRef)(null),u=(0,X.useRef)(0);(0,X.useEffect)(()=>{!n||!r||V.get(`${B(n)}/chat/providers/${r}/models`).then(o).catch(()=>{})},[n,r]),(0,X.useEffect)(()=>{i&&c(!1)},[i]),(0,X.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,X.useEffect)(()=>{s&&(u.current=Math.max(0,a.findIndex(t=>t.value===e)))},[s,e,a]);let d=(0,X.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?Bm(f.label):e??`Model`;return(0,Z.jsxs)(`div`,{className:`relative`,children:[(0,Z.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,Z.jsx)(ke,{className:`h-3.5 w-3.5 shrink-0`}),(0,Z.jsx)(`span`,{className:`max-w-[90px] truncate`,children:p})]}),s&&!i&&(0,Z.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,Z.jsx)(`div`,{className:`px-3 py-2 border-b border-border`,children:(0,Z.jsx)(`span`,{className:`text-xs font-medium text-text-secondary`,children:`Model`})}),(0,Z.jsx)(`div`,{className:`py-1`,children:a.map((n,r)=>{let i=n.value===e;return(0,Z.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,Z.jsx)(`span`,{className:`flex-1 text-sm font-medium text-text-primary`,children:n.label}),i&&(0,Z.jsx)(me,{className:`size-4 shrink-0 text-primary`})]},n.value)})})]})]})}var Hm=[`#6366f1`,`#ec4899`,`#14b8a6`,`#f59e0b`,`#8b5cf6`,`#ef4444`];function Um(){return{key:Xe(),name:``,persona:``,model:null}}function Wm({open:e,onClose:t,projectName:n,projectPath:r,providerId:i=`claude`,onCreated:a}){let o=Gt(),[s,c]=(0,X.useState)(``),[l,u]=(0,X.useState)(10),[d,f]=(0,X.useState)(`Leader`),[p,m]=(0,X.useState)(``),[h,g]=(0,X.useState)(null),[_,v]=(0,X.useState)([Um()]),[y,b]=(0,X.useState)(!1),[x,S]=(0,X.useState)(null),C=(0,X.useCallback)(()=>{c(``),u(10),f(`Leader`),m(``),g(null),v([Um()]),S(null),b(!1)},[]),w=(0,X.useCallback)(()=>{C(),t()},[C,t]),T=(e,t)=>v(n=>n.map(n=>n.key===e?{...n,...t}:n)),E=(0,X.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:Hm[0]},...t.map((e,t)=>({role:`member`,name:e.name.trim(),persona:e.persona.trim()||null,model:e.model,color:Hm[(t+1)%Hm.length]}))];b(!0),S(null);try{a(await km({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,Z.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-y-auto px-1 py-1`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`mb-1 block text-xs font-medium text-text-secondary`,children:`Group name`}),(0,Z.jsx)(`input`,{className:D,value:s,onChange:e=>c(e.target.value),placeholder:`e.g. Design Review`,autoFocus:!0})]}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`mb-1 block text-xs font-medium text-text-secondary`,children:`Reply cap (max AI turns per message, 1–50)`}),(0,Z.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,Z.jsxs)(`div`,{className:`rounded-lg border border-border p-3`,children:[(0,Z.jsx)(`p`,{className:`mb-2 text-xs font-semibold uppercase tracking-wide text-primary`,children:`Leader`}),(0,Z.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Z.jsx)(`input`,{className:D,value:d,onChange:e=>f(e.target.value),placeholder:`Leader name`}),(0,Z.jsx)(`input`,{className:D,value:p,onChange:e=>m(e.target.value),placeholder:`Persona (optional)`}),(0,Z.jsx)(Vm,{value:h,onChange:g,projectName:n,providerId:i})]})]}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,Z.jsx)(`p`,{className:`text-xs font-semibold uppercase tracking-wide text-text-secondary`,children:`Members`}),(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>v(e=>[...e,Um()]),className:`inline-flex min-h-[32px] items-center gap-1 text-xs font-medium text-primary hover:underline`,children:[(0,Z.jsx)(R,{className:`size-3.5`}),` Add`]})]}),(0,Z.jsx)(`div`,{className:`flex flex-col gap-3`,children:_.map((e,t)=>(0,Z.jsxs)(`div`,{className:`rounded-lg border border-border p-3`,children:[(0,Z.jsxs)(`div`,{className:`mb-2 flex items-center justify-between`,children:[(0,Z.jsxs)(`span`,{className:`text-[11px] text-text-subtle`,children:[`Member `,t+1]}),_.length>1&&(0,Z.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,Z.jsx)(Ue,{className:`size-4`})})]}),(0,Z.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Z.jsx)(`input`,{className:D,value:e.name,onChange:t=>T(e.key,{name:t.target.value}),placeholder:`Member name`}),(0,Z.jsx)(`input`,{className:D,value:e.persona,onChange:t=>T(e.key,{persona:t.target.value}),placeholder:`Persona (optional)`}),(0,Z.jsx)(Vm,{value:e.model,onChange:t=>T(e.key,{model:t}),projectName:n,providerId:i})]})]},e.key))})]}),x&&(0,Z.jsx)(`p`,{className:`text-xs text-destructive`,children:x}),(0,Z.jsxs)(`div`,{className:`flex justify-end gap-2 pt-1`,children:[(0,Z.jsx)(Y,{variant:`outline`,onClick:w,disabled:y,children:`Cancel`}),(0,Z.jsxs)(Y,{onClick:E,disabled:y,children:[y&&(0,Z.jsx)(z,{className:`mr-1.5 size-4 animate-spin`}),`Create group`]})]})]});return e?o?(0,Z.jsx)(on,{open:!0,onClose:w,className:`flex max-h-[90vh] flex-col`,children:(0,Z.jsxs)(`div`,{className:`flex min-h-0 flex-col px-4 pb-2`,children:[(0,Z.jsx)(`h2`,{className:`mb-2 text-base font-semibold text-foreground`,children:`New group`}),O]})}):(0,Z.jsx)(nn,{open:!0,onOpenChange:e=>{e||w()},children:(0,Z.jsxs)(Qt,{className:`flex max-h-[85vh] flex-col sm:max-w-lg`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:`New group`})}),O]})}):null}function Gm(){let{activeProject:e}=q(rn(e=>({activeProject:e.activeProject}))),t=K(e=>e.openTab),[n,r]=(0,X.useState)([]),[i,a]=(0,X.useState)(!1),[o,s]=(0,X.useState)(null),[c,l]=(0,X.useState)(!1),u=e?.path??null,d=e?.name??``,f=(0,X.useCallback)(()=>{if(!u){r([]);return}a(!0),Dm(u).then(r).catch(e=>s(e instanceof Error?e.message:`Failed to load groups`)).finally(()=>a(!1))},[u]);(0,X.useEffect)(()=>{f()},[f]);let p=(0,X.useCallback)(e=>{t({type:`group`,title:e.name,projectId:d,closable:!0,metadata:{groupId:e.id,projectName:d}})},[t,d]),m=(0,X.useCallback)(async e=>{try{await Fm(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,Z.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Z.jsxs)(`div`,{className:`flex h-9 shrink-0 items-center justify-between border-b border-border px-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(`span`,{className:`text-xs font-semibold uppercase tracking-wide text-text-secondary`,children:`Teams`}),(0,Z.jsx)(Tm,{id:`teams`})]}),(0,Z.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,Z.jsx)(R,{className:`size-4`})})]}),(0,Z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-1`,children:i?(0,Z.jsx)(`div`,{className:`flex items-center justify-center py-6`,children:(0,Z.jsx)(z,{className:`size-4 animate-spin text-primary`})}):o?(0,Z.jsx)(`p`,{className:`px-2 py-3 text-xs text-destructive`,children:o}):n.length===0?(0,Z.jsx)(`p`,{className:`px-2 py-3 text-xs text-text-subtle`,children:`No groups yet. Create one to start.`}):n.map(e=>(0,Z.jsxs)(un,{children:[(0,Z.jsx)(dn,{asChild:!0,children:(0,Z.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,Z.jsx)(fi,{className:`size-4 shrink-0 text-text-subtle`}),(0,Z.jsx)(`span`,{className:`truncate`,children:e.name})]})}),(0,Z.jsx)(sn,{children:(0,Z.jsxs)(ln,{variant:`destructive`,onClick:()=>m(e),children:[(0,Z.jsx)(Ue,{className:`size-4`}),` Delete group`]})})]},e.id))}),(0,Z.jsx)(Wm,{open:c,onClose:()=>l(!1),projectName:d,projectPath:u??``,onCreated:e=>{r(t=>[e,...t]),p(e)}})]}):(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-24 p-4`,children:(0,Z.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Select a project to view groups`})})}var Km=[{mode:`recent`,label:`Recent`,Icon:De},{mode:`priority`,label:`Priority`,Icon:wn},{mode:`name`,label:`Name`,Icon:Cn}];function qm(e,t,n){return n===`recent`?vt(e):n===`name`?[...e].sort((e,t)=>e.name.localeCompare(t.name)):_t(e,t)}var Jm=[`terminal`,`chat`,`editor`,`database`,`sqlite`,`postgres`,`git-diff`,`settings`,`extension`,`group`];function Ym(){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=decodeURIComponent(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:Jm.includes(i)?i:null,tabIdentifier:a,openChat:t}}function Xm(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 Zm(e,t){return t?`${e}:${t}`:e}function Qm(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;default:return null}}function $m(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`;default:return e}}function eh(e,t,n){let{tabs:r,setActiveTab:i,openTab:a}=J.getState(),o=Zm(e,t),s=r.find(e=>e.id===o);if(s){i(s.id);return}let c=Qm(e,t,n);c&&a({type:e,title:$m(e,t),projectId:n,closable:!0,metadata:c})}function th(){let e=J(e=>e.activeTabId),t=J(e=>e.currentProject),n=(0,X.useRef)(!1);(0,X.useEffect)(()=>{if(n.current){n.current=!1;return}let r=Xm(t,e);window.location.pathname!==r&&window.history.pushState(null,``,r)},[e,t]),(0,X.useEffect)(()=>{function e(){let{tabType:e,tabIdentifier:t}=Ym();if(!e)return;n.current=!0;let{tabs:r,setActiveTab:i}=J.getState(),a=Zm(e,t),o=r.find(e=>e.id===a);if(o)i(o.id);else{let n=J.getState().currentProject;n&&eh(e,t,n)}}return window.addEventListener(`popstate`,e),()=>window.removeEventListener(`popstate`,e)},[])}var nh=[`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 rh(e,t){return e??nh[t%nh.length]}function ih(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 ah=(0,X.memo)(function({name:e,color:t,image:n,size:r,allNames:i,shape:a=`circle`}){let[o,s]=(0,X.useState)(!1);(0,X.useEffect)(()=>{s(!1)},[n]);let c=a===`square`?`rounded-[7px]`:`rounded-full`;if(n&&!o){let t=Je(),i=new URLSearchParams({v:n});return t&&i.set(`token`,t),(0,Z.jsx)(`img`,{src:`/api/projects/${encodeURIComponent(e)}/image?${i.toString()}`,alt:e,onError:()=>s(!0),className:G(`object-cover shrink-0 select-none`,c),style:{width:r,height:r}})}return(0,Z.jsx)(`div`,{className:G(`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:ih(e,i)})});function oh({onSuccess:e,onCancel:t,footerClassName:n}){let{addProject:r}=q(rn(e=>({addProject:e.addProject}))),[i,a]=(0,X.useState)(`local`),[o,s]=(0,X.useState)(``),[c,l]=(0,X.useState)(``),[u,d]=(0,X.useState)([]),[f,p]=(0,X.useState)(!1),[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(!1),[v,y]=(0,X.useState)(``),[b,x]=(0,X.useState)(`~/Projects`),[S,C]=(0,X.useState)(``),[w,T]=(0,X.useState)(!1),[E,D]=(0,X.useState)(``),O=(0,X.useRef)(null),k=(0,X.useRef)(null);(0,X.useEffect)(()=>{V.get(`/api/projects/last-clone-dir`).then(e=>{e?.dir&&x(e.dir)}).catch(()=>{})},[]),(0,X.useEffect)(()=>{if(!v.trim()){C(``);return}let e=v.match(/[/:]([^/:]+?)(?:\.git)?\s*$/);e?.[1]&&C(e[1])},[v]),(0,X.useEffect)(()=>{if(O.current&&clearTimeout(O.current),!o.trim()){d([]),p(!1);return}O.current=setTimeout(async()=>{h(!0);try{d(await V.get(`/api/projects/suggest-dirs?q=${encodeURIComponent(o)}`)??[]),p(!0)}catch{d([])}finally{h(!1)}},250)},[o]),(0,X.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 j(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 M(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 V.post(`/api/projects/git/clone`,{url:v.trim(),targetDir:b.trim(),name:S.trim()||void 0}),{fetchProjects:n,setActiveProject:r}=q.getState();await n();let i=q.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,Z.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Z.jsx)(`div`,{className:`flex gap-1 border-b border-border`,children:[`local`,`clone`].map(e=>(0,Z.jsx)(`button`,{type:`button`,onClick:()=>{a(e),D(``)},className:G(`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,Z.jsxs)(`form`,{onSubmit:j,className:`flex flex-col gap-3`,children:[(0,Z.jsxs)(`div`,{ref:k,className:`relative`,children:[(0,Z.jsx)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:`Project path`}),(0,Z.jsxs)(`div`,{className:`flex gap-1.5 items-center`,children:[(0,Z.jsxs)(`div`,{className:`relative flex items-center flex-1`,children:[(0,Z.jsx)(ar,{className:`absolute left-2.5 size-3.5 text-text-subtle pointer-events-none`}),(0,Z.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,Z.jsx)(z,{className:`absolute right-2.5 size-3.5 text-text-subtle animate-spin`})]}),(0,Z.jsx)(Of,{mode:`folder`,onSelect:e=>{s(e),c||l(e.split(`/`).pop()??``),D(``)}})]}),f&&u.length>0&&(0,Z.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,Z.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,Z.jsx)(`span`,{className:`text-sm font-medium truncate w-full`,children:e.name}),(0,Z.jsx)(`span`,{className:`text-xs text-text-subtle truncate w-full`,children:e.path})]},e.path))})]}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:[`Display name `,(0,Z.jsx)(`span`,{className:`text-muted-foreground`,children:`(optional)`})]}),(0,Z.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,Z.jsx)(`p`,{className:`text-xs text-destructive`,children:E}),(0,Z.jsxs)(`div`,{className:G(`flex justify-end gap-2 pt-1`,n),children:[(0,Z.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,Z.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,Z.jsxs)(`form`,{onSubmit:M,className:`flex flex-col gap-3`,children:[(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:`Git URL`}),(0,Z.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,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:`Clone to`}),(0,Z.jsxs)(`div`,{className:`flex gap-1.5 items-center`,children:[(0,Z.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,Z.jsx)(Of,{mode:`folder`,onSelect:e=>{x(e),D(``)}})]})]}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`label`,{className:`block text-xs font-medium text-foreground mb-1`,children:[`Name `,(0,Z.jsx)(`span`,{className:`text-muted-foreground`,children:`(auto-parsed from URL)`})]}),(0,Z.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,Z.jsx)(`p`,{className:`text-xs text-destructive`,children:E}),(0,Z.jsxs)(`div`,{className:G(`flex justify-end gap-2 pt-1`,n),children:[(0,Z.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,Z.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,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(z,{className:`inline size-3.5 animate-spin mr-1.5`}),`Cloning…`]}):`Clone & Add`})]})]})]})}var sh=(0,X.memo)(function({name:e,color:t,image:n,size:r,allNames:i,shape:a}){let o=Do((0,X.useMemo)(()=>Ao(e),[e]));return(0,Z.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,Z.jsx)(ah,{name:e,color:t,image:n,size:r,allNames:i,shape:a}),o&&(0,Z.jsx)(`div`,{className:G(`absolute -top-0.5 -right-0.5 size-2 rounded-full border-2 border-background`,wo(o))})]})});function ch({current:e,onChange:t}){return(0,Z.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:nh.map(n=>(0,Z.jsx)(`button`,{type:`button`,onClick:()=>t(n),className:G(`size-8 rounded-full border-2 transition-all`,e===n?`border-primary scale-110`:`border-transparent hover:scale-105`),style:{background:n}},n))})}var lh=(0,X.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}=q(rn(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=_t(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?rh(m.color,h<0?0:h):`transparent`,[_,v]=(0,X.useState)(!1),[y,b]=(0,X.useState)(``),x=(0,X.useRef)(null),[S,C]=(0,X.useState)(null),w=(0,X.useCallback)(()=>{if(!_&&x.current){let e=x.current.getBoundingClientRect();C({left:e.left,top:e.bottom+4})}v(e=>!e)},[_]),T=(0,X.useCallback)(()=>{v(!1),b(``)},[]),[E,D]=(0,X.useState)(0),O=(0,X.useRef)(null),k=(0,X.useMemo)(()=>qm(e,l,u),[e,l,u,_]),A=(0,X.useMemo)(()=>yt(),[_]),j=y.trim().toLowerCase(),M=j?k.filter(e=>e.name.toLowerCase().includes(j)||e.path.toLowerCase().includes(j)):k,ee=u===`priority`&&!j,N=(0,X.useCallback)(e=>{n(e),T()},[n,T]),P=(0,X.useCallback)(e=>{window.open(Xm(e.name,null),`_blank`,`noopener`)},[]);(0,X.useEffect)(()=>{D(0)},[y,u,_]),(0,X.useEffect)(()=>{O.current?.querySelector(`[data-row-index="${E}"]`)?.scrollIntoView({block:`nearest`})},[E]);let F=(0,X.useCallback)(e=>{if(e.key===`ArrowDown`)e.preventDefault(),D(e=>Math.min(e+1,M.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=M[E]??M[0];if(!t)return;e.ctrlKey||e.metaKey?P(t):N(t)}else e.key===`Escape`&&(e.preventDefault(),T())},[M,E,P,N,T]),[I,te]=(0,X.useState)(null),[ne,re]=(0,X.useState)(null),[ie,ae]=(0,X.useState)(!1),[oe,se]=(0,X.useState)(!1),[ce,le]=(0,X.useState)(``),[ue,de]=(0,X.useState)(``),[fe,pe]=(0,X.useState)(!1),[me,he]=(0,X.useState)(``),[ge,_e]=(0,X.useState)(!1),[ve,ye]=(0,X.useState)(``),[be,xe]=(0,X.useState)(``),[Se,Ce]=(0,X.useState)(!1),we=(0,X.useRef)(null),[Te,Ee]=(0,X.useState)(null),De=(0,X.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,X.useCallback)(e=>{le(e),de(e),se(!0)},[]),ke=(0,X.useCallback)(e=>{he(e),pe(!0)},[]),je=(0,X.useCallback)((e,t)=>{ye(e),xe(t),_e(!0)},[]);async function Me(){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,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`input`,{ref:we,type:`file`,accept:`image/*`,className:`hidden`,onChange:De}),(0,Z.jsxs)(`button`,{ref:x,onClick:w,title:`Switch project`,className:G(`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,Z.jsx)(sh,{name:m.name,color:g,image:m.image,size:24,allNames:p,shape:`square`}):(0,Z.jsx)(`div`,{className:`size-6 rounded-full bg-surface-elevated shrink-0`}),(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1 flex flex-col text-left leading-tight`,children:[(0,Z.jsx)(`span`,{className:`text-[13px] font-semibold text-foreground truncate`,children:m?.name??`Select project`}),m?.path&&(0,Z.jsx)(`span`,{className:`text-[10px] font-mono text-text-subtle truncate`,children:m.path})]}),(0,Z.jsx)(In,{className:`size-3.5 text-text-subtle shrink-0`})]}),_&&S&&(0,Ec.createPortal)((0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:T}),(0,Z.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,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-2.5 py-2 border-b border-border`,children:[(0,Z.jsx)(Yr,{className:`size-3.5 text-text-subtle shrink-0`}),(0,Z.jsx)(`input`,{value:y,onChange:e=>b(e.target.value),onKeyDown:F,placeholder:`Search projects…`,autoFocus:!0,className:`flex-1 bg-transparent text-xs text-foreground placeholder:text-text-subtle focus:outline-none`})]}),(0,Z.jsx)(`div`,{className:`flex items-center gap-1 px-1.5 py-1.5 border-b border-border`,children:Km.map(({mode:e,label:t,Icon:n})=>(0,Z.jsxs)(`button`,{onClick:()=>d(e),title:`Sort by ${t.toLowerCase()}`,className:G(`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,Z.jsx)(n,{className:`size-3`}),` `,t]},e))}),(0,Z.jsxs)(`div`,{ref:O,className:`overflow-y-auto p-1.5`,children:[M.map((e,t)=>{let n=f.findIndex(t=>t.name===e.name),r=rh(e.color,n),i=m?.name===e.name,s=t===E,c=I===n,l=ne===n&&I!==n,u=A[e.name];return(0,Z.jsxs)(un,{children:[(0,Z.jsx)(dn,{asChild:!0,children:(0,Z.jsxs)(`div`,{"data-row-index":t,draggable:ee,onDragStart:()=>ee&&te(n),onDragOver:e=>{ee&&(e.preventDefault(),re(n))},onDragLeave:()=>re(null),onDragEnd:()=>{te(null),re(null)},onDrop:()=>{if(ee&&I!=null&&I!==n){let e=f.map(e=>e.name),[t]=e.splice(I,1);e.splice(n,0,t),o(e)}te(null),re(null)},onMouseEnter:()=>D(t),className:G(`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,Z.jsxs)(`button`,{onClick:()=>N(e),className:`flex items-center gap-2.5 min-w-0 flex-1 px-2 py-1.5 text-left`,children:[(0,Z.jsx)(sh,{name:e.name,color:r,image:e.image,size:26,allNames:p}),(0,Z.jsxs)(`div`,{className:`min-w-0`,children:[(0,Z.jsx)(`div`,{className:G(`text-[13px] whitespace-nowrap overflow-hidden text-ellipsis`,i?`font-semibold text-primary`:`text-foreground`),children:e.name}),(0,Z.jsx)(`div`,{className:`text-[10px] font-mono text-text-subtle whitespace-nowrap overflow-hidden text-ellipsis`,children:e.path})]})]}),u&&(0,Z.jsx)(`span`,{title:`Last opened ${new Date(u).toLocaleString()}`,className:`shrink-0 mr-2 text-[10px] text-text-subtle whitespace-nowrap`,children:vo(new Date(u).toISOString())}),(0,Z.jsx)(`button`,{onClick:t=>{t.stopPropagation(),P(e)},title:`Open in new browser tab`,className:G(`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,Z.jsx)(Fe,{className:`size-3.5`})})]})}),(0,Z.jsxs)(sn,{children:[(0,Z.jsxs)(ln,{onClick:()=>P(e),children:[(0,Z.jsx)(Fe,{className:`size-3.5 mr-2`}),` Open in New Tab`]}),(0,Z.jsx)(cn,{}),(0,Z.jsxs)(ln,{onClick:()=>Oe(e.name),children:[(0,Z.jsx)(L,{className:`size-3.5 mr-2`}),` Rename`]}),(0,Z.jsxs)(ln,{onClick:()=>je(e.name,r),children:[(0,Z.jsx)(Fr,{className:`size-3.5 mr-2`}),` Change Color`]}),(0,Z.jsxs)(ln,{onClick:()=>{Ee(e.name),we.current?.click()},children:[(0,Z.jsx)(yr,{className:`size-3.5 mr-2`}),` Change Image`]}),e.image&&(0,Z.jsxs)(ln,{onClick:()=>{a(e.name).catch(()=>{})},children:[(0,Z.jsx)(Ue,{className:`size-3.5 mr-2`}),` Remove Image`]}),(0,Z.jsxs)(ln,{onClick:()=>void Jt(e.path),children:[(0,Z.jsx)(Ae,{className:`size-3.5 mr-2`}),` Copy Path`]}),(0,Z.jsx)(cn,{}),(0,Z.jsxs)(ln,{className:`text-destructive focus:text-destructive`,onClick:()=>ke(e.name),children:[(0,Z.jsx)(Ue,{className:`size-3.5 mr-2`}),` Delete`]})]})]},e.name)}),M.length===0&&(0,Z.jsx)(`div`,{className:`px-2 py-4 text-center text-xs text-text-subtle`,children:`No projects found`})]}),(0,Z.jsxs)(`button`,{onClick:()=>{ae(!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,Z.jsx)(R,{className:`size-[15px]`}),` Add Project`]})]})]}),document.body),(0,Z.jsx)(nn,{open:ie,onOpenChange:ae,children:(0,Z.jsxs)(Qt,{className:`sm:max-w-sm`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:`Add Project`})}),(0,Z.jsx)(oh,{onSuccess:()=>ae(!1),onCancel:()=>ae(!1)})]})}),(0,Z.jsx)(nn,{open:oe,onOpenChange:se,children:(0,Z.jsxs)(Qt,{className:`sm:max-w-sm`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:`Rename Project`})}),(0,Z.jsx)(`input`,{type:`text`,value:ue,onChange:e=>de(e.target.value),onKeyDown:e=>{e.key===`Enter`&&Me()},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,Z.jsxs)(Zt,{children:[(0,Z.jsx)(`button`,{onClick:()=>se(!1),className:`px-3 py-1.5 text-sm text-text-secondary hover:text-foreground transition-colors`,children:`Cancel`}),(0,Z.jsx)(`button`,{onClick:Me,className:`px-3 py-1.5 text-sm bg-primary text-white rounded-md hover:bg-primary/90 transition-colors`,children:`Rename`})]})]})}),(0,Z.jsx)(nn,{open:fe,onOpenChange:pe,children:(0,Z.jsxs)(Qt,{className:`sm:max-w-sm`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:`Delete Project`})}),(0,Z.jsxs)(`p`,{className:`text-sm text-text-secondary`,children:[`Remove `,(0,Z.jsx)(`strong`,{className:`text-foreground`,children:me}),` from PPM? The files on disk won't be deleted.`]}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(`button`,{onClick:()=>pe(!1),className:`px-3 py-1.5 text-sm text-text-secondary hover:text-foreground transition-colors`,children:`Cancel`}),(0,Z.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,Z.jsx)(nn,{open:ge,onOpenChange:_e,children:(0,Z.jsxs)(Qt,{className:`sm:max-w-sm`,children:[(0,Z.jsx)(Xt,{children:(0,Z.jsx)($t,{children:`Change Color`})}),(0,Z.jsx)(ch,{current:be,onChange:xe}),(0,Z.jsxs)(Zt,{children:[(0,Z.jsx)(`button`,{onClick:()=>_e(!1),className:`px-3 py-1.5 text-sm text-text-secondary hover:text-foreground transition-colors`,children:`Cancel`}),(0,Z.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`})]})]})})]})}),uh=[{id:`history`,label:`Chat History`,shortLabel:`History`,icon:An},{id:`teams`,label:`Teams`,icon:fi,badge:`teams`},{id:`explorer`,label:`Explorer`,icon:ar},{id:`search`,label:`Search`,icon:Yr},{id:`git`,label:`Git`,icon:lr},{id:`database`,label:`Database`,icon:je},{id:`tunnels`,label:`Cloudflare Tunnels`,shortLabel:`Tunnels`,icon:Le},{id:`ai-resources`,label:`AI Resources`,shortLabel:`AI`,icon:ke},{id:`settings`,label:`Settings`,icon:Qr}];function dh(e){let t=[...uh];if(e.jiraEnabled){let e=t.findIndex(e=>e.id===`settings`),n={id:`jira`,label:`Jira`,icon:se};e>=0?t.splice(e,0,n):t.push(n)}let n=e.contributions?.views;if(n){let e=n.sidebar??n.explorer??[];for(let n of e)t.push({id:`ext:${n.id}`,label:n.name,icon:F})}return t}function fh(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 ph({expanded:e}){let t=Do(e=>e.notifications),n=Do(e=>e.clearAll),r=Do(Oo),{projects:i,setActiveProject:a,customOrder:o}=q(rn(e=>({projects:e.projects,setActiveProject:e.setActiveProject,customOrder:e.customOrder}))),s=_t(i,o),c=J(e=>e.openTab),[l,u]=(0,X.useState)(!1),d=(0,X.useRef)(null),[f,p]=(0,X.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 rh(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,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`button`,{ref:d,onClick:m,className:G(`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,Z.jsx)(te,{className:`size-4 shrink-0`}),e&&(0,Z.jsx)(`span`,{className:`text-xs whitespace-nowrap`,children:`Notifications`}),r>0&&(0,Z.jsx)(`span`,{className:G(`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,Ec.createPortal)((0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:()=>u(!1)}),(0,Z.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,Z.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[(0,Z.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:r>0?`${r} unread session${r>1?`s`:``}`:`No unread`}),r>0&&(0,Z.jsxs)(`button`,{onClick:()=>{n(),u(!1)},className:`text-[10px] text-text-subtle hover:text-foreground transition-colors flex items-center gap-1`,children:[(0,Z.jsx)(kn,{className:`size-3`}),`Clear all`]})]}),r===0?(0,Z.jsx)(`div`,{className:`px-3 py-4 text-center text-xs text-text-subtle`,children:`All caught up`}):(0,Z.jsx)(`div`,{className:`py-1`,children:[..._.entries()].map(([e,t])=>(0,Z.jsxs)(`div`,{children:[(0,Z.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,Z.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{background:g(e)||`currentColor`}}),e]}),t.map(({sessionId:t,type:n,sessionTitle:r})=>(0,Z.jsx)(`button`,{onClick:()=>h(t,e),className:G(`w-full px-3 py-1.5 text-left text-[11px] text-foreground truncate hover:bg-surface-elevated transition-colors`,Eo(n)),children:r||`${t.slice(0,12)}...`},t))]},e))})]})]}),document.body)]})}var mh=Object.defineProperty,hh=Object.getOwnPropertySymbols,gh=Object.prototype.hasOwnProperty,_h=Object.prototype.propertyIsEnumerable,vh=(e,t,n)=>t in e?mh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,yh=(e,t)=>{for(var n in t||={})gh.call(t,n)&&vh(e,n,t[n]);if(hh)for(var n of hh(t))_h.call(t,n)&&vh(e,n,t[n]);return e},bh=(e,t)=>{var n={};for(var r in e)gh.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&hh)for(var r of hh(e))t.indexOf(r)<0&&_h.call(e,r)&&(n[r]=e[r]);return n},xh;(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})(xh||={}),(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||={})})(xh||={}),(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||={})})(xh||={});var Sh=xh,Ch={L:Sh.QrCode.Ecc.LOW,M:Sh.QrCode.Ecc.MEDIUM,Q:Sh.QrCode.Ecc.QUARTILE,H:Sh.QrCode.Ecc.HIGH},wh=128,Th=`L`,Eh=`#FFFFFF`,Dh=`#000000`,Oh=!1,kh=1,Ah=4,jh=0,Mh=.1;function Nh(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 Ph(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 Fh(e,t,n,r){if(r==null)return null;let i=e.length+n*2,a=Math.floor(t*Mh),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 Ih(e,t){return t==null?e?Ah:jh:Math.max(Math.floor(t),0)}function Lh({value:e,level:t,minVersion:n,includeMargin:r,marginSize:i,imageSettings:a,size:o,boostLevel:s}){let c=X.useMemo(()=>{let r=(Array.isArray(e)?e:[e]).reduce((e,t)=>(e.push(...Sh.QrSegment.makeSegments(t)),e),[]);return Sh.QrCode.encodeSegments(r,Ch[t],n,void 0,void 0,s)},[e,t,n,s]),{cells:l,margin:u,numCells:d,calculatedImageSettings:f}=X.useMemo(()=>{let e=c.getModules(),t=Ih(r,i);return{cells:e,margin:t,numCells:e.length+t*2,calculatedImageSettings:Fh(e,o,t,a)}},[c,o,a,r,i]);return{qrcode:c,margin:u,cells:l,numCells:d,calculatedImageSettings:f}}var Rh=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}(),zh=X.forwardRef(function(e,t){let n=e,{value:r,size:i=wh,level:a=Th,bgColor:o=Eh,fgColor:s=Dh,includeMargin:c=Oh,minVersion:l=kh,boostLevel:u,marginSize:d,imageSettings:f}=n,p=bh(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`marginSize`,`imageSettings`]),{style:m}=p,h=bh(p,[`style`]),g=f?.src,_=X.useRef(null),v=X.useRef(null),y=X.useCallback(e=>{_.current=e,typeof t==`function`?t(e):t&&(t.current=e)},[t]),[b,x]=X.useState(!1),{margin:S,cells:C,numCells:w,calculatedImageSettings:T}=Lh({value:r,level:a,minVersion:l,boostLevel:u,includeMargin:c,marginSize:d,imageSettings:f,size:i});X.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=Ph(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,Rh?t.fill(new Path2D(Nh(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)}}),X.useEffect(()=>{x(!1)},[g]);let E=yh({height:i,width:i},m),D=null;return g!=null&&(D=X.createElement(`img`,{src:g,key:g,style:{display:`none`},onLoad:()=>{x(!0)},ref:v,crossOrigin:T?.crossOrigin})),X.createElement(X.Fragment,null,X.createElement(`canvas`,yh({style:E,height:i,width:i,ref:y,role:`img`},h)),D)});zh.displayName=`QRCodeCanvas`;var Bh=X.forwardRef(function(e,t){let n=e,{value:r,size:i=wh,level:a=Th,bgColor:o=Eh,fgColor:s=Dh,includeMargin:c=Oh,minVersion:l=kh,boostLevel:u,title:d,marginSize:f,imageSettings:p}=n,m=bh(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`title`,`marginSize`,`imageSettings`]),{margin:h,cells:g,numCells:_,calculatedImageSettings:v}=Lh({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=Ph(g,v.excavation)),b=X.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=Nh(y,h);return X.createElement(`svg`,yh({height:i,width:i,viewBox:`0 0 ${_} ${_}`,ref:t,role:`img`},m),!!d&&X.createElement(`title`,null,d),X.createElement(`path`,{fill:o,d:`M0,0 h${_}v${_}H0z`,shapeRendering:`crispEdges`}),X.createElement(`path`,{fill:s,d:x,shapeRendering:`crispEdges`}),b)});Bh.displayName=`QRCodeSVG`;var Vh=/^[a-z0-9][a-z0-9-]{1,31}$/,Hh=`2–32 characters: lowercase letters, numbers, hyphens.`;function Uh(e){return e.replace(/^https?:\/\//,``).replace(/\/$/,``)}function Wh(e){if(!e)return``;let t=e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``).slice(0,32);return Vh.test(t)?t:``}function Gh({cloudUrl:e,deviceName:t}){let[n,r]=(0,X.useState)(null),[i,a]=(0,X.useState)(!0),[o,s]=(0,X.useState)(!1),[c,l]=(0,X.useState)(!1),[u,d]=(0,X.useState)(``),[f,p]=(0,X.useState)(!1),[m,h]=(0,X.useState)(null);(0,X.useEffect)(()=>{(async()=>{try{r((await V.get(`/api/cloud/alias`)).slug)}catch{s(!0)}a(!1)})()},[]);let g=(0,X.useCallback)(()=>{d(n??Wh(t)),h(null),l(!0)},[n,t]),_=(0,X.useCallback)(async()=>{let e=u.trim().toLowerCase();if(!Vh.test(e)){h(Hh);return}p(!0),h(null);try{r((await V.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,Z.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,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Permanent link`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsxs)(`span`,{className:`text-xs font-mono text-muted-foreground shrink-0`,children:[Uh(e),`/`]}),(0,Z.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,Z.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,Z.jsx)(z,{className:`size-3.5 animate-spin`}):(0,Z.jsx)(me,{className:`size-3.5`})}),(0,Z.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,Z.jsx)(Ge,{className:`size-3.5`})})]}),(0,Z.jsx)(`p`,{className:`text-[10px] text-muted-foreground`,children:m??Hh})]}):n?(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Permanent link`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.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,Z.jsxs)(`span`,{className:`truncate`,children:[Uh(e),`/`,n]}),(0,Z.jsx)(Fe,{className:`size-3 shrink-0`})]}),(0,Z.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,Z.jsx)(L,{className:`size-3.5`})})]})]}):(0,Z.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,Z.jsx)(L,{className:`size-3.5`}),`Set a permanent link`]})}function Kh({onStatus:e,publicPort:t,onTempUrl:n}){let[r,i]=(0,X.useState)(null),[a,o]=(0,X.useState)(null),[s,c]=(0,X.useState)(null),[l,u]=(0,X.useState)(null),d=(0,X.useCallback)((e,n)=>e.find(e=>e.source===`ppm`&&!e.protected&&e.port===t&&e.url&&e.url!==n)??null,[t]),f=(0,X.useCallback)(async()=>{try{let t=await Wp.status();i(t),e(t);let r=d(await V.get(`/api/tunnels`).catch(()=>[]),t.hostname?`https://${t.hostname}`:null);o(r),n(r?.url??null)}catch{}},[e,n,d]);(0,X.useEffect)(()=>{f()},[f]);let p=(0,X.useCallback)(async()=>{if(t){c(`add`),u(null);try{let e=await V.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,X.useCallback)(async()=>{if(a?.pid){c(`stop`),u(null);try{await V.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,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-xs`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,Z.jsx)(Le,{className:`size-3 text-primary shrink-0`}),(0,Z.jsxs)(`span`,{className:`text-foreground truncate`,children:[`Your domain · `,r.hostname]})]}),(0,Z.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,Z.jsx)(z,{className:`size-3.5 animate-spin`}):a?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(oi,{className:`size-3`}),` Stop temp link`]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(R,{className:`size-3`}),` Temp link`]})})]}),r.tunnelWarning&&(0,Z.jsx)(`p`,{className:`text-[11px] text-amber-500 leading-relaxed`,children:r.tunnelWarning}),l&&(0,Z.jsx)(`p`,{className:`text-[11px] text-destructive`,children:l})]})}var qh=`ppm-last-local-url`;function Jh(e){try{e&&localStorage.setItem(qh,e)}catch{}}function Yh(){try{let e=localStorage.getItem(qh);return e&&/^https?:\/\//.test(e)?e:null}catch{return null}}function Xh({onClose:e,variant:t=`popover`}){let[n,r]=(0,X.useState)(null),[i,a]=(0,X.useState)(null),[o,s]=(0,X.useState)(!0),[c,l]=(0,X.useState)(!1),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)(!1),[m,h]=(0,X.useState)(null),[g,_]=(0,X.useState)(null),[v,y]=(0,X.useState)(null),[b,x]=(0,X.useState)(!1),[S,C]=(0,X.useState)(!1),[w,T]=(0,X.useState)(null),E=(0,X.useCallback)(async()=>{try{let[e,t]=await Promise.all([V.get(`/api/cloud/status`),V.get(`/api/tunnel`)]);r(e),a(t),Jh(t.localUrl)}catch{}},[]);(0,X.useEffect)(()=>{E().finally(()=>s(!1))},[E]);let D=(0,X.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,X.useCallback)(e=>{Jt(e),_(e),setTimeout(()=>_(null),2e3)},[]),A=(0,X.useCallback)(async()=>{l(!0),h(null);try{a({active:!0,url:(await V.post(`/api/tunnel/start`,{})).url,localUrl:i?.localUrl??null}),r(await V.get(`/api/cloud/status`))}catch(e){h(e instanceof Error?e.message:`Failed to start tunnel`)}finally{l(!1)}},[i]),j=(0,X.useCallback)(async()=>{h(null);try{let{cloud_url:e}=await V.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 V.post(`/api/cloud/login`,{access_token:i.access_token,email:i.email,cloud_url:e}),r(await V.get(`/api/cloud/status`)))}catch{}},i)}catch(e){h(e instanceof Error?e.message:`Failed to start login`),x(!1),y(null)}},[]),M=(0,X.useCallback)(async()=>{d(!0),h(null);try{i?.active||a({active:!0,url:(await V.post(`/api/tunnel/start`,{})).url,localUrl:i?.localUrl??null}),await V.post(`/api/cloud/link`,{}),r(await V.get(`/api/cloud/status`))}catch(e){h(e instanceof Error?e.message:`Failed to link device`)}finally{d(!1)}},[i]),ee=(0,X.useCallback)(async()=>{if(confirm(`Unlink this device from PPM Cloud? It will no longer appear on your cloud dashboard.`)){p(!0);try{await V.post(`/api/cloud/unlink`,{}),r(await V.get(`/api/cloud/status`))}catch{}p(!1)}},[]),N=(0,X.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 V.post(`/api/cloud/unlink`,{})}catch{}await V.post(`/api/cloud/logout`,{}),r(e=>e?{...e,logged_in:!1,email:null,linked:!1,device_name:null,device_id:null}:null)}},[n?.linked]),P=i?.url||n?.tunnel_url;return(0,Z.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,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(Hn,{className:`size-4 text-primary`}),(0,Z.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:`PPM Cloud`})]}),(0,Z.jsx)(`button`,{onClick:e,className:`text-text-subtle hover:text-foreground`,children:(0,Z.jsx)(Ge,{className:`size-3.5`})})]}),o&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 text-muted-foreground text-xs py-2`,children:[(0,Z.jsx)(z,{className:`size-4 animate-spin`}),(0,Z.jsx)(`span`,{children:`Loading...`})]}),!o&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`space-y-1.5`,children:n?.logged_in?(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,Z.jsx)(`div`,{className:`size-2 rounded-full bg-success shrink-0`}),(0,Z.jsx)(`span`,{className:`text-xs text-foreground truncate`,children:n.email})]}),(0,Z.jsx)(`button`,{onClick:N,className:`text-text-subtle hover:text-foreground p-1 rounded hover:bg-muted transition-colors shrink-0`,title:`Sign out`,children:(0,Z.jsx)(Dr,{className:`size-3`})})]}):v?(0,Z.jsxs)(`div`,{className:`space-y-2 text-center`,children:[(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Open the link below and enter the code:`}),(0,Z.jsx)(`div`,{className:`font-mono text-2xl font-bold tracking-[0.3em] text-primary`,children:v.userCode}),(0,Z.jsx)(`a`,{href:v.verifyUrl,target:`_blank`,rel:`noopener noreferrer`,className:`text-xs text-primary hover:underline`,children:v.verifyUrl}),b&&(0,Z.jsxs)(`div`,{className:`flex items-center justify-center gap-1.5 text-xs text-muted-foreground`,children:[(0,Z.jsx)(z,{className:`size-3 animate-spin`}),(0,Z.jsx)(`span`,{children:`Waiting for verification...`})]})]}):(0,Z.jsxs)(Z.Fragment,{children:[P&&(0,Z.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,Z.jsxs)(`button`,{onClick:j,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,Z.jsx)(Hn,{className:`size-3.5`}),P&&!S?`Get a permanent link`:`Sign in to PPM Cloud`]})]})}),n?.logged_in&&(0,Z.jsx)(`div`,{className:`space-y-1.5`,children:n.linked?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,Z.jsx)(wr,{className:`size-3 text-primary shrink-0`}),(0,Z.jsx)(`span`,{className:`text-foreground truncate`,children:n.device_name})]}),(0,Z.jsx)(`button`,{onClick:ee,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,Z.jsx)(z,{className:`size-3 animate-spin`}):(0,Z.jsx)(di,{className:`size-3`})})]}),(0,Z.jsx)(Gh,{cloudUrl:n.cloud_url,deviceName:n.device_name})]}):(0,Z.jsx)(`button`,{onClick:M,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,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(z,{className:`size-3.5 animate-spin`}),` Linking...`]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(wr,{className:`size-3.5`}),` Link this machine`]})})}),(0,Z.jsx)(`div`,{className:`border-t border-border`}),(0,Z.jsx)(Kh,{onStatus:D,publicPort:O,onTempUrl:T}),i?.localUrl&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Local Network`}),(0,Z.jsx)(Zh,{url:i.localUrl,copied:g,onCopy:k})]}),!P&&!c&&(0,Z.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,Z.jsx)($r,{className:`size-3.5`}),`Start Sharing`]}),c&&(0,Z.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-2`,children:[(0,Z.jsx)(z,{className:`size-5 animate-spin text-primary`}),(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Starting tunnel...`})]}),P&&(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Public URL`}),(0,Z.jsx)(`div`,{className:`flex justify-center`,children:(0,Z.jsx)(`div`,{className:`p-3 rounded-lg`,style:{backgroundColor:`#ffffff`,colorScheme:`light`},children:(0,Z.jsx)(Bh,{value:P,size:180,bgColor:`#ffffff`,fgColor:`#000000`,level:`L`,style:{display:`block`}})})}),(0,Z.jsx)(Zh,{url:P,copied:g,onCopy:k})]}),w&&w!==P&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`span`,{className:`text-[10px] font-medium text-muted-foreground uppercase tracking-wide`,children:`Temporary link`}),(0,Z.jsx)(Zh,{url:w,copied:g,onCopy:k}),(0,Z.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,Z.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,Z.jsx)(Fe,{className:`size-3`}),`Open Cloud Dashboard`]}),m&&(0,Z.jsx)(`p`,{className:`text-xs text-destructive`,children:m})]})]})}function Zh({url:e,copied:t,onCopy:n}){return(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.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,Z.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,Z.jsx)(me,{className:`size-3.5 text-primary`}):(0,Z.jsx)(Ae,{className:`size-3.5`})})]})}var Qh=`hienlh/ppm`;async function $h(e,t){let n=`(could not fetch)`;try{let e=Je(),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 V.get(`${B(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 eg(e){let t=`https://github.com/${Qh}/issues/new?title=bug%3A%20&body=${encodeURIComponent(e)}`;window.open(t,`_blank`)}function tg(e,t){$h(e,t).then(e=>{window.dispatchEvent(new CustomEvent(`open-bug-report`,{detail:e}))})}function ng({count:e}){return(0,Z.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 rg({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,Z.jsxs)(`button`,{draggable:!0,onDragStart:c,onDragOver:l,onDrop:u,onDragEnd:d,onClick:a,className:G(`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,Z.jsx)(e,{className:`size-[18px]`,strokeWidth:n?2.4:2}),r!=null&&r>0&&(0,Z.jsx)(ng,{count:r}),(0,Z.jsx)(Tm,{id:i,variant:`corner`}),(0,Z.jsx)(`span`,{className:`pointer-events-none absolute left-[calc(100%+8px)] z-50 hidden can-hover:group-hover:block 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)]`,children:t})]})}function ig({icon:e,label:t,onClick:n,active:r,featureBadge:i}){return(0,Z.jsxs)(`button`,{type:`button`,"aria-label":t,title:t,onClick:n,className:G(`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,Z.jsx)(e,{className:`size-4`}),(0,Z.jsx)(Tm,{id:i,variant:`corner`}),(0,Z.jsx)(`span`,{className:`pointer-events-none absolute left-[calc(100%+8px)] z-50 hidden can-hover:group-hover:block 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)]`,children:t})]})}var ag=(0,X.memo)(function({className:e}){let{activeProject:t}=q(rn(e=>({activeProject:e.activeProject}))),n=W(e=>e.sidebarActiveTab),r=W(e=>e.setSidebarActiveTab),i=W(e=>e.sidebarTabOrder),a=W(e=>e.setSidebarTabOrder),o=W(e=>e.sidebarCollapsed),s=W(e=>e.toggleSidebar),c=W(e=>e.jiraEnabled),l=W(e=>e.version),u=jt(e=>e.contributions),d=Bl(e=>t?.name?e.counts.get(t.name)??0:0),f=Kf(e=>e.unreadCount),p=Do(ko(t?.name)),m=(0,X.useMemo)(()=>fh(dh({jiraEnabled:c,contributions:u}),i),[u,c,i]),[h,g]=(0,X.useState)(null),[_,v]=(0,X.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,X.useState)(!1),S=(0,X.useRef)(null),[C,w]=(0,X.useState)(null);(0,X.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,X.useEffect)(()=>{let e=()=>{Kt()||x(!0)};return window.addEventListener(`open-cloud-share`,e),()=>window.removeEventListener(`open-cloud-share`,e)},[]);let T=()=>tg(l),E=e=>{o?(r(e),s()):n===e?s():r(e)};return(0,Z.jsxs)(`div`,{className:G(`w-[52px] shrink-0 border-r border-border flex flex-col`,e),children:[(0,Z.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,Z.jsx)(rg,{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:()=>E(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,Z.jsxs)(`div`,{className:`shrink-0 flex flex-col items-center gap-0.5 px-[3px] py-2 border-t border-border`,children:[(0,Z.jsx)(ph,{expanded:!1}),(0,Z.jsxs)(`button`,{ref:S,onClick:()=>x(!b),className:G(`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,Z.jsx)(Hn,{className:`size-4`}),(0,Z.jsx)(`span`,{className:`pointer-events-none absolute left-[calc(100%+8px)] z-50 hidden can-hover:group-hover:block 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)]`,children:`Cloud & Share`})]}),b&&C&&(0,Ec.createPortal)((0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:()=>x(!1)}),(0,Z.jsx)(`div`,{className:`fixed z-50`,style:{left:C.left,bottom:C.bottom},children:(0,Z.jsx)(Xh,{onClose:()=>x(!1)})})]}),document.body),(0,Z.jsx)(ig,{icon:sr,label:`File Explorer`,featureBadge:`os-explorer`,onClick:()=>void hd()}),(0,Z.jsx)(ig,{icon:se,label:`Report Bug`,onClick:T}),(0,Z.jsx)(ig,{icon:Qr,label:`Settings`,active:n===`settings`,onClick:()=>E(`settings`)})]})]})});function og({onResize:e}){let t=(0,X.useRef)(!1);return(0,Z.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,X.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,X.useCallback)(n=>{t.current&&e(n.clientX)},[e]),onPointerUp:(0,X.useCallback)(e=>{t.current=!1,e.currentTarget.releasePointerCapture(e.pointerId),document.body.style.cursor=``,document.body.style.userSelect=``},[])})}function sg({onToggle:e}){return(0,Z.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,Z.jsx)(`span`,{className:`text-sm font-extrabold text-primary leading-none tracking-tight`,children:`PPM`})})}var cg=(0,X.memo)(function(){let{activeProject:e}=q(rn(e=>({activeProject:e.activeProject}))),t=W(e=>e.sidebarCollapsed),n=W(e=>e.sidebarWidth),r=W(e=>e.toggleSidebar),i=W(e=>e.setSidebarWidth),a=W(e=>e.sidebarActiveTab);return Vl(e?.name,a===`git`),t?(0,Z.jsxs)(`aside`,{className:`hidden md:flex flex-col w-[52px] min-w-[52px] bg-rail border-r border-border`,children:[(0,Z.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,Z.jsx)(Lr,{className:`size-4 text-text-secondary`})}),(0,Z.jsx)(ag,{className:`flex-1 min-h-0`})]}):(0,Z.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,Z.jsxs)(`div`,{className:`flex h-[41px] border-b border-border shrink-0`,children:[(0,Z.jsx)(sg,{onToggle:r}),(0,Z.jsx)(`div`,{className:`flex-1 min-w-0 flex items-center px-1.5`,children:(0,Z.jsx)(lh,{})})]}),(0,Z.jsxs)(`div`,{className:`flex-1 min-h-0 flex`,children:[(0,Z.jsx)(ag,{}),(0,Z.jsx)(`div`,{className:`flex-1 min-w-0 flex flex-col`,children:(0,Z.jsxs)(`div`,{className:`flex-1 overflow-y-auto min-h-0`,children:[a===`explorer`&&(e?(0,Z.jsx)($d,{}):(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-24 p-4`,children:(0,Z.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Select a project to browse files`})})),a===`git`&&(0,Z.jsx)(sf,{metadata:{projectName:e?.name}}),a===`search`&&(0,Z.jsx)(Rf,{}),a===`history`&&(e?(0,Z.jsx)(Sm,{variant:`sidebar`,projectName:e.name}):(0,Z.jsx)(`div`,{className:`flex items-center justify-center h-24 p-4`,children:(0,Z.jsx)(`p`,{className:`text-xs text-text-subtle text-center`,children:`Select a project to view chat history`})})),a===`teams`&&(0,Z.jsx)(Gm,{}),a===`database`&&(0,Z.jsx)(Pf,{}),a===`tunnels`&&(0,Z.jsx)(pm,{}),a===`jira`&&(0,Z.jsx)(op,{}),a===`ai-resources`&&(0,Z.jsx)(Vp,{}),a===`settings`&&(0,Z.jsx)(re,{}),typeof a==`string`&&a.startsWith(`ext:`)&&(0,Z.jsx)(Hf,{viewId:a.slice(4),className:`h-full`})]})})]}),(0,Z.jsx)(og,{onResize:i})]})}),lg=1e4;function ug(){let e=Je();return e?{Authorization:`Bearer ${e}`}:{}}async function dg(e){await fetch(`/api/system/resources/stream/${encodeURIComponent(e)}/ping`,{method:`POST`,headers:ug()}).catch(()=>{})}async function fg(e){await fetch(`/api/system/resources/stream/${encodeURIComponent(e)}`,{method:`DELETE`,headers:ug()}).catch(()=>{})}function pg(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 mg=null,hg=0,gg=0,_g=!1,vg=null,yg=[],bg=!1,xg=null,Sg=0,Cg=null,wg=new Set;function Tg(){for(let e of wg)e()}function Eg(){Cg&&=(clearInterval(Cg),null);let e=xg;xg=null,e&&fg(e)}function Dg(e){xg=e,Cg&&clearInterval(Cg),Cg=setInterval(()=>{let e=xg;e&&dg(e)},lg)}function Og(e){let t=Je(),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 kg(e){if(mg)return;Sg=0;let t=new EventSource(Og(e));_g=e,t.addEventListener(`session`,e=>{try{let t=JSON.parse(e.data);t.sid&&Dg(t.sid)}catch{}}),t.addEventListener(`snapshot`,e=>{try{let t=JSON.parse(e.data);vg=t;let n={ts:t.ts,system:t.system,groups:Object.fromEntries(t.groups.map(e=>[e.key,{cpu:e.cpu,ramMB:e.ramMB}]))};yg=[...yg,n],yg.length>900&&(yg=yg.slice(-900)),yg=pg(yg,60),Sg++,bg=!0,Tg()}catch{}}),t.onerror=()=>{if(bg=!1,Eg(),mg&&=(mg.close(),null),Tg(),hg>0){let e=gg>0;setTimeout(()=>{!mg&&hg>0&&kg(e)},5e3)}},t.onopen=()=>{bg=!0,Tg()},mg=t}function Ag(){Eg(),mg&&(mg.close(),mg=null,bg=!1,Tg())}function jg(){let e=gg>0;if(hg===0){Ag();return}if(!mg){kg(e);return}_g!==e&&(Ag(),kg(e))}function Mg(e={}){let[,t]=(0,X.useState)(0),n=(0,X.useRef)(!0),r=!!e.processes,i=(0,X.useCallback)(()=>{n.current&&t(e=>e+1)},[]);return(0,X.useEffect)(()=>(n.current=!0,wg.add(i),hg++,r&&gg++,jg(),()=>{n.current=!1,wg.delete(i),hg--,r&&gg--,jg()}),[i,r]),{latest:vg,history:yg,isConnected:bg,tickCount:Sg}}function Ng(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 Pg(){let e=Gt(),t=gt(e=>e.open),n=gt(e=>e.focus),r=J(e=>e.openTab);return(0,X.useCallback)(()=>{let i=Ng(e,Object.values(gt.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 Fg(e){return e>80?`text-error`:e>50?`text-warning`:`text-success`}var Ig=(0,X.memo)(function({compact:e=!1}){let{latest:t,isConnected:n}=Mg(),r=Pg(),i=Gt();if(!n||!t)return e?null:(0,Z.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,Z.jsx)(Wn,{className:`size-3 opacity-50`}),(0,Z.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,Z.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,Z.jsxs)(`span`,{className:Fg(a),children:[`CPU `,a.toFixed(0),`%`]}),(0,Z.jsxs)(`span`,{className:`text-text-secondary`,children:[`MEM `,c]})]}):(0,Z.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,Z.jsx)(Wn,{className:G(`size-3`,Fg(a))}),(0,Z.jsx)(`span`,{className:Fg(a),children:i?`${a.toFixed(0)}%`:`CPU ${a.toFixed(1)}%`}),(0,Z.jsx)(`span`,{className:`text-text-subtle`,children:`|`}),(0,Z.jsx)(`span`,{className:`text-text-secondary`,children:o<1024?`${o.toFixed(0)}MB`:`${(o/1024).toFixed(1)}GB`}),!i&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`span`,{className:`text-text-subtle`,children:`|`}),(0,Z.jsxs)(`span`,{className:`text-text-subtle`,children:[s,` proc`]})]})]})}),Lg=(0,X.memo)(function(){let e=W(e=>e.themeStyle),t=W(e=>e.themeMode),n=W(e=>e.customThemeId),r=W(e=>e.customThemes),i=W(e=>e.setThemeStyle),a=W(e=>e.setThemeMode),o=W(e=>e.setCustomTheme),s=_n(e,t,r,n),c=e=>{let t=gn[e];t&&(i(t.style),a(t.mode))};return(0,Z.jsxs)(Vc,{children:[(0,Z.jsx)(Uc,{asChild:!0,children:(0,Z.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,Z.jsx)(Fr,{className:`size-[11px]`}),(0,Z.jsx)(`span`,{className:`truncate max-w-[90px]`,children:s.name})]})}),(0,Z.jsxs)(Wc,{side:`top`,align:`end`,className:`w-56`,children:[(0,Z.jsx)(Jc,{children:`Theme`}),hn.map(e=>{let t=gn[e];if(!t)return null;let n=s.id===e;return(0,Z.jsxs)(Gc,{onClick:()=>c(e),className:`gap-2`,children:[(0,Z.jsx)(ne,{swatch:t.swatch}),(0,Z.jsx)(`span`,{className:`flex-1 truncate`,children:t.name}),(0,Z.jsx)(me,{className:G(`size-4 shrink-0`,n?`opacity-100`:`opacity-0`)})]},e)}),r.length>0&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Jc,{children:`Imported`}),r.map(t=>{let r=e===`custom`&&n===t.id;return(0,Z.jsxs)(Gc,{onClick:()=>o(t.id),className:`gap-2`,children:[(0,Z.jsx)(ne,{swatch:t.swatch}),(0,Z.jsx)(`span`,{className:`flex-1 truncate`,children:t.name}),(0,Z.jsx)(me,{className:G(`size-4 shrink-0`,r?`opacity-100`:`opacity-0`)})]},t.id)})]})]})]})}),Rg=`https://raw.githubusercontent.com/hienlh/ppm/main/CHANGELOG.md`;function zg(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 Bg=/^##\s*\[(\d+\.\d+\.\d+)\]\s*(?:-\s*(.+))?\s*$/;function Vg(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(Bg);t?(a(),r={version:t[1],date:(t[2]??``).trim(),body:``}):r&&i.push(e)}return a(),n}function Hg(e){return e.reduce((e,t)=>e&&zg(t.version,e)<=0?e:t.version,null)}async function Ug(){let e=await fetch(`${Rg}?t=${Date.now()}`,{cache:`no-store`});if(!e.ok)throw Error(`CHANGELOG fetch failed (${e.status})`);return e.text()}async function Wg(e=10){return Vg(await Ug()).slice(0,e)}var Gg=6e4,Kg=`ppm-upgrade-dismissed-`,qg=`https://github.com/hienlh/ppm/releases`,Jg=`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(Jg):sessionStorage.setItem(Jg,t||`1`)})();function Yg(){if(typeof window>`u`)return null;let e=sessionStorage.getItem(Jg);return e===null?null:e===`1`?``:e}function Xg(e){let[t=0,n=0]=e.split(`.`).map(e=>parseInt(e,10)||0);return`${t}.${n+1}.0`}async function Zg(){if(`caches`in window){let e=await caches.keys();await Promise.all(e.map(e=>caches.delete(e)))}window.location.reload()}async function Qg(){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 Zg()}function $g(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 e_({align:e=`right`}){let t=W(e=>e.version),[n,r]=(0,X.useState)(null),[i,a]=(0,X.useState)(null),[o,s]=(0,X.useState)(!1),[c,l]=(0,X.useState)(!1),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)(!1),[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(null),[v,y]=(0,X.useState)(!1),b=(0,X.useCallback)(async(e=!1)=>{try{let t=await V.get(e?`/api/upgrade?refresh=1`:`/api/upgrade`);r(t.currentVersion),t.availableVersion?(a(t.availableVersion),h(!!sessionStorage.getItem(Kg+t.availableVersion))):a(null)}catch{}},[]);(0,X.useEffect)(()=>{b();let e=setInterval(()=>b(),Gg);return()=>clearInterval(e)},[b]),(0,X.useEffect)(()=>{o&&b(!0)},[o,b]);let x=n??t,S=Yg(),C=S!==null,w=S||(x?Xg(x):`9.9.9`),T=i&&x&&zg(i,x)>0?i:null;(0,X.useEffect)(()=>{!o||!x||(y(!0),Wg().then(_).catch(()=>_([])).finally(()=>y(!1)))},[o,x]);let E=(0,X.useMemo)(()=>{if(!g||!x)return null;let e=Hg(g);return e&&zg(e,x)>0?e:null},[g,x]),D=T??E??(C?w:null),O=!!D&&!m,k=(0,X.useMemo)(()=>{if(!g||!O||C||!x)return g;let e=g.filter(e=>zg(e.version,x)>0);return e.length>0?e:g},[g,O,C,x]),A=(0,X.useCallback)(()=>{l(!1),d(!0),p(!0),Qg()},[]),j=(0,X.useCallback)(async()=>{l(!0),s(!1);try{let e=await V.post(`/api/upgrade/apply`);e.restart?A():(H.info(e.message||`Upgrade installed. Restart PPM manually.`),l(!1),D&&sessionStorage.setItem(Kg+D,`1`),h(!0))}catch(e){$g(e)?A():/already on latest/i.test(e.message)?(H.info(`v${D} is announced but not published yet — try again shortly.`),l(!1)):(H.error(`Upgrade failed: ${e.message}`),l(!1))}},[D,A]),M=(0,X.useCallback)(()=>{D&&sessionStorage.setItem(Kg+D,`1`),h(!0),s(!1)},[D]);return!x&&!O?null:u?(0,Z.jsx)(`button`,{onClick:()=>{p(!0),Qg()},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,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(z,{className:`size-3 animate-spin`}),` Updating, reconnecting…`]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(Ve,{className:`size-3`}),` Reload`]})}):c?(0,Z.jsxs)(`span`,{className:`flex items-center gap-1 px-1 text-success`,children:[(0,Z.jsx)(z,{className:`size-3 animate-spin`}),` Updating…`]}):(0,Z.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,Z.jsxs)(`button`,{onClick:()=>x&&s(e=>!e),title:O?`Update available: v${D}`:`PPM v${x} — release notes`,className:G(`flex items-center gap-1 px-1 rounded-sm transition-colors`,O?`text-success hover:brightness-110`:`hover:text-text`),children:[O&&(0,Z.jsx)(Rn,{className:`size-3`}),(0,Z.jsx)(`span`,{children:O?`New version · v${D}`:`v${x}`})]}),o&&x&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 z-40`,onClick:()=>s(!1)}),(0,Z.jsxs)(`div`,{className:G(`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,Z.jsxs)(`div`,{className:`flex items-center gap-2.5 px-3 py-3 border-b border-border-soft`,children:[(0,Z.jsx)(`span`,{className:G(`flex items-center justify-center size-[26px] shrink-0 rounded-lg`,O?`bg-success/20`:`bg-accent/15`),children:O?(0,Z.jsx)(Rn,{className:`size-[15px] text-success`}):(0,Z.jsx)(_r,{className:`size-[15px] text-accent`})}),(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Z.jsx)(`div`,{className:`text-[13px] font-semibold text-text leading-tight`,children:O?`Update available`:`Release notes`}),(0,Z.jsx)(`div`,{className:`text-[11px] text-text-3 font-mono mt-0.5`,children:O?`v${x} → v${D}`:`PPM v${x}`})]})]}),(0,Z.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,Z.jsxs)(`span`,{className:`flex items-center gap-2 text-text-3`,children:[(0,Z.jsx)(z,{className:`size-3.5 animate-spin`}),` Loading release notes…`]}):k&&k.length>0?(0,Z.jsx)(`div`,{className:`space-y-2.5`,children:k.map(e=>(0,Z.jsx)(n_,{version:e.version,body:e.body},e.version))}):(0,Z.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,Z.jsxs)(`div`,{className:`flex flex-col gap-1.5 px-3 pb-3`,children:[O&&(0,Z.jsxs)(`button`,{onClick:C&&!T?()=>{H.info(`Test mode — no real update to install`),s(!1)}:j,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,Z.jsx)(Me,{className:`size-3.5`}),` Update now`]}),(0,Z.jsxs)(`div`,{className:`flex gap-1.5`,children:[(0,Z.jsxs)(`a`,{href:qg,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,Z.jsx)(Fe,{className:`size-3`}),` Release notes`]}),O&&(0,Z.jsx)(`button`,{onClick:M,className:`px-3 py-2 rounded-lg border border-border text-xs text-text-3 hover:text-text-2 transition-colors`,children:`Later`})]})]})]})]})]})}function t_(e){return e.replace(/\*\*(.+?)\*\*/g,`$1`).replace(/`([^`]+)`/g,`$1`)}function n_({version:e,body:t}){let n=t.split(`
23
+ `);return(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`div`,{className:`text-[11px] font-mono font-semibold text-text mb-1`,children:[`v`,e]}),(0,Z.jsx)(`div`,{className:`space-y-1`,children:n.map((e,t)=>{let n=e.trim();return n?n.startsWith(`### `)?(0,Z.jsx)(`div`,{className:`text-[10px] font-semibold uppercase tracking-wide text-text-3 pt-1`,children:n.slice(4)},t):n.startsWith(`- `)?(0,Z.jsxs)(`div`,{className:`flex gap-1.5 text-text-2`,children:[(0,Z.jsx)(`span`,{className:`text-text-3 shrink-0`,children:`•`}),(0,Z.jsx)(`span`,{className:`min-w-0 break-words`,children:t_(n.slice(2))})]},t):(0,Z.jsx)(`div`,{className:`text-text-2 break-words`,children:t_(n)},t):null})})]})}function r_(e,t){return e?e.tabs.filter(e=>!e.projectId||!t||e.projectId===t).length:0}var i_=(0,X.memo)(function(){let e=jt(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,Z.jsxs)(`div`,{className:`hidden md:flex items-center justify-between 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,Z.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,Z.jsx)(a_,{}),t.map(e=>(0,Z.jsx)(s_,{item:e},e.id)),(0,Z.jsx)(o_,{})]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,Z.jsx)(Ig,{compact:!0}),n.map(e=>(0,Z.jsx)(s_,{item:e},e.id)),(0,Z.jsx)(Lg,{}),(0,Z.jsx)(e_,{})]})]})}),a_=(0,X.memo)(function(){let e=q(e=>e.activeProject?.name??null),t=Bl(t=>e?t.meta.get(e):void 0);if(!t?.branch)return null;let{branch:n,ahead:r,behind:i,tracking:a}=t,o=!!a&&r===0&&i===0;return(0,Z.jsxs)(`span`,{className:`flex items-center gap-2 min-w-0 shrink-0`,children:[(0,Z.jsxs)(`span`,{className:`flex items-center gap-1 text-primary min-w-0`,title:a?`Tracking ${a}`:`No upstream`,children:[(0,Z.jsx)(lr,{className:`size-3 shrink-0`}),(0,Z.jsx)(`span`,{className:`truncate max-w-[140px]`,children:n})]}),(r>0||i>0)&&(0,Z.jsxs)(`span`,{className:`flex items-center gap-1.5 shrink-0`,children:[r>0&&(0,Z.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,Z.jsx)(On,{className:`size-3`}),r]}),i>0&&(0,Z.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,Z.jsx)(En,{className:`size-3`}),i]})]}),o&&(0,Z.jsxs)(`span`,{className:`flex items-center gap-1 text-success shrink-0`,children:[(0,Z.jsx)(me,{className:`size-3`}),`synced`]})]})}),o_=(0,X.memo)(function(){let e=K(e=>e.dock.visible),t=r_(K(e=>e.panels[st]),q(e=>e.activeProject?.name??null));return(0,Z.jsxs)(`button`,{onClick:()=>K.getState().toggleDock(),title:e?`Hide panel`:`Show panel`,"aria-label":e?`Hide panel`:`Show panel`,className:G(`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,Z.jsx)(Ir,{className:`size-[11px]`}),t>0&&(0,Z.jsx)(`span`,{children:t})]})}),s_=(0,X.memo)(function({item:e}){let t=(0,Z.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,Z.jsxs)(xi,{children:[(0,Z.jsx)(Si,{asChild:!0,children:t}),(0,Z.jsx)(Ci,{side:`top`,className:`text-xs`,children:e.tooltip})]}):t}),c_=`relative flex-1 min-h-0 overflow-hidden rounded-b-[8px] bg-panel`;function l_(e,t,n){let r=Ht(e),[i]=(0,X.useState)(()=>{let e=document.createElement(`div`);return e.className=c_,e});return(0,X.useLayoutEffect)(()=>{let n=t.current;if(n)return n.append(i),Lt(e,i),()=>{let t=Rt(e);t&&ac()===t&&t.detach(),Lt(e,null),i.remove()}},[i,t,e]),(0,X.useLayoutEffect)(()=>{i.classList.toggle(`hidden`,n&&!r)},[i,n,r]),{body:i,pip:r}}function u_({pip:e,minimized:t}){return(0,Z.jsxs)(`div`,{className:G(`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,Z.jsx)(`span`,{className:`text-xs text-text-2`,children:`Playing in picture-in-picture`}),(0,Z.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 d_(e){let t=`mac-folder-${(0,X.useId)()}`;return(0,Z.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,Z.jsx)(`defs`,{children:(0,Z.jsxs)(`linearGradient`,{id:t,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,Z.jsx)(`stop`,{offset:`0`,stopColor:`#7FC1FF`}),(0,Z.jsx)(`stop`,{offset:`1`,stopColor:`#3E92E5`})]})}),(0,Z.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,Z.jsx)(`path`,{d:`M2.5 10.5h19V9.8H4.7A2 2 0 0 0 2.5 10.5Z`,fill:`#FFFFFF`,fillOpacity:`.3`})]})}function f_(e){let t=`mac-folder-open-${(0,X.useId)()}`;return(0,Z.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,Z.jsx)(`defs`,{children:(0,Z.jsxs)(`linearGradient`,{id:t,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,Z.jsx)(`stop`,{offset:`0`,stopColor:`#8FCBFF`}),(0,Z.jsx)(`stop`,{offset:`1`,stopColor:`#2F82D9`})]})}),(0,Z.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,Z.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 p_=`grid place-items-center size-6 rounded text-text-2 can-hover:hover:bg-surface-elevated can-hover:hover:text-text transition-colors`;function m_({id:e,className:t}){let n=Ht(e);if(!Rs())return null;let r=()=>{let t=Rt(e);if(t){t.detach();return}let n=Wt(e);if(!n){H.error(`This window has nothing to pop out yet`);return}let r=gt.getState().windows[e]?.rect;sc(n,{width:r?.w??0,height:r?r.h-36:0,onDetach:()=>Ft(e,null)}).then(t=>{if(!(!t||ac()!==t)){if(Wt(e)!==n){t.detach();return}Ft(e,t),Ls(t.pipWindow.document)}}).catch(()=>{H.error(`Could not open the picture-in-picture window`)})},i=n?`Bring back from picture-in-picture`:`Open in picture-in-picture`;return(0,Z.jsx)(`button`,{type:`button`,title:i,"aria-label":i,"aria-pressed":!!n,className:G(t??p_,n&&`text-primary`),onClick:r,children:(0,Z.jsx)(Br,{className:`size-3.5`})})}var h_=[{color:`#FF5F57`,label:`Close window`,Icon:Ge},{color:`#FEBC2E`,label:`Minimize window`,Icon:Nr},{color:`#28C840`,label:`Maximize window`,Icon:R}];function g_({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,Z.jsxs)(`div`,{...l,"data-skin":`macos`,style:{height:36,fontFamily:`var(--x-font)`,...c},className:G(`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,Z.jsx)(`div`,{className:`flex items-center gap-2 pl-3`,children:h_.map(({color:e,label:t,Icon:r},i)=>(0,Z.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,Z.jsx)(r,{className:`size-2 text-black/60 can-hover:opacity-0 can-hover:group-hover/titlebar:opacity-100`,strokeWidth:3})},t))}),(0,Z.jsx)(`span`,{className:G(`pointer-events-none flex-1 min-w-0 truncate text-center text-[13px] px-2`,n?`text-text`:`text-text-2`),children:t}),(0,Z.jsx)(`div`,{className:`flex items-center pr-2`,children:(0,Z.jsx)(m_,{id:e})})]})}var __={id:`macos`,vocab:{home:`Home`,pinned:`Favorites`,known:`Locations`,drives:`Devices`},FolderIcon:d_,FolderOpenIcon:f_,chrome:g_};function v_(e){return(0,Z.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,Z.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,Z.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,Z.jsx)(`path`,{d:`M4 9.2h16`,stroke:`#FFFFFF`,strokeOpacity:`.35`,strokeWidth:`1`})]})}function y_(e){return(0,Z.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,Z.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,Z.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 b_=`grid place-items-center w-[46px] self-stretch text-text-2 can-hover:hover:bg-surface-elevated can-hover:hover:text-text transition-colors`,x_=G(b_,`can-hover:hover:!bg-[#c42b1c] can-hover:hover:!text-white`);function S_({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,Z.jsxs)(`div`,{...d,"data-skin":`windows`,style:{height:36,fontFamily:`var(--x-font)`,...u},className:G(`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,Z.jsxs)(`div`,{className:`flex flex-1 min-w-0 items-center gap-2 px-2.5 cursor-default`,children:[t===`explorer`&&(0,Z.jsx)(v_,{className:`size-4 shrink-0`}),(0,Z.jsx)(`span`,{className:G(`truncate text-[12px]`,i?`text-text`:`text-text-2`),children:n})]}),(0,Z.jsx)(m_,{id:e,className:b_}),(0,Z.jsx)(`button`,{type:`button`,"aria-label":`Minimize window`,className:b_,onClick:o,children:(0,Z.jsx)(Nr,{className:`size-3.5`})}),(0,Z.jsx)(`button`,{type:`button`,"aria-label":r===`maximized`?`Restore window`:`Maximize window`,className:b_,onClick:s,children:r===`maximized`?(0,Z.jsx)(Ae,{className:`size-3`}):(0,Z.jsx)(oi,{className:`size-3`})}),(0,Z.jsx)(`button`,{type:`button`,"aria-label":`Close window`,className:x_,onClick:c,children:(0,Z.jsx)(Ge,{className:`size-3.5`})})]})}var C_={id:`windows`,vocab:{home:`Home`,pinned:`Quick access`,known:`Folders`,drives:`Drives`},FolderIcon:v_,FolderOpenIcon:y_,chrome:S_};function w_(){let e=W(e=>e.explorerSkin),{host:t}=ld();return e===`windows`?C_:e===`macos`?__:t?.platform===`win32`?C_:__}function T_(e){let t=w_().chrome;return(0,Z.jsx)(t,{...e})}function E_(e,t,n){return Math.max(t,Math.min(e,n))}var D_={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 O_(e,t,n){return t===0||Math.abs(t)===1/0?e**(n*5):e*t*n/(t+n*e)}function k_(e,t,n,r=.15){return r===0?E_(e,t,n):e<t?-O_(t-e,n-t,r)+t:e>n?+O_(e-n,n-t,r)+n:e}function A_(e,[t,n],[r,i]){let[[a,o],[s,c]]=e;return[k_(t,a,o,r),k_(n,s,c,i)]}function j_(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 M_(e){var t=j_(e,`string`);return typeof t==`symbol`?t:String(t)}function N_(e,t,n){return t=M_(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P_(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 F_(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?P_(Object(n),!0).forEach(function(t){N_(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):P_(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var I_={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 L_(e){return e?e[0].toUpperCase()+e.slice(1):``}var R_=[`enter`,`leave`];function z_(e=!1,t){return e&&!R_.includes(t)}function B_(e,t=``,n=!1){let r=I_[e],i=r&&r[t]||t;return`on`+L_(e)+L_(i)+(z_(n,i)?`Capture`:``)}var V_=[`gotpointercapture`,`lostpointercapture`];function H_(e){let t=e.substring(2).toLowerCase(),n=!!~t.indexOf(`passive`);n&&(t=t.replace(`passive`,``));let r=V_.includes(t)?`capturecapture`:`capture`,i=!!~t.indexOf(r);return i&&(t=t.replace(`capture`,``)),{device:t,capture:i,passive:n}}function U_(e,t=``){let n=I_[e];return e+(n&&n[t]||t)}function W_(e){return`touches`in e}function G_(e){return W_(e)?`touch`:`pointerType`in e?e.pointerType:`mouse`}function K_(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 q_(e){return e.type===`touchend`||e.type===`touchcancel`?e.changedTouches:e.targetTouches}function J_(e){return W_(e)?q_(e)[0]:e}function Y_(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 X_(e){return K_(e).map(e=>e.identifier)}function Z_(e,t){let[n,r]=Array.from(e.touches).filter(e=>t.includes(e.identifier));return Y_(n,r)}function Q_(e){let t=J_(e);return W_(e)?t.identifier:t.pointerId}function $_(e){let t=J_(e);return[t.clientX,t.clientY]}var ev=40,tv=800;function nv(e){let{deltaX:t,deltaY:n,deltaMode:r}=e;return r===1?(t*=ev,n*=ev):r===2&&(t*=tv,n*=tv),[t,n]}function rv(e){let{scrollX:t,scrollY:n,scrollLeft:r,scrollTop:i}=e.currentTarget;return[t??r??0,n??i??0]}function iv(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 av(e,...t){return typeof e==`function`?e(...t):e}function ov(){}function sv(...e){return e.length===0?ov:e.length===1?e[0]:function(){let t;for(let n of e)t=n.apply(this,arguments)||t;return t}}function cv(e,t){return Object.assign({},t,e||{})}var lv=32,uv=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?av(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,iv(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);D_.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=av(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=A_(t._bounds,t.offset,b),t.delta=D_.sub(t.offset,f),this.computeMovement(),p&&(!t.last||i>lv)){t.delta=D_.sub(t.offset,f);let e=t.delta.map(Math.abs);D_.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(F_(F_(F_({},t),e),{},{[this.aliasKey]:e.values}));r!==void 0&&(e.memo=r)}clean(){this.eventStore.clean(),this.timeoutStore.clean()}};function dv([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 fv=class extends uv{constructor(...e){super(...e),N_(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=D_.add(this.state.lastOffset,this.state.movement)}computeMovement(){this.state.movement=D_.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[G_(e)]:n.axisThreshold;t.axis=dv(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}}},pv=e=>e,mv=.15,hv={enabled(e=!0){return e},eventOptions(e,t,n){return F_(F_({},n.shared.eventOptions),e)},preventDefault(e=!1){return e},triggerAllEvents(e=!1){return e},rubberband(e=0){switch(e){case!0:return[mv,mv];case!1:return[0,0];default:return D_.toVector(e)}},from(e){if(typeof e==`function`)return e;if(e!=null)return D_.toVector(e)},transform(e,t,n){let r=e||n.shared.transform;return this.hasCustomTransform=!!r,r||pv},threshold(e){return D_.toVector(e,0)}},gv=0,_v=F_(F_({},hv),{},{axis(e,t,{axis:n}){if(this.lockDirection=n===`lock`,!this.lockDirection)return n},axisThreshold(e=gv){return e},bounds(e={}){if(typeof e==`function`)return t=>_v.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]]}}),vv={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]},yv=class extends fv{constructor(...e){super(...e),N_(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=_v.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=Q_(e),n._pointerActive=!0,this.computeValues($_(e)),this.computeInitial(),t.preventScrollAxis&&G_(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=Q_(e);if(t._pointerId!==void 0&&r!==t._pointerId)return;let i=$_(e);if(document.pointerLockElement===e.target?t._delta=[e.movementX,e.movementY]:(t._delta=D_.sub(i,t._values),this.computeValues(i)),D_.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=Q_(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,bv(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=vv[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,D_.addTo(n._movement,n._delta),this.compute(e),this.emit()}}keyUp(e){e.key in vv&&(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 bv(e){`persist`in e&&typeof e.persist==`function`&&e.persist()}var xv=typeof window<`u`&&window.document&&window.document.createElement;function Sv(){return xv&&`ontouchstart`in window}function Cv(){return Sv()||xv&&window.navigator.maxTouchPoints>1}function wv(){return xv&&`onpointerdown`in window}function Tv(){return xv&&`exitPointerLock`in window.document}function Ev(){try{return`constructor`in GestureEvent}catch{return!1}}var Dv={isBrowser:xv,gesture:Ev(),touch:Sv(),touchscreen:Cv(),pointer:wv(),pointerLock:Tv()},Ov=250,kv=180,Av=.5,jv=50,Mv=250,Nv=10,Pv={mouse:0,touch:0,pen:8},Fv=F_(F_({},_v),{},{device(e,t,{pointer:{touch:n=!1,lock:r=!1,mouse:i=!1}={}}){return this.pointerLock=r&&Dv.pointerLock,Dv.touch&&n?`touch`:this.pointerLock?`mouse`:Dv.pointer&&!i?`pointer`:Dv.touch?`touch`:`mouse`},preventScrollAxis(e,t,{preventScroll:n}){if(this.preventScrollDelay=typeof n==`number`?n:n||n===void 0&&e?Ov:void 0,!(!Dv.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=D_.toVector(e,n?r:i?1:0);return this.filterTaps=n,this.tapsThreshold=r,a},swipe({velocity:e=Av,distance:t=jv,duration:n=Mv}={}){return{velocity:this.transform(D_.toVector(e)),distance:this.transform(D_.toVector(t)),duration:n}},delay(e=0){switch(e){case!0:return kv;case!1:return 0;default:return e}},axisThreshold(e){return e?F_(F_({},Pv),e):Pv},keyboardDisplacement(e=Nv){return e}});function Iv(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 Lv=30,Rv=100,zv=class extends uv{constructor(...e){super(...e),N_(this,`ingKey`,`pinching`),N_(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=D_.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)*Lv-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=Z_(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=Y_(...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=Z_(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=Y_(...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=D_.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=[-nv(e)[1]/Rv*t.offset[0],0],D_.addTo(t._movement,t._delta),Iv(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})}},Bv=F_(F_({},hv),{},{device(e,t,{shared:n,pointer:{touch:r=!1}={}}){if(n.target&&!Dv.touch&&Dv.gesture)return`gesture`;if(Dv.touch&&r)return`touch`;if(Dv.touchscreen){if(Dv.pointer)return`pointer`;if(Dv.touch)return`touch`}},bounds(e,t,{scaleBounds:n={},angleBounds:r={}}){let i=e=>{let t=cv(av(n,e),{min:-1/0,max:1/0});return[t.min,t.max]},a=e=>{let t=cv(av(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`,D_.toVector(e,this.lockDirection?[.1,3]:0)},modifierKey(e){return e===void 0?`ctrlKey`:e},pinchOnWheel(e=!0){return e}}),Vv=class extends fv{constructor(...e){super(...e),N_(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($_(e)),this.compute(e),this.computeInitial(),this.emit()}moveChange(e){if(!this.state._active)return;let t=$_(e),n=this.state;n._delta=D_.sub(t,n._values),D_.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))}},Hv=F_(F_({},_v),{},{mouseOnly:(e=!0)=>e}),Uv=class extends fv{constructor(...e){super(...e),N_(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=rv(e);t._delta=D_.sub(n,t._values),D_.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))}},Wv=_v,Gv=class extends fv{constructor(...e){super(...e),N_(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=nv(e),D_.addTo(t._movement,t._delta),Iv(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))}},Kv=_v,qv=class extends fv{constructor(...e){super(...e),N_(this,`ingKey`,`hovering`)}enter(e){this.config.mouseOnly&&e.pointerType!==`mouse`||(this.start(e),this.computeValues($_(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=$_(e);t._movement=t._delta=D_.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))}},Jv=F_(F_({},_v),{},{mouseOnly:(e=!0)=>e}),Yv=new Map,Xv=new Map;function Zv(e){Yv.set(e.key,e.engine),Xv.set(e.key,e.resolver)}var Qv={key:`drag`,engine:yv,resolver:Fv},$v={key:`hover`,engine:qv,resolver:Jv},ey={key:`move`,engine:Vv,resolver:Hv},ty={key:`pinch`,engine:zv,resolver:Bv},ny={key:`scroll`,engine:Uv,resolver:Wv},ry={key:`wheel`,engine:Gv,resolver:Kv};function iy(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 ay(e,t){if(e==null)return{};var n=iy(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 oy={target(e){if(e)return()=>`current`in e?e.current:e},enabled(e=!0){return e},window(e=Dv.isBrowser?window:void 0){return e},eventOptions({passive:e=!0,capture:t=!1}={}){return{passive:e,capture:t}},transform(e){return e}},sy=[`target`,`eventOptions`,`window`,`enabled`,`transform`];function cy(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]=cy(e[r],i);break;case`boolean`:i&&(n[r]=e[r]);break}return n}function ly(e,t,n={}){let r=e,{target:i,eventOptions:a,window:o,enabled:s,transform:c}=r,l=ay(r,sy);if(n.shared=cy({target:i,eventOptions:a,window:o,enabled:s,transform:c},oy),t){let e=Xv.get(t);n[t]=cy(F_({shared:n.shared},l),e)}else for(let e in l){let t=Xv.get(e);t&&(n[e]=cy(F_({shared:n.shared},l[e]),t))}return n}var uy=class{constructor(e,t){N_(this,`_listeners`,new Set),this._ctrl=e,this._gestureKey=t}add(e,t,n,r,i){let a=this._listeners,o=U_(t,n),s=F_(F_({},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()}},dy=class{constructor(){N_(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()}},fy=class{constructor(e){N_(this,`gestures`,new Set),N_(this,`_targetEventStore`,new uy(this)),N_(this,`gestureEventStores`,{}),N_(this,`gestureTimeoutStores`,{}),N_(this,`handlers`,{}),N_(this,`config`,{}),N_(this,`pointerIds`,new Set),N_(this,`touchIds`,new Set),N_(this,`state`,{shared:{shiftKey:!1,metaKey:!1,ctrlKey:!1,altKey:!1}}),my(this,e)}setEventIds(e){if(W_(e))return this.touchIds=new Set(X_(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=ly(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=hy(n,i.eventOptions,!!r);i.enabled&&new(Yv.get(t))(this,e,t).bind(a)}let i=hy(n,t.eventOptions,!!r);for(let t in this.nativeHandlers)i(t,``,n=>this.nativeHandlers[t](F_(F_({},this.state.shared),{},{event:n,args:e})),void 0,!0)}for(let e in n)n[e]=sv(...n[e]);if(!r)return n;for(let e in n){let{device:t,capture:i,passive:a}=H_(e);this._targetEventStore.add(r,t,``,n[e],{capture:i,passive:a})}}}};function py(e,t){e.gestures.add(t),e.gestureEventStores[t]=new uy(e,t),e.gestureTimeoutStores[t]=new dy}function my(e,t){t.drag&&py(e,`drag`),t.wheel&&py(e,`wheel`),t.scroll&&py(e,`scroll`),t.move&&py(e,`move`),t.pinch&&py(e,`pinch`),t.hover&&py(e,`hover`)}var hy=(e,t,n)=>(r,i,a,o={},s=!1)=>{let c=o.capture??t.capture,l=o.passive??t.passive,u=s?r:B_(r,i,c);n&&l&&(u+=`Passive`),e[u]=e[u]||[],e[u].push(a)},gy=/^on(Drag|Wheel|Scroll|Move|Pinch|Hover)/;function _y(e){let t={},n={},r=new Set;for(let i in e)gy.test(i)?(r.add(RegExp.lastMatch),n[i]=e[i]):t[i]=e[i];return[n,t,r]}function vy(e,t,n,r,i,a){if(!e.has(n)||!Yv.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 yy(e,t){let[n,r,i]=_y(e),a={};return vy(i,n,`onDrag`,`drag`,a,t),vy(i,n,`onWheel`,`wheel`,a,t),vy(i,n,`onScroll`,`scroll`,a,t),vy(i,n,`onPinch`,`pinch`,a,t),vy(i,n,`onMove`,`move`,a,t),vy(i,n,`onHover`,`hover`,a,t),{handlers:a,config:t,nativeHandlers:r}}function by(e,t={},n,r){let i=X.useMemo(()=>new fy(e),[]);if(i.applyHandlers(e,r),i.applyConfig(t,n),X.useEffect(i.effect.bind(i)),X.useEffect(()=>i.clean.bind(i),[]),t.target===void 0)return i.bind.bind(i)}function xy(e,t){return Zv(Qv),by({drag:e},t||{},`drag`)}function Sy(e){return e.forEach(Zv),function(e,t){let{handlers:n,nativeHandlers:r,config:i}=yy(e,t||{});return by(n,i,void 0,r)}}function Cy(e,t){return Sy([Qv,ty,ny,ry,ey,$v])(e,t||{})}var wy={filterTaps:!0,pointer:{capture:!0}};function Ty(e,t){return!e&&t===void 0}function Ey(e,t,n){let r=n>0?n:1;return{dx:(e[0]-t[0])/r,dy:(e[1]-t[1])/r}}function Dy(e){return xy(({xy:t,initial:n,first:r,last:i,memo:a})=>{if(Ty(r,a)){i&&e.onGestureActive(!1);return}let o=r?{...e.getRect()}:a;r&&e.onGestureActive(!0);let{dx:s,dy:c}=Ey(t,n,e.getScale()),l=ut({...o,x:o.x+s,y:o.y+c},e.getBounds());return e.onChange(l,i),i&&e.onGestureActive(!1),o},{...wy,enabled:!e.disabled})}var Oy=10,ky=1,Ay={ArrowLeft:[-1,0],ArrowRight:[1,0],ArrowUp:[0,-1],ArrowDown:[0,1]};function jy(e){return(0,X.useCallback)(t=>{if(t.key===`Escape`){t.stopPropagation(),e.onClose();return}if(t.altKey&&t.key===`Enter`){t.preventDefault(),e.onToggleMaximize();return}let n=Ay[t.key];if(!n||!e.movable)return;t.preventDefault();let r=t.shiftKey?ky:Oy;e.onMove(pt(e.getRect(),n[0]*r,n[1]*r,e.getBounds()))},[e])}function My(e){return xy(({args:t,xy:n,initial:r,first:i,last:a,memo:o})=>{if(Ty(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}=Ey(n,r,e.getScale()),d=ut(dt(c,s,l,u),e.getBounds());return e.onChange(d,a),a&&e.onGestureActive(!1),c},{...wy,enabled:!e.disabled})}var Ny={edge:6,corner:12},Py={edge:12,corner:20},Fy={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 Iy(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 Ly({bind:e}){let t=_o(`(pointer: coarse)`)?Py:Ny;return(0,Z.jsx)(Z.Fragment,{children:mt.map(n=>(0,Z.jsx)(`div`,{...e(n),"data-resize-handle":n,"aria-hidden":!0,className:Fy[n],style:Iy(n,t)},n))})}function Ry(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 zy({win:e,bounds:t,title:n,focused:r,getScale:i,onGestureActive:a,children:o}){let s=(0,X.useRef)(null),[c,l]=(0,X.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}=l_(e.id,s,d),h=(0,X.useRef)(f);h.current=f;let g=(0,X.useRef)(t);g.current=t,(0,X.useLayoutEffect)(()=>{Ry(s.current,h.current,d)},[f.x,f.y,f.w,f.h,d]);let _=(0,X.useCallback)(e=>{l(e),a(e)},[a]),v=(0,X.useCallback)((t,n)=>{Ry(s.current,t,gt.getState().windows[e.id]?.state===`minimized`),n&&gt.getState().move(e.id,{x:t.x,y:t.y})},[e.id]),y=(0,X.useCallback)((t,n)=>{Ry(s.current,t,!1),n&&gt.getState().resize(e.id,t)},[e.id]),b={getRect:()=>h.current,getBounds:()=>g.current,getScale:i,onGestureActive:_},x=Dy({...b,onChange:v,disabled:u}),S=My({...b,onChange:y,disabled:u||d}),C=(0,X.useCallback)(()=>gt.getState().close(e.id),[e.id]),w=(0,X.useCallback)(()=>{gt.getState().setState(e.id,u?`normal`:`maximized`)},[e.id,u]),T=(0,X.useCallback)(()=>{gt.getState().setState(e.id,d?`normal`:`minimized`)},[e.id,d]),E=jy({getRect:()=>h.current,getBounds:()=>g.current,onMove:t=>gt.getState().move(e.id,{x:t.x,y:t.y}),onToggleMaximize:w,onClose:C,movable:!u}),D=!!m&&zt(e.id);return(0,Z.jsxs)(`div`,{ref:s,role:`group`,"aria-roledescription":`window`,"aria-label":n,onPointerDownCapture:()=>gt.getState().focus(e.id),style:{zIndex:ht(e.rank)},className:G(`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,Z.jsx)(T_,{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,Z.jsx)(u_,{pip:m,minimized:d}),!u&&!d&&(0,Z.jsx)(Ly,{bind:e=>S(e)}),(0,Ec.createPortal)((0,Z.jsx)($e,{container:m?.pipWindow.document.body,children:o}),p)]})}var By={explorer:(0,X.lazy)(()=>U(()=>import(`./explorer-window-content-Cwlt3C3I.js`),__vite__mapDeps([103,1,2,3,4,104,7,8,89,43,31,32,33,17,34,35,9,36,52,53,90,37,38,56,57,13,15,60,14,78,92,16,59,18,51,20,26,105,61,22]))),"team-member":(0,X.lazy)(()=>U(()=>import(`./team-member-window-content-BSyU-5Uc.js`),__vite__mapDeps([106,1,2,3,4,7,42,8,43,28,34,32,44,45,46,10,47,11,48,49,13,18,50,51,15,20,14,37]))),"system-monitor":(0,X.lazy)(()=>U(()=>import(`./system-monitor-window-content-BPif0azo.js`),__vite__mapDeps([107,2,1,3,4,98,7,8,13,14,15]))),"tab-host":(0,X.lazy)(()=>U(()=>import(`./tab-host-window-content-BnAN6m4K.js`),__vite__mapDeps([108,1,2,3,4,14,15,105,20,7,17,59])))};function Vy(e,t){let n=t?.title;if(typeof n==`string`&&n.trim())return n;if(e===`team-member`){let e=t?.memberName;return typeof e==`string`&&e?`Session — ${e}`:`Team member`}if(e===`system-monitor`)return`System Monitor`;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 Hy(){return Gt()?null:(0,Z.jsx)(Uy,{})}function Uy(){let e=(0,X.useRef)(null),t=gt(e=>e.windows),n=gt(e=>e.bounds),[r,i]=(0,X.useState)(!1);(0,X.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=gt.getState();r.setBounds(n()),r.restoreAll(n());let i=new ResizeObserver(()=>gt.getState().setBounds(n()));return i.observe(t),()=>i.disconnect()},[]);let a=(0,X.useCallback)(()=>{let t=e.current;return!t||t.offsetWidth===0?1:t.getBoundingClientRect().width/t.offsetWidth},[]),o=ft(t),s=o[o.length-1]?.id;return(0,Z.jsxs)(`div`,{ref:e,className:`absolute inset-0 overflow-hidden pointer-events-none`,children:[o.map(e=>{let t=By[e.kind];return(0,Z.jsx)(zy,{win:e,bounds:n,title:Vy(e.kind,e.payload),focused:e.id===s,getScale:a,onGestureActive:i,children:(0,Z.jsx)(X.Suspense,{fallback:(0,Z.jsx)(`div`,{className:`p-3 text-xs text-text-2`,children:`Loading…`}),children:(0,Z.jsx)(t,{id:e.id,payload:e.payload})})},e.id)}),r&&(0,Z.jsx)(`div`,{className:`absolute inset-0 pointer-events-auto`,style:{zIndex:38}})]})}function Wy(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 Gy=`ppm:tab-sort-mode`;function Ky(){try{return localStorage.getItem(Gy)===`recent`?`recent`:`default`}catch{return`default`}}function qy({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,X.useState)(``),p=Do(e=>e.notifications),m=ys(e=>e.sessions),[h,g]=(0,X.useState)(Ky),_=(0,X.useCallback)(e=>{g(e);try{localStorage.setItem(Gy,e)}catch{}},[]),{groups:v,total:y}=Wy(r,i,a,d,{sortMode:h,recency:l}),b=(0,X.useRef)(null),x=(0,X.useCallback)(e=>{c&&(b.current=setTimeout(()=>c(e),400))},[c]),S=(0,X.useCallback)(()=>{b.current&&=(clearTimeout(b.current),null)},[]);function C(e){if(K.getState().setActiveTab(e.id,i[e.id]),e.type===`chat`){let t=e.metadata?.sessionId;t&&Do.getState().clearForSession(t)}t()}function w(e,t){t.stopPropagation(),K.getState().closeTab(e.id,i[e.id])}function T(){t(),n()}return(0,Z.jsxs)(on,{open:e,onClose:t,className:`max-h-[72vh] flex flex-col`,children:[(0,Z.jsxs)(`div`,{className:`shrink-0 flex items-center gap-2 pl-4 pr-3 pt-1 pb-2.5`,children:[(0,Z.jsx)(`span`,{className:`text-[13px] font-semibold text-text-primary`,children:`Open Tabs`}),(0,Z.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,Z.jsx)(`div`,{className:`flex-1`}),(0,Z.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,Z.jsx)(`button`,{onClick:()=>_(e),"aria-pressed":h===e,className:G(`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,Z.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,Z.jsx)(R,{className:`size-4`})})]}),(0,Z.jsx)(`div`,{className:`shrink-0 px-3 pb-2`,children:(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 h-10 px-3 rounded-xl bg-background border border-border`,children:[(0,Z.jsx)(Yr,{className:`size-4 text-text-subtle shrink-0`}),(0,Z.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,Z.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto overscroll-contain px-2 pb-2`,children:y===0?(0,Z.jsx)(`p`,{className:`text-center text-[13px] text-text-subtle py-6`,children:`No tabs match`}):v.map(e=>(0,Z.jsxs)(`div`,{className:`mb-1`,children:[e.label&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 px-2 pt-2 pb-1`,children:[(0,Z.jsx)(Oe,{className:`size-3 text-text-subtle`}),(0,Z.jsx)(`span`,{className:`text-[11px] font-semibold uppercase tracking-[0.05em] text-text-subtle`,children:e.label}),(0,Z.jsx)(`span`,{className:`text-[10px] font-mono text-text-subtle`,children:e.tabs.length})]}),e.tabs.map(e=>{let t=zc(e.type),n=e.id===o,r=e.type===`chat`?e.metadata?.sessionId:void 0,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,Z.jsxs)(`button`,{onClick:()=>C(e),onTouchStart:()=>x(e.id),onTouchEnd:S,onTouchMove:S,onContextMenu:e=>e.preventDefault(),className:G(`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,Z.jsx)(`span`,{"aria-hidden":!0,className:`absolute left-0 top-2 bottom-2 w-[3px] rounded-r-sm`,style:{backgroundColor:f??`transparent`}}),(0,Z.jsxs)(`span`,{className:G(`relative shrink-0`,d&&`text-warning`),children:[(0,Z.jsx)(t,{className:G(`size-4`,d?void 0:n?`text-primary`:`text-text-secondary`)}),d?(0,Z.jsxs)(`span`,{"aria-hidden":!0,className:`absolute inset-0 flex items-center justify-center gap-[1.5px]`,children:[(0,Z.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`}),(0,Z.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`,style:{animationDelay:`0.15s`}}),(0,Z.jsx)(`span`,{className:`tab-typing-dot size-[2px] rounded-full bg-current`,style:{animationDelay:`0.3s`}})]}):c&&(!n||l)?(0,Z.jsx)(`span`,{className:G(`absolute -top-1 -right-1 size-2 rounded-full`,wo(c))}):null]}),(0,Z.jsx)(`span`,{className:G(`flex-1 text-left text-sm font-medium truncate`,n?`text-primary`:`text-text-primary`),children:e.title}),n&&(0,Z.jsx)(`span`,{className:`size-1.5 rounded-full bg-primary shrink-0`}),e.closable&&(0,Z.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,Z.jsx)(Ge,{className:`size-4`})})]},e.id)})]},e.panelId))})]})}function Jy({onMenuPress:e,onProjectsPress:t}){let n=K(e=>e.focusedPanelId),r=K(e=>e.panels),i=K(e=>e.grid),a=K(e=>e.dock),o=K(e=>e.dockExpanded),s=an(!0)?.keyboardOpen??!1,c=Gt(),l=K(e=>e.currentProject),{tabs:u,tabPanelMap:d}=(0,X.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,X.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=Do(e=>e.notifications),_=Bo(e=>e.selection),[v,y]=(0,X.useState)({}),[b,x]=(0,X.useState)(null),[S,C]=(0,X.useState)(!1),[w,T]=(0,X.useState)(null),[E,D]=(0,X.useState)(``),O=u.find(e=>e.id===h)??null,k=r[st],A=r_(k,l),j=b?u.find(e=>e.id===b):null,M=r[b?d[b]??n:n]?.tabs??[],ee=b?M.findIndex(e=>e.id===b):-1,N=j?.type===`chat`?j.metadata?.sessionId:void 0,P=N?(g.get(N)?.count??0)>0:!1,F=j?.metadata?.filePath,I=j?.metadata?.projectName,te=_!=null&&!!I&&_.projectName===I&&_.filePath!==F;function ne(e){x(null),T(e.id),D(e.title)}async function re(){let e=u.find(e=>e.id===w),t=e?.metadata?.sessionId,n=E.trim();if(!e||!t||!n||!l){T(null);return}try{await V.patch(`${B(l)}/chat/sessions/${t}`,{title:n}),K.getState().updateTab(e.id,{title:n})}catch{}T(null)}function ie(e){let t=d[e]??n,r=K.getState().panels[t]?.tabs??[];for(let n of r)n.id!==e&&n.closable&&K.getState().closeTab(n.id,t);x(null)}function ae(e){let t=d[e]??n,r=K.getState().panels[t]?.tabs??[],i=r.findIndex(t=>t.id===e);for(let e=i+1;e<r.length;e++)r[e].closable&&K.getState().closeTab(r[e].id,t);x(null)}function oe(e){let t=e.metadata?.filePath,n=e.metadata?.projectName;if(!t||!n)return;let r=e.metadata?.unsavedContent;Bo.getState().setSelection({filePath:t,projectName:n,dirtyContent:r,label:Ze(t)}),x(null)}async function se(e){let t=e.metadata?.filePath,n=e.metadata?.projectName,r=Bo.getState().selection;if(!r||!t||!n)return;let i=e.metadata?.unsavedContent;try{await Ho({path:r.filePath,dirtyContent:r.dirtyContent},{path:t,dirtyContent:i},n),Bo.getState().clearSelection()}catch(e){H.error(e instanceof Error?e.message:`Compare failed`)}x(null)}function ce(e){let t=e.metadata?.sessionId,n=e.metadata?.projectName;t&&n&&Do.getState().markUnread(t,n,e.title),x(null)}let[le,ue]=(0,X.useState)(null);function de(e,t){let n=e.metadata?.filePath,r=e.metadata?.projectName;switch(t){case`copy-path`:n&&Jt(n);break;case`copy-full-path`:if(n){let e=r?q.getState().projects.find(e=>e.name===r):null;Jt(e?`${e.path}/${n}`:n)}break;case`download`:n&&r&&dc(r,n);break;case`rename`:case`delete`:n&&ue({action:t,tabId:e.id,node:{name:e.title,path:n,type:`file`}});break}x(null)}let{activeProject:fe}=q.getState(),{activeProject:pe,projects:he,customOrder:ge}=q(rn(e=>({activeProject:e.activeProject,projects:e.projects,customOrder:e.customOrder}))),{projectTags:_e,loadTags:ve}=bo(pe?.name),ye=(0,X.useCallback)(async(e,t)=>{if(pe?.name){try{if(t!==null){await V.patch(`${B(pe.name)}/chat/sessions/${e}/tag`,{tagId:t});let n=_e.find(e=>e.id===t);n&&y(t=>({...t,[e]:{id:n.id,name:n.name,color:n.color}}))}else await V.del(`${B(pe.name)}/chat/sessions/${e}/tag`),y(t=>{let n={...t};return delete n[e],n});ve()}catch{}x(null)}},[pe?.name,_e,ve]),be=u.filter(e=>e.type===`chat`&&e.metadata?.sessionId).map(e=>e.metadata.sessionId);(0,X.useEffect)(()=>{!pe?.name||be.length===0||V.get(`${B(pe.name)}/chat/sessions?limit=50`).then(e=>{let t={};for(let n of e.sessions)n.tag&&(t[n.id]=n.tag);y(t)}).catch(()=>{})},[pe?.name,be.join(`,`)]);let xe=_t(he,ge??null),Se=xe.map(e=>e.name),Ce=xe.findIndex(e=>e.name===pe?.name),Te=pe?rh(pe.color,Ce>=0?Ce:0):`#4f86c6`,De=O?zc(O.type):null;return(0,Z.jsxs)(`nav`,{className:`fixed bottom-0 left-0 right-0 md:hidden bg-background border-t border-border z-40 select-none`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center h-12`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center shrink-0 border-r border-border`,children:[(0,Z.jsx)(`button`,{onClick:e,className:`flex items-center justify-center size-12 shrink-0 text-text-secondary`,children:(0,Z.jsx)(kr,{className:`size-5`})}),(0,Z.jsx)(`div`,{className:`w-px self-stretch bg-border shrink-0`}),(0,Z.jsx)(`button`,{onClick:t,className:`flex items-center justify-center size-12 shrink-0 text-text-secondary`,title:`Switch project`,children:pe?(0,Z.jsx)(ah,{name:pe.name,color:Te,image:pe.image,size:28,allNames:Se}):(0,Z.jsx)(Sr,{className:`size-5`})}),(0,Z.jsx)(`div`,{className:`w-px self-stretch bg-border shrink-0`}),(0,Z.jsxs)(`button`,{onClick:()=>K.getState().toggleDock(),title:a.visible?`Hide panel`:`Show panel`,"aria-label":a.visible?`Hide panel`:`Show panel`,className:G(`relative flex items-center justify-center size-12 shrink-0 transition-colors`,a.visible?`text-primary bg-primary/10`:`text-text-secondary`),children:[(0,Z.jsx)(li,{className:`size-5`}),A>0&&(0,Z.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,Z.jsx)(`div`,{className:`w-px self-stretch bg-border shrink-0`}),(0,Z.jsx)(`button`,{onClick:()=>_s(),title:`New tab`,"aria-label":`New tab`,className:`flex items-center justify-center size-12 shrink-0 text-text-secondary`,children:(0,Z.jsx)(R,{className:`size-5`})})]}),O&&De?(0,Z.jsxs)(`button`,{onClick:()=>C(!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,Z.jsx)(De,{className:`size-4 text-primary shrink-0`}),(0,Z.jsx)(`span`,{className:`flex-1 min-w-0 truncate text-left text-xs font-medium text-primary`,children:O.title}),(0,Z.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,Z.jsx)(we,{className:`size-3.5 text-text-subtle shrink-0`})]}):(0,Z.jsxs)(`button`,{onClick:()=>_s(),className:`flex-1 flex items-center gap-1.5 h-12 px-3 text-text-secondary text-xs`,children:[(0,Z.jsx)(R,{className:`size-4`}),` New Tab`]})]}),(0,Z.jsx)(qy,{open:S,onClose:()=>C(!1),onOpenPalette:()=>_s(),tabs:u,tabPanelMap:d,panelOrder:i.flat(),activeTabId:h,projectColor:pe?Te:null,onTabLongPress:e=>x(e),recency:f,sessionTagMap:v}),(0,Z.jsxs)(on,{open:!!j,onClose:()=>x(null),className:`select-none`,children:[(0,Z.jsx)(`div`,{className:`px-3 py-2 text-xs text-text-secondary border-b border-border truncate`,children:j?.title}),N&&(0,Z.jsxs)(`button`,{onClick:()=>ne(j),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(L,{className:`size-4`}),` Rename`]}),j?.type===`editor`&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`button`,{onClick:()=>de(j,`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,Z.jsx)(Ae,{className:`size-4`}),` Copy Path`]}),(0,Z.jsxs)(`button`,{onClick:()=>de(j,`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,Z.jsx)(Ae,{className:`size-4`}),` Copy Full Path`]}),(0,Z.jsxs)(`button`,{onClick:()=>de(j,`download`),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(Me,{className:`size-4`}),` Download`]}),(0,Z.jsxs)(`button`,{onClick:()=>de(j,`rename`),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(L,{className:`size-4`}),` Rename`]}),(0,Z.jsxs)(`button`,{onClick:()=>de(j,`delete`),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-error active:bg-surface-elevated`,children:[(0,Z.jsx)(Ue,{className:`size-4`}),` Delete`]}),(0,Z.jsx)(`div`,{className:`h-px bg-border mx-2`}),(0,Z.jsxs)(`button`,{onClick:()=>oe(j),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(Oe,{className:`size-4`}),` Select for Compare`]}),te&&(0,Z.jsxs)(`button`,{onClick:()=>se(j),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(Oe,{className:`size-4`}),` Compare with Selected (`,_.label,`)`]}),(0,Z.jsx)(`div`,{className:`h-px bg-border mx-2`})]}),N&&!P&&(0,Z.jsxs)(`button`,{onClick:()=>ce(j),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(Ee,{className:`size-4 fill-primary text-primary`}),` Mark as unread`]}),N&&_e.length>0&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`px-3 pt-2 pb-1 text-xs text-text-secondary flex items-center gap-2`,children:[(0,Z.jsx)(si,{className:`size-3.5`}),` Set Tag`]}),_e.map(e=>(0,Z.jsxs)(`button`,{onClick:()=>ye(N,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,Z.jsx)(`span`,{className:`size-2.5 rounded-full shrink-0`,style:{backgroundColor:e.color}}),e.name,v[N]?.id===e.id&&(0,Z.jsx)(me,{className:`size-3.5 ml-auto`})]},e.id)),v[N]&&(0,Z.jsx)(`button`,{onClick:()=>ye(N,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,Z.jsx)(`div`,{className:`h-px bg-border mx-2`})]}),j?.closable&&(0,Z.jsxs)(`button`,{onClick:()=>{K.getState().closeTab(b),x(null)},className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(Ge,{className:`size-4`}),` Close`]}),M.some(e=>e.id!==b&&e.closable)&&(0,Z.jsxs)(`button`,{onClick:()=>ie(b),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(ai,{className:`size-4`}),` Close Others`]}),ee>=0&&ee<M.length-1&&(0,Z.jsxs)(`button`,{onClick:()=>ae(b),className:`flex items-center gap-2 w-full px-3 py-2.5 text-sm text-foreground active:bg-surface-elevated`,children:[(0,Z.jsx)(Fn,{className:`size-4`}),` Close to the Right`]})]}),(0,Z.jsx)(on,{open:!!w,onClose:()=>T(null),children:(0,Z.jsxs)(`div`,{className:`px-4 pt-1 pb-3`,children:[(0,Z.jsx)(`div`,{className:`text-[13px] font-semibold text-text-primary mb-2`,children:`Rename chat`}),(0,Z.jsx)(`input`,{autoFocus:!0,value:E,onChange:e=>D(e.target.value),onKeyDown:e=>{e.key===`Enter`&&re()},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,Z.jsxs)(`div`,{className:`flex gap-2 mt-3`,children:[(0,Z.jsx)(`button`,{onClick:()=>T(null),className:`flex-1 h-11 rounded-xl border border-border text-sm text-text-secondary active:bg-surface-elevated`,children:`Cancel`}),(0,Z.jsx)(`button`,{onClick:re,className:`flex-1 h-11 rounded-xl bg-primary text-primary-foreground text-sm font-medium active:opacity-90`,children:`Save`})]})]})}),le&&(0,Z.jsx)(mc,{node:le.node,projectName:fe?.name??``,onClose:()=>ue(null),onRefresh:()=>{fe&&wt.getState().fetchTree(fe.name),le.action===`delete`&&K.getState().closeTab(le.tabId)}}),c&&(0,Z.jsx)(on,{open:a.visible,onClose:()=>K.getState().setDockVisible(!1),zIndex:60,className:G(`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,Z.jsx)(`div`,{className:`flex flex-col flex-1 min-h-0 overflow-hidden`,children:(0,Z.jsx)(il,{variant:`mobile`})})})]})}var Yy=64,Xy=350,Zy=10;function Qy(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 $y({tabs:e,activeId:t,onSelect:n,onReorder:r}){let i=(0,X.useRef)(null),[a,o]=(0,X.useState)(0),[s,c]=(0,X.useState)(null),[l,u]=(0,X.useState)(null),d=(0,X.useRef)(null),f=(0,X.useRef)(null),[p,m]=(0,X.useState)(!1),h=(0,X.useRef)(null),g=(0,X.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,X.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,X.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/Yy)):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(Qy(e.map(e=>e.id),d.current,t)),y()},k=(e,t)=>G(`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,Z.jsxs)(`div`,{ref:i,className:`flex items-center overflow-hidden`,children:[w.map(e=>{let r=e.icon;return(0,Z.jsxs)(`button`,{"data-tabid":e.id,style:{width:Yy},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),Xy)},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>Zy||n>Zy)&&b()}},onTouchEnd:()=>{b(),d.current&&f.current?O(f.current):y(),g.current=null},children:[(0,Z.jsx)(r,{className:`size-4`}),(0,Z.jsx)(`span`,{children:e.shortLabel??e.label}),(0,Z.jsx)(Tm,{id:e.badge,variant:`corner`,className:`top-1 right-2 shadow-none`})]},e.id)}),S&&(0,Z.jsxs)(`button`,{style:{width:Yy},onClick:()=>m(!0),className:G(`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,Z.jsx)(Pe,{className:`size-4`}),(0,Z.jsx)(`span`,{children:`More`})]}),(0,Z.jsx)(on,{open:p,onClose:()=>m(!1),children:(0,Z.jsxs)(`div`,{className:`px-2 pb-3 pt-1`,children:[(0,Z.jsx)(`div`,{className:`px-2 py-1 text-xs text-text-secondary`,children:`More tabs`}),D.map(e=>{let r=e.icon;return(0,Z.jsxs)(`button`,{onClick:()=>{n(e.id),m(!1)},className:G(`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,Z.jsx)(r,{className:`size-4 shrink-0`}),(0,Z.jsx)(`span`,{children:e.label}),(0,Z.jsx)(Tm,{id:e.badge})]},e.id)})]})})]})}var eb=new Set([`history`,`teams`,`explorer`,`git`,`database`,`tunnels`,`ai-resources`,`settings`,`jira`]),tb=e=>eb.has(e)||e.startsWith(`ext:`);function nb({isOpen:e,onClose:t,initialTab:n}){let{activeProject:r}=q(rn(e=>({activeProject:e.activeProject}))),i=W(e=>e.version),a=W(e=>e.jiraEnabled),o=W(e=>e.sidebarTabOrder),s=W(e=>e.setSidebarTabOrder),c=jt(e=>e.contributions),[l,u]=(0,X.useState)(n??`explorer`),[d,f]=(0,X.useState)(!1),p=(0,X.useMemo)(()=>fh(dh({jiraEnabled:a,contributions:c}),o).filter(e=>tb(e.id)),[a,c,o]);(0,X.useEffect)(()=>{n&&u(n)},[n]),(0,X.useEffect)(()=>{p.length>0&&!p.some(e=>e.id===l)&&u(p[0].id)},[p,l]),(0,X.useEffect)(()=>{let e=()=>{Kt()&&f(!0)};return window.addEventListener(`open-cloud-share`,e),()=>window.removeEventListener(`open-cloud-share`,e)},[]);let m=(0,X.useCallback)(()=>tg(i),[i]),h=(0,Z.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,Z.jsxs)(`div`,{className:G(`fixed inset-0 z-50 md:hidden transition-opacity duration-200`,e?`opacity-100`:`opacity-0 pointer-events-none`),children:[(0,Z.jsx)(`div`,{className:`absolute inset-0 bg-black/50`,onClick:t,"aria-label":`Close drawer`}),(0,Z.jsxs)(`div`,{className:G(`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,Z.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-b border-border shrink-0`,children:[(0,Z.jsx)(`span`,{className:`text-sm font-bold text-primary tracking-tight`,children:r?.name??`PPM`}),(0,Z.jsx)(`button`,{onClick:t,className:`flex items-center justify-center size-8 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,Z.jsx)(Ge,{className:`size-4`})})]}),(0,Z.jsxs)(`div`,{className:`flex-1 overflow-y-auto min-h-0`,children:[l===`history`&&(r?(0,Z.jsx)(Sm,{variant:`sidebar`,projectName:r.name,onNavigate:t}):h),l===`teams`&&(r?(0,Z.jsx)(Gm,{}):h),l===`explorer`&&(r?(0,Z.jsx)($d,{onFileOpen:t}):h),l===`git`&&(0,Z.jsx)(sf,{metadata:{projectName:r?.name},onNavigate:t}),l===`database`&&(0,Z.jsx)(Pf,{}),l===`tunnels`&&(0,Z.jsx)(pm,{}),l===`jira`&&(0,Z.jsx)(op,{}),l===`ai-resources`&&(0,Z.jsx)(Vp,{}),l===`settings`&&(0,Z.jsx)(re,{}),l.startsWith(`ext:`)&&(0,Z.jsx)(Hf,{viewId:l.slice(4),className:`h-full`})]}),(0,Z.jsxs)(`div`,{className:`shrink-0 border-t border-border`,children:[(0,Z.jsx)($y,{tabs:p,activeId:l,onSelect:u,onReorder:s}),(0,Z.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 border-t border-border text-[11px]`,children:[(0,Z.jsx)(e_,{align:`left`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Z.jsxs)(`button`,{onClick:()=>{t(),hd()},className:`flex items-center gap-1 text-[10px] text-text-subtle hover:text-text-secondary transition-colors`,children:[(0,Z.jsx)(sr,{className:`size-3`}),(0,Z.jsx)(`span`,{children:`Files`}),(0,Z.jsx)(Tm,{id:`os-explorer`,className:`text-[7px] px-1`})]}),(0,Z.jsxs)(`button`,{onClick:()=>f(!0),className:`flex items-center gap-1 text-[10px] text-text-subtle hover:text-text-secondary transition-colors`,children:[(0,Z.jsx)(Hn,{className:`size-3`}),(0,Z.jsx)(`span`,{children:`Cloud & Share`})]}),(0,Z.jsxs)(`button`,{onClick:m,className:`flex items-center gap-1 text-[10px] text-text-subtle hover:text-text-secondary transition-colors`,children:[(0,Z.jsx)(se,{className:`size-3`}),(0,Z.jsx)(`span`,{children:`Report Bug`})]})]})]})]})]}),(0,Z.jsx)(on,{open:d,onClose:()=>f(!1),zIndex:60,children:(0,Z.jsx)(Xh,{variant:`sheet`,onClose:()=>f(!1)})})]})}function rb({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}=q(rn(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=W(e=>e.version),h=_t(n,d),g=h.map(e=>e.name),[_,v]=(0,X.useState)(`list`),[y,b]=(0,X.useState)(``),x=(0,X.useMemo)(()=>yt(),[e]),S=(0,X.useMemo)(()=>qm(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,X.useCallback)(e=>{window.open(Xm(e,null),`_blank`,`noopener`)},[]),[D,O]=(0,X.useState)(null),[k,A]=(0,X.useState)(``),[j,M]=(0,X.useState)(!1),N=(0,X.useRef)(null),[P,F]=(0,X.useState)(null),[I,te]=(0,X.useState)(``),ne=(0,X.useRef)(null),[re,ie]=(0,X.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 oe=(0,X.useCallback)(e=>{N.current=setTimeout(()=>O(e),400)},[]),se=(0,X.useCallback)(()=>{N.current&&=(clearTimeout(N.current),null)},[]);function ce(){v(`list`),t()}function le(e){let t=n.find(t=>t.name===e);t&&(i(t),ce())}function ue(){v(`add`)}function de(){if(ce(),window.innerWidth<768){window.dispatchEvent(new Event(`open-mobile-settings`));return}let{sidebarCollapsed:e,toggleSidebar:t,setSidebarActiveTab:n}=W.getState();e&&t(),n(`settings`)}async function fe(){if(!P||!I.trim()||I===P){F(null);return}try{await l(P,I.trim())}catch{}F(null)}async function pe(e){O(null);try{await u(e)}catch{}}async function he(e,t){try{await a(e,t),M(!1),O(null)}catch(e){console.error(`Failed to save color:`,e)}}let ge=D?h.find(e=>e.name===D):null,_e=D?h.findIndex(e=>e.name===D):-1,ve=D?[{label:`Open in New Tab`,icon:Fe,onClick:()=>{E(D),O(null)}},{label:`Rename`,icon:L,onClick:()=>{te(D),F(D),O(null)}},{label:`Change Color`,icon:Fr,onClick:()=>{let e=h.findIndex(e=>e.name===D),t=h[e];A(rh(t?.color,e)),M(!0)}},{label:`Change Image`,icon:yr,onClick:()=>{ie(D),ne.current?.click()}},...ge?.image?[{label:`Remove Image`,icon:Ue,onClick:()=>{s(D).catch(()=>{}),O(null)}}]:[],{label:`Copy Path`,icon:Ae,onClick:()=>{ge&&Jt(ge.path),O(null)}},...T&&_e>0?[{label:`Move Up`,icon:we,onClick:()=>{let e=h.map(e=>e.name),[t]=e.splice(_e,1);e.splice(_e-1,0,t),c(e),O(null)}}]:[],...T&&_e<h.length-1?[{label:`Move Down`,icon:Se,onClick:()=>{let e=h.map(e=>e.name),[t]=e.splice(_e,1);e.splice(_e+1,0,t),c(e),O(null)}}]:[],{label:`Delete`,icon:Ue,destructive:!0,onClick:()=>pe(D)}]:[];return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`input`,{ref:ne,type:`file`,accept:`image/*`,className:`hidden`,onChange:ae}),(0,Z.jsxs)(on,{open:e,onClose:ce,className:`bg-background`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 border-b border-border`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[_===`add`&&(0,Z.jsx)(`button`,{onClick:()=>v(`list`),className:`flex items-center justify-center size-7 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,Z.jsx)(ee,{className:`size-4`})}),(0,Z.jsx)(`span`,{className:`text-sm font-semibold`,children:_===`add`?`Add Project`:`Projects`})]}),(0,Z.jsx)(`button`,{onClick:ce,className:`flex items-center justify-center size-7 rounded-md hover:bg-surface-elevated transition-colors`,children:(0,Z.jsx)(Ge,{className:`size-4`})})]}),_===`add`&&(0,Z.jsx)(`div`,{className:`px-4 py-4`,children:(0,Z.jsx)(oh,{onSuccess:()=>{v(`list`),t()},onCancel:()=>v(`list`),footerClassName:`pt-2`})}),_!==`add`&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-2 border-b border-border`,children:[(0,Z.jsx)(Yr,{className:`size-4 text-text-subtle shrink-0`}),(0,Z.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,Z.jsx)(`div`,{className:`flex items-center gap-1 px-2 py-2 border-b border-border`,children:Km.map(({mode:e,label:t,Icon:n})=>(0,Z.jsxs)(`button`,{onClick:()=>p(e),className:G(`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,Z.jsx)(n,{className:`size-3.5`}),` `,t]},e))})]}),(0,Z.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=rh(e.color,t),i=r?.name===e.name,a=P===e.name,o=x[e.name];return(0,Z.jsxs)(`div`,{className:G(`flex items-center gap-3 px-4 py-3 transition-colors active:bg-surface-elevated`,i&&`bg-accent/10`),onClick:()=>!a&&le(e.name),onTouchStart:()=>oe(e.name),onTouchEnd:se,onTouchMove:se,children:[(0,Z.jsx)(ah,{name:e.name,color:n,image:e.image,size:40,allNames:g}),(0,Z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[a?(0,Z.jsx)(`input`,{type:`text`,value:I,onChange:e=>te(e.target.value),onKeyDown:e=>{e.key===`Enter`&&fe(),e.key===`Escape`&&F(null)},onBlur:fe,onClick:e=>e.stopPropagation(),className:`w-full bg-transparent border-b border-primary text-sm outline-none`,autoFocus:!0}):(0,Z.jsx)(`p`,{className:`text-sm font-medium truncate`,children:e.name}),(0,Z.jsx)(`p`,{className:`text-xs text-text-subtle truncate`,children:e.path})]}),o&&!i&&(0,Z.jsx)(`span`,{className:`shrink-0 text-[10px] text-text-subtle whitespace-nowrap`,children:vo(new Date(o).toISOString())}),i&&(0,Z.jsx)(me,{className:`size-4 text-primary shrink-0`})]},e.name)}),w.length===0&&(0,Z.jsx)(`div`,{className:`px-4 py-6 text-center text-sm text-text-subtle`,children:`No projects found`})]}),(0,Z.jsx)(`div`,{className:`border-t border-border`,children:(0,Z.jsxs)(`button`,{onClick:ue,className:`w-full flex items-center gap-3 px-4 py-3 text-text-secondary hover:bg-surface-elevated transition-colors`,children:[(0,Z.jsx)(R,{className:`size-4 shrink-0`}),(0,Z.jsx)(`span`,{className:`text-sm`,children:`Add Project`})]})}),(0,Z.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-t border-border`,children:[(0,Z.jsxs)(`button`,{onClick:de,className:`flex items-center gap-2 text-text-secondary hover:text-foreground transition-colors`,children:[(0,Z.jsx)(Qr,{className:`size-4`}),(0,Z.jsx)(`span`,{className:`text-sm`,children:`Settings`})]}),m&&(0,Z.jsxs)(`span`,{className:`text-xs text-text-subtle`,children:[`v`,m]})]})]}),(0,Z.jsxs)(on,{open:!!D&&!j,onClose:()=>O(null),zIndex:60,children:[(0,Z.jsx)(`div`,{className:`px-4 py-2 border-b border-border`,children:(0,Z.jsx)(`p`,{className:`text-xs font-medium text-text-secondary`,children:D})}),ve.map(e=>{let t=e.icon;return(0,Z.jsxs)(`button`,{onClick:e.onClick,className:G(`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,Z.jsx)(t,{className:`size-4 shrink-0`}),e.label]},e.label)})]}),(0,Z.jsxs)(on,{open:j&&!!D,onClose:()=>{M(!1),O(null)},zIndex:60,className:`p-4 space-y-4`,children:[(0,Z.jsx)(`p`,{className:`text-sm font-medium`,children:`Change Color`}),(0,Z.jsx)(`div`,{className:`flex flex-wrap gap-3`,children:nh.map(e=>(0,Z.jsx)(`button`,{type:`button`,onClick:()=>A(e),className:G(`size-9 rounded-full border-2 transition-all`,k===e?`border-primary scale-110`:`border-transparent`),style:{background:e}},e))}),(0,Z.jsxs)(`div`,{className:`flex gap-2 pt-2`,children:[(0,Z.jsx)(`button`,{onClick:()=>{M(!1),O(null)},className:`flex-1 py-2 text-sm text-text-secondary border border-border rounded-md`,children:`Cancel`}),(0,Z.jsx)(`button`,{onClick:()=>he(D,k),className:`flex-1 py-2 text-sm bg-primary text-white rounded-md`,children:`Save`})]})]})]})}var ib=`https://wise.com/pay/me/lehongh`,ab=`/donate-qr.png`,ob=`LE HONG HIEN`,sb=`Techcombank`;function cb({children:e}){return(0,Z.jsx)(`span`,{className:`font-mono text-[11px] font-medium uppercase tracking-wide text-text-subtle`,children:e})}function lb(){let[e,t]=(0,X.useState)(!1);return(0,Z.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,Z.jsxs)(`div`,{className:`flex flex-col items-center gap-1 text-center`,children:[(0,Z.jsx)(`div`,{className:`flex size-11 items-center justify-center rounded-xl bg-surface-elevated`,children:(0,Z.jsx)(hr,{className:`size-5 text-primary`})}),(0,Z.jsx)(`h2`,{className:`text-lg font-semibold text-foreground`,children:`Support PPM`}),(0,Z.jsx)(`p`,{className:`text-sm text-text-secondary`,children:`Thanks for keeping this project alive.`})]}),(0,Z.jsxs)(`div`,{className:`grid gap-5 md:grid-cols-2 md:gap-6`,children:[(0,Z.jsxs)(`section`,{className:`flex flex-col items-center gap-3`,children:[(0,Z.jsx)(cb,{children:`Vietnam`}),e?(0,Z.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,Z.jsx)(Wr,{className:`size-8`}),(0,Z.jsx)(`span`,{className:`text-xs`,children:`QR code coming soon`})]}):(0,Z.jsx)(`img`,{src:ab,alt:`Bank transfer QR code`,onError:()=>t(!0),className:`size-40 rounded-xl border border-border bg-white object-contain p-2`}),(0,Z.jsxs)(`div`,{className:`text-center`,children:[(0,Z.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:ob}),(0,Z.jsx)(`p`,{className:`text-xs text-text-subtle`,children:sb})]}),(0,Z.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,Z.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,Z.jsx)(cb,{children:`International`}),(0,Z.jsx)(`p`,{className:`text-center text-sm text-text-secondary`,children:`Send an international transfer via Wise — multi-currency, low fees.`}),(0,Z.jsx)(Y,{asChild:!0,className:`w-full`,children:(0,Z.jsxs)(`a`,{href:ib,target:`_blank`,rel:`noopener noreferrer`,children:[(0,Z.jsx)(Le,{className:`size-4`}),`Support via Wise`]})})]})]})]})}function ub({open:e,onOpenChange:t}){return Gt()?(0,Z.jsx)(on,{open:e,onClose:()=>t(!1),className:`popover-solid`,children:(0,Z.jsx)(`div`,{className:`px-4 pb-4 pt-1`,children:(0,Z.jsx)(lb,{})})}):(0,Z.jsx)(nn,{open:e,onOpenChange:t,children:(0,Z.jsxs)(Qt,{className:`sm:max-w-xl`,children:[(0,Z.jsx)($t,{className:`sr-only`,children:`Support PPM`}),(0,Z.jsx)(lb,{})]})})}function db(){let[e,t]=(0,X.useState)(null),[n,r]=(0,X.useState)(!1);(0,X.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,X.useCallback)(()=>t(null),[]);return e?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 z-50 bg-black/50`,onClick:i}),(0,Z.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,Z.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 border-b border-border`,children:[(0,Z.jsx)(`span`,{className:`text-sm font-medium`,children:`Bug Report`}),(0,Z.jsx)(`button`,{onClick:i,className:`p-1 rounded hover:bg-surface-elevated`,children:(0,Z.jsx)(Ge,{className:`size-4`})})]}),(0,Z.jsx)(`pre`,{className:`flex-1 overflow-auto px-4 py-2 text-xs font-mono whitespace-pre-wrap break-all`,children:e}),(0,Z.jsxs)(`div`,{className:`flex gap-2 p-3 border-t border-border`,children:[(0,Z.jsxs)(`button`,{onClick:async()=>{await Jt(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,Z.jsx)(me,{className:`size-3`}):(0,Z.jsx)(Ae,{className:`size-3`}),n?`Copied`:`Copy`]}),(0,Z.jsxs)(`button`,{onClick:()=>{eg(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,Z.jsx)(Fe,{className:`size-3`}),`Open GitHub Issue`]})]})]})]}):null}var fb=(0,X.memo)(function({className:e}){let t=W(e=>e.themeMode),n=W(e=>e.setThemeMode),r=I.find(e=>e.value===t)??I[2],i=r.icon;return(0,Z.jsxs)(Vc,{children:[(0,Z.jsx)(Uc,{asChild:!0,children:(0,Z.jsx)(`button`,{type:`button`,title:`Appearance: ${r.label}`,"aria-label":`Appearance: ${r.label}`,className:G(`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,Z.jsx)(i,{className:`size-[18px]`})})}),(0,Z.jsxs)(Wc,{align:`end`,className:`w-44`,children:[(0,Z.jsx)(Jc,{children:`Appearance`}),I.map(e=>{let r=e.icon;return(0,Z.jsxs)(Gc,{onClick:()=>n(e.value),className:`gap-2`,children:[(0,Z.jsx)(r,{className:`size-4 shrink-0`}),(0,Z.jsx)(`span`,{className:`flex-1 truncate`,children:e.label}),(0,Z.jsx)(me,{className:G(`size-4 shrink-0`,t===e.value?`opacity-100`:`opacity-0`)})]},e.value)})]})]})}),pb=`https://github.com/hienlh/ppm`,mb={background:`radial-gradient(80% 60% at 50% -10%, color-mix(in srgb, var(--accent) 12%, transparent) 0%, transparent 60%)`},hb={backgroundImage:`radial-gradient(circle at 1px 1px, color-mix(in srgb, var(--text) 5%, transparent) 1px, transparent 0)`,backgroundSize:`26px 26px`};function gb({onSuccess:e}){let[t,n]=(0,X.useState)(``),[r,i]=(0,X.useState)(!1),a=W(e=>e.deviceName),o=W(e=>e.version),s=W(e=>e.tunnelActive),[c,l]=(0,X.useState)(null),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)(!1),m=Gt(),h=W(e=>e.themeMode),g=W(e=>e.syncThemeToServer),_=h!==(0,X.useRef)(h).current;async function v(n){if(n.preventDefault(),!t.trim()){l(`Enter your password to continue`);return}d(!0),l(null);try{Ke(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`),localStorage.removeItem(`ppm-auth-token`)}finally{d(!1)}}return(0,Z.jsxs)(`div`,{className:`app-backdrop relative min-h-dvh overflow-hidden flex items-center justify-center p-6`,children:[(0,Z.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:mb}),(0,Z.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,style:hb}),(0,Z.jsx)(fb,{className:`absolute right-[max(1rem,env(safe-area-inset-right))] top-[max(1rem,env(safe-area-inset-top))]`}),(0,Z.jsxs)(`div`,{className:`relative flex w-full max-w-[392px] flex-col items-center gap-[22px] text-center`,children:[(0,Z.jsxs)(`div`,{className:`flex flex-col items-center gap-4`,children:[(0,Z.jsx)(`div`,{className:`flex size-16 items-center justify-center rounded-2xl border border-border bg-background shadow-float`,children:(0,Z.jsx)(`div`,{className:`flex size-[52px] items-center justify-center rounded-xl bg-surface-elevated`,children:(0,Z.jsx)(`span`,{className:`text-[15px] font-bold tracking-wide text-primary`,children:`PPM`})})}),(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h1`,{className:`mb-1.5 text-2xl font-semibold tracking-tight text-foreground`,children:`Unlock your workspace`}),(0,Z.jsx)(`p`,{className:`text-sm text-text-secondary`,children:`Enter your access password to unlock`})]}),(0,Z.jsxs)(`div`,{className:`flex flex-wrap items-center justify-center gap-2`,children:[a&&(0,Z.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,Z.jsx)(m?ti:ze,{className:`size-3 text-text-subtle`}),a]}),m?(s||o)&&(0,Z.jsxs)(`span`,{className:G(`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,Z.jsx)(`span`,{className:`size-1.5 animate-pulse rounded-full bg-success`}),s?`tunnel · `:``,o?`v${o}`:``]}):(0,Z.jsxs)(Z.Fragment,{children:[o&&(0,Z.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,Z.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,Z.jsx)(`span`,{className:`size-1.5 animate-pulse rounded-full bg-success`}),`tunnel active`]})]})]})]}),(0,Z.jsxs)(`form`,{onSubmit:v,className:`flex w-full flex-col gap-3`,children:[(0,Z.jsxs)(`div`,{className:`relative w-full`,children:[(0,Z.jsx)(fn,{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,Z.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,Z.jsx)(N,{className:`size-[18px]`}):(0,Z.jsx)(Ie,{className:`size-[18px]`})})]}),c&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 text-[13px] text-error`,children:[(0,Z.jsx)(Ln,{className:`size-[15px] shrink-0`}),(0,Z.jsx)(`span`,{children:c})]}),(0,Z.jsx)(Y,{type:`submit`,disabled:u,className:`h-[50px] w-full text-[15px]`,children:u?`Checking…`:`Unlock`})]}),(0,Z.jsx)(`div`,{className:`hidden h-px w-full bg-border md:block`}),(0,Z.jsxs)(`div`,{className:`flex items-center justify-center gap-5`,children:[(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>tg(o),className:`inline-flex items-center gap-1.5 text-xs text-text-subtle can-hover:hover:text-foreground`,children:[(0,Z.jsx)(se,{className:`size-[18px] md:size-3.5`}),(0,Z.jsx)(`span`,{className:`max-md:sr-only`,children:`Report Bug`})]}),(0,Z.jsxs)(`a`,{href:pb,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,Z.jsx)(dr,{className:`size-[18px] md:size-3.5`}),(0,Z.jsx)(`span`,{className:`max-md:sr-only`,children:`Repo`})]}),(0,Z.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,Z.jsx)(Un,{className:`size-[18px] md:size-3.5`}),(0,Z.jsx)(`span`,{className:`max-md:sr-only`,children:`Buy me a coffee`})]})]})]}),(0,Z.jsx)(ub,{open:f,onOpenChange:p}),(0,Z.jsx)(db,{})]})}function _b(){let e=W(e=>e.themeStyle),t=W(e=>e.themeMode),n=W(e=>e.customThemeId),r=W(e=>e.customThemes),[i,a]=(0,X.useState)(0),o=(0,X.useMemo)(()=>_n(e,t,r,n),[e,t,r,n,i]);return(0,X.useEffect)(()=>{Mt(o)},[o,i]),(0,X.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 vb=Object.defineProperty,yb=Object.getOwnPropertyDescriptor,bb=Object.getOwnPropertyNames,xb=Object.prototype.hasOwnProperty,Sb=(e,t)=>{let n={};for(var r in e)vb(n,r,{get:e[r],enumerable:!0});return t||vb(n,Symbol.toStringTag,{value:`Module`}),n},Cb=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=bb(t),a=0,o=i.length,s;a<o;a++)s=i[a],!xb.call(e,s)&&s!==n&&vb(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=yb(t,s))||r.enumerable});return e},wb=(e,t,n)=>(Cb(e,t,`default`),n&&Cb(n,t,`default`)),Tb=[{id:`abap`,name:`ABAP`,import:(()=>U(()=>import(`./abap-CjzrhAS2.js`),[]))},{id:`actionscript-3`,name:`ActionScript`,import:(()=>U(()=>import(`./actionscript-3-B59Kbl-9.js`),[]))},{id:`ada`,name:`Ada`,import:(()=>U(()=>import(`./ada-B7gItKAE.js`),[]))},{id:`angular-html`,name:`Angular HTML`,import:(()=>U(()=>import(`./angular-html-CTvM4ulF.js`).then(e=>e.n),__vite__mapDeps([109,1,110,111,112])))},{id:`angular-ts`,name:`Angular TypeScript`,import:(()=>U(()=>import(`./angular-ts-B_vSkjco.js`),__vite__mapDeps([113,109,1,110,111,112,114])))},{id:`apache`,name:`Apache Conf`,import:(()=>U(()=>import(`./apache-B6T9jrc0.js`),[]))},{id:`apex`,name:`Apex`,import:(()=>U(()=>import(`./apex-CTsIxDQw.js`),[]))},{id:`apl`,name:`APL`,import:(()=>U(()=>import(`./apl-DywzTry0.js`),__vite__mapDeps([115,111,1,110,112,116,117,118])))},{id:`applescript`,name:`AppleScript`,import:(()=>U(()=>import(`./applescript-DuycKmmb.js`),[]))},{id:`ara`,name:`Ara`,import:(()=>U(()=>import(`./ara-CISL3599.js`),[]))},{id:`asciidoc`,name:`AsciiDoc`,aliases:[`adoc`],import:(()=>U(()=>import(`./asciidoc-BXyE2Lpr.js`),[]))},{id:`asm`,name:`Assembly`,import:(()=>U(()=>import(`./asm-y258phtP.js`),[]))},{id:`astro`,name:`Astro`,import:(()=>U(()=>import(`./astro-1JaRgaSb.js`),__vite__mapDeps([119,111,1,112,116,120,121,122])))},{id:`awk`,name:`AWK`,import:(()=>U(()=>import(`./awk-DxL6XSJv.js`),[]))},{id:`ballerina`,name:`Ballerina`,import:(()=>U(()=>import(`./ballerina-DZSXFmUf.js`),[]))},{id:`bat`,name:`Batch File`,aliases:[`batch`],import:(()=>U(()=>import(`./bat-BNsZk6nY.js`),[]))},{id:`beancount`,name:`Beancount`,import:(()=>U(()=>import(`./beancount-cPl4gJct.js`),[]))},{id:`berry`,name:`Berry`,aliases:[`be`],import:(()=>U(()=>import(`./berry-DGAodERk.js`),[]))},{id:`bibtex`,name:`BibTeX`,import:(()=>U(()=>import(`./bibtex-DftVoRif.js`),[]))},{id:`bicep`,name:`Bicep`,import:(()=>U(()=>import(`./bicep-Suioyyzh.js`),[]))},{id:`bird2`,name:`BIRD2 Configuration`,aliases:[`bird`],import:(()=>U(()=>import(`./bird2-DjU24I2P.js`),[]))},{id:`blade`,name:`Blade`,import:(()=>U(()=>import(`./blade-CDeeJWBb.js`),__vite__mapDeps([123,111,1,124,110,112,116,125,117,118])))},{id:`bsl`,name:`1C (Enterprise)`,aliases:[`1c`],import:(()=>U(()=>import(`./bsl-BfgoPVYR.js`),__vite__mapDeps([126,127])))},{id:`c`,name:`C`,import:(()=>U(()=>import(`./c-DFi8Y_nN.js`).then(e=>e.n),__vite__mapDeps([128,1])))},{id:`c3`,name:`C3`,import:(()=>U(()=>import(`./c3-1eSHnH5V.js`),[]))},{id:`cadence`,name:`Cadence`,aliases:[`cdc`],import:(()=>U(()=>import(`./cadence-DLLsFwQP.js`),[]))},{id:`cairo`,name:`Cairo`,import:(()=>U(()=>import(`./cairo-C26gNwWW.js`),__vite__mapDeps([129,130])))},{id:`clarity`,name:`Clarity`,import:(()=>U(()=>import(`./clarity-C0pYsZjs.js`),[]))},{id:`clojure`,name:`Clojure`,aliases:[`clj`],import:(()=>U(()=>import(`./clojure-JFr6s8iZ.js`),[]))},{id:`cmake`,name:`CMake`,import:(()=>U(()=>import(`./cmake-EEcLEgVy.js`),[]))},{id:`cobol`,name:`COBOL`,import:(()=>U(()=>import(`./cobol-D92nBnON.js`),__vite__mapDeps([131,110,1,111,112,118])))},{id:`codeowners`,name:`CODEOWNERS`,import:(()=>U(()=>import(`./codeowners-Deh3Lx0u.js`),[]))},{id:`codeql`,name:`CodeQL`,aliases:[`ql`],import:(()=>U(()=>import(`./codeql-C317igT5.js`),[]))},{id:`coffee`,name:`CoffeeScript`,aliases:[`coffeescript`],import:(()=>U(()=>import(`./coffee-CIWH40R1.js`),__vite__mapDeps([132,112,1])))},{id:`common-lisp`,name:`Common Lisp`,aliases:[`lisp`],import:(()=>U(()=>import(`./common-lisp-DepbATZs.js`),[]))},{id:`coq`,name:`Coq`,import:(()=>U(()=>import(`./coq-MxgxU5ya.js`),[]))},{id:`cpp`,name:`C++`,aliases:[`c++`],import:(()=>U(()=>import(`./cpp-DOrBqXCn.js`).then(e=>e.n),__vite__mapDeps([133,1,134,128,135,125])))},{id:`crystal`,name:`Crystal`,import:(()=>U(()=>import(`./crystal-BNKqmHux.js`),__vite__mapDeps([136,128,1,111,110,112,137,125])))},{id:`csharp`,name:`C#`,aliases:[`c#`,`cs`],import:(()=>U(()=>import(`./csharp-eEFXdsAq.js`),[]))},{id:`css`,name:`CSS`,import:(()=>U(()=>import(`./css-Db-syWW9.js`).then(e=>e.n),__vite__mapDeps([111,1])))},{id:`csv`,name:`CSV`,import:(()=>U(()=>import(`./csv-DHeYcbaq.js`),[]))},{id:`cue`,name:`CUE`,import:(()=>U(()=>import(`./cue-BmUNowrt.js`),[]))},{id:`cypher`,name:`Cypher`,aliases:[`cql`],import:(()=>U(()=>import(`./cypher-XjXHgCNS.js`),[]))},{id:`d`,name:`D`,import:(()=>U(()=>import(`./d-BWJnZtig.js`),[]))},{id:`dart`,name:`Dart`,import:(()=>U(()=>import(`./dart-DSI4HYh1.js`),[]))},{id:`dax`,name:`DAX`,import:(()=>U(()=>import(`./dax-yw1JsAni.js`),[]))},{id:`desktop`,name:`Desktop`,import:(()=>U(()=>import(`./desktop-C2QO4RvD.js`),[]))},{id:`diff`,name:`Diff`,import:(()=>U(()=>import(`./diff-Drt8aEyp.js`),[]))},{id:`docker`,name:`Dockerfile`,aliases:[`dockerfile`],import:(()=>U(()=>import(`./docker-ByDKbmLl.js`),[]))},{id:`dotenv`,name:`dotEnv`,import:(()=>U(()=>import(`./dotenv-BkfOLytR.js`),[]))},{id:`dream-maker`,name:`Dream Maker`,import:(()=>U(()=>import(`./dream-maker-DQBIfSiO.js`),[]))},{id:`edge`,name:`Edge`,import:(()=>U(()=>import(`./edge-Dbjp42Pt.js`),__vite__mapDeps([138,124,110,1,111,112,122])))},{id:`elixir`,name:`Elixir`,import:(()=>U(()=>import(`./elixir-na3b1pYy.js`),__vite__mapDeps([139,110,1,111,112])))},{id:`elm`,name:`Elm`,import:(()=>U(()=>import(`./elm-_Nalil1R.js`),__vite__mapDeps([140,134,1,128])))},{id:`emacs-lisp`,name:`Emacs Lisp`,aliases:[`elisp`],import:(()=>U(()=>import(`./emacs-lisp-Blh5kBD3.js`),[]))},{id:`erb`,name:`ERB`,import:(()=>U(()=>import(`./erb-CW_7dubf.js`),__vite__mapDeps([141,110,1,111,112,142,128,133,134,135,125,143,144,121,122,145,146,137,117,118,147])))},{id:`erlang`,name:`Erlang`,aliases:[`erl`],import:(()=>U(()=>import(`./erlang-DmZ7Zzb0.js`),__vite__mapDeps([148,149])))},{id:`fennel`,name:`Fennel`,import:(()=>U(()=>import(`./fennel-B1MT_EBZ.js`),[]))},{id:`fish`,name:`Fish`,import:(()=>U(()=>import(`./fish-C_HGcewt.js`),[]))},{id:`fluent`,name:`Fluent`,aliases:[`ftl`],import:(()=>U(()=>import(`./fluent-Dp1Iclmx.js`),[]))},{id:`fortran-fixed-form`,name:`Fortran (Fixed Form)`,aliases:[`f`,`for`,`f77`],import:(()=>U(()=>import(`./fortran-fixed-form-DB2A8L4-.js`),__vite__mapDeps([150,151])))},{id:`fortran-free-form`,name:`Fortran (Free Form)`,aliases:[`f90`,`f95`,`f03`,`f08`,`f18`],import:(()=>U(()=>import(`./fortran-free-form-B_-UA4XC.js`),[]))},{id:`fsharp`,name:`F#`,aliases:[`f#`,`fs`],import:(()=>U(()=>import(`./fsharp-BYHrti7z.js`),__vite__mapDeps([152,149])))},{id:`gdresource`,name:`GDResource`,aliases:[`tscn`,`tres`],import:(()=>U(()=>import(`./gdresource-D5GBin40.js`),__vite__mapDeps([153,154,155])))},{id:`gdscript`,name:`GDScript`,aliases:[`gd`],import:(()=>U(()=>import(`./gdscript-Bm_JpjS_.js`),[]))},{id:`gdshader`,name:`GDShader`,import:(()=>U(()=>import(`./gdshader-C_PNmfYU.js`),[]))},{id:`genie`,name:`Genie`,import:(()=>U(()=>import(`./genie-B5rmR2TF.js`),[]))},{id:`gherkin`,name:`Gherkin`,import:(()=>U(()=>import(`./gherkin-BTJ34TJ9.js`),[]))},{id:`git-commit`,name:`Git Commit Message`,import:(()=>U(()=>import(`./git-commit-CUiOBoIL.js`),__vite__mapDeps([156,157])))},{id:`git-rebase`,name:`Git Rebase Message`,import:(()=>U(()=>import(`./git-rebase-DOxGnpdw.js`),__vite__mapDeps([158,137,1])))},{id:`gleam`,name:`Gleam`,import:(()=>U(()=>import(`./gleam-BWmuAtD8.js`),[]))},{id:`glimmer-js`,name:`Glimmer JS`,aliases:[`gjs`],import:(()=>U(()=>import(`./glimmer-js-Begy4UT7.js`),__vite__mapDeps([159,111,1,110,112,122])))},{id:`glimmer-ts`,name:`Glimmer TS`,aliases:[`gts`],import:(()=>U(()=>import(`./glimmer-ts-rPApRY8N.js`),__vite__mapDeps([160,111,1,110,112,122])))},{id:`glsl`,name:`GLSL`,import:(()=>U(()=>import(`./glsl-wrbPvrBL.js`).then(e=>e.n),__vite__mapDeps([134,1,128])))},{id:`gn`,name:`GN`,import:(()=>U(()=>import(`./gn-CNQPjiZW.js`),[]))},{id:`gnuplot`,name:`Gnuplot`,import:(()=>U(()=>import(`./gnuplot-BlHjcPMe.js`),[]))},{id:`go`,name:`Go`,import:(()=>U(()=>import(`./go-Bn8Ba9uz.js`),[]))},{id:`graphql`,name:`GraphQL`,aliases:[`gql`],import:(()=>U(()=>import(`./graphql-Cu4-NR__.js`).then(e=>e.n),__vite__mapDeps([143,1,112,144,121,122])))},{id:`groovy`,name:`Groovy`,import:(()=>U(()=>import(`./groovy-C1Y1_F4V.js`),[]))},{id:`hack`,name:`Hack`,import:(()=>U(()=>import(`./hack-Ddo93XKD.js`),__vite__mapDeps([161,110,1,111,112,125])))},{id:`haml`,name:`Ruby Haml`,import:(()=>U(()=>import(`./haml-BFX_1i8j.js`).then(e=>e.n),__vite__mapDeps([145,1,111,112])))},{id:`handlebars`,name:`Handlebars`,aliases:[`hbs`],import:(()=>U(()=>import(`./handlebars-5gFKA4H5.js`),__vite__mapDeps([162,111,1,110,112,147])))},{id:`haskell`,name:`Haskell`,aliases:[`hs`],import:(()=>U(()=>import(`./haskell-D8DeoXtG.js`),[]))},{id:`haxe`,name:`Haxe`,import:(()=>U(()=>import(`./haxe-BmZm7B0W.js`),[]))},{id:`hcl`,name:`HashiCorp HCL`,import:(()=>U(()=>import(`./hcl-CKnBM3ng.js`),[]))},{id:`hjson`,name:`Hjson`,import:(()=>U(()=>import(`./hjson-Ct9t4-ci.js`),[]))},{id:`hlsl`,name:`HLSL`,import:(()=>U(()=>import(`./hlsl-BZSASBqS.js`),[]))},{id:`html`,name:`HTML`,import:(()=>U(()=>import(`./html-C06I-zeO.js`).then(e=>e.n),__vite__mapDeps([110,1,111,112])))},{id:`html-derivative`,name:`HTML (Derivative)`,import:(()=>U(()=>import(`./html-derivative-e5JLAFZF.js`),__vite__mapDeps([124,110,1,111,112])))},{id:`http`,name:`HTTP`,import:(()=>U(()=>import(`./http-CrAAhSU7.js`),__vite__mapDeps([163,143,1,112,144,121,122,116,137,117,118])))},{id:`hurl`,name:`Hurl`,import:(()=>U(()=>import(`./hurl-T1V3SX9T.js`),__vite__mapDeps([164,165,143,1,112,144,121,122,117,118])))},{id:`hxml`,name:`HXML`,import:(()=>U(()=>import(`./hxml-B056LLKN.js`),__vite__mapDeps([166,167])))},{id:`hy`,name:`Hy`,import:(()=>U(()=>import(`./hy-Dyc6h6Xb.js`),[]))},{id:`imba`,name:`Imba`,import:(()=>U(()=>import(`./imba-Bauru7s2.js`),[]))},{id:`ini`,name:`INI`,aliases:[`properties`],import:(()=>U(()=>import(`./ini-SjdwtaTp.js`),[]))},{id:`java`,name:`Java`,import:(()=>U(()=>import(`./java-D2r0ocpf.js`).then(e=>e.n),__vite__mapDeps([118,1])))},{id:`javascript`,name:`JavaScript`,aliases:[`js`,`cjs`,`mjs`],import:(()=>U(()=>import(`./javascript-y-lof7iP.js`).then(e=>e.n),__vite__mapDeps([112,1])))},{id:`jinja`,name:`Jinja`,import:(()=>U(()=>import(`./jinja-DGdtRh43.js`),__vite__mapDeps([168,110,1,111,112])))},{id:`jison`,name:`Jison`,import:(()=>U(()=>import(`./jison-Ah6QobPS.js`),__vite__mapDeps([169,112,1])))},{id:`json`,name:`JSON`,import:(()=>U(()=>import(`./json-DO4LSx5A.js`).then(e=>e.n),__vite__mapDeps([116,1])))},{id:`json5`,name:`JSON5`,import:(()=>U(()=>import(`./json5-BEwWf-W3.js`),[]))},{id:`jsonc`,name:`JSON with Comments`,import:(()=>U(()=>import(`./jsonc-OBEFv7gP.js`),[]))},{id:`jsonl`,name:`JSON Lines`,import:(()=>U(()=>import(`./jsonl-DOyW4Mg3.js`),[]))},{id:`jsonnet`,name:`Jsonnet`,import:(()=>U(()=>import(`./jsonnet-BL5R2CpP.js`),[]))},{id:`jssm`,name:`JSSM`,aliases:[`fsl`],import:(()=>U(()=>import(`./jssm-ksPusAyg.js`),[]))},{id:`jsx`,name:`JSX`,import:(()=>U(()=>import(`./jsx-B6XEu6O-.js`).then(e=>e.n),__vite__mapDeps([144,1])))},{id:`julia`,name:`Julia`,aliases:[`jl`],import:(()=>U(()=>import(`./julia-BJeGOK0K.js`),__vite__mapDeps([170,133,1,134,128,135,125,112,130,171])))},{id:`just`,name:`Just`,import:(()=>U(()=>import(`./just-iw9oRs7j.js`),__vite__mapDeps([172,112,1,173,111,110,125,117,118,130,142,128,133,134,135,143,144,121,122,145,146,137,147])))},{id:`kdl`,name:`KDL`,import:(()=>U(()=>import(`./kdl-pf5B8N_m.js`),[]))},{id:`kotlin`,name:`Kotlin`,aliases:[`kt`,`kts`],import:(()=>U(()=>import(`./kotlin-BdF0METC.js`),[]))},{id:`kusto`,name:`Kusto`,aliases:[`kql`],import:(()=>U(()=>import(`./kusto-BneVP-OU.js`),[]))},{id:`latex`,name:`LaTeX`,import:(()=>U(()=>import(`./latex-DHjj5hyN.js`),__vite__mapDeps([174,175,171,1])))},{id:`lean`,name:`Lean 4`,aliases:[`lean4`],import:(()=>U(()=>import(`./lean-BN6Jdymq.js`),[]))},{id:`less`,name:`Less`,import:(()=>U(()=>import(`./less-Cx-fdlDC.js`),[]))},{id:`liquid`,name:`Liquid`,import:(()=>U(()=>import(`./liquid-B-FFecDc.js`),__vite__mapDeps([176,111,1,110,112,116])))},{id:`llvm`,name:`LLVM IR`,import:(()=>U(()=>import(`./llvm-BGxtW0Nw.js`),[]))},{id:`log`,name:`Log file`,import:(()=>U(()=>import(`./log-kQb4eJnj.js`),[]))},{id:`logo`,name:`Logo`,import:(()=>U(()=>import(`./logo-DqAzaq7s.js`),[]))},{id:`lua`,name:`Lua`,import:(()=>U(()=>import(`./lua-DDianJp_.js`).then(e=>e.n),__vite__mapDeps([146,1,128])))},{id:`luau`,name:`Luau`,import:(()=>U(()=>import(`./luau-Dc2cp-zS.js`),[]))},{id:`make`,name:`Makefile`,aliases:[`makefile`],import:(()=>U(()=>import(`./make-DYg9dwaJ.js`),[]))},{id:`markdown`,name:`Markdown`,aliases:[`md`],import:(()=>U(()=>import(`./markdown-O4EPpS3K.js`),[]))},{id:`marko`,name:`Marko`,import:(()=>U(()=>import(`./marko-BW5SBVng.js`),__vite__mapDeps([177,111,1,178,114,122])))},{id:`matlab`,name:`MATLAB`,import:(()=>U(()=>import(`./matlab-DQNZ_NU8.js`),[]))},{id:`mdc`,name:`MDC`,import:(()=>U(()=>import(`./mdc-B9gL9bjl.js`),__vite__mapDeps([179,124,110,1,111,112,149,147])))},{id:`mdx`,name:`MDX`,import:(()=>U(()=>import(`./mdx-CJayB7XK.js`),[]))},{id:`mermaid`,name:`Mermaid`,aliases:[`mmd`],import:(()=>U(()=>import(`./mermaid-Cb0TRX92.js`),[]))},{id:`mipsasm`,name:`MIPS Assembly`,aliases:[`mips`],import:(()=>U(()=>import(`./mipsasm-Jc7u7YSS.js`),[]))},{id:`mojo`,name:`Mojo`,import:(()=>U(()=>import(`./mojo-CTB0cutd.js`),[]))},{id:`moonbit`,name:`MoonBit`,aliases:[`mbt`,`mbti`],import:(()=>U(()=>import(`./moonbit-CbFEfYYM.js`),[]))},{id:`move`,name:`Move`,import:(()=>U(()=>import(`./move-BT38p0kT.js`),[]))},{id:`narrat`,name:`Narrat Language`,aliases:[`nar`],import:(()=>U(()=>import(`./narrat-55QZ_kOG.js`),[]))},{id:`nextflow`,name:`Nextflow`,aliases:[`nf`],import:(()=>U(()=>import(`./nextflow-dTluY6qy.js`),__vite__mapDeps([180,181])))},{id:`nextflow-groovy`,name:`Nextflow Groovy`,import:(()=>U(()=>import(`./nextflow-groovy-Bg8peyqg.js`),[]))},{id:`nginx`,name:`Nginx`,import:(()=>U(()=>import(`./nginx-DlwghGI-.js`),__vite__mapDeps([182,146,1,128])))},{id:`nim`,name:`Nim`,import:(()=>U(()=>import(`./nim-N9jddb5D.js`),__vite__mapDeps([183,128,1,111,134,110,112,149,117,118])))},{id:`nix`,name:`Nix`,import:(()=>U(()=>import(`./nix-BSI8YesN.js`),[]))},{id:`nushell`,name:`nushell`,aliases:[`nu`],import:(()=>U(()=>import(`./nushell-qDVZn_lw.js`),[]))},{id:`objective-c`,name:`Objective-C`,aliases:[`objc`],import:(()=>U(()=>import(`./objective-c-Blf-ATos.js`),[]))},{id:`objective-cpp`,name:`Objective-C++`,import:(()=>U(()=>import(`./objective-cpp-Bz8bAq47.js`),[]))},{id:`ocaml`,name:`OCaml`,import:(()=>U(()=>import(`./ocaml-B9heAsc3.js`),[]))},{id:`odin`,name:`Odin`,import:(()=>U(()=>import(`./odin-BaFYnOwO.js`),[]))},{id:`openscad`,name:`OpenSCAD`,aliases:[`scad`],import:(()=>U(()=>import(`./openscad-UvYyL2MK.js`),[]))},{id:`pascal`,name:`Pascal`,import:(()=>U(()=>import(`./pascal-B4-qvEoG.js`),[]))},{id:`perl`,name:`Perl`,import:(()=>U(()=>import(`./perl-CkmpYKa_.js`),__vite__mapDeps([173,111,1,110,112,125,117,118])))},{id:`php`,name:`PHP`,import:(()=>U(()=>import(`./php-BwZ3KDPo.js`),__vite__mapDeps([184,111,1,110,112,116,125,117,118])))},{id:`pkl`,name:`Pkl`,import:(()=>U(()=>import(`./pkl-B146nqGx.js`),[]))},{id:`plsql`,name:`PL/SQL`,import:(()=>U(()=>import(`./plsql-ItOG5Cca.js`),[]))},{id:`po`,name:`Gettext PO`,aliases:[`pot`,`potx`],import:(()=>U(()=>import(`./po-imiCTaNX.js`),[]))},{id:`polar`,name:`Polar`,import:(()=>U(()=>import(`./polar-CTeGoFxV.js`),[]))},{id:`postcss`,name:`PostCSS`,import:(()=>U(()=>import(`./postcss-jvFe6GNE.js`),[]))},{id:`powerquery`,name:`PowerQuery`,import:(()=>U(()=>import(`./powerquery-D9Dw1hJp.js`),[]))},{id:`powershell`,name:`PowerShell`,aliases:[`ps`,`ps1`],import:(()=>U(()=>import(`./powershell-CZqvYQtg.js`),[]))},{id:`prisma`,name:`Prisma`,import:(()=>U(()=>import(`./prisma-B4D2nO_7.js`),[]))},{id:`prolog`,name:`Prolog`,import:(()=>U(()=>import(`./prolog-CQbyUcCF.js`),[]))},{id:`proto`,name:`Protocol Buffer 3`,aliases:[`protobuf`],import:(()=>U(()=>import(`./proto-Cwpo0cW1.js`),[]))},{id:`pug`,name:`Pug`,aliases:[`jade`],import:(()=>U(()=>import(`./pug-B3rBPqQo.js`),__vite__mapDeps([185,111,1,110,112])))},{id:`puppet`,name:`Puppet`,import:(()=>U(()=>import(`./puppet-CKxCwBod.js`),[]))},{id:`purescript`,name:`PureScript`,import:(()=>U(()=>import(`./purescript-B-MyXMMp.js`),[]))},{id:`python`,name:`Python`,aliases:[`py`],import:(()=>U(()=>import(`./python-D6QbSR2S.js`),[]))},{id:`qml`,name:`QML`,import:(()=>U(()=>import(`./qml-BfDbWFmg.js`),__vite__mapDeps([186,112,1])))},{id:`qmldir`,name:`QML Directory`,import:(()=>U(()=>import(`./qmldir-BpTSVcw_.js`),[]))},{id:`qss`,name:`Qt Style Sheets`,import:(()=>U(()=>import(`./qss-DBc4gbpe.js`),[]))},{id:`r`,name:`R`,import:(()=>U(()=>import(`./r-i9jMMi0s.js`).then(e=>e.n),__vite__mapDeps([171,1])))},{id:`racket`,name:`Racket`,import:(()=>U(()=>import(`./racket-BWNaxU7C.js`),[]))},{id:`raku`,name:`Raku`,aliases:[`perl6`],import:(()=>U(()=>import(`./raku-fqTZLn7L.js`),[]))},{id:`razor`,name:`ASP.NET Razor`,import:(()=>U(()=>import(`./razor-B1ww1r38.js`),__vite__mapDeps([187,188,110,1,111,112])))},{id:`reg`,name:`Windows Registry Script`,import:(()=>U(()=>import(`./reg-BbirlU1S.js`),[]))},{id:`regexp`,name:`RegExp`,aliases:[`regex`],import:(()=>U(()=>import(`./regexp-D8VTFrtg.js`).then(e=>e.n),__vite__mapDeps([135,1])))},{id:`rel`,name:`Rel`,import:(()=>U(()=>import(`./rel-ByQGKiNM.js`),[]))},{id:`riscv`,name:`RISC-V`,import:(()=>U(()=>import(`./riscv-B5nqCfLE.js`),[]))},{id:`ron`,name:`RON`,import:(()=>U(()=>import(`./ron-DOVh_iZR.js`),[]))},{id:`rosmsg`,name:`ROS Interface`,import:(()=>U(()=>import(`./rosmsg-Cyk7Il8z.js`),[]))},{id:`rst`,name:`reStructuredText`,import:(()=>U(()=>import(`./rst-C0MSq6m-.js`),__vite__mapDeps([189,190,133,1,134,128,135,125,124,110,111,112,130,142,143,144,121,122,145,146,137,117,118,147])))},{id:`ruby`,name:`Ruby`,aliases:[`rb`],import:(()=>U(()=>import(`./ruby-ClIZ1wb3.js`),__vite__mapDeps([142,128,1,133,134,135,125,111,143,112,144,121,122,145,110,146,137,117,118,147])))},{id:`rust`,name:`Rust`,aliases:[`rs`],import:(()=>U(()=>import(`./rust-DRNM5epF.js`),[]))},{id:`sas`,name:`SAS`,import:(()=>U(()=>import(`./sas-DR0j3o4_.js`),__vite__mapDeps([191,125,1])))},{id:`sass`,name:`Sass`,import:(()=>U(()=>import(`./sass-D_cB0-M1.js`),[]))},{id:`scala`,name:`Scala`,import:(()=>U(()=>import(`./scala-Crl-1kKS.js`),[]))},{id:`scheme`,name:`Scheme`,import:(()=>U(()=>import(`./scheme-DCaWyEJ0.js`),[]))},{id:`scss`,name:`SCSS`,import:(()=>U(()=>import(`./scss-Vh3JLayR.js`).then(e=>e.n),__vite__mapDeps([114,1,111])))},{id:`sdbl`,name:`1C (Query)`,aliases:[`1c-query`],import:(()=>U(()=>import(`./sdbl-BbXNqwtX.js`),[]))},{id:`shaderlab`,name:`ShaderLab`,aliases:[`shader`],import:(()=>U(()=>import(`./shaderlab-0rHRnQ18.js`),__vite__mapDeps([192,193])))},{id:`shellscript`,name:`Shell`,aliases:[`bash`,`sh`,`shell`,`zsh`],import:(()=>U(()=>import(`./shellscript-BAgksBhW.js`).then(e=>e.n),__vite__mapDeps([137,1])))},{id:`shellsession`,name:`Shell Session`,aliases:[`console`],import:(()=>U(()=>import(`./shellsession-Dxdw6D8c.js`),__vite__mapDeps([194,137,1])))},{id:`smalltalk`,name:`Smalltalk`,import:(()=>U(()=>import(`./smalltalk-DSVGUbtL.js`),[]))},{id:`solidity`,name:`Solidity`,import:(()=>U(()=>import(`./solidity-CsxN618l.js`),[]))},{id:`soy`,name:`Closure Templates`,aliases:[`closure-templates`],import:(()=>U(()=>import(`./soy-BHlSNj1y.js`),__vite__mapDeps([195,110,1,111,112])))},{id:`sparql`,name:`SPARQL`,import:(()=>U(()=>import(`./sparql-B2QaPpni.js`),__vite__mapDeps([196,197])))},{id:`splunk`,name:`Splunk Query Language`,aliases:[`spl`],import:(()=>U(()=>import(`./splunk-CF1m0Kkv.js`),[]))},{id:`sql`,name:`SQL`,import:(()=>U(()=>import(`./sql-DvyMDgrB.js`).then(e=>e.n),__vite__mapDeps([125,1])))},{id:`ssh-config`,name:`SSH Config`,import:(()=>U(()=>import(`./ssh-config-a8sDo-Q8.js`),[]))},{id:`stata`,name:`Stata`,import:(()=>U(()=>import(`./stata-CwIxjsEJ.js`),__vite__mapDeps([198,125,1])))},{id:`stylus`,name:`Stylus`,aliases:[`styl`],import:(()=>U(()=>import(`./stylus-DCJ-6AjT.js`),[]))},{id:`surrealql`,name:`SurrealQL`,aliases:[`surql`],import:(()=>U(()=>import(`./surrealql-C6vo-rp-.js`),__vite__mapDeps([199,112,1])))},{id:`svelte`,name:`Svelte`,import:(()=>U(()=>import(`./svelte-LLdJ6rlH.js`),__vite__mapDeps([200,111,1,112,120,122])))},{id:`swift`,name:`Swift`,import:(()=>U(()=>import(`./swift-c-ZFxyPP.js`),[]))},{id:`system-verilog`,name:`SystemVerilog`,import:(()=>U(()=>import(`./system-verilog-DPD02IOo.js`),[]))},{id:`systemd`,name:`Systemd Units`,import:(()=>U(()=>import(`./systemd-BUr5HRtU.js`),[]))},{id:`talonscript`,name:`TalonScript`,aliases:[`talon`],import:(()=>U(()=>import(`./talonscript-BNBQV5YJ.js`),[]))},{id:`tasl`,name:`Tasl`,import:(()=>U(()=>import(`./tasl-BETjpSyu.js`),[]))},{id:`tcl`,name:`Tcl`,import:(()=>U(()=>import(`./tcl-Clp_AZiC.js`),[]))},{id:`templ`,name:`Templ`,import:(()=>U(()=>import(`./templ-CJGvhEP5.js`),__vite__mapDeps([201,111,1,202,112])))},{id:`terraform`,name:`Terraform`,aliases:[`tf`,`tfvars`],import:(()=>U(()=>import(`./terraform-B0kZ0lim.js`),[]))},{id:`tex`,name:`TeX`,import:(()=>U(()=>import(`./tex-psXWhc4t.js`),__vite__mapDeps([175,171,1])))},{id:`toml`,name:`TOML`,import:(()=>U(()=>import(`./toml-DOPCSumy.js`),[]))},{id:`ts-tags`,name:`TypeScript with Tags`,aliases:[`lit`],import:(()=>U(()=>import(`./ts-tags-D5Ar_ZCO.js`),__vite__mapDeps([203,111,1,134,128,110,112,125,122,117,118])))},{id:`tsv`,name:`TSV`,import:(()=>U(()=>import(`./tsv-D6qUGf84.js`),[]))},{id:`tsx`,name:`TSX`,import:(()=>U(()=>import(`./tsx-B6qYhT6O.js`).then(e=>e.n),__vite__mapDeps([121,1])))},{id:`turtle`,name:`Turtle`,import:(()=>U(()=>import(`./turtle-C0Rjzw73.js`),[]))},{id:`twig`,name:`Twig`,import:(()=>U(()=>import(`./twig-vJgGC-qY.js`),__vite__mapDeps([204,111,1,112,184,110,116,125,117,118,130,142,128,133,134,135,143,144,121,122,145,146,137,147,114])))},{id:`typescript`,name:`TypeScript`,aliases:[`ts`,`cts`,`mts`],import:(()=>U(()=>import(`./typescript-BiydShEu.js`).then(e=>e.n),__vite__mapDeps([122,1])))},{id:`typespec`,name:`TypeSpec`,aliases:[`tsp`],import:(()=>U(()=>import(`./typespec-DjmF6Aww.js`),[]))},{id:`typst`,name:`Typst`,aliases:[`typ`],import:(()=>U(()=>import(`./typst-CPuscfcL.js`),[]))},{id:`v`,name:`V`,import:(()=>U(()=>import(`./v-DE4vpLLQ.js`),[]))},{id:`vala`,name:`Vala`,import:(()=>U(()=>import(`./vala-CmUF2pS5.js`),[]))},{id:`vb`,name:`Visual Basic`,aliases:[`cmd`],import:(()=>U(()=>import(`./vb-BvcRoX4b.js`),[]))},{id:`verilog`,name:`Verilog`,import:(()=>U(()=>import(`./verilog-BGIzyH3R.js`),[]))},{id:`vhdl`,name:`VHDL`,import:(()=>U(()=>import(`./vhdl-DMSumomw.js`),[]))},{id:`viml`,name:`Vim Script`,aliases:[`vim`,`vimscript`],import:(()=>U(()=>import(`./viml-Drt7AEmU.js`),[]))},{id:`vue`,name:`Vue`,import:(()=>U(()=>import(`./vue-BWngFyav.js`),__vite__mapDeps([205,111,1,124,110,112,116,122])))},{id:`vue-html`,name:`Vue HTML`,import:(()=>U(()=>import(`./vue-html-BN5ZLu-H.js`),__vite__mapDeps([206,112,1])))},{id:`vue-vine`,name:`Vue Vine`,import:(()=>U(()=>import(`./vue-vine-BZHnO8yV.js`),__vite__mapDeps([207,111,1,112,178,120,114,208])))},{id:`vyper`,name:`Vyper`,aliases:[`vy`],import:(()=>U(()=>import(`./vyper-CB7psEJj.js`),[]))},{id:`wasm`,name:`WebAssembly`,import:(()=>U(()=>import(`./wasm-BY1tuM5m.js`),[]))},{id:`wenyan`,name:`Wenyan`,aliases:[`文言`],import:(()=>U(()=>import(`./wenyan-DhewQ68b.js`),[]))},{id:`wgsl`,name:`WGSL`,import:(()=>U(()=>import(`./wgsl-DlmiP456.js`),[]))},{id:`wikitext`,name:`Wikitext`,aliases:[`mediawiki`,`wiki`],import:(()=>U(()=>import(`./wikitext-cQCnqNgE.js`),[]))},{id:`wit`,name:`WebAssembly Interface Types`,import:(()=>U(()=>import(`./wit-S5MaCngB.js`),[]))},{id:`wolfram`,name:`Wolfram`,aliases:[`wl`],import:(()=>U(()=>import(`./wolfram-Bh8n_9zr.js`),[]))},{id:`xml`,name:`XML`,import:(()=>U(()=>import(`./xml-DS2beZHp.js`).then(e=>e.n),__vite__mapDeps([117,1,118])))},{id:`xsl`,name:`XSL`,import:(()=>U(()=>import(`./xsl-Ciiku1Bq.js`),__vite__mapDeps([209,117,1,118])))},{id:`yaml`,name:`YAML`,aliases:[`yml`],import:(()=>U(()=>import(`./yaml-BoK_17l9.js`).then(e=>e.n),__vite__mapDeps([147,1])))},{id:`zenscript`,name:`ZenScript`,import:(()=>U(()=>import(`./zenscript-DB3ZFwNJ.js`),[]))},{id:`zig`,name:`Zig`,import:(()=>U(()=>import(`./zig-Bv1BWmfT.js`),[]))}],Eb=Object.fromEntries(Tb.map(e=>[e.id,e.import])),Db=Object.fromEntries(Tb.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Ob={...Eb,...Db},kb=Object.fromEntries([{id:`andromeeda`,displayName:`Andromeeda`,type:`dark`,import:(()=>U(()=>import(`./andromeeda-Dy5zcy0Q.js`),[]))},{id:`aurora-x`,displayName:`Aurora X`,type:`dark`,import:(()=>U(()=>import(`./aurora-x-Dq3Jc78M.js`),[]))},{id:`ayu-dark`,displayName:`Ayu Dark`,type:`dark`,import:(()=>U(()=>import(`./ayu-dark-DjoK6Evo.js`),[]))},{id:`ayu-light`,displayName:`Ayu Light`,type:`light`,import:(()=>U(()=>import(`./ayu-light-CKKXBLMI.js`),[]))},{id:`ayu-mirage`,displayName:`Ayu Mirage`,type:`dark`,import:(()=>U(()=>import(`./ayu-mirage-DGXSrrXB.js`),[]))},{id:`catppuccin-frappe`,displayName:`Catppuccin Frappé`,type:`dark`,import:(()=>U(()=>import(`./catppuccin-frappe-DDj0JEiY.js`),[]))},{id:`catppuccin-latte`,displayName:`Catppuccin Latte`,type:`light`,import:(()=>U(()=>import(`./catppuccin-latte-DPyANHyR.js`),[]))},{id:`catppuccin-macchiato`,displayName:`Catppuccin Macchiato`,type:`dark`,import:(()=>U(()=>import(`./catppuccin-macchiato-CO-h8VTT.js`),[]))},{id:`catppuccin-mocha`,displayName:`Catppuccin Mocha`,type:`dark`,import:(()=>U(()=>import(`./catppuccin-mocha-BCmbN2IZ.js`),[]))},{id:`dark-plus`,displayName:`Dark Plus`,type:`dark`,import:(()=>U(()=>import(`./dark-plus-Db7umas1.js`),[]))},{id:`dracula`,displayName:`Dracula Theme`,type:`dark`,import:(()=>U(()=>import(`./dracula-DAmrm-Un.js`),[]))},{id:`dracula-soft`,displayName:`Dracula Theme Soft`,type:`dark`,import:(()=>U(()=>import(`./dracula-soft-BUOEnKqR.js`),[]))},{id:`everforest-dark`,displayName:`Everforest Dark`,type:`dark`,import:(()=>U(()=>import(`./everforest-dark-CEzhDxHq.js`),[]))},{id:`everforest-light`,displayName:`Everforest Light`,type:`light`,import:(()=>U(()=>import(`./everforest-light-CPk_5Khm.js`),[]))},{id:`github-dark`,displayName:`GitHub Dark`,type:`dark`,import:(()=>U(()=>import(`./github-dark-DOkNVj9H.js`),[]))},{id:`github-dark-default`,displayName:`GitHub Dark Default`,type:`dark`,import:(()=>U(()=>import(`./github-dark-default-DTsmiyVo.js`),[]))},{id:`github-dark-dimmed`,displayName:`GitHub Dark Dimmed`,type:`dark`,import:(()=>U(()=>import(`./github-dark-dimmed-CjbxAe9s.js`),[]))},{id:`github-dark-high-contrast`,displayName:`GitHub Dark High Contrast`,type:`dark`,import:(()=>U(()=>import(`./github-dark-high-contrast-r_M8F_k7.js`),[]))},{id:`github-light`,displayName:`GitHub Light`,type:`light`,import:(()=>U(()=>import(`./github-light-BzfxyMyb.js`),[]))},{id:`github-light-default`,displayName:`GitHub Light Default`,type:`light`,import:(()=>U(()=>import(`./github-light-default-BOqiBIy5.js`),[]))},{id:`github-light-high-contrast`,displayName:`GitHub Light High Contrast`,type:`light`,import:(()=>U(()=>import(`./github-light-high-contrast-DQzBrDM4.js`),[]))},{id:`gruvbox-dark-hard`,displayName:`Gruvbox Dark Hard`,type:`dark`,import:(()=>U(()=>import(`./gruvbox-dark-hard-DueOsHav.js`),[]))},{id:`gruvbox-dark-medium`,displayName:`Gruvbox Dark Medium`,type:`dark`,import:(()=>U(()=>import(`./gruvbox-dark-medium-DaQjD538.js`),[]))},{id:`gruvbox-dark-soft`,displayName:`Gruvbox Dark Soft`,type:`dark`,import:(()=>U(()=>import(`./gruvbox-dark-soft-CbbX2WOm.js`),[]))},{id:`gruvbox-light-hard`,displayName:`Gruvbox Light Hard`,type:`light`,import:(()=>U(()=>import(`./gruvbox-light-hard-E2M70ljZ.js`),[]))},{id:`gruvbox-light-medium`,displayName:`Gruvbox Light Medium`,type:`light`,import:(()=>U(()=>import(`./gruvbox-light-medium-B_DDLY6h.js`),[]))},{id:`gruvbox-light-soft`,displayName:`Gruvbox Light Soft`,type:`light`,import:(()=>U(()=>import(`./gruvbox-light-soft-2SZmyC1F.js`),[]))},{id:`horizon`,displayName:`Horizon`,type:`dark`,import:(()=>U(()=>import(`./horizon-CzX1AZ08.js`),[]))},{id:`horizon-bright`,displayName:`Horizon Bright`,type:`light`,import:(()=>U(()=>import(`./horizon-bright-CCVNeRIP.js`),[]))},{id:`houston`,displayName:`Houston`,type:`dark`,import:(()=>U(()=>import(`./houston-DBlJN7xc.js`),[]))},{id:`kanagawa-dragon`,displayName:`Kanagawa Dragon`,type:`dark`,import:(()=>U(()=>import(`./kanagawa-dragon-JBVe_ji_.js`),[]))},{id:`kanagawa-lotus`,displayName:`Kanagawa Lotus`,type:`light`,import:(()=>U(()=>import(`./kanagawa-lotus-ChprO68_.js`),[]))},{id:`kanagawa-wave`,displayName:`Kanagawa Wave`,type:`dark`,import:(()=>U(()=>import(`./kanagawa-wave-D_uB_R0Q.js`),[]))},{id:`laserwave`,displayName:`LaserWave`,type:`dark`,import:(()=>U(()=>import(`./laserwave-C4-UPIyG.js`),[]))},{id:`light-plus`,displayName:`Light Plus`,type:`light`,import:(()=>U(()=>import(`./light-plus-DFnnn_iL.js`),[]))},{id:`material-theme`,displayName:`Material Theme`,type:`dark`,import:(()=>U(()=>import(`./material-theme-ClP8yfQ2.js`),[]))},{id:`material-theme-darker`,displayName:`Material Theme Darker`,type:`dark`,import:(()=>U(()=>import(`./material-theme-darker-LOK55hGu.js`),[]))},{id:`material-theme-lighter`,displayName:`Material Theme Lighter`,type:`light`,import:(()=>U(()=>import(`./material-theme-lighter-j72tzZqi.js`),[]))},{id:`material-theme-ocean`,displayName:`Material Theme Ocean`,type:`dark`,import:(()=>U(()=>import(`./material-theme-ocean-C19LKClA.js`),[]))},{id:`material-theme-palenight`,displayName:`Material Theme Palenight`,type:`dark`,import:(()=>U(()=>import(`./material-theme-palenight-DJ5tN2ax.js`),[]))},{id:`min-dark`,displayName:`Min Dark`,type:`dark`,import:(()=>U(()=>import(`./min-dark-CWM8Bo-m.js`),[]))},{id:`min-light`,displayName:`Min Light`,type:`light`,import:(()=>U(()=>import(`./min-light-BBR1sjS2.js`),[]))},{id:`monokai`,displayName:`Monokai`,type:`dark`,import:(()=>U(()=>import(`./monokai-CvM_YNKx.js`),[]))},{id:`night-owl`,displayName:`Night Owl`,type:`dark`,import:(()=>U(()=>import(`./night-owl-DzS77iPK.js`),[]))},{id:`night-owl-light`,displayName:`Night Owl Light`,type:`light`,import:(()=>U(()=>import(`./night-owl-light-DER7fGnx.js`),[]))},{id:`nord`,displayName:`Nord`,type:`dark`,import:(()=>U(()=>import(`./nord-9bn7iNWo.js`),[]))},{id:`one-dark-pro`,displayName:`One Dark Pro`,type:`dark`,import:(()=>U(()=>import(`./one-dark-pro-D6B_hSe-.js`),[]))},{id:`one-light`,displayName:`One Light`,type:`light`,import:(()=>U(()=>import(`./one-light-Ba-f0wyk.js`),[]))},{id:`plastic`,displayName:`Plastic`,type:`dark`,import:(()=>U(()=>import(`./plastic-L38t-Id3.js`),[]))},{id:`poimandres`,displayName:`Poimandres`,type:`dark`,import:(()=>U(()=>import(`./poimandres-Bu6sIba9.js`),[]))},{id:`red`,displayName:`Red`,type:`dark`,import:(()=>U(()=>import(`./red-D-JEcuzA.js`),[]))},{id:`rose-pine`,displayName:`Rosé Pine`,type:`dark`,import:(()=>U(()=>import(`./rose-pine-jp51ZUzi.js`),[]))},{id:`rose-pine-dawn`,displayName:`Rosé Pine Dawn`,type:`light`,import:(()=>U(()=>import(`./rose-pine-dawn-B7hkmmWy.js`),[]))},{id:`rose-pine-moon`,displayName:`Rosé Pine Moon`,type:`dark`,import:(()=>U(()=>import(`./rose-pine-moon-Ff063yLj.js`),[]))},{id:`slack-dark`,displayName:`Slack Dark`,type:`dark`,import:(()=>U(()=>import(`./slack-dark-GB-ElUW_.js`),[]))},{id:`slack-ochin`,displayName:`Slack Ochin`,type:`light`,import:(()=>U(()=>import(`./slack-ochin-tU6CFD3S.js`),[]))},{id:`snazzy-light`,displayName:`Snazzy Light`,type:`light`,import:(()=>U(()=>import(`./snazzy-light-DZhi3PoS.js`),[]))},{id:`solarized-dark`,displayName:`Solarized Dark`,type:`dark`,import:(()=>U(()=>import(`./solarized-dark-D6AMCco7.js`),[]))},{id:`solarized-light`,displayName:`Solarized Light`,type:`light`,import:(()=>U(()=>import(`./solarized-light-DepuTWSE.js`),[]))},{id:`synthwave-84`,displayName:`Synthwave '84`,type:`dark`,import:(()=>U(()=>import(`./synthwave-84-9NPgBcuv.js`),[]))},{id:`tokyo-night`,displayName:`Tokyo Night`,type:`dark`,import:(()=>U(()=>import(`./tokyo-night-oOJ0a7Dk.js`),[]))},{id:`vesper`,displayName:`Vesper`,type:`dark`,import:(()=>U(()=>import(`./vesper-CG7IrHQQ.js`),[]))},{id:`vitesse-black`,displayName:`Vitesse Black`,type:`dark`,import:(()=>U(()=>import(`./vitesse-black-DmsjfN0b.js`),[]))},{id:`vitesse-dark`,displayName:`Vitesse Dark`,type:`dark`,import:(()=>U(()=>import(`./vitesse-dark-Dl55_WeJ.js`),[]))},{id:`vitesse-light`,displayName:`Vitesse Light`,type:`light`,import:(()=>U(()=>import(`./vitesse-light-Crbv9aGg.js`),[]))}].map(e=>[e.id,e.import])),Ab=t({createOnigurumaEngine:()=>ix,getDefaultWasmLoader:()=>rx,loadWasm:()=>Zb,setDefaultWasmLoader:()=>nx}),jb=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function Mb(){return 2147483648}function Nb(){return typeof performance<`u`?performance.now():Date.now()}var Pb=(e,t)=>e+(t-e%t)%t;async function Fb(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=Mb();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,Pb(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:Nb,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 Ib=Object.defineProperty,Lb=(e,t,n)=>t in e?Ib(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Rb=(e,t,n)=>Lb(e,typeof t==`symbol`?t:t+``,n),zb=null;function Bb(e){throw new jb(e.UTF8ToString(e.getLastOnigError()))}var Vb=class e{constructor(t){Rb(this,`utf16Length`),Rb(this,`utf8Length`),Rb(this,`utf16Value`),Rb(this,`utf8Value`),Rb(this,`utf16OffsetToUtf8`),Rb(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}},Hb=class e{constructor(t){if(Rb(this,`id`,++e.LAST_ID),Rb(this,`_onigBinding`),Rb(this,`content`),Rb(this,`utf16Length`),Rb(this,`utf8Length`),Rb(this,`utf16OffsetToUtf8`),Rb(this,`utf8OffsetToUtf16`),Rb(this,`ptr`),!zb)throw new jb(`Must invoke loadWasm first.`);this._onigBinding=zb,this.content=t;let n=new Vb(t);this.utf16Length=n.utf16Length,this.utf8Length=n.utf8Length,this.utf16OffsetToUtf8=n.utf16OffsetToUtf8,this.utf8OffsetToUtf16=n.utf8OffsetToUtf16,this.utf8Length<1e4&&!e._sharedPtrInUse?(e._sharedPtr||=zb.omalloc(1e4),e._sharedPtrInUse=!0,zb.HEAPU8.set(n.utf8Value,e._sharedPtr),this.ptr=e._sharedPtr):this.ptr=n.createString(zb)}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)}};Rb(Hb,`LAST_ID`,0),Rb(Hb,`_sharedPtr`,0),Rb(Hb,`_sharedPtrInUse`,!1);var Ub=Hb,Wb=class{constructor(e){if(Rb(this,`_onigBinding`),Rb(this,`_ptr`),!zb)throw new jb(`Must invoke loadWasm first.`);let t=[],n=[];for(let r=0,i=e.length;r<i;r++){let i=new Vb(e[r]);t[r]=i.createString(zb),n[r]=i.utf8Length}let r=zb.omalloc(4*e.length);zb.HEAPU32.set(t,r/4);let i=zb.omalloc(4*e.length);zb.HEAPU32.set(n,i/4);let a=zb.createOnigScanner(r,i,e.length);for(let n=0,r=e.length;n<r;n++)zb.ofree(t[n]);zb.ofree(i),zb.ofree(r),a===0&&Bb(zb),this._onigBinding=zb,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 Ub(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 Gb(e){return typeof e.instantiator==`function`}function Kb(e){return typeof e.default==`function`}function qb(e){return e.data!==void 0}function Jb(e){return typeof Response<`u`&&e instanceof Response}function Yb(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 Xb;function Zb(e){if(Xb)return Xb;async function t(){zb=await Fb(async t=>{let n=e;return n=await n,typeof n==`function`&&(n=await n(t)),typeof n==`function`&&(n=await n(t)),Gb(n)?n=await n.instantiator(t):Kb(n)?n=await n.default(t):(qb(n)&&(n=n.data),Jb(n)?n=typeof WebAssembly.instantiateStreaming==`function`?await $b(n)(t):await ex(n)(t):Yb(n)||n instanceof WebAssembly.Module?n=await Qb(n)(t):`default`in n&&n.default instanceof WebAssembly.Module&&(n=await Qb(n.default)(t))),`instance`in n&&(n=n.instance),`exports`in n&&(n=n.exports),n})}return Xb=t(),Xb}function Qb(e){return t=>WebAssembly.instantiate(e,t)}function $b(e){return t=>WebAssembly.instantiateStreaming(e,t)}function ex(e){return async t=>{let n=await e.arrayBuffer();return WebAssembly.instantiate(n,t)}}var tx;function nx(e){tx=e}function rx(){return tx}async function ix(e){return e&&await Zb(e),{createScanner(e){return new Wb(e.map(e=>typeof e==`string`?e:e.source))},createString(e){return new Ub(e)}}}var ax=Sb({});wb(ax,Ab);var ox=class extends Error{constructor(e){super(e),this.name=`ShikiError`}};function sx(e){return cx(e)}function cx(e){return Array.isArray(e)?lx(e):e instanceof RegExp?e:typeof e==`object`?ux(e):e}function lx(e){let t=[];for(let n=0,r=e.length;n<r;n++)t[n]=cx(e[n]);return t}function ux(e){let t={};for(let n in e)t[n]=cx(e[n]);return t}function dx(e,...t){return t.forEach(t=>{for(let n in t)e[n]=t[n]}),e}function fx(e){let t=~e.lastIndexOf(`/`)||~e.lastIndexOf(`\\`);return t===0?e:~t===e.length-1?fx(e.substring(0,e.length-1)):e.substr(~t+1)}var px=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,mx=class{static hasCaptures(e){return e===null?!1:(px.lastIndex=0,px.test(e))}static replaceCaptures(e,t,n){return e.replace(px,(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 hx(e,t){return e<t?-1:e>t?1:0}function gx(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=hx(e[r],t[r]);if(n!==0)return n}return 0}return n-r}function _x(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 vx(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,`\\$&`)}var yx=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}},bx=class{constructor(e,t,n){this._colorMap=e,this._defaults=t,this._root=n}static createFromRawTheme(e,t){return this.createFromParsedTheme(Tx(e),t)}static createFromParsedTheme(e,t){return Ox(e,t)}_cachedMatchRoot=new yx(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=>Sx(e.parent,t.parentScopes));return n?new wx(n.fontStyle,n.foreground,n.background):null}},xx=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 Sx(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&&!Cx(e.scopeName,r);){if(i)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function Cx(e,t){return t===e||e.startsWith(t)&&e[t.length]===`.`}var wx=class{constructor(e,t,n){this.fontStyle=e,this.foregroundId=t,this.backgroundId=n}};function Tx(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`&&_x(i.settings.foreground)&&(s=i.settings.foreground);let c=null;typeof i.settings.background==`string`&&_x(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 Ex(l,u,e,o,s,c)}}return n}var Ex=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}},Dx=(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))(Dx||{});function Ox(e,t){e.sort((e,t)=>{let n=hx(e.scope,t.scope);return n!==0||(n=gx(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 kx(t),o=new wx(n,a.getId(r),a.getId(i)),s=new Mx(new jx(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 bx(a,o,s)}var kx=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)}},Ax=Object.freeze([]),jx=class e{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(e,t,n,r,i){this.scopeDepth=e,this.parentScopes=t||Ax,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)}},Mx=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(),jx.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(gx(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 jx(e,t,n,r,i))}},Nx=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=Fx(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 Px(e){return e}function Fx(e){return e}function Ix(e,t){let n=[],r=Rx(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(Lx(i)){let e=[];do e.push(i),i=r.next();while(Lx(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 Lx(e){return!!e&&!!e.match(/[\w\.:]+/)}function Rx(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 zx(e){typeof e.dispose==`function`&&e.dispose()}var Bx=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},Vx=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Hx=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))}},Ux=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new Bx(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Hx;for(let n of e)Wx(n,this.initialScopeName,this.repo,t);for(let e of t.references)if(e instanceof Bx){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 Wx(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 Bx?Kx({baseGrammar:a,selfGrammar:i},r):Gx(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 Bx(e))}function Gx(e,t,n){if(t.repository&&t.repository[e]){let r=t.repository[e];qx([r],t,n)}}function Kx(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&qx(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&qx(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function qx(e,t,n){for(let r of e){if(n.visitedRule.has(r))continue;n.visitedRule.add(r);let e=r.repository?dx({},t.repository,r.repository):t.repository;Array.isArray(r.patterns)&&qx(r.patterns,{...t,repository:e},n);let i=r.include;if(!i)continue;let a=$x(i);switch(a.kind){case 0:Kx({...t,selfGrammar:t.baseGrammar},n);break;case 1:Kx(t,n);break;case 2:Gx(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?Gx(a.ruleName,i,n):Kx(i,n)}else a.kind===4?n.add(new Vx(a.scopeName,a.ruleName)):n.add(new Bx(a.scopeName));break}}}var Jx=class{kind=0},Yx=class{kind=1},Xx=class{constructor(e){this.ruleName=e}kind=2},Zx=class{constructor(e){this.scopeName=e}kind=3},Qx=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function $x(e){if(e===`$base`)return new Jx;if(e===`$self`)return new Yx;let t=e.indexOf(`#`);return t===-1?new Zx(e):t===0?new Xx(e.substring(1)):new Qx(e.substring(0,t),e.substring(t+1))}var eS=/\\(\d+)/,tS=/\\(\d+)/g,nS=-1,rS=-2;function iS(e){return e}function aS(e){return e}var oS=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,n,r){this.$location=e,this.id=t,this._name=n||null,this._nameIsCapturing=mx.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=mx.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${fx(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:mx.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:mx.replaceCaptures(this._contentName,e,t)}},sS=class extends oS{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!`)}},cS=class extends oS{_match;captures;_cachedCompiledPatterns;constructor(e,t,n,r,i){super(e,t,n,null),this._match=new pS(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 mS,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},lS=class extends oS{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 mS,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},uS=class extends oS{_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 pS(i,this.id),this.beginCaptures=a,this._end=new pS(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 mS;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}},dS=class extends oS{_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 pS(i,this.id),this.beginCaptures=a,this.whileCaptures=s,this._while=new pS(o,rS),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 mS;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 mS,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||`￿`),this._cachedCompiledWhilePatterns}},fS=class e{static createCaptureRule(e,t,n,r,i){return e.registerRule(e=>new sS(t,e,n,r,i))}static getCompiledRuleId(t,n,r){return t.id||n.registerRule(i=>{if(t.id=i,t.match)return new cS(t.$vscodeTextmateLocation,t.id,t.name,t.match,e._compileCaptures(t.captures,n,r));if(t.begin===void 0){t.repository&&(r=dx({},r,t.repository));let i=t.patterns;return i===void 0&&t.include&&(i=[{include:t.include}]),new lS(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,e._compilePatterns(i,n,r))}return t.while?new dS(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 uS(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=$x(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 lS||e instanceof uS||e instanceof dS)&&e.hasMissingPatterns&&e.patterns.length===0&&(t=!0),t)continue;i.push(s)}}return{patterns:i,hasMissingPatterns:(t?t.length:0)!==i.length}}},pS=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=eS.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 tS.lastIndex=0,this.source.replace(tS,(e,t)=>vx(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}},mS=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 hS(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 hS(e,this._items.map(e=>e.resolveAnchors(t,n)),this._items.map(e=>e.ruleId))}},hS=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}},gS=class{constructor(e,t){this.languageId=e,this.tokenType=t}},_S=class e{_defaultAttributes;_embeddedLanguagesMatcher;constructor(e,t){this._defaultAttributes=new gS(e,8),this._embeddedLanguagesMatcher=new vS(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 gS(0,0);_getBasicScopeAttributes=new yx(e=>new gS(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/},vS=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])=>vx(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 yS=!1,bS=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function xS(e,t,n,r,i,a,o,s){let c=t.content.length,l=!1,u=-1;if(o){let o=SS(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 bS(i,!0);f()}return new bS(i,!1);function f(){let o=CS(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===nS){let o=i.getRule(e);a.produce(i,s[0].start),i=i.withContentNameScopesList(i.nameScopesList),kS(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 uS){let r=o;kS(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 dS){let r=o;kS(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(kS(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 SS(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 dS&&s.push({rule:n,stack:t})}for(let c=s.pop();c;c=s.pop()){let{ruleScanner:s,findOptions:l}=DS(c.rule,e,c.stack.endRule,n,r===o),u=s.findNextMatchSync(t,r,l);if(u){if(u.ruleId!==rS){i=c.stack.pop();break}u.captureIndices&&u.captureIndices.length&&(a.produce(c.stack,u.captureIndices[0].start),kS(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 CS(e,t,n,r,i,a){let o=wS(e,t,n,r,i,a),s=e.getInjections();if(s.length===0)return o;let c=TS(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 wS(e,t,n,r,i,a){let{ruleScanner:o,findOptions:s}=ES(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 TS(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}=ES(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 ES(e,t,n,r,i){return yS?{ruleScanner:e.compile(t,n),findOptions:OS(r,i)}:{ruleScanner:e.compileAG(t,n,r,i),findOptions:0}}function DS(e,t,n,r,i){return yS?{ruleScanner:e.compileWhile(t,n),findOptions:OS(r,i)}:{ruleScanner:e.compileWhileAG(t,n,r,i),findOptions:0}}function OS(e,t){let n=0;return e||(n|=1),t||(n|=4),n}function kS(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));xS(e,p,n&&d.start===0,d.start,f,i,!1,0),zx(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 AS(t,d.end))}}for(;l.length>0;)i.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop()}var AS=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function jS(e,t,n,r,i,a,o,s){return new FS(e,t,n,r,i,a,o,s)}function MS(e,t,n,r,i){let a=Ix(t,NS),o=fS.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 NS(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(PS(t[r],e))return n=r+1,!0;return!1})}function PS(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 FS=class{constructor(e,t,n,r,i,a,o,s){if(this._rootScopeName=e,this.balancedBracketSelectors=a,this._onigLib=s,this._basicScopeAttributesProvider=new _S(n,r),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=o,this._grammar=IS(t,null),this._injections=null,this._tokenTypeMatchers=[],i)for(let e of Object.keys(i)){let t=Ix(e,NS);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)MS(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&&MS(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(iS(t));return this._ruleId2desc[t]=n,n}getRule(e){return this._ruleId2desc[aS(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]=IS(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=fS.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let i;if(!t||t===RS.NULL){i=!0;let e=this._basicScopeAttributesProvider.getDefaultAttributes(),n=this.themeProvider.getDefaults(),r=Nx.set(0,e.languageId,e.tokenType,null,n.fontStyle,n.foregroundId,n.backgroundId),a=this.getRule(this._rootId).getName(null,null),o;o=a?LS.createRootAndLookUpScopeName(a,r,this):LS.createRoot(`unknown`,r),t=new RS(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 BS(n,e,this._tokenTypeMatchers,this.balancedBracketSelectors),c=xS(this,a,i,0,t,s,!0,r);return zx(a),{lineLength:o,lineTokens:s,ruleStack:c.stack,stoppedEarly:c.stoppedEarly}}};function IS(e,t){return e=sx(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 LS=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=xx.push(i,t.scopeNames),r=new e(r,i,t.encodedTokenAttributes);return r}static createRoot(t,n){return new e(null,new xx(null,t),n)}static createRootAndLookUpScopeName(t,n,r){let i=r.getMetadataForScope(t),a=new xx(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),Nx.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}},RS=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)?LS.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:aS(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=LS.fromExtension(t?.nameScopesList??null,n.nameScopesList);return new e(t,iS(n.ruleId),n.enterPos??-1,n.anchorPos??-1,n.beginRuleCapturedEOL,n.endRule,r,LS.fromExtension(r,n.contentNameScopesList))}},zS=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(e=>e===`*`?(this.allowAny=!0,[]):Ix(e,NS).map(e=>e.matcher)),this.unbalancedBracketScopes=t.flatMap(e=>Ix(e,NS).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}},BS=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=Nx.set(n,0,Px(e.type),null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(t))}if(r&&(n=Nx.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}},VS=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,jS(e,a,t,n,r,i,this,this._onigLib))}return this._grammars.get(e)}},HS=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new VS(bx.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(bx.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 zS(n.balancedBracketSelectors||[],n.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,n,r,i){let a=new Ux(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)}},US=RS.NULL;function WS(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 GS(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function KS(e){return Array.isArray(e)?e:[e]}async function qS(e){return Promise.resolve(typeof e==`function`?e():e).then(e=>e.default||e)}function JS(e){return!e||[`plaintext`,`txt`,`text`,`plain`].includes(e)}function YS(e){return e===`ansi`||JS(e)}function XS(e){return e===`none`}function ZS(e){return XS(e)}var QS=/(\r?\n)/g;function $S(e,t=!1){if(e.length===0)return[[``,0]];let n=e.split(QS),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 eC={light:`#333333`,dark:`#bbbbbb`},tC={light:`#fffffe`,dark:`#1e1e1e`},nC=`__shiki_resolved`;function rC(e){if(e?.[nC])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`?eC.light:eC.dark,n||=t.type===`light`?tC.light:tC.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,nC,{enumerable:!1,writable:!1,value:!0}),t}async function iC(e){return[...new Set((await Promise.all(e.filter(e=>!YS(e)).map(async e=>await qS(e).then(e=>Array.isArray(e)?e:[e])))).flat())]}async function aC(e){return(await Promise.all(e.map(async e=>ZS(e)?null:rC(await qS(e))))).filter(e=>!!e)}function oC(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 ox(`Circular alias \`${[...n].join(` -> `)} -> ${e}\``);n.add(e)}}return e}var sC=class extends HS{_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=rC(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=bx.createFromRawTheme(e),this._textmateThemeCache.set(e,t)),this._syncRegistry.setTheme(t)}getGrammar(e){return e=oC(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 ox(`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))}},cC=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}},lC=0;function uC(e){lC+=1,e.warnings!==!1&&lC>=10&&lC%10==0&&console.warn(`[Shiki] ${lC} 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 ox("`engine` option is required for synchronous mode");let n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(rC),i=new sC(new cC(e.engine,n),r,n,e.langAlias),a;function o(t){return oC(t,e.langAlias)}function s(e){g();let t=i.getGrammar(typeof e==`string`?e:e.name);if(!t)throw new ox(`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 ox(`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 iC(e))}function m(...e){g();for(let t of e.flat(1))i.loadTheme(t)}async function h(...e){return g(),m(await aC(e))}function g(){if(t)throw new ox(`Shiki instance has been disposed`)}function _(){t||(t=!0,i.dispose(),--lC)}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 dC(e){e.engine||console.warn("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,n,r]=await Promise.all([aC(e.themes||[]),iC(e.langs||[]),e.engine]);return uC({...e,themes:t,langs:n,engine:r})}var fC=new WeakMap;function pC(e,t){fC.set(e,t)}function mC(e){return fC.get(e)}var hC=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(KS(n).map(e=>[e,US])),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 gC(this._stacks[e])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function gC(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 _C(e,t){if(!(e instanceof hC))throw new ox(`Invalid grammar state`);return e.getInternalStack(t)}var vC=/,/,yC=/ /;function bC(e,t,n={}){let{theme:r=e.getLoadedThemes()[0]}=n;if(JS(e.resolveLangAlias(n.lang||`text`))||XS(r))return $S(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 ox(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${o.name}"`);if(!n.grammarState.themes.includes(i.name))throw new ox(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${i.name}"`)}return SC(t,o,i,a,n)}function xC(...e){if(e.length===2)return mC(e[1]);let[t,n,r={}]=e,{lang:i=`text`,theme:a=t.getLoadedThemes()[0]}=r;if(JS(i)||XS(a))throw new ox(`Plain language does not have grammar state`);if(i===`ansi`)throw new ox(`ANSI language does not have grammar state`);let{theme:o,colorMap:s}=t.setTheme(a),c=t.getLanguage(i);return new hC(CC(n,c,o,s,r).stateStack,c.name,o.name)}function SC(e,t,n,r,i){let a=CC(e,t,n,r,i),o=new hC(a.stateStack,t.name,n.name);return pC(a.tokens,o),a.tokens}function CC(e,t,n,r,i){let a=WS(n,i),{tokenizeMaxLineLength:o=0,tokenizeTimeLimit:s=500,includeExplanation:c=!1}=i,l=$S(e),u=i.grammarState?_C(i.grammarState,n.name)??US:i.grammarContextCode==null?US:CC(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=GS(r[Nx.getForeground(s)],a),u=Nx.getFontStyle(s),f={content:i.substring(t,o),offset:p+t,color:l,fontStyle:u};if(c===`tokenType`)f.type=Nx.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(vC).map(e=>e.trim());break;case`object`:n=t.scope;break;default:continue}e.push({settings:t,selectors:n.map(e=>e.split(yC))})}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`?wC(t.scopes):TC(e,t.scopes)}),g+=1}}d.push(f)}f.push(d),d=[],u=_.ruleStack}return{tokens:f,stateStack:u}}function wC(e){return e.map(e=>({scopeName:e}))}function TC(e,t){let n=[];for(let r=0,i=t.length;r<i;r++){let i=t[r];n[r]={scopeName:i,themeMatches:OC(e,i,t.slice(0,r))}}return n}function EC(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]===`.`}function DC(e,t,n){if(!EC(e.at(-1),t))return!1;let r=e.length-2,i=n.length-1;for(;r>=0&&i>=0;)EC(e[r],n[i])&&--r,--i;return r===-1}function OC(e,t,n){let r=[];for(let{selectors:i,settings:a}of e)for(let e of i)if(DC(e,t,n)){r.push(a);break}return r}function kC(e,t,n,r=bC){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:mC(a),theme:typeof i.theme==`string`?i.theme:i.theme.name}}),o=AC(...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 hC(Object.fromEntries(a.map(e=>[e.theme,e.state?.getInternalStack(e.theme)])),a[0].state.lang):void 0;return c&&pC(s,c),s}function AC(...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 jC=[`area`,`base`,`basefont`,`bgsound`,`br`,`col`,`command`,`embed`,`frame`,`hr`,`image`,`img`,`input`,`keygen`,`link`,`meta`,`param`,`source`,`track`,`wbr`],MC={}.hasOwnProperty;function NC(e,t){let n=t||{};function r(t,...n){let i=r.invalid,a=r.handlers;if(t&&MC.call(t,e)){let n=String(t[e]);i=MC.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 PC=/["&'<>`]/g,FC=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,IC=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,LC=/[|\\{}()[\]^$+*?.]/g,RC=new WeakMap;function zC(e,t){if(e=e.replace(t.subset?BC(t.subset):PC,r),t.subset||t.escapeOnly)return e;return e.replace(FC,n).replace(IC,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 BC(e){let t=RC.get(e);return t||(t=VC(e),RC.set(e,t)),t}function VC(e){let t=[],n=-1;for(;++n<e.length;)t.push(e[n].replace(LC,`\\$&`));return RegExp(`(?:`+t.join(`|`)+`)`,`g`)}var HC=/[\dA-Fa-f]/;function UC(e,t,n){let r=`&#x`+e.toString(16).toUpperCase();return n&&t&&!HC.test(String.fromCharCode(t))?r:r+`;`}var WC=/\d/;function GC(e,t,n){let r=`&#`+String(e);return n&&t&&!WC.test(String.fromCharCode(t))?r:r+`;`}var KC=`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(`.`),qC={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:`€`},JC=[`cent`,`copy`,`divide`,`gt`,`lt`,`not`,`para`,`times`],YC={}.hasOwnProperty,XC={},ZC;for(ZC in qC)YC.call(qC,ZC)&&(XC[qC[ZC]]=ZC);var QC=/[^\dA-Za-z]/;function $C(e,t,n,r){let i=String.fromCharCode(e);if(YC.call(XC,i)){let e=XC[i],a=`&`+e;return n&&KC.includes(e)&&!JC.includes(e)&&(!r||t&&t!==61&&QC.test(String.fromCharCode(t)))?a:a+`;`}return``}function ew(e,t,n){let r=UC(e,t,n.omitOptionalSemicolons),i;if((n.useNamedReferences||n.useShortestReferences)&&(i=$C(e,t,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!i)&&n.useShortestReferences){let i=GC(e,t,n.omitOptionalSemicolons);i.length<r.length&&(r=i)}return i&&(!n.useShortestReferences||i.length<r.length)?i:r}function tw(e,t){return zC(e,Object.assign({format:ew},t))}var nw=/^>|^->|<!--|-->|--!>|<!-$/g,rw=[`>`],iw=[`<`,`>`];function aw(e,t,n,r){return r.settings.bogusComments?`<?`+tw(e.value,Object.assign({},r.settings.characterReferences,{subset:rw}))+`>`:`<!--`+e.value.replace(nw,i)+`-->`;function i(e){return tw(e,Object.assign({},r.settings.characterReferences,{subset:iw}))}}function ow(e,t,n,r){return`<!`+(r.settings.upperDoctype?`DOCTYPE`:`doctype`)+(r.settings.tightDoctype?``:` `)+`html>`}var sw=uw(1),cw=uw(-1),lw=[];function uw(e){return t;function t(t,n,r){let i=t?t.children:lw,a=(n||0)+e,o=i[a];if(!r)for(;o&&c(o);)a+=e,o=i[a];return o}}var dw={}.hasOwnProperty;function fw(e){return t;function t(t,n,r){return dw.call(e,t.tagName)&&e[t.tagName](t,n,r)}}var pw=fw({body:gw,caption:mw,colgroup:mw,dd:bw,dt:yw,head:mw,html:hw,li:vw,optgroup:Sw,option:Cw,p:_w,rp:xw,rt:xw,tbody:Tw,td:Ow,tfoot:Ew,th:Ow,thead:ww,tr:Dw});function mw(e,t,n){let r=sw(n,t,!0);return!r||r.type!==`comment`&&!(r.type===`text`&&c(r.value.charAt(0)))}function hw(e,t,n){let r=sw(n,t);return!r||r.type!==`comment`}function gw(e,t,n){let r=sw(n,t);return!r||r.type!==`comment`}function _w(e,t,n){let r=sw(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 vw(e,t,n){let r=sw(n,t);return!r||r.type===`element`&&r.tagName===`li`}function yw(e,t,n){let r=sw(n,t);return!!(r&&r.type===`element`&&(r.tagName===`dt`||r.tagName===`dd`))}function bw(e,t,n){let r=sw(n,t);return!r||r.type===`element`&&(r.tagName===`dt`||r.tagName===`dd`)}function xw(e,t,n){let r=sw(n,t);return!r||r.type===`element`&&(r.tagName===`rp`||r.tagName===`rt`)}function Sw(e,t,n){let r=sw(n,t);return!r||r.type===`element`&&r.tagName===`optgroup`}function Cw(e,t,n){let r=sw(n,t);return!r||r.type===`element`&&(r.tagName===`option`||r.tagName===`optgroup`)}function ww(e,t,n){let r=sw(n,t);return!!(r&&r.type===`element`&&(r.tagName===`tbody`||r.tagName===`tfoot`))}function Tw(e,t,n){let r=sw(n,t);return!r||r.type===`element`&&(r.tagName===`tbody`||r.tagName===`tfoot`)}function Ew(e,t,n){return!sw(n,t)}function Dw(e,t,n){let r=sw(n,t);return!r||r.type===`element`&&r.tagName===`tr`}function Ow(e,t,n){let r=sw(n,t);return!r||r.type===`element`&&(r.tagName===`td`||r.tagName===`th`)}var kw=fw({body:Mw,colgroup:Nw,head:jw,html:Aw,tbody:Pw});function Aw(e){let t=sw(e,-1);return!t||t.type!==`comment`}function jw(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 Mw(e){let t=sw(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 Nw(e,t,n){let r=cw(n,t),i=sw(e,-1,!0);return n&&r&&r.type===`element`&&r.tagName===`colgroup`&&pw(r,n.children.indexOf(r),n)?!1:!!(i&&i.type===`element`&&i.tagName===`col`)}function Pw(e,t,n){let r=cw(n,t),i=sw(e,-1);return n&&r&&r.type===`element`&&(r.tagName===`thead`||r.tagName===`tbody`)&&pw(r,n.children.indexOf(r),n)?!1:!!(i&&i.type===`element`&&i.tagName===`tr`)}var Fw={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 Iw(e,t,n,r){let i=r.schema,a=i.space===`svg`?!1:r.settings.omitOptionalTags,o=i.space===`svg`?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase()),s=[],c;i.space===`html`&&e.tagName===`svg`&&(r.schema=d);let l=Lw(r,e.properties),u=r.all(i.space===`html`&&e.tagName===`template`?e.content:e);return r.schema=i,u&&(o=!1),(l||!a||!kw(e,t,n))&&(s.push(`<`,e.tagName,l?` `+l:``),o&&(i.space===`svg`||r.settings.closeSelfClosing)&&(c=l.charAt(l.length-1),(!r.settings.tightSelfClosing||c===`/`||c&&c!==`"`&&c!==`'`)&&s.push(` `),s.push(`/`)),s.push(`>`)),s.push(u),!o&&(!a||!pw(e,t,n))&&s.push(`</`+e.tagName+`>`),s.join(``)}function Lw(e,t){let n=[],r=-1,i;if(t){for(i in t)if(t[i]!==null&&t[i]!==void 0){let r=Rw(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 Rw(e,t,n){let r=a(e.schema,t),c=e.settings.allowParseErrors&&e.schema.space===`html`?0:1,l=e.settings.allowDangerousCharacters?0:1,u=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=tw(r.attribute,Object.assign({},e.settings.characterReferences,{subset:Fw.name[c][l]}));return n===!0||(n=Array.isArray(n)?(r.commaSeparated?o:s)(n,{padLeft:!e.settings.tightCommaSeparatedLists}):String(n),e.settings.collapseEmptyAttributes&&!n)?f:(e.settings.preferUnquoted&&(d=tw(n,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Fw.unquoted[c][l]}))),d!==n&&(e.settings.quoteSmart&&i(n,u)>i(n,e.alternative)&&(u=e.alternative),d=u+tw(n,Object.assign({},e.settings.characterReferences,{subset:(u===`'`?Fw.single:Fw.double)[c][l],attribute:!0}))+u),f+(d&&`=`+d))}var zw=[`<`,`&`];function Bw(e,t,n,r){return n&&n.type===`element`&&(n.tagName===`script`||n.tagName===`style`)?e.value:tw(e.value,Object.assign({},r.settings.characterReferences,{subset:zw}))}function Vw(e,t,n,r){return r.settings.allowDangerousHtml?e.value:Bw(e,t,n,r)}function Hw(e,t,n,r){return r.all(e)}var Uw=NC(`type`,{invalid:Ww,unknown:Gw,handlers:{comment:aw,doctype:ow,element:Iw,raw:Vw,root:Hw,text:Bw}});function Ww(e){throw Error("Expected node, not `"+e+"`")}function Gw(e){let t=e;throw Error("Cannot compile unknown node `"+t.type+"`")}var Kw={},qw={},Jw=[];function Yw(e,t){let n=t||Kw,r=n.quote||`"`,i=r===`"`?`'`:`"`;if(r!==`"`&&r!==`'`)throw Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:Xw,all:Zw,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||jC,characterReferences:n.characterReferences||qw,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space===`svg`?d:l,quote:r,alternative:i}.one(Array.isArray(e)?{type:`root`,children:e}:e,void 0,void 0)}function Xw(e,t,n){return Uw(e,t,n,this)}function Zw(e){let t=[],n=e&&e.children||Jw,r=-1;for(;++r<n.length;)t[r]=this.one(n[r],r,e);return t.join(``)}var Qw=/\s+/g;function $w(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class==`string`&&(e.properties.class=e.properties.class.split(Qw)),Array.isArray(e.properties.class)||(e.properties.class=[]);let n=Array.isArray(t)?t:t.split(Qw);for(let t of n)t&&!e.properties.class.includes(t)&&e.properties.class.push(t);return e}var eT=/:?lang=["']([^"']+)["']/g,tT=/(?:```|~~~)([\w-]+)/g,nT=/\\begin\{([\w-]+)\}/g,rT=/<script\s+(?:type|lang)=["']([^"']+)["']/gi;function iT(e){let t=$S(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 aT(e,t,n){let r=new Set;for(let t of e.matchAll(eT)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(tT)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(nT)){let e=t[1].toLowerCase().trim();e&&r.add(e)}for(let t of e.matchAll(rT)){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 oT=[`color`,`background-color`];function sT(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 cT(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?sT(e,t):e})):e}function lT(e,t,n,r,i=`css-vars`){let a={content:e.content,explanation:e.explanation,offset:e.offset},o=t.map(t=>uT(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&&oT.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 ox('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 uT(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t[`background-color`]=e.bgColor),e.fontStyle){e.fontStyle&Dx.Italic&&(t[`font-style`]=`italic`),e.fontStyle&Dx.Bold&&(t[`font-weight`]=`bold`);let n=[];e.fontStyle&Dx.Underline&&n.push(`underline`),e.fontStyle&Dx.Strikethrough&&n.push(`line-through`),n.length&&(t[`text-decoration`]=n.join(` `))}return t}function dT(e){return typeof e==`string`?e:Object.entries(e).map(([e,t])=>`${e}:${t}`).join(`;`)}function fT(){let e=new WeakMap;function t(t){if(!e.has(t.meta)){let n=iT(t.source);function r(e){if(typeof e==`number`){if(e<0||e>t.source.length)throw new ox(`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 ox(`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 ox(`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)}));pT(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 cT(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 ox(`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+=mT(a.children[e]),c===-1&&s.length===t&&(c=e+1),l===-1&&s.length===n&&(l=e+1);if(c===-1)throw new ox(`Failed to find start index for decoration ${JSON.stringify(i.start)}`);if(l===-1)throw new ox(`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&&$w(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 pT(e){for(let t=0;t<e.length;t++){let n=e[t];if(n.start.offset>n.end.offset)throw new ox(`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 ox(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(t.start)} intersect.`)}}}}function mT(e){return e.type===`text`?e.value:e.type===`element`?e.children.map(mT).join(``):``}var hT=[fT()];function gT(e){let t=_T(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...hT]}function _T(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 vT=[`black`,`red`,`green`,`yellow`,`blue`,`magenta`,`cyan`,`white`,`brightBlack`,`brightRed`,`brightGreen`,`brightYellow`,`brightBlue`,`brightMagenta`,`brightCyan`,`brightWhite`],yT={1:`bold`,2:`dim`,3:`italic`,4:`underline`,7:`reverse`,8:`hidden`,9:`strikethrough`};function bT(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 xT(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 ST(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)yT[r]&&t.push({type:`setDecoration`,value:yT[r]});else if(r<=29){let e=yT[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:vT[r-30]}});else if(r===38){let n=xT(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:vT[r-40]}});else if(r===48){let n=xT(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:vT[r-90+8]}}):r>=100&&r<=107&&t.push({type:`setBackgroundColor`,value:{type:`named`,name:vT[r-100+8]}})}return t}function CT(){let e=null,t=null,n=new Set;return{parse(r){let i=[],a=0;do{let o=bT(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=ST(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 wT={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 TT(e=wT){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<vT.length;e++)r.push(t(vT[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 ET=/#([0-9a-f]{3,8})/i,DT=/var\((--[\w-]+-ansi-[\w-]+)\)/,OT={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 kT(e,t,n){let r=WS(e,n),i=$S(t),a=TT(Object.fromEntries(vT.map(t=>{let n=`terminal.ansi${t[0].toUpperCase()}${t.substring(1)}`;return[t,e.colors?.[n]||OT[t]]}))),o=CT();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=GS(i,r),o=GS(o,r),n.decorations.has(`dim`)&&(i=AT(i));let s=Dx.None;return n.decorations.has(`bold`)&&(s|=Dx.Bold),n.decorations.has(`italic`)&&(s|=Dx.Italic),n.decorations.has(`underline`)&&(s|=Dx.Underline),n.decorations.has(`strikethrough`)&&(s|=Dx.Strikethrough),{content:n.value,offset:t[1],color:i,bgColor:o,fontStyle:s}}))}function AT(e){let t=e.match(ET);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(DT);return n?`var(${n[1]}-dim)`:e}function jT(e,t,n={}){let r=e.resolveLangAlias(n.lang||`text`),{theme:i=e.getLoadedThemes()[0]}=n;if(!JS(r)&&!XS(i)&&r===`ansi`){let{theme:r}=e.setTheme(i);return kT(r,t,n)}return bC(e,t,n)}function MT(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 ox("`themes` option must not be empty");let p=kC(e,t,n,jT);if(c=mC(p),l&&l!==`light-dark()`&&!f.some(e=>e.color===l))throw new ox(`\`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=>lT(e,h,u,l,d))),c&&pC(a,c);let g=f.map(e=>WS(e.theme,n));i=NT(f,m,g,u,l,`fg`,d),r=NT(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=WS(n.theme,n);a=jT(e,t,n);let l=e.getTheme(n.theme);r=GS(l.bg,s),i=GS(l.fg,s),o=l.name,c=mC(a)}else throw new ox("Invalid options, either `theme` or `themes` must be provided");return{tokens:a,fg:i,bg:r,themeName:o,rootStyle:s,grammarState:c}}function NT(e,t,n,r,i,a,o){return e.map((s,c)=>{let l=GS(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 ox('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');return`light-dark(${GS(t[r][a],n[r])||`inherit`}, ${GS(t[i][a],n[i])||`inherit`});${u}`}return l}return o===`css-vars`?u:null}).filter(e=>!!e).join(`;`)}var PT=/^\s+$/,FT=/^(\s*)(.*?)(\s*)$/;function IT(e,t,n,r={meta:{},options:n,codeToHast:(t,n)=>IT(e,t,n),codeToTokens:(t,n)=>MT(e,t,n)}){let i=t;for(let e of gT(n))i=e.preprocess?.call(r,i,n)||i;let{tokens:a,fg:o,bg:s,themeName:c,rootStyle:l,grammarState:u}=MT(e,i,n),{mergeWhitespaces:d=!0,mergeSameStyleTokens:f=!1}=n;d===!0?a=RT(a):d===`never`&&(a=zT(a)),f&&(a=BT(a));let p={...r,get source(){return i}};for(let e of gT(n))a=e.tokens?.call(p,a)||a;return LT(a,{...n,fg:o,bg:s,themeName:c,rootStyle:n.rootStyle===!1?!1:n.rootStyle??l},p,u)}function LT(e,t,n,r=mC(e)){let i=gT(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:$w,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=dT(a.htmlStyle||uT(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&&pC(m,r),m}function RT(e){return e.map(e=>{let t=[],n=``,r;return e.forEach((i,a)=>{let o=!(i.fontStyle&&(i.fontStyle&Dx.Underline||i.fontStyle&Dx.Strikethrough));o&&PT.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 zT(e){return e.map(e=>e.flatMap(e=>{if(PT.test(e.content))return e;let t=e.content.match(FT);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 BT(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=dT(e.htmlStyle||uT(e)),i=dT(n.htmlStyle||uT(n)),a=e.fontStyle&&(e.fontStyle&Dx.Underline||e.fontStyle&Dx.Strikethrough),o=n.fontStyle&&(n.fontStyle&Dx.Underline||n.fontStyle&Dx.Strikethrough);!a&&!o&&r===i?e.content+=n.content:t.push({...n})}return t})}var VT=Yw;function HT(e,t,n){let r={meta:{},options:n,codeToHast:(t,n)=>IT(e,t,n),codeToTokens:(t,n)=>MT(e,t,n)},i=VT(IT(e,t,n,r));for(let e of gT(n))i=e.postprocess?.call(r,i,n)||i;return i}async function UT(e){let t=await dC(e);return{getLastGrammarState:(...e)=>xC(t,...e),codeToTokensBase:(e,n)=>jT(t,e,n),codeToTokensWithThemes:(e,n)=>kC(t,e,n),codeToTokens:(e,n)=>MT(t,e,n),codeToHast:(e,n)=>IT(t,e,n),codeToHtml:(e,n)=>HT(t,e,n),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function WT(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,YS(n))return[];let r=t[n];if(!r)throw new ox(`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(ZS(e))return`none`;if(typeof e==`string`){let t=n[e];if(!t)throw new ox(`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 UT({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 GT(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 KT(e,t){let n=GT(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 qT=WT({langs:Ob,themes:kb,engine:()=>(0,ax.createOnigurumaEngine)(U(()=>import(`./wasm-Dck8KPgP.js`),[]))}),{codeToHtml:JT,codeToHast:YT,codeToTokens:XT,codeToTokensBase:ZT,codeToTokensWithThemes:QT,getSingletonHighlighter:$T,getLastGrammarState:eE}=KT(qT,{guessEmbeddedLanguages:aT}),tE=[`github-dark-dimmed`,`github-light`,`one-dark-pro`],nE=[`javascript`,`typescript`,`tsx`,`jsx`,`json`,`shellscript`,`bash`,`python`,`go`,`rust`,`sql`,`yaml`,`markdown`,`html`,`css`,`docker`],rE={js:`javascript`,ts:`typescript`,sh:`bash`,shell:`bash`,zsh:`bash`,py:`python`,rs:`rust`,yml:`yaml`,md:`markdown`,dockerfile:`docker`,golang:`go`},iE=null,aE=null,oE=`github-dark-dimmed`,sE=new Set(nE),cE=new Set(tE),lE=new Map,uE=600;function dE(e,t){return`${oE}::${t}::${e}`}function fE(e,t){if(lE.size>=uE){let e=lE.keys().next().value;e!==void 0&&lE.delete(e)}lE.set(e,t)}function pE(){return iE||=qT({themes:tE,langs:nE}).then(e=>(aE=e,e)),iE}function mE(e,t){let n=gE(t)||`text`,r=dE(e,n),i=lE.get(r);if(i!==void 0)return i;if(!aE||n!==`text`&&!sE.has(n))return null;try{let t=aE.codeToHtml(e,{lang:n,theme:oE});return fE(r,t),t}catch{return null}}function hE(){pE()}function gE(e){let t=(e||``).toLowerCase().trim();return rE[t]??t}async function _E(e,t){let n=await pE(),r=gE(t);if(r&&!sE.has(r))try{await n.loadLanguage(r),sE.add(r)}catch{r=`text`}r||=`text`;let i=n.codeToHtml(e,{lang:r,theme:oE});return fE(dE(e,r),i),i}function vE(){return oE}async function yE(e){let t=await pE();if(typeof e==`string`){if(!cE.has(e))try{await t.loadTheme(e),cE.add(e)}catch{return}oE=e}else{let n=e.name;if(!n)return;if(!cE.has(n))try{await t.loadTheme(e),cE.add(n)}catch{return}oE=n}}function bE(e){return e.syntax?.shikiTheme?e.syntax.shikiTheme:e.mode===`light`?`github-light`:`github-dark-dimmed`}var xE=!1;function SE(){if(xE||typeof window>`u`)return;xE=!0,window.addEventListener(Pt,e=>{let t=e.detail;t&&yE(bE(t)).then(()=>{window.dispatchEvent(new CustomEvent(`ppm:shiki-theme-change`))})});let e=Nt();e&&yE(bE(e)).then(()=>{window.dispatchEvent(new CustomEvent(`ppm:shiki-theme-change`))})}function CE(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 wE(e){if(Array.isArray(e))return e}function TE(e,t,n){return(t=PE(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function EE(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 DE(){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 OE(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 kE(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?OE(Object(n),!0).forEach(function(t){TE(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):OE(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function AE(e,t){if(e==null)return{};var n,r,i=jE(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 jE(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 ME(e,t){return wE(e)||EE(e,t)||FE(e,t)||DE()}function NE(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 PE(e){var t=NE(e,`string`);return typeof t==`symbol`?t:t+``}function FE(e,t){if(e){if(typeof e==`string`)return CE(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)?CE(e,t):void 0}}function IE(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function LE(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 RE(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?LE(Object(n),!0).forEach(function(t){IE(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):LE(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function zE(){var e=[...arguments];return function(t){return e.reduceRight(function(e,t){return t(e)},t)}}function BE(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 VE(e){return{}.toString.call(e).includes(`Object`)}function HE(e){return!Object.keys(e).length}function UE(e){return typeof e==`function`}function WE(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function GE(e,t){return VE(t)||XE(`changeType`),Object.keys(t).some(function(t){return!WE(e,t)})&&XE(`changeField`),t}function KE(e){UE(e)||XE(`selectorType`)}function qE(e){UE(e)||VE(e)||XE(`handlerType`),VE(e)&&Object.values(e).some(function(e){return!UE(e)})&&XE(`handlersType`)}function JE(e){e||XE(`initialIsRequired`),VE(e)||XE(`initialType`),HE(e)&&XE(`initialContent`)}function YE(e,t){throw Error(e[t]||e.default)}var XE=BE(YE)({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"}),ZE={changes:GE,selector:KE,handler:qE,initial:JE};function QE(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};ZE.initial(e),ZE.handler(t);var n={current:e},r=BE(tD)(n,t),i=BE(eD)(n),a=BE(ZE.changes)(e),o=BE($E)(n);function s(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(e){return e};return ZE.selector(e),e(n.current)}function c(e){zE(r,i,a,o)(e)}return[s,c]}function $E(e,t){return UE(t)?t(e.current):t}function eD(e,t){return e.current=RE(RE({},e.current),t),t}function tD(e,t,n){return UE(t)?t(e.current):Object.keys(n).forEach(function(n){return t[n]?.call(t,e.current[n])}),n}var nD={create:QE},rD={paths:{vs:`https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs`}};function iD(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 aD(e){return{}.toString.call(e).includes(`Object`)}function oD(e){return e||uD(`configIsRequired`),aD(e)||uD(`configType`),e.urls?(sD(),{paths:{vs:e.urls.monacoBase}}):e}function sD(){console.warn(lD.deprecation)}function cD(e,t){throw Error(e[t]||e.default)}var lD={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
+ `},uD=iD(cD)(lD),dD={config:oD},fD=function(){var e=[...arguments];return function(t){return e.reduceRight(function(e,t){return t(e)},t)}};function pD(e,t){return Object.keys(t).forEach(function(n){t[n]instanceof Object&&e[n]&&Object.assign(t[n],pD(e[n],t[n]))}),kE(kE({},e),t)}var mD={type:`cancelation`,msg:`operation is manually canceled`};function hD(e){var t=!1,n=new Promise(function(n,r){e.then(function(e){return t?r(mD):n(e)}),e.catch(r)});return n.cancel=function(){return t=!0},n}var gD=[`monaco`],_D=ME(nD.create({config:rD,isInitialized:!1,resolve:null,reject:null,monaco:null}),2),vD=_D[0],yD=_D[1];function bD(e){var t=dD.config(e),n=t.monaco,r=AE(t,gD);yD(function(e){return{config:pD(e.config,r),monaco:n}})}function xD(){var e=vD(function(e){return{monaco:e.monaco,isInitialized:e.isInitialized,resolve:e.resolve}});if(!e.isInitialized){if(yD({isInitialized:!0}),e.monaco)return e.resolve(e.monaco),hD(OD);if(window.monaco&&window.monaco.editor)return ED(window.monaco),e.resolve(window.monaco),hD(OD);fD(SD,wD)(TD)}return hD(OD)}function SD(e){return document.body.appendChild(e)}function CD(e){var t=document.createElement(`script`);return e&&(t.src=e),t}function wD(e){var t=vD(function(e){return{config:e.config,reject:e.reject}}),n=CD(`${t.config.paths.vs}/loader.js`);return n.onload=function(){return e()},n.onerror=t.reject,n}function TD(){var e=vD(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;ED(n),e.resolve(n)},function(t){e.reject(t)})}function ED(e){vD().monaco||yD({monaco:e})}function DD(){return vD(function(e){return e.monaco})}var OD=new Promise(function(e,t){return yD({resolve:e,reject:t})}),kD={config:bD,init:xD,__getMonacoInstance:DD},AD={wrapper:{display:`flex`,position:`relative`,textAlign:`initial`},fullWidth:{width:`100%`},hide:{display:`none`}},jD={container:{display:`flex`,height:`100%`,width:`100%`,justifyContent:`center`,alignItems:`center`}};function MD({children:e}){return X.createElement(`div`,{style:jD.container},e)}var ND=MD;function PD({width:e,height:t,isEditorReady:n,loading:r,_ref:i,className:a,wrapperProps:o}){return X.createElement(`section`,{style:{...AD.wrapper,width:e,height:t},...o},!n&&X.createElement(ND,null,r),X.createElement(`div`,{ref:i,style:{...AD.fullWidth,...!n&&AD.hide},className:a}))}var FD=(0,X.memo)(PD);function ID(e){(0,X.useEffect)(e,[])}var LD=ID;function RD(e,t,n=!0){let r=(0,X.useRef)(!0);(0,X.useEffect)(r.current||!n?()=>{r.current=!1}:e,t)}var zD=RD;function BD(){}function VD(e,t,n,r){return HD(e,r)||UD(e,t,n,r)}function HD(e,t){return e.editor.getModel(WD(e,t))}function UD(e,t,n,r){return e.editor.createModel(t,n,r?WD(e,r):void 0)}function WD(e,t){return e.Uri.parse(t)}function GD({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=BD,onMount:_=BD}){let[v,y]=(0,X.useState)(!1),[b,x]=(0,X.useState)(!0),S=(0,X.useRef)(null),C=(0,X.useRef)(null),w=(0,X.useRef)(null),T=(0,X.useRef)(_),E=(0,X.useRef)(g),D=(0,X.useRef)(!1);LD(()=>{let e=kD.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()}),zD(()=>{if(S.current&&C.current){let t=S.current.getOriginalEditor(),i=VD(C.current,e||``,r||n||`text`,a||``);i!==t.getModel()&&t.setModel(i)}},[a],v),zD(()=>{if(S.current&&C.current){let e=S.current.getModifiedEditor(),r=VD(C.current,t||``,i||n||`text`,o||``);r!==e.getModel()&&e.setModel(r)}},[o],v),zD(()=>{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),zD(()=>{S.current?.getModel()?.original.setValue(e||``)},[e],v),zD(()=>{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),zD(()=>{C.current?.editor.setTheme(l)},[l],v),zD(()=>{S.current?.updateOptions(d)},[d],v);let O=(0,X.useCallback)(()=>{if(!C.current)return;E.current(C.current);let s=VD(C.current,e||``,r||n||`text`,a||``),c=VD(C.current,t||``,i||n||`text`,o||``);S.current?.setModel({original:s,modified:c})},[n,t,i,e,r,a,o]),k=(0,X.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,X.useEffect)(()=>{v&&T.current(S.current,C.current)},[v]),(0,X.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 X.createElement(FD,{width:p,height:f,isEditorReady:v,loading:u,_ref:w,className:m,wrapperProps:h})}var KD=(0,X.memo)(GD);function qD(e){let t=(0,X.useRef)();return(0,X.useEffect)(()=>{t.current=e},[e]),t.current}var JD=qD,YD=new Map;function XD({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:_=BD,onMount:v=BD,onChange:y,onValidate:b=BD}){let[x,S]=(0,X.useState)(!1),[C,w]=(0,X.useState)(!0),T=(0,X.useRef)(null),E=(0,X.useRef)(null),D=(0,X.useRef)(null),O=(0,X.useRef)(v),k=(0,X.useRef)(_),A=(0,X.useRef)(),j=(0,X.useRef)(r),M=JD(a),ee=(0,X.useRef)(!1),N=(0,X.useRef)(!1);LD(()=>{let e=kD.init();return e.then(e=>(T.current=e)&&w(!1)).catch(e=>e?.type!==`cancelation`&&console.error(`Monaco initialization: error:`,e)),()=>E.current?F():e.cancel()}),zD(()=>{let o=VD(T.current,e||r||``,t||i||``,a||n||``);o!==E.current?.getModel()&&(d&&YD.set(M,E.current?.saveViewState()),E.current?.setModel(o),d&&E.current?.restoreViewState(YD.get(a)))},[a],x),zD(()=>{E.current?.updateOptions(l)},[l],x),zD(()=>{!E.current||r===void 0||(E.current.getOption(T.current.editor.EditorOption.readOnly)?E.current.setValue(r):r!==E.current.getValue()&&(N.current=!0,E.current.executeEdits(``,[{range:E.current.getModel().getFullModelRange(),text:r,forceMoveMarkers:!0}]),E.current.pushUndoStop(),N.current=!1))},[r],x),zD(()=>{let e=E.current?.getModel();e&&i&&T.current?.editor.setModelLanguage(e,i)},[i],x),zD(()=>{s!==void 0&&E.current?.revealLine(s)},[s],x),zD(()=>{T.current?.editor.setTheme(o)},[o],x);let P=(0,X.useCallback)(()=>{if(!(!D.current||!T.current)&&!ee.current){k.current(T.current);let c=a||n,f=VD(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(YD.get(c)),T.current.editor.setTheme(o),s!==void 0&&E.current.revealLine(s),S(!0),ee.current=!0}},[e,t,n,r,i,a,l,u,d,o,s]);(0,X.useEffect)(()=>{x&&O.current(E.current,T.current)},[x]),(0,X.useEffect)(()=>{!C&&!x&&P()},[C,x,P]),j.current=r,(0,X.useEffect)(()=>{x&&y&&(A.current?.dispose(),A.current=E.current?.onDidChangeModelContent(e=>{N.current||y(E.current.getValue(),e)}))},[x,y]),(0,X.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 F(){A.current?.dispose(),f?d&&YD.set(a,E.current.saveViewState()):E.current.getModel()?.dispose(),E.current.dispose()}return X.createElement(FD,{width:p,height:m,isEditorReady:x,loading:c,_ref:D,className:h,wrapperProps:g})}var ZD=(0,X.memo)(XD);function QD(e){return`ppm-${e.id}`}function $D(e,t){return/^#[0-9a-fA-F]{6}$/.test(e)?e+t:e}function eO(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":$D(t.accent,`33`),"editor.lineHighlightBackground":$D(t.accent,`12`),"editorWidget.background":t.bgSolid,"editorGutter.background":t.bgSolid,"editorIndentGuide.background1":$D(t.text3,`40`),"editorWhitespace.foreground":$D(t.text3,`40`),...e.editor?.colors}}var tO=null;async function nO(e){let t=QD(e);return(tO??=await kD.init()).editor.defineTheme(t,{base:e.mode===`dark`?`vs-dark`:`vs`,inherit:!0,rules:e.editor?.rules??[],colors:eO(e)}),t}function rO(){let e=W.getState();return Nt()??_n(e.themeStyle,e.themeMode,e.customThemes,e.customThemeId)}var iO=!1;function aO(){if(iO||typeof window>`u`)return;iO=!0;let e=async()=>{let e=await nO(rO());(tO??=await kD.init()).editor.setTheme(e)};window.addEventListener(Pt,()=>void e()),e()}var oO=`#3b82f6`,sO=`#f59e0b`,cO=`#ef4444`;function lO(e){return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
45
+ <rect width="32" height="32" rx="6" fill="${oO}"/>
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="${cO}"/>`:``}
48
+ </svg>`}function uO(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="${sO}"/>
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="${cO}"/>`:``}
52
+ </svg>`}var dO=e=>`data:image/svg+xml,${encodeURIComponent(e)}`,fO=[dO(lO(!1)),dO(lO(!0))],pO=[0,1,2,-1].map(e=>[dO(uO(e,!1)),dO(uO(e,!0))]),mO=pO.length;function hO(e,t=null){let n=document.getElementById(`ppm-favicon`);if(!n)return;let r=e?1:0;t===null?n.href=fO[r]:n.href=pO[(t%mO+mO)%mO][r]}function gO(e,t,n){let r=[t,n||null,`PPM`].filter(Boolean).join(` - `);return e>0?`(${e}) ${r}`:r}function _O(){let e=q(e=>e.activeProject),t=W(e=>e.deviceName),n=ys(bs),r=(0,X.useRef)(null);(0,X.useEffect)(()=>{let i=()=>Oo(Do.getState())>0,a=()=>{let n=Oo(Do.getState());document.title=gO(n,e?.name,t??void 0)};if(a(),n){let e=0;hO(i(),e),r.current=setInterval(()=>{e=(e+1)%mO,hO(i(),e)},300)}else hO(i());let o=Do.subscribe(()=>{a(),n||hO(i())});return()=>{o(),r.current&&=(clearInterval(r.current),null)}},[e?.name,t,n])}var vO=`chat`;function yO(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)===vO&&(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 bO=3,xO=2500,SO=1200;function CO(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 wO(){let e=Gt();(0,X.useEffect)(()=>{if(e)return;let t=!1,n=bO,r=null,i=()=>{r?.cancel(),r=null},a=()=>{if(r=null,t||n<=0)return;let{panels:e}=K.getState(),{mounted:i,mount:a}=vc.getState(),[s]=yO(e,i,1);s&&(a(s),n--,o(SO))},o=e=>{t||n<=0||(i(),r=CO(a,e))},s=K.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(xO);return}}});return o(xO),()=>{t=!0,i(),s()}},[e,K(e=>e.currentProject)])}function TO(e){let t=Je();return!t||/[?&]token=/.test(e)?e:`${e}${e.includes(`?`)?`&`:`?`}token=${encodeURIComponent(t)}`}var EO=3e4,DO=1e3,OO=class{ws=null;url;handlers=[];reconnectAttempts=0;reconnectTimer=null;intentionalClose=!1;pendingMessages=[];visibilityHandler=null;constructor(e){this.url=e,this.visibilityHandler=()=>{document.visibilityState===`visible`&&!this.intentionalClose&&this.ws?.readyState!==WebSocket.OPEN&&(this.reconnectTimer&&clearTimeout(this.reconnectTimer),this.reconnectTimer=null,this.reconnectAttempts=0,this.connect())},document.addEventListener(`visibilitychange`,this.visibilityHandler)}connect(){this.intentionalClose=!1,this.cleanup();let e=window.location.protocol===`https:`?`wss:`:`ws:`,t=this.url.startsWith(`ws`)?this.url:TO(this.url),n;n=t.startsWith(`ws`)?t:`${e}//${window.location.host}${t}`,this.ws=new WebSocket(n),this.ws.onopen=()=>{this.reconnectAttempts=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=>{for(let t of this.handlers)t(e)},this.ws.onclose=()=>{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.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(){let e=Math.min(DO*2**this.reconnectAttempts,EO);this.reconnectAttempts++,this.reconnectTimer=setTimeout(()=>this.connect(),e)}};async function kO(e){if(e)try{let t=await V.get(`${B(e)}/chat/sessions/running`);ys.getState().replaceProjectStreaming(e,t.map(e=>e.sessionId))}catch{}}function AO(e,t){let n=(0,X.useRef)(null),r=(0,X.useRef)(t);r.current=t,(0,X.useEffect)(()=>{if(!e)return;let t=Je(),i=new OO(`/ws/global${t?`?token=${encodeURIComponent(t)}`:``}`);n.current=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})),kO(r.current);return}if(n===`file:changed`){window.dispatchEvent(new CustomEvent(`file:changed`,{detail:t}));return}if(n===`session:unread_changed`){let e=t;Do.getState().handleUnreadChanged(e.sessionId,e.unreadCount,e.unreadType,e.projectName,e.sessionTitle,e.manual);return}if(n===`session:phase_changed`){let e=t;ys.getState().setStreaming(e.sessionId,e.phase!==`idle`,e.projectName);return}(n.startsWith(`jira:`)||n.startsWith(`tunnel:`))&&window.dispatchEvent(new CustomEvent(n,{detail:t}))}});return i.connect(),()=>{a(),i.disconnect(),n.current=null}},[e]),(0,X.useEffect)(()=>{!e||!t||(n.current?.send(JSON.stringify({type:`watch`,projectName:t})),kO(t))},[e,t])}var jO=15e3,MO=Ye((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>=jO})},markUp:()=>{e({isDown:!1,downSince:null,showOverlay:!1})}})),NO=1e4,PO=2e3;function FO(){(0,X.useEffect)(()=>{let e=!1,t,{markDown:n,markUp:r}=MO.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?PO:NO)}return t=setTimeout(i,NO),()=>clearTimeout(t)},[])}function IO(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t>=0?e.slice(t+1):e}function LO(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 RO(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 RO(a[0],t,n,r,i);let o=0,s=0;for(let e of a){let a=RO(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=LO(e,t);if(s>=0)return{tier:4,offset:s,nameLen:r,depth:i};let c=LO(e,n);return c>=0?{tier:5,offset:c,nameLen:r,depth:i}:null}function zO(e,t,n){let r=n.toLowerCase();return RO(e.toLowerCase(),IO(r),r,t.length,n.split(`/`).length)}function BO(e,t){return e.tier-t.tier||e.offset-t.offset||e.nameLen-t.nameLen||e.depth-t.depth}var VO={action:{label:`Actions`,icon:hi},file:{label:`Files`,icon:Yn},db:{label:`Database`,icon:je},fs:{label:`Filesystem`,icon:ar}};function HO({availableGroups:e,groupCounts:t,activeFilters:n,onToggle:r}){return e.length<=1?null:(0,Z.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=VO[e];if(!i)return null;let a=t[e]??0,o=n.has(e),s=i.icon;return(0,Z.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,Z.jsx)(s,{className:`size-3`}),(0,Z.jsx)(`span`,{children:i.label}),(0,Z.jsxs)(`span`,{className:`text-[10px] opacity-70`,children:[`(`,a,`)`]})]},e)})})}var UO=100,WO=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.userAgent),GO={"git-branch":lr,database:je,refresh:Ve,plus:R,terminal:li,settings:Qr,search:Yr,"file-code":Yn,globe:Le};function KO(e){return e?e.replace(/Mod\+/g,WO?`⌘`:`Ctrl+`).replace(/Alt\+/g,WO?`⌥`:`Alt+`).replace(/Shift\+/g,WO?`⇧`:`Shift+`).replace(/Meta\+/g,`⌘`).replace(/Ctrl\+/g,WO?`⌃`:`Ctrl+`):``}function qO(e){let t=[];for(let n of e)n.type===`file`&&t.push({name:n.name,path:n.path}),n.children&&t.push(...qO(n.children));return t}function JO(e){return e?e.startsWith(`/`)||e.startsWith(`~/`)||e.startsWith(`~\\`)||/^[A-Za-z]:[/\\]/.test(e):!1}function YO(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 XO=new Map;function ZO({open:e,onClose:t,initialQuery:n=``}){let[r,i]=(0,X.useState)(``),a=(0,X.useDeferredValue)(r),[o,s]=(0,X.useState)(0),[c,l]=(0,X.useState)([]),[u,d]=(0,X.useState)(!1),[f,p]=(0,X.useState)([]),[m,h]=(0,X.useState)(new Set),g=(0,X.useRef)(null),_=(0,X.useRef)(null),v=J(e=>e.openTab),y=q(e=>e.activeProject),b=wt(e=>e.fileIndex),x=wt(e=>e.indexStatus),S=wt(e=>e.loadIndex),C=wt(e=>e.tree),w=W(e=>e.setSidebarActiveTab),T=W(e=>e.sidebarCollapsed),E=W(e=>e.toggleSidebar),D=kt(e=>e.getBinding),O=jt(e=>e.contributions),k=(0,X.useCallback)(async e=>{if(XO.has(e)){l(XO.get(e));return}d(!0);try{let t=await V.get(`/api/fs/list?dir=${encodeURIComponent(e)}`);XO.set(e,t),l(t)}catch{l([])}finally{d(!1)}},[]);(0,X.useEffect)(()=>{if(!JO(r)){l([]);return}k(YO(r))},[r,k]),(0,X.useEffect)(()=>{if(JO(r)||r.trim().length<2){p([]);return}let e=setTimeout(async()=>{try{p(await V.get(`/api/db/search?q=${encodeURIComponent(r.trim())}`)??[])}catch{p([])}},300);return()=>clearTimeout(e)},[r]);let A=(0,X.useMemo)(()=>{let e=y?.name??null,n=y?{projectName:y.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:Ar,action:r(`chat`,`AI Chat`),keywords:`ai assistant claude`,group:`action`,shortcut:KO(D(`open-chat`))},{id:`new-file`,label:`New File`,icon:er,action:()=>{J.getState().openNewFile(),t()},keywords:`create untitled blank empty`,group:`action`,shortcut:KO(D(`new-file`))},{id:`new-db-query`,label:`New DB Query`,icon:je,action:()=>{J.getState().openNewFile({language:`sql`,title:`SQL Query`}),t()},keywords:`sql database query scratchpad new`,group:`action`},{id:`terminal`,label:`New Terminal`,icon:li,action:r(`terminal`,`Terminal`),keywords:`bash shell console`,group:`action`,shortcut:KO(D(`open-terminal`))},{id:`tunnels`,label:`Cloudflare Tunnels`,icon:Le,action:()=>{T&&E(),w(`tunnels`),t()},keywords:`web preview localhost port forward tunnel cloudflare url`,group:`action`},{id:`cloud-share`,label:`PPM Cloud & Share`,icon:Hn,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:je,action:r(`postgres`,`PostgreSQL`),keywords:`database pg sql query`,group:`action`},{id:`voice-input`,label:`Voice Input`,icon:jr,action:()=>{window.dispatchEvent(new CustomEvent(`toggle-voice-input`)),t()},keywords:`speech microphone dictate voice`,group:`action`,shortcut:KO(D(`voice-input`))},{id:`git-status`,label:`Git Status`,icon:ur,action:()=>{w(`git`),t()},keywords:`changes diff staged`,group:`action`,shortcut:KO(D(`open-git-status`))},{id:`compare-files`,label:`Compare Files...`,icon:Oe,group:`action`,keywords:`diff compare two files select`,shortcut:KO(D(`compare-files`)),action:()=>{let{activeTabId:e,tabs:n}=J.getState(),r=n.find(t=>t.id===e),i=r?.metadata;r?.type===`editor`&&i?.filePath&&i?.projectName&&Bo.getState().setSelection({filePath:i.filePath,projectName:i.projectName,dirtyContent:i.unsavedContent,label:Ze(i.filePath)}),window.dispatchEvent(new CustomEvent(`open-compare-picker`)),t()}},{id:`settings`,label:`Settings`,icon:Qr,action:()=>{T&&E(),w(`settings`),t()},keywords:`config preferences theme`,group:`action`,shortcut:KO(D(`open-settings`))},{id:`open-file-explorer`,label:`Open File Explorer`,icon:Sn,group:`action`,keywords:`open file explorer finder browse files folders disk drive window`,action:()=>{hd(),t()}}],a=O?.keybindings??[],o=(O?.commands??[]).map(e=>{let n=a.find(t=>t.command===e.command),r=(n?D(`ext:${n.command}`):``)||(n?WO&&n.mac?n.mac:n.key:``);return{id:`ext:${e.command}`,label:e.title,hint:e.category,icon:e.icon&&GO[e.icon]||F,group:`action`,keywords:`extension ${e.command} ${e.category??``}`,shortcut:r?KO(r):void 0,action:()=>{let n=[];y?.path&&n.push(y.path),window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:e.command,args:n}})),t()}}});return[...i,...o]},[y,v,t,w,T,E,D,O]),j=(0,X.useMemo)(()=>{let e=y?.name??null,n=y?{projectName:y.name}:void 0;return(x===`ready`?b.filter(e=>e.type===`file`):qO(C)).map(r=>({id:`file:${r.path}`,label:r.name,hint:r.path,icon:Yn,group:`file`,keywords:r.path,isIgnored:`isIgnored`in r?r.isIgnored:void 0,action:()=>{v({type:`editor`,title:r.name,projectId:e,metadata:{...n,filePath:r.path},closable:!0}),t()}}))},[x,b,C,y,v,t]),M=(0,X.useMemo)(()=>{let e=y?.name??null,n=y?{projectName:y.name}:void 0;return c.map(r=>{let i=Ze(r);return{id:`fs:${r}`,label:i,hint:r,icon:ar,group:`fs`,keywords:r,action:()=>{v({type:`editor`,title:i,projectId:e,metadata:{...n,filePath:r},closable:!0}),t()}}})},[c,y,v,t]),ee=(0,X.useMemo)(()=>f.map(e=>({id:`db:${e.connectionId}:${e.schemaName}.${e.tableName}`,label:e.tableName,hint:`${e.connectionName} (${e.connectionType===`postgres`?`PG`:`SQLite`})`,icon:je,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]),N=(0,X.useMemo)(()=>[...A,...j],[A,j]),P=(0,X.useMemo)(()=>N.map(e=>{let t=e.keywords??e.label,n=t.toLowerCase();return{cmd:e,filenameLower:IO(n),pathLower:n,labelLen:e.label.length,depth:t.split(`/`).length}}),[N]),I=(0,X.useMemo)(()=>{if(JO(a)){let e=a.lastIndexOf(`/`),t=e>=0?a.slice(e+1).toLowerCase():``;return t?M.filter(e=>{let n=e.label.toLowerCase(),r=(e.keywords??``).toLowerCase();return n.includes(t)||r.includes(t)}).slice(0,50):M.slice(0,50)}if(!a.trim())return A;let e=a.toLowerCase().replace(/^\.\.?\//,``),t=[];for(let n of P){let r=RO(e,n.filenameLower,n.pathLower,n.labelLen,n.depth);r&&t.push({cmd:n.cmd,score:r})}t.sort((e,t)=>BO(e.score,t.score));let n=t.slice(0,UO).map(e=>e.cmd);return a.trim().length>=2?[...ee,...n]:n},[P,A,M,ee,a]),te=(0,X.useMemo)(()=>{let e=new Set;for(let t of N)e.add(t.group);return f.length>0&&e.add(`db`),c.length>0&&e.add(`fs`),Array.from(e)},[N,f.length,c.length]),ne=(0,X.useMemo)(()=>{let e={};for(let t of I)e[t.group]=(e[t.group]??0)+1;return e},[I]),re=(0,X.useMemo)(()=>m.size===0?I:I.filter(e=>m.has(e.group)),[I,m]),ie=(0,X.useCallback)(e=>{h(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),s(0)},[]);(0,X.useEffect)(()=>{e&&x===`idle`&&y&&S(y.name)},[e,x,y,S]),(0,X.useEffect)(()=>{e&&(i(n||``),s(0),l([]),p([]),h(new Set),requestAnimationFrame(()=>g.current?.focus()))},[e]),(0,X.useEffect)(()=>{s(e=>Math.min(e,Math.max(re.length-1,0)))},[re.length]),(0,X.useEffect)(()=>{let e=_.current;e&&e.children[o]?.scrollIntoView({block:`nearest`})},[o]);let L=(0,X.useCallback)(()=>{r.trim()&&(v({type:`chat`,title:`AI Chat`,projectId:y?.name??null,metadata:{projectName:y?.name,pendingMessage:r.trim()},closable:!0}),t())},[r,y,v,t]);function ae(e){let n=re.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?re[o]?.action():r.trim()&&L();break;case`Escape`:e.preventDefault(),t();break}}if(!e)return null;let oe=JO(r);return(0,Z.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-end md:items-start justify-center md:pt-[20vh]`,onClick:t,children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 bg-black/50`}),(0,Z.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:ae,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2.5`,children:[(0,Z.jsx)(Yr,{className:`size-4 text-text-subtle shrink-0`}),(0,Z.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,Z.jsx)(z,{className:`size-3.5 animate-spin text-text-subtle shrink-0`}),(0,Z.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`})]}),oe&&!u&&c.length===0&&r.length<4&&(0,Z.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/)`}),!oe&&(x===`loading`||x===`idle`)&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 px-3 py-1.5 border-b border-border/50`,children:[(0,Z.jsx)(z,{className:`size-3 animate-spin text-text-subtle shrink-0`}),(0,Z.jsx)(`span`,{className:`text-[11px] text-text-subtle italic`,children:`Indexing project…`})]}),!oe&&x===`error`&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border/50`,children:[(0,Z.jsx)(`span`,{className:`text-[11px] text-text-subtle`,children:`Failed to build file index —`}),(0,Z.jsx)(`button`,{onClick:()=>y&&S(y.name),className:`text-[11px] text-primary hover:underline`,children:`retry`})]}),!oe&&(0,Z.jsx)(HO,{availableGroups:te,groupCounts:ne,activeFilters:m,onToggle:ie}),(0,Z.jsx)(`div`,{ref:_,className:`max-h-72 overflow-y-auto py-1`,children:re.length===0?u?(0,Z.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`Searching...`}):m.size>0&&I.length>0?(0,Z.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`No results in selected filters`}):r.trim()?(0,Z.jsxs)(`button`,{onClick:L,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,Z.jsx)(Ar,{className:`size-4 shrink-0 text-primary`}),(0,Z.jsxs)(`span`,{children:[`Ask AI: `,(0,Z.jsx)(`span`,{className:`text-text-primary font-medium`,children:r.trim().slice(0,60)})]})]}):(0,Z.jsx)(`p`,{className:`px-3 py-4 text-sm text-text-subtle text-center`,children:`No results`}):re.map((e,t)=>{let n=e.icon;return(0,Z.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,Z.jsx)(n,{className:`size-4 shrink-0`}),(0,Z.jsx)(`span`,{className:`truncate`,children:e.label}),e.hint&&(0,Z.jsxs)(`span`,{className:`ml-auto flex items-center gap-1.5 text-xs text-text-subtle truncate max-w-[200px]`,children:[e.connectionColor&&(0,Z.jsx)(`span`,{className:`shrink-0 size-2 rounded-full`,style:{backgroundColor:e.connectionColor}}),e.hint]}),e.shortcut&&(0,Z.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,Z.jsxs)(`div`,{className:`flex items-center justify-center gap-1.5 border-t border-border px-3 py-1.5`,children:[(0,Z.jsx)(`span`,{className:`text-[10px] text-text-subtle`,children:`Press`}),(0,Z.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,Z.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,Z.jsx)(`span`,{className:`text-[10px] text-text-subtle`,children:`to open this palette`})]})]})]})}var QO=50;function $O({open:e,onOpenChange:t,initialA:n}={}){let r=e!==void 0,[i,a]=(0,X.useState)(!1),o=r?e:i,s=e=>{r?t?.(e):a(e)},[c,l]=(0,X.useState)(n??null);(0,X.useEffect)(()=>{if(r)return;function e(){l(Bo.getState().selection),a(!0)}return window.addEventListener(`open-compare-picker`,e),()=>window.removeEventListener(`open-compare-picker`,e)},[r]);let[u,d]=(0,X.useState)(``),[f,p]=(0,X.useState)(0),[m,h]=(0,X.useState)(null),g=(0,X.useRef)(null),_=J(e=>e.tabs),v=wt(e=>e.fileIndex),y=q(e=>e.activeProject);(0,X.useEffect)(()=>{o&&(r&&l(n??null),d(``),p(0),h(null),setTimeout(()=>g.current?.focus(),50))},[o,n,r]);let b=(0,X.useMemo)(()=>{let e=_.filter(e=>e.type===`editor`&&e.metadata?.filePath).map(e=>({id:`tab:${e.id}`,path:e.metadata.filePath,label:Ze(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,X.useMemo)(()=>u.trim()?b.map(e=>{let t=zO(u,e.label,e.path);return t?{c:e,score:t}:null}).filter(e=>e!==null).sort((e,t)=>BO(e.score,t.score)).slice(0,QO).map(e=>e.c):b.slice(0,QO),[b,u]);(0,X.useEffect)(()=>{f>=x.length&&p(Math.max(0,x.length-1))},[x,f]);let S=(0,X.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 Ho({path:c.filePath,dirtyContent:c.dirtyContent},{path:e.path,dirtyContent:e.dirtyContent},y.name),Bo.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,Z.jsx)(nn,{open:o,onOpenChange:s,children:(0,Z.jsxs)(Qt,{className:`max-w-lg p-0 gap-0 overflow-hidden`,children:[(0,Z.jsx)(Xt,{className:`px-4 pt-4 pb-2`,children:(0,Z.jsxs)($t,{className:`flex items-center gap-2 text-sm`,children:[(0,Z.jsx)(Oe,{className:`size-4`}),`Compare Files`]})}),(0,Z.jsx)(`div`,{className:`px-4 pb-2`,children:c?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 text-xs bg-muted rounded px-2 py-1 w-fit max-w-full`,children:[(0,Z.jsx)(Yn,{className:`size-3.5 shrink-0`}),(0,Z.jsx)(`span`,{className:`truncate`,title:c.filePath,children:c.label}),(0,Z.jsx)(`button`,{type:`button`,onClick:()=>l(null),className:`hover:bg-surface-elevated rounded p-0.5`,"aria-label":`Clear first file`,children:(0,Z.jsx)(Ge,{className:`size-3`})})]}):(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Pick first file, then second.`})}),(0,Z.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,Z.jsx)(`div`,{className:`px-4 py-2 text-xs text-destructive border-b border-border`,children:m}),(0,Z.jsx)(`div`,{className:`max-h-[50vh] md:max-h-80 overflow-y-auto`,children:x.length===0?(0,Z.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,Z.jsxs)(`button`,{type:`button`,onClick:()=>C(e),onMouseEnter:()=>p(t),className:G(`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,Z.jsx)(Yn,{className:`size-3.5 shrink-0 text-text-secondary`}),(0,Z.jsx)(`span`,{className:`truncate`,children:e.label}),(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground truncate ml-auto`,title:e.path,children:e.source===`tab`?`open`:e.path})]},e.id))})]})})}function ek(){let e=am(),t=Gt(),[n,r]=(0,X.useState)(!1),i=e.step.k!==`hidden`&&!n;if(!i)return null;let a=()=>r(!0);return t?(0,Z.jsx)(on,{open:i,onClose:a,zIndex:45,children:(0,Z.jsx)(`div`,{className:`px-4 pb-4`,children:(0,Z.jsx)(um,{step:e.step,t:e})})}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 z-[45] bg-black/40`,onClick:a}),(0,Z.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,Z.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,Z.jsx)(Ge,{className:`size-4`})}),(0,Z.jsx)(`div`,{className:`pr-8`,children:(0,Z.jsx)(um,{step:e.step,t:e})})]})]})}var tk=Ye((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})}})),nk={scale:1,x:0,y:0,rotation:0,flipX:!1,flipY:!1},rk=.1,ik=20,ak=2.5,ok=(e,t,n)=>Math.min(n,Math.max(t,e));function sk(e){return e.deltaMode===0?e.deltaX===0?Number.isInteger(e.deltaY)&&Math.abs(e.deltaY)>=40:!1:!0}function ck(){let e=(0,X.useRef)(null),t=(0,X.useRef)(null),n=(0,X.useRef)({...nk}),r=(0,X.useRef)(null),[i,a]=(0,X.useState)(100),[o,s]=(0,X.useState)(0),c=(0,X.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,X.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,X.useCallback)(()=>{a(Math.round(n.current.scale*100)),s(n.current.rotation)},[]),d=(0,X.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,X.useCallback)((e=!1)=>{let{maxX:t,maxY:r}=l();n.current.x=ok(n.current.x,-t,t),n.current.y=ok(n.current.y,-r,r),d(e)},[d,l]),p=(0,X.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=ok(t,rk,ik),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,X.useCallback)(()=>{n.current={...nk},d(!0)},[d]),h=(0,X.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,X.useCallback)(()=>{let{dw:e,natural:t}=c();e>0&&t>0&&p(t/e,void 0,void 0,!0)},[c,p]),_=(0,X.useCallback)(e=>{n.current.rotation=((n.current.rotation+e)%360+360)%360,h()},[h]),v=(0,X.useCallback)(e=>{e===`x`?n.current.flipX=!n.current.flipX:n.current.flipY=!n.current.flipY,d(!0)},[d]),y=(0,X.useCallback)(e=>p(n.current.scale*e,void 0,void 0,!0),[p]);return Cy({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||sk(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(ak,e.clientX,e.clientY,!0)}},{target:e,drag:{from:()=>[n.current.x,n.current.y],filterTaps:!0,pointer:{touch:!0}},pinch:{scaleBounds:{min:rk,max:ik},rubberband:!0},eventOptions:{passive:!1}}),(0,X.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 lk(){let e=tk(e=>e.src);return e?(0,Z.jsx)(uk,{},e):null}function uk(){let{src:e,alt:t,images:n,index:r,close:i,go:a}=tk(),{containerRef:o,imageRef:s,zoomPercent:c,rotation:l,zoomBy:u,reset:d,fit:f,actualSize:p,rotate:m,flip:h}=ck(),[g,_]=(0,X.useState)(!1),v=Yt();(0,X.useEffect)(()=>{d()},[d]);let y=(0,X.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,X.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 qt(e)&&(_(!0),setTimeout(()=>_(!1),1500))};return(0,Z.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,Z.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,Z.jsx)(Ge,{className:`size-5`})}),x&&(0,Z.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,Z.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,Z.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,Z.jsxs)(dk,{children:[x&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(pk,{onClick:()=>a(-1),disabled:r===0,label:`Previous image (←)`,children:(0,Z.jsx)(Nn,{className:`size-5`})}),(0,Z.jsx)(pk,{onClick:()=>a(1),disabled:r===n.length-1,label:`Next image (→)`,children:(0,Z.jsx)(Ce,{className:`size-5`})}),(0,Z.jsx)(fk,{})]}),(0,Z.jsx)(pk,{onClick:()=>u(.8),label:`Zoom out (-)`,children:(0,Z.jsx)(Nr,{className:`size-5`})}),(0,Z.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,Z.jsx)(pk,{onClick:()=>u(1.25),label:`Zoom in (+)`,children:(0,Z.jsx)(R,{className:`size-5`})}),(0,Z.jsx)(pk,{onClick:f,label:`Fit to screen (0)`,children:(0,Z.jsx)(Or,{className:`size-5`})}),(0,Z.jsx)(pk,{onClick:p,label:`Actual size (1)`,children:(0,Z.jsx)(Jr,{className:`size-5`})}),(0,Z.jsx)(fk,{}),(0,Z.jsx)(pk,{onClick:()=>m(-90),label:`Rotate left (Shift+R)`,active:l!==0,children:(0,Z.jsx)(He,{className:`size-5`})}),(0,Z.jsx)(pk,{onClick:()=>m(90),label:`Rotate right (R)`,active:l!==0,children:(0,Z.jsx)(qr,{className:`size-5`})}),(0,Z.jsx)(pk,{onClick:()=>h(`x`),label:`Flip horizontally (H)`,children:(0,Z.jsx)(ni,{className:`size-5`})}),(0,Z.jsx)(pk,{onClick:()=>h(`y`),label:`Flip vertically (V)`,children:(0,Z.jsx)(ri,{className:`size-5`})}),(0,Z.jsx)(fk,{}),(0,Z.jsx)(pk,{onClick:()=>pc(e,b),label:`Download`,children:(0,Z.jsx)(Me,{className:`size-5`})}),(0,Z.jsx)(pk,{onClick:S,disabled:!v,label:v?`Copy image`:`Copying images needs an HTTPS or localhost address`,children:g?(0,Z.jsx)(me,{className:`size-5 text-green-400`}):(0,Z.jsx)(Ae,{className:`size-5`})})]})]})}function dk({children:e}){return(0,Z.jsx)(`div`,{className:`flex shrink-0 justify-center px-2 pb-[max(0.75rem,env(safe-area-inset-bottom))] pt-2`,children:(0,Z.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 fk(){return(0,Z.jsx)(`span`,{className:`mx-1 h-6 w-px bg-white/20`,"aria-hidden":!0})}function pk({onClick:e,label:t,children:n,disabled:r,active:i}){return(0,Z.jsx)(`button`,{type:`button`,onClick:e,disabled:r,title:t,"aria-label":t,className:G(`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 mk=Ye(e=>({svg:null,open:t=>e({svg:t}),close:()=>e({svg:null})})),hk=.25,gk=4,_k=.25;function vk(){let{svg:e,close:t}=mk(),n=(0,X.useRef)(null),[r,i]=(0,X.useState)(1),[a,o]=(0,X.useState)({x:0,y:0}),s=(0,X.useRef)(!1),c=(0,X.useRef)({x:0,y:0});(0,X.useEffect)(()=>{e&&(i(1),o({x:0,y:0}))},[e]);let l=(0,X.useCallback)(e=>{e.key===`Escape`&&t(),(e.key===`=`||e.key===`+`)&&i(e=>Math.min(gk,e+_k)),e.key===`-`&&i(e=>Math.max(hk,e-_k)),e.key===`0`&&(i(1),o({x:0,y:0}))},[t]);(0,X.useEffect)(()=>{if(e)return document.addEventListener(`keydown`,l),()=>document.removeEventListener(`keydown`,l)},[e,l]);let u=(0,X.useCallback)(e=>{e.preventDefault();let t=e.deltaY>0?-_k:_k;i(e=>Math.min(gk,Math.max(hk,e+t)))},[]),d=(0,X.useCallback)(e=>{e.button===0&&(s.current=!0,c.current={x:e.clientX,y:e.clientY},e.target.setPointerCapture(e.pointerId))},[]),f=(0,X.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,X.useCallback)(()=>{s.current=!1},[]);return e?(0,Z.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,Z.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-2 bg-black/40`,onClick:e=>e.stopPropagation(),children:[(0,Z.jsxs)(`span`,{className:`text-sm text-white/70`,children:[Math.round(r*100),`% — Scroll to zoom, drag to pan, 0 to reset`]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsx)(`button`,{onClick:()=>i(e=>Math.max(hk,e-_k)),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,Z.jsx)(_i,{className:`size-4`})}),(0,Z.jsx)(`button`,{onClick:()=>i(e=>Math.min(gk,e+_k)),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,Z.jsx)(gi,{className:`size-4`})}),(0,Z.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,Z.jsx)(He,{className:`size-4`})}),(0,Z.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,Z.jsx)(Ge,{className:`size-5`})})]})]}),(0,Z.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,Z.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,Z.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 yk=new Map,bk=Ye((e,t)=>({shellsBySession:{},panelShellId:null,setSessionShells:(t,n)=>e(e=>({shellsBySession:{...e.shellsBySession,[t]:n}})),retainSession:e=>{yk.set(e,(yk.get(e)??0)+1)},releaseSession:t=>{let n=(yk.get(t)??1)-1;if(n>0){yk.set(t,n);return}yk.delete(t),e(e=>{let n={...e.shellsBySession};return delete n[t],{shellsBySession:n}})},findByOutput:e=>{if(!e)return;let n=Ze(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})})),xk=1500,Sk=5e5;function Ck(){let e=bk(e=>e.panelShellId),t=bk(e=>e.getShell),n=bk(e=>e.closePanel),r=e?t(e):void 0,[i,a]=(0,X.useState)(``),[o,s]=(0,X.useState)(null),[c,l]=(0,X.useState)(!1),u=(0,X.useRef)(null),d=r?.outputPath,f=r?.status,p=(0,X.useCallback)(async()=>{if(d)try{let e=(await V.get(`/api/fs/read?path=${encodeURIComponent(d)}`)).content??``;a(e.length>Sk?e.slice(-Sk):e),s(null)}catch(e){s(e.message)}finally{l(!1)}},[d]);return(0,X.useEffect)(()=>{if(!d||(l(!0),a(``),p(),f!==`running`))return;let e=setInterval(p,xk);return()=>clearInterval(e)},[d,f,p]),(0,X.useEffect)(()=>{u.current&&(u.current.scrollTop=u.current.scrollHeight)},[i]),(0,X.useEffect)(()=>{if(!e)return;let t=e=>{e.key===`Escape`&&n()};return document.addEventListener(`keydown`,t),()=>document.removeEventListener(`keydown`,t)},[e,n]),e?(0,Z.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,Z.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,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-4 py-3 border-b border-border`,children:[(0,Z.jsx)(ii,{className:`size-4 shrink-0 text-text-secondary`}),(0,Z.jsx)(`span`,{className:`flex-1 truncate text-sm font-mono text-text-primary`,title:r?.command,children:r?.command||`Background command`}),f===`running`&&(0,Z.jsxs)(`span`,{className:`flex items-center gap-1 text-[11px] text-emerald-500`,children:[(0,Z.jsx)(z,{className:`size-3 animate-spin`}),` live`]}),f===`stopping`&&(0,Z.jsx)(`span`,{className:`text-[11px] text-warning`,children:`stopping…`}),f===`stopped`&&(0,Z.jsx)(`span`,{className:`text-[11px] text-text-subtle`,children:`stopped`}),(0,Z.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,Z.jsx)(Ge,{className:`size-5`})})]}),(0,Z.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 wk=`https://cloud.ppm.sh`;function Tk(){let e=window.location.hostname;return e.endsWith(`.trycloudflare.com`)||e===nm()}function Ek(){let e=nm();return!!e&&window.location.hostname===e}function Dk(){let e=MO(e=>e.showOverlay),[t,n]=(0,X.useState)(!1);if(!e)return null;let r=Tk(),i=Ek(),a=Yh();async function o(){n(!0);try{if((await fetch(`/api/health`,{cache:`no-store`})).ok){if(MO.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,Z.jsx)(`div`,{className:`fixed inset-0 z-[200] bg-background/95 backdrop-blur-sm flex items-center justify-center p-4`,children:(0,Z.jsxs)(`div`,{className:`max-w-sm w-full text-center space-y-6`,children:[(0,Z.jsx)(`div`,{className:`flex justify-center`,children:(0,Z.jsx)(`div`,{className:`rounded-full bg-destructive/10 p-4`,children:(0,Z.jsx)(r?mi:Xr,{className:`h-10 w-10 text-destructive`})})}),(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(`h2`,{className:`text-xl font-semibold text-foreground`,children:i?`Domain Not Responding`:r?`Connection Lost`:`Server Unreachable`}),(0,Z.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,Z.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[r&&a&&(0,Z.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,Z.jsx)(vr,{className:`h-4 w-4`}),`Open on local network`]}),r&&(0,Z.jsx)(`a`,{href:wk,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,Z.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,Z.jsx)(Ve,{className:`h-4 w-4 ${t?`animate-spin`:``}`}),t?`Retrying…`:`Retry Connection`]})]}),!r&&(0,Z.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`If the server was stopped, run `,(0,Z.jsx)(`code`,{className:`bg-muted px-1 py-0.5 rounded text-[11px]`,children:`ppm start`}),` to restart it.`]})]})})}function Ok(){let e=jt(e=>e.quickPick),t=jt(e=>e.resolveQuickPick);return e?(0,Z.jsx)(kk,{items:e.items,options:e.options,onSelect:e=>t(e),onCancel:()=>t(void 0)}):null}function kk({items:e,options:t,onSelect:n,onCancel:r}){let[i,a]=(0,X.useState)(``),[o,s]=(0,X.useState)(0),[c,l]=(0,X.useState)(()=>{let t=new Set;return e.forEach((e,n)=>{e.picked&&t.add(n)}),t}),u=(0,X.useRef)(null),d=(0,X.useRef)(null),f=t.canPickMany??!1;(0,X.useEffect)(()=>{requestAnimationFrame(()=>u.current?.focus())},[]);let p=(0,X.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,X.useEffect)(()=>{s(e=>Math.min(e,Math.max(p.length-1,0)))},[p.length]),(0,X.useEffect)(()=>{(d.current?.children[o])?.scrollIntoView({block:`nearest`})},[o]);let m=(0,X.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,Z.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-end md:items-start justify-center md:pt-[20vh]`,onClick:r,children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 bg-black/50`}),(0,Z.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,Z.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2.5`,children:[(0,Z.jsx)(Yr,{className:`size-4 text-text-subtle shrink-0`}),(0,Z.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,Z.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,Z.jsx)(`div`,{ref:d,className:`max-h-72 overflow-y-auto py-1`,children:p.length===0?(0,Z.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,Z.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:G(`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,Z.jsx)(`span`,{className:G(`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,Z.jsx)(me,{className:`size-3`})}),(0,Z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,Z.jsx)(`div`,{className:`truncate`,children:e.label}),e.description&&(0,Z.jsx)(`span`,{className:`text-xs text-text-subtle ml-2`,children:e.description}),e.detail&&(0,Z.jsx)(`div`,{className:`text-xs text-text-subtle truncate mt-0.5`,children:e.detail})]})]},t))}),f&&(0,Z.jsxs)(`div`,{className:`flex items-center justify-between border-t border-border px-3 py-1.5`,children:[(0,Z.jsxs)(`span`,{className:`text-[10px] text-text-subtle`,children:[c.size,` selected`]}),(0,Z.jsx)(`button`,{onClick:m,className:`text-xs text-primary hover:text-primary/80 font-medium`,children:`Confirm`})]})]})]})}function Ak(){let e=jt(e=>e.inputBox),t=jt(e=>e.resolveInputBox);return e?(0,Z.jsx)(jk,{options:e.options,onConfirm:e=>t(e),onCancel:()=>t(void 0)}):null}function jk({options:e,onConfirm:t,onCancel:n}){let[r,i]=(0,X.useState)(e.value??``),a=(0,X.useRef)(null);(0,X.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,Z.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-end md:items-start justify-center md:pt-[20vh]`,onClick:n,children:[(0,Z.jsx)(`div`,{className:`fixed inset-0 bg-black/50`}),(0,Z.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,Z.jsx)(`div`,{className:`px-3 pt-3 pb-1 text-sm text-text-primary`,children:e.prompt}),(0,Z.jsx)(`div`,{className:`flex items-center gap-2 px-3 py-2.5`,children:(0,Z.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,Z.jsxs)(`div`,{className:`flex items-center justify-end gap-2 border-t border-border px-3 py-2`,children:[(0,Z.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,Z.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 Mk=new Set;function Nk(e,t){return`${e}:${t??``}`}var Pk=new Map,Fk=15e3;function Ik(e,t){let n=Date.now();for(let[e,t]of Pk)n-t>Fk&&Pk.delete(e);if(Pk.delete(`${e}:${t??``}`)||t&&Pk.delete(`${e}:`))return!0;if(!t){for(let t of Pk.keys())if(t.startsWith(`${e}:`))return Pk.delete(t),!0}return!1}var Lk=new Set;function Rk(e=!0){let t=(0,X.useRef)(null),n=(0,X.useCallback)(e=>{t.current?.send(JSON.stringify(e))},[]);return(0,X.useEffect)(()=>{if(!e)return;let r=Je(),i=new OO(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=jt.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]||H.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`?H.error:t.level===`warn`?H.warning:H.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=Ik(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=K.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)J.getState().updateTab(c.id,{title:t.title,metadata:{...c.metadata,viewType:e,panelId:t.panelId,extensionId:t.extensionId,...t.projectName&&{projectName:t.projectName}}}),n&&!Lk.has(e)&&J.getState().setActiveTab(c.id),Lk.delete(e);else if(n&&!Mk.has(Nk(e,t.projectName))){let n=J.getState().currentProject,r=t.projectName??n??void 0;J.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`:J.getState().openTab({type:t.tabType,title:t.title,projectId:t.projectId??null,closable:t.closable??!0,metadata:t.metadata});break;case`project:switch`:J.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 Mk)e.startsWith(`${a}:`)&&Mk.delete(e);let o=Array.isArray(n)&&typeof n[0]==`string`?n[0]:``;Pk.set(`${a}:${o}`,Date.now()),r?Lk.add(a):Lk.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=Nk(n.replace(/\.view$/,``),r);Mk.add(e),setTimeout(()=>Mk.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 zk(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 Bk(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 Vk({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,Z.jsxs)(`div`,{className:`flex flex-col gap-1 px-3 py-2`,"data-testid":`upload-row`,"data-state":e.state,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Z.jsx)(`p`,{className:`truncate text-sm text-text`,children:e.name}),i&&(0,Z.jsx)(`p`,{className:`truncate text-xs text-text-2`,children:e.relativePath})]}),(0,Z.jsx)(`span`,{className:`shrink-0 text-xs text-text-2`,children:Bk(e.size)}),r?(0,Z.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,Z.jsx)(Ge,{className:`size-4 text-text-2`})}):(0,Z.jsxs)(`span`,{className:`flex size-11 shrink-0 items-center justify-center`,"aria-label":e.state,children:[e.state===`done`&&(0,Z.jsx)(me,{className:`size-4 text-success`}),e.state===`skipped`&&(0,Z.jsx)(`span`,{className:`text-xs text-text-2`,children:`Skipped`}),(e.state===`failed`||e.state===`cancelled`)&&(0,Z.jsx)(We,{className:`size-4 text-destructive`})]})]}),r&&(0,Z.jsx)(`div`,{className:`h-1 w-full overflow-hidden rounded-full bg-surface-elevated`,children:(0,Z.jsx)(`div`,{className:G(`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,Z.jsx)(`p`,{className:`text-xs text-destructive`,children:e.state===`cancelled`?`Cancelled`:e.errorMessage??`Upload failed`})]})}function Hk(e){return`${(e/(1024*1024)).toFixed(1)} MB`}function Uk({batch:e}){let t=wd(e=>e.cancelItem),n=wd(e=>e.cancelBatch),r=wd(e=>e.dismissBatch),i=zk(e.items),a=e.settled,o=i.bytesTotal>0?Math.round(i.bytesLoaded/i.bytesTotal*100):0;return(0,Z.jsxs)(`div`,{className:`w-full overflow-hidden rounded-lg border border-border bg-panel shadow-lg`,"data-testid":`upload-batch-card`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2`,children:[(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Z.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,Z.jsxs)(`p`,{className:`truncate text-xs text-text-2`,children:[Hk(i.bytesLoaded),` / `,Hk(i.bytesTotal)]})]}),a?(0,Z.jsx)(Y,{variant:`ghost`,size:`sm`,className:`h-11 shrink-0`,onClick:()=>r(e.id),children:`Close`}):(0,Z.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,Z.jsx)(Ge,{className:`size-4 text-text-2`})})]}),(0,Z.jsx)(`div`,{className:`max-h-64 divide-y divide-border overflow-y-auto`,children:e.items.map(n=>(0,Z.jsx)(Vk,{item:n,onCancel:()=>t(e.id,n.id)},n.id))})]})}function Wk(){return wd(rn(e=>e.order.map(t=>e.batches[t]).filter(e=>e!=null)))}function Gk(){let e=Gt(),t=Wk(),[n,r]=(0,X.useState)(!1);if(t.length===0)return null;if(!e)return(0,Z.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,Z.jsx)(Uk,{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,Z.jsxs)(Z.Fragment,{children:[(0,Z.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,Z.jsx)(on,{open:n,onClose:()=>r(!1),className:`max-h-[70vh] overflow-y-auto p-2`,children:(0,Z.jsx)(`div`,{className:`flex flex-col gap-2 px-2 pb-2`,children:t.map(e=>(0,Z.jsx)(Uk,{batch:e},e.id))})})]})}var Kk=(0,X.lazy)(()=>U(()=>import(`./mobile-explorer-sheet-BzjlS1Xn.js`).then(e=>({default:e.MobileExplorerSheet})),__vite__mapDeps([210,1,2,3,4,104,7,8,89,43,31,32,33,17,34,35,9,36,52,53,90,37,38,56,57,13,15,60,14,78,92,16,59,18,51,20,26,105,61,22]))),qk=(0,X.lazy)(()=>U(()=>import(`./team-member-sheet-Bu2wG1sm.js`).then(e=>({default:e.TeamMemberSheet})),__vite__mapDeps([211,1,2,3,4,57,8,58,15,14,59,16,7,17])));function Jk(){let[e,t]=(0,X.useState)(`checking`),n=Gt(),[r,i]=(0,X.useState)(!1),[a,o]=(0,X.useState)(),[s,c]=(0,X.useState)(!1);(0,X.useEffect)(()=>{let e=()=>{o(`settings`),i(!0)};return window.addEventListener(`open-mobile-settings`,e),()=>window.removeEventListener(`open-mobile-settings`,e)},[]);let[l,u]=(0,X.useState)(()=>new Set([`__global__`]));_b(),(0,X.useEffect)(()=>{SE(),hE(),aO()},[]);let d=W(e=>e.deviceName),f=q(e=>e.fetchProjects),p=W(e=>e.fetchServerInfo),m=q(e=>e.activeProject),h=(0,X.useRef)(Ym());(0,X.useEffect)(()=>{p()},[p,e===`authenticated`]),(0,X.useEffect)(()=>{async function e(){let e=Je();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()},[]),th();let{paletteOpen:g,paletteInitialQuery:_,closePalette:v}=vs();_O(),FO(),Rk(e===`authenticated`),AO(e===`authenticated`,m?.name),wO(),(0,X.useEffect)(()=>{if(e!==`authenticated`)return;let t=e=>{e.preventDefault()};return window.addEventListener(`beforeunload`,t),()=>window.removeEventListener(`beforeunload`,t)},[e]),(0,X.useEffect)(()=>{e===`authenticated`&&(U(async()=>{let{useKeybindingsStore:e}=await import(`./keybindings-store-d54pv2NK.js`);return{useKeybindingsStore:e}},__vite__mapDeps([212,3,1,4,13,94,15])).then(({useKeybindingsStore:e})=>{e.getState().loadFromServer()}),q.getState().hydrateUiPrefs())},[e]),(0,X.useEffect)(()=>{e===`authenticated`&&f().then(async()=>{let e=h.current,{projects:t,customOrder:n}=q.getState();if(t.length===0)return;let r=e.projectName?t.find(t=>t.name===e.projectName):void 0;if(r||=_t(t,n)[0],r&&(await ct(r.name),q.getState().setActiveProject(r),J.getState().switchProject(r.name),e.tabType&&eh(e.tabType,e.tabIdentifier,r.name),e.openChat)){eh(`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,X.useEffect)(()=>{let e=m?.name??`__global__`,t=!1;return(async()=>{e!==`__global__`&&!localStorage.getItem(`ppm-panels-${e}`)&&(await ct(e),t)||J.getState().switchProject(e)})(),()=>{t=!0}},[m?.name]),(0,X.useEffect)(()=>{e!==`authenticated`||!m?.name||U(async()=>{let{useNotificationStore:e}=await import(`./notification-store-C7UBqxYP.js`);return{useNotificationStore:e}},__vite__mapDeps([213,3,1,4,13])).then(({useNotificationStore:e})=>{e.getState().loadFromServer(m.name)})},[e,m?.name]),(0,X.useEffect)(()=>{let e=m?.name??`__global__`;u(t=>t.has(e)?t:new Set([...t,e]))},[m?.name]),(0,X.useEffect)(()=>{e===`authenticated`&&!m&&J.getState().switchProject(`__global__`)},[e,m]);let y=(0,X.useCallback)(()=>{t(`authenticated`)},[]);if(e===`checking`)return(0,Z.jsx)(`div`,{className:`app-backdrop min-h-dvh flex items-center justify-center`,children:(0,Z.jsx)(`div`,{className:`animate-pulse text-text-secondary text-sm`,children:`Loading...`})});if(e===`unauthenticated`)return(0,Z.jsx)(gb,{onSuccess:y});let b=m?.name??`__global__`;return(0,Z.jsx)(bi,{children:(0,Z.jsxs)(`div`,{className:`app-backdrop h-dvh flex flex-col text-foreground overflow-hidden relative`,children:[(0,Z.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,Z.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,Z.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,Z.jsxs)(`div`,{className:`flex flex-1 overflow-hidden`,children:[(0,Z.jsx)(cg,{}),(0,Z.jsxs)(`div`,{className:`relative flex-1 flex flex-col overflow-hidden`,children:[[...l].map(e=>(0,Z.jsx)(`div`,{className:G(`flex-1 overflow-hidden pb-12 md:pb-0`,b!==e&&`hidden`),children:(0,Z.jsx)(ll,{projectName:e})},e)),(0,Z.jsx)(Pc,{}),(0,Z.jsx)(i_,{}),(0,Z.jsx)(Hy,{})]})]}),(0,Z.jsx)(Jy,{onMenuPress:()=>i(!0),onProjectsPress:()=>c(!0)}),(0,Z.jsx)(nb,{isOpen:r,onClose:()=>{i(!1),o(void 0)},initialTab:a}),(0,Z.jsx)(rb,{isOpen:s,onClose:()=>c(!1)}),(0,Z.jsx)(ZO,{open:g,onClose:v,initialQuery:_}),(0,Z.jsx)($O,{}),(0,Z.jsx)(X.Suspense,{fallback:null,children:(0,Z.jsx)(Kk,{})}),(0,Z.jsx)(X.Suspense,{fallback:null,children:(0,Z.jsx)(qk,{})}),(0,Z.jsx)(db,{}),(0,Z.jsx)(ek,{}),(0,Z.jsx)(lk,{}),(0,Z.jsx)(vk,{}),(0,Z.jsx)(Ck,{}),(0,Z.jsx)(Ok,{}),(0,Z.jsx)(Ak,{}),(0,Z.jsx)(Dk,{}),(0,Z.jsx)(Gk,{}),(0,Z.jsx)(yi,{position:n?`top-center`:`bottom-left`,closeButton:!0,toastOptions:{className:`bg-surface border-border text-foreground`}})]})})}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}}}(0,vi.createRoot)(document.getElementById(`root`)).render((0,Z.jsx)(X.StrictMode,{children:(0,Z.jsx)(Jk,{})}));export{wu as $,Hr as $t,Dp as A,En as An,jo as At,Nd as B,mi as Bt,Pm as C,zn as Cn,dc as Ct,Am as D,jn as Dn,ys as Dt,Lm as E,Nn as En,As as Et,Df as F,Oo as Ft,pd as G,si as Gt,bd as H,ui as Ht,Jd as I,Do as It,Ku as J,ei as Jt,dd as K,oi as Kt,Bd as L,yo as Lt,up as M,Eo as Mt,dp as N,ko as Nt,mm as O,kn as On,_s as Ot,Nf as P,Ao as Pt,ku as Q,qr as Qt,zd as R,vo as Rt,Rm as S,Bn as Sn,Tc as St,Nm as T,In as Tn,rc as Tt,gd as U,li as Ut,Ad as V,fi as Vt,fd as W,ci as Wt,Ru as X,Zr as Xt,zu as Y,Qr as Yt,Iu as Z,Yr as Zt,Vm as _,nr as _n,Yc as _t,TO as a,Er as an,Cu as at,Om as b,Jn as bn,Zc as bt,KD as c,yr as cn,Ql as ct,_E as d,pr as dn,Vc as dt,Vr as en,Du as et,NC as f,ur as fn,Wc as ft,tg as g,rr as gn,qc as gt,Mg as h,ir as hn,Kc as ht,OO as i,Or as in,yu as it,hp as j,wo as jt,jp as k,On as kn,Po as kt,vE as l,vr as ln,Hl as lt,w_ as m,or as mn,Jc as mt,mk as n,jr as nn,Tu as nt,QD as o,wr as on,eu as ot,jC as p,cr as pn,Gc as pt,ld as q,ii as qt,tk as r,Ar as rn,Au as rt,ZD as s,br as sn,tu as st,bk as t,Mr as tn,Eu as tt,mE as u,_r as un,Fl as ut,Im as v,er as vn,Xc as vt,Mm as w,Ln as wn,pc as wt,zm as x,Hn as xn,Uc as xt,jm as y,Yn as yn,Qc as yt,Pd as z,hi as zt};