@shepai/cli 1.77.1 → 1.77.2-pr240.0ae5c6e

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 (674) hide show
  1. package/apis/json-schema/FeatureFlags.yaml +21 -0
  2. package/apis/json-schema/Settings.yaml +3 -0
  3. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  4. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +7 -2
  5. package/dist/packages/core/src/domain/generated/output.d.ts +21 -0
  6. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  7. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  8. package/dist/packages/core/src/infrastructure/di/container.js +6 -0
  9. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +6 -0
  10. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  11. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +17 -0
  12. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts.map +1 -1
  13. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.js +27 -0
  14. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  15. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +13 -3
  16. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.d.ts.map +1 -1
  17. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/node-helpers.js +1 -2
  18. package/dist/packages/core/src/infrastructure/services/settings.service.d.ts +10 -0
  19. package/dist/packages/core/src/infrastructure/services/settings.service.d.ts.map +1 -1
  20. package/dist/packages/core/src/infrastructure/services/settings.service.js +15 -0
  21. package/dist/src/presentation/web/app/actions/load-settings.d.ts +9 -0
  22. package/dist/src/presentation/web/app/actions/load-settings.d.ts.map +1 -0
  23. package/dist/src/presentation/web/app/actions/load-settings.js +33 -0
  24. package/dist/src/presentation/web/app/actions/update-settings.d.ts +11 -0
  25. package/dist/src/presentation/web/app/actions/update-settings.d.ts.map +1 -0
  26. package/dist/src/presentation/web/app/actions/update-settings.js +45 -0
  27. package/dist/src/presentation/web/app/global-error.d.ts +7 -0
  28. package/dist/src/presentation/web/app/global-error.d.ts.map +1 -0
  29. package/dist/src/presentation/web/app/global-error.js +5 -0
  30. package/dist/src/presentation/web/app/layout.d.ts.map +1 -1
  31. package/dist/src/presentation/web/app/layout.js +3 -1
  32. package/dist/src/presentation/web/app/settings/page.d.ts +4 -0
  33. package/dist/src/presentation/web/app/settings/page.d.ts.map +1 -0
  34. package/dist/src/presentation/web/app/settings/page.js +12 -0
  35. package/dist/src/presentation/web/components/common/base-drawer/base-drawer.d.ts.map +1 -1
  36. package/dist/src/presentation/web/components/common/base-drawer/base-drawer.js +2 -1
  37. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
  38. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +2 -1
  39. package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.d.ts.map +1 -1
  40. package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.js +2 -1
  41. package/dist/src/presentation/web/components/common/editor-type-icons.d.ts +8 -0
  42. package/dist/src/presentation/web/components/common/editor-type-icons.d.ts.map +1 -0
  43. package/dist/src/presentation/web/components/common/editor-type-icons.js +42 -0
  44. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.d.ts.map +1 -1
  45. package/dist/src/presentation/web/components/common/feature-node/derive-feature-state.js +2 -1
  46. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +1 -1
  47. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
  48. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.js +2 -0
  49. package/dist/src/presentation/web/components/common/repository-node/repository-node.d.ts.map +1 -1
  50. package/dist/src/presentation/web/components/common/repository-node/repository-node.js +2 -1
  51. package/dist/src/presentation/web/components/common/review-drawer-shell/review-drawer-shell.d.ts.map +1 -1
  52. package/dist/src/presentation/web/components/common/review-drawer-shell/review-drawer-shell.js +2 -1
  53. package/dist/src/presentation/web/components/features/settings/agent-settings-section.d.ts +6 -0
  54. package/dist/src/presentation/web/components/features/settings/agent-settings-section.d.ts.map +1 -0
  55. package/dist/src/presentation/web/components/features/settings/agent-settings-section.js +75 -0
  56. package/dist/src/presentation/web/components/features/settings/agent-settings-section.stories.d.ts +16 -0
  57. package/dist/src/presentation/web/components/features/settings/agent-settings-section.stories.d.ts.map +1 -0
  58. package/dist/src/presentation/web/components/features/settings/agent-settings-section.stories.js +36 -0
  59. package/dist/src/presentation/web/components/features/settings/database-settings-section.d.ts +6 -0
  60. package/dist/src/presentation/web/components/features/settings/database-settings-section.d.ts.map +1 -0
  61. package/dist/src/presentation/web/components/features/settings/database-settings-section.js +8 -0
  62. package/dist/src/presentation/web/components/features/settings/database-settings-section.stories.d.ts +15 -0
  63. package/dist/src/presentation/web/components/features/settings/database-settings-section.stories.d.ts.map +1 -0
  64. package/dist/src/presentation/web/components/features/settings/database-settings-section.stories.js +22 -0
  65. package/dist/src/presentation/web/components/features/settings/environment-settings-section.d.ts +6 -0
  66. package/dist/src/presentation/web/components/features/settings/environment-settings-section.d.ts.map +1 -0
  67. package/dist/src/presentation/web/components/features/settings/environment-settings-section.js +54 -0
  68. package/dist/src/presentation/web/components/features/settings/environment-settings-section.stories.d.ts +15 -0
  69. package/dist/src/presentation/web/components/features/settings/environment-settings-section.stories.d.ts.map +1 -0
  70. package/dist/src/presentation/web/components/features/settings/environment-settings-section.stories.js +27 -0
  71. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.d.ts +6 -0
  72. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.d.ts.map +1 -0
  73. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.js +45 -0
  74. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.d.ts +16 -0
  75. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.d.ts.map +1 -0
  76. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.js +37 -0
  77. package/dist/src/presentation/web/components/features/settings/notification-settings-section.d.ts +6 -0
  78. package/dist/src/presentation/web/components/features/settings/notification-settings-section.d.ts.map +1 -0
  79. package/dist/src/presentation/web/components/features/settings/notification-settings-section.js +68 -0
  80. package/dist/src/presentation/web/components/features/settings/notification-settings-section.stories.d.ts +16 -0
  81. package/dist/src/presentation/web/components/features/settings/notification-settings-section.stories.d.ts.map +1 -0
  82. package/dist/src/presentation/web/components/features/settings/notification-settings-section.stories.js +62 -0
  83. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts +8 -0
  84. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -0
  85. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +245 -0
  86. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts +15 -0
  87. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts.map +1 -0
  88. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.js +39 -0
  89. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.d.ts +6 -0
  90. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.d.ts.map +1 -0
  91. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.js +76 -0
  92. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.d.ts +16 -0
  93. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.d.ts.map +1 -0
  94. package/dist/src/presentation/web/components/features/settings/workflow-settings-section.stories.js +55 -0
  95. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
  96. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +3 -1
  97. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts +3 -1
  98. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
  99. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +3 -4
  100. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.d.ts.map +1 -1
  101. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.js +4 -0
  102. package/dist/src/presentation/web/components/ui/switch.d.ts +7 -0
  103. package/dist/src/presentation/web/components/ui/switch.d.ts.map +1 -0
  104. package/dist/src/presentation/web/components/ui/switch.js +8 -0
  105. package/dist/src/presentation/web/hooks/feature-flags-context.d.ts +19 -0
  106. package/dist/src/presentation/web/hooks/feature-flags-context.d.ts.map +1 -0
  107. package/dist/src/presentation/web/hooks/feature-flags-context.js +20 -0
  108. package/dist/src/presentation/web/lib/feature-flags.d.ts +14 -2
  109. package/dist/src/presentation/web/lib/feature-flags.d.ts.map +1 -1
  110. package/dist/src/presentation/web/lib/feature-flags.js +39 -4
  111. package/dist/tsconfig.build.tsbuildinfo +1 -1
  112. package/package.json +1 -1
  113. package/web/.next/BUILD_ID +1 -1
  114. package/web/.next/app-path-routes-manifest.json +1 -0
  115. package/web/.next/build-manifest.json +5 -5
  116. package/web/.next/cache/.previewinfo +1 -1
  117. package/web/.next/cache/.rscinfo +1 -1
  118. package/web/.next/cache/.tsbuildinfo +1 -1
  119. package/web/.next/cache/config.json +3 -3
  120. package/web/.next/fallback-build-manifest.json +2 -2
  121. package/web/.next/prerender-manifest.json +3 -3
  122. package/web/.next/required-server-files.js +1 -1
  123. package/web/.next/required-server-files.json +1 -1
  124. package/web/.next/routes-manifest.json +6 -0
  125. package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +3 -3
  126. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +16 -16
  127. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +9 -8
  128. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  129. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  130. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +3 -3
  131. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +19 -19
  132. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +9 -8
  133. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  134. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  135. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +3 -3
  136. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +14 -14
  137. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +9 -8
  138. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  139. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  140. package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +3 -3
  141. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +16 -16
  142. package/web/.next/server/app/(dashboard)/create/page.js +9 -8
  143. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  144. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  145. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +3 -3
  146. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +19 -19
  147. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +9 -8
  148. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  149. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  150. package/web/.next/server/app/(dashboard)/page/build-manifest.json +3 -3
  151. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +14 -14
  152. package/web/.next/server/app/(dashboard)/page.js +9 -8
  153. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  154. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  155. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +3 -3
  156. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +14 -14
  157. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +9 -8
  158. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  159. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  160. package/web/.next/server/app/_global-error/page/build-manifest.json +3 -3
  161. package/web/.next/server/app/_global-error/page.js +4 -3
  162. package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
  163. package/web/.next/server/app/_global-error.html +2 -2
  164. package/web/.next/server/app/_global-error.rsc +1 -1
  165. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  166. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  167. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  168. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  169. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  170. package/web/.next/server/app/_not-found/page/build-manifest.json +3 -3
  171. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  172. package/web/.next/server/app/_not-found/page.js +10 -8
  173. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  174. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  175. package/web/.next/server/app/settings/page/app-paths-manifest.json +3 -0
  176. package/web/.next/server/app/settings/page/build-manifest.json +18 -0
  177. package/web/.next/server/app/settings/page/next-font-manifest.json +6 -0
  178. package/web/.next/server/app/settings/page/react-loadable-manifest.json +1 -0
  179. package/web/.next/server/app/settings/page/server-reference-manifest.json +50 -0
  180. package/web/.next/server/app/settings/page.js +18 -0
  181. package/web/.next/server/app/settings/page.js.map +5 -0
  182. package/web/.next/server/app/settings/page.js.nft.json +1 -0
  183. package/web/.next/server/app/settings/page_client-reference-manifest.js +2 -0
  184. package/web/.next/server/app/skills/page/build-manifest.json +3 -3
  185. package/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
  186. package/web/.next/server/app/skills/page.js +12 -9
  187. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  188. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  189. package/web/.next/server/app/tools/page/build-manifest.json +3 -3
  190. package/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
  191. package/web/.next/server/app/tools/page.js +10 -8
  192. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  193. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  194. package/web/.next/server/app/version/page/build-manifest.json +3 -3
  195. package/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
  196. package/web/.next/server/app/version/page.js +9 -8
  197. package/web/.next/server/app/version/page.js.nft.json +1 -1
  198. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  199. package/web/.next/server/app-paths-manifest.json +1 -0
  200. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_4d623b8e.js.map +1 -1
  201. package/web/.next/server/chunks/ssr/403f9_next_dist_190bdc35._.js +4 -0
  202. package/web/.next/server/chunks/ssr/{403f9_next_dist_6c821c12._.js.map → 403f9_next_dist_190bdc35._.js.map} +1 -1
  203. package/web/.next/server/chunks/ssr/403f9_next_dist_31ea46d3._.js +6 -0
  204. package/web/.next/server/chunks/ssr/403f9_next_dist_31ea46d3._.js.map +1 -0
  205. package/web/.next/server/chunks/ssr/403f9_next_dist_c9d9b4d7._.js +6 -0
  206. package/web/.next/server/chunks/ssr/403f9_next_dist_c9d9b4d7._.js.map +1 -0
  207. package/web/.next/server/chunks/ssr/403f9_next_dist_compiled_dc550646._.js +3 -0
  208. package/web/.next/server/chunks/ssr/403f9_next_dist_compiled_dc550646._.js.map +1 -0
  209. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_3981ee1d._.js +3 -0
  210. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_3981ee1d._.js.map +1 -0
  211. package/web/.next/server/chunks/ssr/{403f9_next_dist_esm_build_templates_app-page_bec3d8d3.js → 403f9_next_dist_esm_build_templates_app-page_2eacac96.js} +3 -3
  212. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_2eacac96.js.map +1 -0
  213. package/web/.next/server/chunks/ssr/{403f9_next_dist_esm_build_templates_app-page_c27615b6.js → 403f9_next_dist_esm_build_templates_app-page_46d6bf1b.js} +3 -3
  214. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_46d6bf1b.js.map +1 -0
  215. package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_bec3d8d3.js → server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_54b1e179.js} +3 -3
  216. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_54b1e179.js.map +1 -0
  217. package/web/.next/server/chunks/ssr/{403f9_next_dist_esm_build_templates_app-page_dbf21e04.js → 403f9_next_dist_esm_build_templates_app-page_6c70ecca.js} +3 -3
  218. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_6c70ecca.js.map +1 -0
  219. package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_d302115b.js → server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_c9978986.js} +3 -3
  220. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_c9978986.js.map +1 -0
  221. package/web/.next/server/chunks/ssr/{403f9_next_dist_esm_build_templates_app-page_d302115b.js → 403f9_next_dist_esm_build_templates_app-page_ce6dae5d.js} +3 -3
  222. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_ce6dae5d.js.map +1 -0
  223. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_d82f78f0.js +4 -0
  224. package/web/.next/server/chunks/ssr/{_884ddade._.js.map → 403f9_next_dist_esm_build_templates_app-page_d82f78f0.js.map} +1 -1
  225. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  226. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  227. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_da7eef33.js +1 -1
  228. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_da7eef33.js.map +1 -1
  229. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_0a9251aa.js +1 -1
  230. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_0a9251aa.js.map +1 -1
  231. package/web/.next/server/chunks/ssr/[root-of-the-server]__0880ff0e._.js +3 -0
  232. package/web/.next/server/chunks/ssr/{[root-of-the-server]__8a947500._.js.map → [root-of-the-server]__0880ff0e._.js.map} +1 -1
  233. package/web/.next/server/chunks/ssr/{[root-of-the-server]__c37779e6._.js → [root-of-the-server]__09af7f56._.js} +2 -2
  234. package/web/.next/server/chunks/ssr/{[root-of-the-server]__c37779e6._.js.map → [root-of-the-server]__09af7f56._.js.map} +1 -1
  235. package/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js +4 -0
  236. package/web/.next/server/chunks/ssr/{[root-of-the-server]__6b17a22d._.js.map → [root-of-the-server]__11033878._.js.map} +1 -1
  237. package/web/.next/server/chunks/ssr/[root-of-the-server]__1c870feb._.js +3 -0
  238. package/web/.next/server/chunks/ssr/[root-of-the-server]__1c870feb._.js.map +1 -0
  239. package/web/.next/server/chunks/ssr/[root-of-the-server]__23b5ca2c._.js +3 -0
  240. package/web/.next/server/chunks/ssr/{[root-of-the-server]__6ee2450e._.js.map → [root-of-the-server]__23b5ca2c._.js.map} +1 -1
  241. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +3 -0
  242. package/web/.next/server/chunks/ssr/{[root-of-the-server]__249c74f6._.js.map → [root-of-the-server]__357d99f9._.js.map} +1 -1
  243. package/web/.next/server/chunks/ssr/[root-of-the-server]__4be9a9bb._.js +4 -0
  244. package/web/.next/server/chunks/ssr/[root-of-the-server]__4be9a9bb._.js.map +1 -0
  245. package/web/.next/server/chunks/ssr/[root-of-the-server]__52485955._.js +3 -0
  246. package/web/.next/server/chunks/ssr/[root-of-the-server]__5edfc56b._.js +3 -0
  247. package/web/.next/server/chunks/ssr/{[root-of-the-server]__c18f84a4._.js.map → [root-of-the-server]__5edfc56b._.js.map} +1 -1
  248. package/web/.next/server/chunks/ssr/[root-of-the-server]__6eb2a2b0._.js +3 -0
  249. package/web/.next/server/chunks/ssr/[root-of-the-server]__6eb2a2b0._.js.map +1 -0
  250. package/web/.next/server/chunks/ssr/[root-of-the-server]__8c88ef55._.js +3 -0
  251. package/web/.next/server/chunks/ssr/{[root-of-the-server]__fa87595c._.js.map → [root-of-the-server]__8c88ef55._.js.map} +1 -1
  252. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +1 -1
  253. package/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js.map +1 -1
  254. package/web/.next/server/chunks/ssr/[root-of-the-server]__ad2b2a3c._.js +3 -0
  255. package/web/.next/server/chunks/ssr/[root-of-the-server]__ad2b2a3c._.js.map +1 -0
  256. package/web/.next/server/chunks/ssr/[root-of-the-server]__aea328fd._.js +3 -0
  257. package/web/.next/server/chunks/ssr/[root-of-the-server]__aea328fd._.js.map +1 -0
  258. package/web/.next/server/chunks/ssr/[root-of-the-server]__c3c963c6._.js +3 -0
  259. package/web/.next/server/chunks/ssr/{[root-of-the-server]__2018e25f._.js.map → [root-of-the-server]__c3c963c6._.js.map} +1 -1
  260. package/web/.next/server/chunks/ssr/[root-of-the-server]__c9777776._.js +3 -0
  261. package/web/.next/server/chunks/ssr/{[root-of-the-server]__3b4af5ae._.js.map → [root-of-the-server]__c9777776._.js.map} +1 -1
  262. package/web/.next/server/chunks/ssr/[root-of-the-server]__f0d8d054._.js +4 -0
  263. package/web/.next/server/chunks/ssr/[root-of-the-server]__f0d8d054._.js.map +1 -0
  264. package/web/.next/server/chunks/ssr/[root-of-the-server]__fd36b8bf._.js +4 -0
  265. package/web/.next/server/chunks/ssr/[root-of-the-server]__fd36b8bf._.js.map +1 -0
  266. package/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js +4 -0
  267. package/web/.next/server/chunks/ssr/{[root-of-the-server]__804c006d._.js.map → [root-of-the-server]__fdc75809._.js.map} +1 -1
  268. package/web/.next/server/chunks/ssr/_0e9d6bf7._.js +1 -1
  269. package/web/.next/server/chunks/ssr/_0e9d6bf7._.js.map +1 -1
  270. package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_8e8822d6.js → server/chunks/ssr/_16235e5e._.js} +3 -3
  271. package/web/.next/server/chunks/ssr/_16235e5e._.js.map +1 -0
  272. package/web/.next/server/chunks/ssr/_3a4c94e3._.js +3 -0
  273. package/web/.next/server/chunks/ssr/_3a4c94e3._.js.map +1 -0
  274. package/web/.next/server/chunks/ssr/_4093a637._.js +5 -0
  275. package/web/.next/server/chunks/ssr/_4093a637._.js.map +1 -0
  276. package/web/.next/server/chunks/ssr/_5428b384._.js +3 -0
  277. package/web/.next/server/chunks/ssr/_5428b384._.js.map +1 -0
  278. package/web/.next/server/chunks/ssr/_61351ed3._.js +1 -1
  279. package/web/.next/server/chunks/ssr/_61351ed3._.js.map +1 -1
  280. package/web/.next/server/chunks/ssr/_6645f218._.js +21 -0
  281. package/web/.next/server/chunks/ssr/_6645f218._.js.map +1 -0
  282. package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/_ad8a094f._.js → server/chunks/ssr/_6887cba3._.js} +3 -3
  283. package/web/.next/server/chunks/ssr/_6887cba3._.js.map +1 -0
  284. package/web/.next/server/chunks/ssr/_6e08ce21._.js +1 -1
  285. package/web/.next/server/chunks/ssr/_6e08ce21._.js.map +1 -1
  286. package/web/.next/server/chunks/ssr/_8400c8bb._.js +1 -1
  287. package/web/.next/server/chunks/ssr/_8400c8bb._.js.map +1 -1
  288. package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/_3197d5cb._.js → server/chunks/ssr/_88c4dab8._.js} +2 -2
  289. package/web/.next/server/chunks/ssr/_88c4dab8._.js.map +1 -0
  290. package/web/.next/server/chunks/ssr/{403f9_next_dist_6c821c12._.js → _8eeee4db._.js} +3 -3
  291. package/web/.next/server/chunks/ssr/_8eeee4db._.js.map +1 -0
  292. package/web/.next/server/chunks/ssr/_956601a1._.js +9 -0
  293. package/web/.next/server/chunks/ssr/_956601a1._.js.map +1 -0
  294. package/web/.next/server/chunks/ssr/_9d11d025._.js +7 -0
  295. package/web/.next/server/chunks/ssr/_9d11d025._.js.map +1 -0
  296. package/web/.next/server/chunks/ssr/_a37f5f18._.js +13 -0
  297. package/web/.next/server/chunks/ssr/_a37f5f18._.js.map +1 -0
  298. package/web/.next/server/chunks/ssr/_c26c679f._.js +3 -0
  299. package/web/.next/server/chunks/ssr/_c26c679f._.js.map +1 -0
  300. package/web/.next/server/chunks/ssr/_caf6533c._.js +3 -0
  301. package/web/.next/server/chunks/ssr/_caf6533c._.js.map +1 -0
  302. package/web/.next/server/chunks/ssr/_d4b20e29._.js +3 -0
  303. package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -0
  304. package/web/.next/server/chunks/ssr/_e830422e._.js +4 -0
  305. package/web/.next/server/chunks/ssr/_e830422e._.js.map +1 -0
  306. package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/_884ddade._.js → server/chunks/ssr/_ed11dcd6._.js} +3 -3
  307. package/web/.next/server/chunks/ssr/_ed11dcd6._.js.map +1 -0
  308. package/web/.next/server/chunks/ssr/_f38b49fe._.js +3 -0
  309. package/web/.next/server/chunks/ssr/_f38b49fe._.js.map +1 -0
  310. package/web/.next/{standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_9d039634.js → server/chunks/ssr/_f4d222d6._.js} +3 -3
  311. package/web/.next/server/chunks/ssr/_f4d222d6._.js.map +1 -0
  312. package/web/.next/server/chunks/ssr/_f7f6173c._.js +3 -0
  313. package/web/.next/server/chunks/ssr/_f7f6173c._.js.map +1 -0
  314. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +3 -0
  315. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -0
  316. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  317. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map +1 -1
  318. package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js +3 -0
  319. package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js.map +1 -0
  320. package/web/.next/server/chunks/ssr/src_presentation_web_163038ba._.js +2 -2
  321. package/web/.next/server/chunks/ssr/src_presentation_web_163038ba._.js.map +1 -1
  322. package/web/.next/server/chunks/ssr/src_presentation_web_30d7eeda._.js +1 -1
  323. package/web/.next/server/chunks/ssr/src_presentation_web_30d7eeda._.js.map +1 -1
  324. package/web/.next/server/chunks/ssr/src_presentation_web_459cb687._.js +2 -2
  325. package/web/.next/server/chunks/ssr/src_presentation_web_459cb687._.js.map +1 -1
  326. package/web/.next/server/chunks/ssr/src_presentation_web_565a14f8._.js +1 -1
  327. package/web/.next/server/chunks/ssr/src_presentation_web_565a14f8._.js.map +1 -1
  328. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_021a05f2.js +1 -1
  329. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_021a05f2.js.map +1 -1
  330. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +3 -0
  331. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js.map +1 -0
  332. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +3 -0
  333. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js.map +1 -0
  334. package/web/.next/server/chunks/ssr/src_presentation_web_app_global-error_tsx_14c389b5._.js +3 -0
  335. package/web/.next/server/chunks/ssr/src_presentation_web_app_global-error_tsx_14c389b5._.js.map +1 -0
  336. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
  337. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +1 -1
  338. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  339. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  340. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js +1 -1
  341. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js.map +1 -1
  342. package/web/.next/server/middleware-build-manifest.js +3 -3
  343. package/web/.next/server/pages/500.html +2 -2
  344. package/web/.next/server/server-reference-manifest.js +1 -1
  345. package/web/.next/server/server-reference-manifest.json +59 -22
  346. package/web/.next/standalone/src/presentation/web/.next/BUILD_ID +1 -1
  347. package/web/.next/standalone/src/presentation/web/.next/app-path-routes-manifest.json +1 -0
  348. package/web/.next/standalone/src/presentation/web/.next/build-manifest.json +5 -5
  349. package/web/.next/standalone/src/presentation/web/.next/prerender-manifest.json +3 -3
  350. package/web/.next/standalone/src/presentation/web/.next/required-server-files.json +1 -1
  351. package/web/.next/standalone/src/presentation/web/.next/routes-manifest.json +6 -0
  352. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +3 -3
  353. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +16 -16
  354. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page.js +9 -8
  355. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  356. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  357. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +3 -3
  358. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +19 -19
  359. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +9 -8
  360. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  361. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  362. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +3 -3
  363. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +14 -14
  364. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +9 -8
  365. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  366. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  367. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page/build-manifest.json +3 -3
  368. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +16 -16
  369. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page.js +9 -8
  370. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  371. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  372. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +3 -3
  373. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +19 -19
  374. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +9 -8
  375. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  376. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  377. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page/build-manifest.json +3 -3
  378. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +14 -14
  379. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page.js +9 -8
  380. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  381. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  382. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +3 -3
  383. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +14 -14
  384. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +9 -8
  385. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  386. package/web/.next/standalone/src/presentation/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  387. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error/page/build-manifest.json +3 -3
  388. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error/page.js +4 -3
  389. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error/page.js.nft.json +1 -1
  390. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.html +2 -2
  391. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.rsc +1 -1
  392. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  393. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  394. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  395. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  396. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  397. package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page/build-manifest.json +3 -3
  398. package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  399. package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page.js +10 -8
  400. package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  401. package/web/.next/standalone/src/presentation/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  402. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page/app-paths-manifest.json +3 -0
  403. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page/build-manifest.json +18 -0
  404. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page/next-font-manifest.json +6 -0
  405. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page/react-loadable-manifest.json +1 -0
  406. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page/server-reference-manifest.json +50 -0
  407. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page.js +18 -0
  408. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page.js.map +5 -0
  409. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page.js.nft.json +1 -0
  410. package/web/.next/standalone/src/presentation/web/.next/server/app/settings/page_client-reference-manifest.js +2 -0
  411. package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page/build-manifest.json +3 -3
  412. package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
  413. package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page.js +12 -9
  414. package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page.js.nft.json +1 -1
  415. package/web/.next/standalone/src/presentation/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  416. package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page/build-manifest.json +3 -3
  417. package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
  418. package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page.js +10 -8
  419. package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page.js.nft.json +1 -1
  420. package/web/.next/standalone/src/presentation/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  421. package/web/.next/standalone/src/presentation/web/.next/server/app/version/page/build-manifest.json +3 -3
  422. package/web/.next/standalone/src/presentation/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
  423. package/web/.next/standalone/src/presentation/web/.next/server/app/version/page.js +9 -8
  424. package/web/.next/standalone/src/presentation/web/.next/server/app/version/page.js.nft.json +1 -1
  425. package/web/.next/standalone/src/presentation/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  426. package/web/.next/standalone/src/presentation/web/.next/server/app-paths-manifest.json +1 -0
  427. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_190bdc35._.js +4 -0
  428. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_31ea46d3._.js +6 -0
  429. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_c9d9b4d7._.js +6 -0
  430. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_compiled_dc550646._.js +3 -0
  431. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_3981ee1d._.js +3 -0
  432. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_2eacac96.js +4 -0
  433. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/{403f9_next_dist_esm_build_templates_app-page_c27615b6.js → 403f9_next_dist_esm_build_templates_app-page_46d6bf1b.js} +3 -3
  434. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_54b1e179.js +4 -0
  435. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/{403f9_next_dist_esm_build_templates_app-page_dbf21e04.js → 403f9_next_dist_esm_build_templates_app-page_6c70ecca.js} +3 -3
  436. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_c9978986.js +4 -0
  437. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_ce6dae5d.js +4 -0
  438. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_d82f78f0.js +4 -0
  439. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  440. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_da7eef33.js +1 -1
  441. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_0a9251aa.js +1 -1
  442. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__0880ff0e._.js +3 -0
  443. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/{[root-of-the-server]__c37779e6._.js → [root-of-the-server]__09af7f56._.js} +2 -2
  444. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__11033878._.js +4 -0
  445. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__1c870feb._.js +3 -0
  446. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__23b5ca2c._.js +3 -0
  447. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +3 -0
  448. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__4be9a9bb._.js +4 -0
  449. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__52485955._.js +3 -0
  450. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__5edfc56b._.js +3 -0
  451. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6eb2a2b0._.js +3 -0
  452. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__8c88ef55._.js +3 -0
  453. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__aad040c0._.js +1 -1
  454. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__ad2b2a3c._.js +3 -0
  455. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__aea328fd._.js +3 -0
  456. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__c3c963c6._.js +3 -0
  457. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__c9777776._.js +3 -0
  458. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__f0d8d054._.js +4 -0
  459. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__fd36b8bf._.js +4 -0
  460. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__fdc75809._.js +4 -0
  461. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_0e9d6bf7._.js +1 -1
  462. package/web/.next/{server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_8e8822d6.js → standalone/src/presentation/web/.next/server/chunks/ssr/_16235e5e._.js} +3 -3
  463. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_3a4c94e3._.js +3 -0
  464. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_4093a637._.js +5 -0
  465. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_5428b384._.js +3 -0
  466. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_61351ed3._.js +1 -1
  467. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_6645f218._.js +21 -0
  468. package/web/.next/{server/chunks/ssr/_ad8a094f._.js → standalone/src/presentation/web/.next/server/chunks/ssr/_6887cba3._.js} +3 -3
  469. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_6e08ce21._.js +1 -1
  470. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_8400c8bb._.js +1 -1
  471. package/web/.next/{server/chunks/ssr/_3197d5cb._.js → standalone/src/presentation/web/.next/server/chunks/ssr/_88c4dab8._.js} +2 -2
  472. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/{403f9_next_dist_6c821c12._.js → _8eeee4db._.js} +3 -3
  473. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_956601a1._.js +9 -0
  474. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_9d11d025._.js +7 -0
  475. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_a37f5f18._.js +13 -0
  476. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_c26c679f._.js +3 -0
  477. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_caf6533c._.js +3 -0
  478. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_d4b20e29._.js +3 -0
  479. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_e830422e._.js +4 -0
  480. package/web/.next/{server/chunks/ssr/_884ddade._.js → standalone/src/presentation/web/.next/server/chunks/ssr/_ed11dcd6._.js} +3 -3
  481. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_f38b49fe._.js +3 -0
  482. package/web/.next/{server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_9d039634.js → standalone/src/presentation/web/.next/server/chunks/ssr/_f4d222d6._.js} +3 -3
  483. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_f7f6173c._.js +3 -0
  484. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +3 -0
  485. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  486. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js +3 -0
  487. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_163038ba._.js +2 -2
  488. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_30d7eeda._.js +1 -1
  489. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_459cb687._.js +2 -2
  490. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_565a14f8._.js +1 -1
  491. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_021a05f2.js +1 -1
  492. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1fa8042e.js +3 -0
  493. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_24684200.js +3 -0
  494. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_app_global-error_tsx_14c389b5._.js +3 -0
  495. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
  496. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  497. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js +1 -1
  498. package/web/.next/standalone/src/presentation/web/.next/server/middleware-build-manifest.js +3 -3
  499. package/web/.next/standalone/src/presentation/web/.next/server/pages/500.html +2 -2
  500. package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.js +1 -1
  501. package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.json +59 -22
  502. package/web/.next/standalone/src/presentation/web/app/actions/load-settings.ts +43 -0
  503. package/web/.next/standalone/src/presentation/web/app/actions/update-settings.ts +73 -0
  504. package/web/.next/standalone/src/presentation/web/app/global-error.tsx +23 -0
  505. package/web/.next/standalone/src/presentation/web/app/layout.tsx +5 -1
  506. package/web/.next/standalone/src/presentation/web/app/settings/page.tsx +27 -0
  507. package/web/.next/standalone/src/presentation/web/components/common/base-drawer/base-drawer.tsx +2 -1
  508. package/web/.next/standalone/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.tsx +2 -1
  509. package/web/.next/standalone/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.tsx +2 -1
  510. package/web/.next/standalone/src/presentation/web/components/common/editor-type-icons.tsx +84 -0
  511. package/web/.next/standalone/src/presentation/web/components/common/feature-node/derive-feature-state.ts +2 -1
  512. package/web/.next/standalone/src/presentation/web/components/common/feature-node/feature-node-state-config.ts +3 -0
  513. package/web/.next/standalone/src/presentation/web/components/common/repository-node/repository-node.tsx +2 -1
  514. package/web/.next/standalone/src/presentation/web/components/common/review-drawer-shell/review-drawer-shell.tsx +2 -1
  515. package/web/.next/standalone/src/presentation/web/components/features/settings/agent-settings-section.stories.tsx +43 -0
  516. package/web/.next/standalone/src/presentation/web/components/features/settings/agent-settings-section.tsx +183 -0
  517. package/web/.next/standalone/src/presentation/web/components/features/settings/database-settings-section.stories.tsx +28 -0
  518. package/web/.next/standalone/src/presentation/web/components/features/settings/database-settings-section.tsx +43 -0
  519. package/web/.next/standalone/src/presentation/web/components/features/settings/environment-settings-section.stories.tsx +33 -0
  520. package/web/.next/standalone/src/presentation/web/components/features/settings/environment-settings-section.tsx +125 -0
  521. package/web/.next/standalone/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.tsx +44 -0
  522. package/web/.next/standalone/src/presentation/web/components/features/settings/feature-flags-settings-section.tsx +94 -0
  523. package/web/.next/standalone/src/presentation/web/components/features/settings/notification-settings-section.stories.tsx +71 -0
  524. package/web/.next/standalone/src/presentation/web/components/features/settings/notification-settings-section.tsx +178 -0
  525. package/web/.next/standalone/src/presentation/web/components/features/settings/settings-page-client.stories.tsx +46 -0
  526. package/web/.next/standalone/src/presentation/web/components/features/settings/settings-page-client.tsx +706 -0
  527. package/web/.next/standalone/src/presentation/web/components/features/settings/workflow-settings-section.stories.tsx +62 -0
  528. package/web/.next/standalone/src/presentation/web/components/features/settings/workflow-settings-section.tsx +274 -0
  529. package/web/.next/standalone/src/presentation/web/components/layouts/app-shell/app-shell.tsx +3 -0
  530. package/web/.next/standalone/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.tsx +5 -0
  531. package/web/.next/standalone/src/presentation/web/components/layouts/app-sidebar/app-sidebar.tsx +15 -3
  532. package/web/.next/standalone/src/presentation/web/components/ui/switch.tsx +35 -0
  533. package/web/.next/standalone/src/presentation/web/hooks/feature-flags-context.tsx +30 -0
  534. package/web/.next/standalone/src/presentation/web/lib/feature-flags.ts +47 -4
  535. package/web/.next/standalone/src/presentation/web/public/icons/editors/vscode.svg +3 -0
  536. package/web/.next/standalone/src/presentation/web/public/icons/editors/windsurf.svg +4 -0
  537. package/web/.next/standalone/src/presentation/web/public/icons/editors/zed.svg +4 -0
  538. package/web/.next/standalone/src/presentation/web/server.js +1 -1
  539. package/web/.next/static/chunks/{0853e1358b862314.js → 056b923048a700f3.js} +1 -1
  540. package/web/.next/static/chunks/239fda2c7ded3d48.js +1 -0
  541. package/web/.next/static/chunks/3479d6ae297e5410.css +2 -0
  542. package/web/.next/static/chunks/356ebc89a2a97627.js +1 -0
  543. package/web/.next/static/chunks/36d88ff9f7db4eb9.js +1 -0
  544. package/web/.next/static/chunks/429af5c5c4ef5df3.js +3 -0
  545. package/web/.next/static/chunks/55c131b6fc504375.js +1 -0
  546. package/web/.next/static/chunks/66c225e5e51ffb0b.js +2 -0
  547. package/web/.next/static/chunks/700501f5ac2bb320.js +1 -0
  548. package/web/.next/static/chunks/711bad15861ca1d0.js +1 -0
  549. package/web/.next/static/chunks/730cb306a35d6396.js +1 -0
  550. package/web/.next/static/chunks/7942efebc71dc363.js +1 -0
  551. package/web/.next/static/chunks/{8cbc99412f24eb01.js → 8039796f8c3e43ad.js} +1 -1
  552. package/web/.next/static/chunks/89aac43287d73b02.js +1 -0
  553. package/web/.next/static/chunks/907556417091ee06.js +11 -0
  554. package/web/.next/static/chunks/{00adfce42dbbd5ef.js → 98e3a7cf58fc912a.js} +1 -1
  555. package/web/.next/static/chunks/{ec76915c456404e6.js → 9c1b8cc32d9bc9ca.js} +1 -1
  556. package/web/.next/static/chunks/aa6cc6df962a3fc0.js +3 -0
  557. package/web/.next/static/chunks/b3e546795810eb02.js +1 -0
  558. package/web/.next/static/chunks/{8b8d01272ba4aebd.js → c24914717d72fb9c.js} +1 -1
  559. package/web/.next/static/chunks/c63d1c145c5a07dc.js +1 -0
  560. package/web/.next/static/chunks/{07f00e2e73d322d2.js → d4d8f0a137bd2eb4.js} +3 -3
  561. package/web/.next/static/chunks/eb9841ec4d80af01.js +1 -0
  562. package/web/.next/static/chunks/fc00e1b83852da4e.js +1 -0
  563. package/web/.next/static/chunks/{turbopack-05820f781f3ffc22.js → turbopack-080e470ea902d0ba.js} +1 -1
  564. package/web/.next/trace +1 -1
  565. package/web/.next/trace-build +1 -1
  566. package/web/.next/types/link.d.ts +1 -0
  567. package/web/.next/types/routes.d.ts +2 -1
  568. package/web/.next/types/validator.ts +9 -0
  569. package/web/public/icons/editors/vscode.svg +3 -0
  570. package/web/public/icons/editors/windsurf.svg +4 -0
  571. package/web/public/icons/editors/zed.svg +4 -0
  572. package/web/.next/server/chunks/ssr/403f9_next_dist_client_components_builtin_global-error_5fefc4d7.js +0 -3
  573. package/web/.next/server/chunks/ssr/403f9_next_dist_client_components_builtin_global-error_5fefc4d7.js.map +0 -1
  574. package/web/.next/server/chunks/ssr/403f9_next_dist_d738ab66._.js +0 -3
  575. package/web/.next/server/chunks/ssr/403f9_next_dist_d738ab66._.js.map +0 -1
  576. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_0f115902.js +0 -4
  577. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_0f115902.js.map +0 -1
  578. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_8e8822d6.js.map +0 -1
  579. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_9d039634.js.map +0 -1
  580. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_bec3d8d3.js.map +0 -1
  581. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_c27615b6.js.map +0 -1
  582. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_d302115b.js.map +0 -1
  583. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_dbf21e04.js.map +0 -1
  584. package/web/.next/server/chunks/ssr/[root-of-the-server]__17a611f0._.js +0 -4
  585. package/web/.next/server/chunks/ssr/[root-of-the-server]__17a611f0._.js.map +0 -1
  586. package/web/.next/server/chunks/ssr/[root-of-the-server]__2018e25f._.js +0 -3
  587. package/web/.next/server/chunks/ssr/[root-of-the-server]__249c74f6._.js +0 -3
  588. package/web/.next/server/chunks/ssr/[root-of-the-server]__3b4af5ae._.js +0 -3
  589. package/web/.next/server/chunks/ssr/[root-of-the-server]__45dbf93d._.js +0 -4
  590. package/web/.next/server/chunks/ssr/[root-of-the-server]__45dbf93d._.js.map +0 -1
  591. package/web/.next/server/chunks/ssr/[root-of-the-server]__6258349c._.js +0 -3
  592. package/web/.next/server/chunks/ssr/[root-of-the-server]__6258349c._.js.map +0 -1
  593. package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +0 -4
  594. package/web/.next/server/chunks/ssr/[root-of-the-server]__6cbc1149._.js +0 -4
  595. package/web/.next/server/chunks/ssr/[root-of-the-server]__6cbc1149._.js.map +0 -1
  596. package/web/.next/server/chunks/ssr/[root-of-the-server]__6ee2450e._.js +0 -3
  597. package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +0 -4
  598. package/web/.next/server/chunks/ssr/[root-of-the-server]__80e5bed2._.js +0 -3
  599. package/web/.next/server/chunks/ssr/[root-of-the-server]__8a947500._.js +0 -3
  600. package/web/.next/server/chunks/ssr/[root-of-the-server]__94a6d275._.js +0 -3
  601. package/web/.next/server/chunks/ssr/[root-of-the-server]__94a6d275._.js.map +0 -1
  602. package/web/.next/server/chunks/ssr/[root-of-the-server]__c18f84a4._.js +0 -3
  603. package/web/.next/server/chunks/ssr/[root-of-the-server]__e062a6de._.js +0 -3
  604. package/web/.next/server/chunks/ssr/[root-of-the-server]__e062a6de._.js.map +0 -1
  605. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa87595c._.js +0 -3
  606. package/web/.next/server/chunks/ssr/_07c2a32a._.js +0 -9
  607. package/web/.next/server/chunks/ssr/_07c2a32a._.js.map +0 -1
  608. package/web/.next/server/chunks/ssr/_3197d5cb._.js.map +0 -1
  609. package/web/.next/server/chunks/ssr/_380c6567._.js +0 -6
  610. package/web/.next/server/chunks/ssr/_380c6567._.js.map +0 -1
  611. package/web/.next/server/chunks/ssr/_44cce4e0._.js +0 -4
  612. package/web/.next/server/chunks/ssr/_44cce4e0._.js.map +0 -1
  613. package/web/.next/server/chunks/ssr/_5ee4f5a7._.js +0 -7
  614. package/web/.next/server/chunks/ssr/_5ee4f5a7._.js.map +0 -1
  615. package/web/.next/server/chunks/ssr/_6640df4c._.js +0 -6
  616. package/web/.next/server/chunks/ssr/_6640df4c._.js.map +0 -1
  617. package/web/.next/server/chunks/ssr/_9f940437._.js +0 -3
  618. package/web/.next/server/chunks/ssr/_9f940437._.js.map +0 -1
  619. package/web/.next/server/chunks/ssr/_ad8a094f._.js.map +0 -1
  620. package/web/.next/server/chunks/ssr/_dc379243._.js +0 -4
  621. package/web/.next/server/chunks/ssr/_dc379243._.js.map +0 -1
  622. package/web/.next/server/chunks/ssr/_e806976d._.js +0 -3
  623. package/web/.next/server/chunks/ssr/_e806976d._.js.map +0 -1
  624. package/web/.next/server/chunks/ssr/src_presentation_web_67178b88._.js +0 -13
  625. package/web/.next/server/chunks/ssr/src_presentation_web_67178b88._.js.map +0 -1
  626. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_tabs_tsx_b226ea9b._.js +0 -3
  627. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_tabs_tsx_b226ea9b._.js.map +0 -1
  628. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_client_components_builtin_global-error_5fefc4d7.js +0 -3
  629. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_d738ab66._.js +0 -3
  630. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_0f115902.js +0 -4
  631. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__17a611f0._.js +0 -4
  632. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__2018e25f._.js +0 -3
  633. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__249c74f6._.js +0 -3
  634. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__3b4af5ae._.js +0 -3
  635. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__45dbf93d._.js +0 -4
  636. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6258349c._.js +0 -3
  637. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +0 -4
  638. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6cbc1149._.js +0 -4
  639. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__6ee2450e._.js +0 -3
  640. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +0 -4
  641. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__80e5bed2._.js +0 -3
  642. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__8a947500._.js +0 -3
  643. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__94a6d275._.js +0 -3
  644. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__c18f84a4._.js +0 -3
  645. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__e062a6de._.js +0 -3
  646. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__fa87595c._.js +0 -3
  647. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_07c2a32a._.js +0 -9
  648. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_380c6567._.js +0 -6
  649. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_44cce4e0._.js +0 -4
  650. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_5ee4f5a7._.js +0 -7
  651. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_6640df4c._.js +0 -6
  652. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_9f940437._.js +0 -3
  653. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_dc379243._.js +0 -4
  654. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/_e806976d._.js +0 -3
  655. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_67178b88._.js +0 -13
  656. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/src_presentation_web_components_ui_tabs_tsx_b226ea9b._.js +0 -3
  657. package/web/.next/static/chunks/1f5c93a8b939416d.js +0 -5
  658. package/web/.next/static/chunks/3f205fd6adbfd20a.js +0 -7
  659. package/web/.next/static/chunks/424982cd78174a1a.js +0 -1
  660. package/web/.next/static/chunks/4a3b3cfcc85e7254.js +0 -1
  661. package/web/.next/static/chunks/4e7375d89f61c79d.js +0 -4
  662. package/web/.next/static/chunks/5d0a6417c4e4e545.js +0 -1
  663. package/web/.next/static/chunks/7194d56ee0c66306.js +0 -1
  664. package/web/.next/static/chunks/7e6f572625c82efd.js +0 -1
  665. package/web/.next/static/chunks/8b6a6c28b4f733d0.js +0 -1
  666. package/web/.next/static/chunks/9215b6fb973482c5.js +0 -1
  667. package/web/.next/static/chunks/ab411f151f1b87cc.js +0 -1
  668. package/web/.next/static/chunks/b6c507fc42d9a277.js +0 -1
  669. package/web/.next/static/chunks/c6ade368deec2ef6.js +0 -1
  670. package/web/.next/static/chunks/e12fff3b57456bc2.css +0 -2
  671. /package/web/.next/server/chunks/ssr/{[root-of-the-server]__80e5bed2._.js.map → [root-of-the-server]__52485955._.js.map} +0 -0
  672. /package/web/.next/static/{kPTTy-YsS3np6cPgsciL2 → RiARmAGwzi1nabSHZVwYY}/_buildManifest.js +0 -0
  673. /package/web/.next/static/{kPTTy-YsS3np6cPgsciL2 → RiARmAGwzi1nabSHZVwYY}/_clientMiddlewareManifest.json +0 -0
  674. /package/web/.next/static/{kPTTy-YsS3np6cPgsciL2 → RiARmAGwzi1nabSHZVwYY}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,41952,e=>{"use strict";var t=e.i(20314),a=e.i(79054),n=e.i(3645);let r=(0,n.default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),l=(0,n.default)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);var o=e.i(23925),s=e.i(60112),i=e.i(41957),d=e.i(98127),c=e.i(35364),u=e.i(91967),p=e.i(5978),h=e.i(22528),m=e.i(36589),f=e.i(23405),g=e.i(77624),v=e.i(87620),x="Switch",[w,b]=(0,h.createContextScope)(x),[y,C]=w(x),S=a.forwardRef((e,n)=>{let{__scopeSwitch:r,name:l,checked:o,defaultChecked:s,required:i,disabled:d,value:c="on",onCheckedChange:h,form:f,...g}=e,[w,b]=a.useState(null),C=(0,p.useComposedRefs)(n,e=>b(e)),S=a.useRef(!1),j=!w||f||!!w.closest("form"),[k,P]=(0,m.useControllableState)({prop:o,defaultProp:s??!1,onChange:h,caller:x});return(0,t.jsxs)(y,{scope:r,checked:k,disabled:d,children:[(0,t.jsx)(v.Primitive.button,{type:"button",role:"switch","aria-checked":k,"aria-required":i,"data-state":I(k),"data-disabled":d?"":void 0,disabled:d,value:c,...g,ref:C,onClick:(0,u.composeEventHandlers)(e.onClick,e=>{P(e=>!e),j&&(S.current=e.isPropagationStopped(),S.current||e.stopPropagation())})}),j&&(0,t.jsx)(N,{control:w,bubbles:!S.current,name:l,value:c,checked:k,required:i,disabled:d,form:f,style:{transform:"translateX(-100%)"}})]})});S.displayName=x;var j="SwitchThumb",k=a.forwardRef((e,a)=>{let{__scopeSwitch:n,...r}=e,l=C(j,n);return(0,t.jsx)(v.Primitive.span,{"data-state":I(l.checked),"data-disabled":l.disabled?"":void 0,...r,ref:a})});k.displayName=j;var N=a.forwardRef(({__scopeSwitch:e,control:n,checked:r,bubbles:l=!0,...o},s)=>{let i=a.useRef(null),d=(0,p.useComposedRefs)(i,s),c=(0,f.usePrevious)(r),u=(0,g.useSize)(n);return a.useEffect(()=>{let e=i.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(c!==r&&t){let a=new Event("click",{bubbles:l});t.call(e,r),e.dispatchEvent(a)}},[c,r,l]),(0,t.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:r,...o,tabIndex:-1,ref:d,style:{...o.style,...u,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function I(e){return e?"checked":"unchecked"}N.displayName="SwitchBubbleInput",e.s(["Root",()=>S,"Switch",()=>S,"SwitchThumb",()=>k,"Thumb",()=>k,"createSwitchScope",()=>b],95291);var P=e.i(95291),P=P,T=e.i(31777);function R({className:e,size:a="default",...n}){return(0,t.jsx)(P.Root,{"data-slot":"switch","data-size":a,className:(0,T.cn)("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 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",e),...n,children:(0,t.jsx)(P.Thumb,{"data-slot":"switch-thumb",className:(0,T.cn)("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")})})}var E=e.i(26036),M=e.i(27069),A=e.i(87342),D=e.i(66033),L=e.i(53532),F=e.i(41687),H=e.i(56720),B=e.i(13123),V=e.i(52740),z=e.i(39979),O=e.i(86874),W=e.i(29297),_=e.i(5192),U=e.i(1693),K=e.i(73772),G=e.i(13044),Z=[" ","Enter","ArrowUp","ArrowDown"],q=[" ","Enter"],Y="Select",[X,J,Q]=(0,A.createCollection)(Y),[$,ee]=(0,h.createContextScope)(Y,[Q,V.createPopperScope]),et=(0,V.createPopperScope)(),[ea,en]=$(Y),[er,el]=$(Y),eo=e=>{let{__scopeSelect:n,children:r,open:l,defaultOpen:o,onOpenChange:s,value:i,defaultValue:d,onValueChange:c,dir:u,name:p,autoComplete:h,disabled:f,required:g,form:v}=e,x=et(n),[w,b]=a.useState(null),[y,C]=a.useState(null),[S,j]=a.useState(!1),k=(0,D.useDirection)(u),[N,I]=(0,m.useControllableState)({prop:l,defaultProp:o??!1,onChange:s,caller:Y}),[P,T]=(0,m.useControllableState)({prop:i,defaultProp:d,onChange:c,caller:Y}),R=a.useRef(null),E=!w||v||!!w.closest("form"),[M,A]=a.useState(new Set),L=Array.from(M).map(e=>e.props.value).join(";");return(0,t.jsx)(V.Root,{...x,children:(0,t.jsxs)(ea,{required:g,scope:n,trigger:w,onTriggerChange:b,valueNode:y,onValueNodeChange:C,valueNodeHasChildren:S,onValueNodeHasChildrenChange:j,contentId:(0,B.useId)(),value:P,onValueChange:T,open:N,onOpenChange:I,dir:k,triggerPointerDownPosRef:R,disabled:f,children:[(0,t.jsx)(X.Provider,{scope:n,children:(0,t.jsx)(er,{scope:e.__scopeSelect,onNativeOptionAdd:a.useCallback(e=>{A(t=>new Set(t).add(e))},[]),onNativeOptionRemove:a.useCallback(e=>{A(t=>{let a=new Set(t);return a.delete(e),a})},[]),children:r})}),E?(0,t.jsxs)(eZ,{"aria-hidden":!0,required:g,tabIndex:-1,name:p,autoComplete:h,value:P,onChange:e=>T(e.target.value),disabled:f,form:v,children:[void 0===P?(0,t.jsx)("option",{value:""}):null,Array.from(M)]},L):null]})})};eo.displayName=Y;var es="SelectTrigger",ei=a.forwardRef((e,n)=>{let{__scopeSelect:r,disabled:l=!1,...o}=e,s=et(r),i=en(es,r),d=i.disabled||l,c=(0,p.useComposedRefs)(n,i.onTriggerChange),h=J(r),m=a.useRef("touch"),[f,g,x]=eY(e=>{let t=h().filter(e=>!e.disabled),a=t.find(e=>e.value===i.value),n=eX(t,e,a);void 0!==n&&i.onValueChange(n.value)}),w=e=>{d||(i.onOpenChange(!0),x()),e&&(i.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,t.jsx)(V.Anchor,{asChild:!0,...s,children:(0,t.jsx)(v.Primitive.button,{type:"button",role:"combobox","aria-controls":i.contentId,"aria-expanded":i.open,"aria-required":i.required,"aria-autocomplete":"none",dir:i.dir,"data-state":i.open?"open":"closed",disabled:d,"data-disabled":d?"":void 0,"data-placeholder":eq(i.value)?"":void 0,...o,ref:c,onClick:(0,u.composeEventHandlers)(o.onClick,e=>{e.currentTarget.focus(),"mouse"!==m.current&&w(e)}),onPointerDown:(0,u.composeEventHandlers)(o.onPointerDown,e=>{m.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&"mouse"===e.pointerType&&(w(e),e.preventDefault())}),onKeyDown:(0,u.composeEventHandlers)(o.onKeyDown,e=>{let t=""!==f.current;e.ctrlKey||e.altKey||e.metaKey||1!==e.key.length||g(e.key),(!t||" "!==e.key)&&Z.includes(e.key)&&(w(),e.preventDefault())})})})});ei.displayName=es;var ed="SelectValue",ec=a.forwardRef((e,a)=>{let{__scopeSelect:n,className:r,style:l,children:o,placeholder:s="",...i}=e,d=en(ed,n),{onValueNodeHasChildrenChange:c}=d,u=void 0!==o,h=(0,p.useComposedRefs)(a,d.onValueNodeChange);return(0,_.useLayoutEffect)(()=>{c(u)},[c,u]),(0,t.jsx)(v.Primitive.span,{...i,ref:h,style:{pointerEvents:"none"},children:eq(d.value)?(0,t.jsx)(t.Fragment,{children:s}):o})});ec.displayName=ed;var eu=a.forwardRef((e,a)=>{let{__scopeSelect:n,children:r,...l}=e;return(0,t.jsx)(v.Primitive.span,{"aria-hidden":!0,...l,ref:a,children:r||"▼"})});eu.displayName="SelectIcon";var ep=e=>(0,t.jsx)(z.Portal,{asChild:!0,...e});ep.displayName="SelectPortal";var eh="SelectContent",em=a.forwardRef((e,n)=>{let r=en(eh,e.__scopeSelect),[l,o]=a.useState();return((0,_.useLayoutEffect)(()=>{o(new DocumentFragment)},[]),r.open)?(0,t.jsx)(ex,{...e,ref:n}):l?E.createPortal((0,t.jsx)(ef,{scope:e.__scopeSelect,children:(0,t.jsx)(X.Slot,{scope:e.__scopeSelect,children:(0,t.jsx)("div",{children:e.children})})}),l):null});em.displayName=eh;var[ef,eg]=$(eh),ev=(0,O.createSlot)("SelectContent.RemoveScroll"),ex=a.forwardRef((e,n)=>{let{__scopeSelect:r,position:l="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:s,onPointerDownOutside:i,side:d,sideOffset:c,align:h,alignOffset:m,arrowPadding:f,collisionBoundary:g,collisionPadding:v,sticky:x,hideWhenDetached:w,avoidCollisions:b,...y}=e,C=en(eh,r),[S,j]=a.useState(null),[k,N]=a.useState(null),I=(0,p.useComposedRefs)(n,e=>j(e)),[P,T]=a.useState(null),[R,E]=a.useState(null),M=J(r),[A,D]=a.useState(!1),B=a.useRef(!1);a.useEffect(()=>{if(S)return(0,K.hideOthers)(S)},[S]),(0,F.useFocusGuards)();let V=a.useCallback(e=>{let[t,...a]=M().map(e=>e.ref.current),[n]=a.slice(-1),r=document.activeElement;for(let a of e)if(a===r||(a?.scrollIntoView({block:"nearest"}),a===t&&k&&(k.scrollTop=0),a===n&&k&&(k.scrollTop=k.scrollHeight),a?.focus(),document.activeElement!==r))return},[M,k]),z=a.useCallback(()=>V([P,S]),[V,P,S]);a.useEffect(()=>{A&&z()},[A,z]);let{onOpenChange:O,triggerPointerDownPosRef:W}=C;a.useEffect(()=>{if(S){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(W.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(W.current?.y??0))}},a=a=>{e.x<=10&&e.y<=10?a.preventDefault():S.contains(a.target)||O(!1),document.removeEventListener("pointermove",t),W.current=null};return null!==W.current&&(document.addEventListener("pointermove",t),document.addEventListener("pointerup",a,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",t),document.removeEventListener("pointerup",a,{capture:!0})}}},[S,O,W]),a.useEffect(()=>{let e=()=>O(!1);return window.addEventListener("blur",e),window.addEventListener("resize",e),()=>{window.removeEventListener("blur",e),window.removeEventListener("resize",e)}},[O]);let[_,U]=eY(e=>{let t=M().filter(e=>!e.disabled),a=t.find(e=>e.ref.current===document.activeElement),n=eX(t,e,a);n&&setTimeout(()=>n.ref.current.focus())}),Z=a.useCallback((e,t,a)=>{let n=!B.current&&!a;(void 0!==C.value&&C.value===t||n)&&(T(e),n&&(B.current=!0))},[C.value]),q=a.useCallback(()=>S?.focus(),[S]),Y=a.useCallback((e,t,a)=>{let n=!B.current&&!a;(void 0!==C.value&&C.value===t||n)&&E(e)},[C.value]),X="popper"===l?eb:ew,Q=X===eb?{side:d,sideOffset:c,align:h,alignOffset:m,arrowPadding:f,collisionBoundary:g,collisionPadding:v,sticky:x,hideWhenDetached:w,avoidCollisions:b}:{};return(0,t.jsx)(ef,{scope:r,content:S,viewport:k,onViewportChange:N,itemRefCallback:Z,selectedItem:P,onItemLeave:q,itemTextRefCallback:Y,focusSelectedItem:z,selectedItemText:R,position:l,isPositioned:A,searchRef:_,children:(0,t.jsx)(G.RemoveScroll,{as:ev,allowPinchZoom:!0,children:(0,t.jsx)(H.FocusScope,{asChild:!0,trapped:C.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:(0,u.composeEventHandlers)(o,e=>{C.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,t.jsx)(L.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:i,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>C.onOpenChange(!1),children:(0,t.jsx)(X,{role:"listbox",id:C.contentId,"data-state":C.open?"open":"closed",dir:C.dir,onContextMenu:e=>e.preventDefault(),...y,...Q,onPlaced:()=>D(!0),ref:I,style:{display:"flex",flexDirection:"column",outline:"none",...y.style},onKeyDown:(0,u.composeEventHandlers)(y.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if("Tab"===e.key&&e.preventDefault(),t||1!==e.key.length||U(e.key),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let t=M().filter(e=>!e.disabled).map(e=>e.ref.current);if(["ArrowUp","End"].includes(e.key)&&(t=t.slice().reverse()),["ArrowUp","ArrowDown"].includes(e.key)){let a=e.target,n=t.indexOf(a);t=t.slice(n+1)}setTimeout(()=>V(t)),e.preventDefault()}})})})})})})});ex.displayName="SelectContentImpl";var ew=a.forwardRef((e,n)=>{let{__scopeSelect:r,onPlaced:l,...o}=e,s=en(eh,r),i=eg(eh,r),[d,c]=a.useState(null),[u,h]=a.useState(null),m=(0,p.useComposedRefs)(n,e=>h(e)),f=J(r),g=a.useRef(!1),x=a.useRef(!0),{viewport:w,selectedItem:b,selectedItemText:y,focusSelectedItem:C}=i,S=a.useCallback(()=>{if(s.trigger&&s.valueNode&&d&&u&&w&&b&&y){let e=s.trigger.getBoundingClientRect(),t=u.getBoundingClientRect(),a=s.valueNode.getBoundingClientRect(),n=y.getBoundingClientRect();if("rtl"!==s.dir){let r=n.left-t.left,l=a.left-r,o=e.left-l,s=e.width+o,i=Math.max(s,t.width),c=window.innerWidth-10,u=(0,M.clamp)(l,[10,Math.max(10,c-i)]);d.style.minWidth=s+"px",d.style.left=u+"px"}else{let r=t.right-n.right,l=window.innerWidth-a.right-r,o=window.innerWidth-e.right-l,s=e.width+o,i=Math.max(s,t.width),c=window.innerWidth-10,u=(0,M.clamp)(l,[10,Math.max(10,c-i)]);d.style.minWidth=s+"px",d.style.right=u+"px"}let r=f(),o=window.innerHeight-20,i=w.scrollHeight,c=window.getComputedStyle(u),p=parseInt(c.borderTopWidth,10),h=parseInt(c.paddingTop,10),m=parseInt(c.borderBottomWidth,10),v=p+h+i+parseInt(c.paddingBottom,10)+m,x=Math.min(5*b.offsetHeight,v),C=window.getComputedStyle(w),S=parseInt(C.paddingTop,10),j=parseInt(C.paddingBottom,10),k=e.top+e.height/2-10,N=b.offsetHeight/2,I=p+h+(b.offsetTop+N);if(I<=k){let e=r.length>0&&b===r[r.length-1].ref.current;d.style.bottom="0px";let t=Math.max(o-k,N+(e?j:0)+(u.clientHeight-w.offsetTop-w.offsetHeight)+m);d.style.height=I+t+"px"}else{let e=r.length>0&&b===r[0].ref.current;d.style.top="0px";let t=Math.max(k,p+w.offsetTop+(e?S:0)+N);d.style.height=t+(v-I)+"px",w.scrollTop=I-k+w.offsetTop}d.style.margin="10px 0",d.style.minHeight=x+"px",d.style.maxHeight=o+"px",l?.(),requestAnimationFrame(()=>g.current=!0)}},[f,s.trigger,s.valueNode,d,u,w,b,y,s.dir,l]);(0,_.useLayoutEffect)(()=>S(),[S]);let[j,k]=a.useState();(0,_.useLayoutEffect)(()=>{u&&k(window.getComputedStyle(u).zIndex)},[u]);let N=a.useCallback(e=>{e&&!0===x.current&&(S(),C?.(),x.current=!1)},[S,C]);return(0,t.jsx)(ey,{scope:r,contentWrapper:d,shouldExpandOnScrollRef:g,onScrollButtonChange:N,children:(0,t.jsx)("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:(0,t.jsx)(v.Primitive.div,{...o,ref:m,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});ew.displayName="SelectItemAlignedPosition";var eb=a.forwardRef((e,a)=>{let{__scopeSelect:n,align:r="start",collisionPadding:l=10,...o}=e,s=et(n);return(0,t.jsx)(V.Content,{...s,...o,ref:a,align:r,collisionPadding:l,style:{boxSizing:"border-box",...o.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});eb.displayName="SelectPopperPosition";var[ey,eC]=$(eh,{}),eS="SelectViewport",ej=a.forwardRef((e,n)=>{let{__scopeSelect:r,nonce:l,...o}=e,s=eg(eS,r),i=eC(eS,r),d=(0,p.useComposedRefs)(n,s.onViewportChange),c=a.useRef(0);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:l}),(0,t.jsx)(X.Slot,{scope:r,children:(0,t.jsx)(v.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:d,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:(0,u.composeEventHandlers)(o.onScroll,e=>{let t=e.currentTarget,{contentWrapper:a,shouldExpandOnScrollRef:n}=i;if(n?.current&&a){let e=Math.abs(c.current-t.scrollTop);if(e>0){let n=window.innerHeight-20,r=Math.max(parseFloat(a.style.minHeight),parseFloat(a.style.height));if(r<n){let l=r+e,o=Math.min(n,l),s=l-o;a.style.height=o+"px","0px"===a.style.bottom&&(t.scrollTop=s>0?s:0,a.style.justifyContent="flex-end")}}}c.current=t.scrollTop})})})]})});ej.displayName=eS;var ek="SelectGroup",[eN,eI]=$(ek),eP=a.forwardRef((e,a)=>{let{__scopeSelect:n,...r}=e,l=(0,B.useId)();return(0,t.jsx)(eN,{scope:n,id:l,children:(0,t.jsx)(v.Primitive.div,{role:"group","aria-labelledby":l,...r,ref:a})})});eP.displayName=ek;var eT="SelectLabel",eR=a.forwardRef((e,a)=>{let{__scopeSelect:n,...r}=e,l=eI(eT,n);return(0,t.jsx)(v.Primitive.div,{id:l.id,...r,ref:a})});eR.displayName=eT;var eE="SelectItem",[eM,eA]=$(eE),eD=a.forwardRef((e,n)=>{let{__scopeSelect:r,value:l,disabled:o=!1,textValue:s,...i}=e,d=en(eE,r),c=eg(eE,r),h=d.value===l,[m,f]=a.useState(s??""),[g,x]=a.useState(!1),w=(0,p.useComposedRefs)(n,e=>c.itemRefCallback?.(e,l,o)),b=(0,B.useId)(),y=a.useRef("touch"),C=()=>{o||(d.onValueChange(l),d.onOpenChange(!1))};if(""===l)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,t.jsx)(eM,{scope:r,value:l,disabled:o,textId:b,isSelected:h,onItemTextChange:a.useCallback(e=>{f(t=>t||(e?.textContent??"").trim())},[]),children:(0,t.jsx)(X.ItemSlot,{scope:r,value:l,disabled:o,textValue:m,children:(0,t.jsx)(v.Primitive.div,{role:"option","aria-labelledby":b,"data-highlighted":g?"":void 0,"aria-selected":h&&g,"data-state":h?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...i,ref:w,onFocus:(0,u.composeEventHandlers)(i.onFocus,()=>x(!0)),onBlur:(0,u.composeEventHandlers)(i.onBlur,()=>x(!1)),onClick:(0,u.composeEventHandlers)(i.onClick,()=>{"mouse"!==y.current&&C()}),onPointerUp:(0,u.composeEventHandlers)(i.onPointerUp,()=>{"mouse"===y.current&&C()}),onPointerDown:(0,u.composeEventHandlers)(i.onPointerDown,e=>{y.current=e.pointerType}),onPointerMove:(0,u.composeEventHandlers)(i.onPointerMove,e=>{y.current=e.pointerType,o?c.onItemLeave?.():"mouse"===y.current&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,u.composeEventHandlers)(i.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:(0,u.composeEventHandlers)(i.onKeyDown,e=>{(c.searchRef?.current===""||" "!==e.key)&&(q.includes(e.key)&&C()," "===e.key&&e.preventDefault())})})})})});eD.displayName=eE;var eL="SelectItemText",eF=a.forwardRef((e,n)=>{let{__scopeSelect:r,className:l,style:o,...s}=e,i=en(eL,r),d=eg(eL,r),c=eA(eL,r),u=el(eL,r),[h,m]=a.useState(null),f=(0,p.useComposedRefs)(n,e=>m(e),c.onItemTextChange,e=>d.itemTextRefCallback?.(e,c.value,c.disabled)),g=h?.textContent,x=a.useMemo(()=>(0,t.jsx)("option",{value:c.value,disabled:c.disabled,children:g},c.value),[c.disabled,c.value,g]),{onNativeOptionAdd:w,onNativeOptionRemove:b}=u;return(0,_.useLayoutEffect)(()=>(w(x),()=>b(x)),[w,b,x]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(v.Primitive.span,{id:c.textId,...s,ref:f}),c.isSelected&&i.valueNode&&!i.valueNodeHasChildren?E.createPortal(s.children,i.valueNode):null]})});eF.displayName=eL;var eH="SelectItemIndicator",eB=a.forwardRef((e,a)=>{let{__scopeSelect:n,...r}=e;return eA(eH,n).isSelected?(0,t.jsx)(v.Primitive.span,{"aria-hidden":!0,...r,ref:a}):null});eB.displayName=eH;var eV="SelectScrollUpButton",ez=a.forwardRef((e,n)=>{let r=eg(eV,e.__scopeSelect),l=eC(eV,e.__scopeSelect),[o,s]=a.useState(!1),i=(0,p.useComposedRefs)(n,l.onScrollButtonChange);return(0,_.useLayoutEffect)(()=>{if(r.viewport&&r.isPositioned){let e=function(){s(t.scrollTop>0)},t=r.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[r.viewport,r.isPositioned]),o?(0,t.jsx)(e_,{...e,ref:i,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=r;e&&t&&(e.scrollTop=e.scrollTop-t.offsetHeight)}}):null});ez.displayName=eV;var eO="SelectScrollDownButton",eW=a.forwardRef((e,n)=>{let r=eg(eO,e.__scopeSelect),l=eC(eO,e.__scopeSelect),[o,s]=a.useState(!1),i=(0,p.useComposedRefs)(n,l.onScrollButtonChange);return(0,_.useLayoutEffect)(()=>{if(r.viewport&&r.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;s(Math.ceil(t.scrollTop)<e)},t=r.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[r.viewport,r.isPositioned]),o?(0,t.jsx)(e_,{...e,ref:i,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=r;e&&t&&(e.scrollTop=e.scrollTop+t.offsetHeight)}}):null});eW.displayName=eO;var e_=a.forwardRef((e,n)=>{let{__scopeSelect:r,onAutoScroll:l,...o}=e,s=eg("SelectScrollButton",r),i=a.useRef(null),d=J(r),c=a.useCallback(()=>{null!==i.current&&(window.clearInterval(i.current),i.current=null)},[]);return a.useEffect(()=>()=>c(),[c]),(0,_.useLayoutEffect)(()=>{let e=d().find(e=>e.ref.current===document.activeElement);e?.ref.current?.scrollIntoView({block:"nearest"})},[d]),(0,t.jsx)(v.Primitive.div,{"aria-hidden":!0,...o,ref:n,style:{flexShrink:0,...o.style},onPointerDown:(0,u.composeEventHandlers)(o.onPointerDown,()=>{null===i.current&&(i.current=window.setInterval(l,50))}),onPointerMove:(0,u.composeEventHandlers)(o.onPointerMove,()=>{s.onItemLeave?.(),null===i.current&&(i.current=window.setInterval(l,50))}),onPointerLeave:(0,u.composeEventHandlers)(o.onPointerLeave,()=>{c()})})}),eU=a.forwardRef((e,a)=>{let{__scopeSelect:n,...r}=e;return(0,t.jsx)(v.Primitive.div,{"aria-hidden":!0,...r,ref:a})});eU.displayName="SelectSeparator";var eK="SelectArrow",eG=a.forwardRef((e,a)=>{let{__scopeSelect:n,...r}=e,l=et(n),o=en(eK,n),s=eg(eK,n);return o.open&&"popper"===s.position?(0,t.jsx)(V.Arrow,{...l,...r,ref:a}):null});eG.displayName=eK;var eZ=a.forwardRef(({__scopeSelect:e,value:n,...r},l)=>{let o=a.useRef(null),s=(0,p.useComposedRefs)(l,o),i=(0,f.usePrevious)(n);return a.useEffect(()=>{let e=o.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(i!==n&&t){let a=new Event("change",{bubbles:!0});t.call(e,n),e.dispatchEvent(a)}},[i,n]),(0,t.jsx)(v.Primitive.select,{...r,style:{...U.VISUALLY_HIDDEN_STYLES,...r.style},ref:s,defaultValue:n})});function eq(e){return""===e||void 0===e}function eY(e){let t=(0,W.useCallbackRef)(e),n=a.useRef(""),r=a.useRef(0),l=a.useCallback(e=>{let a=n.current+e;t(a),function e(t){n.current=t,window.clearTimeout(r.current),""!==t&&(r.current=window.setTimeout(()=>e(""),1e3))}(a)},[t]),o=a.useCallback(()=>{n.current="",window.clearTimeout(r.current)},[]);return a.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,l,o]}function eX(e,t,a){var n,r;let l=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,o=a?e.indexOf(a):-1,s=(n=e,r=Math.max(o,0),n.map((e,t)=>n[(r+t)%n.length]));1===l.length&&(s=s.filter(e=>e!==a));let i=s.find(e=>e.textValue.toLowerCase().startsWith(l.toLowerCase()));return i!==a?i:void 0}eZ.displayName="SelectBubbleInput",e.s(["Arrow",()=>eG,"Content",()=>em,"Group",()=>eP,"Icon",()=>eu,"Item",()=>eD,"ItemIndicator",()=>eB,"ItemText",()=>eF,"Label",()=>eR,"Portal",()=>ep,"Root",()=>eo,"ScrollDownButton",()=>eW,"ScrollUpButton",()=>ez,"Select",()=>eo,"SelectArrow",()=>eG,"SelectContent",()=>em,"SelectGroup",()=>eP,"SelectIcon",()=>eu,"SelectItem",()=>eD,"SelectItemIndicator",()=>eB,"SelectItemText",()=>eF,"SelectLabel",()=>eR,"SelectPortal",()=>ep,"SelectScrollDownButton",()=>eW,"SelectScrollUpButton",()=>ez,"SelectSeparator",()=>eU,"SelectTrigger",()=>ei,"SelectValue",()=>ec,"SelectViewport",()=>ej,"Separator",()=>eU,"Trigger",()=>ei,"Value",()=>ec,"Viewport",()=>ej,"createSelectScope",()=>ee],83830);var eJ=e.i(83830),eJ=eJ,eQ=e.i(99105);let e$=(0,n.default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]),e0=eJ.Root;eJ.Group;let e1=eJ.Value,e2=a.forwardRef(({className:e,children:a,...n},r)=>(0,t.jsxs)(eJ.Trigger,{ref:r,className:(0,T.cn)("border-input ring-offset-background placeholder:text-muted-foreground focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...n,children:[a,(0,t.jsx)(eJ.Icon,{asChild:!0,children:(0,t.jsx)(eQ.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));e2.displayName=eJ.Trigger.displayName;let e4=a.forwardRef(({className:e,...a},n)=>(0,t.jsx)(eJ.ScrollUpButton,{ref:n,className:(0,T.cn)("flex cursor-default items-center justify-center py-1",e),...a,children:(0,t.jsx)(e$,{className:"h-4 w-4"})}));e4.displayName=eJ.ScrollUpButton.displayName;let e5=a.forwardRef(({className:e,...a},n)=>(0,t.jsx)(eJ.ScrollDownButton,{ref:n,className:(0,T.cn)("flex cursor-default items-center justify-center py-1",e),...a,children:(0,t.jsx)(eQ.ChevronDown,{className:"h-4 w-4"})}));e5.displayName=eJ.ScrollDownButton.displayName;let e3=a.forwardRef(({className:e,children:a,position:n="popper",...r},l)=>(0,t.jsx)(eJ.Portal,{children:(0,t.jsxs)(eJ.Content,{ref:l,className:(0,T.cn)("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 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md","popper"===n&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:n,...r,children:[(0,t.jsx)(e4,{}),(0,t.jsx)(eJ.Viewport,{className:(0,T.cn)("p-1","popper"===n&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:a}),(0,t.jsx)(e5,{})]})}));e3.displayName=eJ.Content.displayName,a.forwardRef(({className:e,...a},n)=>(0,t.jsx)(eJ.Label,{ref:n,className:(0,T.cn)("px-2 py-1.5 text-sm font-semibold",e),...a})).displayName=eJ.Label.displayName;let e7=a.forwardRef(({className:e,children:a,...n},r)=>(0,t.jsxs)(eJ.Item,{ref:r,className:(0,T.cn)("focus:bg-accent focus:text-accent-foreground relative flex w-full cursor-default items-center rounded-sm py-1.5 pr-8 pl-2 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...n,children:[(0,t.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,t.jsx)(eJ.ItemIndicator,{children:(0,t.jsx)(o.Check,{className:"h-4 w-4"})})}),(0,t.jsx)(eJ.ItemText,{children:a})]}));e7.displayName=eJ.Item.displayName,a.forwardRef(({className:e,...a},n)=>(0,t.jsx)(eJ.Separator,{ref:n,className:(0,T.cn)("bg-muted -mx-1 my-1 h-px",e),...a})).displayName=eJ.Separator.displayName;var e6=e.i(21023);let e9=(0,e6.createServerReference)("40a92a4f09ee0bb639bbad64daa27e202c6c918023",e6.callServer,void 0,e6.findSourceMapURL,"updateSettingsAction");var e8=e.i(17406),te=e.i(86782),tt=e.i(98804),ta=e.i(93752),ta=ta,tn=e.i(83902);function tr(e){return(0,t.jsx)(ta.default,{className:(0,T.cn)("h-4 w-4",e.className),...e})}function tl({className:e}){return(0,t.jsx)(tt.default,{src:"/icons/editors/vscode.svg",alt:"VS Code",width:24,height:24,className:(0,T.cn)("rounded-sm object-contain",e)})}function to({className:e}){return(0,t.jsx)(tt.default,{src:"/icons/agents/cursor.jpeg",alt:"Cursor",width:24,height:24,className:(0,T.cn)("rounded-sm object-contain",e)})}function ts({className:e}){return(0,t.jsx)(tt.default,{src:"/icons/editors/windsurf.svg",alt:"Windsurf",width:24,height:24,className:(0,T.cn)("rounded-sm object-contain",e)})}function ti({className:e}){return(0,t.jsx)(tt.default,{src:"/icons/editors/zed.svg",alt:"Zed",width:24,height:24,className:(0,T.cn)("rounded-sm object-contain",e)})}function td({className:e,...a}){return(0,t.jsx)(tn.Rocket,{className:(0,T.cn)("h-4 w-4",e),...a})}tl.displayName="VsCodeIcon",to.displayName="CursorEditorIcon",ts.displayName="WindsurfIcon",ti.displayName="ZedIcon",td.displayName="AntigravityIcon";let tc={vscode:tl,cursor:to,windsurf:ts,zed:ti,antigravity:td},tu=[{value:e8.AgentType.ClaudeCode,label:"Claude Code"},{value:e8.AgentType.Cursor,label:"Cursor"},{value:e8.AgentType.GeminiCli,label:"Gemini CLI"},{value:e8.AgentType.Aider,label:"Aider"},{value:e8.AgentType.Continue,label:"Continue"},{value:e8.AgentType.Dev,label:"Dev"}],tp=[{value:e8.AgentAuthMethod.Session,label:"Session"},{value:e8.AgentAuthMethod.Token,label:"Token"}],th=[{value:e8.EditorType.VsCode,label:"VS Code"},{value:e8.EditorType.Cursor,label:"Cursor"},{value:e8.EditorType.Windsurf,label:"Windsurf"},{value:e8.EditorType.Zed,label:"Zed"},{value:e8.EditorType.Antigravity,label:"Antigravity"}];function tm({label:e,htmlFor:a,children:n}){return(0,t.jsxs)("div",{className:"flex items-center justify-between gap-4 border-b py-3 last:border-b-0",children:[(0,t.jsx)(i.Label,{htmlFor:a,className:"text-sm font-normal whitespace-nowrap",children:e}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:n})]})}function tf({label:e,id:a,testId:n,value:r,options:l,onChange:o}){return(0,t.jsx)(tm,{label:e,htmlFor:a,children:(0,t.jsxs)(e0,{value:r,onValueChange:o,children:[(0,t.jsx)(e2,{id:a,"data-testid":n,className:"w-45",children:(0,t.jsx)(e1,{})}),(0,t.jsx)(e3,{children:l.map(e=>(0,t.jsx)(e7,{value:e.value,children:e.label},e.value))})]})})}function tg({label:e,id:a,testId:n,checked:r,onChange:l}){return(0,t.jsx)(tm,{label:e,htmlFor:a,children:(0,t.jsx)(R,{id:a,"data-testid":n,checked:r,onCheckedChange:l})})}function tv({settings:e,shepHome:n,dbFileSize:i}){let{isPending:u,showSaved:p,save:h}=function(){let[e,t]=(0,a.useTransition)(),[n,r]=(0,a.useState)(!1),l=(0,a.useRef)(!1);return(0,a.useEffect)(()=>{if(l.current&&!e){r(!0);let e=setTimeout(()=>r(!1),2e3);return()=>clearTimeout(e)}l.current=e},[e]),{isPending:e,showSaved:n,save:(0,a.useCallback)(e=>{t(async()=>{let t=await e9(e);t.success||s.toast.error(t.error??"Failed to save settings")})},[t])}}(),m=e.featureFlags??{skills:!1,envDeploy:!1,debug:!1},[f,g]=(0,a.useState)(e.agent.type),[v,x]=(0,a.useState)(e.agent.authMethod),[w,b]=(0,a.useState)(e.agent.token??""),[y,C]=(0,a.useState)(!1),[S,j]=(0,a.useState)(e.environment.defaultEditor),k=e.environment.shellPreference,[N,I]=(0,a.useState)(e.workflow.openPrOnImplementationComplete),[P,T]=(0,a.useState)(e.workflow.approvalGateDefaults.pushOnImplementationComplete),[R,E]=(0,a.useState)(e.workflow.approvalGateDefaults.allowPrd),[M,A]=(0,a.useState)(e.workflow.approvalGateDefaults.allowPlan),[D,L]=(0,a.useState)(e.workflow.approvalGateDefaults.allowMerge),[F,H]=(0,a.useState)(null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):""),[B,V]=(0,a.useState)(null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):""),[z,O]=(0,a.useState)(null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):""),[W,_]=(0,a.useState)(e.notifications.inApp.enabled),[U,K]=(0,a.useState)(e.notifications.browser.enabled),[G,Z]=(0,a.useState)(e.notifications.desktop.enabled),[q,Y]=(0,a.useState)({...e.notifications.events}),[X,J]=(0,a.useState)({...m}),Q=null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):"",$=null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):"",ee=null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):"";function et(e){if(""===e)return;let t=parseInt(e,10);return Number.isNaN(t)||t<=0?void 0:t}function ea(e={}){let t={type:f,authMethod:v,...e},a={type:t.type,authMethod:t.authMethod};return t.authMethod===e8.AgentAuthMethod.Token&&(a.token=e.token??w),{agent:a}}function en(e={}){let t=et(e.ciTimeout??B);return{workflow:{openPrOnImplementationComplete:e.openPr??N,approvalGateDefaults:{pushOnImplementationComplete:e.pushOnComplete??P,allowPrd:e.allowPrd??R,allowPlan:e.allowPlan??M,allowMerge:e.allowMerge??D},ciMaxFixAttempts:et(e.ciMaxFix??F),ciWatchTimeoutMs:null!=t?1e3*t:void 0,ciLogMaxChars:et(e.ciLogMax??z)}}}function er(e={}){return{notifications:{inApp:{enabled:e.inApp??W},browser:{enabled:e.browser??U},desktop:{enabled:e.desktop??G},events:e.events??q}}}return(0,t.jsxs)("div",{"data-testid":"settings-page-client",className:"max-w-lg",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b pb-3",children:[(0,t.jsx)("h1",{className:"text-lg font-semibold tracking-tight",children:"Settings"}),u?(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:"Saving..."}):null,p&&!u?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-xs text-green-600",children:[(0,t.jsx)(o.Check,{className:"h-3 w-3"}),"Saved"]}):null]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"agent-settings-section",children:"Agent"}),(0,t.jsx)(tm,{label:"Agent",htmlFor:"agent-type",children:(0,t.jsxs)(e0,{value:f,onValueChange:e=>{g(e),h(ea({type:e}))},children:[(0,t.jsx)(e2,{id:"agent-type","data-testid":"agent-type-select",className:"w-45",children:(0,t.jsx)(e1,{})}),(0,t.jsx)(e3,{children:tu.map(e=>{let a=(0,te.getAgentTypeIcon)(e.value);return(0,t.jsx)(e7,{value:e.value,children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)(a,{className:"h-4 w-4 shrink-0"}),e.label]})},e.value)})})]})}),(0,t.jsx)(tf,{label:"Authentication",id:"auth-method",testId:"auth-method-select",value:v,options:tp,onChange:e=>{x(e),h(ea({authMethod:e}))}}),v===e8.AgentAuthMethod.Token&&(0,t.jsx)(tm,{label:"API Token",htmlFor:"agent-token",children:(0,t.jsxs)("div",{className:"relative w-45",children:[(0,t.jsx)(d.Input,{id:"agent-token","data-testid":"agent-token-input",type:y?"text":"password",value:w,onChange:e=>b(e.target.value),onBlur:()=>{w!==(e.agent.token??"")&&h(ea({token:w}))},placeholder:"Enter token",className:"pr-8"}),(0,t.jsx)(c.Button,{type:"button",variant:"ghost",size:"sm",className:"absolute top-0 right-0 h-full px-2 hover:bg-transparent",onClick:()=>C(!y),"data-testid":"toggle-token-visibility","aria-label":y?"Hide token":"Show token",children:y?(0,t.jsx)(l,{className:"h-3 w-3"}):(0,t.jsx)(r,{className:"h-3 w-3"})})]})}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"environment-settings-section",children:"Environment"}),(0,t.jsx)(tm,{label:"Editor",htmlFor:"default-editor",children:(0,t.jsxs)(e0,{value:S,onValueChange:e=>{j(e),h({environment:{defaultEditor:e,shellPreference:k}})},children:[(0,t.jsx)(e2,{id:"default-editor","data-testid":"editor-select",className:"w-45",children:(0,t.jsx)(e1,{})}),(0,t.jsx)(e3,{children:th.map(e=>{var a;let n=(a=e.value)&&a in tc?tc[a]:tr;return(0,t.jsx)(e7,{value:e.value,children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)(n,{className:"h-4 w-4 shrink-0"}),e.label]})},e.value)})})]})}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"workflow-settings-section",children:"Workflow"}),(0,t.jsx)(tg,{label:"Open PR on complete",id:"open-pr",testId:"switch-open-pr",checked:N,onChange:e=>{I(e),h(en({openPr:e}))}}),(0,t.jsx)(tg,{label:"Push on complete",id:"push-on-complete",testId:"switch-push-on-complete",checked:P,onChange:e=>{T(e),h(en({pushOnComplete:e}))}}),(0,t.jsx)(tg,{label:"Auto-approve PRD",id:"allow-prd",testId:"switch-allow-prd",checked:R,onChange:e=>{E(e),h(en({allowPrd:e}))}}),(0,t.jsx)(tg,{label:"Auto-approve Plan",id:"allow-plan",testId:"switch-allow-plan",checked:M,onChange:e=>{A(e),h(en({allowPlan:e}))}}),(0,t.jsx)(tg,{label:"Auto-approve Merge",id:"allow-merge",testId:"switch-allow-merge",checked:D,onChange:e=>{L(e),h(en({allowMerge:e}))}}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"ci-settings-section",children:"CI"}),(0,t.jsx)(tm,{label:"Max fix attempts",htmlFor:"ci-max-fix",children:(0,t.jsx)(d.Input,{id:"ci-max-fix","data-testid":"ci-max-fix-input",type:"text",inputMode:"numeric",pattern:"[0-9]*",placeholder:"3",value:F,onChange:e=>H(e.target.value),onBlur:()=>{F!==Q&&h(en({ciMaxFix:F}))},className:"w-20"})}),(0,t.jsx)(tm,{label:"Watch timeout (s)",htmlFor:"ci-timeout",children:(0,t.jsx)(d.Input,{id:"ci-timeout","data-testid":"ci-timeout-input",type:"text",inputMode:"numeric",pattern:"[0-9]*",placeholder:"300",value:B,onChange:e=>V(e.target.value),onBlur:()=>{B!==$&&h(en({ciTimeout:B}))},className:"w-20"})}),(0,t.jsx)(tm,{label:"Max log chars",htmlFor:"ci-log-max",children:(0,t.jsx)(d.Input,{id:"ci-log-max","data-testid":"ci-log-max-input",type:"text",inputMode:"numeric",pattern:"[0-9]*",placeholder:"50000",value:z,onChange:e=>O(e.target.value),onBlur:()=>{z!==ee&&h(en({ciLogMax:z}))},className:"w-20"})}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"notification-settings-section",children:"Notifications"}),(0,t.jsx)(tg,{label:"In-app",id:"notif-in-app",testId:"switch-in-app",checked:W,onChange:e=>{_(e),h(er({inApp:e}))}}),(0,t.jsx)(tg,{label:"Browser",id:"notif-browser",testId:"switch-browser",checked:U,onChange:e=>{K(e),h(er({browser:e}))}}),(0,t.jsx)(tg,{label:"Desktop",id:"notif-desktop",testId:"switch-desktop",checked:G,onChange:e=>{Z(e),h(er({desktop:e}))}}),(0,t.jsx)(tg,{label:"Agent started",id:"notif-event-agentStarted",testId:"switch-event-agentStarted",checked:q.agentStarted,onChange:e=>{let t={...q,agentStarted:e};Y(t),h(er({events:t}))}}),(0,t.jsx)(tg,{label:"Phase completed",id:"notif-event-phaseCompleted",testId:"switch-event-phaseCompleted",checked:q.phaseCompleted,onChange:e=>{let t={...q,phaseCompleted:e};Y(t),h(er({events:t}))}}),(0,t.jsx)(tg,{label:"Waiting approval",id:"notif-event-waitingApproval",testId:"switch-event-waitingApproval",checked:q.waitingApproval,onChange:e=>{let t={...q,waitingApproval:e};Y(t),h(er({events:t}))}}),(0,t.jsx)(tg,{label:"Agent completed",id:"notif-event-agentCompleted",testId:"switch-event-agentCompleted",checked:q.agentCompleted,onChange:e=>{let t={...q,agentCompleted:e};Y(t),h(er({events:t}))}}),(0,t.jsx)(tg,{label:"Agent failed",id:"notif-event-agentFailed",testId:"switch-event-agentFailed",checked:q.agentFailed,onChange:e=>{let t={...q,agentFailed:e};Y(t),h(er({events:t}))}}),(0,t.jsx)(tg,{label:"PR merged",id:"notif-event-prMerged",testId:"switch-event-prMerged",checked:q.prMerged,onChange:e=>{let t={...q,prMerged:e};Y(t),h(er({events:t}))}}),(0,t.jsx)(tg,{label:"PR closed",id:"notif-event-prClosed",testId:"switch-event-prClosed",checked:q.prClosed,onChange:e=>{let t={...q,prClosed:e};Y(t),h(er({events:t}))}}),(0,t.jsx)(tg,{label:"PR checks passed",id:"notif-event-prChecksPassed",testId:"switch-event-prChecksPassed",checked:q.prChecksPassed,onChange:e=>{let t={...q,prChecksPassed:e};Y(t),h(er({events:t}))}}),(0,t.jsx)(tg,{label:"PR checks failed",id:"notif-event-prChecksFailed",testId:"switch-event-prChecksFailed",checked:q.prChecksFailed,onChange:e=>{let t={...q,prChecksFailed:e};Y(t),h(er({events:t}))}}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"feature-flags-settings-section",children:"Feature Flags"}),(0,t.jsx)(tg,{label:"Skills",id:"flag-skills",testId:"switch-flag-skills",checked:X.skills,onChange:e=>{let t={...X,skills:e};J(t),h({featureFlags:t})}}),(0,t.jsx)(tg,{label:"Deployments",id:"flag-envDeploy",testId:"switch-flag-envDeploy",checked:X.envDeploy,onChange:e=>{let t={...X,envDeploy:e};J(t),h({featureFlags:t})}}),(0,t.jsx)(tg,{label:"Debug",id:"flag-debug",testId:"switch-flag-debug",checked:X.debug,onChange:e=>{let t={...X,debug:e};J(t),h({featureFlags:t})}}),(0,t.jsx)("h2",{className:"text-muted-foreground mt-6 mb-1 text-xs font-medium tracking-wide uppercase","data-testid":"database-settings-section",children:"Database"}),(0,t.jsx)(tm,{label:"Location",children:(0,t.jsx)("span",{className:"text-muted-foreground max-w-50 truncate font-mono text-xs","data-testid":"shep-home-path",children:n})}),(0,t.jsx)(tm,{label:"Size",children:(0,t.jsx)("span",{className:"text-muted-foreground text-xs","data-testid":"db-file-size",children:i})})]})]})}e.s(["SettingsPageClient",()=>tv],41952)}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,24042,64970,e=>{"use strict";var t=e.i(3645);let n=(0,t.default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",()=>n],24042);let r=(0,t.default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);e.s(["Square",()=>r],64970)},81803,72714,e=>{"use strict";var t=e.i(20314),n=e.i(83428),r=e.i(51251),a=e.i(31777),o=e.i(35364),l=e.i(8361);function i({label:e,onClick:i,loading:s,error:u,icon:d,iconOnly:c=!1,variant:f="outline",size:p="sm"}){let m=(0,l.useSoundAction)("click");return(0,t.jsxs)(o.Button,{variant:f,size:p,"aria-label":e,disabled:s,onClick:()=>{m.play(),i()},className:(0,a.cn)("gap-1.5",u&&"text-destructive hover:text-destructive",!u&&c&&"ghost"===f&&"text-muted-foreground cursor-pointer rounded-full transition-colors hover:text-blue-500"),children:[s?(0,t.jsx)(n.Loader2,{className:"size-4 animate-spin"}):u?(0,t.jsx)(r.CircleAlert,{className:"size-4"}):(0,t.jsx)(d,{className:"size-4"}),c?null:e]})}e.s(["ActionButton",()=>i],72714),e.s([],81803)},30702,e=>{"use strict";let t=(0,e.i(3645).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>t],30702)},38573,e=>{"use strict";let t=(0,e.i(3645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],38573)},2287,e=>{"use strict";var t=e.i(20314),n=e.i(79054),r=e.i(90033),a=e.i(90537),a=a,o=e.i(31777);let l=r.Dialog.Root;r.Dialog.Trigger;let i=r.Dialog.Portal,s=r.Dialog.Close,u=n.forwardRef(({className:e,onClick:n,...a},l)=>(0,t.jsx)(r.Dialog.Overlay,{ref:l,className:(0,o.cn)("fixed inset-0 z-50 bg-black/80",e),onClick:e=>{e.stopPropagation(),n?.(e)},...a}));u.displayName=r.Dialog.Overlay.displayName;let d=n.forwardRef(({className:e,children:n,...l},s)=>(0,t.jsxs)(i,{children:[(0,t.jsx)(u,{}),(0,t.jsxs)(r.Dialog.Content,{ref:s,className:(0,o.cn)("bg-background fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg sm:rounded-lg",e),...l,children:[n,(0,t.jsxs)(r.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[(0,t.jsx)(a.default,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]}));d.displayName=r.Dialog.Content.displayName;let c=({className:e,...n})=>(0,t.jsx)("div",{className:(0,o.cn)("flex flex-col space-y-1.5 text-center sm:text-left",e),...n});c.displayName="DialogHeader";let f=({className:e,...n})=>(0,t.jsx)("div",{className:(0,o.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...n});f.displayName="DialogFooter";let p=n.forwardRef(({className:e,...n},a)=>(0,t.jsx)(r.Dialog.Title,{ref:a,className:(0,o.cn)("text-lg leading-none font-semibold tracking-tight",e),...n}));p.displayName=r.Dialog.Title.displayName;let m=n.forwardRef(({className:e,...n},a)=>(0,t.jsx)(r.Dialog.Description,{ref:a,className:(0,o.cn)("text-muted-foreground text-sm",e),...n}));m.displayName=r.Dialog.Description.displayName,e.s(["Dialog",()=>l,"DialogClose",()=>s,"DialogContent",()=>d,"DialogDescription",()=>m,"DialogFooter",()=>f,"DialogHeader",()=>c,"DialogTitle",()=>p],2287)},99348,17466,e=>{"use strict";var t=e.i(20314),n=e.i(79054),r=e.i(83428),a=e.i(30702),o=e.i(38573),l=e.i(17406),i=e.i(81846),s=e.i(2287),u=e.i(21023);let d=(0,u.createServerReference)("404164a62b23bfde087b4d428d4c6da0045542d240",u.callServer,void 0,u.findSourceMapURL,"getDeploymentLogs");function c({open:e,onOpenChange:r,targetId:a}){let{logs:o,isConnected:l}=function(e){let[t,r]=(0,n.useState)([]),[a,o]=(0,n.useState)(!1),l=(0,n.useRef)(null),i=(0,n.useCallback)(()=>{l.current&&(l.current.close(),l.current=null),o(!1)},[]);return(0,n.useEffect)(()=>{if(!e){r([]),o(!1);return}d(e).then(e=>{e&&r(e)}).catch(()=>{});let t=new EventSource(`/api/deployment-logs?targetId=${e}`);return l.current=t,t.onopen=()=>{o(!0)},t.addEventListener("log",e=>{let t=JSON.parse(e.data);r(e=>[...e,t])}),t.onerror=()=>{o(!1)},()=>{t.close(),l.current=null}},[e,i]),{logs:t,isConnected:a}}(e?a:null);return(0,t.jsx)(f,{open:e,onOpenChange:r,logs:o,isConnected:l})}function f({open:e,onOpenChange:r,logs:a,isConnected:l}){let i=(0,n.useRef)(null),u=(0,n.useRef)(!0),d=(0,n.useCallback)(()=>{let e=i.current;e&&(u.current=e.scrollTop+e.clientHeight>=e.scrollHeight-50)},[]);return(0,n.useEffect)(()=>{u.current&&i.current&&(i.current.scrollTop=i.current.scrollHeight)},[a]),(0,t.jsx)(s.Dialog,{open:e,onOpenChange:r,children:(0,t.jsxs)(s.DialogContent,{className:"flex h-[calc(100vh-48px)] max-h-[calc(100vh-48px)] w-full max-w-[calc(100vw-48px)] flex-col gap-0 bg-zinc-950 p-0 text-zinc-100 sm:rounded-lg","aria-describedby":void 0,children:[(0,t.jsxs)(s.DialogHeader,{className:"flex flex-row items-center justify-between border-b border-zinc-800 px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(o.Terminal,{className:"h-4 w-4 text-zinc-400"}),(0,t.jsx)(s.DialogTitle,{className:"text-sm font-medium text-zinc-100",children:"Server Logs"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 pr-8",children:[(0,t.jsx)("span",{className:`inline-block h-2 w-2 rounded-full ${l?"bg-green-500":"bg-zinc-500"}`}),(0,t.jsx)("span",{className:"text-xs text-zinc-400",children:l?"Connected":"Disconnected"})]})]}),(0,t.jsxs)("div",{ref:i,onScroll:d,className:"flex-1 overflow-auto p-4 font-mono text-sm leading-relaxed",children:[0===a.length?(0,t.jsx)("p",{className:"text-zinc-500",children:"Waiting for log output..."}):a.map(e=>(0,t.jsx)(p,{entry:e},`${e.timestamp}-${e.stream}-${e.line}`)),!l&&a.length>0&&(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-800 pt-2 text-zinc-500",children:"[Server stopped]"})]})]})})}function p({entry:e}){return(0,t.jsx)("div",{"data-stream":e.stream,className:"stderr"===e.stream?"text-red-400":"text-zinc-200",children:(0,t.jsx)("span",{className:"break-all whitespace-pre-wrap",children:e.line})})}function m({status:e,url:s,targetId:u}){let[d,f]=(0,n.useState)(!1),p=u&&(e===l.DeploymentState.Booting||e===l.DeploymentState.Ready);switch(e){case l.DeploymentState.Booting:return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(i.Badge,{className:"border-transparent bg-blue-50 text-blue-700 hover:bg-blue-50",children:[(0,t.jsx)(r.Loader2,{className:"mr-1 h-3.5 w-3.5 animate-spin"}),"Starting...",p?(0,t.jsx)("button",{type:"button","aria-label":"View server logs",className:"ml-1.5 inline-flex items-center rounded-sm p-0.5 hover:bg-blue-100",onClick:e=>{e.stopPropagation(),f(!0)},children:(0,t.jsx)(o.Terminal,{className:"h-3 w-3"})}):null]}),p?(0,t.jsx)(c,{open:d,onOpenChange:f,targetId:u}):null]});case l.DeploymentState.Ready:return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(i.Badge,{className:"border-transparent bg-green-50 text-green-700 hover:bg-green-50",children:[(0,t.jsx)("span",{className:"mr-1 inline-block h-2 w-2 rounded-full bg-green-500"}),s?(0,t.jsxs)("a",{href:s,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 hover:underline",onClick:e=>e.stopPropagation(),children:[s,(0,t.jsx)(a.ExternalLink,{className:"h-3 w-3"})]}):"Ready",p?(0,t.jsx)("button",{type:"button","aria-label":"View server logs",className:"ml-1.5 inline-flex items-center rounded-sm p-0.5 hover:bg-green-100",onClick:e=>{e.stopPropagation(),f(!0)},children:(0,t.jsx)(o.Terminal,{className:"h-3 w-3"})}):null]}),p?(0,t.jsx)(c,{open:d,onOpenChange:f,targetId:u}):null]});default:return null}}e.s(["DeploymentStatusBadge",()=>m],17466),e.s([],99348)},45811,e=>{"use strict";let t;var n=e.i(20314),r=e.i(48249),a=e.i(567),o=e.i(79054);let l=o.default.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),i=()=>{let e=o.default.useContext(l);if(!e)throw Error("useDrawerContext must be used within a Drawer.Root");return e};function s(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function u(){return d(/^iPhone/)||d(/^iPad/)||d(/^Mac/)&&navigator.maxTouchPoints>1}function d(e){return"u">typeof window&&null!=window.navigator?e.test(window.navigator.platform):void 0}!function(e){if(!e||"u"<typeof document)return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}("[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not(\n[data-state=closed]\n){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}");let c="u">typeof window?o.useLayoutEffect:o.useEffect;function f(...e){return(...t)=>{for(let n of e)"function"==typeof n&&n(...t)}}let p="u">typeof document&&window.visualViewport;function m(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function g(e){for(m(e)&&(e=e.parentElement);e&&!m(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}let h=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]),v=0;function w(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function y(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let t=g(e);if(t!==document.documentElement&&t!==document.body&&t!==e){let n=t.getBoundingClientRect().top,r=e.getBoundingClientRect().top;e.getBoundingClientRect().bottom>t.getBoundingClientRect().bottom+24&&(t.scrollTop+=r-n)}e=t.parentElement}}function x(e){return e instanceof HTMLInputElement&&!h.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function b(...e){return o.useCallback(function(...e){return t=>e.forEach(e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)})}(...e),e)}let D=new WeakMap;function j(e,t,n=!1){if(!e||!(e instanceof HTMLElement))return;let r={};Object.entries(t).forEach(([t,n])=>{t.startsWith("--")?e.style.setProperty(t,n):(r[t]=e.style[t],e.style[t]=n)}),n||D.set(e,r)}let R=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function C(e,t){if(!e)return null;let n=window.getComputedStyle(e),r=n.transform||n.webkitTransform||n.mozTransform,a=r.match(/^matrix3d\((.+)\)$/);return a?parseFloat(a[1].split(", ")[R(t)?13:12]):(a=r.match(/^matrix\((.+)\)$/))?parseFloat(a[1].split(", ")[R(t)?5:4]):null}function T(e,t){if(!e)return()=>{};let n=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=n}}let N=[.32,.72,0,1],E="vaul-dragging";function S(e){let t=o.default.useRef(e);return o.default.useEffect(()=>{t.current=e}),o.default.useMemo(()=>(...e)=>null==t.current?void 0:t.current.call(t,...e),[])}function k({prop:e,defaultProp:t,onChange:n=()=>{}}){let[r,a]=function({defaultProp:e,onChange:t}){let n=o.default.useState(e),[r]=n,a=o.default.useRef(r),l=S(t);return o.default.useEffect(()=>{a.current!==r&&(l(r),a.current=r)},[r,a,l]),n}({defaultProp:t,onChange:n}),l=void 0!==e,i=l?e:r,s=S(n);return[i,o.default.useCallback(t=>{if(l){let n="function"==typeof t?t(e):t;n!==e&&s(n)}else a(t)},[l,e,a,s])]}let $=()=>()=>{},P=null;function M({open:e,onOpenChange:n,children:r,onDrag:i,onRelease:d,snapPoints:m,shouldScaleBackground:h=!1,setBackgroundColorOnScale:b=!0,closeThreshold:T=.25,scrollLockTimeout:S=100,dismissible:$=!0,handleOnly:M=!1,fadeFromIndex:O=m&&m.length-1,activeSnapPoint:z,setActiveSnapPoint:L,fixed:B,modal:F=!0,onClose:A,nested:H,noBodyStyles:I=!1,direction:W="bottom",defaultOpen:q=!1,disablePreventScroll:Y=!0,snapToSequentialPoint:U=!1,preventScrollRestoration:X=!1,repositionInputs:V=!0,onAnimationEnd:K,container:J,autoFocus:_=!1}){var G,Q;let[Z=!1,ee]=k({defaultProp:q,prop:e,onChange:e=>{null==n||n(e),e||H||e$(),setTimeout(()=>{null==K||K(e)},500),e&&!F&&"u">typeof window&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),e||(document.body.style.pointerEvents="auto")}}),[et,en]=o.default.useState(!1),[er,ea]=o.default.useState(!1),[eo,el]=o.default.useState(!1),ei=o.default.useRef(null),es=o.default.useRef(null),eu=o.default.useRef(null),ed=o.default.useRef(null),ec=o.default.useRef(null),ef=o.default.useRef(!1),ep=o.default.useRef(null),em=o.default.useRef(0),eg=o.default.useRef(!1),eh=o.default.useRef(!q),ev=o.default.useRef(0),ew=o.default.useRef(null),ey=o.default.useRef((null==(G=ew.current)?void 0:G.getBoundingClientRect().height)||0),ex=o.default.useRef((null==(Q=ew.current)?void 0:Q.getBoundingClientRect().width)||0),eb=o.default.useRef(0),eD=o.default.useCallback(e=>{m&&e===eN.length-1&&(es.current=new Date)},[]),{activeSnapPoint:ej,activeSnapPointIndex:eR,setActiveSnapPoint:eC,onRelease:eT,snapPointsOffset:eN,onDrag:eE,shouldFade:eS,getPercentageDragged:ek}=function({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:n,drawerRef:r,overlayRef:a,fadeFromIndex:l,onSnapPointChange:i,direction:s="bottom",container:u,snapToSequentialPoint:d}){let[c,f]=k({prop:e,defaultProp:null==n?void 0:n[0],onChange:t}),[p,m]=o.default.useState("u">typeof window?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);o.default.useEffect(()=>{function e(){m({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);let g=o.default.useMemo(()=>c===(null==n?void 0:n[n.length-1])||null,[n,c]),h=o.default.useMemo(()=>{var e;return null!=(e=null==n?void 0:n.findIndex(e=>e===c))?e:null},[n,c]),v=n&&n.length>0&&(l||0===l)&&!Number.isNaN(l)&&n[l]===c||!n,w=o.default.useMemo(()=>{var e;let t=u?{width:u.getBoundingClientRect().width,height:u.getBoundingClientRect().height}:"u">typeof window?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};return null!=(e=null==n?void 0:n.map(e=>{let n="string"==typeof e,r=0;if(n&&(r=parseInt(e,10)),R(s)){let a=n?r:p?e*t.height:0;return p?"bottom"===s?t.height-a:-t.height+a:a}let a=n?r:p?e*t.width:0;return p?"right"===s?t.width-a:-t.width+a:a}))?e:[]},[n,p,u]),y=o.default.useMemo(()=>null!==h?null==w?void 0:w[h]:null,[w,h]),x=o.default.useCallback(e=>{var t;let o=null!=(t=null==w?void 0:w.findIndex(t=>t===e))?t:null;i(o),j(r.current,{transition:`transform 0.5s cubic-bezier(${N.join(",")})`,transform:R(s)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`}),w&&o!==w.length-1&&void 0!==l&&o!==l&&o<l?j(a.current,{transition:`opacity 0.5s cubic-bezier(${N.join(",")})`,opacity:"0"}):j(a.current,{transition:`opacity 0.5s cubic-bezier(${N.join(",")})`,opacity:"1"}),f(null==n?void 0:n[Math.max(o,0)])},[r.current,n,w,l,a,f]);return o.default.useEffect(()=>{if(c||e){var t;let r=null!=(t=null==n?void 0:n.findIndex(t=>t===e||t===c))?t:-1;w&&-1!==r&&"number"==typeof w[r]&&x(w[r])}},[c,e,n,w,x]),{isLastSnapPoint:g,activeSnapPoint:c,shouldFade:v,getPercentageDragged:function(e,t){if(!n||"number"!=typeof h||!w||void 0===l)return null;let r=h===l-1;if(h>=l&&t)return 0;if(r&&!t)return 1;if(!v&&!r)return null;let a=r?h+1:h-1,o=e/Math.abs(r?w[a]-w[a-1]:w[a+1]-w[a]);return r?1-o:o},setActiveSnapPoint:f,activeSnapPointIndex:h,onRelease:function({draggedDistance:e,closeDrawer:t,velocity:r,dismissible:o}){if(void 0===l)return;let i="bottom"===s||"right"===s?(null!=y?y:0)-e:(null!=y?y:0)+e,u=h===l-1,c=0===h,f=e>0;if(u&&j(a.current,{transition:`opacity 0.5s cubic-bezier(${N.join(",")})`}),!d&&r>2&&!f)return void(o?t():x(w[0]));if(!d&&r>2&&f&&w&&n)return void x(w[n.length-1]);let p=null==w?void 0:w.reduce((e,t)=>"number"!=typeof e||"number"!=typeof t?e:Math.abs(t-i)<Math.abs(e-i)?t:e),m=R(s)?window.innerHeight:window.innerWidth;if(r>.4&&Math.abs(e)<.4*m){let e=f?1:-1;return e>0&&g&&n?void x(w[n.length-1]):void(c&&e<0&&o&&t(),null===h||x(w[h+e]))}x(p)},onDrag:function({draggedDistance:e}){if(null===y)return;let t="bottom"===s||"right"===s?y-e:y+e;("bottom"===s||"right"===s)&&t<w[w.length-1]||("top"===s||"left"===s)&&t>w[w.length-1]||j(r.current,{transform:R(s)?`translate3d(0, ${t}px, 0)`:`translate3d(${t}px, 0, 0)`})},snapPointsOffset:w}}({snapPoints:m,activeSnapPointProp:z,setActiveSnapPointProp:L,drawerRef:ew,fadeFromIndex:O,overlayRef:ei,onSnapPointChange:eD,direction:W,container:J,snapToSequentialPoint:U});!function(e={}){let{isDisabled:n}=e;c(()=>{if(!n){var e,r,a;let n,o,l,i,s,d,c;return 1==++v&&u()&&(l=0,i=window.pageXOffset,s=window.pageYOffset,d=f((e=document.documentElement,r="paddingRight",a=`${window.innerWidth-document.documentElement.clientWidth}px`,n=e.style[r],e.style[r]=a,()=>{e.style[r]=n})),window.scrollTo(0,0),c=f(w(document,"touchstart",e=>{((o=g(e.target))!==document.documentElement||o!==document.body)&&(l=e.changedTouches[0].pageY)},{passive:!1,capture:!0}),w(document,"touchmove",e=>{if(!o||o===document.documentElement||o===document.body)return void e.preventDefault();let t=e.changedTouches[0].pageY,n=o.scrollTop,r=o.scrollHeight-o.clientHeight;0!==r&&((n<=0&&t>l||n>=r&&t<l)&&e.preventDefault(),l=t)},{passive:!1,capture:!0}),w(document,"touchend",e=>{let t=e.target;x(t)&&t!==document.activeElement&&(e.preventDefault(),t.style.transform="translateY(-2000px)",t.focus(),requestAnimationFrame(()=>{t.style.transform=""}))},{passive:!1,capture:!0}),w(document,"focus",e=>{let t=e.target;x(t)&&(t.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{t.style.transform="",p&&(p.height<window.innerHeight?requestAnimationFrame(()=>{y(t)}):p.addEventListener("resize",()=>y(t),{once:!0}))}))},!0),w(window,"scroll",()=>{window.scrollTo(0,0)})),t=()=>{d(),c(),window.scrollTo(i,s)}),()=>{0==--v&&(null==t||t())}}},[n])}({isDisabled:!Z||er||!F||eo||!et||!V||!Y});let{restorePositionSetting:e$}=function({isOpen:e,modal:t,nested:n,hasBeenOpened:r,preventScrollRestoration:a,noBodyStyles:l}){let[i,u]=o.default.useState(()=>"u">typeof window?window.location.href:""),d=o.default.useRef(0),c=o.default.useCallback(()=>{if(s()&&null===P&&e&&!l){P={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};let{scrollX:e,innerHeight:t}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-d.current}px`,left:`${-e}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{let e=t-window.innerHeight;e&&d.current>=t&&(document.body.style.top=`${-(d.current+e)}px`)}),300)}},[e]),f=o.default.useCallback(()=>{if(s()&&null!==P&&!l){let e=-parseInt(document.body.style.top,10),t=-parseInt(document.body.style.left,10);Object.assign(document.body.style,P),window.requestAnimationFrame(()=>{a&&i!==window.location.href?u(window.location.href):window.scrollTo(t,e)}),P=null}},[i]);return o.default.useEffect(()=>{function e(){d.current=window.scrollY}return e(),window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}},[]),o.default.useEffect(()=>{if(t)return()=>{"u"<typeof document||document.querySelector("[data-vaul-drawer]")||f()}},[t,f]),o.default.useEffect(()=>{!n&&r&&(e?(window.matchMedia("(display-mode: standalone)").matches||c(),t||window.setTimeout(()=>{f()},500)):f())},[e,r,i,t,n,c,f]),{restorePositionSetting:f}}({isOpen:Z,modal:F,nested:null!=H&&H,hasBeenOpened:et,preventScrollRestoration:X,noBodyStyles:I});function eP(){return(window.innerWidth-26)/window.innerWidth}function eM(e,t){var n;let r=e,a=null==(n=window.getSelection())?void 0:n.toString(),o=ew.current?C(ew.current,W):null,l=new Date;if("SELECT"===r.tagName||r.hasAttribute("data-vaul-no-drag")||r.closest("[data-vaul-no-drag]"))return!1;if("right"===W||"left"===W)return!0;if(es.current&&l.getTime()-es.current.getTime()<500)return!1;if(null!==o&&("bottom"===W?o>0:o<0))return!0;if(a&&a.length>0)return!1;if(ec.current&&l.getTime()-ec.current.getTime()<S&&0===o||t)return ec.current=l,!1;for(;r;){if(r.scrollHeight>r.clientHeight){if(0!==r.scrollTop)return ec.current=new Date,!1;if("dialog"===r.getAttribute("role"))break}r=r.parentNode}return!0}function eO(e){er&&ew.current&&(ew.current.classList.remove(E),ef.current=!1,ea(!1),ed.current=new Date),null==A||A(),e||ee(!1),setTimeout(()=>{m&&eC(m[0])},500)}function ez(){if(!ew.current)return;let e=document.querySelector("[data-vaul-drawer-wrapper]"),t=C(ew.current,W);j(ew.current,{transform:"translate3d(0, 0, 0)",transition:`transform 0.5s cubic-bezier(${N.join(",")})`}),j(ei.current,{transition:`opacity 0.5s cubic-bezier(${N.join(",")})`,opacity:"1"}),h&&t&&t>0&&Z&&j(e,{borderRadius:"8px",overflow:"hidden",...R(W)?{transform:`scale(${eP()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${eP()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:"0.5s",transitionTimingFunction:`cubic-bezier(${N.join(",")})`},!0)}return o.default.useEffect(()=>{window.requestAnimationFrame(()=>{eh.current=!0})},[]),o.default.useEffect(()=>{var e;function t(){if(ew.current&&V&&(x(document.activeElement)||eg.current)){var e;let t=(null==(e=window.visualViewport)?void 0:e.height)||0,n=window.innerHeight,r=n-t,a=ew.current.getBoundingClientRect().height||0;eb.current||(eb.current=a);let o=ew.current.getBoundingClientRect().top;if(Math.abs(ev.current-r)>60&&(eg.current=!eg.current),m&&m.length>0&&eN&&eR&&(r+=eN[eR]||0),ev.current=r,a>t||eg.current){let e=ew.current.getBoundingClientRect().height,l=e;e>t&&(l=t-(a>.8*n?o:26)),B?ew.current.style.height=`${e-Math.max(r,0)}px`:ew.current.style.height=`${Math.max(l,t-o)}px`}else{let e;e=navigator.userAgent,"u">typeof window&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))||(ew.current.style.height=`${eb.current}px`)}m&&m.length>0&&!eg.current?ew.current.style.bottom="0px":ew.current.style.bottom=`${Math.max(r,0)}px`}}return null==(e=window.visualViewport)||e.addEventListener("resize",t),()=>{var e;return null==(e=window.visualViewport)?void 0:e.removeEventListener("resize",t)}},[eR,m,eN]),o.default.useEffect(()=>(Z&&(j(document.documentElement,{scrollBehavior:"auto"}),es.current=new Date),()=>{!function(e,t){if(!e||!(e instanceof HTMLElement))return;let n=D.get(e);n&&(e.style[t]=n[t])}(document.documentElement,"scrollBehavior")}),[Z]),o.default.useEffect(()=>{F||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[F]),o.default.createElement(a.Root,{defaultOpen:q,onOpenChange:e=>{($||e)&&(e?en(!0):eO(!0),ee(e))},open:Z},o.default.createElement(l.Provider,{value:{activeSnapPoint:ej,snapPoints:m,setActiveSnapPoint:eC,drawerRef:ew,overlayRef:ei,onOpenChange:n,onPress:function(e){var t,n;!$&&!m||(!ew.current||ew.current.contains(e.target))&&(ey.current=(null==(t=ew.current)?void 0:t.getBoundingClientRect().height)||0,ex.current=(null==(n=ew.current)?void 0:n.getBoundingClientRect().width)||0,ea(!0),eu.current=new Date,u()&&window.addEventListener("touchend",()=>ef.current=!1,{once:!0}),e.target.setPointerCapture(e.pointerId),em.current=R(W)?e.pageY:e.pageX)},onRelease:function(e){var t,n;if(!er||!ew.current)return;ew.current.classList.remove(E),ef.current=!1,ea(!1),ed.current=new Date;let r=C(ew.current,W);if(!e||!eM(e.target,!1)||!r||Number.isNaN(r)||null===eu.current)return;let a=ed.current.getTime()-eu.current.getTime(),o=em.current-(R(W)?e.pageY:e.pageX),l=Math.abs(o)/a;if(l>.05&&(el(!0),setTimeout(()=>{el(!1)},200)),m){eT({draggedDistance:o*("bottom"===W||"right"===W?1:-1),closeDrawer:eO,velocity:l,dismissible:$}),null==d||d(e,!0);return}if("bottom"===W||"right"===W?o>0:o<0){ez(),null==d||d(e,!0);return}if(l>.4){eO(),null==d||d(e,!1);return}let i=Math.min(null!=(t=ew.current.getBoundingClientRect().height)?t:0,window.innerHeight),s=Math.min(null!=(n=ew.current.getBoundingClientRect().width)?n:0,window.innerWidth);if(Math.abs(r)>=("left"===W||"right"===W?s:i)*T){eO(),null==d||d(e,!1);return}null==d||d(e,!0),ez()},onDrag:function(e){if(ew.current&&er){let t="bottom"===W||"right"===W?1:-1,n=(em.current-(R(W)?e.pageY:e.pageX))*t,r=n>0,a=m&&!$&&!r;if(a&&0===eR)return;let o=Math.abs(n),l=document.querySelector("[data-vaul-drawer-wrapper]"),s=o/("bottom"===W||"top"===W?ey.current:ex.current),u=ek(o,r);if(null!==u&&(s=u),a&&s>=1||!ef.current&&!eM(e.target,r))return;if(ew.current.classList.add(E),ef.current=!0,j(ew.current,{transition:"none"}),j(ei.current,{transition:"none"}),m&&eE({draggedDistance:n}),r&&!m){let e=Math.min(-(8*(Math.log(n+1)-2)*1),0)*t;j(ew.current,{transform:R(W)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`});return}let d=1-s;if((eS||O&&eR===O-1)&&(null==i||i(e,s),j(ei.current,{opacity:`${d}`,transition:"none"},!0)),l&&ei.current&&h){let e=Math.min(eP()+s*(1-eP()),1),t=8-8*s,n=Math.max(0,14-14*s);j(l,{borderRadius:`${t}px`,transform:R(W)?`scale(${e}) translate3d(0, ${n}px, 0)`:`scale(${e}) translate3d(${n}px, 0, 0)`,transition:"none"},!0)}if(!m){let e=o*t;j(ew.current,{transform:R(W)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`})}}},dismissible:$,shouldAnimate:eh,handleOnly:M,isOpen:Z,isDragging:er,shouldFade:eS,closeDrawer:eO,onNestedDrag:function(e,t){if(t<0)return;let n=(window.innerWidth-16)/window.innerWidth,r=n+t*(1-n),a=-16+16*t;j(ew.current,{transform:R(W)?`scale(${r}) translate3d(0, ${a}px, 0)`:`scale(${r}) translate3d(${a}px, 0, 0)`,transition:"none"})},onNestedOpenChange:function(e){let t=e?(window.innerWidth-16)/window.innerWidth:1,n=e?-16:0;ep.current&&window.clearTimeout(ep.current),j(ew.current,{transition:`transform 0.5s cubic-bezier(${N.join(",")})`,transform:R(W)?`scale(${t}) translate3d(0, ${n}px, 0)`:`scale(${t}) translate3d(${n}px, 0, 0)`}),!e&&ew.current&&(ep.current=setTimeout(()=>{let e=C(ew.current,W);j(ew.current,{transition:"none",transform:R(W)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`})},500))},onNestedRelease:function(e,t){let n=R(W)?window.innerHeight:window.innerWidth,r=t?(n-16)/n:1,a=t?-16:0;t&&j(ew.current,{transition:`transform 0.5s cubic-bezier(${N.join(",")})`,transform:R(W)?`scale(${r}) translate3d(0, ${a}px, 0)`:`scale(${r}) translate3d(${a}px, 0, 0)`})},keyboardIsOpen:eg,modal:F,snapPointsOffset:eN,activeSnapPointIndex:eR,direction:W,shouldScaleBackground:h,setBackgroundColorOnScale:b,noBodyStyles:I,container:J,autoFocus:_}},r))}let O=o.default.forwardRef(function({...e},t){let{overlayRef:n,snapPoints:r,onRelease:l,shouldFade:s,isOpen:u,modal:d,shouldAnimate:c}=i(),f=b(t,n),p=r&&r.length>0;if(!d)return null;let m=o.default.useCallback(e=>l(e),[l]);return o.default.createElement(a.Overlay,{onMouseUp:m,ref:f,"data-vaul-overlay":"","data-vaul-snap-points":u&&p?"true":"false","data-vaul-snap-points-overlay":u&&s?"true":"false","data-vaul-animate":(null==c?void 0:c.current)?"true":"false",...e})});O.displayName="Drawer.Overlay";let z=o.default.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:n,...r},l){let{drawerRef:s,onPress:u,onRelease:d,onDrag:c,keyboardIsOpen:f,snapPointsOffset:p,activeSnapPointIndex:m,modal:g,isOpen:h,direction:v,snapPoints:w,container:y,handleOnly:x,shouldAnimate:D,autoFocus:j}=i(),[C,E]=o.default.useState(!1),S=b(l,s),k=o.default.useRef(null),P=o.default.useRef(null),M=o.default.useRef(!1),O=w&&w.length>0;function z(e){k.current=null,M.current=!1,d(e)}return!function(){let{direction:e,isOpen:t,shouldScaleBackground:n,setBackgroundColorOnScale:r,noBodyStyles:a}=i(),l=o.default.useRef(null),s=(0,o.useMemo)(()=>document.body.style.backgroundColor,[]);function u(){return(window.innerWidth-26)/window.innerWidth}o.default.useEffect(()=>{if(t&&n){l.current&&clearTimeout(l.current);let t=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!t)return;!function(...e){}(r&&!a?T(document.body,{background:"black"}):$,T(t,{transformOrigin:R(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:"0.5s",transitionTimingFunction:`cubic-bezier(${N.join(",")})`}));let n=T(t,{borderRadius:"8px",overflow:"hidden",...R(e)?{transform:`scale(${u()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${u()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{n(),l.current=window.setTimeout(()=>{s?document.body.style.background=s:document.body.style.removeProperty("background")},500)}}},[t,n,s])}(),o.default.useEffect(()=>{O&&window.requestAnimationFrame(()=>{E(!0)})},[]),o.default.createElement(a.Content,{"data-vaul-drawer-direction":v,"data-vaul-drawer":"","data-vaul-delayed-snap-points":C?"true":"false","data-vaul-snap-points":h&&O?"true":"false","data-vaul-custom-container":y?"true":"false","data-vaul-animate":(null==D?void 0:D.current)?"true":"false",...r,ref:S,style:p&&p.length>0?{"--snap-point-height":`${p[null!=m?m:0]}px`,...t}:t,onPointerDown:e=>{x||(null==r.onPointerDown||r.onPointerDown.call(r,e),k.current={x:e.pageX,y:e.pageY},u(e))},onOpenAutoFocus:e=>{null==n||n(e),j||e.preventDefault()},onPointerDownOutside:t=>{(null==e||e(t),!g||t.defaultPrevented)?t.preventDefault():f.current&&(f.current=!1)},onFocusOutside:e=>{if(!g)return void e.preventDefault()},onPointerMove:e=>{if(P.current=e,x||(null==r.onPointerMove||r.onPointerMove.call(r,e),!k.current))return;let t=e.pageY-k.current.y,n=e.pageX-k.current.x,a="touch"===e.pointerType?10:2;((e,t,n=0)=>{if(M.current)return!0;let r=Math.abs(e.y),a=Math.abs(e.x),o=a>r,l=["bottom","right"].includes(t)?1:-1;if("left"===t||"right"===t){if(!(e.x*l<0)&&a>=0&&a<=n)return o}else if(!(e.y*l<0)&&r>=0&&r<=n)return!o;return M.current=!0,!0})({x:n,y:t},v,a)?c(e):(Math.abs(n)>a||Math.abs(t)>a)&&(k.current=null)},onPointerUp:e=>{null==r.onPointerUp||r.onPointerUp.call(r,e),k.current=null,M.current=!1,d(e)},onPointerOut:e=>{null==r.onPointerOut||r.onPointerOut.call(r,e),z(P.current)},onContextMenu:e=>{null==r.onContextMenu||r.onContextMenu.call(r,e),P.current&&z(P.current)}})});z.displayName="Drawer.Content";let L=o.default.forwardRef(function({preventCycle:e=!1,children:t,...n},r){let{closeDrawer:a,isDragging:l,snapPoints:s,activeSnapPoint:u,setActiveSnapPoint:d,dismissible:c,handleOnly:f,isOpen:p,onPress:m,onDrag:g}=i(),h=o.default.useRef(null),v=o.default.useRef(!1);function w(){h.current&&window.clearTimeout(h.current),v.current=!1}return o.default.createElement("div",{onClick:function(){v.current?w():window.setTimeout(()=>{!function(){if(l||e||v.current)return w();if(w(),!s||0===s.length){c||a();return}if(u===s[s.length-1]&&c)return a();let t=s.findIndex(e=>e===u);-1===t||d(s[t+1])}()},120)},onPointerCancel:w,onPointerDown:e=>{f&&m(e),h.current=window.setTimeout(()=>{v.current=!0},250)},onPointerMove:e=>{f&&g(e)},ref:r,"data-vaul-drawer-visible":p?"true":"false","data-vaul-handle":"","aria-hidden":"true",...n},o.default.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});L.displayName="Drawer.Handle";let B={Root:M,NestedRoot:function({onDrag:e,onOpenChange:t,open:n,...r}){let{onNestedDrag:a,onNestedOpenChange:l,onNestedRelease:s}=i();if(!a)throw Error("Drawer.NestedRoot must be placed in another drawer");return o.default.createElement(M,{nested:!0,open:n,onClose:()=>{l(!1)},onDrag:(t,n)=>{a(t,n),null==e||e(t,n)},onOpenChange:e=>{e&&l(e),null==t||t(e)},onRelease:s,...r})},Content:z,Overlay:O,Trigger:a.Trigger,Portal:function(e){let t=i(),{container:n=t.container,...r}=e;return o.default.createElement(a.Portal,{container:n,...r})},Handle:L,Close:a.Close,Title:a.Title,Description:a.Description};var F=e.i(31777);function A({...e}){return(0,n.jsx)(B.Root,{"data-slot":"drawer",...e})}function H({...e}){return(0,n.jsx)(B.Portal,{"data-slot":"drawer-portal",...e})}function I({className:e,...t}){return(0,n.jsx)(B.Overlay,{"data-slot":"drawer-overlay",className:(0,F.cn)("fixed inset-0 z-50 bg-black/50",e),...t})}function W({className:e,children:t,direction:a="bottom",showCloseButton:o=!0,...l}){return(0,n.jsx)(H,{children:(0,n.jsxs)(B.Content,{"data-slot":"drawer-content",className:(0,F.cn)("bg-background fixed z-50 flex flex-col shadow-lg","bottom"===a&&"inset-x-0 bottom-0 mb-24 rounded-t-lg border-t","top"===a&&"inset-x-0 top-0 mt-24 rounded-b-lg border-b","right"===a&&"inset-y-0 right-0 h-full w-3/4 border-l","left"===a&&"inset-y-0 left-0 h-full w-3/4 border-r",e),style:{"--initial-transform":"right"===a?"calc(100% + 8px)":"left"===a||"top"===a?"calc(-100% - 8px)":"calc(100% + 8px)",userSelect:"text",...l.style??{}},...l,children:[t,o?(0,n.jsxs)(B.Close,{className:"ring-offset-background focus:ring-ring 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,n.jsx)(r.XIcon,{className:"size-4"}),(0,n.jsx)("span",{className:"sr-only",children:"Close"})]}):null]})})}function q({className:e,...t}){return(0,n.jsx)("div",{"data-slot":"drawer-header",className:(0,F.cn)("flex flex-col gap-1.5 p-4",e),...t})}function Y({className:e,...t}){return(0,n.jsx)("div",{"data-slot":"drawer-footer",className:(0,F.cn)("mt-auto flex flex-col gap-2 p-4",e),...t})}function U({className:e,...t}){return(0,n.jsx)(B.Title,{"data-slot":"drawer-title",className:(0,F.cn)("text-foreground font-semibold",e),...t})}function X({className:e,...t}){return(0,n.jsx)(B.Description,{"data-slot":"drawer-description",className:(0,F.cn)("text-muted-foreground text-sm",e),...t})}e.s(["Drawer",()=>A,"DrawerContent",()=>W,"DrawerDescription",()=>X,"DrawerFooter",()=>Y,"DrawerHeader",()=>q,"DrawerOverlay",()=>I,"DrawerTitle",()=>U],45811)},8537,e=>{"use strict";var t=e.i(79054),n=e.i(18354),r=e.i(21023);let a=(0,r.createServerReference)("4049cf92e6bdc25b5325a9b73271fa4a9ac8334f89",r.callServer,void 0,r.findSourceMapURL,"deployFeature"),o=(0,r.createServerReference)("4005e9076f8d2f92a96e44d6f262879c7dff9d9f08",r.callServer,void 0,r.findSourceMapURL,"deployRepository"),l=(0,r.createServerReference)("4062c862c79712921415c1afe41c18b0243ddc68e1",r.callServer,void 0,r.findSourceMapURL,"stopDeployment"),i=(0,r.createServerReference)("40477a105502126a0f8a4e4aa556a88ee303ca963a",r.callServer,void 0,r.findSourceMapURL,"getDeploymentStatus"),s=(0,n.createLogger)("[useDeployAction]");function u(e){let[n,r]=(0,t.useState)(!1),[u,d]=(0,t.useState)(!1),[c,f]=(0,t.useState)(null),[p,m]=(0,t.useState)(null),[g,h]=(0,t.useState)(null),v=(0,t.useRef)(null),w=(0,t.useRef)(null),y=(0,t.useRef)(!0),x=(0,t.useRef)(p);(0,t.useEffect)(()=>{x.current=p},[p]),(0,t.useEffect)(()=>(y.current=!0,()=>{y.current=!1}),[]),(0,t.useEffect)(()=>()=>{v.current&&clearTimeout(v.current),w.current&&clearInterval(w.current)},[]);let b=(0,t.useCallback)(()=>{w.current&&(s.debug("stopping polling"),clearInterval(w.current),w.current=null)},[]),D=(0,t.useCallback)(e=>{b(),s.debug(`starting polling for "${e}" every 3000ms`),w.current=setInterval(async()=>{if(!y.current)return void b();let t=await i(e);y.current&&(t&&"Stopped"!==t.state?(t.state!==x.current&&s.info(`poll state changed: ${x.current} → ${t.state}, url=${t.url}`),m(t.state),h(t.url)):(s.info(`poll result: ${t?`state=${t.state}`:"null (deployment gone)"} — stopping poll`),m(null),h(null),b()))},3e3)},[b]),j=(0,t.useCallback)(async()=>{if(!e)return void s.warn("deploy() called but input is null — no-op");if(n)return void s.warn("deploy() called but already loading — no-op");s.info(`deploy() — targetType="${e.targetType}", targetId="${e.targetId}", repositoryPath="${e.repositoryPath}"`),v.current&&clearTimeout(v.current),r(!0),f(null);try{let t="feature"===e.targetType?await a(e.targetId):await o(e.repositoryPath);if(s.info("server action result:",t),!y.current)return void s.warn("component unmounted after deploy — discarding result");if(t.success)s.info(`deploy succeeded — initial state=${t.state}, starting polling`),m(t.state??null),h(null),D(e.targetId);else{let e=t.error??"An unexpected error occurred";s.error(`deploy failed: ${e}`),f(e),v.current=setTimeout(()=>f(null),5e3)}}catch(t){if(!y.current)return;let e=t instanceof Error?t.message:"An unexpected error occurred";s.error(`deploy threw exception: ${e}`,t),f(e),v.current=setTimeout(()=>f(null),5e3)}finally{y.current&&r(!1)}},[e,n,D]),R=(0,t.useCallback)(async()=>{if(e&&!u){s.info(`stop() — targetId="${e.targetId}"`),d(!0);try{let t=await l(e.targetId);if(s.info("stop result:",t),!y.current)return;t.success&&(b(),m(null),h(null))}catch(e){s.warn("stop error (non-critical):",e)}finally{y.current&&d(!1)}}},[e,u,b]);return{deploy:j,stop:R,deployLoading:n,stopLoading:u,deployError:c,status:p,url:g}}e.s(["useDeployAction",()=>u],8537)},11495,e=>{"use strict";var t=e.i(20314),n=e.i(79054),r=e.i(48249),a=e.i(24042),o=e.i(64970),l=e.i(94237),i=e.i(31777);e.i(81803);var s=e.i(72714);e.i(99348);var u=e.i(17466),d=e.i(45811),c=e.i(25235),f=e.i(2828),p=e.i(8537),m=e.i(63629);let g=(0,l.cva)("",{variants:{size:{sm:"w-96",md:"w-xl"}},defaultVariants:{size:"sm"}});function h({open:e,onClose:a,modal:o=!1,dismissOnOutsideClick:l=!1,title:s="Drawer",size:u,header:f,children:p,footer:h,className:w,"data-testid":y,deployTarget:x}){let b=(0,n.useRef)(null);return(0,n.useEffect)(()=>{if(!e||o)return;let t=e=>{let t=e.target;!document.body.contains(t)||b.current?.contains(t)||t.closest(l?'[role="alertdialog"], [role="dialog"], [role="menu"], [role="listbox"], [data-radix-popper-content-wrapper]':'[data-no-drawer-close], [role="alertdialog"], [role="dialog"], [role="menu"], [role="listbox"], [data-radix-popper-content-wrapper]')||a()};return document.addEventListener("click",t),()=>document.removeEventListener("click",t)},[e,o,a,l]),(0,t.jsxs)(d.Drawer,{direction:"right",modal:o,handleOnly:!0,open:e,onOpenChange:e=>{e||a()},children:[o?(0,t.jsx)(d.DrawerOverlay,{}):null,(0,t.jsxs)(d.DrawerContent,{ref:b,direction:"right",showCloseButton:!1,className:(0,i.cn)(g({size:u}),w),"data-testid":y,onInteractOutside:o?void 0:e=>e.preventDefault(),children:[(0,t.jsx)(d.DrawerTitle,{asChild:!0,children:(0,t.jsx)("span",{className:"sr-only",children:s})}),(0,t.jsx)(d.DrawerDescription,{asChild:!0,children:(0,t.jsx)("span",{className:"sr-only",children:s})}),(0,t.jsxs)("button",{type:"button","aria-label":"Close",onClick:a,className:"ring-offset-background focus:ring-ring absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden","data-testid":y?`${y}-close-button`:void 0,children:[(0,t.jsx)(r.XIcon,{className:"size-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]}),f?(0,t.jsx)(d.DrawerHeader,{className:"shrink-0",children:f}):null,f?(0,t.jsx)(c.Separator,{}):null,m.featureFlags.envDeploy&&x?(0,t.jsx)(v,{deployTarget:x}):null,(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:p}),h?(0,t.jsx)(d.DrawerFooter,{className:"shrink-0",children:h}):null]})]})}function v({deployTarget:e}){let n=(0,p.useDeployAction)(e),r="Booting"===n.status||"Ready"===n.status;return(0,t.jsxs)("div",{"data-testid":"base-drawer-deploy-bar",className:"flex items-center gap-2 px-4 pb-3",children:[(0,t.jsx)(f.TooltipProvider,{children:(0,t.jsxs)(f.Tooltip,{children:[(0,t.jsx)(f.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{children:(0,t.jsx)(s.ActionButton,{label:r?"Stop Dev Server":"Start Dev Server",onClick:r?n.stop:n.deploy,loading:n.deployLoading||n.stopLoading,error:!!n.deployError,icon:r?o.Square:a.Play,iconOnly:!0,variant:"outline",size:"icon-sm"})})}),(0,t.jsx)(f.TooltipContent,{children:r?"Stop Dev Server":"Start Dev Server"})]})}),r?(0,t.jsx)(u.DeploymentStatusBadge,{status:n.status,url:n.url,targetId:e.targetId}):null]})}e.s(["BaseDrawer",()=>h])}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,24042,64970,e=>{"use strict";var t=e.i(3645);let n=(0,t.default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",()=>n],24042);let r=(0,t.default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);e.s(["Square",()=>r],64970)},81803,72714,e=>{"use strict";var t=e.i(20314),n=e.i(83428),r=e.i(51251),a=e.i(31777),o=e.i(35364),l=e.i(8361);function i({label:e,onClick:i,loading:s,error:u,icon:d,iconOnly:c=!1,variant:f="outline",size:p="sm"}){let m=(0,l.useSoundAction)("click");return(0,t.jsxs)(o.Button,{variant:f,size:p,"aria-label":e,disabled:s,onClick:()=>{m.play(),i()},className:(0,a.cn)("gap-1.5",u&&"text-destructive hover:text-destructive",!u&&c&&"ghost"===f&&"text-muted-foreground cursor-pointer rounded-full transition-colors hover:text-blue-500"),children:[s?(0,t.jsx)(n.Loader2,{className:"size-4 animate-spin"}):u?(0,t.jsx)(r.CircleAlert,{className:"size-4"}):(0,t.jsx)(d,{className:"size-4"}),c?null:e]})}e.s(["ActionButton",()=>i],72714),e.s([],81803)},30702,e=>{"use strict";let t=(0,e.i(3645).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>t],30702)},38573,e=>{"use strict";let t=(0,e.i(3645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],38573)},2287,e=>{"use strict";var t=e.i(20314),n=e.i(79054),r=e.i(90033),a=e.i(90537),a=a,o=e.i(31777);let l=r.Dialog.Root;r.Dialog.Trigger;let i=r.Dialog.Portal,s=r.Dialog.Close,u=n.forwardRef(({className:e,onClick:n,...a},l)=>(0,t.jsx)(r.Dialog.Overlay,{ref:l,className:(0,o.cn)("fixed inset-0 z-50 bg-black/80",e),onClick:e=>{e.stopPropagation(),n?.(e)},...a}));u.displayName=r.Dialog.Overlay.displayName;let d=n.forwardRef(({className:e,children:n,...l},s)=>(0,t.jsxs)(i,{children:[(0,t.jsx)(u,{}),(0,t.jsxs)(r.Dialog.Content,{ref:s,className:(0,o.cn)("bg-background fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg sm:rounded-lg",e),...l,children:[n,(0,t.jsxs)(r.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[(0,t.jsx)(a.default,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]}));d.displayName=r.Dialog.Content.displayName;let c=({className:e,...n})=>(0,t.jsx)("div",{className:(0,o.cn)("flex flex-col space-y-1.5 text-center sm:text-left",e),...n});c.displayName="DialogHeader";let f=({className:e,...n})=>(0,t.jsx)("div",{className:(0,o.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...n});f.displayName="DialogFooter";let p=n.forwardRef(({className:e,...n},a)=>(0,t.jsx)(r.Dialog.Title,{ref:a,className:(0,o.cn)("text-lg leading-none font-semibold tracking-tight",e),...n}));p.displayName=r.Dialog.Title.displayName;let m=n.forwardRef(({className:e,...n},a)=>(0,t.jsx)(r.Dialog.Description,{ref:a,className:(0,o.cn)("text-muted-foreground text-sm",e),...n}));m.displayName=r.Dialog.Description.displayName,e.s(["Dialog",()=>l,"DialogClose",()=>s,"DialogContent",()=>d,"DialogDescription",()=>m,"DialogFooter",()=>f,"DialogHeader",()=>c,"DialogTitle",()=>p],2287)},99348,17466,e=>{"use strict";var t=e.i(20314),n=e.i(79054),r=e.i(83428),a=e.i(30702),o=e.i(38573),l=e.i(17406),i=e.i(81846),s=e.i(2287),u=e.i(21023);let d=(0,u.createServerReference)("40404ae253fabdde859dfaba572349f84ab589ef93",u.callServer,void 0,u.findSourceMapURL,"getDeploymentLogs");function c({open:e,onOpenChange:r,targetId:a}){let{logs:o,isConnected:l}=function(e){let[t,r]=(0,n.useState)([]),[a,o]=(0,n.useState)(!1),l=(0,n.useRef)(null),i=(0,n.useCallback)(()=>{l.current&&(l.current.close(),l.current=null),o(!1)},[]);return(0,n.useEffect)(()=>{if(!e){r([]),o(!1);return}d(e).then(e=>{e&&r(e)}).catch(()=>{});let t=new EventSource(`/api/deployment-logs?targetId=${e}`);return l.current=t,t.onopen=()=>{o(!0)},t.addEventListener("log",e=>{let t=JSON.parse(e.data);r(e=>[...e,t])}),t.onerror=()=>{o(!1)},()=>{t.close(),l.current=null}},[e,i]),{logs:t,isConnected:a}}(e?a:null);return(0,t.jsx)(f,{open:e,onOpenChange:r,logs:o,isConnected:l})}function f({open:e,onOpenChange:r,logs:a,isConnected:l}){let i=(0,n.useRef)(null),u=(0,n.useRef)(!0),d=(0,n.useCallback)(()=>{let e=i.current;e&&(u.current=e.scrollTop+e.clientHeight>=e.scrollHeight-50)},[]);return(0,n.useEffect)(()=>{u.current&&i.current&&(i.current.scrollTop=i.current.scrollHeight)},[a]),(0,t.jsx)(s.Dialog,{open:e,onOpenChange:r,children:(0,t.jsxs)(s.DialogContent,{className:"flex h-[calc(100vh-48px)] max-h-[calc(100vh-48px)] w-full max-w-[calc(100vw-48px)] flex-col gap-0 bg-zinc-950 p-0 text-zinc-100 sm:rounded-lg","aria-describedby":void 0,children:[(0,t.jsxs)(s.DialogHeader,{className:"flex flex-row items-center justify-between border-b border-zinc-800 px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(o.Terminal,{className:"h-4 w-4 text-zinc-400"}),(0,t.jsx)(s.DialogTitle,{className:"text-sm font-medium text-zinc-100",children:"Server Logs"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 pr-8",children:[(0,t.jsx)("span",{className:`inline-block h-2 w-2 rounded-full ${l?"bg-green-500":"bg-zinc-500"}`}),(0,t.jsx)("span",{className:"text-xs text-zinc-400",children:l?"Connected":"Disconnected"})]})]}),(0,t.jsxs)("div",{ref:i,onScroll:d,className:"flex-1 overflow-auto p-4 font-mono text-sm leading-relaxed",children:[0===a.length?(0,t.jsx)("p",{className:"text-zinc-500",children:"Waiting for log output..."}):a.map(e=>(0,t.jsx)(p,{entry:e},`${e.timestamp}-${e.stream}-${e.line}`)),!l&&a.length>0&&(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-800 pt-2 text-zinc-500",children:"[Server stopped]"})]})]})})}function p({entry:e}){return(0,t.jsx)("div",{"data-stream":e.stream,className:"stderr"===e.stream?"text-red-400":"text-zinc-200",children:(0,t.jsx)("span",{className:"break-all whitespace-pre-wrap",children:e.line})})}function m({status:e,url:s,targetId:u}){let[d,f]=(0,n.useState)(!1),p=u&&(e===l.DeploymentState.Booting||e===l.DeploymentState.Ready);switch(e){case l.DeploymentState.Booting:return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(i.Badge,{className:"border-transparent bg-blue-50 text-blue-700 hover:bg-blue-50",children:[(0,t.jsx)(r.Loader2,{className:"mr-1 h-3.5 w-3.5 animate-spin"}),"Starting...",p?(0,t.jsx)("button",{type:"button","aria-label":"View server logs",className:"ml-1.5 inline-flex items-center rounded-sm p-0.5 hover:bg-blue-100",onClick:e=>{e.stopPropagation(),f(!0)},children:(0,t.jsx)(o.Terminal,{className:"h-3 w-3"})}):null]}),p?(0,t.jsx)(c,{open:d,onOpenChange:f,targetId:u}):null]});case l.DeploymentState.Ready:return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(i.Badge,{className:"border-transparent bg-green-50 text-green-700 hover:bg-green-50",children:[(0,t.jsx)("span",{className:"mr-1 inline-block h-2 w-2 rounded-full bg-green-500"}),s?(0,t.jsxs)("a",{href:s,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 hover:underline",onClick:e=>e.stopPropagation(),children:[s,(0,t.jsx)(a.ExternalLink,{className:"h-3 w-3"})]}):"Ready",p?(0,t.jsx)("button",{type:"button","aria-label":"View server logs",className:"ml-1.5 inline-flex items-center rounded-sm p-0.5 hover:bg-green-100",onClick:e=>{e.stopPropagation(),f(!0)},children:(0,t.jsx)(o.Terminal,{className:"h-3 w-3"})}):null]}),p?(0,t.jsx)(c,{open:d,onOpenChange:f,targetId:u}):null]});default:return null}}e.s(["DeploymentStatusBadge",()=>m],17466),e.s([],99348)},45811,e=>{"use strict";let t;var n=e.i(20314),r=e.i(48249),a=e.i(567),o=e.i(79054);let l=o.default.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),i=()=>{let e=o.default.useContext(l);if(!e)throw Error("useDrawerContext must be used within a Drawer.Root");return e};function s(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function u(){return d(/^iPhone/)||d(/^iPad/)||d(/^Mac/)&&navigator.maxTouchPoints>1}function d(e){return"u">typeof window&&null!=window.navigator?e.test(window.navigator.platform):void 0}!function(e){if(!e||"u"<typeof document)return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}("[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not(\n[data-state=closed]\n){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}");let c="u">typeof window?o.useLayoutEffect:o.useEffect;function f(...e){return(...t)=>{for(let n of e)"function"==typeof n&&n(...t)}}let p="u">typeof document&&window.visualViewport;function m(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function g(e){for(m(e)&&(e=e.parentElement);e&&!m(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}let h=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]),v=0;function w(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function y(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let t=g(e);if(t!==document.documentElement&&t!==document.body&&t!==e){let n=t.getBoundingClientRect().top,r=e.getBoundingClientRect().top;e.getBoundingClientRect().bottom>t.getBoundingClientRect().bottom+24&&(t.scrollTop+=r-n)}e=t.parentElement}}function b(e){return e instanceof HTMLInputElement&&!h.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function x(...e){return o.useCallback(function(...e){return t=>e.forEach(e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)})}(...e),e)}let D=new WeakMap;function j(e,t,n=!1){if(!e||!(e instanceof HTMLElement))return;let r={};Object.entries(t).forEach(([t,n])=>{t.startsWith("--")?e.style.setProperty(t,n):(r[t]=e.style[t],e.style[t]=n)}),n||D.set(e,r)}let R=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function C(e,t){if(!e)return null;let n=window.getComputedStyle(e),r=n.transform||n.webkitTransform||n.mozTransform,a=r.match(/^matrix3d\((.+)\)$/);return a?parseFloat(a[1].split(", ")[R(t)?13:12]):(a=r.match(/^matrix\((.+)\)$/))?parseFloat(a[1].split(", ")[R(t)?5:4]):null}function T(e,t){if(!e)return()=>{};let n=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=n}}let N=[.32,.72,0,1],E="vaul-dragging";function S(e){let t=o.default.useRef(e);return o.default.useEffect(()=>{t.current=e}),o.default.useMemo(()=>(...e)=>null==t.current?void 0:t.current.call(t,...e),[])}function k({prop:e,defaultProp:t,onChange:n=()=>{}}){let[r,a]=function({defaultProp:e,onChange:t}){let n=o.default.useState(e),[r]=n,a=o.default.useRef(r),l=S(t);return o.default.useEffect(()=>{a.current!==r&&(l(r),a.current=r)},[r,a,l]),n}({defaultProp:t,onChange:n}),l=void 0!==e,i=l?e:r,s=S(n);return[i,o.default.useCallback(t=>{if(l){let n="function"==typeof t?t(e):t;n!==e&&s(n)}else a(t)},[l,e,a,s])]}let $=()=>()=>{},P=null;function M({open:e,onOpenChange:n,children:r,onDrag:i,onRelease:d,snapPoints:m,shouldScaleBackground:h=!1,setBackgroundColorOnScale:x=!0,closeThreshold:T=.25,scrollLockTimeout:S=100,dismissible:$=!0,handleOnly:M=!1,fadeFromIndex:O=m&&m.length-1,activeSnapPoint:z,setActiveSnapPoint:L,fixed:B,modal:F=!0,onClose:A,nested:H,noBodyStyles:I=!1,direction:W="bottom",defaultOpen:q=!1,disablePreventScroll:Y=!0,snapToSequentialPoint:U=!1,preventScrollRestoration:X=!1,repositionInputs:V=!0,onAnimationEnd:K,container:J,autoFocus:_=!1}){var G,Q;let[Z=!1,ee]=k({defaultProp:q,prop:e,onChange:e=>{null==n||n(e),e||H||e$(),setTimeout(()=>{null==K||K(e)},500),e&&!F&&"u">typeof window&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),e||(document.body.style.pointerEvents="auto")}}),[et,en]=o.default.useState(!1),[er,ea]=o.default.useState(!1),[eo,el]=o.default.useState(!1),ei=o.default.useRef(null),es=o.default.useRef(null),eu=o.default.useRef(null),ed=o.default.useRef(null),ec=o.default.useRef(null),ef=o.default.useRef(!1),ep=o.default.useRef(null),em=o.default.useRef(0),eg=o.default.useRef(!1),eh=o.default.useRef(!q),ev=o.default.useRef(0),ew=o.default.useRef(null),ey=o.default.useRef((null==(G=ew.current)?void 0:G.getBoundingClientRect().height)||0),eb=o.default.useRef((null==(Q=ew.current)?void 0:Q.getBoundingClientRect().width)||0),ex=o.default.useRef(0),eD=o.default.useCallback(e=>{m&&e===eN.length-1&&(es.current=new Date)},[]),{activeSnapPoint:ej,activeSnapPointIndex:eR,setActiveSnapPoint:eC,onRelease:eT,snapPointsOffset:eN,onDrag:eE,shouldFade:eS,getPercentageDragged:ek}=function({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:n,drawerRef:r,overlayRef:a,fadeFromIndex:l,onSnapPointChange:i,direction:s="bottom",container:u,snapToSequentialPoint:d}){let[c,f]=k({prop:e,defaultProp:null==n?void 0:n[0],onChange:t}),[p,m]=o.default.useState("u">typeof window?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);o.default.useEffect(()=>{function e(){m({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);let g=o.default.useMemo(()=>c===(null==n?void 0:n[n.length-1])||null,[n,c]),h=o.default.useMemo(()=>{var e;return null!=(e=null==n?void 0:n.findIndex(e=>e===c))?e:null},[n,c]),v=n&&n.length>0&&(l||0===l)&&!Number.isNaN(l)&&n[l]===c||!n,w=o.default.useMemo(()=>{var e;let t=u?{width:u.getBoundingClientRect().width,height:u.getBoundingClientRect().height}:"u">typeof window?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};return null!=(e=null==n?void 0:n.map(e=>{let n="string"==typeof e,r=0;if(n&&(r=parseInt(e,10)),R(s)){let a=n?r:p?e*t.height:0;return p?"bottom"===s?t.height-a:-t.height+a:a}let a=n?r:p?e*t.width:0;return p?"right"===s?t.width-a:-t.width+a:a}))?e:[]},[n,p,u]),y=o.default.useMemo(()=>null!==h?null==w?void 0:w[h]:null,[w,h]),b=o.default.useCallback(e=>{var t;let o=null!=(t=null==w?void 0:w.findIndex(t=>t===e))?t:null;i(o),j(r.current,{transition:`transform 0.5s cubic-bezier(${N.join(",")})`,transform:R(s)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`}),w&&o!==w.length-1&&void 0!==l&&o!==l&&o<l?j(a.current,{transition:`opacity 0.5s cubic-bezier(${N.join(",")})`,opacity:"0"}):j(a.current,{transition:`opacity 0.5s cubic-bezier(${N.join(",")})`,opacity:"1"}),f(null==n?void 0:n[Math.max(o,0)])},[r.current,n,w,l,a,f]);return o.default.useEffect(()=>{if(c||e){var t;let r=null!=(t=null==n?void 0:n.findIndex(t=>t===e||t===c))?t:-1;w&&-1!==r&&"number"==typeof w[r]&&b(w[r])}},[c,e,n,w,b]),{isLastSnapPoint:g,activeSnapPoint:c,shouldFade:v,getPercentageDragged:function(e,t){if(!n||"number"!=typeof h||!w||void 0===l)return null;let r=h===l-1;if(h>=l&&t)return 0;if(r&&!t)return 1;if(!v&&!r)return null;let a=r?h+1:h-1,o=e/Math.abs(r?w[a]-w[a-1]:w[a+1]-w[a]);return r?1-o:o},setActiveSnapPoint:f,activeSnapPointIndex:h,onRelease:function({draggedDistance:e,closeDrawer:t,velocity:r,dismissible:o}){if(void 0===l)return;let i="bottom"===s||"right"===s?(null!=y?y:0)-e:(null!=y?y:0)+e,u=h===l-1,c=0===h,f=e>0;if(u&&j(a.current,{transition:`opacity 0.5s cubic-bezier(${N.join(",")})`}),!d&&r>2&&!f)return void(o?t():b(w[0]));if(!d&&r>2&&f&&w&&n)return void b(w[n.length-1]);let p=null==w?void 0:w.reduce((e,t)=>"number"!=typeof e||"number"!=typeof t?e:Math.abs(t-i)<Math.abs(e-i)?t:e),m=R(s)?window.innerHeight:window.innerWidth;if(r>.4&&Math.abs(e)<.4*m){let e=f?1:-1;return e>0&&g&&n?void b(w[n.length-1]):void(c&&e<0&&o&&t(),null===h||b(w[h+e]))}b(p)},onDrag:function({draggedDistance:e}){if(null===y)return;let t="bottom"===s||"right"===s?y-e:y+e;("bottom"===s||"right"===s)&&t<w[w.length-1]||("top"===s||"left"===s)&&t>w[w.length-1]||j(r.current,{transform:R(s)?`translate3d(0, ${t}px, 0)`:`translate3d(${t}px, 0, 0)`})},snapPointsOffset:w}}({snapPoints:m,activeSnapPointProp:z,setActiveSnapPointProp:L,drawerRef:ew,fadeFromIndex:O,overlayRef:ei,onSnapPointChange:eD,direction:W,container:J,snapToSequentialPoint:U});!function(e={}){let{isDisabled:n}=e;c(()=>{if(!n){var e,r,a;let n,o,l,i,s,d,c;return 1==++v&&u()&&(l=0,i=window.pageXOffset,s=window.pageYOffset,d=f((e=document.documentElement,r="paddingRight",a=`${window.innerWidth-document.documentElement.clientWidth}px`,n=e.style[r],e.style[r]=a,()=>{e.style[r]=n})),window.scrollTo(0,0),c=f(w(document,"touchstart",e=>{((o=g(e.target))!==document.documentElement||o!==document.body)&&(l=e.changedTouches[0].pageY)},{passive:!1,capture:!0}),w(document,"touchmove",e=>{if(!o||o===document.documentElement||o===document.body)return void e.preventDefault();let t=e.changedTouches[0].pageY,n=o.scrollTop,r=o.scrollHeight-o.clientHeight;0!==r&&((n<=0&&t>l||n>=r&&t<l)&&e.preventDefault(),l=t)},{passive:!1,capture:!0}),w(document,"touchend",e=>{let t=e.target;b(t)&&t!==document.activeElement&&(e.preventDefault(),t.style.transform="translateY(-2000px)",t.focus(),requestAnimationFrame(()=>{t.style.transform=""}))},{passive:!1,capture:!0}),w(document,"focus",e=>{let t=e.target;b(t)&&(t.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{t.style.transform="",p&&(p.height<window.innerHeight?requestAnimationFrame(()=>{y(t)}):p.addEventListener("resize",()=>y(t),{once:!0}))}))},!0),w(window,"scroll",()=>{window.scrollTo(0,0)})),t=()=>{d(),c(),window.scrollTo(i,s)}),()=>{0==--v&&(null==t||t())}}},[n])}({isDisabled:!Z||er||!F||eo||!et||!V||!Y});let{restorePositionSetting:e$}=function({isOpen:e,modal:t,nested:n,hasBeenOpened:r,preventScrollRestoration:a,noBodyStyles:l}){let[i,u]=o.default.useState(()=>"u">typeof window?window.location.href:""),d=o.default.useRef(0),c=o.default.useCallback(()=>{if(s()&&null===P&&e&&!l){P={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};let{scrollX:e,innerHeight:t}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-d.current}px`,left:`${-e}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{let e=t-window.innerHeight;e&&d.current>=t&&(document.body.style.top=`${-(d.current+e)}px`)}),300)}},[e]),f=o.default.useCallback(()=>{if(s()&&null!==P&&!l){let e=-parseInt(document.body.style.top,10),t=-parseInt(document.body.style.left,10);Object.assign(document.body.style,P),window.requestAnimationFrame(()=>{a&&i!==window.location.href?u(window.location.href):window.scrollTo(t,e)}),P=null}},[i]);return o.default.useEffect(()=>{function e(){d.current=window.scrollY}return e(),window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}},[]),o.default.useEffect(()=>{if(t)return()=>{"u"<typeof document||document.querySelector("[data-vaul-drawer]")||f()}},[t,f]),o.default.useEffect(()=>{!n&&r&&(e?(window.matchMedia("(display-mode: standalone)").matches||c(),t||window.setTimeout(()=>{f()},500)):f())},[e,r,i,t,n,c,f]),{restorePositionSetting:f}}({isOpen:Z,modal:F,nested:null!=H&&H,hasBeenOpened:et,preventScrollRestoration:X,noBodyStyles:I});function eP(){return(window.innerWidth-26)/window.innerWidth}function eM(e,t){var n;let r=e,a=null==(n=window.getSelection())?void 0:n.toString(),o=ew.current?C(ew.current,W):null,l=new Date;if("SELECT"===r.tagName||r.hasAttribute("data-vaul-no-drag")||r.closest("[data-vaul-no-drag]"))return!1;if("right"===W||"left"===W)return!0;if(es.current&&l.getTime()-es.current.getTime()<500)return!1;if(null!==o&&("bottom"===W?o>0:o<0))return!0;if(a&&a.length>0)return!1;if(ec.current&&l.getTime()-ec.current.getTime()<S&&0===o||t)return ec.current=l,!1;for(;r;){if(r.scrollHeight>r.clientHeight){if(0!==r.scrollTop)return ec.current=new Date,!1;if("dialog"===r.getAttribute("role"))break}r=r.parentNode}return!0}function eO(e){er&&ew.current&&(ew.current.classList.remove(E),ef.current=!1,ea(!1),ed.current=new Date),null==A||A(),e||ee(!1),setTimeout(()=>{m&&eC(m[0])},500)}function ez(){if(!ew.current)return;let e=document.querySelector("[data-vaul-drawer-wrapper]"),t=C(ew.current,W);j(ew.current,{transform:"translate3d(0, 0, 0)",transition:`transform 0.5s cubic-bezier(${N.join(",")})`}),j(ei.current,{transition:`opacity 0.5s cubic-bezier(${N.join(",")})`,opacity:"1"}),h&&t&&t>0&&Z&&j(e,{borderRadius:"8px",overflow:"hidden",...R(W)?{transform:`scale(${eP()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${eP()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:"0.5s",transitionTimingFunction:`cubic-bezier(${N.join(",")})`},!0)}return o.default.useEffect(()=>{window.requestAnimationFrame(()=>{eh.current=!0})},[]),o.default.useEffect(()=>{var e;function t(){if(ew.current&&V&&(b(document.activeElement)||eg.current)){var e;let t=(null==(e=window.visualViewport)?void 0:e.height)||0,n=window.innerHeight,r=n-t,a=ew.current.getBoundingClientRect().height||0;ex.current||(ex.current=a);let o=ew.current.getBoundingClientRect().top;if(Math.abs(ev.current-r)>60&&(eg.current=!eg.current),m&&m.length>0&&eN&&eR&&(r+=eN[eR]||0),ev.current=r,a>t||eg.current){let e=ew.current.getBoundingClientRect().height,l=e;e>t&&(l=t-(a>.8*n?o:26)),B?ew.current.style.height=`${e-Math.max(r,0)}px`:ew.current.style.height=`${Math.max(l,t-o)}px`}else{let e;e=navigator.userAgent,"u">typeof window&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))||(ew.current.style.height=`${ex.current}px`)}m&&m.length>0&&!eg.current?ew.current.style.bottom="0px":ew.current.style.bottom=`${Math.max(r,0)}px`}}return null==(e=window.visualViewport)||e.addEventListener("resize",t),()=>{var e;return null==(e=window.visualViewport)?void 0:e.removeEventListener("resize",t)}},[eR,m,eN]),o.default.useEffect(()=>(Z&&(j(document.documentElement,{scrollBehavior:"auto"}),es.current=new Date),()=>{!function(e,t){if(!e||!(e instanceof HTMLElement))return;let n=D.get(e);n&&(e.style[t]=n[t])}(document.documentElement,"scrollBehavior")}),[Z]),o.default.useEffect(()=>{F||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[F]),o.default.createElement(a.Root,{defaultOpen:q,onOpenChange:e=>{($||e)&&(e?en(!0):eO(!0),ee(e))},open:Z},o.default.createElement(l.Provider,{value:{activeSnapPoint:ej,snapPoints:m,setActiveSnapPoint:eC,drawerRef:ew,overlayRef:ei,onOpenChange:n,onPress:function(e){var t,n;!$&&!m||(!ew.current||ew.current.contains(e.target))&&(ey.current=(null==(t=ew.current)?void 0:t.getBoundingClientRect().height)||0,eb.current=(null==(n=ew.current)?void 0:n.getBoundingClientRect().width)||0,ea(!0),eu.current=new Date,u()&&window.addEventListener("touchend",()=>ef.current=!1,{once:!0}),e.target.setPointerCapture(e.pointerId),em.current=R(W)?e.pageY:e.pageX)},onRelease:function(e){var t,n;if(!er||!ew.current)return;ew.current.classList.remove(E),ef.current=!1,ea(!1),ed.current=new Date;let r=C(ew.current,W);if(!e||!eM(e.target,!1)||!r||Number.isNaN(r)||null===eu.current)return;let a=ed.current.getTime()-eu.current.getTime(),o=em.current-(R(W)?e.pageY:e.pageX),l=Math.abs(o)/a;if(l>.05&&(el(!0),setTimeout(()=>{el(!1)},200)),m){eT({draggedDistance:o*("bottom"===W||"right"===W?1:-1),closeDrawer:eO,velocity:l,dismissible:$}),null==d||d(e,!0);return}if("bottom"===W||"right"===W?o>0:o<0){ez(),null==d||d(e,!0);return}if(l>.4){eO(),null==d||d(e,!1);return}let i=Math.min(null!=(t=ew.current.getBoundingClientRect().height)?t:0,window.innerHeight),s=Math.min(null!=(n=ew.current.getBoundingClientRect().width)?n:0,window.innerWidth);if(Math.abs(r)>=("left"===W||"right"===W?s:i)*T){eO(),null==d||d(e,!1);return}null==d||d(e,!0),ez()},onDrag:function(e){if(ew.current&&er){let t="bottom"===W||"right"===W?1:-1,n=(em.current-(R(W)?e.pageY:e.pageX))*t,r=n>0,a=m&&!$&&!r;if(a&&0===eR)return;let o=Math.abs(n),l=document.querySelector("[data-vaul-drawer-wrapper]"),s=o/("bottom"===W||"top"===W?ey.current:eb.current),u=ek(o,r);if(null!==u&&(s=u),a&&s>=1||!ef.current&&!eM(e.target,r))return;if(ew.current.classList.add(E),ef.current=!0,j(ew.current,{transition:"none"}),j(ei.current,{transition:"none"}),m&&eE({draggedDistance:n}),r&&!m){let e=Math.min(-(8*(Math.log(n+1)-2)*1),0)*t;j(ew.current,{transform:R(W)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`});return}let d=1-s;if((eS||O&&eR===O-1)&&(null==i||i(e,s),j(ei.current,{opacity:`${d}`,transition:"none"},!0)),l&&ei.current&&h){let e=Math.min(eP()+s*(1-eP()),1),t=8-8*s,n=Math.max(0,14-14*s);j(l,{borderRadius:`${t}px`,transform:R(W)?`scale(${e}) translate3d(0, ${n}px, 0)`:`scale(${e}) translate3d(${n}px, 0, 0)`,transition:"none"},!0)}if(!m){let e=o*t;j(ew.current,{transform:R(W)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`})}}},dismissible:$,shouldAnimate:eh,handleOnly:M,isOpen:Z,isDragging:er,shouldFade:eS,closeDrawer:eO,onNestedDrag:function(e,t){if(t<0)return;let n=(window.innerWidth-16)/window.innerWidth,r=n+t*(1-n),a=-16+16*t;j(ew.current,{transform:R(W)?`scale(${r}) translate3d(0, ${a}px, 0)`:`scale(${r}) translate3d(${a}px, 0, 0)`,transition:"none"})},onNestedOpenChange:function(e){let t=e?(window.innerWidth-16)/window.innerWidth:1,n=e?-16:0;ep.current&&window.clearTimeout(ep.current),j(ew.current,{transition:`transform 0.5s cubic-bezier(${N.join(",")})`,transform:R(W)?`scale(${t}) translate3d(0, ${n}px, 0)`:`scale(${t}) translate3d(${n}px, 0, 0)`}),!e&&ew.current&&(ep.current=setTimeout(()=>{let e=C(ew.current,W);j(ew.current,{transition:"none",transform:R(W)?`translate3d(0, ${e}px, 0)`:`translate3d(${e}px, 0, 0)`})},500))},onNestedRelease:function(e,t){let n=R(W)?window.innerHeight:window.innerWidth,r=t?(n-16)/n:1,a=t?-16:0;t&&j(ew.current,{transition:`transform 0.5s cubic-bezier(${N.join(",")})`,transform:R(W)?`scale(${r}) translate3d(0, ${a}px, 0)`:`scale(${r}) translate3d(${a}px, 0, 0)`})},keyboardIsOpen:eg,modal:F,snapPointsOffset:eN,activeSnapPointIndex:eR,direction:W,shouldScaleBackground:h,setBackgroundColorOnScale:x,noBodyStyles:I,container:J,autoFocus:_}},r))}let O=o.default.forwardRef(function({...e},t){let{overlayRef:n,snapPoints:r,onRelease:l,shouldFade:s,isOpen:u,modal:d,shouldAnimate:c}=i(),f=x(t,n),p=r&&r.length>0;if(!d)return null;let m=o.default.useCallback(e=>l(e),[l]);return o.default.createElement(a.Overlay,{onMouseUp:m,ref:f,"data-vaul-overlay":"","data-vaul-snap-points":u&&p?"true":"false","data-vaul-snap-points-overlay":u&&s?"true":"false","data-vaul-animate":(null==c?void 0:c.current)?"true":"false",...e})});O.displayName="Drawer.Overlay";let z=o.default.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:n,...r},l){let{drawerRef:s,onPress:u,onRelease:d,onDrag:c,keyboardIsOpen:f,snapPointsOffset:p,activeSnapPointIndex:m,modal:g,isOpen:h,direction:v,snapPoints:w,container:y,handleOnly:b,shouldAnimate:D,autoFocus:j}=i(),[C,E]=o.default.useState(!1),S=x(l,s),k=o.default.useRef(null),P=o.default.useRef(null),M=o.default.useRef(!1),O=w&&w.length>0;function z(e){k.current=null,M.current=!1,d(e)}return!function(){let{direction:e,isOpen:t,shouldScaleBackground:n,setBackgroundColorOnScale:r,noBodyStyles:a}=i(),l=o.default.useRef(null),s=(0,o.useMemo)(()=>document.body.style.backgroundColor,[]);function u(){return(window.innerWidth-26)/window.innerWidth}o.default.useEffect(()=>{if(t&&n){l.current&&clearTimeout(l.current);let t=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!t)return;!function(...e){}(r&&!a?T(document.body,{background:"black"}):$,T(t,{transformOrigin:R(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:"0.5s",transitionTimingFunction:`cubic-bezier(${N.join(",")})`}));let n=T(t,{borderRadius:"8px",overflow:"hidden",...R(e)?{transform:`scale(${u()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${u()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{n(),l.current=window.setTimeout(()=>{s?document.body.style.background=s:document.body.style.removeProperty("background")},500)}}},[t,n,s])}(),o.default.useEffect(()=>{O&&window.requestAnimationFrame(()=>{E(!0)})},[]),o.default.createElement(a.Content,{"data-vaul-drawer-direction":v,"data-vaul-drawer":"","data-vaul-delayed-snap-points":C?"true":"false","data-vaul-snap-points":h&&O?"true":"false","data-vaul-custom-container":y?"true":"false","data-vaul-animate":(null==D?void 0:D.current)?"true":"false",...r,ref:S,style:p&&p.length>0?{"--snap-point-height":`${p[null!=m?m:0]}px`,...t}:t,onPointerDown:e=>{b||(null==r.onPointerDown||r.onPointerDown.call(r,e),k.current={x:e.pageX,y:e.pageY},u(e))},onOpenAutoFocus:e=>{null==n||n(e),j||e.preventDefault()},onPointerDownOutside:t=>{(null==e||e(t),!g||t.defaultPrevented)?t.preventDefault():f.current&&(f.current=!1)},onFocusOutside:e=>{if(!g)return void e.preventDefault()},onPointerMove:e=>{if(P.current=e,b||(null==r.onPointerMove||r.onPointerMove.call(r,e),!k.current))return;let t=e.pageY-k.current.y,n=e.pageX-k.current.x,a="touch"===e.pointerType?10:2;((e,t,n=0)=>{if(M.current)return!0;let r=Math.abs(e.y),a=Math.abs(e.x),o=a>r,l=["bottom","right"].includes(t)?1:-1;if("left"===t||"right"===t){if(!(e.x*l<0)&&a>=0&&a<=n)return o}else if(!(e.y*l<0)&&r>=0&&r<=n)return!o;return M.current=!0,!0})({x:n,y:t},v,a)?c(e):(Math.abs(n)>a||Math.abs(t)>a)&&(k.current=null)},onPointerUp:e=>{null==r.onPointerUp||r.onPointerUp.call(r,e),k.current=null,M.current=!1,d(e)},onPointerOut:e=>{null==r.onPointerOut||r.onPointerOut.call(r,e),z(P.current)},onContextMenu:e=>{null==r.onContextMenu||r.onContextMenu.call(r,e),P.current&&z(P.current)}})});z.displayName="Drawer.Content";let L=o.default.forwardRef(function({preventCycle:e=!1,children:t,...n},r){let{closeDrawer:a,isDragging:l,snapPoints:s,activeSnapPoint:u,setActiveSnapPoint:d,dismissible:c,handleOnly:f,isOpen:p,onPress:m,onDrag:g}=i(),h=o.default.useRef(null),v=o.default.useRef(!1);function w(){h.current&&window.clearTimeout(h.current),v.current=!1}return o.default.createElement("div",{onClick:function(){v.current?w():window.setTimeout(()=>{!function(){if(l||e||v.current)return w();if(w(),!s||0===s.length){c||a();return}if(u===s[s.length-1]&&c)return a();let t=s.findIndex(e=>e===u);-1===t||d(s[t+1])}()},120)},onPointerCancel:w,onPointerDown:e=>{f&&m(e),h.current=window.setTimeout(()=>{v.current=!0},250)},onPointerMove:e=>{f&&g(e)},ref:r,"data-vaul-drawer-visible":p?"true":"false","data-vaul-handle":"","aria-hidden":"true",...n},o.default.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});L.displayName="Drawer.Handle";let B={Root:M,NestedRoot:function({onDrag:e,onOpenChange:t,open:n,...r}){let{onNestedDrag:a,onNestedOpenChange:l,onNestedRelease:s}=i();if(!a)throw Error("Drawer.NestedRoot must be placed in another drawer");return o.default.createElement(M,{nested:!0,open:n,onClose:()=>{l(!1)},onDrag:(t,n)=>{a(t,n),null==e||e(t,n)},onOpenChange:e=>{e&&l(e),null==t||t(e)},onRelease:s,...r})},Content:z,Overlay:O,Trigger:a.Trigger,Portal:function(e){let t=i(),{container:n=t.container,...r}=e;return o.default.createElement(a.Portal,{container:n,...r})},Handle:L,Close:a.Close,Title:a.Title,Description:a.Description};var F=e.i(31777);function A({...e}){return(0,n.jsx)(B.Root,{"data-slot":"drawer",...e})}function H({...e}){return(0,n.jsx)(B.Portal,{"data-slot":"drawer-portal",...e})}function I({className:e,...t}){return(0,n.jsx)(B.Overlay,{"data-slot":"drawer-overlay",className:(0,F.cn)("fixed inset-0 z-50 bg-black/50",e),...t})}function W({className:e,children:t,direction:a="bottom",showCloseButton:o=!0,...l}){return(0,n.jsx)(H,{children:(0,n.jsxs)(B.Content,{"data-slot":"drawer-content",className:(0,F.cn)("bg-background fixed z-50 flex flex-col shadow-lg","bottom"===a&&"inset-x-0 bottom-0 mb-24 rounded-t-lg border-t","top"===a&&"inset-x-0 top-0 mt-24 rounded-b-lg border-b","right"===a&&"inset-y-0 right-0 h-full w-3/4 border-l","left"===a&&"inset-y-0 left-0 h-full w-3/4 border-r",e),style:{"--initial-transform":"right"===a?"calc(100% + 8px)":"left"===a||"top"===a?"calc(-100% - 8px)":"calc(100% + 8px)",userSelect:"text",...l.style??{}},...l,children:[t,o?(0,n.jsxs)(B.Close,{className:"ring-offset-background focus:ring-ring 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,n.jsx)(r.XIcon,{className:"size-4"}),(0,n.jsx)("span",{className:"sr-only",children:"Close"})]}):null]})})}function q({className:e,...t}){return(0,n.jsx)("div",{"data-slot":"drawer-header",className:(0,F.cn)("flex flex-col gap-1.5 p-4",e),...t})}function Y({className:e,...t}){return(0,n.jsx)("div",{"data-slot":"drawer-footer",className:(0,F.cn)("mt-auto flex flex-col gap-2 p-4",e),...t})}function U({className:e,...t}){return(0,n.jsx)(B.Title,{"data-slot":"drawer-title",className:(0,F.cn)("text-foreground font-semibold",e),...t})}function X({className:e,...t}){return(0,n.jsx)(B.Description,{"data-slot":"drawer-description",className:(0,F.cn)("text-muted-foreground text-sm",e),...t})}e.s(["Drawer",()=>A,"DrawerContent",()=>W,"DrawerDescription",()=>X,"DrawerFooter",()=>Y,"DrawerHeader",()=>q,"DrawerOverlay",()=>I,"DrawerTitle",()=>U],45811)},8537,e=>{"use strict";var t=e.i(79054),n=e.i(18354),r=e.i(21023);let a=(0,r.createServerReference)("4049996d481ff30ce5bcff5e65b6c73414bd707b1f",r.callServer,void 0,r.findSourceMapURL,"deployFeature"),o=(0,r.createServerReference)("401abe67908026b80a29282cbc5c663ebe9591ab91",r.callServer,void 0,r.findSourceMapURL,"deployRepository"),l=(0,r.createServerReference)("4047816db2b713f1df879d60c9f4396b33e918e2d1",r.callServer,void 0,r.findSourceMapURL,"stopDeployment"),i=(0,r.createServerReference)("40511d2b58032e6a5d548749d10272508be889c607",r.callServer,void 0,r.findSourceMapURL,"getDeploymentStatus"),s=(0,n.createLogger)("[useDeployAction]");function u(e){let[n,r]=(0,t.useState)(!1),[u,d]=(0,t.useState)(!1),[c,f]=(0,t.useState)(null),[p,m]=(0,t.useState)(null),[g,h]=(0,t.useState)(null),v=(0,t.useRef)(null),w=(0,t.useRef)(null),y=(0,t.useRef)(!0),b=(0,t.useRef)(p);(0,t.useEffect)(()=>{b.current=p},[p]),(0,t.useEffect)(()=>(y.current=!0,()=>{y.current=!1}),[]),(0,t.useEffect)(()=>()=>{v.current&&clearTimeout(v.current),w.current&&clearInterval(w.current)},[]);let x=(0,t.useCallback)(()=>{w.current&&(s.debug("stopping polling"),clearInterval(w.current),w.current=null)},[]),D=(0,t.useCallback)(e=>{x(),s.debug(`starting polling for "${e}" every 3000ms`),w.current=setInterval(async()=>{if(!y.current)return void x();let t=await i(e);y.current&&(t&&"Stopped"!==t.state?(t.state!==b.current&&s.info(`poll state changed: ${b.current} → ${t.state}, url=${t.url}`),m(t.state),h(t.url)):(s.info(`poll result: ${t?`state=${t.state}`:"null (deployment gone)"} — stopping poll`),m(null),h(null),x()))},3e3)},[x]),j=(0,t.useCallback)(async()=>{if(!e)return void s.warn("deploy() called but input is null — no-op");if(n)return void s.warn("deploy() called but already loading — no-op");s.info(`deploy() — targetType="${e.targetType}", targetId="${e.targetId}", repositoryPath="${e.repositoryPath}"`),v.current&&clearTimeout(v.current),r(!0),f(null);try{let t="feature"===e.targetType?await a(e.targetId):await o(e.repositoryPath);if(s.info("server action result:",t),!y.current)return void s.warn("component unmounted after deploy — discarding result");if(t.success)s.info(`deploy succeeded — initial state=${t.state}, starting polling`),m(t.state??null),h(null),D(e.targetId);else{let e=t.error??"An unexpected error occurred";s.error(`deploy failed: ${e}`),f(e),v.current=setTimeout(()=>f(null),5e3)}}catch(t){if(!y.current)return;let e=t instanceof Error?t.message:"An unexpected error occurred";s.error(`deploy threw exception: ${e}`,t),f(e),v.current=setTimeout(()=>f(null),5e3)}finally{y.current&&r(!1)}},[e,n,D]),R=(0,t.useCallback)(async()=>{if(e&&!u){s.info(`stop() — targetId="${e.targetId}"`),d(!0);try{let t=await l(e.targetId);if(s.info("stop result:",t),!y.current)return;t.success&&(x(),m(null),h(null))}catch(e){s.warn("stop error (non-critical):",e)}finally{y.current&&d(!1)}}},[e,u,x]);return{deploy:j,stop:R,deployLoading:n,stopLoading:u,deployError:c,status:p,url:g}}e.s(["useDeployAction",()=>u],8537)},11495,e=>{"use strict";var t=e.i(20314),n=e.i(79054),r=e.i(48249),a=e.i(24042),o=e.i(64970),l=e.i(94237),i=e.i(31777);e.i(81803);var s=e.i(72714);e.i(99348);var u=e.i(17466),d=e.i(45811),c=e.i(25235),f=e.i(2828),p=e.i(8537),m=e.i(75921);let g=(0,l.cva)("",{variants:{size:{sm:"w-96",md:"w-xl"}},defaultVariants:{size:"sm"}});function h({open:e,onClose:a,modal:o=!1,dismissOnOutsideClick:l=!1,title:s="Drawer",size:u,header:f,children:p,footer:h,className:w,"data-testid":y,deployTarget:b}){let x=(0,m.useFeatureFlags)(),D=(0,n.useRef)(null);return(0,n.useEffect)(()=>{if(!e||o)return;let t=e=>{let t=e.target;!document.body.contains(t)||D.current?.contains(t)||t.closest(l?'[role="alertdialog"], [role="dialog"], [role="menu"], [role="listbox"], [data-radix-popper-content-wrapper]':'[data-no-drawer-close], [role="alertdialog"], [role="dialog"], [role="menu"], [role="listbox"], [data-radix-popper-content-wrapper]')||a()};return document.addEventListener("click",t),()=>document.removeEventListener("click",t)},[e,o,a,l]),(0,t.jsxs)(d.Drawer,{direction:"right",modal:o,handleOnly:!0,open:e,onOpenChange:e=>{e||a()},children:[o?(0,t.jsx)(d.DrawerOverlay,{}):null,(0,t.jsxs)(d.DrawerContent,{ref:D,direction:"right",showCloseButton:!1,className:(0,i.cn)(g({size:u}),w),"data-testid":y,onInteractOutside:o?void 0:e=>e.preventDefault(),children:[(0,t.jsx)(d.DrawerTitle,{asChild:!0,children:(0,t.jsx)("span",{className:"sr-only",children:s})}),(0,t.jsx)(d.DrawerDescription,{asChild:!0,children:(0,t.jsx)("span",{className:"sr-only",children:s})}),(0,t.jsxs)("button",{type:"button","aria-label":"Close",onClick:a,className:"ring-offset-background focus:ring-ring absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden","data-testid":y?`${y}-close-button`:void 0,children:[(0,t.jsx)(r.XIcon,{className:"size-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]}),f?(0,t.jsx)(d.DrawerHeader,{className:"shrink-0",children:f}):null,f?(0,t.jsx)(c.Separator,{}):null,x.envDeploy&&b?(0,t.jsx)(v,{deployTarget:b}):null,(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:p}),h?(0,t.jsx)(d.DrawerFooter,{className:"shrink-0",children:h}):null]})]})}function v({deployTarget:e}){let n=(0,p.useDeployAction)(e),r="Booting"===n.status||"Ready"===n.status;return(0,t.jsxs)("div",{"data-testid":"base-drawer-deploy-bar",className:"flex items-center gap-2 px-4 pb-3",children:[(0,t.jsx)(f.TooltipProvider,{children:(0,t.jsxs)(f.Tooltip,{children:[(0,t.jsx)(f.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{children:(0,t.jsx)(s.ActionButton,{label:r?"Stop Dev Server":"Start Dev Server",onClick:r?n.stop:n.deploy,loading:n.deployLoading||n.stopLoading,error:!!n.deployError,icon:r?o.Square:a.Play,iconOnly:!0,variant:"outline",size:"icon-sm"})})}),(0,t.jsx)(f.TooltipContent,{children:r?"Stop Dev Server":"Start Dev Server"})]})}),r?(0,t.jsx)(u.DeploymentStatusBadge,{status:n.status,url:n.url,targetId:e.targetId}):null]})}e.s(["BaseDrawer",()=>h])}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,83902,e=>{"use strict";let t=(0,e.i(3645).default)("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);e.s(["Rocket",()=>t],83902)},87342,e=>{"use strict";var t=e.i(79054),s=e.i(22528),r=e.i(5978),a=e.i(86874),i=e.i(20314);function l(e){let l=e+"CollectionProvider",[n,o]=(0,s.createContextScope)(l),[c,d]=n(l,{collectionRef:{current:null},itemMap:new Map}),u=e=>{let{scope:s,children:r}=e,a=t.default.useRef(null),l=t.default.useRef(new Map).current;return(0,i.jsx)(c,{scope:s,itemMap:l,collectionRef:a,children:r})};u.displayName=l;let m=e+"CollectionSlot",f=(0,a.createSlot)(m),h=t.default.forwardRef((e,t)=>{let{scope:s,children:a}=e,l=d(m,s),n=(0,r.useComposedRefs)(t,l.collectionRef);return(0,i.jsx)(f,{ref:n,children:a})});h.displayName=m;let x=e+"CollectionItemSlot",p="data-radix-collection-item",g=(0,a.createSlot)(x),v=t.default.forwardRef((e,s)=>{let{scope:a,children:l,...n}=e,o=t.default.useRef(null),c=(0,r.useComposedRefs)(s,o),u=d(x,a);return t.default.useEffect(()=>(u.itemMap.set(o,{ref:o,...n}),()=>void u.itemMap.delete(o))),(0,i.jsx)(g,{...{[p]:""},ref:c,children:l})});return v.displayName=x,[{Provider:u,Slot:h,ItemSlot:v},function(s){let r=d(e+"CollectionConsumer",s);return t.default.useCallback(()=>{let e=r.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${p}]`));return Array.from(r.itemMap.values()).sort((e,s)=>t.indexOf(e.ref.current)-t.indexOf(s.ref.current))},[r.collectionRef,r.itemMap])},o]}var n=new WeakMap;function o(e,t){var s,r;let a,i,l;if("at"in Array.prototype)return Array.prototype.at.call(e,t);let n=(s=e,r=t,a=s.length,(l=(i=c(r))>=0?i:a+i)<0||l>=a?-1:l);return -1===n?void 0:e[n]}function c(e){return e!=e||0===e?0:Math.trunc(e)}(class e extends Map{#e;constructor(e){super(e),this.#e=[...super.keys()],n.set(this,!0)}set(e,t){return n.get(this)&&(this.has(e)?this.#e[this.#e.indexOf(e)]=e:this.#e.push(e)),super.set(e,t),this}insert(e,t,s){let r,a=this.has(t),i=this.#e.length,l=c(e),n=l>=0?l:i+l,o=n<0||n>=i?-1:n;if(o===this.size||a&&o===this.size-1||-1===o)return this.set(t,s),this;let d=this.size+ +!a;l<0&&n++;let u=[...this.#e],m=!1;for(let e=n;e<d;e++)if(n===e){let i=u[e];u[e]===t&&(i=u[e+1]),a&&this.delete(t),r=this.get(i),this.set(t,s)}else{m||u[e-1]!==t||(m=!0);let s=u[m?e:e-1],a=r;r=this.get(s),this.delete(s),this.set(s,a)}return this}with(t,s,r){let a=new e(this);return a.insert(t,s,r),a}before(e){let t=this.#e.indexOf(e)-1;if(!(t<0))return this.entryAt(t)}setBefore(e,t,s){let r=this.#e.indexOf(e);return -1===r?this:this.insert(r,t,s)}after(e){let t=this.#e.indexOf(e);if(-1!==(t=-1===t||t===this.size-1?-1:t+1))return this.entryAt(t)}setAfter(e,t,s){let r=this.#e.indexOf(e);return -1===r?this:this.insert(r+1,t,s)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#e=[],super.clear()}delete(e){let t=super.delete(e);return t&&this.#e.splice(this.#e.indexOf(e),1),t}deleteAt(e){let t=this.keyAt(e);return void 0!==t&&this.delete(t)}at(e){let t=o(this.#e,e);if(void 0!==t)return this.get(t)}entryAt(e){let t=o(this.#e,e);if(void 0!==t)return[t,this.get(t)]}indexOf(e){return this.#e.indexOf(e)}keyAt(e){return o(this.#e,e)}from(e,t){let s=this.indexOf(e);if(-1===s)return;let r=s+t;return r<0&&(r=0),r>=this.size&&(r=this.size-1),this.at(r)}keyFrom(e,t){let s=this.indexOf(e);if(-1===s)return;let r=s+t;return r<0&&(r=0),r>=this.size&&(r=this.size-1),this.keyAt(r)}find(e,t){let s=0;for(let r of this){if(Reflect.apply(e,t,[r,s,this]))return r;s++}}findIndex(e,t){let s=0;for(let r of this){if(Reflect.apply(e,t,[r,s,this]))return s;s++}return -1}filter(t,s){let r=[],a=0;for(let e of this)Reflect.apply(t,s,[e,a,this])&&r.push(e),a++;return new e(r)}map(t,s){let r=[],a=0;for(let e of this)r.push([e[0],Reflect.apply(t,s,[e,a,this])]),a++;return new e(r)}reduce(...e){let[t,s]=e,r=0,a=s??this.at(0);for(let s of this)a=0===r&&1===e.length?s:Reflect.apply(t,this,[a,s,r,this]),r++;return a}reduceRight(...e){let[t,s]=e,r=s??this.at(-1);for(let s=this.size-1;s>=0;s--){let a=this.at(s);r=s===this.size-1&&1===e.length?a:Reflect.apply(t,this,[r,a,s,this])}return r}toSorted(t){return new e([...this.entries()].sort(t))}toReversed(){let t=new e;for(let e=this.size-1;e>=0;e--){let s=this.keyAt(e),r=this.get(s);t.set(s,r)}return t}toSpliced(...t){let s=[...this.entries()];return s.splice(...t),new e(s)}slice(t,s){let r=new e,a=this.size-1;if(void 0===t)return r;t<0&&(t+=this.size),void 0!==s&&s>0&&(a=s-1);for(let e=t;e<=a;e++){let t=this.keyAt(e),s=this.get(t);r.set(t,s)}return r}every(e,t){let s=0;for(let r of this){if(!Reflect.apply(e,t,[r,s,this]))return!1;s++}return!0}some(e,t){let s=0;for(let r of this){if(Reflect.apply(e,t,[r,s,this]))return!0;s++}return!1}}),e.s(["createCollection",()=>l])},68304,51080,e=>{"use strict";var t=e.i(20314),s=e.i(79054),r=e.i(91967),a=e.i(22528),i=e.i(87342),l=e.i(5978),n=e.i(13123),o=e.i(87620),c=e.i(29297),d=e.i(36589),u=e.i(66033),m="rovingFocusGroup.onEntryFocus",f={bubbles:!1,cancelable:!0},h="RovingFocusGroup",[x,p,g]=(0,i.createCollection)(h),[v,b]=(0,a.createContextScope)(h,[g]),[y,j]=v(h),k=s.forwardRef((e,s)=>(0,t.jsx)(x.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,t.jsx)(x.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,t.jsx)(w,{...e,ref:s})})}));k.displayName=h;var w=s.forwardRef((e,a)=>{let{__scopeRovingFocusGroup:i,orientation:n,loop:x=!1,dir:g,currentTabStopId:v,defaultCurrentTabStopId:b,onCurrentTabStopIdChange:j,onEntryFocus:k,preventScrollOnEntryFocus:w=!1,...N}=e,C=s.useRef(null),T=(0,l.useComposedRefs)(a,C),I=(0,u.useDirection)(g),[S,A]=(0,d.useControllableState)({prop:v,defaultProp:b??null,onChange:j,caller:h}),[z,E]=s.useState(!1),M=(0,c.useCallbackRef)(k),D=p(i),L=s.useRef(!1),[P,F]=s.useState(0);return s.useEffect(()=>{let e=C.current;if(e)return e.addEventListener(m,M),()=>e.removeEventListener(m,M)},[M]),(0,t.jsx)(y,{scope:i,orientation:n,dir:I,loop:x,currentTabStopId:S,onItemFocus:s.useCallback(e=>A(e),[A]),onItemShiftTab:s.useCallback(()=>E(!0),[]),onFocusableItemAdd:s.useCallback(()=>F(e=>e+1),[]),onFocusableItemRemove:s.useCallback(()=>F(e=>e-1),[]),children:(0,t.jsx)(o.Primitive.div,{tabIndex:z||0===P?-1:0,"data-orientation":n,...N,ref:T,style:{outline:"none",...e.style},onMouseDown:(0,r.composeEventHandlers)(e.onMouseDown,()=>{L.current=!0}),onFocus:(0,r.composeEventHandlers)(e.onFocus,e=>{let t=!L.current;if(e.target===e.currentTarget&&t&&!z){let t=new CustomEvent(m,f);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=D().filter(e=>e.focusable);R([e.find(e=>e.active),e.find(e=>e.id===S),...e].filter(Boolean).map(e=>e.ref.current),w)}}L.current=!1}),onBlur:(0,r.composeEventHandlers)(e.onBlur,()=>E(!1))})})}),N="RovingFocusGroupItem",C=s.forwardRef((e,a)=>{let{__scopeRovingFocusGroup:i,focusable:l=!0,active:c=!1,tabStopId:d,children:u,...m}=e,f=(0,n.useId)(),h=d||f,g=j(N,i),v=g.currentTabStopId===h,b=p(i),{onFocusableItemAdd:y,onFocusableItemRemove:k,currentTabStopId:w}=g;return s.useEffect(()=>{if(l)return y(),()=>k()},[l,y,k]),(0,t.jsx)(x.ItemSlot,{scope:i,id:h,focusable:l,active:c,children:(0,t.jsx)(o.Primitive.span,{tabIndex:v?0:-1,"data-orientation":g.orientation,...m,ref:a,onMouseDown:(0,r.composeEventHandlers)(e.onMouseDown,e=>{l?g.onItemFocus(h):e.preventDefault()}),onFocus:(0,r.composeEventHandlers)(e.onFocus,()=>g.onItemFocus(h)),onKeyDown:(0,r.composeEventHandlers)(e.onKeyDown,e=>{if("Tab"===e.key&&e.shiftKey)return void g.onItemShiftTab();if(e.target!==e.currentTarget)return;let t=function(e,t,s){var r;let a=(r=e.key,"rtl"!==s?r:"ArrowLeft"===r?"ArrowRight":"ArrowRight"===r?"ArrowLeft":r);if(!("vertical"===t&&["ArrowLeft","ArrowRight"].includes(a))&&!("horizontal"===t&&["ArrowUp","ArrowDown"].includes(a)))return T[a]}(e,g.orientation,g.dir);if(void 0!==t){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let a=b().filter(e=>e.focusable).map(e=>e.ref.current);if("last"===t)a.reverse();else if("prev"===t||"next"===t){var s,r;"prev"===t&&a.reverse();let i=a.indexOf(e.currentTarget);a=g.loop?(s=a,r=i+1,s.map((e,t)=>s[(r+t)%s.length])):a.slice(i+1)}setTimeout(()=>R(a))}}),children:"function"==typeof u?u({isCurrentTabStop:v,hasTabStop:null!=w}):u})})});C.displayName=N;var T={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function R(e,t=!1){let s=document.activeElement;for(let r of e)if(r===s||(r.focus({preventScroll:t}),document.activeElement!==s))return}e.s(["Item",()=>C,"Root",()=>k,"createRovingFocusGroupScope",()=>b],51080);var I=e.i(85995),S="Tabs",[A,z]=(0,a.createContextScope)(S,[b]),E=b(),[M,D]=A(S),L=s.forwardRef((e,s)=>{let{__scopeTabs:r,value:a,onValueChange:i,defaultValue:l,orientation:c="horizontal",dir:m,activationMode:f="automatic",...h}=e,x=(0,u.useDirection)(m),[p,g]=(0,d.useControllableState)({prop:a,onChange:i,defaultProp:l??"",caller:S});return(0,t.jsx)(M,{scope:r,baseId:(0,n.useId)(),value:p,onValueChange:g,orientation:c,dir:x,activationMode:f,children:(0,t.jsx)(o.Primitive.div,{dir:x,"data-orientation":c,...h,ref:s})})});L.displayName=S;var P="TabsList",F=s.forwardRef((e,s)=>{let{__scopeTabs:r,loop:a=!0,...i}=e,l=D(P,r),n=E(r);return(0,t.jsx)(k,{asChild:!0,...n,orientation:l.orientation,dir:l.dir,loop:a,children:(0,t.jsx)(o.Primitive.div,{role:"tablist","aria-orientation":l.orientation,...i,ref:s})})});F.displayName=P;var O="TabsTrigger",B=s.forwardRef((e,s)=>{let{__scopeTabs:a,value:i,disabled:l=!1,...n}=e,c=D(O,a),d=E(a),u=q(c.baseId,i),m=K(c.baseId,i),f=i===c.value;return(0,t.jsx)(C,{asChild:!0,...d,focusable:!l,active:f,children:(0,t.jsx)(o.Primitive.button,{type:"button",role:"tab","aria-selected":f,"aria-controls":m,"data-state":f?"active":"inactive","data-disabled":l?"":void 0,disabled:l,id:u,...n,ref:s,onMouseDown:(0,r.composeEventHandlers)(e.onMouseDown,e=>{l||0!==e.button||!1!==e.ctrlKey?e.preventDefault():c.onValueChange(i)}),onKeyDown:(0,r.composeEventHandlers)(e.onKeyDown,e=>{[" ","Enter"].includes(e.key)&&c.onValueChange(i)}),onFocus:(0,r.composeEventHandlers)(e.onFocus,()=>{let e="manual"!==c.activationMode;f||l||!e||c.onValueChange(i)})})})});B.displayName=O;var H="TabsContent",V=s.forwardRef((e,r)=>{let{__scopeTabs:a,value:i,forceMount:l,children:n,...c}=e,d=D(H,a),u=q(d.baseId,i),m=K(d.baseId,i),f=i===d.value,h=s.useRef(f);return s.useEffect(()=>{let e=requestAnimationFrame(()=>h.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,t.jsx)(I.Presence,{present:l||f,children:({present:s})=>(0,t.jsx)(o.Primitive.div,{"data-state":f?"active":"inactive","data-orientation":d.orientation,role:"tabpanel","aria-labelledby":u,hidden:!s,id:m,tabIndex:0,...c,ref:r,style:{...e.style,animationDuration:h.current?"0s":void 0},children:s&&n})})});function q(e,t){return`${e}-trigger-${t}`}function K(e,t){return`${e}-content-${t}`}V.displayName=H,e.s(["Content",()=>V,"List",()=>F,"Root",()=>L,"Tabs",()=>L,"TabsContent",()=>V,"TabsList",()=>F,"TabsTrigger",()=>B,"Trigger",()=>B,"createTabsScope",()=>z],43133);var $=e.i(43133),$=$,U=e.i(31777);let G=$.Root,_=s.forwardRef(({className:e,...s},r)=>(0,t.jsx)($.List,{ref:r,className:(0,U.cn)("bg-muted text-muted-foreground inline-flex h-9 items-center justify-center rounded-lg p-1",e),...s}));_.displayName=$.List.displayName;let W=s.forwardRef(({className:e,...s},r)=>(0,t.jsx)($.Trigger,{ref:r,className:(0,U.cn)("ring-offset-background focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow",e),...s}));W.displayName=$.Trigger.displayName;let X=s.forwardRef(({className:e,...s},r)=>(0,t.jsx)($.Content,{ref:r,className:(0,U.cn)("ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none",e),...s}));X.displayName=$.Content.displayName,e.s(["Tabs",()=>G,"TabsContent",()=>X,"TabsList",()=>_,"TabsTrigger",()=>W],68304)},30090,e=>{"use strict";let t=(0,e.i(3645).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["default",()=>t])},54277,e=>{"use strict";var t=e.i(30090);e.s(["CircleX",()=>t.default])},33548,e=>{"use strict";let t=(0,e.i(3645).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",()=>t],33548)},23925,e=>{"use strict";var t=e.i(1012);e.s(["Check",()=>t.default])},81846,e=>{"use strict";var t=e.i(20314),s=e.i(94237),r=e.i(31777);let a=(0,s.cva)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-none",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i({className:e,variant:s,...i}){return(0,t.jsx)("div",{className:(0,r.cn)(a({variant:s}),e),...i})}e.s(["Badge",()=>i])},1012,e=>{"use strict";let t=(0,e.i(3645).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",()=>t])},49228,e=>{"use strict";let t=(0,e.i(3645).default)("git-branch",[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]]);e.s(["GitBranch",()=>t],49228)},95812,e=>{"use strict";let t=(0,e.i(3645).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Circle",()=>t],95812)},35e3,e=>{"use strict";var t=e.i(80986);e.s(["CheckCircle2",()=>t.default])},44412,e=>{"use strict";var t=e.i(20314),s=e.i(79054),r=e.i(81975),a=e.i(68304),i=e.i(31777),l=e.i(83428),n=e.i(83902),o=e.i(3645);let c=(0,o.default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]),d=(0,o.default)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);var u=e.i(38573),m=e.i(49228),f=e.i(54277),h=e.i(95812),x=e.i(35e3);let p=(0,o.default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);var g=e.i(35364),v=e.i(2828),b=e.i(33548),y=e.i(23925),j=e.i(30702),k=e.i(11495);let w={linux:"Linux",darwin:"macOS",win32:"Windows"},N={ide:{label:"IDE",icon:d},"cli-agent":{label:"CLI Agent",icon:u.Terminal},vcs:{label:"VCS",icon:m.GitBranch},terminal:{label:"Terminal",icon:u.Terminal}};function C({status:e}){return"available"===e?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-medium text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400",children:[(0,t.jsx)(y.Check,{className:"h-3 w-3"}),"Installed"]}):"error"===e?(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400",children:"Error"}):(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-amber-100 px-2 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:"Missing"})}function T({tool:e,open:r,onClose:a,onRefresh:i,autoStart:o}){let[u,m]=(0,s.useState)(!1),[f,h]=(0,s.useState)(!1),{logs:x,status:v,startInstall:T}=function(e){let[t,r]=(0,s.useState)([]),[a,i]=(0,s.useState)("idle"),[l,n]=(0,s.useState)(null),o=(0,s.useRef)(null),c=(0,s.useCallback)(()=>{o.current&&(o.current.close(),o.current=null)},[]);return(0,s.useEffect)(()=>c,[c]),{logs:t,status:a,result:l,startInstall:(0,s.useCallback)(()=>{c(),r([]),n(null),i("streaming");let t=new EventSource(`/api/tools/${e}/install/stream`);o.current=t,t.onmessage=e=>{r(t=>[...t,e.data])},t.addEventListener("done",e=>{let t=JSON.parse(e.data);n(t),i("error"===t.status?"error":"done"),c()}),t.onerror=()=>{i("error"),c()}},[e,c])}}(e.id),R=(0,s.useRef)(null),I=(0,s.useRef)(!0),S=(0,s.useRef)(!1),A="available"===e.status.status,z="error"===e.status.status,E=A&&!!e.openDirectory,M=!A&&!z&&e.autoInstall;async function D(){h(!0);try{await fetch(`/api/tools/${e.id}/launch`,{method:"POST"})}finally{h(!1)}}(0,s.useEffect)(()=>{r&&o&&M&&"idle"===v&&!S.current&&(S.current=!0,T()),r||(S.current=!1)},[r,o,M,v,T]);let L=(0,s.useCallback)(()=>{let e=R.current;e&&(I.current=e.scrollTop+e.clientHeight>=e.scrollHeight-50)},[]);(0,s.useEffect)(()=>{I.current&&R.current&&(R.current.scrollTop=R.current.scrollHeight)},[x,v]),(0,s.useEffect)(()=>{"done"===v&&i&&i()},[v,i]);let P=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5 pr-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[e.iconUrl?(0,t.jsx)("img",{src:e.iconUrl,alt:"",width:24,height:24,className:"shrink-0 dark:invert"}):(0,t.jsx)(p,{className:"text-muted-foreground h-6 w-6 shrink-0"}),(0,t.jsx)("h2",{className:"text-base font-bold",children:e.name}),(0,t.jsx)(C,{status:e.status.status})]}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:e.tags.map(e=>{let s=N[e]??{label:e,icon:d},r=s.icon;return(0,t.jsxs)("span",{className:"text-muted-foreground/70 inline-flex items-center gap-0.5 text-[10px]",children:[(0,t.jsx)(r,{className:"h-3 w-3"}),s.label]},e)})})]});return(0,t.jsx)(k.BaseDrawer,{open:r,onClose:a,size:"md",modal:!0,title:e.name,header:P,"data-testid":"tool-detail-drawer",children:(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-4 overflow-y-auto p-4",children:[(0,t.jsx)("p",{className:"text-muted-foreground text-sm",children:e.description}),e.author||e.platforms?(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs",children:[e.author?(0,t.jsxs)("span",{className:"text-muted-foreground",children:["by"," ",e.website?(0,t.jsx)("a",{href:e.website,target:"_blank",rel:"noopener noreferrer",className:"text-foreground hover:underline",children:e.author}):(0,t.jsx)("span",{className:"text-foreground",children:e.author})]}):null,e.platforms&&e.platforms.length>0?(0,t.jsx)("span",{className:"text-muted-foreground",children:e.platforms.map(e=>w[e]??e).join(" · ")}):null]}):null,e.installCommand?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs font-semibold tracking-wide uppercase",children:"Install command"}),(0,t.jsxs)("div",{className:"relative rounded-md bg-zinc-900 text-zinc-100",children:[(0,t.jsx)("pre",{className:"overflow-x-auto px-3 py-2.5 pr-16 font-mono text-xs leading-relaxed break-all whitespace-pre-wrap",children:(0,t.jsx)("code",{children:e.installCommand})}),(0,t.jsxs)(g.Button,{variant:"ghost",size:"sm",className:"absolute top-1.5 right-1.5 h-7 cursor-pointer px-2 text-zinc-400 hover:text-zinc-100",onClick:function(){e.installCommand&&navigator.clipboard.writeText(e.installCommand).then(()=>{m(!0),setTimeout(()=>m(!1),2e3)})},"aria-label":u?"Copied!":"Copy install command",children:[u?(0,t.jsx)(y.Check,{className:"h-3.5 w-3.5 text-emerald-500"}):(0,t.jsx)(b.Copy,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"ml-1 text-[10px]",children:u?"Copied!":"Copy"})]})]})]}):null,(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[M?(0,t.jsxs)(g.Button,{size:"sm",onClick:T,disabled:"streaming"===v,"aria-label":`Install ${e.name}`,className:"cursor-pointer",children:["streaming"===v?(0,t.jsx)(l.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(c,{className:"mr-1.5 h-3.5 w-3.5"}),"streaming"===v?"Installing...":"Install"]}):null,E?(0,t.jsxs)(g.Button,{size:"sm",variant:"outline",onClick:()=>void D(),disabled:f,"aria-label":`Launch ${e.name}`,className:"cursor-pointer",children:[f?(0,t.jsx)(l.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(n.Rocket,{className:"mr-1.5 h-3.5 w-3.5"}),"Launch"]}):null,e.documentationUrl?(0,t.jsx)(g.Button,{variant:"outline",size:"sm",className:"cursor-pointer",asChild:!0,children:(0,t.jsxs)("a",{href:e.documentationUrl,target:"_blank",rel:"noopener noreferrer",children:["Docs",(0,t.jsx)(j.ExternalLink,{className:"ml-1 h-3 w-3"})]})}):null]}),("streaming"===v||"done"===v||"error"===v)&&x.length>0?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs font-semibold tracking-wide uppercase",children:"Install log"}),(0,t.jsxs)("div",{ref:R,onScroll:L,className:"max-h-60 overflow-auto rounded-md bg-zinc-900 p-3 font-mono text-xs leading-relaxed text-zinc-100","data-testid":"tool-install-log",children:[x.map((e,s)=>(0,t.jsx)("div",{className:"break-all whitespace-pre-wrap",children:e},s)),"done"===v?(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-emerald-400",children:"Installation complete"}):null,"error"===v?(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-red-400",children:"Installation failed"}):null]})]}):null]})})}let R={ide:{label:"IDE",icon:d},"cli-agent":{label:"CLI Agent",icon:u.Terminal},vcs:{label:"VCS",icon:m.GitBranch},terminal:{label:"Terminal",icon:u.Terminal}};function I({tool:e,onRefresh:r,className:a}){let[o,u]=(0,s.useState)(!1),[m,b]=(0,s.useState)(!1),[y,j]=(0,s.useTransition)(),k="available"===e.status.status,w="error"===e.status.status,N=k&&!!e.openDirectory;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{"data-testid":"tool-card",onClick:function(){b(!1),u(!0)},className:(0,i.cn)("bg-card group flex h-30 w-full cursor-pointer flex-col rounded-lg border p-3 transition-shadow hover:shadow-md",a),children:[(0,t.jsxs)("div",{className:"mb-2 flex items-start justify-between gap-2",children:[(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[e.iconUrl?(0,t.jsx)("img",{src:e.iconUrl,alt:"",width:20,height:20,className:"shrink-0 dark:invert"}):(0,t.jsx)(p,{className:"text-muted-foreground h-5 w-5 shrink-0"}),(0,t.jsx)("h3",{"data-testid":"tool-card-name",className:"truncate text-sm font-bold",children:e.name})]}),(0,t.jsx)("div",{"data-testid":"tool-card-tags",className:"flex shrink-0 items-center gap-1",children:e.tags.map(e=>{let s=R[e]??{label:e,icon:d},r=s.icon;return(0,t.jsxs)("span",{className:"text-muted-foreground/70 inline-flex items-center gap-0.5 text-[9px]",children:[(0,t.jsx)(r,{className:"h-2.5 w-2.5"}),s.label]},e)})})]}),(0,t.jsx)("p",{"data-testid":"tool-card-summary",className:"text-muted-foreground mt-1 truncate text-xs",children:e.summary}),(0,t.jsxs)("div",{className:"mt-auto flex items-center justify-between pt-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[w&&"error"===e.status.status?(0,t.jsxs)("span",{className:"flex items-center gap-1 truncate text-[10px] text-red-600 dark:text-red-400",title:e.status.errorMessage,children:[(0,t.jsx)(f.CircleX,{className:"h-3 w-3 shrink-0"}),e.status.errorMessage??"Error"]}):k?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[10px] text-emerald-600 dark:text-emerald-400",children:[(0,t.jsx)(x.CheckCircle2,{className:"h-3 w-3"}),"Installed"]}):(0,t.jsxs)("span",{className:"text-muted-foreground flex items-center gap-1 text-[10px]",children:[(0,t.jsx)(h.Circle,{className:"h-3 w-3"}),"Not installed"]}),e.required?(0,t.jsx)(v.TooltipProvider,{children:(0,t.jsxs)(v.Tooltip,{children:[(0,t.jsx)(v.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"rounded bg-amber-100 px-1.5 py-0.5 text-[9px] font-medium text-amber-700 dark:bg-amber-900/50 dark:text-amber-400",children:"Required"})}),(0,t.jsx)(v.TooltipContent,{side:"top",children:"This tool is required for Shep to function properly"})]})}):null]}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:k&&N?(0,t.jsxs)(g.Button,{size:"sm",variant:"outline",onClick:function(t){t.stopPropagation(),j(async()=>{await fetch(`/api/tools/${e.id}/launch`,{method:"POST"})})},disabled:y,"aria-label":`Launch ${e.name}`,"data-testid":"tool-card-launch-button",className:"h-7 cursor-pointer rounded-md px-3 text-xs",children:[y?(0,t.jsx)(l.Loader2,{className:"mr-1 h-3 w-3 animate-spin"}):(0,t.jsx)(n.Rocket,{className:"mr-1 h-3 w-3"}),"Launch"]}):k||w?null:(0,t.jsxs)(g.Button,{size:"sm",variant:"default",onClick:function(t){t.stopPropagation(),b(e.autoInstall),u(!0)},"aria-label":`Install ${e.name}`,"data-testid":"tool-card-install-button",className:"h-7 cursor-pointer rounded-md px-3 text-xs",children:[(0,t.jsx)(c,{className:"mr-1 h-3 w-3"}),"Install"]})})]})]}),(0,t.jsx)(T,{tool:e,open:o,onClose:()=>u(!1),onRefresh:r,autoStart:m})]})}let S={all:()=>!0,ide:e=>e.tags.includes("ide"),"cli-agent":e=>e.tags.includes("cli-agent"),vcs:e=>e.tags.includes("vcs"),terminal:e=>e.tags.includes("terminal")};function A({tools:e,className:l}){let[n,o]=(0,s.useState)(e),[c,d]=(0,s.useState)("all"),u=(0,s.useCallback)(async()=>{try{let e=await fetch("/api/tools");if(e.ok){let t=await e.json();o(t)}}catch{}},[]),m=n.filter(S[c]);return(0,t.jsxs)("div",{"data-testid":"tools-page-client",className:(0,i.cn)("space-y-4",l),children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(r.Wrench,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Tools"}),(0,t.jsxs)("span",{className:"text-muted-foreground text-[10px]",children:[n.filter(e=>"available"===e.status.status).length,"/",n.length," installed"]})]}),(0,t.jsxs)(a.Tabs,{value:c,onValueChange:e=>d(e),"data-testid":"tools-page-tabs",children:[(0,t.jsxs)(a.TabsList,{className:"h-7",children:[(0,t.jsx)(a.TabsTrigger,{value:"all","data-testid":"tools-tab-all",className:"px-2.5 text-xs",children:"All"}),(0,t.jsx)(a.TabsTrigger,{value:"ide","data-testid":"tools-tab-ide",className:"px-2.5 text-xs",children:"IDEs"}),(0,t.jsx)(a.TabsTrigger,{value:"cli-agent","data-testid":"tools-tab-cli-agent",className:"px-2.5 text-xs",children:"CLI Agents"}),(0,t.jsx)(a.TabsTrigger,{value:"vcs","data-testid":"tools-tab-vcs",className:"px-2.5 text-xs",children:"Version Control"}),(0,t.jsx)(a.TabsTrigger,{value:"terminal","data-testid":"tools-tab-terminal",className:"px-2.5 text-xs",children:"Terminals"})]}),(0,t.jsx)(a.TabsContent,{value:c,className:"mt-3",children:0===m.length?(0,t.jsxs)("div",{"data-testid":"tools-page-empty",className:"text-muted-foreground flex flex-col items-center justify-center py-12 text-center",children:[(0,t.jsx)(r.Wrench,{className:"mb-2 h-6 w-6 opacity-20"}),(0,t.jsx)("p",{className:"text-xs",children:"No tools in this category."})]}):(0,t.jsx)("div",{"data-testid":"tools-page-grid",className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:m.map(e=>(0,t.jsx)(I,{tool:e,onRefresh:u},e.id))})})]})]})}e.s(["ToolsPageClient",()=>A],44412)}]);