conductor-oss 0.57.6 → 0.58.0

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 (581) hide show
  1. package/README.md +1 -1
  2. package/node_modules/@conductor-oss/core/dist/config.js +4 -4
  3. package/node_modules/@conductor-oss/core/dist/config.js.map +1 -1
  4. package/node_modules/@conductor-oss/core/dist/types.d.ts +1 -1
  5. package/node_modules/@conductor-oss/core/dist/types.js +1 -1
  6. package/package.json +5 -5
  7. package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
  8. package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +5 -6
  9. package/web/.next/standalone/packages/web/.next/build-manifest.json +3 -3
  10. package/web/.next/standalone/packages/web/.next/prerender-manifest.json +3 -3
  11. package/web/.next/standalone/packages/web/.next/react-loadable-manifest.json +12 -12
  12. package/web/.next/standalone/packages/web/.next/routes-manifest.json +8 -16
  13. package/web/.next/standalone/packages/web/.next/server/app/__clerk/[[...path]]/route.js +1 -1
  14. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page.js +3 -3
  15. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  16. package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +1 -1
  17. package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
  18. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  19. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  20. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  21. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  22. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  23. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  24. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js +2 -2
  25. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  26. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  27. package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js +1 -1
  28. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js +1 -1
  29. package/web/.next/standalone/packages/web/.next/server/app/api/app-update/route.js +1 -1
  30. package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js +1 -1
  31. package/web/.next/standalone/packages/web/.next/server/app/api/auth/profile/route.js +1 -1
  32. package/web/.next/standalone/packages/web/.next/server/app/api/boards/comments/route.js +1 -1
  33. package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js +1 -1
  34. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/bridges/[bridgeId]/route.js +1 -1
  35. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/bridges/route.js +1 -1
  36. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/app-update/route.js +1 -1
  37. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/repair/route.js +1 -1
  38. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/route.js +1 -1
  39. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/service-restart/route.js +1 -1
  40. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/claims/complete/route.js +1 -1
  41. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/code/route.js +1 -1
  42. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/route.js +1 -1
  43. package/web/.next/standalone/packages/web/.next/server/app/api/bridges/route.js +1 -1
  44. package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js +1 -1
  45. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/open/route.js +1 -1
  46. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js +1 -1
  47. package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js +1 -1
  48. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route.js +1 -1
  49. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js +1 -1
  50. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route.js +1 -1
  51. package/web/.next/standalone/packages/web/.next/server/app/api/github/projects/route.js +1 -1
  52. package/web/.next/standalone/packages/web/.next/server/app/api/github/projects/sync/route.js +1 -1
  53. package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js +1 -1
  54. package/web/.next/standalone/packages/web/.next/server/app/api/github/webhook/route.js +1 -1
  55. package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js +1 -1
  56. package/web/.next/standalone/packages/web/.next/server/app/api/health/sessions/route.js +1 -1
  57. package/web/.next/standalone/packages/web/.next/server/app/api/notifications/route.js +1 -1
  58. package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js +1 -1
  59. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/bindings/route.js +1 -1
  60. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/feed/route.js +1 -1
  61. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/feed/stream/route.js +1 -1
  62. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/integration/route.js +1 -1
  63. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/interrupt/route.js +1 -1
  64. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/preferences/route.js +1 -1
  65. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/route.js +1 -1
  66. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/send/route.js +1 -1
  67. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route.js +1 -1
  68. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/[task]/route.js +1 -1
  69. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/route.js +1 -1
  70. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatchers/route.js +1 -1
  71. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/open/route.js +1 -1
  72. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/route.js +1 -1
  73. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/setup/route.js +1 -1
  74. package/web/.next/standalone/packages/web/.next/server/app/api/projects/route.js +1 -1
  75. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route.js +1 -1
  76. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js +1 -1
  77. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/actions/route.js +1 -1
  78. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route.js +1 -1
  79. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js +1 -1
  80. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js +1 -1
  81. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js +1 -1
  82. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js +1 -1
  83. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js +1 -1
  84. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js +1 -1
  85. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js +1 -1
  86. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/dom/route.js +1 -1
  87. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/route.js +1 -1
  88. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/screenshot/route.js +1 -1
  89. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js +1 -1
  90. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js +1 -1
  91. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/relay/route.js +1 -1
  92. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/snapshot/route.js +1 -1
  93. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/token/route.js +1 -1
  94. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/token/route.js.nft.json +1 -1
  95. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ws/route.js +1 -0
  96. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/{ttyd → ws}/route.js.nft.json +1 -1
  97. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ws/route_client-reference-manifest.js +1 -0
  98. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js +1 -1
  99. package/web/.next/standalone/packages/web/.next/server/app/api/skills/activate/route.js +1 -1
  100. package/web/.next/standalone/packages/web/.next/server/app/api/skills/catalog/route.js +1 -1
  101. package/web/.next/standalone/packages/web/.next/server/app/api/skills/deactivate/route.js +1 -1
  102. package/web/.next/standalone/packages/web/.next/server/app/api/skills/install/route.js +1 -1
  103. package/web/.next/standalone/packages/web/.next/server/app/api/skills/installed/route.js +1 -1
  104. package/web/.next/standalone/packages/web/.next/server/app/api/skills/session-active/route.js +1 -1
  105. package/web/.next/standalone/packages/web/.next/server/app/api/skills/uninstall/route.js +1 -1
  106. package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js +1 -1
  107. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js +1 -1
  108. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js +1 -1
  109. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js +2 -2
  110. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js.nft.json +1 -1
  111. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page_client-reference-manifest.js +1 -1
  112. package/web/.next/standalone/packages/web/.next/server/app/bridge/install.ps1/route.js +2 -2
  113. package/web/.next/standalone/packages/web/.next/server/app/bridge/install.sh/route.js +2 -2
  114. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js +6 -0
  115. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js.nft.json +1 -0
  116. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page_client-reference-manifest.js +1 -0
  117. package/web/.next/standalone/packages/web/.next/server/app/icon.svg/route.js +1 -1
  118. package/web/.next/standalone/packages/web/.next/server/app/page.js +2 -2
  119. package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
  120. package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
  121. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js +2 -2
  122. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  123. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  124. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js +2 -2
  125. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js.nft.json +1 -1
  126. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page_client-reference-manifest.js +1 -1
  127. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js +2 -2
  128. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
  129. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
  130. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js +2 -2
  131. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js.nft.json +1 -1
  132. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page_client-reference-manifest.js +1 -1
  133. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js +2 -2
  134. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js.nft.json +1 -1
  135. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page_client-reference-manifest.js +1 -1
  136. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js +2 -2
  137. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -1
  138. package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +1 -1
  139. package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +5 -6
  140. package/web/.next/standalone/packages/web/.next/server/chunks/2089.js +3 -3
  141. package/web/.next/standalone/packages/web/.next/server/chunks/{9149.js → 3054.js} +1 -1
  142. package/web/.next/standalone/packages/web/.next/server/chunks/{7548.js → 3414.js} +1 -1
  143. package/web/.next/standalone/packages/web/.next/server/chunks/5068.js +1 -1
  144. package/web/.next/standalone/packages/web/.next/server/chunks/6034.js +1 -1
  145. package/web/.next/standalone/packages/web/.next/server/chunks/626.js +1 -0
  146. package/web/.next/standalone/packages/web/.next/server/chunks/{3540.js → 7737.js} +1 -1
  147. package/web/.next/standalone/packages/web/.next/server/chunks/9030.js +1 -0
  148. package/web/.next/standalone/packages/web/.next/server/chunks/9455.js +1 -1
  149. package/web/.next/standalone/packages/web/.next/server/functions-config-manifest.json +1 -3
  150. package/web/.next/standalone/packages/web/.next/server/middleware-build-manifest.js +1 -1
  151. package/web/.next/standalone/packages/web/.next/server/middleware-react-loadable-manifest.js +1 -1
  152. package/web/.next/standalone/packages/web/.next/server/next-font-manifest.js +1 -1
  153. package/web/.next/standalone/packages/web/.next/server/next-font-manifest.json +1 -1
  154. package/web/.next/standalone/packages/web/.next/server/pages/500.html +1 -1
  155. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
  156. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +1 -1
  157. package/web/.next/standalone/packages/web/.next/static/{2fd2xxj8LPZwZbsGpYttR → EZxyXuDt2fbD_J3ABqLGK}/_buildManifest.js +1 -1
  158. package/web/.next/standalone/packages/web/.next/static/chunks/1698.2bb12e16a46e63e6.js +1 -0
  159. package/web/.next/standalone/packages/web/.next/static/chunks/{2261.cbe7673af7ac2a09.js → 2261.a4a22edc2699e706.js} +1 -1
  160. package/web/.next/{static/chunks/9703-93347b812923255f.js → standalone/packages/web/.next/static/chunks/3301-83bfba2f12daff75.js} +2 -2
  161. package/web/.next/standalone/packages/web/.next/static/chunks/{3838.e16cb2d72c562a24.js → 3838.70eaf44136d75fd9.js} +1 -1
  162. package/web/.next/standalone/packages/web/.next/static/chunks/4094.b94100f0b554a20c.js +1 -0
  163. package/web/.next/standalone/packages/web/.next/static/chunks/{6778.b11dd7c7d98f5ec9.js → 4397.d5c3dfd99c20ef0a.js} +1 -1
  164. package/web/.next/standalone/packages/web/.next/static/chunks/{4443.0816c59f52ded54b.js → 4443.951bc4743a39cfbe.js} +1 -1
  165. package/web/.next/standalone/packages/web/.next/static/chunks/{2969.7ed62af605513fc5.js → 5350.aa94c6b8388dca53.js} +1 -1
  166. package/web/.next/standalone/packages/web/.next/static/chunks/{5493-aa36cf7b22e93079.js → 5493-56abbf2a46a290a7.js} +1 -1
  167. package/web/.next/standalone/packages/web/.next/static/chunks/{1964-5f3bdfb35008cdf0.js → 6778-f675a7009d5d06b5.js} +1 -1
  168. package/web/.next/standalone/packages/web/.next/static/chunks/{8510-7040ccbe7369f319.js → 8510-8433dfaacc306299.js} +1 -1
  169. package/web/.next/standalone/packages/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-2014857132332e79.js +1 -0
  170. package/web/.next/standalone/packages/web/.next/static/chunks/app/_global-error/page-2014857132332e79.js +1 -0
  171. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/access/route-2014857132332e79.js +1 -0
  172. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/agents/route-2014857132332e79.js +1 -0
  173. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/app-update/route-2014857132332e79.js +1 -0
  174. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/attachments/route-2014857132332e79.js +1 -0
  175. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/auth/profile/route-2014857132332e79.js +1 -0
  176. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/comments/route-2014857132332e79.js +1 -0
  177. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/route-2014857132332e79.js +1 -0
  178. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-2014857132332e79.js +1 -0
  179. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/route-2014857132332e79.js +1 -0
  180. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-2014857132332e79.js +1 -0
  181. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-2014857132332e79.js +1 -0
  182. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-2014857132332e79.js +1 -0
  183. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-2014857132332e79.js +1 -0
  184. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-2014857132332e79.js +1 -0
  185. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/code/route-2014857132332e79.js +1 -0
  186. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/route-2014857132332e79.js +1 -0
  187. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridges/route-2014857132332e79.js +1 -0
  188. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/config/route-2014857132332e79.js +1 -0
  189. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/open/route-2014857132332e79.js +1 -0
  190. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/route-2014857132332e79.js +1 -0
  191. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/events/route-2014857132332e79.js +1 -0
  192. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/executor/health/route-2014857132332e79.js +1 -0
  193. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/directory/route-2014857132332e79.js +1 -0
  194. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/pick-directory/route-2014857132332e79.js +1 -0
  195. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/route-2014857132332e79.js +1 -0
  196. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/sync/route-2014857132332e79.js +1 -0
  197. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/repos/route-2014857132332e79.js +1 -0
  198. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/webhook/route-2014857132332e79.js +1 -0
  199. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/boards/route-2014857132332e79.js +1 -0
  200. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/sessions/route-2014857132332e79.js +1 -0
  201. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/notifications/route-2014857132332e79.js +1 -0
  202. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/preferences/route-2014857132332e79.js +1 -0
  203. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-2014857132332e79.js +1 -0
  204. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-2014857132332e79.js +1 -0
  205. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-2014857132332e79.js +1 -0
  206. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-2014857132332e79.js +1 -0
  207. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-2014857132332e79.js +1 -0
  208. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-2014857132332e79.js +1 -0
  209. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-2014857132332e79.js +1 -0
  210. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-2014857132332e79.js +1 -0
  211. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-2014857132332e79.js +1 -0
  212. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-2014857132332e79.js +1 -0
  213. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-2014857132332e79.js +1 -0
  214. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-2014857132332e79.js +1 -0
  215. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/open/route-2014857132332e79.js +1 -0
  216. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/route-2014857132332e79.js +1 -0
  217. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/setup/route-2014857132332e79.js +1 -0
  218. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/route-2014857132332e79.js +1 -0
  219. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/[id]/route-2014857132332e79.js +1 -0
  220. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/route-2014857132332e79.js +1 -0
  221. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/actions/route-2014857132332e79.js +1 -0
  222. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/archive/route-2014857132332e79.js +1 -0
  223. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/checks/route-2014857132332e79.js +1 -0
  224. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/diff/route-2014857132332e79.js +1 -0
  225. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/files/route-2014857132332e79.js +1 -0
  226. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/keys/route-2014857132332e79.js +1 -0
  227. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/kill/route-2014857132332e79.js +1 -0
  228. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/route-2014857132332e79.js +1 -0
  229. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-2014857132332e79.js +1 -0
  230. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-2014857132332e79.js +1 -0
  231. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/route-2014857132332e79.js +1 -0
  232. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-2014857132332e79.js +1 -0
  233. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/restore/route-2014857132332e79.js +1 -0
  234. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/route-2014857132332e79.js +1 -0
  235. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-2014857132332e79.js +1 -0
  236. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-2014857132332e79.js +1 -0
  237. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-2014857132332e79.js +1 -0
  238. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ws/route-2014857132332e79.js +1 -0
  239. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/route-2014857132332e79.js +1 -0
  240. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/activate/route-2014857132332e79.js +1 -0
  241. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/catalog/route-2014857132332e79.js +1 -0
  242. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/deactivate/route-2014857132332e79.js +1 -0
  243. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/install/route-2014857132332e79.js +1 -0
  244. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/installed/route-2014857132332e79.js +1 -0
  245. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/session-active/route-2014857132332e79.js +1 -0
  246. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/uninstall/route-2014857132332e79.js +1 -0
  247. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/spawn/route-2014857132332e79.js +1 -0
  248. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/branches/route-2014857132332e79.js +1 -0
  249. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/route-2014857132332e79.js +1 -0
  250. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/connect/page-4353167bf419a5e2.js +1 -0
  251. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.ps1/route-2014857132332e79.js +1 -0
  252. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.sh/route-2014857132332e79.js +1 -0
  253. package/web/.next/standalone/packages/web/.next/static/chunks/app/embed/terminal/[id]/page-f237abb4e8051e1b.js +3 -0
  254. package/web/.next/standalone/packages/web/.next/static/chunks/app/layout-5dcda65798010dd0.js +1 -0
  255. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-a738f5ee8dd225d5.js +1 -0
  256. package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/{page-c5e2da005848302c.js → page-0584f75c0511152f.js} +1 -1
  257. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-in/hosted/page-2014857132332e79.js +1 -0
  258. package/web/.next/standalone/packages/web/.next/static/chunks/ca465714-4d31bfa1a1fb3e89.js +3 -0
  259. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/app-error-2014857132332e79.js +1 -0
  260. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-2014857132332e79.js +1 -0
  261. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/not-found-2014857132332e79.js +1 -0
  262. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2014857132332e79.js +1 -0
  263. package/web/.next/standalone/packages/web/.next/static/chunks/webpack-910378af4ef971d5.js +1 -0
  264. package/web/.next/standalone/packages/web/.next/static/css/6ef2fa08dd043252.css +1 -0
  265. package/web/.next/standalone/packages/web/.next/static/css/e079b536879689ec.css +1 -0
  266. package/web/.next/static/{2fd2xxj8LPZwZbsGpYttR → EZxyXuDt2fbD_J3ABqLGK}/_buildManifest.js +1 -1
  267. package/web/.next/static/chunks/1698.2bb12e16a46e63e6.js +1 -0
  268. package/web/.next/static/chunks/{2261.cbe7673af7ac2a09.js → 2261.a4a22edc2699e706.js} +1 -1
  269. package/web/.next/{standalone/packages/web/.next/static/chunks/9703-93347b812923255f.js → static/chunks/3301-83bfba2f12daff75.js} +2 -2
  270. package/web/.next/static/chunks/{3838.e16cb2d72c562a24.js → 3838.70eaf44136d75fd9.js} +1 -1
  271. package/web/.next/static/chunks/4094.b94100f0b554a20c.js +1 -0
  272. package/web/.next/static/chunks/{6778.b11dd7c7d98f5ec9.js → 4397.d5c3dfd99c20ef0a.js} +1 -1
  273. package/web/.next/static/chunks/{4443.0816c59f52ded54b.js → 4443.951bc4743a39cfbe.js} +1 -1
  274. package/web/.next/static/chunks/{2969.7ed62af605513fc5.js → 5350.aa94c6b8388dca53.js} +1 -1
  275. package/web/.next/static/chunks/{5493-aa36cf7b22e93079.js → 5493-56abbf2a46a290a7.js} +1 -1
  276. package/web/.next/static/chunks/{1964-5f3bdfb35008cdf0.js → 6778-f675a7009d5d06b5.js} +1 -1
  277. package/web/.next/static/chunks/{8510-7040ccbe7369f319.js → 8510-8433dfaacc306299.js} +1 -1
  278. package/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-2014857132332e79.js +1 -0
  279. package/web/.next/static/chunks/app/_global-error/page-2014857132332e79.js +1 -0
  280. package/web/.next/static/chunks/app/api/access/route-2014857132332e79.js +1 -0
  281. package/web/.next/static/chunks/app/api/agents/route-2014857132332e79.js +1 -0
  282. package/web/.next/static/chunks/app/api/app-update/route-2014857132332e79.js +1 -0
  283. package/web/.next/static/chunks/app/api/attachments/route-2014857132332e79.js +1 -0
  284. package/web/.next/static/chunks/app/api/auth/profile/route-2014857132332e79.js +1 -0
  285. package/web/.next/static/chunks/app/api/boards/comments/route-2014857132332e79.js +1 -0
  286. package/web/.next/static/chunks/app/api/boards/route-2014857132332e79.js +1 -0
  287. package/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-2014857132332e79.js +1 -0
  288. package/web/.next/static/chunks/app/api/bridge/bridges/route-2014857132332e79.js +1 -0
  289. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-2014857132332e79.js +1 -0
  290. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-2014857132332e79.js +1 -0
  291. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-2014857132332e79.js +1 -0
  292. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-2014857132332e79.js +1 -0
  293. package/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-2014857132332e79.js +1 -0
  294. package/web/.next/static/chunks/app/api/bridge/devices/code/route-2014857132332e79.js +1 -0
  295. package/web/.next/static/chunks/app/api/bridge/devices/route-2014857132332e79.js +1 -0
  296. package/web/.next/static/chunks/app/api/bridges/route-2014857132332e79.js +1 -0
  297. package/web/.next/static/chunks/app/api/config/route-2014857132332e79.js +1 -0
  298. package/web/.next/static/chunks/app/api/context-files/open/route-2014857132332e79.js +1 -0
  299. package/web/.next/static/chunks/app/api/context-files/route-2014857132332e79.js +1 -0
  300. package/web/.next/static/chunks/app/api/events/route-2014857132332e79.js +1 -0
  301. package/web/.next/static/chunks/app/api/executor/health/route-2014857132332e79.js +1 -0
  302. package/web/.next/static/chunks/app/api/filesystem/directory/route-2014857132332e79.js +1 -0
  303. package/web/.next/static/chunks/app/api/filesystem/pick-directory/route-2014857132332e79.js +1 -0
  304. package/web/.next/static/chunks/app/api/github/projects/route-2014857132332e79.js +1 -0
  305. package/web/.next/static/chunks/app/api/github/projects/sync/route-2014857132332e79.js +1 -0
  306. package/web/.next/static/chunks/app/api/github/repos/route-2014857132332e79.js +1 -0
  307. package/web/.next/static/chunks/app/api/github/webhook/route-2014857132332e79.js +1 -0
  308. package/web/.next/static/chunks/app/api/health/boards/route-2014857132332e79.js +1 -0
  309. package/web/.next/static/chunks/app/api/health/sessions/route-2014857132332e79.js +1 -0
  310. package/web/.next/static/chunks/app/api/notifications/route-2014857132332e79.js +1 -0
  311. package/web/.next/static/chunks/app/api/preferences/route-2014857132332e79.js +1 -0
  312. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-2014857132332e79.js +1 -0
  313. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-2014857132332e79.js +1 -0
  314. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-2014857132332e79.js +1 -0
  315. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-2014857132332e79.js +1 -0
  316. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-2014857132332e79.js +1 -0
  317. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-2014857132332e79.js +1 -0
  318. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-2014857132332e79.js +1 -0
  319. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-2014857132332e79.js +1 -0
  320. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-2014857132332e79.js +1 -0
  321. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-2014857132332e79.js +1 -0
  322. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-2014857132332e79.js +1 -0
  323. package/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-2014857132332e79.js +1 -0
  324. package/web/.next/static/chunks/app/api/projects/[id]/open/route-2014857132332e79.js +1 -0
  325. package/web/.next/static/chunks/app/api/projects/[id]/route-2014857132332e79.js +1 -0
  326. package/web/.next/static/chunks/app/api/projects/[id]/setup/route-2014857132332e79.js +1 -0
  327. package/web/.next/static/chunks/app/api/projects/route-2014857132332e79.js +1 -0
  328. package/web/.next/static/chunks/app/api/repositories/[id]/route-2014857132332e79.js +1 -0
  329. package/web/.next/static/chunks/app/api/repositories/route-2014857132332e79.js +1 -0
  330. package/web/.next/static/chunks/app/api/sessions/[id]/actions/route-2014857132332e79.js +1 -0
  331. package/web/.next/static/chunks/app/api/sessions/[id]/archive/route-2014857132332e79.js +1 -0
  332. package/web/.next/static/chunks/app/api/sessions/[id]/checks/route-2014857132332e79.js +1 -0
  333. package/web/.next/static/chunks/app/api/sessions/[id]/diff/route-2014857132332e79.js +1 -0
  334. package/web/.next/static/chunks/app/api/sessions/[id]/files/route-2014857132332e79.js +1 -0
  335. package/web/.next/static/chunks/app/api/sessions/[id]/keys/route-2014857132332e79.js +1 -0
  336. package/web/.next/static/chunks/app/api/sessions/[id]/kill/route-2014857132332e79.js +1 -0
  337. package/web/.next/static/chunks/app/api/sessions/[id]/output/route-2014857132332e79.js +1 -0
  338. package/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-2014857132332e79.js +1 -0
  339. package/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-2014857132332e79.js +1 -0
  340. package/web/.next/static/chunks/app/api/sessions/[id]/preview/route-2014857132332e79.js +1 -0
  341. package/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-2014857132332e79.js +1 -0
  342. package/web/.next/static/chunks/app/api/sessions/[id]/restore/route-2014857132332e79.js +1 -0
  343. package/web/.next/static/chunks/app/api/sessions/[id]/route-2014857132332e79.js +1 -0
  344. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-2014857132332e79.js +1 -0
  345. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-2014857132332e79.js +1 -0
  346. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-2014857132332e79.js +1 -0
  347. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ws/route-2014857132332e79.js +1 -0
  348. package/web/.next/static/chunks/app/api/sessions/route-2014857132332e79.js +1 -0
  349. package/web/.next/static/chunks/app/api/skills/activate/route-2014857132332e79.js +1 -0
  350. package/web/.next/static/chunks/app/api/skills/catalog/route-2014857132332e79.js +1 -0
  351. package/web/.next/static/chunks/app/api/skills/deactivate/route-2014857132332e79.js +1 -0
  352. package/web/.next/static/chunks/app/api/skills/install/route-2014857132332e79.js +1 -0
  353. package/web/.next/static/chunks/app/api/skills/installed/route-2014857132332e79.js +1 -0
  354. package/web/.next/static/chunks/app/api/skills/session-active/route-2014857132332e79.js +1 -0
  355. package/web/.next/static/chunks/app/api/skills/uninstall/route-2014857132332e79.js +1 -0
  356. package/web/.next/static/chunks/app/api/spawn/route-2014857132332e79.js +1 -0
  357. package/web/.next/static/chunks/app/api/workspaces/branches/route-2014857132332e79.js +1 -0
  358. package/web/.next/static/chunks/app/api/workspaces/route-2014857132332e79.js +1 -0
  359. package/web/.next/static/chunks/app/bridge/connect/page-4353167bf419a5e2.js +1 -0
  360. package/web/.next/static/chunks/app/bridge/install.ps1/route-2014857132332e79.js +1 -0
  361. package/web/.next/static/chunks/app/bridge/install.sh/route-2014857132332e79.js +1 -0
  362. package/web/.next/static/chunks/app/embed/terminal/[id]/page-f237abb4e8051e1b.js +3 -0
  363. package/web/.next/static/chunks/app/layout-5dcda65798010dd0.js +1 -0
  364. package/web/.next/static/chunks/app/page-a738f5ee8dd225d5.js +1 -0
  365. package/web/.next/static/chunks/app/sessions/[id]/{page-c5e2da005848302c.js → page-0584f75c0511152f.js} +1 -1
  366. package/web/.next/static/chunks/app/sign-in/hosted/page-2014857132332e79.js +1 -0
  367. package/web/.next/static/chunks/ca465714-4d31bfa1a1fb3e89.js +3 -0
  368. package/web/.next/static/chunks/next/dist/client/components/builtin/app-error-2014857132332e79.js +1 -0
  369. package/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-2014857132332e79.js +1 -0
  370. package/web/.next/static/chunks/next/dist/client/components/builtin/not-found-2014857132332e79.js +1 -0
  371. package/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2014857132332e79.js +1 -0
  372. package/web/.next/static/chunks/webpack-910378af4ef971d5.js +1 -0
  373. package/web/.next/static/css/6ef2fa08dd043252.css +1 -0
  374. package/web/.next/static/css/e079b536879689ec.css +1 -0
  375. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/route.js +0 -1
  376. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/route_client-reference-manifest.js +0 -1
  377. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/token/route.js +0 -1
  378. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/token/route.js.nft.json +0 -1
  379. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/token/route_client-reference-manifest.js +0 -1
  380. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route.js +0 -1
  381. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route.js.nft.json +0 -1
  382. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route_client-reference-manifest.js +0 -1
  383. package/web/.next/standalone/packages/web/.next/server/chunks/3364.js +0 -3
  384. package/web/.next/standalone/packages/web/.next/server/chunks/8039.js +0 -278
  385. package/web/.next/standalone/packages/web/.next/server/chunks/8488.js +0 -1
  386. package/web/.next/standalone/packages/web/.next/static/chunks/1136.122b0a20e0377c72.js +0 -1
  387. package/web/.next/standalone/packages/web/.next/static/chunks/883-535cfc45ad771bdd.js +0 -3
  388. package/web/.next/standalone/packages/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-da63d844222da45c.js +0 -1
  389. package/web/.next/standalone/packages/web/.next/static/chunks/app/_global-error/page-da63d844222da45c.js +0 -1
  390. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/access/route-da63d844222da45c.js +0 -1
  391. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/agents/route-da63d844222da45c.js +0 -1
  392. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/app-update/route-da63d844222da45c.js +0 -1
  393. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/attachments/route-da63d844222da45c.js +0 -1
  394. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/auth/profile/route-da63d844222da45c.js +0 -1
  395. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/comments/route-da63d844222da45c.js +0 -1
  396. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/route-da63d844222da45c.js +0 -1
  397. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-da63d844222da45c.js +0 -1
  398. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/route-da63d844222da45c.js +0 -1
  399. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-da63d844222da45c.js +0 -1
  400. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-da63d844222da45c.js +0 -1
  401. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-da63d844222da45c.js +0 -1
  402. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-da63d844222da45c.js +0 -1
  403. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-da63d844222da45c.js +0 -1
  404. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/code/route-da63d844222da45c.js +0 -1
  405. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/route-da63d844222da45c.js +0 -1
  406. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridges/route-da63d844222da45c.js +0 -1
  407. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/config/route-da63d844222da45c.js +0 -1
  408. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/open/route-da63d844222da45c.js +0 -1
  409. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/route-da63d844222da45c.js +0 -1
  410. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/events/route-da63d844222da45c.js +0 -1
  411. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/executor/health/route-da63d844222da45c.js +0 -1
  412. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/directory/route-da63d844222da45c.js +0 -1
  413. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/pick-directory/route-da63d844222da45c.js +0 -1
  414. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/route-da63d844222da45c.js +0 -1
  415. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/sync/route-da63d844222da45c.js +0 -1
  416. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/repos/route-da63d844222da45c.js +0 -1
  417. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/webhook/route-da63d844222da45c.js +0 -1
  418. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/boards/route-da63d844222da45c.js +0 -1
  419. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/sessions/route-da63d844222da45c.js +0 -1
  420. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/notifications/route-da63d844222da45c.js +0 -1
  421. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/preferences/route-da63d844222da45c.js +0 -1
  422. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-da63d844222da45c.js +0 -1
  423. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-da63d844222da45c.js +0 -1
  424. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-da63d844222da45c.js +0 -1
  425. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-da63d844222da45c.js +0 -1
  426. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-da63d844222da45c.js +0 -1
  427. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-da63d844222da45c.js +0 -1
  428. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-da63d844222da45c.js +0 -1
  429. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-da63d844222da45c.js +0 -1
  430. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-da63d844222da45c.js +0 -1
  431. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-da63d844222da45c.js +0 -1
  432. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-da63d844222da45c.js +0 -1
  433. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-da63d844222da45c.js +0 -1
  434. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/open/route-da63d844222da45c.js +0 -1
  435. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/route-da63d844222da45c.js +0 -1
  436. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/setup/route-da63d844222da45c.js +0 -1
  437. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/route-da63d844222da45c.js +0 -1
  438. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/[id]/route-da63d844222da45c.js +0 -1
  439. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/route-da63d844222da45c.js +0 -1
  440. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/actions/route-da63d844222da45c.js +0 -1
  441. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/archive/route-da63d844222da45c.js +0 -1
  442. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/checks/route-da63d844222da45c.js +0 -1
  443. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/diff/route-da63d844222da45c.js +0 -1
  444. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/files/route-da63d844222da45c.js +0 -1
  445. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/keys/route-da63d844222da45c.js +0 -1
  446. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/kill/route-da63d844222da45c.js +0 -1
  447. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/route-da63d844222da45c.js +0 -1
  448. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-da63d844222da45c.js +0 -1
  449. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-da63d844222da45c.js +0 -1
  450. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/route-da63d844222da45c.js +0 -1
  451. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-da63d844222da45c.js +0 -1
  452. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/restore/route-da63d844222da45c.js +0 -1
  453. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/route-da63d844222da45c.js +0 -1
  454. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-da63d844222da45c.js +0 -1
  455. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-da63d844222da45c.js +0 -1
  456. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-da63d844222da45c.js +0 -1
  457. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/route-da63d844222da45c.js +0 -1
  458. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/token/route-da63d844222da45c.js +0 -1
  459. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/ws/route-da63d844222da45c.js +0 -1
  460. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/route-da63d844222da45c.js +0 -1
  461. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/activate/route-da63d844222da45c.js +0 -1
  462. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/catalog/route-da63d844222da45c.js +0 -1
  463. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/deactivate/route-da63d844222da45c.js +0 -1
  464. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/install/route-da63d844222da45c.js +0 -1
  465. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/installed/route-da63d844222da45c.js +0 -1
  466. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/session-active/route-da63d844222da45c.js +0 -1
  467. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/uninstall/route-da63d844222da45c.js +0 -1
  468. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/spawn/route-da63d844222da45c.js +0 -1
  469. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/branches/route-da63d844222da45c.js +0 -1
  470. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/route-da63d844222da45c.js +0 -1
  471. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/connect/page-69fb7636334c3973.js +0 -1
  472. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.ps1/route-da63d844222da45c.js +0 -1
  473. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.sh/route-da63d844222da45c.js +0 -1
  474. package/web/.next/standalone/packages/web/.next/static/chunks/app/layout-6026ce906f0cd4a4.js +0 -1
  475. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-b6a5c403840a5555.js +0 -1
  476. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-in/hosted/page-da63d844222da45c.js +0 -1
  477. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/app-error-da63d844222da45c.js +0 -1
  478. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-da63d844222da45c.js +0 -1
  479. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/not-found-da63d844222da45c.js +0 -1
  480. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-da63d844222da45c.js +0 -1
  481. package/web/.next/standalone/packages/web/.next/static/chunks/webpack-861a73c6545f426f.js +0 -1
  482. package/web/.next/standalone/packages/web/.next/static/css/d31189a7bb85881e.css +0 -1
  483. package/web/.next/static/chunks/1136.122b0a20e0377c72.js +0 -1
  484. package/web/.next/static/chunks/883-535cfc45ad771bdd.js +0 -3
  485. package/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-da63d844222da45c.js +0 -1
  486. package/web/.next/static/chunks/app/_global-error/page-da63d844222da45c.js +0 -1
  487. package/web/.next/static/chunks/app/api/access/route-da63d844222da45c.js +0 -1
  488. package/web/.next/static/chunks/app/api/agents/route-da63d844222da45c.js +0 -1
  489. package/web/.next/static/chunks/app/api/app-update/route-da63d844222da45c.js +0 -1
  490. package/web/.next/static/chunks/app/api/attachments/route-da63d844222da45c.js +0 -1
  491. package/web/.next/static/chunks/app/api/auth/profile/route-da63d844222da45c.js +0 -1
  492. package/web/.next/static/chunks/app/api/boards/comments/route-da63d844222da45c.js +0 -1
  493. package/web/.next/static/chunks/app/api/boards/route-da63d844222da45c.js +0 -1
  494. package/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-da63d844222da45c.js +0 -1
  495. package/web/.next/static/chunks/app/api/bridge/bridges/route-da63d844222da45c.js +0 -1
  496. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-da63d844222da45c.js +0 -1
  497. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-da63d844222da45c.js +0 -1
  498. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-da63d844222da45c.js +0 -1
  499. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-da63d844222da45c.js +0 -1
  500. package/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-da63d844222da45c.js +0 -1
  501. package/web/.next/static/chunks/app/api/bridge/devices/code/route-da63d844222da45c.js +0 -1
  502. package/web/.next/static/chunks/app/api/bridge/devices/route-da63d844222da45c.js +0 -1
  503. package/web/.next/static/chunks/app/api/bridges/route-da63d844222da45c.js +0 -1
  504. package/web/.next/static/chunks/app/api/config/route-da63d844222da45c.js +0 -1
  505. package/web/.next/static/chunks/app/api/context-files/open/route-da63d844222da45c.js +0 -1
  506. package/web/.next/static/chunks/app/api/context-files/route-da63d844222da45c.js +0 -1
  507. package/web/.next/static/chunks/app/api/events/route-da63d844222da45c.js +0 -1
  508. package/web/.next/static/chunks/app/api/executor/health/route-da63d844222da45c.js +0 -1
  509. package/web/.next/static/chunks/app/api/filesystem/directory/route-da63d844222da45c.js +0 -1
  510. package/web/.next/static/chunks/app/api/filesystem/pick-directory/route-da63d844222da45c.js +0 -1
  511. package/web/.next/static/chunks/app/api/github/projects/route-da63d844222da45c.js +0 -1
  512. package/web/.next/static/chunks/app/api/github/projects/sync/route-da63d844222da45c.js +0 -1
  513. package/web/.next/static/chunks/app/api/github/repos/route-da63d844222da45c.js +0 -1
  514. package/web/.next/static/chunks/app/api/github/webhook/route-da63d844222da45c.js +0 -1
  515. package/web/.next/static/chunks/app/api/health/boards/route-da63d844222da45c.js +0 -1
  516. package/web/.next/static/chunks/app/api/health/sessions/route-da63d844222da45c.js +0 -1
  517. package/web/.next/static/chunks/app/api/notifications/route-da63d844222da45c.js +0 -1
  518. package/web/.next/static/chunks/app/api/preferences/route-da63d844222da45c.js +0 -1
  519. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-da63d844222da45c.js +0 -1
  520. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-da63d844222da45c.js +0 -1
  521. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-da63d844222da45c.js +0 -1
  522. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-da63d844222da45c.js +0 -1
  523. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-da63d844222da45c.js +0 -1
  524. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-da63d844222da45c.js +0 -1
  525. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-da63d844222da45c.js +0 -1
  526. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-da63d844222da45c.js +0 -1
  527. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-da63d844222da45c.js +0 -1
  528. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-da63d844222da45c.js +0 -1
  529. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-da63d844222da45c.js +0 -1
  530. package/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-da63d844222da45c.js +0 -1
  531. package/web/.next/static/chunks/app/api/projects/[id]/open/route-da63d844222da45c.js +0 -1
  532. package/web/.next/static/chunks/app/api/projects/[id]/route-da63d844222da45c.js +0 -1
  533. package/web/.next/static/chunks/app/api/projects/[id]/setup/route-da63d844222da45c.js +0 -1
  534. package/web/.next/static/chunks/app/api/projects/route-da63d844222da45c.js +0 -1
  535. package/web/.next/static/chunks/app/api/repositories/[id]/route-da63d844222da45c.js +0 -1
  536. package/web/.next/static/chunks/app/api/repositories/route-da63d844222da45c.js +0 -1
  537. package/web/.next/static/chunks/app/api/sessions/[id]/actions/route-da63d844222da45c.js +0 -1
  538. package/web/.next/static/chunks/app/api/sessions/[id]/archive/route-da63d844222da45c.js +0 -1
  539. package/web/.next/static/chunks/app/api/sessions/[id]/checks/route-da63d844222da45c.js +0 -1
  540. package/web/.next/static/chunks/app/api/sessions/[id]/diff/route-da63d844222da45c.js +0 -1
  541. package/web/.next/static/chunks/app/api/sessions/[id]/files/route-da63d844222da45c.js +0 -1
  542. package/web/.next/static/chunks/app/api/sessions/[id]/keys/route-da63d844222da45c.js +0 -1
  543. package/web/.next/static/chunks/app/api/sessions/[id]/kill/route-da63d844222da45c.js +0 -1
  544. package/web/.next/static/chunks/app/api/sessions/[id]/output/route-da63d844222da45c.js +0 -1
  545. package/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-da63d844222da45c.js +0 -1
  546. package/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-da63d844222da45c.js +0 -1
  547. package/web/.next/static/chunks/app/api/sessions/[id]/preview/route-da63d844222da45c.js +0 -1
  548. package/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-da63d844222da45c.js +0 -1
  549. package/web/.next/static/chunks/app/api/sessions/[id]/restore/route-da63d844222da45c.js +0 -1
  550. package/web/.next/static/chunks/app/api/sessions/[id]/route-da63d844222da45c.js +0 -1
  551. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-da63d844222da45c.js +0 -1
  552. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-da63d844222da45c.js +0 -1
  553. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-da63d844222da45c.js +0 -1
  554. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/route-da63d844222da45c.js +0 -1
  555. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/token/route-da63d844222da45c.js +0 -1
  556. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/ws/route-da63d844222da45c.js +0 -1
  557. package/web/.next/static/chunks/app/api/sessions/route-da63d844222da45c.js +0 -1
  558. package/web/.next/static/chunks/app/api/skills/activate/route-da63d844222da45c.js +0 -1
  559. package/web/.next/static/chunks/app/api/skills/catalog/route-da63d844222da45c.js +0 -1
  560. package/web/.next/static/chunks/app/api/skills/deactivate/route-da63d844222da45c.js +0 -1
  561. package/web/.next/static/chunks/app/api/skills/install/route-da63d844222da45c.js +0 -1
  562. package/web/.next/static/chunks/app/api/skills/installed/route-da63d844222da45c.js +0 -1
  563. package/web/.next/static/chunks/app/api/skills/session-active/route-da63d844222da45c.js +0 -1
  564. package/web/.next/static/chunks/app/api/skills/uninstall/route-da63d844222da45c.js +0 -1
  565. package/web/.next/static/chunks/app/api/spawn/route-da63d844222da45c.js +0 -1
  566. package/web/.next/static/chunks/app/api/workspaces/branches/route-da63d844222da45c.js +0 -1
  567. package/web/.next/static/chunks/app/api/workspaces/route-da63d844222da45c.js +0 -1
  568. package/web/.next/static/chunks/app/bridge/connect/page-69fb7636334c3973.js +0 -1
  569. package/web/.next/static/chunks/app/bridge/install.ps1/route-da63d844222da45c.js +0 -1
  570. package/web/.next/static/chunks/app/bridge/install.sh/route-da63d844222da45c.js +0 -1
  571. package/web/.next/static/chunks/app/layout-6026ce906f0cd4a4.js +0 -1
  572. package/web/.next/static/chunks/app/page-b6a5c403840a5555.js +0 -1
  573. package/web/.next/static/chunks/app/sign-in/hosted/page-da63d844222da45c.js +0 -1
  574. package/web/.next/static/chunks/next/dist/client/components/builtin/app-error-da63d844222da45c.js +0 -1
  575. package/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-da63d844222da45c.js +0 -1
  576. package/web/.next/static/chunks/next/dist/client/components/builtin/not-found-da63d844222da45c.js +0 -1
  577. package/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-da63d844222da45c.js +0 -1
  578. package/web/.next/static/chunks/webpack-861a73c6545f426f.js +0 -1
  579. package/web/.next/static/css/d31189a7bb85881e.css +0 -1
  580. /package/web/.next/standalone/packages/web/.next/static/{2fd2xxj8LPZwZbsGpYttR → EZxyXuDt2fbD_J3ABqLGK}/_ssgManifest.js +0 -0
  581. /package/web/.next/static/{2fd2xxj8LPZwZbsGpYttR → EZxyXuDt2fbD_J3ABqLGK}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5493],{33507:(e,t,s)=>{s.d(t,{VM:()=>l,hq:()=>a,qg:()=>n,re:()=>i});let a="overscroll-contain touch-pan-y [-webkit-overflow-scrolling:touch]",n="min-h-0 flex-1 overflow-hidden bg-[#0f1012] p-3",l=a;function i(e){return["flex h-full min-h-0 min-w-0 w-full flex-col",e?"overflow-hidden bg-[#060404]":"overflow-hidden"].join(" ")}},35493:(e,t,s)=>{s.r(t),s.d(t,{SessionDetail:()=>eh});var a=s(54568),n=s(42925),l=s(7620),i=s(79748),r=s(7920),c=s(96611),d=s(46548),o=s(69863),x=s(97380),u=s(41007),m=s(90466),h=s(64357),f=s(40443),p=s(76081),v=s(35821),g=s(10926),b=s(76050),j=s(34309),w=s(59706),k=s(34041),N=s(76265),y=s(45894),S=s(26463),$=s(96249),A=s(58299),C=s(56050),I=s(23555),E=s(60527),M=s(58588),_=s(99844),R=s(5881),q=s(72410),L=s(33507);function D({text:e}){let[t,s]=(0,l.useState)(!1);async function n(){try{await navigator.clipboard.writeText(e),s(!0),window.setTimeout(()=>s(!1),1400)}catch{}}return(0,a.jsxs)("button",{type:"button",onClick:()=>void n(),className:"inline-flex max-w-[180px] items-center gap-1 font-mono text-[11px] text-[var(--vk-text-muted)] transition-colors hover:text-[var(--vk-text-normal)]",children:[(0,a.jsx)("span",{className:"truncate",children:e}),t?(0,a.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-emerald-400"}):(0,a.jsx)(w.A,{className:"h-3 w-3 shrink-0 opacity-50"})]})}function P(e,t){let s=e.metadata[t];return"string"==typeof s&&s.trim().length>0?s:void 0}function F(e){if(!e)return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:null}function T({node:e,depth:t,selectedPath:s,expandedDirs:n,onToggleDir:l,onSelectFile:i}){let r=n.has(e.path),c=e.path===s,d=8+16*t;return e.isDir?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("button",{type:"button",onClick:()=>l(e.path),className:"flex w-full items-center gap-1.5 py-1.5 text-left text-[12px] text-[var(--vk-text-muted)] hover:bg-white/4 active:bg-white/6",style:{paddingLeft:d},children:[r?(0,a.jsx)(k.A,{className:"h-3 w-3 shrink-0 opacity-50"}):(0,a.jsx)(N.A,{className:"h-3 w-3 shrink-0 opacity-50"}),r?(0,a.jsx)(y.A,{className:"h-3.5 w-3.5 shrink-0 text-amber-400/70"}):(0,a.jsx)(S.A,{className:"h-3.5 w-3.5 shrink-0 text-amber-400/70"}),(0,a.jsx)("span",{className:"truncate",children:e.name})]}),r?e.children.map(e=>(0,a.jsx)(T,{node:e,depth:t+1,selectedPath:s,expandedDirs:n,onToggleDir:l,onSelectFile:i},e.path)):null]}):(0,a.jsxs)("button",{type:"button",onClick:()=>i(e.path),className:`flex w-full items-center gap-1.5 py-1.5 pr-2 text-left text-[12px] transition-colors ${c?"bg-blue-500/10 text-[var(--vk-text-strong)]":"text-[var(--vk-text-normal)] hover:bg-white/4"}`,style:{paddingLeft:d+16},children:[(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate",children:e.name})]})}let U={js:"javascript",jsx:"jsx",ts:"typescript",tsx:"tsx",mjs:"javascript",cjs:"javascript",mts:"typescript",cts:"typescript",html:"html",htm:"html",css:"css",scss:"scss",sass:"sass",less:"less",vue:"vue",svelte:"svelte",astro:"astro",json:"json",jsonc:"jsonc",json5:"json5",yaml:"yaml",yml:"yaml",toml:"toml",ini:"ini",xml:"xml",svg:"xml",plist:"xml",csv:"csv",tsv:"csv",md:"markdown",mdx:"mdx",tex:"latex",rst:"rst",rs:"rust",go:"go",c:"c",h:"c",cpp:"cpp",cc:"cpp",cxx:"cpp",hpp:"cpp",hh:"cpp",cs:"csharp",java:"java",kt:"kotlin",kts:"kotlin",scala:"scala",swift:"swift",m:"objective-c",mm:"objective-cpp",zig:"zig",nim:"nim",v:"v",d:"d",py:"python",pyi:"python",rb:"ruby",php:"php",pl:"perl",pm:"perl",lua:"lua",r:"r",R:"r",jl:"julia",ex:"elixir",exs:"elixir",erl:"erlang",hrl:"erlang",hs:"haskell",lhs:"haskell",clj:"clojure",cljs:"clojure",ml:"ocaml",mli:"ocaml",fs:"fsharp",fsx:"fsharp",sh:"bash",bash:"bash",zsh:"bash",fish:"fish",ps1:"powershell",psm1:"powershell",bat:"bat",cmd:"bat",dockerfile:"dockerfile",containerfile:"dockerfile",tf:"hcl",hcl:"hcl",nix:"nix",sql:"sql",graphql:"graphql",gql:"graphql",prisma:"prisma",proto:"protobuf",thrift:"thrift",makefile:"makefile",cmake:"cmake",asm:"asm",s:"asm",diff:"diff",patch:"diff",log:"log",txt:"plaintext",env:"dotenv",lock:"json"},O={makefile:"makefile",Makefile:"makefile",dockerfile:"dockerfile",Dockerfile:"dockerfile",containerfile:"dockerfile",Containerfile:"dockerfile",gemfile:"ruby",Gemfile:"ruby",rakefile:"ruby",Rakefile:"ruby",cmakelists:"cmake",CMakeLists:"cmake",".gitignore":"gitignore",".dockerignore":"gitignore",".editorconfig":"ini",".prettierrc":"json",".eslintrc":"json",".babelrc":"json",".env":"dotenv",".env.local":"dotenv",".env.production":"dotenv","tsconfig.json":"jsonc","jsconfig.json":"jsonc"},z=new Set(["png","jpg","jpeg","gif","webp","svg","ico","bmp","avif"]);function W(e){let t=e.split("/").pop()??"",s=t.lastIndexOf(".");return s>=0?t.slice(s+1).toLowerCase():""}function X({code:e,lang:t}){let[n,i]=(0,l.useState)(null),r=(0,l.useRef)(e),c=(0,l.useRef)(t);if((0,l.useEffect)(()=>{r.current=e,c.current=t;let a=!1;return(async()=>{try{let{codeToHtml:n}=await Promise.all([s.e(9526),s.e(3838)]).then(s.bind(s,13838));if(a)return;let l=await n(e,{lang:t,theme:"github-dark-default"});a||r.current!==e||c.current!==t||i(l)}catch{if(a)return;try{let{codeToHtml:t}=await Promise.all([s.e(9526),s.e(3838)]).then(s.bind(s,13838));if(a)return;let n=await t(e,{lang:"plaintext",theme:"github-dark-default"});a||i(n)}catch{a||i(null)}}})(),()=>{a=!0}},[e,t]),!n){let t=e.split("\n"),s=String(t.length).length;return(0,a.jsx)("div",{className:"inline-block min-w-full align-top",children:(0,a.jsx)("table",{className:"min-w-full border-collapse font-mono text-[11px] leading-5",children:(0,a.jsx)("tbody",{children:t.map((e,t)=>(0,a.jsxs)("tr",{className:"hover:bg-white/3",children:[(0,a.jsx)("td",{className:"select-none whitespace-nowrap border-r border-white/6 px-2 text-right text-[var(--vk-text-muted)] opacity-40",style:{minWidth:`${s+2}ch`},children:t+1}),(0,a.jsx)("td",{className:"whitespace-pre px-3 text-[var(--vk-text-normal)]",children:e||"\xa0"})]},t))})})})}return(0,a.jsx)("div",{className:"shiki-viewer inline-block min-w-full align-top [&_.shiki]:!bg-transparent [&_.shiki]:p-0 [&_code]:text-[11px] [&_code]:leading-5 [&_pre]:!bg-transparent [&_pre]:!p-0",dangerouslySetInnerHTML:{__html:n}})}function B({sessionId:e,filePath:t}){let[s,n]=(0,l.useState)(null),[i,r]=(0,l.useState)(!0),[c,d]=(0,l.useState)(null),[o,x]=(0,l.useState)(!1),[u,m]=(0,l.useState)(!1),[h,f]=(0,l.useState)(0);if((0,l.useEffect)(()=>{let s=!1;r(!0),d(null),n(null),x(!1),m(!1),f(0);let a=new URLSearchParams({path:t});return fetch(`/api/sessions/${encodeURIComponent(e)}/files?${a.toString()}`,{cache:"no-store"}).then(async e=>{if(!e.ok)throw Error(`Failed to load file (${e.status})`);return e.json()}).then(e=>{s||(e.binary?x(!0):n("string"==typeof e.content?e.content:""),m(!!e.truncated),f("number"==typeof e.size?e.size:0))}).catch(e=>{s||d(e instanceof Error?e.message:"Failed to load file")}).finally(()=>{s||r(!1)}),()=>{s=!0}},[e,t]),i)return(0,a.jsxs)("div",{className:"flex h-full items-center justify-center gap-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin"}),"Loading…"]});if(c)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center px-4 text-center text-[12px] text-red-400",children:c});if(o&&z.has(W(t))){let s=new URLSearchParams({path:t,raw:"1"}),n=`/api/sessions/${encodeURIComponent(e)}/files?${s.toString()}`;return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-3 p-4",children:[(0,a.jsx)("img",{src:n,alt:t,className:"max-h-[60vh] max-w-full rounded-md object-contain"}),(0,a.jsxs)("span",{className:"text-[11px] text-[var(--vk-text-muted)]",children:[t.split("/").pop(),h>0?` \xb7 ${Z(h)}`:""]})]})}if(o){let e=W(t);return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 px-4 text-center",children:[(0,a.jsx)("div",{className:"rounded-lg bg-white/4 p-4",children:(0,a.jsx)($.A,{className:"mx-auto h-8 w-8 text-[var(--vk-text-muted)]"})}),(0,a.jsxs)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:["Binary file",e?` (.${e})`:""," — preview not available"]}),h>0?(0,a.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)] opacity-60",children:Z(h)}):null]})}let p=function(e){let t=e.split("/").pop()??"";if(O[t])return O[t];let s=t.lastIndexOf(".");if(s>=0){let e=t.slice(s+1).toLowerCase();if(U[e])return U[e]}return"plaintext"}(t);return(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[u?(0,a.jsxs)("div",{className:"shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-1 text-[11px] text-amber-300",children:["File truncated",h>0?` (${Z(h)} total)`:""]}):null,(0,a.jsx)("div",{className:`min-h-0 min-w-0 flex-1 overflow-auto py-2 touch-pan-x ${L.hq}`,children:(0,a.jsx)(X,{code:s??"",lang:p})})]})}function Z(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}function V({sessionId:e,active:t}){let[s,n]=(0,l.useState)([]),[i,r]=(0,l.useState)(!0),[c,d]=(0,l.useState)(null),[o,x]=(0,l.useState)(!1),[u,m]=(0,l.useState)(""),[h,f]=(0,l.useState)(null),[p,v]=(0,l.useState)(new Set),g=(0,l.useRef)(!0),b=(0,l.useCallback)(async()=>{try{r(!0);let t=await fetch(`/api/sessions/${encodeURIComponent(e)}/files`,{cache:"no-store"});if(!t.ok)throw Error(`Failed to load files (${t.status})`);let s=await t.json();if(!g.current)return;n(s.files??[]),x(!!s.truncated),d(null)}catch(e){if(!g.current)return;d(e instanceof Error?e.message:"Failed to load files")}finally{g.current&&r(!1)}},[e]);(0,l.useEffect)(()=>(g.current=!0,t&&b(),()=>{g.current=!1}),[t,b]);let j=(0,l.useMemo)(()=>(function(e){let t={name:"",path:"",children:[],isDir:!0};for(let s of e){let e=s.split("/"),a=t,n="";for(let t=0;t<e.length;t++){let s=e[t];n=n?`${n}/${s}`:s;let l=t===e.length-1,i=a.children.find(e=>e.name===s);i||(i={name:s,path:n,children:[],isDir:!l},a.children.push(i)),a=i}}return function e(t){for(let s of(t.sort((e,t)=>e.isDir!==t.isDir?e.isDir?-1:1:e.name.localeCompare(t.name,void 0,{sensitivity:"base"})),t))s.children.length>0&&e(s.children);return t}(t.children)})(s),[s]),w=(0,l.useMemo)(()=>(function(e,t){if(!t)return e;let s=t.toLowerCase();return function e(t){let a=[];for(let n of t)(function e(t){return!!(t.name.toLowerCase().includes(s)||t.path.toLowerCase().includes(s))||t.children.some(e)})(n)&&(n.isDir?a.push({...n,children:e(n.children)}):a.push(n));return a}(e)})(j,u.trim()),[j,u]);(0,l.useEffect)(()=>{if(u.trim()){let e=new Set;!function t(s){for(let a of s)a.isDir&&(e.add(a.path),t(a.children))}(w),v(e)}},[w,u]);let k=(0,l.useCallback)(e=>{v(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},[]),N=(0,l.useCallback)(e=>{f(e)},[]),y=(0,l.useCallback)(()=>{f(null)},[]);if(i&&0===s.length)return(0,a.jsxs)("div",{className:"flex h-full items-center justify-center gap-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin"}),"Loading workspace files…"]});if(c)return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 p-4 text-center",children:[(0,a.jsx)("p",{className:"text-[12px] text-red-400",children:c}),(0,a.jsx)("button",{type:"button",onClick:()=>void b(),className:"text-[11px] text-[var(--vk-text-muted)] underline hover:text-[var(--vk-text-normal)]",children:"Retry"})]});let S=h?(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col lg:hidden",children:[(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2 border-b border-white/8 px-2 py-2",children:[(0,a.jsx)("button",{type:"button",onClick:y,className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-[var(--vk-text-muted)] hover:bg-white/6","aria-label":"Back to file list",children:(0,a.jsx)(C.A,{className:"h-4 w-4"})}),(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate font-mono text-[11px] text-[var(--vk-text-strong)]",children:h})]}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-hidden",children:(0,a.jsx)(B,{sessionId:e,filePath:h})})]}):null;return(0,a.jsxs)("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[S,(0,a.jsxs)("div",{className:`flex shrink-0 items-center gap-2 border-b border-white/8 px-2 py-1.5 ${h?"hidden lg:flex":""}`,children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-1.5 rounded-md bg-white/4 px-2 py-1.5",children:[(0,a.jsx)(I.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("input",{type:"text",value:u,onChange:e=>m(e.target.value),placeholder:"Search files…",className:"min-w-0 flex-1 bg-transparent text-[12px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]}),(0,a.jsx)("button",{type:"button",onClick:()=>void b(),disabled:i,className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-[var(--vk-text-muted)] hover:bg-white/6 disabled:opacity-50","aria-label":"Refresh files",children:(0,a.jsx)(E.A,{className:`h-3.5 w-3.5 ${i?"animate-spin":""}`})})]}),o?(0,a.jsx)("div",{className:`shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-1.5 text-[11px] text-amber-300 ${h?"hidden lg:block":""}`,children:"File list truncated (4000 file limit)"}):null,(0,a.jsxs)("div",{className:`min-h-0 flex-1 lg:flex lg:flex-row ${h?"hidden lg:flex":"flex flex-col"}`,children:[(0,a.jsx)("div",{className:`min-h-0 flex-1 overflow-y-auto py-1 lg:max-w-[320px] lg:border-r lg:border-white/8 ${L.hq}`,children:0===w.length?(0,a.jsx)("div",{className:"px-3 py-6 text-center text-[12px] text-[var(--vk-text-muted)]",children:u?"No files match your search.":"No files in workspace."}):w.map(e=>(0,a.jsx)(T,{node:e,depth:0,selectedPath:h,expandedDirs:p,onToggleDir:k,onSelectFile:N},e.path))}),(0,a.jsx)("div",{className:"hidden min-h-0 min-w-0 flex-1 lg:block",children:h?(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2 border-b border-white/8 px-3 py-2",children:[(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate font-mono text-[11px] text-[var(--vk-text-strong)]",children:h})]}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-hidden",children:(0,a.jsx)(B,{sessionId:e,filePath:h})})]}):(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-[12px] text-[var(--vk-text-muted)]",children:"Select a file to view its contents"})})]})]})}function G({session:e,sessionId:t,active:s}){let n=(0,l.useMemo)(()=>P(e,"task")??P(e,"prompt")??("string"==typeof e.task?e.task:"")??("string"==typeof e.prompt?e.prompt:""),[e]),i=(0,l.useMemo)(()=>P(e,"agent")??("string"==typeof e.agent?e.agent:""),[e]),r=(0,l.useMemo)(()=>(function(e,t){if(!e||!t)return"";let s=new Date(e).getTime(),a=new Date(t).getTime();if(!Number.isFinite(s)||!Number.isFinite(a)||a<s)return"";let n=Math.floor((a-s)/6e4);if(n<1)return"<1m";if(n<60)return`${n}m`;let l=Math.floor(n/60);return`${l}h ${n%60}m`})(P(e,"startedAt")??e.startedAt,P(e,"finishedAt")??e.finishedAt),[e]),c=(0,l.useMemo)(()=>(function(e){if("number"==typeof e.cost)return e.cost;let t=e.metadata.cost;if("string"!=typeof t)return 0;try{let e=JSON.parse(t),s="number"==typeof e.estimatedCostUsd?e.estimatedCostUsd:0,a="number"==typeof e.totalUSD?e.totalUSD:0;return s??a}catch{return 0}})(e),[e]),d=(0,l.useMemo)(()=>F(P(e,"queuePosition")),[e]),o=(0,l.useMemo)(()=>F(P(e,"queueDepth")),[e]),x=(0,l.useMemo)(()=>P(e,"recoveryState")??"",[e]),u=(0,l.useMemo)(()=>"queued"===e.status?d?`Waiting in queue at position ${d}${o?` of ${o}`:""}.`:"Waiting in the launch queue.":"requeued_after_restart"===x?"Session recovered after backend restart and requeued.":"reattach_pending"===x?"Recovering terminal runtime after backend restart.":"detached_runtime"===x?"Backend restarted while agent may still be running.":"resume_required"===x?"Session recovered after restart. Send a message to resume.":"",[o,d,x,e.status]);return(0,a.jsxs)("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[u?(0,a.jsx)("div",{className:"shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-2",children:(0,a.jsx)("p",{className:"text-[12px] leading-snug text-amber-300",children:u})}):null,n?(0,a.jsx)("div",{className:"shrink-0 border-b border-white/8 px-3 py-2.5",children:(0,a.jsx)("p",{className:"line-clamp-3 whitespace-pre-wrap text-[13px] leading-relaxed text-[var(--vk-text-normal)]",children:n})}):null,(0,a.jsxs)("div",{className:"flex shrink-0 flex-wrap items-center gap-x-4 gap-y-1 border-b border-white/8 px-3 py-2 text-[11px] text-[var(--vk-text-muted)]",children:[i?(0,a.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(q.N,{seed:{label:i},className:"h-4 w-4"}),(0,a.jsx)("span",{children:i})]}):null,e.branch?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(M.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsx)(D,{text:e.branch})]}):null,r?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(_.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsx)("span",{children:r})]}):null,c>0?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(R.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsxs)("span",{children:["$",c.toFixed(3)]})]}):null]}),(0,a.jsxs)("div",{className:"flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden border-t border-white/8",children:[(0,a.jsx)("div",{className:"shrink-0 border-b border-white/8 px-3 py-2",children:(0,a.jsx)("p",{className:"text-[11px] font-medium uppercase tracking-wide text-[var(--vk-text-muted)]",children:"Workspace files"})}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-hidden",children:(0,a.jsx)(V,{sessionId:t,active:s})})]})]})}var K=s(40448),J=s(50549),H=s(26083),Q=s(31404),Y=s(59207),ee=s(46916);let et="block h-5 w-5 shrink-0 object-contain",es=[{id:"finder",label:"Finder"},{id:"cursor",label:"Cursor"},{id:"antigravity",label:"Antigravity"},{id:"windsurf",label:"Windsurf"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"custom",label:"Custom"}],ea={finder:{kind:"image",imageSrc:"/icons/ide/finder.svg",className:et},vscode:{kind:"image",imageSrc:"/icons/ide/vscode-dark.svg",className:et},"vscode-insiders":{kind:"image",imageSrc:"/icons/ide/vscode-insiders.svg",className:et},cursor:{kind:"image",imageSrc:"/icons/ide/cursor-dark.svg",className:et},windsurf:{kind:"image",imageSrc:"/icons/ide/windsurf-dark.svg",className:et},"intellij-idea":{kind:"image",imageSrc:"/icons/ide/intellij.svg",className:et},zed:{kind:"image",imageSrc:"/icons/ide/zed-dark.svg",className:et},xcode:{kind:"image",imageSrc:"/icons/ide/xcode.svg",className:et},antigravity:{kind:"image",imageSrc:"/icons/ide/antigravity-dark.svg",className:et},custom:{kind:"icon",className:`${et} text-[var(--vk-text-muted)]`}};function en({editorId:e,label:t}){let s=ea[e];return s?"icon"===s.kind?(0,a.jsx)(J.A,{className:s?.className??`${et} text-[var(--vk-text-muted)]`}):(0,a.jsx)("img",{src:s.imageSrc,alt:`${t} logo`,className:s.className}):(0,a.jsx)(J.A,{className:`${et} text-[var(--vk-text-muted)]`})}function el({projectId:e,bridgeId:t,label:s="Open",triggerClassName:n}){let{preferences:i}=(0,Y.g)(t),[r,c]=(0,l.useState)(null),d=(0,l.useMemo)(()=>{var e;return e=i?.ide??"vscode",es.find(t=>t.id===e)??{id:e,label:e}},[i?.ide]);async function o(s){if(e&&!r){c(s);try{let a=await fetch((0,Q.S)(`/api/projects/${encodeURIComponent(e)}/open`,t),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({ide:s})}),n=await a.json().catch(()=>null);if(!a.ok)throw Error(n?.error??`Failed to open project (${a.status})`)}catch(e){window.alert(e instanceof Error?e.message:"Failed to open project")}finally{c(null)}}}return(0,a.jsxs)(K.bL,{children:[(0,a.jsx)(K.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",disabled:!e||null!==r,className:(0,ee.cn)("inline-flex h-9 items-center gap-2 rounded-[6px] border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.03)] px-3 text-[13px] text-[var(--vk-text-normal)] transition hover:bg-[rgba(255,255,255,0.06)] disabled:cursor-not-allowed disabled:opacity-60",n),"aria-label":"Open project in code editor",title:e?`Open project in ${d.label}`:"No project selected",children:[r?(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin text-current"}):(0,a.jsx)(H.A,{className:"h-4 w-4 text-current"}),(0,a.jsx)("span",{className:"hidden font-medium sm:inline",children:s}),(0,a.jsx)(k.A,{className:"h-3.5 w-3.5 text-current"})]})}),(0,a.jsx)(K.ZL,{children:(0,a.jsx)(K.UC,{align:"end",sideOffset:8,className:"z-50 min-w-[240px] rounded-[8px] border border-[rgba(255,255,255,0.08)] bg-[#1c1a19] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.45)]",children:es.map(e=>(0,a.jsxs)(K.q7,{onSelect:()=>void o(e.id),className:"flex min-h-[44px] cursor-default items-center gap-3 rounded-[6px] px-3 py-2 text-[14px] text-[#f3efea] outline-none transition hover:bg-[rgba(255,255,255,0.06)] focus:bg-[rgba(255,255,255,0.06)]",children:[(0,a.jsx)(en,{editorId:e.id,label:e.label}),(0,a.jsx)("span",{className:"flex-1",children:e.label}),d.id===e.id?(0,a.jsx)(j.A,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}):null]},e.id))})})]})}let ei=(0,n.default)(function(){return s.e(883).then(s.bind(s,883)).then(e=>e.SessionTerminal)},{loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading terminal..."})}),er=(0,n.default)(()=>Promise.all([s.e(3971),s.e(2799)]).then(s.bind(s,22799)).then(e=>e.SessionPreview),{loadableGenerated:{webpack:()=>[22799]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading preview..."})}),ec=(0,n.default)(()=>s.e(633).then(s.bind(s,60633)).then(e=>e.SessionDiff),{loadableGenerated:{webpack:()=>[60633]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading review…"}),ssr:!1}),ed=(0,n.default)(()=>s.e(1874).then(s.bind(s,81874)).then(e=>e.SessionSkills),{loadableGenerated:{webpack:()=>[81874]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading skills..."})}),eo=(0,n.default)(()=>Promise.all([s.e(9526),s.e(2651),s.e(2261),s.e(9847)]).then(s.bind(s,52261)).then(e=>e.DispatcherPane),{loadableGenerated:{webpack:()=>[52261]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading dispatcher..."})}),ex="min-h-0 h-full min-w-0 w-full overflow-hidden focus-visible:outline-none [&[hidden]]:block data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:invisible data-[state=inactive]:opacity-0",eu="min-h-0 h-full min-w-0 w-full overflow-hidden focus-visible:outline-none [&[hidden]]:block data-[state=active]:relative data-[state=active]:z-10 data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:opacity-0 data-[state=inactive]:select-none";function em(e,t){let s=(0,b.tK)(t);return"overview"===e||"preview"===e||"skills"===e||"diff"===e?e:"dispatcher"===e||"terminal"===e?"dispatcher"===s?"dispatcher":"terminal":s}function eh({sessionId:e,initialSession:t=null,bridgeId:s=null,immersiveMobileMode:n=!1,active:j=!0,suppressPreviewAutoOpen:w=!1,onOpenSidebar:k}){let N=(0,i.usePathname)(),y=(0,i.useRouter)(),S=(0,i.useSearchParams)(),{session:$,loading:A,error:C}=(0,v.w)(e,t,{enabled:j,bridgeId:s}),I=(0,l.useRef)(0),E=(0,l.useRef)(!1),[M,_]=(0,l.useState)(null),R=(0,l.useMemo)(()=>em(S.get("tab"),$),[S,$]),q=(0,l.useCallback)(e=>{let t=em(e,$),s=(0,b.tK)($),a=new URLSearchParams(S.toString());t===s?a.delete("tab"):a.set("tab",t);let n=a.toString(),l=n.length>0?`${N}?${n}`:N;y.replace(l,{scroll:!1})},[N,y,S,$]);(0,l.useEffect)(()=>{if(!$)return;let e=S.get("tab"),t=em(e,$),s=t===(0,b.tK)($)?null:t;if((e?.trim()?e:null)===s)return;let a=new URLSearchParams(S.toString());s?a.set("tab",s):a.delete("tab");let n=a.toString(),l=n.length>0?`${N}?${n}`:N;y.replace(l,{scroll:!1})},[N,y,S,$]);let D=(0,l.useCallback)(e=>{I.current+=1,_({nonce:I.current,...e})},[]);(0,l.useEffect)(()=>{E.current=!1,I.current=0,_(null)},[e]);let P=(0,l.useCallback)(e=>{(function({active:e,activeTab:t,alreadyOpened:s,connected:a,suppressAutoOpen:n}){return a&&e&&"terminal"===t&&!s&&!n})({active:j,activeTab:R,alreadyOpened:E.current,connected:e,suppressAutoOpen:w})&&(E.current=!0,q("preview"))},[j,R,q,w]);if(A)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(f.Zp,{className:"w-full max-w-md",children:(0,a.jsx)(f.Wu,{className:"py-7 text-center text-[13px] text-[var(--text-muted)]",children:"Loading session workspace..."})})});if(C)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(f.Zp,{className:"w-full max-w-md border-[color:color-mix(in_srgb,var(--status-error)_45%,transparent)]",children:(0,a.jsx)(f.Wu,{className:"py-7 text-center text-[13px] text-[var(--status-error)]",children:C})})});if(!$)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(f.Zp,{className:"w-full max-w-md",children:(0,a.jsx)(f.Wu,{className:"py-7 text-center text-[13px] text-[var(--text-muted)]",children:"Session not found"})})});let F="string"==typeof $.status?$.status:"unknown",T=(0,b.Zu)($),U=function(e){switch(e){case"needs_input":return"needs input";case"working":return"working";case"running":return"running";case"spawning":return"spawning";case"queued":return"queued";default:return e.replace(/[_-]+/g," ")}}(F),O=function(e){switch(e){case"working":case"running":return"bg-amber-400";case"needs_input":return"bg-blue-400";case"spawning":case"queued":default:return"bg-gray-400";case"done":return"bg-emerald-400";case"errored":return"bg-red-400";case"stuck":return"bg-[var(--vk-accent)]";case"terminated":case"killed":return"bg-gray-500"}}(F),z="working"===F||"running"===F||"spawning"===F||"queued"===F||"needs_input"===F,W="queued"!==F&&"spawning"!==F,X=j&&n&&"terminal"===R,B=j&&"preview"===R,Z=j&&"diff"===R,V="min-h-[38px] gap-1.5 px-2.5 text-[12px] sm:min-h-0 sm:px-3",K=(0,g.kV)(e).slice(0,7),J=(0,a.jsxs)(h.j7,{className:"flex w-full overflow-x-auto sm:w-fit sm:inline-flex",children:[(0,a.jsxs)(h.Xi,{value:"overview",className:V,children:[(0,a.jsx)(r.A,{className:"h-3.5 w-3.5"}),"Overview"]}),(0,a.jsxs)(h.Xi,{value:"diff",className:V,children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5"}),"Review"]}),T?(0,a.jsxs)(h.Xi,{value:"dispatcher",className:V,children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5"}),"Dispatcher"]}):(0,a.jsxs)(h.Xi,{value:"terminal",className:V,children:[(0,a.jsx)(o.A,{className:"h-3.5 w-3.5"}),"Terminal"]}),(0,a.jsxs)(h.Xi,{value:"preview",className:V,children:[(0,a.jsx)(x.A,{className:"h-3.5 w-3.5"}),"Preview"]}),(0,a.jsxs)(h.Xi,{value:"skills",className:V,children:[(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),"Skills"]})]});return(0,a.jsx)("div",{className:(0,L.re)(X),"data-conductor-session-terminal":"ttyd-iframe",children:(0,a.jsxs)(h.tU,{value:R,onValueChange:q,className:X?"flex min-h-0 min-w-0 w-full flex-1 flex-col gap-0 p-0":"flex min-h-0 min-w-0 w-full flex-1 flex-col gap-1 p-1 lg:gap-2 lg:p-3",children:[X?(0,a.jsxs)("div",{className:"flex shrink-0 flex-col border-b border-white/10 bg-[#0d0908]",children:[(0,a.jsxs)("div",{className:"flex h-10 items-center gap-2 px-2",children:[k?(0,a.jsx)(p.$,{type:"button",variant:"ghost",size:"icon",className:"h-8 w-8 shrink-0 text-[#8e847d] hover:text-[#c9c0b7]",onClick:k,"aria-label":"Open workspace panel",children:(0,a.jsx)(m.A,{className:"h-4 w-4"})}):null,(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-1.5",children:[(0,a.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${O}${z?" animate-pulse":""}`}),(0,a.jsx)("span",{className:"text-[12px] font-medium text-[#efe8e1]",children:U}),(0,a.jsxs)("span",{className:"font-mono text-[10px] text-[#8e847d]",children:["\xb7 ",K]})]}),W?(0,a.jsx)(el,{projectId:$.projectId,bridgeId:$.bridgeId??null}):null]}),(0,a.jsx)("div",{className:"px-1.5 pb-1.5",children:J})]}):(0,a.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1.5 sm:flex-nowrap",children:[J,(0,a.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 sm:ml-auto sm:w-auto sm:justify-end",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${O}${z?" animate-pulse":""}`}),(0,a.jsx)("span",{className:"text-[11px] text-[var(--vk-text-muted)]",children:U}),(0,a.jsxs)("span",{className:"hidden font-mono text-[10px] text-[var(--vk-text-muted)] sm:inline",children:["\xb7 ",K]})]}),W?(0,a.jsx)(el,{projectId:$.projectId,bridgeId:$.bridgeId??null}):null]})]}),(0,a.jsxs)("div",{className:"relative min-h-0 min-w-0 h-0 flex-1 overflow-hidden",children:[(0,a.jsx)(h.av,{value:"overview",className:ex,children:(0,a.jsx)(G,{session:$,sessionId:e,active:j&&"overview"===R})}),(0,a.jsx)(h.av,{value:"diff",className:`${ex} flex min-h-0 flex-col`,children:(0,a.jsx)(ec,{sessionId:e,active:Z})}),T?(0,a.jsx)(h.av,{value:"dispatcher",forceMount:!0,className:eu,children:(0,a.jsx)(eo,{thread:$,projectId:$.projectId,bridgeId:$.bridgeId??s,active:j&&"dispatcher"===R,className:"h-full w-full border-0 xl:w-full"})}):(0,a.jsx)(h.av,{value:"terminal",forceMount:!0,className:X?`flex min-h-0 h-full min-w-0 w-full flex-col overflow-hidden bg-[#060404] ${eu}`:`flex min-h-0 h-full min-w-0 w-full flex-col overflow-hidden bg-transparent ${eu}`,children:(0,a.jsx)(ei,{sessionId:e,projectId:$.projectId,bridgeId:$.bridgeId??null,sessionState:F,runtimeMode:$.metadata.runtimeMode?.trim()??null,pendingInsert:M,immersiveMobileMode:X,panelVisible:j&&"terminal"===R,onPendingInsertConsumed:()=>_(null)})}),(0,a.jsx)(h.av,{value:"preview",forceMount:!0,className:`${eu} flex min-h-0 flex-col`,children:(0,a.jsx)(er,{sessionId:e,active:B,onQueueTerminalInsert:D,onConnectionChange:P},e)}),(0,a.jsx)(h.av,{value:"skills",className:ex,children:(0,a.jsx)(ed,{session:$,sessionId:e,active:j&&"skills"===R})})]})]},e)})}},40443:(e,t,s)=>{s.d(t,{Wu:()=>r,Zp:()=>l,aR:()=>i});var a=s(54568),n=s(46916);let l=(0,s(7620).forwardRef)(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,n.cn)("surface-card rounded-[var(--radius-md)] border",e),...t}));function i({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("flex items-center gap-2 border-b border-[var(--vk-border)] px-3 py-2",e),...t})}function r({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("px-3 py-2",e),...t})}l.displayName="Card"},59207:(e,t,s)=>{s.d(t,{g:()=>i});var a=s(7620),n=s(31404);function l(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function i(e,t){let s=t?.enabled??!0,[i,r]=(0,a.useState)(null),[c,d]=(0,a.useState)(s),[o,x]=(0,a.useState)(null),u=(0,a.useCallback)(async()=>{if(!s){r(null),x(null),d(!1);return}try{var t;let s,a,i,c=await fetch((0,n.S)("/api/preferences",e)),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??d?.reason??`Failed to load preferences: ${c.status}`);r((t=d?.preferences,s=l(t),i=(a=l(s.notifications)).soundFile,{onboardingAcknowledged:!0===s.onboardingAcknowledged,codingAgent:"string"==typeof s.codingAgent&&s.codingAgent.trim().length>0?s.codingAgent.trim():"claude-code",ide:"string"==typeof s.ide&&s.ide.trim().length>0?s.ide.trim():"vscode",markdownEditor:"string"==typeof s.markdownEditor&&s.markdownEditor.trim().length>0?s.markdownEditor.trim():"obsidian",markdownEditorPath:"string"==typeof s.markdownEditorPath?s.markdownEditorPath.trim():"",notifications:{soundEnabled:!1!==a.soundEnabled,soundFile:null===i?null:"string"==typeof i&&i.trim().length>0?i.trim():"abstract-sound-4"}})),x(null)}catch(e){r(null),x(e instanceof Error?e.message:"Failed to load preferences")}finally{d(!1)}},[e,s]);return(0,a.useEffect)(()=>{s&&u()},[s,u]),{preferences:s?i:null,loading:!!s&&c,error:s?o:null,refresh:u}}},64357:(e,t,s)=>{s.d(t,{Xi:()=>d,av:()=>o,j7:()=>c,tU:()=>r});var a=s(54568),n=s(35131),l=s(7620),i=s(46916);let r=n.bL,c=(0,l.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(n.B8,{ref:s,className:(0,i.cn)("inline-flex max-w-full items-center gap-0.5 overflow-x-auto rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-0.5 whitespace-nowrap touch-pan-x [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",e),...t}));c.displayName="TabsList";let d=(0,l.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(n.l9,{ref:s,className:(0,i.cn)("inline-flex min-h-[34px] shrink-0 items-center gap-1.5 rounded-[3px] px-2.5 py-1.5 text-[12px] text-[var(--vk-text-muted)]","data-[state=active]:bg-[var(--vk-bg-active)] data-[state=active]:text-[var(--vk-text-normal)]","hover:text-[var(--vk-text-normal)]","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--vk-orange)]",e),...t}));d.displayName="TabsTrigger";let o=(0,l.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(n.UC,{ref:s,className:(0,i.cn)("focus-visible:outline-none",e),...t}));o.displayName="TabsContent"}}]);
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5493],{33507:(e,t,s)=>{s.d(t,{VM:()=>l,hq:()=>a,qg:()=>n,re:()=>i});let a="overscroll-contain touch-pan-y [-webkit-overflow-scrolling:touch]",n="min-h-0 flex-1 overflow-hidden bg-[#0f1012] p-3",l=a;function i(e){return["flex h-full min-h-0 min-w-0 w-full flex-col",e?"overflow-hidden bg-[#060404]":"overflow-hidden"].join(" ")}},35493:(e,t,s)=>{s.r(t),s.d(t,{SessionDetail:()=>eh});var a=s(54568),n=s(42925),l=s(7620),i=s(79748),r=s(7920),c=s(96611),d=s(46548),o=s(69863),x=s(97380),u=s(41007),m=s(90466),h=s(64357),f=s(40443),p=s(76081),v=s(35821),g=s(10926),b=s(76050),j=s(34309),w=s(59706),k=s(34041),N=s(76265),y=s(45894),S=s(26463),$=s(96249),A=s(58299),C=s(56050),I=s(23555),E=s(60527),M=s(58588),_=s(99844),R=s(5881),q=s(72410),L=s(33507);function D({text:e}){let[t,s]=(0,l.useState)(!1);async function n(){try{await navigator.clipboard.writeText(e),s(!0),window.setTimeout(()=>s(!1),1400)}catch{}}return(0,a.jsxs)("button",{type:"button",onClick:()=>void n(),className:"inline-flex max-w-[180px] items-center gap-1 font-mono text-[11px] text-[var(--vk-text-muted)] transition-colors hover:text-[var(--vk-text-normal)]",children:[(0,a.jsx)("span",{className:"truncate",children:e}),t?(0,a.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-emerald-400"}):(0,a.jsx)(w.A,{className:"h-3 w-3 shrink-0 opacity-50"})]})}function P(e,t){let s=e.metadata[t];return"string"==typeof s&&s.trim().length>0?s:void 0}function F(e){if(!e)return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:null}function T({node:e,depth:t,selectedPath:s,expandedDirs:n,onToggleDir:l,onSelectFile:i}){let r=n.has(e.path),c=e.path===s,d=8+16*t;return e.isDir?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("button",{type:"button",onClick:()=>l(e.path),className:"flex w-full items-center gap-1.5 py-1.5 text-left text-[12px] text-[var(--vk-text-muted)] hover:bg-white/4 active:bg-white/6",style:{paddingLeft:d},children:[r?(0,a.jsx)(k.A,{className:"h-3 w-3 shrink-0 opacity-50"}):(0,a.jsx)(N.A,{className:"h-3 w-3 shrink-0 opacity-50"}),r?(0,a.jsx)(y.A,{className:"h-3.5 w-3.5 shrink-0 text-amber-400/70"}):(0,a.jsx)(S.A,{className:"h-3.5 w-3.5 shrink-0 text-amber-400/70"}),(0,a.jsx)("span",{className:"truncate",children:e.name})]}),r?e.children.map(e=>(0,a.jsx)(T,{node:e,depth:t+1,selectedPath:s,expandedDirs:n,onToggleDir:l,onSelectFile:i},e.path)):null]}):(0,a.jsxs)("button",{type:"button",onClick:()=>i(e.path),className:`flex w-full items-center gap-1.5 py-1.5 pr-2 text-left text-[12px] transition-colors ${c?"bg-blue-500/10 text-[var(--vk-text-strong)]":"text-[var(--vk-text-normal)] hover:bg-white/4"}`,style:{paddingLeft:d+16},children:[(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate",children:e.name})]})}let U={js:"javascript",jsx:"jsx",ts:"typescript",tsx:"tsx",mjs:"javascript",cjs:"javascript",mts:"typescript",cts:"typescript",html:"html",htm:"html",css:"css",scss:"scss",sass:"sass",less:"less",vue:"vue",svelte:"svelte",astro:"astro",json:"json",jsonc:"jsonc",json5:"json5",yaml:"yaml",yml:"yaml",toml:"toml",ini:"ini",xml:"xml",svg:"xml",plist:"xml",csv:"csv",tsv:"csv",md:"markdown",mdx:"mdx",tex:"latex",rst:"rst",rs:"rust",go:"go",c:"c",h:"c",cpp:"cpp",cc:"cpp",cxx:"cpp",hpp:"cpp",hh:"cpp",cs:"csharp",java:"java",kt:"kotlin",kts:"kotlin",scala:"scala",swift:"swift",m:"objective-c",mm:"objective-cpp",zig:"zig",nim:"nim",v:"v",d:"d",py:"python",pyi:"python",rb:"ruby",php:"php",pl:"perl",pm:"perl",lua:"lua",r:"r",R:"r",jl:"julia",ex:"elixir",exs:"elixir",erl:"erlang",hrl:"erlang",hs:"haskell",lhs:"haskell",clj:"clojure",cljs:"clojure",ml:"ocaml",mli:"ocaml",fs:"fsharp",fsx:"fsharp",sh:"bash",bash:"bash",zsh:"bash",fish:"fish",ps1:"powershell",psm1:"powershell",bat:"bat",cmd:"bat",dockerfile:"dockerfile",containerfile:"dockerfile",tf:"hcl",hcl:"hcl",nix:"nix",sql:"sql",graphql:"graphql",gql:"graphql",prisma:"prisma",proto:"protobuf",thrift:"thrift",makefile:"makefile",cmake:"cmake",asm:"asm",s:"asm",diff:"diff",patch:"diff",log:"log",txt:"plaintext",env:"dotenv",lock:"json"},O={makefile:"makefile",Makefile:"makefile",dockerfile:"dockerfile",Dockerfile:"dockerfile",containerfile:"dockerfile",Containerfile:"dockerfile",gemfile:"ruby",Gemfile:"ruby",rakefile:"ruby",Rakefile:"ruby",cmakelists:"cmake",CMakeLists:"cmake",".gitignore":"gitignore",".dockerignore":"gitignore",".editorconfig":"ini",".prettierrc":"json",".eslintrc":"json",".babelrc":"json",".env":"dotenv",".env.local":"dotenv",".env.production":"dotenv","tsconfig.json":"jsonc","jsconfig.json":"jsonc"},z=new Set(["png","jpg","jpeg","gif","webp","svg","ico","bmp","avif"]);function W(e){let t=e.split("/").pop()??"",s=t.lastIndexOf(".");return s>=0?t.slice(s+1).toLowerCase():""}function X({code:e,lang:t}){let[n,i]=(0,l.useState)(null),r=(0,l.useRef)(e),c=(0,l.useRef)(t);if((0,l.useEffect)(()=>{r.current=e,c.current=t;let a=!1;return(async()=>{try{let{codeToHtml:n}=await Promise.all([s.e(9526),s.e(3838)]).then(s.bind(s,13838));if(a)return;let l=await n(e,{lang:t,theme:"github-dark-default"});a||r.current!==e||c.current!==t||i(l)}catch{if(a)return;try{let{codeToHtml:t}=await Promise.all([s.e(9526),s.e(3838)]).then(s.bind(s,13838));if(a)return;let n=await t(e,{lang:"plaintext",theme:"github-dark-default"});a||i(n)}catch{a||i(null)}}})(),()=>{a=!0}},[e,t]),!n){let t=e.split("\n"),s=String(t.length).length;return(0,a.jsx)("div",{className:"inline-block min-w-full align-top",children:(0,a.jsx)("table",{className:"min-w-full border-collapse font-mono text-[11px] leading-5",children:(0,a.jsx)("tbody",{children:t.map((e,t)=>(0,a.jsxs)("tr",{className:"hover:bg-white/3",children:[(0,a.jsx)("td",{className:"select-none whitespace-nowrap border-r border-white/6 px-2 text-right text-[var(--vk-text-muted)] opacity-40",style:{minWidth:`${s+2}ch`},children:t+1}),(0,a.jsx)("td",{className:"whitespace-pre px-3 text-[var(--vk-text-normal)]",children:e||"\xa0"})]},t))})})})}return(0,a.jsx)("div",{className:"shiki-viewer inline-block min-w-full align-top [&_.shiki]:!bg-transparent [&_.shiki]:p-0 [&_code]:text-[11px] [&_code]:leading-5 [&_pre]:!bg-transparent [&_pre]:!p-0",dangerouslySetInnerHTML:{__html:n}})}function B({sessionId:e,filePath:t}){let[s,n]=(0,l.useState)(null),[i,r]=(0,l.useState)(!0),[c,d]=(0,l.useState)(null),[o,x]=(0,l.useState)(!1),[u,m]=(0,l.useState)(!1),[h,f]=(0,l.useState)(0);if((0,l.useEffect)(()=>{let s=!1;r(!0),d(null),n(null),x(!1),m(!1),f(0);let a=new URLSearchParams({path:t});return fetch(`/api/sessions/${encodeURIComponent(e)}/files?${a.toString()}`,{cache:"no-store"}).then(async e=>{if(!e.ok)throw Error(`Failed to load file (${e.status})`);return e.json()}).then(e=>{s||(e.binary?x(!0):n("string"==typeof e.content?e.content:""),m(!!e.truncated),f("number"==typeof e.size?e.size:0))}).catch(e=>{s||d(e instanceof Error?e.message:"Failed to load file")}).finally(()=>{s||r(!1)}),()=>{s=!0}},[e,t]),i)return(0,a.jsxs)("div",{className:"flex h-full items-center justify-center gap-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin"}),"Loading…"]});if(c)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center px-4 text-center text-[12px] text-red-400",children:c});if(o&&z.has(W(t))){let s=new URLSearchParams({path:t,raw:"1"}),n=`/api/sessions/${encodeURIComponent(e)}/files?${s.toString()}`;return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-3 p-4",children:[(0,a.jsx)("img",{src:n,alt:t,className:"max-h-[60vh] max-w-full rounded-md object-contain"}),(0,a.jsxs)("span",{className:"text-[11px] text-[var(--vk-text-muted)]",children:[t.split("/").pop(),h>0?` \xb7 ${Z(h)}`:""]})]})}if(o){let e=W(t);return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 px-4 text-center",children:[(0,a.jsx)("div",{className:"rounded-lg bg-white/4 p-4",children:(0,a.jsx)($.A,{className:"mx-auto h-8 w-8 text-[var(--vk-text-muted)]"})}),(0,a.jsxs)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:["Binary file",e?` (.${e})`:""," — preview not available"]}),h>0?(0,a.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)] opacity-60",children:Z(h)}):null]})}let p=function(e){let t=e.split("/").pop()??"";if(O[t])return O[t];let s=t.lastIndexOf(".");if(s>=0){let e=t.slice(s+1).toLowerCase();if(U[e])return U[e]}return"plaintext"}(t);return(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[u?(0,a.jsxs)("div",{className:"shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-1 text-[11px] text-amber-300",children:["File truncated",h>0?` (${Z(h)} total)`:""]}):null,(0,a.jsx)("div",{className:`min-h-0 min-w-0 flex-1 overflow-auto py-2 touch-pan-x ${L.hq}`,children:(0,a.jsx)(X,{code:s??"",lang:p})})]})}function Z(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}function V({sessionId:e,active:t}){let[s,n]=(0,l.useState)([]),[i,r]=(0,l.useState)(!0),[c,d]=(0,l.useState)(null),[o,x]=(0,l.useState)(!1),[u,m]=(0,l.useState)(""),[h,f]=(0,l.useState)(null),[p,v]=(0,l.useState)(new Set),g=(0,l.useRef)(!0),b=(0,l.useCallback)(async()=>{try{r(!0);let t=await fetch(`/api/sessions/${encodeURIComponent(e)}/files`,{cache:"no-store"});if(!t.ok)throw Error(`Failed to load files (${t.status})`);let s=await t.json();if(!g.current)return;n(s.files??[]),x(!!s.truncated),d(null)}catch(e){if(!g.current)return;d(e instanceof Error?e.message:"Failed to load files")}finally{g.current&&r(!1)}},[e]);(0,l.useEffect)(()=>(g.current=!0,t&&b(),()=>{g.current=!1}),[t,b]);let j=(0,l.useMemo)(()=>(function(e){let t={name:"",path:"",children:[],isDir:!0};for(let s of e){let e=s.split("/"),a=t,n="";for(let t=0;t<e.length;t++){let s=e[t];n=n?`${n}/${s}`:s;let l=t===e.length-1,i=a.children.find(e=>e.name===s);i||(i={name:s,path:n,children:[],isDir:!l},a.children.push(i)),a=i}}return function e(t){for(let s of(t.sort((e,t)=>e.isDir!==t.isDir?e.isDir?-1:1:e.name.localeCompare(t.name,void 0,{sensitivity:"base"})),t))s.children.length>0&&e(s.children);return t}(t.children)})(s),[s]),w=(0,l.useMemo)(()=>(function(e,t){if(!t)return e;let s=t.toLowerCase();return function e(t){let a=[];for(let n of t)(function e(t){return!!(t.name.toLowerCase().includes(s)||t.path.toLowerCase().includes(s))||t.children.some(e)})(n)&&(n.isDir?a.push({...n,children:e(n.children)}):a.push(n));return a}(e)})(j,u.trim()),[j,u]);(0,l.useEffect)(()=>{if(u.trim()){let e=new Set;!function t(s){for(let a of s)a.isDir&&(e.add(a.path),t(a.children))}(w),v(e)}},[w,u]);let k=(0,l.useCallback)(e=>{v(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},[]),N=(0,l.useCallback)(e=>{f(e)},[]),y=(0,l.useCallback)(()=>{f(null)},[]);if(i&&0===s.length)return(0,a.jsxs)("div",{className:"flex h-full items-center justify-center gap-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin"}),"Loading workspace files…"]});if(c)return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 p-4 text-center",children:[(0,a.jsx)("p",{className:"text-[12px] text-red-400",children:c}),(0,a.jsx)("button",{type:"button",onClick:()=>void b(),className:"text-[11px] text-[var(--vk-text-muted)] underline hover:text-[var(--vk-text-normal)]",children:"Retry"})]});let S=h?(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col lg:hidden",children:[(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2 border-b border-white/8 px-2 py-2",children:[(0,a.jsx)("button",{type:"button",onClick:y,className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-[var(--vk-text-muted)] hover:bg-white/6","aria-label":"Back to file list",children:(0,a.jsx)(C.A,{className:"h-4 w-4"})}),(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate font-mono text-[11px] text-[var(--vk-text-strong)]",children:h})]}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-hidden",children:(0,a.jsx)(B,{sessionId:e,filePath:h})})]}):null;return(0,a.jsxs)("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[S,(0,a.jsxs)("div",{className:`flex shrink-0 items-center gap-2 border-b border-white/8 px-2 py-1.5 ${h?"hidden lg:flex":""}`,children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-1.5 rounded-md bg-white/4 px-2 py-1.5",children:[(0,a.jsx)(I.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("input",{type:"text",value:u,onChange:e=>m(e.target.value),placeholder:"Search files…",className:"min-w-0 flex-1 bg-transparent text-[12px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]}),(0,a.jsx)("button",{type:"button",onClick:()=>void b(),disabled:i,className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-[var(--vk-text-muted)] hover:bg-white/6 disabled:opacity-50","aria-label":"Refresh files",children:(0,a.jsx)(E.A,{className:`h-3.5 w-3.5 ${i?"animate-spin":""}`})})]}),o?(0,a.jsx)("div",{className:`shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-1.5 text-[11px] text-amber-300 ${h?"hidden lg:block":""}`,children:"File list truncated (4000 file limit)"}):null,(0,a.jsxs)("div",{className:`min-h-0 flex-1 lg:flex lg:flex-row ${h?"hidden lg:flex":"flex flex-col"}`,children:[(0,a.jsx)("div",{className:`min-h-0 flex-1 overflow-y-auto py-1 lg:max-w-[320px] lg:border-r lg:border-white/8 ${L.hq}`,children:0===w.length?(0,a.jsx)("div",{className:"px-3 py-6 text-center text-[12px] text-[var(--vk-text-muted)]",children:u?"No files match your search.":"No files in workspace."}):w.map(e=>(0,a.jsx)(T,{node:e,depth:0,selectedPath:h,expandedDirs:p,onToggleDir:k,onSelectFile:N},e.path))}),(0,a.jsx)("div",{className:"hidden min-h-0 min-w-0 flex-1 lg:block",children:h?(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2 border-b border-white/8 px-3 py-2",children:[(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate font-mono text-[11px] text-[var(--vk-text-strong)]",children:h})]}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-hidden",children:(0,a.jsx)(B,{sessionId:e,filePath:h})})]}):(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-[12px] text-[var(--vk-text-muted)]",children:"Select a file to view its contents"})})]})]})}function G({session:e,sessionId:t,active:s}){let n=(0,l.useMemo)(()=>P(e,"task")??P(e,"prompt")??("string"==typeof e.task?e.task:"")??("string"==typeof e.prompt?e.prompt:""),[e]),i=(0,l.useMemo)(()=>P(e,"agent")??("string"==typeof e.agent?e.agent:""),[e]),r=(0,l.useMemo)(()=>(function(e,t){if(!e||!t)return"";let s=new Date(e).getTime(),a=new Date(t).getTime();if(!Number.isFinite(s)||!Number.isFinite(a)||a<s)return"";let n=Math.floor((a-s)/6e4);if(n<1)return"<1m";if(n<60)return`${n}m`;let l=Math.floor(n/60);return`${l}h ${n%60}m`})(P(e,"startedAt")??e.startedAt,P(e,"finishedAt")??e.finishedAt),[e]),c=(0,l.useMemo)(()=>(function(e){if("number"==typeof e.cost)return e.cost;let t=e.metadata.cost;if("string"!=typeof t)return 0;try{let e=JSON.parse(t),s="number"==typeof e.estimatedCostUsd?e.estimatedCostUsd:0,a="number"==typeof e.totalUSD?e.totalUSD:0;return s??a}catch{return 0}})(e),[e]),d=(0,l.useMemo)(()=>F(P(e,"queuePosition")),[e]),o=(0,l.useMemo)(()=>F(P(e,"queueDepth")),[e]),x=(0,l.useMemo)(()=>P(e,"recoveryState")??"",[e]),u=(0,l.useMemo)(()=>"queued"===e.status?d?`Waiting in queue at position ${d}${o?` of ${o}`:""}.`:"Waiting in the launch queue.":"requeued_after_restart"===x?"Session recovered after backend restart and requeued.":"reattach_pending"===x?"Recovering terminal runtime after backend restart.":"detached_runtime"===x?"Backend restarted while agent may still be running.":"resume_required"===x?"Session recovered after restart. Send a message to resume.":"",[o,d,x,e.status]);return(0,a.jsxs)("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[u?(0,a.jsx)("div",{className:"shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-2",children:(0,a.jsx)("p",{className:"text-[12px] leading-snug text-amber-300",children:u})}):null,n?(0,a.jsx)("div",{className:"shrink-0 border-b border-white/8 px-3 py-2.5",children:(0,a.jsx)("p",{className:"line-clamp-3 whitespace-pre-wrap text-[13px] leading-relaxed text-[var(--vk-text-normal)]",children:n})}):null,(0,a.jsxs)("div",{className:"flex shrink-0 flex-wrap items-center gap-x-4 gap-y-1 border-b border-white/8 px-3 py-2 text-[11px] text-[var(--vk-text-muted)]",children:[i?(0,a.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(q.N,{seed:{label:i},className:"h-4 w-4"}),(0,a.jsx)("span",{children:i})]}):null,e.branch?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(M.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsx)(D,{text:e.branch})]}):null,r?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(_.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsx)("span",{children:r})]}):null,c>0?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(R.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsxs)("span",{children:["$",c.toFixed(3)]})]}):null]}),(0,a.jsxs)("div",{className:"flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden border-t border-white/8",children:[(0,a.jsx)("div",{className:"shrink-0 border-b border-white/8 px-3 py-2",children:(0,a.jsx)("p",{className:"text-[11px] font-medium uppercase tracking-wide text-[var(--vk-text-muted)]",children:"Workspace files"})}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-hidden",children:(0,a.jsx)(V,{sessionId:t,active:s})})]})]})}var K=s(40448),J=s(50549),H=s(26083),Q=s(31404),Y=s(59207),ee=s(46916);let et="block h-5 w-5 shrink-0 object-contain",es=[{id:"finder",label:"Finder"},{id:"cursor",label:"Cursor"},{id:"antigravity",label:"Antigravity"},{id:"windsurf",label:"Windsurf"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"custom",label:"Custom"}],ea={finder:{kind:"image",imageSrc:"/icons/ide/finder.svg",className:et},vscode:{kind:"image",imageSrc:"/icons/ide/vscode-dark.svg",className:et},"vscode-insiders":{kind:"image",imageSrc:"/icons/ide/vscode-insiders.svg",className:et},cursor:{kind:"image",imageSrc:"/icons/ide/cursor-dark.svg",className:et},windsurf:{kind:"image",imageSrc:"/icons/ide/windsurf-dark.svg",className:et},"intellij-idea":{kind:"image",imageSrc:"/icons/ide/intellij.svg",className:et},zed:{kind:"image",imageSrc:"/icons/ide/zed-dark.svg",className:et},xcode:{kind:"image",imageSrc:"/icons/ide/xcode.svg",className:et},antigravity:{kind:"image",imageSrc:"/icons/ide/antigravity-dark.svg",className:et},custom:{kind:"icon",className:`${et} text-[var(--vk-text-muted)]`}};function en({editorId:e,label:t}){let s=ea[e];return s?"icon"===s.kind?(0,a.jsx)(J.A,{className:s?.className??`${et} text-[var(--vk-text-muted)]`}):(0,a.jsx)("img",{src:s.imageSrc,alt:`${t} logo`,className:s.className}):(0,a.jsx)(J.A,{className:`${et} text-[var(--vk-text-muted)]`})}function el({projectId:e,bridgeId:t,label:s="Open",triggerClassName:n}){let{preferences:i}=(0,Y.g)(t),[r,c]=(0,l.useState)(null),d=(0,l.useMemo)(()=>{var e;return e=i?.ide??"vscode",es.find(t=>t.id===e)??{id:e,label:e}},[i?.ide]);async function o(s){if(e&&!r){c(s);try{let a=await fetch((0,Q.S)(`/api/projects/${encodeURIComponent(e)}/open`,t),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({ide:s})}),n=await a.json().catch(()=>null);if(!a.ok)throw Error(n?.error??`Failed to open project (${a.status})`)}catch(e){window.alert(e instanceof Error?e.message:"Failed to open project")}finally{c(null)}}}return(0,a.jsxs)(K.bL,{children:[(0,a.jsx)(K.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",disabled:!e||null!==r,className:(0,ee.cn)("inline-flex h-9 items-center gap-2 rounded-[6px] border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.03)] px-3 text-[13px] text-[var(--vk-text-normal)] transition hover:bg-[rgba(255,255,255,0.06)] disabled:cursor-not-allowed disabled:opacity-60",n),"aria-label":"Open project in code editor",title:e?`Open project in ${d.label}`:"No project selected",children:[r?(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin text-current"}):(0,a.jsx)(H.A,{className:"h-4 w-4 text-current"}),(0,a.jsx)("span",{className:"hidden font-medium sm:inline",children:s}),(0,a.jsx)(k.A,{className:"h-3.5 w-3.5 text-current"})]})}),(0,a.jsx)(K.ZL,{children:(0,a.jsx)(K.UC,{align:"end",sideOffset:8,className:"z-50 min-w-[240px] rounded-[8px] border border-[rgba(255,255,255,0.08)] bg-[#1c1a19] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.45)]",children:es.map(e=>(0,a.jsxs)(K.q7,{onSelect:()=>void o(e.id),className:"flex min-h-[44px] cursor-default items-center gap-3 rounded-[6px] px-3 py-2 text-[14px] text-[#f3efea] outline-none transition hover:bg-[rgba(255,255,255,0.06)] focus:bg-[rgba(255,255,255,0.06)]",children:[(0,a.jsx)(en,{editorId:e.id,label:e.label}),(0,a.jsx)("span",{className:"flex-1",children:e.label}),d.id===e.id?(0,a.jsx)(j.A,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}):null]},e.id))})})]})}let ei=(0,n.default)(function(){return s.e(1698).then(s.bind(s,11698)).then(e=>e.SessionTerminal)},{loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading terminal..."})}),er=(0,n.default)(()=>Promise.all([s.e(3971),s.e(2799)]).then(s.bind(s,22799)).then(e=>e.SessionPreview),{loadableGenerated:{webpack:()=>[22799]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading preview..."})}),ec=(0,n.default)(()=>s.e(633).then(s.bind(s,60633)).then(e=>e.SessionDiff),{loadableGenerated:{webpack:()=>[60633]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading review…"}),ssr:!1}),ed=(0,n.default)(()=>s.e(1874).then(s.bind(s,81874)).then(e=>e.SessionSkills),{loadableGenerated:{webpack:()=>[81874]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading skills..."})}),eo=(0,n.default)(()=>Promise.all([s.e(9526),s.e(2651),s.e(2261),s.e(9847)]).then(s.bind(s,52261)).then(e=>e.DispatcherPane),{loadableGenerated:{webpack:()=>[52261]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading dispatcher..."})}),ex="min-h-0 h-full min-w-0 w-full overflow-hidden focus-visible:outline-none [&[hidden]]:block data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:invisible data-[state=inactive]:opacity-0",eu="min-h-0 h-full min-w-0 w-full overflow-hidden focus-visible:outline-none [&[hidden]]:block data-[state=active]:relative data-[state=active]:z-10 data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:opacity-0 data-[state=inactive]:select-none";function em(e,t){let s=(0,b.tK)(t);return"overview"===e||"preview"===e||"skills"===e||"diff"===e?e:"dispatcher"===e||"terminal"===e?"dispatcher"===s?"dispatcher":"terminal":s}function eh({sessionId:e,initialSession:t=null,bridgeId:s=null,immersiveMobileMode:n=!1,active:j=!0,suppressPreviewAutoOpen:w=!1,onOpenSidebar:k}){let N=(0,i.usePathname)(),y=(0,i.useRouter)(),S=(0,i.useSearchParams)(),{session:$,loading:A,error:C}=(0,v.w)(e,t,{enabled:j,bridgeId:s}),I=(0,l.useRef)(0),E=(0,l.useRef)(!1),[M,_]=(0,l.useState)(null),R=(0,l.useMemo)(()=>em(S.get("tab"),$),[S,$]),q=(0,l.useCallback)(e=>{let t=em(e,$),s=(0,b.tK)($),a=new URLSearchParams(S.toString());t===s?a.delete("tab"):a.set("tab",t);let n=a.toString(),l=n.length>0?`${N}?${n}`:N;y.replace(l,{scroll:!1})},[N,y,S,$]);(0,l.useEffect)(()=>{if(!$)return;let e=S.get("tab"),t=em(e,$),s=t===(0,b.tK)($)?null:t;if((e?.trim()?e:null)===s)return;let a=new URLSearchParams(S.toString());s?a.set("tab",s):a.delete("tab");let n=a.toString(),l=n.length>0?`${N}?${n}`:N;y.replace(l,{scroll:!1})},[N,y,S,$]);let D=(0,l.useCallback)(e=>{I.current+=1,_({nonce:I.current,...e})},[]);(0,l.useEffect)(()=>{E.current=!1,I.current=0,_(null)},[e]);let P=(0,l.useCallback)(e=>{(function({active:e,activeTab:t,alreadyOpened:s,connected:a,suppressAutoOpen:n}){return a&&e&&"terminal"===t&&!s&&!n})({active:j,activeTab:R,alreadyOpened:E.current,connected:e,suppressAutoOpen:w})&&(E.current=!0,q("preview"))},[j,R,q,w]);if(A)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(f.Zp,{className:"w-full max-w-md",children:(0,a.jsx)(f.Wu,{className:"py-7 text-center text-[13px] text-[var(--text-muted)]",children:"Loading session workspace..."})})});if(C)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(f.Zp,{className:"w-full max-w-md border-[color:color-mix(in_srgb,var(--status-error)_45%,transparent)]",children:(0,a.jsx)(f.Wu,{className:"py-7 text-center text-[13px] text-[var(--status-error)]",children:C})})});if(!$)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(f.Zp,{className:"w-full max-w-md",children:(0,a.jsx)(f.Wu,{className:"py-7 text-center text-[13px] text-[var(--text-muted)]",children:"Session not found"})})});let F="string"==typeof $.status?$.status:"unknown",T=(0,b.Zu)($),U=function(e){switch(e){case"needs_input":return"needs input";case"working":return"working";case"running":return"running";case"spawning":return"spawning";case"queued":return"queued";default:return e.replace(/[_-]+/g," ")}}(F),O=function(e){switch(e){case"working":case"running":return"bg-amber-400";case"needs_input":return"bg-blue-400";case"spawning":case"queued":default:return"bg-gray-400";case"done":return"bg-emerald-400";case"errored":return"bg-red-400";case"stuck":return"bg-[var(--vk-accent)]";case"terminated":case"killed":return"bg-gray-500"}}(F),z="working"===F||"running"===F||"spawning"===F||"queued"===F||"needs_input"===F,W="queued"!==F&&"spawning"!==F,X=j&&n&&"terminal"===R,B=j&&"preview"===R,Z=j&&"diff"===R,V="min-h-[38px] gap-1.5 px-2.5 text-[12px] sm:min-h-0 sm:px-3",K=(0,g.kV)(e).slice(0,7),J=(0,a.jsxs)(h.j7,{className:"flex w-full overflow-x-auto sm:w-fit sm:inline-flex",children:[(0,a.jsxs)(h.Xi,{value:"overview",className:V,children:[(0,a.jsx)(r.A,{className:"h-3.5 w-3.5"}),"Overview"]}),(0,a.jsxs)(h.Xi,{value:"diff",className:V,children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5"}),"Review"]}),T?(0,a.jsxs)(h.Xi,{value:"dispatcher",className:V,children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5"}),"Dispatcher"]}):(0,a.jsxs)(h.Xi,{value:"terminal",className:V,children:[(0,a.jsx)(o.A,{className:"h-3.5 w-3.5"}),"Terminal"]}),(0,a.jsxs)(h.Xi,{value:"preview",className:V,children:[(0,a.jsx)(x.A,{className:"h-3.5 w-3.5"}),"Preview"]}),(0,a.jsxs)(h.Xi,{value:"skills",className:V,children:[(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),"Skills"]})]});return(0,a.jsx)("div",{className:(0,L.re)(X),"data-conductor-session-terminal":"native-iframe",children:(0,a.jsxs)(h.tU,{value:R,onValueChange:q,className:X?"flex min-h-0 min-w-0 w-full flex-1 flex-col gap-0 p-0":"flex min-h-0 min-w-0 w-full flex-1 flex-col gap-1 p-1 lg:gap-2 lg:p-3",children:[X?(0,a.jsxs)("div",{className:"flex shrink-0 flex-col border-b border-white/10 bg-[#0d0908]",children:[(0,a.jsxs)("div",{className:"flex h-10 items-center gap-2 px-2",children:[k?(0,a.jsx)(p.$,{type:"button",variant:"ghost",size:"icon",className:"h-8 w-8 shrink-0 text-[#8e847d] hover:text-[#c9c0b7]",onClick:k,"aria-label":"Open workspace panel",children:(0,a.jsx)(m.A,{className:"h-4 w-4"})}):null,(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-1.5",children:[(0,a.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${O}${z?" animate-pulse":""}`}),(0,a.jsx)("span",{className:"text-[12px] font-medium text-[#efe8e1]",children:U}),(0,a.jsxs)("span",{className:"font-mono text-[10px] text-[#8e847d]",children:["\xb7 ",K]})]}),W?(0,a.jsx)(el,{projectId:$.projectId,bridgeId:$.bridgeId??null}):null]}),(0,a.jsx)("div",{className:"px-1.5 pb-1.5",children:J})]}):(0,a.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1.5 sm:flex-nowrap",children:[J,(0,a.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 sm:ml-auto sm:w-auto sm:justify-end",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${O}${z?" animate-pulse":""}`}),(0,a.jsx)("span",{className:"text-[11px] text-[var(--vk-text-muted)]",children:U}),(0,a.jsxs)("span",{className:"hidden font-mono text-[10px] text-[var(--vk-text-muted)] sm:inline",children:["\xb7 ",K]})]}),W?(0,a.jsx)(el,{projectId:$.projectId,bridgeId:$.bridgeId??null}):null]})]}),(0,a.jsxs)("div",{className:"relative min-h-0 min-w-0 h-0 flex-1 overflow-hidden",children:[(0,a.jsx)(h.av,{value:"overview",className:ex,children:(0,a.jsx)(G,{session:$,sessionId:e,active:j&&"overview"===R})}),(0,a.jsx)(h.av,{value:"diff",className:`${ex} flex min-h-0 flex-col`,children:(0,a.jsx)(ec,{sessionId:e,active:Z})}),T?(0,a.jsx)(h.av,{value:"dispatcher",forceMount:!0,className:eu,children:(0,a.jsx)(eo,{thread:$,projectId:$.projectId,bridgeId:$.bridgeId??s,active:j&&"dispatcher"===R,className:"h-full w-full border-0 xl:w-full"})}):(0,a.jsx)(h.av,{value:"terminal",forceMount:!0,className:X?`flex min-h-0 h-full min-w-0 w-full flex-col overflow-hidden bg-[#060404] ${eu}`:`flex min-h-0 h-full min-w-0 w-full flex-col overflow-hidden bg-transparent ${eu}`,children:(0,a.jsx)(ei,{sessionId:e,projectId:$.projectId,bridgeId:$.bridgeId??null,sessionState:F,runtimeMode:$.metadata.runtimeMode?.trim()??null,pendingInsert:M,immersiveMobileMode:X,panelVisible:j&&"terminal"===R,onPendingInsertConsumed:()=>_(null)})}),(0,a.jsx)(h.av,{value:"preview",forceMount:!0,className:`${eu} flex min-h-0 flex-col`,children:(0,a.jsx)(er,{sessionId:e,active:B,onQueueTerminalInsert:D,onConnectionChange:P},e)}),(0,a.jsx)(h.av,{value:"skills",className:ex,children:(0,a.jsx)(ed,{session:$,sessionId:e,active:j&&"skills"===R})})]})]},e)})}},40443:(e,t,s)=>{s.d(t,{Wu:()=>r,Zp:()=>l,aR:()=>i});var a=s(54568),n=s(46916);let l=(0,s(7620).forwardRef)(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,n.cn)("surface-card rounded-[var(--radius-md)] border",e),...t}));function i({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("flex items-center gap-2 border-b border-[var(--vk-border)] px-3 py-2",e),...t})}function r({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("px-3 py-2",e),...t})}l.displayName="Card"},59207:(e,t,s)=>{s.d(t,{g:()=>i});var a=s(7620),n=s(31404);function l(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function i(e,t){let s=t?.enabled??!0,[i,r]=(0,a.useState)(null),[c,d]=(0,a.useState)(s),[o,x]=(0,a.useState)(null),u=(0,a.useCallback)(async()=>{if(!s){r(null),x(null),d(!1);return}try{var t;let s,a,i,c=await fetch((0,n.S)("/api/preferences",e)),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??d?.reason??`Failed to load preferences: ${c.status}`);r((t=d?.preferences,s=l(t),i=(a=l(s.notifications)).soundFile,{onboardingAcknowledged:!0===s.onboardingAcknowledged,codingAgent:"string"==typeof s.codingAgent&&s.codingAgent.trim().length>0?s.codingAgent.trim():"claude-code",ide:"string"==typeof s.ide&&s.ide.trim().length>0?s.ide.trim():"vscode",markdownEditor:"string"==typeof s.markdownEditor&&s.markdownEditor.trim().length>0?s.markdownEditor.trim():"obsidian",markdownEditorPath:"string"==typeof s.markdownEditorPath?s.markdownEditorPath.trim():"",notifications:{soundEnabled:!1!==a.soundEnabled,soundFile:null===i?null:"string"==typeof i&&i.trim().length>0?i.trim():"abstract-sound-4"}})),x(null)}catch(e){r(null),x(e instanceof Error?e.message:"Failed to load preferences")}finally{d(!1)}},[e,s]);return(0,a.useEffect)(()=>{s&&u()},[s,u]),{preferences:s?i:null,loading:!!s&&c,error:s?o:null,refresh:u}}},64357:(e,t,s)=>{s.d(t,{Xi:()=>d,av:()=>o,j7:()=>c,tU:()=>r});var a=s(54568),n=s(35131),l=s(7620),i=s(46916);let r=n.bL,c=(0,l.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(n.B8,{ref:s,className:(0,i.cn)("inline-flex max-w-full items-center gap-0.5 overflow-x-auto rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-0.5 whitespace-nowrap touch-pan-x [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",e),...t}));c.displayName="TabsList";let d=(0,l.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(n.l9,{ref:s,className:(0,i.cn)("inline-flex min-h-[34px] shrink-0 items-center gap-1.5 rounded-[3px] px-2.5 py-1.5 text-[12px] text-[var(--vk-text-muted)]","data-[state=active]:bg-[var(--vk-bg-active)] data-[state=active]:text-[var(--vk-text-normal)]","hover:text-[var(--vk-text-normal)]","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--vk-orange)]",e),...t}));d.displayName="TabsTrigger";let o=(0,l.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(n.UC,{ref:s,className:(0,i.cn)("focus-visible:outline-none",e),...t}));o.displayName="TabsContent"}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1964],{862:(e,t,n)=>{n.d(t,{G:()=>C});var a=n(54568),r=n(7620),i=n(33593),o=n(90466),s=n(46916),l=n(79748),d=n(58299),c=n(34309),u=n(62868),p=n(2099),f=n(36645),m=n(59706),g=n(76081),h=n(17210),v=n(31404),b=n(44522);let w="conductor-dismissed-update-version";function y(){let e,t,n=(0,l.usePathname)(),i=(0,l.useSearchParams)(),[o,y]=(0,r.useState)(null),[x,C]=(0,r.useState)(null),[k,A]=(0,r.useState)(null),[j,S]=(0,r.useState)(!1),[M,I]=(0,r.useState)(!1),[E,N]=(0,r.useState)(!1),P=(0,r.useMemo)(()=>(0,v.y)(window.location.href),[n,i]),L=(0,r.useCallback)(()=>(0,v.y)(window.location.href),[]),T=(0,r.useCallback)((e=!1)=>{let t=(0,v.S)("/api/app-update",L());if(!e)return t;let n=new URL(t,"http://127.0.0.1");return n.searchParams.set("force","1"),`${n.pathname}${n.search}${n.hash}`},[L]),B=(0,r.useCallback)(async(e=!1)=>{try{let t=await fetch(T(e),{cache:"no-store"}),n=await t.json().catch(()=>null);if(412===t.status)return C(null),null;if(!t.ok)throw Error("string"==typeof n?.error?n.error:`Failed to load update status (${t.status})`);return y(n),C(null),n}catch(e){return C(e instanceof Error?e.message:"Failed to load update status."),null}},[T,L]);(0,r.useEffect)(()=>{try{let e=window.localStorage.getItem(w);A(e&&e.length>0?e:null)}catch{}B(!0);let e=P?()=>{}:(0,h.F)(e=>{e&&(y(e),C(null))}),t=()=>{"visible"===document.visibilityState&&B(!1)};return window.addEventListener("focus",t),document.addEventListener("visibilitychange",t),()=>{e(),window.removeEventListener("focus",t),document.removeEventListener("visibilitychange",t)}},[P,B]);let $=o?.latestVersion&&k===o.latestVersion,R=!!o?.restarting||E,q=(0,r.useMemo)(()=>!!o&&!$&&(!!R||"running"===o.jobStatus||"completed"===o.jobStatus||"failed"===o.jobStatus||!o.enabled&&!!o.reason||o.updateAvailable),[$,R,o]);async function O(){o?.updateCommand&&(await navigator.clipboard.writeText(o.updateCommand),S(!0),window.setTimeout(()=>S(!1),1400))}async function G(){I(!0);try{let e=await fetch((0,v.S)("/api/app-update",L()),{method:"POST",headers:{"content-type":"application/json"}}),t=await e.json().catch(()=>null);if(!e.ok)throw Error("string"==typeof t?.error?t.error:`Update failed (${e.status})`);y(t),C(null)}catch(e){C(e instanceof Error?e.message:"Failed to trigger update.")}finally{I(!1)}}let U=(0,r.useCallback)(async()=>{let e=Date.now()+6e4;if(P){for(;Date.now()<e;){let e=await B(!1);if(!e?.restarting)return void N(!1);await new Promise(e=>window.setTimeout(e,1e3))}N(!1),C("Restart started on the paired device, but it did not reconnect in time. Retry from the bridge controls.");return}for(;Date.now()<e;){try{if((await fetch("/api/health",{cache:"no-store"})).ok)return void window.location.reload()}catch{}await new Promise(e=>window.setTimeout(e,1e3))}N(!1),C("Restart started, but the dashboard did not come back in time. Reload manually.")},[P,B]);async function z(){try{let e=await fetch((0,v.S)("/api/app-update",L()),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({action:"restart"})}),t=await e.json().catch(()=>null);if(!e.ok)throw Error("string"==typeof t?.error?t.error:`Restart failed (${e.status})`);y(t),C(null)}catch(e){C(e instanceof Error?e.message:"Failed to restart Conductor.")}}return((0,r.useEffect)(()=>{o?.restarting&&!E&&(N(!0),U())},[E,o?.restarting,U]),q)?(0,a.jsx)("div",{className:"pointer-events-none fixed bottom-3 right-3 z-[70] w-[min(calc(100vw-1.5rem),24rem)] sm:bottom-4 sm:right-4",children:(0,a.jsxs)("section",{className:(0,s.cn)("pointer-events-auto rounded-[14px] border bg-[var(--vk-bg-panel)] p-4 shadow-[0_16px_40px_rgba(0,0,0,0.35)]",o?.jobStatus==="failed"?"border-[color:color-mix(in_srgb,var(--vk-red)_55%,var(--vk-border))]":"border-[var(--vk-border)]"),children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[R||o?.jobStatus==="running"?(0,a.jsx)(d.A,{className:"h-4 w-4 animate-spin text-[var(--vk-orange)]"}):o?.jobStatus==="completed"?(0,a.jsx)(c.A,{className:"h-4 w-4 text-[var(--status-ready)]"}):o?.jobStatus==="failed"?(0,a.jsx)(u.A,{className:"h-4 w-4 text-[var(--vk-red)]"}):(0,a.jsx)(p.A,{className:"h-4 w-4 text-[var(--vk-orange)]"}),(0,a.jsx)("h2",{className:"truncate text-[13px] font-semibold text-[var(--vk-text-normal)]",children:o?(t=(e=o.currentVersion?.trim())?` (build ${e})`:"",!o.enabled&&o.reason?`Conductor update unavailable${t}`:o.restarting?`Restarting Conductor${t}`:"running"===o.jobStatus?`Updating Conductor${t}`:"completed"===o.jobStatus?`Conductor updated${t}`:"failed"===o.jobStatus?`Update failed${t}`:o.latestVersion?`Conductor ${o.latestVersion} is available${t}`:`Conductor update available${t}`):"Conductor update"})]}),(0,a.jsx)("p",{className:"mt-2 text-[12px] leading-5 text-[var(--vk-text-muted)]",children:o?function(e){if(!e.enabled&&e.reason)return(0,b.N8)(e);if(e.restarting)return"The launcher is restarting the runtime. This tab will reconnect automatically once it is ready.";if("running"===e.jobStatus)return e.jobMessage??"Installing the latest version in the background.";if("completed"===e.jobStatus)return e.jobMessage??"The latest version has been installed. Restart Conductor to use it.";if("failed"===e.jobStatus)return e.jobMessage??"The update command did not finish successfully.";let t=e.currentVersion?`You are running ${e.currentVersion}. `:"";return e.canAutoUpdate?`${t}Install the new release now and restart when it finishes.`:"npx"===e.installMode?`${t}Copy the restart command, run it in a terminal, and the next launch will use the latest release.`:`${t}Copy the update command, run it in a terminal, then restart Conductor.`}(o):"Checking for updates..."})]}),(0,a.jsx)("button",{type:"button",onClick:function(){if(o?.latestVersion){try{window.localStorage.setItem(w,o.latestVersion)}catch{}A(o.latestVersion);return}y(e=>e?{...e,reason:null,enabled:!0}:e)},className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-[7px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Dismiss update notice",children:(0,a.jsx)(f.A,{className:"h-4 w-4"})})]}),o?.updateCommand?(0,a.jsx)("div",{className:"mt-3 rounded-[10px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 font-mono text-[11px] leading-5 text-[var(--vk-text-muted)]",children:o.updateCommand}):null,o?(0,a.jsx)("p",{className:"mt-2 text-[11px] leading-5 text-[var(--vk-text-faint)]",children:function(e){switch(e){case"npx":return"This session was launched through npx. Copy the restart command, run it in a terminal, and the next launch will use the latest package.";case"unknown":return"Automatic updates are unavailable for this install.";default:return null}}(o.installMode)??(o.restartRequired?"Restart the current Conductor process after the installer completes.":"Update state streams from the running Conductor runtime.")}):null,x?(0,a.jsx)("p",{className:"mt-2 text-[11px] text-[var(--vk-red)]",children:x}):o?.error?(0,a.jsx)("p",{className:"mt-2 text-[11px] text-[var(--vk-red)]",children:o.error}):null,o?.logsTail&&"failed"===o.jobStatus?(0,a.jsx)("pre",{className:"mt-2 max-h-32 overflow-auto rounded-[10px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] p-2 text-[10px] leading-4 text-[var(--vk-text-faint)]",children:o.logsTail}):null,(0,a.jsxs)("div",{className:"mt-3 flex items-center justify-end gap-2",children:[o?.jobStatus==="failed"&&o.canAutoUpdate?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"primary",onClick:()=>void G(),disabled:M,children:[M?(0,a.jsx)(d.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),"Retry"]}):null,o?.jobStatus==="idle"&&o.canAutoUpdate?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"primary",onClick:()=>void G(),disabled:M,children:[M?(0,a.jsx)(d.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(p.A,{className:"h-3.5 w-3.5"}),"Update now"]}):null,o?.jobStatus==="idle"&&!o.canAutoUpdate&&o.updateCommand?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"outline",onClick:()=>void O(),children:[j?(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 text-[var(--status-ready)]"}):(0,a.jsx)(m.A,{className:"h-3.5 w-3.5"}),j?"Copied":"npx"===o.installMode?"Copy restart command":"Copy command"]}):null,o?.restartRequired&&o.canRestart&&!o.restarting&&!E?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"primary",onClick:()=>void z(),children:[(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),"Restart now"]}):null,o?.restarting||E?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"primary",disabled:!0,children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5 animate-spin"}),"Restarting"]}):null]})]})}):null}let x="conductor-workspace-sidebar-width";function C({sidebar:e,children:t,mobileSidebarOpen:n,desktopSidebarOpen:l,onToggleSidebar:d,hideMobileSidebarToggle:c=!1}){let[u,p]=(0,r.useState)(356),[f,m]=(0,r.useState)(!1);(0,r.useEffect)(()=>{try{let e=window.localStorage.getItem(x),t=e?Number.parseInt(e,10):NaN;Number.isFinite(t)&&p(Math.min(460,Math.max(296,t)))}catch{}},[]),(0,r.useEffect)(()=>{if(!f)return;let e=e=>{p(Math.min(460,Math.max(296,e.clientX)))},t=()=>{m(!1)};return window.addEventListener("mousemove",e),window.addEventListener("mouseup",t),document.body.style.userSelect="none",document.body.style.cursor="col-resize",()=>{window.removeEventListener("mousemove",e),window.removeEventListener("mouseup",t),document.body.style.userSelect="",document.body.style.cursor="";try{window.localStorage.setItem(x,String(u))}catch{}}},[f,u]),(0,r.useEffect)(()=>{let e=document.documentElement,t=()=>{let t=window.visualViewport,n=t?.height??window.innerHeight;e.style.setProperty("--oc-app-shell-height",`${Math.round(n)}px`)};t();let n=window.visualViewport;return n?.addEventListener("resize",t),n?.addEventListener("scroll",t),window.addEventListener("resize",t),()=>{n?.removeEventListener("resize",t),n?.removeEventListener("scroll",t),window.removeEventListener("resize",t)}},[]);let g={"--workspace-sidebar-width":`${u}px`,"--oc-shell-height":"var(--oc-app-shell-height, 100dvh)"};return(0,a.jsxs)("div",{style:g,className:"relative flex h-[var(--oc-shell-height)] min-h-[var(--oc-shell-height)] max-h-[var(--oc-shell-height)] w-full max-w-full overflow-hidden bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)] [padding-top:env(safe-area-inset-top)] [padding-bottom:env(safe-area-inset-bottom)] pl-[env(safe-area-inset-left)] pr-[env(safe-area-inset-right)]",children:[n&&(0,a.jsx)("button",{type:"button",className:"absolute inset-0 z-20 bg-black/45 lg:hidden",onClick:d,"aria-label":"Close workspace panel"}),(0,a.jsx)("aside",{className:(0,s.cn)("absolute inset-y-0 left-0 z-30 flex h-full w-full max-w-none flex-col border-r border-[var(--vk-border)] bg-[var(--vk-bg-panel)] transition-[transform,width] duration-200 sm:w-[min(90vw,var(--workspace-sidebar-width))] sm:max-w-[28rem]",n?"translate-x-0":"-translate-x-full",l?"lg:w-[var(--workspace-sidebar-width)]":"lg:w-0 lg:overflow-hidden lg:border-r-0","lg:relative lg:left-auto lg:translate-x-0"),children:e}),l?(0,a.jsx)("div",{className:"absolute bottom-0 left-[var(--workspace-sidebar-width)] top-0 z-30 hidden w-2 -translate-x-1/2 cursor-col-resize lg:block",onMouseDown:()=>m(!0),"aria-hidden":"true",children:(0,a.jsx)("div",{className:"mx-auto h-full w-px bg-transparent transition-colors hover:bg-[var(--vk-border)]"})}):null,l&&(0,a.jsx)("button",{type:"button",onClick:d,className:"absolute left-[var(--workspace-sidebar-width)] top-2 z-40 hidden h-7 w-7 -translate-x-1/2 items-center justify-center rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] shadow-[0_0_0_1px_rgba(0,0,0,0.25)] hover:bg-[var(--vk-bg-hover)] lg:inline-flex","aria-label":"Hide workspace panel",children:(0,a.jsx)(i.A,{className:"h-5 w-5"})}),(0,a.jsxs)("main",{className:"relative flex min-h-0 min-w-0 w-full flex-1 flex-col overflow-hidden bg-[var(--vk-bg-main)]",children:[!n&&!c&&(0,a.jsx)("button",{type:"button",onClick:d,className:"absolute left-2 top-2 z-40 inline-flex h-11 w-11 items-center justify-center rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] shadow-[0_10px_24px_rgba(0,0,0,0.28)] hover:bg-[var(--vk-bg-hover)] sm:h-8 sm:w-8 lg:hidden","aria-label":"Open workspace panel",children:(0,a.jsx)(o.A,{className:"h-5 w-5"})}),!l&&(0,a.jsx)("button",{type:"button",onClick:d,className:"absolute left-2 top-2 z-40 hidden h-7 w-7 items-center justify-center rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] lg:inline-flex","aria-label":"Open workspace panel",children:(0,a.jsx)(o.A,{className:"h-5 w-5"})}),t]}),(0,a.jsx)(y,{})]})}},5739:(e,t,n)=>{n.d(t,{q:()=>a});function a(e){return e.trim().toLowerCase().replace(/[_\s]+/g,"-")}},17210:(e,t,n)=>{n.d(t,{F:()=>M,L:()=>S});var a=n(31404),r=n(92070);let i=new Set,o=new Set,s=null,l=null,d=null,c=null,u=null,p=0;function f(){return i.size>0||o.size>0}function m(){return"u"<typeof document||"visible"===document.visibilityState}function g(e){if(Array.isArray(e))return{type:"snapshot",sessions:e};if(!e||"object"!=typeof e)return null;let t=e.type;return"snapshot"!==t&&"snapshot_delta"!==t?null:Array.isArray(e.sessions)?e:null}function h(e){return e&&"object"==typeof e&&"boolean"==typeof e.enabled?e:null}function v(e){for(let t of i)t(e);let t=h(e.appUpdate);if(t)for(let e of o)e(t)}function b(){return(0,a.y)(window.location.href)}async function w(){if("function"!=typeof fetch)return;let e=(async()=>{let e=b();try{let t=await fetch((0,a.S)("/api/sessions",e));if(!t.ok)return;let n=await t.json().catch(()=>null),r=g(n);if(!r)return;v(r)}catch{}try{let n=await fetch((0,a.S)("/api/app-update",e));if(!n.ok)return;let r=await n.json().catch(()=>null);var t=h(r);for(let e of o)e(t)}catch{}})();s=e.finally(()=>{s===e&&(s=null)}),await e}function y(){null!==u&&(window.clearTimeout(u),u=null)}function x(){if(!f()||!m()||b())return;y();let e=0===p?250:Math.min(400*2**(p-1),12e3);p+=1,u=window.setTimeout(()=>{u=null,A()},e)}function C(){y(),p=0,c?.abort(),c=null}async function k(e){try{let t=await fetch("/api/events",{cache:"no-store",signal:e.signal});if(!t.ok||!t.body){e.signal.aborted||x();return}for await(let n of(p=0,(0,r.w)(t.body,e.signal)))!function(e){let t;if("refresh"===e.event){s||w();return}try{t=JSON.parse(e.data)}catch{return}if(t&&"object"==typeof t&&"refresh"===t.type){s||w();return}let n=g(t);n&&v(n)}(n);e.signal.aborted||x()}catch{e.signal.aborted||x()}}function A(){if("u"<typeof fetch||c||!f()||!m()||b())return;let e=new AbortController;c=e,(async()=>{try{await k(e)}finally{c===e&&(c=null)}})()}function j(){if(!f()){C(),l&&(window.removeEventListener("focus",l),l=null),d&&(document.removeEventListener("visibilitychange",d),d=null);return}(l||d||(l=()=>{f()&&m()&&(A(),s||w())},d=()=>{f()&&m()?(A(),s||w()):C()},window.addEventListener("focus",l),document.addEventListener("visibilitychange",d)),b()||!m())?C():A()}function S(e){return i.add(e),j(),()=>{i.delete(e),j()}}function M(e){return o.add(e),j(),()=>{o.delete(e),j()}}},35821:(e,t,n)=>{n.d(t,{w:()=>r});var a=n(75120);function r(e,t=null,n){return(0,a.DA)(e,t,n)}},46012:(e,t,n)=>{n.d(t,{T:()=>i});var a=n(7620);function r(){return window.innerWidth>=1024}function i(e){let[t,n]=(0,a.useState)(!1),[i,o]=(0,a.useState)(e?.initialDesktopOpen??!0),s=(0,a.useCallback)(()=>{r()?o(e=>!e):n(e=>!e)},[]);return{mobileSidebarOpen:t,desktopSidebarOpen:i,toggleSidebar:s,closeSidebarOnMobile:(0,a.useCallback)(()=>{r()||n(!1)},[]),syncSidebarForViewport:(0,a.useCallback)(()=>{r()?o(!0):n(!1)},[])}}},53649:(e,t,n)=>{n.d(t,{U:()=>o});var a=n(7620),r=n(31404);function i(e,t){return{id:e,repo:"string"==typeof t?.repo?t.repo:null,path:"string"==typeof t?.path?t.path:null,iconUrl:"string"==typeof t?.iconUrl?t.iconUrl:null,boardDir:"string"==typeof t?.boardDir?t.boardDir:null,boardFile:"string"==typeof t?.boardFile?t.boardFile:null,description:"string"==typeof t?.description?t.description:null,defaultBranch:"string"==typeof t?.defaultBranch&&t.defaultBranch.trim().length>0?t.defaultBranch:"main",agent:"string"==typeof t?.agent&&t.agent.trim().length>0?t.agent:"claude-code",agentPermissions:"string"==typeof t?.agentPermissions&&t.agentPermissions.trim().length>0?t.agentPermissions:null,agentModel:"string"==typeof t?.agentModel&&t.agentModel.trim().length>0?t.agentModel:null,agentReasoningEffort:"string"==typeof t?.agentReasoningEffort&&t.agentReasoningEffort.trim().length>0?t.agentReasoningEffort:null}}function o(e,t){let n=t?.enabled??!0,[o,s]=(0,a.useState)([]),[l,d]=(0,a.useState)(n),[c,u]=(0,a.useState)(null),p=(0,a.useCallback)(async()=>{if(!n){s([]),u(null),d(!1);return}d(!0);try{let t=await fetch((0,r.S)("/api/config",e)),n=await t.json().catch(()=>null);if(!t.ok){let e="object"==typeof n&&null!==n?n.error??n.reason:null;throw Error(e??`Failed to fetch config: ${t.status}`)}s(function(e){if(!e||"object"!=typeof e)return[];let t=e.projects;return t?Array.isArray(t)?t.map((e,t)=>e&&"object"==typeof e?i("string"==typeof e.id&&e.id.trim().length>0?e.id:`project-${t+1}`,e):i(`project-${t+1}`,null)):"object"==typeof t?Object.entries(t).map(([e,t])=>i(e,t&&"object"==typeof t?t:null)):[]:[]}(n)),u(null)}catch(e){s([]),u(e instanceof Error?e.message:"Failed to fetch config")}finally{d(!1)}},[e,n]);return(0,a.useEffect)(()=>{p()},[p]),{projects:o,loading:!!n&&l,error:n?c:null,refresh:p}}},72410:(e,t,n)=>{n.d(t,{N:()=>u});var a=n(54568),r=n(7620);let i={amp:["/agents/amp-dark.svg","/agents/amp-light.svg"],claude:["/agents/claude-dark.svg","/agents/claude-light.svg"],codex:["/agents/codex-dark.svg","/agents/codex-light.svg"],copilot:["/agents/copilot-dark.svg","/agents/copilot-light.svg"],cursor:["/agents/cursor-dark.svg","/agents/cursor-light.svg"],discord:["/agents/discord-dark.svg","/agents/discord-light.svg"],droid:["/agents/droid-dark.svg","/agents/droid-light.svg"],gemini:["/agents/gemini-dark.svg","/agents/gemini-light.svg"],hermes:["/agents/hermes.png"],letta:["/agents/letta-dark.svg","/agents/letta-light.svg"],openclaw:["/agents/openclaw-dark.svg","/agents/openclaw-light.svg"],opencode:["/agents/opencode-dark.svg","/agents/opencode-light.svg"],qwen:["/agents/qwen-dark.svg","/agents/qwen-light.svg"]},o=new Map;for(let[e,t]of Object.entries({amp:["amp","amp-code","amp-cli","ampcode","agent-amp"],claude:["claude","claude-code","claude-cli","claudecode","ccr","claude-code-router","claude-mcp","claude-mcp-cli","claude-mcp-agent","agent-claude-code"],codex:["codex","openai-codex","codex-cli","codexcli","openai","agent-codex"],copilot:["copilot","github-copilot","githubcopilot","copilot-cli","agent-github-copilot"],cursor:["cursor","cursor-cli","cursor-agent","cursoragent","agent-cursor-cli"],discord:["discord"],droid:["droid","factory-droid","factory_droid","agent-droid"],gemini:["gemini","gemini-cli","google-gemini","googlegemini","agent-gemini"],hermes:["hermes","hermes-agent","nous-hermes","agent-hermes"],letta:["letta","letta-code","letta_code","agent-letta","memgpt"],openclaw:["openclaw","open-claw","open_claw","agent-openclaw"],opencode:["opencode","open-code","open_code","open-code-cli","agent-opencode"],qwen:["qwen","qwen-code","qwen_code","qwen-code-cli","agent-qwen-code"]}))for(let n of t)o.set(s(n),e);function s(e){return e.trim().toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/_+/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function l(e){let t=s(e);if(!t)return null;let n=o.get(t);if(n)return n;for(let e of t.split("-")){let t=o.get(e);if(t)return t}for(let[e,n]of o.entries())if(t===e||t.startsWith(`${e}-`)||t.endsWith(`-${e}`)||t.includes(`-${e}-`))return n;return null}function d(e){try{let t=new URL(e),n=l(t.hostname.replace(/^www\./,"").replace(/\./g,"-"));if(n)return n;return l(t.pathname.replace(/\//g,"-"))}catch{return l(e)}}function c({label:e,className:t}){let n=e.split(/[^a-z0-9]/iu).filter(Boolean).slice(0,2).map(e=>e[0]?.toUpperCase()).join("");return(0,a.jsx)("span",{"aria-hidden":"true",className:`inline-flex shrink-0 items-center justify-center rounded-[0.2rem] text-[9px] font-semibold text-white ${t}`,style:{backgroundColor:function(e){let t=["#14b8a6","#06b6d4","#0ea5e9","#8b5cf6","#ec4899","#f97316","#f59e0b","#ef4444","#22c55e","#84cc16"],n=0;for(let a=0;a<e.length;a+=1)n=(31*n+e.charCodeAt(a))%t.length;return t[Math.abs(n)%t.length]??"#6b7280"}(`${e}:${e.length}`)},children:n||"AI"})}function u({seed:e,className:t="h-6 w-6"}){let[n,o]=(0,r.useState)(0),s=e?.label?.trim()??"",p=(0,r.useMemo)(()=>s?function(e){if(!e.label.trim())return[];let t=l(e.label)??(e.homepage?d(e.homepage):null)??(e.iconUrl?d(e.iconUrl):null),n="string"==typeof e.iconUrl&&e.iconUrl.trim().length>0?e.iconUrl.trim():null,a=[];return t&&a.push(...i[t]),n&&a.push(n),a}({label:s,iconUrl:e?.iconUrl,homepage:e?.homepage}):[],[s,e?.homepage,e?.iconUrl]);if((0,r.useEffect)(()=>{o(0)},[s,p]),!s)return(0,a.jsx)(c,{label:"AI",className:t});let f=p[n]??null;return f?(0,a.jsx)("img",{src:f,alt:`${s} icon`,loading:"lazy",className:`${t} shrink-0 rounded-[0.2rem] object-contain scale-125`,onError:()=>o(e=>e+1)}):(0,a.jsx)(c,{label:s,className:t})}},75120:(e,t,n)=>{n.d(t,{DA:()=>N,Kc:()=>I,eI:()=>E});var a=n(7620),r=n(31404),i=n(10926),o=n(17210),s=n(77522);let l="local",d=new Map,c=new Map,u=new Map;function p(e){return(0,i.C0)(e)??l}function f(e){let t=d.get(e);return t||(t={sessionsById:new Map,orderedIds:[],version:0,loading:!0,error:null,listInitialized:!1,refreshPromise:null,unsubscribeSnapshots:null,activeConsumers:0,pollTimer:null,focusHandler:null,visibilityHandler:null},d.set(e,t)),t}function m(e){let t=c.get(e);return t||(t=new Set,c.set(e,t)),t}function g(e){for(let t of m(e))t()}function h(e,t){let n=u.get(e);if(n)for(let e of new Set(t)){let t=n.get(e);if(t)for(let e of t)e()}}function v(e){return[...e.values()].sort((e,t)=>t.createdAt.localeCompare(e.createdAt)).map(e=>e.id)}function b(e,t,n){let a=f(e);a.sessionsById=t,a.orderedIds=n,a.version+=1}function w(e,t,n){let a=f(e),r=a.sessionsById.get(t);if(!r)return null;let i=new Map(a.sessionsById),o=n(r);return o?i.set(t,o):i.delete(t),b(e,i,v(i)),a.loading=!1,a.error=null,g(e),h(e,[t]),r}function y(e){return{id:e.id,projectId:e.projectId,bridgeId:e.bridgeId??null,bridgeConnected:e.bridgeConnected??null,bridgeConnection:e.bridgeConnection??null,status:e.status,activity:e.activity,branch:e.branch,model:e.model??null,reasoningEffort:e.reasoningEffort??null,issueId:e.issueId,summary:e.summary??null,createdAt:e.createdAt,lastActivityAt:e.lastActivityAt,pr:e.pr??null,metadata:e.metadata}}async function x(e,t){let n=f(e);if(n.refreshPromise)return void await n.refreshPromise;let a=(async()=>{let a=new Set(n.sessionsById.keys());try{var i;let o=await fetch((0,r.S)("/api/sessions",t),{cache:"no-store"});if(!o.ok){let e=await o.json().catch(()=>null);throw Error(e?.error??e?.reason??`Failed to fetch sessions: ${o.status}`)}let s=(i=await o.json().catch(()=>null),Array.isArray(i)?i:Array.isArray(i?.sessions)?i.sessions:[]);for(let e of s)a.add(e.id);let l=new Map(s.map(e=>[e.id,e]));b(e,l,v(l)),n.error=null}catch(e){n.error=e instanceof Error?e.message:"Failed to fetch sessions"}finally{n.loading=!1,g(e),h(e,a)}})();n.refreshPromise=a.finally(()=>{n.refreshPromise===a&&(n.refreshPromise=null)}),await a}function C(){return"visible"===document.visibilityState}function k(e){let t=f(e);null!==t.pollTimer&&(window.clearTimeout(t.pollTimer),t.pollTimer=null)}function A(e,t){let n=f(e);k(e),e!==l&&0!==n.activeConsumers&&C()&&(n.pollTimer=window.setTimeout(async()=>{0!==f(e).activeConsumers&&C()&&(await x(e,t),A(e,t))},15e3))}function j(e,t){let n=f(e);n.activeConsumers+=1,n.activeConsumers>1||(!function(e){if(e!==l)return;let t=f(e);t.unsubscribeSnapshots||(t.unsubscribeSnapshots=(0,o.L)(t=>{let n=f(e),a=new Set;if("snapshot"===t.type){for(let e of n.sessionsById.keys())a.add(e);for(let e of t.sessions)a.add(e.id);b(e,new Map(t.sessions.map(e=>{let t=y(e);return[t.id,t]})),t.sessions.map(e=>e.id))}else{let r=new Map(n.sessionsById);for(let e of t.sessions){let t=y(e);r.set(t.id,t),a.add(t.id)}for(let e of t.removedSessionIds??[])r.delete(e),a.add(e);b(e,r,v(r))}n.loading=!1,n.error=null,g(e),h(e,a)}))}(e),n.listInitialized||(n.listInitialized=!0),function(e,t){let n=f(e);if(n.focusHandler||n.visibilityHandler)return;let a=()=>{0!==n.activeConsumers&&(x(e,t),A(e,t))},r=()=>{0!==n.activeConsumers&&("visible"===document.visibilityState&&x(e,t),k(e),A(e,t))};n.focusHandler=a,n.visibilityHandler=r,window.addEventListener("focus",a),document.addEventListener("visibilitychange",r)}(e,t),C()&&x(e,t),A(e,t))}function S(e){let t=f(e);if(t.activeConsumers=Math.max(0,t.activeConsumers-1),!(t.activeConsumers>0)){let n;k(e),(n=f(e)).focusHandler&&(window.removeEventListener("focus",n.focusHandler),n.focusHandler=null),n.visibilityHandler&&(document.removeEventListener("visibilitychange",n.visibilityHandler),n.visibilityHandler=null),t.unsubscribeSnapshots?.(),t.unsubscribeSnapshots=null}}async function M(e,t,n){let a=f(t);try{let i=await fetch((0,r.S)(`/api/sessions/${encodeURIComponent(e)}`,n),{cache:"no-store"});if(404===i.status){let n=new Map(a.sessionsById);return n.delete(e),b(t,n,v(n)),a.error=null,null}if(!i.ok){let e=await i.json().catch(()=>null);throw Error(e?.error??e?.reason??`Failed to fetch session: ${i.status}`)}let o=await i.json(),s=new Map(a.sessionsById);return s.set(o.id,o),b(t,s,v(s)),a.error=null,o}catch(e){throw a.error=e instanceof Error?e.message:"Failed to fetch session",e}finally{a.loading=!1,g(t),h(t,[e])}}function I(e,t){let n=e.trim();if(!n)return()=>{};let a=p(t?.bridgeId??(0,i.DW)(n)?.bridgeId??null),r=w(a,n,e=>{if("archived"===e.status.trim().toLowerCase())return e;let t=new Date().toISOString(),n={...e.metadata};return n.archivedAt=n.archivedAt??t,n.finishedAt=n.finishedAt??t,n.summary="Archived",delete n.terminationRequested,{...e,status:"archived",activity:"exited",summary:"Archived",lastActivityAt:t,metadata:n}});if(!r)return()=>{};let o="function"==typeof structuredClone?structuredClone(r):JSON.parse(JSON.stringify(r));return()=>{w(a,n,()=>o)}}function E(e,t){let n=t?.enabled??!0,r=p(t?.bridgeId),i=f(r),[,o]=(0,a.useReducer)(e=>e+1,0),[s,l]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{var e;let a;if(l(!0),!n)return;j(r,t?.bridgeId);let i=(e=()=>o(),(a=m(r)).add(e),()=>{a.delete(e)});return()=>{i(),S(r)}},[n,t?.bridgeId,r]),{sessions:(0,a.useMemo)(()=>{let t,a;return n&&s?(t=f(r),a=e?.trim(),t.orderedIds.map(e=>t.sessionsById.get(e)).filter(e=>!!e).filter(e=>!a||e.projectId===a)):[]},[n,s,e,r,i.version]),loading:!!n&&(!s||i.loading),error:n?i.error:null,refresh:()=>x(r,t?.bridgeId)}}function N(e,t=null,n){let r=n?.enabled??!0,o="string"==typeof e&&e.trim().length>0?e.trim():null,d=(0,i.C0)(n?.bridgeId??t?.bridgeId??(0,i.DW)(o)?.bridgeId??null),c=p(d),m=f(c),[,w]=(0,a.useReducer)(e=>e+1,0),[y,x]=(0,a.useState)(!1),[C,k]=(0,a.useState)(t),[A,I]=(0,a.useState)(null),[E,P]=(0,a.useState)(r&&null!==o&&null===t),L=o?m.sessionsById.get(o)??C??t:null;return(0,a.useEffect)(()=>{x(!0),function(e,t){if(!t)return;let n=f(e),a=n.sessionsById.get(t.id);if(a&&JSON.stringify(a)===JSON.stringify(t))return;let r=new Map(n.sessionsById);r.set(t.id,t),b(e,r,v(r)),n.loading=!1,g(e),h(e,[t.id])}(c,t),k(t),I(null)},[t,c]),(0,a.useEffect)(()=>{if(r&&null!==o){var e;let t,n,a;return e=()=>w(),(t=u.get(c))||(t=new Map,u.set(c,t)),(n=t.get(o))||(n=new Set,t.set(o,n)),(a=n).add(e),()=>{if(a.delete(e),a.size>0)return;let t=u.get(c);t?.delete(o),t&&0===t.size&&u.delete(c)}}},[r,o,c]),(0,a.useEffect)(()=>{if(r&&null!==o)return j(c,d),()=>{S(c)}},[r,d,o,c]),(0,a.useEffect)(()=>{var e;let t;if(!r||null===o||c===l||(e=L?.status,(t=e?.trim().toLowerCase())&&s.C.has(t)))return;let n=()=>{"visible"===document.visibilityState&&M(o,c,d).catch(()=>{})};n();let a=window.setInterval(n,5e3);return()=>{window.clearInterval(a)}},[L?.status,r,d,o,c]),(0,a.useEffect)(()=>{if(!r||null===o){k(null),I(null),P(!1);return}if(t||m.sessionsById.has(o)){k(e=>m.sessionsById.get(o)??e??t),I(null),P(!1);return}let e=!1;return P(!0),I(null),M(o,c,d).then(t=>{e||(k(t),I(null))}).catch(t=>{e||(k(null),I(t instanceof Error?t.message:"Failed to fetch session"))}).finally(()=>{e||P(!1)}),()=>{e=!0}},[r,d,t,o,c,m]),{session:o?y?L??null:t??null:null,loading:E,error:r&&o?A??m.error:null}}},76050:(e,t,n)=>{function a(e){return e?.metadata.sessionKind==="project_dispatcher"}function r(e){return a(e)?"dispatcher":"terminal"}n.d(t,{Zu:()=>a,tK:()=>r})},76196:(e,t,n)=>{n.d(t,{DZ:()=>b,O$:()=>h,Tk:()=>m,Zp:()=>u,Zz:()=>p,d8:()=>g,u6:()=>v,yM:()=>f}),[...new Set(["killed","terminated","done","cleanup","errored","merged"])];let a=["amp","claude-code","codex","cursor-cli","droid","gemini","github-copilot","opencode","qwen-code","ccr"],r={amp:"default",claudeCode:"pro",codex:"chatgpt",cursorCli:"default",droid:"default",gemini:"oauth",githubCopilot:"default",opencode:"default",qwenCode:"oauth",ccr:"default"},i={amp:{agent:"amp",label:"Amp",accessKey:"amp",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Amp CLI catalog and custom override support."}]},"claude-code":{agent:"claude-code",label:"Claude Code",accessKey:"claudeCode",defaultAccess:"pro",accessOptions:[{id:"pro",label:"Claude Pro",description:"Shows the current Sonnet models that Claude Code documents for Pro usage."},{id:"max",label:"Claude Max",description:"Unlocks both Sonnet and Opus model choices in Claude Code."},{id:"api",label:"Anthropic API",description:"Use direct Anthropic API credentials instead of a Claude subscription."}]},codex:{agent:"codex",label:"Codex",accessKey:"codex",defaultAccess:"chatgpt",accessOptions:[{id:"chatgpt",label:"ChatGPT Plan",description:"Use the ChatGPT-backed Codex login flow for paid ChatGPT workspaces."},{id:"api",label:"OpenAI API",description:"Use direct OpenAI API credentials when Codex is pointed at the API."}]},"cursor-cli":{agent:"cursor-cli",label:"Cursor Agent",accessKey:"cursorCli",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Cursor Agent catalog and custom override support."}]},droid:{agent:"droid",label:"Droid",accessKey:"droid",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Droid catalog and custom override support."}]},gemini:{agent:"gemini",label:"Gemini",accessKey:"gemini",defaultAccess:"oauth",accessOptions:[{id:"oauth",label:"Google Login",description:"Use the built-in Google account flow that Gemini CLI ships with."},{id:"api",label:"Gemini API",description:"Use a Gemini API key or Vertex AI project for broader model control."}]},"github-copilot":{agent:"github-copilot",label:"GitHub Copilot",accessKey:"githubCopilot",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Copilot CLI catalog and custom override support."}]},opencode:{agent:"opencode",label:"OpenCode",accessKey:"opencode",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed OpenCode catalog and custom override support."}]},"qwen-code":{agent:"qwen-code",label:"Qwen Code",accessKey:"qwenCode",defaultAccess:"oauth",accessOptions:[{id:"oauth",label:"Qwen OAuth",description:"Use Qwen Code's built-in browser login and bundled provider defaults."},{id:"api",label:"DashScope / Custom API",description:"Use DashScope or another OpenAI-compatible endpoint configured for Qwen Code."}]},ccr:{agent:"ccr",label:"CCR",accessKey:"ccr",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Claude Code Router catalog and custom override support."}]}},o=[{id:"low",label:"Low",description:"Fast responses with lighter reasoning."},{id:"medium",label:"Medium",description:"Balanced speed and reasoning depth for everyday tasks."},{id:"high",label:"High",description:"Deeper reasoning for more complex tasks."}],s=[...o,{id:"xhigh",label:"Extra High",description:"Maximum reasoning depth for the hardest tasks."}];function l(e,t,n,a=function(e){return e.trim().split(/[-_]+/g).filter(Boolean).map(e=>"gpt"===e.toLowerCase()?"GPT":e[0]?.toUpperCase()+e.slice(1)).join(" ")}(e)){return{id:e,label:a,description:t,access:n}}let d={amp:{modelsByAccess:{default:[l("free","Amp Free mode prioritizes lower-cost execution.",["default"],"Amp Free"),l("rush","Amp Rush mode prioritizes faster turnaround.",["default"],"Amp Rush"),l("smart","Amp Smart mode balances quality, speed, and tool choice.",["default"],"Amp Smart"),l("deep","Amp Deep mode enables the highest-capability reasoning path.",["default"],"Amp Deep")]},defaultModelByAccess:{default:"smart"}},"claude-code":{modelsByAccess:{pro:[l("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),l("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")],max:[l("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),l("claude-opus-4-6","Highest-capability Claude Code model for deeper reasoning.",["max","api"],"Claude Opus 4.6"),l("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")],api:[l("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),l("claude-opus-4-6","Highest-capability Claude Code model for deeper reasoning.",["max","api"],"Claude Opus 4.6"),l("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")]},defaultModelByAccess:{pro:"claude-sonnet-4-6",max:"claude-opus-4-6",api:"claude-sonnet-4-6"},reasoningOptionsByAccess:{pro:o,max:o,api:o},defaultReasoningByAccess:{pro:"medium",max:"high",api:"medium"}},codex:{modelsByAccess:{chatgpt:[l("gpt-5.4","Latest frontier coding model exposed by Codex.",["chatgpt","api"],"GPT-5.4"),l("gpt-5.4-mini","Smaller GPT-5.4 variant for faster or lower-cost coding tasks.",["chatgpt","api"],"GPT-5.4-Mini"),l("gpt-5.3-codex","Balanced Codex coding model.",["chatgpt","api"],"GPT-5.3-Codex"),l("gpt-5.3-codex-spark","Fast Codex model optimized for rapid iteration.",["chatgpt"],"GPT-5.3-Codex-Spark"),l("gpt-5.2-codex","Previous generation Codex coding model.",["chatgpt","api"],"GPT-5.2-Codex"),l("gpt-5.2","Previous frontier model for professional work with configurable reasoning effort.",["chatgpt","api"],"GPT-5.2"),l("gpt-5.1-codex-max","High-capability legacy Codex model.",["chatgpt","api"],"GPT-5.1-Codex-Max"),l("gpt-5.1-codex-mini","Smaller Codex model for quick tasks.",["chatgpt","api"],"GPT-5.1-Codex-Mini")],api:[l("gpt-5.4","Latest frontier coding model exposed by Codex.",["chatgpt","api"],"GPT-5.4"),l("gpt-5.4-mini","Smaller GPT-5.4 variant for faster or lower-cost coding tasks.",["chatgpt","api"],"GPT-5.4-Mini"),l("gpt-5.3-codex","Balanced Codex coding model.",["chatgpt","api"],"GPT-5.3-Codex"),l("gpt-5.2-codex","Previous generation Codex coding model.",["chatgpt","api"],"GPT-5.2-Codex"),l("gpt-5.2","Previous frontier model for professional work with configurable reasoning effort.",["chatgpt","api"],"GPT-5.2"),l("gpt-5.1-codex-max","High-capability legacy Codex model.",["chatgpt","api"],"GPT-5.1-Codex-Max"),l("gpt-5.1-codex-mini","Smaller Codex model for quick tasks.",["chatgpt","api"],"GPT-5.1-Codex-Mini")]},defaultModelByAccess:{chatgpt:"gpt-5.4",api:"gpt-5.4"},reasoningOptionsByAccess:{chatgpt:s,api:s},defaultReasoningByAccess:{chatgpt:"high",api:"high"}},"cursor-cli":{modelsByAccess:{default:[l("gpt-5","Cursor Agent's GPT-5 preset alias.",["default"],"GPT-5"),l("sonnet-4","Cursor Agent's Sonnet preset alias.",["default"],"Sonnet 4"),l("opus","Cursor Agent's Opus preset alias.",["default"],"Opus")]},defaultModelByAccess:{default:"gpt-5"}},droid:{modelsByAccess:{default:[]},defaultModelByAccess:{}},gemini:{modelsByAccess:{oauth:[l("gemini-3.1-pro-preview","High-capability Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3.1 Pro Preview"),l("gemini-3-flash-preview","Fast Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3 Flash Preview")],api:[l("gemini-3.1-pro-preview","High-capability Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3.1 Pro Preview"),l("gemini-3-flash-preview","Fast Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3 Flash Preview")]},defaultModelByAccess:{oauth:"gemini-3.1-pro-preview",api:"gemini-3.1-pro-preview"}},"github-copilot":{modelsByAccess:{default:[]},defaultModelByAccess:{}},opencode:{modelsByAccess:{default:[]},defaultModelByAccess:{}},"qwen-code":{modelsByAccess:{oauth:[l("coder-model","Model discovered in the local Qwen Code installation.",["oauth","api"],"Coder Model")],api:[l("coder-model","Model discovered in the local Qwen Code installation.",["oauth","api"],"Coder Model")]},defaultModelByAccess:{oauth:"coder-model",api:"coder-model"}},ccr:{modelsByAccess:{default:[l("claude-sonnet-4-6","Balanced Claude model exposed through Claude Code Router.",["default"],"Claude Sonnet 4.6"),l("claude-opus-4-6","Highest-capability Claude model exposed through Claude Code Router.",["default"],"Claude Opus 4.6"),l("claude-haiku-4-5","Fast Claude model exposed through Claude Code Router.",["default"],"Claude Haiku 4.5")]},defaultModelByAccess:{default:"claude-sonnet-4-6"},reasoningOptionsByAccess:{default:o},defaultReasoningByAccess:{default:"medium"}}};function c(e){let t=e.trim().toLowerCase().replace(/[_\s]+/g,"-");return a.includes(t)?t:null}function u(){return{...r}}function p(e){return null!==c(e)}function f(e){let t=c(e);return t?i[t]:null}function m(e,t){let n=f(e);if(!n)return null;let a=t?.[n.accessKey];return"string"==typeof a&&n.accessOptions.some(e=>e.id===a)?a:n.defaultAccess}function g(e,t){let n=c(e);if(!n)return[];let a=m(n,t);if(!a)return[];let r=d[n],i=r.modelsByAccess[a]??[];if(i.length>0)return[...i];let o=[],s=new Set;for(let e of Object.values(r.modelsByAccess))if(Array.isArray(e))for(let t of e)s.has(t.id)||(s.add(t.id),o.push(t));return o}function h(e,t){let n=c(e);if(!n)return null;let a=m(n,t);return a?d[n].defaultModelByAccess[a]??null:null}function v(e,t){let n=c(e);if(!n)return[];let a=m(n,t);return a?d[n].reasoningOptionsByAccess?.[a]??[]:[]}function b(e,t){let n=c(e);if(!n)return null;let a=m(n,t);return a?d[n].defaultReasoningByAccess?.[a]??null:null}},84527:(e,t,n)=>{n.d(t,{J:()=>o});var a=n(31404),r=n(75120);async function i(e,t){let n=await fetch((0,a.S)(`/api/sessions/${encodeURIComponent(e)}/archive`,t),{method:"POST"}),r=await n.json().catch(()=>null);if(404===n.status&&(n=await fetch((0,a.S)(`/api/sessions/${encodeURIComponent(e)}/actions`,t),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"archive"})}),r=await n.json().catch(()=>null)),!n.ok)throw Error(r?.error??`Failed to archive session: ${n.status}`)}async function o(e,t){let n=(0,r.Kc)(e,t);try{await i(e,t?.bridgeId)}catch(e){throw n(),e}}},85626:(e,t,n)=>{n.d(t,{$E:()=>u,ww:()=>d,zu:()=>c});let a="abstract-sound-4",r={"abstract-sound-1":{steps:[{frequency:784,durationMs:90,gain:.24},{frequency:988,durationMs:90,gain:.22},{frequency:1175,durationMs:120,gain:.2}]},"abstract-sound-2":{steps:[{frequency:659,durationMs:120,gain:.22},{frequency:523,durationMs:140,gain:.2},{frequency:659,durationMs:120,gain:.18}]},"abstract-sound-3":{steps:[{frequency:440,durationMs:80,gain:.22},{frequency:554,durationMs:80,gain:.22},{frequency:659,durationMs:90,gain:.2},{frequency:880,durationMs:120,gain:.18}]},"abstract-sound-4":{steps:[{frequency:523,durationMs:130,gain:.22},{frequency:659,durationMs:130,gain:.2},{frequency:784,durationMs:150,gain:.18}]},"cow-mooing":{steps:[{frequency:220,durationMs:220,type:"triangle",gain:.24},{frequency:174,durationMs:260,type:"triangle",gain:.2}]},"phone-vibration":{vibrate:[120,60,120,60,180],steps:[{frequency:180,durationMs:140,gain:.16},{frequency:220,durationMs:140,gain:.14}]},rooster:{steps:[{frequency:784,durationMs:70,type:"square",gain:.24},{frequency:1046,durationMs:70,type:"square",gain:.22},{frequency:1318,durationMs:90,type:"square",gain:.2},{frequency:1568,durationMs:120,type:"square",gain:.18}]}},i=null;function o(){let e=window,t=e.AudioContext??e.webkitAudioContext;return t?(i||(i=new t),i):null}function s(e){let t=e?.trim();return t&&t in r?t:a}function l(e,t,n){return Math.min(n,Math.max(t,e))}function d(e){return s(e)}async function c(){let e=o();if(!e)return!1;if("suspended"===e.state)try{await e.resume()}catch{return!1}return"running"===e.state}async function u(e,t){let n=s(e),a=r[n];if("phone-vibration"===n&&a.vibrate&&"u">typeof navigator&&"function"==typeof navigator.vibrate)return navigator.vibrate(a.vibrate);let i=o();if(!i||!a.steps||0===a.steps.length)return!1;if("suspended"===i.state)try{await i.resume()}catch{return!1}if("running"!==i.state)return!1;let d=l(t?.volume??.4,.05,.8),c=i.currentTime+.02;for(let e of a.steps)!function(e,t,n,a){let r=e.createOscillator(),i=e.createGain(),o=l((n.gain??1)*a,.02,.9),s=Math.max(.04,n.durationMs/1e3),d=t+Math.max(.015,Math.min(.05,.35*s)),c=t+Math.max(.02,.7*s),u=t+s;r.type=n.type??"sine",r.frequency.setValueAtTime(n.frequency,t),i.gain.setValueAtTime(1e-4,t),i.gain.linearRampToValueAtTime(o,d),i.gain.exponentialRampToValueAtTime(1e-4,c),i.gain.setValueAtTime(1e-4,u),r.connect(i),i.connect(e.destination),r.start(t),r.stop(u+.05)}(i,c,e,d),c+=Math.max(.06,e.durationMs/1e3+.04);return!0}},86011:(e,t,n)=>{n.d(t,{Q:()=>c});var a=n(7620),r=n(31404),i=n(85626);function o(){return"u"<typeof document||"visible"===document.visibilityState}function s(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function l(e){return`${e.id}::${e.timestamp}`}function d(e){null!==e.current&&(window.clearTimeout(e.current),e.current=null)}function c({enabled:e,projectId:t,preferences:n,bridgeId:u}){let p=(0,a.useRef)(n?.soundEnabled!==!1),f=(0,a.useRef)((0,i.ww)(n?.soundFile)),m=(0,a.useRef)(new Set),g=(0,a.useRef)(null),h=(0,a.useRef)(!1),v=(0,a.useRef)(null),b=(0,a.useRef)(null),w=(0,a.useRef)(null);(0,a.useEffect)(()=>{p.current=n?.soundEnabled!==!1,f.current=(0,i.ww)(n?.soundFile)},[n?.soundEnabled,n?.soundFile]),(0,a.useEffect)(()=>{if(!e)return;let n=t?.trim()||null,a=u?.trim()||null,c=`${a??"local"}::${n??""}`;v.current!==c&&(v.current=c,m.current=new Set,g.current=null,h.current=!1);let y=!1,x=async e=>{if(y||!o())return;if(b.current)return void await b.current;let t=(async()=>{let t=new URLSearchParams({limit:"20"});n&&t.set("project",n),!e&&g.current&&t.set("since",g.current);try{var o;let n,d=await fetch((0,r.S)(`/api/notifications?${t.toString()}`,a),{cache:"no-store"});if(!d.ok)return;let c=(o=await d.json().catch(()=>null),n=s(o),(Array.isArray(n.notifications)?n.notifications:[]).map(e=>{var t;let n,a,r,i,o,l,d,c;return n=s(e),a="string"==typeof n.id?n.id.trim():"",r="string"==typeof n.message?n.message.trim():"",i="string"==typeof n.timestamp?n.timestamp.trim():"",o="string"==typeof n.sessionId?n.sessionId.trim():"",l="string"==typeof n.projectId?n.projectId.trim():"",d="string"==typeof n.type?n.type.trim():"",c="high"===(t=n.priority)||"medium"===t||"low"===t?n.priority:"low",a&&r&&i&&o&&l&&d?{id:a,priority:c,message:r,timestamp:i,sessionId:o,projectId:l,type:d}:null}).filter(e=>null!==e).sort((e,t)=>{let n=Date.parse(t.timestamp)-Date.parse(e.timestamp);return 0!==n?n:t.id.localeCompare(e.id)}));if(0===c.length){h.current=!0;return}if(g.current=c[0]?.timestamp??null,e||!h.current){for(let e of c)m.current.add(l(e));h.current=!0;return}let u=c.filter(e=>!m.current.has(l(e)));for(let e of c)m.current.add(l(e));if(0===u.length)return;let v=u.find(e=>"high"===e.priority)??u.find(e=>"medium"===e.priority)??u[0]??null;if(!v||"low"===v.priority||!p.current)return;await (0,i.$E)(f.current)}catch{}})();b.current=t;try{await t}finally{b.current===t&&(b.current=null),h.current=!0}},C=()=>{d(w),!y&&o()&&(w.current=window.setTimeout(()=>{x(!1).finally(()=>{C()})},1e4))},k=()=>{!y&&o()&&x(!h.current).finally(()=>{C()})},A=()=>{o()?k():d(w)},j=()=>{o()&&k()},S=()=>{(0,i.zu)()};return k(),window.addEventListener("focus",j),document.addEventListener("visibilitychange",A),window.addEventListener("pointerdown",S,!0),window.addEventListener("touchstart",S,!0),window.addEventListener("keydown",S,!0),()=>{y=!0,d(w),window.removeEventListener("focus",j),document.removeEventListener("visibilitychange",A),window.removeEventListener("pointerdown",S,!0),window.removeEventListener("touchstart",S,!0),window.removeEventListener("keydown",S,!0)}},[u,e,t])}},92070:(e,t,n)=>{n.d(t,{w:()=>o});let a=/\r?\n\r?\n/;function r(e){return e.trimStart()}function i(e){let t=null,n=[];for(let a of e.split(/\r?\n/))!a.startsWith(":")&&(a.startsWith("event:")?t=r(a.slice(6)):a.startsWith("data:")&&n.push(r(a.slice(5))));return 0===n.length?null:{event:t,data:n.join("\n")}}async function*o(e,t){let n=e.getReader(),r=new TextDecoder,o="";try{for(;;){if(t?.aborted)return;let{done:e,value:s}=await n.read();if(e){let e=r.decode(void 0,{stream:!1});e.length>0&&(o+=e)}else s&&(o+=r.decode(s,{stream:!0}));for(;;){let e=o.match(a);if(!e||"number"!=typeof e.index)break;let t=o.slice(0,e.index);o=o.slice(e.index+e[0].length);let n=i(t);n&&(yield n)}if(e){let e=i(o);e&&(yield e);break}}}finally{n.releaseLock()}}},95106:(e,t,n)=>{n.d(t,{t:()=>r});var a=n(75120);function r(e,t){return(0,a.eI)(e,t)}},97882:(e,t,n)=>{n.d(t,{V:()=>s});var a=n(54568),r=n(7620),i=n(37270);function o({className:e}){return(0,a.jsx)("img",{src:"/agents/discord-dark.svg",alt:"",width:16,height:16,className:e,"aria-hidden":!0})}let s=(0,r.memo)(function({title:e,onOpenPreferences:t,rightContent:n}){return(0,a.jsxs)("header",{className:"flex h-[33px] items-center border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)] pl-14 pr-2 text-[12px] text-[var(--vk-text-muted)] sm:pl-5 sm:pr-5 sm:text-[13px]",children:[(0,a.jsx)("div",{className:"min-w-0 flex-1 text-left sm:text-center",children:(0,a.jsx)("span",{className:"block truncate font-medium tracking-[0.01em] text-[var(--vk-text-muted)]",children:e??"All Projects"})}),(0,a.jsxs)("div",{className:"ml-auto flex shrink-0 items-center gap-0.5",children:[n?(0,a.jsx)("div",{className:"flex items-center gap-1.5",children:n}):null,(0,a.jsx)("a",{href:"https://discord.gg/sA4QCWNR",target:"_blank",rel:"noopener noreferrer",className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Join Discord community",title:"Community",children:(0,a.jsx)(o,{className:"h-4 w-4"})}),t?(0,a.jsx)("button",{type:"button",onClick:t,className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Open preferences",title:"Preferences",children:(0,a.jsx)(i.A,{className:"h-4 w-4"})}):null]})]})})}}]);
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6778],{862:(e,t,n)=>{n.d(t,{G:()=>C});var a=n(54568),r=n(7620),i=n(33593),o=n(90466),s=n(46916),l=n(79748),d=n(58299),c=n(34309),u=n(62868),p=n(2099),f=n(36645),m=n(59706),g=n(76081),h=n(17210),v=n(31404),b=n(44522);let w="conductor-dismissed-update-version";function y(){let e,t,n=(0,l.usePathname)(),i=(0,l.useSearchParams)(),[o,y]=(0,r.useState)(null),[x,C]=(0,r.useState)(null),[k,A]=(0,r.useState)(null),[j,S]=(0,r.useState)(!1),[M,I]=(0,r.useState)(!1),[E,N]=(0,r.useState)(!1),P=(0,r.useMemo)(()=>(0,v.y)(window.location.href),[n,i]),L=(0,r.useCallback)(()=>(0,v.y)(window.location.href),[]),T=(0,r.useCallback)((e=!1)=>{let t=(0,v.S)("/api/app-update",L());if(!e)return t;let n=new URL(t,"http://127.0.0.1");return n.searchParams.set("force","1"),`${n.pathname}${n.search}${n.hash}`},[L]),B=(0,r.useCallback)(async(e=!1)=>{try{let t=await fetch(T(e),{cache:"no-store"}),n=await t.json().catch(()=>null);if(412===t.status)return C(null),null;if(!t.ok)throw Error("string"==typeof n?.error?n.error:`Failed to load update status (${t.status})`);return y(n),C(null),n}catch(e){return C(e instanceof Error?e.message:"Failed to load update status."),null}},[T,L]);(0,r.useEffect)(()=>{try{let e=window.localStorage.getItem(w);A(e&&e.length>0?e:null)}catch{}B(!0);let e=P?()=>{}:(0,h.F)(e=>{e&&(y(e),C(null))}),t=()=>{"visible"===document.visibilityState&&B(!1)};return window.addEventListener("focus",t),document.addEventListener("visibilitychange",t),()=>{e(),window.removeEventListener("focus",t),document.removeEventListener("visibilitychange",t)}},[P,B]);let $=o?.latestVersion&&k===o.latestVersion,R=!!o?.restarting||E,q=(0,r.useMemo)(()=>!!o&&!$&&(!!R||"running"===o.jobStatus||"completed"===o.jobStatus||"failed"===o.jobStatus||!o.enabled&&!!o.reason||o.updateAvailable),[$,R,o]);async function O(){o?.updateCommand&&(await navigator.clipboard.writeText(o.updateCommand),S(!0),window.setTimeout(()=>S(!1),1400))}async function G(){I(!0);try{let e=await fetch((0,v.S)("/api/app-update",L()),{method:"POST",headers:{"content-type":"application/json"}}),t=await e.json().catch(()=>null);if(!e.ok)throw Error("string"==typeof t?.error?t.error:`Update failed (${e.status})`);y(t),C(null)}catch(e){C(e instanceof Error?e.message:"Failed to trigger update.")}finally{I(!1)}}let U=(0,r.useCallback)(async()=>{let e=Date.now()+6e4;if(P){for(;Date.now()<e;){let e=await B(!1);if(!e?.restarting)return void N(!1);await new Promise(e=>window.setTimeout(e,1e3))}N(!1),C("Restart started on the paired device, but it did not reconnect in time. Retry from the bridge controls.");return}for(;Date.now()<e;){try{if((await fetch("/api/health",{cache:"no-store"})).ok)return void window.location.reload()}catch{}await new Promise(e=>window.setTimeout(e,1e3))}N(!1),C("Restart started, but the dashboard did not come back in time. Reload manually.")},[P,B]);async function z(){try{let e=await fetch((0,v.S)("/api/app-update",L()),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({action:"restart"})}),t=await e.json().catch(()=>null);if(!e.ok)throw Error("string"==typeof t?.error?t.error:`Restart failed (${e.status})`);y(t),C(null)}catch(e){C(e instanceof Error?e.message:"Failed to restart Conductor.")}}return((0,r.useEffect)(()=>{o?.restarting&&!E&&(N(!0),U())},[E,o?.restarting,U]),q)?(0,a.jsx)("div",{className:"pointer-events-none fixed bottom-3 right-3 z-[70] w-[min(calc(100vw-1.5rem),24rem)] sm:bottom-4 sm:right-4",children:(0,a.jsxs)("section",{className:(0,s.cn)("pointer-events-auto rounded-[14px] border bg-[var(--vk-bg-panel)] p-4 shadow-[0_16px_40px_rgba(0,0,0,0.35)]",o?.jobStatus==="failed"?"border-[color:color-mix(in_srgb,var(--vk-red)_55%,var(--vk-border))]":"border-[var(--vk-border)]"),children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[R||o?.jobStatus==="running"?(0,a.jsx)(d.A,{className:"h-4 w-4 animate-spin text-[var(--vk-orange)]"}):o?.jobStatus==="completed"?(0,a.jsx)(c.A,{className:"h-4 w-4 text-[var(--status-ready)]"}):o?.jobStatus==="failed"?(0,a.jsx)(u.A,{className:"h-4 w-4 text-[var(--vk-red)]"}):(0,a.jsx)(p.A,{className:"h-4 w-4 text-[var(--vk-orange)]"}),(0,a.jsx)("h2",{className:"truncate text-[13px] font-semibold text-[var(--vk-text-normal)]",children:o?(t=(e=o.currentVersion?.trim())?` (build ${e})`:"",!o.enabled&&o.reason?`Conductor update unavailable${t}`:o.restarting?`Restarting Conductor${t}`:"running"===o.jobStatus?`Updating Conductor${t}`:"completed"===o.jobStatus?`Conductor updated${t}`:"failed"===o.jobStatus?`Update failed${t}`:o.latestVersion?`Conductor ${o.latestVersion} is available${t}`:`Conductor update available${t}`):"Conductor update"})]}),(0,a.jsx)("p",{className:"mt-2 text-[12px] leading-5 text-[var(--vk-text-muted)]",children:o?function(e){if(!e.enabled&&e.reason)return(0,b.N8)(e);if(e.restarting)return"The launcher is restarting the runtime. This tab will reconnect automatically once it is ready.";if("running"===e.jobStatus)return e.jobMessage??"Installing the latest version in the background.";if("completed"===e.jobStatus)return e.jobMessage??"The latest version has been installed. Restart Conductor to use it.";if("failed"===e.jobStatus)return e.jobMessage??"The update command did not finish successfully.";let t=e.currentVersion?`You are running ${e.currentVersion}. `:"";return e.canAutoUpdate?`${t}Install the new release now and restart when it finishes.`:"npx"===e.installMode?`${t}Copy the restart command, run it in a terminal, and the next launch will use the latest release.`:`${t}Copy the update command, run it in a terminal, then restart Conductor.`}(o):"Checking for updates..."})]}),(0,a.jsx)("button",{type:"button",onClick:function(){if(o?.latestVersion){try{window.localStorage.setItem(w,o.latestVersion)}catch{}A(o.latestVersion);return}y(e=>e?{...e,reason:null,enabled:!0}:e)},className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-[7px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Dismiss update notice",children:(0,a.jsx)(f.A,{className:"h-4 w-4"})})]}),o?.updateCommand?(0,a.jsx)("div",{className:"mt-3 rounded-[10px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 font-mono text-[11px] leading-5 text-[var(--vk-text-muted)]",children:o.updateCommand}):null,o?(0,a.jsx)("p",{className:"mt-2 text-[11px] leading-5 text-[var(--vk-text-faint)]",children:function(e){switch(e){case"npx":return"This session was launched through npx. Copy the restart command, run it in a terminal, and the next launch will use the latest package.";case"unknown":return"Automatic updates are unavailable for this install.";default:return null}}(o.installMode)??(o.restartRequired?"Restart the current Conductor process after the installer completes.":"Update state streams from the running Conductor runtime.")}):null,x?(0,a.jsx)("p",{className:"mt-2 text-[11px] text-[var(--vk-red)]",children:x}):o?.error?(0,a.jsx)("p",{className:"mt-2 text-[11px] text-[var(--vk-red)]",children:o.error}):null,o?.logsTail&&"failed"===o.jobStatus?(0,a.jsx)("pre",{className:"mt-2 max-h-32 overflow-auto rounded-[10px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] p-2 text-[10px] leading-4 text-[var(--vk-text-faint)]",children:o.logsTail}):null,(0,a.jsxs)("div",{className:"mt-3 flex items-center justify-end gap-2",children:[o?.jobStatus==="failed"&&o.canAutoUpdate?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"primary",onClick:()=>void G(),disabled:M,children:[M?(0,a.jsx)(d.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),"Retry"]}):null,o?.jobStatus==="idle"&&o.canAutoUpdate?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"primary",onClick:()=>void G(),disabled:M,children:[M?(0,a.jsx)(d.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(p.A,{className:"h-3.5 w-3.5"}),"Update now"]}):null,o?.jobStatus==="idle"&&!o.canAutoUpdate&&o.updateCommand?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"outline",onClick:()=>void O(),children:[j?(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 text-[var(--status-ready)]"}):(0,a.jsx)(m.A,{className:"h-3.5 w-3.5"}),j?"Copied":"npx"===o.installMode?"Copy restart command":"Copy command"]}):null,o?.restartRequired&&o.canRestart&&!o.restarting&&!E?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"primary",onClick:()=>void z(),children:[(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),"Restart now"]}):null,o?.restarting||E?(0,a.jsxs)(g.$,{type:"button",size:"sm",variant:"primary",disabled:!0,children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5 animate-spin"}),"Restarting"]}):null]})]})}):null}let x="conductor-workspace-sidebar-width";function C({sidebar:e,children:t,mobileSidebarOpen:n,desktopSidebarOpen:l,onToggleSidebar:d,hideMobileSidebarToggle:c=!1}){let[u,p]=(0,r.useState)(356),[f,m]=(0,r.useState)(!1);(0,r.useEffect)(()=>{try{let e=window.localStorage.getItem(x),t=e?Number.parseInt(e,10):NaN;Number.isFinite(t)&&p(Math.min(460,Math.max(296,t)))}catch{}},[]),(0,r.useEffect)(()=>{if(!f)return;let e=e=>{p(Math.min(460,Math.max(296,e.clientX)))},t=()=>{m(!1)};return window.addEventListener("mousemove",e),window.addEventListener("mouseup",t),document.body.style.userSelect="none",document.body.style.cursor="col-resize",()=>{window.removeEventListener("mousemove",e),window.removeEventListener("mouseup",t),document.body.style.userSelect="",document.body.style.cursor="";try{window.localStorage.setItem(x,String(u))}catch{}}},[f,u]),(0,r.useEffect)(()=>{let e=document.documentElement,t=()=>{let t=window.visualViewport,n=t?.height??window.innerHeight;e.style.setProperty("--oc-app-shell-height",`${Math.round(n)}px`)};t();let n=window.visualViewport;return n?.addEventListener("resize",t),n?.addEventListener("scroll",t),window.addEventListener("resize",t),()=>{n?.removeEventListener("resize",t),n?.removeEventListener("scroll",t),window.removeEventListener("resize",t)}},[]);let g={"--workspace-sidebar-width":`${u}px`,"--oc-shell-height":"var(--oc-app-shell-height, 100dvh)"};return(0,a.jsxs)("div",{style:g,className:"relative flex h-[var(--oc-shell-height)] min-h-[var(--oc-shell-height)] max-h-[var(--oc-shell-height)] w-full max-w-full overflow-hidden bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)] [padding-top:env(safe-area-inset-top)] [padding-bottom:env(safe-area-inset-bottom)] pl-[env(safe-area-inset-left)] pr-[env(safe-area-inset-right)]",children:[n&&(0,a.jsx)("button",{type:"button",className:"absolute inset-0 z-20 bg-black/45 lg:hidden",onClick:d,"aria-label":"Close workspace panel"}),(0,a.jsx)("aside",{className:(0,s.cn)("absolute inset-y-0 left-0 z-30 flex h-full w-full max-w-none flex-col border-r border-[var(--vk-border)] bg-[var(--vk-bg-panel)] transition-[transform,width] duration-200 sm:w-[min(90vw,var(--workspace-sidebar-width))] sm:max-w-[28rem]",n?"translate-x-0":"-translate-x-full",l?"lg:w-[var(--workspace-sidebar-width)]":"lg:w-0 lg:overflow-hidden lg:border-r-0","lg:relative lg:left-auto lg:translate-x-0"),children:e}),l?(0,a.jsx)("div",{className:"absolute bottom-0 left-[var(--workspace-sidebar-width)] top-0 z-30 hidden w-2 -translate-x-1/2 cursor-col-resize lg:block",onMouseDown:()=>m(!0),"aria-hidden":"true",children:(0,a.jsx)("div",{className:"mx-auto h-full w-px bg-transparent transition-colors hover:bg-[var(--vk-border)]"})}):null,l&&(0,a.jsx)("button",{type:"button",onClick:d,className:"absolute left-[var(--workspace-sidebar-width)] top-2 z-40 hidden h-7 w-7 -translate-x-1/2 items-center justify-center rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] shadow-[0_0_0_1px_rgba(0,0,0,0.25)] hover:bg-[var(--vk-bg-hover)] lg:inline-flex","aria-label":"Hide workspace panel",children:(0,a.jsx)(i.A,{className:"h-5 w-5"})}),(0,a.jsxs)("main",{className:"relative flex min-h-0 min-w-0 w-full flex-1 flex-col overflow-hidden bg-[var(--vk-bg-main)]",children:[!n&&!c&&(0,a.jsx)("button",{type:"button",onClick:d,className:"absolute left-2 top-2 z-40 inline-flex h-11 w-11 items-center justify-center rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] shadow-[0_10px_24px_rgba(0,0,0,0.28)] hover:bg-[var(--vk-bg-hover)] sm:h-8 sm:w-8 lg:hidden","aria-label":"Open workspace panel",children:(0,a.jsx)(o.A,{className:"h-5 w-5"})}),!l&&(0,a.jsx)("button",{type:"button",onClick:d,className:"absolute left-2 top-2 z-40 hidden h-7 w-7 items-center justify-center rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] lg:inline-flex","aria-label":"Open workspace panel",children:(0,a.jsx)(o.A,{className:"h-5 w-5"})}),t]}),(0,a.jsx)(y,{})]})}},5739:(e,t,n)=>{n.d(t,{q:()=>a});function a(e){return e.trim().toLowerCase().replace(/[_\s]+/g,"-")}},17210:(e,t,n)=>{n.d(t,{F:()=>M,L:()=>S});var a=n(31404),r=n(92070);let i=new Set,o=new Set,s=null,l=null,d=null,c=null,u=null,p=0;function f(){return i.size>0||o.size>0}function m(){return"u"<typeof document||"visible"===document.visibilityState}function g(e){if(Array.isArray(e))return{type:"snapshot",sessions:e};if(!e||"object"!=typeof e)return null;let t=e.type;return"snapshot"!==t&&"snapshot_delta"!==t?null:Array.isArray(e.sessions)?e:null}function h(e){return e&&"object"==typeof e&&"boolean"==typeof e.enabled?e:null}function v(e){for(let t of i)t(e);let t=h(e.appUpdate);if(t)for(let e of o)e(t)}function b(){return(0,a.y)(window.location.href)}async function w(){if("function"!=typeof fetch)return;let e=(async()=>{let e=b();try{let t=await fetch((0,a.S)("/api/sessions",e));if(!t.ok)return;let n=await t.json().catch(()=>null),r=g(n);if(!r)return;v(r)}catch{}try{let n=await fetch((0,a.S)("/api/app-update",e));if(!n.ok)return;let r=await n.json().catch(()=>null);var t=h(r);for(let e of o)e(t)}catch{}})();s=e.finally(()=>{s===e&&(s=null)}),await e}function y(){null!==u&&(window.clearTimeout(u),u=null)}function x(){if(!f()||!m()||b())return;y();let e=0===p?250:Math.min(400*2**(p-1),12e3);p+=1,u=window.setTimeout(()=>{u=null,A()},e)}function C(){y(),p=0,c?.abort(),c=null}async function k(e){try{let t=await fetch("/api/events",{cache:"no-store",signal:e.signal});if(!t.ok||!t.body){e.signal.aborted||x();return}for await(let n of(p=0,(0,r.w)(t.body,e.signal)))!function(e){let t;if("refresh"===e.event){s||w();return}try{t=JSON.parse(e.data)}catch{return}if(t&&"object"==typeof t&&"refresh"===t.type){s||w();return}let n=g(t);n&&v(n)}(n);e.signal.aborted||x()}catch{e.signal.aborted||x()}}function A(){if("u"<typeof fetch||c||!f()||!m()||b())return;let e=new AbortController;c=e,(async()=>{try{await k(e)}finally{c===e&&(c=null)}})()}function j(){if(!f()){C(),l&&(window.removeEventListener("focus",l),l=null),d&&(document.removeEventListener("visibilitychange",d),d=null);return}(l||d||(l=()=>{f()&&m()&&(A(),s||w())},d=()=>{f()&&m()?(A(),s||w()):C()},window.addEventListener("focus",l),document.addEventListener("visibilitychange",d)),b()||!m())?C():A()}function S(e){return i.add(e),j(),()=>{i.delete(e),j()}}function M(e){return o.add(e),j(),()=>{o.delete(e),j()}}},35821:(e,t,n)=>{n.d(t,{w:()=>r});var a=n(75120);function r(e,t=null,n){return(0,a.DA)(e,t,n)}},46012:(e,t,n)=>{n.d(t,{T:()=>i});var a=n(7620);function r(){return window.innerWidth>=1024}function i(e){let[t,n]=(0,a.useState)(!1),[i,o]=(0,a.useState)(e?.initialDesktopOpen??!0),s=(0,a.useCallback)(()=>{r()?o(e=>!e):n(e=>!e)},[]);return{mobileSidebarOpen:t,desktopSidebarOpen:i,toggleSidebar:s,closeSidebarOnMobile:(0,a.useCallback)(()=>{r()||n(!1)},[]),syncSidebarForViewport:(0,a.useCallback)(()=>{r()?o(!0):n(!1)},[])}}},53649:(e,t,n)=>{n.d(t,{U:()=>o});var a=n(7620),r=n(31404);function i(e,t){return{id:e,repo:"string"==typeof t?.repo?t.repo:null,path:"string"==typeof t?.path?t.path:null,iconUrl:"string"==typeof t?.iconUrl?t.iconUrl:null,boardDir:"string"==typeof t?.boardDir?t.boardDir:null,boardFile:"string"==typeof t?.boardFile?t.boardFile:null,description:"string"==typeof t?.description?t.description:null,defaultBranch:"string"==typeof t?.defaultBranch&&t.defaultBranch.trim().length>0?t.defaultBranch:"main",agent:"string"==typeof t?.agent&&t.agent.trim().length>0?t.agent:"claude-code",agentPermissions:"string"==typeof t?.agentPermissions&&t.agentPermissions.trim().length>0?t.agentPermissions:null,agentModel:"string"==typeof t?.agentModel&&t.agentModel.trim().length>0?t.agentModel:null,agentReasoningEffort:"string"==typeof t?.agentReasoningEffort&&t.agentReasoningEffort.trim().length>0?t.agentReasoningEffort:null}}function o(e,t){let n=t?.enabled??!0,[o,s]=(0,a.useState)([]),[l,d]=(0,a.useState)(n),[c,u]=(0,a.useState)(null),p=(0,a.useCallback)(async()=>{if(!n){s([]),u(null),d(!1);return}d(!0);try{let t=await fetch((0,r.S)("/api/config",e)),n=await t.json().catch(()=>null);if(!t.ok){let e="object"==typeof n&&null!==n?n.error??n.reason:null;throw Error(e??`Failed to fetch config: ${t.status}`)}s(function(e){if(!e||"object"!=typeof e)return[];let t=e.projects;return t?Array.isArray(t)?t.map((e,t)=>e&&"object"==typeof e?i("string"==typeof e.id&&e.id.trim().length>0?e.id:`project-${t+1}`,e):i(`project-${t+1}`,null)):"object"==typeof t?Object.entries(t).map(([e,t])=>i(e,t&&"object"==typeof t?t:null)):[]:[]}(n)),u(null)}catch(e){s([]),u(e instanceof Error?e.message:"Failed to fetch config")}finally{d(!1)}},[e,n]);return(0,a.useEffect)(()=>{p()},[p]),{projects:o,loading:!!n&&l,error:n?c:null,refresh:p}}},72410:(e,t,n)=>{n.d(t,{N:()=>u});var a=n(54568),r=n(7620);let i={amp:["/agents/amp-dark.svg","/agents/amp-light.svg"],claude:["/agents/claude-dark.svg","/agents/claude-light.svg"],codex:["/agents/codex-dark.svg","/agents/codex-light.svg"],copilot:["/agents/copilot-dark.svg","/agents/copilot-light.svg"],cursor:["/agents/cursor-dark.svg","/agents/cursor-light.svg"],discord:["/agents/discord-dark.svg","/agents/discord-light.svg"],droid:["/agents/droid-dark.svg","/agents/droid-light.svg"],gemini:["/agents/gemini-dark.svg","/agents/gemini-light.svg"],hermes:["/agents/hermes.png"],letta:["/agents/letta-dark.svg","/agents/letta-light.svg"],openclaw:["/agents/openclaw-dark.svg","/agents/openclaw-light.svg"],opencode:["/agents/opencode-dark.svg","/agents/opencode-light.svg"],qwen:["/agents/qwen-dark.svg","/agents/qwen-light.svg"]},o=new Map;for(let[e,t]of Object.entries({amp:["amp","amp-code","amp-cli","ampcode","agent-amp"],claude:["claude","claude-code","claude-cli","claudecode","ccr","claude-code-router","claude-mcp","claude-mcp-cli","claude-mcp-agent","agent-claude-code"],codex:["codex","openai-codex","codex-cli","codexcli","openai","agent-codex"],copilot:["copilot","github-copilot","githubcopilot","copilot-cli","agent-github-copilot"],cursor:["cursor","cursor-cli","cursor-agent","cursoragent","agent-cursor-cli"],discord:["discord"],droid:["droid","factory-droid","factory_droid","agent-droid"],gemini:["gemini","gemini-cli","google-gemini","googlegemini","agent-gemini"],hermes:["hermes","hermes-agent","nous-hermes","agent-hermes"],letta:["letta","letta-code","letta_code","agent-letta","memgpt"],openclaw:["openclaw","open-claw","open_claw","agent-openclaw"],opencode:["opencode","open-code","open_code","open-code-cli","agent-opencode"],qwen:["qwen","qwen-code","qwen_code","qwen-code-cli","agent-qwen-code"]}))for(let n of t)o.set(s(n),e);function s(e){return e.trim().toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/_+/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function l(e){let t=s(e);if(!t)return null;let n=o.get(t);if(n)return n;for(let e of t.split("-")){let t=o.get(e);if(t)return t}for(let[e,n]of o.entries())if(t===e||t.startsWith(`${e}-`)||t.endsWith(`-${e}`)||t.includes(`-${e}-`))return n;return null}function d(e){try{let t=new URL(e),n=l(t.hostname.replace(/^www\./,"").replace(/\./g,"-"));if(n)return n;return l(t.pathname.replace(/\//g,"-"))}catch{return l(e)}}function c({label:e,className:t}){let n=e.split(/[^a-z0-9]/iu).filter(Boolean).slice(0,2).map(e=>e[0]?.toUpperCase()).join("");return(0,a.jsx)("span",{"aria-hidden":"true",className:`inline-flex shrink-0 items-center justify-center rounded-[0.2rem] text-[9px] font-semibold text-white ${t}`,style:{backgroundColor:function(e){let t=["#14b8a6","#06b6d4","#0ea5e9","#8b5cf6","#ec4899","#f97316","#f59e0b","#ef4444","#22c55e","#84cc16"],n=0;for(let a=0;a<e.length;a+=1)n=(31*n+e.charCodeAt(a))%t.length;return t[Math.abs(n)%t.length]??"#6b7280"}(`${e}:${e.length}`)},children:n||"AI"})}function u({seed:e,className:t="h-6 w-6"}){let[n,o]=(0,r.useState)(0),s=e?.label?.trim()??"",p=(0,r.useMemo)(()=>s?function(e){if(!e.label.trim())return[];let t=l(e.label)??(e.homepage?d(e.homepage):null)??(e.iconUrl?d(e.iconUrl):null),n="string"==typeof e.iconUrl&&e.iconUrl.trim().length>0?e.iconUrl.trim():null,a=[];return t&&a.push(...i[t]),n&&a.push(n),a}({label:s,iconUrl:e?.iconUrl,homepage:e?.homepage}):[],[s,e?.homepage,e?.iconUrl]);if((0,r.useEffect)(()=>{o(0)},[s,p]),!s)return(0,a.jsx)(c,{label:"AI",className:t});let f=p[n]??null;return f?(0,a.jsx)("img",{src:f,alt:`${s} icon`,loading:"lazy",className:`${t} shrink-0 rounded-[0.2rem] object-contain scale-125`,onError:()=>o(e=>e+1)}):(0,a.jsx)(c,{label:s,className:t})}},75120:(e,t,n)=>{n.d(t,{DA:()=>N,Kc:()=>I,eI:()=>E});var a=n(7620),r=n(31404),i=n(10926),o=n(17210),s=n(77522);let l="local",d=new Map,c=new Map,u=new Map;function p(e){return(0,i.C0)(e)??l}function f(e){let t=d.get(e);return t||(t={sessionsById:new Map,orderedIds:[],version:0,loading:!0,error:null,listInitialized:!1,refreshPromise:null,unsubscribeSnapshots:null,activeConsumers:0,pollTimer:null,focusHandler:null,visibilityHandler:null},d.set(e,t)),t}function m(e){let t=c.get(e);return t||(t=new Set,c.set(e,t)),t}function g(e){for(let t of m(e))t()}function h(e,t){let n=u.get(e);if(n)for(let e of new Set(t)){let t=n.get(e);if(t)for(let e of t)e()}}function v(e){return[...e.values()].sort((e,t)=>t.createdAt.localeCompare(e.createdAt)).map(e=>e.id)}function b(e,t,n){let a=f(e);a.sessionsById=t,a.orderedIds=n,a.version+=1}function w(e,t,n){let a=f(e),r=a.sessionsById.get(t);if(!r)return null;let i=new Map(a.sessionsById),o=n(r);return o?i.set(t,o):i.delete(t),b(e,i,v(i)),a.loading=!1,a.error=null,g(e),h(e,[t]),r}function y(e){return{id:e.id,projectId:e.projectId,bridgeId:e.bridgeId??null,bridgeConnected:e.bridgeConnected??null,bridgeConnection:e.bridgeConnection??null,status:e.status,activity:e.activity,branch:e.branch,model:e.model??null,reasoningEffort:e.reasoningEffort??null,issueId:e.issueId,summary:e.summary??null,createdAt:e.createdAt,lastActivityAt:e.lastActivityAt,pr:e.pr??null,metadata:e.metadata}}async function x(e,t){let n=f(e);if(n.refreshPromise)return void await n.refreshPromise;let a=(async()=>{let a=new Set(n.sessionsById.keys());try{var i;let o=await fetch((0,r.S)("/api/sessions",t),{cache:"no-store"});if(!o.ok){let e=await o.json().catch(()=>null);throw Error(e?.error??e?.reason??`Failed to fetch sessions: ${o.status}`)}let s=(i=await o.json().catch(()=>null),Array.isArray(i)?i:Array.isArray(i?.sessions)?i.sessions:[]);for(let e of s)a.add(e.id);let l=new Map(s.map(e=>[e.id,e]));b(e,l,v(l)),n.error=null}catch(e){n.error=e instanceof Error?e.message:"Failed to fetch sessions"}finally{n.loading=!1,g(e),h(e,a)}})();n.refreshPromise=a.finally(()=>{n.refreshPromise===a&&(n.refreshPromise=null)}),await a}function C(){return"visible"===document.visibilityState}function k(e){let t=f(e);null!==t.pollTimer&&(window.clearTimeout(t.pollTimer),t.pollTimer=null)}function A(e,t){let n=f(e);k(e),e!==l&&0!==n.activeConsumers&&C()&&(n.pollTimer=window.setTimeout(async()=>{0!==f(e).activeConsumers&&C()&&(await x(e,t),A(e,t))},15e3))}function j(e,t){let n=f(e);n.activeConsumers+=1,n.activeConsumers>1||(!function(e){if(e!==l)return;let t=f(e);t.unsubscribeSnapshots||(t.unsubscribeSnapshots=(0,o.L)(t=>{let n=f(e),a=new Set;if("snapshot"===t.type){for(let e of n.sessionsById.keys())a.add(e);for(let e of t.sessions)a.add(e.id);b(e,new Map(t.sessions.map(e=>{let t=y(e);return[t.id,t]})),t.sessions.map(e=>e.id))}else{let r=new Map(n.sessionsById);for(let e of t.sessions){let t=y(e);r.set(t.id,t),a.add(t.id)}for(let e of t.removedSessionIds??[])r.delete(e),a.add(e);b(e,r,v(r))}n.loading=!1,n.error=null,g(e),h(e,a)}))}(e),n.listInitialized||(n.listInitialized=!0),function(e,t){let n=f(e);if(n.focusHandler||n.visibilityHandler)return;let a=()=>{0!==n.activeConsumers&&(x(e,t),A(e,t))},r=()=>{0!==n.activeConsumers&&("visible"===document.visibilityState&&x(e,t),k(e),A(e,t))};n.focusHandler=a,n.visibilityHandler=r,window.addEventListener("focus",a),document.addEventListener("visibilitychange",r)}(e,t),C()&&x(e,t),A(e,t))}function S(e){let t=f(e);if(t.activeConsumers=Math.max(0,t.activeConsumers-1),!(t.activeConsumers>0)){let n;k(e),(n=f(e)).focusHandler&&(window.removeEventListener("focus",n.focusHandler),n.focusHandler=null),n.visibilityHandler&&(document.removeEventListener("visibilitychange",n.visibilityHandler),n.visibilityHandler=null),t.unsubscribeSnapshots?.(),t.unsubscribeSnapshots=null}}async function M(e,t,n){let a=f(t);try{let i=await fetch((0,r.S)(`/api/sessions/${encodeURIComponent(e)}`,n),{cache:"no-store"});if(404===i.status){let n=new Map(a.sessionsById);return n.delete(e),b(t,n,v(n)),a.error=null,null}if(!i.ok){let e=await i.json().catch(()=>null);throw Error(e?.error??e?.reason??`Failed to fetch session: ${i.status}`)}let o=await i.json(),s=new Map(a.sessionsById);return s.set(o.id,o),b(t,s,v(s)),a.error=null,o}catch(e){throw a.error=e instanceof Error?e.message:"Failed to fetch session",e}finally{a.loading=!1,g(t),h(t,[e])}}function I(e,t){let n=e.trim();if(!n)return()=>{};let a=p(t?.bridgeId??(0,i.DW)(n)?.bridgeId??null),r=w(a,n,e=>{if("archived"===e.status.trim().toLowerCase())return e;let t=new Date().toISOString(),n={...e.metadata};return n.archivedAt=n.archivedAt??t,n.finishedAt=n.finishedAt??t,n.summary="Archived",delete n.terminationRequested,{...e,status:"archived",activity:"exited",summary:"Archived",lastActivityAt:t,metadata:n}});if(!r)return()=>{};let o="function"==typeof structuredClone?structuredClone(r):JSON.parse(JSON.stringify(r));return()=>{w(a,n,()=>o)}}function E(e,t){let n=t?.enabled??!0,r=p(t?.bridgeId),i=f(r),[,o]=(0,a.useReducer)(e=>e+1,0),[s,l]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{var e;let a;if(l(!0),!n)return;j(r,t?.bridgeId);let i=(e=()=>o(),(a=m(r)).add(e),()=>{a.delete(e)});return()=>{i(),S(r)}},[n,t?.bridgeId,r]),{sessions:(0,a.useMemo)(()=>{let t,a;return n&&s?(t=f(r),a=e?.trim(),t.orderedIds.map(e=>t.sessionsById.get(e)).filter(e=>!!e).filter(e=>!a||e.projectId===a)):[]},[n,s,e,r,i.version]),loading:!!n&&(!s||i.loading),error:n?i.error:null,refresh:()=>x(r,t?.bridgeId)}}function N(e,t=null,n){let r=n?.enabled??!0,o="string"==typeof e&&e.trim().length>0?e.trim():null,d=(0,i.C0)(n?.bridgeId??t?.bridgeId??(0,i.DW)(o)?.bridgeId??null),c=p(d),m=f(c),[,w]=(0,a.useReducer)(e=>e+1,0),[y,x]=(0,a.useState)(!1),[C,k]=(0,a.useState)(t),[A,I]=(0,a.useState)(null),[E,P]=(0,a.useState)(r&&null!==o&&null===t),L=o?m.sessionsById.get(o)??C??t:null;return(0,a.useEffect)(()=>{x(!0),function(e,t){if(!t)return;let n=f(e),a=n.sessionsById.get(t.id);if(a&&JSON.stringify(a)===JSON.stringify(t))return;let r=new Map(n.sessionsById);r.set(t.id,t),b(e,r,v(r)),n.loading=!1,g(e),h(e,[t.id])}(c,t),k(t),I(null)},[t,c]),(0,a.useEffect)(()=>{if(r&&null!==o){var e;let t,n,a;return e=()=>w(),(t=u.get(c))||(t=new Map,u.set(c,t)),(n=t.get(o))||(n=new Set,t.set(o,n)),(a=n).add(e),()=>{if(a.delete(e),a.size>0)return;let t=u.get(c);t?.delete(o),t&&0===t.size&&u.delete(c)}}},[r,o,c]),(0,a.useEffect)(()=>{if(r&&null!==o)return j(c,d),()=>{S(c)}},[r,d,o,c]),(0,a.useEffect)(()=>{var e;let t;if(!r||null===o||c===l||(e=L?.status,(t=e?.trim().toLowerCase())&&s.C.has(t)))return;let n=()=>{"visible"===document.visibilityState&&M(o,c,d).catch(()=>{})};n();let a=window.setInterval(n,5e3);return()=>{window.clearInterval(a)}},[L?.status,r,d,o,c]),(0,a.useEffect)(()=>{if(!r||null===o){k(null),I(null),P(!1);return}if(t||m.sessionsById.has(o)){k(e=>m.sessionsById.get(o)??e??t),I(null),P(!1);return}let e=!1;return P(!0),I(null),M(o,c,d).then(t=>{e||(k(t),I(null))}).catch(t=>{e||(k(null),I(t instanceof Error?t.message:"Failed to fetch session"))}).finally(()=>{e||P(!1)}),()=>{e=!0}},[r,d,t,o,c,m]),{session:o?y?L??null:t??null:null,loading:E,error:r&&o?A??m.error:null}}},76050:(e,t,n)=>{function a(e){return e?.metadata.sessionKind==="project_dispatcher"}function r(e){return a(e)?"dispatcher":"terminal"}n.d(t,{Zu:()=>a,tK:()=>r})},76196:(e,t,n)=>{n.d(t,{DZ:()=>b,O$:()=>h,Tk:()=>m,Zp:()=>u,Zz:()=>p,d8:()=>g,u6:()=>v,yM:()=>f}),[...new Set(["killed","terminated","done","cleanup","errored","merged"])];let a=["amp","claude-code","codex","cursor-cli","droid","gemini","github-copilot","opencode","qwen-code","ccr"],r={amp:"default",claudeCode:"pro",codex:"chatgpt",cursorCli:"default",droid:"default",gemini:"oauth",githubCopilot:"default",opencode:"default",qwenCode:"oauth",ccr:"default"},i={amp:{agent:"amp",label:"Amp",accessKey:"amp",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Amp CLI catalog and custom override support."}]},"claude-code":{agent:"claude-code",label:"Claude Code",accessKey:"claudeCode",defaultAccess:"pro",accessOptions:[{id:"pro",label:"Claude Pro",description:"Shows the current Sonnet models that Claude Code documents for Pro usage."},{id:"max",label:"Claude Max",description:"Unlocks both Sonnet and Opus model choices in Claude Code."},{id:"api",label:"Anthropic API",description:"Use direct Anthropic API credentials instead of a Claude subscription."}]},codex:{agent:"codex",label:"Codex",accessKey:"codex",defaultAccess:"chatgpt",accessOptions:[{id:"chatgpt",label:"ChatGPT Plan",description:"Use the ChatGPT-backed Codex login flow for paid ChatGPT workspaces."},{id:"api",label:"OpenAI API",description:"Use direct OpenAI API credentials when Codex is pointed at the API."}]},"cursor-cli":{agent:"cursor-cli",label:"Cursor Agent",accessKey:"cursorCli",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Cursor Agent catalog and custom override support."}]},droid:{agent:"droid",label:"Droid",accessKey:"droid",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Droid catalog and custom override support."}]},gemini:{agent:"gemini",label:"Gemini",accessKey:"gemini",defaultAccess:"oauth",accessOptions:[{id:"oauth",label:"Google Login",description:"Use the built-in Google account flow that Gemini CLI ships with."},{id:"api",label:"Gemini API",description:"Use a Gemini API key or Vertex AI project for broader model control."}]},"github-copilot":{agent:"github-copilot",label:"GitHub Copilot",accessKey:"githubCopilot",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Copilot CLI catalog and custom override support."}]},opencode:{agent:"opencode",label:"OpenCode",accessKey:"opencode",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed OpenCode catalog and custom override support."}]},"qwen-code":{agent:"qwen-code",label:"Qwen Code",accessKey:"qwenCode",defaultAccess:"oauth",accessOptions:[{id:"oauth",label:"Qwen OAuth",description:"Use Qwen Code's built-in browser login and bundled provider defaults."},{id:"api",label:"DashScope / Custom API",description:"Use DashScope or another OpenAI-compatible endpoint configured for Qwen Code."}]},ccr:{agent:"ccr",label:"CCR",accessKey:"ccr",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Claude Code Router catalog and custom override support."}]}},o=[{id:"low",label:"Low",description:"Fast responses with lighter reasoning."},{id:"medium",label:"Medium",description:"Balanced speed and reasoning depth for everyday tasks."},{id:"high",label:"High",description:"Deeper reasoning for more complex tasks."}],s=[...o,{id:"xhigh",label:"Extra High",description:"Maximum reasoning depth for the hardest tasks."}];function l(e,t,n,a=function(e){return e.trim().split(/[-_]+/g).filter(Boolean).map(e=>"gpt"===e.toLowerCase()?"GPT":e[0]?.toUpperCase()+e.slice(1)).join(" ")}(e)){return{id:e,label:a,description:t,access:n}}let d={amp:{modelsByAccess:{default:[l("free","Amp Free mode prioritizes lower-cost execution.",["default"],"Amp Free"),l("rush","Amp Rush mode prioritizes faster turnaround.",["default"],"Amp Rush"),l("smart","Amp Smart mode balances quality, speed, and tool choice.",["default"],"Amp Smart"),l("deep","Amp Deep mode enables the highest-capability reasoning path.",["default"],"Amp Deep")]},defaultModelByAccess:{default:"smart"}},"claude-code":{modelsByAccess:{pro:[l("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),l("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")],max:[l("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),l("claude-opus-4-6","Highest-capability Claude Code model for deeper reasoning.",["max","api"],"Claude Opus 4.6"),l("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")],api:[l("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),l("claude-opus-4-6","Highest-capability Claude Code model for deeper reasoning.",["max","api"],"Claude Opus 4.6"),l("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")]},defaultModelByAccess:{pro:"claude-sonnet-4-6",max:"claude-opus-4-6",api:"claude-sonnet-4-6"},reasoningOptionsByAccess:{pro:o,max:o,api:o},defaultReasoningByAccess:{pro:"medium",max:"high",api:"medium"}},codex:{modelsByAccess:{chatgpt:[l("gpt-5.4","Latest frontier coding model exposed by Codex.",["chatgpt","api"],"GPT-5.4"),l("gpt-5.4-mini","Smaller GPT-5.4 variant for faster or lower-cost coding tasks.",["chatgpt","api"],"GPT-5.4-Mini"),l("gpt-5.3-codex","Balanced Codex coding model.",["chatgpt","api"],"GPT-5.3-Codex"),l("gpt-5.3-codex-spark","Fast Codex model optimized for rapid iteration.",["chatgpt"],"GPT-5.3-Codex-Spark"),l("gpt-5.2-codex","Previous generation Codex coding model.",["chatgpt","api"],"GPT-5.2-Codex"),l("gpt-5.2","Previous frontier model for professional work with configurable reasoning effort.",["chatgpt","api"],"GPT-5.2"),l("gpt-5.1-codex-max","High-capability legacy Codex model.",["chatgpt","api"],"GPT-5.1-Codex-Max"),l("gpt-5.1-codex-mini","Smaller Codex model for quick tasks.",["chatgpt","api"],"GPT-5.1-Codex-Mini")],api:[l("gpt-5.4","Latest frontier coding model exposed by Codex.",["chatgpt","api"],"GPT-5.4"),l("gpt-5.4-mini","Smaller GPT-5.4 variant for faster or lower-cost coding tasks.",["chatgpt","api"],"GPT-5.4-Mini"),l("gpt-5.3-codex","Balanced Codex coding model.",["chatgpt","api"],"GPT-5.3-Codex"),l("gpt-5.2-codex","Previous generation Codex coding model.",["chatgpt","api"],"GPT-5.2-Codex"),l("gpt-5.2","Previous frontier model for professional work with configurable reasoning effort.",["chatgpt","api"],"GPT-5.2"),l("gpt-5.1-codex-max","High-capability legacy Codex model.",["chatgpt","api"],"GPT-5.1-Codex-Max"),l("gpt-5.1-codex-mini","Smaller Codex model for quick tasks.",["chatgpt","api"],"GPT-5.1-Codex-Mini")]},defaultModelByAccess:{chatgpt:"gpt-5.4",api:"gpt-5.4"},reasoningOptionsByAccess:{chatgpt:s,api:s},defaultReasoningByAccess:{chatgpt:"high",api:"high"}},"cursor-cli":{modelsByAccess:{default:[l("gpt-5","Cursor Agent's GPT-5 preset alias.",["default"],"GPT-5"),l("sonnet-4","Cursor Agent's Sonnet preset alias.",["default"],"Sonnet 4"),l("opus","Cursor Agent's Opus preset alias.",["default"],"Opus")]},defaultModelByAccess:{default:"gpt-5"}},droid:{modelsByAccess:{default:[]},defaultModelByAccess:{}},gemini:{modelsByAccess:{oauth:[l("gemini-3.1-pro-preview","High-capability Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3.1 Pro Preview"),l("gemini-3-flash-preview","Fast Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3 Flash Preview")],api:[l("gemini-3.1-pro-preview","High-capability Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3.1 Pro Preview"),l("gemini-3-flash-preview","Fast Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3 Flash Preview")]},defaultModelByAccess:{oauth:"gemini-3.1-pro-preview",api:"gemini-3.1-pro-preview"}},"github-copilot":{modelsByAccess:{default:[]},defaultModelByAccess:{}},opencode:{modelsByAccess:{default:[]},defaultModelByAccess:{}},"qwen-code":{modelsByAccess:{oauth:[l("coder-model","Model discovered in the local Qwen Code installation.",["oauth","api"],"Coder Model")],api:[l("coder-model","Model discovered in the local Qwen Code installation.",["oauth","api"],"Coder Model")]},defaultModelByAccess:{oauth:"coder-model",api:"coder-model"}},ccr:{modelsByAccess:{default:[l("claude-sonnet-4-6","Balanced Claude model exposed through Claude Code Router.",["default"],"Claude Sonnet 4.6"),l("claude-opus-4-6","Highest-capability Claude model exposed through Claude Code Router.",["default"],"Claude Opus 4.6"),l("claude-haiku-4-5","Fast Claude model exposed through Claude Code Router.",["default"],"Claude Haiku 4.5")]},defaultModelByAccess:{default:"claude-sonnet-4-6"},reasoningOptionsByAccess:{default:o},defaultReasoningByAccess:{default:"medium"}}};function c(e){let t=e.trim().toLowerCase().replace(/[_\s]+/g,"-");return a.includes(t)?t:null}function u(){return{...r}}function p(e){return null!==c(e)}function f(e){let t=c(e);return t?i[t]:null}function m(e,t){let n=f(e);if(!n)return null;let a=t?.[n.accessKey];return"string"==typeof a&&n.accessOptions.some(e=>e.id===a)?a:n.defaultAccess}function g(e,t){let n=c(e);if(!n)return[];let a=m(n,t);if(!a)return[];let r=d[n],i=r.modelsByAccess[a]??[];if(i.length>0)return[...i];let o=[],s=new Set;for(let e of Object.values(r.modelsByAccess))if(Array.isArray(e))for(let t of e)s.has(t.id)||(s.add(t.id),o.push(t));return o}function h(e,t){let n=c(e);if(!n)return null;let a=m(n,t);return a?d[n].defaultModelByAccess[a]??null:null}function v(e,t){let n=c(e);if(!n)return[];let a=m(n,t);return a?d[n].reasoningOptionsByAccess?.[a]??[]:[]}function b(e,t){let n=c(e);if(!n)return null;let a=m(n,t);return a?d[n].defaultReasoningByAccess?.[a]??null:null}},84527:(e,t,n)=>{n.d(t,{J:()=>o});var a=n(31404),r=n(75120);async function i(e,t){let n=await fetch((0,a.S)(`/api/sessions/${encodeURIComponent(e)}/archive`,t),{method:"POST"}),r=await n.json().catch(()=>null);if(404===n.status&&(n=await fetch((0,a.S)(`/api/sessions/${encodeURIComponent(e)}/actions`,t),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"archive"})}),r=await n.json().catch(()=>null)),!n.ok)throw Error(r?.error??`Failed to archive session: ${n.status}`)}async function o(e,t){let n=(0,r.Kc)(e,t);try{await i(e,t?.bridgeId)}catch(e){throw n(),e}}},85626:(e,t,n)=>{n.d(t,{$E:()=>u,ww:()=>d,zu:()=>c});let a="abstract-sound-4",r={"abstract-sound-1":{steps:[{frequency:784,durationMs:90,gain:.24},{frequency:988,durationMs:90,gain:.22},{frequency:1175,durationMs:120,gain:.2}]},"abstract-sound-2":{steps:[{frequency:659,durationMs:120,gain:.22},{frequency:523,durationMs:140,gain:.2},{frequency:659,durationMs:120,gain:.18}]},"abstract-sound-3":{steps:[{frequency:440,durationMs:80,gain:.22},{frequency:554,durationMs:80,gain:.22},{frequency:659,durationMs:90,gain:.2},{frequency:880,durationMs:120,gain:.18}]},"abstract-sound-4":{steps:[{frequency:523,durationMs:130,gain:.22},{frequency:659,durationMs:130,gain:.2},{frequency:784,durationMs:150,gain:.18}]},"cow-mooing":{steps:[{frequency:220,durationMs:220,type:"triangle",gain:.24},{frequency:174,durationMs:260,type:"triangle",gain:.2}]},"phone-vibration":{vibrate:[120,60,120,60,180],steps:[{frequency:180,durationMs:140,gain:.16},{frequency:220,durationMs:140,gain:.14}]},rooster:{steps:[{frequency:784,durationMs:70,type:"square",gain:.24},{frequency:1046,durationMs:70,type:"square",gain:.22},{frequency:1318,durationMs:90,type:"square",gain:.2},{frequency:1568,durationMs:120,type:"square",gain:.18}]}},i=null;function o(){let e=window,t=e.AudioContext??e.webkitAudioContext;return t?(i||(i=new t),i):null}function s(e){let t=e?.trim();return t&&t in r?t:a}function l(e,t,n){return Math.min(n,Math.max(t,e))}function d(e){return s(e)}async function c(){let e=o();if(!e)return!1;if("suspended"===e.state)try{await e.resume()}catch{return!1}return"running"===e.state}async function u(e,t){let n=s(e),a=r[n];if("phone-vibration"===n&&a.vibrate&&"u">typeof navigator&&"function"==typeof navigator.vibrate)return navigator.vibrate(a.vibrate);let i=o();if(!i||!a.steps||0===a.steps.length)return!1;if("suspended"===i.state)try{await i.resume()}catch{return!1}if("running"!==i.state)return!1;let d=l(t?.volume??.4,.05,.8),c=i.currentTime+.02;for(let e of a.steps)!function(e,t,n,a){let r=e.createOscillator(),i=e.createGain(),o=l((n.gain??1)*a,.02,.9),s=Math.max(.04,n.durationMs/1e3),d=t+Math.max(.015,Math.min(.05,.35*s)),c=t+Math.max(.02,.7*s),u=t+s;r.type=n.type??"sine",r.frequency.setValueAtTime(n.frequency,t),i.gain.setValueAtTime(1e-4,t),i.gain.linearRampToValueAtTime(o,d),i.gain.exponentialRampToValueAtTime(1e-4,c),i.gain.setValueAtTime(1e-4,u),r.connect(i),i.connect(e.destination),r.start(t),r.stop(u+.05)}(i,c,e,d),c+=Math.max(.06,e.durationMs/1e3+.04);return!0}},86011:(e,t,n)=>{n.d(t,{Q:()=>c});var a=n(7620),r=n(31404),i=n(85626);function o(){return"u"<typeof document||"visible"===document.visibilityState}function s(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function l(e){return`${e.id}::${e.timestamp}`}function d(e){null!==e.current&&(window.clearTimeout(e.current),e.current=null)}function c({enabled:e,projectId:t,preferences:n,bridgeId:u}){let p=(0,a.useRef)(n?.soundEnabled!==!1),f=(0,a.useRef)((0,i.ww)(n?.soundFile)),m=(0,a.useRef)(new Set),g=(0,a.useRef)(null),h=(0,a.useRef)(!1),v=(0,a.useRef)(null),b=(0,a.useRef)(null),w=(0,a.useRef)(null);(0,a.useEffect)(()=>{p.current=n?.soundEnabled!==!1,f.current=(0,i.ww)(n?.soundFile)},[n?.soundEnabled,n?.soundFile]),(0,a.useEffect)(()=>{if(!e)return;let n=t?.trim()||null,a=u?.trim()||null,c=`${a??"local"}::${n??""}`;v.current!==c&&(v.current=c,m.current=new Set,g.current=null,h.current=!1);let y=!1,x=async e=>{if(y||!o())return;if(b.current)return void await b.current;let t=(async()=>{let t=new URLSearchParams({limit:"20"});n&&t.set("project",n),!e&&g.current&&t.set("since",g.current);try{var o;let n,d=await fetch((0,r.S)(`/api/notifications?${t.toString()}`,a),{cache:"no-store"});if(!d.ok)return;let c=(o=await d.json().catch(()=>null),n=s(o),(Array.isArray(n.notifications)?n.notifications:[]).map(e=>{var t;let n,a,r,i,o,l,d,c;return n=s(e),a="string"==typeof n.id?n.id.trim():"",r="string"==typeof n.message?n.message.trim():"",i="string"==typeof n.timestamp?n.timestamp.trim():"",o="string"==typeof n.sessionId?n.sessionId.trim():"",l="string"==typeof n.projectId?n.projectId.trim():"",d="string"==typeof n.type?n.type.trim():"",c="high"===(t=n.priority)||"medium"===t||"low"===t?n.priority:"low",a&&r&&i&&o&&l&&d?{id:a,priority:c,message:r,timestamp:i,sessionId:o,projectId:l,type:d}:null}).filter(e=>null!==e).sort((e,t)=>{let n=Date.parse(t.timestamp)-Date.parse(e.timestamp);return 0!==n?n:t.id.localeCompare(e.id)}));if(0===c.length){h.current=!0;return}if(g.current=c[0]?.timestamp??null,e||!h.current){for(let e of c)m.current.add(l(e));h.current=!0;return}let u=c.filter(e=>!m.current.has(l(e)));for(let e of c)m.current.add(l(e));if(0===u.length)return;let v=u.find(e=>"high"===e.priority)??u.find(e=>"medium"===e.priority)??u[0]??null;if(!v||"low"===v.priority||!p.current)return;await (0,i.$E)(f.current)}catch{}})();b.current=t;try{await t}finally{b.current===t&&(b.current=null),h.current=!0}},C=()=>{d(w),!y&&o()&&(w.current=window.setTimeout(()=>{x(!1).finally(()=>{C()})},1e4))},k=()=>{!y&&o()&&x(!h.current).finally(()=>{C()})},A=()=>{o()?k():d(w)},j=()=>{o()&&k()},S=()=>{(0,i.zu)()};return k(),window.addEventListener("focus",j),document.addEventListener("visibilitychange",A),window.addEventListener("pointerdown",S,!0),window.addEventListener("touchstart",S,!0),window.addEventListener("keydown",S,!0),()=>{y=!0,d(w),window.removeEventListener("focus",j),document.removeEventListener("visibilitychange",A),window.removeEventListener("pointerdown",S,!0),window.removeEventListener("touchstart",S,!0),window.removeEventListener("keydown",S,!0)}},[u,e,t])}},86181:(e,t,n)=>{n.d(t,{k$:()=>a});function a(){var e;return"function"==typeof window.matchMedia&&window.matchMedia("(pointer: coarse)").matches,"u"<typeof navigator||navigator.maxTouchPoints,e=window.innerWidth,window.innerHeight,e<1024}},92070:(e,t,n)=>{n.d(t,{w:()=>o});let a=/\r?\n\r?\n/;function r(e){return e.trimStart()}function i(e){let t=null,n=[];for(let a of e.split(/\r?\n/))!a.startsWith(":")&&(a.startsWith("event:")?t=r(a.slice(6)):a.startsWith("data:")&&n.push(r(a.slice(5))));return 0===n.length?null:{event:t,data:n.join("\n")}}async function*o(e,t){let n=e.getReader(),r=new TextDecoder,o="";try{for(;;){if(t?.aborted)return;let{done:e,value:s}=await n.read();if(e){let e=r.decode(void 0,{stream:!1});e.length>0&&(o+=e)}else s&&(o+=r.decode(s,{stream:!0}));for(;;){let e=o.match(a);if(!e||"number"!=typeof e.index)break;let t=o.slice(0,e.index);o=o.slice(e.index+e[0].length);let n=i(t);n&&(yield n)}if(e){let e=i(o);e&&(yield e);break}}}finally{n.releaseLock()}}},95106:(e,t,n)=>{n.d(t,{t:()=>r});var a=n(75120);function r(e,t){return(0,a.eI)(e,t)}},97882:(e,t,n)=>{n.d(t,{V:()=>s});var a=n(54568),r=n(7620),i=n(37270);function o({className:e}){return(0,a.jsx)("img",{src:"/agents/discord-dark.svg",alt:"",width:16,height:16,className:e,"aria-hidden":!0})}let s=(0,r.memo)(function({title:e,onOpenPreferences:t,rightContent:n}){return(0,a.jsxs)("header",{className:"flex h-[33px] items-center border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)] pl-14 pr-2 text-[12px] text-[var(--vk-text-muted)] sm:pl-5 sm:pr-5 sm:text-[13px]",children:[(0,a.jsx)("div",{className:"min-w-0 flex-1 text-left sm:text-center",children:(0,a.jsx)("span",{className:"block truncate font-medium tracking-[0.01em] text-[var(--vk-text-muted)]",children:e??"All Projects"})}),(0,a.jsxs)("div",{className:"ml-auto flex shrink-0 items-center gap-0.5",children:[n?(0,a.jsx)("div",{className:"flex items-center gap-1.5",children:n}):null,(0,a.jsx)("a",{href:"https://discord.gg/sA4QCWNR",target:"_blank",rel:"noopener noreferrer",className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Join Discord community",title:"Community",children:(0,a.jsx)(o,{className:"h-4 w-4"})}),t?(0,a.jsx)("button",{type:"button",onClick:t,className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Open preferences",title:"Preferences",children:(0,a.jsx)(i.A,{className:"h-4 w-4"})}):null]})]})})}}]);
@@ -1,4 +1,4 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8510],{2609:(e,t,r)=>{"use strict";r.d(t,{T5:()=>s.T5,hP:()=>n.hP,nO:()=>s.nO,yC:()=>o}),r(16744);var n=r(70590),s=r(87835);function o(e,t,r){let s=t.path||(null==r?void 0:r.path);return"path"===(t.routing||(null==r?void 0:r.routing)||"path")?s?{...r,...t,routing:"path"}:n.sb.throw((0,n.kd)(e)):t.path?n.sb.throw((0,n.s7)(e)):{...r,...t,path:void 0}}},2896:(e,t,r)=>{"use strict";function n({moduleIds:e}){return null}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return n}}),r(54568),r(97509),r(85999),r(12918),r(32106)},5974:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={callServer:function(){return o.callServer},createServerReference:function(){return i.createServerReference},findSourceMapURL:function(){return a.findSourceMapURL}};for(var s in n)Object.defineProperty(t,s,{enumerable:!0,get:n[s]});let o=r(34273),a=r(16409),i=r(97102)},6035:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,r(59113).createAsyncLocalStorage)()},6974:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"RouterContext",{enumerable:!0,get:function(){return n}});let n=r(74468)._(r(7620)).default.createContext(null)},10594:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={default:function(){return h},handleClientScriptLoad:function(){return y},initScriptLoader:function(){return v}};for(var s in n)Object.defineProperty(t,s,{enumerable:!0,get:n[s]});let o=r(74468),a=r(99649),i=r(54568),l=o._(r(97509)),c=a._(r(7620)),u=r(2737),d=r(66161),p=r(71341),f=new Map,b=new Set,m=e=>{let{src:t,id:r,onLoad:n=()=>{},onReady:s=null,dangerouslySetInnerHTML:o,children:a="",strategy:i="afterInteractive",onError:c,stylesheets:u}=e,p=r||t;if(p&&b.has(p))return;if(f.has(t)){b.add(p),f.get(t).then(n,c);return}let m=()=>{s&&s(),b.add(p)},y=document.createElement("script"),v=new Promise((e,t)=>{y.addEventListener("load",function(t){e(),n&&n.call(this,t),m()}),y.addEventListener("error",function(e){t(e)})}).catch(function(e){c&&c(e)});o?(y.innerHTML=o.__html||"",m()):a?(y.textContent="string"==typeof a?a:Array.isArray(a)?a.join(""):"",m()):t&&(y.src=t,f.set(t,v)),(0,d.setAttributesFromProps)(y,e),"worker"===i&&y.setAttribute("type","text/partytown"),y.setAttribute("data-nscript",i),u&&(e=>{if(l.default.preinit)return e.forEach(e=>{l.default.preinit(e,{as:"style"})});{let t=document.head;e.forEach(e=>{let r=document.createElement("link");r.type="text/css",r.rel="stylesheet",r.href=e,t.appendChild(r)})}})(u),document.body.appendChild(y)};function y(e){let{strategy:t="afterInteractive"}=e;"lazyOnload"===t?window.addEventListener("load",()=>{(0,p.requestIdleCallback)(()=>m(e))}):m(e)}function v(e){e.forEach(y),[...document.querySelectorAll('[data-nscript="beforeInteractive"]'),...document.querySelectorAll('[data-nscript="beforePageRender"]')].forEach(e=>{let t=e.id||e.getAttribute("src");b.add(t)})}function _(e){let{id:t,src:r="",onLoad:n=()=>{},onReady:s=null,strategy:o="afterInteractive",onError:a,stylesheets:d,...f}=e,{updateScripts:y,scripts:v,getIsSsr:_,appDir:h,nonce:g}=(0,c.useContext)(u.HeadManagerContext);g=f.nonce||g;let w=(0,c.useRef)(!1);(0,c.useEffect)(()=>{let e=t||r;w.current||(s&&e&&b.has(e)&&s(),w.current=!0)},[s,t,r]);let E=(0,c.useRef)(!1);if((0,c.useEffect)(()=>{if(!E.current){if("afterInteractive"===o)m(e);else"lazyOnload"===o&&("complete"===document.readyState?(0,p.requestIdleCallback)(()=>m(e)):window.addEventListener("load",()=>{(0,p.requestIdleCallback)(()=>m(e))}));E.current=!0}},[e,o]),("beforeInteractive"===o||"worker"===o)&&(y?(v[o]=(v[o]||[]).concat([{id:t,src:r,onLoad:n,onReady:s,onError:a,...f,nonce:g}]),y(v)):_&&_()?b.add(t||r):_&&!_()&&m({...e,nonce:g})),h){if(d&&d.forEach(e=>{l.default.preinit(e,{as:"style"})}),"beforeInteractive"===o)if(!r)return f.dangerouslySetInnerHTML&&(f.children=f.dangerouslySetInnerHTML.__html,delete f.dangerouslySetInnerHTML),(0,i.jsx)("script",{nonce:g,dangerouslySetInnerHTML:{__html:`(self.__next_s=self.__next_s||[]).push(${JSON.stringify([0,{...f,id:t}])})`}});else return l.default.preload(r,f.integrity?{as:"script",integrity:f.integrity,nonce:g,crossOrigin:f.crossOrigin}:{as:"script",nonce:g,crossOrigin:f.crossOrigin}),(0,i.jsx)("script",{nonce:g,dangerouslySetInnerHTML:{__html:`(self.__next_s=self.__next_s||[]).push(${JSON.stringify([r,{...f,id:t}])})`}});"afterInteractive"===o&&r&&l.default.preload(r,f.integrity?{as:"script",integrity:f.integrity,nonce:g,crossOrigin:f.crossOrigin}:{as:"script",nonce:g,crossOrigin:f.crossOrigin})}return null}Object.defineProperty(_,"__nextScript",{value:!0});let h=_;("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},23597:(e,t,r)=>{"use strict";function n({reason:e,children:t}){return t}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return n}}),r(61841)},30679:(e,t,r)=>{"use strict";r.d(t,{PromisifiedAuthProvider:()=>l,d:()=>c});var n=r(30524),s=r(2609),o=r(45836),a=r(7620);let i=a.createContext(null);function l({authPromise:e,children:t}){return a.createElement(i.Provider,{value:e},t)}function c(e={}){let t=(0,o.useRouter)(),r=a.useContext(i),l=r;return(r&&"then"in r&&(l=a.use(r)),"u"<typeof window)?t?(0,n.As)(e):(0,s.hP)({...l,...e}):(0,n.As)({...l,...e})}},36727:(e,t,r)=>{"use strict";r.r(t),r.d(t,{KeylessCookieSync:()=>a});var n=r(79748),s=r(7620),o=r(38036);function a(e){var t;let a=(null==(t=(0,n.useSelectedLayoutSegments)()[0])?void 0:t.startsWith("/_not-found"))||!1;return(0,s.useEffect)(()=>{o.I&&!a&&r.e(1136).then(r.bind(r,41136)).then(t=>t.syncKeylessConfigAction({...e,returnUrl:window.location.href}))},[a]),e.children}},37204:(e,t,r)=>{"use strict";r.r(t),r.d(t,{ClientClerkProvider:()=>O});var n=r(30524),s=r(20602);let o=new Set;var a=r(42925),i=r(79748),l=r(99321),c=r(7620);let u="u">typeof window?c.useLayoutEffect:c.useEffect,d=c.createContext(void 0);d.displayName="ClerkNextOptionsCtx";let p=()=>{let e=c.useContext(d);return null==e?void 0:e.value},f=e=>{let{children:t,options:r}=e;return c.createElement(d.Provider,{value:{value:r}},t)};var b=r(2609),m=r(10594),y=r.n(m);function v(e){let{publishableKey:t,clerkJSUrl:r,clerkJSVersion:s,clerkJSVariant:o,nonce:a}=p(),{domain:i,proxyUrl:l}=(0,n.ho)();if(!t)return null;let u={domain:i,proxyUrl:l,publishableKey:t,clerkJSUrl:r,clerkJSVersion:s,clerkJSVariant:o,nonce:a},d=(0,b.nO)(u),f="app"===e.router?"script":y();return c.createElement(f,{src:d,"data-clerk-js-script":!0,async:!0,defer:"pages"!==e.router&&void 0,crossOrigin:"anonymous",strategy:"pages"===e.router?"beforeInteractive":void 0,...(0,b.T5)(u)})}var _=r(38036),h=r(76975),g=r(67160),w=r(63680);let E=e=>{var t;return{...e,publishableKey:e.publishableKey||w.env.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY||"",clerkJSUrl:e.clerkJSUrl||w.env.NEXT_PUBLIC_CLERK_JS_URL,clerkJSVersion:e.clerkJSVersion||w.env.NEXT_PUBLIC_CLERK_JS_VERSION,proxyUrl:e.proxyUrl||w.env.NEXT_PUBLIC_CLERK_PROXY_URL||"",domain:e.domain||w.env.NEXT_PUBLIC_CLERK_DOMAIN||"",isSatellite:e.isSatellite||(0,h.zz)(w.env.NEXT_PUBLIC_CLERK_IS_SATELLITE),signInUrl:e.signInUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_IN_URL||"",signUpUrl:e.signUpUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_UP_URL||"",signInForceRedirectUrl:e.signInForceRedirectUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_IN_FORCE_REDIRECT_URL||"",signUpForceRedirectUrl:e.signUpForceRedirectUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_UP_FORCE_REDIRECT_URL||"",signInFallbackRedirectUrl:e.signInFallbackRedirectUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_IN_FALLBACK_REDIRECT_URL||"",signUpFallbackRedirectUrl:e.signUpFallbackRedirectUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_UP_FALLBACK_REDIRECT_URL||"",afterSignInUrl:e.afterSignInUrl||w.env.NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL||"",afterSignUpUrl:e.afterSignUpUrl||w.env.NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL||"",newSubscriptionRedirectUrl:e.newSubscriptionRedirectUrl||w.env.NEXT_PUBLIC_CLERK_CHECKOUT_CONTINUE_URL||"",telemetry:null!=(t=e.telemetry)?t:{disabled:(0,h.zz)(w.env.NEXT_PUBLIC_CLERK_TELEMETRY_DISABLED),debug:(0,h.zz)(w.env.NEXT_PUBLIC_CLERK_TELEMETRY_DEBUG)},sdkMetadata:g.tm}};var x=r(3102),C=r(57042);let k=()=>{var e,t;let r=(0,n.ho)(),{pagesRouter:s}=(0,C.r)();return null==(t=r.telemetry)||t.record((0,x.YF)({router:s?"pages":"app",...(null==(e=null==globalThis?void 0:globalThis.next)?void 0:e.version)?{nextjsVersion:globalThis.next.version}:{}})),null};var L=r(43458),R=r(60690),T=r(18202);let j=e=>{var t;return null!=window.__clerk_internal_navigations||(window.__clerk_internal_navigations={}),null!=(t=window.__clerk_internal_navigations)[e]||(t[e]={}),window.__clerk_internal_navigations[e]},I=e=>{let{windowNav:t,routerNav:r,name:n}=e,s=(0,i.usePathname)(),[o,a]=(0,c.useTransition)();t&&(j(n).fun=(e,s)=>new Promise(o=>{var i,l;null!=(i=j(n)).promisesBuffer||(i.promisesBuffer=[]),null==(l=j(n).promisesBuffer)||l.push(o),a(()=>{var n,o,a;if((null==(n=null==s?void 0:s.__internal_metadata)?void 0:n.navigationType)==="internal")t((null!=(a=null==(o=window.next)?void 0:o.version)?a:"")<"14.1.0"?history.state:null,"",e);else r(e)})}));let l=()=>{var e;null==(e=j(n).promisesBuffer)||e.forEach(e=>e()),j(n).promisesBuffer=[]};return(0,c.useEffect)(()=>(l(),l),[]),(0,c.useEffect)(()=>{o||l()},[s,o]),(0,c.useCallback)((e,t)=>j(n).fun(e,t),[])},P=(0,a.default)(()=>r.e(4443).then(r.bind(r,34443)).then(e=>e.KeylessCreatorOrReader),{loadableGenerated:{webpack:()=>[34443]}}),S=e=>{let t,r;if(L.M0){var a,d;let e=`Clerk:
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8510],{2609:(e,t,r)=>{"use strict";r.d(t,{T5:()=>s.T5,hP:()=>n.hP,nO:()=>s.nO,yC:()=>o}),r(16744);var n=r(70590),s=r(87835);function o(e,t,r){let s=t.path||(null==r?void 0:r.path);return"path"===(t.routing||(null==r?void 0:r.routing)||"path")?s?{...r,...t,routing:"path"}:n.sb.throw((0,n.kd)(e)):t.path?n.sb.throw((0,n.s7)(e)):{...r,...t,path:void 0}}},2896:(e,t,r)=>{"use strict";function n({moduleIds:e}){return null}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return n}}),r(54568),r(97509),r(85999),r(12918),r(32106)},5974:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={callServer:function(){return o.callServer},createServerReference:function(){return i.createServerReference},findSourceMapURL:function(){return a.findSourceMapURL}};for(var s in n)Object.defineProperty(t,s,{enumerable:!0,get:n[s]});let o=r(34273),a=r(16409),i=r(97102)},6035:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,r(59113).createAsyncLocalStorage)()},6974:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"RouterContext",{enumerable:!0,get:function(){return n}});let n=r(74468)._(r(7620)).default.createContext(null)},10594:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={default:function(){return h},handleClientScriptLoad:function(){return y},initScriptLoader:function(){return v}};for(var s in n)Object.defineProperty(t,s,{enumerable:!0,get:n[s]});let o=r(74468),a=r(99649),i=r(54568),l=o._(r(97509)),c=a._(r(7620)),u=r(2737),d=r(66161),p=r(71341),f=new Map,b=new Set,m=e=>{let{src:t,id:r,onLoad:n=()=>{},onReady:s=null,dangerouslySetInnerHTML:o,children:a="",strategy:i="afterInteractive",onError:c,stylesheets:u}=e,p=r||t;if(p&&b.has(p))return;if(f.has(t)){b.add(p),f.get(t).then(n,c);return}let m=()=>{s&&s(),b.add(p)},y=document.createElement("script"),v=new Promise((e,t)=>{y.addEventListener("load",function(t){e(),n&&n.call(this,t),m()}),y.addEventListener("error",function(e){t(e)})}).catch(function(e){c&&c(e)});o?(y.innerHTML=o.__html||"",m()):a?(y.textContent="string"==typeof a?a:Array.isArray(a)?a.join(""):"",m()):t&&(y.src=t,f.set(t,v)),(0,d.setAttributesFromProps)(y,e),"worker"===i&&y.setAttribute("type","text/partytown"),y.setAttribute("data-nscript",i),u&&(e=>{if(l.default.preinit)return e.forEach(e=>{l.default.preinit(e,{as:"style"})});{let t=document.head;e.forEach(e=>{let r=document.createElement("link");r.type="text/css",r.rel="stylesheet",r.href=e,t.appendChild(r)})}})(u),document.body.appendChild(y)};function y(e){let{strategy:t="afterInteractive"}=e;"lazyOnload"===t?window.addEventListener("load",()=>{(0,p.requestIdleCallback)(()=>m(e))}):m(e)}function v(e){e.forEach(y),[...document.querySelectorAll('[data-nscript="beforeInteractive"]'),...document.querySelectorAll('[data-nscript="beforePageRender"]')].forEach(e=>{let t=e.id||e.getAttribute("src");b.add(t)})}function _(e){let{id:t,src:r="",onLoad:n=()=>{},onReady:s=null,strategy:o="afterInteractive",onError:a,stylesheets:d,...f}=e,{updateScripts:y,scripts:v,getIsSsr:_,appDir:h,nonce:g}=(0,c.useContext)(u.HeadManagerContext);g=f.nonce||g;let w=(0,c.useRef)(!1);(0,c.useEffect)(()=>{let e=t||r;w.current||(s&&e&&b.has(e)&&s(),w.current=!0)},[s,t,r]);let E=(0,c.useRef)(!1);if((0,c.useEffect)(()=>{if(!E.current){if("afterInteractive"===o)m(e);else"lazyOnload"===o&&("complete"===document.readyState?(0,p.requestIdleCallback)(()=>m(e)):window.addEventListener("load",()=>{(0,p.requestIdleCallback)(()=>m(e))}));E.current=!0}},[e,o]),("beforeInteractive"===o||"worker"===o)&&(y?(v[o]=(v[o]||[]).concat([{id:t,src:r,onLoad:n,onReady:s,onError:a,...f,nonce:g}]),y(v)):_&&_()?b.add(t||r):_&&!_()&&m({...e,nonce:g})),h){if(d&&d.forEach(e=>{l.default.preinit(e,{as:"style"})}),"beforeInteractive"===o)if(!r)return f.dangerouslySetInnerHTML&&(f.children=f.dangerouslySetInnerHTML.__html,delete f.dangerouslySetInnerHTML),(0,i.jsx)("script",{nonce:g,dangerouslySetInnerHTML:{__html:`(self.__next_s=self.__next_s||[]).push(${JSON.stringify([0,{...f,id:t}])})`}});else return l.default.preload(r,f.integrity?{as:"script",integrity:f.integrity,nonce:g,crossOrigin:f.crossOrigin}:{as:"script",nonce:g,crossOrigin:f.crossOrigin}),(0,i.jsx)("script",{nonce:g,dangerouslySetInnerHTML:{__html:`(self.__next_s=self.__next_s||[]).push(${JSON.stringify([r,{...f,id:t}])})`}});"afterInteractive"===o&&r&&l.default.preload(r,f.integrity?{as:"script",integrity:f.integrity,nonce:g,crossOrigin:f.crossOrigin}:{as:"script",nonce:g,crossOrigin:f.crossOrigin})}return null}Object.defineProperty(_,"__nextScript",{value:!0});let h=_;("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},23597:(e,t,r)=>{"use strict";function n({reason:e,children:t}){return t}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return n}}),r(61841)},30679:(e,t,r)=>{"use strict";r.d(t,{PromisifiedAuthProvider:()=>l,d:()=>c});var n=r(30524),s=r(2609),o=r(45836),a=r(7620);let i=a.createContext(null);function l({authPromise:e,children:t}){return a.createElement(i.Provider,{value:e},t)}function c(e={}){let t=(0,o.useRouter)(),r=a.useContext(i),l=r;return(r&&"then"in r&&(l=a.use(r)),"u"<typeof window)?t?(0,n.As)(e):(0,s.hP)({...l,...e}):(0,n.As)({...l,...e})}},36727:(e,t,r)=>{"use strict";r.r(t),r.d(t,{KeylessCookieSync:()=>a});var n=r(79748),s=r(7620),o=r(38036);function a(e){var t;let a=(null==(t=(0,n.useSelectedLayoutSegments)()[0])?void 0:t.startsWith("/_not-found"))||!1;return(0,s.useEffect)(()=>{o.I&&!a&&r.e(4094).then(r.bind(r,44094)).then(t=>t.syncKeylessConfigAction({...e,returnUrl:window.location.href}))},[a]),e.children}},37204:(e,t,r)=>{"use strict";r.r(t),r.d(t,{ClientClerkProvider:()=>O});var n=r(30524),s=r(20602);let o=new Set;var a=r(42925),i=r(79748),l=r(99321),c=r(7620);let u="u">typeof window?c.useLayoutEffect:c.useEffect,d=c.createContext(void 0);d.displayName="ClerkNextOptionsCtx";let p=()=>{let e=c.useContext(d);return null==e?void 0:e.value},f=e=>{let{children:t,options:r}=e;return c.createElement(d.Provider,{value:{value:r}},t)};var b=r(2609),m=r(10594),y=r.n(m);function v(e){let{publishableKey:t,clerkJSUrl:r,clerkJSVersion:s,clerkJSVariant:o,nonce:a}=p(),{domain:i,proxyUrl:l}=(0,n.ho)();if(!t)return null;let u={domain:i,proxyUrl:l,publishableKey:t,clerkJSUrl:r,clerkJSVersion:s,clerkJSVariant:o,nonce:a},d=(0,b.nO)(u),f="app"===e.router?"script":y();return c.createElement(f,{src:d,"data-clerk-js-script":!0,async:!0,defer:"pages"!==e.router&&void 0,crossOrigin:"anonymous",strategy:"pages"===e.router?"beforeInteractive":void 0,...(0,b.T5)(u)})}var _=r(38036),h=r(76975),g=r(67160),w=r(63680);let E=e=>{var t;return{...e,publishableKey:e.publishableKey||w.env.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY||"",clerkJSUrl:e.clerkJSUrl||w.env.NEXT_PUBLIC_CLERK_JS_URL,clerkJSVersion:e.clerkJSVersion||w.env.NEXT_PUBLIC_CLERK_JS_VERSION,proxyUrl:e.proxyUrl||w.env.NEXT_PUBLIC_CLERK_PROXY_URL||"",domain:e.domain||w.env.NEXT_PUBLIC_CLERK_DOMAIN||"",isSatellite:e.isSatellite||(0,h.zz)(w.env.NEXT_PUBLIC_CLERK_IS_SATELLITE),signInUrl:e.signInUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_IN_URL||"",signUpUrl:e.signUpUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_UP_URL||"",signInForceRedirectUrl:e.signInForceRedirectUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_IN_FORCE_REDIRECT_URL||"",signUpForceRedirectUrl:e.signUpForceRedirectUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_UP_FORCE_REDIRECT_URL||"",signInFallbackRedirectUrl:e.signInFallbackRedirectUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_IN_FALLBACK_REDIRECT_URL||"",signUpFallbackRedirectUrl:e.signUpFallbackRedirectUrl||w.env.NEXT_PUBLIC_CLERK_SIGN_UP_FALLBACK_REDIRECT_URL||"",afterSignInUrl:e.afterSignInUrl||w.env.NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL||"",afterSignUpUrl:e.afterSignUpUrl||w.env.NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL||"",newSubscriptionRedirectUrl:e.newSubscriptionRedirectUrl||w.env.NEXT_PUBLIC_CLERK_CHECKOUT_CONTINUE_URL||"",telemetry:null!=(t=e.telemetry)?t:{disabled:(0,h.zz)(w.env.NEXT_PUBLIC_CLERK_TELEMETRY_DISABLED),debug:(0,h.zz)(w.env.NEXT_PUBLIC_CLERK_TELEMETRY_DEBUG)},sdkMetadata:g.tm}};var x=r(3102),C=r(57042);let k=()=>{var e,t;let r=(0,n.ho)(),{pagesRouter:s}=(0,C.r)();return null==(t=r.telemetry)||t.record((0,x.YF)({router:s?"pages":"app",...(null==(e=null==globalThis?void 0:globalThis.next)?void 0:e.version)?{nextjsVersion:globalThis.next.version}:{}})),null};var L=r(43458),R=r(22697),T=r(46566);let j=e=>{var t;return null!=window.__clerk_internal_navigations||(window.__clerk_internal_navigations={}),null!=(t=window.__clerk_internal_navigations)[e]||(t[e]={}),window.__clerk_internal_navigations[e]},I=e=>{let{windowNav:t,routerNav:r,name:n}=e,s=(0,i.usePathname)(),[o,a]=(0,c.useTransition)();t&&(j(n).fun=(e,s)=>new Promise(o=>{var i,l;null!=(i=j(n)).promisesBuffer||(i.promisesBuffer=[]),null==(l=j(n).promisesBuffer)||l.push(o),a(()=>{var n,o,a;if((null==(n=null==s?void 0:s.__internal_metadata)?void 0:n.navigationType)==="internal")t((null!=(a=null==(o=window.next)?void 0:o.version)?a:"")<"14.1.0"?history.state:null,"",e);else r(e)})}));let l=()=>{var e;null==(e=j(n).promisesBuffer)||e.forEach(e=>e()),j(n).promisesBuffer=[]};return(0,c.useEffect)(()=>(l(),l),[]),(0,c.useEffect)(()=>{o||l()},[s,o]),(0,c.useCallback)((e,t)=>j(n).fun(e,t),[])},P=(0,a.default)(()=>r.e(4443).then(r.bind(r,34443)).then(e=>e.KeylessCreatorOrReader),{loadableGenerated:{webpack:()=>[34443]}}),S=e=>{let t,r;if(L.M0){var a,d;let e=`Clerk:
2
2
  Your current Next.js version (${l.version}) will be deprecated in the next major release of "@clerk/nextjs". Please upgrade to next@14.1.0 or later.`;(0,s.M)()?(a=e,o.has(a)||(o.add(a),console.warn(a))):(d=`
3
3
  \x1b[43m----------
4
4
  ${e}
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);