@shepai/cli 1.106.3 → 1.106.4-pr327.f3fea88

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 (697) hide show
  1. package/apis/json-schema/FeatureFlags.yaml +5 -0
  2. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  3. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -0
  4. package/dist/packages/core/src/domain/generated/output.d.ts +4 -0
  5. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  6. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -0
  7. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  8. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +3 -1
  9. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts.map +1 -1
  10. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.js +11 -0
  11. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  12. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -2
  13. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
  14. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +5 -0
  15. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/schemas/spec.schema.d.ts.map +1 -1
  16. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/schemas/spec.schema.js +6 -1
  17. package/dist/src/presentation/web/app/api/chat/stream/route.d.ts +14 -0
  18. package/dist/src/presentation/web/app/api/chat/stream/route.d.ts.map +1 -0
  19. package/dist/src/presentation/web/app/api/chat/stream/route.js +153 -0
  20. package/dist/src/presentation/web/app/chat/page.d.ts +4 -0
  21. package/dist/src/presentation/web/app/chat/page.d.ts.map +1 -0
  22. package/dist/src/presentation/web/app/chat/page.js +11 -0
  23. package/dist/src/presentation/web/components/features/chat/chat-empty-state.d.ts +6 -0
  24. package/dist/src/presentation/web/components/features/chat/chat-empty-state.d.ts.map +1 -0
  25. package/dist/src/presentation/web/components/features/chat/chat-empty-state.js +14 -0
  26. package/dist/src/presentation/web/components/features/chat/chat-empty-state.stories.d.ts +7 -0
  27. package/dist/src/presentation/web/components/features/chat/chat-empty-state.stories.d.ts.map +1 -0
  28. package/dist/src/presentation/web/components/features/chat/chat-empty-state.stories.js +15 -0
  29. package/dist/src/presentation/web/components/features/chat/chat-header.d.ts +7 -0
  30. package/dist/src/presentation/web/components/features/chat/chat-header.d.ts.map +1 -0
  31. package/dist/src/presentation/web/components/features/chat/chat-header.js +10 -0
  32. package/dist/src/presentation/web/components/features/chat/chat-header.stories.d.ts +8 -0
  33. package/dist/src/presentation/web/components/features/chat/chat-header.stories.d.ts.map +1 -0
  34. package/dist/src/presentation/web/components/features/chat/chat-header.stories.js +20 -0
  35. package/dist/src/presentation/web/components/features/chat/chat-page-client.d.ts +2 -0
  36. package/dist/src/presentation/web/components/features/chat/chat-page-client.d.ts.map +1 -0
  37. package/dist/src/presentation/web/components/features/chat/chat-page-client.js +50 -0
  38. package/dist/src/presentation/web/components/features/chat/chat-page-client.stories.d.ts +7 -0
  39. package/dist/src/presentation/web/components/features/chat/chat-page-client.stories.d.ts.map +1 -0
  40. package/dist/src/presentation/web/components/features/chat/chat-page-client.stories.js +15 -0
  41. package/dist/src/presentation/web/components/features/chat/chat-view.d.ts +24 -0
  42. package/dist/src/presentation/web/components/features/chat/chat-view.d.ts.map +1 -0
  43. package/dist/src/presentation/web/components/features/chat/chat-view.js +17 -0
  44. package/dist/src/presentation/web/components/features/chat/chat-view.stories.d.ts +14 -0
  45. package/dist/src/presentation/web/components/features/chat/chat-view.stories.d.ts.map +1 -0
  46. package/dist/src/presentation/web/components/features/chat/chat-view.stories.js +149 -0
  47. package/dist/src/presentation/web/components/features/chat/index.d.ts +5 -0
  48. package/dist/src/presentation/web/components/features/chat/index.d.ts.map +1 -0
  49. package/dist/src/presentation/web/components/features/chat/index.js +4 -0
  50. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.d.ts.map +1 -1
  51. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.js +3 -1
  52. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.d.ts.map +1 -1
  53. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.js +3 -0
  54. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  55. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +6 -1
  56. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts.map +1 -1
  57. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.js +1 -0
  58. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
  59. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +2 -2
  60. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.js +1 -1
  61. package/dist/src/presentation/web/components/ui/avatar.d.ts +12 -0
  62. package/dist/src/presentation/web/components/ui/avatar.d.ts.map +1 -0
  63. package/dist/src/presentation/web/components/ui/avatar.js +23 -0
  64. package/dist/src/presentation/web/components/ui/chat-container.d.ts +17 -0
  65. package/dist/src/presentation/web/components/ui/chat-container.d.ts.map +1 -0
  66. package/dist/src/presentation/web/components/ui/chat-container.js +14 -0
  67. package/dist/src/presentation/web/components/ui/code-block.d.ts +17 -0
  68. package/dist/src/presentation/web/components/ui/code-block.d.ts.map +1 -0
  69. package/dist/src/presentation/web/components/ui/code-block.js +29 -0
  70. package/dist/src/presentation/web/components/ui/loader.d.ts +60 -0
  71. package/dist/src/presentation/web/components/ui/loader.d.ts.map +1 -0
  72. package/dist/src/presentation/web/components/ui/loader.js +190 -0
  73. package/dist/src/presentation/web/components/ui/markdown.d.ts +12 -0
  74. package/dist/src/presentation/web/components/ui/markdown.d.ts.map +1 -0
  75. package/dist/src/presentation/web/components/ui/markdown.js +50 -0
  76. package/dist/src/presentation/web/components/ui/message.d.ts +35 -0
  77. package/dist/src/presentation/web/components/ui/message.d.ts.map +1 -0
  78. package/dist/src/presentation/web/components/ui/message.js +18 -0
  79. package/dist/src/presentation/web/components/ui/prompt-input.d.ts +30 -0
  80. package/dist/src/presentation/web/components/ui/prompt-input.d.ts.map +1 -0
  81. package/dist/src/presentation/web/components/ui/prompt-input.js +98 -0
  82. package/dist/src/presentation/web/hooks/feature-flags-context.d.ts.map +1 -1
  83. package/dist/src/presentation/web/hooks/feature-flags-context.js +6 -1
  84. package/dist/src/presentation/web/hooks/use-chat.d.ts +57 -0
  85. package/dist/src/presentation/web/hooks/use-chat.d.ts.map +1 -0
  86. package/dist/src/presentation/web/hooks/use-chat.js +217 -0
  87. package/dist/src/presentation/web/lib/feature-flags.d.ts +2 -0
  88. package/dist/src/presentation/web/lib/feature-flags.d.ts.map +1 -1
  89. package/dist/src/presentation/web/lib/feature-flags.js +7 -0
  90. package/dist/tsconfig.build.tsbuildinfo +1 -1
  91. package/package.json +1 -1
  92. package/web/.next/BUILD_ID +1 -1
  93. package/web/.next/app-path-routes-manifest.json +2 -0
  94. package/web/.next/build-manifest.json +7 -7
  95. package/web/.next/fallback-build-manifest.json +2 -2
  96. package/web/.next/prerender-manifest.json +3 -3
  97. package/web/.next/required-server-files.js +3 -3
  98. package/web/.next/required-server-files.json +3 -3
  99. package/web/.next/routes-manifest.json +12 -0
  100. package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +5 -5
  101. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +20 -20
  102. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  103. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  104. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/build-manifest.json +5 -5
  105. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +25 -25
  106. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  107. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  108. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +5 -5
  109. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +25 -25
  110. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  111. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  112. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +5 -5
  113. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +18 -18
  114. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  115. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  116. package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +5 -5
  117. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +20 -20
  118. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  119. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  120. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/build-manifest.json +5 -5
  121. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +25 -25
  122. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  123. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  124. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +5 -5
  125. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +25 -25
  126. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  127. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  128. package/web/.next/server/app/(dashboard)/page/build-manifest.json +5 -5
  129. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +18 -18
  130. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  131. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  132. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +5 -5
  133. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +18 -18
  134. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  135. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  136. package/web/.next/server/app/_global-error/page/build-manifest.json +5 -5
  137. package/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  138. package/web/.next/server/app/_global-error.html +2 -2
  139. package/web/.next/server/app/_global-error.rsc +7 -7
  140. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  141. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  142. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
  143. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  144. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  145. package/web/.next/server/app/_not-found/page/build-manifest.json +5 -5
  146. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  147. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  148. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  149. package/web/.next/server/app/api/agent-events/route.js +1 -2
  150. package/web/.next/server/app/api/agent-events/route.js.nft.json +1 -1
  151. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  152. package/web/.next/server/app/api/attachments/upload-from-path/route.js +1 -1
  153. package/web/.next/server/app/api/attachments/upload-from-path/route.js.nft.json +1 -1
  154. package/web/.next/server/app/api/chat/stream/route/app-paths-manifest.json +3 -0
  155. package/web/.next/server/app/api/chat/stream/route/build-manifest.json +11 -0
  156. package/web/.next/server/app/api/chat/stream/route/server-reference-manifest.json +4 -0
  157. package/web/.next/server/app/api/chat/stream/route.js +6 -0
  158. package/web/.next/server/app/api/chat/stream/route.js.map +5 -0
  159. package/web/.next/server/app/api/chat/stream/route.js.nft.json +1 -0
  160. package/web/.next/server/app/api/chat/stream/route_client-reference-manifest.js +2 -0
  161. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  162. package/web/.next/server/app/api/feature-logs/route.js +1 -1
  163. package/web/.next/server/app/api/feature-logs/route.js.nft.json +1 -1
  164. package/web/.next/server/app/chat/page/app-paths-manifest.json +3 -0
  165. package/web/.next/server/app/chat/page/build-manifest.json +18 -0
  166. package/web/.next/server/app/chat/page/next-font-manifest.json +6 -0
  167. package/web/.next/server/app/chat/page/react-loadable-manifest.json +1 -0
  168. package/web/.next/server/app/chat/page/server-reference-manifest.json +20 -0
  169. package/web/.next/server/app/chat/page.js +17 -0
  170. package/web/.next/server/app/chat/page.js.map +5 -0
  171. package/web/.next/server/app/chat/page.js.nft.json +1 -0
  172. package/web/.next/server/app/chat/page_client-reference-manifest.js +2 -0
  173. package/web/.next/server/app/settings/page/build-manifest.json +5 -5
  174. package/web/.next/server/app/settings/page/server-reference-manifest.json +5 -5
  175. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  176. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  177. package/web/.next/server/app/skills/page/build-manifest.json +5 -5
  178. package/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
  179. package/web/.next/server/app/skills/page.js +4 -4
  180. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  181. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  182. package/web/.next/server/app/tools/page/build-manifest.json +5 -5
  183. package/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
  184. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  185. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  186. package/web/.next/server/app/version/page/build-manifest.json +5 -5
  187. package/web/.next/server/app/version/page/server-reference-manifest.json +2 -2
  188. package/web/.next/server/app/version/page.js.nft.json +1 -1
  189. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  190. package/web/.next/server/app-paths-manifest.json +2 -0
  191. package/web/.next/server/chunks/403f9_next_567de315._.js +1 -1
  192. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_chat_stream_route_actions_ea265361.js +3 -0
  193. package/web/.next/server/chunks/[root-of-the-server]__0866d2b5._.js +1 -1
  194. package/web/.next/server/chunks/[root-of-the-server]__332c8d91._.js +1 -1
  195. package/web/.next/server/chunks/[root-of-the-server]__3b72e8b0._.js +1 -1
  196. package/web/.next/server/chunks/{[root-of-the-server]__91d44424._.js → [root-of-the-server]__52c318d1._.js} +2 -2
  197. package/web/.next/server/chunks/[root-of-the-server]__57104a4c._.js +1 -1
  198. package/web/.next/server/chunks/[root-of-the-server]__7d63f9a4._.js +1 -1
  199. package/web/.next/server/chunks/[root-of-the-server]__9191749c._.js +1 -1
  200. package/web/.next/server/chunks/[root-of-the-server]__99c20fe5._.js +5 -0
  201. package/web/.next/server/chunks/[root-of-the-server]__99c20fe5._.js.map +1 -0
  202. package/web/.next/server/chunks/[root-of-the-server]__9a136c79._.js +1 -1
  203. package/web/.next/server/chunks/[root-of-the-server]__a1c7c02a._.js +1 -1
  204. package/web/.next/server/chunks/{[root-of-the-server]__db04ed44._.js → [root-of-the-server]__a5879003._.js} +2 -2
  205. package/web/.next/server/chunks/[root-of-the-server]__aae14de3._.js +6 -0
  206. package/web/.next/server/chunks/[root-of-the-server]__aae14de3._.js.map +1 -0
  207. package/web/.next/server/chunks/[root-of-the-server]__b2f9a412._.js +1 -1
  208. package/web/.next/server/chunks/[root-of-the-server]__b4102cc7._.js +1 -1
  209. package/web/.next/server/chunks/[root-of-the-server]__d2c18946._.js +1 -1
  210. package/web/.next/server/chunks/[root-of-the-server]__d9d410a8._.js +1 -1
  211. package/web/.next/server/chunks/[root-of-the-server]__e247a485._.js +1 -1
  212. package/web/.next/server/chunks/[root-of-the-server]__f47bb8a5._.js +1 -1
  213. package/web/.next/server/chunks/ssr/403f9_next_dist_31ea46d3._.js +1 -1
  214. package/web/.next/server/chunks/ssr/403f9_next_dist_c9d9b4d7._.js +1 -1
  215. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  216. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  217. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +4 -0
  218. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -0
  219. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_0a7546ed.js +1 -1
  220. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_0a7546ed.js.map +1 -1
  221. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_978cbb4c.js +1 -1
  222. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_978cbb4c.js.map +1 -1
  223. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js +1 -1
  224. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js.map +1 -1
  225. package/web/.next/server/chunks/ssr/[root-of-the-server]__13482941._.js +4 -0
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__13482941._.js.map +1 -0
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f1931f8._.js +3 -0
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f1931f8._.js.map +1 -0
  229. package/web/.next/server/chunks/ssr/[root-of-the-server]__248ee887._.js +1 -1
  230. package/web/.next/server/chunks/ssr/[root-of-the-server]__24dd0927._.js +2 -2
  231. package/web/.next/server/chunks/ssr/[root-of-the-server]__26d31159._.js +3 -0
  232. package/web/.next/server/chunks/ssr/[root-of-the-server]__26d31159._.js.map +1 -0
  233. package/web/.next/server/chunks/ssr/[root-of-the-server]__2a6f3e3f._.js +3 -0
  234. package/web/.next/server/chunks/ssr/[root-of-the-server]__2a6f3e3f._.js.map +1 -0
  235. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  236. package/web/.next/server/chunks/ssr/[root-of-the-server]__51fc98b0._.js +1 -1
  237. package/web/.next/server/chunks/ssr/[root-of-the-server]__51fc98b0._.js.map +1 -1
  238. package/web/.next/server/chunks/ssr/[root-of-the-server]__57f37786._.js +1 -1
  239. package/web/.next/server/chunks/ssr/[root-of-the-server]__57f37786._.js.map +1 -1
  240. package/web/.next/server/chunks/ssr/[root-of-the-server]__5d87af2e._.js +1 -1
  241. package/web/.next/server/chunks/ssr/[root-of-the-server]__6803b571._.js +3 -0
  242. package/web/.next/server/chunks/ssr/[root-of-the-server]__6803b571._.js.map +1 -0
  243. package/web/.next/server/chunks/ssr/[root-of-the-server]__708dcad1._.js +1 -1
  244. package/web/.next/server/chunks/ssr/[root-of-the-server]__708dcad1._.js.map +1 -1
  245. package/web/.next/server/chunks/ssr/{[root-of-the-server]__845a9d2a._.js → [root-of-the-server]__753f42eb._.js} +2 -2
  246. package/web/.next/server/chunks/ssr/[root-of-the-server]__753f42eb._.js.map +1 -0
  247. package/web/.next/server/chunks/ssr/[root-of-the-server]__89e8a5cc._.js +2 -2
  248. package/web/.next/server/chunks/ssr/[root-of-the-server]__89e8a5cc._.js.map +1 -1
  249. package/web/.next/server/chunks/ssr/[root-of-the-server]__8e002910._.js +1 -1
  250. package/web/.next/server/chunks/ssr/[root-of-the-server]__8e002910._.js.map +1 -1
  251. package/web/.next/server/chunks/ssr/[root-of-the-server]__99857356._.js +61 -0
  252. package/web/.next/server/chunks/ssr/[root-of-the-server]__99857356._.js.map +1 -0
  253. package/web/.next/server/chunks/ssr/[root-of-the-server]__9b8f6941._.js +3 -0
  254. package/web/.next/server/chunks/ssr/[root-of-the-server]__9b8f6941._.js.map +1 -0
  255. package/web/.next/server/chunks/ssr/[root-of-the-server]__b062b383._.js +1 -1
  256. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js +1 -1
  257. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js.map +1 -1
  258. package/web/.next/server/chunks/ssr/_135edb9c._.js +1 -1
  259. package/web/.next/server/chunks/ssr/_135edb9c._.js.map +1 -1
  260. package/web/.next/server/chunks/ssr/{_1f9b7ad3._.js → _15dc3761._.js} +2 -2
  261. package/web/.next/server/chunks/ssr/{_1f9b7ad3._.js.map → _15dc3761._.js.map} +1 -1
  262. package/web/.next/server/chunks/ssr/_25eb2abf._.js +4 -0
  263. package/web/.next/server/chunks/ssr/_25eb2abf._.js.map +1 -0
  264. package/web/.next/server/chunks/ssr/_273d4632._.js +1 -1
  265. package/web/.next/server/chunks/ssr/_34ba40e0._.js +3 -0
  266. package/web/.next/server/chunks/ssr/_34ba40e0._.js.map +1 -0
  267. package/web/.next/server/chunks/ssr/_4093a637._.js +5 -0
  268. package/web/.next/server/chunks/ssr/_4093a637._.js.map +1 -0
  269. package/web/.next/server/chunks/ssr/_6a2e8373._.js +3 -0
  270. package/web/.next/server/chunks/ssr/_6a2e8373._.js.map +1 -0
  271. package/web/.next/server/chunks/ssr/_6e08ce21._.js.map +1 -1
  272. package/web/.next/server/chunks/ssr/_7ba5f9bd._.js +9 -0
  273. package/web/.next/server/chunks/ssr/_7ba5f9bd._.js.map +1 -0
  274. package/web/.next/server/chunks/ssr/_8dacd1e7._.js +2 -2
  275. package/web/.next/server/chunks/ssr/_8dacd1e7._.js.map +1 -1
  276. package/web/.next/server/chunks/ssr/_906e9cde._.js +3 -0
  277. package/web/.next/server/chunks/ssr/_906e9cde._.js.map +1 -0
  278. package/web/.next/server/chunks/ssr/_a37f5f18._.js +1 -1
  279. package/web/.next/server/chunks/ssr/_a37f5f18._.js.map +1 -1
  280. package/web/.next/server/chunks/ssr/_b407679c._.js +3 -0
  281. package/web/.next/server/chunks/ssr/_b407679c._.js.map +1 -0
  282. package/web/.next/server/chunks/ssr/_cc77a143._.js +1 -1
  283. package/web/.next/server/chunks/ssr/_cc77a143._.js.map +1 -1
  284. package/web/.next/server/chunks/ssr/_d7c4fb01._.js +7 -0
  285. package/web/.next/server/chunks/ssr/_d7c4fb01._.js.map +1 -0
  286. package/web/.next/server/chunks/ssr/_eb8add9f._.js +4 -0
  287. package/web/.next/server/chunks/ssr/_eb8add9f._.js.map +1 -0
  288. package/web/.next/server/chunks/ssr/_f5316e67._.js +1 -1
  289. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  290. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  291. package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js +3 -0
  292. package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js.map +1 -0
  293. package/web/.next/server/chunks/ssr/src_presentation_web_7275ce5d._.js +2 -2
  294. package/web/.next/server/chunks/ssr/src_presentation_web_7275ce5d._.js.map +1 -1
  295. package/web/.next/server/chunks/ssr/src_presentation_web_758dfa10._.js +2 -2
  296. package/web/.next/server/chunks/ssr/src_presentation_web_758dfa10._.js.map +1 -1
  297. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_84803221.js +1 -1
  298. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_84803221.js.map +1 -1
  299. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +1 -1
  300. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js.map +1 -1
  301. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +1 -1
  302. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js.map +1 -1
  303. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js +1 -1
  304. package/web/.next/server/chunks/ssr/src_presentation_web_components_bf50c527._.js.map +1 -1
  305. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js +1 -1
  306. package/web/.next/server/chunks/ssr/src_presentation_web_components_de814675._.js.map +1 -1
  307. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
  308. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +1 -1
  309. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  310. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  311. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js +1 -1
  312. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js +3 -0
  313. package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js.map +1 -0
  314. package/web/.next/server/middleware-build-manifest.js +5 -5
  315. package/web/.next/server/pages/500.html +2 -2
  316. package/web/.next/server/server-reference-manifest.js +1 -1
  317. package/web/.next/server/server-reference-manifest.json +38 -31
  318. package/web/.next/static/chunks/0000a3bd9d33363e.js +1 -0
  319. package/web/.next/static/chunks/{29c29800f5a2acc6.js → 0146cc63e09aa1fc.js} +1 -1
  320. package/web/.next/static/chunks/01c44c0f52e94d13.js +1 -0
  321. package/web/.next/static/chunks/025972c91961cb4f.js +1 -0
  322. package/web/.next/static/chunks/04077bc8814ebb95.js +1 -0
  323. package/web/.next/static/chunks/040f765faf202f21.js +1 -0
  324. package/web/.next/static/chunks/0452bf6331941e3f.js +1 -0
  325. package/web/.next/static/chunks/04abfd0d3656c990.js +1 -0
  326. package/web/.next/static/chunks/04ba2061ab93d4b4.js +1 -0
  327. package/web/.next/static/chunks/053a7b986353ec4b.js +1 -0
  328. package/web/.next/static/chunks/06f273bdc5828685.js +1 -0
  329. package/web/.next/static/chunks/0749a5b512d6df6b.js +1 -0
  330. package/web/.next/static/chunks/07720f62d0494cff.js +1 -0
  331. package/web/.next/static/chunks/07b3a3fe5ed6806c.js +1 -0
  332. package/web/.next/static/chunks/07ed2655f92b082d.js +1 -0
  333. package/web/.next/static/chunks/0820c893f5292ab6.js +1 -0
  334. package/web/.next/static/chunks/08fb03f101641646.js +1 -0
  335. package/web/.next/static/chunks/0992e1494eb73f73.js +1 -0
  336. package/web/.next/static/chunks/{b2b65ee0666a829a.js → 0b0f65124c9e6e98.js} +1 -1
  337. package/web/.next/static/chunks/0b64f70d18b592a9.js +1 -0
  338. package/web/.next/static/chunks/0b925ca1a402d3cd.js +1 -0
  339. package/web/.next/static/chunks/0c4d93176dc739f0.js +1 -0
  340. package/web/.next/static/chunks/0c65283281ae11be.js +1 -0
  341. package/web/.next/static/chunks/0c82301271695b04.js +1 -0
  342. package/web/.next/static/chunks/0d6db841c33ab4f1.js +1 -0
  343. package/web/.next/static/chunks/0d813d73dacd9b43.js +1 -0
  344. package/web/.next/static/chunks/0dcf159fb9a610e4.js +1 -0
  345. package/web/.next/static/chunks/0e7dfad45e402b87.js +1 -0
  346. package/web/.next/static/chunks/0e827c7f60ca4551.js +1 -0
  347. package/web/.next/static/chunks/0f619c5c402fb9f4.js +1 -0
  348. package/web/.next/static/chunks/0f83f16fa24fd5d7.js +1 -0
  349. package/web/.next/static/chunks/0feedea346fd5fbe.js +1 -0
  350. package/web/.next/static/chunks/12dbfd5ed203fd8c.js +1 -0
  351. package/web/.next/static/chunks/13ab63bcbd1b9d73.js +1 -0
  352. package/web/.next/static/chunks/14e6e069b833483c.js +1 -0
  353. package/web/.next/static/chunks/15049e8c70931a5c.js +1 -0
  354. package/web/.next/static/chunks/15e9e6d3526dba19.js +1 -0
  355. package/web/.next/static/chunks/1675a99c138a8dff.js +1 -0
  356. package/web/.next/static/chunks/18257a988399c500.js +1 -0
  357. package/web/.next/static/chunks/18b8b7c0f43653ed.js +1 -0
  358. package/web/.next/static/chunks/1903ea0fc4a1c66a.js +1 -0
  359. package/web/.next/static/chunks/1a9763ce5ba22b57.js +1 -0
  360. package/web/.next/static/chunks/1c5a18c436c08be5.js +1 -0
  361. package/web/.next/static/chunks/1d95a3b4ad425e84.js +1 -0
  362. package/web/.next/static/chunks/1e88753738d86281.js +1 -0
  363. package/web/.next/static/chunks/1f5b06b26b55f61e.js +1 -0
  364. package/web/.next/static/chunks/20e893034947cff0.js +1 -0
  365. package/web/.next/static/chunks/2199bd4a3f61c371.js +1 -0
  366. package/web/.next/static/chunks/21f6010e9d824e2b.js +1 -0
  367. package/web/.next/static/chunks/2277de4cd5d76ea0.js +1 -0
  368. package/web/.next/static/chunks/23874b32b27bc398.js +1 -0
  369. package/web/.next/static/chunks/242af1b1794692bb.js +1 -0
  370. package/web/.next/static/chunks/24ff7613e7640548.js +1 -0
  371. package/web/.next/static/chunks/255b89458bc45261.js +1 -0
  372. package/web/.next/static/chunks/256f95ef70dd81c3.js +1 -0
  373. package/web/.next/static/chunks/2612e5560f8ba2c2.js +1 -0
  374. package/web/.next/static/chunks/26cc1fb330a4c4ef.js +1 -0
  375. package/web/.next/static/chunks/2796913db81fa3a0.js +1 -0
  376. package/web/.next/static/chunks/2a0985b01345546d.js +1 -0
  377. package/web/.next/static/chunks/2a13aed05cd157cb.js +1 -0
  378. package/web/.next/static/chunks/2a65cbda6248ac45.js +1 -0
  379. package/web/.next/static/chunks/2a9e798066780ccb.js +1 -0
  380. package/web/.next/static/chunks/2aecaa7075dff32c.js +1 -0
  381. package/web/.next/static/chunks/2aff3eb00311b5ff.js +1 -0
  382. package/web/.next/static/chunks/2b601943d3e94e5b.js +1 -0
  383. package/web/.next/static/chunks/2ce5939b18e1a21e.js +1 -0
  384. package/web/.next/static/chunks/2d204a2a777b935d.js +1 -0
  385. package/web/.next/static/chunks/2d64b4ffcaccace0.js +1 -0
  386. package/web/.next/static/chunks/2d890ccc3bdefafa.js +1 -0
  387. package/web/.next/static/chunks/2e25aca5b7400f56.js +1 -0
  388. package/web/.next/static/chunks/2ed750fa9ff05fb4.js +1 -0
  389. package/web/.next/static/chunks/2f1a7ab193aa56ab.js +1 -0
  390. package/web/.next/static/chunks/2fc0965d77242987.js +1 -0
  391. package/web/.next/static/chunks/3054fd6667aee1d2.js +1 -0
  392. package/web/.next/static/chunks/305ea36a55b1b01d.js +1 -0
  393. package/web/.next/static/chunks/31345772bfb5b56d.js +1 -0
  394. package/web/.next/static/chunks/31e19c87048a2dd2.js +1 -0
  395. package/web/.next/static/chunks/32a5dff7a1424ce7.js +1 -0
  396. package/web/.next/static/chunks/3320db3c4bd922dd.js +1 -0
  397. package/web/.next/static/chunks/338b409bcf9c5da6.js +1 -0
  398. package/web/.next/static/chunks/33f71ecfbcc40eb8.js +1 -0
  399. package/web/.next/static/chunks/35bc063ce1c82d62.js +1 -0
  400. package/web/.next/static/chunks/366630af12ceb9aa.js +1 -0
  401. package/web/.next/static/chunks/36a02bc96e797be1.js +1 -0
  402. package/web/.next/static/chunks/3857a5a593f557b6.js +1 -0
  403. package/web/.next/static/chunks/38f38199611b387a.js +1 -0
  404. package/web/.next/static/chunks/39fd8dea78ce33a1.js +1 -0
  405. package/web/.next/static/chunks/3a9753d40e045b8f.js +1 -0
  406. package/web/.next/static/chunks/3ae3c50c728eab31.js +11 -0
  407. package/web/.next/static/chunks/3b811f725088f5ec.js +1 -0
  408. package/web/.next/static/chunks/3d0086082ce28745.js +1 -0
  409. package/web/.next/static/chunks/3daba4c77e106a0b.js +1 -0
  410. package/web/.next/static/chunks/3eeb840a2075bfde.js +1 -0
  411. package/web/.next/static/chunks/3f2585c9332265e2.js +1 -0
  412. package/web/.next/static/chunks/3f701f917196c596.js +1 -0
  413. package/web/.next/static/chunks/4028b1961891bd0b.js +1 -0
  414. package/web/.next/static/chunks/40962df79d5b9308.js +1 -0
  415. package/web/.next/static/chunks/40bdb6b0b6b24b30.js +1 -0
  416. package/web/.next/static/chunks/419f2849c47d15b0.js +1 -0
  417. package/web/.next/static/chunks/4301b2746001957f.js +1 -0
  418. package/web/.next/static/chunks/458a6ec844531967.js +1 -0
  419. package/web/.next/static/chunks/45ae42a60c5885ba.js +1 -0
  420. package/web/.next/static/chunks/45d55f26409a62e9.js +1 -0
  421. package/web/.next/static/chunks/469057391d9b81af.js +1 -0
  422. package/web/.next/static/chunks/46af0d08db9ec138.js +1 -0
  423. package/web/.next/static/chunks/47dd15642d568b90.js +1 -0
  424. package/web/.next/static/chunks/4be33773114cd302.js +1 -0
  425. package/web/.next/static/chunks/4c3eff62cda82668.js +1 -0
  426. package/web/.next/static/chunks/4c592610236f630f.js +4 -0
  427. package/web/.next/static/chunks/4cc404bcff34a71f.js +1 -0
  428. package/web/.next/static/chunks/4d44c49ec4cdd79f.js +1 -0
  429. package/web/.next/static/chunks/4f0c36555d75e5fe.js +1 -0
  430. package/web/.next/static/chunks/554aadda059a8430.js +1 -0
  431. package/web/.next/static/chunks/55c4d9d2fddbead4.js +1 -0
  432. package/web/.next/static/chunks/55dc4e8d31455c2d.js +1 -0
  433. package/web/.next/static/chunks/5737640b5eb3844c.js +1 -0
  434. package/web/.next/static/chunks/5874c94c33f9b7b0.js +1 -0
  435. package/web/.next/static/chunks/58d9b3be51fd5de0.js +1 -0
  436. package/web/.next/static/chunks/5a4e2f295be16022.js +1 -0
  437. package/web/.next/static/chunks/5bc3c8f3a6aca6fa.js +1 -0
  438. package/web/.next/static/chunks/5c3c605bb590e3e7.js +1 -0
  439. package/web/.next/static/chunks/5c955aad7e021e56.js +1 -0
  440. package/web/.next/static/chunks/5cb21622c5e5747e.js +1 -0
  441. package/web/.next/static/chunks/5cdf0942d4f7ed5f.js +1 -0
  442. package/web/.next/static/chunks/5d4a3f9a24a357ab.js +1 -0
  443. package/web/.next/static/chunks/5d97d16f083409e9.js +1 -0
  444. package/web/.next/static/chunks/60f3d869542bf677.js +1 -0
  445. package/web/.next/static/chunks/62224eae737b4521.js +1 -0
  446. package/web/.next/static/chunks/6539d0757f0cfc29.js +1 -0
  447. package/web/.next/static/chunks/65a238abdcb11bcd.js +1 -0
  448. package/web/.next/static/chunks/65b76ab700c2a9d0.js +1 -0
  449. package/web/.next/static/chunks/660ad72a4adcb7fc.js +1 -0
  450. package/web/.next/static/chunks/664c671566a249f4.js +1 -0
  451. package/web/.next/static/chunks/66bbfced65db425f.js +1 -0
  452. package/web/.next/static/chunks/68b6eedefa12f8c7.js +1 -0
  453. package/web/.next/static/chunks/68fa8559029f9f41.js +1 -0
  454. package/web/.next/static/chunks/6947ab623933a779.js +1 -0
  455. package/web/.next/static/chunks/6e9f2a1a17352af0.js +1 -0
  456. package/web/.next/static/chunks/6ee18bbefc401436.js +1 -0
  457. package/web/.next/static/chunks/6f83a2cba6850e4a.js +1 -0
  458. package/web/.next/static/chunks/6fb42a88b84aa22b.js +1 -0
  459. package/web/.next/static/chunks/6ffd8d481eb5e86a.js +1 -0
  460. package/web/.next/static/chunks/70ebb562067defff.js +1 -0
  461. package/web/.next/static/chunks/719ffd0d25696861.js +1 -0
  462. package/web/.next/static/chunks/71bbf75ff7ac7d1c.js +1 -0
  463. package/web/.next/static/chunks/72452c79bb483893.js +1 -0
  464. package/web/.next/static/chunks/{0102ce60a2a42fab.js → 73512dcafc035901.js} +1 -1
  465. package/web/.next/static/chunks/737b452d10950f75.js +1 -0
  466. package/web/.next/static/chunks/73c9849a26d56eaf.js +1 -0
  467. package/web/.next/static/chunks/742ddcbde2de0a5f.js +1 -0
  468. package/web/.next/static/chunks/75f20501876081ae.js +1 -0
  469. package/web/.next/static/chunks/771904aa3f2b5890.js +1 -0
  470. package/web/.next/static/chunks/78140b3927f34ee1.js +1 -0
  471. package/web/.next/static/chunks/78c2221a0e9ac3e0.js +1 -0
  472. package/web/.next/static/chunks/7a16988476a29ae1.js +1 -0
  473. package/web/.next/static/chunks/7aebb2852b03cf3b.js +1 -0
  474. package/web/.next/static/chunks/{d4ee1f8f03cee0aa.js → 7b3bad34a11293ef.js} +1 -1
  475. package/web/.next/static/chunks/7cada01735a2de18.js +1 -0
  476. package/web/.next/static/chunks/7cd5e13ac856cf73.js +1 -0
  477. package/web/.next/static/chunks/7d0c918f6da54095.js +1 -0
  478. package/web/.next/static/chunks/7e55ce83f10514a3.js +1 -0
  479. package/web/.next/static/chunks/7e70c7df8d1224f0.js +1 -0
  480. package/web/.next/static/chunks/7f3161de6996c05f.js +1 -0
  481. package/web/.next/static/chunks/806207333fba56e3.js +1 -0
  482. package/web/.next/static/chunks/825f5a75a38db3ec.js +1 -0
  483. package/web/.next/static/chunks/82df15d2af5efffe.js +1 -0
  484. package/web/.next/static/chunks/83397d71344d405d.js +1 -0
  485. package/web/.next/static/chunks/8478b108a35675bb.js +1 -0
  486. package/web/.next/static/chunks/84b6fde40fe98bbc.js +1 -0
  487. package/web/.next/static/chunks/8525e0fed6102ee4.js +1 -0
  488. package/web/.next/static/chunks/858a571e17cbe069.js +1 -0
  489. package/web/.next/static/chunks/8599414ffd4e15f5.js +1 -0
  490. package/web/.next/static/chunks/85da8b6aabbfc33c.js +1 -0
  491. package/web/.next/static/chunks/8866422156b74976.js +1 -0
  492. package/web/.next/static/chunks/8884218357d06e4c.js +1 -0
  493. package/web/.next/static/chunks/890e85bcb002030f.js +1 -0
  494. package/web/.next/static/chunks/8a6482e4289bd485.js +1 -0
  495. package/web/.next/static/chunks/8b34938e48e56746.js +1 -0
  496. package/web/.next/static/chunks/8bc16f2ee0ac282b.js +1 -0
  497. package/web/.next/static/chunks/8c05e7493172a40a.js +1 -0
  498. package/web/.next/static/chunks/8c16bb1814e36e5d.js +1 -0
  499. package/web/.next/static/chunks/8d9c6ac44d75942c.js +1 -0
  500. package/web/.next/static/chunks/8e2d9292729601b9.js +1 -0
  501. package/web/.next/static/chunks/8ed313638226f782.js +1 -0
  502. package/web/.next/static/chunks/{cfe4dc9904fcfddb.js → 8f4b01641dd98daa.js} +1 -1
  503. package/web/.next/static/chunks/8f98e5a8f241fe53.js +1 -0
  504. package/web/.next/static/chunks/8fc154c5edda0beb.js +1 -0
  505. package/web/.next/static/chunks/8fe2d5b09bf432b8.js +1 -0
  506. package/web/.next/static/chunks/8fe35ce71e4ad05b.js +1 -0
  507. package/web/.next/static/chunks/9067d4871d0c903f.js +1 -0
  508. package/web/.next/static/chunks/92d091aa318b78fb.js +1 -0
  509. package/web/.next/static/chunks/93af57e60f3a66ba.js +1 -0
  510. package/web/.next/static/chunks/93dd149a0766adcc.js +1 -0
  511. package/web/.next/static/chunks/957474fa08a22115.js +1 -0
  512. package/web/.next/static/chunks/95b925bb74686af7.js +1 -0
  513. package/web/.next/static/chunks/96158847987b2403.js +1 -0
  514. package/web/.next/static/chunks/975c124d34c8c6a8.js +1 -0
  515. package/web/.next/static/chunks/97bf3636621b58c7.js +1 -0
  516. package/web/.next/static/chunks/97e9c48e0abc9a50.js +1 -0
  517. package/web/.next/static/chunks/{fe70e73feb07bcfd.js → 98c68c9ea7a9e597.js} +1 -1
  518. package/web/.next/static/chunks/99052b059a0075f9.js +1 -0
  519. package/web/.next/static/chunks/99de3f6268e262a3.js +1 -0
  520. package/web/.next/static/chunks/99e12f466e3868ca.js +1 -0
  521. package/web/.next/static/chunks/9ba434534d00d922.js +1 -0
  522. package/web/.next/static/chunks/9d3cb38ab5fb405b.js +1 -0
  523. package/web/.next/static/chunks/9d5adb23e0187d9c.js +1 -0
  524. package/web/.next/static/chunks/9d8444f3f16a0998.js +1 -0
  525. package/web/.next/static/chunks/9dd2a16ac3fea1f1.js +1 -0
  526. package/web/.next/static/chunks/9e66ab37fd08bc66.js +1 -0
  527. package/web/.next/static/chunks/a09fa49dbf0f3636.js +1 -0
  528. package/web/.next/static/chunks/a2000986cd87a131.js +1 -0
  529. package/web/.next/static/chunks/a31fd9cfaa7a3158.js +1 -0
  530. package/web/.next/static/chunks/a38e1790e76ded6c.js +1 -0
  531. package/web/.next/static/chunks/a662e9340d282c55.js +1 -0
  532. package/web/.next/static/chunks/a77c0a719a2cc920.js +1 -0
  533. package/web/.next/static/chunks/a7f8cdb6749f9bdd.js +1 -0
  534. package/web/.next/static/chunks/a8a4fdbbcb3a5998.js +1 -0
  535. package/web/.next/static/chunks/a8f26eabe8187392.js +1 -0
  536. package/web/.next/static/chunks/a954d978d5e9781e.js +1 -0
  537. package/web/.next/static/chunks/a977e04dad1a77c7.js +1 -0
  538. package/web/.next/static/chunks/abd77592929f00d5.js +1 -0
  539. package/web/.next/static/chunks/ac53962c1a4765c7.js +1 -0
  540. package/web/.next/static/chunks/ade5ee5b3412436e.js +1 -0
  541. package/web/.next/static/chunks/ae84e9326b9e9200.js +2 -0
  542. package/web/.next/static/chunks/b0810838151379a2.js +1 -0
  543. package/web/.next/static/chunks/b1106224fbc2f015.js +1 -0
  544. package/web/.next/static/chunks/b13329875853d9a5.js +1 -0
  545. package/web/.next/static/chunks/b1460995e7a388b9.css +1 -0
  546. package/web/.next/static/chunks/b2b08e8fb70210c7.js +1 -0
  547. package/web/.next/static/chunks/b2f0e49369262eea.js +1 -0
  548. package/web/.next/static/chunks/b46abe587d05f58c.js +1 -0
  549. package/web/.next/static/chunks/b555154c60b9d90c.js +1 -0
  550. package/web/.next/static/chunks/b61982efe6f7e40e.js +1 -0
  551. package/web/.next/static/chunks/b6972d679174ce65.js +1 -0
  552. package/web/.next/static/chunks/b6ae34a5c2627d04.js +1 -0
  553. package/web/.next/static/chunks/bae57337da9a2d34.js +1 -0
  554. package/web/.next/static/chunks/bba2ccf4fd7849e1.js +1 -0
  555. package/web/.next/static/chunks/bc21e40585b8dcf4.js +1 -0
  556. package/web/.next/static/chunks/bd0cd7805b800eab.js +1 -0
  557. package/web/.next/static/chunks/bf13e9bc0390b21d.js +59 -0
  558. package/web/.next/static/chunks/bfec0c4899344791.js +1 -0
  559. package/web/.next/static/chunks/c1a40361928a6f90.js +1 -0
  560. package/web/.next/static/chunks/c1f34786f0d6908c.js +2 -0
  561. package/web/.next/static/chunks/c1fa94e9df162cb2.js +1 -0
  562. package/web/.next/static/chunks/c260a37325b283d3.js +1 -0
  563. package/web/.next/static/chunks/c3abb9ed0d089656.js +1 -0
  564. package/web/.next/static/chunks/c49a32e2d002dd91.js +1 -0
  565. package/web/.next/static/chunks/c564bdda2d517997.js +1 -0
  566. package/web/.next/static/chunks/c5c7a925445f4d05.js +1 -0
  567. package/web/.next/static/chunks/c7e793951b20a67f.js +1 -0
  568. package/web/.next/static/chunks/c86d4c471f194ad0.js +1 -0
  569. package/web/.next/static/chunks/c8d2cd372806e8b4.js +1 -0
  570. package/web/.next/static/chunks/c932b41ef3a40647.js +1 -0
  571. package/web/.next/static/chunks/c95abf23ce28b320.js +1 -0
  572. package/web/.next/static/chunks/c9d225b49db0980e.js +1 -0
  573. package/web/.next/static/chunks/c9e3afa09e76a4b2.js +1 -0
  574. package/web/.next/static/chunks/c9ef2470073e11cb.js +1 -0
  575. package/web/.next/static/chunks/ca201ae288dba155.js +1 -0
  576. package/web/.next/static/chunks/ca6196a863fc258d.js +1 -0
  577. package/web/.next/static/chunks/cac3a64966a112f7.js +1 -0
  578. package/web/.next/static/chunks/cb1e02415930189c.js +1 -0
  579. package/web/.next/static/chunks/cb412c095989545d.js +1 -0
  580. package/web/.next/static/chunks/cba332976e88a351.js +1 -0
  581. package/web/.next/static/chunks/cbf0c6470851a2f0.js +1 -0
  582. package/web/.next/static/chunks/cc60420e9bf53d96.js +1 -0
  583. package/web/.next/static/chunks/cc9054c5e6e1c706.js +1 -0
  584. package/web/.next/static/chunks/cd3bf2c5469b9646.js +1 -0
  585. package/web/.next/static/chunks/cdd7964a31b63d66.js +1 -0
  586. package/web/.next/static/chunks/cdd7f91e23b5ea49.js +1 -0
  587. package/web/.next/static/chunks/ce6a2fd4485c50c7.js +1 -0
  588. package/web/.next/static/chunks/d04de4be30ab78ca.js +3 -0
  589. package/web/.next/static/chunks/d0be65e7d38590b6.js +1 -0
  590. package/web/.next/static/chunks/d128b5501807e6f0.js +1 -0
  591. package/web/.next/static/chunks/d2124558f2b71c54.js +1 -0
  592. package/web/.next/static/chunks/d21a7ac5bcd538a3.js +1 -0
  593. package/web/.next/static/chunks/d35123b0dc2e2702.js +1 -0
  594. package/web/.next/static/chunks/d3ff3d218c7ad329.js +1 -0
  595. package/web/.next/static/chunks/d47def0da790a783.js +1 -0
  596. package/web/.next/static/chunks/d56169a6ceb14d27.js +1 -0
  597. package/web/.next/static/chunks/d5f1eede831e271a.js +1 -0
  598. package/web/.next/static/chunks/d62ba6ca7b41e179.js +1 -0
  599. package/web/.next/static/chunks/d6e74c394e816b3a.js +1 -0
  600. package/web/.next/static/chunks/d700d036b0dd9d28.js +1 -0
  601. package/web/.next/static/chunks/d7922dc82b3d8177.js +1 -0
  602. package/web/.next/static/chunks/d79a28dee31b3e43.js +1 -0
  603. package/web/.next/static/chunks/d88d6c7dd4fb3eb0.js +1 -0
  604. package/web/.next/static/chunks/d95b6e4c9a832b75.js +1 -0
  605. package/web/.next/static/chunks/dac044a4e6d8e3d4.js +1 -0
  606. package/web/.next/static/chunks/db873305cb622122.js +1 -0
  607. package/web/.next/static/chunks/dba11645cc1ddde8.js +1 -0
  608. package/web/.next/static/chunks/dbfb2921fe1fbe42.js +1 -0
  609. package/web/.next/static/chunks/dc75258a3914ab28.js +1 -0
  610. package/web/.next/static/chunks/ddbb7e6d2aa7940f.js +1 -0
  611. package/web/.next/static/chunks/ddcfb6c08594ccb7.js +1 -0
  612. package/web/.next/static/chunks/de82d83003608b30.js +1 -0
  613. package/web/.next/static/chunks/debe9e537fa1dd5c.js +1 -0
  614. package/web/.next/static/chunks/e0e2881173c1b4ea.js +1 -0
  615. package/web/.next/static/chunks/e16538f1db410909.js +1 -0
  616. package/web/.next/static/chunks/e1dcb6b88dd2cbfb.js +1 -0
  617. package/web/.next/static/chunks/e1ec2aeadbc3e43e.js +1 -0
  618. package/web/.next/static/chunks/e4967b0e84ca5a95.js +1 -0
  619. package/web/.next/static/chunks/e4c653eb9557c225.js +1 -0
  620. package/web/.next/static/chunks/e51516e366109a4d.js +1 -0
  621. package/web/.next/static/chunks/e759235b76258903.js +1 -0
  622. package/web/.next/static/chunks/e75c5376799db08c.js +1 -0
  623. package/web/.next/static/chunks/e8341f198526730e.js +1 -0
  624. package/web/.next/static/chunks/e8d014f4a5df5f4b.js +1 -0
  625. package/web/.next/static/chunks/eab21ff64827175b.js +1 -0
  626. package/web/.next/static/chunks/eaf5638419fe834d.js +1 -0
  627. package/web/.next/static/chunks/eb49387d22b57020.js +1 -0
  628. package/web/.next/static/chunks/ebb7e6387076d1f2.js +1 -0
  629. package/web/.next/static/chunks/ecf9bd4e51bc22b2.js +1 -0
  630. package/web/.next/static/chunks/ed5f5eaaba3fe86e.js +1 -0
  631. package/web/.next/static/chunks/ee3792dfe67952fc.js +1 -0
  632. package/web/.next/static/chunks/ee96f625d002bb6f.js +1 -0
  633. package/web/.next/static/chunks/f01c407dc77e32e6.js +1 -0
  634. package/web/.next/static/chunks/f05e324248b7eefa.js +1 -0
  635. package/web/.next/static/chunks/f116adff993e4e78.js +1 -0
  636. package/web/.next/static/chunks/f48a6189ac11bc51.js +1 -0
  637. package/web/.next/static/chunks/f57a12cf8a7fa100.js +1 -0
  638. package/web/.next/static/chunks/f6bf8273ddaca996.js +1 -0
  639. package/web/.next/static/chunks/f7313a12522304e8.js +1 -0
  640. package/web/.next/static/chunks/f7938fccffa01b89.js +1 -0
  641. package/web/.next/static/chunks/f7b685bb0cb377c2.js +1 -0
  642. package/web/.next/static/chunks/f7e499a9733db05b.js +1 -0
  643. package/web/.next/static/chunks/fa113f988d09306b.js +1 -0
  644. package/web/.next/static/chunks/fc1587c1e44444d4.js +1 -0
  645. package/web/.next/static/chunks/fcb420148a0cf38e.js +1 -0
  646. package/web/.next/static/chunks/fd6bbc9c53b0101e.js +1 -0
  647. package/web/.next/static/chunks/fef1f3b5114b8d2d.js +1 -0
  648. package/web/.next/static/chunks/{b1eadf24106c53ce.js → ff20a3511ab6687b.js} +1 -1
  649. package/web/.next/static/chunks/{turbopack-426d9bc2450816ba.js → turbopack-19fdba76a6171f31.js} +1 -1
  650. package/web/package.json +6 -1
  651. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js +0 -6
  652. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +0 -1
  653. package/web/.next/server/chunks/[root-of-the-server]__3b22a1eb._.js +0 -3
  654. package/web/.next/server/chunks/[root-of-the-server]__3b22a1eb._.js.map +0 -1
  655. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_d0119342._.js +0 -3
  656. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_d0119342._.js.map +0 -1
  657. package/web/.next/server/chunks/ssr/[root-of-the-server]__52485955._.js +0 -3
  658. package/web/.next/server/chunks/ssr/[root-of-the-server]__845a9d2a._.js.map +0 -1
  659. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +0 -4
  660. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +0 -1
  661. package/web/.next/server/chunks/ssr/[root-of-the-server]__d91fdd51._.js +0 -3
  662. package/web/.next/server/chunks/ssr/[root-of-the-server]__d91fdd51._.js.map +0 -1
  663. package/web/.next/server/chunks/ssr/_025a2fa0._.js +0 -4
  664. package/web/.next/server/chunks/ssr/_025a2fa0._.js.map +0 -1
  665. package/web/.next/server/chunks/ssr/_1bb131c4._.js +0 -3
  666. package/web/.next/server/chunks/ssr/_1bb131c4._.js.map +0 -1
  667. package/web/.next/server/chunks/ssr/_3a4c94e3._.js +0 -3
  668. package/web/.next/server/chunks/ssr/_3a4c94e3._.js.map +0 -1
  669. package/web/.next/server/chunks/ssr/_8afac0ca._.js +0 -3
  670. package/web/.next/server/chunks/ssr/_8afac0ca._.js.map +0 -1
  671. package/web/.next/server/chunks/ssr/_9ac70f88._.js +0 -5
  672. package/web/.next/server/chunks/ssr/_9ac70f88._.js.map +0 -1
  673. package/web/.next/server/chunks/ssr/_a68d7e1c._.js +0 -9
  674. package/web/.next/server/chunks/ssr/_a68d7e1c._.js.map +0 -1
  675. package/web/.next/server/chunks/ssr/_b5fc318a._.js +0 -3
  676. package/web/.next/server/chunks/ssr/_b5fc318a._.js.map +0 -1
  677. package/web/.next/server/chunks/ssr/_e6f2da4f._.js +0 -7
  678. package/web/.next/server/chunks/ssr/_e6f2da4f._.js.map +0 -1
  679. package/web/.next/static/chunks/07b853e29af1e5f2.js +0 -1
  680. package/web/.next/static/chunks/3bb35e0689e8b6b7.js +0 -1
  681. package/web/.next/static/chunks/52b56677c842e45f.js +0 -3
  682. package/web/.next/static/chunks/77ae4e64052864f9.js +0 -2
  683. package/web/.next/static/chunks/79474459eb409359.js +0 -1
  684. package/web/.next/static/chunks/84a181ff3270fd9f.js +0 -1
  685. package/web/.next/static/chunks/8c0f3126502dea0a.js +0 -11
  686. package/web/.next/static/chunks/8c3a1b4dd386fb21.js +0 -1
  687. package/web/.next/static/chunks/c750d771701b9b97.js +0 -1
  688. package/web/.next/static/chunks/d4d8f0a137bd2eb4.js +0 -4
  689. package/web/.next/static/chunks/db122a6247f69104.css +0 -1
  690. package/web/.next/static/chunks/ea320f314a210a70.js +0 -2
  691. package/web/.next/static/chunks/ed3a602003bcb31b.js +0 -1
  692. /package/web/.next/server/chunks/{ssr/[root-of-the-server]__52485955._.js.map → 744ca_web__next-internal_server_app_api_chat_stream_route_actions_ea265361.js.map} +0 -0
  693. /package/web/.next/server/chunks/{[root-of-the-server]__91d44424._.js.map → [root-of-the-server]__52c318d1._.js.map} +0 -0
  694. /package/web/.next/server/chunks/{[root-of-the-server]__db04ed44._.js.map → [root-of-the-server]__a5879003._.js.map} +0 -0
  695. /package/web/.next/static/{uT0QQwg2cbMo46NG69Bky → OiQDaxgdMUYHZ4ZGZWNWt}/_buildManifest.js +0 -0
  696. /package/web/.next/static/{uT0QQwg2cbMo46NG69Bky → OiQDaxgdMUYHZ4ZGZWNWt}/_clientMiddlewareManifest.json +0 -0
  697. /package/web/.next/static/{uT0QQwg2cbMo46NG69Bky → OiQDaxgdMUYHZ4ZGZWNWt}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-popover%401.1.15_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Brea_6845413866e39bfed03c608b19c71ed1/node_modules/%40radix-ui/react-popover/dist/index.mjs","../../../../../../../src/presentation/web/components/ui/popover.tsx","../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-switch%401.2.6_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Breact_82f001e3bde9922eaefd6f7b0722a9bb/node_modules/%40radix-ui/react-switch/dist/index.mjs","../../../../../../../src/presentation/web/components/ui/switch.tsx","../../../../../../../src/presentation/web/components/features/settings/AgentModelPicker/index.tsx"],"sourcesContent":["\"use client\";\n\n// src/popover.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { hideOthers } from \"aria-hidden\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { jsx } from \"react/jsx-runtime\";\nvar POPOVER_NAME = \"Popover\";\nvar [createPopoverContext, createPopoverScope] = createContextScope(POPOVER_NAME, [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [PopoverProvider, usePopoverContext] = createPopoverContext(POPOVER_NAME);\nvar Popover = (props) => {\n const {\n __scopePopover,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n modal = false\n } = props;\n const popperScope = usePopperScope(__scopePopover);\n const triggerRef = React.useRef(null);\n const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: POPOVER_NAME\n });\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n PopoverProvider,\n {\n scope: __scopePopover,\n contentId: useId(),\n triggerRef,\n open,\n onOpenChange: setOpen,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n hasCustomAnchor,\n onCustomAnchorAdd: React.useCallback(() => setHasCustomAnchor(true), []),\n onCustomAnchorRemove: React.useCallback(() => setHasCustomAnchor(false), []),\n modal,\n children\n }\n ) });\n};\nPopover.displayName = POPOVER_NAME;\nvar ANCHOR_NAME = \"PopoverAnchor\";\nvar PopoverAnchor = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopover, ...anchorProps } = props;\n const context = usePopoverContext(ANCHOR_NAME, __scopePopover);\n const popperScope = usePopperScope(__scopePopover);\n const { onCustomAnchorAdd, onCustomAnchorRemove } = context;\n React.useEffect(() => {\n onCustomAnchorAdd();\n return () => onCustomAnchorRemove();\n }, [onCustomAnchorAdd, onCustomAnchorRemove]);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { ...popperScope, ...anchorProps, ref: forwardedRef });\n }\n);\nPopoverAnchor.displayName = ANCHOR_NAME;\nvar TRIGGER_NAME = \"PopoverTrigger\";\nvar PopoverTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopover, ...triggerProps } = props;\n const context = usePopoverContext(TRIGGER_NAME, __scopePopover);\n const popperScope = usePopperScope(__scopePopover);\n const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);\n const trigger = /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": context.open,\n \"aria-controls\": context.contentId,\n \"data-state\": getState(context.open),\n ...triggerProps,\n ref: composedTriggerRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n return context.hasCustomAnchor ? trigger : /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: trigger });\n }\n);\nPopoverTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"PopoverPortal\";\nvar [PortalProvider, usePortalContext] = createPopoverContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar PopoverPortal = (props) => {\n const { __scopePopover, forceMount, children, container } = props;\n const context = usePopoverContext(PORTAL_NAME, __scopePopover);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopePopover, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nPopoverPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"PopoverContent\";\nvar PopoverContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopePopover);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx(PopoverContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(PopoverContentNonModal, { ...contentProps, ref: forwardedRef }) });\n }\n);\nPopoverContent.displayName = CONTENT_NAME;\nvar Slot = createSlot(\"PopoverContent.RemoveScroll\");\nvar PopoverContentModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef);\n const isRightClickOutsideRef = React.useRef(false);\n React.useEffect(() => {\n const content = contentRef.current;\n if (content) return hideOthers(content);\n }, []);\n return /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, children: /* @__PURE__ */ jsx(\n PopoverContentImpl,\n {\n ...props,\n ref: composedRefs,\n trapFocus: context.open,\n disableOutsidePointerEvents: true,\n onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n if (!isRightClickOutsideRef.current) context.triggerRef.current?.focus();\n }),\n onPointerDownOutside: composeEventHandlers(\n props.onPointerDownOutside,\n (event) => {\n const originalEvent = event.detail.originalEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n isRightClickOutsideRef.current = isRightClick;\n },\n { checkForDefaultPrevented: false }\n ),\n onFocusOutside: composeEventHandlers(\n props.onFocusOutside,\n (event) => event.preventDefault(),\n { checkForDefaultPrevented: false }\n )\n }\n ) });\n }\n);\nvar PopoverContentNonModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n const hasInteractedOutsideRef = React.useRef(false);\n const hasPointerDownOutsideRef = React.useRef(false);\n return /* @__PURE__ */ jsx(\n PopoverContentImpl,\n {\n ...props,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n onCloseAutoFocus: (event) => {\n props.onCloseAutoFocus?.(event);\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n event.preventDefault();\n }\n hasInteractedOutsideRef.current = false;\n hasPointerDownOutsideRef.current = false;\n },\n onInteractOutside: (event) => {\n props.onInteractOutside?.(event);\n if (!event.defaultPrevented) {\n hasInteractedOutsideRef.current = true;\n if (event.detail.originalEvent.type === \"pointerdown\") {\n hasPointerDownOutsideRef.current = true;\n }\n }\n const target = event.target;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n if (event.detail.originalEvent.type === \"focusin\" && hasPointerDownOutsideRef.current) {\n event.preventDefault();\n }\n }\n }\n );\n }\n);\nvar PopoverContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopePopover,\n trapFocus,\n onOpenAutoFocus,\n onCloseAutoFocus,\n disableOutsidePointerEvents,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n ...contentProps\n } = props;\n const context = usePopoverContext(CONTENT_NAME, __scopePopover);\n const popperScope = usePopperScope(__scopePopover);\n useFocusGuards();\n return /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n loop: true,\n trapped: trapFocus,\n onMountAutoFocus: onOpenAutoFocus,\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents,\n onInteractOutside,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onDismiss: () => context.onOpenChange(false),\n children: /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n \"data-state\": getState(context.open),\n role: \"dialog\",\n id: context.contentId,\n ...popperScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...contentProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-popover-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-popover-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-popover-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-popover-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-popover-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n )\n }\n )\n }\n );\n }\n);\nvar CLOSE_NAME = \"PopoverClose\";\nvar PopoverClose = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopover, ...closeProps } = props;\n const context = usePopoverContext(CLOSE_NAME, __scopePopover);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n ...closeProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, () => context.onOpenChange(false))\n }\n );\n }\n);\nPopoverClose.displayName = CLOSE_NAME;\nvar ARROW_NAME = \"PopoverArrow\";\nvar PopoverArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopover, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopePopover);\n return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nPopoverArrow.displayName = ARROW_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root2 = Popover;\nvar Anchor2 = PopoverAnchor;\nvar Trigger = PopoverTrigger;\nvar Portal = PopoverPortal;\nvar Content2 = PopoverContent;\nvar Close = PopoverClose;\nvar Arrow2 = PopoverArrow;\nexport {\n Anchor2 as Anchor,\n Arrow2 as Arrow,\n Close,\n Content2 as Content,\n Popover,\n PopoverAnchor,\n PopoverArrow,\n PopoverClose,\n PopoverContent,\n PopoverPortal,\n PopoverTrigger,\n Portal,\n Root2 as Root,\n Trigger,\n createPopoverScope\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as React from 'react';\nimport { Popover as PopoverPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nconst Popover = PopoverPrimitive.Root;\n\nconst PopoverTrigger = PopoverPrimitive.Trigger;\n\nconst PopoverAnchor = PopoverPrimitive.Anchor;\n\nconst PopoverContent = React.forwardRef<\n React.ComponentRef<typeof PopoverPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 shadow-md outline-none',\n className\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n));\nPopoverContent.displayName = PopoverPrimitive.Content.displayName;\n\nexport { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };\n","\"use client\";\n\n// src/switch.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar SWITCH_NAME = \"Switch\";\nvar [createSwitchContext, createSwitchScope] = createContextScope(SWITCH_NAME);\nvar [SwitchProvider, useSwitchContext] = createSwitchContext(SWITCH_NAME);\nvar Switch = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSwitch,\n name,\n checked: checkedProp,\n defaultChecked,\n required,\n disabled,\n value = \"on\",\n onCheckedChange,\n form,\n ...switchProps\n } = props;\n const [button, setButton] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = button ? form || !!button.closest(\"form\") : true;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: SWITCH_NAME\n });\n return /* @__PURE__ */ jsxs(SwitchProvider, { scope: __scopeSwitch, checked, disabled, children: [\n /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"switch\",\n \"aria-checked\": checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...switchProps,\n ref: composedRefs,\n onClick: composeEventHandlers(props.onClick, (event) => {\n setChecked((prevChecked) => !prevChecked);\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n SwitchBubbleInput,\n {\n control: button,\n bubbles: !hasConsumerStoppedPropagationRef.current,\n name,\n value,\n checked,\n required,\n disabled,\n form,\n style: { transform: \"translateX(-100%)\" }\n }\n )\n ] });\n }\n);\nSwitch.displayName = SWITCH_NAME;\nvar THUMB_NAME = \"SwitchThumb\";\nvar SwitchThumb = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSwitch, ...thumbProps } = props;\n const context = useSwitchContext(THUMB_NAME, __scopeSwitch);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...thumbProps,\n ref: forwardedRef\n }\n );\n }\n);\nSwitchThumb.displayName = THUMB_NAME;\nvar BUBBLE_INPUT_NAME = \"SwitchBubbleInput\";\nvar SwitchBubbleInput = React.forwardRef(\n ({\n __scopeSwitch,\n control,\n checked,\n bubbles = true,\n ...props\n }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(ref, forwardedRef);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = ref.current;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n }\n }, [prevChecked, checked, bubbles]);\n return /* @__PURE__ */ jsx(\n \"input\",\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: checked,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0\n }\n }\n );\n }\n);\nSwitchBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\nvar Root = Switch;\nvar Thumb = SwitchThumb;\nexport {\n Root,\n Switch,\n SwitchThumb,\n Thumb,\n createSwitchScope\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as React from 'react';\nimport { Switch as SwitchPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nfunction Switch({\n className,\n size = 'default',\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n size?: 'sm' | 'default';\n}) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n data-size={size}\n className={cn(\n 'peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6',\n className\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n 'bg-background dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0'\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\nexport { Switch };\n","'use client';\n\nimport * as React from 'react';\nimport { Check, ChevronLeft, ChevronRight } from 'lucide-react';\nimport { getAllAgentModels } from '@/app/actions/get-all-agent-models';\nimport type { AgentModelGroup } from '@/app/actions/get-all-agent-models';\nimport { updateAgentAndModel } from '@/app/actions/update-agent-and-model';\nimport { getAgentTypeIcon } from '@/components/common/feature-node/agent-type-icons';\nimport { getModelMeta } from '@/lib/model-metadata';\nimport { Button } from '@/components/ui/button';\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover';\nimport { cn } from '@/lib/utils';\n\nexport interface AgentModelPickerProps {\n initialAgentType: string;\n initialModel: string;\n onAgentModelChange?: (agentType: string, model: string) => void;\n disabled?: boolean;\n className?: string;\n /** 'settings' persists to DB; 'override' only calls onAgentModelChange */\n mode: 'settings' | 'override';\n}\n\nexport function AgentModelPicker({\n initialAgentType,\n initialModel,\n onAgentModelChange,\n disabled,\n className,\n mode,\n}: AgentModelPickerProps) {\n const [open, setOpen] = React.useState(false);\n const [groups, setGroups] = React.useState<AgentModelGroup[]>([]);\n const [loading, setLoading] = React.useState(true);\n const [agentType, setAgentType] = React.useState(initialAgentType);\n const [model, setModel] = React.useState(initialModel);\n const [error, setError] = React.useState<string | null>(null);\n\n // 0 = agent list visible, 1 = model list visible\n const [level, setLevel] = React.useState(0);\n // Which agent's models to show (kept separate from level for animation)\n const [drillAgent, setDrillAgent] = React.useState<string | null>(null);\n\n React.useEffect(() => {\n getAllAgentModels()\n .then(setGroups)\n .finally(() => setLoading(false));\n }, []);\n\n // Reset drill-down when popover closes\n React.useEffect(() => {\n if (!open) {\n const t = setTimeout(() => {\n setLevel(0);\n setDrillAgent(null);\n }, 150);\n return () => clearTimeout(t);\n }\n }, [open]);\n\n const drillInto = (agent: string) => {\n setDrillAgent(agent);\n requestAnimationFrame(() => {\n requestAnimationFrame(() => setLevel(1));\n });\n };\n\n const drillBack = () => {\n setLevel(0);\n setTimeout(() => setDrillAgent(null), 220);\n };\n\n const handleSelect = async (newAgentType: string, newModel: string) => {\n setOpen(false);\n\n if (newAgentType === agentType && newModel === model) return;\n\n if (mode === 'override') {\n setAgentType(newAgentType);\n setModel(newModel);\n onAgentModelChange?.(newAgentType, newModel);\n return;\n }\n\n // mode === 'settings' — optimistically update, then persist\n const prevAgent = agentType;\n const prevModel = model;\n setAgentType(newAgentType);\n setModel(newModel);\n onAgentModelChange?.(newAgentType, newModel);\n\n setError(null);\n try {\n const result = await updateAgentAndModel(newAgentType, newModel || null);\n if (!result.ok) {\n // Revert on failure\n setAgentType(prevAgent);\n setModel(prevModel);\n onAgentModelChange?.(prevAgent, prevModel);\n setError(result.error ?? 'Failed to save');\n }\n } catch {\n setAgentType(prevAgent);\n setModel(prevModel);\n onAgentModelChange?.(prevAgent, prevModel);\n setError('Failed to save');\n }\n };\n\n const isDisabled = (disabled ?? false) || loading;\n\n const AgentIcon = getAgentTypeIcon(agentType);\n const agentLabel = groups.find((g) => g.agentType === agentType)?.label ?? agentType;\n const modelName = model ? getModelMeta(model).displayName || model : null;\n\n const activeGroup = drillAgent ? groups.find((g) => g.agentType === drillAgent) : null;\n\n return (\n <div className={cn('flex flex-col gap-1', className)}>\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n variant=\"outline\"\n role=\"combobox\"\n aria-expanded={open}\n disabled={isDisabled}\n className=\"w-auto cursor-pointer justify-start font-normal hover:border-violet-300 hover:bg-violet-50/50 dark:hover:border-violet-700 dark:hover:bg-violet-950/30\"\n >\n <span className=\"flex items-center gap-2 truncate\">\n <AgentIcon className=\"h-4 w-4 shrink-0\" />\n {loading ? (\n 'Loading…'\n ) : (\n <span className=\"flex items-center gap-1\">\n <span className=\"text-muted-foreground text-xs\">{agentLabel}</span>\n {modelName ? (\n <>\n <span className=\"text-muted-foreground/50 text-xs\">·</span>\n <span className=\"text-xs font-medium\">{modelName}</span>\n </>\n ) : null}\n </span>\n )}\n </span>\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className=\"w-(--radix-popover-trigger-width) overflow-hidden p-0\"\n align=\"start\"\n >\n {/* Sliding container — both panels side by side, translateX controlled by level */}\n <div\n className=\"flex transition-transform duration-200 ease-in-out\"\n style={{ transform: `translateX(${level === 1 ? '-50%' : '0%'})`, width: '200%' }}\n >\n {/* ── Level 1: Agent list ── */}\n <div className=\"w-1/2 shrink-0\">\n <div className=\"text-muted-foreground border-b px-3 py-2 text-xs font-medium\">\n Select agent\n </div>\n {groups.map((group) => {\n const GroupIcon = getAgentTypeIcon(group.agentType);\n const isActive = agentType === group.agentType;\n const hasModels = group.models.length > 0;\n\n return (\n <button\n key={group.agentType}\n type=\"button\"\n className={cn(\n 'flex w-full cursor-pointer items-center gap-2.5 px-3 py-2 text-xs transition-colors',\n 'hover:bg-accent hover:text-accent-foreground',\n isActive && 'bg-accent/50'\n )}\n onClick={() => {\n if (hasModels) {\n drillInto(group.agentType);\n } else {\n handleSelect(group.agentType, '');\n }\n }}\n >\n <GroupIcon className=\"h-4 w-4 shrink-0\" />\n <span className=\"flex-1 text-left\">{group.label}</span>\n {isActive && !hasModels ? (\n <Check className=\"text-primary h-3.5 w-3.5 shrink-0\" />\n ) : null}\n {hasModels ? (\n <ChevronRight className=\"text-muted-foreground h-3.5 w-3.5 shrink-0\" />\n ) : null}\n </button>\n );\n })}\n </div>\n\n {/* ── Level 2: Model list for selected agent ── */}\n <div className=\"w-1/2 shrink-0\">\n {activeGroup ? (\n <>\n {/* Back header */}\n <button\n type=\"button\"\n className=\"text-muted-foreground hover:text-foreground flex w-full cursor-pointer items-center gap-1.5 border-b px-3 py-2 text-xs font-medium transition-colors\"\n onClick={drillBack}\n >\n <ChevronLeft className=\"h-3.5 w-3.5\" />\n {activeGroup.label}\n </button>\n\n {/* Model items */}\n {activeGroup.models.map((m) => {\n const isSelected = agentType === activeGroup.agentType && model === m.id;\n return (\n <button\n key={m.id}\n type=\"button\"\n className={cn(\n 'flex w-full cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors',\n 'hover:bg-accent hover:text-accent-foreground',\n isSelected && 'bg-accent/50'\n )}\n onClick={() => handleSelect(activeGroup.agentType, m.id)}\n >\n <div className=\"flex min-w-0 flex-1 flex-col\">\n <span className=\"text-xs font-medium\">{m.displayName}</span>\n <span className=\"text-muted-foreground text-xs\">{m.description}</span>\n </div>\n {isSelected ? (\n <Check className=\"text-primary h-3.5 w-3.5 shrink-0\" />\n ) : null}\n </button>\n );\n })}\n </>\n ) : null}\n </div>\n </div>\n </PopoverContent>\n </Popover>\n {Boolean(error) && <p className=\"text-destructive text-sm\">{error}</p>}\n </div>\n );\n}\n"],"names":[],"mappings":"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","ignoreList":[0,2]}
