@shipit-ai/cli 1.169.0 → 1.170.0-pr13.d3605b0

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 (414) hide show
  1. package/apis/json-schema/ClaudeCodeProxyConfig.yaml +20 -0
  2. package/apis/json-schema/FeatureFlags.yaml +5 -0
  3. package/apis/json-schema/LiteLLMProxyConfig.yaml +17 -0
  4. package/apis/json-schema/LiteLLMProxyRoutingMode.yaml +8 -0
  5. package/apis/json-schema/Settings.yaml +3 -0
  6. package/dist/packages/core/src/application/ports/output/services/index.d.ts +1 -0
  7. package/dist/packages/core/src/application/ports/output/services/index.d.ts.map +1 -1
  8. package/dist/packages/core/src/application/ports/output/services/plugin-marketplace.interface.d.ts +46 -0
  9. package/dist/packages/core/src/application/ports/output/services/plugin-marketplace.interface.d.ts.map +1 -0
  10. package/dist/packages/core/src/application/ports/output/services/plugin-marketplace.interface.js +12 -0
  11. package/dist/packages/core/src/application/use-cases/plugins/add-marketplace.use-case.d.ts +16 -0
  12. package/dist/packages/core/src/application/use-cases/plugins/add-marketplace.use-case.d.ts.map +1 -0
  13. package/dist/packages/core/src/application/use-cases/plugins/add-marketplace.use-case.js +34 -0
  14. package/dist/packages/core/src/application/use-cases/plugins/fetch-plugin-catalog.use-case.d.ts +24 -0
  15. package/dist/packages/core/src/application/use-cases/plugins/fetch-plugin-catalog.use-case.d.ts.map +1 -0
  16. package/dist/packages/core/src/application/use-cases/plugins/fetch-plugin-catalog.use-case.js +52 -0
  17. package/dist/packages/core/src/application/use-cases/plugins/install-plugin.use-case.d.ts +17 -0
  18. package/dist/packages/core/src/application/use-cases/plugins/install-plugin.use-case.d.ts.map +1 -0
  19. package/dist/packages/core/src/application/use-cases/plugins/install-plugin.use-case.js +33 -0
  20. package/dist/packages/core/src/application/use-cases/plugins/toggle-plugin.use-case.d.ts +17 -0
  21. package/dist/packages/core/src/application/use-cases/plugins/toggle-plugin.use-case.d.ts.map +1 -0
  22. package/dist/packages/core/src/application/use-cases/plugins/toggle-plugin.use-case.js +33 -0
  23. package/dist/packages/core/src/application/use-cases/plugins/uninstall-plugin.use-case.d.ts +16 -0
  24. package/dist/packages/core/src/application/use-cases/plugins/uninstall-plugin.use-case.d.ts.map +1 -0
  25. package/dist/packages/core/src/application/use-cases/plugins/uninstall-plugin.use-case.js +33 -0
  26. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  27. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -0
  28. package/dist/packages/core/src/domain/generated/output.d.ts +59 -0
  29. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  30. package/dist/packages/core/src/domain/generated/output.js +6 -0
  31. package/dist/packages/core/src/infrastructure/di/modules/services.module.d.ts.map +1 -1
  32. package/dist/packages/core/src/infrastructure/di/modules/services.module.js +13 -0
  33. package/dist/packages/core/src/infrastructure/di/modules/use-cases.module.d.ts.map +1 -1
  34. package/dist/packages/core/src/infrastructure/di/modules/use-cases.module.js +12 -0
  35. package/dist/packages/core/src/infrastructure/di/modules/web-tokens.module.d.ts.map +1 -1
  36. package/dist/packages/core/src/infrastructure/di/modules/web-tokens.module.js +22 -0
  37. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +9 -0
  38. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  39. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +41 -0
  40. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/054-add-litellm-proxy.d.ts +14 -0
  41. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/054-add-litellm-proxy.d.ts.map +1 -0
  42. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/054-add-litellm-proxy.js +28 -0
  43. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/055-add-litellm-proxy-agent-config.d.ts +15 -0
  44. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/055-add-litellm-proxy-agent-config.d.ts.map +1 -0
  45. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/055-add-litellm-proxy-agent-config.js +32 -0
  46. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  47. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +36 -5
  48. package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-provider.service.d.ts.map +1 -1
  49. package/dist/packages/core/src/infrastructure/services/agents/common/agent-executor-provider.service.js +7 -1
  50. package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.d.ts +4 -1
  51. package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.d.ts.map +1 -1
  52. package/dist/packages/core/src/infrastructure/services/agents/common/executors/claude-code-executor.service.js +44 -0
  53. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.d.ts.map +1 -1
  54. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/feature-agent-worker.js +5 -0
  55. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/index.d.ts +4 -0
  56. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/index.d.ts.map +1 -0
  57. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/index.js +3 -0
  58. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.schema.d.ts +78 -0
  59. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.schema.d.ts.map +1 -0
  60. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.schema.js +46 -0
  61. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.service.d.ts +29 -0
  62. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.service.d.ts.map +1 -0
  63. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.service.js +147 -0
  64. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.validators.d.ts +11 -0
  65. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.validators.d.ts.map +1 -0
  66. package/dist/packages/core/src/infrastructure/services/plugin-marketplace/plugin-marketplace.validators.js +47 -0
  67. package/dist/src/presentation/web/app/actions/add-marketplace.d.ts +5 -0
  68. package/dist/src/presentation/web/app/actions/add-marketplace.d.ts.map +1 -0
  69. package/dist/src/presentation/web/app/actions/add-marketplace.js +11 -0
  70. package/dist/src/presentation/web/app/actions/fetch-plugin-catalog.d.ts +5 -0
  71. package/dist/src/presentation/web/app/actions/fetch-plugin-catalog.d.ts.map +1 -0
  72. package/dist/src/presentation/web/app/actions/fetch-plugin-catalog.js +11 -0
  73. package/dist/src/presentation/web/app/actions/install-plugin.d.ts +5 -0
  74. package/dist/src/presentation/web/app/actions/install-plugin.d.ts.map +1 -0
  75. package/dist/src/presentation/web/app/actions/install-plugin.js +11 -0
  76. package/dist/src/presentation/web/app/actions/toggle-plugin.d.ts +5 -0
  77. package/dist/src/presentation/web/app/actions/toggle-plugin.d.ts.map +1 -0
  78. package/dist/src/presentation/web/app/actions/toggle-plugin.js +11 -0
  79. package/dist/src/presentation/web/app/actions/uninstall-plugin.d.ts +5 -0
  80. package/dist/src/presentation/web/app/actions/uninstall-plugin.d.ts.map +1 -0
  81. package/dist/src/presentation/web/app/actions/uninstall-plugin.js +11 -0
  82. package/dist/src/presentation/web/app/plugins/page.d.ts +2 -0
  83. package/dist/src/presentation/web/app/plugins/page.d.ts.map +1 -0
  84. package/dist/src/presentation/web/app/plugins/page.js +23 -0
  85. package/dist/src/presentation/web/components/common/repository-node/repository-drawer.stories.d.ts.map +1 -1
  86. package/dist/src/presentation/web/components/common/repository-node/repository-drawer.stories.js +1 -0
  87. package/dist/src/presentation/web/components/features/plugins/plugin-card.d.ts +9 -0
  88. package/dist/src/presentation/web/components/features/plugins/plugin-card.d.ts.map +1 -0
  89. package/dist/src/presentation/web/components/features/plugins/plugin-card.js +15 -0
  90. package/dist/src/presentation/web/components/features/plugins/plugin-card.stories.d.ts +17 -0
  91. package/dist/src/presentation/web/components/features/plugins/plugin-card.stories.d.ts.map +1 -0
  92. package/dist/src/presentation/web/components/features/plugins/plugin-card.stories.js +60 -0
  93. package/dist/src/presentation/web/components/features/plugins/plugin-detail-drawer.d.ts +11 -0
  94. package/dist/src/presentation/web/components/features/plugins/plugin-detail-drawer.d.ts.map +1 -0
  95. package/dist/src/presentation/web/components/features/plugins/plugin-detail-drawer.js +33 -0
  96. package/dist/src/presentation/web/components/features/plugins/plugin-detail-drawer.stories.d.ts +18 -0
  97. package/dist/src/presentation/web/components/features/plugins/plugin-detail-drawer.stories.d.ts.map +1 -0
  98. package/dist/src/presentation/web/components/features/plugins/plugin-detail-drawer.stories.js +51 -0
  99. package/dist/src/presentation/web/components/features/plugins/plugins-page-client.d.ts +6 -0
  100. package/dist/src/presentation/web/components/features/plugins/plugins-page-client.d.ts.map +1 -0
  101. package/dist/src/presentation/web/components/features/plugins/plugins-page-client.js +124 -0
  102. package/dist/src/presentation/web/components/features/plugins/plugins-page-client.stories.d.ts +12 -0
  103. package/dist/src/presentation/web/components/features/plugins/plugins-page-client.stories.d.ts.map +1 -0
  104. package/dist/src/presentation/web/components/features/plugins/plugins-page-client.stories.js +24 -0
  105. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.d.ts.map +1 -1
  106. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.js +7 -0
  107. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.d.ts.map +1 -1
  108. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.js +2 -0
  109. package/dist/src/presentation/web/components/features/settings/litellm-proxy-routing-section.d.ts +6 -0
  110. package/dist/src/presentation/web/components/features/settings/litellm-proxy-routing-section.d.ts.map +1 -0
  111. package/dist/src/presentation/web/components/features/settings/litellm-proxy-routing-section.js +72 -0
  112. package/dist/src/presentation/web/components/features/settings/litellm-proxy-routing-section.stories.d.ts +16 -0
  113. package/dist/src/presentation/web/components/features/settings/litellm-proxy-routing-section.stories.d.ts.map +1 -0
  114. package/dist/src/presentation/web/components/features/settings/litellm-proxy-routing-section.stories.js +64 -0
  115. package/dist/src/presentation/web/components/features/settings/litellm-proxy-settings-section.d.ts +6 -0
  116. package/dist/src/presentation/web/components/features/settings/litellm-proxy-settings-section.d.ts.map +1 -0
  117. package/dist/src/presentation/web/components/features/settings/litellm-proxy-settings-section.js +73 -0
  118. package/dist/src/presentation/web/components/features/settings/litellm-proxy-settings-section.stories.d.ts +15 -0
  119. package/dist/src/presentation/web/components/features/settings/litellm-proxy-settings-section.stories.d.ts.map +1 -0
  120. package/dist/src/presentation/web/components/features/settings/litellm-proxy-settings-section.stories.js +29 -0
  121. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  122. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +5 -2
  123. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts.map +1 -1
  124. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.js +1 -0
  125. package/dist/src/presentation/web/components/features/skills/skills-page-client.d.ts.map +1 -1
  126. package/dist/src/presentation/web/components/features/skills/skills-page-client.js +6 -2
  127. package/dist/src/presentation/web/components/features/tools/tools-page-client.d.ts.map +1 -1
  128. package/dist/src/presentation/web/components/features/tools/tools-page-client.js +23 -4
  129. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
  130. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +2 -2
  131. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.d.ts.map +1 -1
  132. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.js +1 -0
  133. package/dist/src/presentation/web/hooks/feature-flags-context.d.ts.map +1 -1
  134. package/dist/src/presentation/web/hooks/feature-flags-context.js +1 -0
  135. package/dist/src/presentation/web/lib/feature-flags.d.ts +2 -0
  136. package/dist/src/presentation/web/lib/feature-flags.d.ts.map +1 -1
  137. package/dist/src/presentation/web/lib/feature-flags.js +6 -0
  138. package/dist/translations/ar/web.json +56 -2
  139. package/dist/translations/de/web.json +56 -2
  140. package/dist/translations/en/web.json +56 -2
  141. package/dist/translations/es/web.json +56 -2
  142. package/dist/translations/fr/web.json +56 -2
  143. package/dist/translations/he/web.json +56 -2
  144. package/dist/translations/pt/web.json +56 -2
  145. package/dist/translations/ru/web.json +56 -2
  146. package/dist/tsconfig.build.tsbuildinfo +1 -1
  147. package/package.json +1 -1
  148. package/web/.next/BUILD_ID +1 -1
  149. package/web/.next/app-path-routes-manifest.json +1 -0
  150. package/web/.next/build-manifest.json +3 -3
  151. package/web/.next/fallback-build-manifest.json +3 -3
  152. package/web/.next/prerender-manifest.json +3 -3
  153. package/web/.next/required-server-files.js +3 -3
  154. package/web/.next/required-server-files.json +3 -3
  155. package/web/.next/routes-manifest.json +6 -0
  156. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +29 -29
  157. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  158. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  159. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +27 -27
  160. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  161. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  162. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +31 -31
  163. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  164. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  165. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +37 -37
  166. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  167. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  168. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +37 -37
  169. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  170. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  171. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  172. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  173. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  174. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  175. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  176. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  177. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +27 -27
  178. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  179. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  180. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +31 -31
  181. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  182. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  183. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +37 -37
  184. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  185. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  186. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +37 -37
  187. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  188. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  189. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +27 -27
  190. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  191. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  192. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  193. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  194. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  195. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  196. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  197. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  198. package/web/.next/server/app/_global-error.html +1 -1
  199. package/web/.next/server/app/_global-error.rsc +1 -1
  200. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  201. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  202. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  203. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  204. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  205. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +6 -6
  206. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  207. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  208. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  209. package/web/.next/server/app/api/dialog/pick-files/route.js.nft.json +1 -1
  210. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  211. package/web/.next/server/app/api/graph-data/route.js +1 -1
  212. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  213. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js +1 -1
  214. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  215. package/web/.next/server/app/api/sessions-batch/route.js +1 -1
  216. package/web/.next/server/app/api/sessions-batch/route.js.nft.json +1 -1
  217. package/web/.next/server/app/plugins/page/app-paths-manifest.json +3 -0
  218. package/web/.next/server/app/plugins/page/build-manifest.json +18 -0
  219. package/web/.next/server/app/plugins/page/next-font-manifest.json +10 -0
  220. package/web/.next/server/app/plugins/page/react-loadable-manifest.json +8 -0
  221. package/web/.next/server/app/plugins/page/server-reference-manifest.json +185 -0
  222. package/web/.next/server/app/plugins/page.js +17 -0
  223. package/web/.next/server/app/plugins/page.js.map +5 -0
  224. package/web/.next/server/app/plugins/page.js.nft.json +1 -0
  225. package/web/.next/server/app/plugins/page_client-reference-manifest.js +3 -0
  226. package/web/.next/server/app/settings/page/server-reference-manifest.json +34 -22
  227. package/web/.next/server/app/settings/page.js +1 -1
  228. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  229. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  230. package/web/.next/server/app/skills/page/server-reference-manifest.json +11 -11
  231. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  232. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  233. package/web/.next/server/app/tools/page/server-reference-manifest.json +11 -11
  234. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  235. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  236. package/web/.next/server/app/version/page/server-reference-manifest.json +6 -6
  237. package/web/.next/server/app/version/page.js.nft.json +1 -1
  238. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  239. package/web/.next/server/app-paths-manifest.json +1 -0
  240. package/web/.next/server/chunks/11es_next_dist_esm_build_templates_app-route_067cwst.js +1 -1
  241. package/web/.next/server/chunks/11es_next_dist_esm_build_templates_app-route_067cwst.js.map +1 -1
  242. package/web/.next/server/chunks/{[root-of-the-server]__0zu_byw._.js → [root-of-the-server]__07suer1._.js} +2 -2
  243. package/web/.next/server/chunks/{[root-of-the-server]__0u1jyv9._.js → [root-of-the-server]__0sgzo7y._.js} +2 -2
  244. package/web/.next/server/chunks/[root-of-the-server]__0tb~wwk._.js +1 -1
  245. package/web/.next/server/chunks/{[root-of-the-server]__08cpfre._.js → [root-of-the-server]__0uxlr84._.js} +2 -2
  246. package/web/.next/server/chunks/ssr/0j.8_web_components_common_control-center-drawer_create-drawer-client_tsx_0g70fc5._.js +1 -1
  247. package/web/.next/server/chunks/ssr/0j.8_web_components_common_control-center-drawer_create-drawer-client_tsx_0g70fc5._.js.map +1 -1
  248. package/web/.next/server/chunks/ssr/0j.8_web_components_common_control-center-drawer_feature-drawer-client_tsx_104cna.._.js +2 -2
  249. package/web/.next/server/chunks/ssr/0j.8_web_components_common_control-center-drawer_feature-drawer-client_tsx_104cna.._.js.map +1 -1
  250. package/web/.next/server/chunks/ssr/0ukq_presentation_web_components_features_settings_settings-page-client_tsx_0j1uius._.js +1 -1
  251. package/web/.next/server/chunks/ssr/0ukq_presentation_web_components_features_settings_settings-page-client_tsx_0j1uius._.js.map +1 -1
  252. package/web/.next/server/chunks/ssr/11es_next_dist_esm_build_templates_app-page_0y6lfp8.js +4 -0
  253. package/web/.next/server/chunks/ssr/11es_next_dist_esm_build_templates_app-page_0y6lfp8.js.map +1 -0
  254. package/web/.next/server/chunks/ssr/11y9_components_common_control-center-drawer_repository-drawer-client_tsx_09z.znp._.js +1 -1
  255. package/web/.next/server/chunks/ssr/11y9_components_common_control-center-drawer_repository-drawer-client_tsx_09z.znp._.js.map +1 -1
  256. package/web/.next/server/chunks/ssr/{_04s_q5r._.js → 12k._sonner_dist_index_mjs_0-vmpk5._.js} +2 -2
  257. package/web/.next/server/chunks/ssr/12k._sonner_dist_index_mjs_0-vmpk5._.js.map +1 -0
  258. package/web/.next/server/chunks/ssr/{[root-of-the-server]__0rvrr1j._.js → [root-of-the-server]__0.5ojmt._.js} +2 -2
  259. package/web/.next/server/chunks/ssr/[root-of-the-server]__0.5ojmt._.js.map +1 -0
  260. package/web/.next/server/chunks/ssr/[root-of-the-server]__04h~gav._.js +3 -0
  261. package/web/.next/server/chunks/ssr/[root-of-the-server]__04h~gav._.js.map +1 -0
  262. package/web/.next/server/chunks/ssr/[root-of-the-server]__05_qc0n._.js +1 -1
  263. package/web/.next/server/chunks/ssr/[root-of-the-server]__05_qc0n._.js.map +1 -1
  264. package/web/.next/server/chunks/ssr/[root-of-the-server]__0dec29w._.js +3 -0
  265. package/web/.next/server/chunks/ssr/[root-of-the-server]__0dec29w._.js.map +1 -0
  266. package/web/.next/server/chunks/ssr/[root-of-the-server]__0ge~xny._.js +1 -1
  267. package/web/.next/server/chunks/ssr/[root-of-the-server]__0ge~xny._.js.map +1 -1
  268. package/web/.next/server/chunks/ssr/[root-of-the-server]__0qda~yi._.js +1 -1
  269. package/web/.next/server/chunks/ssr/[root-of-the-server]__0qda~yi._.js.map +1 -1
  270. package/web/.next/server/chunks/ssr/[root-of-the-server]__0rv1gci._.js +1 -1
  271. package/web/.next/server/chunks/ssr/[root-of-the-server]__0tq2syh._.js +1 -1
  272. package/web/.next/server/chunks/ssr/[root-of-the-server]__0t~u8sd._.js +1 -1
  273. package/web/.next/server/chunks/ssr/[root-of-the-server]__0t~u8sd._.js.map +1 -1
  274. package/web/.next/server/chunks/ssr/[root-of-the-server]__10tll_l._.js +1 -1
  275. package/web/.next/server/chunks/ssr/[root-of-the-server]__10tll_l._.js.map +1 -1
  276. package/web/.next/server/chunks/ssr/[root-of-the-server]__12j29w-._.js +1 -1
  277. package/web/.next/server/chunks/ssr/[root-of-the-server]__12j29w-._.js.map +1 -1
  278. package/web/.next/server/chunks/ssr/_01sesw0._.js +1 -1
  279. package/web/.next/server/chunks/ssr/_01sesw0._.js.map +1 -1
  280. package/web/.next/server/chunks/ssr/{_0wor25i._.js → _02g0xyh._.js} +2 -2
  281. package/web/.next/server/chunks/ssr/{_0wor25i._.js.map → _02g0xyh._.js.map} +1 -1
  282. package/web/.next/server/chunks/ssr/{_00u~.41._.js → _03x4h9e._.js} +2 -2
  283. package/web/.next/server/chunks/ssr/_03x4h9e._.js.map +1 -0
  284. package/web/.next/server/chunks/ssr/{_0~0jkp_._.js → _05fk0a4._.js} +2 -2
  285. package/web/.next/server/chunks/ssr/_05fk0a4._.js.map +1 -0
  286. package/web/.next/server/chunks/ssr/_069y.js._.js +2 -2
  287. package/web/.next/server/chunks/ssr/_069y.js._.js.map +1 -1
  288. package/web/.next/server/chunks/ssr/_083k45~._.js +3 -0
  289. package/web/.next/server/chunks/ssr/_083k45~._.js.map +1 -0
  290. package/web/.next/server/chunks/ssr/_0__4si~._.js +1 -1
  291. package/web/.next/server/chunks/ssr/_0__4si~._.js.map +1 -1
  292. package/web/.next/server/chunks/ssr/_0_m17kl._.js +1 -1
  293. package/web/.next/server/chunks/ssr/_0_m17kl._.js.map +1 -1
  294. package/web/.next/server/chunks/ssr/_0d4miu.._.js +1 -1
  295. package/web/.next/server/chunks/ssr/_0d4miu.._.js.map +1 -1
  296. package/web/.next/server/chunks/ssr/_0e8ern9._.js +1 -1
  297. package/web/.next/server/chunks/ssr/_0e8ern9._.js.map +1 -1
  298. package/web/.next/server/chunks/ssr/_0i~-084._.js +3 -0
  299. package/web/.next/server/chunks/ssr/_0i~-084._.js.map +1 -0
  300. package/web/.next/server/chunks/ssr/_0kaec~c._.js +3 -0
  301. package/web/.next/server/chunks/ssr/_0kaec~c._.js.map +1 -0
  302. package/web/.next/server/chunks/ssr/{_01qdxy2._.js → _0mdgz5u._.js} +2 -2
  303. package/web/.next/server/chunks/ssr/{_01qdxy2._.js.map → _0mdgz5u._.js.map} +1 -1
  304. package/web/.next/server/chunks/ssr/_0o.xc6x._.js +3 -0
  305. package/web/.next/server/chunks/ssr/_0o.xc6x._.js.map +1 -0
  306. package/web/.next/server/chunks/ssr/{_0hw~zvl._.js → _0o_oaao._.js} +2 -2
  307. package/web/.next/server/chunks/ssr/_0o_oaao._.js.map +1 -0
  308. package/web/.next/server/chunks/ssr/_0p3~u8u._.js +2 -2
  309. package/web/.next/server/chunks/ssr/_0p3~u8u._.js.map +1 -1
  310. package/web/.next/server/chunks/ssr/_0r.3n~3._.js +1 -1
  311. package/web/.next/server/chunks/ssr/_0r.3n~3._.js.map +1 -1
  312. package/web/.next/server/chunks/ssr/_0rcx2-c._.js +9 -0
  313. package/web/.next/server/chunks/ssr/_0rcx2-c._.js.map +1 -0
  314. package/web/.next/server/chunks/ssr/_0rqycsg._.js +3 -0
  315. package/web/.next/server/chunks/ssr/_0rqycsg._.js.map +1 -0
  316. package/web/.next/server/chunks/ssr/_0t59q8r._.js +1 -1
  317. package/web/.next/server/chunks/ssr/_0t59q8r._.js.map +1 -1
  318. package/web/.next/server/chunks/ssr/_0tcccbb._.js +1 -1
  319. package/web/.next/server/chunks/ssr/_0tcccbb._.js.map +1 -1
  320. package/web/.next/server/chunks/ssr/{_0pa1dkv._.js → _0u3d8.n._.js} +2 -2
  321. package/web/.next/server/chunks/ssr/_0u3d8.n._.js.map +1 -0
  322. package/web/.next/server/chunks/ssr/_0vyfc4b._.js +1 -1
  323. package/web/.next/server/chunks/ssr/_0vyfc4b._.js.map +1 -1
  324. package/web/.next/server/chunks/ssr/_0w-_hww._.js +1 -1
  325. package/web/.next/server/chunks/ssr/_0w-_hww._.js.map +1 -1
  326. package/web/.next/server/chunks/ssr/{_09r54oy._.js → _0ygafoy._.js} +2 -2
  327. package/web/.next/server/chunks/ssr/{_09r54oy._.js.map → _0ygafoy._.js.map} +1 -1
  328. package/web/.next/server/chunks/ssr/_0zk-h5w._.js +1 -1
  329. package/web/.next/server/chunks/ssr/_0zk-h5w._.js.map +1 -1
  330. package/web/.next/server/chunks/ssr/_0~7lwu_._.js +1 -1
  331. package/web/.next/server/chunks/ssr/_0~7lwu_._.js.map +1 -1
  332. package/web/.next/server/chunks/ssr/_10joy2y._.js +3 -0
  333. package/web/.next/server/chunks/ssr/_10joy2y._.js.map +1 -0
  334. package/web/.next/server/chunks/ssr/_1161g9x._.js +1 -1
  335. package/web/.next/server/chunks/ssr/_1161g9x._.js.map +1 -1
  336. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_plugins_page_actions_0rdndum.js +3 -0
  337. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_plugins_page_actions_0rdndum.js.map +1 -0
  338. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_05m2q~u.js +1 -1
  339. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_05m2q~u.js.map +1 -1
  340. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_0.6zk.t.js +1 -1
  341. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_0.6zk.t.js.map +1 -1
  342. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_0pjb_re._.js +1 -1
  343. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_0w2wqvu._.js +1 -1
  344. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_0l3oxx9._.js +1 -1
  345. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_0l3oxx9._.js.map +1 -1
  346. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_0aji.op._.js +1 -1
  347. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_0aji.op._.js.map +1 -1
  348. package/web/.next/server/middleware-build-manifest.js +3 -3
  349. package/web/.next/server/next-font-manifest.js +1 -1
  350. package/web/.next/server/next-font-manifest.json +3 -0
  351. package/web/.next/server/pages/500.html +1 -1
  352. package/web/.next/server/server-reference-manifest.js +1 -1
  353. package/web/.next/server/server-reference-manifest.json +187 -61
  354. package/web/.next/static/chunks/0.s8cxri-_s9l.js +1 -0
  355. package/web/.next/static/chunks/012cnd7koqv6d.js +7 -0
  356. package/web/.next/static/chunks/{12axopx66pocj.js → 056k4f_cj86_m.js} +2 -2
  357. package/web/.next/static/chunks/{0k0j7anrbg-of.js → 05_pa1uvg8ndq.js} +3 -3
  358. package/web/.next/static/chunks/{0fg~vc93spa9c.js → 07gal-~-zwagj.js} +1 -1
  359. package/web/.next/static/chunks/{0in4l8mne5y~_.js → 0b2pi58fg3lt3.js} +1 -1
  360. package/web/.next/static/chunks/{0o33urrd3lk~u.js → 0dbuetfm_wux5.js} +1 -1
  361. package/web/.next/static/chunks/{1874_wt9rit96.js → 0dq~u_3-zgq73.js} +1 -1
  362. package/web/.next/static/chunks/{00m_fbc2z1gyi.js → 0f1m9w6~4f-.w.js} +3 -3
  363. package/web/.next/static/chunks/{0u_27fdqa2jeg.js → 0i~5fqskcb~~p.js} +1 -1
  364. package/web/.next/static/chunks/{0v~n9z6b639zm.js → 0jwq.mr-.ltps.js} +1 -1
  365. package/web/.next/static/chunks/0k8m.qcahm63g.js +1 -0
  366. package/web/.next/static/chunks/0kjqz.9e9sou2.js +1 -0
  367. package/web/.next/static/chunks/0lc0x8kcu46ae.js +1 -0
  368. package/web/.next/static/chunks/{183ehj-b80a~o.js → 0nfd9bvcnbcgl.js} +1 -1
  369. package/web/.next/static/chunks/0nnltbyg963sg.js +1 -0
  370. package/web/.next/static/chunks/0pik.2.wvg.el.js +1 -0
  371. package/web/.next/static/chunks/0r05-2~73nsxp.js +1 -0
  372. package/web/.next/static/chunks/0ug478hm-8bog.js +5 -0
  373. package/web/.next/static/chunks/{0yibymrb2j05t.css → 0v7r7y~3e~oo6.css} +1 -1
  374. package/web/.next/static/chunks/{0dq50gtgaj63f.js → 0wcqsl6fpljkf.js} +1 -1
  375. package/web/.next/static/chunks/10rtagfoabp3b.js +1 -0
  376. package/web/.next/static/chunks/112xn3.b2hrmh.js +1 -0
  377. package/web/.next/static/chunks/{11vbir.u7_zf7.js → 13mkca.j8w.7_.js} +1 -1
  378. package/web/.next/static/chunks/{121v1_d_dfk2k.js → 14ulzux4y._m-.js} +1 -1
  379. package/web/.next/server/chunks/ssr/[root-of-the-server]__0qxd563._.js +0 -3
  380. package/web/.next/server/chunks/ssr/[root-of-the-server]__0qxd563._.js.map +0 -1
  381. package/web/.next/server/chunks/ssr/[root-of-the-server]__0rvrr1j._.js.map +0 -1
  382. package/web/.next/server/chunks/ssr/_00u~.41._.js.map +0 -1
  383. package/web/.next/server/chunks/ssr/_04s_q5r._.js.map +0 -1
  384. package/web/.next/server/chunks/ssr/_0a_8rlj._.js +0 -3
  385. package/web/.next/server/chunks/ssr/_0a_8rlj._.js.map +0 -1
  386. package/web/.next/server/chunks/ssr/_0dy8.0k._.js +0 -3
  387. package/web/.next/server/chunks/ssr/_0dy8.0k._.js.map +0 -1
  388. package/web/.next/server/chunks/ssr/_0gdghcr._.js +0 -3
  389. package/web/.next/server/chunks/ssr/_0gdghcr._.js.map +0 -1
  390. package/web/.next/server/chunks/ssr/_0hw~zvl._.js.map +0 -1
  391. package/web/.next/server/chunks/ssr/_0l2~~pi._.js +0 -3
  392. package/web/.next/server/chunks/ssr/_0l2~~pi._.js.map +0 -1
  393. package/web/.next/server/chunks/ssr/_0n.magx._.js +0 -3
  394. package/web/.next/server/chunks/ssr/_0n.magx._.js.map +0 -1
  395. package/web/.next/server/chunks/ssr/_0pa1dkv._.js.map +0 -1
  396. package/web/.next/server/chunks/ssr/_0y8u4.e._.js +0 -9
  397. package/web/.next/server/chunks/ssr/_0y8u4.e._.js.map +0 -1
  398. package/web/.next/server/chunks/ssr/_0~0jkp_._.js.map +0 -1
  399. package/web/.next/static/chunks/0-ud~1jj7chzu.js +0 -7
  400. package/web/.next/static/chunks/09f2lesd_dd3~.js +0 -1
  401. package/web/.next/static/chunks/0c0dau5pmseko.js +0 -1
  402. package/web/.next/static/chunks/0n3kuj7t_-jzp.js +0 -1
  403. package/web/.next/static/chunks/0pt-d18f7zxvv.js +0 -1
  404. package/web/.next/static/chunks/0xwh.0u-dexsl.js +0 -1
  405. package/web/.next/static/chunks/103xnw203o9k1.js +0 -1
  406. package/web/.next/static/chunks/12pd180jp8zu..js +0 -5
  407. package/web/.next/static/chunks/13fcwhkw7dle2.js +0 -1
  408. package/web/.next/static/chunks/13q1peb_t9vj8.js +0 -1
  409. /package/web/.next/server/chunks/{[root-of-the-server]__0zu_byw._.js.map → [root-of-the-server]__07suer1._.js.map} +0 -0
  410. /package/web/.next/server/chunks/{[root-of-the-server]__0u1jyv9._.js.map → [root-of-the-server]__0sgzo7y._.js.map} +0 -0
  411. /package/web/.next/server/chunks/{[root-of-the-server]__08cpfre._.js.map → [root-of-the-server]__0uxlr84._.js.map} +0 -0
  412. /package/web/.next/static/{SNdaKJ9fpre8tUMRe1jlA → W6C3cWcub-2kZuXP7c21j}/_buildManifest.js +0 -0
  413. /package/web/.next/static/{SNdaKJ9fpre8tUMRe1jlA → W6C3cWcub-2kZuXP7c21j}/_clientMiddlewareManifest.js +0 -0
  414. /package/web/.next/static/{SNdaKJ9fpre8tUMRe1jlA → W6C3cWcub-2kZuXP7c21j}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,84735,e=>{"use strict";let t=(0,e.i(54864).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],84735)},70727,e=>{"use strict";let t=(0,e.i(54864).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",0,t],70727)},60589,e=>{"use strict";let t=(0,e.i(54864).default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]);e.s(["GitBranch",0,t],60589)},63995,e=>{"use strict";let t=(0,e.i(54864).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["default",0,t])},29549,e=>{"use strict";let t=(0,e.i(54864).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Circle",0,t],29549)},81481,e=>{"use strict";let t=(0,e.i(54864).default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);e.s(["Info",0,t],81481)},79558,e=>{"use strict";var t=e.i(88641);e.s(["Download",()=>t.default])},86024,e=>{"use strict";let t=(0,e.i(54864).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);e.s(["Package",0,t],86024)},89048,e=>{"use strict";let t=(0,e.i(54864).default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]);e.s(["Rocket",0,t],89048)},44412,e=>{"use strict";var t=e.i(96871),a=e.i(16539),s=e.i(43606),l=e.i(68787),r=e.i(68304),n=e.i(98127),i=e.i(35364),o=e.i(31777),d=e.i(79561),c=e.i(89048),u=e.i(79558),m=e.i(66358),x=e.i(29549),h=e.i(46380),p=e.i(86024),g=e.i(81481),f=e.i(63995),f=f,j=e.i(2828),b=e.i(67088),v=e.i(85149),N=e.i(84735);let k=(0,e.i(54864).default)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);var w=e.i(70727),y=e.i(60589),C=e.i(11495);let T={linux:"Linux",darwin:"macOS",win32:"Windows"},I={ide:{label:"IDE",icon:k},"cli-agent":{label:"CLI Agent",icon:w.Terminal},vcs:{label:"VCS",icon:y.GitBranch},terminal:{label:"Terminal",icon:w.Terminal}};function S({status:e}){return"available"===e?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-medium text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400",children:[(0,t.jsx)(v.Check,{className:"h-3 w-3"}),"Installed"]}):"error"===e?(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400",children:"Error"}):(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-amber-100 px-2 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:"Missing"})}function z({tool:e,open:s,onClose:l,onRefresh:r,autoStart:n}){let[o,m]=(0,a.useState)(!1),[x,h]=(0,a.useState)(!1),{logs:g,status:f,startInstall:j}=function(e){let[t,s]=(0,a.useState)([]),[l,r]=(0,a.useState)("idle"),[n,i]=(0,a.useState)(null),o=(0,a.useRef)(null),d=(0,a.useCallback)(()=>{o.current&&(o.current.close(),o.current=null)},[]);return(0,a.useEffect)(()=>d,[d]),{logs:t,status:l,result:n,startInstall:(0,a.useCallback)(()=>{d(),s([]),i(null),r("streaming");let t=new EventSource(`/api/tools/${e}/install/stream`);o.current=t,t.onmessage=e=>{s(t=>[...t,e.data])},t.addEventListener("done",e=>{let t=JSON.parse(e.data);i(t),r("error"===t.status?"error":"done"),d()}),t.onerror=()=>{r("error"),d()}},[e,d])}}(e.id),w=(0,a.useRef)(null),y=(0,a.useRef)(!0),L=(0,a.useRef)(!1),M="available"===e.status.status,B="error"===e.status.status,E=M&&!!e.openDirectory,P=!M&&!B&&e.autoInstall;async function V(){h(!0);try{await fetch(`/api/tools/${e.id}/launch`,{method:"POST"})}finally{h(!1)}}(0,a.useEffect)(()=>{s&&n&&P&&"idle"===f&&!L.current&&(L.current=!0,j()),s||(L.current=!1)},[s,n,P,f,j]);let D=(0,a.useCallback)(()=>{let e=w.current;e&&(y.current=e.scrollTop+e.clientHeight>=e.scrollHeight-50)},[]);(0,a.useEffect)(()=>{y.current&&w.current&&(w.current.scrollTop=w.current.scrollHeight)},[g,f]),(0,a.useEffect)(()=>{"done"===f&&r&&r()},[f,r]);let R=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5 pe-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[e.iconUrl?(0,t.jsx)("img",{src:e.iconUrl,alt:"",width:24,height:24,className:"shrink-0"}):(0,t.jsx)(p.Package,{className:"text-muted-foreground h-6 w-6 shrink-0"}),(0,t.jsx)("h2",{className:"text-base font-bold",children:e.name}),(0,t.jsx)(S,{status:e.status.status})]}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:e.tags.map(e=>{let a=I[e]??{label:e,icon:k},s=a.icon;return(0,t.jsxs)("span",{className:"text-muted-foreground/70 inline-flex items-center gap-0.5 text-[10px]",children:[(0,t.jsx)(s,{className:"h-3 w-3"}),a.label]},e)})})]});return(0,t.jsx)(C.BaseDrawer,{open:s,onClose:l,size:"md",modal:!0,title:e.name,header:R,"data-testid":"tool-detail-drawer",children:(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-4 overflow-y-auto p-4",children:[(0,t.jsx)("p",{className:"text-muted-foreground text-sm",children:e.description}),e.author||e.platforms?(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs",children:[e.author?(0,t.jsxs)("span",{className:"text-muted-foreground",children:["by"," ",e.website?(0,t.jsx)("a",{href:e.website,target:"_blank",rel:"noopener noreferrer",className:"text-foreground hover:underline",children:e.author}):(0,t.jsx)("span",{className:"text-foreground",children:e.author})]}):null,e.platforms&&e.platforms.length>0?(0,t.jsx)("span",{className:"text-muted-foreground",children:e.platforms.map(e=>T[e]??e).join(" · ")}):null]}):null,e.installCommand?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs font-semibold tracking-wide uppercase",children:"Install command"}),(0,t.jsxs)("div",{className:"relative rounded-md bg-zinc-900 text-zinc-100",children:[(0,t.jsx)("pre",{className:"overflow-x-auto px-3 py-2.5 pe-16 font-mono text-xs leading-relaxed break-all whitespace-pre-wrap",children:(0,t.jsx)("code",{children:e.installCommand})}),(0,t.jsxs)(i.Button,{variant:"ghost",size:"sm",className:"absolute top-1.5 right-1.5 h-7 cursor-pointer px-2 text-zinc-400 hover:text-zinc-100",onClick:function(){e.installCommand&&navigator.clipboard.writeText(e.installCommand).then(()=>{m(!0),setTimeout(()=>m(!1),2e3)})},"aria-label":o?"Copied!":"Copy install command",children:[o?(0,t.jsx)(v.Check,{className:"h-3.5 w-3.5 text-emerald-500"}):(0,t.jsx)(b.Copy,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"ms-1 text-[10px]",children:o?"Copied!":"Copy"})]})]})]}):null,(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[P?(0,t.jsxs)(i.Button,{size:"sm",onClick:j,disabled:"streaming"===f,"aria-label":`Install ${e.name}`,className:"cursor-pointer",children:["streaming"===f?(0,t.jsx)(d.LoaderCircle,{className:"me-1.5 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(u.Download,{className:"me-1.5 h-3.5 w-3.5"}),"streaming"===f?"Installing...":"Install"]}):null,E?(0,t.jsxs)(i.Button,{size:"sm",variant:"outline",onClick:()=>void V(),disabled:x,"aria-label":`Launch ${e.name}`,className:"cursor-pointer",children:[x?(0,t.jsx)(d.LoaderCircle,{className:"me-1.5 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(c.Rocket,{className:"me-1.5 h-3.5 w-3.5"}),"Launch"]}):null,e.documentationUrl?(0,t.jsx)(i.Button,{variant:"outline",size:"sm",className:"cursor-pointer",asChild:!0,children:(0,t.jsxs)("a",{href:e.documentationUrl,target:"_blank",rel:"noopener noreferrer",children:["Docs",(0,t.jsx)(N.ExternalLink,{className:"ms-1 h-3 w-3"})]})}):null]}),("streaming"===f||"done"===f||"error"===f)&&g.length>0?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs font-semibold tracking-wide uppercase",children:"Install log"}),(0,t.jsxs)("div",{ref:w,onScroll:D,className:"max-h-60 overflow-auto rounded-md bg-zinc-900 p-3 font-mono text-xs leading-relaxed text-zinc-100","data-testid":"tool-install-log",children:[g.map((e,a)=>(0,t.jsx)("div",{className:"break-all whitespace-pre-wrap",children:e},a)),"done"===f?(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-emerald-400",children:"Installation complete"}):null,"error"===f?(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-red-400",children:"Installation failed"}):null]})]}):null]})})}let L={ide:"IDE","cli-agent":"CLI Agent",vcs:"VCS",terminal:"Terminal"};function M({tool:e,onRefresh:s,className:l}){let[r,n]=(0,a.useState)(!1),[b,v]=(0,a.useState)(!1),[N,k]=(0,a.useTransition)(),w="available"===e.status.status,y="error"===e.status.status,C=w&&!!e.openDirectory;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{"data-testid":"tool-card",onClick:function(){v(!1),n(!0)},className:(0,o.cn)("bg-card editorial-shadow group flex w-full cursor-pointer flex-col gap-4 rounded-xl p-5","transition-all duration-300 hover:-translate-y-0.5 hover:shadow-md hover:ring-slate-300 dark:hover:ring-slate-600",l),children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-3",children:[(0,t.jsx)("div",{className:"flex h-11 w-11 shrink-0 items-center justify-center rounded-lg bg-slate-100 p-2 ring-1 ring-slate-200/50 dark:bg-slate-800 dark:ring-slate-700/50",children:e.iconUrl?(0,t.jsx)("img",{src:e.iconUrl,alt:"",width:28,height:28,className:"h-full w-full"}):(0,t.jsx)(p.Package,{className:"text-muted-foreground h-full w-full"})}),(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("h3",{"data-testid":"tool-card-name",className:"text-foreground truncate text-sm leading-tight font-bold tracking-tight",children:e.name}),e.author?(0,t.jsxs)("div",{className:"mt-1 flex items-center gap-1.5",children:[(0,t.jsx)("span",{"data-testid":"tool-card-vendor-label",className:"text-[9px] font-bold tracking-wider text-slate-400 uppercase",children:"Vendor"}),(0,t.jsx)("span",{"data-testid":"tool-card-vendor",className:"text-muted-foreground truncate text-xs font-medium",children:e.author})]}):e.tags.length>0?(0,t.jsxs)("div",{className:"mt-1 flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"text-[9px] font-bold tracking-wider text-slate-400 uppercase",children:"Tag"}),(0,t.jsx)("span",{"data-testid":"tool-card-tags",className:"text-muted-foreground truncate text-xs font-medium",children:e.tags.map(e=>L[e]??e).join(" · ")})]}):null]})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[y&&"error"===e.status.status?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[10px] font-medium text-red-600 dark:text-red-400",title:e.status.errorMessage,children:[(0,t.jsx)(m.CircleX,{className:"h-3 w-3 shrink-0"}),"Error"]}):w?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[10px] font-medium text-emerald-600 dark:text-emerald-400",children:[(0,t.jsx)(h.CircleCheck,{className:"h-3 w-3"}),"Installed"]}):(0,t.jsxs)("span",{className:"text-muted-foreground flex items-center gap-1 text-[10px] font-medium",children:[(0,t.jsx)(x.Circle,{className:"h-3 w-3"}),"Not installed"]}),e.required?(0,t.jsx)(j.TooltipProvider,{children:(0,t.jsxs)(j.Tooltip,{children:[(0,t.jsx)(j.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"shrink-0 rounded-full bg-amber-100 px-2 py-0.5 text-[9px] font-bold tracking-wider text-amber-700 uppercase dark:bg-amber-900/40 dark:text-amber-400",children:"Required"})}),(0,t.jsx)(j.TooltipContent,{side:"top",children:"This tool is required for ShipIT to function properly"})]})}):null]})]}),(0,t.jsx)("p",{"data-testid":"tool-card-summary",className:"text-muted-foreground -mt-2 line-clamp-2 text-xs leading-relaxed",children:e.summary}),(0,t.jsx)("div",{className:"mt-auto flex flex-col gap-1.5",children:w&&C?(0,t.jsxs)(i.Button,{variant:"default",onClick:function(t){t.stopPropagation(),k(async()=>{await fetch(`/api/tools/${e.id}/launch`,{method:"POST"})})},disabled:N,"aria-label":`Launch ${e.name}`,"data-testid":"tool-card-launch-button",className:"h-9 w-full cursor-pointer rounded-lg text-xs font-bold tracking-wide transition-all duration-300 hover:-translate-y-0.5 hover:shadow-md",children:[N?(0,t.jsx)(d.LoaderCircle,{className:"me-1 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(c.Rocket,{className:"me-1 h-3.5 w-3.5"}),"Launch"]}):w||y?y?(0,t.jsxs)(i.Button,{variant:"outline",onClick:e=>{e.stopPropagation(),v(!1),n(!0)},"aria-label":`View error details for ${e.name}`,"data-testid":"tool-card-error-button",className:"h-9 w-full cursor-pointer rounded-lg border-red-300 text-xs font-bold tracking-wide text-red-600 transition-all duration-300 hover:-translate-y-0.5 hover:bg-red-50 hover:shadow-md dark:border-red-900 dark:text-red-400 dark:hover:bg-red-950/30",children:[(0,t.jsx)(f.default,{className:"me-1 h-3.5 w-3.5"}),"View Error"]}):(0,t.jsxs)(i.Button,{variant:"outline",onClick:e=>{e.stopPropagation(),v(!1),n(!0)},"aria-label":`View details for ${e.name}`,"data-testid":"tool-card-details-button",className:"h-9 w-full cursor-pointer rounded-lg text-xs font-bold tracking-wide transition-all duration-300 hover:-translate-y-0.5 hover:shadow-md",children:[(0,t.jsx)(g.Info,{className:"me-1 h-3.5 w-3.5"}),"View Details"]}):(0,t.jsxs)(i.Button,{variant:"default",onClick:function(t){t.stopPropagation(),v(e.autoInstall),n(!0)},"aria-label":`Install ${e.name}`,"data-testid":"tool-card-install-button",className:"h-9 w-full cursor-pointer rounded-lg text-xs font-bold tracking-wide transition-all duration-300 hover:-translate-y-0.5 hover:shadow-md",children:[(0,t.jsx)(u.Download,{className:"me-1 h-3.5 w-3.5"}),"Install"]})})]}),(0,t.jsx)(z,{tool:e,open:r,onClose:()=>n(!1),onRefresh:s,autoStart:b})]})}let B={all:()=>!0,ide:e=>e.tags.includes("ide"),"cli-agent":e=>e.tags.includes("cli-agent"),vcs:e=>e.tags.includes("vcs"),terminal:e=>e.tags.includes("terminal")};e.s(["ToolsPageClient",0,function({tools:e,className:d}){let[c,u]=(0,a.useState)(e),[m,x]=(0,a.useState)("all"),[h,p]=(0,a.useState)(""),[g,f]=(0,a.useState)(null),j=(0,a.useCallback)(async()=>{try{let e=await fetch("/api/tools");if(e.ok){let t=await e.json();u(t)}}catch{}},[]),b=(0,a.useMemo)(()=>{let e=h.toLowerCase();return c.filter(t=>{if(!B[m](t)||g&&t.status.status!==g)return!1;if(e){let a=t.name.toLowerCase().includes(e),s=t.summary.toLowerCase().includes(e);if(!a&&!s)return!1}return!0})},[c,m,h,g]),v=c.filter(e=>"available"===e.status.status).length;return(0,t.jsxs)("div",{"data-testid":"tools-page-client",className:(0,o.cn)("space-y-8",d),children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("div",{className:"flex items-center gap-2",children:(0,t.jsx)("span",{className:"text-[10px] font-bold tracking-[0.2em] text-slate-400 uppercase",children:"Developer Portal"})}),(0,t.jsxs)("div",{className:"flex items-baseline gap-3",children:[(0,t.jsx)("h1",{className:"text-foreground text-3xl font-black tracking-tight",children:"Tools"}),(0,t.jsxs)("span",{className:"text-muted-foreground text-sm font-medium",children:[v," of ",c.length," installed"]})]})]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(l.Search,{className:"text-muted-foreground absolute top-1/2 left-3 size-4 -translate-y-1/2"}),(0,t.jsx)(n.Input,{placeholder:"Search tools...",value:h,onChange:e=>p(e.target.value),className:"ps-9","data-testid":"tool-search"})]}),(0,t.jsxs)(r.Tabs,{value:m,onValueChange:e=>x(e),"data-testid":"tools-page-tabs",children:[(0,t.jsxs)(r.TabsList,{"data-editorial":"true",className:"bg-card editorial-shadow h-10 p-1",children:[(0,t.jsx)(r.TabsTrigger,{value:"all","data-testid":"tools-tab-all",className:"cursor-pointer px-4 text-xs font-bold",children:"All"}),(0,t.jsx)(r.TabsTrigger,{value:"ide","data-testid":"tools-tab-ide",className:"cursor-pointer px-4 text-xs font-bold",children:"IDEs"}),(0,t.jsx)(r.TabsTrigger,{value:"cli-agent","data-testid":"tools-tab-cli-agent",className:"cursor-pointer px-4 text-xs font-bold",children:"CLI Agents"}),(0,t.jsx)(r.TabsTrigger,{value:"vcs","data-testid":"tools-tab-vcs",className:"cursor-pointer px-4 text-xs font-bold",children:"Version Control"}),(0,t.jsx)(r.TabsTrigger,{value:"terminal","data-testid":"tools-tab-terminal",className:"cursor-pointer px-4 text-xs font-bold",children:"Terminals"})]}),(0,t.jsxs)("div",{className:"mt-4 flex flex-wrap gap-2","data-testid":"tools-status-filter",children:[(0,t.jsx)(i.Button,{variant:null===g?"default":"outline",size:"sm",onClick:()=>f(null),children:"All"}),(0,t.jsx)(i.Button,{variant:"available"===g?"default":"outline",size:"sm",onClick:()=>f("available"),children:"Installed"}),(0,t.jsx)(i.Button,{variant:"missing"===g?"default":"outline",size:"sm",onClick:()=>f("missing"),children:"Not Installed"})]}),(0,t.jsx)(r.TabsContent,{value:m,className:"mt-6",children:0===b.length?(0,t.jsxs)("div",{"data-testid":"tools-page-empty",className:"text-muted-foreground flex flex-col items-center justify-center py-16 text-center",children:[(0,t.jsx)(s.Wrench,{className:"mb-3 h-8 w-8 opacity-20"}),(0,t.jsx)("p",{className:"text-sm",children:"No tools in this category."})]}):(0,t.jsx)("div",{"data-testid":"tools-page-grid",className:"grid grid-cols-1 gap-6 md:grid-cols-2 xl:grid-cols-3",children:b.map(e=>(0,t.jsx)(M,{tool:e,onRefresh:j},e.id))})})]})]})}],44412)}]);
@@ -0,0 +1,7 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,88976,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},82977,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={assign:function(){return l},searchParamsToUrlQuery:function(){return i},urlQueryToSearchParams:function(){return s}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});function i(e){let t={};for(let[r,a]of e.entries()){let e=t[r];void 0===e?t[r]=a:Array.isArray(e)?e.push(a):t[r]=[e,a]}return t}function o(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function s(e){let t=new URLSearchParams;for(let[r,a]of Object.entries(e))if(Array.isArray(a))for(let e of a)t.append(r,o(e));else t.set(r,o(a));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,a]of r.entries())e.append(t,a)}return e}},94576,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={DecodeError:function(){return b},MiddlewareNotFoundError:function(){return w},MissingStaticPage:function(){return y},NormalizeError:function(){return v},PageNotFoundError:function(){return x},SP:function(){return h},ST:function(){return m},WEB_VITALS:function(){return i},execOnce:function(){return o},getDisplayName:function(){return c},getLocationOrigin:function(){return u},getURL:function(){return d},isAbsoluteUrl:function(){return l},isResSent:function(){return f},loadGetInitialProps:function(){return g},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return j}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let i=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...a)=>(r||(r=!0,t=e(...a)),t)}let s=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>s.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function d(){let{href:e}=window.location,t=u();return e.substring(t.length)}function c(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function g(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await g(t.Component,t.ctx)}:{};let a=await e.getInitialProps(t);if(r&&f(r))return a;if(!a)throw Object.defineProperty(Error(`"${c(e)}.getInitialProps()" should resolve to an object. But found "${a}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return a}let h="u">typeof performance,m=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class b extends Error{}class v extends Error{}class x extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class y extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class w extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function j(e){return JSON.stringify({message:e.message,stack:e.stack})}},98127,e=>{"use strict";var t=e.i(96871),r=e.i(31777);e.s(["Input",0,function({className:e,type:a,...n}){return(0,t.jsx)("input",{type:a,"data-slot":"input",className:(0,r.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...n})}])},68787,e=>{"use strict";let t=(0,e.i(54864).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",0,t],68787)},22570,e=>{"use strict";let t=(0,e.i(54864).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",0,t],22570)},45977,e=>{"use strict";let t=(0,e.i(54864).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",0,t],45977)},71326,e=>{"use strict";var t=e.i(96871),r=e.i(16539),a=e.i(9413),n=e.i(22353),i=e.i(94983),o=e.i(91967),s=e.i(60310),l="AlertDialog",[u,d]=(0,a.createContextScope)(l,[i.createDialogScope]),c=(0,i.createDialogScope)(),f=e=>{let{__scopeAlertDialog:r,...a}=e,n=c(r);return(0,t.jsx)(i.Root,{...n,...a,modal:!0})};f.displayName=l;var p=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,o=c(a);return(0,t.jsx)(i.Trigger,{...o,...n,ref:r})});p.displayName="AlertDialogTrigger";var g=e=>{let{__scopeAlertDialog:r,...a}=e,n=c(r);return(0,t.jsx)(i.Portal,{...n,...a})};g.displayName="AlertDialogPortal";var h=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,o=c(a);return(0,t.jsx)(i.Overlay,{...o,...n,ref:r})});h.displayName="AlertDialogOverlay";var m="AlertDialogContent",[b,v]=u(m),x=(0,s.createSlottable)("AlertDialogContent"),y=r.forwardRef((e,a)=>{let{__scopeAlertDialog:s,children:l,...u}=e,d=c(s),f=r.useRef(null),p=(0,n.useComposedRefs)(a,f),g=r.useRef(null);return(0,t.jsx)(i.WarningProvider,{contentName:m,titleName:w,docsSlug:"alert-dialog",children:(0,t.jsx)(b,{scope:s,cancelRef:g,children:(0,t.jsxs)(i.Content,{role:"alertdialog",...d,...u,ref:p,onOpenAutoFocus:(0,o.composeEventHandlers)(u.onOpenAutoFocus,e=>{e.preventDefault(),g.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:[(0,t.jsx)(x,{children:l}),(0,t.jsx)(P,{contentRef:f})]})})})});y.displayName=m;var w="AlertDialogTitle",j=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,o=c(a);return(0,t.jsx)(i.Title,{...o,...n,ref:r})});j.displayName=w;var C="AlertDialogDescription",S=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,o=c(a);return(0,t.jsx)(i.Description,{...o,...n,ref:r})});S.displayName=C;var k=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,o=c(a);return(0,t.jsx)(i.Close,{...o,...n,ref:r})});k.displayName="AlertDialogAction";var D="AlertDialogCancel",N=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...o}=e,{cancelRef:s}=v(D,a),l=c(a),u=(0,n.useComposedRefs)(r,s);return(0,t.jsx)(i.Close,{...l,...o,ref:u})});N.displayName=D;var P=({contentRef:e})=>{let t=`\`${m}\` requires a description for the component to be accessible for screen reader users.
2
+
3
+ You can add a description to the \`${m}\` by passing a \`${C}\` component as a child, which also benefits sighted users by adding visible context to the dialog.
4
+
5
+ Alternatively, you can use your own component as a description by assigning it an \`id\` and passing the same value to the \`aria-describedby\` prop in \`${m}\`. If the description is confusing or duplicative for sighted users, you can use the \`@radix-ui/react-visually-hidden\` primitive as a wrapper around your description component.
6
+
7
+ For more information, see https://radix-ui.com/primitives/docs/components/alert-dialog`;return r.useEffect(()=>{document.getElementById(e.current?.getAttribute("aria-describedby"))||console.warn(t)},[t,e]),null};e.s(["Action",0,k,"AlertDialog",0,f,"AlertDialogAction",0,k,"AlertDialogCancel",0,N,"AlertDialogContent",0,y,"AlertDialogDescription",0,S,"AlertDialogOverlay",0,h,"AlertDialogPortal",0,g,"AlertDialogTitle",0,j,"AlertDialogTrigger",0,p,"Cancel",0,N,"Content",0,y,"Description",0,S,"Overlay",0,h,"Portal",0,g,"Root",0,f,"Title",0,j,"Trigger",0,p,"createAlertDialogScope",0,d],37340);var A=e.i(37340),A=A,E=e.i(31777),T=e.i(35364);function O({...e}){return(0,t.jsx)(A.Portal,{"data-slot":"alert-dialog-portal",...e})}function _({className:e,onClick:r,...a}){return(0,t.jsx)(A.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,E.cn)("fixed inset-0 z-50 bg-black/50",e),onClick:e=>{e.stopPropagation(),r?.(e)},...a})}e.s(["AlertDialog",0,function({...e}){return(0,t.jsx)(A.Root,{"data-slot":"alert-dialog",...e})},"AlertDialogAction",0,function({className:e,variant:r="default",size:a="default",...n}){return(0,t.jsx)(T.Button,{variant:r,size:a,asChild:!0,children:(0,t.jsx)(A.Action,{"data-slot":"alert-dialog-action",className:(0,E.cn)(e),...n})})},"AlertDialogCancel",0,function({className:e,variant:r="outline",size:a="default",...n}){return(0,t.jsx)(T.Button,{variant:r,size:a,asChild:!0,children:(0,t.jsx)(A.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,E.cn)(e),...n})})},"AlertDialogContent",0,function({className:e,size:r="default",...a}){return(0,t.jsxs)(O,{children:[(0,t.jsx)(_,{}),(0,t.jsx)(A.Content,{"data-slot":"alert-dialog-content","data-size":r,className:(0,E.cn)("bg-background group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",e),...a})]})},"AlertDialogDescription",0,function({className:e,...r}){return(0,t.jsx)(A.Description,{"data-slot":"alert-dialog-description",className:(0,E.cn)("text-muted-foreground text-sm",e),...r})},"AlertDialogFooter",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,E.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",e),...r})},"AlertDialogHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,E.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-start sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",e),...r})},"AlertDialogTitle",0,function({className:e,...r}){return(0,t.jsx)(A.Title,{"data-slot":"alert-dialog-title",className:(0,E.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",e),...r})}],71326)},30153,e=>{"use strict";var t=e.i(96871),r=e.i(16539),a=e.i(71326);let n=(0,r.createContext)(null);function i(){let e=(0,r.useContext)(n);if(!e)throw Error("useDrawerCloseGuard must be used within DrawerCloseGuardProvider");return e}e.s(["DrawerCloseGuardProvider",0,function({children:e}){let i=(0,r.useRef)(null),o=(0,r.useRef)(null),[s,l]=(0,r.useState)(!1),u=(0,r.useCallback)(e=>{i.current=e},[]),d=(0,r.useCallback)(e=>{if(i.current?.isDirty){o.current=e,l(!0);return}e()},[]),c=(0,r.useCallback)(()=>{l(!1),i.current?.onReset(),i.current=null,o.current?.(),o.current=null},[]),f=(0,r.useCallback)(()=>{l(!1),o.current=null},[]),p=(0,r.useCallback)(()=>i.current?.isDirty??!1,[]);return(0,t.jsxs)(n,{value:{setGuard:u,guardedNavigate:d,getIsDirty:p},children:[e,(0,t.jsx)(a.AlertDialog,{open:s,children:(0,t.jsxs)(a.AlertDialogContent,{children:[(0,t.jsxs)(a.AlertDialogHeader,{children:[(0,t.jsx)(a.AlertDialogTitle,{children:"Discard unsaved changes?"}),(0,t.jsx)(a.AlertDialogDescription,{children:"You have unsaved changes. Are you sure you want to discard them?"})]}),(0,t.jsxs)(a.AlertDialogFooter,{children:[(0,t.jsx)(a.AlertDialogAction,{variant:"destructive",onClick:c,children:"Discard"}),(0,t.jsx)(a.AlertDialogCancel,{onClick:f,children:"Keep editing"})]})]})})]})},"useDrawerCloseGuard",0,i,"useGuardedDrawerClose",0,function({open:e,isDirty:t,onClose:a,onReset:n}){let{setGuard:o,guardedNavigate:s}=i();return(0,r.useEffect)(()=>(e?o({isDirty:t,onReset:n}):o(null),()=>o(null)),[e,t,n,o]),{attemptClose:(0,r.useCallback)(()=>{s(()=>{n(),a()})},[s,a,n])}}])},37628,e=>{"use strict";let t=(0,e.i(54864).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["default",0,t])},81391,e=>{"use strict";let t=(0,e.i(54864).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["default",0,t])},46380,e=>{"use strict";var t=e.i(37628);e.s(["CircleCheck",()=>t.default])},66358,e=>{"use strict";var t=e.i(81391);e.s(["CircleX",()=>t.default])},796,e=>{"use strict";let t=(0,e.i(54864).default)("ban",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}]]);e.s(["Ban",0,t],796)},67844,80554,e=>{"use strict";var t=e.i(96871);e.s(["ChatDotIndicator",0,function({status:e,className:r=""}){return"idle"===e?null:(0,t.jsx)("span",{className:`absolute -top-0.5 -right-0.5 block rounded-full ${"processing"===e?"h-2.5 w-2.5 animate-pulse bg-blue-500":"h-2 w-2 bg-green-500"} ${r}`})}],67844);var r=e.i(16539),a=e.i(14260);let n=(0,r.createContext)({getStatus:()=>"idle"});e.s(["TurnStatusesProvider",0,function({children:e}){let i=function(){let{data:e}=(0,a.useQuery)({queryKey:["turn-statuses"],queryFn:async()=>{let e=await fetch("/api/interactive/chat/turn-statuses");return e.ok?e.json():{}},refetchInterval:5e3});return e??{}}(),o=(0,r.useMemo)(()=>({getStatus:e=>i[e]??"idle"}),[i]);return(0,t.jsx)(n.Provider,{value:o,children:e})},"useTurnStatus",0,function(e){return(0,r.useContext)(n).getStatus(e)}],80554)},48034,e=>{"use strict";var t=e.i(96871),r=e.i(16539);let a=(0,e.i(18354).createLogger)("[SSE]");function n(e,t,r,a){if("u"<typeof EventSource)return()=>{};let n=null,i=!1,o=1e3,s=null,l=null;return!function u(){i||(n=new EventSource(e?`/api/agent-events?runId=${encodeURIComponent(e)}`:"/api/agent-events"),a("connecting"),n.onopen=()=>{a("connected"),l=setTimeout(()=>{l=null,o=1e3},5e3)},n.onerror=()=>{n?.close(),n=null,a("disconnected"),null!==l&&(clearTimeout(l),l=null);let e=o;o=Math.min(2*e,3e4),s=setTimeout(()=>{s=null,u()},e)},n.addEventListener("notification",e=>{let a=JSON.parse(e.data),n={...a,timestamp:new Date(a.timestamp)};t(e=>{let t=[...e,n];return t.length>500?t.slice(-250):t}),r(n)}))}(),()=>{i=!0,null!==s&&(clearTimeout(s),s=null),null!==l&&(clearTimeout(l),l=null),n&&(n.close(),n=null)}}let i=(0,r.createContext)(null);e.s(["AgentEventsProvider",0,function({children:e,runId:o}){let{events:s,lastEvent:l,connectionStatus:u}=function(e){let[t,i]=(0,r.useState)([]),[o,s]=(0,r.useState)(null),[l,u]=(0,r.useState)("disconnected"),d=e?.runId,c=(0,r.useRef)(null),f=(0,r.useCallback)(e=>{let t=e.data;if(t&&"object"==typeof t)if("notification"===t.type){let e=t.data;a.debug("event received:",e.eventType,e),i(t=>{let r=[...t,e];return r.length>500?r.slice(-250):r}),s(e)}else"status"===t.type&&u(t.status)},[]);return(0,r.useEffect)(()=>{let e="u">typeof location&&new URLSearchParams(location.search).has("sse");if(!navigator.serviceWorker||e)return n(d,i,s,u);let t=!1,r={current:void 0};function a(e){t||(c.current=e,e.postMessage({type:"subscribe",runId:d}),u("connecting"))}function o(){if(t)return;let e=navigator.serviceWorker.controller;e&&(c.current=e,e.postMessage({type:"subscribe",runId:d}),u("connecting"))}return navigator.serviceWorker.addEventListener("message",f),navigator.serviceWorker.addEventListener("controllerchange",o),navigator.serviceWorker.register("/agent-events-sw.js",{scope:"/"}).then(e=>{if(t)return;let o=e.active??e.installing??e.waiting;if(!o){r.current=n(d,i,s,u);return}if("activated"===o.state)a(o);else{let e=()=>{"activated"===o.state&&(o.removeEventListener("statechange",e),a(o))};o.addEventListener("statechange",e)}}).catch(()=>{t||(r.current=n(d,i,s,u))}),()=>{t=!0,navigator.serviceWorker.removeEventListener("message",f),navigator.serviceWorker.removeEventListener("controllerchange",o),c.current?.postMessage({type:"unsubscribe"}),c.current=null,r.current?.()}},[d,f]),{events:t,lastEvent:o,connectionStatus:l}}({runId:o}),d=(0,r.useMemo)(()=>({events:s,lastEvent:l,connectionStatus:u}),[s,l,u]);return(0,t.jsx)(i.Provider,{value:d,children:e})},"useAgentEventsContext",0,function(){let e=(0,r.useContext)(i);if(!e)throw Error("useAgentEventsContext must be used within an <AgentEventsProvider>");return e}],48034)},89639,e=>{"use strict";let t=(0,e.i(54864).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"}]]);e.s(["Settings",0,t],89639)},43606,e=>{"use strict";let t=(0,e.i(54864).default)("wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]]);e.s(["Wrench",0,t],43606)},47952,e=>{"use strict";let t=(0,e.i(54864).default)("blocks",[["path",{d:"M10 22V7a1 1 0 0 0-1-1H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5a1 1 0 0 0-1-1H2",key:"1ah6g2"}],["rect",{x:"14",y:"2",width:"8",height:"8",rx:"1",key:"88lufb"}]]);e.s(["Blocks",0,t],47952)},60722,e=>{"use strict";let t=(0,e.i(54864).default)("puzzle",[["path",{d:"M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z",key:"w46dr5"}]]);e.s(["Puzzle",0,t],60722)},97063,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return s},formatWithValidation:function(){return u},urlObjectKeys:function(){return l}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let i=e.r(44066)._(e.r(82977)),o=/https?|ftp|gopher|file/;function s(e){let{auth:t,hostname:r}=e,a=e.protocol||"",n=e.pathname||"",s=e.hash||"",l=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),l&&"object"==typeof l&&(l=String(i.urlQueryToSearchParams(l)));let d=e.search||l&&`?${l}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||o.test(a))&&!1!==u?(u="//"+(u||""),n&&"/"!==n[0]&&(n="/"+n)):u||(u=""),s&&"#"!==s[0]&&(s="#"+s),d&&"?"!==d[0]&&(d="?"+d),n=n.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${a}${u}${n}${d}${s}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return s(e)}},20819,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return i}});let a=e.r(94576),n=e.r(66289);function i(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,n.hasBasePath)(r.pathname)}catch(e){return!1}}},78380,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},75459,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return b},useLinkStatus:function(){return x}};for(var n in a)Object.defineProperty(r,n,{enumerable:!0,get:a[n]});let i=e.r(44066),o=e.r(96871),s=i._(e.r(16539)),l=e.r(97063),u=e.r(45319),d=e.r(91992),c=e.r(94576),f=e.r(1921);e.r(88976);let p=e.r(94178),g=e.r(1242),h=e.r(20819),m=e.r(44023);function b(t){var r,a;let n,i,b,[x,y]=(0,s.useOptimistic)(g.IDLE_LINK_STATUS),w=(0,s.useRef)(null),{href:j,as:C,children:S,prefetch:k=null,passHref:D,replace:N,shallow:P,scroll:A,onClick:E,onMouseEnter:T,onTouchStart:O,legacyBehavior:_=!1,onNavigate:R,transitionTypes:L,ref:z,unstable_dynamicOnHover:M,...I}=t;n=S,_&&("string"==typeof n||"number"==typeof n)&&(n=(0,o.jsx)("a",{children:n}));let $=s.default.useContext(u.AppRouterContext),F=!1!==k,U=!1!==k?null===(a=k)||"auto"===a?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,B="string"==typeof(r=C||j)?r:(0,l.formatUrl)(r);if(_){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});i=s.default.Children.only(n)}let W=_?i&&"object"==typeof i&&i.ref:z,K=s.default.useCallback(e=>(null!==$&&(w.current=(0,g.mountLinkInstance)(e,B,$,U,F,y)),()=>{w.current&&((0,g.unmountLinkForCurrentNavigation)(w.current),w.current=null),(0,g.unmountPrefetchableInstance)(e)}),[F,B,$,U,y]),q={ref:(0,d.useMergedRef)(K,W),onClick(t){_||"function"!=typeof E||E(t),_&&i.props&&"function"==typeof i.props.onClick&&i.props.onClick(t),!$||t.defaultPrevented||function(t,r,a,n,i,o,l){if("u">typeof window){let u,{nodeName:d}=t.currentTarget;if("A"===d.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),o){let e=!1;if(o({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:c}=e.r(88095);s.default.startTransition(()=>{c(r,n?"replace":"push",!1===i?p.ScrollBehavior.NoScroll:p.ScrollBehavior.Default,a.current,l)})}}(t,B,w,N,A,R,L)},onMouseEnter(e){_||"function"!=typeof T||T(e),_&&i.props&&"function"==typeof i.props.onMouseEnter&&i.props.onMouseEnter(e),$&&F&&(0,g.onNavigationIntent)(e.currentTarget,!0===M)},onTouchStart:function(e){_||"function"!=typeof O||O(e),_&&i.props&&"function"==typeof i.props.onTouchStart&&i.props.onTouchStart(e),$&&F&&(0,g.onNavigationIntent)(e.currentTarget,!0===M)}};return(0,c.isAbsoluteUrl)(B)?q.href=B:_&&!D&&("a"!==i.type||"href"in i.props)||(q.href=(0,f.addBasePath)(B)),b=_?s.default.cloneElement(i,q):(0,o.jsx)("a",{...I,...q,children:n}),(0,o.jsx)(v.Provider,{value:x,children:b})}e.r(78380);let v=(0,s.createContext)(g.IDLE_LINK_STATUS),x=()=>(0,s.useContext)(v);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},31364,e=>{"use strict";var t=e.i(75649);e.s(["Direction",0,t])},11661,61051,e=>{"use strict";let t=(0,e.i(54864).default)("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]);e.s(["default",0,t],61051),e.s(["PanelLeftIcon",0,t],11661)},57638,61238,e=>{"use strict";var t=e.i(96871),r=e.i(16539),a=e.i(94237);e.i(11661);var n=e.i(31364),i=e.i(74302),o=e.i(31777);e.i(35364),e.i(98127),e.i(25235);var s=e.i(8558),l=e.i(64541);function u({...e}){return(0,t.jsx)(l.Dialog.Root,{"data-slot":"sheet",...e})}function d({...e}){return(0,t.jsx)(l.Dialog.Portal,{"data-slot":"sheet-portal",...e})}function c({className:e,...r}){return(0,t.jsx)(l.Dialog.Overlay,{"data-slot":"sheet-overlay",className:(0,o.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",e),...r})}function f({className:e,children:r,side:a="right",showCloseButton:n=!0,...i}){return(0,t.jsxs)(d,{children:[(0,t.jsx)(c,{}),(0,t.jsxs)(l.Dialog.Content,{"data-slot":"sheet-content",className:(0,o.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500","right"===a&&"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 end-0 h-full w-3/4 border-s sm:max-w-sm","left"===a&&"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 start-0 h-full w-3/4 border-e sm:max-w-sm","top"===a&&"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b","bottom"===a&&"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",e),...i,children:[r,n?(0,t.jsxs)(l.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute end-4 top-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none",children:[(0,t.jsx)(s.XIcon,{className:"size-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]}):null]})]})}function p({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"sheet-header",className:(0,o.cn)("flex flex-col gap-1.5 p-4",e),...r})}function g({className:e,...r}){return(0,t.jsx)(l.Dialog.Title,{"data-slot":"sheet-title",className:(0,o.cn)("text-foreground font-semibold",e),...r})}function h({className:e,...r}){return(0,t.jsx)(l.Dialog.Description,{"data-slot":"sheet-description",className:(0,o.cn)("text-muted-foreground text-sm",e),...r})}e.s(["Skeleton",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"skeleton",className:(0,o.cn)("bg-accent animate-pulse rounded-md",e),...r})}],61238);var m=e.i(2828);let b="shipit-ai-sidebar-open",v=r.createContext(null);function x(){let e=r.useContext(v);if(!e)throw Error("useSidebar must be used within a SidebarProvider.");return e}let y=(0,a.cva)("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-start text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pe-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"},size:{default:"h-8 text-sm",sm:"h-7 text-xs",lg:"h-12 text-sm group-data-[collapsible=icon]:p-0!"}},defaultVariants:{variant:"default",size:"default"}});e.s(["Sidebar",0,function({side:e="left",variant:r="sidebar",collapsible:a="offcanvas",className:n,children:i,...s}){let{isMobile:l,state:d,openMobile:c,setOpenMobile:m,animated:b}=x();return"none"===a?(0,t.jsx)("div",{"data-slot":"sidebar",className:(0,o.cn)("bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col",n),...s,children:i}):l?(0,t.jsx)(u,{open:c,onOpenChange:m,...s,children:(0,t.jsxs)(f,{"data-sidebar":"sidebar","data-slot":"sidebar","data-mobile":"true",className:"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden",style:{"--sidebar-width":"18rem"},side:e,children:[(0,t.jsxs)(p,{className:"sr-only",children:[(0,t.jsx)(g,{children:"Sidebar"}),(0,t.jsx)(h,{children:"Displays the mobile sidebar."})]}),(0,t.jsx)("div",{className:"flex h-full w-full flex-col",children:i})]})}):(0,t.jsxs)("div",{className:"group peer text-sidebar-foreground hidden md:block","data-state":d,"data-collapsible":"collapsed"===d?a:"","data-variant":r,"data-side":e,"data-slot":"sidebar",children:[(0,t.jsx)("div",{"data-slot":"sidebar-gap",className:(0,o.cn)("relative w-(--sidebar-width) bg-transparent",b&&"transition-[width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:w-0","floating"===r||"inset"===r?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon)")}),(0,t.jsx)("div",{"data-slot":"sidebar-container",className:(0,o.cn)("fixed inset-y-0 start-0 z-10 hidden h-svh w-(--sidebar-width) md:flex",b&&"transition-[inset-inline-start,width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:start-[calc(var(--sidebar-width)*-1)]","floating"===r||"inset"===r?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]":"border-e group-data-[collapsible=icon]:w-(--sidebar-width-icon)",n),...s,children:(0,t.jsx)("div",{"data-sidebar":"sidebar","data-slot":"sidebar-inner",className:"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm",children:i})})]})},"SidebarContent",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"sidebar-content","data-sidebar":"content",className:(0,o.cn)("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),...r})},"SidebarFooter",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"sidebar-footer","data-sidebar":"footer",className:(0,o.cn)("flex flex-col gap-2 p-2",e),...r})},"SidebarGroup",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"sidebar-group","data-sidebar":"group",className:(0,o.cn)("relative flex w-full min-w-0 flex-col p-2",e),...r})},"SidebarGroupContent",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"sidebar-group-content","data-sidebar":"group-content",className:(0,o.cn)("w-full text-sm",e),...r})},"SidebarGroupLabel",0,function({className:e,asChild:r=!1,...a}){let n=r?i.Slot.Root:"div";return(0,t.jsx)(n,{"data-slot":"sidebar-group-label","data-sidebar":"group-label",className:(0,o.cn)("text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",e),...a})},"SidebarHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"sidebar-header","data-sidebar":"header",className:(0,o.cn)("flex flex-col gap-2 p-2",e),...r})},"SidebarInset",0,function({className:e,...r}){return(0,t.jsx)("main",{"data-slot":"sidebar-inset",className:(0,o.cn)("bg-background relative flex w-full flex-1 flex-col","md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ms-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ms-2",e),...r})},"SidebarMenu",0,function({className:e,...r}){return(0,t.jsx)("ul",{"data-slot":"sidebar-menu","data-sidebar":"menu",className:(0,o.cn)("flex w-full min-w-0 flex-col gap-1",e),...r})},"SidebarMenuButton",0,function({asChild:e=!1,isActive:r=!1,variant:a="default",size:s="default",tooltip:l,className:u,...d}){let c=e?i.Slot.Root:"button",{isMobile:f,state:p}=x(),g=n.Direction.useDirection(),h=(0,t.jsx)(c,{"data-slot":"sidebar-menu-button","data-sidebar":"menu-button","data-size":s,"data-active":r,className:(0,o.cn)(y({variant:a,size:s}),u),...d});return l?("string"==typeof l&&(l={children:l}),(0,t.jsxs)(m.Tooltip,{children:[(0,t.jsx)(m.TooltipTrigger,{asChild:!0,children:h}),(0,t.jsx)(m.TooltipContent,{side:"rtl"===g?"left":"right",align:"center",hidden:"collapsed"!==p||f,...l})]})):h},"SidebarMenuItem",0,function({className:e,...r}){return(0,t.jsx)("li",{"data-slot":"sidebar-menu-item","data-sidebar":"menu-item",className:(0,o.cn)("group/menu-item relative",e),...r})},"SidebarProvider",0,function({defaultOpen:e=!0,open:a,onOpenChange:n,className:i,style:s,children:l,...u}){let d=function(){let[e,t]=r.useState(void 0);return r.useEffect(()=>{let e=window.matchMedia("(max-width: 767px)"),r=()=>{t(window.innerWidth<768)};return e.addEventListener("change",r),t(window.innerWidth<768),()=>e.removeEventListener("change",r)},[]),!!e}(),[c,f]=r.useState(!1),[p,g]=r.useState(!1),[h,x]=r.useState(e),y=a??h,w=r.useCallback(e=>{let t="function"==typeof e?e(y):e;n?n(t):x(t);try{localStorage.setItem(b,String(t)),document.cookie=`${b}=${t}; path=/; max-age=31536000; SameSite=Lax`}catch{}},[n,y]),j=r.useCallback(()=>(g(!0),d?f(e=>!e):w(e=>!e)),[d,w,f]);r.useEffect(()=>{try{if(!document.cookie.includes(b)){let e=localStorage.getItem(b);null!=e&&(document.cookie=`${b}=${e}; path=/; max-age=31536000; SameSite=Lax`)}}catch{}},[]),r.useEffect(()=>{let e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),j())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[j]);let C=y?"expanded":"collapsed",S=r.useMemo(()=>({state:C,open:y,setOpen:w,isMobile:d,openMobile:c,setOpenMobile:f,toggleSidebar:j,animated:p}),[C,y,w,d,c,f,j,p]);return(0,t.jsx)(v.Provider,{value:S,children:(0,t.jsx)(m.TooltipProvider,{delayDuration:0,children:(0,t.jsx)("div",{"data-slot":"sidebar-wrapper",style:{"--sidebar-width":"16rem","--sidebar-width-icon":"3rem",...s},className:(0,o.cn)("group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full",i),...u,children:l})})})},"useSidebar",0,x],57638)},38373,e=>{"use strict";var t=e.i(96871),r=e.i(16539);let a=(0,r.createContext)({swapPosition:!1});e.s(["FabLayoutProvider",0,function({children:e,layout:r}){return(0,t.jsx)(a.Provider,{value:r,children:e})},"useFabLayout",0,function(){return(0,r.useContext)(a)}])},5147,e=>{"use strict";var t=e.i(96871),r=e.i(16539);let a={"action-required":"action-needed",running:"in-progress",done:"done",blocked:"blocked",pending:"pending",error:"error",creating:null,deleting:null,archived:null},n=(0,r.createContext)(null);e.s(["SidebarFeaturesProvider",0,function({children:e}){let[a,i]=(0,r.useState)([]),[o,s]=(0,r.useState)(!1),l=(0,r.useMemo)(()=>({features:a,setFeatures:i,hasRepositories:o,setHasRepositories:s}),[a,o]);return(0,t.jsx)(n.Provider,{value:l,children:e})},"mapNodeStateToSidebarStatus",0,function(e){return a[e]},"useSidebarFeaturesContext",0,function(){let e=(0,r.useContext)(n);if(!e)throw Error("useSidebarFeaturesContext must be used within a <SidebarFeaturesProvider>");return e}])},54625,e=>{e.v(t=>Promise.all(["static/chunks/0l.kymg3jmf7n.js"].map(t=>e.l(t))).then(()=>t(19454)))}]);