conductor-oss 0.2.20 → 0.3.1

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 (538) hide show
  1. package/README.md +16 -0
  2. package/dist/commands/start.d.ts.map +1 -1
  3. package/dist/commands/start.js +28 -2
  4. package/dist/commands/start.js.map +1 -1
  5. package/dist/launcher.d.ts +3 -0
  6. package/dist/launcher.d.ts.map +1 -0
  7. package/dist/launcher.js +3 -0
  8. package/dist/launcher.js.map +1 -0
  9. package/node_modules/@conductor-oss/core/dist/config.d.ts.map +1 -1
  10. package/node_modules/@conductor-oss/core/dist/config.js +106 -1
  11. package/node_modules/@conductor-oss/core/dist/config.js.map +1 -1
  12. package/node_modules/@conductor-oss/core/dist/types.d.ts +4 -4
  13. package/node_modules/@conductor-oss/core/dist/types.d.ts.map +1 -1
  14. package/node_modules/@conductor-oss/core/dist/types.js +185 -8
  15. package/node_modules/@conductor-oss/core/dist/types.js.map +1 -1
  16. package/node_modules/@conductor-oss/plugin-agent-amp/package.json +1 -1
  17. package/node_modules/@conductor-oss/plugin-agent-ccr/package.json +1 -1
  18. package/node_modules/@conductor-oss/plugin-agent-claude-code/package.json +1 -1
  19. package/node_modules/@conductor-oss/plugin-agent-codex/package.json +1 -1
  20. package/node_modules/@conductor-oss/plugin-agent-cursor-cli/package.json +1 -1
  21. package/node_modules/@conductor-oss/plugin-agent-droid/package.json +1 -1
  22. package/node_modules/@conductor-oss/plugin-agent-gemini/package.json +1 -1
  23. package/node_modules/@conductor-oss/plugin-agent-github-copilot/package.json +1 -1
  24. package/node_modules/@conductor-oss/plugin-agent-opencode/package.json +1 -1
  25. package/node_modules/@conductor-oss/plugin-agent-qwen-code/package.json +1 -1
  26. package/node_modules/@conductor-oss/plugin-mcp-server/package.json +1 -1
  27. package/node_modules/@conductor-oss/plugin-notifier-desktop/package.json +1 -1
  28. package/node_modules/@conductor-oss/plugin-notifier-discord/package.json +1 -1
  29. package/node_modules/@conductor-oss/plugin-runtime-tmux/package.json +1 -1
  30. package/node_modules/@conductor-oss/plugin-scm-github/package.json +1 -1
  31. package/node_modules/@conductor-oss/plugin-terminal-web/package.json +1 -1
  32. package/node_modules/@conductor-oss/plugin-tracker-github/package.json +1 -1
  33. package/node_modules/@conductor-oss/plugin-workspace-worktree/package.json +1 -1
  34. package/package.json +29 -25
  35. package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
  36. package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +5 -0
  37. package/web/.next/standalone/packages/web/.next/build-manifest.json +2 -2
  38. package/web/.next/standalone/packages/web/.next/prerender-manifest.json +3 -3
  39. package/web/.next/standalone/packages/web/.next/routes-manifest.json +34 -0
  40. package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +2 -2
  41. package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
  42. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  43. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  44. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  45. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  46. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  47. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page/server-reference-manifest.json +7 -7
  48. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  49. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  50. package/web/.next/standalone/packages/web/.next/server/app/_not-found.html +1 -1
  51. package/web/.next/standalone/packages/web/.next/server/app/_not-found.rsc +3 -3
  52. package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  53. package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  54. package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  55. package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  56. package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  57. package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  58. package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js +3 -4
  59. package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js.nft.json +1 -1
  60. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route/app-paths-manifest.json +3 -0
  61. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route/build-manifest.json +11 -0
  62. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route/server-reference-manifest.json +4 -0
  63. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js +10 -0
  64. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js.map +5 -0
  65. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js.nft.json +1 -0
  66. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route_client-reference-manifest.js +2 -0
  67. package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js +2 -2
  68. package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js.nft.json +1 -1
  69. package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route.js +3 -1
  70. package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route.js.nft.json +1 -1
  71. package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js +3 -5
  72. package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js.nft.json +1 -1
  73. package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js +2 -2
  74. package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js.nft.json +1 -1
  75. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js +2 -2
  76. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js.nft.json +1 -1
  77. package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js +3 -3
  78. package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js.nft.json +1 -1
  79. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route/app-paths-manifest.json +3 -0
  80. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route/build-manifest.json +11 -0
  81. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route/server-reference-manifest.json +4 -0
  82. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route.js +10 -0
  83. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route.js.map +5 -0
  84. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route.js.nft.json +1 -0
  85. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route_client-reference-manifest.js +2 -0
  86. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js +2 -2
  87. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js.nft.json +1 -1
  88. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route/app-paths-manifest.json +3 -0
  89. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route/build-manifest.json +11 -0
  90. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route/server-reference-manifest.json +4 -0
  91. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route.js +10 -0
  92. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route.js.map +5 -0
  93. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route.js.nft.json +1 -0
  94. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route_client-reference-manifest.js +2 -0
  95. package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js +2 -2
  96. package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js.nft.json +1 -1
  97. package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js +2 -2
  98. package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js.nft.json +1 -1
  99. package/web/.next/standalone/packages/web/.next/server/app/api/health/sessions/route.js +2 -2
  100. package/web/.next/standalone/packages/web/.next/server/app/api/health/sessions/route.js.nft.json +1 -1
  101. package/web/.next/standalone/packages/web/.next/server/app/api/notifications/route.js +2 -2
  102. package/web/.next/standalone/packages/web/.next/server/app/api/notifications/route.js.nft.json +1 -1
  103. package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js +3 -4
  104. package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js.nft.json +1 -1
  105. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route/app-paths-manifest.json +3 -0
  106. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route/build-manifest.json +11 -0
  107. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route/server-reference-manifest.json +4 -0
  108. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route.js +10 -0
  109. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route.js.map +5 -0
  110. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route.js.nft.json +1 -0
  111. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +2 -0
  112. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js +4 -6
  113. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js.nft.json +1 -1
  114. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/actions/route.js +2 -2
  115. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/actions/route.js.nft.json +1 -1
  116. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route/app-paths-manifest.json +3 -0
  117. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route/build-manifest.json +11 -0
  118. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route/server-reference-manifest.json +4 -0
  119. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route.js +10 -0
  120. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route.js.map +5 -0
  121. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route.js.nft.json +1 -0
  122. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route_client-reference-manifest.js +2 -0
  123. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js +2 -2
  124. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js.nft.json +1 -1
  125. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js +4 -5
  126. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js.nft.json +1 -1
  127. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/feed/route.js +2 -2
  128. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/feed/route.js.nft.json +1 -1
  129. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/feedback/route.js +2 -2
  130. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/feedback/route.js.nft.json +1 -1
  131. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js +2 -2
  132. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js.nft.json +1 -1
  133. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js +2 -2
  134. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js.nft.json +1 -1
  135. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js +2 -2
  136. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js.nft.json +1 -1
  137. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js +2 -2
  138. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js.nft.json +1 -1
  139. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js +3 -3
  140. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js.nft.json +1 -1
  141. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js +2 -2
  142. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js.nft.json +1 -1
  143. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js +2 -2
  144. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  145. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/send/route.js +2 -2
  146. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/send/route.js.nft.json +1 -1
  147. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js +2 -2
  148. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js.nft.json +1 -1
  149. package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js +3 -4
  150. package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js.nft.json +1 -1
  151. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js +2 -2
  152. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js.nft.json +1 -1
  153. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js +4 -6
  154. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js.nft.json +1 -1
  155. package/web/.next/standalone/packages/web/.next/server/app/index.html +1 -1
  156. package/web/.next/standalone/packages/web/.next/server/app/index.rsc +4 -4
  157. package/web/.next/standalone/packages/web/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  158. package/web/.next/standalone/packages/web/.next/server/app/index.segments/_full.segment.rsc +4 -4
  159. package/web/.next/standalone/packages/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  160. package/web/.next/standalone/packages/web/.next/server/app/index.segments/_index.segment.rsc +3 -3
  161. package/web/.next/standalone/packages/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  162. package/web/.next/standalone/packages/web/.next/server/app/page/react-loadable-manifest.json +2 -2
  163. package/web/.next/standalone/packages/web/.next/server/app/page/server-reference-manifest.json +7 -7
  164. package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
  165. package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
  166. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page/server-reference-manifest.json +7 -7
  167. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  168. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  169. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page/server-reference-manifest.json +7 -7
  170. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
  171. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
  172. package/web/.next/standalone/packages/web/.next/server/app/unlock/page/server-reference-manifest.json +7 -7
  173. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -1
  174. package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +1 -1
  175. package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +5 -0
  176. package/web/.next/standalone/packages/web/.next/server/chunks/29f24__next-internal_server_app_api_filesystem_pick-directory_route_actions_51e42977.js +3 -0
  177. package/web/.next/standalone/packages/web/.next/server/chunks/730ea_web__next-internal_server_app_api_executor_health_route_actions_8e415531.js +3 -0
  178. package/web/.next/standalone/packages/web/.next/server/chunks/730ea_web__next-internal_server_app_api_repositories_[id]_route_actions_4d42b4b5.js +3 -0
  179. package/web/.next/standalone/packages/web/.next/server/chunks/730ea_web__next-internal_server_app_api_sessions_[id]_archive_route_actions_bdb25739.js +3 -0
  180. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__0074ebac._.js +3 -0
  181. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__03a6b3e6._.js +3 -0
  182. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__049daed6._.js +3 -0
  183. package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__6023a748._.js → [root-of-the-server]__095ffdaa._.js} +1 -1
  184. package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__2a83553a._.js → [root-of-the-server]__0c7f79b1._.js} +1 -1
  185. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__137c9740._.js +3 -0
  186. package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__1aa339ea._.js → [root-of-the-server]__144e8e60._.js} +1 -1
  187. package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__1ed2e6c1._.js → [root-of-the-server]__14949257._.js} +17 -163
  188. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__15594e11._.js +3 -0
  189. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__159ecc1b._.js +3 -0
  190. package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__29be362d._.js → [root-of-the-server]__16d4a78f._.js} +1 -1
  191. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__171dd44e._.js +3 -0
  192. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__177505ca._.js +3 -0
  193. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__18aa1fa3._.js +3 -0
  194. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1c3521a3._.js +3 -0
  195. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1c793b78._.js +3 -0
  196. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__22fbbc7b._.js +3 -0
  197. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__25bbe81a._.js +3 -0
  198. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2d10de49._.js +3 -0
  199. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__30442998._.js +3 -0
  200. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__31d22800._.js +3 -0
  201. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__3d6b30a3._.js +1 -1
  202. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__44892736._.js +3 -0
  203. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__495221b1._.js +3 -0
  204. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__4ff9e8b0._.js +3 -0
  205. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__54eb1ef0._.js +3 -0
  206. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5c375e13._.js +3 -0
  207. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6362697f._.js +3 -0
  208. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__69b36e36._.js +3 -0
  209. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6badbf4e._.js +3 -0
  210. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6c4cd852._.js +3 -0
  211. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6f7b329b._.js +3 -0
  212. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__70b7af90._.js +3 -0
  213. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__71077192._.js +3 -0
  214. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__758687ca._.js +3 -0
  215. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7604e43b._.js +3 -0
  216. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__77b23eae._.js +3 -0
  217. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__78650ac9._.js +3 -0
  218. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__789107eb._.js +3 -0
  219. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__78c062a8._.js +3 -0
  220. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__78c4bb1e._.js +3 -0
  221. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__790d1d4b._.js +3 -0
  222. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__8132442f._.js +3 -0
  223. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__833a2cd9._.js +3 -0
  224. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__85d6ae4c._.js +3 -0
  225. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__8d933120._.js +3 -0
  226. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__90ac5665._.js +3 -0
  227. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__92a4f9bf._.js +3 -0
  228. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__93d550e2._.js +3 -0
  229. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__96e59c1f._.js +3 -0
  230. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__9d98fee2._.js +3 -0
  231. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__9fcf6265._.js +3 -0
  232. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a5b78741._.js +3 -0
  233. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a8a4b101._.js +3 -0
  234. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a8d11727._.js +3 -0
  235. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__b2e0e81c._.js +3 -0
  236. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__bf756716._.js +3 -0
  237. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c09452b3._.js +3 -0
  238. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c43dcff1._.js +3 -0
  239. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c923cbdc._.js +3 -0
  240. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ce993e7b._.js +3 -0
  241. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cfbdd2bf._.js +3 -0
  242. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d1d8bfb5._.js +3 -0
  243. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d4d1744d._.js +3 -0
  244. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d8852803._.js +3 -0
  245. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ea1961bd._.js +3 -0
  246. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ee8a3221._.js +3 -0
  247. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ef8c815b._.js +3 -0
  248. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ef918d06._.js +3 -0
  249. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f3693403._.js +3 -0
  250. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f62cac3a._.js +3 -0
  251. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f73117e9._.js +3 -0
  252. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f7651519._.js +3 -0
  253. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__fc6ffe6c._.js +3 -0
  254. package/web/.next/standalone/packages/web/.next/server/chunks/packages_web__next-internal_server_app_api_agents_route_actions_29063d1a.js +3 -0
  255. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/[root-of-the-server]__6622b514._.js +1 -1
  256. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/[root-of-the-server]__869d9ac0._.js +1 -1
  257. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/[root-of-the-server]__b388693f._.js +1 -1
  258. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{[root-of-the-server]__48817f02._.js → [root-of-the-server]__c3eb4913._.js} +2 -2
  259. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_0e1412de._.js +1 -1
  260. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{_20a4007d._.js → _3acfb388._.js} +2 -2
  261. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_668c9201._.js +3 -0
  262. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_69e05fca._.js +1 -1
  263. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_80efe193._.js +1 -1
  264. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_b6d31783._.js +1 -1
  265. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_c0f0e227._.js +1 -1
  266. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_f36ddaa9._.js +1 -1
  267. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/node_modules_@clerk_nextjs_dist_esm_app-router_129dde21._.js +3 -0
  268. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/node_modules_@clerk_nextjs_dist_esm_app-router_1776df7f._.js +3 -0
  269. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/node_modules_f2ebd7a9._.js +1 -1
  270. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/packages_web_src_79316445._.js +1 -1
  271. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/packages_web_src_a078c137._.js +1 -1
  272. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/packages_web_src_app_page_tsx_cd282e82._.js +1 -1
  273. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/packages_web_src_app_unlock_UnlockForm_tsx_ce3149a7._.js +1 -1
  274. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{packages_web_src_components_6cab1c8c._.js → packages_web_src_components_aad7de7c._.js} +1 -1
  275. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/packages_web_src_components_board_WorkspaceKanban_tsx_735b7999._.js +1 -1
  276. package/web/.next/standalone/packages/web/.next/server/pages/404.html +1 -1
  277. package/web/.next/standalone/packages/web/.next/server/pages/500.html +2 -2
  278. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
  279. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +8 -8
  280. package/web/.next/standalone/packages/web/.next/static/chunks/{5c7e8425945ad682.js → 07a5ac7389686572.js} +1 -1
  281. package/web/.next/standalone/packages/web/.next/static/chunks/3603312f8407bd12.js +1 -0
  282. package/web/.next/standalone/packages/web/.next/static/chunks/382be8f0b30c5f08.js +1 -0
  283. package/web/.next/standalone/packages/web/.next/static/chunks/479b8cb58c95a8a0.js +1 -0
  284. package/web/.next/standalone/packages/web/.next/static/chunks/53e4f3b495e423c9.js +1 -0
  285. package/web/.next/{static/chunks/3b757dce050133c8.js → standalone/packages/web/.next/static/chunks/5c5637796e242130.js} +2 -2
  286. package/web/.next/standalone/packages/web/.next/static/chunks/{695b7cb206c6dadd.js → 5e05e67a26b7ecbc.js} +1 -1
  287. package/web/.next/standalone/packages/web/.next/static/chunks/6d083840413686dd.css +3 -0
  288. package/web/.next/standalone/packages/web/.next/static/chunks/870a993d28314a90.js +1 -0
  289. package/web/.next/standalone/packages/web/.next/static/chunks/c5caacf383990e7b.js +1 -0
  290. package/web/.next/standalone/packages/web/.next/static/chunks/c7c1bd729f17c8bf.js +1 -0
  291. package/web/.next/standalone/packages/web/.next/static/chunks/e8d146cc2723147b.js +1 -0
  292. package/web/.next/standalone/packages/web/package.json +1 -1
  293. package/web/.next/standalone/packages/web/src/app/api/access/route.ts +3 -211
  294. package/web/.next/standalone/packages/web/src/app/api/agents/route.ts +5 -0
  295. package/web/.next/standalone/packages/web/src/app/api/attachments/route.ts +2 -166
  296. package/web/.next/standalone/packages/web/src/app/api/auth/session/route.ts +4 -52
  297. package/web/.next/standalone/packages/web/src/app/api/boards/route.ts +3 -517
  298. package/web/.next/standalone/packages/web/src/app/api/config/route.ts +2 -78
  299. package/web/.next/standalone/packages/web/src/app/api/context-files/route.ts +2 -198
  300. package/web/.next/standalone/packages/web/src/app/api/events/route.ts +2 -122
  301. package/web/.next/standalone/packages/web/src/app/api/executor/health/route.ts +5 -0
  302. package/web/.next/standalone/packages/web/src/app/api/filesystem/directory/route.ts +2 -142
  303. package/web/.next/standalone/packages/web/src/app/api/filesystem/pick-directory/route.ts +5 -0
  304. package/web/.next/standalone/packages/web/src/app/api/github/repos/route.ts +2 -103
  305. package/web/.next/standalone/packages/web/src/app/api/health/boards/route.ts +2 -69
  306. package/web/.next/standalone/packages/web/src/app/api/health/sessions/route.ts +2 -74
  307. package/web/.next/standalone/packages/web/src/app/api/notifications/route.ts +3 -88
  308. package/web/.next/standalone/packages/web/src/app/api/preferences/route.ts +3 -191
  309. package/web/.next/standalone/packages/web/src/app/api/repositories/[id]/route.ts +8 -0
  310. package/web/.next/standalone/packages/web/src/app/api/repositories/route.ts +4 -416
  311. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/actions/route.ts +5 -77
  312. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/archive/route.ts +8 -0
  313. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/checks/route.ts +5 -172
  314. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/diff/route.ts +5 -423
  315. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/feed/route.ts +5 -94
  316. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/feedback/route.ts +5 -44
  317. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/files/route.ts +5 -194
  318. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/keys/route.ts +6 -138
  319. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/kill/route.ts +5 -42
  320. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/output/route.ts +5 -259
  321. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/output/stream/route.ts +5 -108
  322. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/restore/route.ts +5 -46
  323. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/route.ts +6 -204
  324. package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/send/route.ts +5 -55
  325. package/web/.next/standalone/packages/web/src/app/api/sessions/route.ts +2 -102
  326. package/web/.next/standalone/packages/web/src/app/api/spawn/route.ts +3 -214
  327. package/web/.next/standalone/packages/web/src/app/api/workspaces/branches/route.ts +2 -230
  328. package/web/.next/standalone/packages/web/src/app/api/workspaces/route.ts +3 -589
  329. package/web/.next/standalone/packages/web/src/app/unlock/UnlockForm.tsx +25 -4
  330. package/web/.next/standalone/packages/web/src/components/board/WorkspaceKanban.tsx +8 -8
  331. package/web/.next/standalone/packages/web/src/components/layout/WorkspaceSidebarPanel.tsx +199 -84
  332. package/web/.next/standalone/packages/web/src/components/sessions/ChatPanel.tsx +36 -5
  333. package/web/.next/standalone/packages/web/src/features/dashboard/DashboardClient.tsx +86 -36
  334. package/web/.next/standalone/packages/web/src/features/dashboard/components/WorkspaceOverview.tsx +57 -9
  335. package/web/.next/standalone/packages/web/src/hooks/useSessionOutputStream.ts +11 -0
  336. package/web/.next/standalone/packages/web/src/lib/auth.ts +90 -14
  337. package/web/.next/standalone/packages/web/src/lib/guardedRustProxy.ts +25 -0
  338. package/web/.next/standalone/packages/web/src/lib/liveEvents.ts +64 -7
  339. package/web/.next/standalone/packages/web/src/lib/proxyRoutes.ts +46 -0
  340. package/web/.next/standalone/packages/web/src/lib/runtimeAgentModels.ts +1 -1
  341. package/web/.next/standalone/packages/web/src/lib/rustBackendProxy.ts +154 -0
  342. package/web/.next/standalone/packages/web/src/proxy.ts +3 -20
  343. package/web/.next/static/chunks/{5c7e8425945ad682.js → 07a5ac7389686572.js} +1 -1
  344. package/web/.next/static/chunks/3603312f8407bd12.js +1 -0
  345. package/web/.next/static/chunks/382be8f0b30c5f08.js +1 -0
  346. package/web/.next/static/chunks/479b8cb58c95a8a0.js +1 -0
  347. package/web/.next/static/chunks/53e4f3b495e423c9.js +1 -0
  348. package/web/.next/{standalone/packages/web/.next/static/chunks/3b757dce050133c8.js → static/chunks/5c5637796e242130.js} +2 -2
  349. package/web/.next/static/chunks/{695b7cb206c6dadd.js → 5e05e67a26b7ecbc.js} +1 -1
  350. package/web/.next/static/chunks/6d083840413686dd.css +3 -0
  351. package/web/.next/static/chunks/870a993d28314a90.js +1 -0
  352. package/web/.next/static/chunks/c5caacf383990e7b.js +1 -0
  353. package/web/.next/static/chunks/c7c1bd729f17c8bf.js +1 -0
  354. package/web/.next/static/chunks/e8d146cc2723147b.js +1 -0
  355. package/native/conductor +0 -0
  356. package/web/.next/standalone/packages/web/.next/server/chunks/[externals]__f25f12d4._.js +0 -3
  357. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__005aa909._.js +0 -3
  358. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__008d962e._.js +0 -3
  359. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__00cf28e7._.js +0 -3
  360. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__03ff76ee._.js +0 -3
  361. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__06365513._.js +0 -3
  362. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__075f8697._.js +0 -3
  363. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__097be5a7._.js +0 -3
  364. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__0a0f0f01._.js +0 -3
  365. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1003246b._.js +0 -3
  366. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__11918223._.js +0 -3
  367. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__13ad088c._.js +0 -3
  368. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1458f8ec._.js +0 -3
  369. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__14b1d4a3._.js +0 -3
  370. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1741fb8a._.js +0 -3
  371. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1875f00e._.js +0 -3
  372. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1beced71._.js +0 -3
  373. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1f626a16._.js +0 -129
  374. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2062aaab._.js +0 -3
  375. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__206c3d8a._.js +0 -3
  376. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__22f8f0d6._.js +0 -129
  377. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__23bebaf9._.js +0 -3
  378. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2556a816._.js +0 -3
  379. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__25788ed3._.js +0 -54
  380. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2c3f6397._.js +0 -3
  381. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2c909fe3._.js +0 -3
  382. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__30921756._.js +0 -3
  383. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__31eea08c._.js +0 -3
  384. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__346d9484._.js +0 -3
  385. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__3edd3509._.js +0 -3
  386. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__3f8b49ba._.js +0 -3
  387. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__3f8e82c2._.js +0 -3
  388. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__44d59fd0._.js +0 -3
  389. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__48875cbb._.js +0 -7
  390. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__49c6a20e._.js +0 -3
  391. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__4ac9d639._.js +0 -3
  392. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__4c3fb752._.js +0 -3
  393. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__4ca8b259._.js +0 -3
  394. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__4dab6a6a._.js +0 -3
  395. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__53385c40._.js +0 -3
  396. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__544326ac._.js +0 -3
  397. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__54a218f0._.js +0 -54
  398. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__55e337f7._.js +0 -3
  399. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5661ca72._.js +0 -3
  400. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5cd49624._.js +0 -3
  401. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5e0533de._.js +0 -3
  402. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5e161db4._.js +0 -3
  403. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5ebcb223._.js +0 -3
  404. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5fd609c9._.js +0 -3
  405. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__60cf7bf4._.js +0 -3
  406. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__60ee4897._.js +0 -3
  407. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6559c1a4._.js +0 -3
  408. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__659938b1._.js +0 -3
  409. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6712f45a._.js +0 -3
  410. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__69227de6._.js +0 -3
  411. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6ab08a39._.js +0 -129
  412. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6c10c03b._.js +0 -3
  413. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6cd54de1._.js +0 -3
  414. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6ce2b5d7._.js +0 -3
  415. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6cfd00d2._.js +0 -3
  416. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6d62709d._.js +0 -129
  417. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6e08e4e4._.js +0 -3
  418. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__749331b0._.js +0 -54
  419. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__74a53184._.js +0 -3
  420. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__76c16426._.js +0 -3
  421. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__778e46a1._.js +0 -129
  422. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7a26e452._.js +0 -3
  423. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7ba96fa5._.js +0 -3
  424. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7e684560._.js +0 -3
  425. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__848eb266._.js +0 -3
  426. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__8596d782._.js +0 -7
  427. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__85d8966b._.js +0 -3
  428. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__86aff2b8._.js +0 -3
  429. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__879cf4d2._.js +0 -3
  430. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__881858fa._.js +0 -3
  431. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__885e3a00._.js +0 -54
  432. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__887ea436._.js +0 -3
  433. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__893f6b3b._.js +0 -3
  434. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__89dfcd05._.js +0 -3
  435. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__8cc5826f._.js +0 -3
  436. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__913af875._.js +0 -3
  437. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__91b42119._.js +0 -3
  438. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__93ce1b75._.js +0 -3
  439. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__96633022._.js +0 -3
  440. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__96951362._.js +0 -3
  441. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__971fcc75._.js +0 -9
  442. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__99da6324._.js +0 -3
  443. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__9f07930d._.js +0 -3
  444. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__9f36b7ec._.js +0 -129
  445. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__9fd08bbc._.js +0 -3
  446. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a05953cc._.js +0 -3
  447. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a0b6570d._.js +0 -3
  448. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a3766ac1._.js +0 -3
  449. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a3bfaabf._.js +0 -3
  450. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a420e374._.js +0 -3
  451. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a4a33247._.js +0 -54
  452. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ac544bb5._.js +0 -3
  453. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ad84d2e0._.js +0 -54
  454. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__b3095e9d._.js +0 -3
  455. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__b59abfbd._.js +0 -3
  456. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__b9692a3c._.js +0 -3
  457. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__bcc08c70._.js +0 -3
  458. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__be051d52._.js +0 -3
  459. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__bea07e07._.js +0 -3
  460. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c1759514._.js +0 -3
  461. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c2ef2bfc._.js +0 -3
  462. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c8618cb1._.js +0 -3
  463. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ca8a18f8._.js +0 -3
  464. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cafd7bb3._.js +0 -3
  465. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cb112606._.js +0 -3
  466. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cc74ea40._.js +0 -3
  467. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cd3692a0._.js +0 -3
  468. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cf3cdecd._.js +0 -3
  469. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d09e7a99._.js +0 -3
  470. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d40b50e7._.js +0 -3
  471. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d4721d30._.js +0 -3
  472. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d538c110._.js +0 -3
  473. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d73ea818._.js +0 -3
  474. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__db3d0133._.js +0 -3
  475. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__dd0cf085._.js +0 -3
  476. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__de0f2533._.js +0 -7
  477. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e113f6df._.js +0 -3
  478. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e1a418bc._.js +0 -3
  479. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e6c1d827._.js +0 -3
  480. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ea69c4ce._.js +0 -3
  481. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__eac16890._.js +0 -3
  482. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__eb1dfcc6._.js +0 -3
  483. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ee75d43a._.js +0 -3
  484. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ef773ea6._.js +0 -3
  485. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f0d15920._.js +0 -3
  486. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f15cbcfc._.js +0 -3
  487. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f48eb2d4._.js +0 -3
  488. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__fb6ab669._.js +0 -3
  489. package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__fe8419b5._.js +0 -129
  490. package/web/.next/standalone/packages/web/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0e4dc4f7.js +0 -4
  491. package/web/.next/standalone/packages/web/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_dd27f857.js +0 -3
  492. package/web/.next/standalone/packages/web/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_e445b36c.js +0 -3
  493. package/web/.next/standalone/packages/web/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_f375f3c4.js +0 -28
  494. package/web/.next/standalone/packages/web/.next/server/chunks/packages_core_dist_index_cdd30418.js +0 -3
  495. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-amp_dist_index_bf3d8239.js +0 -3
  496. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-ccr_dist_index_69cbf726.js +0 -3
  497. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-claude-code_dist_index_31314e43.js +0 -125
  498. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-cursor-cli_dist_index_8d5cc426.js +0 -3
  499. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-droid_dist_index_f731227a.js +0 -3
  500. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-gemini_dist_index_b2d219e8.js +0 -54
  501. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-github-copilot_dist_index_9f80cb45.js +0 -3
  502. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-opencode_dist_index_7c7015da.js +0 -3
  503. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-qwen-code_dist_index_46dd8653.js +0 -3
  504. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_notifier-desktop_dist_index_ef3473f0.js +0 -3
  505. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_notifier-discord_dist_index_34257226.js +0 -3
  506. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_scm-github_dist_index_3b5a621e.js +0 -3
  507. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_terminal-web_dist_index_1e0706d3.js +0 -3
  508. package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_tracker-github_dist_index_2d7af62f.js +0 -3
  509. package/web/.next/standalone/packages/web/.next/server/chunks/packages_web_src_lib_13fee5eb._.js +0 -3
  510. package/web/.next/standalone/packages/web/.next/server/chunks/packages_web_src_lib_d64596cc._.js +0 -3
  511. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_b88bcf2c._.js +0 -3
  512. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/node_modules_@clerk_nextjs_dist_esm_app-router_38e7b35d._.js +0 -3
  513. package/web/.next/standalone/packages/web/.next/server/chunks/ssr/node_modules_@clerk_nextjs_dist_esm_app-router_f665760b._.js +0 -3
  514. package/web/.next/standalone/packages/web/.next/static/chunks/062888342200567f.js +0 -1
  515. package/web/.next/standalone/packages/web/.next/static/chunks/6c9a11faed9daf4d.js +0 -1
  516. package/web/.next/standalone/packages/web/.next/static/chunks/8221b78965a50858.js +0 -1
  517. package/web/.next/standalone/packages/web/.next/static/chunks/8de84e208e201d72.css +0 -3
  518. package/web/.next/standalone/packages/web/.next/static/chunks/a8d4e0d75ca51921.js +0 -1
  519. package/web/.next/standalone/packages/web/.next/static/chunks/ac6a06c17a4f651f.js +0 -1
  520. package/web/.next/standalone/packages/web/.next/static/chunks/c4ea57fb949fb623.js +0 -1
  521. package/web/.next/standalone/packages/web/.next/static/chunks/d9d05e7b540400af.js +0 -1
  522. package/web/.next/standalone/packages/web/.next/static/chunks/f5d9ad0f62ede339.js +0 -1
  523. package/web/.next/standalone/packages/web/src/lib/services.ts +0 -319
  524. package/web/.next/static/chunks/062888342200567f.js +0 -1
  525. package/web/.next/static/chunks/6c9a11faed9daf4d.js +0 -1
  526. package/web/.next/static/chunks/8221b78965a50858.js +0 -1
  527. package/web/.next/static/chunks/8de84e208e201d72.css +0 -3
  528. package/web/.next/static/chunks/a8d4e0d75ca51921.js +0 -1
  529. package/web/.next/static/chunks/ac6a06c17a4f651f.js +0 -1
  530. package/web/.next/static/chunks/c4ea57fb949fb623.js +0 -1
  531. package/web/.next/static/chunks/d9d05e7b540400af.js +0 -1
  532. package/web/.next/static/chunks/f5d9ad0f62ede339.js +0 -1
  533. /package/web/.next/standalone/packages/web/.next/static/{P8IBAo_woCzrGXJiYCZto → oFTStwDpHHac4pinj0rAJ}/_buildManifest.js +0 -0
  534. /package/web/.next/standalone/packages/web/.next/static/{P8IBAo_woCzrGXJiYCZto → oFTStwDpHHac4pinj0rAJ}/_clientMiddlewareManifest.json +0 -0
  535. /package/web/.next/standalone/packages/web/.next/static/{P8IBAo_woCzrGXJiYCZto → oFTStwDpHHac4pinj0rAJ}/_ssgManifest.js +0 -0
  536. /package/web/.next/static/{P8IBAo_woCzrGXJiYCZto → oFTStwDpHHac4pinj0rAJ}/_buildManifest.js +0 -0
  537. /package/web/.next/static/{P8IBAo_woCzrGXJiYCZto → oFTStwDpHHac4pinj0rAJ}/_clientMiddlewareManifest.json +0 -0
  538. /package/web/.next/static/{P8IBAo_woCzrGXJiYCZto → oFTStwDpHHac4pinj0rAJ}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,30997,e=>{"use strict";let t,r,n,a,o,s,l,i;var d,c,u,p,x,m,v,h,f=e.i(18050),g=e.i(70703),b=e.i(71645),k=e.i(81140),y=e.i(20783),w=e.i(30030),j=e.i(69340),N=e.i(48425),C=e.i(75830),S=e.i(86318),E=e.i(30207),A="dismissableLayer.update",R=b.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),M=b.forwardRef((e,t)=>{let{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:n,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:s,onDismiss:l,...i}=e,d=b.useContext(R),[c,u]=b.useState(null),p=c?.ownerDocument??globalThis?.document,[,x]=b.useState({}),m=(0,y.useComposedRefs)(t,e=>u(e)),h=Array.from(d.layers),[g]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),w=h.indexOf(g),j=c?h.indexOf(c):-1,C=d.layersWithOutsidePointerEventsDisabled.size>0,S=j>=w,M=function(e,t=globalThis?.document){let r=(0,E.useCallbackRef)(e),n=b.useRef(!1),a=b.useRef(()=>{});return b.useEffect(()=>{let e=e=>{if(e.target&&!n.current){let n=function(){O("dismissableLayer.pointerDownOutside",r,o,{discrete:!0})},o={originalEvent:e};"touch"===e.pointerType?(t.removeEventListener("click",a.current),a.current=n,t.addEventListener("click",a.current,{once:!0})):n()}else t.removeEventListener("click",a.current);n.current=!1},o=window.setTimeout(()=>{t.addEventListener("pointerdown",e)},0);return()=>{window.clearTimeout(o),t.removeEventListener("pointerdown",e),t.removeEventListener("click",a.current)}},[t,r]),{onPointerDownCapture:()=>n.current=!0}}(e=>{let t=e.target,r=[...d.branches].some(e=>e.contains(t));S&&!r&&(a?.(e),s?.(e),e.defaultPrevented||l?.())},p),L=function(e,t=globalThis?.document){let r=(0,E.useCallbackRef)(e),n=b.useRef(!1);return b.useEffect(()=>{let e=e=>{e.target&&!n.current&&O("dismissableLayer.focusOutside",r,{originalEvent:e},{discrete:!1})};return t.addEventListener("focusin",e),()=>t.removeEventListener("focusin",e)},[t,r]),{onFocusCapture:()=>n.current=!0,onBlurCapture:()=>n.current=!1}}(e=>{let t=e.target;![...d.branches].some(e=>e.contains(t))&&(o?.(e),s?.(e),e.defaultPrevented||l?.())},p);return!function(e,t=globalThis?.document){let r=(0,E.useCallbackRef)(e);b.useEffect(()=>{let e=e=>{"Escape"===e.key&&r(e)};return t.addEventListener("keydown",e,{capture:!0}),()=>t.removeEventListener("keydown",e,{capture:!0})},[r,t])}(e=>{j===d.layers.size-1&&(n?.(e),!e.defaultPrevented&&l&&(e.preventDefault(),l()))},p),b.useEffect(()=>{if(c)return r&&(0===d.layersWithOutsidePointerEventsDisabled.size&&(v=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(c)),d.layers.add(c),P(),()=>{r&&1===d.layersWithOutsidePointerEventsDisabled.size&&(p.body.style.pointerEvents=v)}},[c,p,r,d]),b.useEffect(()=>()=>{c&&(d.layers.delete(c),d.layersWithOutsidePointerEventsDisabled.delete(c),P())},[c,d]),b.useEffect(()=>{let e=()=>x({});return document.addEventListener(A,e),()=>document.removeEventListener(A,e)},[]),(0,f.jsx)(N.Primitive.div,{...i,ref:m,style:{pointerEvents:C?S?"auto":"none":void 0,...e.style},onFocusCapture:(0,k.composeEventHandlers)(e.onFocusCapture,L.onFocusCapture),onBlurCapture:(0,k.composeEventHandlers)(e.onBlurCapture,L.onBlurCapture),onPointerDownCapture:(0,k.composeEventHandlers)(e.onPointerDownCapture,M.onPointerDownCapture)})});function P(){let e=new CustomEvent(A);document.dispatchEvent(e)}function O(e,t,r,{discrete:n}){let a=r.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:r});t&&a.addEventListener(e,t,{once:!0}),n?(0,N.dispatchDiscreteCustomEvent)(a,o):a.dispatchEvent(o)}M.displayName="DismissableLayer",b.forwardRef((e,t)=>{let r=b.useContext(R),n=b.useRef(null),a=(0,y.useComposedRefs)(t,n);return b.useEffect(()=>{let e=n.current;if(e)return r.branches.add(e),()=>{r.branches.delete(e)}},[r.branches]),(0,f.jsx)(N.Primitive.div,{...e,ref:a})}).displayName="DismissableLayerBranch";var L=0;function D(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var T="focusScope.autoFocusOnMount",H="focusScope.autoFocusOnUnmount",F={bubbles:!1,cancelable:!0},I=b.forwardRef((e,t)=>{let{loop:r=!1,trapped:n=!1,onMountAutoFocus:a,onUnmountAutoFocus:o,...s}=e,[l,i]=b.useState(null),d=(0,E.useCallbackRef)(a),c=(0,E.useCallbackRef)(o),u=b.useRef(null),p=(0,y.useComposedRefs)(t,e=>i(e)),x=b.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;b.useEffect(()=>{if(n){let e=function(e){if(x.paused||!l)return;let t=e.target;l.contains(t)?u.current=t:$(u.current,{select:!0})},t=function(e){if(x.paused||!l)return;let t=e.relatedTarget;null!==t&&(l.contains(t)||$(u.current,{select:!0}))};document.addEventListener("focusin",e),document.addEventListener("focusout",t);let r=new MutationObserver(function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&$(l)});return l&&r.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),r.disconnect()}}},[n,l,x.paused]),b.useEffect(()=>{if(l){z.add(x);let e=document.activeElement;if(!l.contains(e)){let t=new CustomEvent(T,F);l.addEventListener(T,d),l.dispatchEvent(t),t.defaultPrevented||(function(e,{select:t=!1}={}){let r=document.activeElement;for(let n of e)if($(n,{select:t}),document.activeElement!==r)return}(_(l).filter(e=>"A"!==e.tagName),{select:!0}),document.activeElement===e&&$(l))}return()=>{l.removeEventListener(T,d),setTimeout(()=>{let t=new CustomEvent(H,F);l.addEventListener(H,c),l.dispatchEvent(t),t.defaultPrevented||$(e??document.body,{select:!0}),l.removeEventListener(H,c),z.remove(x)},0)}}},[l,d,c,x]);let m=b.useCallback(e=>{if(!r&&!n||x.paused)return;let t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,a=document.activeElement;if(t&&a){var o;let t,n=e.currentTarget,[s,l]=[B(t=_(o=n),o),B(t.reverse(),o)];s&&l?e.shiftKey||a!==l?e.shiftKey&&a===s&&(e.preventDefault(),r&&$(l,{select:!0})):(e.preventDefault(),r&&$(s,{select:!0})):a===n&&e.preventDefault()}},[r,n,x.paused]);return(0,f.jsx)(N.Primitive.div,{tabIndex:-1,...s,ref:p,onKeyDown:m})});function _(e){let t=[],r=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;r.nextNode();)t.push(r.currentNode);return t}function B(e,t){for(let r of e)if(!function(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e&&(void 0===t||e!==t);){if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}(r,{upTo:t}))return r}function $(e,{select:t=!1}={}){if(e&&e.focus){var r;let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&(r=e)instanceof HTMLInputElement&&"select"in r&&t&&e.select()}}I.displayName="FocusScope";var z=(s=[],{add(e){let t=s[0];e!==t&&t?.pause(),(s=U(s,e)).unshift(e)},remove(e){s=U(s,e),s[0]?.resume()}});function U(e,t){let r=[...e],n=r.indexOf(t);return -1!==n&&r.splice(n,1),r}var W=e.i(10772);let G=["top","right","bottom","left"],V=Math.min,q=Math.max,K=Math.round,X=Math.floor,Y=e=>({x:e,y:e}),J={left:"right",right:"left",bottom:"top",top:"bottom"};function Z(e,t){return"function"==typeof e?e(t):e}function Q(e){return e.split("-")[0]}function ee(e){return e.split("-")[1]}function et(e){return"x"===e?"y":"x"}function er(e){return"y"===e?"height":"width"}function en(e){let t=e[0];return"t"===t||"b"===t?"y":"x"}function ea(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}let eo=["left","right"],es=["right","left"],el=["top","bottom"],ei=["bottom","top"];function ed(e){let t=Q(e);return J[t]+e.slice(t.length)}function ec(e){return"number"!=typeof e?{top:0,right:0,bottom:0,left:0,...e}:{top:e,right:e,bottom:e,left:e}}function eu(e){let{x:t,y:r,width:n,height:a}=e;return{width:n,height:a,top:r,left:t,right:t+n,bottom:r+a,x:t,y:r}}function ep(e,t,r){let n,{reference:a,floating:o}=e,s=en(t),l=et(en(t)),i=er(l),d=Q(t),c="y"===s,u=a.x+a.width/2-o.width/2,p=a.y+a.height/2-o.height/2,x=a[i]/2-o[i]/2;switch(d){case"top":n={x:u,y:a.y-o.height};break;case"bottom":n={x:u,y:a.y+a.height};break;case"right":n={x:a.x+a.width,y:p};break;case"left":n={x:a.x-o.width,y:p};break;default:n={x:a.x,y:a.y}}switch(ee(t)){case"start":n[l]-=x*(r&&c?-1:1);break;case"end":n[l]+=x*(r&&c?-1:1)}return n}async function ex(e,t){var r;void 0===t&&(t={});let{x:n,y:a,platform:o,rects:s,elements:l,strategy:i}=e,{boundary:d="clippingAncestors",rootBoundary:c="viewport",elementContext:u="floating",altBoundary:p=!1,padding:x=0}=Z(t,e),m=ec(x),v=l[p?"floating"===u?"reference":"floating":u],h=eu(await o.getClippingRect({element:null==(r=await (null==o.isElement?void 0:o.isElement(v)))||r?v:v.contextElement||await (null==o.getDocumentElement?void 0:o.getDocumentElement(l.floating)),boundary:d,rootBoundary:c,strategy:i})),f="floating"===u?{x:n,y:a,width:s.floating.width,height:s.floating.height}:s.reference,g=await (null==o.getOffsetParent?void 0:o.getOffsetParent(l.floating)),b=await (null==o.isElement?void 0:o.isElement(g))&&await (null==o.getScale?void 0:o.getScale(g))||{x:1,y:1},k=eu(o.convertOffsetParentRelativeRectToViewportRelativeRect?await o.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:f,offsetParent:g,strategy:i}):f);return{top:(h.top-k.top+m.top)/b.y,bottom:(k.bottom-h.bottom+m.bottom)/b.y,left:(h.left-k.left+m.left)/b.x,right:(k.right-h.right+m.right)/b.x}}let em=async(e,t,r)=>{let{placement:n="bottom",strategy:a="absolute",middleware:o=[],platform:s}=r,l=s.detectOverflow?s:{...s,detectOverflow:ex},i=await (null==s.isRTL?void 0:s.isRTL(t)),d=await s.getElementRects({reference:e,floating:t,strategy:a}),{x:c,y:u}=ep(d,n,i),p=n,x=0,m={};for(let r=0;r<o.length;r++){let v=o[r];if(!v)continue;let{name:h,fn:f}=v,{x:g,y:b,data:k,reset:y}=await f({x:c,y:u,initialPlacement:n,placement:p,strategy:a,middlewareData:m,rects:d,platform:l,elements:{reference:e,floating:t}});c=null!=g?g:c,u=null!=b?b:u,m[h]={...m[h],...k},y&&x<50&&(x++,"object"==typeof y&&(y.placement&&(p=y.placement),y.rects&&(d=!0===y.rects?await s.getElementRects({reference:e,floating:t,strategy:a}):y.rects),{x:c,y:u}=ep(d,p,i)),r=-1)}return{x:c,y:u,placement:p,strategy:a,middlewareData:m}};function ev(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function eh(e){return G.some(t=>e[t]>=0)}let ef=new Set(["left","top"]);async function eg(e,t){let{placement:r,platform:n,elements:a}=e,o=await (null==n.isRTL?void 0:n.isRTL(a.floating)),s=Q(r),l=ee(r),i="y"===en(r),d=ef.has(s)?-1:1,c=o&&i?-1:1,u=Z(t,e),{mainAxis:p,crossAxis:x,alignmentAxis:m}="number"==typeof u?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return l&&"number"==typeof m&&(x="end"===l?-1*m:m),i?{x:x*c,y:p*d}:{x:p*d,y:x*c}}function eb(){return"u">typeof window}function ek(e){return ej(e)?(e.nodeName||"").toLowerCase():"#document"}function ey(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function ew(e){var t;return null==(t=(ej(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function ej(e){return!!eb()&&(e instanceof Node||e instanceof ey(e).Node)}function eN(e){return!!eb()&&(e instanceof Element||e instanceof ey(e).Element)}function eC(e){return!!eb()&&(e instanceof HTMLElement||e instanceof ey(e).HTMLElement)}function eS(e){return!(!eb()||"u"<typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof ey(e).ShadowRoot)}function eE(e){let{overflow:t,overflowX:r,overflowY:n,display:a}=eT(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+r)&&"inline"!==a&&"contents"!==a}function eA(e){try{if(e.matches(":popover-open"))return!0}catch(e){}try{return e.matches(":modal")}catch(e){return!1}}let eR=/transform|translate|scale|rotate|perspective|filter/,eM=/paint|layout|strict|content/,eP=e=>!!e&&"none"!==e;function eO(e){let t=eN(e)?eT(e):e;return eP(t.transform)||eP(t.translate)||eP(t.scale)||eP(t.rotate)||eP(t.perspective)||!eL()&&(eP(t.backdropFilter)||eP(t.filter))||eR.test(t.willChange||"")||eM.test(t.contain||"")}function eL(){return null==t&&(t="u">typeof CSS&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),t}function eD(e){return/^(html|body|#document)$/.test(ek(e))}function eT(e){return ey(e).getComputedStyle(e)}function eH(e){return eN(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function eF(e){if("html"===ek(e))return e;let t=e.assignedSlot||e.parentNode||eS(e)&&e.host||ew(e);return eS(t)?t.host:t}function eI(e,t,r){var n;void 0===t&&(t=[]),void 0===r&&(r=!0);let a=function e(t){let r=eF(t);return eD(r)?t.ownerDocument?t.ownerDocument.body:t.body:eC(r)&&eE(r)?r:e(r)}(e),o=a===(null==(n=e.ownerDocument)?void 0:n.body),s=ey(a);if(!o)return t.concat(a,eI(a,[],r));{let e=e_(s);return t.concat(s,s.visualViewport||[],eE(a)?a:[],e&&r?eI(e):[])}}function e_(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function eB(e){let t=eT(e),r=parseFloat(t.width)||0,n=parseFloat(t.height)||0,a=eC(e),o=a?e.offsetWidth:r,s=a?e.offsetHeight:n,l=K(r)!==o||K(n)!==s;return l&&(r=o,n=s),{width:r,height:n,$:l}}function e$(e){return eN(e)?e:e.contextElement}function ez(e){let t=e$(e);if(!eC(t))return Y(1);let r=t.getBoundingClientRect(),{width:n,height:a,$:o}=eB(t),s=(o?K(r.width):r.width)/n,l=(o?K(r.height):r.height)/a;return s&&Number.isFinite(s)||(s=1),l&&Number.isFinite(l)||(l=1),{x:s,y:l}}let eU=Y(0);function eW(e){let t=ey(e);return eL()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:eU}function eG(e,t,r,n){var a;void 0===t&&(t=!1),void 0===r&&(r=!1);let o=e.getBoundingClientRect(),s=e$(e),l=Y(1);t&&(n?eN(n)&&(l=ez(n)):l=ez(e));let i=(void 0===(a=r)&&(a=!1),n&&(!a||n===ey(s))&&a)?eW(s):Y(0),d=(o.left+i.x)/l.x,c=(o.top+i.y)/l.y,u=o.width/l.x,p=o.height/l.y;if(s){let e=ey(s),t=n&&eN(n)?ey(n):n,r=e,a=e_(r);for(;a&&n&&t!==r;){let e=ez(a),t=a.getBoundingClientRect(),n=eT(a),o=t.left+(a.clientLeft+parseFloat(n.paddingLeft))*e.x,s=t.top+(a.clientTop+parseFloat(n.paddingTop))*e.y;d*=e.x,c*=e.y,u*=e.x,p*=e.y,d+=o,c+=s,a=e_(r=ey(a))}}return eu({width:u,height:p,x:d,y:c})}function eV(e,t){let r=eH(e).scrollLeft;return t?t.left+r:eG(ew(e)).left+r}function eq(e,t){let r=e.getBoundingClientRect();return{x:r.left+t.scrollLeft-eV(e,r),y:r.top+t.scrollTop}}function eK(e,t,r){var n;let a;if("viewport"===t)a=function(e,t){let r=ey(e),n=ew(e),a=r.visualViewport,o=n.clientWidth,s=n.clientHeight,l=0,i=0;if(a){o=a.width,s=a.height;let e=eL();(!e||e&&"fixed"===t)&&(l=a.offsetLeft,i=a.offsetTop)}let d=eV(n);if(d<=0){let e=n.ownerDocument,t=e.body,r=getComputedStyle(t),a="CSS1Compat"===e.compatMode&&parseFloat(r.marginLeft)+parseFloat(r.marginRight)||0,s=Math.abs(n.clientWidth-t.clientWidth-a);s<=25&&(o-=s)}else d<=25&&(o+=d);return{width:o,height:s,x:l,y:i}}(e,r);else if("document"===t){let t,r,o,s,l,i,d;n=ew(e),t=ew(n),r=eH(n),o=n.ownerDocument.body,s=q(t.scrollWidth,t.clientWidth,o.scrollWidth,o.clientWidth),l=q(t.scrollHeight,t.clientHeight,o.scrollHeight,o.clientHeight),i=-r.scrollLeft+eV(n),d=-r.scrollTop,"rtl"===eT(o).direction&&(i+=q(t.clientWidth,o.clientWidth)-s),a={width:s,height:l,x:i,y:d}}else if(eN(t)){let e,n,o,s,l,i;n=(e=eG(t,!0,"fixed"===r)).top+t.clientTop,o=e.left+t.clientLeft,s=eC(t)?ez(t):Y(1),l=t.clientWidth*s.x,i=t.clientHeight*s.y,a={width:l,height:i,x:o*s.x,y:n*s.y}}else{let r=eW(e);a={x:t.x-r.x,y:t.y-r.y,width:t.width,height:t.height}}return eu(a)}function eX(e){return"static"===eT(e).position}function eY(e,t){if(!eC(e)||"fixed"===eT(e).position)return null;if(t)return t(e);let r=e.offsetParent;return ew(e)===r&&(r=r.ownerDocument.body),r}function eJ(e,t){var r;let n=ey(e);if(eA(e))return n;if(!eC(e)){let t=eF(e);for(;t&&!eD(t);){if(eN(t)&&!eX(t))return t;t=eF(t)}return n}let a=eY(e,t);for(;a&&(r=a,/^(table|td|th)$/.test(ek(r)))&&eX(a);)a=eY(a,t);return a&&eD(a)&&eX(a)&&!eO(a)?n:a||function(e){let t=eF(e);for(;eC(t)&&!eD(t);){if(eO(t))return t;if(eA(t))break;t=eF(t)}return null}(e)||n}let eZ=async function(e){let t=this.getOffsetParent||eJ,r=this.getDimensions,n=await r(e.floating);return{reference:function(e,t,r){let n=eC(t),a=ew(t),o="fixed"===r,s=eG(e,!0,o,t),l={scrollLeft:0,scrollTop:0},i=Y(0);if(n||!n&&!o)if(("body"!==ek(t)||eE(a))&&(l=eH(t)),n){let e=eG(t,!0,o,t);i.x=e.x+t.clientLeft,i.y=e.y+t.clientTop}else a&&(i.x=eV(a));o&&!n&&a&&(i.x=eV(a));let d=!a||n||o?Y(0):eq(a,l);return{x:s.left+l.scrollLeft-i.x-d.x,y:s.top+l.scrollTop-i.y-d.y,width:s.width,height:s.height}}(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}},eQ={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:r,offsetParent:n,strategy:a}=e,o="fixed"===a,s=ew(n),l=!!t&&eA(t.floating);if(n===s||l&&o)return r;let i={scrollLeft:0,scrollTop:0},d=Y(1),c=Y(0),u=eC(n);if((u||!u&&!o)&&(("body"!==ek(n)||eE(s))&&(i=eH(n)),u)){let e=eG(n);d=ez(n),c.x=e.x+n.clientLeft,c.y=e.y+n.clientTop}let p=!s||u||o?Y(0):eq(s,i);return{width:r.width*d.x,height:r.height*d.y,x:r.x*d.x-i.scrollLeft*d.x+c.x+p.x,y:r.y*d.y-i.scrollTop*d.y+c.y+p.y}},getDocumentElement:ew,getClippingRect:function(e){let{element:t,boundary:r,rootBoundary:n,strategy:a}=e,o=[..."clippingAncestors"===r?eA(t)?[]:function(e,t){let r=t.get(e);if(r)return r;let n=eI(e,[],!1).filter(e=>eN(e)&&"body"!==ek(e)),a=null,o="fixed"===eT(e).position,s=o?eF(e):e;for(;eN(s)&&!eD(s);){let t=eT(s),r=eO(s);r||"fixed"!==t.position||(a=null),(o?r||a:!(!r&&"static"===t.position&&a&&("absolute"===a.position||"fixed"===a.position)||eE(s)&&!r&&function e(t,r){let n=eF(t);return!(n===r||!eN(n)||eD(n))&&("fixed"===eT(n).position||e(n,r))}(e,s)))?a=t:n=n.filter(e=>e!==s),s=eF(s)}return t.set(e,n),n}(t,this._c):[].concat(r),n],s=eK(t,o[0],a),l=s.top,i=s.right,d=s.bottom,c=s.left;for(let e=1;e<o.length;e++){let r=eK(t,o[e],a);l=q(r.top,l),i=V(r.right,i),d=V(r.bottom,d),c=q(r.left,c)}return{width:i-c,height:d-l,x:c,y:l}},getOffsetParent:eJ,getElementRects:eZ,getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){let{width:t,height:r}=eB(e);return{width:t,height:r}},getScale:ez,isElement:eN,isRTL:function(e){return"rtl"===eT(e).direction}};function e0(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}let e1=e=>({name:"arrow",options:e,async fn(t){let{x:r,y:n,placement:a,rects:o,platform:s,elements:l,middlewareData:i}=t,{element:d,padding:c=0}=Z(e,t)||{};if(null==d)return{};let u=ec(c),p={x:r,y:n},x=et(en(a)),m=er(x),v=await s.getDimensions(d),h="y"===x,f=h?"clientHeight":"clientWidth",g=o.reference[m]+o.reference[x]-p[x]-o.floating[m],b=p[x]-o.reference[x],k=await (null==s.getOffsetParent?void 0:s.getOffsetParent(d)),y=k?k[f]:0;y&&await (null==s.isElement?void 0:s.isElement(k))||(y=l.floating[f]||o.floating[m]);let w=y/2-v[m]/2-1,j=V(u[h?"top":"left"],w),N=V(u[h?"bottom":"right"],w),C=y-v[m]-N,S=y/2-v[m]/2+(g/2-b/2),E=q(j,V(S,C)),A=!i.arrow&&null!=ee(a)&&S!==E&&o.reference[m]/2-(S<j?j:N)-v[m]/2<0,R=A?S<j?S-j:S-C:0;return{[x]:p[x]+R,data:{[x]:E,centerOffset:S-E-R,...A&&{alignmentOffset:R}},reset:A}}});var e2=e.i(74080),e4="u">typeof document?b.useLayoutEffect:function(){};function e3(e,t){let r,n,a;if(e===t)return!0;if(typeof e!=typeof t)return!1;if("function"==typeof e&&e.toString()===t.toString())return!0;if(e&&t&&"object"==typeof e){if(Array.isArray(e)){if((r=e.length)!==t.length)return!1;for(n=r;0!=n--;)if(!e3(e[n],t[n]))return!1;return!0}if((r=(a=Object.keys(e)).length)!==Object.keys(t).length)return!1;for(n=r;0!=n--;)if(!({}).hasOwnProperty.call(t,a[n]))return!1;for(n=r;0!=n--;){let r=a[n];if(("_owner"!==r||!e.$$typeof)&&!e3(e[r],t[r]))return!1}return!0}return e!=e&&t!=t}function e5(e){return"u"<typeof window?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function e6(e,t){let r=e5(e);return Math.round(t*r)/r}function e9(e){let t=b.useRef(e);return e4(()=>{t.current=e}),t}var e8=b.forwardRef((e,t)=>{let{children:r,width:n=10,height:a=5,...o}=e;return(0,f.jsx)(N.Primitive.svg,{...o,ref:t,width:n,height:a,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?r:(0,f.jsx)("polygon",{points:"0,0 30,0 15,10"})})});e8.displayName="Arrow";var e7=e.i(34620),te="Popper",[tt,tr]=(0,w.createContextScope)(te),[tn,ta]=tt(te),to=e=>{let{__scopePopper:t,children:r}=e,[n,a]=b.useState(null);return(0,f.jsx)(tn,{scope:t,anchor:n,onAnchorChange:a,children:r})};to.displayName=te;var ts="PopperAnchor",tl=b.forwardRef((e,t)=>{let{__scopePopper:r,virtualRef:n,...a}=e,o=ta(ts,r),s=b.useRef(null),l=(0,y.useComposedRefs)(t,s),i=b.useRef(null);return b.useEffect(()=>{let e=i.current;i.current=n?.current||s.current,e!==i.current&&o.onAnchorChange(i.current)}),n?null:(0,f.jsx)(N.Primitive.div,{...a,ref:l})});tl.displayName=ts;var ti="PopperContent",[td,tc]=tt(ti),tu=b.forwardRef((e,t)=>{var r,n,a,o,s,l,i,d,c,u,p,x,m,v,h,g,k,w,j,C,S;let A,R,M,P,O,L,{__scopePopper:D,side:T="bottom",sideOffset:H=0,align:F="center",alignOffset:I=0,arrowPadding:_=0,avoidCollisions:B=!0,collisionBoundary:$=[],collisionPadding:z=0,sticky:U="partial",hideWhenDetached:W=!1,updatePositionStrategy:G="optimized",onPlaced:K,...Y}=e,J=ta(ti,D),[ec,eu]=b.useState(null),ep=(0,y.useComposedRefs)(t,e=>eu(e)),[ex,eb]=b.useState(null),ek=function(e){let[t,r]=b.useState(void 0);return(0,e7.useLayoutEffect)(()=>{if(e){r({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{let n,a;if(!Array.isArray(t)||!t.length)return;let o=t[0];if("borderBoxSize"in o){let e=o.borderBoxSize,t=Array.isArray(e)?e[0]:e;n=t.inlineSize,a=t.blockSize}else n=e.offsetWidth,a=e.offsetHeight;r({width:n,height:a})});return t.observe(e,{box:"border-box"}),()=>t.unobserve(e)}r(void 0)},[e]),t}(ex),ey=ek?.width??0,ej=ek?.height??0,eN="number"==typeof z?z:{top:0,right:0,bottom:0,left:0,...z},eC=Array.isArray($)?$:[$],eS=eC.length>0,eE={padding:eN,boundary:eC.filter(tv),altBoundary:eS},{refs:eA,floatingStyles:eR,placement:eM,isPositioned:eP,middlewareData:eO}=function(e){void 0===e&&(e={});let{placement:t="bottom",strategy:r="absolute",middleware:n=[],platform:a,elements:{reference:o,floating:s}={},transform:l=!0,whileElementsMounted:i,open:d}=e,[c,u]=b.useState({x:0,y:0,strategy:r,placement:t,middlewareData:{},isPositioned:!1}),[p,x]=b.useState(n);e3(p,n)||x(n);let[m,v]=b.useState(null),[h,f]=b.useState(null),g=b.useCallback(e=>{e!==j.current&&(j.current=e,v(e))},[]),k=b.useCallback(e=>{e!==N.current&&(N.current=e,f(e))},[]),y=o||m,w=s||h,j=b.useRef(null),N=b.useRef(null),C=b.useRef(c),S=null!=i,E=e9(i),A=e9(a),R=e9(d),M=b.useCallback(()=>{var e,n;let a,o,s;if(!j.current||!N.current)return;let l={placement:t,strategy:r,middleware:p};A.current&&(l.platform=A.current),(e=j.current,n=N.current,a=new Map,s={...(o={platform:eQ,...l}).platform,_c:a},em(e,n,{...o,platform:s})).then(e=>{let t={...e,isPositioned:!1!==R.current};P.current&&!e3(C.current,t)&&(C.current=t,e2.flushSync(()=>{u(t)}))})},[p,t,r,A,R]);e4(()=>{!1===d&&C.current.isPositioned&&(C.current.isPositioned=!1,u(e=>({...e,isPositioned:!1})))},[d]);let P=b.useRef(!1);e4(()=>(P.current=!0,()=>{P.current=!1}),[]),e4(()=>{if(y&&(j.current=y),w&&(N.current=w),y&&w){if(E.current)return E.current(y,w,M);M()}},[y,w,M,E,S]);let O=b.useMemo(()=>({reference:j,floating:N,setReference:g,setFloating:k}),[g,k]),L=b.useMemo(()=>({reference:y,floating:w}),[y,w]),D=b.useMemo(()=>{let e={position:r,left:0,top:0};if(!L.floating)return e;let t=e6(L.floating,c.x),n=e6(L.floating,c.y);return l?{...e,transform:"translate("+t+"px, "+n+"px)",...e5(L.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:t,top:n}},[r,l,L.floating,c.x,c.y]);return b.useMemo(()=>({...c,update:M,refs:O,elements:L,floatingStyles:D}),[c,M,O,L,D])}({strategy:"fixed",placement:T+("center"!==F?"-"+F:""),whileElementsMounted:(...e)=>(function(e,t,r,n){let a;void 0===n&&(n={});let{ancestorScroll:o=!0,ancestorResize:s=!0,elementResize:l="function"==typeof ResizeObserver,layoutShift:i="function"==typeof IntersectionObserver,animationFrame:d=!1}=n,c=e$(e),u=o||s?[...c?eI(c):[],...t?eI(t):[]]:[];u.forEach(e=>{o&&e.addEventListener("scroll",r,{passive:!0}),s&&e.addEventListener("resize",r)});let p=c&&i?function(e,t){let r,n=null,a=ew(e);function o(){var e;clearTimeout(r),null==(e=n)||e.disconnect(),n=null}return!function s(l,i){void 0===l&&(l=!1),void 0===i&&(i=1),o();let d=e.getBoundingClientRect(),{left:c,top:u,width:p,height:x}=d;if(l||t(),!p||!x)return;let m={rootMargin:-X(u)+"px "+-X(a.clientWidth-(c+p))+"px "+-X(a.clientHeight-(u+x))+"px "+-X(c)+"px",threshold:q(0,V(1,i))||1},v=!0;function h(t){let n=t[0].intersectionRatio;if(n!==i){if(!v)return s();n?s(!1,n):r=setTimeout(()=>{s(!1,1e-7)},1e3)}1!==n||e0(d,e.getBoundingClientRect())||s(),v=!1}try{n=new IntersectionObserver(h,{...m,root:a.ownerDocument})}catch(e){n=new IntersectionObserver(h,m)}n.observe(e)}(!0),o}(c,r):null,x=-1,m=null;l&&(m=new ResizeObserver(e=>{let[n]=e;n&&n.target===c&&m&&t&&(m.unobserve(t),cancelAnimationFrame(x),x=requestAnimationFrame(()=>{var e;null==(e=m)||e.observe(t)})),r()}),c&&!d&&m.observe(c),t&&m.observe(t));let v=d?eG(e):null;return d&&function t(){let n=eG(e);v&&!e0(v,n)&&r(),v=n,a=requestAnimationFrame(t)}(),r(),()=>{var e;u.forEach(e=>{o&&e.removeEventListener("scroll",r),s&&e.removeEventListener("resize",r)}),null==p||p(),null==(e=m)||e.disconnect(),m=null,d&&cancelAnimationFrame(a)}})(...e,{animationFrame:"always"===G}),elements:{reference:J.anchor},middleware:[{name:(A={name:"offset",options:a=r={mainAxis:H+ej,alignmentAxis:I},async fn(e){var t,r;let{x:n,y:o,placement:s,middlewareData:l}=e,i=await eg(e,a);return s===(null==(t=l.offset)?void 0:t.placement)&&null!=(r=l.arrow)&&r.alignmentOffset?{}:{x:n+i.x,y:o+i.y,data:{...i,placement:s}}}}).name,fn:A.fn,options:[r,n]},B&&{name:(R={name:"shift",options:c=i={mainAxis:!0,crossAxis:!1,limiter:"partial"===U?{fn:(void 0===(l=o)&&(l={}),{options:l,fn(e){let{x:t,y:r,placement:n,rects:a,middlewareData:o}=e,{offset:s=0,mainAxis:i=!0,crossAxis:d=!0}=Z(l,e),c={x:t,y:r},u=en(n),p=et(u),x=c[p],m=c[u],v=Z(s,e),h="number"==typeof v?{mainAxis:v,crossAxis:0}:{mainAxis:0,crossAxis:0,...v};if(i){let e="y"===p?"height":"width",t=a.reference[p]-a.floating[e]+h.mainAxis,r=a.reference[p]+a.reference[e]-h.mainAxis;x<t?x=t:x>r&&(x=r)}if(d){var f,g;let e="y"===p?"width":"height",t=ef.has(Q(n)),r=a.reference[u]-a.floating[e]+(t&&(null==(f=o.offset)?void 0:f[u])||0)+(t?0:h.crossAxis),s=a.reference[u]+a.reference[e]+(t?0:(null==(g=o.offset)?void 0:g[u])||0)-(t?h.crossAxis:0);m<r?m=r:m>s&&(m=s)}return{[p]:x,[u]:m}}}).fn,options:[o,s]}:void 0,...eE},async fn(e){let{x:t,y:r,placement:n,platform:a}=e,{mainAxis:o=!0,crossAxis:s=!1,limiter:l={fn:e=>{let{x:t,y:r}=e;return{x:t,y:r}}},...i}=Z(c,e),d={x:t,y:r},u=await a.detectOverflow(e,i),p=en(Q(n)),x=et(p),m=d[x],v=d[p];if(o){let e="y"===x?"top":"left",t="y"===x?"bottom":"right",r=m+u[e],n=m-u[t];m=q(r,V(m,n))}if(s){let e="y"===p?"top":"left",t="y"===p?"bottom":"right",r=v+u[e],n=v-u[t];v=q(r,V(v,n))}let h=l.fn({...e,[x]:m,[p]:v});return{...h,data:{x:h.x-t,y:h.y-r,enabled:{[x]:o,[p]:s}}}}}).name,fn:R.fn,options:[i,d]},B&&{name:(M={name:"flip",options:x=u={...eE},async fn(e){var t,r,n,a,o,s,l,i;let d,c,u,{placement:p,middlewareData:m,rects:v,initialPlacement:h,platform:f,elements:g}=e,{mainAxis:b=!0,crossAxis:k=!0,fallbackPlacements:y,fallbackStrategy:w="bestFit",fallbackAxisSideDirection:j="none",flipAlignment:N=!0,...C}=Z(x,e);if(null!=(t=m.arrow)&&t.alignmentOffset)return{};let S=Q(p),E=en(h),A=Q(h)===h,R=await (null==f.isRTL?void 0:f.isRTL(g.floating)),M=y||(A||!N?[ed(h)]:(d=ed(h),[ea(h),d,ea(d)])),P="none"!==j;!y&&P&&M.push(...(c=ee(h),u=function(e,t,r){switch(e){case"top":case"bottom":if(r)return t?es:eo;return t?eo:es;case"left":case"right":return t?el:ei;default:return[]}}(Q(h),"start"===j,R),c&&(u=u.map(e=>e+"-"+c),N&&(u=u.concat(u.map(ea)))),u));let O=[h,...M],L=await f.detectOverflow(e,C),D=[],T=(null==(r=m.flip)?void 0:r.overflows)||[];if(b&&D.push(L[S]),k){let e,t,r,n,a=(s=p,l=v,void 0===(i=R)&&(i=!1),e=ee(s),r=er(t=et(en(s))),n="x"===t?e===(i?"end":"start")?"right":"left":"start"===e?"bottom":"top",l.reference[r]>l.floating[r]&&(n=ed(n)),[n,ed(n)]);D.push(L[a[0]],L[a[1]])}if(T=[...T,{placement:p,overflows:D}],!D.every(e=>e<=0)){let e=((null==(n=m.flip)?void 0:n.index)||0)+1,t=O[e];if(t&&("alignment"!==k||E===en(t)||T.every(e=>en(e.placement)!==E||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let r=null==(a=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0])?void 0:a.placement;if(!r)switch(w){case"bestFit":{let e=null==(o=T.filter(e=>{if(P){let t=en(e.placement);return t===E||"y"===t}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0])?void 0:o[0];e&&(r=e);break}case"initialPlacement":r=h}if(p!==r)return{reset:{placement:r}}}return{}}}).name,fn:M.fn,options:[u,p]},{name:(P={name:"size",options:h=m={...eE,apply:({elements:e,rects:t,availableWidth:r,availableHeight:n})=>{let{width:a,height:o}=t.reference,s=e.floating.style;s.setProperty("--radix-popper-available-width",`${r}px`),s.setProperty("--radix-popper-available-height",`${n}px`),s.setProperty("--radix-popper-anchor-width",`${a}px`),s.setProperty("--radix-popper-anchor-height",`${o}px`)}},async fn(e){var t,r;let n,a,{placement:o,rects:s,platform:l,elements:i}=e,{apply:d=()=>{},...c}=Z(h,e),u=await l.detectOverflow(e,c),p=Q(o),x=ee(o),m="y"===en(o),{width:v,height:f}=s.floating;"top"===p||"bottom"===p?(n=p,a=x===(await (null==l.isRTL?void 0:l.isRTL(i.floating))?"start":"end")?"left":"right"):(a=p,n="end"===x?"top":"bottom");let g=f-u.top-u.bottom,b=v-u.left-u.right,k=V(f-u[n],g),y=V(v-u[a],b),w=!e.middlewareData.shift,j=k,N=y;if(null!=(t=e.middlewareData.shift)&&t.enabled.x&&(N=b),null!=(r=e.middlewareData.shift)&&r.enabled.y&&(j=g),w&&!x){let e=q(u.left,0),t=q(u.right,0),r=q(u.top,0),n=q(u.bottom,0);m?N=v-2*(0!==e||0!==t?e+t:q(u.left,u.right)):j=f-2*(0!==r||0!==n?r+n:q(u.top,u.bottom))}await d({...e,availableWidth:N,availableHeight:j});let C=await l.getDimensions(i.floating);return v!==C.width||f!==C.height?{reset:{rects:!0}}:{}}}).name,fn:P.fn,options:[m,v]},ex&&{name:(O={name:"arrow",options:w=g={element:ex,padding:_},fn(e){let{element:t,padding:r}="function"==typeof w?w(e):w;return t&&({}).hasOwnProperty.call(t,"current")?null!=t.current?e1({element:t.current,padding:r}).fn(e):{}:t?e1({element:t,padding:r}).fn(e):{}}}).name,fn:O.fn,options:[g,k]},th({arrowWidth:ey,arrowHeight:ej}),W&&{name:(L={name:"hide",options:S=j={strategy:"referenceHidden",...eE},async fn(e){let{rects:t,platform:r}=e,{strategy:n="referenceHidden",...a}=Z(S,e);switch(n){case"referenceHidden":{let n=ev(await r.detectOverflow(e,{...a,elementContext:"reference"}),t.reference);return{data:{referenceHiddenOffsets:n,referenceHidden:eh(n)}}}case"escaped":{let n=ev(await r.detectOverflow(e,{...a,altBoundary:!0}),t.floating);return{data:{escapedOffsets:n,escaped:eh(n)}}}default:return{}}}}).name,fn:L.fn,options:[j,C]}]}),[eL,eD]=tf(eM),eT=(0,E.useCallbackRef)(K);(0,e7.useLayoutEffect)(()=>{eP&&eT?.()},[eP,eT]);let eH=eO.arrow?.x,eF=eO.arrow?.y,e_=eO.arrow?.centerOffset!==0,[eB,ez]=b.useState();return(0,e7.useLayoutEffect)(()=>{ec&&ez(window.getComputedStyle(ec).zIndex)},[ec]),(0,f.jsx)("div",{ref:eA.setFloating,"data-radix-popper-content-wrapper":"",style:{...eR,transform:eP?eR.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:eB,"--radix-popper-transform-origin":[eO.transformOrigin?.x,eO.transformOrigin?.y].join(" "),...eO.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:(0,f.jsx)(td,{scope:D,placedSide:eL,onArrowChange:eb,arrowX:eH,arrowY:eF,shouldHideArrow:e_,children:(0,f.jsx)(N.Primitive.div,{"data-side":eL,"data-align":eD,...Y,ref:ep,style:{...Y.style,animation:eP?void 0:"none"}})})})});tu.displayName=ti;var tp="PopperArrow",tx={top:"bottom",right:"left",bottom:"top",left:"right"},tm=b.forwardRef(function(e,t){let{__scopePopper:r,...n}=e,a=tc(tp,r),o=tx[a.placedSide];return(0,f.jsx)("span",{ref:a.onArrowChange,style:{position:"absolute",left:a.arrowX,top:a.arrowY,[o]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[a.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[a.placedSide],visibility:a.shouldHideArrow?"hidden":void 0},children:(0,f.jsx)(e8,{...n,ref:t,style:{...n.style,display:"block"}})})});function tv(e){return null!==e}tm.displayName=tp;var th=e=>({name:"transformOrigin",options:e,fn(t){let{placement:r,rects:n,middlewareData:a}=t,o=a.arrow?.centerOffset!==0,s=o?0:e.arrowWidth,l=o?0:e.arrowHeight,[i,d]=tf(r),c={start:"0%",center:"50%",end:"100%"}[d],u=(a.arrow?.x??0)+s/2,p=(a.arrow?.y??0)+l/2,x="",m="";return"bottom"===i?(x=o?c:`${u}px`,m=`${-l}px`):"top"===i?(x=o?c:`${u}px`,m=`${n.floating.height+l}px`):"right"===i?(x=`${-l}px`,m=o?c:`${p}px`):"left"===i&&(x=`${n.floating.width+l}px`,m=o?c:`${p}px`),{data:{x,y:m}}}});function tf(e){let[t,r="center"]=e.split("-");return[t,r]}var tg=b.forwardRef((e,t)=>{let{container:r,...n}=e,[a,o]=b.useState(!1);(0,e7.useLayoutEffect)(()=>o(!0),[]);let s=r||a&&globalThis?.document?.body;return s?e2.default.createPortal((0,f.jsx)(N.Primitive.div,{...n,ref:t}),s):null});tg.displayName="Portal";var tb=e.i(96626),tk=e.i(42727),ty=Symbol("radix.slottable");function tw(e){return b.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===ty}var tj=new WeakMap,tN=new WeakMap,tC={},tS=0,tE=function(e){return e&&(e.host||tE(e.parentNode))},tA=function(e,t,r,n){var a=(Array.isArray(e)?e:[e]).map(function(e){if(t.contains(e))return e;var r=tE(e);return r&&t.contains(r)?r:(console.error("aria-hidden",e,"in not contained inside",t,". Doing nothing"),null)}).filter(function(e){return!!e});tC[r]||(tC[r]=new WeakMap);var o=tC[r],s=[],l=new Set,i=new Set(a),d=function(e){!e||l.has(e)||(l.add(e),d(e.parentNode))};a.forEach(d);var c=function(e){!e||i.has(e)||Array.prototype.forEach.call(e.children,function(e){if(l.has(e))c(e);else try{var t=e.getAttribute(n),a=null!==t&&"false"!==t,i=(tj.get(e)||0)+1,d=(o.get(e)||0)+1;tj.set(e,i),o.set(e,d),s.push(e),1===i&&a&&tN.set(e,!0),1===d&&e.setAttribute(r,"true"),a||e.setAttribute(n,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}})};return c(t),l.clear(),tS++,function(){s.forEach(function(e){var t=tj.get(e)-1,a=o.get(e)-1;tj.set(e,t),o.set(e,a),t||(tN.has(e)||e.removeAttribute(n),tN.delete(e)),a||e.removeAttribute(r)}),--tS||(tj=new WeakMap,tj=new WeakMap,tN=new WeakMap,tC={})}},tR=function(e,t,r){void 0===r&&(r="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),a=t||("u"<typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body);return a?(n.push.apply(n,Array.from(a.querySelectorAll("[aria-live], script"))),tA(n,a,r,"aria-hidden")):function(){return null}},tM=function(){return(tM=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var a in t=arguments[r])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)};function tP(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&0>t.indexOf(n)&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var a=0,n=Object.getOwnPropertySymbols(e);a<n.length;a++)0>t.indexOf(n[a])&&Object.prototype.propertyIsEnumerable.call(e,n[a])&&(r[n[a]]=e[n[a]]);return r}var tO=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),tL="width-before-scroll-bar";function tD(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var tT="u">typeof window?b.useLayoutEffect:b.useEffect,tH=new WeakMap,tF=(void 0===d&&(d={}),(void 0===c&&(c=function(e){return e}),u=[],p=!1,x={read:function(){if(p)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return u.length?u[u.length-1]:null},useMedium:function(e){var t=c(e,p);return u.push(t),function(){u=u.filter(function(e){return e!==t})}},assignSyncMedium:function(e){for(p=!0;u.length;){var t=u;u=[],t.forEach(e)}u={push:function(t){return e(t)},filter:function(){return u}}},assignMedium:function(e){p=!0;var t=[];if(u.length){var r=u;u=[],r.forEach(e),t=u}var n=function(){var r=t;t=[],r.forEach(e)},a=function(){return Promise.resolve().then(n)};a(),u={push:function(e){t.push(e),a()},filter:function(e){return t=t.filter(e),u}}}}).options=tM({async:!0,ssr:!1},d),x),tI=function(){},t_=b.forwardRef(function(e,t){var r,n,a,o,s=b.useRef(null),l=b.useState({onScrollCapture:tI,onWheelCapture:tI,onTouchMoveCapture:tI}),i=l[0],d=l[1],c=e.forwardProps,u=e.children,p=e.className,x=e.removeScrollBar,m=e.enabled,v=e.shards,h=e.sideCar,f=e.noRelative,g=e.noIsolation,k=e.inert,y=e.allowPinchZoom,w=e.as,j=e.gapMode,N=tP(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),C=(r=[s,t],n=function(e){return r.forEach(function(t){return tD(t,e)})},(a=(0,b.useState)(function(){return{value:null,callback:n,facade:{get current(){return a.value},set current(value){var e=a.value;e!==value&&(a.value=value,a.callback(value,e))}}}})[0]).callback=n,o=a.facade,tT(function(){var e=tH.get(o);if(e){var t=new Set(e),n=new Set(r),a=o.current;t.forEach(function(e){n.has(e)||tD(e,null)}),n.forEach(function(e){t.has(e)||tD(e,a)})}tH.set(o,r)},[r]),o),S=tM(tM({},N),i);return b.createElement(b.Fragment,null,m&&b.createElement(h,{sideCar:tF,removeScrollBar:x,shards:v,noRelative:f,noIsolation:g,inert:k,setCallbacks:d,allowPinchZoom:!!y,lockRef:s,gapMode:j}),c?b.cloneElement(b.Children.only(u),tM(tM({},S),{ref:C})):b.createElement(void 0===w?"div":w,tM({},S,{className:p,ref:C}),u))});t_.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},t_.classNames={fullWidth:tL,zeroRight:tO};var tB=function(e){var t=e.sideCar,r=tP(e,["sideCar"]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var n=t.read();if(!n)throw Error("Sidecar medium not found");return b.createElement(n,tM({},r))};tB.isSideCarExport=!0;var t$=function(){var e=0,t=null;return{add:function(r){if(0==e&&(t=function(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=h||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return t&&e.setAttribute("nonce",t),e}())){var n,a;(n=t).styleSheet?n.styleSheet.cssText=r:n.appendChild(document.createTextNode(r)),a=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(a)}e++},remove:function(){--e||!t||(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},tz=function(){var e=t$();return function(t,r){b.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&r])}},tU=function(){var e=tz();return function(t){return e(t.styles,t.dynamic),null}},tW={left:0,top:0,right:0,gap:0},tG=function(e){return parseInt(e||"",10)||0},tV=function(e){var t=window.getComputedStyle(document.body),r=t["padding"===e?"paddingLeft":"marginLeft"],n=t["padding"===e?"paddingTop":"marginTop"],a=t["padding"===e?"paddingRight":"marginRight"];return[tG(r),tG(n),tG(a)]},tq=function(e){if(void 0===e&&(e="margin"),"u"<typeof window)return tW;var t=tV(e),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-r+t[2]-t[0])}},tK=tU(),tX="data-scroll-locked",tY=function(e,t,r,n){var a=e.left,o=e.top,s=e.right,l=e.gap;return void 0===r&&(r="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(n,";\n padding-right: ").concat(l,"px ").concat(n,";\n }\n body[").concat(tX,"] {\n overflow: hidden ").concat(n,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(n,";"),"margin"===r&&"\n padding-left: ".concat(a,"px;\n padding-top: ").concat(o,"px;\n padding-right: ").concat(s,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(l,"px ").concat(n,";\n "),"padding"===r&&"padding-right: ".concat(l,"px ").concat(n,";")].filter(Boolean).join(""),"\n }\n \n .").concat(tO," {\n right: ").concat(l,"px ").concat(n,";\n }\n \n .").concat(tL," {\n margin-right: ").concat(l,"px ").concat(n,";\n }\n \n .").concat(tO," .").concat(tO," {\n right: 0 ").concat(n,";\n }\n \n .").concat(tL," .").concat(tL," {\n margin-right: 0 ").concat(n,";\n }\n \n body[").concat(tX,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(l,"px;\n }\n")},tJ=function(){var e=parseInt(document.body.getAttribute(tX)||"0",10);return isFinite(e)?e:0},tZ=function(){b.useEffect(function(){return document.body.setAttribute(tX,(tJ()+1).toString()),function(){var e=tJ()-1;e<=0?document.body.removeAttribute(tX):document.body.setAttribute(tX,e.toString())}},[])},tQ=function(e){var t=e.noRelative,r=e.noImportant,n=e.gapMode,a=void 0===n?"margin":n;tZ();var o=b.useMemo(function(){return tq(a)},[a]);return b.createElement(tK,{styles:tY(o,!t,a,r?"":"!important")})},t0=!1;if("u">typeof window)try{var t1=Object.defineProperty({},"passive",{get:function(){return t0=!0,!0}});window.addEventListener("test",t1,t1),window.removeEventListener("test",t1,t1)}catch(e){t0=!1}var t2=!!t0&&{passive:!1},t4=function(e,t){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return"hidden"!==r[t]&&(r.overflowY!==r.overflowX||"TEXTAREA"===e.tagName||"visible"!==r[t])},t3=function(e,t){var r=t.ownerDocument,n=t;do{if("u">typeof ShadowRoot&&n instanceof ShadowRoot&&(n=n.host),t5(e,n)){var a=t6(e,n);if(a[1]>a[2])return!0}n=n.parentNode}while(n&&n!==r.body)return!1},t5=function(e,t){return"v"===e?t4(t,"overflowY"):t4(t,"overflowX")},t6=function(e,t){return"v"===e?[t.scrollTop,t.scrollHeight,t.clientHeight]:[t.scrollLeft,t.scrollWidth,t.clientWidth]},t9=function(e,t,r,n,a){var o,s=(o=window.getComputedStyle(t).direction,"h"===e&&"rtl"===o?-1:1),l=s*n,i=r.target,d=t.contains(i),c=!1,u=l>0,p=0,x=0;do{if(!i)break;var m=t6(e,i),v=m[0],h=m[1]-m[2]-s*v;(v||h)&&t5(e,i)&&(p+=h,x+=v);var f=i.parentNode;i=f&&f.nodeType===Node.DOCUMENT_FRAGMENT_NODE?f.host:f}while(!d&&i!==document.body||d&&(t.contains(i)||t===i))return u&&(a&&1>Math.abs(p)||!a&&l>p)?c=!0:!u&&(a&&1>Math.abs(x)||!a&&-l>x)&&(c=!0),c},t8=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},t7=function(e){return[e.deltaX,e.deltaY]},re=function(e){return e&&"current"in e?e.current:e},rt=0,rr=[];let rn=(m=function(e){var t=b.useRef([]),r=b.useRef([0,0]),n=b.useRef(),a=b.useState(rt++)[0],o=b.useState(tU)[0],s=b.useRef(e);b.useEffect(function(){s.current=e},[e]),b.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(a));var t=(function(e,t,r){if(r||2==arguments.length)for(var n,a=0,o=t.length;a<o;a++)!n&&a in t||(n||(n=Array.prototype.slice.call(t,0,a)),n[a]=t[a]);return e.concat(n||Array.prototype.slice.call(t))})([e.lockRef.current],(e.shards||[]).map(re),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add("allow-interactivity-".concat(a))}),function(){document.body.classList.remove("block-interactivity-".concat(a)),t.forEach(function(e){return e.classList.remove("allow-interactivity-".concat(a))})}}},[e.inert,e.lockRef.current,e.shards]);var l=b.useCallback(function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!s.current.allowPinchZoom;var a,o=t8(e),l=r.current,i="deltaX"in e?e.deltaX:l[0]-o[0],d="deltaY"in e?e.deltaY:l[1]-o[1],c=e.target,u=Math.abs(i)>Math.abs(d)?"h":"v";if("touches"in e&&"h"===u&&"range"===c.type)return!1;var p=window.getSelection(),x=p&&p.anchorNode;if(x&&(x===c||x.contains(c)))return!1;var m=t3(u,c);if(!m)return!0;if(m?a=u:(a="v"===u?"h":"v",m=t3(u,c)),!m)return!1;if(!n.current&&"changedTouches"in e&&(i||d)&&(n.current=a),!a)return!0;var v=n.current||a;return t9(v,t,e,"h"===v?i:d,!0)},[]),i=b.useCallback(function(e){if(rr.length&&rr[rr.length-1]===o){var r="deltaY"in e?t7(e):t8(e),n=t.current.filter(function(t){var n;return t.name===e.type&&(t.target===e.target||e.target===t.shadowParent)&&(n=t.delta,n[0]===r[0]&&n[1]===r[1])})[0];if(n&&n.should){e.cancelable&&e.preventDefault();return}if(!n){var a=(s.current.shards||[]).map(re).filter(Boolean).filter(function(t){return t.contains(e.target)});(a.length>0?l(e,a[0]):!s.current.noIsolation)&&e.cancelable&&e.preventDefault()}}},[]),d=b.useCallback(function(e,r,n,a){var o={name:e,delta:r,target:n,should:a,shadowParent:function(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}(n)};t.current.push(o),setTimeout(function(){t.current=t.current.filter(function(e){return e!==o})},1)},[]),c=b.useCallback(function(e){r.current=t8(e),n.current=void 0},[]),u=b.useCallback(function(t){d(t.type,t7(t),t.target,l(t,e.lockRef.current))},[]),p=b.useCallback(function(t){d(t.type,t8(t),t.target,l(t,e.lockRef.current))},[]);b.useEffect(function(){return rr.push(o),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:p}),document.addEventListener("wheel",i,t2),document.addEventListener("touchmove",i,t2),document.addEventListener("touchstart",c,t2),function(){rr=rr.filter(function(e){return e!==o}),document.removeEventListener("wheel",i,t2),document.removeEventListener("touchmove",i,t2),document.removeEventListener("touchstart",c,t2)}},[]);var x=e.removeScrollBar,m=e.inert;return b.createElement(b.Fragment,null,m?b.createElement(o,{styles:"\n .block-interactivity-".concat(a," {pointer-events: none;}\n .allow-interactivity-").concat(a," {pointer-events: all;}\n")}):null,x?b.createElement(tQ,{noRelative:e.noRelative,gapMode:e.gapMode}):null)},tF.useMedium(m),tB);var ra=b.forwardRef(function(e,t){return b.createElement(t_,tM({},e,{ref:t,sideCar:rn}))});ra.classNames=t_.classNames;var ro=["Enter"," "],rs=["ArrowUp","PageDown","End"],rl=["ArrowDown","PageUp","Home",...rs],ri={ltr:[...ro,"ArrowRight"],rtl:[...ro,"ArrowLeft"]},rd={ltr:["ArrowLeft"],rtl:["ArrowRight"]},rc="Menu",[ru,rp,rx]=(0,C.createCollection)(rc),[rm,rv]=(0,w.createContextScope)(rc,[rx,tr,tk.createRovingFocusGroupScope]),rh=tr(),rf=(0,tk.createRovingFocusGroupScope)(),[rg,rb]=rm(rc),[rk,ry]=rm(rc),rw=e=>{let{__scopeMenu:t,open:r=!1,children:n,dir:a,onOpenChange:o,modal:s=!0}=e,l=rh(t),[i,d]=b.useState(null),c=b.useRef(!1),u=(0,E.useCallbackRef)(o),p=(0,S.useDirection)(a);return b.useEffect(()=>{let e=()=>{c.current=!0,document.addEventListener("pointerdown",t,{capture:!0,once:!0}),document.addEventListener("pointermove",t,{capture:!0,once:!0})},t=()=>c.current=!1;return document.addEventListener("keydown",e,{capture:!0}),()=>{document.removeEventListener("keydown",e,{capture:!0}),document.removeEventListener("pointerdown",t,{capture:!0}),document.removeEventListener("pointermove",t,{capture:!0})}},[]),(0,f.jsx)(to,{...l,children:(0,f.jsx)(rg,{scope:t,open:r,onOpenChange:u,content:i,onContentChange:d,children:(0,f.jsx)(rk,{scope:t,onClose:b.useCallback(()=>u(!1),[u]),isUsingKeyboardRef:c,dir:p,modal:s,children:n})})})};rw.displayName=rc;var rj=b.forwardRef((e,t)=>{let{__scopeMenu:r,...n}=e,a=rh(r);return(0,f.jsx)(tl,{...a,...n,ref:t})});rj.displayName="MenuAnchor";var rN="MenuPortal",[rC,rS]=rm(rN,{forceMount:void 0}),rE=e=>{let{__scopeMenu:t,forceMount:r,children:n,container:a}=e,o=rb(rN,t);return(0,f.jsx)(rC,{scope:t,forceMount:r,children:(0,f.jsx)(tb.Presence,{present:r||o.open,children:(0,f.jsx)(tg,{asChild:!0,container:a,children:n})})})};rE.displayName=rN;var rA="MenuContent",[rR,rM]=rm(rA),rP=b.forwardRef((e,t)=>{let r=rS(rA,e.__scopeMenu),{forceMount:n=r.forceMount,...a}=e,o=rb(rA,e.__scopeMenu),s=ry(rA,e.__scopeMenu);return(0,f.jsx)(ru.Provider,{scope:e.__scopeMenu,children:(0,f.jsx)(tb.Presence,{present:n||o.open,children:(0,f.jsx)(ru.Slot,{scope:e.__scopeMenu,children:s.modal?(0,f.jsx)(rO,{...a,ref:t}):(0,f.jsx)(rL,{...a,ref:t})})})})}),rO=b.forwardRef((e,t)=>{let r=rb(rA,e.__scopeMenu),n=b.useRef(null),a=(0,y.useComposedRefs)(t,n);return b.useEffect(()=>{let e=n.current;if(e)return tR(e)},[]),(0,f.jsx)(rT,{...e,ref:a,trapFocus:r.open,disableOutsidePointerEvents:r.open,disableOutsideScroll:!0,onFocusOutside:(0,k.composeEventHandlers)(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>r.onOpenChange(!1)})}),rL=b.forwardRef((e,t)=>{let r=rb(rA,e.__scopeMenu);return(0,f.jsx)(rT,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>r.onOpenChange(!1)})}),rD=((l=b.forwardRef((e,t)=>{let{children:r,...n}=e;if(b.isValidElement(r)){var a;let e,o,s=(a=r,(o=(e=Object.getOwnPropertyDescriptor(a.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?a.ref:(o=(e=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?a.props.ref:a.props.ref||a.ref),l=function(e,t){let r={...t};for(let n in t){let a=e[n],o=t[n];/^on[A-Z]/.test(n)?a&&o?r[n]=(...e)=>{let t=o(...e);return a(...e),t}:a&&(r[n]=a):"style"===n?r[n]={...a,...o}:"className"===n&&(r[n]=[a,o].filter(Boolean).join(" "))}return{...e,...r}}(n,r.props);return r.type!==b.Fragment&&(l.ref=t?(0,y.composeRefs)(t,s):s),b.cloneElement(r,l)}return b.Children.count(r)>1?b.Children.only(null):null})).displayName="MenuContent.ScrollLock.SlotClone",r=l,(n=b.forwardRef((e,t)=>{let{children:n,...a}=e,o=b.Children.toArray(n),s=o.find(tw);if(s){let e=s.props.children,n=o.map(t=>t!==s?t:b.Children.count(e)>1?b.Children.only(null):b.isValidElement(e)?e.props.children:null);return(0,f.jsx)(r,{...a,ref:t,children:b.isValidElement(e)?b.cloneElement(e,void 0,n):null})}return(0,f.jsx)(r,{...a,ref:t,children:n})})).displayName="MenuContent.ScrollLock.Slot",n),rT=b.forwardRef((e,t)=>{let{__scopeMenu:r,loop:n=!1,trapFocus:a,onOpenAutoFocus:o,onCloseAutoFocus:s,disableOutsidePointerEvents:l,onEntryFocus:i,onEscapeKeyDown:d,onPointerDownOutside:c,onFocusOutside:u,onInteractOutside:p,onDismiss:x,disableOutsideScroll:m,...v}=e,h=rb(rA,r),g=ry(rA,r),w=rh(r),j=rf(r),N=rp(r),[C,S]=b.useState(null),E=b.useRef(null),A=(0,y.useComposedRefs)(t,E,h.onContentChange),R=b.useRef(0),P=b.useRef(""),O=b.useRef(0),T=b.useRef(null),H=b.useRef("right"),F=b.useRef(0),_=m?ra:b.Fragment;b.useEffect(()=>()=>window.clearTimeout(R.current),[]),b.useEffect(()=>{let e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??D()),document.body.insertAdjacentElement("beforeend",e[1]??D()),L++,()=>{1===L&&document.querySelectorAll("[data-radix-focus-guard]").forEach(e=>e.remove()),L--}},[]);let B=b.useCallback(e=>{var t,r;return H.current===T.current?.side&&(t=e,!!(r=T.current?.area)&&function(e,t){let{x:r,y:n}=e,a=!1;for(let e=0,o=t.length-1;e<t.length;o=e++){let s=t[e],l=t[o],i=s.x,d=s.y,c=l.x,u=l.y;d>n!=u>n&&r<(c-i)*(n-d)/(u-d)+i&&(a=!a)}return a}({x:t.clientX,y:t.clientY},r))},[]);return(0,f.jsx)(rR,{scope:r,searchRef:P,onItemEnter:b.useCallback(e=>{B(e)&&e.preventDefault()},[B]),onItemLeave:b.useCallback(e=>{B(e)||(E.current?.focus(),S(null))},[B]),onTriggerLeave:b.useCallback(e=>{B(e)&&e.preventDefault()},[B]),pointerGraceTimerRef:O,onPointerGraceIntentChange:b.useCallback(e=>{T.current=e},[]),children:(0,f.jsx)(_,{...m?{as:rD,allowPinchZoom:!0}:void 0,children:(0,f.jsx)(I,{asChild:!0,trapped:a,onMountAutoFocus:(0,k.composeEventHandlers)(o,e=>{e.preventDefault(),E.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:s,children:(0,f.jsx)(M,{asChild:!0,disableOutsidePointerEvents:l,onEscapeKeyDown:d,onPointerDownOutside:c,onFocusOutside:u,onInteractOutside:p,onDismiss:x,children:(0,f.jsx)(tk.Root,{asChild:!0,...j,dir:g.dir,orientation:"vertical",loop:n,currentTabStopId:C,onCurrentTabStopIdChange:S,onEntryFocus:(0,k.composeEventHandlers)(i,e=>{g.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,f.jsx)(tu,{role:"menu","aria-orientation":"vertical","data-state":r9(h.open),"data-radix-menu-content":"",dir:g.dir,...w,...v,ref:A,style:{outline:"none",...v.style},onKeyDown:(0,k.composeEventHandlers)(v.onKeyDown,e=>{let t=e.target.closest("[data-radix-menu-content]")===e.currentTarget,r=e.ctrlKey||e.altKey||e.metaKey,n=1===e.key.length;if(t){var a;let t,o,s,l,i,d;"Tab"===e.key&&e.preventDefault(),!r&&n&&(a=e.key,t=P.current+a,o=N().filter(e=>!e.disabled),s=document.activeElement,l=o.find(e=>e.ref.current===s)?.textValue,i=function(e,t,r){var n;let a=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,o=r?e.indexOf(r):-1,s=(n=Math.max(o,0),e.map((t,r)=>e[(n+r)%e.length]));1===a.length&&(s=s.filter(e=>e!==r));let l=s.find(e=>e.toLowerCase().startsWith(a.toLowerCase()));return l!==r?l:void 0}(o.map(e=>e.textValue),t,l),d=o.find(e=>e.textValue===i)?.ref.current,function e(t){P.current=t,window.clearTimeout(R.current),""!==t&&(R.current=window.setTimeout(()=>e(""),1e3))}(t),d&&setTimeout(()=>d.focus()))}let o=E.current;if(e.target!==o||!rl.includes(e.key))return;e.preventDefault();let s=N().filter(e=>!e.disabled).map(e=>e.ref.current);rs.includes(e.key)&&s.reverse(),function(e){let t=document.activeElement;for(let r of e)if(r===t||(r.focus(),document.activeElement!==t))return}(s)}),onBlur:(0,k.composeEventHandlers)(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(R.current),P.current="")}),onPointerMove:(0,k.composeEventHandlers)(e.onPointerMove,ne(e=>{let t=e.target,r=F.current!==e.clientX;e.currentTarget.contains(t)&&r&&(H.current=e.clientX>F.current?"right":"left",F.current=e.clientX)}))})})})})})})});rP.displayName=rA;var rH=b.forwardRef((e,t)=>{let{__scopeMenu:r,...n}=e;return(0,f.jsx)(N.Primitive.div,{role:"group",...n,ref:t})});rH.displayName="MenuGroup";var rF=b.forwardRef((e,t)=>{let{__scopeMenu:r,...n}=e;return(0,f.jsx)(N.Primitive.div,{...n,ref:t})});rF.displayName="MenuLabel";var rI="MenuItem",r_="menu.itemSelect",rB=b.forwardRef((e,t)=>{let{disabled:r=!1,onSelect:n,...a}=e,o=b.useRef(null),s=ry(rI,e.__scopeMenu),l=rM(rI,e.__scopeMenu),i=(0,y.useComposedRefs)(t,o),d=b.useRef(!1);return(0,f.jsx)(r$,{...a,ref:i,disabled:r,onClick:(0,k.composeEventHandlers)(e.onClick,()=>{let e=o.current;if(!r&&e){let t=new CustomEvent(r_,{bubbles:!0,cancelable:!0});e.addEventListener(r_,e=>n?.(e),{once:!0}),(0,N.dispatchDiscreteCustomEvent)(e,t),t.defaultPrevented?d.current=!1:s.onClose()}}),onPointerDown:t=>{e.onPointerDown?.(t),d.current=!0},onPointerUp:(0,k.composeEventHandlers)(e.onPointerUp,e=>{d.current||e.currentTarget?.click()}),onKeyDown:(0,k.composeEventHandlers)(e.onKeyDown,e=>{let t=""!==l.searchRef.current;r||t&&" "===e.key||ro.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})});rB.displayName=rI;var r$=b.forwardRef((e,t)=>{let{__scopeMenu:r,disabled:n=!1,textValue:a,...o}=e,s=rM(rI,r),l=rf(r),i=b.useRef(null),d=(0,y.useComposedRefs)(t,i),[c,u]=b.useState(!1),[p,x]=b.useState("");return b.useEffect(()=>{let e=i.current;e&&x((e.textContent??"").trim())},[o.children]),(0,f.jsx)(ru.ItemSlot,{scope:r,disabled:n,textValue:a??p,children:(0,f.jsx)(tk.Item,{asChild:!0,...l,focusable:!n,children:(0,f.jsx)(N.Primitive.div,{role:"menuitem","data-highlighted":c?"":void 0,"aria-disabled":n||void 0,"data-disabled":n?"":void 0,...o,ref:d,onPointerMove:(0,k.composeEventHandlers)(e.onPointerMove,ne(e=>{n?s.onItemLeave(e):(s.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:(0,k.composeEventHandlers)(e.onPointerLeave,ne(e=>s.onItemLeave(e))),onFocus:(0,k.composeEventHandlers)(e.onFocus,()=>u(!0)),onBlur:(0,k.composeEventHandlers)(e.onBlur,()=>u(!1))})})})}),rz=b.forwardRef((e,t)=>{let{checked:r=!1,onCheckedChange:n,...a}=e;return(0,f.jsx)(rY,{scope:e.__scopeMenu,checked:r,children:(0,f.jsx)(rB,{role:"menuitemcheckbox","aria-checked":r8(r)?"mixed":r,...a,ref:t,"data-state":r7(r),onSelect:(0,k.composeEventHandlers)(a.onSelect,()=>n?.(!!r8(r)||!r),{checkForDefaultPrevented:!1})})})});rz.displayName="MenuCheckboxItem";var rU="MenuRadioGroup",[rW,rG]=rm(rU,{value:void 0,onValueChange:()=>{}}),rV=b.forwardRef((e,t)=>{let{value:r,onValueChange:n,...a}=e,o=(0,E.useCallbackRef)(n);return(0,f.jsx)(rW,{scope:e.__scopeMenu,value:r,onValueChange:o,children:(0,f.jsx)(rH,{...a,ref:t})})});rV.displayName=rU;var rq="MenuRadioItem",rK=b.forwardRef((e,t)=>{let{value:r,...n}=e,a=rG(rq,e.__scopeMenu),o=r===a.value;return(0,f.jsx)(rY,{scope:e.__scopeMenu,checked:o,children:(0,f.jsx)(rB,{role:"menuitemradio","aria-checked":o,...n,ref:t,"data-state":r7(o),onSelect:(0,k.composeEventHandlers)(n.onSelect,()=>a.onValueChange?.(r),{checkForDefaultPrevented:!1})})})});rK.displayName=rq;var rX="MenuItemIndicator",[rY,rJ]=rm(rX,{checked:!1}),rZ=b.forwardRef((e,t)=>{let{__scopeMenu:r,forceMount:n,...a}=e,o=rJ(rX,r);return(0,f.jsx)(tb.Presence,{present:n||r8(o.checked)||!0===o.checked,children:(0,f.jsx)(N.Primitive.span,{...a,ref:t,"data-state":r7(o.checked)})})});rZ.displayName=rX;var rQ=b.forwardRef((e,t)=>{let{__scopeMenu:r,...n}=e;return(0,f.jsx)(N.Primitive.div,{role:"separator","aria-orientation":"horizontal",...n,ref:t})});rQ.displayName="MenuSeparator";var r0=b.forwardRef((e,t)=>{let{__scopeMenu:r,...n}=e,a=rh(r);return(0,f.jsx)(tm,{...a,...n,ref:t})});r0.displayName="MenuArrow";var[r1,r2]=rm("MenuSub"),r4="MenuSubTrigger",r3=b.forwardRef((e,t)=>{let r=rb(r4,e.__scopeMenu),n=ry(r4,e.__scopeMenu),a=r2(r4,e.__scopeMenu),o=rM(r4,e.__scopeMenu),s=b.useRef(null),{pointerGraceTimerRef:l,onPointerGraceIntentChange:i}=o,d={__scopeMenu:e.__scopeMenu},c=b.useCallback(()=>{s.current&&window.clearTimeout(s.current),s.current=null},[]);return b.useEffect(()=>c,[c]),b.useEffect(()=>{let e=l.current;return()=>{window.clearTimeout(e),i(null)}},[l,i]),(0,f.jsx)(rj,{asChild:!0,...d,children:(0,f.jsx)(r$,{id:a.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":a.contentId,"data-state":r9(r.open),...e,ref:(0,y.composeRefs)(t,a.onTriggerChange),onClick:t=>{e.onClick?.(t),e.disabled||t.defaultPrevented||(t.currentTarget.focus(),r.open||r.onOpenChange(!0))},onPointerMove:(0,k.composeEventHandlers)(e.onPointerMove,ne(t=>{o.onItemEnter(t),!t.defaultPrevented&&(e.disabled||r.open||s.current||(o.onPointerGraceIntentChange(null),s.current=window.setTimeout(()=>{r.onOpenChange(!0),c()},100)))})),onPointerLeave:(0,k.composeEventHandlers)(e.onPointerLeave,ne(e=>{c();let t=r.content?.getBoundingClientRect();if(t){let n=r.content?.dataset.side,a="right"===n,s=t[a?"left":"right"],i=t[a?"right":"left"];o.onPointerGraceIntentChange({area:[{x:e.clientX+(a?-5:5),y:e.clientY},{x:s,y:t.top},{x:i,y:t.top},{x:i,y:t.bottom},{x:s,y:t.bottom}],side:n}),window.clearTimeout(l.current),l.current=window.setTimeout(()=>o.onPointerGraceIntentChange(null),300)}else{if(o.onTriggerLeave(e),e.defaultPrevented)return;o.onPointerGraceIntentChange(null)}})),onKeyDown:(0,k.composeEventHandlers)(e.onKeyDown,t=>{let a=""!==o.searchRef.current;e.disabled||a&&" "===t.key||ri[n.dir].includes(t.key)&&(r.onOpenChange(!0),r.content?.focus(),t.preventDefault())})})})});r3.displayName=r4;var r5="MenuSubContent",r6=b.forwardRef((e,t)=>{let r=rS(rA,e.__scopeMenu),{forceMount:n=r.forceMount,...a}=e,o=rb(rA,e.__scopeMenu),s=ry(rA,e.__scopeMenu),l=r2(r5,e.__scopeMenu),i=b.useRef(null),d=(0,y.useComposedRefs)(t,i);return(0,f.jsx)(ru.Provider,{scope:e.__scopeMenu,children:(0,f.jsx)(tb.Presence,{present:n||o.open,children:(0,f.jsx)(ru.Slot,{scope:e.__scopeMenu,children:(0,f.jsx)(rT,{id:l.contentId,"aria-labelledby":l.triggerId,...a,ref:d,align:"start",side:"rtl"===s.dir?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{s.isUsingKeyboardRef.current&&i.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:(0,k.composeEventHandlers)(e.onFocusOutside,e=>{e.target!==l.trigger&&o.onOpenChange(!1)}),onEscapeKeyDown:(0,k.composeEventHandlers)(e.onEscapeKeyDown,e=>{s.onClose(),e.preventDefault()}),onKeyDown:(0,k.composeEventHandlers)(e.onKeyDown,e=>{let t=e.currentTarget.contains(e.target),r=rd[s.dir].includes(e.key);t&&r&&(o.onOpenChange(!1),l.trigger?.focus(),e.preventDefault())})})})})})});function r9(e){return e?"open":"closed"}function r8(e){return"indeterminate"===e}function r7(e){return r8(e)?"indeterminate":e?"checked":"unchecked"}function ne(e){return t=>"mouse"===t.pointerType?e(t):void 0}r6.displayName=r5;var nt="DropdownMenu",[nr,nn]=(0,w.createContextScope)(nt,[rv]),na=rv(),[no,ns]=nr(nt),nl=e=>{let{__scopeDropdownMenu:t,children:r,dir:n,open:a,defaultOpen:o,onOpenChange:s,modal:l=!0}=e,i=na(t),d=b.useRef(null),[c,u]=(0,j.useControllableState)({prop:a,defaultProp:o??!1,onChange:s,caller:nt});return(0,f.jsx)(no,{scope:t,triggerId:(0,W.useId)(),triggerRef:d,contentId:(0,W.useId)(),open:c,onOpenChange:u,onOpenToggle:b.useCallback(()=>u(e=>!e),[u]),modal:l,children:(0,f.jsx)(rw,{...i,open:c,onOpenChange:u,dir:n,modal:l,children:r})})};nl.displayName=nt;var ni="DropdownMenuTrigger",nd=b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,disabled:n=!1,...a}=e,o=ns(ni,r),s=na(r);return(0,f.jsx)(rj,{asChild:!0,...s,children:(0,f.jsx)(N.Primitive.button,{type:"button",id:o.triggerId,"aria-haspopup":"menu","aria-expanded":o.open,"aria-controls":o.open?o.contentId:void 0,"data-state":o.open?"open":"closed","data-disabled":n?"":void 0,disabled:n,...a,ref:(0,y.composeRefs)(t,o.triggerRef),onPointerDown:(0,k.composeEventHandlers)(e.onPointerDown,e=>{!n&&0===e.button&&!1===e.ctrlKey&&(o.onOpenToggle(),o.open||e.preventDefault())}),onKeyDown:(0,k.composeEventHandlers)(e.onKeyDown,e=>{!n&&(["Enter"," "].includes(e.key)&&o.onOpenToggle(),"ArrowDown"===e.key&&o.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(e.key)&&e.preventDefault())})})})});nd.displayName=ni;var nc=e=>{let{__scopeDropdownMenu:t,...r}=e,n=na(t);return(0,f.jsx)(rE,{...n,...r})};nc.displayName="DropdownMenuPortal";var nu="DropdownMenuContent",np=b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=ns(nu,r),o=na(r),s=b.useRef(!1);return(0,f.jsx)(rP,{id:a.contentId,"aria-labelledby":a.triggerId,...o,...n,ref:t,onCloseAutoFocus:(0,k.composeEventHandlers)(e.onCloseAutoFocus,e=>{s.current||a.triggerRef.current?.focus(),s.current=!1,e.preventDefault()}),onInteractOutside:(0,k.composeEventHandlers)(e.onInteractOutside,e=>{let t=e.detail.originalEvent,r=0===t.button&&!0===t.ctrlKey,n=2===t.button||r;(!a.modal||n)&&(s.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});np.displayName=nu,b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(rH,{...a,...n,ref:t})}).displayName="DropdownMenuGroup",b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(rF,{...a,...n,ref:t})}).displayName="DropdownMenuLabel";var nx=b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(rB,{...a,...n,ref:t})});nx.displayName="DropdownMenuItem",b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(rz,{...a,...n,ref:t})}).displayName="DropdownMenuCheckboxItem",b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(rV,{...a,...n,ref:t})}).displayName="DropdownMenuRadioGroup",b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(rK,{...a,...n,ref:t})}).displayName="DropdownMenuRadioItem",b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(rZ,{...a,...n,ref:t})}).displayName="DropdownMenuItemIndicator";var nm=b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(rQ,{...a,...n,ref:t})});nm.displayName="DropdownMenuSeparator",b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(r0,{...a,...n,ref:t})}).displayName="DropdownMenuArrow",b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(r3,{...a,...n,ref:t})}).displayName="DropdownMenuSubTrigger",b.forwardRef((e,t)=>{let{__scopeDropdownMenu:r,...n}=e,a=na(r);return(0,f.jsx)(r6,{...a,...n,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}).displayName="DropdownMenuSubContent";let nv=["claude-code","codex","gemini","qwen-code"],nh={claudeCode:"pro",codex:"chatgpt",gemini:"oauth",qwenCode:"oauth"},nf={"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."}]},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."}]},"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."}]}};function ng(e){let t=e.trim().toLowerCase().replace(/[_\s]+/g,"-");return nv.includes(t)?t:null}function nb(e){return null!==ng(e)}function nk(e){let t=ng(e);return t?nf[t]:null}function ny(e,t){let r=nk(e);if(!r)return null;let n=t?.[r.accessKey];return"string"==typeof n&&r.accessOptions.some(e=>e.id===n)?n:r.defaultAccess}var nw={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},nj=b.default.createContext&&b.default.createContext(nw),nN=["attr","size","title"];function nC(){return(nC=Object.assign.bind()).apply(null,arguments)}function nS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function nE(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?nS(Object(r),!0).forEach(function(t){var n,a,o;n=e,a=t,o=r[t],(a=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(a))in n?Object.defineProperty(n,a,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[a]=o}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):nS(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function nA(e){return t=>b.default.createElement(nR,nC({attr:nE({},e.attr)},t),function e(t){return t&&t.map((t,r)=>b.default.createElement(t.tag,nE({key:r},t.attr),e(t.child)))}(e.child))}function nR(e){var t=t=>{var r,{attr:n,size:a,title:o}=e,s=function(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r={};for(var n in e)if(({}).hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],-1===t.indexOf(r)&&({}).propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}(e,nN),l=a||t.size||"1em";return t.className&&(r=t.className),e.className&&(r=(r?r+" ":"")+e.className),b.default.createElement("svg",nC({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},t.attr,n,s,{className:r,style:nE(nE({color:e.color||t.color},t.style),e.style),height:l,width:l,xmlns:"http://www.w3.org/2000/svg"}),o&&b.default.createElement("title",null,o),e.children)};return void 0!==nj?b.default.createElement(nj.Consumer,null,e=>t(e)):t(nw)}var nM=e.i(75254);let nP=(0,nM.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]),nO=(0,nM.default)("book-text",[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}],["path",{d:"M8 11h8",key:"vwpz6n"}],["path",{d:"M8 7h6",key:"1f0q6e"}]]),nL=(0,nM.default)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]]),nD=(0,nM.default)("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);var nT=e.i(43531),nH=e.i(64659),nF=e.i(74886);let nI=(0,nM.default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);var n_=e.i(75505),nB=e.i(90272);let n$=(0,nM.default)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]),nz=(0,nM.default)("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]),nU=(0,nM.default)("hand",[["path",{d:"M18 11V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2",key:"1fvzgz"}],["path",{d:"M14 10V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v2",key:"1kc0my"}],["path",{d:"M10 10.5V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2v8",key:"10h0bg"}],["path",{d:"M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15",key:"1s1gnw"}]]),nW=(0,nM.default)("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]);var nG=e.i(31278),nV=e.i(82735);let nq=(0,nM.default)("plug-zap",[["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z",key:"goz73y"}],["path",{d:"m2 22 3-3",key:"19mgm9"}],["path",{d:"M7.5 13.5 10 11",key:"7xgeeb"}],["path",{d:"M10.5 16.5 13 14",key:"10btkg"}],["path",{d:"m18 3-4 4h6l-4 4",key:"16psg9"}]]),nK=(0,nM.default)("refresh-ccw",[["path",{d:"M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"14sxne"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16",key:"1hlbsb"}],["path",{d:"M16 16h5v5",key:"ccwih5"}]]);var nX=e.i(55436);let nY=(0,nM.default)("sliders-horizontal",[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]),nJ=(0,nM.default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]),nZ=(0,nM.default)("volume-2",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]]),nQ=(0,nM.default)("volume-x",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]]);var n0=e.i(37727),n1=e.i(81633),n2=e.i(89965),n4=e.i(2004),n3=e.i(78818),n5=e.i(36832),n6=e.i(80235),n9=e.i(69242),n8=e.i(45241);let n7=["pro","max","api"],ae=["chatgpt","api"],at=["oauth","api"],ar=["oauth","api"];function an(e,t,r){return"string"==typeof e&&t.includes(e)?e:r}function aa(e){let t=!e||"object"!=typeof e||Array.isArray(e)?{}:{...e},r={...nh};return{claudeCode:an(t.claudeCode,n7,r.claudeCode),codex:an(t.codex,ae,r.codex),gemini:an(t.gemini,at,r.gemini),qwenCode:an(t.qwenCode,ar,r.qwenCode)}}let ao=(0,nM.default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);var as=e.i(55716),al=e.i(2758);let ai=(0,nM.default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);var ad=e.i(18620),ac=Symbol.for("react.lazy"),au=b[" use ".trim().toString()];function ap(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===ac&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var ax=((i=b.forwardRef((e,t)=>{let{children:r,...n}=e;if(ap(r)&&"function"==typeof au&&(r=au(r._payload)),b.isValidElement(r)){var a;let e,o,s=(a=r,(o=(e=Object.getOwnPropertyDescriptor(a.props,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?a.ref:(o=(e=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in e&&e.isReactWarning)?a.props.ref:a.props.ref||a.ref),l=function(e,t){let r={...t};for(let n in t){let a=e[n],o=t[n];/^on[A-Z]/.test(n)?a&&o?r[n]=(...e)=>{let t=o(...e);return a(...e),t}:a&&(r[n]=a):"style"===n?r[n]={...a,...o}:"className"===n&&(r[n]=[a,o].filter(Boolean).join(" "))}return{...e,...r}}(n,r.props);return r.type!==b.Fragment&&(l.ref=t?(0,y.composeRefs)(t,s):s),b.cloneElement(r,l)}return b.Children.count(r)>1?b.Children.only(null):null})).displayName="Slot.SlotClone",a=i,(o=b.forwardRef((e,t)=>{let{children:r,...n}=e;ap(r)&&"function"==typeof au&&(r=au(r._payload));let o=b.Children.toArray(r),s=o.find(av);if(s){let e=s.props.children,r=o.map(t=>t!==s?t:b.Children.count(e)>1?b.Children.only(null):b.isValidElement(e)?e.props.children:null);return(0,f.jsx)(a,{...n,ref:t,children:b.isValidElement(e)?b.cloneElement(e,void 0,r):null})}return(0,f.jsx)(a,{...n,ref:t,children:r})})).displayName="Slot.Slot",o),am=Symbol("radix.slottable");function av(e){return b.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===am}let ah={default:"border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",primary:"border-[var(--vk-border)] bg-[var(--vk-bg-active)] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",ghost:"border-transparent bg-transparent text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]",danger:"border-[var(--vk-red)]/40 bg-[color:color-mix(in_srgb,var(--vk-red)_18%,transparent)] text-[var(--vk-red)] hover:bg-[color:color-mix(in_srgb,var(--vk-red)_24%,transparent)]",outline:"border-[var(--vk-border)] bg-transparent text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]"},af={sm:"h-7 px-2.5 text-[12px] gap-1",md:"h-8 px-3 text-[13px] gap-1.5",lg:"h-9 px-3.5 text-[14px] gap-2",icon:"h-8 w-8 p-0"},ag=(0,b.forwardRef)(({variant:e="default",size:t="md",asChild:r,className:n,children:a,...o},s)=>(0,f.jsx)(r?ax:"button",{ref:s,className:(0,ad.cn)("inline-flex items-center justify-center rounded-[var(--radius-sm)] border font-medium","transition-colors duration-150","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--vk-orange)]","disabled:pointer-events-none disabled:opacity-45",ah[e],af[t],n),...o,children:a}));ag.displayName="Button";var ab=e.i(17442),ak=e.i(90993),ay=e.i(52808);function aw({projects:e,sessions:t,selectedProjectId:r,workspaceView:n,agentCount:a,onCreateWorkspace:o,onSelectProject:s,onSelectSession:l,onShowView:i}){let d=(0,b.useMemo)(()=>t.filter(e=>"archived"!==e.status),[t]),c=(0,b.useMemo)(()=>e.map(e=>{let t=d.filter(t=>t.projectId===e.id),r=t.filter(e=>"done"!==(0,ay.getAttentionLevel)(e)).length;return{id:e.id,description:e.description,branch:e.defaultBranch||"main",totalSessions:t.length,activeSessions:r}}).sort((e,t)=>t.activeSessions-e.activeSessions||t.totalSessions-e.totalSessions||e.id.localeCompare(t.id)),[e,d]),u=(0,b.useMemo)(()=>[...d].sort((e,t)=>new Date(t.lastActivityAt).getTime()-new Date(e.lastActivityAt).getTime()).slice(0,5),[d]),p=d.filter(e=>"done"!==(0,ay.getAttentionLevel)(e)).length,x=d.filter(e=>{let t=(0,ay.getAttentionLevel)(e);return"merge"===t||"respond"===t||"review"===t}).length,m=d.filter(e=>"merge"===(0,ay.getAttentionLevel)(e)).length,v=c.find(e=>e.id===r)??null,h=[{label:"Projects",value:String(e.length),icon:nB.FolderGit2},{label:"Active sessions",value:String(p),icon:al.Layers3},{label:"Need attention",value:String(x),icon:ai},{label:"Merge ready",value:String(m),icon:as.GitBranch}];return(0,f.jsx)("div",{className:"border-b border-[var(--vk-border)] bg-[linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0))]",children:(0,f.jsxs)("div",{className:"mx-auto flex w-full max-w-[1440px] flex-col gap-4 px-3 py-3 sm:px-4",children:[(0,f.jsxs)("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between",children:[(0,f.jsxs)("div",{className:"max-w-3xl",children:[(0,f.jsx)("p",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Frontend Control Surface"}),(0,f.jsx)("h1",{className:"mt-1 text-[24px] font-semibold leading-[1.05] tracking-[-0.04em] text-[var(--vk-text-strong)] sm:text-[30px]",children:"Operate workspaces, sessions, and agents from one surface."}),(0,f.jsx)("p",{className:"mt-2 max-w-2xl text-[13px] leading-6 text-[var(--vk-text-muted)]",children:"The current design language stays intact, but the workspace entrypoint now exposes status, recent activity, and project context without forcing you into a blank composer first."})]}),(0,f.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,f.jsxs)("div",{className:"inline-flex rounded-[6px] border border-[var(--vk-border)] p-1",children:[(0,f.jsx)("button",{type:"button",onClick:()=>i("chat"),className:`min-h-[32px] rounded-[4px] px-3 text-[13px] ${"chat"===n?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Chat launchpad"}),(0,f.jsx)("button",{type:"button",onClick:()=>i("board"),className:`min-h-[32px] rounded-[4px] px-3 text-[13px] ${"board"===n?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Board view"})]}),(0,f.jsx)(ag,{variant:"outline",size:"md",onClick:o,children:"Add workspace"})]})]}),(0,f.jsx)("div",{className:"grid gap-3 md:grid-cols-2 xl:grid-cols-4",children:h.map(({label:e,value:t,icon:r})=>(0,f.jsx)(ak.Card,{className:"bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_86%,transparent)]",children:(0,f.jsxs)(ak.CardContent,{className:"flex items-center gap-3 py-3",children:[(0,f.jsx)("span",{className:"inline-flex h-10 w-10 items-center justify-center rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:(0,f.jsx)(r,{className:"h-4 w-4"})}),(0,f.jsxs)("div",{children:[(0,f.jsx)("p",{className:"text-[11px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:e}),(0,f.jsx)("p",{className:"mt-1 text-[22px] font-semibold text-[var(--vk-text-strong)]",children:t})]})]})},e))}),(0,f.jsxs)("div",{className:"grid gap-3 xl:grid-cols-[1.35fr_0.95fr]",children:[(0,f.jsxs)(ak.Card,{children:[(0,f.jsxs)(ak.CardHeader,{className:"justify-between",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("p",{className:"text-[14px] font-semibold text-[var(--vk-text-strong)]",children:"Recent sessions"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Jump back into active work without hunting through the sidebar."})]}),(0,f.jsx)(ab.Badge,{variant:"outline",children:d.length})]}),(0,f.jsx)(ak.CardContent,{className:"space-y-2",children:0===u.length?(0,f.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"No sessions yet. Create one from the launchpad below."}):u.map(e=>{let t,r;return(0,f.jsxs)("button",{type:"button",onClick:()=>l(e.id),className:"flex w-full items-center gap-3 rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-3 text-left transition-colors hover:bg-[var(--vk-bg-hover)]",children:[(0,f.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("p",{className:"truncate text-[14px] font-medium text-[var(--vk-text-strong)]",children:e.summary?.trim()||e.projectId}),(0,f.jsx)(ab.Badge,{variant:"merge"===(t=(0,ay.getAttentionLevel)(e))?"success":"review"===t||"respond"===t?"warning":"errored"===e.status||"killed"===e.status?"error":"outline",children:"merge"===(r=(0,ay.getAttentionLevel)(e))?"Ready":"respond"===r?"Needs input":"review"===r?"Review":"pending"===r?"Pending":"done"===r?"Done":"Running"})]}),(0,f.jsxs)("p",{className:"mt-1 truncate text-[12px] text-[var(--vk-text-muted)]",children:[e.projectId,e.branch?` \xb7 ${e.branch}`:"",e.issueId?` \xb7 ${e.issueId}`:""]})]}),(0,f.jsxs)("div",{className:"shrink-0 text-right",children:[(0,f.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:function(e){let t=Date.now()-new Date(e).getTime();if(!Number.isFinite(t)||t<6e4)return"Updated now";let r=Math.floor(t/6e4);if(r<60)return`Updated ${r}m ago`;let n=Math.floor(r/60);if(n<24)return`Updated ${n}h ago`;let a=Math.floor(n/24);return`Updated ${a}d ago`}(e.lastActivityAt)}),(0,f.jsx)(ao,{className:"ml-auto mt-2 h-4 w-4 text-[var(--vk-text-muted)]"})]})]},e.id)})})]}),(0,f.jsxs)(ak.Card,{children:[(0,f.jsxs)(ak.CardHeader,{className:"justify-between",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("p",{className:"text-[14px] font-semibold text-[var(--vk-text-strong)]",children:"Project focus"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:v?`Selected: ${v.id}`:"Select a project to scope new work."})]}),(0,f.jsxs)(ab.Badge,{variant:"outline",children:[a," agents"]})]}),(0,f.jsxs)(ak.CardContent,{className:"space-y-2",children:[(0,f.jsxs)("button",{type:"button",onClick:()=>s(null),className:`flex w-full items-center justify-between rounded-[6px] border px-3 py-2 text-left ${null===r?"border-[var(--vk-border)] bg-[var(--vk-bg-hover)] text-[var(--vk-text-strong)]":"border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,f.jsx)("span",{children:"All projects"}),(0,f.jsx)(ab.Badge,{variant:"outline",children:d.length})]}),0===c.length?(0,f.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"No configured projects yet."}):c.slice(0,6).map(e=>(0,f.jsxs)("button",{type:"button",onClick:()=>s(e.id),className:`flex w-full items-start justify-between gap-3 rounded-[6px] border px-3 py-2.5 text-left ${r===e.id?"border-[var(--vk-border)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] bg-[var(--vk-bg-main)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,f.jsxs)("div",{className:"min-w-0",children:[(0,f.jsx)("p",{className:"truncate text-[13px] font-medium text-[var(--vk-text-strong)]",children:e.id}),(0,f.jsx)("p",{className:"truncate text-[12px] text-[var(--vk-text-muted)]",children:e.description?.trim()||`Default branch: ${e.branch}`})]}),(0,f.jsxs)("div",{className:"shrink-0 text-right",children:[(0,f.jsxs)("p",{className:"text-[12px] text-[var(--vk-text-strong)]",children:[e.activeSessions," active"]}),(0,f.jsxs)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:[e.totalSessions," total"]})]})]},e.id)),v?(0,f.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-3",children:[(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)(n$,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,f.jsx)("p",{className:"text-[13px] font-medium text-[var(--vk-text-strong)]",children:v.id})]}),(0,f.jsx)("p",{className:"mt-2 text-[12px] leading-5 text-[var(--vk-text-muted)]",children:v.description?.trim()||"This project is ready to launch work from chat or board mode."})]}):null]})]})]})]})})}let aj=["codex","gemini","qwen-code","droid","claude-code","amp","opencode","github-copilot","cursor-cli","ccr"],aN="claude-code",aC={codex:"Codex",gemini:"Gemini","qwen-code":"Qwen Code",droid:"Droid","claude-code":"Claude Code",amp:"Amp",opencode:"Opencode","github-copilot":"Copilot","cursor-cli":"Cursor Agent",ccr:"CCR"},aS={"claude-code":"https://claude.ai/",codex:"https://chatgpt.com/codex",gemini:"https://aistudio.google.com/","qwen-code":"https://chat.qwen.ai/",opencode:"https://opencode.ai/","github-copilot":"https://github.com/settings/copilot"},aE=(0,g.default)(()=>e.A(64816).then(e=>e.SessionDetail),{loadableGenerated:{modules:[31437]},loading:()=>(0,f.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading session..."})}),aA=(0,g.default)(()=>e.A(24629).then(e=>e.WorkspaceKanban),{loadableGenerated:{modules:[96933]},loading:()=>(0,f.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading board..."})});function aR(e){let t=(0,n1.normalizeAgentName)(e);return aC[t]?aC[t]:e.split(/[-_\s]+/g).filter(Boolean).map(e=>e[0]?.toUpperCase()+e.slice(1)).join(" ")}function aM(e){return e.taskRef?.trim()||e.id}function aP(e){let[t]=e.split(" - ");return(t??e).trim()}let aO=[{id:"general",label:"General",icon:nJ,implemented:!0},{id:"remote_access",label:"Remote Access",icon:nY,implemented:!0},{id:"repositories",label:"Repositories",icon:nB.FolderGit2,implemented:!0},{id:"organization",label:"Organization Settings",icon:nL,implemented:!0},{id:"projects",label:"Projects",icon:n$,implemented:!1},{id:"agents",label:"Agents",icon:nP,implemented:!0},{id:"mcp",label:"MCP Servers",icon:nq,implemented:!1},{id:"preferences",label:"Preferences",icon:nY,implemented:!1}],aL=[{id:"preferences",label:"Preferences",icon:nY,implemented:!0},{id:"repositories",label:"Repository",icon:nB.FolderGit2,implemented:!0}],aD=[{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"cursor",label:"Cursor"},{id:"windsurf",label:"Windsurf"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"antigravity",label:"Antigravity"},{id:"custom",label:"Custom"}],aT=[{id:"obsidian",label:"Obsidian"},{id:"vscode",label:"VS Code"},{id:"notion",label:"Notion"},{id:"typora",label:"Typora"},{id:"logseq",label:"Logseq"},{id:"custom",label:"Custom"}],aH=[{id:"abstract-sound-1",label:"Abstract Sound 1"},{id:"abstract-sound-2",label:"Abstract Sound 2"},{id:"abstract-sound-3",label:"Abstract Sound 3"},{id:"abstract-sound-4",label:"Abstract Sound 4"},{id:"cow-mooing",label:"Cow Mooing"},{id:"phone-vibration",label:"Phone Vibration"},{id:"rooster",label:"Rooster"}];function aF(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function aI(e,t){let r=aF(e),n=aF(r.notifications),a=n.soundFile,o="string"==typeof r.codingAgent&&r.codingAgent.trim().length>0?r.codingAgent.trim():t,s="string"==typeof r.ide&&r.ide.trim().length>0?r.ide.trim():"vscode",l="string"==typeof r.remoteSshHost&&r.remoteSshHost.trim().length>0?r.remoteSshHost.trim():"",i="string"==typeof r.remoteSshUser&&r.remoteSshUser.trim().length>0?r.remoteSshUser.trim():"",d="string"==typeof r.markdownEditor&&r.markdownEditor.trim().length>0?r.markdownEditor.trim():"obsidian";return{onboardingAcknowledged:!0===r.onboardingAcknowledged,codingAgent:o,ide:s,remoteSshHost:l,remoteSshUser:i,markdownEditor:d,modelAccess:aa(r.modelAccess),notifications:{soundEnabled:!1!==n.soundEnabled,soundFile:null===a?null:"string"==typeof a&&a.trim().length>0?a.trim():"abstract-sound-4"}}}function a_(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).map(e=>e.trim()).filter(Boolean).join("\n"):"string"!=typeof e?"":e.split(/[\n,]+/g).map(e=>e.trim()).filter(Boolean).join("\n")}function aB(e,t){let r=aF(e),n=aF(r.trustedHeaders),a=aF(r.roles),o=aF(t),s=r.defaultRole,l=o.role;return{requireAuth:!0===r.requireAuth,defaultRole:"viewer"===s||"admin"===s||"operator"===s?s:"operator",trustedHeaders:{enabled:!0===n.enabled,provider:"generic"===n.provider?"generic":"cloudflare-access",emailHeader:"string"==typeof n.emailHeader&&n.emailHeader.trim().length>0?n.emailHeader.trim():"Cf-Access-Authenticated-User-Email",jwtHeader:"string"==typeof n.jwtHeader&&n.jwtHeader.trim().length>0?n.jwtHeader.trim():"Cf-Access-Jwt-Assertion",teamDomain:"string"==typeof n.teamDomain&&n.teamDomain.trim().length>0?n.teamDomain.trim():"",audience:"string"==typeof n.audience&&n.audience.trim().length>0?n.audience.trim():""},roles:{viewers:a_(a.viewers),operators:a_(a.operators),admins:a_(a.admins),viewerDomains:a_(a.viewerDomains),operatorDomains:a_(a.operatorDomains),adminDomains:a_(a.adminDomains)},current:{authenticated:!0===o.authenticated,role:"viewer"===l||"operator"===l||"admin"===l?l:null,email:"string"==typeof o.email&&o.email.trim().length>0?o.email.trim():null,provider:"string"==typeof o.provider&&o.provider.trim().length>0?o.provider.trim():null}}}function a$(){return{catalogModel:"",customModel:"",reasoningEffort:""}}function az(e,t){return t[(0,n1.normalizeAgentName)(e)]??null}function aU(e){if(!e)return[];let t=[],r=new Set;for(let n of Object.values(e.modelsByAccess))if(Array.isArray(n))for(let e of n)!e?.id||r.has(e.id)||(r.add(e.id),t.push(e));return t}function aW(e,t,r){let n=az(e,r),a=ny(e,t),o=n&&a?n.modelsByAccess[a]??[]:[];return o.length>0?o:aU(n)}function aG(e,t,r,n){let a=az(e,r),o=ny(e,t);if(!a)return[];let s=n?.trim();return s&&a.reasoningOptionsByModel?.[s]?.length?a.reasoningOptionsByModel[s]??[]:o?a.reasoningOptionsByAccess?.[o]??[]:[]}function aV(e,t,r,n){return function(e,t,r){if(!e)return null;let n=t?.trim();return n&&e.defaultReasoningByModel?.[n]?e.defaultReasoningByModel[n]??null:r?e.defaultReasoningByAccess?.[r]??null:null}(az(e,r),n,ny(e,t))??""}function aq(e,t,r,n,a){let o,s,l=n?.trim()??"",i=a?.trim().toLowerCase()??"",d=aW(e,t,r),c=(o=az(e,r),s=ny(e,t),(o&&s?o.defaultModelByAccess[s]??null:null)??aU(o)[0]?.id??""),u=n=>{let a=aG(e,t,r,n);return i.length>0&&a.some(e=>e.id===i)?i:aV(e,t,r,n)};return l.length>0?d.some(e=>e.id===l)?{catalogModel:l,customModel:"",reasoningEffort:u(l)}:{catalogModel:c,customModel:l,reasoningEffort:u(l)}:{catalogModel:c,customModel:"",reasoningEffort:u(c)}}function aK(e){let t=e.customModel.trim();if(t.length>0)return t;let r=e.catalogModel.trim();return r.length>0?r:void 0}function aX(e){let t=e.reasoningEffort.trim().toLowerCase();return t.length>0?t:void 0}let aY="block h-4 w-4 shrink-0",aJ="block h-4 w-4 shrink-0 object-contain",aZ={vscode:{kind:"image",imageSrc:"/icons/ide/vscode-dark.svg",className:aJ},"vscode-insiders":{kind:"image",imageSrc:"/icons/ide/vscode-insiders.svg",className:aJ},cursor:{kind:"image",imageSrc:"/icons/ide/cursor-dark.svg",className:aJ},windsurf:{kind:"image",imageSrc:"/icons/ide/windsurf-dark.svg",className:aJ},"intellij-idea":{kind:"image",imageSrc:"/icons/ide/intellij.svg",className:aJ},zed:{kind:"image",imageSrc:"/icons/ide/zed-dark.svg",className:aJ},xcode:{kind:"image",imageSrc:"/icons/ide/xcode.svg",className:aJ},antigravity:{kind:"image",imageSrc:"/icons/ide/antigravity-dark.svg",className:aJ},custom:{kind:"icon",icon:nJ,className:`${aJ} text-[var(--vk-text-muted)]`}};function aQ({editorId:e,label:t}){let r=aZ[e];if(!r)return(0,f.jsx)(nJ,{className:`${aJ} text-[var(--vk-text-muted)]`});if("image"===r.kind)return(0,f.jsx)("img",{src:r.imageSrc,alt:`${t} logo`,className:r.className});let n=r.icon;return(0,f.jsx)(n,{className:r.className})}function a0(e){return JSON.stringify(e)}let a1={obsidian:{kind:"icon",icon:function(e){return nA({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M19.355 18.538a68.967 68.959 0 0 0 1.858-2.954.81.81 0 0 0-.062-.9c-.516-.685-1.504-2.075-2.042-3.362-.553-1.321-.636-3.375-.64-4.377a1.707 1.707 0 0 0-.358-1.05l-3.198-4.064a3.744 3.744 0 0 1-.076.543c-.106.503-.307 1.004-.536 1.5-.134.29-.29.6-.446.914l-.31.626c-.516 1.068-.997 2.227-1.132 3.59-.124 1.26.046 2.73.815 4.481.128.011.257.025.386.044a6.363 6.363 0 0 1 3.326 1.505c.916.79 1.744 1.922 2.415 3.5zM8.199 22.569c.073.012.146.02.22.02.78.024 2.095.092 3.16.29.87.16 2.593.64 4.01 1.055 1.083.316 2.198-.548 2.355-1.664.114-.814.33-1.735.725-2.58l-.01.005c-.67-1.87-1.522-3.078-2.416-3.849a5.295 5.295 0 0 0-2.778-1.257c-1.54-.216-2.952.19-3.84.45.532 2.218.368 4.829-1.425 7.531zM5.533 9.938c-.023.1-.056.197-.098.29L2.82 16.059a1.602 1.602 0 0 0 .313 1.772l4.116 4.24c2.103-3.101 1.796-6.02.836-8.3-.728-1.73-1.832-3.081-2.55-3.831zM9.32 14.01c.615-.183 1.606-.465 2.745-.534-.683-1.725-.848-3.233-.716-4.577.154-1.552.7-2.847 1.235-3.95.113-.235.223-.454.328-.664.149-.297.288-.577.419-.86.217-.47.379-.885.46-1.27.08-.38.08-.72-.014-1.043-.095-.325-.297-.675-.68-1.06a1.6 1.6 0 0 0-1.475.36l-4.95 4.452a1.602 1.602 0 0 0-.513.952l-.427 2.83c.672.59 2.328 2.316 3.335 4.711.09.21.175.43.253.653z"},child:[]}]})(e)},className:`${aY} text-[#8b5cf6]`},vscode:{kind:"icon",icon:function(e){return nA({tag:"svg",attr:{viewBox:"0 0 16 16",fill:"currentColor"},child:[{tag:"path",attr:{d:"M10.8634 13.9195C10.6568 14.0195 10.4233 14.0246 10.2185 13.9444C10.1162 13.9044 10.021 13.843 9.93997 13.7614L4.81616 9.06268L2.58433 10.7656C2.37657 10.9241 2.08597 10.9111 1.89301 10.7347L1.17719 10.0802C0.941168 9.86437 0.940898 9.49112 1.17661 9.27496L3.11213 7.5L1.17661 5.72504C0.940898 5.50888 0.941168 5.13563 1.17719 4.91982L1.89301 4.2653C2.08597 4.08887 2.37657 4.07588 2.58433 4.2344L4.81616 5.93732L9.93997 1.23855C9.97037 1.20797 10.0028 1.18023 10.0368 1.15538C10.2748 0.981429 10.5922 0.949298 10.8634 1.08048L13.5399 2.37507C13.8212 2.5111 14 2.79721 14 3.11109V8H10.752V4.53356L6.86419 7.5L10.752 10.4664V8H14V11.8889C14 12.2028 13.8211 12.4889 13.5399 12.625L10.8634 13.9195Z"},child:[]}]})(e)},className:`${aY} text-[#22a3f5]`},notion:{kind:"icon",icon:function(e){return nA({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.326L17.86 1.968c-.42-.326-.981-.7-2.055-.607L3.01 2.295c-.466.046-.56.28-.374.466zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952L12.21 19s0 .84-1.168.84l-3.222.186c-.093-.186 0-.653.327-.746l.84-.233V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279v-6.44l-1.215-.139c-.093-.514.28-.887.747-.933zM1.936 1.035l13.31-.98c1.634-.14 2.055-.047 3.082.7l4.249 2.986c.7.513.934.653.934 1.213v16.378c0 1.026-.373 1.634-1.68 1.726l-15.458.934c-.98.047-1.448-.093-1.962-.747l-3.129-4.06c-.56-.747-.793-1.306-.793-1.96V2.667c0-.839.374-1.54 1.447-1.632z"},child:[]}]})(e)},className:`${aY} text-white`},logseq:{kind:"image",imageSrc:"/icons/editors/logseq.svg",className:`${aY} object-contain`},typora:{kind:"image",imageSrc:"/icons/editors/typora-32.png",className:`${aY} rounded-[3px] bg-white/90 p-[1px] object-contain`},custom:{kind:"icon",icon:nJ,className:`${aY} text-[var(--vk-text-muted)]`}};function a2({editorId:e}){let t=a1[e];if(!t)return(0,f.jsx)(nO,{className:`${aY} text-[var(--vk-text-muted)]`});if("image"===t.kind)return(0,f.jsx)("img",{src:t.imageSrc,alt:"",className:t.className});let r=t.icon;return(0,f.jsx)(r,{className:t.className})}function a4({agent:e,modelAccess:t,runtimeModelCatalogs:r,selection:n,onChange:a,compact:o=!1}){let s,l;if(!nb(e))return null;let i=nk(e),d=aW(e,t,r),c=aG(e,t,r,aK(n)??n.catalogModel),u=(s=nk(e),l=ny(e,t),s&&l?s.accessOptions.find(e=>e.id===l)?.label??null:null);return i?(0,f.jsxs)("div",{className:o?"grid gap-3 md:grid-cols-3":"space-y-3",children:[(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Model"}),(0,f.jsxs)("select",{value:n.catalogModel,disabled:0===d.length,onChange:o=>{let s=o.target.value,l=aG(e,t,r,s);a({...n,catalogModel:s,reasoningEffort:l.some(e=>e.id===n.reasoningEffort)?n.reasoningEffort:aV(e,t,r,s)})},className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60",children:[0===d.length&&(0,f.jsx)("option",{value:"",children:"No runtime models detected"}),d.map(e=>(0,f.jsx)("option",{value:e.id,children:e.label},e.id))]}),(0,f.jsxs)("p",{className:"mt-1 text-[11px] text-[var(--vk-text-muted)]",children:[u?`Filtered for ${u}.`:"Filtered for your current access preference."," Leave custom override blank to use this selection."]})]}),c.length>0&&(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Reasoning Effort"}),(0,f.jsx)("select",{value:n.reasoningEffort,onChange:e=>{a({...n,reasoningEffort:e.target.value})},className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:c.map(e=>(0,f.jsx)("option",{value:e.id,children:e.label},e.id))}),(0,f.jsx)("p",{className:"mt-1 text-[11px] text-[var(--vk-text-muted)]",children:"Choose how much deliberate reasoning the CLI should use before it acts."})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Custom Model Override"}),(0,f.jsx)("input",{value:n.customModel,onChange:o=>{let s=o.target.value,l=s.trim()||n.catalogModel,i=aG(e,t,r,l);a({...n,customModel:s,reasoningEffort:i.some(e=>e.id===n.reasoningEffort)?n.reasoningEffort:aV(e,t,r,l)})},placeholder:function(e,t){let r=az(e,t);if(r?.customModelPlaceholder.trim())return r.customModelPlaceholder;let n=nk(e)?.label??"agent";return`Enter exact ${n} model id`}(e,r),className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("p",{className:"mt-1 text-[11px] text-[var(--vk-text-muted)]",children:"Optional. Use this to force an exact model id from the installed CLI when you want to override the detected list."})]})]}):null}function a3(){let[e,t]=(0,b.useState)(null),{sessions:r,error:n,refresh:a}=(0,n2.useSessions)(e),{projects:o,error:s,refresh:l}=(0,n4.useConfig)(),{agents:i}=(0,n3.useAgents)(),[d,c]=(0,b.useState)(null),[u,p]=(0,b.useState)(!0),[x,m]=(0,b.useState)(""),[v,h]=(0,b.useState)(""),[g,k]=(0,b.useState)(a$()),[y,w]=(0,b.useState)(!1),[j,N]=(0,b.useState)(null),[C,S]=(0,b.useState)(!1),[E,A]=(0,b.useState)(!1),[R,M]=(0,b.useState)(null),[P,O]=(0,b.useState)("chat"),[L,D]=(0,b.useState)(null),[T,H]=(0,b.useState)(!0),[F,I]=(0,b.useState)(!1),[_,B]=(0,b.useState)(null),[$,z]=(0,b.useState)(!1),[U,W]=(0,b.useState)(!1),G=j??s??n??_;(0,b.useEffect)(()=>{window.innerWidth<1024&&p(!1)},[]),(0,b.useEffect)(()=>{if(0===o.length){null!==e&&t(null);return}e&&o.some(t=>t.id===e)||t(o[0]?.id??null)},[o,e]),(0,b.useEffect)(()=>{d&&(r.some(e=>e.id===d)||c(null))},[r,d]);let V=(0,b.useMemo)(()=>r.find(e=>e.id===d)??null,[r,d]),q=(0,b.useMemo)(()=>o.find(t=>t.id===e)??null,[o,e]),K=(0,b.useMemo)(()=>V?[V.projectId,V.branch].filter(Boolean).join(" · "):q?[q.id,q.defaultBranch||"main"].filter(Boolean).join(" · "):"All Projects",[q,V]),X=(0,b.useMemo)(()=>{let e=Array.isArray(i)?i:[],t=new Set;for(let r of e)r.name&&t.add(r.name);for(let e of o)e.agent&&t.add(e.agent);return L?.codingAgent&&t.add(L.codingAgent),v&&t.add(v),0===t.size&&t.add(L?.codingAgent||aN),[...t]},[i,L?.codingAgent,o,v]),Y=(0,b.useMemo)(()=>{let e={};for(let t of Array.isArray(i)?i:[])t.name&&(e[(0,n1.normalizeAgentName)(t.name)]={name:t.name,ready:!0===t.ready,installed:!1!==t.installed,configured:!1!==t.configured,homepage:"string"==typeof t.homepage?t.homepage:null,description:"string"==typeof t.description?t.description:null});return e},[i]),J=(0,b.useMemo)(()=>{let e={};for(let t of Array.isArray(i)?i:[])t.name&&t.runtimeModelCatalog&&(e[(0,n1.normalizeAgentName)(t.name)]=t.runtimeModelCatalog);return e},[i]),Z=(0,b.useCallback)(e=>{let t=(0,n1.normalizeAgentName)(e),r=Y[t]?.homepage||aS[t];r&&window.open(r,"_blank","noopener,noreferrer")},[Y]);async function Q(e,t){I(!0),B(null);try{let r=await fetch("/api/preferences",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),n=await r.json().catch(()=>null);if(!r.ok)throw Error(n?.error??`Failed to save preferences: ${r.status}`);let a=aI(n?.preferences,e.codingAgent||aN);return D(a),h(a.codingAgent),t?.closeDialog!==!1&&z(!1),!0}catch(e){return B(e instanceof Error?e.message:"Failed to save preferences"),!1}finally{I(!1)}}(0,b.useEffect)(()=>{let e=!1;return async function(){H(!0);try{let t=await fetch("/api/preferences"),r=await t.json().catch(()=>null);if(!t.ok)throw Error(r?.error??`Failed to load preferences: ${t.status}`);if(e)return;let n=aI(r?.preferences,aN);D(n),B(null)}catch(t){if(e)return;D(aI(null,aN)),B(t instanceof Error?t.message:"Failed to load preferences")}finally{e||H(!1)}}(),()=>{e=!0}},[]),(0,b.useEffect)(()=>{L&&(v||h(L.codingAgent))},[L,v]),(0,b.useEffect)(()=>{T||L&&(L.onboardingAcknowledged||z(!0))},[L,T]),(0,b.useEffect)(()=>{if(v)return;let t=o.find(t=>t.id===e)?.agent;t&&h(t)},[o,v,e]),(0,b.useEffect)(()=>{if(0!==X.length&&(!v||!X.includes(v))){let e=L?.codingAgent||aN;h(X.includes(e)?e:X[0]??aN)}},[X,L?.codingAgent,v]),(0,b.useEffect)(()=>{let e=v||q?.agent||L?.codingAgent||aN,t=q&&(0,n1.normalizeAgentName)(q.agent)===(0,n1.normalizeAgentName)(e)?q.agentModel:null,r=q&&(0,n1.normalizeAgentName)(q.agent)===(0,n1.normalizeAgentName)(e)?q.agentReasoningEffort:null;k(aq(e,L?.modelAccess??aa(null),J,t,r))},[L?.modelAccess,L?.codingAgent,J,v,q]);let ee=(0,b.useCallback)(()=>p(e=>!e),[]),et=(0,b.useCallback)(()=>{window.innerWidth<1024&&p(!1)},[]),er=(0,b.useCallback)(()=>{window.innerWidth<1024?p(!1):p(!0)},[]),en=(0,b.useCallback)(()=>{M(null),S(!0),er()},[er]);(0,b.useEffect)(()=>{U&&!$&&(W(!1),en())},[U,$]);let ea=(0,b.useCallback)(async t=>{let r=x.trim();if(!r)return;let n=aK(g),s=aX(g),l=t?.projectId??e??o[0]?.id;if(!l)return void N("No project is configured in conductor.yaml");let i=v||aN,d=Y[(0,n1.normalizeAgentName)(i)]??null;if(d&&!d.ready){N(d.installed?`${aR(i)} is not ready yet. Finish setup or authentication and try again.`:`${aR(i)} is not installed on this machine yet. Open setup and try again.`),Z(i);return}w(!0),N(null);try{let e=await fetch("/api/spawn",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:l,prompt:r,...t?.issueId?.trim()?{issueId:t.issueId.trim()}:{},agent:i,...t?.branch?{branch:t.branch}:{},...t?.baseBranch?{baseBranch:t.baseBranch}:{},..."boolean"==typeof t?.useWorktree?{useWorktree:t.useWorktree}:{},...t?.permissionMode?{permissionMode:t.permissionMode}:{},...n?{model:n}:{},...s?{reasoningEffort:s}:{}})}),o=await e.json().catch(()=>null);if(!e.ok)throw Error(o?.error??`Failed to create workspace: ${e.status}`);if(!o?.session?.id)throw Error("Session created but response is missing session id");m(""),O("chat"),er(),await a(),c(o.session.id)}catch(e){N(e instanceof Error?e.message:"Failed to create workspace")}finally{w(!1)}},[Y,g,Z,o,x,a,v,e,er]),eo=(0,b.useCallback)(async e=>{let t=await fetch(`/api/sessions/${encodeURIComponent(e)}/archive`,{method:"POST"}),r=await t.json().catch(()=>null);if(404===t.status&&(t=await fetch(`/api/sessions/${encodeURIComponent(e)}/actions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"archive"})}),r=await t.json().catch(()=>null)),!t.ok)throw Error(r?.error??`Failed to archive session: ${t.status}`);d===e&&c(null),await a()},[a,d]),es=(0,b.useCallback)(async e=>{A(!0),M(null);try{let r=await fetch("/api/workspaces",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),n=await r.json().catch(()=>null);if(!r.ok)throw Error(n?.error??`Failed to add workspace: ${r.status}`);let a=n?.project?.id;if(!a)throw Error("Workspace created but response is missing project id");await l(),t(a),c(null),m(""),er(),S(!1)}catch(e){M(e instanceof Error?e.message:"Failed to add workspace")}finally{A(!1)}},[l,er]),el=!T&&!!L&&!L.onboardingAcknowledged,ei=L??aI(null,v||aN),ed=v||ei.codingAgent||aN,ec=(0,b.useCallback)(e=>{t(e),c(null),h((e?o.find(t=>t.id===e)?.agent:L?.codingAgent)||aN),et()},[et,L?.codingAgent,o]),eu=(0,b.useCallback)(e=>{c(e),et()},[et]),ep=(0,b.useCallback)(()=>{z(!0)},[]),ex=(0,b.useCallback)(()=>{E||S(!1)},[E]),em=(0,b.useCallback)(()=>{F||el||(z(!1),B(null))},[el,F]),ev=(0,b.useMemo)(()=>(0,f.jsx)(n8.WorkspaceSidebarPanel,{orgLabel:"conductor-oss",projects:o,selectedProjectId:e,onSelectProject:ec,sessions:r,selectedSessionId:d,onSelectSession:eu,onArchiveSession:eo,onCreateWorkspace:en}),[r,eo,ec,eu,en,o,e,d]),eh=(0,b.useMemo)(()=>"board"===P?(0,f.jsx)(aA,{projectId:e,defaultAgent:ed,agentOptions:X}):(0,f.jsx)(a9,{prompt:x,setPrompt:m,selectedAgent:ed,setSelectedAgent:h,agentStates:Y,modelSelection:g,setModelSelection:k,modelAccess:ei.modelAccess,runtimeModelCatalogs:J,agentOptions:X,projects:o,selectedProjectId:e,onSelectProject:t,projectLabel:e??"All projects",hasProject:o.length>0,creating:y,error:G,onOpenAddWorkspace:en,onOpenAgentSetup:Z,onCreate:ea}),[X,Y,y,ea,g,Z,en,o,x,ed,ei.modelAccess,J,e,m,G,P]),ef=(0,b.useMemo)(()=>d?(0,f.jsx)(aE,{sessionId:d}):null!==e?(0,f.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:eh}):(0,f.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,f.jsx)(aw,{projects:o,sessions:r,selectedProjectId:e,workspaceView:P,agentCount:X.length,onCreateWorkspace:en,onSelectProject:ec,onSelectSession:eu,onShowView:O}),(0,f.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:eh})]}),[r,d,eh,ec,eu,en,o,e,P,X.length]);return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)(n5.AppShell,{sidebarOpen:u,onToggleSidebar:ee,sidebar:ev,children:[(0,f.jsx)(n6.TopBar,{title:K,onOpenPreferences:ep}),(0,f.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:ef})]}),C?(0,f.jsx)(a5,{open:C,onClose:ex,onCreate:es,creating:E,error:R,defaultAgent:ed,agentOptions:X}):null,$||el?(0,f.jsx)(a7,{open:$,mode:el?"onboarding":"settings",creating:F,error:_,current:ei,projectCount:o.length,agentOptions:X,runtimeModelCatalogs:J,onRepositoriesChanged:l,onOnboardingComplete:({needsProject:e})=>{e&&W(!0)},onClose:em,onSave:Q}):null]})}function a5({open:e,onClose:t,onCreate:r,creating:n,error:a,defaultAgent:o,agentOptions:s}){let[l,i]=(0,b.useState)("git"),[d,c]=(0,b.useState)(""),[u,p]=(0,b.useState)(""),[x,m]=(0,b.useState)(""),[v,h]=(0,b.useState)("main"),[g,k]=(0,b.useState)(o),[y,w]=(0,b.useState)(!0),[j,N]=(0,b.useState)(!0),[C,S]=(0,b.useState)([]),[E,A]=(0,b.useState)(!1),[R,M]=(0,b.useState)(null),[P,O]=(0,b.useState)(""),[L,D]=(0,b.useState)(""),[T,H]=(0,b.useState)(!1),[F,I]=(0,b.useState)("local"),[_,B]=(0,b.useState)([]),[$,z]=(0,b.useState)(!1),[U,W]=(0,b.useState)(null);(0,b.useEffect)(()=>{e&&(i("git"),c(""),p(""),m(""),h("main"),N(!0),w(!0),k(o),S([]),M(null),O(""),D(""),B([]),W(null),z(!1),H(!1),I("local"))},[o,e]),(0,b.useEffect)(()=>{!e||"local"!==l||x.trim().length>0||(I("local"),H(!0))},[l,e,x]);let G=(0,b.useMemo)(()=>{if(0===P.trim().length)return C;let e=P.trim().toLowerCase();return C.filter(t=>t.fullName.toLowerCase().includes(e)||t.name.toLowerCase().includes(e)||t.defaultBranch.toLowerCase().includes(e))},[P,C]),V=(0,b.useMemo)(()=>{let e=[...new Set(s)];0===e.length&&e.push(o||aN);let t=new Map(aj.map((e,t)=>[e,t]));return e.sort((e,r)=>{let n=t.get((0,n1.normalizeAgentName)(e))??Number.MAX_SAFE_INTEGER,a=t.get((0,n1.normalizeAgentName)(r))??Number.MAX_SAFE_INTEGER;return n!==a?n-a:aR(e).localeCompare(aR(r))})},[s,o]);(0,b.useEffect)(()=>{V.includes(g)||k(V[0]??aN)},[g,V]);let q=async()=>{A(!0),M(null);try{let e=P.trim(),t=e.length>0?`?q=${encodeURIComponent(e)}`:"",r=await fetch(`/api/github/repos${t}`),n=await r.json().catch(()=>null);if(!r.ok)throw Error(n?.error??`Failed to load GitHub repositories (${r.status})`);S(Array.isArray(n?.repos)?n.repos:[])}catch(e){S([]),M(e instanceof Error?e.message:"Failed to load GitHub repositories")}finally{A(!1)}},K=async e=>{let t=e?.gitUrl??("git"===l?u.trim():""),r=e?.path??("local"===l?x.trim():"");if(0===t.length&&0===r.length)return void W("git"===l?"Enter a Git URL first.":"Select a local repository path first.");z(!0),W(null);try{let e=new URLSearchParams;t.length>0&&e.set("gitUrl",t),r.length>0&&e.set("path",r);let n=await fetch(`/api/workspaces/branches?${e.toString()}`),a=await n.json().catch(()=>null);if(!n.ok)throw Error(a?.error??`Failed to load branches (${n.status})`);let o=Array.isArray(a?.branches)?a.branches.filter(e=>"string"==typeof e&&e.trim().length>0):[];B(o);let s="string"==typeof a?.defaultBranch&&a.defaultBranch.trim().length>0?a.defaultBranch.trim():o[0]??null;s&&(0===v.trim().length||!o.includes(v))&&h(s)}catch(e){B([]),W(e instanceof Error?e.message:"Failed to load branches")}finally{z(!1)}},X=async e=>{D(e);let t=C.find(t=>t.httpsUrl===e);t&&(p(t.httpsUrl),h(t.defaultBranch||"main"),0===d.trim().length&&c(t.name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||d),await K({gitUrl:t.httpsUrl}))},Y=e=>{I(e),H(!0)};if(!e)return null;let J="git"===l?u.trim().length>0&&v.trim().length>0:x.trim().length>0&&v.trim().length>0;async function Z(e){if(e.preventDefault(),!J||n)return;let t="git"===l?{mode:l,projectId:d.trim()||void 0,agent:g,defaultBranch:v.trim(),useWorktree:y,gitUrl:u.trim(),path:x.trim()||void 0}:{mode:l,projectId:d.trim()||void 0,agent:g,defaultBranch:v.trim(),useWorktree:y,path:x.trim(),initializeGit:j};await r(t)}return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("div",{className:"fixed inset-0 z-[80] flex items-start justify-center overflow-y-auto bg-black/65 px-3 py-3 sm:items-center sm:py-0",onClick:()=>{n||T||t()},role:"presentation",children:(0,f.jsxs)("form",{onSubmit:Z,onClick:e=>e.stopPropagation(),className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[760px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)]",children:[(0,f.jsxs)("header",{className:"flex items-center border-b border-[var(--vk-border)] px-4 py-3",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("h2",{className:"text-[18px] leading-[22px] text-[var(--vk-text-strong)]",children:"Add Workspace"}),(0,f.jsx)("p",{className:"pt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Select a repository with a folder picker, then choose the target branch."})]}),(0,f.jsx)("button",{type:"button",onClick:t,disabled:n,"aria-label":"Close dialog",className:"ml-auto inline-flex h-8 w-8 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:(0,f.jsx)(n0.X,{className:"h-4 w-4"})})]}),(0,f.jsxs)("div",{className:"min-h-0 flex-1 space-y-4 overflow-y-auto px-4 py-4",children:[(0,f.jsxs)("div",{className:"inline-flex rounded-[4px] border border-[var(--vk-border)] p-1",children:[(0,f.jsx)("button",{type:"button",onClick:()=>i("git"),className:`rounded-[3px] px-3 py-1.5 text-[13px] ${"git"===l?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Git Repository"}),(0,f.jsx)("button",{type:"button",onClick:()=>i("local"),className:`rounded-[3px] px-3 py-1.5 text-[13px] ${"local"===l?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Local Folder"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Project ID (optional)"}),(0,f.jsx)("input",{value:d,onChange:e=>c(e.target.value),placeholder:"auto-derived from repo/folder",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),"git"===l?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)("div",{className:"rounded-[4px] border border-[var(--vk-border)] p-3",children:[(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)(nz,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,f.jsx)("span",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"GitHub Integration"})]}),(0,f.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-2",children:[(0,f.jsx)("button",{type:"button",onClick:q,disabled:E,className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:E?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(nG.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Loading repos..."]}):"Load My GitHub Repositories"}),(0,f.jsxs)("div",{className:"relative min-w-[220px] flex-1",children:[(0,f.jsx)(nX.Search,{className:"pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[var(--vk-text-muted)]"}),(0,f.jsx)("input",{value:P,onChange:e=>O(e.target.value),placeholder:"Filter repos...",className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent pl-7 pr-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),G.length>0&&(0,f.jsxs)("label",{className:"mt-2 block",children:[(0,f.jsx)("span",{className:"mb-1 block text-[11px] text-[var(--vk-text-muted)]",children:"Choose repository"}),(0,f.jsxs)("select",{value:L,onChange:e=>{X(e.target.value)},className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:[(0,f.jsx)("option",{value:"",children:"Select a GitHub repo..."}),G.map(e=>(0,f.jsxs)("option",{value:e.httpsUrl,children:[e.fullName," (",e.defaultBranch,")"]},e.httpsUrl))]})]}),R&&(0,f.jsx)("p",{className:"mt-2 text-[11px] text-[var(--vk-red)]",children:R})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Git URL"}),(0,f.jsx)("input",{value:u,onChange:e=>p(e.target.value),placeholder:"https://github.com/org/repo.git",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Local Path (optional, clone target)"}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{value:x,readOnly:!0,onClick:()=>Y("clone"),placeholder:"Use Browse to choose a clone target folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("button",{type:"button",onClick:()=>Y("clone"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",title:"Browse folders",children:(0,f.jsx)(n_.FolderOpen,{className:"h-4 w-4"})})]})]})]}):(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Local Path"}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{value:x,readOnly:!0,onClick:()=>Y("local"),placeholder:"Use Browse to select a repository folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("button",{type:"button",onClick:()=>Y("local"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",title:"Browse folders",children:(0,f.jsx)(n_.FolderOpen,{className:"h-4 w-4"})})]})]}),(0,f.jsxs)("label",{className:"flex items-center gap-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,f.jsx)("input",{type:"checkbox",checked:j,onChange:e=>N(e.target.checked),className:"h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,f.jsx)("span",{children:"Initialize git if this folder is non-git"})]})]}),(0,f.jsxs)("div",{className:"grid grid-cols-1 gap-3 md:grid-cols-2",children:[(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Default Branch"}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{value:v,onChange:e=>h(e.target.value),placeholder:"main",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("button",{type:"button",onClick:()=>{K()},disabled:$,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",title:"Detect branches",children:$?(0,f.jsx)(nG.Loader2,{className:"h-3.5 w-3.5 animate-spin"}):(0,f.jsx)(nK,{className:"h-3.5 w-3.5"})})]}),_.length>0&&(0,f.jsx)("select",{value:v,onChange:e=>h(e.target.value),className:"mt-2 h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:_.map(e=>(0,f.jsx)("option",{value:e,children:e},e))}),U&&(0,f.jsx)("p",{className:"mt-1 text-[11px] text-[var(--vk-red)]",children:U})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Agent"}),(0,f.jsx)("select",{value:g,onChange:e=>k(e.target.value),className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:V.map(e=>(0,f.jsx)("option",{value:e,className:"bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)]",children:aR(e)},e))})]})]}),(0,f.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-2 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,f.jsx)("input",{type:"checkbox",checked:y,onChange:e=>w(e.target.checked),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,f.jsxs)("span",{children:["Use worktree isolation",(0,f.jsx)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:"If unchecked, sessions run directly on the selected branch in the local repo."})]})]}),a&&(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-red)]",children:a})]}),(0,f.jsxs)("footer",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,f.jsx)("button",{type:"button",onClick:t,disabled:n,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Cancel"}),(0,f.jsx)("button",{type:"submit",disabled:!J||n,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:n?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(nG.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Adding..."]}):"Add Workspace"})]})]})}),(0,f.jsx)(a6,{open:T,initialPath:x,title:"local"===F?"Select Local Repository":"Select Clone Target Folder",description:"local"===F?"Choose the local repository folder.":"Choose where the git repository should be cloned.",onClose:()=>H(!1),onSelect:e=>{H(!1),e&&(m(e),("local"===l||"local"===F)&&K({path:e}))}})]})}function a6({open:e,initialPath:t,title:r,description:n,onClose:a,onSelect:o}){let[s,l]=(0,b.useState)(""),[i,d]=(0,b.useState)(t??""),[c,u]=(0,b.useState)([]),[p,x]=(0,b.useState)(""),[m,v]=(0,b.useState)(!1),[h,g]=(0,b.useState)(null);(0,b.useEffect)(()=>{if(!e)return;x(""),d(t??"");let r=t&&t.trim().length>0?t.trim():void 0,n=r?`?path=${encodeURIComponent(r)}`:"";v(!0),g(null),fetch(`/api/filesystem/directory${n}`).then(async e=>{let t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Failed to load directory (${e.status})`);l("string"==typeof t?.currentPath?t.currentPath:""),u(Array.isArray(t?.entries)?t.entries:[])}).catch(e=>{g(e instanceof Error?e.message:"Failed to load directory"),u([])}).finally(()=>{v(!1)})},[t,e]);let k=(0,b.useMemo)(()=>{if(0===p.trim().length)return c;let e=p.trim().toLowerCase();return c.filter(t=>t.name.toLowerCase().includes(e))},[c,p]),y=async e=>{v(!0),g(null);try{let t=e&&e.trim().length>0?`?path=${encodeURIComponent(e.trim())}`:"",r=await fetch(`/api/filesystem/directory${t}`),n=await r.json().catch(()=>null);if(!r.ok)throw Error(n?.error??`Failed to load directory (${r.status})`);let a="string"==typeof n?.currentPath?n.currentPath:"";l(a),u(Array.isArray(n?.entries)?n.entries:[]),d(a)}catch(e){g(e instanceof Error?e.message:"Failed to load directory"),u([])}finally{v(!1)}};return e?(0,f.jsx)("div",{className:"fixed inset-0 z-[95] flex items-start justify-center overflow-y-auto bg-black/70 px-3 py-3 sm:items-center sm:py-0",onClick:()=>{a(),o(null)},role:"presentation",children:(0,f.jsxs)("div",{className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[760px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)]",onClick:e=>e.stopPropagation(),children:[(0,f.jsxs)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,f.jsx)("h3",{className:"text-[16px] text-[var(--vk-text-strong)]",children:r}),(0,f.jsx)("p",{className:"pt-1 text-[12px] text-[var(--vk-text-muted)]",children:n})]}),(0,f.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col gap-3 px-4 py-3",children:[(0,f.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,f.jsx)("input",{value:i,onChange:e=>d(e.target.value),placeholder:"/path/to/repository",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("button",{type:"button",onClick:()=>{y(i)},className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Open"})]}),(0,f.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,f.jsx)("button",{type:"button",onClick:()=>{y()},className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Home"}),(0,f.jsx)("button",{type:"button",onClick:()=>{if(!s)return;let e=s.replace(/\\/g,"/");if("/"===e)return;let t=e.split("/").filter(Boolean);y(t.length>1?`/${t.slice(0,-1).join("/")}`:"/")},className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Up"}),(0,f.jsx)("div",{className:"truncate text-[12px] text-[var(--vk-text-muted)]",children:s||"Home"})]}),(0,f.jsxs)("div",{className:"relative",children:[(0,f.jsx)(nX.Search,{className:"pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[var(--vk-text-muted)]"}),(0,f.jsx)("input",{value:p,onChange:e=>x(e.target.value),placeholder:"Filter folders",className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent pl-7 pr-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,f.jsx)("div",{className:"min-h-0 flex-1 overflow-auto rounded-[4px] border border-[var(--vk-border)]",children:m?(0,f.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"Loading..."}):h?(0,f.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-red)]",children:h}):0===k.length?(0,f.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"No folders found."}):(0,f.jsx)("div",{className:"p-1",children:k.map(e=>(0,f.jsxs)("button",{type:"button",onClick:()=>{e.isDirectory&&y(e.path)},className:`mb-1 flex w-full items-center gap-2 rounded-[4px] px-2 py-2 text-left text-[12px] ${e.isDirectory?"text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]":"cursor-default text-[var(--vk-text-muted)]"}`,children:[(0,f.jsx)(n_.FolderOpen,{className:"h-4 w-4 shrink-0"}),(0,f.jsx)("span",{className:"truncate",children:e.name}),e.isGitRepo&&(0,f.jsx)("span",{className:"ml-auto rounded-[999px] border border-[var(--vk-border)] px-1.5 py-0.5 text-[10px]",children:"git"})]},e.path))})})]}),(0,f.jsxs)("footer",{className:"flex items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,f.jsx)("button",{type:"button",onClick:()=>{a(),o(null)},className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Cancel"}),(0,f.jsx)("button",{type:"button",onClick:()=>{let e=i.trim().length>0?i.trim():s;a(),o(e||null)},className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)]",children:"Use this folder"})]})]})}):null}let a9=(0,b.memo)(function({prompt:e,setPrompt:t,selectedAgent:r,setSelectedAgent:n,agentStates:a,modelSelection:o,setModelSelection:s,modelAccess:l,runtimeModelCatalogs:i,agentOptions:d,projects:c,selectedProjectId:u,onSelectProject:p,projectLabel:x,hasProject:m,creating:v,error:h,onOpenAddWorkspace:g,onOpenAgentSetup:k,onCreate:y}){let w=(0,b.useMemo)(()=>{let e=new Map(aj.map((e,t)=>[e,t]));return[...d].sort((t,r)=>{let n=e.get((0,n1.normalizeAgentName)(t))??Number.MAX_SAFE_INTEGER,a=e.get((0,n1.normalizeAgentName)(r))??Number.MAX_SAFE_INTEGER;return n!==a?n-a:aR(t).localeCompare(aR(r))})},[d]),j=aR(r),N=a[(0,n1.normalizeAgentName)(r)]??null,C=(0,b.useMemo)(()=>[...c].sort((e,t)=>e.id.localeCompare(t.id)),[c]),S=u??C[0]?.id??null,E=(0,b.useMemo)(()=>C.find(e=>e.id===S)??null,[S,C]),[A,R]=(0,b.useState)([]),[M,P]=(0,b.useState)(!1),[O,L]=(0,b.useState)(""),[D,T]=(0,b.useState)(""),[H,F]=(0,b.useState)([]),[I,_]=(0,b.useState)(!1),[B,$]=(0,b.useState)(!0),[z,U]=(0,b.useState)("default");(0,b.useEffect)(()=>{if(!E){R([]),L("");return}let e=!1,t=E.defaultBranch.trim()||"main";return async function(){if(!E.path?.trim()){R([t]),L(t);return}P(!0);try{let r=new URLSearchParams({path:E.path}),n=await fetch(`/api/workspaces/branches?${r.toString()}`),a=await n.json().catch(()=>null),o=Array.isArray(a?.branches)?a.branches.filter(e=>"string"==typeof e&&e.trim().length>0):[],s="string"==typeof a?.defaultBranch&&a.defaultBranch.trim().length>0?a.defaultBranch.trim():t,l=o.length>0?o:[s];if(e)return;R(l),L(e=>e.trim().length>0&&l.includes(e)?e:s)}catch{if(e)return;R([t]),L(t)}finally{e||P(!1)}}(),()=>{e=!0}},[E]),(0,b.useEffect)(()=>{if(!S){F([]),T("");return}let e=!1;return async function(){_(!0);try{let t=await fetch(`/api/boards?projectId=${encodeURIComponent(S)}`),r=await t.json().catch(()=>null);if(!t.ok)throw Error(r?.error??`Failed to load tasks: ${t.status}`);let n=(Array.isArray(r?.columns)?r.columns:[]).flatMap(e=>Array.isArray(e.tasks)?e.tasks:[]),a=new Set,o=n.filter(e=>{let t=aM(e);return!(!t||a.has(t))&&(a.add(t),!0)});if(e)return;F(o),T(e=>o.some(t=>aM(t)===e)?e:"")}catch{if(e)return;F([]),T("")}finally{e||_(!1)}}(),()=>{e=!0}},[S]);let W=(0,b.useMemo)(()=>aW(r,l,i),[l,i,r]),G=(0,b.useMemo)(()=>H.find(e=>aM(e)===D)??null,[H,D]),V=aK(o)??"",q=(0,b.useMemo)(()=>{let e=new Set,t=[],n=V.trim();for(let r of W)e.has(r.id)||(e.add(r.id),t.push(r));return n&&!e.has(n)&&(e.add(n),t.unshift({id:n,label:function(e,t){let r=t.trim(),n=(0,n1.normalizeAgentName)(e);if(!r)return r;if("claude-code"===n){let e=r.toLowerCase();if("opus"===e)return"Claude Opus";if("sonnet"===e)return"Claude Sonnet";if("haiku"===e)return"Claude Haiku";let t=e.match(/^claude-(sonnet|opus|haiku)-(\d+)-(\d+)(?:-\d{8})?$/);if(t){let e=t[1];return`Claude ${e[0]?.toUpperCase()+e.slice(1)} ${t[2]}.${t[3]}`}}return r.split(/[-_]+/g).filter(Boolean).map(e=>"gpt"===e.toLowerCase()?"GPT":/^\d+(?:\.\d+)?$/.test(e)?e:e[0]?.toUpperCase()+e.slice(1)).join("-")}(r,n),description:"Current selected model.",access:[]})),t},[W,r,V]),K=(0,b.useMemo)(()=>!N||N.ready||V?V?q.find(e=>e.id===V)?.label??V:"Default":"Setup required",[q,N,V]),X="z-50 min-w-[240px] rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.35)]",Y=`${X} max-h-[min(360px,50vh)] overflow-y-auto`,J="flex min-h-[36px] cursor-default items-center gap-2 rounded-[3px] px-3 py-2 text-[14px] leading-[21px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] focus:bg-[var(--vk-bg-hover)]",Z=[{id:"default",label:"Default",icon:nY},{id:"auto",label:"Auto",icon:nD},{id:"ask",label:"Ask",icon:nU},{id:"plan",label:"Plan",icon:nW}],Q=Z.find(e=>e.id===z)??Z[0],ee=e=>{let t=e.repo?.trim();if(t){let e=t.split("/").filter(Boolean),r=e[e.length-1]?.replace(/\.git$/i,"");if(r)return r}return e.id},et=E?ee(E):null,er=E?`${et} \xb7 ${O||E.defaultBranch||"main"}`:m?x:"Select project",en=G?.taskRef?.trim()||"Link task",ea=G?aP(G.text):"Choose a task, bug, or issue from this project's board";return(0,f.jsx)("section",{className:"flex h-full min-h-0 items-start justify-center overflow-auto bg-[var(--vk-bg-main)] px-3 py-4 sm:items-center sm:px-6 sm:py-6",children:(0,f.jsxs)("div",{className:"w-full max-w-[768px]",children:[(0,f.jsx)("h1",{className:"pb-4 text-center text-[30px] font-medium leading-[34px] tracking-[-0.7px] text-[var(--vk-text-strong)] sm:text-[36px] sm:leading-[40px] sm:tracking-[-0.9px]",children:"What would you like to work on?"}),(0,f.jsxs)("div",{className:"mx-auto w-full rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-px",children:[(0,f.jsxs)("div",{className:"flex flex-wrap items-center gap-2 border-b border-[var(--vk-border)] px-2 pb-[9px] pt-2",children:[(0,f.jsx)(n9.AgentTileIcon,{seed:{label:r},className:"h-[25px] w-[25px] border-none bg-transparent"}),(0,f.jsxs)(nl,{children:[(0,f.jsx)(nd,{asChild:!0,children:(0,f.jsxs)("button",{type:"button",className:"inline-flex h-[31px] max-w-[70vw] items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] data-[state=open]:bg-[var(--vk-bg-hover)] sm:max-w-none","aria-label":"Select agent",children:[(0,f.jsx)("span",{className:"truncate pr-1",children:j}),(0,f.jsx)(nH.ChevronDown,{className:"h-3 w-3 text-[var(--vk-text-muted)]"})]})}),(0,f.jsx)(nc,{children:(0,f.jsxs)(np,{align:"start",sideOffset:6,className:X,children:[(0,f.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Agents"}),w.map(e=>{let t=e===r,o=a[(0,n1.normalizeAgentName)(e)]??null;return(0,f.jsxs)(nx,{onSelect:()=>n(e),className:J,children:[(0,f.jsx)(n9.AgentTileIcon,{seed:{label:e},className:"h-6 w-6 border-none bg-transparent"}),(0,f.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,f.jsx)("div",{children:aR(e)}),o?.ready?null:(0,f.jsx)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--vk-text-muted)]",children:o?.installed?"Setup required":"Not installed"})]}),(0,f.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:t?(0,f.jsx)(nT.Check,{className:"h-4 w-4"}):null})]},e)})]})})]}),(0,f.jsxs)(nl,{children:[(0,f.jsx)(nd,{asChild:!0,children:(0,f.jsxs)("button",{type:"button",disabled:!S,className:"ml-auto flex h-[31px] min-w-[220px] items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-left disabled:cursor-not-allowed disabled:opacity-50 sm:ml-0 sm:w-[286px]","aria-label":"Link task",children:[(0,f.jsx)("span",{className:"pr-2 text-[12px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Task"}),(0,f.jsx)("span",{className:"min-w-0 flex-1 truncate text-[14px] leading-[21px] text-[var(--vk-text-normal)]",children:en}),(0,f.jsx)(nH.ChevronDown,{className:"h-3 w-3 text-[var(--vk-text-muted)]"})]})}),(0,f.jsx)(nc,{children:(0,f.jsxs)(np,{align:"end",side:"bottom",sideOffset:6,className:Y,children:[(0,f.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Link task"}),(0,f.jsx)("p",{className:"px-3 pb-2 text-[12px] leading-[16px] text-[var(--text-faint)]",children:ea}),(0,f.jsxs)(nx,{onSelect:()=>T(""),className:J,children:[(0,f.jsx)("span",{children:"No linked task"}),(0,f.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:D?null:(0,f.jsx)(nT.Check,{className:"h-4 w-4"})})]}),I?(0,f.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"Loading board tasks..."}):H.length>0?H.map(e=>{let t=aM(e),r=aP(e.text),n=[e.type,e.priority].filter(Boolean).join(" · ");return(0,f.jsxs)(nx,{onSelect:()=>T(t),className:`${J} min-w-[320px] items-start`,children:[(0,f.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,f.jsx)("div",{className:"truncate",children:e.taskRef?.trim()||r}),(0,f.jsxs)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--text-faint)]",children:[e.taskRef?.trim()?r:t,n?` \xb7 ${n}`:""]})]}),(0,f.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:D===t?(0,f.jsx)(nT.Check,{className:"h-4 w-4"}):null})]},t)}):(0,f.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"No existing tasks were found for this project."})]})})]})]}),(0,f.jsx)("div",{className:"rounded-[3.5px]",children:(0,f.jsxs)("div",{className:"flex flex-col gap-3 p-2",children:[(0,f.jsxs)("div",{className:"relative w-full",children:[(0,f.jsx)("textarea",{value:e,onChange:e=>t(e.target.value),placeholder:"Describe the task...",rows:1,className:"min-h-[24px] w-full resize-none bg-transparent pr-8 text-[16px] leading-[24px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"}),(0,f.jsx)("button",{type:"button","aria-label":"Preview",className:"absolute right-0 top-0 inline-flex h-[24px] w-[24px] items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]",children:(0,f.jsx)(nI,{className:"h-[14px] w-[14px]"})})]}),(0,f.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between",children:[(0,f.jsxs)("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-1 gap-y-2",children:[(0,f.jsxs)(nl,{children:[(0,f.jsx)(nd,{asChild:!0,children:(0,f.jsx)("button",{type:"button",className:"inline-flex h-[29px] w-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Select workspace or project",children:(0,f.jsx)(nY,{className:"h-[15px] w-[15px]"})})}),(0,f.jsx)(nc,{children:(0,f.jsxs)(np,{align:"start",sideOffset:6,className:X,children:[(0,f.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Projects"}),C.map(e=>{let t=ee(e),r=e.id!==t?e.id:e.path?.trim()||e.repo?.trim()||null;return(0,f.jsxs)(nx,{onSelect:()=>p(e.id),className:`${J} min-w-[280px] items-start`,children:[(0,f.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,f.jsx)("div",{className:"truncate",children:t}),r?(0,f.jsx)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--text-faint)]",children:r}):null]}),(0,f.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:e.id===S?(0,f.jsx)(nT.Check,{className:"h-4 w-4"}):null})]},e.id)}),(0,f.jsx)(nm,{className:"my-1 h-px bg-[var(--vk-border)]"}),(0,f.jsxs)(nx,{onSelect:g,className:J,children:[(0,f.jsx)(n_.FolderOpen,{className:"h-4 w-4"}),(0,f.jsx)("span",{children:"Add Workspace"})]})]})})]}),(0,f.jsxs)(nl,{children:[(0,f.jsx)(nd,{asChild:!0,children:(0,f.jsxs)("button",{type:"button",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:cursor-not-allowed disabled:opacity-60",children:[(0,f.jsx)("span",{children:K}),(0,f.jsx)(nH.ChevronDown,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,f.jsx)(nc,{children:(0,f.jsxs)(np,{align:"start",sideOffset:6,className:X,children:[(0,f.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Model"}),(0,f.jsxs)(nx,{onSelect:()=>s(aq(r,l,i,E?.agentModel,E?.agentReasoningEffort)),className:J,children:[(0,f.jsx)("span",{children:"Default"}),(0,f.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:V?null:(0,f.jsx)(nT.Check,{className:"h-4 w-4"})})]}),q.map(e=>(0,f.jsxs)(nx,{onSelect:()=>s({catalogModel:e.id,customModel:"",reasoningEffort:aV(r,l,i,e.id)}),className:J,children:[(0,f.jsx)("span",{children:e.label}),(0,f.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:V===e.id?(0,f.jsx)(nT.Check,{className:"h-4 w-4"}):null})]},e.id)),0===q.length?(0,f.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"Models will appear here after the selected agent is installed and its runtime catalog is detected."}):null,N&&!N.ready?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(nm,{className:"my-1 h-px bg-[var(--vk-border)]"}),(0,f.jsx)("button",{type:"button",onClick:()=>k(r),className:"flex w-full items-center rounded-[3px] px-3 py-2 text-left text-[13px] text-[var(--vk-orange)] transition hover:bg-[var(--vk-bg-hover)]",children:N.installed?"Open setup":"Open install guide"})]}):null]})})]}),(0,f.jsx)("div",{className:"inline-flex h-[29px] w-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)]",children:(0,f.jsx)(nD,{className:"h-[15px] w-[15px]"})}),(0,f.jsxs)(nl,{children:[(0,f.jsx)(nd,{asChild:!0,children:(0,f.jsxs)("button",{type:"button",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[(0,f.jsx)("span",{children:Q.label}),(0,f.jsx)(nH.ChevronDown,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,f.jsx)(nc,{children:(0,f.jsxs)(np,{align:"start",sideOffset:6,className:X,children:[(0,f.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Permissions"}),Z.map(({id:e,label:t,icon:r})=>(0,f.jsxs)(nx,{onSelect:()=>U(e),className:J,children:[(0,f.jsx)(r,{className:"h-4 w-4"}),(0,f.jsx)("span",{children:t}),(0,f.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:z===e?(0,f.jsx)(nT.Check,{className:"h-4 w-4"}):null})]},e))]})})]}),(0,f.jsx)("button",{type:"button",onClick:g,className:"inline-flex h-[29px] w-[20px] items-center justify-center text-[var(--vk-text-muted)] hover:text-[var(--vk-text-normal)]","aria-label":"Add workspace",children:(0,f.jsx)(nV.Paperclip,{className:"h-[18px] w-[18px]"})}),(0,f.jsxs)(nl,{children:[(0,f.jsx)(nd,{asChild:!0,children:(0,f.jsx)("button",{type:"button",disabled:!E,className:"inline-flex min-h-[29px] max-w-[320px] items-center justify-center truncate text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:text-[var(--vk-text-strong)] disabled:cursor-not-allowed disabled:opacity-50",children:er})}),(0,f.jsx)(nc,{children:(0,f.jsxs)(np,{align:"start",side:"bottom",sideOffset:6,avoidCollisions:!1,className:Y,children:[(0,f.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Branch"}),et?(0,f.jsx)("p",{className:"px-3 pb-2 text-[12px] leading-[16px] text-[var(--text-faint)]",children:et}):null,M?(0,f.jsx)("div",{className:"px-3 py-2 text-[14px] leading-[21px] text-[var(--vk-text-muted)]",children:"Loading branches..."}):A.map(e=>(0,f.jsxs)(nx,{onSelect:()=>L(e),className:J,children:[(0,f.jsx)("span",{children:e}),(0,f.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:O===e?(0,f.jsx)(nT.Check,{className:"h-4 w-4"}):null})]},e))]})})]})]}),(0,f.jsx)("div",{className:"flex w-full justify-end sm:w-auto",children:(0,f.jsx)("button",{type:"button",onClick:()=>y({projectId:S??void 0,...B?{baseBranch:O||E?.defaultBranch||void 0}:{branch:O||E?.defaultBranch||void 0},issueId:D.trim()||void 0,useWorktree:B,permissionMode:z}),disabled:v||0===e.trim().length||!S,className:"inline-flex min-h-[29px] items-center justify-center rounded-[3px] bg-[var(--vk-bg-hover)] px-[8px] py-[6.5px] text-[16px] leading-[16px] text-[var(--vk-text-strong)] transition-colors hover:bg-[var(--vk-bg-active)] disabled:cursor-not-allowed disabled:opacity-50",children:v?(0,f.jsx)(nG.Loader2,{className:"h-4 w-4 animate-spin"}):"Create"})})]}),N&&!N.ready?(0,f.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:(0,f.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,f.jsxs)("div",{className:"min-w-0",children:[(0,f.jsxs)("p",{className:"text-[13px] text-[var(--vk-text-strong)]",children:[j," is not ready on this machine."]}),(0,f.jsx)("p",{className:"pt-0.5 text-[12px] text-[var(--vk-text-muted)]",children:N.installed?"Finish login or local setup to load models and start streaming sessions.":"Install the CLI first, then its models and authentication state will appear here."})]}),(0,f.jsx)("button",{type:"button",onClick:()=>k(r),className:"inline-flex h-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] px-3 text-[12px] text-[var(--vk-orange)] hover:bg-[var(--vk-bg-hover)]",children:N.installed?"Open setup":"Open install"})]})}):null,(0,f.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,f.jsx)("input",{type:"checkbox",checked:B,onChange:e=>$(e.target.checked),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,f.jsxs)("span",{children:["Use worktree isolation",(0,f.jsx)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:"If unchecked, the session runs directly on the selected branch in the local repo."})]})]})]})})]}),h&&(0,f.jsx)("p",{className:"pt-2 text-[12px] text-[var(--status-error)]",children:h})]})})});function a8({value:e,idleLabel:t="Copy",copiedLabel:r="Copied"}){let[n,a]=(0,b.useState)(!1);async function o(){await navigator.clipboard.writeText(e),a(!0),window.setTimeout(()=>a(!1),1400)}return(0,f.jsxs)("button",{type:"button",onClick:()=>void o(),className:"inline-flex h-8 items-center gap-1.5 rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[n?(0,f.jsx)(nT.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"}):(0,f.jsx)(nF.Copy,{className:"h-3.5 w-3.5"}),(0,f.jsx)("span",{children:n?r:t})]})}function a7({open:e,mode:t,creating:r,error:n,current:a,projectCount:o,agentOptions:s,runtimeModelCatalogs:l,onRepositoriesChanged:i,onOnboardingComplete:d,onClose:c,onSave:u}){var p,x;let m,[v,h]=(0,b.useState)("preferences"),[g,k]=(0,b.useState)(a.codingAgent),[y,w]=(0,b.useState)(a.ide),[j,N]=(0,b.useState)(a.remoteSshHost),[C,S]=(0,b.useState)(a.remoteSshUser),[E,A]=(0,b.useState)(a.markdownEditor),[R,M]=(0,b.useState)(a.modelAccess),[P,O]=(0,b.useState)(a.notifications.soundEnabled),[L,D]=(0,b.useState)(a.notifications.soundFile),[T,H]=(0,b.useState)([]),[F,I]=(0,b.useState)(!1),[_,B]=(0,b.useState)(!1),[$,z]=(0,b.useState)(null),[U,W]=(0,b.useState)(""),[G,V]=(0,b.useState)(null),[q,K]=(0,b.useState)(a$()),[X,Y]=(0,b.useState)([]),[J,Z]=(0,b.useState)(!1),[Q,ee]=(0,b.useState)(null),[et,er]=(0,b.useState)(!1),[en,ea]=(0,b.useState)(()=>aB(null)),[eo,es]=(0,b.useState)(!1),[el,ei]=(0,b.useState)(!1),[ed,ec]=(0,b.useState)(null),eu=r||_||el;function ep(e){return{...e,pathHealth:{exists:e.pathHealth.exists,isGitRepository:e.pathHealth.isGitRepository,suggestedPath:e.pathHealth.suggestedPath}}}function ex(e){return e.split(/\n+/g).map(e=>e.trim()).filter(Boolean)}async function em(e){I(!0),z(null);try{let t=await fetch("/api/repositories"),r=await t.json().catch(()=>null);if(!t.ok)throw Error(r?.error??`Failed to load repositories (${t.status})`);let n=Array.isArray(r?.repositories)?r.repositories:[];H(n);let a=n[0]?.id??"",o=e&&n.some(t=>t.id===e)?e:U&&n.some(e=>e.id===U)?U:a;W(o)}catch(e){H([]),W(""),V(null),K(a$()),z(e instanceof Error?e.message:"Failed to load repositories")}finally{I(!1)}}async function ev(e,t){let r=(e??G?.path??"").trim();if(0===r.length){ee("Select a repository path first."),Y([]);return}Z(!0),ee(null);try{let e=new URLSearchParams({path:r}),n=await fetch(`/api/workspaces/branches?${e.toString()}`),a=await n.json().catch(()=>null);if(!n.ok)throw Error(a?.error??`Failed to detect branches (${n.status})`);let o=Array.isArray(a?.branches)?a.branches.filter(e=>"string"==typeof e&&e.trim().length>0):[];Y(o);let s=t?.trim()||("string"==typeof a?.defaultBranch&&a.defaultBranch.trim().length>0?a.defaultBranch.trim():o[0]??"");if(!s)return;V(e=>!e||e.defaultBranch.trim().length>0&&o.includes(e.defaultBranch)?e:{...e,defaultBranch:s})}catch(e){Y([]),ee(e instanceof Error?e.message:"Failed to detect branches")}finally{Z(!1)}}async function eh(){if(!G||_||0===G.repo.trim().length||0===G.path.trim().length)return!1;B(!0),z(null);try{let e=await fetch("/api/repositories",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:G.id,displayName:G.displayName,repo:G.repo,path:G.path,agent:G.agent,agentModel:aK(q)??"",agentReasoningEffort:aX(q)??"",defaultWorkingDirectory:G.defaultWorkingDirectory,defaultBranch:G.defaultBranch,devServerScript:G.devServerScript,setupScript:G.setupScript,runSetupInParallel:G.runSetupInParallel,cleanupScript:G.cleanupScript,archiveScript:G.archiveScript,copyFiles:G.copyFiles})}),t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Failed to save repository settings (${e.status})`);let r=t?.repository;if(!r)throw Error("Repository saved but response is missing repository data");return H(e=>e.map(e=>e.id===r.id?r:e)),V(ep(r)),W(r.id),ee(null),await ev(r.path,r.defaultBranch),i&&await i(),!0}catch(e){return z(e instanceof Error?e.message:"Failed to save repository settings"),!1}finally{B(!1)}}async function ef(){es(!0),ec(null);try{let e=await fetch("/api/access"),t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Failed to load organization settings (${e.status})`);ea(aB(t?.access,t?.current))}catch(e){ea(aB(null)),ec(e instanceof Error?e.message:"Failed to load organization settings")}finally{es(!1)}}async function eg(){if(el)return!1;ei(!0),ec(null);try{let e=await fetch("/api/access",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({requireAuth:en.requireAuth,defaultRole:en.defaultRole,trustedHeaders:{enabled:en.trustedHeaders.enabled,provider:en.trustedHeaders.provider,emailHeader:en.trustedHeaders.emailHeader,jwtHeader:en.trustedHeaders.jwtHeader,teamDomain:en.trustedHeaders.teamDomain,audience:en.trustedHeaders.audience},roles:{viewers:ex(en.roles.viewers),operators:ex(en.roles.operators),admins:ex(en.roles.admins),viewerDomains:ex(en.roles.viewerDomains),operatorDomains:ex(en.roles.operatorDomains),adminDomains:ex(en.roles.adminDomains)}})}),t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Failed to save organization settings (${e.status})`);return ea(aB(t?.access,t?.current)),!0}catch(e){return ec(e instanceof Error?e.message:"Failed to save organization settings"),!1}finally{ei(!1)}}(0,b.useEffect)(()=>{e&&(h("onboarding"===t?"preferences":"general"),k(a.codingAgent),w(a.ide),N(a.remoteSshHost),S(a.remoteSshUser),A(a.markdownEditor),M(a.modelAccess),O(a.notifications.soundEnabled),D(a.notifications.soundFile),Y([]),ee(null),z(null),K(a$()),ec(null))},[t,e]),(0,b.useEffect)(()=>{e&&("settings"===t||"repositories"===v)&&em()},[v,t,e]),(0,b.useEffect)(()=>{e&&"onboarding"!==t&&ef()},[t,e]),(0,b.useEffect)(()=>{if(!e)return;if(!U){V(null),K(a$());return}let t=T.find(e=>e.id===U);t&&(V(ep(t)),K(aq(t.agent,R,l,t.agentModel,t.agentReasoningEffort)),Y([]),ee(null),t.path.trim().length>0&&ev(t.path,t.defaultBranch))},[R,e,T,l,U]);let eb="onboarding"===t&&o>0,ek=(0,b.useMemo)(()=>"onboarding"===t?eb?aL:aL.filter(e=>"preferences"===e.id):aO.filter(e=>e.implemented),[t,eb]),ey=ek.find(e=>e.id===v)??ek[0]??aO[0],ew="onboarding"===t,ej="preferences"===ey.id,eN="general"===ey.id,eC="remote_access"===ey.id,eS="agents"===ey.id,eE=ej||eN||eC||eS,eA="repositories"===ey.id,eR="organization"===ey.id,eM=ek.findIndex(e=>e.id===ey.id)+1,eP=ek.some(e=>"repositories"===e.id),eO="admin"===en.current.role,eL=(0,b.useMemo)(()=>{let e=new Set(s);g.trim().length>0&&e.add(g),0===e.size&&e.add(aN);let t=new Map(aj.map((e,t)=>[e,t]));return[...e].sort((e,r)=>{let n=t.get((0,n1.normalizeAgentName)(e))??Number.MAX_SAFE_INTEGER,a=t.get((0,n1.normalizeAgentName)(r))??Number.MAX_SAFE_INTEGER;return n!==a?n-a:aR(e).localeCompare(aR(r))})},[s,g]);if(!e)return null;let eD=g.trim().length>0&&y.trim().length>0&&E.trim().length>0,eT=!!G&&G.displayName.trim().length>0&&G.repo.trim().length>0&&G.path.trim().length>0&&G.defaultBranch.trim().length>0,eH=eO&&!eo&&(!en.trustedHeaders.enabled||"generic"===en.trustedHeaders.provider||en.trustedHeaders.teamDomain.trim().length>0&&en.trustedHeaders.audience.trim().length>0),eF=eA?$:eR?ed:n,eI=G?(p={...G,agentModel:aK(q)??"",agentReasoningEffort:aX(q)??""},x={ide:y,markdownEditor:E},m=["npx conductor-oss@latest setup","--yes",`--path ${a0(p.path)}`,`--project-id ${a0(p.id)}`,`--display-name ${a0(p.displayName)}`,`--agent ${a0(p.agent||"claude-code")}`,`--ide ${a0(x.ide)}`,`--markdown-editor ${a0(x.markdownEditor)}`],p.repo.trim().length>0&&m.push(`--repo ${a0(p.repo.trim())}`),p.defaultBranch.trim().length>0&&m.push(`--default-branch ${a0(p.defaultBranch.trim())}`),p.agentModel.trim().length>0&&m.push(`--model ${a0(p.agentModel.trim())}`),p.agentReasoningEffort.trim().length>0&&m.push(`--reasoning-effort ${a0(p.agentReasoningEffort.trim())}`),p.defaultWorkingDirectory.trim().length>0&&m.push(`--default-working-directory ${a0(p.defaultWorkingDirectory.trim())}`),m.join(" ")):"";async function e_(e,t){let n;return!!eD&&!r&&u((n=P?L??aH[0]?.id??"abstract-sound-4":null,{onboardingAcknowledged:!!e||a.onboardingAcknowledged,codingAgent:g.trim(),ide:y.trim(),remoteSshHost:j.trim(),remoteSshUser:C.trim(),markdownEditor:E.trim(),modelAccess:R,notifications:{soundEnabled:P,soundFile:n}}),t)}async function eB(){if(!F){if(!eP){if(!await e_(!0,{closeDialog:!0}))return;d?.({needsProject:0===o});return}await e_(!1,{closeDialog:!1})&&h("repositories")}}async function e$(){(!eA||await eh())&&await e_(!0,{closeDialog:!0})&&d?.({needsProject:!1})}return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("div",{className:"fixed inset-0 z-[90] flex items-start justify-center overflow-y-auto bg-black/70 px-3 py-3 sm:items-center",onClick:()=>{eu||"onboarding"===t||et||c()},role:"presentation",children:(0,f.jsxs)("div",{className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[1120px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)] sm:h-[min(92vh,760px)] sm:flex-row",onClick:e=>e.stopPropagation(),children:[(0,f.jsxs)("aside",{className:"flex w-full shrink-0 flex-col border-b border-[var(--vk-border)] bg-[rgba(28,28,28,0.8)] sm:w-[224px] sm:border-b-0 sm:border-r",children:[(0,f.jsx)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3 sm:py-4",children:(0,f.jsx)("h2",{className:"text-[22px] leading-[24px] text-[var(--vk-text-strong)] sm:text-[27px] sm:leading-[27px]",children:ew?"Setup":"Settings"})}),(0,f.jsx)("nav",{className:"flex gap-1 overflow-x-auto p-2 sm:block sm:space-y-1 sm:overflow-auto",children:ek.map(e=>{let t=e.icon,r=ey.id===e.id;return(0,f.jsxs)("button",{type:"button",onClick:()=>h(e.id),disabled:eu,className:`flex shrink-0 items-center gap-3 rounded-[3px] px-3 py-2 text-left text-[14px] leading-[21px] transition-colors sm:w-full ${r?"bg-[rgba(234,122,42,0.1)] text-[var(--vk-orange)]":"text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]"} disabled:opacity-50`,children:[(0,f.jsx)(t,{className:"h-4 w-4 shrink-0"}),(0,f.jsx)("span",{children:e.label})]},e.id)})})]}),(0,f.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,f.jsxs)("header",{className:"flex items-center justify-between border-b border-[var(--vk-border)] px-4 py-3 sm:py-4",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("h3",{className:"text-[20px] leading-[24px] text-[var(--vk-text-strong)] sm:text-[27px] sm:leading-[27px]",children:ew?ej?"Choose your preferences":"Review repository defaults":ey.label}),ew&&(0,f.jsxs)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:["Step ",eM," of ",ek.length]})]}),(0,f.jsx)("button",{type:"button",onClick:c,disabled:eu||"onboarding"===t,"aria-label":"Close settings",className:"inline-flex h-7 w-7 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-40",children:(0,f.jsx)(n0.X,{className:"h-4 w-4"})})]}),(0,f.jsx)("div",{className:"min-h-0 flex-1 overflow-auto px-4 py-3 sm:px-6 sm:py-4",children:eE?(0,f.jsxs)("div",{className:"space-y-5",children:[ew&&(0,f.jsx)("section",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[rgba(234,122,42,0.08)] px-4 py-3",children:(0,f.jsx)("p",{className:"text-[13px] leading-5 text-[var(--vk-text-normal)]",children:"Conductor is already running locally. Finish setup here in the dashboard, then you can start using chat and boards immediately."})}),(ej||eS)&&(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)("section",{className:"space-y-2",children:[(0,f.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Choose Your Coding Agent"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Select the default coding agent configuration."}),(0,f.jsx)("div",{className:"grid gap-2",children:eL.map(e=>{let t=g===e;return(0,f.jsxs)("button",{type:"button",onClick:()=>k(e),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${t?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,f.jsx)(n9.AgentTileIcon,{seed:{label:e},className:"h-5 w-5 border-none bg-transparent"}),(0,f.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:aR(e)}),t&&(0,f.jsx)(nT.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},e)})})]}),(0,f.jsxs)("section",{className:"space-y-3",children:[(0,f.jsxs)("div",{className:"space-y-1",children:[(0,f.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Model Access"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Tell Conductor which account mode each agent is using so the model dropdown only shows options that make sense for that login path."})]}),(0,f.jsx)("div",{className:"grid gap-3",children:eL.filter(e=>nb(e)).map(e=>{let t=nk(e);if(!t)return null;let r=ny(e,R)??t.defaultAccess;return(0,f.jsxs)("label",{className:"block rounded-[4px] border border-[var(--vk-border)] px-3 py-3",children:[(0,f.jsx)("span",{className:"mb-1 block text-[13px] font-medium text-[var(--vk-text-normal)]",children:t.label}),(0,f.jsx)("select",{value:r,onChange:t=>{var r;let n;return r=t.target.value,void((n=nk(e))&&M(e=>({...e,[n.accessKey]:r})))},className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:t.accessOptions.map(e=>(0,f.jsx)("option",{value:e.id,children:e.label},e.id))}),(0,f.jsx)("p",{className:"mt-1.5 text-[11px] text-[var(--vk-text-muted)]",children:t.accessOptions.find(e=>e.id===r)?.description})]},e)})})]})]}),(ej||eN)&&(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)("section",{className:"space-y-2",children:[(0,f.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Choose Your Code Editor"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"This editor will be used when opening attempts and files."}),(0,f.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:aD.map(e=>{let t=y===e.id;return(0,f.jsxs)("button",{type:"button",onClick:()=>w(e.id),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${t?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,f.jsx)(aQ,{editorId:e.id,label:e.label}),(0,f.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:e.label}),t&&(0,f.jsx)(nT.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},e.id)})})]}),ej&&(0,f.jsxs)("section",{className:"space-y-3",children:[(0,f.jsxs)("div",{className:"space-y-1",children:[(0,f.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Remote Access"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Use your local Remote-SSH editor to jump straight into a remote worktree. This complements ngrok or Cloudflare Tunnel for dashboard access; it does not replace the tunnel."})]}),(0,f.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2",children:[(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"SSH Host or Alias"}),(0,f.jsx)("input",{value:j,onChange:e=>N(e.target.value),placeholder:"e.g., conductor-dev or 203.0.113.10",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"SSH User (optional)"}),(0,f.jsx)("input",{value:C,onChange:e=>S(e.target.value),placeholder:"e.g., ubuntu",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"One-click remote open currently supports VS Code and VS Code Insiders. Other editors will still save as your preference, but they will not get a remote launch button yet."})]}),(0,f.jsxs)("section",{className:"space-y-2",children:[(0,f.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Markdown Editor"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Used as your second-brain markdown source when feeding context into tasks."}),(0,f.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:aT.map(e=>{let t=E===e.id;return(0,f.jsxs)("button",{type:"button",onClick:()=>A(e.id),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${t?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,f.jsx)(a2,{editorId:e.id}),(0,f.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:e.label}),t&&(0,f.jsx)(nT.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},e.id)})})]}),(0,f.jsxs)("section",{className:"space-y-2",children:[(0,f.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Notification Sound"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Pick a sound for notifications, or disable sound."}),(0,f.jsxs)("div",{className:"grid gap-2 sm:grid-cols-2",children:[aH.map(e=>{let t=P&&L===e.id;return(0,f.jsxs)("button",{type:"button",onClick:()=>{O(!0),D(e.id)},className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${t?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,f.jsx)(nZ,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,f.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:e.label}),t&&(0,f.jsx)(nT.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},e.id)}),(0,f.jsxs)("button",{type:"button",onClick:()=>O(!1),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${!P?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,f.jsx)(nQ,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,f.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:"No sound"}),!P&&(0,f.jsx)(nT.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]})]})]})]}),eC&&(0,f.jsxs)("section",{className:"space-y-3",children:[(0,f.jsxs)("div",{className:"space-y-1",children:[(0,f.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Remote Access"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Use your local Remote-SSH editor to jump straight into a remote worktree. This complements ngrok or Cloudflare Tunnel for dashboard access; it does not replace the tunnel."})]}),(0,f.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2",children:[(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"SSH Host or Alias"}),(0,f.jsx)("input",{value:j,onChange:e=>N(e.target.value),placeholder:"e.g., conductor-dev or 203.0.113.10",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"SSH User (optional)"}),(0,f.jsx)("input",{value:C,onChange:e=>S(e.target.value),placeholder:"e.g., ubuntu",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"One-click remote open currently supports VS Code and VS Code Insiders. Other editors will still save as your preference, but they will not get a remote launch button yet."})]})]}):eA?(0,f.jsxs)("div",{className:"space-y-5",children:[(0,f.jsxs)("section",{className:"space-y-1",children:[(0,f.jsx)("h4",{className:"text-[24px] leading-[24px] text-[var(--vk-text-strong)]",children:ew?"Repository Defaults":"Repository Configuration"}),(0,f.jsx)("p",{className:"text-[14px] text-[var(--vk-text-muted)]",children:ew?"Review the repository Conductor will use for this workspace. You can edit advanced scripts later from Settings.":"Configure scripts and defaults used whenever this repository is selected for workspaces."})]}),("settings"===t||T.length>1)&&(0,f.jsxs)("section",{className:"space-y-2",children:[(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Select Repository"}),(0,f.jsxs)("select",{value:U,onChange:e=>W(e.target.value),disabled:F||0===T.length||eu,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60",children:[0===T.length&&(0,f.jsx)("option",{value:"",children:"No repositories configured"}),T.map(e=>(0,f.jsx)("option",{value:e.id,children:e.displayName},e.id))]})]}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Select a repository to view and edit its configuration."}),F&&(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Loading repositories..."})]}),ew&&1===T.length&&G&&(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Detected Repository"}),(0,f.jsxs)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[rgba(15,15,15,0.52)] px-3 py-3 text-[13px] text-[var(--vk-text-normal)]",children:[G.displayName,(0,f.jsx)("span",{className:"ml-2 text-[var(--vk-text-muted)]",children:G.path})]})]}),G&&(0,f.jsxs)(f.Fragment,{children:["settings"===t&&(0,f.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,f.jsxs)("div",{className:"space-y-1",children:[(0,f.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"Repo-Preseed Bootstrap"}),(0,f.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Use this when you already know the target repository and want one command to prefill it. The default first-run path is still `npx conductor-oss@latest`, which opens the dashboard and lets the user choose preferences before adding a project."})]}),(0,f.jsxs)("div",{className:"flex flex-wrap gap-2 text-[11px] text-[var(--vk-text-muted)]",children:[(0,f.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["Workspace: ",G.workspaceMode]}),(0,f.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["Runtime: ",G.runtimeMode]}),(0,f.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["SCM: ",G.scmMode]})]}),(0,f.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[rgba(15,15,15,0.72)] p-3",children:(0,f.jsx)("pre",{className:"overflow-x-auto whitespace-pre-wrap break-all text-[12px] leading-5 text-[var(--vk-text-normal)]",children:eI})}),(0,f.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"This command uses your selected agent, editor, and notes app. Best on macOS with Homebrew. GitHub sign-in still opens a browser so the user can approve access."}),(0,f.jsx)(a8,{value:eI,idleLabel:"Copy Setup Command"})]})]}),(0,f.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,f.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"General Settings"}),(0,f.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Configure basic repository information."}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Display Name"}),(0,f.jsx)("input",{value:G.displayName,onChange:e=>V(t=>t?{...t,displayName:e.target.value}:t),className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"A friendly name for this repository."})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Repository Slug"}),(0,f.jsx)("input",{value:G.repo,onChange:e=>V(t=>t?{...t,repo:e.target.value}:t),placeholder:"e.g., your-org/your-repo",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Used for PR tracking, GitHub links, and onboarding defaults."})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Agent"}),(0,f.jsx)("select",{value:G.agent,onChange:e=>{let t=e.target.value;V(e=>e?{...e,agent:t}:e),K(aq(t,R,l,null))},className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:eL.map(e=>(0,f.jsx)("option",{value:e,children:aR(e)},e))}),(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Used by the one-line bootstrap and as the project default when tasks dispatch."})]}),nb(G.agent)&&(0,f.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] px-3 py-3",children:(0,f.jsx)(a4,{agent:G.agent,modelAccess:R,runtimeModelCatalogs:l,selection:q,onChange:K})}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Repository Path"}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{value:G.path,readOnly:!0,onClick:()=>er(!0),placeholder:"Use Browse to select a repository folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("button",{type:"button",onClick:()=>er(!0),disabled:eu,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-60",children:(0,f.jsx)(n_.FolderOpen,{className:"h-4 w-4"})})]}),!G.pathHealth.exists&&(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:"Configured path does not exist on disk."}),G.pathHealth.exists&&!G.pathHealth.isGitRepository&&(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:"Configured path exists but is not a git repository."}),G.pathHealth.suggestedPath&&(0,f.jsx)("button",{type:"button",onClick:()=>{let e=G.pathHealth.suggestedPath??"";e&&(V(t=>t?{...t,path:e,pathHealth:{...t.pathHealth,exists:!0,isGitRepository:!0,suggestedPath:null}}:t),ev(e))},className:"mt-1 inline-flex h-7 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[11px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Use detected git repo path"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Working Directory"}),(0,f.jsx)("input",{value:G.defaultWorkingDirectory,onChange:e=>V(t=>t?{...t,defaultWorkingDirectory:e.target.value}:t),placeholder:"e.g., packages/frontend",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Subdirectory relative to the repository root where the coding agent starts."})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Target Branch"}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{value:G.defaultBranch,onChange:e=>V(t=>t?{...t,defaultBranch:e.target.value}:t),placeholder:"Select a branch",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("button",{type:"button",onClick:()=>{ev()},disabled:J,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-60",title:"Detect branches",children:J?(0,f.jsx)(nG.Loader2,{className:"h-3.5 w-3.5 animate-spin"}):(0,f.jsx)(nK,{className:"h-3.5 w-3.5"})})]}),X.length>0&&(0,f.jsx)("select",{value:G.defaultBranch,onChange:e=>V(t=>t?{...t,defaultBranch:e.target.value}:t),className:"mt-2 h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:X.map(e=>(0,f.jsx)("option",{value:e,children:e},e))}),Q&&(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:Q})]})]}),"settings"===t&&(0,f.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,f.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"Scripts & Configuration"}),(0,f.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Configure dev server, setup, cleanup, archive, and file-copy behavior for this repository."}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Dev Server Script"}),(0,f.jsx)("textarea",{rows:3,value:G.devServerScript,onChange:e=>V(t=>t?{...t,devServerScript:e.target.value}:t),placeholder:"npm run dev",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Starts a development server for this repository."})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Setup Script"}),(0,f.jsx)("textarea",{rows:4,value:G.setupScript,onChange:e=>V(t=>t?{...t,setupScript:e.target.value}:t),placeholder:"npm install",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Runs in the worktree after creation and before/with coding-agent startup."})]}),(0,f.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,f.jsx)("input",{type:"checkbox",checked:G.runSetupInParallel,onChange:e=>V(t=>t?{...t,runSetupInParallel:e.target.checked}:t),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,f.jsx)("span",{children:"Run setup script in parallel with coding agent"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Cleanup Script"}),(0,f.jsx)("textarea",{rows:4,value:G.cleanupScript,onChange:e=>V(t=>t?{...t,cleanupScript:e.target.value}:t),placeholder:"Runs when the workspace is archived and changes exist",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Archive Script"}),(0,f.jsx)("textarea",{rows:4,value:G.archiveScript,onChange:e=>V(t=>t?{...t,archiveScript:e.target.value}:t),placeholder:"Runs when the workspace/session is archived",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Copy Files"}),(0,f.jsx)("input",{value:G.copyFiles,onChange:e=>V(t=>t?{...t,copyFiles:e.target.value}:t),placeholder:".env, config/*.json",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Comma-separated relative file paths or glob patterns copied from the repo to each worktree."})]})]})]})]}):eR?(0,f.jsxs)("div",{className:"space-y-5",children:[(0,f.jsxs)("section",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[rgba(234,122,42,0.06)] px-4 py-3",children:[(0,f.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Security-First Remote Access"}),(0,f.jsx)("p",{className:"mt-1 text-[12px] leading-5 text-[var(--vk-text-muted)]",children:"The dashboard stays bound to localhost. For phone and team access, put a verified edge identity layer like Cloudflare Access in front of it, then map authenticated users into viewer, operator, or admin roles here."})]}),eo?(0,f.jsxs)("section",{className:"flex items-center gap-2 rounded-[6px] border border-[var(--vk-border)] px-4 py-4 text-[13px] text-[var(--vk-text-muted)]",children:[(0,f.jsx)(nG.Loader2,{className:"h-4 w-4 animate-spin"}),"Loading organization access settings..."]}):(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)("section",{className:"grid gap-3 lg:grid-cols-3",children:[(0,f.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] px-4 py-3",children:[(0,f.jsx)("span",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Current Identity"}),(0,f.jsx)("p",{className:"mt-2 text-[14px] text-[var(--vk-text-normal)]",children:en.current.email??"Anonymous local session"})]}),(0,f.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] px-4 py-3",children:[(0,f.jsx)("span",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Effective Role"}),(0,f.jsx)("p",{className:"mt-2 text-[14px] text-[var(--vk-text-normal)]",children:en.current.role??"No access"})]}),(0,f.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] px-4 py-3",children:[(0,f.jsx)("span",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Auth Provider"}),(0,f.jsx)("p",{className:"mt-2 text-[14px] text-[var(--vk-text-normal)]",children:en.current.provider??"Local only"})]})]}),!eO&&(0,f.jsx)("section",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[rgba(80,80,80,0.18)] px-4 py-3",children:(0,f.jsx)("p",{className:"text-[12px] leading-5 text-[var(--vk-text-muted)]",children:"You can review organization security here, but only an admin session can save changes. Use the built-in unlock link, a local admin session, or an admin identity from your edge auth provider to modify access rules."})}),(0,f.jsxs)("section",{className:"space-y-3 rounded-[6px] border border-[var(--vk-border)] px-4 py-4",children:[(0,f.jsxs)("div",{className:"space-y-1",children:[(0,f.jsx)("h5",{className:"text-[18px] leading-[20px] text-[var(--vk-text-strong)]",children:"Baseline Access Rules"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Require authentication for every dashboard request and decide what authenticated users get by default before explicit role bindings are applied."})]}),(0,f.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,f.jsx)("input",{type:"checkbox",checked:en.requireAuth,onChange:e=>ea(t=>({...t,requireAuth:e.target.checked})),disabled:!eO||el,className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,f.jsx)("span",{children:"Require authentication even on localhost"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Role"}),(0,f.jsxs)("select",{value:en.defaultRole,onChange:e=>ea(t=>({...t,defaultRole:e.target.value})),disabled:!eO||el,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60",children:[(0,f.jsx)("option",{value:"viewer",children:"Viewer"}),(0,f.jsx)("option",{value:"operator",children:"Operator"}),(0,f.jsx)("option",{value:"admin",children:"Admin"})]}),(0,f.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"This applies after identity verification when no explicit email or domain binding matches."})]})]}),(0,f.jsxs)("section",{className:"space-y-3 rounded-[6px] border border-[var(--vk-border)] px-4 py-4",children:[(0,f.jsxs)("div",{className:"space-y-1",children:[(0,f.jsx)("h5",{className:"text-[18px] leading-[20px] text-[var(--vk-text-strong)]",children:"Verified Edge Auth"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Recommended for secure public phone access and free team collaboration. Conductor verifies the Cloudflare Access JWT instead of trusting a raw email header."})]}),(0,f.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,f.jsx)("input",{type:"checkbox",checked:en.trustedHeaders.enabled,onChange:e=>ea(t=>({...t,trustedHeaders:{...t.trustedHeaders,enabled:e.target.checked}})),disabled:!eO||el,className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,f.jsx)("span",{children:"Enable verified Cloudflare Access authentication"})]}),(0,f.jsxs)("div",{className:"grid gap-3 lg:grid-cols-2",children:[(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Provider"}),(0,f.jsxs)("select",{value:en.trustedHeaders.provider,onChange:e=>ea(t=>({...t,trustedHeaders:{...t.trustedHeaders,provider:e.target.value}})),disabled:!eO||el,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60",children:[(0,f.jsx)("option",{value:"cloudflare-access",children:"Cloudflare Access (verified JWT)"}),(0,f.jsx)("option",{value:"generic",children:"Generic header passthrough (advanced)"})]})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Identity Email Header"}),(0,f.jsx)("input",{value:en.trustedHeaders.emailHeader,onChange:e=>ea(t=>({...t,trustedHeaders:{...t.trustedHeaders,emailHeader:e.target.value}})),disabled:!eO||el,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"JWT Assertion Header"}),(0,f.jsx)("input",{value:en.trustedHeaders.jwtHeader,onChange:e=>ea(t=>({...t,trustedHeaders:{...t.trustedHeaders,jwtHeader:e.target.value}})),disabled:!eO||el,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"})]}),(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Cloudflare Team Domain"}),(0,f.jsx)("input",{value:en.trustedHeaders.teamDomain,onChange:e=>ea(t=>({...t,trustedHeaders:{...t.trustedHeaders,teamDomain:e.target.value}})),disabled:!eO||el,placeholder:"your-team.cloudflareaccess.com",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"})]}),(0,f.jsxs)("label",{className:"block lg:col-span-2",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Cloudflare Access Audience"}),(0,f.jsx)("input",{value:en.trustedHeaders.audience,onChange:e=>ea(t=>({...t,trustedHeaders:{...t.trustedHeaders,audience:e.target.value}})),disabled:!eO||el,placeholder:"Copy the AUD value from your Cloudflare Access application",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"})]})]}),"generic"===en.trustedHeaders.provider&&(0,f.jsx)("p",{className:"rounded-[4px] border border-[var(--vk-red)]/35 bg-[var(--vk-red)]/10 px-3 py-2 text-[12px] leading-5 text-[var(--vk-red)]",children:"Generic header passthrough is only safe when your reverse proxy strips user-supplied headers and injects identity itself. Conductor blocks this mode by default unless `CONDUCTOR_ALLOW_INSECURE_TRUSTED_HEADERS=true` is also set."})]}),(0,f.jsxs)("section",{className:"space-y-3 rounded-[6px] border border-[var(--vk-border)] px-4 py-4",children:[(0,f.jsxs)("div",{className:"space-y-1",children:[(0,f.jsx)("h5",{className:"text-[18px] leading-[20px] text-[var(--vk-text-strong)]",children:"Role Bindings"}),(0,f.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Map verified team identities into least-privilege roles. `viewer` can inspect work, `operator` can control agents, and `admin` can change global settings."})]}),(0,f.jsx)("div",{className:"grid gap-3 lg:grid-cols-2",children:[{label:"Viewer Emails",key:"viewers",placeholder:"alice@example.com"},{label:"Operator Emails",key:"operators",placeholder:"builder@example.com"},{label:"Admin Emails",key:"admins",placeholder:"owner@example.com"},{label:"Viewer Domains",key:"viewerDomains",placeholder:"guests.example.com"},{label:"Operator Domains",key:"operatorDomains",placeholder:"eng.example.com"},{label:"Admin Domains",key:"adminDomains",placeholder:"admins.example.com"}].map(({label:e,key:t,placeholder:r})=>(0,f.jsxs)("label",{className:"block",children:[(0,f.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:e}),(0,f.jsx)("textarea",{rows:4,value:en.roles[t],onChange:e=>ea(r=>({...r,roles:{...r.roles,[t]:e.target.value}})),disabled:!eO||el,placeholder:r,className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"}),(0,f.jsx)("p",{className:"mt-1 text-[11px] text-[var(--vk-text-muted)]",children:"One entry per line."})]},t))})]})]})]}):(0,f.jsxs)("section",{className:"space-y-3",children:[(0,f.jsx)("h4",{className:"text-[16px] font-medium text-[var(--vk-text-strong)]",children:ey.label}),(0,f.jsx)("p",{className:"text-[14px] text-[var(--vk-text-muted)]",children:"This section is queued for implementation. General, Agents, Remote Access, and repository settings are available now."}),(0,f.jsx)("button",{type:"button",onClick:()=>h("general"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Open General"})]})}),(0,f.jsxs)("footer",{className:"flex flex-col gap-3 border-t border-[var(--vk-border)] px-4 py-3 sm:flex-row sm:items-center sm:justify-between sm:gap-2",children:[(0,f.jsxs)("div",{className:"min-w-0",children:[eF&&(0,f.jsx)("p",{className:"truncate rounded-[4px] border border-[var(--vk-red)]/35 bg-[var(--vk-red)]/10 px-2 py-1 text-[12px] text-[var(--vk-red)]",children:eF}),!eF&&eE&&(0,f.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:ew?"Finish setup once here. You can change these preferences any time from Settings.":"Preferences are saved to your conductor config and applied immediately."}),!eF&&eA&&(0,f.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:ew?"These defaults will be used the first time workspaces and tasks are created for this repo.":"Repository settings are saved to your conductor config and used for future workspaces."}),!eF&&eR&&(0,f.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:"Organization access settings are written into `conductor.yaml`. Use admin role bindings for full control, operator bindings for day-to-day agent usage, and viewer bindings for read-only access."})]}),(0,f.jsxs)("div",{className:"flex w-full flex-wrap items-center justify-end gap-2 sm:w-auto",children:[!ew&&(0,f.jsx)("button",{type:"button",onClick:c,disabled:eu,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Close"}),ew&&eA&&(0,f.jsx)("button",{type:"button",onClick:()=>h("preferences"),disabled:eu,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Back"}),eE&&!ew&&(0,f.jsx)("button",{type:"button",onClick:()=>{e_(a.onboardingAcknowledged,{closeDialog:!0})},disabled:!eD||r,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:r?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(nG.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save"}),eA&&!ew&&(0,f.jsx)("button",{type:"button",onClick:()=>{eh()},disabled:!eT||_||F,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:_?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(nG.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save Repository"}),eR&&!ew&&(0,f.jsx)("button",{type:"button",onClick:()=>{eg()},disabled:!eH||el,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:el?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(nG.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save Access"}),ew&&(0,f.jsx)("button",{type:"button",onClick:()=>{ej?eB():e$()},disabled:ej?!eD||r||F:!eT||eu,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:eu||ej&&F?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(nG.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),ej&&F?"Loading...":"Saving..."]}):ej&&eP?"Continue":"Finish Setup"})]})]})]})]})}),(0,f.jsx)(a6,{open:et,initialPath:G?.path,title:"Select Repository Path",description:"Choose the local git repository folder.",onClose:()=>er(!1),onSelect:e=>{er(!1),e&&(V(t=>t?{...t,path:e,pathHealth:{...t.pathHealth,exists:!0,isGitRepository:!0,suggestedPath:null}}:t),ev(e))}})]})}function oe(){return(0,f.jsx)(a3,{})}e.s(["default",()=>oe],30997)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,34640,e=>{"use strict";var c=e.i(95187);let r=(0,c.createServerReference)("001ea7161acf37120fbad6a94bf5d4b7fb96c391a6",c.callServer,void 0,c.findSourceMapURL,"createOrReadKeylessAction");e.s(["createOrReadKeylessAction",()=>r])},23151,e=>{"use strict";e.s([],29135),e.i(29135);var c=e.i(95187);let r=(0,c.createServerReference)("4073fa5873c15ed8bea784c7076599e7a333482701",c.callServer,void 0,c.findSourceMapURL,"syncKeylessConfigAction");var t=e.i(34640);let a=(0,c.createServerReference)("00e2b3644dd42a5e17414dc47ba7dda75cdf1a4fb8",c.callServer,void 0,c.findSourceMapURL,"deleteKeylessAction");var s=e.i(98763);e.s(["createOrReadKeylessAction",()=>t.createOrReadKeylessAction,"deleteKeylessAction",()=>a,"detectKeylessEnvDriftAction",()=>s.detectKeylessEnvDriftAction,"syncKeylessConfigAction",()=>r],23151)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,36832,80235,2758,45241,e=>{"use strict";var t=e.i(18050),r=e.i(71645),a=e.i(75254);let s=(0,a.default)("panel-left-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]]),n=(0,a.default)("panel-right-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m8 9 3 3-3 3",key:"12hl5m"}]]);var l=e.i(18620);let i="conductor-workspace-sidebar-width";function o({sidebar:e,children:a,sidebarOpen:o,onToggleSidebar:c}){let[d,u]=(0,r.useState)(356),[x,p]=(0,r.useState)(!1);(0,r.useEffect)(()=>{try{let e=window.localStorage.getItem(i),t=e?Number.parseInt(e,10):NaN;Number.isFinite(t)&&u(Math.min(460,Math.max(296,t)))}catch{}},[]),(0,r.useEffect)(()=>{if(!x)return;let e=e=>{u(Math.min(460,Math.max(296,e.clientX)))},t=()=>{p(!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(i,String(d))}catch{}}},[x,d]);let m={"--workspace-sidebar-width":`${d}px`};return(0,t.jsxs)("div",{style:m,className:"relative flex h-dvh min-h-[100dvh] w-full max-w-full overflow-hidden bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:[o&&(0,t.jsx)("button",{type:"button",className:"absolute inset-0 z-20 bg-black/45 lg:hidden",onClick:c,"aria-label":"Close workspace panel"}),(0,t.jsx)("aside",{className:(0,l.cn)("absolute inset-y-0 left-0 z-30 flex h-full w-[min(90vw,var(--workspace-sidebar-width))] flex-col border-r border-[var(--vk-border)] bg-[var(--vk-bg-panel)] transition-transform duration-200 lg:relative lg:w-[var(--workspace-sidebar-width)]",o?"translate-x-0":"-translate-x-full lg:-translate-x-0 lg:w-0 lg:overflow-hidden lg:border-r-0","lg:left-auto"),children:e}),o?(0,t.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:()=>p(!0),"aria-hidden":"true",children:(0,t.jsx)("div",{className:"mx-auto h-full w-px bg-transparent transition-colors hover:bg-[var(--vk-border)]"})}):null,o&&(0,t.jsx)("button",{type:"button",onClick:c,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,t.jsx)(n,{className:"h-4 w-4"})}),(0,t.jsxs)("main",{className:"relative flex min-w-0 flex-1 flex-col overflow-hidden bg-[var(--vk-bg-main)]",children:[!o&&(0,t.jsx)("button",{type:"button",onClick:c,className:"absolute left-2 top-2 z-40 inline-flex 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)]","aria-label":"Open workspace panel",children:(0,t.jsx)(s,{className:"h-4 w-4"})}),a]})]})}e.s(["AppShell",()=>o],36832);let c=(0,a.default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),d=(0,r.memo)(function({title:e,onOpenPreferences:r}){return(0,t.jsxs)("header",{className:"flex h-12 items-center border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-4 text-[13px] text-[var(--vk-text-muted)] sm:h-14 sm:px-5 sm:text-[14px]",children:[(0,t.jsx)("div",{className:"min-w-0 flex-1 text-center",children:(0,t.jsx)("span",{className:"block truncate font-medium tracking-[0.01em] text-[var(--vk-text-normal)]",children:e??"All Projects"})}),r?(0,t.jsx)("div",{className:"ml-1 flex shrink-0",children:(0,t.jsx)("button",{type:"button",onClick:r,className:"inline-flex h-8 w-8 items-center justify-center rounded-[6px] 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,t.jsx)(c,{className:"h-4 w-4"})})}):null]})});e.s(["TopBar",0,d],80235);let u=(0,a.default)("layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]]);e.s(["Layers3",()=>u],2758);var x=e.i(7233),p=e.i(52808);let m=(0,a.default)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);var v=e.i(55436);let h=[{top:0,left:1,delay:"0ms",opacity:1},{top:0,left:9,delay:"120ms",opacity:.9},{top:6,left:1,delay:"240ms",opacity:.8},{top:6,left:9,delay:"360ms",opacity:.7},{top:12,left:1,delay:"480ms",opacity:.6},{top:12,left:9,delay:"600ms",opacity:.45}];function f(e){let t=e.metadata.worktree?.trim()??"";return t&&t.replace(/\\/g,"/").replace(/\/+$/,"").includes("/worktrees/")?"worktree":"local"}function b(e){let t=e.branch?.trim();if(t)return t;let r=e.summary?.trim()||e.metadata.summary?.trim();return r||(e.status?.trim()?e.status.replace(/[_-]+/g," "):e.id.slice(0,8))}function g({running:e}){return(0,t.jsx)("span",{className:"mt-1 inline-flex h-4 w-4 shrink-0 items-center justify-center text-[var(--vk-orange)]",children:(0,t.jsx)("span",{className:"relative h-[12px] w-[10px]",children:h.map((r,a)=>(0,t.jsx)("span",{className:(0,l.cn)("absolute h-[2px] w-[2px] rounded-full bg-current",e&&"animate-pulse"),style:{top:`${Math.round(.75*r.top)}px`,left:`${Math.round(.75*r.left)}px`,opacity:r.opacity,animationDelay:r.delay}},a))})})}function k({sessions:e,selectedId:a,onSelect:s,onArchive:n,onCreateWorkspace:i,showHeader:o=!0}){let[c,d]=(0,r.useState)(""),[u,x]=(0,r.useState)(null),[h,k]=(0,r.useState)(null),y=(0,r.useMemo)(()=>{let t=e.filter(e=>"archived"!==e.status);if(!c.trim())return t;let r=c.toLowerCase();return t.filter(e=>{let t=e.summary??"",a=e.branch??"",s=e.metadata.agent??"",n=f(e),l=b(e);return e.id.toLowerCase().includes(r)||e.projectId.toLowerCase().includes(r)||t.toLowerCase().includes(r)||a.toLowerCase().includes(r)||s.toLowerCase().includes(r)||n.toLowerCase().includes(r)||l.toLowerCase().includes(r)})},[c,e]),w=async(e,t)=>{if(e.stopPropagation(),e.preventDefault(),n&&u!==t){x(t);try{await n(t)}catch(e){console.error("Failed to archive session",e),k(t),window.setTimeout(()=>k(null),3e3)}finally{x(e=>e===t?null:e)}}},j=(0,r.useMemo)(()=>[...y].sort((e,t)=>new Date(t.lastActivityAt).getTime()-new Date(e.lastActivityAt).getTime()),[y]);return(0,t.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[o&&(0,t.jsxs)("div",{className:"flex h-[33px] items-center gap-1 px-2",children:[(0,t.jsx)("p",{className:"text-[16px] text-[var(--vk-text-normal)]",children:"Workspaces"}),i&&(0,t.jsx)("button",{type:"button",onClick:i,className:"ml-auto inline-flex h-5 w-5 items-center justify-center rounded-[3px] text-[var(--vk-orange)] hover:bg-[var(--vk-bg-hover)] lg:hidden","aria-label":"New workspace",children:(0,t.jsx)("span",{className:"text-[14px]",children:"+"})})]}),(0,t.jsx)("div",{className:(0,l.cn)("flex h-[38px] items-center px-2 pb-1.5",!o&&"pt-1.5"),children:(0,t.jsxs)("label",{className:"flex h-[30px] flex-1 items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2",children:[(0,t.jsx)(v.Search,{className:"h-3.5 w-3.5 text-[var(--vk-text-muted)]"}),(0,t.jsx)("input",{value:c,onChange:e=>d(e.target.value),placeholder:"Search...",className:"ml-1.5 w-full bg-transparent text-[14px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]})}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto px-2 pb-2",children:0===j.length?(0,t.jsx)("p",{className:"px-2 py-2 text-[14px] text-[var(--vk-text-muted)]",children:"No sessions"}):(0,t.jsx)("div",{className:"space-y-2",children:j.map(e=>{let r=(0,p.getAttentionLevel)(e),i=function(e){for(let t of[e.metadata.lastStderr,e.metadata.summary,e.summary]){if(!t)continue;let e=t.match(/(\d+)\s+insertions?\(\+\),\s+(\d+)\s+deletions?\(-\)/i);if(!e)continue;let r=Number.parseInt(e[1]??"0",10),a=Number.parseInt(e[2]??"0",10);if(Number.isFinite(r)&&Number.isFinite(a))return{additions:r,deletions:a}}return null}(e),o=function(e,t){let r=`${e.summary??""} ${e.metadata.summary??""}`.toLowerCase();if("killed"===e.status||r.includes("interrupted"))return{label:"Interrupted",className:"text-[var(--vk-orange)]"};switch(t){case"merge":return{label:"Ready",className:"text-[var(--vk-green)]"};case"respond":return{label:"Needs input",className:"text-[var(--vk-red)]"};case"review":return{label:"Review",className:"text-[var(--vk-orange)]"};case"working":return{label:"Running",className:"text-[#4e87f3]"};case"done":return{label:"Done",className:"text-[var(--vk-text-muted)]"};default:return{label:"Queued",className:"text-[var(--vk-text-muted)]"}}}(e,r),c=e.id===a,d=u===e.id,x=h===e.id;return(0,t.jsxs)("div",{onClick:()=>s(e.id),onKeyDown:t=>{var r;return r=e.id,void(("Enter"===t.key||" "===t.key)&&(t.preventDefault(),s(r)))},role:"button",tabIndex:0,className:(0,l.cn)("group flex w-full items-start gap-3 rounded-[8px] border px-3 py-3 text-left transition-colors",c?"border-[rgba(234,122,42,0.28)] bg-[rgba(255,255,255,0.08)]":"border-[var(--vk-border)] bg-[rgba(255,255,255,0.02)] hover:bg-[var(--vk-bg-hover)]"),children:[(0,t.jsx)(g,{running:"working"===r}),(0,t.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("span",{className:"flex items-start gap-2",children:[(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-[14px] font-medium text-[var(--vk-text-strong)]",children:f(e)}),(0,t.jsx)("span",{className:"shrink-0 rounded-[8px] bg-[rgba(255,255,255,0.06)] px-2.5 py-1 text-[11px] font-medium",children:i?(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsxs)("span",{className:"text-[#18c58f]",children:["+",i.additions]}),(0,t.jsxs)("span",{className:"text-[#f26d6d]",children:["-",i.deletions]})]}):(0,t.jsx)("span",{className:o.className,children:o.label})})]}),(0,t.jsx)("span",{className:"mt-1 block truncate text-[12px] text-[var(--vk-text-muted)]",children:b(e)})]}),n?(0,t.jsx)("button",{type:"button",onClick:t=>void w(t,e.id),disabled:d,className:(0,l.cn)("mt-0.5 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-[6px] border border-[var(--vk-border)] text-[var(--vk-text-muted)] transition","opacity-70 group-hover:opacity-100 focus-visible:opacity-100","hover:border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]",d&&"cursor-wait opacity-100"),"aria-label":`Archive session ${e.id}`,title:x?"Archive failed":"Archive session",children:(0,t.jsx)(m,{className:(0,l.cn)("h-3.5 w-3.5",x&&"text-red-400")})}):null]},e.id)})})})]})}let y=(0,r.memo)(function({orgLabel:e,projects:a,selectedProjectId:s,onSelectProject:n,sessions:i,selectedSessionId:o,onSelectSession:c,onArchiveSession:d,onCreateWorkspace:m}){let v=(0,r.useMemo)(()=>{let e=new Map;for(let t of i){if("archived"===t.status)continue;let r=e.get(t.projectId)??{total:0,active:0};r.total+=1,"done"!==(0,p.getAttentionLevel)(t)&&(r.active+=1),e.set(t.projectId,r)}return e},[i]),h=(0,r.useMemo)(()=>i.filter(e=>"archived"!==e.status&&"done"!==(0,p.getAttentionLevel)(e)).length,[i]);return(0,t.jsxs)("div",{className:"flex h-full min-h-0 w-full flex-col bg-[var(--vk-bg-panel)]",children:[(0,t.jsxs)("section",{className:"border-b border-[var(--vk-border)] px-4 py-4",children:[(0,t.jsxs)("div",{className:"flex items-start gap-3",children:[(0,t.jsx)("span",{className:"inline-flex h-10 w-10 items-center justify-center rounded-[10px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:(0,t.jsx)(u,{className:"h-4 w-4"})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("p",{className:"truncate text-[15px] font-medium leading-[21px] text-[var(--vk-text-strong)]",children:e}),(0,t.jsxs)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:[a.length," projects, ",h," active sessions"]})]})]}),(0,t.jsxs)("button",{type:"button",onClick:m,className:"mt-3 inline-flex h-8 w-full items-center justify-center gap-1 rounded-[6px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Add workspace",children:[(0,t.jsx)(x.Plus,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:"Add Workspace"})]})]}),(0,t.jsxs)("section",{className:"border-b border-[var(--vk-border)] pb-2 pt-1.5",children:[(0,t.jsx)("div",{className:"flex h-[28px] items-center px-3",children:(0,t.jsx)("p",{className:"text-[11px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Projects"})}),(0,t.jsxs)("div",{className:"max-h-[260px] overflow-y-auto px-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>n(null),className:(0,l.cn)("mb-1.5 flex w-full items-center gap-3 rounded-[6px] px-3 py-2.5 text-left text-[14px] leading-[21px]",null===s?"bg-[var(--vk-bg-hover)] text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"),children:[(0,t.jsx)("span",{className:"h-2.5 w-2.5 rounded-full bg-[var(--vk-text-muted)]"}),(0,t.jsx)("span",{className:"truncate",children:"All projects"}),(0,t.jsx)("span",{className:"ml-auto text-[11px] text-[var(--vk-text-muted)]",children:i.length})]}),a.map(e=>{let r=s===e.id,a=v.get(e.id)??{total:0,active:0};return(0,t.jsxs)("button",{type:"button",onClick:()=>n(e.id),className:(0,l.cn)("mb-1.5 flex w-full items-center gap-3 rounded-[6px] px-3 py-2.5 text-left text-[14px] leading-[21px]",r?"bg-[var(--vk-bg-hover)] text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"),children:[(0,t.jsx)("span",{className:"mt-1 h-2.5 w-2.5 shrink-0 rounded-full bg-[#3c83f6]"}),(0,t.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,t.jsx)("span",{className:"block truncate",children:e.id}),e.description?(0,t.jsx)("span",{className:"block truncate text-[11px] text-[var(--vk-text-muted)]",children:e.description}):null]}),(0,t.jsxs)("span",{className:"shrink-0 text-right",children:[(0,t.jsxs)("span",{className:"block text-[11px] text-[var(--vk-text-normal)]",children:[a.active," active"]}),(0,t.jsxs)("span",{className:"block text-[10px] text-[var(--vk-text-muted)]",children:[a.total," total"]})]})]},e.id)})]})]}),(0,t.jsx)("section",{className:"flex min-h-0 flex-1 flex-col pt-1.5",children:(0,t.jsx)(k,{sessions:i,selectedId:o,onSelect:c,onArchive:d,onCreateWorkspace:m,showHeader:!1})})]})});e.s(["WorkspaceSidebarPanel",0,y],45241)},2004,e=>{"use strict";var t=e.i(71645);function r(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 a(){let[e,a]=(0,t.useState)([]),[s,n]=(0,t.useState)(!0),[l,i]=(0,t.useState)(null),o=(0,t.useRef)(!1),c=(0,t.useCallback)(async()=>{try{let e=await fetch("/api/config");if(!e.ok)throw Error(`Failed to fetch config: ${e.status}`);let t=await e.json();a(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?r("string"==typeof e.id&&e.id.trim().length>0?e.id:`project-${t+1}`,e):r(`project-${t+1}`,null)):"object"==typeof t?Object.entries(t).map(([e,t])=>r(e,t&&"object"==typeof t?t:null)):[]:[]}(t)),i(null)}catch(e){a([]),i(e instanceof Error?e.message:"Failed to fetch config")}finally{n(!1)}},[]);return(0,t.useEffect)(()=>{o.current||(o.current=!0,c())},[c]),{projects:e,loading:s,error:l,refresh:c}}e.s(["useConfig",()=>a])},89965,e=>{"use strict";var t=e.i(71645),r=e.i(97878);function a(e){let[a,s]=(0,t.useState)([]),[n,l]=(0,t.useState)(!0),[i,o]=(0,t.useState)(null),c=(0,t.useRef)(!0),d=(0,t.useCallback)(e=>{s(t=>!function(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let r=0;r<e.length;r+=1){let a=e[r],s=t[r];if(!a||!s||a.id!==s.id||a.status!==s.status||a.activity!==s.activity||a.projectId!==s.projectId||a.issueId!==s.issueId||a.branch!==s.branch||a.lastActivityAt!==s.lastActivityAt||a.summary!==s.summary)return!1}return!0}(t,e)?e:t)},[]),u=(0,t.useCallback)(async()=>{try{let t="string"==typeof e&&e.trim().length>0?`?project=${encodeURIComponent(e.trim())}`:"",r=await fetch(`/api/sessions${t}`);if(!r.ok)throw Error(`Failed to fetch sessions: ${r.status}`);let a=await r.json(),s=Array.isArray(a)?a:Array.isArray(a.sessions)?a.sessions:[];if(!c.current)return;d(s),o(null)}catch(e){c.current&&o(e instanceof Error?e.message:"Unknown error")}finally{c.current&&l(!1)}},[d,e]);return(0,t.useEffect)(()=>{c.current=!0,l(!0),u();let t=null,a=()=>{null!==t&&(window.clearTimeout(t),t=null)},s=()=>{a(),t=window.setTimeout(async()=>{c.current&&(await u(),c.current&&s())},"visible"===document.visibilityState?15e3:45e3)};s();let n=(0,r.subscribeToSnapshotEvents)(t=>{var r;let a;c.current&&(d((r=t.sessions,(a=e?.trim())?r.filter(e=>e.projectId===a):r)),o(null),l(!1))}),i=()=>{u(),s()},x=()=>{"visible"===document.visibilityState?i():s()};return window.addEventListener("focus",i),document.addEventListener("visibilitychange",x),()=>{c.current=!1,n(),a(),window.removeEventListener("focus",i),document.removeEventListener("visibilitychange",x)}},[d,u,e]),{sessions:a,loading:n,error:i,refresh:u}}e.s(["useSessions",()=>a])},9106,e=>{"use strict";var t=e.i(18050),r=e.i(71645),a=e.i(18566),s=e.i(36832),n=e.i(80235),l=e.i(45241),i=e.i(93289),o=e.i(2004),c=e.i(89965);function d(){let e=(0,a.useParams)(),d=(0,a.useRouter)(),{projects:u}=(0,o.useConfig)(),{sessions:x,refresh:p}=(0,c.useSessions)(),[m,v]=(0,r.useState)(!0),[h,f]=(0,r.useState)(null);(0,r.useEffect)(()=>{window.innerWidth<1024&&v(!1)},[]);let b=(0,r.useMemo)(()=>x.find(t=>t.id===e.id)??null,[x,e.id]),g=(0,r.useMemo)(()=>b?[b.projectId,b.branch].filter(Boolean).join(" · "):h||"Session",[h,b]);async function k(t){let r=await fetch(`/api/sessions/${encodeURIComponent(t)}/archive`,{method:"POST"}),a=await r.json().catch(()=>null);if(404===r.status&&(r=await fetch(`/api/sessions/${encodeURIComponent(t)}/actions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"archive"})}),a=await r.json().catch(()=>null)),!r.ok)throw Error(a?.error??`Failed to archive session: ${r.status}`);t===e.id?d.push("/"):await p()}return(0,r.useEffect)(()=>{b?.projectId?f(b.projectId):!h&&u.length>0&&f(u[0]?.id??null)},[u,h,b?.projectId]),e.id?(0,t.jsxs)(s.AppShell,{sidebarOpen:m,onToggleSidebar:()=>v(e=>!e),sidebar:(0,t.jsx)(l.WorkspaceSidebarPanel,{orgLabel:"conductor-oss",projects:u,selectedProjectId:h,onSelectProject:e=>{f(e)},sessions:x,selectedSessionId:e.id,onSelectSession:e=>{d.push(`/sessions/${encodeURIComponent(e)}?tab=chat`),window.innerWidth<1024&&v(!1)},onArchiveSession:k,onCreateWorkspace:()=>{d.push("/")}}),children:[(0,t.jsx)(n.TopBar,{title:g}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:(0,t.jsx)(i.SessionDetail,{sessionId:e.id})})]}):(0,t.jsx)("div",{className:"flex h-dvh min-h-[100dvh] items-center justify-center",children:(0,t.jsx)("span",{className:"text-[13px] text-[var(--text-muted)]",children:"No session ID provided"})})}function u(){return(0,t.jsx)(d,{})}e.s(["default",()=>u],9106)}]);