1
+ {"version":3,"sources":["../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-popover%401.1.15_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Brea_6845413866e39bfed03c608b19c71ed1/node_modules/%40radix-ui/react-popover/dist/index.mjs","../../../../../../../src/presentation/web/components/ui/popover.tsx","../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-switch%401.2.6_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Breact_82f001e3bde9922eaefd6f7b0722a9bb/node_modules/%40radix-ui/react-switch/dist/index.mjs","../../../../../../../src/presentation/web/components/ui/switch.tsx","../../../../../../../src/presentation/web/components/features/settings/AgentModelPicker/index.tsx"],"sourcesContent":["\"use client\";\n\n// src/popover.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { hideOthers } from \"aria-hidden\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { jsx } from \"react/jsx-runtime\";\nvar POPOVER_NAME = \"Popover\";\nvar [createPopoverContext, createPopoverScope] = createContextScope(POPOVER_NAME, [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [PopoverProvider, usePopoverContext] = createPopoverContext(POPOVER_NAME);\nvar Popover = (props) => {\n const {\n __scopePopover,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n modal = false\n } = props;\n const popperScope = usePopperScope(__scopePopover);\n const triggerRef = React.useRef(null);\n const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: POPOVER_NAME\n });\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n PopoverProvider,\n {\n scope: __scopePopover,\n contentId: useId(),\n triggerRef,\n open,\n onOpenChange: setOpen,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n hasCustomAnchor,\n onCustomAnchorAdd: React.useCallback(() => setHasCustomAnchor(true), []),\n onCustomAnchorRemove: React.useCallback(() => setHasCustomAnchor(false), []),\n modal,\n children\n }\n ) });\n};\nPopover.displayName = POPOVER_NAME;\nvar ANCHOR_NAME = \"PopoverAnchor\";\nvar PopoverAnchor = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopover, ...anchorProps } = props;\n const context = usePopoverContext(ANCHOR_NAME, __scopePopover);\n const popperScope = usePopperScope(__scopePopover);\n const { onCustomAnchorAdd, onCustomAnchorRemove } = context;\n React.useEffect(() => {\n onCustomAnchorAdd();\n return () => onCustomAnchorRemove();\n }, [onCustomAnchorAdd, onCustomAnchorRemove]);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { ...popperScope, ...anchorProps, ref: forwardedRef });\n }\n);\nPopoverAnchor.displayName = ANCHOR_NAME;\nvar TRIGGER_NAME = \"PopoverTrigger\";\nvar PopoverTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopover, ...triggerProps } = props;\n const context = usePopoverContext(TRIGGER_NAME, __scopePopover);\n const popperScope = usePopperScope(__scopePopover);\n const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);\n const trigger = /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": context.open,\n \"aria-controls\": context.contentId,\n \"data-state\": getState(context.open),\n ...triggerProps,\n ref: composedTriggerRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n return context.hasCustomAnchor ? trigger : /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: trigger });\n }\n);\nPopoverTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"PopoverPortal\";\nvar [PortalProvider, usePortalContext] = createPopoverContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar PopoverPortal = (props) => {\n const { __scopePopover, forceMount, children, container } = props;\n const context = usePopoverContext(PORTAL_NAME, __scopePopover);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopePopover, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nPopoverPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"PopoverContent\";\nvar PopoverContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopePopover);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx(PopoverContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(PopoverContentNonModal, { ...contentProps, ref: forwardedRef }) });\n }\n);\nPopoverContent.displayName = CONTENT_NAME;\nvar Slot = createSlot(\"PopoverContent.RemoveScroll\");\nvar PopoverContentModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef);\n const isRightClickOutsideRef = React.useRef(false);\n React.useEffect(() => {\n const content = contentRef.current;\n if (content) return hideOthers(content);\n }, []);\n return /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, children: /* @__PURE__ */ jsx(\n PopoverContentImpl,\n {\n ...props,\n ref: composedRefs,\n trapFocus: context.open,\n disableOutsidePointerEvents: true,\n onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n if (!isRightClickOutsideRef.current) context.triggerRef.current?.focus();\n }),\n onPointerDownOutside: composeEventHandlers(\n props.onPointerDownOutside,\n (event) => {\n const originalEvent = event.detail.originalEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n isRightClickOutsideRef.current = isRightClick;\n },\n { checkForDefaultPrevented: false }\n ),\n onFocusOutside: composeEventHandlers(\n props.onFocusOutside,\n (event) => event.preventDefault(),\n { checkForDefaultPrevented: false }\n )\n }\n ) });\n }\n);\nvar PopoverContentNonModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n const hasInteractedOutsideRef = React.useRef(false);\n const hasPointerDownOutsideRef = React.useRef(false);\n return /* @__PURE__ */ jsx(\n PopoverContentImpl,\n {\n ...props,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n onCloseAutoFocus: (event) => {\n props.onCloseAutoFocus?.(event);\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n event.preventDefault();\n }\n hasInteractedOutsideRef.current = false;\n hasPointerDownOutsideRef.current = false;\n },\n onInteractOutside: (event) => {\n props.onInteractOutside?.(event);\n if (!event.defaultPrevented) {\n hasInteractedOutsideRef.current = true;\n if (event.detail.originalEvent.type === \"pointerdown\") {\n hasPointerDownOutsideRef.current = true;\n }\n }\n const target = event.target;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n if (event.detail.originalEvent.type === \"focusin\" && hasPointerDownOutsideRef.current) {\n event.preventDefault();\n }\n }\n }\n );\n }\n);\nvar PopoverContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopePopover,\n trapFocus,\n onOpenAutoFocus,\n onCloseAutoFocus,\n disableOutsidePointerEvents,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n ...contentProps\n } = props;\n const context = usePopoverContext(CONTENT_NAME, __scopePopover);\n const popperScope = usePopperScope(__scopePopover);\n useFocusGuards();\n return /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n loop: true,\n trapped: trapFocus,\n onMountAutoFocus: onOpenAutoFocus,\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents,\n onInteractOutside,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onDismiss: () => context.onOpenChange(false),\n children: /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n \"data-state\": getState(context.open),\n role: \"dialog\",\n id: context.contentId,\n ...popperScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...contentProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-popover-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-popover-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-popover-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-popover-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-popover-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n )\n }\n )\n }\n );\n }\n);\nvar CLOSE_NAME = \"PopoverClose\";\nvar PopoverClose = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopover, ...closeProps } = props;\n const context = usePopoverContext(CLOSE_NAME, __scopePopover);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n ...closeProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, () => context.onOpenChange(false))\n }\n );\n }\n);\nPopoverClose.displayName = CLOSE_NAME;\nvar ARROW_NAME = \"PopoverArrow\";\nvar PopoverArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopover, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopePopover);\n return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nPopoverArrow.displayName = ARROW_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root2 = Popover;\nvar Anchor2 = PopoverAnchor;\nvar Trigger = PopoverTrigger;\nvar Portal = PopoverPortal;\nvar Content2 = PopoverContent;\nvar Close = PopoverClose;\nvar Arrow2 = PopoverArrow;\nexport {\n Anchor2 as Anchor,\n Arrow2 as Arrow,\n Close,\n Content2 as Content,\n Popover,\n PopoverAnchor,\n PopoverArrow,\n PopoverClose,\n PopoverContent,\n PopoverPortal,\n PopoverTrigger,\n Portal,\n Root2 as Root,\n Trigger,\n createPopoverScope\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as React from 'react';\nimport { Popover as PopoverPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nconst Popover = PopoverPrimitive.Root;\n\nconst PopoverTrigger = PopoverPrimitive.Trigger;\n\nconst PopoverAnchor = PopoverPrimitive.Anchor;\n\nconst PopoverContent = React.forwardRef<\n React.ComponentRef<typeof PopoverPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 shadow-md outline-none',\n className\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n));\nPopoverContent.displayName = PopoverPrimitive.Content.displayName;\n\nexport { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };\n","\"use client\";\n\n// src/switch.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar SWITCH_NAME = \"Switch\";\nvar [createSwitchContext, createSwitchScope] = createContextScope(SWITCH_NAME);\nvar [SwitchProvider, useSwitchContext] = createSwitchContext(SWITCH_NAME);\nvar Switch = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSwitch,\n name,\n checked: checkedProp,\n defaultChecked,\n required,\n disabled,\n value = \"on\",\n onCheckedChange,\n form,\n ...switchProps\n } = props;\n const [button, setButton] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = button ? form || !!button.closest(\"form\") : true;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: SWITCH_NAME\n });\n return /* @__PURE__ */ jsxs(SwitchProvider, { scope: __scopeSwitch, checked, disabled, children: [\n /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"switch\",\n \"aria-checked\": checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...switchProps,\n ref: composedRefs,\n onClick: composeEventHandlers(props.onClick, (event) => {\n setChecked((prevChecked) => !prevChecked);\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n SwitchBubbleInput,\n {\n control: button,\n bubbles: !hasConsumerStoppedPropagationRef.current,\n name,\n value,\n checked,\n required,\n disabled,\n form,\n style: { transform: \"translateX(-100%)\" }\n }\n )\n ] });\n }\n);\nSwitch.displayName = SWITCH_NAME;\nvar THUMB_NAME = \"SwitchThumb\";\nvar SwitchThumb = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSwitch, ...thumbProps } = props;\n const context = useSwitchContext(THUMB_NAME, __scopeSwitch);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...thumbProps,\n ref: forwardedRef\n }\n );\n }\n);\nSwitchThumb.displayName = THUMB_NAME;\nvar BUBBLE_INPUT_NAME = \"SwitchBubbleInput\";\nvar SwitchBubbleInput = React.forwardRef(\n ({\n __scopeSwitch,\n control,\n checked,\n bubbles = true,\n ...props\n }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(ref, forwardedRef);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = ref.current;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n }\n }, [prevChecked, checked, bubbles]);\n return /* @__PURE__ */ jsx(\n \"input\",\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: checked,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0\n }\n }\n );\n }\n);\nSwitchBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\nvar Root = Switch;\nvar Thumb = SwitchThumb;\nexport {\n Root,\n Switch,\n SwitchThumb,\n Thumb,\n createSwitchScope\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as React from 'react';\nimport { Switch as SwitchPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nfunction Switch({\n className,\n size = 'default',\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n size?: 'sm' | 'default';\n}) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n data-size={size}\n className={cn(\n 'peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6',\n className\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n 'bg-background dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0'\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\nexport { Switch };\n","'use client';\n\nimport * as React from 'react';\nimport { Check, ChevronLeft, ChevronRight } from 'lucide-react';\nimport { getAllAgentModels } from '@/app/actions/get-all-agent-models';\nimport type { AgentModelGroup } from '@/app/actions/get-all-agent-models';\nimport { updateAgentAndModel } from '@/app/actions/update-agent-and-model';\nimport { getAgentTypeIcon } from '@/components/common/feature-node/agent-type-icons';\nimport { getModelMeta } from '@/lib/model-metadata';\nimport { Button } from '@/components/ui/button';\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover';\nimport { cn } from '@/lib/utils';\n\nexport interface AgentModelPickerProps {\n initialAgentType: string;\n initialModel: string;\n onAgentModelChange?: (agentType: string, model: string) => void;\n disabled?: boolean;\n className?: string;\n /** 'settings' persists to DB; 'override' only calls onAgentModelChange */\n mode: 'settings' | 'override';\n}\n\nexport function AgentModelPicker({\n initialAgentType,\n initialModel,\n onAgentModelChange,\n disabled,\n className,\n mode,\n}: AgentModelPickerProps) {\n const [open, setOpen] = React.useState(false);\n const [groups, setGroups] = React.useState<AgentModelGroup[]>([]);\n const [loading, setLoading] = React.useState(true);\n const [agentType, setAgentType] = React.useState(initialAgentType);\n const [model, setModel] = React.useState(initialModel);\n const [error, setError] = React.useState<string | null>(null);\n\n // 0 = agent list visible, 1 = model list visible\n const [level, setLevel] = React.useState(0);\n // Which agent's models to show (kept separate from level for animation)\n const [drillAgent, setDrillAgent] = React.useState<string | null>(null);\n\n React.useEffect(() => {\n getAllAgentModels()\n .then(setGroups)\n .finally(() => setLoading(false));\n }, []);\n\n // Reset drill-down when popover closes\n React.useEffect(() => {\n if (!open) {\n const t = setTimeout(() => {\n setLevel(0);\n setDrillAgent(null);\n }, 150);\n return () => clearTimeout(t);\n }\n }, [open]);\n\n const drillInto = (agent: string) => {\n setDrillAgent(agent);\n requestAnimationFrame(() => {\n requestAnimationFrame(() => setLevel(1));\n });\n };\n\n const drillBack = () => {\n setLevel(0);\n setTimeout(() => setDrillAgent(null), 220);\n };\n\n const handleSelect = async (newAgentType: string, newModel: string) => {\n setOpen(false);\n\n if (newAgentType === agentType && newModel === model) return;\n\n if (mode === 'override') {\n setAgentType(newAgentType);\n setModel(newModel);\n onAgentModelChange?.(newAgentType, newModel);\n return;\n }\n\n // mode === 'settings' — optimistically update, then persist\n const prevAgent = agentType;\n const prevModel = model;\n setAgentType(newAgentType);\n setModel(newModel);\n onAgentModelChange?.(newAgentType, newModel);\n\n setError(null);\n try {\n const result = await updateAgentAndModel(newAgentType, newModel || null);\n if (!result.ok) {\n // Revert on failure\n setAgentType(prevAgent);\n setModel(prevModel);\n onAgentModelChange?.(prevAgent, prevModel);\n setError(result.error ?? 'Failed to save');\n }\n } catch {\n setAgentType(prevAgent);\n setModel(prevModel);\n onAgentModelChange?.(prevAgent, prevModel);\n setError('Failed to save');\n }\n };\n\n const isDisabled = (disabled ?? false) || loading;\n\n const AgentIcon = getAgentTypeIcon(agentType);\n const agentLabel = groups.find((g) => g.agentType === agentType)?.label ?? agentType;\n const modelName = model ? getModelMeta(model).displayName || model : null;\n\n const activeGroup = drillAgent ? groups.find((g) => g.agentType === drillAgent) : null;\n\n return (\n <div className={cn('flex flex-col gap-1', className)}>\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n variant=\"outline\"\n role=\"combobox\"\n aria-expanded={open}\n disabled={isDisabled}\n className=\"w-auto cursor-pointer justify-start font-normal hover:border-violet-300 hover:bg-violet-50/50 dark:hover:border-violet-700 dark:hover:bg-violet-950/30\"\n >\n <span className=\"flex items-center gap-2 truncate\">\n <AgentIcon className=\"h-4 w-4 shrink-0\" />\n {loading ? (\n 'Loading…'\n ) : (\n <span className=\"flex items-center gap-1\">\n <span className=\"text-muted-foreground text-xs\">{agentLabel}</span>\n {modelName ? (\n <>\n <span className=\"text-muted-foreground/50 text-xs\">·</span>\n <span className=\"text-xs font-medium\">{modelName}</span>\n </>\n ) : null}\n </span>\n )}\n </span>\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className=\"w-(--radix-popover-trigger-width) overflow-hidden p-0\"\n align=\"start\"\n >\n {/* Sliding container — both panels side by side, translateX controlled by level */}\n <div\n className=\"flex transition-transform duration-200 ease-in-out\"\n style={{ transform: `translateX(${level === 1 ? '-50%' : '0%'})`, width: '200%' }}\n >\n {/* ── Level 1: Agent list ── */}\n <div className=\"w-1/2 shrink-0\">\n <div className=\"text-muted-foreground border-b px-3 py-2 text-xs font-medium\">\n Select agent\n </div>\n {groups.map((group) => {\n const GroupIcon = getAgentTypeIcon(group.agentType);\n const isActive = agentType === group.agentType;\n const hasModels = group.models.length > 0;\n\n return (\n <button\n key={group.agentType}\n type=\"button\"\n className={cn(\n 'flex w-full cursor-pointer items-center gap-2.5 px-3 py-2 text-xs transition-colors',\n 'hover:bg-accent hover:text-accent-foreground',\n isActive && 'bg-accent/50'\n )}\n onClick={() => {\n if (hasModels) {\n drillInto(group.agentType);\n } else {\n handleSelect(group.agentType, '');\n }\n }}\n >\n <GroupIcon className=\"h-4 w-4 shrink-0\" />\n <span className=\"flex-1 text-left\">{group.label}</span>\n {isActive && !hasModels ? (\n <Check className=\"text-primary h-3.5 w-3.5 shrink-0\" />\n ) : null}\n {hasModels ? (\n <ChevronRight className=\"text-muted-foreground h-3.5 w-3.5 shrink-0\" />\n ) : null}\n </button>\n );\n })}\n </div>\n\n {/* ── Level 2: Model list for selected agent ── */}\n <div className=\"w-1/2 shrink-0\">\n {activeGroup ? (\n <>\n {/* Back header */}\n <button\n type=\"button\"\n className=\"text-muted-foreground hover:text-foreground flex w-full cursor-pointer items-center gap-1.5 border-b px-3 py-2 text-xs font-medium transition-colors\"\n onClick={drillBack}\n >\n <ChevronLeft className=\"h-3.5 w-3.5\" />\n {activeGroup.label}\n </button>\n\n {/* Model items */}\n {activeGroup.models.map((m) => {\n const isSelected = agentType === activeGroup.agentType && model === m.id;\n return (\n <button\n key={m.id}\n type=\"button\"\n className={cn(\n 'flex w-full cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors',\n 'hover:bg-accent hover:text-accent-foreground',\n isSelected && 'bg-accent/50'\n )}\n onClick={() => handleSelect(activeGroup.agentType, m.id)}\n >\n <div className=\"flex min-w-0 flex-1 flex-col\">\n <span className=\"text-xs font-medium\">{m.displayName}</span>\n <span className=\"text-muted-foreground text-xs\">{m.description}</span>\n </div>\n {isSelected ? (\n <Check className=\"text-primary h-3.5 w-3.5 shrink-0\" />\n ) : null}\n </button>\n );\n })}\n </>\n ) : null}\n </div>\n </div>\n </PopoverContent>\n </Popover>\n {Boolean(error) && <p className=\"text-destructive text-sm\">{error}</p>}\n </div>\n );\n}\n"],"names":[],"mappings":"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","ignoreList":[0,2]}
@@ -1,3 +1,3 @@
1
- module.exports=[66560,a=>{"use strict";var b=a.i(10973),c=a.i(96960),d=a.i(69845),e=a.i(42261),f=a.i(25700);let g=(0,f.default)("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]);var h=a.i(20098),i=a.i(85536),j=a.i(18948);a.i(90920),a.i(13126);var k=a.i(10568),l=a.i(71335);function m({...a}){return(0,b.jsx)(l.Dialog.Root,{"data-slot":"sheet",...a})}function n({...a}){return(0,b.jsx)(l.Dialog.Portal,{"data-slot":"sheet-portal",...a})}function o({className:a,...c}){return(0,b.jsx)(l.Dialog.Overlay,{"data-slot":"sheet-overlay",className:(0,i.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",a),...c})}function p({className:a,children:c,side:d="right",showCloseButton:e=!0,...f}){return(0,b.jsxs)(n,{children:[(0,b.jsx)(o,{}),(0,b.jsxs)(l.Dialog.Content,{"data-slot":"sheet-content",className:(0,i.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"===d&&"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm","left"===d&&"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm","top"===d&&"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b","bottom"===d&&"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",a),...f,children:[c,e?(0,b.jsxs)(l.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-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,b.jsx)(k.XIcon,{className:"size-4"}),(0,b.jsx)("span",{className:"sr-only",children:"Close"})]}):null]})]})}function q({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sheet-header",className:(0,i.cn)("flex flex-col gap-1.5 p-4",a),...c})}function r({className:a,...c}){return(0,b.jsx)(l.Dialog.Title,{"data-slot":"sheet-title",className:(0,i.cn)("text-foreground font-semibold",a),...c})}function s({className:a,...c}){return(0,b.jsx)(l.Dialog.Description,{"data-slot":"sheet-description",className:(0,i.cn)("text-muted-foreground text-sm",a),...c})}var t=a.i(82934);let u="shep-sidebar-open",v=c.createContext(null);function w(){let a=c.useContext(v);if(!a)throw Error("useSidebar must be used within a SidebarProvider.");return a}function x({defaultOpen:a=!0,open:d,onOpenChange:e,className:f,style:g,children:h,...j}){let k=function(){let[a,b]=c.useState(void 0);return c.useEffect(()=>{let a=window.matchMedia("(max-width: 767px)"),c=()=>{b(window.innerWidth<768)};return a.addEventListener("change",c),b(window.innerWidth<768),()=>a.removeEventListener("change",c)},[]),!!a}(),[l,m]=c.useState(!1),[n,o]=c.useState(a),p=d??n;c.useEffect(()=>{if(void 0!==d)return;let b=function(a){try{let b=localStorage.getItem(u);if("true"===b)return!0;if("false"===b)return!1;return a}catch{return a}}(a);b!==a&&o(b)},[]);let q=c.useCallback(a=>{let b="function"==typeof a?a(p):a;e?e(b):o(b);try{localStorage.setItem(u,String(b))}catch{}},[e,p]),r=c.useCallback(()=>k?m(a=>!a):q(a=>!a),[k,q,m]);c.useEffect(()=>{let a=a=>{"b"===a.key&&(a.metaKey||a.ctrlKey)&&(a.preventDefault(),r())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[r]);let s=p?"expanded":"collapsed",w=c.useMemo(()=>({state:s,open:p,setOpen:q,isMobile:k,openMobile:l,setOpenMobile:m,toggleSidebar:r}),[s,p,q,k,l,m,r]);return(0,b.jsx)(v.Provider,{value:w,children:(0,b.jsx)(t.TooltipProvider,{delayDuration:0,children:(0,b.jsx)("div",{"data-slot":"sidebar-wrapper",style:{"--sidebar-width":"16rem","--sidebar-width-icon":"3rem",...g},className:(0,i.cn)("group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full",f),...j,children:h})})})}function y({side:a="left",variant:c="sidebar",collapsible:d="offcanvas",className:e,children:f,...g}){let{isMobile:h,state:j,openMobile:k,setOpenMobile:l}=w();return"none"===d?(0,b.jsx)("div",{"data-slot":"sidebar",className:(0,i.cn)("bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col",e),...g,children:f}):h?(0,b.jsx)(m,{open:k,onOpenChange:l,...g,children:(0,b.jsxs)(p,{"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:a,children:[(0,b.jsxs)(q,{className:"sr-only",children:[(0,b.jsx)(r,{children:"Sidebar"}),(0,b.jsx)(s,{children:"Displays the mobile sidebar."})]}),(0,b.jsx)("div",{className:"flex h-full w-full flex-col",children:f})]})}):(0,b.jsxs)("div",{className:"group peer text-sidebar-foreground hidden md:block","data-state":j,"data-collapsible":"collapsed"===j?d:"","data-variant":c,"data-side":a,"data-slot":"sidebar",children:[(0,b.jsx)("div",{"data-slot":"sidebar-gap",className:(0,i.cn)("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180","floating"===c||"inset"===c?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon)")}),(0,b.jsx)("div",{"data-slot":"sidebar-container",className:(0,i.cn)("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex","left"===a?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]","floating"===c||"inset"===c?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",e),...g,children:(0,b.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:f})})]})}function z({className:a,...c}){let{toggleSidebar:d}=w();return(0,b.jsx)("button",{"data-sidebar":"rail","data-slot":"sidebar-rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:d,title:"Toggle Sidebar",className:(0,i.cn)("hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex","in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",a),...c})}function A({className:a,...c}){return(0,b.jsx)("main",{"data-slot":"sidebar-inset",className:(0,i.cn)("bg-background relative flex w-full flex-1 flex-col","md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2",a),...c})}function B({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-header","data-sidebar":"header",className:(0,i.cn)("flex flex-col gap-2 p-2",a),...c})}function C({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-footer","data-sidebar":"footer",className:(0,i.cn)("flex flex-col gap-2 p-2",a),...c})}function D({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-content","data-sidebar":"content",className:(0,i.cn)("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",a),...c})}function E({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-group","data-sidebar":"group",className:(0,i.cn)("relative flex w-full min-w-0 flex-col p-2",a),...c})}function F({className:a,asChild:c=!1,...d}){let e=c?h.Slot.Root:"div";return(0,b.jsx)(e,{"data-slot":"sidebar-group-label","data-sidebar":"group-label",className:(0,i.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",a),...d})}function G({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-group-content","data-sidebar":"group-content",className:(0,i.cn)("w-full text-sm",a),...c})}function H({className:a,...c}){return(0,b.jsx)("ul",{"data-slot":"sidebar-menu","data-sidebar":"menu",className:(0,i.cn)("flex w-full min-w-0 flex-col gap-1",a),...c})}function I({className:a,...c}){return(0,b.jsx)("li",{"data-slot":"sidebar-menu-item","data-sidebar":"menu-item",className:(0,i.cn)("group/menu-item relative",a),...c})}let J=(0,e.cva)("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-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"}});function K({asChild:a=!1,isActive:c=!1,variant:d="default",size:e="default",tooltip:f,className:g,...j}){let k=a?h.Slot.Root:"button",{isMobile:l,state:m}=w(),n=(0,b.jsx)(k,{"data-slot":"sidebar-menu-button","data-sidebar":"menu-button","data-size":e,"data-active":c,className:(0,i.cn)(J({variant:d,size:e}),g),...j});return f?("string"==typeof f&&(f={children:f}),(0,b.jsxs)(t.Tooltip,{children:[(0,b.jsx)(t.TooltipTrigger,{asChild:!0,children:n}),(0,b.jsx)(t.TooltipContent,{side:"right",align:"center",hidden:"collapsed"!==m||l,...f})]})):n}let L=(0,f.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);var M=a.i(17300),N=a.i(67424),O=a.i(67837);let P=(0,f.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"}]]);var Q=a.i(66873),R=a.i(14272),S=a.i(7420),T=a.i(6175),U=a.i(79406),V=a.i(48939),W=a.i(61476),X=a.i(48972),Y=a.i(59653),Z="ScrollArea",[$,_]=(0,S.createContextScope)(Z),[aa,ab]=$(Z),ac=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,type:f="hover",dir:g,scrollHideDelay:h=600,...i}=a,[j,k]=c.useState(null),[l,m]=c.useState(null),[n,o]=c.useState(null),[p,q]=c.useState(null),[r,s]=c.useState(null),[t,u]=c.useState(0),[v,w]=c.useState(0),[x,y]=c.useState(!1),[z,A]=c.useState(!1),B=(0,T.useComposedRefs)(d,a=>k(a)),C=(0,V.useDirection)(g);return(0,b.jsx)(aa,{scope:e,type:f,dir:C,scrollHideDelay:h,scrollArea:j,viewport:l,onViewportChange:m,content:n,onContentChange:o,scrollbarX:p,onScrollbarXChange:q,scrollbarXEnabled:x,onScrollbarXEnabledChange:y,scrollbarY:r,onScrollbarYChange:s,scrollbarYEnabled:z,onScrollbarYEnabledChange:A,onCornerWidthChange:u,onCornerHeightChange:w,children:(0,b.jsx)(Q.Primitive.div,{dir:C,...i,ref:B,style:{position:"relative","--radix-scroll-area-corner-width":t+"px","--radix-scroll-area-corner-height":v+"px",...a.style}})})});ac.displayName=Z;var ad="ScrollAreaViewport",ae=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,children:f,nonce:g,...h}=a,i=ab(ad,e),j=c.useRef(null),k=(0,T.useComposedRefs)(d,j,i.onViewportChange);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:g}),(0,b.jsx)(Q.Primitive.div,{"data-radix-scroll-area-viewport":"",...h,ref:k,style:{overflowX:i.scrollbarXEnabled?"scroll":"hidden",overflowY:i.scrollbarYEnabled?"scroll":"hidden",...a.style},children:(0,b.jsx)("div",{ref:i.onContentChange,style:{minWidth:"100%",display:"table"},children:f})})]})});ae.displayName=ad;var af="ScrollAreaScrollbar",ag=c.forwardRef((a,d)=>{let{forceMount:e,...f}=a,g=ab(af,a.__scopeScrollArea),{onScrollbarXEnabledChange:h,onScrollbarYEnabledChange:i}=g,j="horizontal"===a.orientation;return c.useEffect(()=>(j?h(!0):i(!0),()=>{j?h(!1):i(!1)}),[j,h,i]),"hover"===g.type?(0,b.jsx)(ah,{...f,ref:d,forceMount:e}):"scroll"===g.type?(0,b.jsx)(ai,{...f,ref:d,forceMount:e}):"auto"===g.type?(0,b.jsx)(aj,{...f,ref:d,forceMount:e}):"always"===g.type?(0,b.jsx)(ak,{...f,ref:d}):null});ag.displayName=af;var ah=c.forwardRef((a,d)=>{let{forceMount:e,...f}=a,g=ab(af,a.__scopeScrollArea),[h,i]=c.useState(!1);return c.useEffect(()=>{let a=g.scrollArea,b=0;if(a){let c=()=>{window.clearTimeout(b),i(!0)},d=()=>{b=window.setTimeout(()=>i(!1),g.scrollHideDelay)};return a.addEventListener("pointerenter",c),a.addEventListener("pointerleave",d),()=>{window.clearTimeout(b),a.removeEventListener("pointerenter",c),a.removeEventListener("pointerleave",d)}}},[g.scrollArea,g.scrollHideDelay]),(0,b.jsx)(R.Presence,{present:e||h,children:(0,b.jsx)(aj,{"data-state":h?"visible":"hidden",...f,ref:d})})}),ai=c.forwardRef((a,d)=>{var e;let{forceMount:f,...g}=a,h=ab(af,a.__scopeScrollArea),i="horizontal"===a.orientation,j=aC(()=>l("SCROLL_END"),100),[k,l]=(e={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},c.useReducer((a,b)=>e[a][b]??a,"hidden"));return c.useEffect(()=>{if("idle"===k){let a=window.setTimeout(()=>l("HIDE"),h.scrollHideDelay);return()=>window.clearTimeout(a)}},[k,h.scrollHideDelay,l]),c.useEffect(()=>{let a=h.viewport,b=i?"scrollLeft":"scrollTop";if(a){let c=a[b],d=()=>{let d=a[b];c!==d&&(l("SCROLL"),j()),c=d};return a.addEventListener("scroll",d),()=>a.removeEventListener("scroll",d)}},[h.viewport,i,l,j]),(0,b.jsx)(R.Presence,{present:f||"hidden"!==k,children:(0,b.jsx)(ak,{"data-state":"hidden"===k?"hidden":"visible",...g,ref:d,onPointerEnter:(0,Y.composeEventHandlers)(a.onPointerEnter,()=>l("POINTER_ENTER")),onPointerLeave:(0,Y.composeEventHandlers)(a.onPointerLeave,()=>l("POINTER_LEAVE"))})})}),aj=c.forwardRef((a,d)=>{let e=ab(af,a.__scopeScrollArea),{forceMount:f,...g}=a,[h,i]=c.useState(!1),j="horizontal"===a.orientation,k=aC(()=>{if(e.viewport){let a=e.viewport.offsetWidth<e.viewport.scrollWidth,b=e.viewport.offsetHeight<e.viewport.scrollHeight;i(j?a:b)}},10);return aD(e.viewport,k),aD(e.content,k),(0,b.jsx)(R.Presence,{present:f||h,children:(0,b.jsx)(ak,{"data-state":h?"visible":"hidden",...g,ref:d})})}),ak=c.forwardRef((a,d)=>{let{orientation:e="vertical",...f}=a,g=ab(af,a.__scopeScrollArea),h=c.useRef(null),i=c.useRef(0),[j,k]=c.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=ax(j.viewport,j.content),m={...f,sizes:j,onSizesChange:k,hasThumb:!!(l>0&&l<1),onThumbChange:a=>h.current=a,onThumbPointerUp:()=>i.current=0,onThumbPointerDown:a=>i.current=a};function n(a,b){return function(a,b,c,d="ltr"){let e=ay(c),f=b||e/2,g=c.scrollbar.paddingStart+f,h=c.scrollbar.size-c.scrollbar.paddingEnd-(e-f),i=c.content-c.viewport;return aA([g,h],"ltr"===d?[0,i]:[-1*i,0])(a)}(a,i.current,j,b)}return"horizontal"===e?(0,b.jsx)(al,{...m,ref:d,onThumbPositionChange:()=>{if(g.viewport&&h.current){let a=az(g.viewport.scrollLeft,j,g.dir);h.current.style.transform=`translate3d(${a}px, 0, 0)`}},onWheelScroll:a=>{g.viewport&&(g.viewport.scrollLeft=a)},onDragScroll:a=>{g.viewport&&(g.viewport.scrollLeft=n(a,g.dir))}}):"vertical"===e?(0,b.jsx)(am,{...m,ref:d,onThumbPositionChange:()=>{if(g.viewport&&h.current){let a=az(g.viewport.scrollTop,j);h.current.style.transform=`translate3d(0, ${a}px, 0)`}},onWheelScroll:a=>{g.viewport&&(g.viewport.scrollTop=a)},onDragScroll:a=>{g.viewport&&(g.viewport.scrollTop=n(a))}}):null}),al=c.forwardRef((a,d)=>{let{sizes:e,onSizesChange:f,...g}=a,h=ab(af,a.__scopeScrollArea),[i,j]=c.useState(),k=c.useRef(null),l=(0,T.useComposedRefs)(d,k,h.onScrollbarXChange);return c.useEffect(()=>{k.current&&j(getComputedStyle(k.current))},[k]),(0,b.jsx)(ap,{"data-orientation":"horizontal",...g,ref:l,sizes:e,style:{bottom:0,left:"rtl"===h.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===h.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":ay(e)+"px",...a.style},onThumbPointerDown:b=>a.onThumbPointerDown(b.x),onDragScroll:b=>a.onDragScroll(b.x),onWheelScroll:(b,c)=>{if(h.viewport){var d,e;let f=h.viewport.scrollLeft+b.deltaX;a.onWheelScroll(f),d=f,e=c,d>0&&d<e&&b.preventDefault()}},onResize:()=>{k.current&&h.viewport&&i&&f({content:h.viewport.scrollWidth,viewport:h.viewport.offsetWidth,scrollbar:{size:k.current.clientWidth,paddingStart:aw(i.paddingLeft),paddingEnd:aw(i.paddingRight)}})}})}),am=c.forwardRef((a,d)=>{let{sizes:e,onSizesChange:f,...g}=a,h=ab(af,a.__scopeScrollArea),[i,j]=c.useState(),k=c.useRef(null),l=(0,T.useComposedRefs)(d,k,h.onScrollbarYChange);return c.useEffect(()=>{k.current&&j(getComputedStyle(k.current))},[k]),(0,b.jsx)(ap,{"data-orientation":"vertical",...g,ref:l,sizes:e,style:{top:0,right:"ltr"===h.dir?0:void 0,left:"rtl"===h.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":ay(e)+"px",...a.style},onThumbPointerDown:b=>a.onThumbPointerDown(b.y),onDragScroll:b=>a.onDragScroll(b.y),onWheelScroll:(b,c)=>{if(h.viewport){var d,e;let f=h.viewport.scrollTop+b.deltaY;a.onWheelScroll(f),d=f,e=c,d>0&&d<e&&b.preventDefault()}},onResize:()=>{k.current&&h.viewport&&i&&f({content:h.viewport.scrollHeight,viewport:h.viewport.offsetHeight,scrollbar:{size:k.current.clientHeight,paddingStart:aw(i.paddingTop),paddingEnd:aw(i.paddingBottom)}})}})}),[an,ao]=$(af),ap=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,sizes:f,hasThumb:g,onThumbChange:h,onThumbPointerUp:i,onThumbPointerDown:j,onThumbPositionChange:k,onDragScroll:l,onWheelScroll:m,onResize:n,...o}=a,p=ab(af,e),[q,r]=c.useState(null),s=(0,T.useComposedRefs)(d,a=>r(a)),t=c.useRef(null),u=c.useRef(""),v=p.viewport,w=f.content-f.viewport,x=(0,U.useCallbackRef)(m),y=(0,U.useCallbackRef)(k),z=aC(n,10);function A(a){t.current&&l({x:a.clientX-t.current.left,y:a.clientY-t.current.top})}return c.useEffect(()=>{let a=a=>{let b=a.target;q?.contains(b)&&x(a,w)};return document.addEventListener("wheel",a,{passive:!1}),()=>document.removeEventListener("wheel",a,{passive:!1})},[v,q,w,x]),c.useEffect(y,[f,y]),aD(q,z),aD(p.content,z),(0,b.jsx)(an,{scope:e,scrollbar:q,hasThumb:g,onThumbChange:(0,U.useCallbackRef)(h),onThumbPointerUp:(0,U.useCallbackRef)(i),onThumbPositionChange:y,onThumbPointerDown:(0,U.useCallbackRef)(j),children:(0,b.jsx)(Q.Primitive.div,{...o,ref:s,style:{position:"absolute",...o.style},onPointerDown:(0,Y.composeEventHandlers)(a.onPointerDown,a=>{0===a.button&&(a.target.setPointerCapture(a.pointerId),t.current=q.getBoundingClientRect(),u.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",p.viewport&&(p.viewport.style.scrollBehavior="auto"),A(a))}),onPointerMove:(0,Y.composeEventHandlers)(a.onPointerMove,A),onPointerUp:(0,Y.composeEventHandlers)(a.onPointerUp,a=>{let b=a.target;b.hasPointerCapture(a.pointerId)&&b.releasePointerCapture(a.pointerId),document.body.style.webkitUserSelect=u.current,p.viewport&&(p.viewport.style.scrollBehavior=""),t.current=null})})})}),aq="ScrollAreaThumb",ar=c.forwardRef((a,c)=>{let{forceMount:d,...e}=a,f=ao(aq,a.__scopeScrollArea);return(0,b.jsx)(R.Presence,{present:d||f.hasThumb,children:(0,b.jsx)(as,{ref:c,...e})})}),as=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,style:f,...g}=a,h=ab(aq,e),i=ao(aq,e),{onThumbPositionChange:j}=i,k=(0,T.useComposedRefs)(d,a=>i.onThumbChange(a)),l=c.useRef(void 0),m=aC(()=>{l.current&&(l.current(),l.current=void 0)},100);return c.useEffect(()=>{let a=h.viewport;if(a){let b=()=>{m(),l.current||(l.current=aB(a,j),j())};return j(),a.addEventListener("scroll",b),()=>a.removeEventListener("scroll",b)}},[h.viewport,m,j]),(0,b.jsx)(Q.Primitive.div,{"data-state":i.hasThumb?"visible":"hidden",...g,ref:k,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...f},onPointerDownCapture:(0,Y.composeEventHandlers)(a.onPointerDownCapture,a=>{let b=a.target.getBoundingClientRect(),c=a.clientX-b.left,d=a.clientY-b.top;i.onThumbPointerDown({x:c,y:d})}),onPointerUp:(0,Y.composeEventHandlers)(a.onPointerUp,i.onThumbPointerUp)})});ar.displayName=aq;var at="ScrollAreaCorner",au=c.forwardRef((a,c)=>{let d=ab(at,a.__scopeScrollArea),e=!!(d.scrollbarX&&d.scrollbarY);return"scroll"!==d.type&&e?(0,b.jsx)(av,{...a,ref:c}):null});au.displayName=at;var av=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,...f}=a,g=ab(at,e),[h,i]=c.useState(0),[j,k]=c.useState(0),l=!!(h&&j);return aD(g.scrollbarX,()=>{let a=g.scrollbarX?.offsetHeight||0;g.onCornerHeightChange(a),k(a)}),aD(g.scrollbarY,()=>{let a=g.scrollbarY?.offsetWidth||0;g.onCornerWidthChange(a),i(a)}),l?(0,b.jsx)(Q.Primitive.div,{...f,ref:d,style:{width:h,height:j,position:"absolute",right:"ltr"===g.dir?0:void 0,left:"rtl"===g.dir?0:void 0,bottom:0,...a.style}}):null});function aw(a){return a?parseInt(a,10):0}function ax(a,b){let c=a/b;return isNaN(c)?0:c}function ay(a){let b=ax(a.viewport,a.content),c=a.scrollbar.paddingStart+a.scrollbar.paddingEnd;return Math.max((a.scrollbar.size-c)*b,18)}function az(a,b,c="ltr"){let d=ay(b),e=b.scrollbar.paddingStart+b.scrollbar.paddingEnd,f=b.scrollbar.size-e,g=b.content-b.viewport,h=(0,X.clamp)(a,"ltr"===c?[0,g]:[-1*g,0]);return aA([0,g],[0,f-d])(h)}function aA(a,b){return c=>{if(a[0]===a[1]||b[0]===b[1])return b[0];let d=(b[1]-b[0])/(a[1]-a[0]);return b[0]+d*(c-a[0])}}var aB=(a,b=()=>{})=>{let c={left:a.scrollLeft,top:a.scrollTop},d=0;return!function e(){let f={left:a.scrollLeft,top:a.scrollTop},g=c.left!==f.left,h=c.top!==f.top;(g||h)&&b(),c=f,d=window.requestAnimationFrame(e)}(),()=>window.cancelAnimationFrame(d)};function aC(a,b){let d=(0,U.useCallbackRef)(a),e=c.useRef(0);return c.useEffect(()=>()=>window.clearTimeout(e.current),[]),c.useCallback(()=>{window.clearTimeout(e.current),e.current=window.setTimeout(d,b)},[d,b])}function aD(a,b){let c=(0,U.useCallbackRef)(b);(0,W.useLayoutEffect)(()=>{let b=0;if(a){let d=new ResizeObserver(()=>{cancelAnimationFrame(b),b=window.requestAnimationFrame(c)});return d.observe(a),()=>{window.cancelAnimationFrame(b),d.unobserve(a)}}},[a,c])}a.s(["Corner",()=>au,"Root",()=>ac,"ScrollArea",()=>ac,"ScrollAreaCorner",()=>au,"ScrollAreaScrollbar",()=>ag,"ScrollAreaThumb",()=>ar,"ScrollAreaViewport",()=>ae,"Scrollbar",()=>ag,"Thumb",()=>ar,"Viewport",()=>ae,"createScrollAreaScope",()=>_],73942);var aE=a.i(73942),aE=aE;function aF({className:a,children:c,...d}){return(0,b.jsxs)(aE.Root,{"data-slot":"scroll-area",className:(0,i.cn)("relative",a),...d,children:[(0,b.jsx)(aE.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1 [&>div]:block!",children:c}),(0,b.jsx)(aG,{}),(0,b.jsx)(aE.Corner,{})]})}function aG({className:a,orientation:c="vertical",...d}){return(0,b.jsx)(aE.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:c,className:(0,i.cn)("flex touch-none p-px transition-colors select-none","vertical"===c&&"h-full w-2.5 border-l border-l-transparent","horizontal"===c&&"h-2.5 flex-col border-t border-t-transparent",a),...d,children:(0,b.jsx)(aE.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}var aH=a.i(56109),aI=a.i(19884);function aJ({icon:a,label:c,href:d,active:e=!1}){let f=(0,aI.useSoundAction)("navigate");return(0,b.jsx)(I,{"data-testid":"sidebar-nav-item",children:(0,b.jsx)(K,{asChild:!0,isActive:e,tooltip:c,children:(0,b.jsxs)(aH.default,{href:d,onClick:()=>f.play(),children:[(0,b.jsx)(a,{}),(0,b.jsx)("span",{children:c})]})})})}function aK({className:a}){let{toggleSidebar:c,open:d}=w(),e=(0,aI.useSoundAction)("expand"),f=(0,aI.useSoundAction)("collapse");return(0,b.jsx)("div",{className:(0,i.cn)("flex",a),children:(0,b.jsx)(j.Button,{"data-testid":"sidebar-collapse-toggle",variant:"ghost",size:"icon",className:"size-7 cursor-pointer group-data-[collapsible=icon]:size-8!",onClick:()=>{d?f.play():e.play(),c()},"aria-label":d?"Collapse sidebar":"Expand sidebar",children:(0,b.jsx)(g,{className:"size-4"})})})}function aL({className:a,size:c=24,variant:d="default"}){return(0,b.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 194 200",width:c,height:c,className:(0,i.cn)("shrink-0","dev"===d&&"text-cyan-400",a),"aria-hidden":"true",children:(0,b.jsx)("g",{transform:"matrix(1, 0, 0, 1, -111, -208)",children:(0,b.jsx)("path",{d:"M 198 406 C196,405 194,403 193,401 C192,399 191,398 186,398 C178,397 174,394 170,387 L 168 381 L 163 381 C156,381 150,377 147,370 C144,364 143,359 146,353 C148,348 148,347 147,347 C145,347 140,343 138,339 C133,329 139,314 149,311 L 152 311 L 149 307 C145,302 145,294 149,290 C151,288 152,287 151,286 C150,283 152,278 155,276 C156,275 159,274 162,273 C165,273 166,273 168,276 C171,278 171,280 172,287 C173,294 174,297 177,304 C180,309 182,314 183,316 C186,327 193,336 199,339 C204,342 211,342 216,340 C222,336 231,324 234,314 C235,312 237,307 239,302 C240,298 242,292 242,289 C243,281 245,278 247,275 C250,273 251,273 255,273 C261,274 264,278 264,282 C264,284 264,286 263,287 C262,287 263,288 265,290 C272,295 272,303 267,309 L 265 312 L 269 314 C276,317 279,323 279,332 C279,339 277,343 272,347 C268,351 268,351 269,354 C272,358 271,366 269,371 C266,376 259,381 254,381 C252,381 251,382 248,386 C242,395 234,400 227,399 C224,398 223,398 221,401 C220,403 217,405 216,406 C211,409 203,409 198,406 ZM 136 271 C123,267 115,262 113,256 C111,251 111,251 113,251 C118,254 124,254 132,252 C136,252 141,251 144,251 C149,251 157,253 162,256 C166,258 166,258 166,264 L 166 269 L 160 270 C149,272 142,272 136,271 ZM 264 271 C263,271 259,270 256,270 L 250 270 L 250 265 C249,259 250,257 259,254 C265,251 272,251 289,252 C297,253 299,253 302,252 C305,250 305,250 305,252 C305,255 301,262 297,264 C289,270 272,273 264,271 ZM 162 249 C160,247 159,245 159,242 C159,236 164,230 169,230 C170,230 171,228 171,225 C171,216 176,210 184,209 C189,209 195,211 195,213 C195,214 196,213 197,212 C201,209 204,208 208,208 C212,208 217,210 219,212 C220,214 220,213 223,211 C226,208 234,208 239,211 C243,214 246,221 246,226 C245,230 245,230 247,230 C253,230 258,238 257,244 C256,249 251,252 245,252 C241,252 237,251 234,248 C232,247 232,247 228,249 C225,251 222,252 220,252 C216,252 212,250 210,247 C209,246 209,246 206,248 C201,252 192,253 185,248 C183,247 183,247 178,249 C172,253 166,253 162,249 ZM 116 249 C112,248 114,247 119,247 C122,247 127,246 130,245 C138,242 146,242 152,245 L 158 248 L 148 247 C142,247 138,247 133,248 C128,250 120,250 116,249 ZM 284 248 C281,247 277,247 270,247 L 260 248 L 263 246 C269,243 276,242 284,245 C289,246 295,247 298,247 C303,247 304,247 303,248 C301,250 289,250 284,248 Z",fill:"currentColor"})})})}function aM({version:a,branch:d,commitHash:e,isDev:f=!1,packageName:g="@shepai/cli",description:h,instancePath:i}){let j=e?.slice(0,7),{latest:k,updateAvailable:l}=function(a){let[b,d]=(0,c.useState)(null),[e,f]=(0,c.useState)(!0);(0,c.useEffect)(()=>{let a=!1;return async function(){try{let b=await fetch("/api/npm-version");if(!b.ok)return;let c=await b.json();!a&&c.latest&&d(c.latest)}catch{}finally{a||f(!1)}}(),()=>{a=!0}},[]);let g=null!==b&&function(a,b){let c=a=>a.split("-")[0].split(".").map(Number),d=c(a),e=c(b);for(let a=0;a<3;a++){let b=d[a]??0,c=e[a]??0;if(b>c)return 1;if(b<c)return -1}return 0}(b,a)>0;return{latest:b,updateAvailable:g,loading:e}}(a),{status:m,startUpgrade:n}=function(){let[a,b]=(0,c.useState)("idle"),[d,e]=(0,c.useState)(""),[f,g]=(0,c.useState)(),h=(0,c.useRef)(null),i=(0,c.useCallback)(()=>{if("upgrading"===a)return;b("upgrading"),e(""),g(void 0);let c=new AbortController;return h.current=c,fetch("/api/cli-upgrade",{method:"POST",signal:c.signal}).then(async a=>{if(!a.ok||!a.body){b("error"),g(`Server returned ${a.status}`);return}let c=a.body.getReader(),d=new TextDecoder,f="";for(;;){let{done:a,value:h}=await c.read();if(a)break;let i=(f+=d.decode(h,{stream:!0})).split("\n");for(let a of(f=i.pop()??"",i))if(!a.startsWith("event: done")&&a.startsWith("data: ")){let c=a.slice(6);try{let a=JSON.parse(c);"upgraded"===a.status?b("upgraded"):"up-to-date"===a.status?b("up-to-date"):"error"===a.status&&(b("error"),g(a.errorMessage))}catch{e(a=>a+c)}}}}).catch(a=>{a instanceof DOMException&&"AbortError"===a.name||(b("error"),g(a instanceof Error?a.message:"Upgrade failed"))}),()=>{c.abort()}},[a]);return{status:a,output:d,errorMessage:f,startUpgrade:i}}(),o=f?`${a}-dev`:`v${a}`,p="upgrading"===m,q="upgraded"===m;return(0,b.jsx)(t.TooltipProvider,{delayDuration:200,children:(0,b.jsxs)(t.Tooltip,{children:[(0,b.jsx)(t.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("span",{className:"text-muted-foreground/80 hover:text-muted-foreground relative cursor-default text-[11px] leading-tight transition-colors","data-testid":"version-label",children:[o,l&&!q?(0,b.jsx)("span",{className:"absolute -top-0.5 -right-1.5 size-1.5 rounded-full bg-emerald-400","data-testid":"update-dot"}):null]})}),(0,b.jsxs)(t.TooltipContent,{side:"right",className:"max-w-[280px] space-y-1 p-3 text-left",children:[(0,b.jsx)("div",{className:"mb-1.5 text-xs font-semibold",children:g}),h?(0,b.jsx)("div",{className:"text-[10px] leading-snug opacity-70",children:h}):null,(0,b.jsxs)("div",{className:"border-t border-white/10 pt-1.5",children:[(0,b.jsx)(aN,{label:"Version",value:o}),f&&d?(0,b.jsx)(aN,{label:"Branch",value:d}):null,f&&j?(0,b.jsx)(aN,{label:"Commit",value:j,mono:!0}):null,f&&i?(0,b.jsx)(aN,{label:"Path",value:i,mono:!0}):null,k?(0,b.jsx)(aN,{label:"Latest",value:`v${k}`,highlight:l}):null]}),q?(0,b.jsx)("div",{className:"border-t border-white/10 pt-1.5",children:(0,b.jsx)("span",{className:"text-[10px] font-medium text-emerald-400","data-testid":"upgrade-success",children:"Upgraded successfully — restart to apply"})}):"error"===m?(0,b.jsx)("div",{className:"border-t border-white/10 pt-1.5",children:(0,b.jsx)("span",{className:"text-[10px] font-medium text-red-400","data-testid":"upgrade-error",children:"Upgrade failed"})}):l?(0,b.jsx)("div",{className:"border-t border-white/10 pt-1.5",children:(0,b.jsx)("button",{type:"button",onClick:n,disabled:p,className:"inline-flex items-center gap-1 text-[10px] font-medium text-emerald-400 transition-colors hover:text-emerald-300 disabled:opacity-50","data-testid":"upgrade-button",children:p?"Upgrading...":`Upgrade to v${k}`})}):null]})]})})}function aN({label:a,value:c,highlight:d,mono:e}){return(0,b.jsxs)("div",{className:"flex items-center justify-between gap-4 text-[10px]",children:[(0,b.jsx)("span",{className:"opacity-60",children:a}),(0,b.jsx)("span",{className:[d?"font-medium text-emerald-400":"",e||!d?"font-mono":""].filter(Boolean).join(" "),children:c})]})}function aO({startedAt:a}){let[d,e]=(0,c.useState)(()=>Date.now()-a);return(0,c.useEffect)(()=>{let b=setInterval(()=>{(0,c.startTransition)(()=>e(Date.now()-a))},1e3);return()=>clearInterval(b)},[a]),(0,b.jsx)("span",{"data-testid":"elapsed-time",className:"tabular-nums",children:function(a){let b=Math.floor(a/1e3);if(b>=3600){let a=Math.floor(b/3600);return`${a}h`}let c=Math.floor(b/60);return`${String(c).padStart(2,"0")}:${String(b%60).padStart(2,"0")}`}(d)})}var aP=a.i(82697),aQ=a.i(88064),aR=a.i(67273),aS=a.i(93866),aT=a.i(56926);let aU={"action-needed":{icon:aP.CircleAlert,iconClass:"text-amber-500",bgClass:"bg-amber-500/10",label:"Action Needed"},"in-progress":{icon:aQ.Loader2,iconClass:"text-blue-500 animate-spin",bgClass:"bg-blue-500/10",label:"In Progress"},blocked:{icon:aS.Ban,iconClass:"text-gray-400",bgClass:"bg-gray-400/10",label:"Blocked"},error:{icon:aT.CircleX,iconClass:"text-red-500",bgClass:"bg-red-500/10",label:"Error"},done:{icon:aR.CircleCheck,iconClass:"text-emerald-500",bgClass:"bg-emerald-500/10",label:"Done"}},aV=["action-needed","error","blocked","in-progress","done"];var aW=a.i(17606),aX=a.i(83852);function aY({name:a,status:c,startedAt:d,duration:e,agentType:f,modelId:g,onClick:h}){let{icon:i,iconClass:j}=aU[c],k=f?(0,aW.getAgentTypeIcon)(f):null;return(0,b.jsx)(I,{"data-testid":"feature-list-item",children:(0,b.jsxs)(K,{size:"sm",onClick:h,tooltip:a,className:"cursor-pointer",children:[(0,b.jsx)(i,{className:j}),(0,b.jsx)("span",{className:"flex-1 truncate font-medium",children:a}),"in-progress"===c&&null!=d?(0,b.jsx)("span",{"data-testid":"feature-list-item-meta",className:"text-muted-foreground ml-auto text-xs tabular-nums",children:(0,b.jsx)(aO,{startedAt:d})}):null,"done"===c&&e?(0,b.jsx)("span",{"data-testid":"feature-list-item-meta",className:"text-muted-foreground ml-auto text-xs tabular-nums",children:e}):null,k?(0,b.jsx)(t.TooltipProvider,{children:(0,b.jsxs)(t.Tooltip,{children:[(0,b.jsx)(t.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"ml-auto shrink-0",children:(0,b.jsx)(k,{className:"h-3.5 w-3.5"})})}),(0,b.jsxs)(t.TooltipContent,{side:"right",children:[(0,b.jsx)("span",{className:"font-medium",children:aW.agentTypeLabels[f]??f}),g?(0,b.jsxs)("span",{className:"ml-1 opacity-70",children:["· ",(0,aX.getModelMeta)(g).displayName||g]}):null]})]})}):null]})})}function aZ({label:a,count:c,children:d}){return(0,b.jsxs)(E,{"data-testid":"feature-status-group",className:"px-2 py-1",children:[(0,b.jsxs)(F,{className:"text-muted-foreground h-6 px-2 text-[0.65rem] font-semibold tracking-wider uppercase",children:[a,(0,b.jsx)("span",{"aria-label":`${c} items`,className:"bg-sidebar-accent text-sidebar-accent-foreground ml-1.5 inline-flex h-4 min-w-4 items-center justify-center rounded-full px-1 text-[0.6rem] font-medium tabular-nums",role:"img",children:c})]}),(0,b.jsx)(G,{children:(0,b.jsx)(H,{className:"gap-0.5",children:d})})]})}function a$({label:a,className:c}){return(0,b.jsx)(E,{"data-testid":"sidebar-section-header",className:(0,i.cn)("px-2 py-1",c),children:(0,b.jsx)("div",{className:"text-sidebar-foreground flex h-7 w-full shrink-0 items-center px-2 text-sm font-medium",children:(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate",children:a})})})}let a_={version:"unknown",packageName:"@shepai/cli",description:"Autonomous AI Native SDLC Platform",branch:"",commitHash:"",instancePath:"",isDev:!1};function a0({features:a,featureFlags:e,showNewFeature:f=!1,onNewFeature:g,onFeatureClick:h}){let i=(0,d.usePathname)(),{state:j}=w(),{mounted:k,visible:l}=function(a,b){let[d,e]=(0,c.useState)(!a),[f,g]=(0,c.useState)(!a);return(0,c.useEffect)(()=>{if(!a){e(!0);let a=requestAnimationFrame(()=>g(!0));return()=>cancelAnimationFrame(a)}g(!1);let b=window.setTimeout(()=>e(!1),200);return()=>window.clearTimeout(b)},[a,200]),{mounted:d,visible:f}}("collapsed"===j,0),m=function(){let[a,b]=(0,c.useState)(a_);return(0,c.useEffect)(()=>{let a=!1;return async function(){try{let c=await fetch("/api/version");if(!c.ok)return;let d=await c.json();a||b(d)}catch{}}(),()=>{a=!0}},[]),a}(),n=aV.map(b=>{let{label:c}=aU[b],d=a.filter(a=>a.status===b);return{key:b,label:c,items:d}});return(0,b.jsxs)(y,{"data-testid":"app-sidebar","data-no-drawer-close":!0,collapsible:"icon",children:[(0,b.jsx)(B,{children:(0,b.jsxs)(H,{children:[(0,b.jsx)(I,{children:(0,b.jsxs)("div",{className:"flex h-8 items-center group-data-[collapsible=icon]:justify-center",children:[k?(0,b.jsxs)("div",{className:["flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2 transition-opacity duration-200 ease-out",l?"opacity-100":"opacity-0"].join(" "),"aria-hidden":!l,children:[(0,b.jsx)(aL,{className:"shrink-0",size:20,variant:m.isDev?"dev":"default"}),(0,b.jsx)("span",{className:"truncate text-sm font-semibold tracking-tight",children:"Shep"}),(0,b.jsx)(aM,{version:m.version,branch:m.branch||void 0,commitHash:m.commitHash||void 0,isDev:m.isDev,packageName:m.packageName,description:m.description,instancePath:m.instancePath||void 0})]}):null,(0,b.jsx)(aK,{className:"shrink-0 transition-all duration-200"})]})}),(0,b.jsx)(aJ,{icon:L,label:"Control Center",href:"/",active:"/"===i}),(0,b.jsx)(aJ,{icon:M.Wrench,label:"Tools",href:"/tools",active:"/tools"===i}),e.skills?(0,b.jsx)(aJ,{icon:N.Puzzle,label:"Skills",href:"/skills",active:"/skills"===i}):null,(0,b.jsx)(aJ,{icon:P,label:"Settings",href:"/settings",active:"/settings"===i})]})}),(0,b.jsx)(D,{children:k?(0,b.jsxs)("div",{className:["min-w-0 overflow-hidden transition-opacity duration-200 ease-out [&_[data-sidebar=group-label]]:!mt-0 [&_[data-sidebar=group-label]]:!opacity-100 [&_[data-sidebar=group-label]]:!transition-none",l?"opacity-100":"opacity-0"].join(" "),children:[(0,b.jsx)(a$,{label:"Features"}),(0,b.jsx)(aF,{children:n.map(({key:a,label:c,items:d})=>d.length>0?(0,b.jsx)(aZ,{label:c,count:d.length,children:d.map(a=>(0,b.jsx)(aY,{name:a.name,status:a.status,startedAt:a.startedAt,duration:a.duration,agentType:a.agentType,modelId:a.modelId,onClick:h?()=>h(a.featureId):void 0},a.featureId))},a):null)})]}):null}),f?(0,b.jsx)(C,{children:(0,b.jsx)(H,{children:(0,b.jsx)(I,{children:(0,b.jsxs)(K,{onClick:g,tooltip:"New feature",children:[(0,b.jsx)(O.Plus,{}),(0,b.jsx)("span",{children:"New feature"})]})})})}):null,(0,b.jsx)(z,{})]})}let a1=(0,f.default)("folder-plus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);var a2=a.i(1377);function a3({onSelect:a}){let[d,e]=(0,c.useState)(!1);async function f(){if(!d){e(!0);try{let b=await (0,a2.pickFolder)();b&&a?.(b)}finally{e(!1)}}}return(0,b.jsx)(t.TooltipProvider,{children:(0,b.jsxs)(t.Tooltip,{children:[(0,b.jsx)(t.TooltipTrigger,{asChild:!0,children:(0,b.jsx)(j.Button,{variant:"ghost",size:"icon","aria-label":"Add Repository","data-testid":"add-repository-button",onClick:f,disabled:d,children:d?(0,b.jsx)(aQ.Loader2,{className:"h-5 w-5 animate-spin"}):(0,b.jsx)(a1,{className:"h-5 w-5"})})}),(0,b.jsx)(t.TooltipContent,{children:"Add Repository"})]})})}let a4=(0,f.default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]),a5=(0,f.default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),a6="shep-theme";function a7(){let{theme:a,resolvedTheme:d,setTheme:e}=function(){let[a,b]=(0,c.useState)("system"),[d,e]=(0,c.useState)("light"),f=(0,c.useCallback)(()=>"light",[]),g=(0,c.useCallback)(a=>"system"===a?f():a,[f]),h=(0,c.useCallback)(a=>{if("u"<typeof document)return;let b=document.documentElement;b.classList.remove("light","dark"),b.classList.add(a),e(a)},[]),i=(0,c.useCallback)(a=>{b(a),"u">typeof localStorage&&localStorage.setItem(a6,a),h(g(a))},[g,h]);return(0,c.useEffect)(()=>{let a=localStorage.getItem(a6)??"system";b(a),h(g(a))},[g,h]),(0,c.useEffect)(()=>{},[a,g,h]),{theme:a,resolvedTheme:d,setTheme:i}}(),f=(0,aI.useSoundAction)("toggle-on"),g=(0,aI.useSoundAction)("toggle-off");return(0,b.jsxs)(j.Button,{variant:"ghost",size:"icon",onClick:b=>{let c="system"===a?"dark"===d?"light":"dark":"dark"===a?"light":"dark";("dark"!==("system"===a?d:a)?f.play():g.play(),document.startViewTransition)?(document.documentElement.style.setProperty("--x",`${b.clientX}px`),document.documentElement.style.setProperty("--y",`${b.clientY}px`),document.startViewTransition(()=>{e(c)})):e(c)},"aria-label":`Switch to ${"dark"===d?"light":"dark"} mode`,children:[(0,b.jsx)(a5,{className:"h-5 w-5 scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90"}),(0,b.jsx)(a4,{className:"absolute h-5 w-5 scale-0 rotate-90 transition-all dark:scale-100 dark:rotate-0"}),(0,b.jsx)("span",{className:"sr-only",children:"Toggle theme"})]})}let a8=(0,f.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"}]]),a9=(0,f.default)("volume-off",[["path",{d:"M16 9a5 5 0 0 1 .95 2.293",key:"1fgyg8"}],["path",{d:"M19.364 5.636a9 9 0 0 1 1.889 9.96",key:"l3zxae"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"m7 7-.587.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.298V11",key:"1gbwow"}],["path",{d:"M9.828 4.172A.686.686 0 0 1 11 4.657v.686",key:"s2je0y"}]]);var ba=a.i(2103);function bb(){let{enabled:a,toggle:c}=(0,ba.useSoundEnabled)();return(0,b.jsxs)(j.Button,{variant:"ghost",size:"icon",onClick:c,"aria-label":a?"Mute sounds":"Unmute sounds",children:[a?(0,b.jsx)(a8,{className:"h-5 w-5"}):(0,b.jsx)(a9,{className:"h-5 w-5"}),(0,b.jsx)("span",{className:"sr-only",children:"Toggle sound"})]})}var bc=a.i(84871),bd=a.i(96213),be=a.i(1356),bf=a.i(52313),bg=a.i(46847);let bh={[bg.NotificationSeverity.Success]:"success",[bg.NotificationSeverity.Error]:"error",[bg.NotificationSeverity.Warning]:"warning",[bg.NotificationSeverity.Info]:"info"},bi={[bg.NotificationSeverity.Success]:"notification-success",[bg.NotificationSeverity.Error]:"notification-error",[bg.NotificationSeverity.Warning]:"notification-warning",[bg.NotificationSeverity.Info]:"notification-info"};var bj=a.i(21333);function bk({children:a}){let e=(0,d.useRouter)(),{guardedNavigate:f}=(0,bd.useDrawerCloseGuard)(),g=(0,bj.useFeatureFlags)();!function(){let a=(0,d.useRouter)(),{events:b}=(0,bc.useAgentEventsContext)(),e=(0,aI.useSoundAction)("notification-success"),f=(0,aI.useSoundAction)("notification-error"),g=(0,aI.useSoundAction)("notification-warning"),h=(0,aI.useSoundAction)("notification-info"),i=(0,c.useMemo)(()=>({"notification-success":e,"notification-error":f,"notification-warning":g,"notification-info":h}),[e,f,g,h]),j=(0,c.useRef)(0);(0,c.useEffect)(()=>{if(b.length<=j.current)return;let c=b.slice(j.current);for(let d of(j.current=b.length,c)){if(d.severity!==bg.NotificationSeverity.Error&&d.severity!==bg.NotificationSeverity.Warning&&d.severity!==bg.NotificationSeverity.Success)continue;!function(a,b){let c=bh[a.severity]??"info",d=a.eventType===bg.NotificationEventType.WaitingApproval;bf.toast[c](a.featureName,{description:a.message,...d&&b&&{action:{label:"Review",onClick:()=>{b(`/feature/${a.featureId}`)}}}})}(d,b=>a.push(b));let b=bi[d.severity];i[b]?.play()}},[b,i,a])}();let{features:h}=(0,be.useSidebarFeaturesContext)(),i=(0,c.useCallback)(()=>{f(()=>e.push("/create"))},[e,f]),j=(0,c.useCallback)(a=>{f(()=>e.push(`/feature/${a}`))},[e,f]),k=(0,c.useCallback)(a=>{window.dispatchEvent(new CustomEvent("shep:add-repository",{detail:{path:a}}))},[]);return(0,b.jsxs)(x,{defaultOpen:!1,children:[(0,b.jsx)(a0,{features:h,featureFlags:g,onNewFeature:i,onFeatureClick:j}),(0,b.jsx)(A,{children:(0,b.jsxs)("div",{className:"relative h-full",children:[(0,b.jsxs)("div",{className:"absolute top-3 right-3 z-50 flex gap-1",children:[(0,b.jsx)(a3,{onSelect:k}),(0,b.jsx)(bb,{}),(0,b.jsx)(a7,{})]}),(0,b.jsx)("main",{className:"h-full",children:a})]})})]})}function bl({children:a}){return(0,b.jsx)(bc.AgentEventsProvider,{children:(0,b.jsx)(bd.DrawerCloseGuardProvider,{children:(0,b.jsx)(be.SidebarFeaturesProvider,{children:(0,b.jsx)(bk,{children:a})})})})}a.s(["AppShell",()=>bl],66560)},58313,a=>{"use strict";var b=a.i(10973),c=a.i(52313);let d=({...a})=>(0,b.jsx)(c.Toaster,{className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...a});a.s(["Toaster",()=>d])}];
1
+ module.exports=[66560,a=>{"use strict";var b=a.i(10973),c=a.i(96960),d=a.i(69845),e=a.i(42261),f=a.i(25700);let g=(0,f.default)("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]);var h=a.i(20098),i=a.i(85536),j=a.i(18948);a.i(90920),a.i(13126);var k=a.i(10568),l=a.i(71335);function m({...a}){return(0,b.jsx)(l.Dialog.Root,{"data-slot":"sheet",...a})}function n({...a}){return(0,b.jsx)(l.Dialog.Portal,{"data-slot":"sheet-portal",...a})}function o({className:a,...c}){return(0,b.jsx)(l.Dialog.Overlay,{"data-slot":"sheet-overlay",className:(0,i.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",a),...c})}function p({className:a,children:c,side:d="right",showCloseButton:e=!0,...f}){return(0,b.jsxs)(n,{children:[(0,b.jsx)(o,{}),(0,b.jsxs)(l.Dialog.Content,{"data-slot":"sheet-content",className:(0,i.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"===d&&"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm","left"===d&&"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm","top"===d&&"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b","bottom"===d&&"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",a),...f,children:[c,e?(0,b.jsxs)(l.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-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,b.jsx)(k.XIcon,{className:"size-4"}),(0,b.jsx)("span",{className:"sr-only",children:"Close"})]}):null]})]})}function q({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sheet-header",className:(0,i.cn)("flex flex-col gap-1.5 p-4",a),...c})}function r({className:a,...c}){return(0,b.jsx)(l.Dialog.Title,{"data-slot":"sheet-title",className:(0,i.cn)("text-foreground font-semibold",a),...c})}function s({className:a,...c}){return(0,b.jsx)(l.Dialog.Description,{"data-slot":"sheet-description",className:(0,i.cn)("text-muted-foreground text-sm",a),...c})}var t=a.i(82934);let u="shep-sidebar-open",v=c.createContext(null);function w(){let a=c.useContext(v);if(!a)throw Error("useSidebar must be used within a SidebarProvider.");return a}function x({defaultOpen:a=!0,open:d,onOpenChange:e,className:f,style:g,children:h,...j}){let k=function(){let[a,b]=c.useState(void 0);return c.useEffect(()=>{let a=window.matchMedia("(max-width: 767px)"),c=()=>{b(window.innerWidth<768)};return a.addEventListener("change",c),b(window.innerWidth<768),()=>a.removeEventListener("change",c)},[]),!!a}(),[l,m]=c.useState(!1),[n,o]=c.useState(a),p=d??n;c.useEffect(()=>{if(void 0!==d)return;let b=function(a){try{let b=localStorage.getItem(u);if("true"===b)return!0;if("false"===b)return!1;return a}catch{return a}}(a);b!==a&&o(b)},[]);let q=c.useCallback(a=>{let b="function"==typeof a?a(p):a;e?e(b):o(b);try{localStorage.setItem(u,String(b))}catch{}},[e,p]),r=c.useCallback(()=>k?m(a=>!a):q(a=>!a),[k,q,m]);c.useEffect(()=>{let a=a=>{"b"===a.key&&(a.metaKey||a.ctrlKey)&&(a.preventDefault(),r())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[r]);let s=p?"expanded":"collapsed",w=c.useMemo(()=>({state:s,open:p,setOpen:q,isMobile:k,openMobile:l,setOpenMobile:m,toggleSidebar:r}),[s,p,q,k,l,m,r]);return(0,b.jsx)(v.Provider,{value:w,children:(0,b.jsx)(t.TooltipProvider,{delayDuration:0,children:(0,b.jsx)("div",{"data-slot":"sidebar-wrapper",style:{"--sidebar-width":"16rem","--sidebar-width-icon":"3rem",...g},className:(0,i.cn)("group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full",f),...j,children:h})})})}function y({side:a="left",variant:c="sidebar",collapsible:d="offcanvas",className:e,children:f,...g}){let{isMobile:h,state:j,openMobile:k,setOpenMobile:l}=w();return"none"===d?(0,b.jsx)("div",{"data-slot":"sidebar",className:(0,i.cn)("bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col",e),...g,children:f}):h?(0,b.jsx)(m,{open:k,onOpenChange:l,...g,children:(0,b.jsxs)(p,{"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:a,children:[(0,b.jsxs)(q,{className:"sr-only",children:[(0,b.jsx)(r,{children:"Sidebar"}),(0,b.jsx)(s,{children:"Displays the mobile sidebar."})]}),(0,b.jsx)("div",{className:"flex h-full w-full flex-col",children:f})]})}):(0,b.jsxs)("div",{className:"group peer text-sidebar-foreground hidden md:block","data-state":j,"data-collapsible":"collapsed"===j?d:"","data-variant":c,"data-side":a,"data-slot":"sidebar",children:[(0,b.jsx)("div",{"data-slot":"sidebar-gap",className:(0,i.cn)("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180","floating"===c||"inset"===c?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon)")}),(0,b.jsx)("div",{"data-slot":"sidebar-container",className:(0,i.cn)("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex","left"===a?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]","floating"===c||"inset"===c?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",e),...g,children:(0,b.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:f})})]})}function z({className:a,...c}){let{toggleSidebar:d}=w();return(0,b.jsx)("button",{"data-sidebar":"rail","data-slot":"sidebar-rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:d,title:"Toggle Sidebar",className:(0,i.cn)("hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex","in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",a),...c})}function A({className:a,...c}){return(0,b.jsx)("main",{"data-slot":"sidebar-inset",className:(0,i.cn)("bg-background relative flex w-full flex-1 flex-col","md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2",a),...c})}function B({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-header","data-sidebar":"header",className:(0,i.cn)("flex flex-col gap-2 p-2",a),...c})}function C({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-footer","data-sidebar":"footer",className:(0,i.cn)("flex flex-col gap-2 p-2",a),...c})}function D({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-content","data-sidebar":"content",className:(0,i.cn)("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",a),...c})}function E({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-group","data-sidebar":"group",className:(0,i.cn)("relative flex w-full min-w-0 flex-col p-2",a),...c})}function F({className:a,asChild:c=!1,...d}){let e=c?h.Slot.Root:"div";return(0,b.jsx)(e,{"data-slot":"sidebar-group-label","data-sidebar":"group-label",className:(0,i.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",a),...d})}function G({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sidebar-group-content","data-sidebar":"group-content",className:(0,i.cn)("w-full text-sm",a),...c})}function H({className:a,...c}){return(0,b.jsx)("ul",{"data-slot":"sidebar-menu","data-sidebar":"menu",className:(0,i.cn)("flex w-full min-w-0 flex-col gap-1",a),...c})}function I({className:a,...c}){return(0,b.jsx)("li",{"data-slot":"sidebar-menu-item","data-sidebar":"menu-item",className:(0,i.cn)("group/menu-item relative",a),...c})}let J=(0,e.cva)("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-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"}});function K({asChild:a=!1,isActive:c=!1,variant:d="default",size:e="default",tooltip:f,className:g,...j}){let k=a?h.Slot.Root:"button",{isMobile:l,state:m}=w(),n=(0,b.jsx)(k,{"data-slot":"sidebar-menu-button","data-sidebar":"menu-button","data-size":e,"data-active":c,className:(0,i.cn)(J({variant:d,size:e}),g),...j});return f?("string"==typeof f&&(f={children:f}),(0,b.jsxs)(t.Tooltip,{children:[(0,b.jsx)(t.TooltipTrigger,{asChild:!0,children:n}),(0,b.jsx)(t.TooltipContent,{side:"right",align:"center",hidden:"collapsed"!==m||l,...f})]})):n}let L=(0,f.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);var M=a.i(12882),N=a.i(17300),O=a.i(67424),P=a.i(67837);let Q=(0,f.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"}]]);var R=a.i(66873),S=a.i(14272),T=a.i(7420),U=a.i(6175),V=a.i(79406),W=a.i(48939),X=a.i(61476),Y=a.i(48972),Z=a.i(59653),$="ScrollArea",[_,aa]=(0,T.createContextScope)($),[ab,ac]=_($),ad=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,type:f="hover",dir:g,scrollHideDelay:h=600,...i}=a,[j,k]=c.useState(null),[l,m]=c.useState(null),[n,o]=c.useState(null),[p,q]=c.useState(null),[r,s]=c.useState(null),[t,u]=c.useState(0),[v,w]=c.useState(0),[x,y]=c.useState(!1),[z,A]=c.useState(!1),B=(0,U.useComposedRefs)(d,a=>k(a)),C=(0,W.useDirection)(g);return(0,b.jsx)(ab,{scope:e,type:f,dir:C,scrollHideDelay:h,scrollArea:j,viewport:l,onViewportChange:m,content:n,onContentChange:o,scrollbarX:p,onScrollbarXChange:q,scrollbarXEnabled:x,onScrollbarXEnabledChange:y,scrollbarY:r,onScrollbarYChange:s,scrollbarYEnabled:z,onScrollbarYEnabledChange:A,onCornerWidthChange:u,onCornerHeightChange:w,children:(0,b.jsx)(R.Primitive.div,{dir:C,...i,ref:B,style:{position:"relative","--radix-scroll-area-corner-width":t+"px","--radix-scroll-area-corner-height":v+"px",...a.style}})})});ad.displayName=$;var ae="ScrollAreaViewport",af=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,children:f,nonce:g,...h}=a,i=ac(ae,e),j=c.useRef(null),k=(0,U.useComposedRefs)(d,j,i.onViewportChange);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:g}),(0,b.jsx)(R.Primitive.div,{"data-radix-scroll-area-viewport":"",...h,ref:k,style:{overflowX:i.scrollbarXEnabled?"scroll":"hidden",overflowY:i.scrollbarYEnabled?"scroll":"hidden",...a.style},children:(0,b.jsx)("div",{ref:i.onContentChange,style:{minWidth:"100%",display:"table"},children:f})})]})});af.displayName=ae;var ag="ScrollAreaScrollbar",ah=c.forwardRef((a,d)=>{let{forceMount:e,...f}=a,g=ac(ag,a.__scopeScrollArea),{onScrollbarXEnabledChange:h,onScrollbarYEnabledChange:i}=g,j="horizontal"===a.orientation;return c.useEffect(()=>(j?h(!0):i(!0),()=>{j?h(!1):i(!1)}),[j,h,i]),"hover"===g.type?(0,b.jsx)(ai,{...f,ref:d,forceMount:e}):"scroll"===g.type?(0,b.jsx)(aj,{...f,ref:d,forceMount:e}):"auto"===g.type?(0,b.jsx)(ak,{...f,ref:d,forceMount:e}):"always"===g.type?(0,b.jsx)(al,{...f,ref:d}):null});ah.displayName=ag;var ai=c.forwardRef((a,d)=>{let{forceMount:e,...f}=a,g=ac(ag,a.__scopeScrollArea),[h,i]=c.useState(!1);return c.useEffect(()=>{let a=g.scrollArea,b=0;if(a){let c=()=>{window.clearTimeout(b),i(!0)},d=()=>{b=window.setTimeout(()=>i(!1),g.scrollHideDelay)};return a.addEventListener("pointerenter",c),a.addEventListener("pointerleave",d),()=>{window.clearTimeout(b),a.removeEventListener("pointerenter",c),a.removeEventListener("pointerleave",d)}}},[g.scrollArea,g.scrollHideDelay]),(0,b.jsx)(S.Presence,{present:e||h,children:(0,b.jsx)(ak,{"data-state":h?"visible":"hidden",...f,ref:d})})}),aj=c.forwardRef((a,d)=>{var e;let{forceMount:f,...g}=a,h=ac(ag,a.__scopeScrollArea),i="horizontal"===a.orientation,j=aD(()=>l("SCROLL_END"),100),[k,l]=(e={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},c.useReducer((a,b)=>e[a][b]??a,"hidden"));return c.useEffect(()=>{if("idle"===k){let a=window.setTimeout(()=>l("HIDE"),h.scrollHideDelay);return()=>window.clearTimeout(a)}},[k,h.scrollHideDelay,l]),c.useEffect(()=>{let a=h.viewport,b=i?"scrollLeft":"scrollTop";if(a){let c=a[b],d=()=>{let d=a[b];c!==d&&(l("SCROLL"),j()),c=d};return a.addEventListener("scroll",d),()=>a.removeEventListener("scroll",d)}},[h.viewport,i,l,j]),(0,b.jsx)(S.Presence,{present:f||"hidden"!==k,children:(0,b.jsx)(al,{"data-state":"hidden"===k?"hidden":"visible",...g,ref:d,onPointerEnter:(0,Z.composeEventHandlers)(a.onPointerEnter,()=>l("POINTER_ENTER")),onPointerLeave:(0,Z.composeEventHandlers)(a.onPointerLeave,()=>l("POINTER_LEAVE"))})})}),ak=c.forwardRef((a,d)=>{let e=ac(ag,a.__scopeScrollArea),{forceMount:f,...g}=a,[h,i]=c.useState(!1),j="horizontal"===a.orientation,k=aD(()=>{if(e.viewport){let a=e.viewport.offsetWidth<e.viewport.scrollWidth,b=e.viewport.offsetHeight<e.viewport.scrollHeight;i(j?a:b)}},10);return aE(e.viewport,k),aE(e.content,k),(0,b.jsx)(S.Presence,{present:f||h,children:(0,b.jsx)(al,{"data-state":h?"visible":"hidden",...g,ref:d})})}),al=c.forwardRef((a,d)=>{let{orientation:e="vertical",...f}=a,g=ac(ag,a.__scopeScrollArea),h=c.useRef(null),i=c.useRef(0),[j,k]=c.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=ay(j.viewport,j.content),m={...f,sizes:j,onSizesChange:k,hasThumb:!!(l>0&&l<1),onThumbChange:a=>h.current=a,onThumbPointerUp:()=>i.current=0,onThumbPointerDown:a=>i.current=a};function n(a,b){return function(a,b,c,d="ltr"){let e=az(c),f=b||e/2,g=c.scrollbar.paddingStart+f,h=c.scrollbar.size-c.scrollbar.paddingEnd-(e-f),i=c.content-c.viewport;return aB([g,h],"ltr"===d?[0,i]:[-1*i,0])(a)}(a,i.current,j,b)}return"horizontal"===e?(0,b.jsx)(am,{...m,ref:d,onThumbPositionChange:()=>{if(g.viewport&&h.current){let a=aA(g.viewport.scrollLeft,j,g.dir);h.current.style.transform=`translate3d(${a}px, 0, 0)`}},onWheelScroll:a=>{g.viewport&&(g.viewport.scrollLeft=a)},onDragScroll:a=>{g.viewport&&(g.viewport.scrollLeft=n(a,g.dir))}}):"vertical"===e?(0,b.jsx)(an,{...m,ref:d,onThumbPositionChange:()=>{if(g.viewport&&h.current){let a=aA(g.viewport.scrollTop,j);h.current.style.transform=`translate3d(0, ${a}px, 0)`}},onWheelScroll:a=>{g.viewport&&(g.viewport.scrollTop=a)},onDragScroll:a=>{g.viewport&&(g.viewport.scrollTop=n(a))}}):null}),am=c.forwardRef((a,d)=>{let{sizes:e,onSizesChange:f,...g}=a,h=ac(ag,a.__scopeScrollArea),[i,j]=c.useState(),k=c.useRef(null),l=(0,U.useComposedRefs)(d,k,h.onScrollbarXChange);return c.useEffect(()=>{k.current&&j(getComputedStyle(k.current))},[k]),(0,b.jsx)(aq,{"data-orientation":"horizontal",...g,ref:l,sizes:e,style:{bottom:0,left:"rtl"===h.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===h.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":az(e)+"px",...a.style},onThumbPointerDown:b=>a.onThumbPointerDown(b.x),onDragScroll:b=>a.onDragScroll(b.x),onWheelScroll:(b,c)=>{if(h.viewport){var d,e;let f=h.viewport.scrollLeft+b.deltaX;a.onWheelScroll(f),d=f,e=c,d>0&&d<e&&b.preventDefault()}},onResize:()=>{k.current&&h.viewport&&i&&f({content:h.viewport.scrollWidth,viewport:h.viewport.offsetWidth,scrollbar:{size:k.current.clientWidth,paddingStart:ax(i.paddingLeft),paddingEnd:ax(i.paddingRight)}})}})}),an=c.forwardRef((a,d)=>{let{sizes:e,onSizesChange:f,...g}=a,h=ac(ag,a.__scopeScrollArea),[i,j]=c.useState(),k=c.useRef(null),l=(0,U.useComposedRefs)(d,k,h.onScrollbarYChange);return c.useEffect(()=>{k.current&&j(getComputedStyle(k.current))},[k]),(0,b.jsx)(aq,{"data-orientation":"vertical",...g,ref:l,sizes:e,style:{top:0,right:"ltr"===h.dir?0:void 0,left:"rtl"===h.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":az(e)+"px",...a.style},onThumbPointerDown:b=>a.onThumbPointerDown(b.y),onDragScroll:b=>a.onDragScroll(b.y),onWheelScroll:(b,c)=>{if(h.viewport){var d,e;let f=h.viewport.scrollTop+b.deltaY;a.onWheelScroll(f),d=f,e=c,d>0&&d<e&&b.preventDefault()}},onResize:()=>{k.current&&h.viewport&&i&&f({content:h.viewport.scrollHeight,viewport:h.viewport.offsetHeight,scrollbar:{size:k.current.clientHeight,paddingStart:ax(i.paddingTop),paddingEnd:ax(i.paddingBottom)}})}})}),[ao,ap]=_(ag),aq=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,sizes:f,hasThumb:g,onThumbChange:h,onThumbPointerUp:i,onThumbPointerDown:j,onThumbPositionChange:k,onDragScroll:l,onWheelScroll:m,onResize:n,...o}=a,p=ac(ag,e),[q,r]=c.useState(null),s=(0,U.useComposedRefs)(d,a=>r(a)),t=c.useRef(null),u=c.useRef(""),v=p.viewport,w=f.content-f.viewport,x=(0,V.useCallbackRef)(m),y=(0,V.useCallbackRef)(k),z=aD(n,10);function A(a){t.current&&l({x:a.clientX-t.current.left,y:a.clientY-t.current.top})}return c.useEffect(()=>{let a=a=>{let b=a.target;q?.contains(b)&&x(a,w)};return document.addEventListener("wheel",a,{passive:!1}),()=>document.removeEventListener("wheel",a,{passive:!1})},[v,q,w,x]),c.useEffect(y,[f,y]),aE(q,z),aE(p.content,z),(0,b.jsx)(ao,{scope:e,scrollbar:q,hasThumb:g,onThumbChange:(0,V.useCallbackRef)(h),onThumbPointerUp:(0,V.useCallbackRef)(i),onThumbPositionChange:y,onThumbPointerDown:(0,V.useCallbackRef)(j),children:(0,b.jsx)(R.Primitive.div,{...o,ref:s,style:{position:"absolute",...o.style},onPointerDown:(0,Z.composeEventHandlers)(a.onPointerDown,a=>{0===a.button&&(a.target.setPointerCapture(a.pointerId),t.current=q.getBoundingClientRect(),u.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",p.viewport&&(p.viewport.style.scrollBehavior="auto"),A(a))}),onPointerMove:(0,Z.composeEventHandlers)(a.onPointerMove,A),onPointerUp:(0,Z.composeEventHandlers)(a.onPointerUp,a=>{let b=a.target;b.hasPointerCapture(a.pointerId)&&b.releasePointerCapture(a.pointerId),document.body.style.webkitUserSelect=u.current,p.viewport&&(p.viewport.style.scrollBehavior=""),t.current=null})})})}),ar="ScrollAreaThumb",as=c.forwardRef((a,c)=>{let{forceMount:d,...e}=a,f=ap(ar,a.__scopeScrollArea);return(0,b.jsx)(S.Presence,{present:d||f.hasThumb,children:(0,b.jsx)(at,{ref:c,...e})})}),at=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,style:f,...g}=a,h=ac(ar,e),i=ap(ar,e),{onThumbPositionChange:j}=i,k=(0,U.useComposedRefs)(d,a=>i.onThumbChange(a)),l=c.useRef(void 0),m=aD(()=>{l.current&&(l.current(),l.current=void 0)},100);return c.useEffect(()=>{let a=h.viewport;if(a){let b=()=>{m(),l.current||(l.current=aC(a,j),j())};return j(),a.addEventListener("scroll",b),()=>a.removeEventListener("scroll",b)}},[h.viewport,m,j]),(0,b.jsx)(R.Primitive.div,{"data-state":i.hasThumb?"visible":"hidden",...g,ref:k,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...f},onPointerDownCapture:(0,Z.composeEventHandlers)(a.onPointerDownCapture,a=>{let b=a.target.getBoundingClientRect(),c=a.clientX-b.left,d=a.clientY-b.top;i.onThumbPointerDown({x:c,y:d})}),onPointerUp:(0,Z.composeEventHandlers)(a.onPointerUp,i.onThumbPointerUp)})});as.displayName=ar;var au="ScrollAreaCorner",av=c.forwardRef((a,c)=>{let d=ac(au,a.__scopeScrollArea),e=!!(d.scrollbarX&&d.scrollbarY);return"scroll"!==d.type&&e?(0,b.jsx)(aw,{...a,ref:c}):null});av.displayName=au;var aw=c.forwardRef((a,d)=>{let{__scopeScrollArea:e,...f}=a,g=ac(au,e),[h,i]=c.useState(0),[j,k]=c.useState(0),l=!!(h&&j);return aE(g.scrollbarX,()=>{let a=g.scrollbarX?.offsetHeight||0;g.onCornerHeightChange(a),k(a)}),aE(g.scrollbarY,()=>{let a=g.scrollbarY?.offsetWidth||0;g.onCornerWidthChange(a),i(a)}),l?(0,b.jsx)(R.Primitive.div,{...f,ref:d,style:{width:h,height:j,position:"absolute",right:"ltr"===g.dir?0:void 0,left:"rtl"===g.dir?0:void 0,bottom:0,...a.style}}):null});function ax(a){return a?parseInt(a,10):0}function ay(a,b){let c=a/b;return isNaN(c)?0:c}function az(a){let b=ay(a.viewport,a.content),c=a.scrollbar.paddingStart+a.scrollbar.paddingEnd;return Math.max((a.scrollbar.size-c)*b,18)}function aA(a,b,c="ltr"){let d=az(b),e=b.scrollbar.paddingStart+b.scrollbar.paddingEnd,f=b.scrollbar.size-e,g=b.content-b.viewport,h=(0,Y.clamp)(a,"ltr"===c?[0,g]:[-1*g,0]);return aB([0,g],[0,f-d])(h)}function aB(a,b){return c=>{if(a[0]===a[1]||b[0]===b[1])return b[0];let d=(b[1]-b[0])/(a[1]-a[0]);return b[0]+d*(c-a[0])}}var aC=(a,b=()=>{})=>{let c={left:a.scrollLeft,top:a.scrollTop},d=0;return!function e(){let f={left:a.scrollLeft,top:a.scrollTop},g=c.left!==f.left,h=c.top!==f.top;(g||h)&&b(),c=f,d=window.requestAnimationFrame(e)}(),()=>window.cancelAnimationFrame(d)};function aD(a,b){let d=(0,V.useCallbackRef)(a),e=c.useRef(0);return c.useEffect(()=>()=>window.clearTimeout(e.current),[]),c.useCallback(()=>{window.clearTimeout(e.current),e.current=window.setTimeout(d,b)},[d,b])}function aE(a,b){let c=(0,V.useCallbackRef)(b);(0,X.useLayoutEffect)(()=>{let b=0;if(a){let d=new ResizeObserver(()=>{cancelAnimationFrame(b),b=window.requestAnimationFrame(c)});return d.observe(a),()=>{window.cancelAnimationFrame(b),d.unobserve(a)}}},[a,c])}a.s(["Corner",()=>av,"Root",()=>ad,"ScrollArea",()=>ad,"ScrollAreaCorner",()=>av,"ScrollAreaScrollbar",()=>ah,"ScrollAreaThumb",()=>as,"ScrollAreaViewport",()=>af,"Scrollbar",()=>ah,"Thumb",()=>as,"Viewport",()=>af,"createScrollAreaScope",()=>aa],73942);var aF=a.i(73942),aF=aF;function aG({className:a,children:c,...d}){return(0,b.jsxs)(aF.Root,{"data-slot":"scroll-area",className:(0,i.cn)("relative",a),...d,children:[(0,b.jsx)(aF.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1 [&>div]:block!",children:c}),(0,b.jsx)(aH,{}),(0,b.jsx)(aF.Corner,{})]})}function aH({className:a,orientation:c="vertical",...d}){return(0,b.jsx)(aF.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:c,className:(0,i.cn)("flex touch-none p-px transition-colors select-none","vertical"===c&&"h-full w-2.5 border-l border-l-transparent","horizontal"===c&&"h-2.5 flex-col border-t border-t-transparent",a),...d,children:(0,b.jsx)(aF.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}var aI=a.i(56109),aJ=a.i(19884);function aK({icon:a,label:c,href:d,active:e=!1}){let f=(0,aJ.useSoundAction)("navigate");return(0,b.jsx)(I,{"data-testid":"sidebar-nav-item",children:(0,b.jsx)(K,{asChild:!0,isActive:e,tooltip:c,children:(0,b.jsxs)(aI.default,{href:d,onClick:()=>f.play(),children:[(0,b.jsx)(a,{}),(0,b.jsx)("span",{children:c})]})})})}function aL({className:a}){let{toggleSidebar:c,open:d}=w(),e=(0,aJ.useSoundAction)("expand"),f=(0,aJ.useSoundAction)("collapse");return(0,b.jsx)("div",{className:(0,i.cn)("flex",a),children:(0,b.jsx)(j.Button,{"data-testid":"sidebar-collapse-toggle",variant:"ghost",size:"icon",className:"size-7 cursor-pointer group-data-[collapsible=icon]:size-8!",onClick:()=>{d?f.play():e.play(),c()},"aria-label":d?"Collapse sidebar":"Expand sidebar",children:(0,b.jsx)(g,{className:"size-4"})})})}function aM({className:a,size:c=24,variant:d="default"}){return(0,b.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 194 200",width:c,height:c,className:(0,i.cn)("shrink-0","dev"===d&&"text-cyan-400",a),"aria-hidden":"true",children:(0,b.jsx)("g",{transform:"matrix(1, 0, 0, 1, -111, -208)",children:(0,b.jsx)("path",{d:"M 198 406 C196,405 194,403 193,401 C192,399 191,398 186,398 C178,397 174,394 170,387 L 168 381 L 163 381 C156,381 150,377 147,370 C144,364 143,359 146,353 C148,348 148,347 147,347 C145,347 140,343 138,339 C133,329 139,314 149,311 L 152 311 L 149 307 C145,302 145,294 149,290 C151,288 152,287 151,286 C150,283 152,278 155,276 C156,275 159,274 162,273 C165,273 166,273 168,276 C171,278 171,280 172,287 C173,294 174,297 177,304 C180,309 182,314 183,316 C186,327 193,336 199,339 C204,342 211,342 216,340 C222,336 231,324 234,314 C235,312 237,307 239,302 C240,298 242,292 242,289 C243,281 245,278 247,275 C250,273 251,273 255,273 C261,274 264,278 264,282 C264,284 264,286 263,287 C262,287 263,288 265,290 C272,295 272,303 267,309 L 265 312 L 269 314 C276,317 279,323 279,332 C279,339 277,343 272,347 C268,351 268,351 269,354 C272,358 271,366 269,371 C266,376 259,381 254,381 C252,381 251,382 248,386 C242,395 234,400 227,399 C224,398 223,398 221,401 C220,403 217,405 216,406 C211,409 203,409 198,406 ZM 136 271 C123,267 115,262 113,256 C111,251 111,251 113,251 C118,254 124,254 132,252 C136,252 141,251 144,251 C149,251 157,253 162,256 C166,258 166,258 166,264 L 166 269 L 160 270 C149,272 142,272 136,271 ZM 264 271 C263,271 259,270 256,270 L 250 270 L 250 265 C249,259 250,257 259,254 C265,251 272,251 289,252 C297,253 299,253 302,252 C305,250 305,250 305,252 C305,255 301,262 297,264 C289,270 272,273 264,271 ZM 162 249 C160,247 159,245 159,242 C159,236 164,230 169,230 C170,230 171,228 171,225 C171,216 176,210 184,209 C189,209 195,211 195,213 C195,214 196,213 197,212 C201,209 204,208 208,208 C212,208 217,210 219,212 C220,214 220,213 223,211 C226,208 234,208 239,211 C243,214 246,221 246,226 C245,230 245,230 247,230 C253,230 258,238 257,244 C256,249 251,252 245,252 C241,252 237,251 234,248 C232,247 232,247 228,249 C225,251 222,252 220,252 C216,252 212,250 210,247 C209,246 209,246 206,248 C201,252 192,253 185,248 C183,247 183,247 178,249 C172,253 166,253 162,249 ZM 116 249 C112,248 114,247 119,247 C122,247 127,246 130,245 C138,242 146,242 152,245 L 158 248 L 148 247 C142,247 138,247 133,248 C128,250 120,250 116,249 ZM 284 248 C281,247 277,247 270,247 L 260 248 L 263 246 C269,243 276,242 284,245 C289,246 295,247 298,247 C303,247 304,247 303,248 C301,250 289,250 284,248 Z",fill:"currentColor"})})})}function aN({version:a,branch:d,commitHash:e,isDev:f=!1,packageName:g="@shepai/cli",description:h,instancePath:i}){let j=e?.slice(0,7),{latest:k,updateAvailable:l}=function(a){let[b,d]=(0,c.useState)(null),[e,f]=(0,c.useState)(!0);(0,c.useEffect)(()=>{let a=!1;return async function(){try{let b=await fetch("/api/npm-version");if(!b.ok)return;let c=await b.json();!a&&c.latest&&d(c.latest)}catch{}finally{a||f(!1)}}(),()=>{a=!0}},[]);let g=null!==b&&function(a,b){let c=a=>a.split("-")[0].split(".").map(Number),d=c(a),e=c(b);for(let a=0;a<3;a++){let b=d[a]??0,c=e[a]??0;if(b>c)return 1;if(b<c)return -1}return 0}(b,a)>0;return{latest:b,updateAvailable:g,loading:e}}(a),{status:m,startUpgrade:n}=function(){let[a,b]=(0,c.useState)("idle"),[d,e]=(0,c.useState)(""),[f,g]=(0,c.useState)(),h=(0,c.useRef)(null),i=(0,c.useCallback)(()=>{if("upgrading"===a)return;b("upgrading"),e(""),g(void 0);let c=new AbortController;return h.current=c,fetch("/api/cli-upgrade",{method:"POST",signal:c.signal}).then(async a=>{if(!a.ok||!a.body){b("error"),g(`Server returned ${a.status}`);return}let c=a.body.getReader(),d=new TextDecoder,f="";for(;;){let{done:a,value:h}=await c.read();if(a)break;let i=(f+=d.decode(h,{stream:!0})).split("\n");for(let a of(f=i.pop()??"",i))if(!a.startsWith("event: done")&&a.startsWith("data: ")){let c=a.slice(6);try{let a=JSON.parse(c);"upgraded"===a.status?b("upgraded"):"up-to-date"===a.status?b("up-to-date"):"error"===a.status&&(b("error"),g(a.errorMessage))}catch{e(a=>a+c)}}}}).catch(a=>{a instanceof DOMException&&"AbortError"===a.name||(b("error"),g(a instanceof Error?a.message:"Upgrade failed"))}),()=>{c.abort()}},[a]);return{status:a,output:d,errorMessage:f,startUpgrade:i}}(),o=f?`${a}-dev`:`v${a}`,p="upgrading"===m,q="upgraded"===m;return(0,b.jsx)(t.TooltipProvider,{delayDuration:200,children:(0,b.jsxs)(t.Tooltip,{children:[(0,b.jsx)(t.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)("span",{className:"text-muted-foreground/80 hover:text-muted-foreground relative cursor-default text-[11px] leading-tight transition-colors","data-testid":"version-label",children:[o,l&&!q?(0,b.jsx)("span",{className:"absolute -top-0.5 -right-1.5 size-1.5 rounded-full bg-emerald-400","data-testid":"update-dot"}):null]})}),(0,b.jsxs)(t.TooltipContent,{side:"right",className:"max-w-[280px] space-y-1 p-3 text-left",children:[(0,b.jsx)("div",{className:"mb-1.5 text-xs font-semibold",children:g}),h?(0,b.jsx)("div",{className:"text-[10px] leading-snug opacity-70",children:h}):null,(0,b.jsxs)("div",{className:"border-t border-white/10 pt-1.5",children:[(0,b.jsx)(aO,{label:"Version",value:o}),f&&d?(0,b.jsx)(aO,{label:"Branch",value:d}):null,f&&j?(0,b.jsx)(aO,{label:"Commit",value:j,mono:!0}):null,f&&i?(0,b.jsx)(aO,{label:"Path",value:i,mono:!0}):null,k?(0,b.jsx)(aO,{label:"Latest",value:`v${k}`,highlight:l}):null]}),q?(0,b.jsx)("div",{className:"border-t border-white/10 pt-1.5",children:(0,b.jsx)("span",{className:"text-[10px] font-medium text-emerald-400","data-testid":"upgrade-success",children:"Upgraded successfully — restart to apply"})}):"error"===m?(0,b.jsx)("div",{className:"border-t border-white/10 pt-1.5",children:(0,b.jsx)("span",{className:"text-[10px] font-medium text-red-400","data-testid":"upgrade-error",children:"Upgrade failed"})}):l?(0,b.jsx)("div",{className:"border-t border-white/10 pt-1.5",children:(0,b.jsx)("button",{type:"button",onClick:n,disabled:p,className:"inline-flex items-center gap-1 text-[10px] font-medium text-emerald-400 transition-colors hover:text-emerald-300 disabled:opacity-50","data-testid":"upgrade-button",children:p?"Upgrading...":`Upgrade to v${k}`})}):null]})]})})}function aO({label:a,value:c,highlight:d,mono:e}){return(0,b.jsxs)("div",{className:"flex items-center justify-between gap-4 text-[10px]",children:[(0,b.jsx)("span",{className:"opacity-60",children:a}),(0,b.jsx)("span",{className:[d?"font-medium text-emerald-400":"",e||!d?"font-mono":""].filter(Boolean).join(" "),children:c})]})}function aP({startedAt:a}){let[d,e]=(0,c.useState)(()=>Date.now()-a);return(0,c.useEffect)(()=>{let b=setInterval(()=>{(0,c.startTransition)(()=>e(Date.now()-a))},1e3);return()=>clearInterval(b)},[a]),(0,b.jsx)("span",{"data-testid":"elapsed-time",className:"tabular-nums",children:function(a){let b=Math.floor(a/1e3);if(b>=3600){let a=Math.floor(b/3600);return`${a}h`}let c=Math.floor(b/60);return`${String(c).padStart(2,"0")}:${String(b%60).padStart(2,"0")}`}(d)})}var aQ=a.i(82697),aR=a.i(88064),aS=a.i(67273),aT=a.i(93866),aU=a.i(84579);let aV={"action-needed":{icon:aQ.CircleAlert,iconClass:"text-amber-500",bgClass:"bg-amber-500/10",label:"Action Needed"},"in-progress":{icon:aR.Loader2,iconClass:"text-blue-500 animate-spin",bgClass:"bg-blue-500/10",label:"In Progress"},blocked:{icon:aT.Ban,iconClass:"text-gray-400",bgClass:"bg-gray-400/10",label:"Blocked"},error:{icon:aU.CircleX,iconClass:"text-red-500",bgClass:"bg-red-500/10",label:"Error"},done:{icon:aS.CircleCheck,iconClass:"text-emerald-500",bgClass:"bg-emerald-500/10",label:"Done"}},aW=["action-needed","error","blocked","in-progress","done"];var aX=a.i(17606),aY=a.i(83852);function aZ({name:a,status:c,startedAt:d,duration:e,agentType:f,modelId:g,onClick:h}){let{icon:i,iconClass:j}=aV[c],k=f?(0,aX.getAgentTypeIcon)(f):null;return(0,b.jsx)(I,{"data-testid":"feature-list-item",children:(0,b.jsxs)(K,{size:"sm",onClick:h,tooltip:a,className:"cursor-pointer",children:[(0,b.jsx)(i,{className:j}),(0,b.jsx)("span",{className:"flex-1 truncate font-medium",children:a}),"in-progress"===c&&null!=d?(0,b.jsx)("span",{"data-testid":"feature-list-item-meta",className:"text-muted-foreground ml-auto text-xs tabular-nums",children:(0,b.jsx)(aP,{startedAt:d})}):null,"done"===c&&e?(0,b.jsx)("span",{"data-testid":"feature-list-item-meta",className:"text-muted-foreground ml-auto text-xs tabular-nums",children:e}):null,k?(0,b.jsx)(t.TooltipProvider,{children:(0,b.jsxs)(t.Tooltip,{children:[(0,b.jsx)(t.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"ml-auto shrink-0",children:(0,b.jsx)(k,{className:"h-3.5 w-3.5"})})}),(0,b.jsxs)(t.TooltipContent,{side:"right",children:[(0,b.jsx)("span",{className:"font-medium",children:aX.agentTypeLabels[f]??f}),g?(0,b.jsxs)("span",{className:"ml-1 opacity-70",children:["· ",(0,aY.getModelMeta)(g).displayName||g]}):null]})]})}):null]})})}function a$({label:a,count:c,children:d}){return(0,b.jsxs)(E,{"data-testid":"feature-status-group",className:"px-2 py-1",children:[(0,b.jsxs)(F,{className:"text-muted-foreground h-6 px-2 text-[0.65rem] font-semibold tracking-wider uppercase",children:[a,(0,b.jsx)("span",{"aria-label":`${c} items`,className:"bg-sidebar-accent text-sidebar-accent-foreground ml-1.5 inline-flex h-4 min-w-4 items-center justify-center rounded-full px-1 text-[0.6rem] font-medium tabular-nums",role:"img",children:c})]}),(0,b.jsx)(G,{children:(0,b.jsx)(H,{className:"gap-0.5",children:d})})]})}function a_({label:a,className:c}){return(0,b.jsx)(E,{"data-testid":"sidebar-section-header",className:(0,i.cn)("px-2 py-1",c),children:(0,b.jsx)("div",{className:"text-sidebar-foreground flex h-7 w-full shrink-0 items-center px-2 text-sm font-medium",children:(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate",children:a})})})}let a0={version:"unknown",packageName:"@shepai/cli",description:"Autonomous AI Native SDLC Platform",branch:"",commitHash:"",instancePath:"",isDev:!1};function a1({features:a,featureFlags:e,showNewFeature:f=!1,onNewFeature:g,onFeatureClick:h}){let i=(0,d.usePathname)(),{state:j}=w(),{mounted:k,visible:l}=function(a,b){let[d,e]=(0,c.useState)(!a),[f,g]=(0,c.useState)(!a);return(0,c.useEffect)(()=>{if(!a){e(!0);let a=requestAnimationFrame(()=>g(!0));return()=>cancelAnimationFrame(a)}g(!1);let b=window.setTimeout(()=>e(!1),200);return()=>window.clearTimeout(b)},[a,200]),{mounted:d,visible:f}}("collapsed"===j,0),m=function(){let[a,b]=(0,c.useState)(a0);return(0,c.useEffect)(()=>{let a=!1;return async function(){try{let c=await fetch("/api/version");if(!c.ok)return;let d=await c.json();a||b(d)}catch{}}(),()=>{a=!0}},[]),a}(),n=aW.map(b=>{let{label:c}=aV[b],d=a.filter(a=>a.status===b);return{key:b,label:c,items:d}});return(0,b.jsxs)(y,{"data-testid":"app-sidebar","data-no-drawer-close":!0,collapsible:"icon",children:[(0,b.jsx)(B,{children:(0,b.jsxs)(H,{children:[(0,b.jsx)(I,{children:(0,b.jsxs)("div",{className:"flex h-8 items-center group-data-[collapsible=icon]:justify-center",children:[k?(0,b.jsxs)("div",{className:["flex min-w-0 flex-1 items-center gap-2 overflow-hidden px-2 transition-opacity duration-200 ease-out",l?"opacity-100":"opacity-0"].join(" "),"aria-hidden":!l,children:[(0,b.jsx)(aM,{className:"shrink-0",size:20,variant:m.isDev?"dev":"default"}),(0,b.jsx)("span",{className:"truncate text-sm font-semibold tracking-tight",children:"Shep"}),(0,b.jsx)(aN,{version:m.version,branch:m.branch||void 0,commitHash:m.commitHash||void 0,isDev:m.isDev,packageName:m.packageName,description:m.description,instancePath:m.instancePath||void 0})]}):null,(0,b.jsx)(aL,{className:"shrink-0 transition-all duration-200"})]})}),(0,b.jsx)(aK,{icon:L,label:"Control Center",href:"/",active:"/"===i}),e.chat?(0,b.jsx)(aK,{icon:M.MessageSquare,label:"Chat",href:"/chat",active:"/chat"===i}):null,(0,b.jsx)(aK,{icon:N.Wrench,label:"Tools",href:"/tools",active:"/tools"===i}),e.skills?(0,b.jsx)(aK,{icon:O.Puzzle,label:"Skills",href:"/skills",active:"/skills"===i}):null,(0,b.jsx)(aK,{icon:Q,label:"Settings",href:"/settings",active:"/settings"===i})]})}),(0,b.jsx)(D,{children:k?(0,b.jsxs)("div",{className:["min-w-0 overflow-hidden transition-opacity duration-200 ease-out [&_[data-sidebar=group-label]]:!mt-0 [&_[data-sidebar=group-label]]:!opacity-100 [&_[data-sidebar=group-label]]:!transition-none",l?"opacity-100":"opacity-0"].join(" "),children:[(0,b.jsx)(a_,{label:"Features"}),(0,b.jsx)(aG,{children:n.map(({key:a,label:c,items:d})=>d.length>0?(0,b.jsx)(a$,{label:c,count:d.length,children:d.map(a=>(0,b.jsx)(aZ,{name:a.name,status:a.status,startedAt:a.startedAt,duration:a.duration,agentType:a.agentType,modelId:a.modelId,onClick:h?()=>h(a.featureId):void 0},a.featureId))},a):null)})]}):null}),f?(0,b.jsx)(C,{children:(0,b.jsx)(H,{children:(0,b.jsx)(I,{children:(0,b.jsxs)(K,{onClick:g,tooltip:"New feature",children:[(0,b.jsx)(P.Plus,{}),(0,b.jsx)("span",{children:"New feature"})]})})})}):null,(0,b.jsx)(z,{})]})}let a2=(0,f.default)("folder-plus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);var a3=a.i(1377);function a4({onSelect:a}){let[d,e]=(0,c.useState)(!1);async function f(){if(!d){e(!0);try{let b=await (0,a3.pickFolder)();b&&a?.(b)}finally{e(!1)}}}return(0,b.jsx)(t.TooltipProvider,{children:(0,b.jsxs)(t.Tooltip,{children:[(0,b.jsx)(t.TooltipTrigger,{asChild:!0,children:(0,b.jsx)(j.Button,{variant:"ghost",size:"icon","aria-label":"Add Repository","data-testid":"add-repository-button",onClick:f,disabled:d,children:d?(0,b.jsx)(aR.Loader2,{className:"h-5 w-5 animate-spin"}):(0,b.jsx)(a2,{className:"h-5 w-5"})})}),(0,b.jsx)(t.TooltipContent,{children:"Add Repository"})]})})}let a5=(0,f.default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]),a6=(0,f.default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),a7="shep-theme";function a8(){let{theme:a,resolvedTheme:d,setTheme:e}=function(){let[a,b]=(0,c.useState)("system"),[d,e]=(0,c.useState)("light"),f=(0,c.useCallback)(()=>"light",[]),g=(0,c.useCallback)(a=>"system"===a?f():a,[f]),h=(0,c.useCallback)(a=>{if("u"<typeof document)return;let b=document.documentElement;b.classList.remove("light","dark"),b.classList.add(a),e(a)},[]),i=(0,c.useCallback)(a=>{b(a),"u">typeof localStorage&&localStorage.setItem(a7,a),h(g(a))},[g,h]);return(0,c.useEffect)(()=>{let a=localStorage.getItem(a7)??"system";b(a),h(g(a))},[g,h]),(0,c.useEffect)(()=>{},[a,g,h]),{theme:a,resolvedTheme:d,setTheme:i}}(),f=(0,aJ.useSoundAction)("toggle-on"),g=(0,aJ.useSoundAction)("toggle-off");return(0,b.jsxs)(j.Button,{variant:"ghost",size:"icon",onClick:b=>{let c="system"===a?"dark"===d?"light":"dark":"dark"===a?"light":"dark";("dark"!==("system"===a?d:a)?f.play():g.play(),document.startViewTransition)?(document.documentElement.style.setProperty("--x",`${b.clientX}px`),document.documentElement.style.setProperty("--y",`${b.clientY}px`),document.startViewTransition(()=>{e(c)})):e(c)},"aria-label":`Switch to ${"dark"===d?"light":"dark"} mode`,children:[(0,b.jsx)(a6,{className:"h-5 w-5 scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90"}),(0,b.jsx)(a5,{className:"absolute h-5 w-5 scale-0 rotate-90 transition-all dark:scale-100 dark:rotate-0"}),(0,b.jsx)("span",{className:"sr-only",children:"Toggle theme"})]})}let a9=(0,f.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"}]]),ba=(0,f.default)("volume-off",[["path",{d:"M16 9a5 5 0 0 1 .95 2.293",key:"1fgyg8"}],["path",{d:"M19.364 5.636a9 9 0 0 1 1.889 9.96",key:"l3zxae"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"m7 7-.587.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.298V11",key:"1gbwow"}],["path",{d:"M9.828 4.172A.686.686 0 0 1 11 4.657v.686",key:"s2je0y"}]]);var bb=a.i(2103);function bc(){let{enabled:a,toggle:c}=(0,bb.useSoundEnabled)();return(0,b.jsxs)(j.Button,{variant:"ghost",size:"icon",onClick:c,"aria-label":a?"Mute sounds":"Unmute sounds",children:[a?(0,b.jsx)(a9,{className:"h-5 w-5"}):(0,b.jsx)(ba,{className:"h-5 w-5"}),(0,b.jsx)("span",{className:"sr-only",children:"Toggle sound"})]})}var bd=a.i(84871),be=a.i(96213),bf=a.i(1356),bg=a.i(52313),bh=a.i(46847);let bi={[bh.NotificationSeverity.Success]:"success",[bh.NotificationSeverity.Error]:"error",[bh.NotificationSeverity.Warning]:"warning",[bh.NotificationSeverity.Info]:"info"},bj={[bh.NotificationSeverity.Success]:"notification-success",[bh.NotificationSeverity.Error]:"notification-error",[bh.NotificationSeverity.Warning]:"notification-warning",[bh.NotificationSeverity.Info]:"notification-info"};var bk=a.i(21333);function bl({children:a}){let e=(0,d.useRouter)(),{guardedNavigate:f}=(0,be.useDrawerCloseGuard)(),g=(0,bk.useFeatureFlags)();!function(){let a=(0,d.useRouter)(),{events:b}=(0,bd.useAgentEventsContext)(),e=(0,aJ.useSoundAction)("notification-success"),f=(0,aJ.useSoundAction)("notification-error"),g=(0,aJ.useSoundAction)("notification-warning"),h=(0,aJ.useSoundAction)("notification-info"),i=(0,c.useMemo)(()=>({"notification-success":e,"notification-error":f,"notification-warning":g,"notification-info":h}),[e,f,g,h]),j=(0,c.useRef)(0);(0,c.useEffect)(()=>{if(b.length<=j.current)return;let c=b.slice(j.current);for(let d of(j.current=b.length,c)){if(d.severity!==bh.NotificationSeverity.Error&&d.severity!==bh.NotificationSeverity.Warning&&d.severity!==bh.NotificationSeverity.Success)continue;!function(a,b){let c=bi[a.severity]??"info",d=a.eventType===bh.NotificationEventType.WaitingApproval;bg.toast[c](a.featureName,{description:a.message,...d&&b&&{action:{label:"Review",onClick:()=>{b(`/feature/${a.featureId}`)}}}})}(d,b=>a.push(b));let b=bj[d.severity];i[b]?.play()}},[b,i,a])}();let{features:h}=(0,bf.useSidebarFeaturesContext)(),i=(0,c.useCallback)(()=>{f(()=>e.push("/create"))},[e,f]),j=(0,c.useCallback)(a=>{f(()=>e.push(`/feature/${a}`))},[e,f]),k=(0,c.useCallback)(a=>{window.dispatchEvent(new CustomEvent("shep:add-repository",{detail:{path:a}}))},[]);return(0,b.jsxs)(x,{defaultOpen:!1,children:[(0,b.jsx)(a1,{features:h,featureFlags:g,onNewFeature:i,onFeatureClick:j}),(0,b.jsx)(A,{children:(0,b.jsxs)("div",{className:"relative h-full",children:[(0,b.jsxs)("div",{className:"absolute top-3 right-3 z-50 flex gap-1",children:[(0,b.jsx)(a4,{onSelect:k}),(0,b.jsx)(bc,{}),(0,b.jsx)(a8,{})]}),(0,b.jsx)("main",{className:"h-full",children:a})]})})]})}function bm({children:a}){return(0,b.jsx)(bd.AgentEventsProvider,{children:(0,b.jsx)(be.DrawerCloseGuardProvider,{children:(0,b.jsx)(bf.SidebarFeaturesProvider,{children:(0,b.jsx)(bl,{children:a})})})})}a.s(["AppShell",()=>bm],66560)},17994,a=>{"use strict";var b=a.i(10973),c=a.i(52313);let d=({...a})=>(0,b.jsx)(c.Toaster,{className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...a});a.s(["Toaster",()=>d])}];
2
2
 
3
3
  //# sourceMappingURL=src_presentation_web_components_e599bb8c._.js.map