@shepai/cli 1.129.3 → 1.129.4-pr412.cbe0d37

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 (332) hide show
  1. package/apis/json-schema/FeatureFlags.yaml +5 -0
  2. package/dist/packages/core/src/application/ports/output/agents/phase-timing-repository.interface.d.ts +1 -1
  3. package/dist/packages/core/src/application/ports/output/agents/phase-timing-repository.interface.d.ts.map +1 -1
  4. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  5. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -0
  6. package/dist/packages/core/src/domain/generated/output.d.ts +4 -0
  7. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  8. package/dist/packages/core/src/infrastructure/persistence/sqlite/legacy-migrations.d.ts +2 -2
  9. package/dist/packages/core/src/infrastructure/persistence/sqlite/legacy-migrations.d.ts.map +1 -1
  10. package/dist/packages/core/src/infrastructure/persistence/sqlite/legacy-migrations.js +13 -2
  11. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -0
  12. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  13. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +2 -0
  14. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.d.ts +3 -3
  15. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations.js +4 -4
  16. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  17. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -0
  18. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/evidence.node.d.ts.map +1 -1
  19. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/evidence.node.js +21 -5
  20. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/fast-implement.node.d.ts.map +1 -1
  21. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/fast-implement.node.js +20 -4
  22. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/implement.node.d.ts.map +1 -1
  23. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/implement.node.js +71 -10
  24. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.d.ts.map +1 -1
  25. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.js +2 -1
  26. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.d.ts +8 -0
  27. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.d.ts.map +1 -1
  28. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/phase-timing-context.js +16 -0
  29. package/dist/src/presentation/web/app/actions/get-feature-phase-timings.d.ts +1 -0
  30. package/dist/src/presentation/web/app/actions/get-feature-phase-timings.d.ts.map +1 -1
  31. package/dist/src/presentation/web/app/actions/get-feature-phase-timings.js +1 -0
  32. package/dist/src/presentation/web/app/api/directory/list/route.d.ts +3 -0
  33. package/dist/src/presentation/web/app/api/directory/list/route.d.ts.map +1 -0
  34. package/dist/src/presentation/web/app/api/directory/list/route.js +76 -0
  35. package/dist/src/presentation/web/app/layout.d.ts +1 -0
  36. package/dist/src/presentation/web/app/layout.d.ts.map +1 -1
  37. package/dist/src/presentation/web/app/layout.js +1 -0
  38. package/dist/src/presentation/web/components/common/add-repository-button/add-repository-button.d.ts.map +1 -1
  39. package/dist/src/presentation/web/components/common/add-repository-button/add-repository-button.js +23 -2
  40. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
  41. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +20 -4
  42. package/dist/src/presentation/web/components/common/control-center-drawer/use-artifact-fetch.d.ts +2 -1
  43. package/dist/src/presentation/web/components/common/control-center-drawer/use-artifact-fetch.d.ts.map +1 -1
  44. package/dist/src/presentation/web/components/common/control-center-drawer/use-artifact-fetch.js +3 -2
  45. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
  46. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +50 -19
  47. package/dist/src/presentation/web/components/common/feature-drawer-tabs/activity-tab.d.ts.map +1 -1
  48. package/dist/src/presentation/web/components/common/feature-drawer-tabs/activity-tab.js +17 -4
  49. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
  50. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +2 -2
  51. package/dist/src/presentation/web/components/common/index.d.ts +1 -0
  52. package/dist/src/presentation/web/components/common/index.d.ts.map +1 -1
  53. package/dist/src/presentation/web/components/common/index.js +1 -0
  54. package/dist/src/presentation/web/components/common/react-file-manager-dialog/index.d.ts +3 -0
  55. package/dist/src/presentation/web/components/common/react-file-manager-dialog/index.d.ts.map +1 -0
  56. package/dist/src/presentation/web/components/common/react-file-manager-dialog/index.js +1 -0
  57. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog-config.d.ts +17 -0
  58. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog-config.d.ts.map +1 -0
  59. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog-config.js +1 -0
  60. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog.d.ts +3 -0
  61. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog.d.ts.map +1 -0
  62. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog.js +116 -0
  63. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog.stories.d.ts +9 -0
  64. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog.stories.d.ts.map +1 -0
  65. package/dist/src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog.stories.js +27 -0
  66. package/dist/src/presentation/web/components/features/control-center/control-center-empty-state.d.ts.map +1 -1
  67. package/dist/src/presentation/web/components/features/control-center/control-center-empty-state.js +22 -1
  68. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.d.ts.map +1 -1
  69. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.js +3 -0
  70. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.d.ts.map +1 -1
  71. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.js +3 -0
  72. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  73. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +5 -0
  74. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts.map +1 -1
  75. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.js +1 -0
  76. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
  77. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +21 -2
  78. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.d.ts.map +1 -1
  79. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.js +1 -0
  80. package/dist/src/presentation/web/hooks/feature-flags-context.d.ts.map +1 -1
  81. package/dist/src/presentation/web/hooks/feature-flags-context.js +1 -0
  82. package/dist/src/presentation/web/lib/feature-flags.d.ts +2 -0
  83. package/dist/src/presentation/web/lib/feature-flags.d.ts.map +1 -1
  84. package/dist/src/presentation/web/lib/feature-flags.js +5 -0
  85. package/dist/tsconfig.build.tsbuildinfo +1 -1
  86. package/package.json +2 -1
  87. package/web/.next/BUILD_ID +1 -1
  88. package/web/.next/app-path-routes-manifest.json +1 -0
  89. package/web/.next/build-manifest.json +6 -6
  90. package/web/.next/fallback-build-manifest.json +2 -2
  91. package/web/.next/prerender-manifest.json +3 -3
  92. package/web/.next/required-server-files.js +3 -3
  93. package/web/.next/required-server-files.json +3 -3
  94. package/web/.next/routes-manifest.json +6 -0
  95. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/build-manifest.json +4 -4
  96. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/react-loadable-manifest.json +8 -1
  97. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +24 -24
  98. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +1 -1
  99. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  100. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  101. package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +4 -4
  102. package/web/.next/server/app/(dashboard)/@drawer/create/page/react-loadable-manifest.json +8 -1
  103. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +24 -24
  104. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +1 -1
  105. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  106. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  107. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/build-manifest.json +4 -4
  108. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/react-loadable-manifest.json +8 -1
  109. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +30 -30
  110. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +1 -1
  111. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  112. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  113. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +4 -4
  114. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/react-loadable-manifest.json +8 -1
  115. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +30 -30
  116. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +1 -1
  117. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  118. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  119. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +4 -4
  120. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/react-loadable-manifest.json +8 -1
  121. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +22 -22
  122. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +1 -1
  123. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  124. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  125. package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +4 -4
  126. package/web/.next/server/app/(dashboard)/create/page/react-loadable-manifest.json +8 -1
  127. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +24 -24
  128. package/web/.next/server/app/(dashboard)/create/page.js +1 -1
  129. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  130. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  131. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/build-manifest.json +4 -4
  132. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/react-loadable-manifest.json +8 -1
  133. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +30 -30
  134. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +1 -1
  135. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  136. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  137. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +4 -4
  138. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/react-loadable-manifest.json +8 -1
  139. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +30 -30
  140. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +1 -1
  141. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  142. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  143. package/web/.next/server/app/(dashboard)/page/build-manifest.json +4 -4
  144. package/web/.next/server/app/(dashboard)/page/react-loadable-manifest.json +8 -1
  145. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +22 -22
  146. package/web/.next/server/app/(dashboard)/page.js +1 -1
  147. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  148. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  149. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +4 -4
  150. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/react-loadable-manifest.json +8 -1
  151. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +22 -22
  152. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +1 -1
  153. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  154. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  155. package/web/.next/server/app/_global-error/page/build-manifest.json +4 -4
  156. package/web/.next/server/app/_global-error.html +2 -2
  157. package/web/.next/server/app/_global-error.rsc +1 -1
  158. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  159. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  160. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  161. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  162. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  163. package/web/.next/server/app/_not-found/page/build-manifest.json +4 -4
  164. package/web/.next/server/app/_not-found/page/react-loadable-manifest.json +8 -1
  165. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +3 -3
  166. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  167. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  168. package/web/.next/server/app/api/attachments/preview/route.js +1 -1
  169. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  170. package/web/.next/server/app/api/directory/list/route/app-paths-manifest.json +3 -0
  171. package/web/.next/server/app/api/directory/list/route/build-manifest.json +11 -0
  172. package/web/.next/server/app/api/directory/list/route/server-reference-manifest.json +4 -0
  173. package/web/.next/server/app/api/directory/list/route.js +7 -0
  174. package/web/.next/server/app/api/directory/list/route.js.map +5 -0
  175. package/web/.next/server/app/api/directory/list/route.js.nft.json +1 -0
  176. package/web/.next/server/app/api/directory/list/route_client-reference-manifest.js +2 -0
  177. package/web/.next/server/app/api/evidence/route.js +1 -1
  178. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  179. package/web/.next/server/app/api/feature-logs/route.js +1 -1
  180. package/web/.next/server/app/api/feature-logs/route.js.nft.json +1 -1
  181. package/web/.next/server/app/api/graph-data/route.js +1 -1
  182. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  183. package/web/.next/server/app/settings/page/build-manifest.json +4 -4
  184. package/web/.next/server/app/settings/page/react-loadable-manifest.json +8 -1
  185. package/web/.next/server/app/settings/page/server-reference-manifest.json +8 -8
  186. package/web/.next/server/app/settings/page.js +1 -1
  187. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  188. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  189. package/web/.next/server/app/skills/page/build-manifest.json +4 -4
  190. package/web/.next/server/app/skills/page/react-loadable-manifest.json +8 -1
  191. package/web/.next/server/app/skills/page/server-reference-manifest.json +8 -8
  192. package/web/.next/server/app/skills/page.js +1 -1
  193. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  194. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  195. package/web/.next/server/app/tools/page/build-manifest.json +4 -4
  196. package/web/.next/server/app/tools/page/react-loadable-manifest.json +8 -1
  197. package/web/.next/server/app/tools/page/server-reference-manifest.json +8 -8
  198. package/web/.next/server/app/tools/page.js +1 -1
  199. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  200. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  201. package/web/.next/server/app/version/page/build-manifest.json +4 -4
  202. package/web/.next/server/app/version/page/react-loadable-manifest.json +8 -1
  203. package/web/.next/server/app/version/page/server-reference-manifest.json +3 -3
  204. package/web/.next/server/app/version/page.js.nft.json +1 -1
  205. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  206. package/web/.next/server/app-paths-manifest.json +1 -0
  207. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_directory_list_route_actions_9e35153e.js +3 -0
  208. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_directory_list_route_actions_9e35153e.js.map +1 -0
  209. package/web/.next/server/chunks/{[root-of-the-server]__53013576._.js → [root-of-the-server]__25f23d5d._.js} +2 -2
  210. package/web/.next/server/chunks/{[root-of-the-server]__92078db6._.js → [root-of-the-server]__26565141._.js} +2 -2
  211. package/web/.next/server/chunks/{[root-of-the-server]__d8037e14._.js → [root-of-the-server]__2b1074db._.js} +2 -2
  212. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  213. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  214. package/web/.next/server/chunks/{[root-of-the-server]__bc532286._.js → [root-of-the-server]__d1dc8fcd._.js} +2 -2
  215. package/web/.next/server/chunks/[root-of-the-server]__d1dc8fcd._.js.map +1 -0
  216. package/web/.next/server/chunks/[root-of-the-server]__fc6fd958._.js +3 -0
  217. package/web/.next/server/chunks/[root-of-the-server]__fc6fd958._.js.map +1 -0
  218. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4e741df2.js +1 -1
  219. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4e741df2.js.map +1 -1
  220. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  221. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  222. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_026fdffa.js +1 -1
  223. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_026fdffa.js.map +1 -1
  224. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_8b91e197.js +1 -1
  225. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_8b91e197.js.map +1 -1
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js +1 -1
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js.map +1 -1
  229. package/web/.next/server/chunks/ssr/{[root-of-the-server]__60684242._.js → [root-of-the-server]__5142820f._.js} +3 -3
  230. package/web/.next/server/chunks/ssr/[root-of-the-server]__5142820f._.js.map +1 -0
  231. package/web/.next/server/chunks/ssr/{[root-of-the-server]__a21eef5a._.js → [root-of-the-server]__57018345._.js} +2 -2
  232. package/web/.next/server/chunks/ssr/[root-of-the-server]__57018345._.js.map +1 -0
  233. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +2 -2
  234. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js.map +1 -1
  235. package/web/.next/server/chunks/ssr/[root-of-the-server]__755cfe02._.js +1 -1
  236. package/web/.next/server/chunks/ssr/[root-of-the-server]__755cfe02._.js.map +1 -1
  237. package/web/.next/server/chunks/ssr/[root-of-the-server]__7894f27f._.js +3 -0
  238. package/web/.next/server/chunks/ssr/[root-of-the-server]__7894f27f._.js.map +1 -0
  239. package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js +1 -1
  240. package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js.map +1 -1
  241. package/web/.next/server/chunks/ssr/{[root-of-the-server]__62cdea24._.js → [root-of-the-server]__84f72684._.js} +3 -3
  242. package/web/.next/server/chunks/ssr/[root-of-the-server]__99ab2519._.js +1 -1
  243. package/web/.next/server/chunks/ssr/[root-of-the-server]__a628fb91._.js +1 -1
  244. package/web/.next/server/chunks/ssr/[root-of-the-server]__a628fb91._.js.map +1 -1
  245. package/web/.next/server/chunks/ssr/[root-of-the-server]__bfba58e6._.js +1 -1
  246. package/web/.next/server/chunks/ssr/[root-of-the-server]__bfba58e6._.js.map +1 -1
  247. package/web/.next/server/chunks/ssr/[root-of-the-server]__c3ab8422._.js +1 -1
  248. package/web/.next/server/chunks/ssr/[root-of-the-server]__c3ab8422._.js.map +1 -1
  249. package/web/.next/server/chunks/ssr/_0020fddd._.js +1 -1
  250. package/web/.next/server/chunks/ssr/_0020fddd._.js.map +1 -1
  251. package/web/.next/server/chunks/ssr/_02ec1aea._.js +1 -1
  252. package/web/.next/server/chunks/ssr/_02ec1aea._.js.map +1 -1
  253. package/web/.next/server/chunks/ssr/_1b7dae9a._.js +3 -0
  254. package/web/.next/server/chunks/ssr/_1b7dae9a._.js.map +1 -0
  255. package/web/.next/server/chunks/ssr/{_324f08fa._.js → _56c5e92e._.js} +2 -2
  256. package/web/.next/server/chunks/ssr/{_324f08fa._.js.map → _56c5e92e._.js.map} +1 -1
  257. package/web/.next/server/chunks/ssr/_7dca1882._.js +1 -1
  258. package/web/.next/server/chunks/ssr/_7dca1882._.js.map +1 -1
  259. package/web/.next/server/chunks/ssr/_a37f5f18._.js +1 -1
  260. package/web/.next/server/chunks/ssr/_a37f5f18._.js.map +1 -1
  261. package/web/.next/server/chunks/ssr/_a9f57758._.js +1 -1
  262. package/web/.next/server/chunks/ssr/_b032a7ac._.js +3 -0
  263. package/web/.next/server/chunks/ssr/{_8302fcae._.js.map → _b032a7ac._.js.map} +1 -1
  264. package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -1
  265. package/web/.next/server/chunks/ssr/_d8575088._.js +1 -1
  266. package/web/.next/server/chunks/ssr/_d8575088._.js.map +1 -1
  267. package/web/.next/server/chunks/ssr/_f39a1adb._.js +1 -1
  268. package/web/.next/server/chunks/ssr/_f39a1adb._.js.map +1 -1
  269. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  270. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  271. package/web/.next/server/chunks/ssr/{src_presentation_web_79c5e358._.js → src_presentation_web_0a31df6d._.js} +2 -2
  272. package/web/.next/server/chunks/ssr/{src_presentation_web_79c5e358._.js.map → src_presentation_web_0a31df6d._.js.map} +1 -1
  273. package/web/.next/server/chunks/ssr/src_presentation_web_8e7fe0d1._.js +2 -2
  274. package/web/.next/server/chunks/ssr/src_presentation_web_8e7fe0d1._.js.map +1 -1
  275. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_ca051134.js +1 -1
  276. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_ca051134.js.map +1 -1
  277. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js +1 -1
  278. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js.map +1 -1
  279. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js +1 -1
  280. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js.map +1 -1
  281. package/web/.next/server/chunks/ssr/src_presentation_web_b9023017._.js +2 -2
  282. package/web/.next/server/chunks/ssr/src_presentation_web_b9023017._.js.map +1 -1
  283. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
  284. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +1 -1
  285. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  286. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  287. package/web/.next/server/middleware-build-manifest.js +4 -4
  288. package/web/.next/server/pages/500.html +2 -2
  289. package/web/.next/server/server-reference-manifest.js +1 -1
  290. package/web/.next/server/server-reference-manifest.json +38 -38
  291. package/web/.next/static/chunks/{d34a91958ca566fa.js → 0b7fe2ac4f078f54.js} +1 -1
  292. package/web/.next/static/chunks/0ea15b83aeca7b1a.css +1 -0
  293. package/web/.next/static/chunks/{a4d0f5c8adbd573e.js → 10b5069084213d7b.js} +1 -1
  294. package/web/.next/static/chunks/{75424b9eb679261a.js → 467005fc66090d82.js} +1 -1
  295. package/web/.next/static/chunks/4cec255f2754e5ec.js +1 -0
  296. package/web/.next/static/chunks/{d2b3baac392d5097.js → 56986cf0d5665b33.js} +1 -1
  297. package/web/.next/static/chunks/{97778646dde1a546.js → 5d102c2368573ad4.js} +1 -1
  298. package/web/.next/static/chunks/{21a98ed37526a704.js → 5e0f0eb56caca7b0.js} +1 -1
  299. package/web/.next/static/chunks/6d7b999c99d6d175.js +9 -0
  300. package/web/.next/static/chunks/{d1238d67f4b7fa61.js → 768922d1350524f7.js} +1 -1
  301. package/web/.next/static/chunks/791fa3135b12cc5c.js +1 -0
  302. package/web/.next/static/chunks/7d78b55397522ad9.js +1 -0
  303. package/web/.next/static/chunks/8180973e9cd6a99e.css +1 -0
  304. package/web/.next/static/chunks/83fc7ea32e18c9a5.js +1 -0
  305. package/web/.next/static/chunks/{ef48a6beeb40b304.js → a449ec16975164ef.js} +1 -1
  306. package/web/.next/static/chunks/c7e793951b20a67f.js +1 -0
  307. package/web/.next/static/chunks/{a36ddda5a860c371.js → c8ae9f83f18eec9e.js} +1 -1
  308. package/web/.next/static/chunks/{140810c2538c85aa.js → d67b9a7e0395aadc.js} +1 -1
  309. package/web/.next/static/chunks/fc31060238e90093.js +2 -0
  310. package/web/.next/static/chunks/{turbopack-080e470ea902d0ba.js → turbopack-c2d183e05f30c7dc.js} +1 -1
  311. package/web/.next/server/chunks/[root-of-the-server]__bc532286._.js.map +0 -1
  312. package/web/.next/server/chunks/ssr/[root-of-the-server]__0e842eba._.js +0 -3
  313. package/web/.next/server/chunks/ssr/[root-of-the-server]__0e842eba._.js.map +0 -1
  314. package/web/.next/server/chunks/ssr/[root-of-the-server]__60684242._.js.map +0 -1
  315. package/web/.next/server/chunks/ssr/[root-of-the-server]__a21eef5a._.js.map +0 -1
  316. package/web/.next/server/chunks/ssr/_8302fcae._.js +0 -3
  317. package/web/.next/server/chunks/ssr/_b4b8a636._.js +0 -3
  318. package/web/.next/server/chunks/ssr/_b4b8a636._.js.map +0 -1
  319. package/web/.next/static/chunks/4d40135dc75a7412.js +0 -1
  320. package/web/.next/static/chunks/84a181ff3270fd9f.js +0 -1
  321. package/web/.next/static/chunks/89aac43287d73b02.js +0 -1
  322. package/web/.next/static/chunks/d0fb8a76a89bd016.js +0 -1
  323. package/web/.next/static/chunks/da484d44874006a2.css +0 -1
  324. package/web/.next/static/chunks/dc314fb7519088cf.js +0 -2
  325. package/web/.next/static/chunks/f259386f4875e70c.js +0 -1
  326. /package/web/.next/server/chunks/{[root-of-the-server]__53013576._.js.map → [root-of-the-server]__25f23d5d._.js.map} +0 -0
  327. /package/web/.next/server/chunks/{[root-of-the-server]__92078db6._.js.map → [root-of-the-server]__26565141._.js.map} +0 -0
  328. /package/web/.next/server/chunks/{[root-of-the-server]__d8037e14._.js.map → [root-of-the-server]__2b1074db._.js.map} +0 -0
  329. /package/web/.next/server/chunks/ssr/{[root-of-the-server]__62cdea24._.js.map → [root-of-the-server]__84f72684._.js.map} +0 -0
  330. /package/web/.next/static/{8qbj3kELZ61JA30sTIVee → jD-F2qPl8fvHfH8oc0hVX}/_buildManifest.js +0 -0
  331. /package/web/.next/static/{8qbj3kELZ61JA30sTIVee → jD-F2qPl8fvHfH8oc0hVX}/_clientMiddlewareManifest.json +0 -0
  332. /package/web/.next/static/{8qbj3kELZ61JA30sTIVee → jD-F2qPl8fvHfH8oc0hVX}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,48094,(e,t,n)=>{var r={229:function(e){var t,n,r,o=e.exports={};function u(){throw Error("setTimeout has not been defined")}function a(){throw Error("clearTimeout has not been defined")}try{t="function"==typeof setTimeout?setTimeout:u}catch(e){t=u}try{n="function"==typeof clearTimeout?clearTimeout:a}catch(e){n=a}function i(e){if(t===setTimeout)return setTimeout(e,0);if((t===u||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(n){try{return t.call(null,e,0)}catch(n){return t.call(this,e,0)}}}var l=[],s=!1,c=-1;function f(){s&&r&&(s=!1,r.length?l=r.concat(l):c=-1,l.length&&d())}function d(){if(!s){var e=i(f);s=!0;for(var t=l.length;t;){for(r=l,l=[];++c<t;)r&&r[c].run();c=-1,t=l.length}r=null,s=!1,function(e){if(n===clearTimeout)return clearTimeout(e);if((n===a||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(e);try{n(e)}catch(t){try{return n.call(null,e)}catch(t){return n.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function v(){}o.nextTick=function(e){var t=Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];l.push(new p(e,t)),1!==l.length||s||i(d)},p.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=v,o.addListener=v,o.once=v,o.off=v,o.removeListener=v,o.removeAllListeners=v,o.emit=v,o.prependListener=v,o.prependOnceListener=v,o.listeners=function(e){return[]},o.binding=function(e){throw Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(e){throw Error("process.chdir is not supported")},o.umask=function(){return 0}}},o={};function u(e){var t=o[e];if(void 0!==t)return t.exports;var n=o[e]={exports:{}},a=!0;try{r[e](n,n.exports,u),a=!1}finally{a&&delete o[e]}return n.exports}u.ab="/ROOT/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/compiled/process/",t.exports=u(229)},44172,(e,t,n)=>{"use strict";var r,o;t.exports=(null==(r=e.g.process)?void 0:r.env)&&"object"==typeof(null==(o=e.g.process)?void 0:o.env)?e.g.process:e.r(48094)},94455,(e,t,n)=>{"use strict";var r=Symbol.for("react.transitional.element");function o(e,t,n){var o=null;if(void 0!==n&&(o=""+n),void 0!==t.key&&(o=""+t.key),"key"in t)for(var u in n={},t)"key"!==u&&(n[u]=t[u]);else n=t;return{$$typeof:r,type:e,key:o,ref:void 0!==(t=n.ref)?t:null,props:n}}n.Fragment=Symbol.for("react.fragment"),n.jsx=o,n.jsxs=o},20314,(e,t,n)=>{"use strict";t.exports=e.r(94455)},85912,(e,t,n)=>{"use strict";var r=e.i(44172),o=Symbol.for("react.transitional.element"),u=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),c=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),y=Symbol.for("react.activity"),h=Symbol.for("react.view_transition"),g=Symbol.iterator,b={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,m={};function S(e,t,n){this.props=e,this.context=t,this.refs=m,this.updater=n||b}function w(){}function O(e,t,n){this.props=e,this.context=t,this.refs=m,this.updater=n||b}S.prototype.isReactComponent={},S.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},S.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},w.prototype=S.prototype;var k=O.prototype=new w;k.constructor=O,_(k,S.prototype),k.isPureReactComponent=!0;var E=Array.isArray;function R(){}var T={H:null,A:null,T:null,S:null},A=Object.prototype.hasOwnProperty;function j(e,t,n){var r=n.ref;return{$$typeof:o,type:e,key:t,ref:void 0!==r?r:null,props:n}}function $(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var C=/\/+/g;function N(e,t){var n,r;return"object"==typeof e&&null!==e&&null!=e.key?(n=""+e.key,r={"=":"=0",":":"=2"},"$"+n.replace(/[=:]/g,function(e){return r[e]})):t.toString(36)}function P(e,t,n){if(null==e)return e;var r=[],a=0;return!function e(t,n,r,a,i){var l,s,c,f=typeof t;("undefined"===f||"boolean"===f)&&(t=null);var d=!1;if(null===t)d=!0;else switch(f){case"bigint":case"string":case"number":d=!0;break;case"object":switch(t.$$typeof){case o:case u:d=!0;break;case v:return e((d=t._init)(t._payload),n,r,a,i)}}if(d)return i=i(t),d=""===a?"."+N(t,0):a,E(i)?(r="",null!=d&&(r=d.replace(C,"$&/")+"/"),e(i,n,r,"",function(e){return e})):null!=i&&($(i)&&(l=i,s=r+(null==i.key||t&&t.key===i.key?"":(""+i.key).replace(C,"$&/")+"/")+d,i=j(l.type,s,l.props)),n.push(i)),1;d=0;var p=""===a?".":a+":";if(E(t))for(var y=0;y<t.length;y++)f=p+N(a=t[y],y),d+=e(a,n,r,f,i);else if("function"==typeof(y=null===(c=t)||"object"!=typeof c?null:"function"==typeof(c=g&&c[g]||c["@@iterator"])?c:null))for(t=y.call(t),y=0;!(a=t.next()).done;)f=p+N(a=a.value,y++),d+=e(a,n,r,f,i);else if("object"===f){if("function"==typeof t.then)return e(function(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch("string"==typeof e.status?e.then(R,R):(e.status="pending",e.then(function(t){"pending"===e.status&&(e.status="fulfilled",e.value=t)},function(t){"pending"===e.status&&(e.status="rejected",e.reason=t)})),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}(t),n,r,a,i);throw Error("Objects are not valid as a React child (found: "+("[object Object]"===(n=String(t))?"object with keys {"+Object.keys(t).join(", ")+"}":n)+"). If you meant to render a collection of children, use an array instead.")}return d}(e,r,"","",function(e){return t.call(n,e,a++)}),r}function D(e){if(-1===e._status){var t=e._result;(t=t()).then(function(t){(0===e._status||-1===e._status)&&(e._status=1,e._result=t)},function(t){(0===e._status||-1===e._status)&&(e._status=2,e._result=t)}),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var x="function"==typeof reportError?reportError:function(e){if("object"==typeof window&&"function"==typeof window.ErrorEvent){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"==typeof e&&null!==e&&"string"==typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if("object"==typeof r.default&&"function"==typeof r.default.emit)return void r.default.emit("uncaughtException",e);console.error(e)};function M(e){var t=T.T,n={};n.types=null!==t?t.types:null,T.T=n;try{var r=e(),o=T.S;null!==o&&o(n,r),"object"==typeof r&&null!==r&&"function"==typeof r.then&&r.then(R,x)}catch(e){x(e)}finally{null!==t&&null!==n.types&&(t.types=n.types),T.T=t}}function I(e){var t=T.T;if(null!==t){var n=t.types;null===n?t.types=[e]:-1===n.indexOf(e)&&n.push(e)}else M(I.bind(null,e))}n.Activity=y,n.Children={map:P,forEach:function(e,t,n){P(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return P(e,function(){t++}),t},toArray:function(e){return P(e,function(e){return e})||[]},only:function(e){if(!$(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},n.Component=S,n.Fragment=a,n.Profiler=l,n.PureComponent=O,n.StrictMode=i,n.Suspense=d,n.ViewTransition=h,n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,n.__COMPILER_RUNTIME={__proto__:null,c:function(e){return T.H.useMemoCache(e)}},n.addTransitionType=I,n.cache=function(e){return function(){return e.apply(null,arguments)}},n.cacheSignal=function(){return null},n.cloneElement=function(e,t,n){if(null==e)throw Error("The argument must be a React element, but you passed "+e+".");var r=_({},e.props),o=e.key;if(null!=t)for(u in void 0!==t.key&&(o=""+t.key),t)A.call(t,u)&&"key"!==u&&"__self"!==u&&"__source"!==u&&("ref"!==u||void 0!==t.ref)&&(r[u]=t[u]);var u=arguments.length-2;if(1===u)r.children=n;else if(1<u){for(var a=Array(u),i=0;i<u;i++)a[i]=arguments[i+2];r.children=a}return j(e.type,o,r)},n.createContext=function(e){return(e={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider=e,e.Consumer={$$typeof:s,_context:e},e},n.createElement=function(e,t,n){var r,o={},u=null;if(null!=t)for(r in void 0!==t.key&&(u=""+t.key),t)A.call(t,r)&&"key"!==r&&"__self"!==r&&"__source"!==r&&(o[r]=t[r]);var a=arguments.length-2;if(1===a)o.children=n;else if(1<a){for(var i=Array(a),l=0;l<a;l++)i[l]=arguments[l+2];o.children=i}if(e&&e.defaultProps)for(r in a=e.defaultProps)void 0===o[r]&&(o[r]=a[r]);return j(e,u,o)},n.createRef=function(){return{current:null}},n.forwardRef=function(e){return{$$typeof:f,render:e}},n.isValidElement=$,n.lazy=function(e){return{$$typeof:v,_payload:{_status:-1,_result:e},_init:D}},n.memo=function(e,t){return{$$typeof:p,type:e,compare:void 0===t?null:t}},n.startTransition=M,n.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},n.use=function(e){return T.H.use(e)},n.useActionState=function(e,t,n){return T.H.useActionState(e,t,n)},n.useCallback=function(e,t){return T.H.useCallback(e,t)},n.useContext=function(e){return T.H.useContext(e)},n.useDebugValue=function(){},n.useDeferredValue=function(e,t){return T.H.useDeferredValue(e,t)},n.useEffect=function(e,t){return T.H.useEffect(e,t)},n.useEffectEvent=function(e){return T.H.useEffectEvent(e)},n.useId=function(){return T.H.useId()},n.useImperativeHandle=function(e,t,n){return T.H.useImperativeHandle(e,t,n)},n.useInsertionEffect=function(e,t){return T.H.useInsertionEffect(e,t)},n.useLayoutEffect=function(e,t){return T.H.useLayoutEffect(e,t)},n.useMemo=function(e,t){return T.H.useMemo(e,t)},n.useOptimistic=function(e,t){return T.H.useOptimistic(e,t)},n.useReducer=function(e,t,n){return T.H.useReducer(e,t,n)},n.useRef=function(e){return T.H.useRef(e)},n.useState=function(e){return T.H.useState(e)},n.useSyncExternalStore=function(e,t,n){return T.H.useSyncExternalStore(e,t,n)},n.useTransition=function(){return T.H.useTransition()},n.version="19.3.0-canary-f93b9fd4-20251217"},79054,(e,t,n)=>{"use strict";t.exports=e.r(85912)},59848,(e,t,n)=>{"use strict";var r=e.r(79054);function o(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function u(){}var a={d:{f:u,r:function(){throw Error(o(522))},D:u,C:u,L:u,m:u,X:u,S:u,M:u},p:0,findDOMNode:null},i=Symbol.for("react.portal"),l=Symbol.for("react.optimistic_key"),s=r.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,t){return"font"===e?"":"string"==typeof t?"use-credentials"===t?t:"":void 0}n.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,n.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!t||1!==t.nodeType&&9!==t.nodeType&&11!==t.nodeType)throw Error(o(299));return function(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:i,key:null==r?null:r===l?l:""+r,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},n.flushSync=function(e){var t=s.T,n=a.p;try{if(s.T=null,a.p=2,e)return e()}finally{s.T=t,a.p=n,a.d.f()}},n.preconnect=function(e,t){"string"==typeof e&&(t=t?"string"==typeof(t=t.crossOrigin)?"use-credentials"===t?t:"":void 0:null,a.d.C(e,t))},n.prefetchDNS=function(e){"string"==typeof e&&a.d.D(e)},n.preinit=function(e,t){if("string"==typeof e&&t&&"string"==typeof t.as){var n=t.as,r=c(n,t.crossOrigin),o="string"==typeof t.integrity?t.integrity:void 0,u="string"==typeof t.fetchPriority?t.fetchPriority:void 0;"style"===n?a.d.S(e,"string"==typeof t.precedence?t.precedence:void 0,{crossOrigin:r,integrity:o,fetchPriority:u}):"script"===n&&a.d.X(e,{crossOrigin:r,integrity:o,fetchPriority:u,nonce:"string"==typeof t.nonce?t.nonce:void 0})}},n.preinitModule=function(e,t){if("string"==typeof e)if("object"==typeof t&&null!==t){if(null==t.as||"script"===t.as){var n=c(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:"string"==typeof t.integrity?t.integrity:void 0,nonce:"string"==typeof t.nonce?t.nonce:void 0})}}else null==t&&a.d.M(e)},n.preload=function(e,t){if("string"==typeof e&&"object"==typeof t&&null!==t&&"string"==typeof t.as){var n=t.as,r=c(n,t.crossOrigin);a.d.L(e,n,{crossOrigin:r,integrity:"string"==typeof t.integrity?t.integrity:void 0,nonce:"string"==typeof t.nonce?t.nonce:void 0,type:"string"==typeof t.type?t.type:void 0,fetchPriority:"string"==typeof t.fetchPriority?t.fetchPriority:void 0,referrerPolicy:"string"==typeof t.referrerPolicy?t.referrerPolicy:void 0,imageSrcSet:"string"==typeof t.imageSrcSet?t.imageSrcSet:void 0,imageSizes:"string"==typeof t.imageSizes?t.imageSizes:void 0,media:"string"==typeof t.media?t.media:void 0})}},n.preloadModule=function(e,t){if("string"==typeof e)if(t){var n=c(t.as,t.crossOrigin);a.d.m(e,{as:"string"==typeof t.as&&"script"!==t.as?t.as:void 0,crossOrigin:n,integrity:"string"==typeof t.integrity?t.integrity:void 0})}else a.d.m(e)},n.requestFormReset=function(e){a.d.r(e)},n.unstable_batchedUpdates=function(e,t){return e(t)},n.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},n.useFormStatus=function(){return s.H.useHostTransitionStatus()},n.version="19.3.0-canary-f93b9fd4-20251217"},26036,(e,t,n)=>{"use strict";!function e(){if("u">typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),t.exports=e.r(59848)},2976,(e,t,n)=>{"use strict";var r=e.r(26036),o={stream:!0},u=Object.prototype.hasOwnProperty;function a(t){var n=e.r(t);return"function"!=typeof n.then||"fulfilled"===n.status?null:(n.then(function(e){n.status="fulfilled",n.value=e},function(e){n.status="rejected",n.reason=e}),n)}var i=new WeakSet,l=new WeakSet;function s(){}function c(t){for(var n=t[1],r=[],o=0;o<n.length;o++){var u=e.L(n[o]);if(l.has(u)||r.push(u),!i.has(u)){var c=l.add.bind(l,u);u.then(c,s),i.add(u)}}return 4===t.length?0===r.length?a(t[0]):Promise.all(r).then(function(){return a(t[0])}):0<r.length?Promise.all(r):null}function f(t){var n=e.r(t[0]);if(4===t.length&&"function"==typeof n.then)if("fulfilled"===n.status)n=n.value;else throw n.reason;return"*"===t[2]?n:""===t[2]?n.__esModule?n.default:n:u.call(n,t[2])?n[t[2]]:void 0}var d=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,p=Symbol.for("react.transitional.element"),v=Symbol.for("react.lazy"),y=Symbol.iterator,h=Symbol.asyncIterator,g=Array.isArray,b=Object.getPrototypeOf,_=Object.prototype,m=new WeakMap;function S(e,t,n){m.has(e)||m.set(e,{id:t,originalBind:e.bind,bound:n})}function w(e,t,n){this.status=e,this.value=t,this.reason=n}function O(e){switch(e.status){case"resolved_model":D(e);break;case"resolved_module":x(e)}switch(e.status){case"fulfilled":return e.value;case"pending":case"blocked":case"halted":throw e;default:throw e.reason}}function k(e,t,n,r){for(var o=0;o<t.length;o++){var u=t[o];"function"==typeof u?u(n):F(e,u,n,r)}}function E(e,t,n){for(var r=0;r<t.length;r++){var o=t[r];"function"==typeof o?o(n):U(e,o.handler,n)}}function R(e,t){var n=t.handler.chunk;if(null===n)return null;if(n===e)return t.handler;if(null!==(t=n.value))for(n=0;n<t.length;n++){var r=t[n];if("function"!=typeof r&&null!==(r=R(e,r)))return r}return null}function T(e,t,n,r){switch(t.status){case"fulfilled":k(e,n,t.value,t);break;case"blocked":for(var o=0;o<n.length;o++){var u=n[o];if("function"!=typeof u){var a=R(t,u);if(null!==a)switch(F(e,u,a.value,t),n.splice(o,1),o--,null!==r&&-1!==(u=r.indexOf(u))&&r.splice(u,1),t.status){case"fulfilled":k(e,n,t.value,t);return;case"rejected":null!==r&&E(e,r,t.reason);return}}}case"pending":if(t.value)for(e=0;e<n.length;e++)t.value.push(n[e]);else t.value=n;if(t.reason){if(r)for(n=0;n<r.length;n++)t.reason.push(r[n])}else t.reason=r;break;case"rejected":r&&E(e,r,t.reason)}}function A(e,t,n){if("pending"!==t.status&&"blocked"!==t.status)t.reason.error(n);else{var r=t.reason;t.status="rejected",t.reason=n,null!==r&&E(e,r,n)}}function j(e,t,n){return new w("resolved_model",(n?'{"done":true,"value":':'{"done":false,"value":')+t+"}",e)}function $(e,t,n,r){C(e,t,(r?'{"done":true,"value":':'{"done":false,"value":')+n+"}")}function C(e,t,n){if("pending"!==t.status)t.reason.enqueueModel(n);else{var r=t.value,o=t.reason;t.status="resolved_model",t.value=n,t.reason=e,null!==r&&(D(t),T(e,t,r,o))}}function N(e,t,n){if("pending"===t.status||"blocked"===t.status){var r=t.value,o=t.reason;t.status="resolved_module",t.value=n,t.reason=null,null!==r&&(x(t),T(e,t,r,o))}}w.prototype=Object.create(Promise.prototype),w.prototype.then=function(e,t){switch(this.status){case"resolved_model":D(this);break;case"resolved_module":x(this)}switch(this.status){case"fulfilled":"function"==typeof e&&e(this.value);break;case"pending":case"blocked":"function"==typeof e&&(null===this.value&&(this.value=[]),this.value.push(e)),"function"==typeof t&&(null===this.reason&&(this.reason=[]),this.reason.push(t));break;case"halted":break;default:"function"==typeof t&&t(this.reason)}};var P=null;function D(e){var t=P;P=null;var n=e.value,r=e.reason;e.status="blocked",e.value=null,e.reason=null;try{var o=JSON.parse(n,r._fromJSON),u=e.value;if(null!==u)for(e.value=null,e.reason=null,n=0;n<u.length;n++){var a=u[n];"function"==typeof a?a(o):F(r,a,o,e)}if(null!==P){if(P.errored)throw P.reason;if(0<P.deps){P.value=o,P.chunk=e;return}}e.status="fulfilled",e.value=o}catch(t){e.status="rejected",e.reason=t}finally{P=t}}function x(e){try{var t=f(e.value);e.status="fulfilled",e.value=t}catch(t){e.status="rejected",e.reason=t}}function M(e,t){e._closed=!0,e._closedReason=t,e._chunks.forEach(function(n){"pending"===n.status?A(e,n,t):"fulfilled"===n.status&&null!==n.reason&&n.reason.error(t)})}function I(e){return{$$typeof:v,_payload:e,_init:O}}function L(e,t){var n=e._chunks,r=n.get(t);return r||(r=e._closed?new w("rejected",null,e._closedReason):new w("pending",null,null),n.set(t,r)),r}function F(e,t,n){var r=t.handler,o=t.parentObject,a=t.key,i=t.map,l=t.path;try{for(var s=1;s<l.length;s++){for(;"object"==typeof n&&null!==n&&n.$$typeof===v;){var c=n._payload;if(c===r.chunk)n=r.value;else{switch(c.status){case"resolved_model":D(c);break;case"resolved_module":x(c)}switch(c.status){case"fulfilled":n=c.value;continue;case"blocked":var f=R(c,t);if(null!==f){n=f.value;continue}case"pending":l.splice(0,s-1),null===c.value?c.value=[t]:c.value.push(t),null===c.reason?c.reason=[t]:c.reason.push(t);return;case"halted":return;default:U(e,t.handler,c.reason);return}}}var d=l[s];if("object"==typeof n&&null!==n&&u.call(n,d))n=n[d];else throw Error("Invalid reference.")}for(;"object"==typeof n&&null!==n&&n.$$typeof===v;){var y=n._payload;if(y===r.chunk)n=r.value;else{switch(y.status){case"resolved_model":D(y);break;case"resolved_module":x(y)}if("fulfilled"===y.status){n=y.value;continue}break}}var h=i(e,n,o,a);if("__proto__"!==a&&(o[a]=h),""===a&&null===r.value&&(r.value=h),o[0]===p&&"object"==typeof r.value&&null!==r.value&&r.value.$$typeof===p){var g=r.value;"3"===a&&(g.props=h)}}catch(n){U(e,t.handler,n);return}r.deps--,0===r.deps&&null!==(t=r.chunk)&&"blocked"===t.status&&(n=t.value,t.status="fulfilled",t.value=r.value,t.reason=r.reason,null!==n&&k(e,n,r.value,t))}function U(e,t,n){t.errored||(t.errored=!0,t.value=null,t.reason=n,null!==(t=t.chunk)&&"blocked"===t.status&&A(e,t,n))}function H(e,t,n,r,o,u){return P?(r=P,r.deps++):r=P={parent:null,chunk:null,value:null,reason:null,deps:1,errored:!1},t={handler:r,parentObject:t,key:n,map:o,path:u},null===e.value?e.value=[t]:e.value.push(t),null===e.reason?e.reason=[t]:e.reason.push(t),null}function V(e,t,n,r){if(!e._serverReferenceConfig)return function(e,t){function n(){var e=Array.prototype.slice.call(arguments);return o?"fulfilled"===o.status?t(r,o.value.concat(e)):Promise.resolve(o).then(function(n){return t(r,n.concat(e))}):t(r,e)}var r=e.id,o=e.bound;return S(n,r,o),n}(t,e._callServer);var o=function(e,t){var n="",r=e[t];if(r)n=r.name;else{var o=t.lastIndexOf("#");if(-1!==o&&(n=t.slice(o+1),r=e[t.slice(0,o)]),!r)throw Error('Could not find the module "'+t+'" in the React Server Manifest. This is probably a bug in the React Server Components bundler.')}return r.async?[r.id,r.chunks,n,1]:[r.id,r.chunks,n]}(e._serverReferenceConfig,t.id),u=c(o);if(u)t.bound&&(u=Promise.all([u,t.bound]));else{if(!t.bound)return S(u=f(o),t.id,t.bound),u;u=Promise.resolve(t.bound)}if(P){var a=P;a.deps++}else a=P={parent:null,chunk:null,value:null,reason:null,deps:1,errored:!1};return u.then(function(){var u=f(o);if(t.bound){var i=t.bound.value.slice(0);i.unshift(null),u=u.bind.apply(u,i)}S(u,t.id,t.bound),"__proto__"!==r&&(n[r]=u),""===r&&null===a.value&&(a.value=u),n[0]===p&&"object"==typeof a.value&&null!==a.value&&a.value.$$typeof===p&&(i=a.value,"3"===r)&&(i.props=u),a.deps--,0===a.deps&&null!==(u=a.chunk)&&"blocked"===u.status&&(i=u.value,u.status="fulfilled",u.value=a.value,u.reason=null,null!==i&&k(e,i,a.value,u))},function(t){if(!a.errored){a.errored=!0,a.value=null,a.reason=t;var n=a.chunk;null!==n&&"blocked"===n.status&&A(e,n,t)}}),null}function B(e,t,n,r,o){var u=parseInt((t=t.split(":"))[0],16);switch((u=L(e,u)).status){case"resolved_model":D(u);break;case"resolved_module":x(u)}switch(u.status){case"fulfilled":u=u.value;for(var a=1;a<t.length;a++){for(;"object"==typeof u&&null!==u&&u.$$typeof===v;){switch((u=u._payload).status){case"resolved_model":D(u);break;case"resolved_module":x(u)}switch(u.status){case"fulfilled":u=u.value;break;case"blocked":case"pending":return H(u,n,r,e,o,t.slice(a-1));case"halted":return P?(e=P,e.deps++):P={parent:null,chunk:null,value:null,reason:null,deps:1,errored:!1},null;default:return P?(P.errored=!0,P.value=null,P.reason=u.reason):P={parent:null,chunk:null,value:null,reason:u.reason,deps:0,errored:!0},null}}u=u[t[a]]}for(;"object"==typeof u&&null!==u&&u.$$typeof===v;){switch((t=u._payload).status){case"resolved_model":D(t);break;case"resolved_module":x(t)}if("fulfilled"===t.status){u=t.value;continue}break}return o(e,u,n,r);case"pending":case"blocked":return H(u,n,r,e,o,t);case"halted":return P?(e=P,e.deps++):P={parent:null,chunk:null,value:null,reason:null,deps:1,errored:!1},null;default:return P?(P.errored=!0,P.value=null,P.reason=u.reason):P={parent:null,chunk:null,value:null,reason:u.reason,deps:0,errored:!0},null}}function q(e,t){return new Map(t)}function J(e,t){return new Set(t)}function W(e,t){return new Blob(t.slice(1),{type:t[0]})}function G(e,t){e=new FormData;for(var n=0;n<t.length;n++)e.append(t[n][0],t[n][1]);return e}function K(e,t){return t[Symbol.iterator]()}function z(e,t){return t}function X(){throw Error('Trying to call a function from "use server" but the callServer option was not implemented in your router runtime.')}function Y(e,t,n,r,o,u,a){var i,l=new Map;this._bundlerConfig=e,this._serverReferenceConfig=t,this._moduleLoading=n,this._callServer=void 0!==r?r:X,this._encodeFormAction=o,this._nonce=u,this._chunks=l,this._stringDecoder=new TextDecoder,this._fromJSON=null,this._closed=!1,this._closedReason=null,this._tempRefs=a,this._fromJSON=(i=this,function(e,t){if("__proto__"!==e){if("string"==typeof t){var n=i,r=this,o=e,u=t;if("$"===u[0]){if("$"===u)return null!==P&&"0"===o&&(P={parent:P,chunk:null,value:null,reason:null,deps:0,errored:!1}),p;switch(u[1]){case"$":return u.slice(1);case"L":return I(n=L(n,r=parseInt(u.slice(2),16)));case"@":return L(n,r=parseInt(u.slice(2),16));case"S":return Symbol.for(u.slice(2));case"h":return B(n,u=u.slice(2),r,o,V);case"T":if(r="$"+u.slice(2),null==(n=n._tempRefs))throw Error("Missing a temporary reference set but the RSC response returned a temporary reference. Pass a temporaryReference option with the set that was used with the reply.");return n.get(r);case"Q":return B(n,u=u.slice(2),r,o,q);case"W":return B(n,u=u.slice(2),r,o,J);case"B":return B(n,u=u.slice(2),r,o,W);case"K":return B(n,u=u.slice(2),r,o,G);case"Z":return er();case"i":return B(n,u=u.slice(2),r,o,K);case"I":return 1/0;case"-":return"$-0"===u?-0:-1/0;case"N":return NaN;case"u":return;case"D":return new Date(Date.parse(u.slice(2)));case"n":return BigInt(u.slice(2));default:return B(n,u=u.slice(1),r,o,z)}}return u}if("object"==typeof t&&null!==t){if(t[0]===p){if(e={$$typeof:p,type:t[1],key:t[2],ref:null,props:t[3]},null!==P){if(P=(t=P).parent,t.errored)e=I(e=new w("rejected",null,t.reason));else if(0<t.deps){var a=new w("blocked",null,null);t.value=e,t.chunk=a,e=I(a)}}}else e=t;return e}return t}})}function Q(e,t,n){var r=(e=e._chunks).get(t);r&&"pending"!==r.status?r.reason.enqueueValue(n):(n=new w("fulfilled",n,null),e.set(t,n))}function Z(e,t,n,r){var o=e._chunks,u=o.get(t);u?"pending"===u.status&&(t=u.value,u.status="fulfilled",u.value=n,u.reason=r,null!==t&&k(e,t,u.value,u)):(e=new w("fulfilled",n,r),o.set(t,e))}function ee(e,t,n){var r=null,o=!1;n=new ReadableStream({type:n,start:function(e){r=e}});var u=null;Z(e,t,n,{enqueueValue:function(e){null===u?r.enqueue(e):u.then(function(){r.enqueue(e)})},enqueueModel:function(t){if(null===u){var n=new w("resolved_model",t,e);D(n),"fulfilled"===n.status?r.enqueue(n.value):(n.then(function(e){return r.enqueue(e)},function(e){return r.error(e)}),u=n)}else{n=u;var o=new w("pending",null,null);o.then(function(e){return r.enqueue(e)},function(e){return r.error(e)}),u=o,n.then(function(){u===o&&(u=null),C(e,o,t)})}},close:function(){if(!o)if(o=!0,null===u)r.close();else{var e=u;u=null,e.then(function(){return r.close()})}},error:function(e){if(!o)if(o=!0,null===u)r.error(e);else{var t=u;u=null,t.then(function(){return r.error(e)})}}})}function et(){return this}function en(e,t,n){var r=[],o=!1,u=0,a={};a[h]=function(){var e,t=0;return(e={next:e=function(e){if(void 0!==e)throw Error("Values cannot be passed to next() of AsyncIterables passed to Client Components.");if(t===r.length){if(o)return new w("fulfilled",{done:!0,value:void 0},null);r[t]=new w("pending",null,null)}return r[t++]}})[h]=et,e},Z(e,t,n?a[h]():a,{enqueueValue:function(t){if(u===r.length)r[u]=new w("fulfilled",{done:!1,value:t},null);else{var n=r[u],o=n.value,a=n.reason;n.status="fulfilled",n.value={done:!1,value:t},n.reason=null,null!==o&&T(e,n,o,a)}u++},enqueueModel:function(t){u===r.length?r[u]=j(e,t,!1):$(e,r[u],t,!1),u++},close:function(t){if(!o)for(o=!0,u===r.length?r[u]=j(e,t,!0):$(e,r[u],t,!0),u++;u<r.length;)$(e,r[u++],'"$undefined"',!0)},error:function(t){if(!o)for(o=!0,u===r.length&&(r[u]=new w("pending",null,null));u<r.length;)A(e,r[u++],t)}})}function er(){var e=Error("An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error.");return e.stack="Error: "+e.message,e}function eo(e,t){for(var n=e.length,r=t.length,o=0;o<n;o++)r+=e[o].byteLength;r=new Uint8Array(r);for(var u=o=0;u<n;u++){var a=e[u];r.set(a,o),o+=a.byteLength}return r.set(t,o),r}function eu(e,t,n,r,o,u){Q(e,t,o=new o((n=0===n.length&&0==r.byteOffset%u?r:eo(n,r)).buffer,n.byteOffset,n.byteLength/u))}function ea(e){M(e,Error("Connection closed."))}function ei(e){return new Y(null,null,null,e&&e.callServer?e.callServer:void 0,void 0,void 0,e&&e.temporaryReferences?e.temporaryReferences:void 0)}function el(e,t,n){function r(t){M(e,t)}var u={_rowState:0,_rowID:0,_rowTag:0,_rowLength:0,_buffer:[]},a=t.getReader();a.read().then(function t(i){var l=i.value;if(i.done)return n();var s=0,f=u._rowState;i=u._rowID;for(var p=u._rowTag,v=u._rowLength,y=u._buffer,h=l.length;s<h;){var g=-1;switch(f){case 0:58===(g=l[s++])?f=1:i=i<<4|(96<g?g-87:g-48);continue;case 1:84===(f=l[s])||65===f||79===f||111===f||98===f||85===f||83===f||115===f||76===f||108===f||71===f||103===f||77===f||109===f||86===f?(p=f,f=2,s++):64<f&&91>f||35===f||114===f||120===f?(p=f,f=3,s++):(p=0,f=3);continue;case 2:44===(g=l[s++])?f=4:v=v<<4|(96<g?g-87:g-48);continue;case 3:g=l.indexOf(10,s);break;case 4:(g=s+v)>l.length&&(g=-1)}var b=l.byteOffset+s;if(-1<g)v=new Uint8Array(l.buffer,b,g-s),98===p?Q(e,i,g===h?v:v.slice()):function(e,t,n,r,u,a){switch(r){case 65:Q(e,n,eo(u,a).buffer);return;case 79:eu(e,n,u,a,Int8Array,1);return;case 111:Q(e,n,0===u.length?a:eo(u,a));return;case 85:eu(e,n,u,a,Uint8ClampedArray,1);return;case 83:eu(e,n,u,a,Int16Array,2);return;case 115:eu(e,n,u,a,Uint16Array,2);return;case 76:eu(e,n,u,a,Int32Array,4);return;case 108:eu(e,n,u,a,Uint32Array,4);return;case 71:eu(e,n,u,a,Float32Array,4);return;case 103:eu(e,n,u,a,Float64Array,8);return;case 77:eu(e,n,u,a,BigInt64Array,8);return;case 109:eu(e,n,u,a,BigUint64Array,8);return;case 86:eu(e,n,u,a,DataView,1);return}t=e._stringDecoder;for(var i="",l=0;l<u.length;l++)i+=t.decode(u[l],o);switch(u=i+=t.decode(a),r){case 73:var s=e,f=n,p=u,v=s._chunks,y=v.get(f);p=JSON.parse(p,s._fromJSON);var h=function(e,t){if(e){var n=e[t[0]];if(e=n&&n[t[2]])n=e.name;else{if(!(e=n&&n["*"]))throw Error('Could not find the module "'+t[0]+'" in the React Server Consumer Manifest. This is probably a bug in the React Server Components bundler.');n=t[2]}return 4===t.length?[e.id,e.chunks,n,1]:[e.id,e.chunks,n]}return t}(s._bundlerConfig,p);if(p=c(h)){if(y){var g=y;g.status="blocked"}else g=new w("blocked",null,null),v.set(f,g);p.then(function(){return N(s,g,h)},function(e){return A(s,g,e)})}else y?N(s,y,h):(y=new w("resolved_module",h,null),v.set(f,y));break;case 72:switch(n=u[0],e=JSON.parse(u=u.slice(1),e._fromJSON),u=d.d,n){case"D":u.D(e);break;case"C":"string"==typeof e?u.C(e):u.C(e[0],e[1]);break;case"L":n=e[0],r=e[1],3===e.length?u.L(n,r,e[2]):u.L(n,r);break;case"m":"string"==typeof e?u.m(e):u.m(e[0],e[1]);break;case"X":"string"==typeof e?u.X(e):u.X(e[0],e[1]);break;case"S":"string"==typeof e?u.S(e):u.S(e[0],0===e[1]?void 0:e[1],3===e.length?e[2]:void 0);break;case"M":"string"==typeof e?u.M(e):u.M(e[0],e[1])}break;case 69:a=(r=e._chunks).get(n),u=JSON.parse(u),(t=er()).digest=u.digest,a?A(e,a,t):(e=new w("rejected",null,t),r.set(n,e));break;case 84:(r=(e=e._chunks).get(n))&&"pending"!==r.status?r.reason.enqueueValue(u):(u=new w("fulfilled",u,null),e.set(n,u));break;case 78:case 68:case 74:case 87:throw Error("Failed to read a RSC payload created by a development version of React on the server while using a production version on the client. Always use matching versions on the server and the client.");case 82:ee(e,n,void 0);break;case 114:ee(e,n,"bytes");break;case 88:en(e,n,!1);break;case 120:en(e,n,!0);break;case 67:(n=e._chunks.get(n))&&"fulfilled"===n.status&&n.reason.close(""===u?'"$undefined"':u);break;default:(a=(r=e._chunks).get(n))?C(e,a,u):(e=new w("resolved_model",u,e),r.set(n,e))}}(e,u,i,p,y,v),s=g,3===f&&s++,v=i=p=f=0,y.length=0;else{l=new Uint8Array(l.buffer,b,l.byteLength-s),98===p?(v-=l.byteLength,Q(e,i,l)):(y.push(l),v-=l.byteLength);break}}return u._rowState=f,u._rowID=i,u._rowTag=p,u._rowLength=v,a.read().then(t).catch(r)}).catch(r)}n.createFromFetch=function(e,t){var n=ei(t);return e.then(function(e){el(n,e.body,ea.bind(null,n))},function(e){M(n,e)}),L(n,0)},n.createFromReadableStream=function(e,t){return el(t=ei(t),e,ea.bind(null,t)),L(t,0)},n.createServerReference=function(e,t){function n(){var n=Array.prototype.slice.call(arguments);return t(e,n)}return S(n,e,null),n},n.createTemporaryReferenceSet=function(){return new Map},n.encodeReply=function(e,t){return new Promise(function(n,r){var o=function(e,t,n,r,o){function u(e,t){t=new Blob([new Uint8Array(t.buffer,t.byteOffset,t.byteLength)]);var n=l++;return null===c&&(c=new FormData),c.append(""+n,t),"$"+e+n.toString(16)}function a(e,t){if(null===t)return null;if("object"==typeof t){switch(t.$$typeof){case p:if(void 0!==n&&-1===e.indexOf(":")){var S,w,O,k,E,R=f.get(this);if(void 0!==R)return n.set(R+":"+e,t),"$T"}throw Error("React Element cannot be passed to Server Functions from the Client without a temporary reference set. Pass a TemporaryReferenceSet to the options.");case v:R=t._payload;var T=t._init;null===c&&(c=new FormData),s++;try{var A=T(R),j=l++,$=i(A,j);return c.append(""+j,$),"$"+j.toString(16)}catch(e){if("object"==typeof e&&null!==e&&"function"==typeof e.then){s++;var C=l++;return R=function(){try{var e=i(t,C),n=c;n.append(""+C,e),s--,0===s&&r(n)}catch(e){o(e)}},e.then(R,R),"$"+C.toString(16)}return o(e),null}finally{s--}}if(R=f.get(t),"function"==typeof t.then){if(void 0!==R)if(d!==t)return R;else d=null;null===c&&(c=new FormData),s++;var N=l++;return e="$@"+N.toString(16),f.set(t,e),t.then(function(e){try{var t=f.get(e),n=void 0!==t?JSON.stringify(t):i(e,N);(e=c).append(""+N,n),s--,0===s&&r(e)}catch(e){o(e)}},o),e}if(void 0!==R)if(d!==t)return R;else d=null;else -1===e.indexOf(":")&&void 0!==(R=f.get(this))&&(e=R+":"+e,f.set(t,e),void 0!==n&&n.set(e,t));if(g(t))return t;if(t instanceof FormData){null===c&&(c=new FormData);var P=c,D=""+(e=l++)+"_";return t.forEach(function(e,t){P.append(D+t,e)}),"$K"+e.toString(16)}if(t instanceof Map)return e=l++,R=i(Array.from(t),e),null===c&&(c=new FormData),c.append(""+e,R),"$Q"+e.toString(16);if(t instanceof Set)return e=l++,R=i(Array.from(t),e),null===c&&(c=new FormData),c.append(""+e,R),"$W"+e.toString(16);if(t instanceof ArrayBuffer)return e=new Blob([t]),R=l++,null===c&&(c=new FormData),c.append(""+R,e),"$A"+R.toString(16);if(t instanceof Int8Array)return u("O",t);if(t instanceof Uint8Array)return u("o",t);if(t instanceof Uint8ClampedArray)return u("U",t);if(t instanceof Int16Array)return u("S",t);if(t instanceof Uint16Array)return u("s",t);if(t instanceof Int32Array)return u("L",t);if(t instanceof Uint32Array)return u("l",t);if(t instanceof Float32Array)return u("G",t);if(t instanceof Float64Array)return u("g",t);if(t instanceof BigInt64Array)return u("M",t);if(t instanceof BigUint64Array)return u("m",t);if(t instanceof DataView)return u("V",t);if("function"==typeof Blob&&t instanceof Blob)return null===c&&(c=new FormData),e=l++,c.append(""+e,t),"$B"+e.toString(16);if(e=null===(S=t)||"object"!=typeof S?null:"function"==typeof(S=y&&S[y]||S["@@iterator"])?S:null)return(R=e.call(t))===t?(e=l++,R=i(Array.from(R),e),null===c&&(c=new FormData),c.append(""+e,R),"$i"+e.toString(16)):Array.from(R);if("function"==typeof ReadableStream&&t instanceof ReadableStream)return function(e){try{var t,n,u,i,f,d,p,v=e.getReader({mode:"byob"})}catch(i){return t=e.getReader(),null===c&&(c=new FormData),n=c,s++,u=l++,t.read().then(function e(i){if(i.done)n.append(""+u,"C"),0==--s&&r(n);else try{var l=JSON.stringify(i.value,a);n.append(""+u,l),t.read().then(e,o)}catch(e){o(e)}},o),"$R"+u.toString(16)}return i=v,null===c&&(c=new FormData),f=c,s++,d=l++,p=[],i.read(new Uint8Array(1024)).then(function e(t){t.done?(t=l++,f.append(""+t,new Blob(p)),f.append(""+d,'"$o'+t.toString(16)+'"'),f.append(""+d,"C"),0==--s&&r(f)):(p.push(t.value),i.read(new Uint8Array(1024)).then(e,o))},o),"$r"+d.toString(16)}(t);if("function"==typeof(e=t[h]))return w=t,O=e.call(t),null===c&&(c=new FormData),k=c,s++,E=l++,w=w===O,O.next().then(function e(t){if(t.done){if(void 0===t.value)k.append(""+E,"C");else try{var n=JSON.stringify(t.value,a);k.append(""+E,"C"+n)}catch(e){o(e);return}0==--s&&r(k)}else try{var u=JSON.stringify(t.value,a);k.append(""+E,u),O.next().then(e,o)}catch(e){o(e)}},o),"$"+(w?"x":"X")+E.toString(16);if((e=b(t))!==_&&(null===e||null!==b(e))){if(void 0===n)throw Error("Only plain objects, and a few built-ins, can be passed to Server Functions. Classes or null prototypes are not supported.");return"$T"}return t}if("string"==typeof t)return"Z"===t[t.length-1]&&this[e]instanceof Date?"$D"+t:e="$"===t[0]?"$"+t:t;if("boolean"==typeof t)return t;if("number"==typeof t)return Number.isFinite(t)?0===t&&-1/0==1/t?"$-0":t:1/0===t?"$Infinity":-1/0===t?"$-Infinity":"$NaN";if(void 0===t)return"$undefined";if("function"==typeof t){if(void 0!==(R=m.get(t)))return void 0!==(e=f.get(t))||(e=JSON.stringify({id:R.id,bound:R.bound},a),null===c&&(c=new FormData),R=l++,c.set(""+R,e),e="$h"+R.toString(16),f.set(t,e)),e;if(void 0!==n&&-1===e.indexOf(":")&&void 0!==(R=f.get(this)))return n.set(R+":"+e,t),"$T";throw Error("Client Functions cannot be passed directly to Server Functions. Only Functions passed from the Server can be passed back again.")}if("symbol"==typeof t){if(void 0!==n&&-1===e.indexOf(":")&&void 0!==(R=f.get(this)))return n.set(R+":"+e,t),"$T";throw Error("Symbols cannot be passed to a Server Function without a temporary reference set. Pass a TemporaryReferenceSet to the options.")}if("bigint"==typeof t)return"$n"+t.toString(10);throw Error("Type "+typeof t+" is not supported as an argument to a Server Function.")}function i(e,t){return"object"==typeof e&&null!==e&&(t="$"+t.toString(16),f.set(e,t),void 0!==n&&n.set(t,e)),d=e,JSON.stringify(e,a)}var l=1,s=0,c=null,f=new WeakMap,d=e,S=i(e,0);return null===c?r(S):(c.set("0",S),0===s&&r(c)),function(){0<s&&(s=0,null===c?r(S):r(c))}}(e,0,t&&t.temporaryReferences?t.temporaryReferences:void 0,n,r);if(t&&t.signal){var u=t.signal;if(u.aborted)o(u.reason);else{var a=function(){o(u.reason),u.removeEventListener("abort",a)};u.addEventListener("abort",a)}}})},n.registerServerReference=function(e,t){return S(e,t,null),e}},21562,(e,t,n)=>{"use strict";t.exports=e.r(2976)},48378,(e,t,n)=>{"use strict";t.exports=e.r(21562)},32076,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r,o={ACTION_HMR_REFRESH:function(){return c},ACTION_NAVIGATE:function(){return i},ACTION_REFRESH:function(){return a},ACTION_RESTORE:function(){return l},ACTION_SERVER_ACTION:function(){return f},ACTION_SERVER_PATCH:function(){return s},PrefetchKind:function(){return d}};for(var u in o)Object.defineProperty(n,u,{enumerable:!0,get:o[u]});let a="refresh",i="navigate",l="restore",s="server-patch",c="hmr-refresh",f="server-action";var d=((r={}).AUTO="auto",r.FULL="full",r);("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},44066,(e,t,n)=>{"use strict";function r(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(r=function(e){return e?n:t})(e)}n._=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=r(t);if(n&&n.has(e))return n.get(e);var o={__proto__:null},u=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var i=u?Object.getOwnPropertyDescriptor(e,a):null;i&&(i.get||i.set)?Object.defineProperty(o,a,i):o[a]=e[a]}return o.default=e,n&&n.set(e,o),o}},45612,(e,t,n)=>{"use strict";function r(e){return null!==e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then}Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"isThenable",{enumerable:!0,get:function(){return r}})},58150,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r={dispatchAppRouterAction:function(){return l},useActionQueue:function(){return s}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});let u=e.r(44066)._(e.r(79054)),a=e.r(45612),i=null;function l(e){if(null===i)throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0});i(e)}function s(e){let[t,n]=u.default.useState(e.state);i=t=>e.dispatch(t,n);let r=(0,u.useMemo)(()=>t,[t]);return(0,a.isThenable)(r)?(0,u.use)(r):r}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},40487,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"callServer",{enumerable:!0,get:function(){return a}});let r=e.r(79054),o=e.r(32076),u=e.r(58150);async function a(e,t){return new Promise((n,a)=>{(0,r.startTransition)(()=>{(0,u.dispatchAppRouterAction)({type:o.ACTION_SERVER_ACTION,actionId:e,actionArgs:t,resolve:n,reject:a})})})}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},45398,(e,t,n)=>{"use strict";let r;Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"findSourceMapURL",{enumerable:!0,get:function(){return r}});("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,41952,e=>{"use strict";var t=e.i(20314),n=e.i(79054),r=e.i(23925),a=e.i(3645);let i=(0,a.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);var l=e.i(38573),o=e.i(49228);let s=(0,a.default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]),d=(0,a.default)("bell",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]]),c=(0,a.default)("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]),u=(0,a.default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);var p=e.i(10714),p=p,m=e.i(3214),h=e.i(30702);let f=(0,a.default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);var g=e.i(58860),x=e.i(60112),v=e.i(31777),w=e.i(41957),b=e.i(51911),y=e.i(26036),S=e.i(27069),j=e.i(91967),C=e.i(87342),k=e.i(5978),I=e.i(22528),M=e.i(66033),N=e.i(53532),P=e.i(41687),E=e.i(56720),R=e.i(13123),T=e.i(52740),A=e.i(39979),D=e.i(87620),L=e.i(86874),F=e.i(29297),H=e.i(36589),B=e.i(5192),z=e.i(23405),_=e.i(1693),V=e.i(73772),W=e.i(13044),O=[" ","Enter","ArrowUp","ArrowDown"],U=[" ","Enter"],K="Select",[q,G,$]=(0,C.createCollection)(K),[Y,Z]=(0,I.createContextScope)(K,[$,T.createPopperScope]),X=(0,T.createPopperScope)(),[Q,J]=Y(K),[ee,et]=Y(K),en=e=>{let{__scopeSelect:r,children:a,open:i,defaultOpen:l,onOpenChange:o,value:s,defaultValue:d,onValueChange:c,dir:u,name:p,autoComplete:m,disabled:h,required:f,form:g}=e,x=X(r),[v,w]=n.useState(null),[b,y]=n.useState(null),[S,j]=n.useState(!1),C=(0,M.useDirection)(u),[k,I]=(0,H.useControllableState)({prop:i,defaultProp:l??!1,onChange:o,caller:K}),[N,P]=(0,H.useControllableState)({prop:s,defaultProp:d,onChange:c,caller:K}),E=n.useRef(null),A=!v||g||!!v.closest("form"),[D,L]=n.useState(new Set),F=Array.from(D).map(e=>e.props.value).join(";");return(0,t.jsx)(T.Root,{...x,children:(0,t.jsxs)(Q,{required:f,scope:r,trigger:v,onTriggerChange:w,valueNode:b,onValueNodeChange:y,valueNodeHasChildren:S,onValueNodeHasChildrenChange:j,contentId:(0,R.useId)(),value:N,onValueChange:P,open:k,onOpenChange:I,dir:C,triggerPointerDownPosRef:E,disabled:h,children:[(0,t.jsx)(q.Provider,{scope:r,children:(0,t.jsx)(ee,{scope:e.__scopeSelect,onNativeOptionAdd:n.useCallback(e=>{L(t=>new Set(t).add(e))},[]),onNativeOptionRemove:n.useCallback(e=>{L(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:a})}),A?(0,t.jsxs)(eO,{"aria-hidden":!0,required:f,tabIndex:-1,name:p,autoComplete:m,value:N,onChange:e=>P(e.target.value),disabled:h,form:g,children:[void 0===N?(0,t.jsx)("option",{value:""}):null,Array.from(D)]},F):null]})})};en.displayName=K;var er="SelectTrigger",ea=n.forwardRef((e,r)=>{let{__scopeSelect:a,disabled:i=!1,...l}=e,o=X(a),s=J(er,a),d=s.disabled||i,c=(0,k.useComposedRefs)(r,s.onTriggerChange),u=G(a),p=n.useRef("touch"),[m,h,f]=eK(e=>{let t=u().filter(e=>!e.disabled),n=t.find(e=>e.value===s.value),r=eq(t,e,n);void 0!==r&&s.onValueChange(r.value)}),g=e=>{d||(s.onOpenChange(!0),f()),e&&(s.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,t.jsx)(T.Anchor,{asChild:!0,...o,children:(0,t.jsx)(D.Primitive.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:d,"data-disabled":d?"":void 0,"data-placeholder":eU(s.value)?"":void 0,...l,ref:c,onClick:(0,j.composeEventHandlers)(l.onClick,e=>{e.currentTarget.focus(),"mouse"!==p.current&&g(e)}),onPointerDown:(0,j.composeEventHandlers)(l.onPointerDown,e=>{p.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&"mouse"===e.pointerType&&(g(e),e.preventDefault())}),onKeyDown:(0,j.composeEventHandlers)(l.onKeyDown,e=>{let t=""!==m.current;e.ctrlKey||e.altKey||e.metaKey||1!==e.key.length||h(e.key),(!t||" "!==e.key)&&O.includes(e.key)&&(g(),e.preventDefault())})})})});ea.displayName=er;var ei="SelectValue",el=n.forwardRef((e,n)=>{let{__scopeSelect:r,className:a,style:i,children:l,placeholder:o="",...s}=e,d=J(ei,r),{onValueNodeHasChildrenChange:c}=d,u=void 0!==l,p=(0,k.useComposedRefs)(n,d.onValueNodeChange);return(0,B.useLayoutEffect)(()=>{c(u)},[c,u]),(0,t.jsx)(D.Primitive.span,{...s,ref:p,style:{pointerEvents:"none"},children:eU(d.value)?(0,t.jsx)(t.Fragment,{children:o}):l})});el.displayName=ei;var eo=n.forwardRef((e,n)=>{let{__scopeSelect:r,children:a,...i}=e;return(0,t.jsx)(D.Primitive.span,{"aria-hidden":!0,...i,ref:n,children:a||"▼"})});eo.displayName="SelectIcon";var es=e=>(0,t.jsx)(A.Portal,{asChild:!0,...e});es.displayName="SelectPortal";var ed="SelectContent",ec=n.forwardRef((e,r)=>{let a=J(ed,e.__scopeSelect),[i,l]=n.useState();return((0,B.useLayoutEffect)(()=>{l(new DocumentFragment)},[]),a.open)?(0,t.jsx)(eh,{...e,ref:r}):i?y.createPortal((0,t.jsx)(eu,{scope:e.__scopeSelect,children:(0,t.jsx)(q.Slot,{scope:e.__scopeSelect,children:(0,t.jsx)("div",{children:e.children})})}),i):null});ec.displayName=ed;var[eu,ep]=Y(ed),em=(0,L.createSlot)("SelectContent.RemoveScroll"),eh=n.forwardRef((e,r)=>{let{__scopeSelect:a,position:i="item-aligned",onCloseAutoFocus:l,onEscapeKeyDown:o,onPointerDownOutside:s,side:d,sideOffset:c,align:u,alignOffset:p,arrowPadding:m,collisionBoundary:h,collisionPadding:f,sticky:g,hideWhenDetached:x,avoidCollisions:v,...w}=e,b=J(ed,a),[y,S]=n.useState(null),[C,I]=n.useState(null),M=(0,k.useComposedRefs)(r,e=>S(e)),[R,T]=n.useState(null),[A,D]=n.useState(null),L=G(a),[F,H]=n.useState(!1),B=n.useRef(!1);n.useEffect(()=>{if(y)return(0,V.hideOthers)(y)},[y]),(0,P.useFocusGuards)();let z=n.useCallback(e=>{let[t,...n]=L().map(e=>e.ref.current),[r]=n.slice(-1),a=document.activeElement;for(let n of e)if(n===a||(n?.scrollIntoView({block:"nearest"}),n===t&&C&&(C.scrollTop=0),n===r&&C&&(C.scrollTop=C.scrollHeight),n?.focus(),document.activeElement!==a))return},[L,C]),_=n.useCallback(()=>z([R,y]),[z,R,y]);n.useEffect(()=>{F&&_()},[F,_]);let{onOpenChange:O,triggerPointerDownPosRef:U}=b;n.useEffect(()=>{if(y){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(U.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(U.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():y.contains(n.target)||O(!1),document.removeEventListener("pointermove",t),U.current=null};return null!==U.current&&(document.addEventListener("pointermove",t),document.addEventListener("pointerup",n,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",t),document.removeEventListener("pointerup",n,{capture:!0})}}},[y,O,U]),n.useEffect(()=>{let e=()=>O(!1);return window.addEventListener("blur",e),window.addEventListener("resize",e),()=>{window.removeEventListener("blur",e),window.removeEventListener("resize",e)}},[O]);let[K,q]=eK(e=>{let t=L().filter(e=>!e.disabled),n=t.find(e=>e.ref.current===document.activeElement),r=eq(t,e,n);r&&setTimeout(()=>r.ref.current.focus())}),$=n.useCallback((e,t,n)=>{let r=!B.current&&!n;(void 0!==b.value&&b.value===t||r)&&(T(e),r&&(B.current=!0))},[b.value]),Y=n.useCallback(()=>y?.focus(),[y]),Z=n.useCallback((e,t,n)=>{let r=!B.current&&!n;(void 0!==b.value&&b.value===t||r)&&D(e)},[b.value]),X="popper"===i?eg:ef,Q=X===eg?{side:d,sideOffset:c,align:u,alignOffset:p,arrowPadding:m,collisionBoundary:h,collisionPadding:f,sticky:g,hideWhenDetached:x,avoidCollisions:v}:{};return(0,t.jsx)(eu,{scope:a,content:y,viewport:C,onViewportChange:I,itemRefCallback:$,selectedItem:R,onItemLeave:Y,itemTextRefCallback:Z,focusSelectedItem:_,selectedItemText:A,position:i,isPositioned:F,searchRef:K,children:(0,t.jsx)(W.RemoveScroll,{as:em,allowPinchZoom:!0,children:(0,t.jsx)(E.FocusScope,{asChild:!0,trapped:b.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:(0,j.composeEventHandlers)(l,e=>{b.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,t.jsx)(N.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:o,onPointerDownOutside:s,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>b.onOpenChange(!1),children:(0,t.jsx)(X,{role:"listbox",id:b.contentId,"data-state":b.open?"open":"closed",dir:b.dir,onContextMenu:e=>e.preventDefault(),...w,...Q,onPlaced:()=>H(!0),ref:M,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:(0,j.composeEventHandlers)(w.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if("Tab"===e.key&&e.preventDefault(),t||1!==e.key.length||q(e.key),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let t=L().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 n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>z(t)),e.preventDefault()}})})})})})})});eh.displayName="SelectContentImpl";var ef=n.forwardRef((e,r)=>{let{__scopeSelect:a,onPlaced:i,...l}=e,o=J(ed,a),s=ep(ed,a),[d,c]=n.useState(null),[u,p]=n.useState(null),m=(0,k.useComposedRefs)(r,e=>p(e)),h=G(a),f=n.useRef(!1),g=n.useRef(!0),{viewport:x,selectedItem:v,selectedItemText:w,focusSelectedItem:b}=s,y=n.useCallback(()=>{if(o.trigger&&o.valueNode&&d&&u&&x&&v&&w){let e=o.trigger.getBoundingClientRect(),t=u.getBoundingClientRect(),n=o.valueNode.getBoundingClientRect(),r=w.getBoundingClientRect();if("rtl"!==o.dir){let a=r.left-t.left,i=n.left-a,l=e.left-i,o=e.width+l,s=Math.max(o,t.width),c=window.innerWidth-10,u=(0,S.clamp)(i,[10,Math.max(10,c-s)]);d.style.minWidth=o+"px",d.style.left=u+"px"}else{let a=t.right-r.right,i=window.innerWidth-n.right-a,l=window.innerWidth-e.right-i,o=e.width+l,s=Math.max(o,t.width),c=window.innerWidth-10,u=(0,S.clamp)(i,[10,Math.max(10,c-s)]);d.style.minWidth=o+"px",d.style.right=u+"px"}let a=h(),l=window.innerHeight-20,s=x.scrollHeight,c=window.getComputedStyle(u),p=parseInt(c.borderTopWidth,10),m=parseInt(c.paddingTop,10),g=parseInt(c.borderBottomWidth,10),b=p+m+s+parseInt(c.paddingBottom,10)+g,y=Math.min(5*v.offsetHeight,b),j=window.getComputedStyle(x),C=parseInt(j.paddingTop,10),k=parseInt(j.paddingBottom,10),I=e.top+e.height/2-10,M=v.offsetHeight/2,N=p+m+(v.offsetTop+M);if(N<=I){let e=a.length>0&&v===a[a.length-1].ref.current;d.style.bottom="0px";let t=Math.max(l-I,M+(e?k:0)+(u.clientHeight-x.offsetTop-x.offsetHeight)+g);d.style.height=N+t+"px"}else{let e=a.length>0&&v===a[0].ref.current;d.style.top="0px";let t=Math.max(I,p+x.offsetTop+(e?C:0)+M);d.style.height=t+(b-N)+"px",x.scrollTop=N-I+x.offsetTop}d.style.margin="10px 0",d.style.minHeight=y+"px",d.style.maxHeight=l+"px",i?.(),requestAnimationFrame(()=>f.current=!0)}},[h,o.trigger,o.valueNode,d,u,x,v,w,o.dir,i]);(0,B.useLayoutEffect)(()=>y(),[y]);let[j,C]=n.useState();(0,B.useLayoutEffect)(()=>{u&&C(window.getComputedStyle(u).zIndex)},[u]);let I=n.useCallback(e=>{e&&!0===g.current&&(y(),b?.(),g.current=!1)},[y,b]);return(0,t.jsx)(ex,{scope:a,contentWrapper:d,shouldExpandOnScrollRef:f,onScrollButtonChange:I,children:(0,t.jsx)("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:(0,t.jsx)(D.Primitive.div,{...l,ref:m,style:{boxSizing:"border-box",maxHeight:"100%",...l.style}})})})});ef.displayName="SelectItemAlignedPosition";var eg=n.forwardRef((e,n)=>{let{__scopeSelect:r,align:a="start",collisionPadding:i=10,...l}=e,o=X(r);return(0,t.jsx)(T.Content,{...o,...l,ref:n,align:a,collisionPadding:i,style:{boxSizing:"border-box",...l.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)"}})});eg.displayName="SelectPopperPosition";var[ex,ev]=Y(ed,{}),ew="SelectViewport",eb=n.forwardRef((e,r)=>{let{__scopeSelect:a,nonce:i,...l}=e,o=ep(ew,a),s=ev(ew,a),d=(0,k.useComposedRefs)(r,o.onViewportChange),c=n.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:i}),(0,t.jsx)(q.Slot,{scope:a,children:(0,t.jsx)(D.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...l,ref:d,style:{position:"relative",flex:1,overflow:"hidden auto",...l.style},onScroll:(0,j.composeEventHandlers)(l.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=s;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-20,a=Math.max(parseFloat(n.style.minHeight),parseFloat(n.style.height));if(a<r){let i=a+e,l=Math.min(r,i),o=i-l;n.style.height=l+"px","0px"===n.style.bottom&&(t.scrollTop=o>0?o:0,n.style.justifyContent="flex-end")}}}c.current=t.scrollTop})})})]})});eb.displayName=ew;var ey="SelectGroup",[eS,ej]=Y(ey),eC=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e,i=(0,R.useId)();return(0,t.jsx)(eS,{scope:r,id:i,children:(0,t.jsx)(D.Primitive.div,{role:"group","aria-labelledby":i,...a,ref:n})})});eC.displayName=ey;var ek="SelectLabel",eI=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e,i=ej(ek,r);return(0,t.jsx)(D.Primitive.div,{id:i.id,...a,ref:n})});eI.displayName=ek;var eM="SelectItem",[eN,eP]=Y(eM),eE=n.forwardRef((e,r)=>{let{__scopeSelect:a,value:i,disabled:l=!1,textValue:o,...s}=e,d=J(eM,a),c=ep(eM,a),u=d.value===i,[p,m]=n.useState(o??""),[h,f]=n.useState(!1),g=(0,k.useComposedRefs)(r,e=>c.itemRefCallback?.(e,i,l)),x=(0,R.useId)(),v=n.useRef("touch"),w=()=>{l||(d.onValueChange(i),d.onOpenChange(!1))};if(""===i)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)(eN,{scope:a,value:i,disabled:l,textId:x,isSelected:u,onItemTextChange:n.useCallback(e=>{m(t=>t||(e?.textContent??"").trim())},[]),children:(0,t.jsx)(q.ItemSlot,{scope:a,value:i,disabled:l,textValue:p,children:(0,t.jsx)(D.Primitive.div,{role:"option","aria-labelledby":x,"data-highlighted":h?"":void 0,"aria-selected":u&&h,"data-state":u?"checked":"unchecked","aria-disabled":l||void 0,"data-disabled":l?"":void 0,tabIndex:l?void 0:-1,...s,ref:g,onFocus:(0,j.composeEventHandlers)(s.onFocus,()=>f(!0)),onBlur:(0,j.composeEventHandlers)(s.onBlur,()=>f(!1)),onClick:(0,j.composeEventHandlers)(s.onClick,()=>{"mouse"!==v.current&&w()}),onPointerUp:(0,j.composeEventHandlers)(s.onPointerUp,()=>{"mouse"===v.current&&w()}),onPointerDown:(0,j.composeEventHandlers)(s.onPointerDown,e=>{v.current=e.pointerType}),onPointerMove:(0,j.composeEventHandlers)(s.onPointerMove,e=>{v.current=e.pointerType,l?c.onItemLeave?.():"mouse"===v.current&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,j.composeEventHandlers)(s.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:(0,j.composeEventHandlers)(s.onKeyDown,e=>{(c.searchRef?.current===""||" "!==e.key)&&(U.includes(e.key)&&w()," "===e.key&&e.preventDefault())})})})})});eE.displayName=eM;var eR="SelectItemText",eT=n.forwardRef((e,r)=>{let{__scopeSelect:a,className:i,style:l,...o}=e,s=J(eR,a),d=ep(eR,a),c=eP(eR,a),u=et(eR,a),[p,m]=n.useState(null),h=(0,k.useComposedRefs)(r,e=>m(e),c.onItemTextChange,e=>d.itemTextRefCallback?.(e,c.value,c.disabled)),f=p?.textContent,g=n.useMemo(()=>(0,t.jsx)("option",{value:c.value,disabled:c.disabled,children:f},c.value),[c.disabled,c.value,f]),{onNativeOptionAdd:x,onNativeOptionRemove:v}=u;return(0,B.useLayoutEffect)(()=>(x(g),()=>v(g)),[x,v,g]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(D.Primitive.span,{id:c.textId,...o,ref:h}),c.isSelected&&s.valueNode&&!s.valueNodeHasChildren?y.createPortal(o.children,s.valueNode):null]})});eT.displayName=eR;var eA="SelectItemIndicator",eD=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e;return eP(eA,r).isSelected?(0,t.jsx)(D.Primitive.span,{"aria-hidden":!0,...a,ref:n}):null});eD.displayName=eA;var eL="SelectScrollUpButton",eF=n.forwardRef((e,r)=>{let a=ep(eL,e.__scopeSelect),i=ev(eL,e.__scopeSelect),[l,o]=n.useState(!1),s=(0,k.useComposedRefs)(r,i.onScrollButtonChange);return(0,B.useLayoutEffect)(()=>{if(a.viewport&&a.isPositioned){let e=function(){o(t.scrollTop>0)},t=a.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[a.viewport,a.isPositioned]),l?(0,t.jsx)(ez,{...e,ref:s,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=a;e&&t&&(e.scrollTop=e.scrollTop-t.offsetHeight)}}):null});eF.displayName=eL;var eH="SelectScrollDownButton",eB=n.forwardRef((e,r)=>{let a=ep(eH,e.__scopeSelect),i=ev(eH,e.__scopeSelect),[l,o]=n.useState(!1),s=(0,k.useComposedRefs)(r,i.onScrollButtonChange);return(0,B.useLayoutEffect)(()=>{if(a.viewport&&a.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;o(Math.ceil(t.scrollTop)<e)},t=a.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[a.viewport,a.isPositioned]),l?(0,t.jsx)(ez,{...e,ref:s,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=a;e&&t&&(e.scrollTop=e.scrollTop+t.offsetHeight)}}):null});eB.displayName=eH;var ez=n.forwardRef((e,r)=>{let{__scopeSelect:a,onAutoScroll:i,...l}=e,o=ep("SelectScrollButton",a),s=n.useRef(null),d=G(a),c=n.useCallback(()=>{null!==s.current&&(window.clearInterval(s.current),s.current=null)},[]);return n.useEffect(()=>()=>c(),[c]),(0,B.useLayoutEffect)(()=>{let e=d().find(e=>e.ref.current===document.activeElement);e?.ref.current?.scrollIntoView({block:"nearest"})},[d]),(0,t.jsx)(D.Primitive.div,{"aria-hidden":!0,...l,ref:r,style:{flexShrink:0,...l.style},onPointerDown:(0,j.composeEventHandlers)(l.onPointerDown,()=>{null===s.current&&(s.current=window.setInterval(i,50))}),onPointerMove:(0,j.composeEventHandlers)(l.onPointerMove,()=>{o.onItemLeave?.(),null===s.current&&(s.current=window.setInterval(i,50))}),onPointerLeave:(0,j.composeEventHandlers)(l.onPointerLeave,()=>{c()})})}),e_=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e;return(0,t.jsx)(D.Primitive.div,{"aria-hidden":!0,...a,ref:n})});e_.displayName="SelectSeparator";var eV="SelectArrow",eW=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e,i=X(r),l=J(eV,r),o=ep(eV,r);return l.open&&"popper"===o.position?(0,t.jsx)(T.Arrow,{...i,...a,ref:n}):null});eW.displayName=eV;var eO=n.forwardRef(({__scopeSelect:e,value:r,...a},i)=>{let l=n.useRef(null),o=(0,k.useComposedRefs)(i,l),s=(0,z.usePrevious)(r);return n.useEffect(()=>{let e=l.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(s!==r&&t){let n=new Event("change",{bubbles:!0});t.call(e,r),e.dispatchEvent(n)}},[s,r]),(0,t.jsx)(D.Primitive.select,{...a,style:{..._.VISUALLY_HIDDEN_STYLES,...a.style},ref:o,defaultValue:r})});function eU(e){return""===e||void 0===e}function eK(e){let t=(0,F.useCallbackRef)(e),r=n.useRef(""),a=n.useRef(0),i=n.useCallback(e=>{let n=r.current+e;t(n),function e(t){r.current=t,window.clearTimeout(a.current),""!==t&&(a.current=window.setTimeout(()=>e(""),1e3))}(n)},[t]),l=n.useCallback(()=>{r.current="",window.clearTimeout(a.current)},[]);return n.useEffect(()=>()=>window.clearTimeout(a.current),[]),[r,i,l]}function eq(e,t,n){var r,a;let i=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,l=n?e.indexOf(n):-1,o=(r=e,a=Math.max(l,0),r.map((e,t)=>r[(a+t)%r.length]));1===i.length&&(o=o.filter(e=>e!==n));let s=o.find(e=>e.textValue.toLowerCase().startsWith(i.toLowerCase()));return s!==n?s:void 0}eO.displayName="SelectBubbleInput",e.s(["Arrow",()=>eW,"Content",()=>ec,"Group",()=>eC,"Icon",()=>eo,"Item",()=>eE,"ItemIndicator",()=>eD,"ItemText",()=>eT,"Label",()=>eI,"Portal",()=>es,"Root",()=>en,"ScrollDownButton",()=>eB,"ScrollUpButton",()=>eF,"Select",()=>en,"SelectArrow",()=>eW,"SelectContent",()=>ec,"SelectGroup",()=>eC,"SelectIcon",()=>eo,"SelectItem",()=>eE,"SelectItemIndicator",()=>eD,"SelectItemText",()=>eT,"SelectLabel",()=>eI,"SelectPortal",()=>es,"SelectScrollDownButton",()=>eB,"SelectScrollUpButton",()=>eF,"SelectSeparator",()=>e_,"SelectTrigger",()=>ea,"SelectValue",()=>el,"SelectViewport",()=>eb,"Separator",()=>e_,"Trigger",()=>ea,"Value",()=>el,"Viewport",()=>eb,"createSelectScope",()=>Z],83830);var eG=e.i(83830),eG=eG,e$=e.i(99105);let eY=(0,a.default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]),eZ=eG.Root;eG.Group;let eX=eG.Value,eQ=n.forwardRef(({className:e,children:n,...r},a)=>(0,t.jsxs)(eG.Trigger,{ref:a,className:(0,v.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),...r,children:[n,(0,t.jsx)(eG.Icon,{asChild:!0,children:(0,t.jsx)(e$.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));eQ.displayName=eG.Trigger.displayName;let eJ=n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(eG.ScrollUpButton,{ref:r,className:(0,v.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(eY,{className:"h-4 w-4"})}));eJ.displayName=eG.ScrollUpButton.displayName;let e0=n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(eG.ScrollDownButton,{ref:r,className:(0,v.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(e$.ChevronDown,{className:"h-4 w-4"})}));e0.displayName=eG.ScrollDownButton.displayName;let e1=n.forwardRef(({className:e,children:n,position:r="popper",...a},i)=>(0,t.jsx)(eG.Portal,{children:(0,t.jsxs)(eG.Content,{ref:i,className:(0,v.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"===r&&"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:r,...a,children:[(0,t.jsx)(eJ,{}),(0,t.jsx)(eG.Viewport,{className:(0,v.cn)("p-1","popper"===r&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:n}),(0,t.jsx)(e0,{})]})}));e1.displayName=eG.Content.displayName,n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(eG.Label,{ref:r,className:(0,v.cn)("px-2 py-1.5 text-sm font-semibold",e),...n})).displayName=eG.Label.displayName;let e2=n.forwardRef(({className:e,children:n,...a},i)=>(0,t.jsxs)(eG.Item,{ref:i,className:(0,v.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),...a,children:[(0,t.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,t.jsx)(eG.ItemIndicator,{children:(0,t.jsx)(r.Check,{className:"h-4 w-4"})})}),(0,t.jsx)(eG.ItemText,{children:n})]}));e2.displayName=eG.Item.displayName,n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(eG.Separator,{ref:r,className:(0,v.cn)("bg-muted -mx-1 my-1 h-px",e),...n})).displayName=eG.Separator.displayName;var e3=e.i(21023);let e5=(0,e3.createServerReference)("4035bf80aa3617ff4a5eef75792c50a747366d3931",e3.callServer,void 0,e3.findSourceMapURL,"updateSettingsAction");var e4=e.i(17406),e8=e.i(98804),e6=e.i(44229),e9=e.i(83902);function e7(e){return(0,t.jsx)(e6.Code,{className:(0,v.cn)("h-4 w-4",e.className),...e})}function te({className:e}){return(0,t.jsx)(e8.default,{src:"/icons/editors/vscode.svg",alt:"VS Code",width:24,height:24,className:(0,v.cn)("rounded-sm object-contain",e)})}function tt({className:e}){return(0,t.jsx)(e8.default,{src:"/icons/agents/cursor.jpeg",alt:"Cursor",width:24,height:24,className:(0,v.cn)("rounded-sm object-contain",e)})}function tn({className:e}){return(0,t.jsx)(e8.default,{src:"/icons/editors/windsurf.svg",alt:"Windsurf",width:24,height:24,className:(0,v.cn)("rounded-sm object-contain",e)})}function tr({className:e}){return(0,t.jsx)(e8.default,{src:"/icons/editors/zed.svg",alt:"Zed",width:24,height:24,className:(0,v.cn)("rounded-sm object-contain",e)})}function ta({className:e,...n}){return(0,t.jsx)(e9.Rocket,{className:(0,v.cn)("h-4 w-4",e),...n})}te.displayName="VsCodeIcon",tt.displayName="CursorEditorIcon",tn.displayName="WindsurfIcon",tr.displayName="ZedIcon",ta.displayName="AntigravityIcon";let ti={vscode:te,cursor:tt,windsurf:tn,zed:tr,antigravity:ta};var tl=e.i(41413),to=e.i(77624),ts=["PageUp","PageDown"],td=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],tc={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},tu="Slider",[tp,tm,th]=(0,C.createCollection)(tu),[tf,tg]=(0,I.createContextScope)(tu,[th]),[tx,tv]=tf(tu),tw=n.forwardRef((e,r)=>{let{name:a,min:i=0,max:l=100,step:o=1,orientation:s="horizontal",disabled:d=!1,minStepsBetweenThumbs:c=0,defaultValue:u=[i],value:p,onValueChange:m=()=>{},onValueCommit:h=()=>{},inverted:f=!1,form:g,...x}=e,v=n.useRef(new Set),w=n.useRef(0),b="horizontal"===s,[y=[],C]=(0,H.useControllableState)({prop:p,defaultProp:u,onChange:e=>{let t=[...v.current];t[w.current]?.focus(),m(e)}}),k=n.useRef(y);function I(e,t,{commit:n}={commit:!1}){let r,a=(String(o).split(".")[1]||"").length,s=Math.round((Math.round((e-i)/o)*o+i)*(r=Math.pow(10,a)))/r,d=(0,S.clamp)(s,[i,l]);C((e=[])=>{let r=function(e=[],t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}(e,d,t);if(!function(e,t){if(t>0)return Math.min(...e.slice(0,-1).map((t,n)=>e[n+1]-t))>=t;return!0}(r,c*o))return e;{w.current=r.indexOf(d);let t=String(r)!==String(e);return t&&n&&h(r),t?r:e}})}return(0,t.jsx)(tx,{scope:e.__scopeSlider,name:a,disabled:d,min:i,max:l,valueIndexToChangeRef:w,thumbs:v.current,values:y,orientation:s,form:g,children:(0,t.jsx)(tp.Provider,{scope:e.__scopeSlider,children:(0,t.jsx)(tp.Slot,{scope:e.__scopeSlider,children:(0,t.jsx)(b?tS:tj,{"aria-disabled":d,"data-disabled":d?"":void 0,...x,ref:r,onPointerDown:(0,j.composeEventHandlers)(x.onPointerDown,()=>{d||(k.current=y)}),min:i,max:l,inverted:f,onSlideStart:d?void 0:function(e){let t=function(e,t){if(1===e.length)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}(y,e);I(e,t)},onSlideMove:d?void 0:function(e){I(e,w.current)},onSlideEnd:d?void 0:function(){let e=k.current[w.current];y[w.current]!==e&&h(y)},onHomeKeyDown:()=>!d&&I(i,0,{commit:!0}),onEndKeyDown:()=>!d&&I(l,y.length-1,{commit:!0}),onStepKeyDown:({event:e,direction:t})=>{if(!d){let n=ts.includes(e.key)||e.shiftKey&&td.includes(e.key),r=w.current;I(y[r]+o*(n?10:1)*t,r,{commit:!0})}}})})})})});tw.displayName=tu;var[tb,ty]=tf(tu,{startEdge:"left",endEdge:"right",size:"width",direction:1}),tS=n.forwardRef((e,r)=>{let{min:a,max:i,dir:l,inverted:o,onSlideStart:s,onSlideMove:d,onSlideEnd:c,onStepKeyDown:u,...p}=e,[m,h]=n.useState(null),f=(0,k.useComposedRefs)(r,e=>h(e)),g=n.useRef(void 0),x=(0,M.useDirection)(l),v="ltr"===x,w=v&&!o||!v&&o;function b(e){let t=g.current||m.getBoundingClientRect(),n=tD([0,t.width],w?[a,i]:[i,a]);return g.current=t,n(e-t.left)}return(0,t.jsx)(tb,{scope:e.__scopeSlider,startEdge:w?"left":"right",endEdge:w?"right":"left",direction:w?1:-1,size:"width",children:(0,t.jsx)(tC,{dir:x,"data-orientation":"horizontal",...p,ref:f,style:{...p.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:e=>{let t=b(e.clientX);s?.(t)},onSlideMove:e=>{let t=b(e.clientX);d?.(t)},onSlideEnd:()=>{g.current=void 0,c?.()},onStepKeyDown:e=>{let t=tc[w?"from-left":"from-right"].includes(e.key);u?.({event:e,direction:t?-1:1})}})})}),tj=n.forwardRef((e,r)=>{let{min:a,max:i,inverted:l,onSlideStart:o,onSlideMove:s,onSlideEnd:d,onStepKeyDown:c,...u}=e,p=n.useRef(null),m=(0,k.useComposedRefs)(r,p),h=n.useRef(void 0),f=!l;function g(e){let t=h.current||p.current.getBoundingClientRect(),n=tD([0,t.height],f?[i,a]:[a,i]);return h.current=t,n(e-t.top)}return(0,t.jsx)(tb,{scope:e.__scopeSlider,startEdge:f?"bottom":"top",endEdge:f?"top":"bottom",size:"height",direction:f?1:-1,children:(0,t.jsx)(tC,{"data-orientation":"vertical",...u,ref:m,style:{...u.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:e=>{let t=g(e.clientY);o?.(t)},onSlideMove:e=>{let t=g(e.clientY);s?.(t)},onSlideEnd:()=>{h.current=void 0,d?.()},onStepKeyDown:e=>{let t=tc[f?"from-bottom":"from-top"].includes(e.key);c?.({event:e,direction:t?-1:1})}})})}),tC=n.forwardRef((e,n)=>{let{__scopeSlider:r,onSlideStart:a,onSlideMove:i,onSlideEnd:l,onHomeKeyDown:o,onEndKeyDown:s,onStepKeyDown:d,...c}=e,u=tv(tu,r);return(0,t.jsx)(D.Primitive.span,{...c,ref:n,onKeyDown:(0,j.composeEventHandlers)(e.onKeyDown,e=>{"Home"===e.key?(o(e),e.preventDefault()):"End"===e.key?(s(e),e.preventDefault()):ts.concat(td).includes(e.key)&&(d(e),e.preventDefault())}),onPointerDown:(0,j.composeEventHandlers)(e.onPointerDown,e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),u.thumbs.has(t)?t.focus():a(e)}),onPointerMove:(0,j.composeEventHandlers)(e.onPointerMove,e=>{e.target.hasPointerCapture(e.pointerId)&&i(e)}),onPointerUp:(0,j.composeEventHandlers)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),l(e))})})}),tk="SliderTrack",tI=n.forwardRef((e,n)=>{let{__scopeSlider:r,...a}=e,i=tv(tk,r);return(0,t.jsx)(D.Primitive.span,{"data-disabled":i.disabled?"":void 0,"data-orientation":i.orientation,...a,ref:n})});tI.displayName=tk;var tM="SliderRange",tN=n.forwardRef((e,r)=>{let{__scopeSlider:a,...i}=e,l=tv(tM,a),o=ty(tM,a),s=n.useRef(null),d=(0,k.useComposedRefs)(r,s),c=l.values.length,u=l.values.map(e=>tA(e,l.min,l.max)),p=c>1?Math.min(...u):0,m=100-Math.max(...u);return(0,t.jsx)(D.Primitive.span,{"data-orientation":l.orientation,"data-disabled":l.disabled?"":void 0,...i,ref:d,style:{...e.style,[o.startEdge]:p+"%",[o.endEdge]:m+"%"}})});tN.displayName=tM;var tP="SliderThumb",tE=n.forwardRef((e,r)=>{let a=tm(e.__scopeSlider),[i,l]=n.useState(null),o=(0,k.useComposedRefs)(r,e=>l(e)),s=n.useMemo(()=>i?a().findIndex(e=>e.ref.current===i):-1,[a,i]);return(0,t.jsx)(tR,{...e,ref:o,index:s})}),tR=n.forwardRef((e,r)=>{var a,i,l,o,s;let d,c,{__scopeSlider:u,index:p,name:m,...h}=e,f=tv(tP,u),g=ty(tP,u),[x,v]=n.useState(null),w=(0,k.useComposedRefs)(r,e=>v(e)),b=!x||f.form||!!x.closest("form"),y=(0,to.useSize)(x),S=f.values[p],C=void 0===S?0:tA(S,f.min,f.max),I=(a=p,(i=f.values.length)>2?`Value ${a+1} of ${i}`:2===i?["Minimum","Maximum"][a]:void 0),M=y?.[g.size],N=M?(l=M,o=C,s=g.direction,c=tD([0,50],[0,d=l/2]),(d-c(o)*s)*s):0;return n.useEffect(()=>{if(x)return f.thumbs.add(x),()=>{f.thumbs.delete(x)}},[x,f.thumbs]),(0,t.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[g.startEdge]:`calc(${C}% + ${N}px)`},children:[(0,t.jsx)(tp.ItemSlot,{scope:e.__scopeSlider,children:(0,t.jsx)(D.Primitive.span,{role:"slider","aria-label":e["aria-label"]||I,"aria-valuemin":f.min,"aria-valuenow":S,"aria-valuemax":f.max,"aria-orientation":f.orientation,"data-orientation":f.orientation,"data-disabled":f.disabled?"":void 0,tabIndex:f.disabled?void 0:0,...h,ref:w,style:void 0===S?{display:"none"}:e.style,onFocus:(0,j.composeEventHandlers)(e.onFocus,()=>{f.valueIndexToChangeRef.current=p})})}),b&&(0,t.jsx)(tT,{name:m??(f.name?f.name+(f.values.length>1?"[]":""):void 0),form:f.form,value:S},p)]})});tE.displayName=tP;var tT=n.forwardRef(({__scopeSlider:e,value:r,...a},i)=>{let l=n.useRef(null),o=(0,k.useComposedRefs)(l,i),s=(0,z.usePrevious)(r);return n.useEffect(()=>{let e=l.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(s!==r&&t){let n=new Event("input",{bubbles:!0});t.call(e,r),e.dispatchEvent(n)}},[s,r]),(0,t.jsx)(D.Primitive.input,{style:{display:"none"},...a,ref:o,defaultValue:r})});function tA(e,t,n){return(0,S.clamp)(100/(n-t)*(e-t),[0,100])}function tD(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}tT.displayName="RadioBubbleInput",e.s(["Range",()=>tN,"Root",()=>tw,"Slider",()=>tw,"SliderRange",()=>tN,"SliderThumb",()=>tE,"SliderTrack",()=>tI,"Thumb",()=>tE,"Track",()=>tI,"createSliderScope",()=>tg],29991);var tL=e.i(29991),tL=tL;function tF({className:e,defaultValue:r,value:a,min:i=0,max:l=100,...o}){let s=n.useMemo(()=>Array.isArray(a)?a:Array.isArray(r)?r:[i,l],[a,r,i,l]);return(0,t.jsxs)(tL.Root,{"data-slot":"slider",defaultValue:r,value:a,min:i,max:l,className:(0,v.cn)("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",e),...o,children:[(0,t.jsx)(tL.Track,{"data-slot":"slider-track",className:(0,v.cn)("bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"),children:(0,t.jsx)(tL.Range,{"data-slot":"slider-range",className:(0,v.cn)("bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:s.length},(e,n)=>(0,t.jsx)(tL.Thumb,{"data-slot":"slider-thumb",className:"border-primary ring-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50"},n))]})}let tH=[60,120,300,600,900,1800,2700,3600,7200,10800,14400,21600,28800,43200,86400],tB=tH.length-1;function tz(e){let t=0,n=Math.abs(e-tH[0]);for(let r=1;r<tH.length;r++){let a=Math.abs(e-tH[r]);a<n&&(n=a,t=r)}return t}function t_({id:e,testId:r,value:a,onChange:i,onBlur:l,defaultSeconds:o=1800}){var s;let d,c,u=(""===a?o:parseInt(a,10))||o,[p,m]=(0,n.useState)(()=>tz(u)),h=tz(u);h!==p&&tH[p]!==u&&m(h);let f=(0,n.useCallback)(([e])=>{m(e),i(String(tH[e]))},[i]);return(0,t.jsxs)("div",{className:"flex w-55 items-center gap-2",children:[(0,t.jsx)(tF,{id:e,"data-testid":r,min:0,max:tB,step:1,value:[p],onValueChange:f,onValueCommit:()=>l(),className:"min-w-0 flex-1"}),(0,t.jsx)("span",{className:"text-muted-foreground shrink-0 text-right text-xs tabular-nums",children:(d=Math.floor((s=tH[p])/3600),c=Math.round(s%3600/60),0===d?`${c}m`:0===c?`${d}h`:`${d}h ${c}m`)})]})}let tV=[{value:e4.EditorType.VsCode,label:"VS Code"},{value:e4.EditorType.Cursor,label:"Cursor"},{value:e4.EditorType.Windsurf,label:"Windsurf"},{value:e4.EditorType.Zed,label:"Zed"},{value:e4.EditorType.Antigravity,label:"Antigravity"}],tW=[{value:"bash",label:"Bash"},{value:"zsh",label:"Zsh"},{value:"fish",label:"Fish"}],tO=[{id:"agent",label:"Agent",icon:i},{id:"environment",label:"Environment",icon:l.Terminal},{id:"workflow",label:"Workflow",icon:o.GitBranch},{id:"ci",label:"CI",icon:s},{id:"stage-timeouts",label:"Timeouts",icon:g.Timer},{id:"notifications",label:"Notifications",icon:d},{id:"feature-flags",label:"Flags",icon:c},{id:"database",label:"Database",icon:u}];function tU({label:e,description:n,htmlFor:r,children:a}){return(0,t.jsxs)("div",{className:"flex items-center justify-between gap-4 border-b py-2.5 last:border-b-0",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)(w.Label,{htmlFor:r,className:"cursor-pointer text-sm font-normal whitespace-nowrap",children:e}),n?(0,t.jsx)("p",{className:"text-muted-foreground text-[11px] leading-tight",children:n}):null]}),(0,t.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:a})]})}function tK({label:e,description:n,id:r,testId:a,checked:i,onChange:l,disabled:o}){return(0,t.jsx)(tU,{label:e,description:n,htmlFor:r,children:(0,t.jsx)(b.Switch,{id:r,"data-testid":a,checked:i,onCheckedChange:l,disabled:o,className:(0,v.cn)("cursor-pointer",o&&"cursor-not-allowed opacity-50")})})}function tq({icon:e,title:n,description:r,badge:a,testId:i,children:l}){return(0,t.jsxs)("div",{className:"bg-background rounded-lg border","data-testid":i,children:[(0,t.jsxs)("div",{className:"bg-muted/30 border-b px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(e,{className:"text-muted-foreground h-3.5 w-3.5"}),(0,t.jsx)("h2",{className:"text-sm font-semibold",children:n}),a?(0,t.jsx)("span",{className:"bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-[9px] font-medium tracking-wider uppercase",children:a}):null]}),(0,t.jsx)("p",{className:"text-muted-foreground mt-0.5 text-[11px]",children:r})]}),(0,t.jsx)("div",{className:"px-4",children:l})]})}function tG({id:e,testId:n,value:r,onChange:a,onBlur:i,placeholder:l,min:o=1,max:s,step:d=1,suffix:c}){let u=""===r?void 0:parseInt(r,10);return(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center overflow-hidden rounded-md border",children:[(0,t.jsx)("button",{type:"button",onClick:()=>{a(String(Math.max(o,(u??parseInt(l,10))-d)))},onMouseUp:i,className:"text-muted-foreground hover:bg-muted hover:text-foreground flex h-8 w-7 cursor-pointer items-center justify-center border-r transition-colors","aria-label":"Decrease",children:(0,t.jsx)(p.default,{className:"h-3 w-3"})}),(0,t.jsx)("input",{id:e,"data-testid":n,type:"text",inputMode:"numeric",pattern:"[0-9]*",value:r,placeholder:l,onChange:e=>{a(e.target.value.replace(/[^0-9]/g,""))},onBlur:i,className:"h-8 w-14 bg-transparent text-center text-xs outline-none"}),(0,t.jsx)("button",{type:"button",onClick:()=>{let e;e=u??parseInt(l,10),a(String(null!=s?Math.min(s,e+d):e+d))},onMouseUp:i,className:"text-muted-foreground hover:bg-muted hover:text-foreground flex h-8 w-7 cursor-pointer items-center justify-center border-l transition-colors","aria-label":"Increase",children:(0,t.jsx)(m.Plus,{className:"h-3 w-3"})})]}),c?(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:c}):null]})}function t$({children:e}){return(0,t.jsx)("div",{className:"border-b pt-3 pb-1",children:(0,t.jsx)("span",{className:"text-muted-foreground text-[10px] font-semibold tracking-wider uppercase",children:e})})}function tY({children:e,links:n}){return(0,t.jsxs)("div",{className:"hidden pt-2 lg:block",children:[(0,t.jsx)("p",{className:"text-muted-foreground/70 text-[11px] leading-relaxed",children:e}),null!=n&&n.length>0?(0,t.jsx)("div",{className:"mt-2 flex flex-col gap-1",children:n.map(e=>(0,t.jsxs)("a",{href:e.href,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground inline-flex items-center gap-1 text-[10px] transition-colors",children:[(0,t.jsx)(h.ExternalLink,{className:"h-2.5 w-2.5"}),e.label]},e.href))}):null]})}function tZ({settings:e,shepHome:a,dbFileSize:p,availableTerminals:m}){let{showSaving:h,showSaved:w,save:b}=function(){let[e,t]=(0,n.useTransition)(),[r,a]=(0,n.useState)(!1),[i,l]=(0,n.useState)(!1),o=(0,n.useRef)(null),s=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{e&&!r&&(a(!0),s.current=!1,o.current=setTimeout(()=>{o.current=null,s.current&&(a(!1),l(!0),setTimeout(()=>l(!1),2e3))},350)),!e&&r&&(s.current=!0,o.current||(a(!1),l(!0),setTimeout(()=>l(!1),2e3)))},[e,r]),{showSaving:r,showSaved:i,save:(0,n.useCallback)(e=>{t(async()=>{let t=await e5(e);t.success||x.toast.error(t.error??"Failed to save settings")})},[t])}}(),y=e.featureFlags??{skills:!1,envDeploy:!1,debug:!1,githubImport:!1,adoptBranch:!1},[S,j]=(0,n.useState)(e.agent.type),[C,k]=(0,n.useState)(e.environment.defaultEditor),[I,M]=(0,n.useState)(e.environment.shellPreference),[N,P]=(0,n.useState)(e.environment.terminalPreference??e4.TerminalType.System),E=m?m.filter(e=>e.available):[{id:e4.TerminalType.System,name:"System Terminal",available:!0}],[R,T]=(0,n.useState)(e.workflow.openPrOnImplementationComplete),[A,D]=(0,n.useState)(e.workflow.approvalGateDefaults.pushOnImplementationComplete),[L,F]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPrd),[H,B]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPlan),[z,_]=(0,n.useState)(e.workflow.approvalGateDefaults.allowMerge),[V,W]=(0,n.useState)(e.workflow.enableEvidence),[O,U]=(0,n.useState)(e.workflow.commitEvidence),[K,q]=(0,n.useState)(!1!==e.workflow.ciWatchEnabled),[G,$]=(0,n.useState)(null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):""),[Y,Z]=(0,n.useState)(null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):""),[X,Q]=(0,n.useState)(null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):""),[J,ee]=(0,n.useState)(null!=e.workflow.ciWatchPollIntervalSeconds?String(e.workflow.ciWatchPollIntervalSeconds):""),et=e.workflow.stageTimeouts,[en,er]=(0,n.useState)(String(Math.round((et?.analyzeMs??18e5)/1e3))),[ea,ei]=(0,n.useState)(String(Math.round((et?.requirementsMs??18e5)/1e3))),[el,eo]=(0,n.useState)(String(Math.round((et?.researchMs??18e5)/1e3))),[es,ed]=(0,n.useState)(String(Math.round((et?.planMs??18e5)/1e3))),[ec,eu]=(0,n.useState)(String(Math.round((et?.implementMs??18e5)/1e3))),[ep,em]=(0,n.useState)(String(Math.round((et?.mergeMs??18e5)/1e3))),eh=e.workflow.analyzeRepoTimeouts,[ef,eg]=(0,n.useState)(String(Math.round((eh?.analyzeMs??6e5)/1e3))),[ex,ev]=(0,n.useState)(e.notifications.inApp.enabled),[ew,eb]=(0,n.useState)({...e.notifications.events}),[ey,eS]=(0,n.useState)({...y}),ej=null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):"",eC=null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):"",ek=null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):"",eI=null!=e.workflow.ciWatchPollIntervalSeconds?String(e.workflow.ciWatchPollIntervalSeconds):"",eM=et?.analyzeMs!=null?String(Math.round(et.analyzeMs/1e3)):"",eN=et?.requirementsMs!=null?String(Math.round(et.requirementsMs/1e3)):"",eP=et?.researchMs!=null?String(Math.round(et.researchMs/1e3)):"",eE=et?.planMs!=null?String(Math.round(et.planMs/1e3)):"",eR=et?.implementMs!=null?String(Math.round(et.implementMs/1e3)):"",eT=et?.mergeMs!=null?String(Math.round(et.mergeMs/1e3)):"",eA=eh?.analyzeMs!=null?String(Math.round(eh.analyzeMs/1e3)):"";function eD(e){if(""===e)return;let t=parseInt(e,10);return Number.isNaN(t)||t<=0?void 0:t}function eL(e){if(void 0===e)return;let t=eD(e);return null!=t?1e3*t:void 0}function eF(e={}){let t=eD(e.ciTimeout??Y);return{workflow:{openPrOnImplementationComplete:e.openPr??R,approvalGateDefaults:{pushOnImplementationComplete:e.pushOnComplete??A,allowPrd:e.allowPrd??L,allowPlan:e.allowPlan??H,allowMerge:e.allowMerge??z},enableEvidence:e.enableEvidence??V,commitEvidence:e.commitEvidence??O,ciWatchEnabled:e.ciWatchEnabled??K,ciMaxFixAttempts:eD(e.ciMaxFix??G),ciWatchTimeoutMs:null!=t?1e3*t:void 0,ciLogMaxChars:eD(e.ciLogMax??X),ciWatchPollIntervalSeconds:eD(e.ciPollInterval??J),stageTimeouts:{analyzeMs:eL(e.analyzeTimeout??en),requirementsMs:eL(e.requirementsTimeout??ea),researchMs:eL(e.researchTimeout??el),planMs:eL(e.planTimeout??es),implementMs:eL(e.implementTimeout??ec),mergeMs:eL(e.mergeTimeout??ep)},analyzeRepoTimeouts:{analyzeMs:eL(e.analyzeRepoTimeout??ef)}}}}function eH(e={}){return{notifications:{inApp:{enabled:e.inApp??ex},events:e.events??ew}}}let[eB,ez]=(0,n.useState)("agent");(0,n.useEffect)(()=>{let e=tO.map(e=>document.getElementById(`section-${e.id}`)).filter(Boolean);if(0===e.length)return;let t=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&ez(t.target.id.replace("section-",""))},{rootMargin:"-65px 0px -60% 0px",threshold:0});for(let n of e)t.observe(n);return()=>t.disconnect()},[]);let e_=(0,n.useCallback)(e=>{let t=document.getElementById(`section-${e}`);t&&(t.scrollIntoView({behavior:"smooth",block:"start"}),t.style.animation="none",t.offsetHeight,t.style.animation="section-flash 1s ease-out")},[]);return(0,t.jsxs)("div",{"data-testid":"settings-page-client",className:"max-w-5xl",children:[(0,t.jsx)("div",{className:"bg-background/95 supports-backdrop-filter:bg-background/80 sticky top-0 z-10 grid grid-cols-1 gap-x-5 pt-6 pb-4 backdrop-blur lg:grid-cols-[1fr_280px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(f,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Settings"}),(0,t.jsxs)("span",{className:"relative h-4 w-16",children:[(0,t.jsx)("span",{className:(0,v.cn)("text-muted-foreground absolute inset-0 flex items-center text-xs transition-opacity duration-300",h?"opacity-100":"opacity-0"),children:"Saving..."}),(0,t.jsxs)("span",{className:(0,v.cn)("absolute inset-0 flex items-center gap-1 text-xs text-green-600 transition-opacity duration-300",w&&!h?"opacity-100":"opacity-0"),children:[(0,t.jsx)(r.Check,{className:"h-3 w-3"}),"Saved"]})]}),(0,t.jsx)("nav",{className:"ml-auto flex items-center gap-0.5",children:tO.map(e=>{let n=e.icon,r=eB===e.id;return(0,t.jsxs)("button",{type:"button",onClick:()=>e_(e.id),className:(0,v.cn)("flex cursor-pointer items-center gap-1 rounded-md px-1.5 py-1 text-[11px] transition-all",r?"bg-accent text-foreground font-medium":"text-muted-foreground/60 hover:text-foreground hover:bg-accent/50"),children:[(0,t.jsx)(n,{className:"h-3 w-3"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:e.label})]},e.id)})})]})}),(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.jsxs)("div",{id:"section-agent",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsx)(tq,{icon:i,title:"Agent",description:"AI coding agent and authentication",testId:"agent-settings-section",children:(0,t.jsx)(tU,{label:"Agent & Model",description:"Provider and model for all operations",htmlFor:"agent-model-picker",children:(0,t.jsx)(tl.AgentModelPicker,{initialAgentType:S,initialModel:e.models.default,mode:"settings",onAgentModelChange:e=>j(e),className:"w-55"})})}),(0,t.jsx)(tY,{links:[{label:"Agent system",href:"https://github.com/shep-ai/cli/blob/main/docs/architecture/agent-system.md"},{label:"Adding agents",href:"https://github.com/shep-ai/cli/blob/main/docs/development/adding-agents.md"},{label:"Configuration guide",href:"https://github.com/shep-ai/cli/blob/main/docs/guides/configuration.md"}],children:"Choose which AI coding agent powers your features. Each agent supports different models and capabilities. Authentication is resolved automatically via your active session."})]}),(0,t.jsxs)("div",{id:"section-environment",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:l.Terminal,title:"Environment",description:"Editor, shell, and terminal preferences",testId:"environment-settings-section",children:[(0,t.jsx)(tU,{label:"Default Editor",description:"Editor launched for file operations",htmlFor:"default-editor",children:(0,t.jsxs)(eZ,{value:C,onValueChange:e=>{k(e),b({environment:{defaultEditor:e,shellPreference:I,terminalPreference:N}})},children:[(0,t.jsx)(eQ,{id:"default-editor","data-testid":"editor-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(eX,{})}),(0,t.jsx)(e1,{children:tV.map(e=>{var n;let r=(n=e.value)&&n in ti?ti[n]:e7;return(0,t.jsx)(e2,{value:e.value,children:(0,t.jsxs)("span",{className:"flex items-center gap-2 text-xs",children:[(0,t.jsx)(r,{className:"h-4 w-4 shrink-0"}),e.label]})},e.value)})})]})}),(0,t.jsx)(tU,{label:"Shell",description:"Default shell for generated scripts",htmlFor:"shell-preference",children:(0,t.jsxs)(eZ,{value:I,onValueChange:e=>{M(e),b({environment:{defaultEditor:C,shellPreference:e,terminalPreference:N}})},children:[(0,t.jsx)(eQ,{id:"shell-preference","data-testid":"shell-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(eX,{})}),(0,t.jsx)(e1,{children:tW.map(e=>(0,t.jsx)(e2,{value:e.value,children:e.label},e.value))})]})}),(0,t.jsx)(tU,{label:"Terminal",description:"Terminal emulator for shell sessions",htmlFor:"terminal-preference",children:(0,t.jsxs)(eZ,{value:N,onValueChange:e=>{P(e),b({environment:{defaultEditor:C,shellPreference:I,terminalPreference:e}})},children:[(0,t.jsx)(eQ,{id:"terminal-preference","data-testid":"terminal-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(eX,{})}),(0,t.jsx)(e1,{children:E.map(e=>(0,t.jsx)(e2,{value:e.id,children:e.name},e.id))})]})})]}),(0,t.jsx)(tY,{links:[{label:"Configuration guide",href:"https://github.com/shep-ai/cli/blob/main/docs/guides/configuration.md"}],children:"Your preferred editor opens files for review. The shell setting controls generated scripts. The terminal emulator is launched when opening shell sessions from the web UI."})]}),(0,t.jsxs)("div",{id:"section-workflow",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:o.GitBranch,title:"Workflow",description:"Automation behavior after implementation",testId:"workflow-settings-section",children:[(0,t.jsx)(t$,{children:"Approve"}),(0,t.jsx)(tK,{label:"Auto-approve PRD",description:"Skip manual review of requirements",id:"allow-prd",testId:"switch-allow-prd",checked:L,onChange:e=>{F(e),b(eF({allowPrd:e}))}}),(0,t.jsx)(tK,{label:"Auto-approve Plan",description:"Skip manual review of implementation plan",id:"allow-plan",testId:"switch-allow-plan",checked:H,onChange:e=>{B(e),b(eF({allowPlan:e}))}}),(0,t.jsx)(tK,{label:"Auto-approve Merge",description:"Merge without manual review",id:"allow-merge",testId:"switch-allow-merge",checked:z,onChange:e=>{_(e),b(eF({allowMerge:e}))}}),(0,t.jsx)(t$,{children:"Evidence"}),(0,t.jsx)(tK,{label:"Collect evidence",description:"Capture screenshots and artifacts after implementation",id:"enable-evidence",testId:"switch-enable-evidence",checked:V,onChange:e=>{W(e),e?b(eF({enableEvidence:e})):(U(!1),b(eF({enableEvidence:e,commitEvidence:!1})))}}),(0,t.jsx)(tK,{label:"Add evidence to PR",description:"Include evidence in the pull request body",id:"commit-evidence",testId:"switch-commit-evidence",checked:O,disabled:!V||!R,onChange:e=>{U(e),b(eF({commitEvidence:e}))}}),(0,t.jsx)(t$,{children:"Git"}),(0,t.jsx)(tK,{label:"Push on complete",description:"Push to remote when implementation finishes",id:"push-on-complete",testId:"switch-push-on-complete",checked:A,onChange:e=>{D(e),b(eF({pushOnComplete:e}))}}),(0,t.jsx)(tK,{label:"Open PR on complete",description:"Create a pull request when done",id:"open-pr",testId:"switch-open-pr",checked:R,onChange:e=>{T(e),e?b(eF({openPr:e})):(U(!1),b(eF({openPr:e,commitEvidence:!1})))}}),(0,t.jsx)(tK,{label:"Watch CI after push",description:"Monitor CI and auto-fix failures. Disable to avoid rate limits.",id:"ci-watch-enabled",testId:"switch-ci-watch-enabled",checked:K,onChange:e=>{q(e),b(eF({ciWatchEnabled:e}))}})]}),(0,t.jsx)(tY,{links:[{label:"Approval gates",href:"https://github.com/shep-ai/cli/blob/main/specs/016-hitl-approval-gates/spec.yaml"},{label:"Push & PR flags",href:"https://github.com/shep-ai/cli/blob/main/specs/037-feature-pr-push-flags/spec.yaml"}],children:"Control how autonomous each feature run is. Auto-approve skips the human review pause at each phase. Push and PR options control what happens after successful implementation."})]}),(0,t.jsxs)("div",{id:"section-ci",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:s,title:"Continuous Integration",description:"Limits and timeouts for CI monitoring",testId:"ci-settings-section",children:[(0,t.jsx)(tU,{label:"Max fix attempts",description:"Agent retries on failing CI",htmlFor:"ci-max-fix",children:(0,t.jsx)(tG,{id:"ci-max-fix",testId:"ci-max-fix-input",placeholder:"3",value:G,onChange:$,onBlur:()=>{G!==ej&&b(eF({ciMaxFix:G}))},min:1,max:10})}),(0,t.jsx)(tU,{label:"Watch timeout",description:"Max wait for CI completion",htmlFor:"ci-timeout",children:(0,t.jsx)(tG,{id:"ci-timeout",testId:"ci-timeout-input",placeholder:"300",value:Y,onChange:Z,onBlur:()=>{Y!==eC&&b(eF({ciTimeout:Y}))},min:30,step:30,suffix:"sec"})}),(0,t.jsx)(tU,{label:"Max log size",description:"Truncate CI logs beyond this limit",htmlFor:"ci-log-max",children:(0,t.jsx)(tG,{id:"ci-log-max",testId:"ci-log-max-input",placeholder:"50000",value:X,onChange:Q,onBlur:()=>{X!==ek&&b(eF({ciLogMax:X}))},min:1e3,step:5e3,suffix:"chars"})}),(0,t.jsx)(tU,{label:"Poll interval",description:"How often to check GitHub for CI status updates",htmlFor:"ci-poll-interval",children:(0,t.jsx)(tG,{id:"ci-poll-interval",testId:"ci-poll-interval-input",placeholder:"30",value:J,onChange:ee,onBlur:()=>{J!==eI&&b(eF({ciPollInterval:J}))},min:5,step:5,suffix:"sec"})})]}),(0,t.jsx)(tY,{links:[{label:"CI/CD pipeline",href:"https://github.com/shep-ai/cli/blob/main/docs/development/cicd.md"},{label:"CI security gates",href:"https://github.com/shep-ai/cli/blob/main/specs/003-cicd-security-gates/spec.md"}],children:"When a feature completes, the agent can watch CI and auto-fix failures. These limits prevent runaway retries and control how much log output is sent to the agent for analysis."})]}),(0,t.jsxs)("div",{id:"section-stage-timeouts",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:g.Timer,title:"Stage Timeouts",description:"Maximum execution time per agent stage",testId:"stage-timeouts-settings-section",children:[(0,t.jsx)(t$,{children:"Feature Agent"}),(0,t.jsx)(tU,{label:"Analyze",description:"Repository analysis timeout",htmlFor:"timeout-analyze",children:(0,t.jsx)(t_,{id:"timeout-analyze",testId:"timeout-analyze-input",value:en,onChange:er,onBlur:()=>{en!==eM&&b(eF({analyzeTimeout:en}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Requirements",description:"Requirements gathering timeout",htmlFor:"timeout-requirements",children:(0,t.jsx)(t_,{id:"timeout-requirements",testId:"timeout-requirements-input",value:ea,onChange:ei,onBlur:()=>{ea!==eN&&b(eF({requirementsTimeout:ea}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Research",description:"Technical research timeout",htmlFor:"timeout-research",children:(0,t.jsx)(t_,{id:"timeout-research",testId:"timeout-research-input",value:el,onChange:eo,onBlur:()=>{el!==eP&&b(eF({researchTimeout:el}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Plan",description:"Implementation planning timeout",htmlFor:"timeout-plan",children:(0,t.jsx)(t_,{id:"timeout-plan",testId:"timeout-plan-input",value:es,onChange:ed,onBlur:()=>{es!==eE&&b(eF({planTimeout:es}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Implement",description:"Code implementation timeout",htmlFor:"timeout-implement",children:(0,t.jsx)(t_,{id:"timeout-implement",testId:"timeout-implement-input",value:ec,onChange:eu,onBlur:()=>{ec!==eR&&b(eF({implementTimeout:ec}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Merge",description:"PR creation and merge timeout",htmlFor:"timeout-merge",children:(0,t.jsx)(t_,{id:"timeout-merge",testId:"timeout-merge-input",value:ep,onChange:em,onBlur:()=>{ep!==eT&&b(eF({mergeTimeout:ep}))},defaultSeconds:1800})}),(0,t.jsx)(t$,{children:"Analyze Repository Agent"}),(0,t.jsx)(tU,{label:"Analyze",description:"Repository analysis timeout",htmlFor:"timeout-analyze-repo",children:(0,t.jsx)(t_,{id:"timeout-analyze-repo",testId:"timeout-analyze-repo-input",value:ef,onChange:eg,onBlur:()=>{ef!==eA&&b(eF({analyzeRepoTimeout:ef}))},defaultSeconds:600})})]}),(0,t.jsx)(tY,{children:"Each agent has independently configurable stage timeouts. When a stage exceeds its timeout, the agent is terminated. Longer timeouts are useful for complex implementations. Feature agent defaults to 30 minutes per stage. Analyze repository agent defaults to 10 minutes."})]}),(0,t.jsxs)("div",{id:"section-notifications",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:d,title:"Notifications",description:"How and when you get notified",testId:"notification-settings-section",children:[(0,t.jsx)(t$,{children:"Channels"}),(0,t.jsx)(tK,{label:"In-app",description:"Notifications inside the Shep UI",id:"notif-in-app",testId:"switch-in-app",checked:ex,onChange:e=>{ev(e),b(eH({inApp:e}))}}),(0,t.jsx)(t$,{children:"Agent Events"}),(0,t.jsx)(tK,{label:"Agent started",id:"notif-event-agentStarted",testId:"switch-event-agentStarted",checked:ew.agentStarted,onChange:e=>{let t={...ew,agentStarted:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Phase completed",id:"notif-event-phaseCompleted",testId:"switch-event-phaseCompleted",checked:ew.phaseCompleted,onChange:e=>{let t={...ew,phaseCompleted:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Waiting approval",id:"notif-event-waitingApproval",testId:"switch-event-waitingApproval",checked:ew.waitingApproval,onChange:e=>{let t={...ew,waitingApproval:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Agent completed",id:"notif-event-agentCompleted",testId:"switch-event-agentCompleted",checked:ew.agentCompleted,onChange:e=>{let t={...ew,agentCompleted:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Agent failed",id:"notif-event-agentFailed",testId:"switch-event-agentFailed",checked:ew.agentFailed,onChange:e=>{let t={...ew,agentFailed:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(t$,{children:"Pull Request Events"}),(0,t.jsx)(tK,{label:"PR merged",id:"notif-event-prMerged",testId:"switch-event-prMerged",checked:ew.prMerged,onChange:e=>{let t={...ew,prMerged:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"PR closed",id:"notif-event-prClosed",testId:"switch-event-prClosed",checked:ew.prClosed,onChange:e=>{let t={...ew,prClosed:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"PR checks passed",id:"notif-event-prChecksPassed",testId:"switch-event-prChecksPassed",checked:ew.prChecksPassed,onChange:e=>{let t={...ew,prChecksPassed:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"PR checks failed",id:"notif-event-prChecksFailed",testId:"switch-event-prChecksFailed",checked:ew.prChecksFailed,onChange:e=>{let t={...ew,prChecksFailed:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"PR blocked",id:"notif-event-prBlocked",testId:"switch-event-prBlocked",checked:ew.prBlocked,onChange:e=>{let t={...ew,prBlocked:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Merge review ready",id:"notif-event-mergeReviewReady",testId:"switch-event-mergeReviewReady",checked:ew.mergeReviewReady,onChange:e=>{let t={...ew,mergeReviewReady:e};eb(t),b(eH({events:t}))}})]}),(0,t.jsx)(tY,{links:[{label:"Notification system",href:"https://github.com/shep-ai/cli/blob/main/specs/021-agent-notifications/spec.yaml"}],children:"In-app toast notifications keep you in the loop. Fine-tune which agent lifecycle events trigger a notification."})]}),(0,t.jsxs)("div",{id:"section-feature-flags",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:c,title:"Feature Flags",description:"Enable or disable experimental features",badge:"Experimental",testId:"feature-flags-settings-section",children:[(0,t.jsx)(tK,{label:"Skills",description:"Enable the skills system for agent capabilities",id:"flag-skills",testId:"switch-flag-skills",checked:ey.skills,onChange:e=>{let t={...ey,skills:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"Deployments",description:"Enable environment deployment workflows",id:"flag-envDeploy",testId:"switch-flag-envDeploy",checked:ey.envDeploy,onChange:e=>{let t={...ey,envDeploy:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"Debug",description:"Show debug panels and verbose logging",id:"flag-debug",testId:"switch-flag-debug",checked:ey.debug,onChange:e=>{let t={...ey,debug:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"GitHub Import",description:"Enable GitHub repository import in the web UI",id:"flag-githubImport",testId:"switch-flag-githubImport",checked:ey.githubImport,onChange:e=>{let t={...ey,githubImport:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"Adopt Branch",description:"Import existing branches as tracked features",id:"flag-adoptBranch",testId:"switch-flag-adoptBranch",checked:ey.adoptBranch,onChange:e=>{let t={...ey,adoptBranch:e};eS(t),b({featureFlags:t})}})]}),(0,t.jsx)(tY,{children:"Experimental features that are still under development. Enable at your own risk — they may change or be removed in future versions. Debug mode adds verbose logging useful for troubleshooting."})]}),(0,t.jsxs)("div",{id:"section-database",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:u,title:"Database",description:"Local storage information",testId:"database-settings-section",children:[(0,t.jsx)(tU,{label:"Location",description:"Path to the local SQLite database",children:(0,t.jsx)("span",{className:"text-muted-foreground max-w-50 truncate font-mono text-xs","data-testid":"shep-home-path",children:a})}),(0,t.jsx)(tU,{label:"Size",children:(0,t.jsx)("span",{className:"text-muted-foreground text-xs","data-testid":"db-file-size",children:p})})]}),(0,t.jsx)(tY,{links:[{label:"Settings service",href:"https://github.com/shep-ai/cli/blob/main/docs/architecture/settings-service.md"},{label:"Settings spec",href:"https://github.com/shep-ai/cli/blob/main/specs/005-global-settings-service/spec.md"}],children:"All settings are stored in a local SQLite database at ~/.shep/data. The database uses a singleton record pattern with automatic migrations on startup."})]})]})]})}e.s(["SettingsPageClient",()=>tZ],41952)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,41952,e=>{"use strict";var t=e.i(20314),n=e.i(79054),r=e.i(23925),a=e.i(3645);let i=(0,a.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);var l=e.i(38573),o=e.i(49228);let s=(0,a.default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]),d=(0,a.default)("bell",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]]),c=(0,a.default)("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]),u=(0,a.default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);var p=e.i(10714),p=p,m=e.i(3214),h=e.i(30702);let f=(0,a.default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);var g=e.i(58860),x=e.i(60112),v=e.i(31777),w=e.i(41957),b=e.i(51911),y=e.i(26036),S=e.i(27069),j=e.i(91967),C=e.i(87342),k=e.i(5978),I=e.i(22528),M=e.i(66033),N=e.i(53532),P=e.i(41687),R=e.i(56720),E=e.i(13123),T=e.i(52740),A=e.i(39979),D=e.i(87620),F=e.i(86874),L=e.i(29297),H=e.i(36589),B=e.i(5192),z=e.i(23405),_=e.i(1693),V=e.i(73772),W=e.i(13044),O=[" ","Enter","ArrowUp","ArrowDown"],U=[" ","Enter"],K="Select",[q,G,$]=(0,C.createCollection)(K),[Y,Z]=(0,I.createContextScope)(K,[$,T.createPopperScope]),X=(0,T.createPopperScope)(),[Q,J]=Y(K),[ee,et]=Y(K),en=e=>{let{__scopeSelect:r,children:a,open:i,defaultOpen:l,onOpenChange:o,value:s,defaultValue:d,onValueChange:c,dir:u,name:p,autoComplete:m,disabled:h,required:f,form:g}=e,x=X(r),[v,w]=n.useState(null),[b,y]=n.useState(null),[S,j]=n.useState(!1),C=(0,M.useDirection)(u),[k,I]=(0,H.useControllableState)({prop:i,defaultProp:l??!1,onChange:o,caller:K}),[N,P]=(0,H.useControllableState)({prop:s,defaultProp:d,onChange:c,caller:K}),R=n.useRef(null),A=!v||g||!!v.closest("form"),[D,F]=n.useState(new Set),L=Array.from(D).map(e=>e.props.value).join(";");return(0,t.jsx)(T.Root,{...x,children:(0,t.jsxs)(Q,{required:f,scope:r,trigger:v,onTriggerChange:w,valueNode:b,onValueNodeChange:y,valueNodeHasChildren:S,onValueNodeHasChildrenChange:j,contentId:(0,E.useId)(),value:N,onValueChange:P,open:k,onOpenChange:I,dir:C,triggerPointerDownPosRef:R,disabled:h,children:[(0,t.jsx)(q.Provider,{scope:r,children:(0,t.jsx)(ee,{scope:e.__scopeSelect,onNativeOptionAdd:n.useCallback(e=>{F(t=>new Set(t).add(e))},[]),onNativeOptionRemove:n.useCallback(e=>{F(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:a})}),A?(0,t.jsxs)(eO,{"aria-hidden":!0,required:f,tabIndex:-1,name:p,autoComplete:m,value:N,onChange:e=>P(e.target.value),disabled:h,form:g,children:[void 0===N?(0,t.jsx)("option",{value:""}):null,Array.from(D)]},L):null]})})};en.displayName=K;var er="SelectTrigger",ea=n.forwardRef((e,r)=>{let{__scopeSelect:a,disabled:i=!1,...l}=e,o=X(a),s=J(er,a),d=s.disabled||i,c=(0,k.useComposedRefs)(r,s.onTriggerChange),u=G(a),p=n.useRef("touch"),[m,h,f]=eK(e=>{let t=u().filter(e=>!e.disabled),n=t.find(e=>e.value===s.value),r=eq(t,e,n);void 0!==r&&s.onValueChange(r.value)}),g=e=>{d||(s.onOpenChange(!0),f()),e&&(s.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,t.jsx)(T.Anchor,{asChild:!0,...o,children:(0,t.jsx)(D.Primitive.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:d,"data-disabled":d?"":void 0,"data-placeholder":eU(s.value)?"":void 0,...l,ref:c,onClick:(0,j.composeEventHandlers)(l.onClick,e=>{e.currentTarget.focus(),"mouse"!==p.current&&g(e)}),onPointerDown:(0,j.composeEventHandlers)(l.onPointerDown,e=>{p.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&"mouse"===e.pointerType&&(g(e),e.preventDefault())}),onKeyDown:(0,j.composeEventHandlers)(l.onKeyDown,e=>{let t=""!==m.current;e.ctrlKey||e.altKey||e.metaKey||1!==e.key.length||h(e.key),(!t||" "!==e.key)&&O.includes(e.key)&&(g(),e.preventDefault())})})})});ea.displayName=er;var ei="SelectValue",el=n.forwardRef((e,n)=>{let{__scopeSelect:r,className:a,style:i,children:l,placeholder:o="",...s}=e,d=J(ei,r),{onValueNodeHasChildrenChange:c}=d,u=void 0!==l,p=(0,k.useComposedRefs)(n,d.onValueNodeChange);return(0,B.useLayoutEffect)(()=>{c(u)},[c,u]),(0,t.jsx)(D.Primitive.span,{...s,ref:p,style:{pointerEvents:"none"},children:eU(d.value)?(0,t.jsx)(t.Fragment,{children:o}):l})});el.displayName=ei;var eo=n.forwardRef((e,n)=>{let{__scopeSelect:r,children:a,...i}=e;return(0,t.jsx)(D.Primitive.span,{"aria-hidden":!0,...i,ref:n,children:a||"▼"})});eo.displayName="SelectIcon";var es=e=>(0,t.jsx)(A.Portal,{asChild:!0,...e});es.displayName="SelectPortal";var ed="SelectContent",ec=n.forwardRef((e,r)=>{let a=J(ed,e.__scopeSelect),[i,l]=n.useState();return((0,B.useLayoutEffect)(()=>{l(new DocumentFragment)},[]),a.open)?(0,t.jsx)(eh,{...e,ref:r}):i?y.createPortal((0,t.jsx)(eu,{scope:e.__scopeSelect,children:(0,t.jsx)(q.Slot,{scope:e.__scopeSelect,children:(0,t.jsx)("div",{children:e.children})})}),i):null});ec.displayName=ed;var[eu,ep]=Y(ed),em=(0,F.createSlot)("SelectContent.RemoveScroll"),eh=n.forwardRef((e,r)=>{let{__scopeSelect:a,position:i="item-aligned",onCloseAutoFocus:l,onEscapeKeyDown:o,onPointerDownOutside:s,side:d,sideOffset:c,align:u,alignOffset:p,arrowPadding:m,collisionBoundary:h,collisionPadding:f,sticky:g,hideWhenDetached:x,avoidCollisions:v,...w}=e,b=J(ed,a),[y,S]=n.useState(null),[C,I]=n.useState(null),M=(0,k.useComposedRefs)(r,e=>S(e)),[E,T]=n.useState(null),[A,D]=n.useState(null),F=G(a),[L,H]=n.useState(!1),B=n.useRef(!1);n.useEffect(()=>{if(y)return(0,V.hideOthers)(y)},[y]),(0,P.useFocusGuards)();let z=n.useCallback(e=>{let[t,...n]=F().map(e=>e.ref.current),[r]=n.slice(-1),a=document.activeElement;for(let n of e)if(n===a||(n?.scrollIntoView({block:"nearest"}),n===t&&C&&(C.scrollTop=0),n===r&&C&&(C.scrollTop=C.scrollHeight),n?.focus(),document.activeElement!==a))return},[F,C]),_=n.useCallback(()=>z([E,y]),[z,E,y]);n.useEffect(()=>{L&&_()},[L,_]);let{onOpenChange:O,triggerPointerDownPosRef:U}=b;n.useEffect(()=>{if(y){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(U.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(U.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():y.contains(n.target)||O(!1),document.removeEventListener("pointermove",t),U.current=null};return null!==U.current&&(document.addEventListener("pointermove",t),document.addEventListener("pointerup",n,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",t),document.removeEventListener("pointerup",n,{capture:!0})}}},[y,O,U]),n.useEffect(()=>{let e=()=>O(!1);return window.addEventListener("blur",e),window.addEventListener("resize",e),()=>{window.removeEventListener("blur",e),window.removeEventListener("resize",e)}},[O]);let[K,q]=eK(e=>{let t=F().filter(e=>!e.disabled),n=t.find(e=>e.ref.current===document.activeElement),r=eq(t,e,n);r&&setTimeout(()=>r.ref.current.focus())}),$=n.useCallback((e,t,n)=>{let r=!B.current&&!n;(void 0!==b.value&&b.value===t||r)&&(T(e),r&&(B.current=!0))},[b.value]),Y=n.useCallback(()=>y?.focus(),[y]),Z=n.useCallback((e,t,n)=>{let r=!B.current&&!n;(void 0!==b.value&&b.value===t||r)&&D(e)},[b.value]),X="popper"===i?eg:ef,Q=X===eg?{side:d,sideOffset:c,align:u,alignOffset:p,arrowPadding:m,collisionBoundary:h,collisionPadding:f,sticky:g,hideWhenDetached:x,avoidCollisions:v}:{};return(0,t.jsx)(eu,{scope:a,content:y,viewport:C,onViewportChange:I,itemRefCallback:$,selectedItem:E,onItemLeave:Y,itemTextRefCallback:Z,focusSelectedItem:_,selectedItemText:A,position:i,isPositioned:L,searchRef:K,children:(0,t.jsx)(W.RemoveScroll,{as:em,allowPinchZoom:!0,children:(0,t.jsx)(R.FocusScope,{asChild:!0,trapped:b.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:(0,j.composeEventHandlers)(l,e=>{b.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,t.jsx)(N.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:o,onPointerDownOutside:s,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>b.onOpenChange(!1),children:(0,t.jsx)(X,{role:"listbox",id:b.contentId,"data-state":b.open?"open":"closed",dir:b.dir,onContextMenu:e=>e.preventDefault(),...w,...Q,onPlaced:()=>H(!0),ref:M,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:(0,j.composeEventHandlers)(w.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if("Tab"===e.key&&e.preventDefault(),t||1!==e.key.length||q(e.key),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let t=F().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 n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>z(t)),e.preventDefault()}})})})})})})});eh.displayName="SelectContentImpl";var ef=n.forwardRef((e,r)=>{let{__scopeSelect:a,onPlaced:i,...l}=e,o=J(ed,a),s=ep(ed,a),[d,c]=n.useState(null),[u,p]=n.useState(null),m=(0,k.useComposedRefs)(r,e=>p(e)),h=G(a),f=n.useRef(!1),g=n.useRef(!0),{viewport:x,selectedItem:v,selectedItemText:w,focusSelectedItem:b}=s,y=n.useCallback(()=>{if(o.trigger&&o.valueNode&&d&&u&&x&&v&&w){let e=o.trigger.getBoundingClientRect(),t=u.getBoundingClientRect(),n=o.valueNode.getBoundingClientRect(),r=w.getBoundingClientRect();if("rtl"!==o.dir){let a=r.left-t.left,i=n.left-a,l=e.left-i,o=e.width+l,s=Math.max(o,t.width),c=window.innerWidth-10,u=(0,S.clamp)(i,[10,Math.max(10,c-s)]);d.style.minWidth=o+"px",d.style.left=u+"px"}else{let a=t.right-r.right,i=window.innerWidth-n.right-a,l=window.innerWidth-e.right-i,o=e.width+l,s=Math.max(o,t.width),c=window.innerWidth-10,u=(0,S.clamp)(i,[10,Math.max(10,c-s)]);d.style.minWidth=o+"px",d.style.right=u+"px"}let a=h(),l=window.innerHeight-20,s=x.scrollHeight,c=window.getComputedStyle(u),p=parseInt(c.borderTopWidth,10),m=parseInt(c.paddingTop,10),g=parseInt(c.borderBottomWidth,10),b=p+m+s+parseInt(c.paddingBottom,10)+g,y=Math.min(5*v.offsetHeight,b),j=window.getComputedStyle(x),C=parseInt(j.paddingTop,10),k=parseInt(j.paddingBottom,10),I=e.top+e.height/2-10,M=v.offsetHeight/2,N=p+m+(v.offsetTop+M);if(N<=I){let e=a.length>0&&v===a[a.length-1].ref.current;d.style.bottom="0px";let t=Math.max(l-I,M+(e?k:0)+(u.clientHeight-x.offsetTop-x.offsetHeight)+g);d.style.height=N+t+"px"}else{let e=a.length>0&&v===a[0].ref.current;d.style.top="0px";let t=Math.max(I,p+x.offsetTop+(e?C:0)+M);d.style.height=t+(b-N)+"px",x.scrollTop=N-I+x.offsetTop}d.style.margin="10px 0",d.style.minHeight=y+"px",d.style.maxHeight=l+"px",i?.(),requestAnimationFrame(()=>f.current=!0)}},[h,o.trigger,o.valueNode,d,u,x,v,w,o.dir,i]);(0,B.useLayoutEffect)(()=>y(),[y]);let[j,C]=n.useState();(0,B.useLayoutEffect)(()=>{u&&C(window.getComputedStyle(u).zIndex)},[u]);let I=n.useCallback(e=>{e&&!0===g.current&&(y(),b?.(),g.current=!1)},[y,b]);return(0,t.jsx)(ex,{scope:a,contentWrapper:d,shouldExpandOnScrollRef:f,onScrollButtonChange:I,children:(0,t.jsx)("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:(0,t.jsx)(D.Primitive.div,{...l,ref:m,style:{boxSizing:"border-box",maxHeight:"100%",...l.style}})})})});ef.displayName="SelectItemAlignedPosition";var eg=n.forwardRef((e,n)=>{let{__scopeSelect:r,align:a="start",collisionPadding:i=10,...l}=e,o=X(r);return(0,t.jsx)(T.Content,{...o,...l,ref:n,align:a,collisionPadding:i,style:{boxSizing:"border-box",...l.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)"}})});eg.displayName="SelectPopperPosition";var[ex,ev]=Y(ed,{}),ew="SelectViewport",eb=n.forwardRef((e,r)=>{let{__scopeSelect:a,nonce:i,...l}=e,o=ep(ew,a),s=ev(ew,a),d=(0,k.useComposedRefs)(r,o.onViewportChange),c=n.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:i}),(0,t.jsx)(q.Slot,{scope:a,children:(0,t.jsx)(D.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...l,ref:d,style:{position:"relative",flex:1,overflow:"hidden auto",...l.style},onScroll:(0,j.composeEventHandlers)(l.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=s;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-20,a=Math.max(parseFloat(n.style.minHeight),parseFloat(n.style.height));if(a<r){let i=a+e,l=Math.min(r,i),o=i-l;n.style.height=l+"px","0px"===n.style.bottom&&(t.scrollTop=o>0?o:0,n.style.justifyContent="flex-end")}}}c.current=t.scrollTop})})})]})});eb.displayName=ew;var ey="SelectGroup",[eS,ej]=Y(ey),eC=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e,i=(0,E.useId)();return(0,t.jsx)(eS,{scope:r,id:i,children:(0,t.jsx)(D.Primitive.div,{role:"group","aria-labelledby":i,...a,ref:n})})});eC.displayName=ey;var ek="SelectLabel",eI=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e,i=ej(ek,r);return(0,t.jsx)(D.Primitive.div,{id:i.id,...a,ref:n})});eI.displayName=ek;var eM="SelectItem",[eN,eP]=Y(eM),eR=n.forwardRef((e,r)=>{let{__scopeSelect:a,value:i,disabled:l=!1,textValue:o,...s}=e,d=J(eM,a),c=ep(eM,a),u=d.value===i,[p,m]=n.useState(o??""),[h,f]=n.useState(!1),g=(0,k.useComposedRefs)(r,e=>c.itemRefCallback?.(e,i,l)),x=(0,E.useId)(),v=n.useRef("touch"),w=()=>{l||(d.onValueChange(i),d.onOpenChange(!1))};if(""===i)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)(eN,{scope:a,value:i,disabled:l,textId:x,isSelected:u,onItemTextChange:n.useCallback(e=>{m(t=>t||(e?.textContent??"").trim())},[]),children:(0,t.jsx)(q.ItemSlot,{scope:a,value:i,disabled:l,textValue:p,children:(0,t.jsx)(D.Primitive.div,{role:"option","aria-labelledby":x,"data-highlighted":h?"":void 0,"aria-selected":u&&h,"data-state":u?"checked":"unchecked","aria-disabled":l||void 0,"data-disabled":l?"":void 0,tabIndex:l?void 0:-1,...s,ref:g,onFocus:(0,j.composeEventHandlers)(s.onFocus,()=>f(!0)),onBlur:(0,j.composeEventHandlers)(s.onBlur,()=>f(!1)),onClick:(0,j.composeEventHandlers)(s.onClick,()=>{"mouse"!==v.current&&w()}),onPointerUp:(0,j.composeEventHandlers)(s.onPointerUp,()=>{"mouse"===v.current&&w()}),onPointerDown:(0,j.composeEventHandlers)(s.onPointerDown,e=>{v.current=e.pointerType}),onPointerMove:(0,j.composeEventHandlers)(s.onPointerMove,e=>{v.current=e.pointerType,l?c.onItemLeave?.():"mouse"===v.current&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,j.composeEventHandlers)(s.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:(0,j.composeEventHandlers)(s.onKeyDown,e=>{(c.searchRef?.current===""||" "!==e.key)&&(U.includes(e.key)&&w()," "===e.key&&e.preventDefault())})})})})});eR.displayName=eM;var eE="SelectItemText",eT=n.forwardRef((e,r)=>{let{__scopeSelect:a,className:i,style:l,...o}=e,s=J(eE,a),d=ep(eE,a),c=eP(eE,a),u=et(eE,a),[p,m]=n.useState(null),h=(0,k.useComposedRefs)(r,e=>m(e),c.onItemTextChange,e=>d.itemTextRefCallback?.(e,c.value,c.disabled)),f=p?.textContent,g=n.useMemo(()=>(0,t.jsx)("option",{value:c.value,disabled:c.disabled,children:f},c.value),[c.disabled,c.value,f]),{onNativeOptionAdd:x,onNativeOptionRemove:v}=u;return(0,B.useLayoutEffect)(()=>(x(g),()=>v(g)),[x,v,g]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(D.Primitive.span,{id:c.textId,...o,ref:h}),c.isSelected&&s.valueNode&&!s.valueNodeHasChildren?y.createPortal(o.children,s.valueNode):null]})});eT.displayName=eE;var eA="SelectItemIndicator",eD=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e;return eP(eA,r).isSelected?(0,t.jsx)(D.Primitive.span,{"aria-hidden":!0,...a,ref:n}):null});eD.displayName=eA;var eF="SelectScrollUpButton",eL=n.forwardRef((e,r)=>{let a=ep(eF,e.__scopeSelect),i=ev(eF,e.__scopeSelect),[l,o]=n.useState(!1),s=(0,k.useComposedRefs)(r,i.onScrollButtonChange);return(0,B.useLayoutEffect)(()=>{if(a.viewport&&a.isPositioned){let e=function(){o(t.scrollTop>0)},t=a.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[a.viewport,a.isPositioned]),l?(0,t.jsx)(ez,{...e,ref:s,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=a;e&&t&&(e.scrollTop=e.scrollTop-t.offsetHeight)}}):null});eL.displayName=eF;var eH="SelectScrollDownButton",eB=n.forwardRef((e,r)=>{let a=ep(eH,e.__scopeSelect),i=ev(eH,e.__scopeSelect),[l,o]=n.useState(!1),s=(0,k.useComposedRefs)(r,i.onScrollButtonChange);return(0,B.useLayoutEffect)(()=>{if(a.viewport&&a.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;o(Math.ceil(t.scrollTop)<e)},t=a.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[a.viewport,a.isPositioned]),l?(0,t.jsx)(ez,{...e,ref:s,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=a;e&&t&&(e.scrollTop=e.scrollTop+t.offsetHeight)}}):null});eB.displayName=eH;var ez=n.forwardRef((e,r)=>{let{__scopeSelect:a,onAutoScroll:i,...l}=e,o=ep("SelectScrollButton",a),s=n.useRef(null),d=G(a),c=n.useCallback(()=>{null!==s.current&&(window.clearInterval(s.current),s.current=null)},[]);return n.useEffect(()=>()=>c(),[c]),(0,B.useLayoutEffect)(()=>{let e=d().find(e=>e.ref.current===document.activeElement);e?.ref.current?.scrollIntoView({block:"nearest"})},[d]),(0,t.jsx)(D.Primitive.div,{"aria-hidden":!0,...l,ref:r,style:{flexShrink:0,...l.style},onPointerDown:(0,j.composeEventHandlers)(l.onPointerDown,()=>{null===s.current&&(s.current=window.setInterval(i,50))}),onPointerMove:(0,j.composeEventHandlers)(l.onPointerMove,()=>{o.onItemLeave?.(),null===s.current&&(s.current=window.setInterval(i,50))}),onPointerLeave:(0,j.composeEventHandlers)(l.onPointerLeave,()=>{c()})})}),e_=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e;return(0,t.jsx)(D.Primitive.div,{"aria-hidden":!0,...a,ref:n})});e_.displayName="SelectSeparator";var eV="SelectArrow",eW=n.forwardRef((e,n)=>{let{__scopeSelect:r,...a}=e,i=X(r),l=J(eV,r),o=ep(eV,r);return l.open&&"popper"===o.position?(0,t.jsx)(T.Arrow,{...i,...a,ref:n}):null});eW.displayName=eV;var eO=n.forwardRef(({__scopeSelect:e,value:r,...a},i)=>{let l=n.useRef(null),o=(0,k.useComposedRefs)(i,l),s=(0,z.usePrevious)(r);return n.useEffect(()=>{let e=l.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(s!==r&&t){let n=new Event("change",{bubbles:!0});t.call(e,r),e.dispatchEvent(n)}},[s,r]),(0,t.jsx)(D.Primitive.select,{...a,style:{..._.VISUALLY_HIDDEN_STYLES,...a.style},ref:o,defaultValue:r})});function eU(e){return""===e||void 0===e}function eK(e){let t=(0,L.useCallbackRef)(e),r=n.useRef(""),a=n.useRef(0),i=n.useCallback(e=>{let n=r.current+e;t(n),function e(t){r.current=t,window.clearTimeout(a.current),""!==t&&(a.current=window.setTimeout(()=>e(""),1e3))}(n)},[t]),l=n.useCallback(()=>{r.current="",window.clearTimeout(a.current)},[]);return n.useEffect(()=>()=>window.clearTimeout(a.current),[]),[r,i,l]}function eq(e,t,n){var r,a;let i=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,l=n?e.indexOf(n):-1,o=(r=e,a=Math.max(l,0),r.map((e,t)=>r[(a+t)%r.length]));1===i.length&&(o=o.filter(e=>e!==n));let s=o.find(e=>e.textValue.toLowerCase().startsWith(i.toLowerCase()));return s!==n?s:void 0}eO.displayName="SelectBubbleInput",e.s(["Arrow",()=>eW,"Content",()=>ec,"Group",()=>eC,"Icon",()=>eo,"Item",()=>eR,"ItemIndicator",()=>eD,"ItemText",()=>eT,"Label",()=>eI,"Portal",()=>es,"Root",()=>en,"ScrollDownButton",()=>eB,"ScrollUpButton",()=>eL,"Select",()=>en,"SelectArrow",()=>eW,"SelectContent",()=>ec,"SelectGroup",()=>eC,"SelectIcon",()=>eo,"SelectItem",()=>eR,"SelectItemIndicator",()=>eD,"SelectItemText",()=>eT,"SelectLabel",()=>eI,"SelectPortal",()=>es,"SelectScrollDownButton",()=>eB,"SelectScrollUpButton",()=>eL,"SelectSeparator",()=>e_,"SelectTrigger",()=>ea,"SelectValue",()=>el,"SelectViewport",()=>eb,"Separator",()=>e_,"Trigger",()=>ea,"Value",()=>el,"Viewport",()=>eb,"createSelectScope",()=>Z],83830);var eG=e.i(83830),eG=eG,e$=e.i(99105);let eY=(0,a.default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]),eZ=eG.Root;eG.Group;let eX=eG.Value,eQ=n.forwardRef(({className:e,children:n,...r},a)=>(0,t.jsxs)(eG.Trigger,{ref:a,className:(0,v.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),...r,children:[n,(0,t.jsx)(eG.Icon,{asChild:!0,children:(0,t.jsx)(e$.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));eQ.displayName=eG.Trigger.displayName;let eJ=n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(eG.ScrollUpButton,{ref:r,className:(0,v.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(eY,{className:"h-4 w-4"})}));eJ.displayName=eG.ScrollUpButton.displayName;let e0=n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(eG.ScrollDownButton,{ref:r,className:(0,v.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(e$.ChevronDown,{className:"h-4 w-4"})}));e0.displayName=eG.ScrollDownButton.displayName;let e1=n.forwardRef(({className:e,children:n,position:r="popper",...a},i)=>(0,t.jsx)(eG.Portal,{children:(0,t.jsxs)(eG.Content,{ref:i,className:(0,v.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"===r&&"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:r,...a,children:[(0,t.jsx)(eJ,{}),(0,t.jsx)(eG.Viewport,{className:(0,v.cn)("p-1","popper"===r&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:n}),(0,t.jsx)(e0,{})]})}));e1.displayName=eG.Content.displayName,n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(eG.Label,{ref:r,className:(0,v.cn)("px-2 py-1.5 text-sm font-semibold",e),...n})).displayName=eG.Label.displayName;let e2=n.forwardRef(({className:e,children:n,...a},i)=>(0,t.jsxs)(eG.Item,{ref:i,className:(0,v.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),...a,children:[(0,t.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,t.jsx)(eG.ItemIndicator,{children:(0,t.jsx)(r.Check,{className:"h-4 w-4"})})}),(0,t.jsx)(eG.ItemText,{children:n})]}));e2.displayName=eG.Item.displayName,n.forwardRef(({className:e,...n},r)=>(0,t.jsx)(eG.Separator,{ref:r,className:(0,v.cn)("bg-muted -mx-1 my-1 h-px",e),...n})).displayName=eG.Separator.displayName;var e3=e.i(21023);let e5=(0,e3.createServerReference)("40daf52e3e5238181b24590cbceaa21182d0f6f599",e3.callServer,void 0,e3.findSourceMapURL,"updateSettingsAction");var e4=e.i(17406),e8=e.i(98804),e6=e.i(44229),e9=e.i(83902);function e7(e){return(0,t.jsx)(e6.Code,{className:(0,v.cn)("h-4 w-4",e.className),...e})}function te({className:e}){return(0,t.jsx)(e8.default,{src:"/icons/editors/vscode.svg",alt:"VS Code",width:24,height:24,className:(0,v.cn)("rounded-sm object-contain",e)})}function tt({className:e}){return(0,t.jsx)(e8.default,{src:"/icons/agents/cursor.jpeg",alt:"Cursor",width:24,height:24,className:(0,v.cn)("rounded-sm object-contain",e)})}function tn({className:e}){return(0,t.jsx)(e8.default,{src:"/icons/editors/windsurf.svg",alt:"Windsurf",width:24,height:24,className:(0,v.cn)("rounded-sm object-contain",e)})}function tr({className:e}){return(0,t.jsx)(e8.default,{src:"/icons/editors/zed.svg",alt:"Zed",width:24,height:24,className:(0,v.cn)("rounded-sm object-contain",e)})}function ta({className:e,...n}){return(0,t.jsx)(e9.Rocket,{className:(0,v.cn)("h-4 w-4",e),...n})}te.displayName="VsCodeIcon",tt.displayName="CursorEditorIcon",tn.displayName="WindsurfIcon",tr.displayName="ZedIcon",ta.displayName="AntigravityIcon";let ti={vscode:te,cursor:tt,windsurf:tn,zed:tr,antigravity:ta};var tl=e.i(41413),to=e.i(77624),ts=["PageUp","PageDown"],td=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],tc={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},tu="Slider",[tp,tm,th]=(0,C.createCollection)(tu),[tf,tg]=(0,I.createContextScope)(tu,[th]),[tx,tv]=tf(tu),tw=n.forwardRef((e,r)=>{let{name:a,min:i=0,max:l=100,step:o=1,orientation:s="horizontal",disabled:d=!1,minStepsBetweenThumbs:c=0,defaultValue:u=[i],value:p,onValueChange:m=()=>{},onValueCommit:h=()=>{},inverted:f=!1,form:g,...x}=e,v=n.useRef(new Set),w=n.useRef(0),b="horizontal"===s,[y=[],C]=(0,H.useControllableState)({prop:p,defaultProp:u,onChange:e=>{let t=[...v.current];t[w.current]?.focus(),m(e)}}),k=n.useRef(y);function I(e,t,{commit:n}={commit:!1}){let r,a=(String(o).split(".")[1]||"").length,s=Math.round((Math.round((e-i)/o)*o+i)*(r=Math.pow(10,a)))/r,d=(0,S.clamp)(s,[i,l]);C((e=[])=>{let r=function(e=[],t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}(e,d,t);if(!function(e,t){if(t>0)return Math.min(...e.slice(0,-1).map((t,n)=>e[n+1]-t))>=t;return!0}(r,c*o))return e;{w.current=r.indexOf(d);let t=String(r)!==String(e);return t&&n&&h(r),t?r:e}})}return(0,t.jsx)(tx,{scope:e.__scopeSlider,name:a,disabled:d,min:i,max:l,valueIndexToChangeRef:w,thumbs:v.current,values:y,orientation:s,form:g,children:(0,t.jsx)(tp.Provider,{scope:e.__scopeSlider,children:(0,t.jsx)(tp.Slot,{scope:e.__scopeSlider,children:(0,t.jsx)(b?tS:tj,{"aria-disabled":d,"data-disabled":d?"":void 0,...x,ref:r,onPointerDown:(0,j.composeEventHandlers)(x.onPointerDown,()=>{d||(k.current=y)}),min:i,max:l,inverted:f,onSlideStart:d?void 0:function(e){let t=function(e,t){if(1===e.length)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}(y,e);I(e,t)},onSlideMove:d?void 0:function(e){I(e,w.current)},onSlideEnd:d?void 0:function(){let e=k.current[w.current];y[w.current]!==e&&h(y)},onHomeKeyDown:()=>!d&&I(i,0,{commit:!0}),onEndKeyDown:()=>!d&&I(l,y.length-1,{commit:!0}),onStepKeyDown:({event:e,direction:t})=>{if(!d){let n=ts.includes(e.key)||e.shiftKey&&td.includes(e.key),r=w.current;I(y[r]+o*(n?10:1)*t,r,{commit:!0})}}})})})})});tw.displayName=tu;var[tb,ty]=tf(tu,{startEdge:"left",endEdge:"right",size:"width",direction:1}),tS=n.forwardRef((e,r)=>{let{min:a,max:i,dir:l,inverted:o,onSlideStart:s,onSlideMove:d,onSlideEnd:c,onStepKeyDown:u,...p}=e,[m,h]=n.useState(null),f=(0,k.useComposedRefs)(r,e=>h(e)),g=n.useRef(void 0),x=(0,M.useDirection)(l),v="ltr"===x,w=v&&!o||!v&&o;function b(e){let t=g.current||m.getBoundingClientRect(),n=tD([0,t.width],w?[a,i]:[i,a]);return g.current=t,n(e-t.left)}return(0,t.jsx)(tb,{scope:e.__scopeSlider,startEdge:w?"left":"right",endEdge:w?"right":"left",direction:w?1:-1,size:"width",children:(0,t.jsx)(tC,{dir:x,"data-orientation":"horizontal",...p,ref:f,style:{...p.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:e=>{let t=b(e.clientX);s?.(t)},onSlideMove:e=>{let t=b(e.clientX);d?.(t)},onSlideEnd:()=>{g.current=void 0,c?.()},onStepKeyDown:e=>{let t=tc[w?"from-left":"from-right"].includes(e.key);u?.({event:e,direction:t?-1:1})}})})}),tj=n.forwardRef((e,r)=>{let{min:a,max:i,inverted:l,onSlideStart:o,onSlideMove:s,onSlideEnd:d,onStepKeyDown:c,...u}=e,p=n.useRef(null),m=(0,k.useComposedRefs)(r,p),h=n.useRef(void 0),f=!l;function g(e){let t=h.current||p.current.getBoundingClientRect(),n=tD([0,t.height],f?[i,a]:[a,i]);return h.current=t,n(e-t.top)}return(0,t.jsx)(tb,{scope:e.__scopeSlider,startEdge:f?"bottom":"top",endEdge:f?"top":"bottom",size:"height",direction:f?1:-1,children:(0,t.jsx)(tC,{"data-orientation":"vertical",...u,ref:m,style:{...u.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:e=>{let t=g(e.clientY);o?.(t)},onSlideMove:e=>{let t=g(e.clientY);s?.(t)},onSlideEnd:()=>{h.current=void 0,d?.()},onStepKeyDown:e=>{let t=tc[f?"from-bottom":"from-top"].includes(e.key);c?.({event:e,direction:t?-1:1})}})})}),tC=n.forwardRef((e,n)=>{let{__scopeSlider:r,onSlideStart:a,onSlideMove:i,onSlideEnd:l,onHomeKeyDown:o,onEndKeyDown:s,onStepKeyDown:d,...c}=e,u=tv(tu,r);return(0,t.jsx)(D.Primitive.span,{...c,ref:n,onKeyDown:(0,j.composeEventHandlers)(e.onKeyDown,e=>{"Home"===e.key?(o(e),e.preventDefault()):"End"===e.key?(s(e),e.preventDefault()):ts.concat(td).includes(e.key)&&(d(e),e.preventDefault())}),onPointerDown:(0,j.composeEventHandlers)(e.onPointerDown,e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),u.thumbs.has(t)?t.focus():a(e)}),onPointerMove:(0,j.composeEventHandlers)(e.onPointerMove,e=>{e.target.hasPointerCapture(e.pointerId)&&i(e)}),onPointerUp:(0,j.composeEventHandlers)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),l(e))})})}),tk="SliderTrack",tI=n.forwardRef((e,n)=>{let{__scopeSlider:r,...a}=e,i=tv(tk,r);return(0,t.jsx)(D.Primitive.span,{"data-disabled":i.disabled?"":void 0,"data-orientation":i.orientation,...a,ref:n})});tI.displayName=tk;var tM="SliderRange",tN=n.forwardRef((e,r)=>{let{__scopeSlider:a,...i}=e,l=tv(tM,a),o=ty(tM,a),s=n.useRef(null),d=(0,k.useComposedRefs)(r,s),c=l.values.length,u=l.values.map(e=>tA(e,l.min,l.max)),p=c>1?Math.min(...u):0,m=100-Math.max(...u);return(0,t.jsx)(D.Primitive.span,{"data-orientation":l.orientation,"data-disabled":l.disabled?"":void 0,...i,ref:d,style:{...e.style,[o.startEdge]:p+"%",[o.endEdge]:m+"%"}})});tN.displayName=tM;var tP="SliderThumb",tR=n.forwardRef((e,r)=>{let a=tm(e.__scopeSlider),[i,l]=n.useState(null),o=(0,k.useComposedRefs)(r,e=>l(e)),s=n.useMemo(()=>i?a().findIndex(e=>e.ref.current===i):-1,[a,i]);return(0,t.jsx)(tE,{...e,ref:o,index:s})}),tE=n.forwardRef((e,r)=>{var a,i,l,o,s;let d,c,{__scopeSlider:u,index:p,name:m,...h}=e,f=tv(tP,u),g=ty(tP,u),[x,v]=n.useState(null),w=(0,k.useComposedRefs)(r,e=>v(e)),b=!x||f.form||!!x.closest("form"),y=(0,to.useSize)(x),S=f.values[p],C=void 0===S?0:tA(S,f.min,f.max),I=(a=p,(i=f.values.length)>2?`Value ${a+1} of ${i}`:2===i?["Minimum","Maximum"][a]:void 0),M=y?.[g.size],N=M?(l=M,o=C,s=g.direction,c=tD([0,50],[0,d=l/2]),(d-c(o)*s)*s):0;return n.useEffect(()=>{if(x)return f.thumbs.add(x),()=>{f.thumbs.delete(x)}},[x,f.thumbs]),(0,t.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[g.startEdge]:`calc(${C}% + ${N}px)`},children:[(0,t.jsx)(tp.ItemSlot,{scope:e.__scopeSlider,children:(0,t.jsx)(D.Primitive.span,{role:"slider","aria-label":e["aria-label"]||I,"aria-valuemin":f.min,"aria-valuenow":S,"aria-valuemax":f.max,"aria-orientation":f.orientation,"data-orientation":f.orientation,"data-disabled":f.disabled?"":void 0,tabIndex:f.disabled?void 0:0,...h,ref:w,style:void 0===S?{display:"none"}:e.style,onFocus:(0,j.composeEventHandlers)(e.onFocus,()=>{f.valueIndexToChangeRef.current=p})})}),b&&(0,t.jsx)(tT,{name:m??(f.name?f.name+(f.values.length>1?"[]":""):void 0),form:f.form,value:S},p)]})});tR.displayName=tP;var tT=n.forwardRef(({__scopeSlider:e,value:r,...a},i)=>{let l=n.useRef(null),o=(0,k.useComposedRefs)(l,i),s=(0,z.usePrevious)(r);return n.useEffect(()=>{let e=l.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(s!==r&&t){let n=new Event("input",{bubbles:!0});t.call(e,r),e.dispatchEvent(n)}},[s,r]),(0,t.jsx)(D.Primitive.input,{style:{display:"none"},...a,ref:o,defaultValue:r})});function tA(e,t,n){return(0,S.clamp)(100/(n-t)*(e-t),[0,100])}function tD(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}tT.displayName="RadioBubbleInput",e.s(["Range",()=>tN,"Root",()=>tw,"Slider",()=>tw,"SliderRange",()=>tN,"SliderThumb",()=>tR,"SliderTrack",()=>tI,"Thumb",()=>tR,"Track",()=>tI,"createSliderScope",()=>tg],29991);var tF=e.i(29991),tF=tF;function tL({className:e,defaultValue:r,value:a,min:i=0,max:l=100,...o}){let s=n.useMemo(()=>Array.isArray(a)?a:Array.isArray(r)?r:[i,l],[a,r,i,l]);return(0,t.jsxs)(tF.Root,{"data-slot":"slider",defaultValue:r,value:a,min:i,max:l,className:(0,v.cn)("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",e),...o,children:[(0,t.jsx)(tF.Track,{"data-slot":"slider-track",className:(0,v.cn)("bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"),children:(0,t.jsx)(tF.Range,{"data-slot":"slider-range",className:(0,v.cn)("bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:s.length},(e,n)=>(0,t.jsx)(tF.Thumb,{"data-slot":"slider-thumb",className:"border-primary ring-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50"},n))]})}let tH=[60,120,300,600,900,1800,2700,3600,7200,10800,14400,21600,28800,43200,86400],tB=tH.length-1;function tz(e){let t=0,n=Math.abs(e-tH[0]);for(let r=1;r<tH.length;r++){let a=Math.abs(e-tH[r]);a<n&&(n=a,t=r)}return t}function t_({id:e,testId:r,value:a,onChange:i,onBlur:l,defaultSeconds:o=1800}){var s;let d,c,u=(""===a?o:parseInt(a,10))||o,[p,m]=(0,n.useState)(()=>tz(u)),h=tz(u);h!==p&&tH[p]!==u&&m(h);let f=(0,n.useCallback)(([e])=>{m(e),i(String(tH[e]))},[i]);return(0,t.jsxs)("div",{className:"flex w-55 items-center gap-2",children:[(0,t.jsx)(tL,{id:e,"data-testid":r,min:0,max:tB,step:1,value:[p],onValueChange:f,onValueCommit:()=>l(),className:"min-w-0 flex-1"}),(0,t.jsx)("span",{className:"text-muted-foreground shrink-0 text-right text-xs tabular-nums",children:(d=Math.floor((s=tH[p])/3600),c=Math.round(s%3600/60),0===d?`${c}m`:0===c?`${d}h`:`${d}h ${c}m`)})]})}let tV=[{value:e4.EditorType.VsCode,label:"VS Code"},{value:e4.EditorType.Cursor,label:"Cursor"},{value:e4.EditorType.Windsurf,label:"Windsurf"},{value:e4.EditorType.Zed,label:"Zed"},{value:e4.EditorType.Antigravity,label:"Antigravity"}],tW=[{value:"bash",label:"Bash"},{value:"zsh",label:"Zsh"},{value:"fish",label:"Fish"}],tO=[{id:"agent",label:"Agent",icon:i},{id:"environment",label:"Environment",icon:l.Terminal},{id:"workflow",label:"Workflow",icon:o.GitBranch},{id:"ci",label:"CI",icon:s},{id:"stage-timeouts",label:"Timeouts",icon:g.Timer},{id:"notifications",label:"Notifications",icon:d},{id:"feature-flags",label:"Flags",icon:c},{id:"database",label:"Database",icon:u}];function tU({label:e,description:n,htmlFor:r,children:a}){return(0,t.jsxs)("div",{className:"flex items-center justify-between gap-4 border-b py-2.5 last:border-b-0",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)(w.Label,{htmlFor:r,className:"cursor-pointer text-sm font-normal whitespace-nowrap",children:e}),n?(0,t.jsx)("p",{className:"text-muted-foreground text-[11px] leading-tight",children:n}):null]}),(0,t.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:a})]})}function tK({label:e,description:n,id:r,testId:a,checked:i,onChange:l,disabled:o}){return(0,t.jsx)(tU,{label:e,description:n,htmlFor:r,children:(0,t.jsx)(b.Switch,{id:r,"data-testid":a,checked:i,onCheckedChange:l,disabled:o,className:(0,v.cn)("cursor-pointer",o&&"cursor-not-allowed opacity-50")})})}function tq({icon:e,title:n,description:r,badge:a,testId:i,children:l}){return(0,t.jsxs)("div",{className:"bg-background rounded-lg border","data-testid":i,children:[(0,t.jsxs)("div",{className:"bg-muted/30 border-b px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(e,{className:"text-muted-foreground h-3.5 w-3.5"}),(0,t.jsx)("h2",{className:"text-sm font-semibold",children:n}),a?(0,t.jsx)("span",{className:"bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-[9px] font-medium tracking-wider uppercase",children:a}):null]}),(0,t.jsx)("p",{className:"text-muted-foreground mt-0.5 text-[11px]",children:r})]}),(0,t.jsx)("div",{className:"px-4",children:l})]})}function tG({id:e,testId:n,value:r,onChange:a,onBlur:i,placeholder:l,min:o=1,max:s,step:d=1,suffix:c}){let u=""===r?void 0:parseInt(r,10);return(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center overflow-hidden rounded-md border",children:[(0,t.jsx)("button",{type:"button",onClick:()=>{a(String(Math.max(o,(u??parseInt(l,10))-d)))},onMouseUp:i,className:"text-muted-foreground hover:bg-muted hover:text-foreground flex h-8 w-7 cursor-pointer items-center justify-center border-r transition-colors","aria-label":"Decrease",children:(0,t.jsx)(p.default,{className:"h-3 w-3"})}),(0,t.jsx)("input",{id:e,"data-testid":n,type:"text",inputMode:"numeric",pattern:"[0-9]*",value:r,placeholder:l,onChange:e=>{a(e.target.value.replace(/[^0-9]/g,""))},onBlur:i,className:"h-8 w-14 bg-transparent text-center text-xs outline-none"}),(0,t.jsx)("button",{type:"button",onClick:()=>{let e;e=u??parseInt(l,10),a(String(null!=s?Math.min(s,e+d):e+d))},onMouseUp:i,className:"text-muted-foreground hover:bg-muted hover:text-foreground flex h-8 w-7 cursor-pointer items-center justify-center border-l transition-colors","aria-label":"Increase",children:(0,t.jsx)(m.Plus,{className:"h-3 w-3"})})]}),c?(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:c}):null]})}function t$({children:e}){return(0,t.jsx)("div",{className:"border-b pt-3 pb-1",children:(0,t.jsx)("span",{className:"text-muted-foreground text-[10px] font-semibold tracking-wider uppercase",children:e})})}function tY({children:e,links:n}){return(0,t.jsxs)("div",{className:"hidden pt-2 lg:block",children:[(0,t.jsx)("p",{className:"text-muted-foreground/70 text-[11px] leading-relaxed",children:e}),null!=n&&n.length>0?(0,t.jsx)("div",{className:"mt-2 flex flex-col gap-1",children:n.map(e=>(0,t.jsxs)("a",{href:e.href,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground inline-flex items-center gap-1 text-[10px] transition-colors",children:[(0,t.jsx)(h.ExternalLink,{className:"h-2.5 w-2.5"}),e.label]},e.href))}):null]})}function tZ({settings:e,shepHome:a,dbFileSize:p,availableTerminals:m}){let{showSaving:h,showSaved:w,save:b}=function(){let[e,t]=(0,n.useTransition)(),[r,a]=(0,n.useState)(!1),[i,l]=(0,n.useState)(!1),o=(0,n.useRef)(null),s=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{e&&!r&&(a(!0),s.current=!1,o.current=setTimeout(()=>{o.current=null,s.current&&(a(!1),l(!0),setTimeout(()=>l(!1),2e3))},350)),!e&&r&&(s.current=!0,o.current||(a(!1),l(!0),setTimeout(()=>l(!1),2e3)))},[e,r]),{showSaving:r,showSaved:i,save:(0,n.useCallback)(e=>{t(async()=>{let t=await e5(e);t.success||x.toast.error(t.error??"Failed to save settings")})},[t])}}(),y=e.featureFlags??{skills:!1,envDeploy:!1,debug:!1,githubImport:!1,adoptBranch:!1,reactFileManager:!1},[S,j]=(0,n.useState)(e.agent.type),[C,k]=(0,n.useState)(e.environment.defaultEditor),[I,M]=(0,n.useState)(e.environment.shellPreference),[N,P]=(0,n.useState)(e.environment.terminalPreference??e4.TerminalType.System),R=m?m.filter(e=>e.available):[{id:e4.TerminalType.System,name:"System Terminal",available:!0}],[E,T]=(0,n.useState)(e.workflow.openPrOnImplementationComplete),[A,D]=(0,n.useState)(e.workflow.approvalGateDefaults.pushOnImplementationComplete),[F,L]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPrd),[H,B]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPlan),[z,_]=(0,n.useState)(e.workflow.approvalGateDefaults.allowMerge),[V,W]=(0,n.useState)(e.workflow.enableEvidence),[O,U]=(0,n.useState)(e.workflow.commitEvidence),[K,q]=(0,n.useState)(!1!==e.workflow.ciWatchEnabled),[G,$]=(0,n.useState)(null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):""),[Y,Z]=(0,n.useState)(null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):""),[X,Q]=(0,n.useState)(null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):""),[J,ee]=(0,n.useState)(null!=e.workflow.ciWatchPollIntervalSeconds?String(e.workflow.ciWatchPollIntervalSeconds):""),et=e.workflow.stageTimeouts,[en,er]=(0,n.useState)(String(Math.round((et?.analyzeMs??18e5)/1e3))),[ea,ei]=(0,n.useState)(String(Math.round((et?.requirementsMs??18e5)/1e3))),[el,eo]=(0,n.useState)(String(Math.round((et?.researchMs??18e5)/1e3))),[es,ed]=(0,n.useState)(String(Math.round((et?.planMs??18e5)/1e3))),[ec,eu]=(0,n.useState)(String(Math.round((et?.implementMs??18e5)/1e3))),[ep,em]=(0,n.useState)(String(Math.round((et?.mergeMs??18e5)/1e3))),eh=e.workflow.analyzeRepoTimeouts,[ef,eg]=(0,n.useState)(String(Math.round((eh?.analyzeMs??6e5)/1e3))),[ex,ev]=(0,n.useState)(e.notifications.inApp.enabled),[ew,eb]=(0,n.useState)({...e.notifications.events}),[ey,eS]=(0,n.useState)({...y}),ej=null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):"",eC=null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):"",ek=null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):"",eI=null!=e.workflow.ciWatchPollIntervalSeconds?String(e.workflow.ciWatchPollIntervalSeconds):"",eM=et?.analyzeMs!=null?String(Math.round(et.analyzeMs/1e3)):"",eN=et?.requirementsMs!=null?String(Math.round(et.requirementsMs/1e3)):"",eP=et?.researchMs!=null?String(Math.round(et.researchMs/1e3)):"",eR=et?.planMs!=null?String(Math.round(et.planMs/1e3)):"",eE=et?.implementMs!=null?String(Math.round(et.implementMs/1e3)):"",eT=et?.mergeMs!=null?String(Math.round(et.mergeMs/1e3)):"",eA=eh?.analyzeMs!=null?String(Math.round(eh.analyzeMs/1e3)):"";function eD(e){if(""===e)return;let t=parseInt(e,10);return Number.isNaN(t)||t<=0?void 0:t}function eF(e){if(void 0===e)return;let t=eD(e);return null!=t?1e3*t:void 0}function eL(e={}){let t=eD(e.ciTimeout??Y);return{workflow:{openPrOnImplementationComplete:e.openPr??E,approvalGateDefaults:{pushOnImplementationComplete:e.pushOnComplete??A,allowPrd:e.allowPrd??F,allowPlan:e.allowPlan??H,allowMerge:e.allowMerge??z},enableEvidence:e.enableEvidence??V,commitEvidence:e.commitEvidence??O,ciWatchEnabled:e.ciWatchEnabled??K,ciMaxFixAttempts:eD(e.ciMaxFix??G),ciWatchTimeoutMs:null!=t?1e3*t:void 0,ciLogMaxChars:eD(e.ciLogMax??X),ciWatchPollIntervalSeconds:eD(e.ciPollInterval??J),stageTimeouts:{analyzeMs:eF(e.analyzeTimeout??en),requirementsMs:eF(e.requirementsTimeout??ea),researchMs:eF(e.researchTimeout??el),planMs:eF(e.planTimeout??es),implementMs:eF(e.implementTimeout??ec),mergeMs:eF(e.mergeTimeout??ep)},analyzeRepoTimeouts:{analyzeMs:eF(e.analyzeRepoTimeout??ef)}}}}function eH(e={}){return{notifications:{inApp:{enabled:e.inApp??ex},events:e.events??ew}}}let[eB,ez]=(0,n.useState)("agent");(0,n.useEffect)(()=>{let e=tO.map(e=>document.getElementById(`section-${e.id}`)).filter(Boolean);if(0===e.length)return;let t=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&ez(t.target.id.replace("section-",""))},{rootMargin:"-65px 0px -60% 0px",threshold:0});for(let n of e)t.observe(n);return()=>t.disconnect()},[]);let e_=(0,n.useCallback)(e=>{let t=document.getElementById(`section-${e}`);t&&(t.scrollIntoView({behavior:"smooth",block:"start"}),t.style.animation="none",t.offsetHeight,t.style.animation="section-flash 1s ease-out")},[]);return(0,t.jsxs)("div",{"data-testid":"settings-page-client",className:"max-w-5xl",children:[(0,t.jsx)("div",{className:"bg-background/95 supports-backdrop-filter:bg-background/80 sticky top-0 z-10 grid grid-cols-1 gap-x-5 pt-6 pb-4 backdrop-blur lg:grid-cols-[1fr_280px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(f,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Settings"}),(0,t.jsxs)("span",{className:"relative h-4 w-16",children:[(0,t.jsx)("span",{className:(0,v.cn)("text-muted-foreground absolute inset-0 flex items-center text-xs transition-opacity duration-300",h?"opacity-100":"opacity-0"),children:"Saving..."}),(0,t.jsxs)("span",{className:(0,v.cn)("absolute inset-0 flex items-center gap-1 text-xs text-green-600 transition-opacity duration-300",w&&!h?"opacity-100":"opacity-0"),children:[(0,t.jsx)(r.Check,{className:"h-3 w-3"}),"Saved"]})]}),(0,t.jsx)("nav",{className:"ml-auto flex items-center gap-0.5",children:tO.map(e=>{let n=e.icon,r=eB===e.id;return(0,t.jsxs)("button",{type:"button",onClick:()=>e_(e.id),className:(0,v.cn)("flex cursor-pointer items-center gap-1 rounded-md px-1.5 py-1 text-[11px] transition-all",r?"bg-accent text-foreground font-medium":"text-muted-foreground/60 hover:text-foreground hover:bg-accent/50"),children:[(0,t.jsx)(n,{className:"h-3 w-3"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:e.label})]},e.id)})})]})}),(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.jsxs)("div",{id:"section-agent",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsx)(tq,{icon:i,title:"Agent",description:"AI coding agent and authentication",testId:"agent-settings-section",children:(0,t.jsx)(tU,{label:"Agent & Model",description:"Provider and model for all operations",htmlFor:"agent-model-picker",children:(0,t.jsx)(tl.AgentModelPicker,{initialAgentType:S,initialModel:e.models.default,mode:"settings",onAgentModelChange:e=>j(e),className:"w-55"})})}),(0,t.jsx)(tY,{links:[{label:"Agent system",href:"https://github.com/shep-ai/cli/blob/main/docs/architecture/agent-system.md"},{label:"Adding agents",href:"https://github.com/shep-ai/cli/blob/main/docs/development/adding-agents.md"},{label:"Configuration guide",href:"https://github.com/shep-ai/cli/blob/main/docs/guides/configuration.md"}],children:"Choose which AI coding agent powers your features. Each agent supports different models and capabilities. Authentication is resolved automatically via your active session."})]}),(0,t.jsxs)("div",{id:"section-environment",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:l.Terminal,title:"Environment",description:"Editor, shell, and terminal preferences",testId:"environment-settings-section",children:[(0,t.jsx)(tU,{label:"Default Editor",description:"Editor launched for file operations",htmlFor:"default-editor",children:(0,t.jsxs)(eZ,{value:C,onValueChange:e=>{k(e),b({environment:{defaultEditor:e,shellPreference:I,terminalPreference:N}})},children:[(0,t.jsx)(eQ,{id:"default-editor","data-testid":"editor-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(eX,{})}),(0,t.jsx)(e1,{children:tV.map(e=>{var n;let r=(n=e.value)&&n in ti?ti[n]:e7;return(0,t.jsx)(e2,{value:e.value,children:(0,t.jsxs)("span",{className:"flex items-center gap-2 text-xs",children:[(0,t.jsx)(r,{className:"h-4 w-4 shrink-0"}),e.label]})},e.value)})})]})}),(0,t.jsx)(tU,{label:"Shell",description:"Default shell for generated scripts",htmlFor:"shell-preference",children:(0,t.jsxs)(eZ,{value:I,onValueChange:e=>{M(e),b({environment:{defaultEditor:C,shellPreference:e,terminalPreference:N}})},children:[(0,t.jsx)(eQ,{id:"shell-preference","data-testid":"shell-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(eX,{})}),(0,t.jsx)(e1,{children:tW.map(e=>(0,t.jsx)(e2,{value:e.value,children:e.label},e.value))})]})}),(0,t.jsx)(tU,{label:"Terminal",description:"Terminal emulator for shell sessions",htmlFor:"terminal-preference",children:(0,t.jsxs)(eZ,{value:N,onValueChange:e=>{P(e),b({environment:{defaultEditor:C,shellPreference:I,terminalPreference:e}})},children:[(0,t.jsx)(eQ,{id:"terminal-preference","data-testid":"terminal-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(eX,{})}),(0,t.jsx)(e1,{children:R.map(e=>(0,t.jsx)(e2,{value:e.id,children:e.name},e.id))})]})})]}),(0,t.jsx)(tY,{links:[{label:"Configuration guide",href:"https://github.com/shep-ai/cli/blob/main/docs/guides/configuration.md"}],children:"Your preferred editor opens files for review. The shell setting controls generated scripts. The terminal emulator is launched when opening shell sessions from the web UI."})]}),(0,t.jsxs)("div",{id:"section-workflow",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:o.GitBranch,title:"Workflow",description:"Automation behavior after implementation",testId:"workflow-settings-section",children:[(0,t.jsx)(t$,{children:"Approve"}),(0,t.jsx)(tK,{label:"Auto-approve PRD",description:"Skip manual review of requirements",id:"allow-prd",testId:"switch-allow-prd",checked:F,onChange:e=>{L(e),b(eL({allowPrd:e}))}}),(0,t.jsx)(tK,{label:"Auto-approve Plan",description:"Skip manual review of implementation plan",id:"allow-plan",testId:"switch-allow-plan",checked:H,onChange:e=>{B(e),b(eL({allowPlan:e}))}}),(0,t.jsx)(tK,{label:"Auto-approve Merge",description:"Merge without manual review",id:"allow-merge",testId:"switch-allow-merge",checked:z,onChange:e=>{_(e),b(eL({allowMerge:e}))}}),(0,t.jsx)(t$,{children:"Evidence"}),(0,t.jsx)(tK,{label:"Collect evidence",description:"Capture screenshots and artifacts after implementation",id:"enable-evidence",testId:"switch-enable-evidence",checked:V,onChange:e=>{W(e),e?b(eL({enableEvidence:e})):(U(!1),b(eL({enableEvidence:e,commitEvidence:!1})))}}),(0,t.jsx)(tK,{label:"Add evidence to PR",description:"Include evidence in the pull request body",id:"commit-evidence",testId:"switch-commit-evidence",checked:O,disabled:!V||!E,onChange:e=>{U(e),b(eL({commitEvidence:e}))}}),(0,t.jsx)(t$,{children:"Git"}),(0,t.jsx)(tK,{label:"Push on complete",description:"Push to remote when implementation finishes",id:"push-on-complete",testId:"switch-push-on-complete",checked:A,onChange:e=>{D(e),b(eL({pushOnComplete:e}))}}),(0,t.jsx)(tK,{label:"Open PR on complete",description:"Create a pull request when done",id:"open-pr",testId:"switch-open-pr",checked:E,onChange:e=>{T(e),e?b(eL({openPr:e})):(U(!1),b(eL({openPr:e,commitEvidence:!1})))}}),(0,t.jsx)(tK,{label:"Watch CI after push",description:"Monitor CI and auto-fix failures. Disable to avoid rate limits.",id:"ci-watch-enabled",testId:"switch-ci-watch-enabled",checked:K,onChange:e=>{q(e),b(eL({ciWatchEnabled:e}))}})]}),(0,t.jsx)(tY,{links:[{label:"Approval gates",href:"https://github.com/shep-ai/cli/blob/main/specs/016-hitl-approval-gates/spec.yaml"},{label:"Push & PR flags",href:"https://github.com/shep-ai/cli/blob/main/specs/037-feature-pr-push-flags/spec.yaml"}],children:"Control how autonomous each feature run is. Auto-approve skips the human review pause at each phase. Push and PR options control what happens after successful implementation."})]}),(0,t.jsxs)("div",{id:"section-ci",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:s,title:"Continuous Integration",description:"Limits and timeouts for CI monitoring",testId:"ci-settings-section",children:[(0,t.jsx)(tU,{label:"Max fix attempts",description:"Agent retries on failing CI",htmlFor:"ci-max-fix",children:(0,t.jsx)(tG,{id:"ci-max-fix",testId:"ci-max-fix-input",placeholder:"3",value:G,onChange:$,onBlur:()=>{G!==ej&&b(eL({ciMaxFix:G}))},min:1,max:10})}),(0,t.jsx)(tU,{label:"Watch timeout",description:"Max wait for CI completion",htmlFor:"ci-timeout",children:(0,t.jsx)(tG,{id:"ci-timeout",testId:"ci-timeout-input",placeholder:"300",value:Y,onChange:Z,onBlur:()=>{Y!==eC&&b(eL({ciTimeout:Y}))},min:30,step:30,suffix:"sec"})}),(0,t.jsx)(tU,{label:"Max log size",description:"Truncate CI logs beyond this limit",htmlFor:"ci-log-max",children:(0,t.jsx)(tG,{id:"ci-log-max",testId:"ci-log-max-input",placeholder:"50000",value:X,onChange:Q,onBlur:()=>{X!==ek&&b(eL({ciLogMax:X}))},min:1e3,step:5e3,suffix:"chars"})}),(0,t.jsx)(tU,{label:"Poll interval",description:"How often to check GitHub for CI status updates",htmlFor:"ci-poll-interval",children:(0,t.jsx)(tG,{id:"ci-poll-interval",testId:"ci-poll-interval-input",placeholder:"30",value:J,onChange:ee,onBlur:()=>{J!==eI&&b(eL({ciPollInterval:J}))},min:5,step:5,suffix:"sec"})})]}),(0,t.jsx)(tY,{links:[{label:"CI/CD pipeline",href:"https://github.com/shep-ai/cli/blob/main/docs/development/cicd.md"},{label:"CI security gates",href:"https://github.com/shep-ai/cli/blob/main/specs/003-cicd-security-gates/spec.md"}],children:"When a feature completes, the agent can watch CI and auto-fix failures. These limits prevent runaway retries and control how much log output is sent to the agent for analysis."})]}),(0,t.jsxs)("div",{id:"section-stage-timeouts",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:g.Timer,title:"Stage Timeouts",description:"Maximum execution time per agent stage",testId:"stage-timeouts-settings-section",children:[(0,t.jsx)(t$,{children:"Feature Agent"}),(0,t.jsx)(tU,{label:"Analyze",description:"Repository analysis timeout",htmlFor:"timeout-analyze",children:(0,t.jsx)(t_,{id:"timeout-analyze",testId:"timeout-analyze-input",value:en,onChange:er,onBlur:()=>{en!==eM&&b(eL({analyzeTimeout:en}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Requirements",description:"Requirements gathering timeout",htmlFor:"timeout-requirements",children:(0,t.jsx)(t_,{id:"timeout-requirements",testId:"timeout-requirements-input",value:ea,onChange:ei,onBlur:()=>{ea!==eN&&b(eL({requirementsTimeout:ea}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Research",description:"Technical research timeout",htmlFor:"timeout-research",children:(0,t.jsx)(t_,{id:"timeout-research",testId:"timeout-research-input",value:el,onChange:eo,onBlur:()=>{el!==eP&&b(eL({researchTimeout:el}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Plan",description:"Implementation planning timeout",htmlFor:"timeout-plan",children:(0,t.jsx)(t_,{id:"timeout-plan",testId:"timeout-plan-input",value:es,onChange:ed,onBlur:()=>{es!==eR&&b(eL({planTimeout:es}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Implement",description:"Code implementation timeout",htmlFor:"timeout-implement",children:(0,t.jsx)(t_,{id:"timeout-implement",testId:"timeout-implement-input",value:ec,onChange:eu,onBlur:()=>{ec!==eE&&b(eL({implementTimeout:ec}))},defaultSeconds:1800})}),(0,t.jsx)(tU,{label:"Merge",description:"PR creation and merge timeout",htmlFor:"timeout-merge",children:(0,t.jsx)(t_,{id:"timeout-merge",testId:"timeout-merge-input",value:ep,onChange:em,onBlur:()=>{ep!==eT&&b(eL({mergeTimeout:ep}))},defaultSeconds:1800})}),(0,t.jsx)(t$,{children:"Analyze Repository Agent"}),(0,t.jsx)(tU,{label:"Analyze",description:"Repository analysis timeout",htmlFor:"timeout-analyze-repo",children:(0,t.jsx)(t_,{id:"timeout-analyze-repo",testId:"timeout-analyze-repo-input",value:ef,onChange:eg,onBlur:()=>{ef!==eA&&b(eL({analyzeRepoTimeout:ef}))},defaultSeconds:600})})]}),(0,t.jsx)(tY,{children:"Each agent has independently configurable stage timeouts. When a stage exceeds its timeout, the agent is terminated. Longer timeouts are useful for complex implementations. Feature agent defaults to 30 minutes per stage. Analyze repository agent defaults to 10 minutes."})]}),(0,t.jsxs)("div",{id:"section-notifications",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:d,title:"Notifications",description:"How and when you get notified",testId:"notification-settings-section",children:[(0,t.jsx)(t$,{children:"Channels"}),(0,t.jsx)(tK,{label:"In-app",description:"Notifications inside the Shep UI",id:"notif-in-app",testId:"switch-in-app",checked:ex,onChange:e=>{ev(e),b(eH({inApp:e}))}}),(0,t.jsx)(t$,{children:"Agent Events"}),(0,t.jsx)(tK,{label:"Agent started",id:"notif-event-agentStarted",testId:"switch-event-agentStarted",checked:ew.agentStarted,onChange:e=>{let t={...ew,agentStarted:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Phase completed",id:"notif-event-phaseCompleted",testId:"switch-event-phaseCompleted",checked:ew.phaseCompleted,onChange:e=>{let t={...ew,phaseCompleted:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Waiting approval",id:"notif-event-waitingApproval",testId:"switch-event-waitingApproval",checked:ew.waitingApproval,onChange:e=>{let t={...ew,waitingApproval:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Agent completed",id:"notif-event-agentCompleted",testId:"switch-event-agentCompleted",checked:ew.agentCompleted,onChange:e=>{let t={...ew,agentCompleted:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Agent failed",id:"notif-event-agentFailed",testId:"switch-event-agentFailed",checked:ew.agentFailed,onChange:e=>{let t={...ew,agentFailed:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(t$,{children:"Pull Request Events"}),(0,t.jsx)(tK,{label:"PR merged",id:"notif-event-prMerged",testId:"switch-event-prMerged",checked:ew.prMerged,onChange:e=>{let t={...ew,prMerged:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"PR closed",id:"notif-event-prClosed",testId:"switch-event-prClosed",checked:ew.prClosed,onChange:e=>{let t={...ew,prClosed:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"PR checks passed",id:"notif-event-prChecksPassed",testId:"switch-event-prChecksPassed",checked:ew.prChecksPassed,onChange:e=>{let t={...ew,prChecksPassed:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"PR checks failed",id:"notif-event-prChecksFailed",testId:"switch-event-prChecksFailed",checked:ew.prChecksFailed,onChange:e=>{let t={...ew,prChecksFailed:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"PR blocked",id:"notif-event-prBlocked",testId:"switch-event-prBlocked",checked:ew.prBlocked,onChange:e=>{let t={...ew,prBlocked:e};eb(t),b(eH({events:t}))}}),(0,t.jsx)(tK,{label:"Merge review ready",id:"notif-event-mergeReviewReady",testId:"switch-event-mergeReviewReady",checked:ew.mergeReviewReady,onChange:e=>{let t={...ew,mergeReviewReady:e};eb(t),b(eH({events:t}))}})]}),(0,t.jsx)(tY,{links:[{label:"Notification system",href:"https://github.com/shep-ai/cli/blob/main/specs/021-agent-notifications/spec.yaml"}],children:"In-app toast notifications keep you in the loop. Fine-tune which agent lifecycle events trigger a notification."})]}),(0,t.jsxs)("div",{id:"section-feature-flags",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:c,title:"Feature Flags",description:"Enable or disable experimental features",badge:"Experimental",testId:"feature-flags-settings-section",children:[(0,t.jsx)(tK,{label:"Skills",description:"Enable the skills system for agent capabilities",id:"flag-skills",testId:"switch-flag-skills",checked:ey.skills,onChange:e=>{let t={...ey,skills:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"Deployments",description:"Enable environment deployment workflows",id:"flag-envDeploy",testId:"switch-flag-envDeploy",checked:ey.envDeploy,onChange:e=>{let t={...ey,envDeploy:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"Debug",description:"Show debug panels and verbose logging",id:"flag-debug",testId:"switch-flag-debug",checked:ey.debug,onChange:e=>{let t={...ey,debug:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"GitHub Import",description:"Enable GitHub repository import in the web UI",id:"flag-githubImport",testId:"switch-flag-githubImport",checked:ey.githubImport,onChange:e=>{let t={...ey,githubImport:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"Adopt Branch",description:"Import existing branches as tracked features",id:"flag-adoptBranch",testId:"switch-flag-adoptBranch",checked:ey.adoptBranch,onChange:e=>{let t={...ey,adoptBranch:e};eS(t),b({featureFlags:t})}}),(0,t.jsx)(tK,{label:"React File Manager",description:"Use the built-in React file manager instead of the native OS folder picker",id:"flag-reactFileManager",testId:"switch-flag-reactFileManager",checked:ey.reactFileManager,onChange:e=>{let t={...ey,reactFileManager:e};eS(t),b({featureFlags:t})}})]}),(0,t.jsx)(tY,{children:"Experimental features that are still under development. Enable at your own risk — they may change or be removed in future versions. Debug mode adds verbose logging useful for troubleshooting."})]}),(0,t.jsxs)("div",{id:"section-database",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tq,{icon:u,title:"Database",description:"Local storage information",testId:"database-settings-section",children:[(0,t.jsx)(tU,{label:"Location",description:"Path to the local SQLite database",children:(0,t.jsx)("span",{className:"text-muted-foreground max-w-50 truncate font-mono text-xs","data-testid":"shep-home-path",children:a})}),(0,t.jsx)(tU,{label:"Size",children:(0,t.jsx)("span",{className:"text-muted-foreground text-xs","data-testid":"db-file-size",children:p})})]}),(0,t.jsx)(tY,{links:[{label:"Settings service",href:"https://github.com/shep-ai/cli/blob/main/docs/architecture/settings-service.md"},{label:"Settings spec",href:"https://github.com/shep-ai/cli/blob/main/specs/005-global-settings-service/spec.md"}],children:"All settings are stored in a local SQLite database at ~/.shep/data. The database uses a singleton record pattern with automatic migrations on startup."})]})]})]})}e.s(["SettingsPageClient",()=>tZ],41952)}]);