@shepai/cli 1.202.1-pr606.60460ac → 1.202.2

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 (372) hide show
  1. package/package.json +1 -1
  2. package/web/.next/BUILD_ID +1 -1
  3. package/web/.next/build-manifest.json +2 -2
  4. package/web/.next/fallback-build-manifest.json +2 -2
  5. package/web/.next/prerender-manifest.json +3 -3
  6. package/web/.next/required-server-files.js +2 -2
  7. package/web/.next/required-server-files.json +2 -2
  8. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/react-loadable-manifest.json +4 -4
  9. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +37 -37
  10. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  11. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  12. package/web/.next/server/app/(dashboard)/@drawer/chat/page/react-loadable-manifest.json +4 -4
  13. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +35 -35
  14. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  15. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  16. package/web/.next/server/app/(dashboard)/@drawer/create/page/react-loadable-manifest.json +4 -4
  17. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +38 -38
  18. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  19. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  20. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/react-loadable-manifest.json +4 -4
  21. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +47 -47
  22. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  23. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  24. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/react-loadable-manifest.json +4 -4
  25. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +47 -47
  26. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  27. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  28. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +4 -4
  29. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +36 -36
  30. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  31. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  32. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/react-loadable-manifest.json +4 -4
  33. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +36 -36
  34. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  35. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  36. package/web/.next/server/app/(dashboard)/chat/page/react-loadable-manifest.json +4 -4
  37. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +35 -35
  38. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  39. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  40. package/web/.next/server/app/(dashboard)/control-center/page/react-loadable-manifest.json +4 -4
  41. package/web/.next/server/app/(dashboard)/control-center/page/server-reference-manifest.json +35 -35
  42. package/web/.next/server/app/(dashboard)/control-center/page.js.nft.json +1 -1
  43. package/web/.next/server/app/(dashboard)/control-center/page_client-reference-manifest.js +1 -1
  44. package/web/.next/server/app/(dashboard)/create/page/react-loadable-manifest.json +4 -4
  45. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +38 -38
  46. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  47. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  48. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/react-loadable-manifest.json +4 -4
  49. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +47 -47
  50. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  51. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  52. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/react-loadable-manifest.json +4 -4
  53. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +47 -47
  54. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  55. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  56. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +4 -4
  57. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +36 -36
  58. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  59. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  60. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/react-loadable-manifest.json +4 -4
  61. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +36 -36
  62. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  63. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  64. package/web/.next/server/app/_global-error.html +2 -2
  65. package/web/.next/server/app/_global-error.rsc +1 -1
  66. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  67. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  68. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  69. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  70. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  71. package/web/.next/server/app/_not-found/page/react-loadable-manifest.json +4 -4
  72. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +9 -9
  73. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  74. package/web/.next/server/app/agent-questions/page/react-loadable-manifest.json +4 -4
  75. package/web/.next/server/app/agent-questions/page/server-reference-manifest.json +11 -11
  76. package/web/.next/server/app/agent-questions/page_client-reference-manifest.js +1 -1
  77. package/web/.next/server/app/agents/[agentType]/page/react-loadable-manifest.json +4 -4
  78. package/web/.next/server/app/agents/[agentType]/page/server-reference-manifest.json +13 -13
  79. package/web/.next/server/app/agents/[agentType]/page_client-reference-manifest.js +1 -1
  80. package/web/.next/server/app/agents/page/react-loadable-manifest.json +4 -4
  81. package/web/.next/server/app/agents/page/server-reference-manifest.json +10 -10
  82. package/web/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  83. package/web/.next/server/app/application/[id]/page/react-loadable-manifest.json +4 -4
  84. package/web/.next/server/app/application/[id]/page/server-reference-manifest.json +18 -18
  85. package/web/.next/server/app/application/[id]/page.js.nft.json +1 -1
  86. package/web/.next/server/app/application/[id]/page_client-reference-manifest.js +1 -1
  87. package/web/.next/server/app/application/[id]/supervisor/page/react-loadable-manifest.json +4 -4
  88. package/web/.next/server/app/application/[id]/supervisor/page/server-reference-manifest.json +10 -10
  89. package/web/.next/server/app/application/[id]/supervisor/page_client-reference-manifest.js +1 -1
  90. package/web/.next/server/app/applications/page/react-loadable-manifest.json +4 -4
  91. package/web/.next/server/app/applications/page/server-reference-manifest.json +20 -20
  92. package/web/.next/server/app/applications/page.js.nft.json +1 -1
  93. package/web/.next/server/app/applications/page_client-reference-manifest.js +1 -1
  94. package/web/.next/server/app/features/page/react-loadable-manifest.json +4 -4
  95. package/web/.next/server/app/features/page/server-reference-manifest.json +31 -31
  96. package/web/.next/server/app/features/page.js.nft.json +1 -1
  97. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  98. package/web/.next/server/app/onboarding/page/react-loadable-manifest.json +4 -4
  99. package/web/.next/server/app/onboarding/page/server-reference-manifest.json +9 -9
  100. package/web/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  101. package/web/.next/server/app/page/react-loadable-manifest.json +4 -4
  102. package/web/.next/server/app/page/server-reference-manifest.json +9 -9
  103. package/web/.next/server/app/page_client-reference-manifest.js +1 -1
  104. package/web/.next/server/app/projects/[slug]/items/[itemId]/page/react-loadable-manifest.json +4 -4
  105. package/web/.next/server/app/projects/[slug]/items/[itemId]/page/server-reference-manifest.json +16 -16
  106. package/web/.next/server/app/projects/[slug]/items/[itemId]/page_client-reference-manifest.js +1 -1
  107. package/web/.next/server/app/projects/[slug]/page/react-loadable-manifest.json +4 -4
  108. package/web/.next/server/app/projects/[slug]/page/server-reference-manifest.json +28 -28
  109. package/web/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  110. package/web/.next/server/app/projects/[slug]/pages/page/react-loadable-manifest.json +4 -4
  111. package/web/.next/server/app/projects/[slug]/pages/page/server-reference-manifest.json +12 -12
  112. package/web/.next/server/app/projects/[slug]/pages/page_client-reference-manifest.js +1 -1
  113. package/web/.next/server/app/projects/[slug]/settings/page/react-loadable-manifest.json +4 -4
  114. package/web/.next/server/app/projects/[slug]/settings/page/server-reference-manifest.json +18 -18
  115. package/web/.next/server/app/projects/[slug]/settings/page_client-reference-manifest.js +1 -1
  116. package/web/.next/server/app/projects/page/react-loadable-manifest.json +4 -4
  117. package/web/.next/server/app/projects/page/server-reference-manifest.json +10 -10
  118. package/web/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  119. package/web/.next/server/app/settings/page/react-loadable-manifest.json +4 -4
  120. package/web/.next/server/app/settings/page/server-reference-manifest.json +15 -15
  121. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  122. package/web/.next/server/app/skills/page/react-loadable-manifest.json +4 -4
  123. package/web/.next/server/app/skills/page/server-reference-manifest.json +17 -17
  124. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  125. package/web/.next/server/app/supervisor/feature/[featureId]/page/react-loadable-manifest.json +4 -4
  126. package/web/.next/server/app/supervisor/feature/[featureId]/page/server-reference-manifest.json +10 -10
  127. package/web/.next/server/app/supervisor/feature/[featureId]/page_client-reference-manifest.js +1 -1
  128. package/web/.next/server/app/supervisor/page/react-loadable-manifest.json +4 -4
  129. package/web/.next/server/app/supervisor/page/server-reference-manifest.json +10 -10
  130. package/web/.next/server/app/supervisor/page_client-reference-manifest.js +1 -1
  131. package/web/.next/server/app/supervisor/repo/[repositoryId]/page/react-loadable-manifest.json +4 -4
  132. package/web/.next/server/app/supervisor/repo/[repositoryId]/page/server-reference-manifest.json +10 -10
  133. package/web/.next/server/app/supervisor/repo/[repositoryId]/page_client-reference-manifest.js +1 -1
  134. package/web/.next/server/app/tools/page/react-loadable-manifest.json +4 -4
  135. package/web/.next/server/app/tools/page/server-reference-manifest.json +15 -15
  136. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  137. package/web/.next/server/app/version/page/react-loadable-manifest.json +4 -4
  138. package/web/.next/server/app/version/page/server-reference-manifest.json +9 -9
  139. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  140. package/web/.next/server/chunks/[root-of-the-server]__10e976f3._.js +1 -1
  141. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agent-questions_page_actions_4b694f8d.js +1 -1
  142. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agent-questions_page_actions_4b694f8d.js.map +1 -1
  143. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agents_[agentType]_page_actions_103679a6.js +1 -1
  144. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agents_[agentType]_page_actions_103679a6.js.map +1 -1
  145. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_projects_[slug]_pages_page_actions_19d50f6c.js +1 -1
  146. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_projects_[slug]_pages_page_actions_19d50f6c.js.map +1 -1
  147. package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_items_[itemId]_work-item-detail-client_tsx_d2e02407._.js +1 -1
  148. package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_items_[itemId]_work-item-detail-client_tsx_d2e02407._.js.map +1 -1
  149. package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_settings_project-settings-client_tsx_e8b85ddc._.js +1 -1
  150. package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_settings_project-settings-client_tsx_e8b85ddc._.js.map +1 -1
  151. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
  152. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  153. package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js +1 -1
  154. package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js.map +1 -1
  155. package/web/.next/server/chunks/ssr/[root-of-the-server]__0af8610a._.js +3 -3
  156. package/web/.next/server/chunks/ssr/[root-of-the-server]__0af8610a._.js.map +1 -1
  157. package/web/.next/server/chunks/ssr/[root-of-the-server]__0b652a2f._.js +1 -1
  158. package/web/.next/server/chunks/ssr/{[root-of-the-server]__8b73253b._.js → [root-of-the-server]__2e388ba3._.js} +2 -2
  159. package/web/.next/server/chunks/ssr/{[root-of-the-server]__8b73253b._.js.map → [root-of-the-server]__2e388ba3._.js.map} +1 -1
  160. package/web/.next/server/chunks/ssr/[root-of-the-server]__56cf47e7._.js +1 -1
  161. package/web/.next/server/chunks/ssr/[root-of-the-server]__56cf47e7._.js.map +1 -1
  162. package/web/.next/server/chunks/ssr/[root-of-the-server]__648730d4._.js +1 -1
  163. package/web/.next/server/chunks/ssr/[root-of-the-server]__68df6415._.js +1 -1
  164. package/web/.next/server/chunks/ssr/[root-of-the-server]__68df6415._.js.map +1 -1
  165. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bc6bf96._.js +1 -1
  166. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bc6bf96._.js.map +1 -1
  167. package/web/.next/server/chunks/ssr/[root-of-the-server]__9852cb08._.js +2 -2
  168. package/web/.next/server/chunks/ssr/[root-of-the-server]__9852cb08._.js.map +1 -1
  169. package/web/.next/server/chunks/ssr/[root-of-the-server]__a1167cec._.js +1 -1
  170. package/web/.next/server/chunks/ssr/[root-of-the-server]__a1167cec._.js.map +1 -1
  171. package/web/.next/server/chunks/ssr/[root-of-the-server]__a12d0ad7._.js +3 -0
  172. package/web/.next/server/chunks/ssr/{[root-of-the-server]__52ca7f88._.js.map → [root-of-the-server]__a12d0ad7._.js.map} +1 -1
  173. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba699bec._.js +1 -1
  174. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba699bec._.js.map +1 -1
  175. package/web/.next/server/chunks/ssr/[root-of-the-server]__e0741ee1._.js +1 -1
  176. package/web/.next/server/chunks/ssr/[root-of-the-server]__e0fa59e6._.js +1 -1
  177. package/web/.next/server/chunks/ssr/[root-of-the-server]__e0fa59e6._.js.map +1 -1
  178. package/web/.next/server/chunks/ssr/[root-of-the-server]__ea26ff90._.js +3 -3
  179. package/web/.next/server/chunks/ssr/[root-of-the-server]__ff0095e3._.js +1 -1
  180. package/web/.next/server/chunks/ssr/_07036593._.js +1 -1
  181. package/web/.next/server/chunks/ssr/_07036593._.js.map +1 -1
  182. package/web/.next/server/chunks/ssr/_0d2a7595._.js +1 -1
  183. package/web/.next/server/chunks/ssr/_0d2a7595._.js.map +1 -1
  184. package/web/.next/server/chunks/ssr/_101de7c3._.js +1 -1
  185. package/web/.next/server/chunks/ssr/_101de7c3._.js.map +1 -1
  186. package/web/.next/server/chunks/ssr/{_db111d21._.js → _10f54ace._.js} +2 -2
  187. package/web/.next/server/chunks/ssr/{_db111d21._.js.map → _10f54ace._.js.map} +1 -1
  188. package/web/.next/server/chunks/ssr/_24fca3cf._.js +1 -1
  189. package/web/.next/server/chunks/ssr/_24fca3cf._.js.map +1 -1
  190. package/web/.next/server/chunks/ssr/{_6ff832ad._.js → _2759af76._.js} +2 -2
  191. package/web/.next/server/chunks/ssr/{_6ff832ad._.js.map → _2759af76._.js.map} +1 -1
  192. package/web/.next/server/chunks/ssr/_2bc48f3d._.js +1 -1
  193. package/web/.next/server/chunks/ssr/_2bc48f3d._.js.map +1 -1
  194. package/web/.next/server/chunks/ssr/{_fb539286._.js → _2bef1982._.js} +2 -2
  195. package/web/.next/server/chunks/ssr/{_fb539286._.js.map → _2bef1982._.js.map} +1 -1
  196. package/web/.next/server/chunks/ssr/_32f66845._.js +1 -1
  197. package/web/.next/server/chunks/ssr/_408848e6._.js +1 -1
  198. package/web/.next/server/chunks/ssr/_408848e6._.js.map +1 -1
  199. package/web/.next/server/chunks/ssr/_40e02782._.js +1 -1
  200. package/web/.next/server/chunks/ssr/_40e02782._.js.map +1 -1
  201. package/web/.next/server/chunks/ssr/_486d45d6._.js +1 -1
  202. package/web/.next/server/chunks/ssr/_486d45d6._.js.map +1 -1
  203. package/web/.next/server/chunks/ssr/{_824d5772._.js → _498cba11._.js} +2 -2
  204. package/web/.next/server/chunks/ssr/{_824d5772._.js.map → _498cba11._.js.map} +1 -1
  205. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  206. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  207. package/web/.next/server/chunks/ssr/_5cbb0e22._.js +1 -1
  208. package/web/.next/server/chunks/ssr/_5cbb0e22._.js.map +1 -1
  209. package/web/.next/server/chunks/ssr/{_5a3edc88._.js → _673be4f1._.js} +2 -2
  210. package/web/.next/server/chunks/ssr/{_5a3edc88._.js.map → _673be4f1._.js.map} +1 -1
  211. package/web/.next/server/chunks/ssr/_7ba67729._.js +1 -1
  212. package/web/.next/server/chunks/ssr/_7ba67729._.js.map +1 -1
  213. package/web/.next/server/chunks/ssr/_805ae1aa._.js +1 -1
  214. package/web/.next/server/chunks/ssr/_805ae1aa._.js.map +1 -1
  215. package/web/.next/server/chunks/ssr/_87cf18c3._.js +1 -1
  216. package/web/.next/server/chunks/ssr/_87cf18c3._.js.map +1 -1
  217. package/web/.next/server/chunks/ssr/_8a700ff4._.js +1 -1
  218. package/web/.next/server/chunks/ssr/_8a700ff4._.js.map +1 -1
  219. package/web/.next/server/chunks/ssr/_95b97274._.js +1 -1
  220. package/web/.next/server/chunks/ssr/_95b97274._.js.map +1 -1
  221. package/web/.next/server/chunks/ssr/{_fbcfaf3a._.js → _9d18d1b1._.js} +2 -2
  222. package/web/.next/server/chunks/ssr/{_fbcfaf3a._.js.map → _9d18d1b1._.js.map} +1 -1
  223. package/web/.next/server/chunks/ssr/{_70ff64a1._.js → _a93687e6._.js} +2 -2
  224. package/web/.next/server/chunks/ssr/{_70ff64a1._.js.map → _a93687e6._.js.map} +1 -1
  225. package/web/.next/server/chunks/ssr/_c2e196ee._.js +1 -1
  226. package/web/.next/server/chunks/ssr/_c2e196ee._.js.map +1 -1
  227. package/web/.next/server/chunks/ssr/_ca3b7bf7._.js +1 -1
  228. package/web/.next/server/chunks/ssr/_ca3b7bf7._.js.map +1 -1
  229. package/web/.next/server/chunks/ssr/_d53224a9._.js +1 -1
  230. package/web/.next/server/chunks/ssr/_d53224a9._.js.map +1 -1
  231. package/web/.next/server/chunks/ssr/_d573dcc2._.js +1 -1
  232. package/web/.next/server/chunks/ssr/_e2671e14._.js +1 -1
  233. package/web/.next/server/chunks/ssr/_e2671e14._.js.map +1 -1
  234. package/web/.next/server/chunks/ssr/_ecd45b17._.js +1 -1
  235. package/web/.next/server/chunks/ssr/_ecd45b17._.js.map +1 -1
  236. package/web/.next/server/chunks/ssr/{_f0d45e47._.js → _f46d2018._.js} +2 -2
  237. package/web/.next/server/chunks/ssr/{_f0d45e47._.js.map → _f46d2018._.js.map} +1 -1
  238. package/web/.next/server/chunks/ssr/_f602cc9f._.js +1 -1
  239. package/web/.next/server/chunks/ssr/_f602cc9f._.js.map +1 -1
  240. package/web/.next/server/chunks/ssr/{_20a56008._.js → _f71954a5._.js} +2 -2
  241. package/web/.next/server/chunks/ssr/{_20a56008._.js.map → _f71954a5._.js.map} +1 -1
  242. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  243. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  244. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  245. package/web/.next/server/chunks/ssr/src_presentation_web_0e291f0b._.js +1 -1
  246. package/web/.next/server/chunks/ssr/src_presentation_web_0e291f0b._.js.map +1 -1
  247. package/web/.next/server/chunks/ssr/{src_presentation_web_40673f0c._.js → src_presentation_web_16c83ab4._.js} +2 -2
  248. package/web/.next/server/chunks/ssr/{src_presentation_web_40673f0c._.js.map → src_presentation_web_16c83ab4._.js.map} +1 -1
  249. package/web/.next/server/chunks/ssr/src_presentation_web_1d8d177f._.js +1 -1
  250. package/web/.next/server/chunks/ssr/src_presentation_web_1d8d177f._.js.map +1 -1
  251. package/web/.next/server/chunks/ssr/src_presentation_web_450b58fc._.js +1 -1
  252. package/web/.next/server/chunks/ssr/src_presentation_web_450b58fc._.js.map +1 -1
  253. package/web/.next/server/chunks/ssr/src_presentation_web_47727150._.js +1 -1
  254. package/web/.next/server/chunks/ssr/src_presentation_web_47727150._.js.map +1 -1
  255. package/web/.next/server/chunks/ssr/src_presentation_web_64fcfc84._.js +1 -1
  256. package/web/.next/server/chunks/ssr/src_presentation_web_64fcfc84._.js.map +1 -1
  257. package/web/.next/server/chunks/ssr/src_presentation_web_74b7bdb2._.js +1 -1
  258. package/web/.next/server/chunks/ssr/src_presentation_web_74b7bdb2._.js.map +1 -1
  259. package/web/.next/server/chunks/ssr/src_presentation_web_82aeca34._.js +1 -1
  260. package/web/.next/server/chunks/ssr/src_presentation_web_82aeca34._.js.map +1 -1
  261. package/web/.next/server/chunks/ssr/src_presentation_web_8a564d47._.js +1 -1
  262. package/web/.next/server/chunks/ssr/src_presentation_web_8a564d47._.js.map +1 -1
  263. package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js +1 -1
  264. package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js.map +1 -1
  265. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_f4f3fad9.js +1 -1
  266. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_f4f3fad9.js.map +1 -1
  267. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_agents_page_actions_d4bd4711.js +1 -1
  268. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_agents_page_actions_d4bd4711.js.map +1 -1
  269. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_onboarding_page_actions_bb695e8d.js +1 -1
  270. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_onboarding_page_actions_bb695e8d.js.map +1 -1
  271. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_page_actions_ac47e420.js +1 -1
  272. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_page_actions_ac47e420.js.map +1 -1
  273. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_projects_page_actions_c91a23a8.js +1 -1
  274. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_projects_page_actions_c91a23a8.js.map +1 -1
  275. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_63c2d912.js +1 -1
  276. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_63c2d912.js.map +1 -1
  277. package/web/.next/server/chunks/ssr/src_presentation_web_a53a3da6._.js +1 -1
  278. package/web/.next/server/chunks/ssr/src_presentation_web_a53a3da6._.js.map +1 -1
  279. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_246617fe._.js +3 -3
  280. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_adopt-local-directory_ts_75f1f28c._.js +1 -1
  281. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_adopt-local-directory_ts_75f1f28c._.js.map +1 -1
  282. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js +1 -1
  283. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-directory_ts_1209d917._.js +1 -1
  284. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-directory_ts_1209d917._.js.map +1 -1
  285. package/web/.next/server/chunks/ssr/src_presentation_web_app_features_feature-tree-page-client_tsx_34c5cbbf._.js +1 -1
  286. package/web/.next/server/chunks/ssr/src_presentation_web_b1b3c26c._.js +1 -1
  287. package/web/.next/server/chunks/ssr/src_presentation_web_b1b3c26c._.js.map +1 -1
  288. package/web/.next/server/chunks/ssr/src_presentation_web_b98a4353._.js +1 -1
  289. package/web/.next/server/chunks/ssr/src_presentation_web_b98a4353._.js.map +1 -1
  290. package/web/.next/server/chunks/ssr/src_presentation_web_c96ca051._.js +1 -1
  291. package/web/.next/server/chunks/ssr/src_presentation_web_c96ca051._.js.map +1 -1
  292. package/web/.next/server/chunks/ssr/{src_presentation_web_e812a69b._.js → src_presentation_web_cb0d2c28._.js} +2 -2
  293. package/web/.next/server/chunks/ssr/{src_presentation_web_e812a69b._.js.map → src_presentation_web_cb0d2c28._.js.map} +1 -1
  294. package/web/.next/server/chunks/ssr/src_presentation_web_components_66643378._.js +1 -1
  295. package/web/.next/server/chunks/ssr/src_presentation_web_components_66643378._.js.map +1 -1
  296. package/web/.next/server/chunks/ssr/src_presentation_web_components_agent-editor_agent-editor-tabs_tsx_d5a954b4._.js +1 -1
  297. package/web/.next/server/chunks/ssr/src_presentation_web_components_agent-editor_agent-editor-tabs_tsx_d5a954b4._.js.map +1 -1
  298. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
  299. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
  300. package/web/.next/server/chunks/ssr/src_presentation_web_d3858f16._.js +1 -1
  301. package/web/.next/server/chunks/ssr/src_presentation_web_d3858f16._.js.map +1 -1
  302. package/web/.next/server/chunks/ssr/src_presentation_web_d7f8130c._.js +1 -1
  303. package/web/.next/server/chunks/ssr/src_presentation_web_d7f8130c._.js.map +1 -1
  304. package/web/.next/server/chunks/ssr/src_presentation_web_dddd8ccd._.js +1 -1
  305. package/web/.next/server/chunks/ssr/src_presentation_web_dddd8ccd._.js.map +1 -1
  306. package/web/.next/server/chunks/ssr/src_presentation_web_e13d58b0._.js +1 -1
  307. package/web/.next/server/chunks/ssr/src_presentation_web_e13d58b0._.js.map +1 -1
  308. package/web/.next/server/chunks/ssr/src_presentation_web_ee94a9aa._.js +1 -1
  309. package/web/.next/server/chunks/ssr/src_presentation_web_ee94a9aa._.js.map +1 -1
  310. package/web/.next/server/chunks/ssr/src_presentation_web_f0fcfdff._.js +1 -1
  311. package/web/.next/server/chunks/ssr/src_presentation_web_f0fcfdff._.js.map +1 -1
  312. package/web/.next/server/chunks/ssr/src_presentation_web_f17e8516._.js +1 -1
  313. package/web/.next/server/chunks/ssr/src_presentation_web_f17e8516._.js.map +1 -1
  314. package/web/.next/server/chunks/ssr/src_presentation_web_f7180fec._.js +1 -1
  315. package/web/.next/server/chunks/ssr/src_presentation_web_f7180fec._.js.map +1 -1
  316. package/web/.next/server/pages/500.html +2 -2
  317. package/web/.next/server/server-reference-manifest.js +1 -1
  318. package/web/.next/server/server-reference-manifest.json +111 -111
  319. package/web/.next/static/chunks/{5faa828877b1e669.js → 03dda23205877d8b.js} +1 -1
  320. package/web/.next/static/chunks/{4bf4f333302e24a4.js → 054e3a5f5ff4db71.js} +1 -1
  321. package/web/.next/static/chunks/{a868014dbe1b4e42.js → 06e58041911c290b.js} +1 -1
  322. package/web/.next/static/chunks/{b5ff852fee23795d.js → 089ef5b749d79ebd.js} +1 -1
  323. package/web/.next/static/chunks/{1a093b13a9d6952e.js → 0d106010c498c198.js} +2 -2
  324. package/web/.next/static/chunks/193e5a0540757f5e.js +1 -0
  325. package/web/.next/static/chunks/{9abc3e68af98e636.js → 25111a2f2597f500.js} +1 -1
  326. package/web/.next/static/chunks/285e724d07901ef6.js +1 -0
  327. package/web/.next/static/chunks/{3c396f63ebefe875.js → 2b2bfc0465b18a7d.js} +1 -1
  328. package/web/.next/static/chunks/{6af99a08ccacdbce.js → 2b436562e69d2827.js} +1 -1
  329. package/web/.next/static/chunks/{8c96a835b3b0dc44.js → 2e3844d0ac487ac7.js} +1 -1
  330. package/web/.next/static/chunks/325859b8a9482427.js +1 -0
  331. package/web/.next/static/chunks/{2773e7b2587bc9cc.js → 44ab458ceb89d85d.js} +1 -1
  332. package/web/.next/static/chunks/4fdf36904f5421a6.js +1 -0
  333. package/web/.next/static/chunks/59004c65d552581c.js +1 -0
  334. package/web/.next/static/chunks/{0edcdc8a2dd06b7a.js → 5c4837e88a3431b8.js} +1 -1
  335. package/web/.next/static/chunks/{a131f868af7f1f7c.js → 74cdd562eb663f72.js} +1 -1
  336. package/web/.next/static/chunks/{0315591c972888a6.js → 7670d76d4ee743e6.js} +1 -1
  337. package/web/.next/static/chunks/{02d88da9fd656fcd.js → 83fc784ce05a701e.js} +1 -1
  338. package/web/.next/static/chunks/{460cedaa85c821e7.js → 8dd4fdd20b103a66.js} +1 -1
  339. package/web/.next/static/chunks/9336bdc7fc319282.js +1 -0
  340. package/web/.next/static/chunks/9d285565922b2de7.js +1 -0
  341. package/web/.next/static/chunks/{45eeca36eabbed23.js → 9f7f2a11937d87eb.js} +1 -1
  342. package/web/.next/static/chunks/{c3931fdbae836be6.js → a7c7bcfb6f7696a3.js} +1 -1
  343. package/web/.next/static/chunks/{9f7985e2a73929a2.js → a8f57d2a12849f32.js} +1 -1
  344. package/web/.next/static/chunks/{0e1c933065a1100a.js → abe98954ccdf29db.js} +1 -1
  345. package/web/.next/static/chunks/{4378715fa2b5e7de.js → b05808da85e8b34c.js} +1 -1
  346. package/web/.next/static/chunks/{b5dc7979d66caa38.js → b5f83e5e1dad23d5.js} +1 -1
  347. package/web/.next/static/chunks/{6d2074fa3453d333.js → b8293a56f257e5a2.js} +1 -1
  348. package/web/.next/static/chunks/{bc5b87e4068ba11d.js → c61c5e97c76dc733.js} +1 -1
  349. package/web/.next/static/chunks/c6b411bf31744ca7.js +1 -0
  350. package/web/.next/static/chunks/{bdaa907bf3d1d932.js → c732d6cc4c5e4343.js} +1 -1
  351. package/web/.next/static/chunks/{25a200f055ae5cba.js → d214d6a670f48d79.js} +1 -1
  352. package/web/.next/static/chunks/{6901861cb53ab483.js → d7b17a93a26e97c8.js} +1 -1
  353. package/web/.next/static/chunks/{a0325f77bbccc63d.js → d8f14fac959a6bd0.js} +1 -1
  354. package/web/.next/static/chunks/{24ea54516dc249c0.js → d98912f5b6cf4938.js} +1 -1
  355. package/web/.next/static/chunks/{21500b3fe3754296.js → df79667c16344317.js} +1 -1
  356. package/web/.next/static/chunks/{05e8df10619fb980.js → ec8f19328ad1ecd4.js} +1 -1
  357. package/web/.next/static/chunks/{e6e6ba783b2e4d14.js → f0157331838ac962.js} +1 -1
  358. package/web/.next/static/chunks/{c687ed21b9518d73.js → f757d865fae71faf.js} +1 -1
  359. package/web/.next/static/chunks/fb3cbb7f575a7128.js +1 -0
  360. package/web/.next/server/chunks/ssr/[root-of-the-server]__52ca7f88._.js +0 -3
  361. package/web/.next/static/chunks/03d7b81c2554d52f.js +0 -1
  362. package/web/.next/static/chunks/15acdaaea57bb459.js +0 -1
  363. package/web/.next/static/chunks/39fe1c1397d5483b.js +0 -1
  364. package/web/.next/static/chunks/495883829026f13f.js +0 -1
  365. package/web/.next/static/chunks/4b3a4f416a6eb1ac.js +0 -1
  366. package/web/.next/static/chunks/4b4160f36cf2a3d6.js +0 -1
  367. package/web/.next/static/chunks/7269537b2188650d.js +0 -1
  368. package/web/.next/static/chunks/b1534b2f3d814fef.js +0 -1
  369. package/web/.next/static/chunks/f6dc1ba364203bb2.js +0 -1
  370. /package/web/.next/static/{My4IQDygZ4BFTXkkKanja → 9zd-B2rWybTaAgE74IKiK}/_buildManifest.js +0 -0
  371. /package/web/.next/static/{My4IQDygZ4BFTXkkKanja → 9zd-B2rWybTaAgE74IKiK}/_clientMiddlewareManifest.json +0 -0
  372. /package/web/.next/static/{My4IQDygZ4BFTXkkKanja → 9zd-B2rWybTaAgE74IKiK}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[379020,a=>{"use strict";var b=a.i(556365),c=a.i(944592),d=a.i(872016),e=a.i(134644),f=a.i(863698),g=a.i(953170),h=a.i(144981),i=a.i(225700);let j=(0,i.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"}]]),k=(0,i.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"}]]),l=(0,i.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 m=a.i(884494),n=a.i(116126),o=a.i(867837),p=a.i(771238);let q=(0,i.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 r=a.i(407421),s=a.i(612882),t=a.i(882014),u=a.i(378352),v=a.i(483886),w=a.i(341274),x=a.i(323784),y=a.i(952313);a.i(490370);var z=a.i(224640),A=a.i(385536),B=a.i(758860),C=a.i(390920),D=a.i(118948),E=a.i(896867),F=a.i(159175),G=a.i(289111);let H=(0,G.createServerReference)("409f9fcc4f6557d27c16cea82fdf9e8ee92483a485",G.callServer,void 0,G.findSourceMapURL,"updateSettingsAction");var I=a.i(746847),J=a.i(125681),K=a.i(944447),L=a.i(87926);function M(a){return(0,b.jsx)(K.Code,{className:(0,A.cn)("h-4 w-4",a.className),...a})}function N({className:a}){return(0,b.jsx)(J.default,{src:"/icons/editors/vscode.svg",alt:"VS Code",width:24,height:24,className:(0,A.cn)("rounded-sm object-contain",a)})}function O({className:a}){return(0,b.jsx)(J.default,{src:"/icons/agents/cursor.jpeg",alt:"Cursor",width:24,height:24,className:(0,A.cn)("rounded-sm object-contain",a)})}function P({className:a}){return(0,b.jsx)(J.default,{src:"/icons/editors/windsurf.svg",alt:"Windsurf",width:24,height:24,className:(0,A.cn)("rounded-sm object-contain",a)})}function Q({className:a}){return(0,b.jsx)(J.default,{src:"/icons/editors/zed.svg",alt:"Zed",width:24,height:24,className:(0,A.cn)("rounded-sm object-contain",a)})}function R({className:a,...c}){return(0,b.jsx)(L.Rocket,{className:(0,A.cn)("h-4 w-4",a),...c})}N.displayName="VsCodeIcon",O.displayName="CursorEditorIcon",P.displayName="WindsurfIcon",Q.displayName="ZedIcon",R.displayName="AntigravityIcon";let S={vscode:N,cursor:O,windsurf:P,zed:Q,antigravity:R};var T=a.i(961781),U=a.i(867075);let V=(0,G.createServerReference)("40db4da91cbb89f7c8eeee4fce24542f73ba851067",G.callServer,void 0,G.findSourceMapURL,"connectGithubAction"),W=(0,G.createServerReference)("00f6e626208d11f7146c4c397726a5efb2673771b3",G.callServer,void 0,G.findSourceMapURL,"disconnectGithubAction"),X=(0,G.createServerReference)("005684dcd21a9d39f21663411f7a1382af4ea9c7ca",G.callServer,void 0,G.findSourceMapURL,"getGithubStatusAction");function Y(){let[a,d]=(0,c.useState)(null),[e,f]=(0,c.useState)(""),[g,h]=(0,c.useState)(!1),[i,j]=(0,c.useTransition)();return((0,c.useEffect)(()=>{let a=!1;return X().then(b=>{a||d(b)}).catch(()=>{a||d({connected:!1,connectedAt:null,updatedAt:null})}),()=>{a=!0}},[]),null===a)?(0,b.jsx)("div",{className:"text-muted-foreground py-4 text-xs","data-testid":"github-integration-loading",children:"Checking GitHub integration…"}):a.connected?(0,b.jsxs)("div",{className:"space-y-3 py-3","data-testid":"github-integration-connected",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(U.CheckCircle2,{className:"h-4 w-4 text-emerald-500"}),(0,b.jsx)("span",{className:"text-sm",children:"Connected"}),a.updatedAt?(0,b.jsxs)("span",{className:"text-muted-foreground text-[11px]",children:["· last updated ",new Date(a.updatedAt).toLocaleDateString()]}):null]}),(0,b.jsxs)("p",{className:"text-muted-foreground text-[11px] leading-relaxed",children:["Every terminal opened in shep now has ",(0,b.jsx)("code",{children:"GH_TOKEN"})," and ",(0,b.jsx)("code",{children:"GITHUB_TOKEN"})," ","set automatically. ",(0,b.jsx)("code",{children:"gh"}),", ",(0,b.jsx)("code",{children:"git push"}),", and other tools that read those env vars will authenticate as your GitHub user."]}),(0,b.jsx)("div",{className:"flex items-center gap-2",children:(0,b.jsx)(D.Button,{variant:"outline",size:"sm",onClick:function(){j(async()=>{let a=await W();a.success?(y.toast.success("GitHub disconnected"),d(await X())):y.toast.error(a.error??"Failed to disconnect")})},disabled:i,"data-testid":"github-disconnect-button",children:i?"Disconnecting…":"Disconnect"})})]}):(0,b.jsxs)("div",{className:"space-y-3 py-3","data-testid":"github-integration-disconnected",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)(B.Label,{htmlFor:"github-pat",className:"text-xs",children:"Personal Access Token"}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsxs)("div",{className:"relative flex-1",children:[(0,b.jsx)(C.Input,{id:"github-pat","data-testid":"github-pat-input",type:g?"text":"password",value:e,onChange:a=>f(a.target.value),placeholder:"github_pat_… or ghp_…",autoComplete:"off",className:"pr-9 font-mono text-xs",disabled:i}),(0,b.jsx)("button",{type:"button",onClick:()=>h(a=>!a),className:"text-muted-foreground hover:text-foreground absolute top-1/2 right-2 -translate-y-1/2","aria-label":g?"Hide token":"Show token",tabIndex:-1,children:g?(0,b.jsx)(w.EyeOff,{className:"h-3.5 w-3.5"}):(0,b.jsx)(v.Eye,{className:"h-3.5 w-3.5"})})]}),(0,b.jsx)(D.Button,{size:"sm",onClick:function(){let a=e.trim();a?j(async()=>{let b=await V(a);b.success?(y.toast.success(`Connected to GitHub${b.login?` as @${b.login}`:""}`),f(""),h(!1),d(await X())):y.toast.error(b.error??"Failed to connect to GitHub")}):y.toast.error("Paste a GitHub Personal Access Token first")},disabled:i||!e.trim(),"data-testid":"github-connect-button",children:i?"Connecting…":"Connect"})]})]}),(0,b.jsxs)("p",{className:"text-muted-foreground text-[11px] leading-relaxed",children:["Create a fine-grained PAT with ",(0,b.jsx)("code",{children:"contents: read/write"})," and"," ",(0,b.jsx)("code",{children:"pull requests: read/write"})," on the repos you want shep to access. Token is encrypted at rest and never leaves this machine."]}),(0,b.jsxs)("a",{href:"https://github.com/settings/tokens?type=beta",target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground inline-flex items-center gap-1 text-[11px] transition-colors",children:[(0,b.jsx)(p.ExternalLink,{className:"h-3 w-3"}),"Generate a token on github.com"]})]})}var Z=a.i(48972),$=a.i(559653),_=a.i(406175),aa=a.i(307420),ab=a.i(417329),ac=a.i(748939),ad=a.i(264005),ae=a.i(474432),af=a.i(666873),ag=a.i(563496),ah=["PageUp","PageDown"],ai=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],aj={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},ak="Slider",[al,am,an]=(0,ag.createCollection)(ak),[ao,ap]=(0,aa.createContextScope)(ak,[an]),[aq,ar]=ao(ak),as=c.forwardRef((a,d)=>{let{name:e,min:f=0,max:g=100,step:h=1,orientation:i="horizontal",disabled:j=!1,minStepsBetweenThumbs:k=0,defaultValue:l=[f],value:m,onValueChange:n=()=>{},onValueCommit:o=()=>{},inverted:p=!1,form:q,...r}=a,s=c.useRef(new Set),t=c.useRef(0),u="horizontal"===i,[v=[],w]=(0,ab.useControllableState)({prop:m,defaultProp:l,onChange:a=>{let b=[...s.current];b[t.current]?.focus(),n(a)}}),x=c.useRef(v);function y(a,b,{commit:c}={commit:!1}){let d,e=(String(h).split(".")[1]||"").length,i=Math.round((Math.round((a-f)/h)*h+f)*(d=Math.pow(10,e)))/d,j=(0,Z.clamp)(i,[f,g]);w((a=[])=>{let d=function(a=[],b,c){let d=[...a];return d[c]=b,d.sort((a,b)=>a-b)}(a,j,b);if(!function(a,b){if(b>0)return Math.min(...a.slice(0,-1).map((b,c)=>a[c+1]-b))>=b;return!0}(d,k*h))return a;{t.current=d.indexOf(j);let b=String(d)!==String(a);return b&&c&&o(d),b?d:a}})}return(0,b.jsx)(aq,{scope:a.__scopeSlider,name:e,disabled:j,min:f,max:g,valueIndexToChangeRef:t,thumbs:s.current,values:v,orientation:i,form:q,children:(0,b.jsx)(al.Provider,{scope:a.__scopeSlider,children:(0,b.jsx)(al.Slot,{scope:a.__scopeSlider,children:(0,b.jsx)(u?av:aw,{"aria-disabled":j,"data-disabled":j?"":void 0,...r,ref:d,onPointerDown:(0,$.composeEventHandlers)(r.onPointerDown,()=>{j||(x.current=v)}),min:f,max:g,inverted:p,onSlideStart:j?void 0:function(a){let b=function(a,b){if(1===a.length)return 0;let c=a.map(a=>Math.abs(a-b)),d=Math.min(...c);return c.indexOf(d)}(v,a);y(a,b)},onSlideMove:j?void 0:function(a){y(a,t.current)},onSlideEnd:j?void 0:function(){let a=x.current[t.current];v[t.current]!==a&&o(v)},onHomeKeyDown:()=>!j&&y(f,0,{commit:!0}),onEndKeyDown:()=>!j&&y(g,v.length-1,{commit:!0}),onStepKeyDown:({event:a,direction:b})=>{if(!j){let c=ah.includes(a.key)||a.shiftKey&&ai.includes(a.key),d=t.current;y(v[d]+h*(c?10:1)*b,d,{commit:!0})}}})})})})});as.displayName=ak;var[at,au]=ao(ak,{startEdge:"left",endEdge:"right",size:"width",direction:1}),av=c.forwardRef((a,d)=>{let{min:e,max:f,dir:g,inverted:h,onSlideStart:i,onSlideMove:j,onSlideEnd:k,onStepKeyDown:l,...m}=a,[n,o]=c.useState(null),p=(0,_.useComposedRefs)(d,a=>o(a)),q=c.useRef(void 0),r=(0,ac.useDirection)(g),s="ltr"===r,t=s&&!h||!s&&h;function u(a){let b=q.current||n.getBoundingClientRect(),c=aH([0,b.width],t?[e,f]:[f,e]);return q.current=b,c(a-b.left)}return(0,b.jsx)(at,{scope:a.__scopeSlider,startEdge:t?"left":"right",endEdge:t?"right":"left",direction:t?1:-1,size:"width",children:(0,b.jsx)(ax,{dir:r,"data-orientation":"horizontal",...m,ref:p,style:{...m.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:a=>{let b=u(a.clientX);i?.(b)},onSlideMove:a=>{let b=u(a.clientX);j?.(b)},onSlideEnd:()=>{q.current=void 0,k?.()},onStepKeyDown:a=>{let b=aj[t?"from-left":"from-right"].includes(a.key);l?.({event:a,direction:b?-1:1})}})})}),aw=c.forwardRef((a,d)=>{let{min:e,max:f,inverted:g,onSlideStart:h,onSlideMove:i,onSlideEnd:j,onStepKeyDown:k,...l}=a,m=c.useRef(null),n=(0,_.useComposedRefs)(d,m),o=c.useRef(void 0),p=!g;function q(a){let b=o.current||m.current.getBoundingClientRect(),c=aH([0,b.height],p?[f,e]:[e,f]);return o.current=b,c(a-b.top)}return(0,b.jsx)(at,{scope:a.__scopeSlider,startEdge:p?"bottom":"top",endEdge:p?"top":"bottom",size:"height",direction:p?1:-1,children:(0,b.jsx)(ax,{"data-orientation":"vertical",...l,ref:n,style:{...l.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:a=>{let b=q(a.clientY);h?.(b)},onSlideMove:a=>{let b=q(a.clientY);i?.(b)},onSlideEnd:()=>{o.current=void 0,j?.()},onStepKeyDown:a=>{let b=aj[p?"from-bottom":"from-top"].includes(a.key);k?.({event:a,direction:b?-1:1})}})})}),ax=c.forwardRef((a,c)=>{let{__scopeSlider:d,onSlideStart:e,onSlideMove:f,onSlideEnd:g,onHomeKeyDown:h,onEndKeyDown:i,onStepKeyDown:j,...k}=a,l=ar(ak,d);return(0,b.jsx)(af.Primitive.span,{...k,ref:c,onKeyDown:(0,$.composeEventHandlers)(a.onKeyDown,a=>{"Home"===a.key?(h(a),a.preventDefault()):"End"===a.key?(i(a),a.preventDefault()):ah.concat(ai).includes(a.key)&&(j(a),a.preventDefault())}),onPointerDown:(0,$.composeEventHandlers)(a.onPointerDown,a=>{let b=a.target;b.setPointerCapture(a.pointerId),a.preventDefault(),l.thumbs.has(b)?b.focus():e(a)}),onPointerMove:(0,$.composeEventHandlers)(a.onPointerMove,a=>{a.target.hasPointerCapture(a.pointerId)&&f(a)}),onPointerUp:(0,$.composeEventHandlers)(a.onPointerUp,a=>{let b=a.target;b.hasPointerCapture(a.pointerId)&&(b.releasePointerCapture(a.pointerId),g(a))})})}),ay="SliderTrack",az=c.forwardRef((a,c)=>{let{__scopeSlider:d,...e}=a,f=ar(ay,d);return(0,b.jsx)(af.Primitive.span,{"data-disabled":f.disabled?"":void 0,"data-orientation":f.orientation,...e,ref:c})});az.displayName=ay;var aA="SliderRange",aB=c.forwardRef((a,d)=>{let{__scopeSlider:e,...f}=a,g=ar(aA,e),h=au(aA,e),i=c.useRef(null),j=(0,_.useComposedRefs)(d,i),k=g.values.length,l=g.values.map(a=>aG(a,g.min,g.max)),m=k>1?Math.min(...l):0,n=100-Math.max(...l);return(0,b.jsx)(af.Primitive.span,{"data-orientation":g.orientation,"data-disabled":g.disabled?"":void 0,...f,ref:j,style:{...a.style,[h.startEdge]:m+"%",[h.endEdge]:n+"%"}})});aB.displayName=aA;var aC="SliderThumb",aD=c.forwardRef((a,d)=>{let e=am(a.__scopeSlider),[f,g]=c.useState(null),h=(0,_.useComposedRefs)(d,a=>g(a)),i=c.useMemo(()=>f?e().findIndex(a=>a.ref.current===f):-1,[e,f]);return(0,b.jsx)(aE,{...a,ref:h,index:i})}),aE=c.forwardRef((a,d)=>{var e,f,g,h,i;let j,k,{__scopeSlider:l,index:m,name:n,...o}=a,p=ar(aC,l),q=au(aC,l),[r,s]=c.useState(null),t=(0,_.useComposedRefs)(d,a=>s(a)),u=!r||p.form||!!r.closest("form"),v=(0,ae.useSize)(r),w=p.values[m],x=void 0===w?0:aG(w,p.min,p.max),y=(e=m,(f=p.values.length)>2?`Value ${e+1} of ${f}`:2===f?["Minimum","Maximum"][e]:void 0),z=v?.[q.size],A=z?(g=z,h=x,i=q.direction,k=aH([0,50],[0,j=g/2]),(j-k(h)*i)*i):0;return c.useEffect(()=>{if(r)return p.thumbs.add(r),()=>{p.thumbs.delete(r)}},[r,p.thumbs]),(0,b.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[q.startEdge]:`calc(${x}% + ${A}px)`},children:[(0,b.jsx)(al.ItemSlot,{scope:a.__scopeSlider,children:(0,b.jsx)(af.Primitive.span,{role:"slider","aria-label":a["aria-label"]||y,"aria-valuemin":p.min,"aria-valuenow":w,"aria-valuemax":p.max,"aria-orientation":p.orientation,"data-orientation":p.orientation,"data-disabled":p.disabled?"":void 0,tabIndex:p.disabled?void 0:0,...o,ref:t,style:void 0===w?{display:"none"}:a.style,onFocus:(0,$.composeEventHandlers)(a.onFocus,()=>{p.valueIndexToChangeRef.current=m})})}),u&&(0,b.jsx)(aF,{name:n??(p.name?p.name+(p.values.length>1?"[]":""):void 0),form:p.form,value:w},m)]})});aD.displayName=aC;var aF=c.forwardRef(({__scopeSlider:a,value:d,...e},f)=>{let g=c.useRef(null),h=(0,_.useComposedRefs)(g,f),i=(0,ad.usePrevious)(d);return c.useEffect(()=>{let a=g.current;if(!a)return;let b=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(i!==d&&b){let c=new Event("input",{bubbles:!0});b.call(a,d),a.dispatchEvent(c)}},[i,d]),(0,b.jsx)(af.Primitive.input,{style:{display:"none"},...e,ref:h,defaultValue:d})});function aG(a,b,c){return(0,Z.clamp)(100/(c-b)*(a-b),[0,100])}function aH(a,b){return c=>{if(a[0]===a[1]||b[0]===b[1])return b[0];let d=(b[1]-b[0])/(a[1]-a[0]);return b[0]+d*(c-a[0])}}aF.displayName="RadioBubbleInput",a.s(["Range",()=>aB,"Root",()=>as,"Slider",()=>as,"SliderRange",()=>aB,"SliderThumb",()=>aD,"SliderTrack",()=>az,"Thumb",()=>aD,"Track",()=>az,"createSliderScope",()=>ap],161569);var aI=a.i(161569),aI=aI;function aJ({className:a,defaultValue:d,value:e,min:f=0,max:g=100,...h}){let i=c.useMemo(()=>Array.isArray(e)?e:Array.isArray(d)?d:[f,g],[e,d,f,g]);return(0,b.jsxs)(aI.Root,{"data-slot":"slider",defaultValue:d,value:e,min:f,max:g,className:(0,A.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",a),...h,children:[(0,b.jsx)(aI.Track,{"data-slot":"slider-track",className:(0,A.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,b.jsx)(aI.Range,{"data-slot":"slider-range",className:(0,A.cn)("bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:i.length},(a,c)=>(0,b.jsx)(aI.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"},c))]})}let aK=[60,120,300,600,900,1800,2700,3600,7200,10800,14400,21600,28800,43200,86400],aL=aK.length-1;function aM(a){let b=0,c=Math.abs(a-aK[0]);for(let d=1;d<aK.length;d++){let e=Math.abs(a-aK[d]);e<c&&(c=e,b=d)}return b}function aN({id:a,testId:d,value:e,onChange:f,onBlur:g,defaultSeconds:h=1800}){var i;let j,k,l=(""===e?h:parseInt(e,10))||h,[m,n]=(0,c.useState)(()=>aM(l)),o=aM(l);o!==m&&aK[m]!==l&&n(o);let p=(0,c.useCallback)(([a])=>{n(a),f(String(aK[a]))},[f]);return(0,b.jsxs)("div",{className:"flex w-55 items-center gap-2",children:[(0,b.jsx)(aJ,{id:a,"data-testid":d,min:0,max:aL,step:1,value:[m],onValueChange:p,onValueCommit:()=>g(),className:"min-w-0 flex-1"}),(0,b.jsx)("span",{className:"text-muted-foreground shrink-0 text-end text-xs tabular-nums",children:(j=Math.floor((i=aK[m])/3600),k=Math.round(i%3600/60),0===j?`${k}m`:0===k?`${j}h`:`${j}h ${k}m`)})]})}let aO=[{value:I.Language.English,nativeName:"English"},{value:I.Language.Ukrainian,nativeName:"Українська"},{value:I.Language.Russian,nativeName:"Русский"},{value:I.Language.Portuguese,nativeName:"Português"},{value:I.Language.Spanish,nativeName:"Español"},{value:I.Language.Arabic,nativeName:"العربية"},{value:I.Language.Hebrew,nativeName:"עברית"},{value:I.Language.French,nativeName:"Français"},{value:I.Language.German,nativeName:"Deutsch"}],aP=[{value:I.EditorType.VsCode,label:"VS Code"},{value:I.EditorType.Cursor,label:"Cursor"},{value:I.EditorType.Windsurf,label:"Windsurf"},{value:I.EditorType.Zed,label:"Zed"},{value:I.EditorType.Antigravity,label:"Antigravity"}],aQ=[{value:"bash",label:"Bash"},{value:"zsh",label:"Zsh"},{value:"fish",label:"Fish"}],aR=new Set([I.AgentType.CopilotCli]),aS=new Set([I.AgentType.OpenRouter,I.AgentType.TogetherAi]),aT=[{value:I.AgentAuthMethod.Session,label:"Session"},{value:I.AgentAuthMethod.Token,label:"Token"}],aU=[{id:"language",labelKey:"settings.sections.language",icon:m.Globe},{id:"agent",labelKey:"settings.sections.agent",icon:e.Bot},{id:"environment",labelKey:"settings.sections.environment",icon:f.Terminal},{id:"workflow",labelKey:"settings.sections.workflow",icon:g.GitBranch},{id:"ci",labelKey:"settings.sections.ci",icon:h.Activity},{id:"stage-timeouts",labelKey:"settings.sections.timeouts",icon:r.Timer},{id:"notifications",labelKey:"settings.sections.notifications",icon:j},{id:"feature-flags",labelKey:"settings.sections.flags",icon:k},{id:"interactive-agent",labelKey:"settings.sections.chat",icon:s.MessageSquare},{id:"home-page",labelKey:"settings.sections.homePage",icon:u.Home},{id:"fab-layout",labelKey:"settings.sections.layout",icon:t.LayoutGrid},{id:"integrations",labelKey:"settings.sections.integrations",icon:x.Github},{id:"database",labelKey:"settings.sections.database",icon:l}];function aV({label:a,description:c,htmlFor:d,children:e}){return(0,b.jsxs)("div",{className:"flex items-center justify-between gap-4 border-b py-2.5 last:border-b-0",children:[(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)(B.Label,{htmlFor:d,className:"cursor-pointer text-sm font-normal whitespace-nowrap",children:a}),c?(0,b.jsx)("p",{className:"text-muted-foreground text-[11px] leading-tight",children:c}):null]}),(0,b.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:e})]})}function aW({label:a,description:c,id:d,testId:e,checked:f,onChange:g,disabled:h}){return(0,b.jsx)(aV,{label:a,description:c,htmlFor:d,children:(0,b.jsx)(E.Switch,{id:d,"data-testid":e,checked:f,onCheckedChange:g,disabled:h,className:(0,A.cn)("cursor-pointer",h&&"cursor-not-allowed opacity-50")})})}function aX({icon:a,title:c,description:d,badge:e,testId:f,children:g}){return(0,b.jsxs)("div",{className:"bg-background rounded-lg border","data-testid":f,children:[(0,b.jsxs)("div",{className:"bg-muted/30 border-b px-4 py-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(a,{className:"text-muted-foreground h-3.5 w-3.5"}),(0,b.jsx)("h2",{className:"text-sm font-semibold",children:c}),e?(0,b.jsx)("span",{className:"bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-[9px] font-medium tracking-wider uppercase",children:e}):null]}),(0,b.jsx)("p",{className:"text-muted-foreground mt-0.5 text-[11px]",children:d})]}),(0,b.jsx)("div",{className:"px-4",children:g})]})}function aY({id:a,testId:c,value:d,onChange:e,onBlur:f,placeholder:g,min:h=1,max:i,step:j=1,suffix:k}){let{t:l}=(0,z.useTranslation)("web"),m=""===d?void 0:parseInt(d,10);return(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center overflow-hidden rounded-md border",children:[(0,b.jsx)("button",{type:"button",onClick:()=>{e(String(Math.max(h,(m??parseInt(g,10))-j)))},onMouseUp:f,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":l("common.decrease"),children:(0,b.jsx)(n.Minus,{className:"h-3 w-3"})}),(0,b.jsx)("input",{id:a,"data-testid":c,type:"text",inputMode:"numeric",pattern:"[0-9]*",value:d,placeholder:g,onChange:a=>{e(a.target.value.replace(/[^0-9]/g,""))},onBlur:f,className:"h-8 w-14 bg-transparent text-center text-xs outline-none"}),(0,b.jsx)("button",{type:"button",onClick:()=>{let a;a=m??parseInt(g,10),e(String(null!=i?Math.min(i,a+j):a+j))},onMouseUp:f,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":l("common.increase"),children:(0,b.jsx)(o.Plus,{className:"h-3 w-3"})})]}),k?(0,b.jsx)("span",{className:"text-muted-foreground text-[11px]",children:k}):null]})}function aZ({children:a}){return(0,b.jsx)("div",{className:"border-b pt-3 pb-1",children:(0,b.jsx)("span",{className:"text-muted-foreground text-[10px] font-semibold tracking-wider uppercase",children:a})})}function a$({children:a,links:c}){return(0,b.jsxs)("div",{className:"hidden pt-2 lg:block",children:[(0,b.jsx)("p",{className:"text-muted-foreground/70 text-[11px] leading-relaxed",children:a}),null!=c&&c.length>0?(0,b.jsx)("div",{className:"mt-2 flex flex-col gap-1",children:c.map(a=>(0,b.jsxs)("a",{href:a.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,b.jsx)(p.ExternalLink,{className:"h-2.5 w-2.5"}),a.label]},a.href))}):null]})}function a_({settings:a,shepHome:i,dbFileSize:n,availableTerminals:o}){let{t:p,i18n:B}=(0,z.useTranslation)("web"),{showSaving:E,showSaved:G,save:J}=function(){let{t:a}=(0,z.useTranslation)("web"),[b,d]=(0,c.useTransition)(),[e,f]=(0,c.useState)(!1),[g,h]=(0,c.useState)(!1),i=(0,c.useRef)(null),j=(0,c.useRef)(!1);return(0,c.useEffect)(()=>{b&&!e&&(f(!0),j.current=!1,i.current=setTimeout(()=>{i.current=null,j.current&&(f(!1),h(!0),setTimeout(()=>h(!1),2e3))},350)),!b&&e&&(j.current=!0,i.current||(f(!1),h(!0),setTimeout(()=>h(!1),2e3)))},[b,e]),{showSaving:e,showSaved:g,save:(0,c.useCallback)(b=>{d(async()=>{let c=await H(b);c.success||y.toast.error(c.error??a("settings.failedToSave"))})},[d,a])}}(),K=a.featureFlags??{envDeploy:!1,debug:!1,reactFileManager:!1,projects:!1,codeReview:!1,collaboration:!1},[L,N]=(0,c.useState)(a.user?.preferredLanguage??I.Language.English),[O,P]=(0,c.useState)(a.agent.type),[Q,R]=(0,c.useState)(a.agent.authMethod),[U,V]=(0,c.useState)(a.agent.token??""),[W,X]=(0,c.useState)(!1),[Z,$]=(0,c.useState)(a.environment.defaultEditor),[_,aa]=(0,c.useState)(a.environment.shellPreference),[ab,ac]=(0,c.useState)(a.environment.terminalPreference??I.TerminalType.System),ad=o?o.filter(a=>a.available):[{id:I.TerminalType.System,name:p("settings.environment.systemTerminal"),available:!0}],[ae,af]=(0,c.useState)(a.workflow.openPrOnImplementationComplete),[ag,ah]=(0,c.useState)(a.workflow.approvalGateDefaults.pushOnImplementationComplete),[ai,aj]=(0,c.useState)(a.workflow.approvalGateDefaults.allowPrd),[ak,al]=(0,c.useState)(a.workflow.approvalGateDefaults.allowPlan),[am,an]=(0,c.useState)(a.workflow.approvalGateDefaults.allowMerge),[ao,ap]=(0,c.useState)(a.workflow.enableEvidence),[aq,ar]=(0,c.useState)(a.workflow.commitEvidence),[as,at]=(0,c.useState)(!1!==a.workflow.ciWatchEnabled),[au,av]=(0,c.useState)(!1!==a.workflow.hideCiStatus),[aw,ax]=(0,c.useState)(!1!==a.workflow.defaultFastMode),[ay,az]=(0,c.useState)((a.workflow.autoArchiveDelayMinutes??10)>0),[aA,aB]=(0,c.useState)(String(a.workflow.autoArchiveDelayMinutes??10)),[aC,aD]=(0,c.useState)(null!=a.workflow.ciMaxFixAttempts?String(a.workflow.ciMaxFixAttempts):""),[aE,aF]=(0,c.useState)(null!=a.workflow.ciWatchTimeoutMs?String(Math.round(a.workflow.ciWatchTimeoutMs/1e3)):""),[aG,aH]=(0,c.useState)(null!=a.workflow.ciLogMaxChars?String(a.workflow.ciLogMaxChars):""),[aI,aJ]=(0,c.useState)(null!=a.workflow.ciWatchPollIntervalSeconds?String(a.workflow.ciWatchPollIntervalSeconds):""),aK=a.workflow.stageTimeouts,[aL,aM]=(0,c.useState)(String(Math.round((aK?.analyzeMs??18e5)/1e3))),[a_,a0]=(0,c.useState)(String(Math.round((aK?.requirementsMs??18e5)/1e3))),[a1,a2]=(0,c.useState)(String(Math.round((aK?.researchMs??18e5)/1e3))),[a3,a4]=(0,c.useState)(String(Math.round((aK?.planMs??18e5)/1e3))),[a5,a6]=(0,c.useState)(String(Math.round((aK?.implementMs??18e5)/1e3))),[a7,a8]=(0,c.useState)(String(Math.round((aK?.fastImplementMs??18e5)/1e3))),[a9,ba]=(0,c.useState)(String(Math.round((aK?.mergeMs??18e5)/1e3))),bb=a.workflow.analyzeRepoTimeouts,[bc,bd]=(0,c.useState)(String(Math.round((bb?.analyzeMs??6e5)/1e3))),be=a.interactiveAgent??{enabled:!0,autoTimeoutMinutes:15,maxConcurrentSessions:3},[bf,bg]=(0,c.useState)(be.enabled),[bh,bi]=(0,c.useState)(String(be.autoTimeoutMinutes)),[bj,bk]=(0,c.useState)(String(be.maxConcurrentSessions)),[bl,bm]=(0,c.useState)(a.defaultHomePage??I.DefaultHomePage.ControlCenter),bn=a.fabLayout??{swapPosition:!1},[bo,bp]=(0,c.useState)(bn.swapPosition),[bq,br]=(0,c.useState)(a.notifications.inApp.enabled),[bs,bt]=(0,c.useState)({...a.notifications.events}),[bu,bv]=(0,c.useState)({...K}),bw=null!=a.workflow.ciMaxFixAttempts?String(a.workflow.ciMaxFixAttempts):"",bx=null!=a.workflow.ciWatchTimeoutMs?String(Math.round(a.workflow.ciWatchTimeoutMs/1e3)):"",by=null!=a.workflow.ciLogMaxChars?String(a.workflow.ciLogMaxChars):"",bz=null!=a.workflow.ciWatchPollIntervalSeconds?String(a.workflow.ciWatchPollIntervalSeconds):"",bA=aK?.analyzeMs!=null?String(Math.round(aK.analyzeMs/1e3)):"",bB=aK?.requirementsMs!=null?String(Math.round(aK.requirementsMs/1e3)):"",bC=aK?.researchMs!=null?String(Math.round(aK.researchMs/1e3)):"",bD=aK?.planMs!=null?String(Math.round(aK.planMs/1e3)):"",bE=aK?.implementMs!=null?String(Math.round(aK.implementMs/1e3)):"",bF=aK?.fastImplementMs!=null?String(Math.round(aK.fastImplementMs/1e3)):"",bG=aK?.mergeMs!=null?String(Math.round(aK.mergeMs/1e3)):"",bH=bb?.analyzeMs!=null?String(Math.round(bb.analyzeMs/1e3)):"";function bI(a){if(""===a)return;let b=parseInt(a,10);return Number.isNaN(b)||b<=0?void 0:b}function bJ(a){if(void 0===a)return;let b=bI(a);return null!=b?1e3*b:void 0}function bK(a={}){let b=bI(a.ciTimeout??aE),c=a.autoArchiveEnabled??ay,d=parseInt(a.autoArchiveDelay??aA,10);return{workflow:{openPrOnImplementationComplete:a.openPr??ae,approvalGateDefaults:{pushOnImplementationComplete:a.pushOnComplete??ag,allowPrd:a.allowPrd??ai,allowPlan:a.allowPlan??ak,allowMerge:a.allowMerge??am},enableEvidence:a.enableEvidence??ao,commitEvidence:a.commitEvidence??aq,ciWatchEnabled:a.ciWatchEnabled??as,hideCiStatus:a.hideCiStatus??au,defaultFastMode:a.defaultFastMode??aw,autoArchiveDelayMinutes:c?Number.isNaN(d)||d<1?10:d:0,ciMaxFixAttempts:bI(a.ciMaxFix??aC),ciWatchTimeoutMs:null!=b?1e3*b:void 0,ciLogMaxChars:bI(a.ciLogMax??aG),ciWatchPollIntervalSeconds:bI(a.ciPollInterval??aI),stageTimeouts:{analyzeMs:bJ(a.analyzeTimeout??aL),requirementsMs:bJ(a.requirementsTimeout??a_),researchMs:bJ(a.researchTimeout??a1),planMs:bJ(a.planTimeout??a3),implementMs:bJ(a.implementTimeout??a5),fastImplementMs:bJ(a.fastImplementTimeout??a7),mergeMs:bJ(a.mergeTimeout??a9)},analyzeRepoTimeouts:{analyzeMs:bJ(a.analyzeRepoTimeout??bc)}}}}function bL(a={}){return{notifications:{inApp:{enabled:a.inApp??bq},events:a.events??bs}}}let[bM,bN]=(0,c.useState)("agent");(0,c.useEffect)(()=>{let a=aU.map(a=>document.getElementById(`section-${a.id}`)).filter(Boolean);if(0===a.length)return;let b=new IntersectionObserver(a=>{for(let b of a)b.isIntersecting&&bN(b.target.id.replace("section-",""))},{rootMargin:"-65px 0px -60% 0px",threshold:0});for(let c of a)b.observe(c);return()=>b.disconnect()},[]);let bO=(0,c.useCallback)(a=>{let b=document.getElementById(`section-${a}`);b&&(b.scrollIntoView({behavior:"smooth",block:"start"}),b.style.animation="none",b.offsetHeight,b.style.animation="section-flash 1s ease-out")},[]);return(0,b.jsxs)("div",{"data-testid":"settings-page-client",className:"max-w-5xl",children:[(0,b.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,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(q,{className:"text-muted-foreground h-4 w-4"}),(0,b.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:p("settings.title")}),(0,b.jsxs)("span",{className:"relative h-4 w-16",children:[(0,b.jsx)("span",{className:(0,A.cn)("text-muted-foreground absolute inset-0 flex items-center text-xs transition-opacity duration-300",E?"opacity-100":"opacity-0"),children:p("settings.saving")}),(0,b.jsxs)("span",{className:(0,A.cn)("absolute inset-0 flex items-center gap-1 text-xs text-green-600 transition-opacity duration-300",G&&!E?"opacity-100":"opacity-0"),children:[(0,b.jsx)(d.Check,{className:"h-3 w-3"}),p("settings.saved")]})]}),(0,b.jsx)("nav",{className:"ml-auto flex items-center gap-0.5",children:aU.map(a=>{let c=a.icon,d=bM===a.id;return(0,b.jsxs)("button",{type:"button",onClick:()=>bO(a.id),className:(0,A.cn)("flex cursor-pointer items-center gap-1 rounded-md px-1.5 py-1 text-[11px] transition-all",d?"bg-accent text-foreground font-medium":"text-muted-foreground/60 hover:text-foreground hover:bg-accent/50"),children:[(0,b.jsx)(c,{className:"h-3 w-3"}),(0,b.jsx)("span",{className:"hidden sm:inline",children:p(a.labelKey)})]},a.id)})})]})}),(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsx)("div",{id:"section-language",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:(0,b.jsx)(aX,{icon:m.Globe,title:p("settings.language.title"),description:p("settings.language.description"),testId:"language-settings-section",children:(0,b.jsx)(aV,{label:p("settings.language.label"),htmlFor:"display-language",children:(0,b.jsxs)(F.Select,{value:L,onValueChange:function(a){N(a),B.changeLanguage(a);let b="ar"===a||"he"===a?"rtl":"ltr";document.documentElement.lang=a,document.documentElement.dir=b,J({user:{preferredLanguage:a}})},children:[(0,b.jsx)(F.SelectTrigger,{id:"display-language","data-testid":"language-select",className:"w-44",children:(0,b.jsx)(F.SelectValue,{placeholder:p("settings.language.placeholder")})}),(0,b.jsx)(F.SelectContent,{children:aO.map(a=>(0,b.jsx)(F.SelectItem,{value:a.value,children:a.nativeName},a.value))})]})})})}),(0,b.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,b.jsxs)(aX,{icon:e.Bot,title:p("settings.agent.sectionTitle"),description:p("settings.agent.sectionDescription"),testId:"agent-settings-section",children:[(0,b.jsx)(aV,{label:p("settings.agent.agentAndModel"),description:p("settings.agent.agentAndModelDescription"),htmlFor:"agent-model-picker",children:(0,b.jsx)(T.AgentModelPicker,{initialAgentType:O,initialModel:a.models.default,mode:"settings",onAgentModelChange:a=>{P(a),aS.has(a)&&Q!==I.AgentAuthMethod.Token?(R(I.AgentAuthMethod.Token),J({agent:{type:a,authMethod:I.AgentAuthMethod.Token}})):aR.has(a)&&Q!==I.AgentAuthMethod.Session&&(R(I.AgentAuthMethod.Session),J({agent:{type:a,authMethod:I.AgentAuthMethod.Session}}))},className:"w-55"})}),(0,b.jsx)(aV,{label:"Auth Method",description:"How this agent authenticates",htmlFor:"agent-auth-method",children:(0,b.jsxs)(F.Select,{value:Q,onValueChange:a=>{R(a);let b={type:O,authMethod:a};a===I.AgentAuthMethod.Token&&(b.token=U),J({agent:b})},disabled:aR.has(O)||aS.has(O),children:[(0,b.jsx)(F.SelectTrigger,{id:"agent-auth-method","data-testid":"agent-auth-method-select",className:"w-55 cursor-pointer text-xs",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:aT.filter(a=>aR.has(O)?a.value===I.AgentAuthMethod.Session:!aS.has(O)||a.value===I.AgentAuthMethod.Token).map(a=>(0,b.jsx)(F.SelectItem,{value:a.value,children:a.label},a.value))})]})}),aS.has(O)&&(0,b.jsx)("div",{className:"border-b py-2.5 last:border-b-0",children:(0,b.jsx)("p",{className:"text-muted-foreground text-[11px] leading-tight",children:"This provider requires an API key for authentication. No CLI binary needed."})}),Q===I.AgentAuthMethod.Token&&(0,b.jsx)(aV,{label:"API Token",description:"Saves on blur",htmlFor:"agent-token",children:(0,b.jsxs)("div",{className:"relative w-55",children:[(0,b.jsx)(C.Input,{id:"agent-token","data-testid":"agent-token-input",type:W?"text":"password",value:U,onChange:a=>V(a.target.value),onBlur:()=>{U!==(a.agent.token??"")&&J({agent:{type:O,authMethod:Q,token:U}})},placeholder:"Enter your API token",className:"pe-10 text-xs"}),(0,b.jsx)(D.Button,{type:"button",variant:"ghost",size:"sm",className:"absolute top-0 right-0 h-full px-3 hover:bg-transparent",onClick:()=>X(!W),"data-testid":"toggle-token-visibility","aria-label":W?"Hide token":"Show token",children:W?(0,b.jsx)(w.EyeOff,{className:"h-3.5 w-3.5"}):(0,b.jsx)(v.Eye,{className:"h-3.5 w-3.5"})})]})})]}),(0,b.jsx)(a$,{links:[{label:p("settings.agent.links.agentSystem"),href:"https://github.com/shep-ai/shep/blob/main/docs/architecture/agent-system.md"},{label:p("settings.agent.links.addingAgents"),href:"https://github.com/shep-ai/shep/blob/main/docs/development/adding-agents.md"},{label:p("settings.agent.links.configurationGuide"),href:"https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md"}],children:p("settings.agent.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:f.Terminal,title:p("settings.environment.sectionTitle"),description:p("settings.environment.sectionDescription"),testId:"environment-settings-section",children:[(0,b.jsx)(aV,{label:p("settings.environment.defaultEditor"),description:p("settings.environment.defaultEditorDescription"),htmlFor:"default-editor",children:(0,b.jsxs)(F.Select,{value:Z,onValueChange:a=>{$(a),J({environment:{defaultEditor:a,shellPreference:_,terminalPreference:ab}})},children:[(0,b.jsx)(F.SelectTrigger,{id:"default-editor","data-testid":"editor-select",className:"w-55 cursor-pointer text-xs",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:aP.map(a=>{var c;let d=(c=a.value)&&c in S?S[c]:M;return(0,b.jsx)(F.SelectItem,{value:a.value,children:(0,b.jsxs)("span",{className:"flex items-center gap-2 text-xs",children:[(0,b.jsx)(d,{className:"h-4 w-4 shrink-0"}),a.label]})},a.value)})})]})}),(0,b.jsx)(aV,{label:p("settings.environment.shell"),description:p("settings.environment.shellDescription"),htmlFor:"shell-preference",children:(0,b.jsxs)(F.Select,{value:_,onValueChange:a=>{aa(a),J({environment:{defaultEditor:Z,shellPreference:a,terminalPreference:ab}})},children:[(0,b.jsx)(F.SelectTrigger,{id:"shell-preference","data-testid":"shell-select",className:"w-55 cursor-pointer text-xs",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:aQ.map(a=>(0,b.jsx)(F.SelectItem,{value:a.value,children:a.label},a.value))})]})}),(0,b.jsx)(aV,{label:p("settings.environment.terminal"),description:p("settings.environment.terminalDescription"),htmlFor:"terminal-preference",children:(0,b.jsxs)(F.Select,{value:ab,onValueChange:a=>{ac(a),J({environment:{defaultEditor:Z,shellPreference:_,terminalPreference:a}})},children:[(0,b.jsx)(F.SelectTrigger,{id:"terminal-preference","data-testid":"terminal-select",className:"w-55 cursor-pointer text-xs",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:ad.map(a=>(0,b.jsx)(F.SelectItem,{value:a.id,children:a.name},a.id))})]})})]}),(0,b.jsx)(a$,{links:[{label:p("settings.environment.links.configurationGuide"),href:"https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md"}],children:p("settings.environment.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:g.GitBranch,title:p("settings.workflow.title"),description:p("settings.workflow.sectionDescription"),testId:"workflow-settings-section",children:[(0,b.jsx)(aW,{label:p("settings.workflow.defaultFastMode"),description:p("settings.workflow.defaultFastModeDescription"),id:"default-fast-mode",testId:"switch-default-fast-mode",checked:aw,onChange:a=>{ax(a),J(bK({defaultFastMode:a}))}}),(0,b.jsx)(aZ,{children:p("settings.workflow.subsections.approve")}),(0,b.jsx)(aW,{label:p("settings.workflow.autoApprovePrd"),description:p("settings.workflow.autoApprovePrdDescription"),id:"allow-prd",testId:"switch-allow-prd",checked:ai,onChange:a=>{aj(a),J(bK({allowPrd:a}))}}),(0,b.jsx)(aW,{label:p("settings.workflow.autoApprovePlan"),description:p("settings.workflow.autoApprovePlanDescription"),id:"allow-plan",testId:"switch-allow-plan",checked:ak,onChange:a=>{al(a),J(bK({allowPlan:a}))}}),(0,b.jsx)(aW,{label:p("settings.workflow.autoApproveMerge"),description:p("settings.workflow.autoApproveMergeDescription"),id:"allow-merge",testId:"switch-allow-merge",checked:am,onChange:a=>{an(a),J(bK({allowMerge:a}))}}),(0,b.jsx)(aZ,{children:p("settings.workflow.subsections.evidence")}),(0,b.jsx)(aW,{label:p("settings.workflow.collectEvidence"),description:p("settings.workflow.collectEvidenceDescription"),id:"enable-evidence",testId:"switch-enable-evidence",checked:ao,onChange:a=>{ap(a),a?J(bK({enableEvidence:a})):(ar(!1),J(bK({enableEvidence:a,commitEvidence:!1})))}}),(0,b.jsx)(aW,{label:p("settings.workflow.addEvidenceToPr"),description:p("settings.workflow.addEvidenceToPrDescription"),id:"commit-evidence",testId:"switch-commit-evidence",checked:aq,disabled:!ao||!ae,onChange:a=>{ar(a),J(bK({commitEvidence:a}))}}),(0,b.jsx)(aZ,{children:p("settings.workflow.subsections.git")}),(0,b.jsx)(aW,{label:p("settings.workflow.pushOnComplete"),description:p("settings.workflow.pushOnCompleteDescription"),id:"push-on-complete",testId:"switch-push-on-complete",checked:ag,onChange:a=>{ah(a),J(bK({pushOnComplete:a}))}}),(0,b.jsx)(aW,{label:p("settings.workflow.openPrOnComplete"),description:p("settings.workflow.openPrOnCompleteDescription"),id:"open-pr",testId:"switch-open-pr",checked:ae,onChange:a=>{af(a),a?J(bK({openPr:a})):(ar(!1),J(bK({openPr:a,commitEvidence:!1})))}}),(0,b.jsx)(aW,{label:p("settings.workflow.watchCiAfterPush"),description:p("settings.workflow.watchCiAfterPushDescription"),id:"ci-watch-enabled",testId:"switch-ci-watch-enabled",checked:as,onChange:a=>{at(a),J(bK({ciWatchEnabled:a}))}}),(0,b.jsx)(aZ,{children:"Archive"}),(0,b.jsx)(aW,{label:"Auto-archive completed",description:"Automatically archive features after they reach the completed state",id:"auto-archive-enabled",testId:"switch-auto-archive-enabled",checked:ay,onChange:a=>{az(a),J(bK({autoArchiveEnabled:a}))}}),(0,b.jsx)(aV,{label:"Archive delay",description:"Minutes to wait after completion before archiving (1–1440)",htmlFor:"auto-archive-delay",children:(0,b.jsx)(aY,{id:"auto-archive-delay",testId:"input-auto-archive-delay",value:aA,placeholder:"10",min:1,max:1440,suffix:"min",onChange:a=>{aB(a)},onBlur:()=>{if(!ay)return;let a=parseInt(aA,10),b=Number.isNaN(a)?10:Math.min(1440,Math.max(1,a));aB(String(b)),J(bK({autoArchiveDelay:String(b)}))}})})]}),(0,b.jsx)(a$,{links:[{label:p("settings.workflow.links.approvalGates"),href:"https://github.com/shep-ai/shep/blob/main/specs/016-hitl-approval-gates/spec.yaml"},{label:p("settings.workflow.links.pushAndPrFlags"),href:"https://github.com/shep-ai/shep/blob/main/specs/037-feature-pr-push-flags/spec.yaml"}],children:p("settings.workflow.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:h.Activity,title:p("settings.ci.title"),description:p("settings.ci.description"),testId:"ci-settings-section",children:[(0,b.jsx)(aV,{label:p("settings.ci.maxFixAttempts"),description:p("settings.ci.maxFixAttemptsDescription"),htmlFor:"ci-max-fix",children:(0,b.jsx)(aY,{id:"ci-max-fix",testId:"ci-max-fix-input",placeholder:"3",value:aC,onChange:aD,onBlur:()=>{aC!==bw&&J(bK({ciMaxFix:aC}))},min:1,max:10})}),(0,b.jsx)(aV,{label:p("settings.ci.watchTimeout"),description:p("settings.ci.watchTimeoutDescription"),htmlFor:"ci-timeout",children:(0,b.jsx)(aY,{id:"ci-timeout",testId:"ci-timeout-input",placeholder:"300",value:aE,onChange:aF,onBlur:()=>{aE!==bx&&J(bK({ciTimeout:aE}))},min:30,step:30,suffix:"sec"})}),(0,b.jsx)(aV,{label:p("settings.ci.maxLogSize"),description:p("settings.ci.maxLogSizeDescription"),htmlFor:"ci-log-max",children:(0,b.jsx)(aY,{id:"ci-log-max",testId:"ci-log-max-input",placeholder:"50000",value:aG,onChange:aH,onBlur:()=>{aG!==by&&J(bK({ciLogMax:aG}))},min:1e3,step:5e3,suffix:"chars"})}),(0,b.jsx)(aV,{label:p("settings.ci.pollInterval"),description:p("settings.ci.pollIntervalDescription"),htmlFor:"ci-poll-interval",children:(0,b.jsx)(aY,{id:"ci-poll-interval",testId:"ci-poll-interval-input",placeholder:"30",value:aI,onChange:aJ,onBlur:()=>{aI!==bz&&J(bK({ciPollInterval:aI}))},min:5,step:5,suffix:"sec"})}),(0,b.jsx)(aW,{label:p("settings.ci.hideCiStatus"),description:p("settings.ci.hideCiStatusDescription"),id:"hide-ci-status",testId:"switch-hide-ci-status",checked:au,onChange:a=>{av(a),J(bK({hideCiStatus:a}))}})]}),(0,b.jsx)(a$,{links:[{label:p("settings.ci.links.cicdPipeline"),href:"https://github.com/shep-ai/shep/blob/main/docs/development/cicd.md"},{label:p("settings.ci.links.ciSecurityGates"),href:"https://github.com/shep-ai/shep/blob/main/specs/003-cicd-security-gates/spec.md"}],children:p("settings.ci.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:r.Timer,title:p("settings.stageTimeouts.title"),description:p("settings.stageTimeouts.description"),testId:"stage-timeouts-settings-section",children:[(0,b.jsx)(aZ,{children:p("settings.stageTimeouts.subsections.featureAgent")}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.analyze"),description:p("settings.stageTimeouts.analyzeDescription"),htmlFor:"timeout-analyze",children:(0,b.jsx)(aN,{id:"timeout-analyze",testId:"timeout-analyze-input",value:aL,onChange:aM,onBlur:()=>{aL!==bA&&J(bK({analyzeTimeout:aL}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.requirements"),description:p("settings.stageTimeouts.requirementsDescription"),htmlFor:"timeout-requirements",children:(0,b.jsx)(aN,{id:"timeout-requirements",testId:"timeout-requirements-input",value:a_,onChange:a0,onBlur:()=>{a_!==bB&&J(bK({requirementsTimeout:a_}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.research"),description:p("settings.stageTimeouts.researchDescription"),htmlFor:"timeout-research",children:(0,b.jsx)(aN,{id:"timeout-research",testId:"timeout-research-input",value:a1,onChange:a2,onBlur:()=>{a1!==bC&&J(bK({researchTimeout:a1}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.plan"),description:p("settings.stageTimeouts.planDescription"),htmlFor:"timeout-plan",children:(0,b.jsx)(aN,{id:"timeout-plan",testId:"timeout-plan-input",value:a3,onChange:a4,onBlur:()=>{a3!==bD&&J(bK({planTimeout:a3}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.implement"),description:p("settings.stageTimeouts.implementDescription"),htmlFor:"timeout-implement",children:(0,b.jsx)(aN,{id:"timeout-implement",testId:"timeout-implement-input",value:a5,onChange:a6,onBlur:()=>{a5!==bE&&J(bK({implementTimeout:a5}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.fastImplement"),description:p("settings.stageTimeouts.fastImplementDescription"),htmlFor:"timeout-fast-implement",children:(0,b.jsx)(aN,{id:"timeout-fast-implement",testId:"timeout-fast-implement-input",value:a7,onChange:a8,onBlur:()=>{a7!==bF&&J(bK({fastImplementTimeout:a7}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.merge"),description:p("settings.stageTimeouts.mergeDescription"),htmlFor:"timeout-merge",children:(0,b.jsx)(aN,{id:"timeout-merge",testId:"timeout-merge-input",value:a9,onChange:ba,onBlur:()=>{a9!==bG&&J(bK({mergeTimeout:a9}))},defaultSeconds:1800})}),(0,b.jsx)(aZ,{children:p("settings.stageTimeouts.subsections.analyzeRepoAgent")}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.analyze"),description:p("settings.stageTimeouts.analyzeDescription"),htmlFor:"timeout-analyze-repo",children:(0,b.jsx)(aN,{id:"timeout-analyze-repo",testId:"timeout-analyze-repo-input",value:bc,onChange:bd,onBlur:()=>{bc!==bH&&J(bK({analyzeRepoTimeout:bc}))},defaultSeconds:600})})]}),(0,b.jsx)(a$,{children:p("settings.stageTimeouts.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:j,title:p("settings.notifications.title"),description:p("settings.notifications.sectionDescription"),testId:"notification-settings-section",children:[(0,b.jsx)(aZ,{children:p("settings.notifications.channels")}),(0,b.jsx)(aW,{label:p("settings.notifications.inAppLabel"),description:p("settings.notifications.inAppDescription"),id:"notif-in-app",testId:"switch-in-app",checked:bq,onChange:a=>{br(a),J(bL({inApp:a}))}}),(0,b.jsx)(aZ,{children:p("settings.notifications.subsections.agentEvents")}),(0,b.jsx)(aW,{label:p("settings.notifications.events.agentStarted"),id:"notif-event-agentStarted",testId:"switch-event-agentStarted",checked:bs.agentStarted,onChange:a=>{let b={...bs,agentStarted:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.phaseCompleted"),id:"notif-event-phaseCompleted",testId:"switch-event-phaseCompleted",checked:bs.phaseCompleted,onChange:a=>{let b={...bs,phaseCompleted:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.waitingApproval"),id:"notif-event-waitingApproval",testId:"switch-event-waitingApproval",checked:bs.waitingApproval,onChange:a=>{let b={...bs,waitingApproval:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.agentCompleted"),id:"notif-event-agentCompleted",testId:"switch-event-agentCompleted",checked:bs.agentCompleted,onChange:a=>{let b={...bs,agentCompleted:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.agentFailed"),id:"notif-event-agentFailed",testId:"switch-event-agentFailed",checked:bs.agentFailed,onChange:a=>{let b={...bs,agentFailed:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aZ,{children:p("settings.notifications.subsections.pullRequestEvents")}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prMerged"),id:"notif-event-prMerged",testId:"switch-event-prMerged",checked:bs.prMerged,onChange:a=>{let b={...bs,prMerged:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prClosed"),id:"notif-event-prClosed",testId:"switch-event-prClosed",checked:bs.prClosed,onChange:a=>{let b={...bs,prClosed:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prChecksPassed"),id:"notif-event-prChecksPassed",testId:"switch-event-prChecksPassed",checked:bs.prChecksPassed,onChange:a=>{let b={...bs,prChecksPassed:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prChecksFailed"),id:"notif-event-prChecksFailed",testId:"switch-event-prChecksFailed",checked:bs.prChecksFailed,onChange:a=>{let b={...bs,prChecksFailed:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prBlocked"),id:"notif-event-prBlocked",testId:"switch-event-prBlocked",checked:bs.prBlocked,onChange:a=>{let b={...bs,prBlocked:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.mergeReviewReady"),id:"notif-event-mergeReviewReady",testId:"switch-event-mergeReviewReady",checked:bs.mergeReviewReady,onChange:a=>{let b={...bs,mergeReviewReady:a};bt(b),J(bL({events:b}))}})]}),(0,b.jsx)(a$,{links:[{label:p("settings.notifications.links.notificationSystem"),href:"https://github.com/shep-ai/shep/blob/main/specs/021-agent-notifications/spec.yaml"}],children:p("settings.notifications.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:k,title:p("settings.featureFlags.title"),description:p("settings.featureFlags.sectionDescription"),badge:p("settings.featureFlags.badge"),testId:"feature-flags-settings-section",children:[(0,b.jsx)(aW,{label:p("settings.featureFlags.deployments"),description:p("settings.featureFlags.deploymentsDescription"),id:"flag-envDeploy",testId:"switch-flag-envDeploy",checked:bu.envDeploy,onChange:a=>{let b={...bu,envDeploy:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.debug"),description:p("settings.featureFlags.debugDescription"),id:"flag-debug",testId:"switch-flag-debug",checked:bu.debug,onChange:a=>{let b={...bu,debug:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.reactFileManager"),description:p("settings.featureFlags.reactFileManagerDescription"),id:"flag-reactFileManager",testId:"switch-flag-reactFileManager",checked:bu.reactFileManager,onChange:a=>{let b={...bu,reactFileManager:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.projects"),description:p("settings.featureFlags.projectsDescription"),id:"flag-projects",testId:"switch-flag-projects",checked:bu.projects,onChange:a=>{let b={...bu,projects:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.codeReview"),description:p("settings.featureFlags.codeReviewDescription"),id:"flag-code-review",testId:"switch-flag-code-review",checked:bu.codeReview,onChange:a=>{let b={...bu,codeReview:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.collaboration"),description:p("settings.featureFlags.collaborationDescription"),id:"flag-collaboration",testId:"switch-flag-collaboration",checked:bu.collaboration,onChange:a=>{let b={...bu,collaboration:a};bv(b),J({featureFlags:b})}})]}),(0,b.jsx)(a$,{children:p("settings.featureFlags.hint")})]}),(0,b.jsxs)("div",{id:"section-interactive-agent",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,b.jsxs)(aX,{icon:s.MessageSquare,title:p("settings.interactiveAgent.title"),description:p("settings.interactiveAgent.description"),testId:"interactive-agent-settings-section",children:[(0,b.jsx)(aW,{label:p("settings.interactiveAgent.enableChatTab"),description:p("settings.interactiveAgent.enableChatTabDescription"),id:"interactive-agent-enabled",testId:"switch-interactive-agent-enabled",checked:bf,onChange:a=>{bg(a),J({interactiveAgent:{enabled:a,autoTimeoutMinutes:parseInt(bh,10)||15,maxConcurrentSessions:parseInt(bj,10)||3}})}}),(0,b.jsx)(aV,{label:p("settings.interactiveAgent.autoTimeout"),description:p("settings.interactiveAgent.autoTimeoutDescription"),htmlFor:"interactive-agent-timeout",children:(0,b.jsx)(aY,{id:"interactive-agent-timeout",testId:"input-interactive-agent-timeout",value:bh,placeholder:"15",min:1,max:120,suffix:"min",onChange:bi,onBlur:()=>{let a=parseInt(bh,10),b=Number.isNaN(a)?15:Math.min(120,Math.max(1,a));bi(String(b)),J({interactiveAgent:{enabled:bf,autoTimeoutMinutes:b,maxConcurrentSessions:parseInt(bj,10)||3}})}})}),(0,b.jsx)(aV,{label:p("settings.interactiveAgent.maxConcurrentSessions"),description:p("settings.interactiveAgent.maxConcurrentSessionsDescription"),htmlFor:"interactive-agent-sessions",children:(0,b.jsx)(aY,{id:"interactive-agent-sessions",testId:"input-interactive-agent-sessions",value:bj,placeholder:"3",min:1,max:10,onChange:bk,onBlur:()=>{let a=parseInt(bj,10),b=Number.isNaN(a)?3:Math.min(10,Math.max(1,a));bk(String(b)),J({interactiveAgent:{enabled:bf,autoTimeoutMinutes:parseInt(bh,10)||15,maxConcurrentSessions:b}})}})})]}),(0,b.jsx)(a$,{children:p("settings.interactiveAgent.hint")})]}),(0,b.jsxs)("div",{id:"section-home-page",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,b.jsx)(aX,{icon:u.Home,title:p("settings.homePage.title"),description:p("settings.homePage.description"),testId:"home-page-settings-section",children:(0,b.jsx)(aV,{label:p("settings.homePage.label"),description:p("settings.homePage.labelDescription"),htmlFor:"default-home-page",children:(0,b.jsxs)(F.Select,{value:bl,onValueChange:a=>{bm(a),J({defaultHomePage:a})},children:[(0,b.jsx)(F.SelectTrigger,{id:"default-home-page","data-testid":"default-home-page-select",className:"w-44",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:Object.values(I.DefaultHomePage).map(a=>(0,b.jsx)(F.SelectItem,{value:a,children:p(`settings.homePage.options.${a}`)},a))})]})})}),(0,b.jsx)(a$,{children:p("settings.homePage.hint")})]}),(0,b.jsxs)("div",{id:"section-fab-layout",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,b.jsx)(aX,{icon:t.LayoutGrid,title:p("settings.fabLayout.title"),description:p("settings.fabLayout.description"),testId:"fab-layout-settings-section",children:(0,b.jsx)(aW,{label:p("settings.fabLayout.swapPosition"),description:p("settings.fabLayout.swapPositionDescription"),id:"fab-swap-position",testId:"switch-fab-swap-position",checked:bo,onChange:a=>{bp(a),J({fabLayout:{swapPosition:a}})}})}),(0,b.jsx)(a$,{children:p("settings.fabLayout.hint")})]}),(0,b.jsxs)("div",{id:"section-integrations",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,b.jsx)(aX,{icon:x.Github,title:"GitHub",description:"Connect a Personal Access Token so gh, git push, and other tools authenticate automatically in shep terminals.",testId:"github-integration-section",children:(0,b.jsx)(Y,{})}),(0,b.jsx)(a$,{children:"The token is encrypted with your local LocalSecretBox and only injected into terminal sessions you start from shep. It never leaves this machine."})]}),(0,b.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,b.jsxs)(aX,{icon:l,title:p("settings.database.title"),description:p("settings.database.sectionDescription"),testId:"database-settings-section",children:[(0,b.jsx)(aV,{label:p("settings.database.location"),description:p("settings.database.locationDescription"),children:(0,b.jsx)("span",{className:"text-muted-foreground max-w-50 truncate font-mono text-xs","data-testid":"shep-home-path",children:i})}),(0,b.jsx)(aV,{label:p("settings.database.size"),children:(0,b.jsx)("span",{className:"text-muted-foreground text-xs","data-testid":"db-file-size",children:n})})]}),(0,b.jsx)(a$,{links:[{label:p("settings.database.links.settingsService"),href:"https://github.com/shep-ai/shep/blob/main/docs/architecture/settings-service.md"},{label:p("settings.database.links.settingsSpec"),href:"https://github.com/shep-ai/shep/blob/main/specs/005-global-settings-service/spec.md"}],children:p("settings.database.hint")})]})]})]})}a.s(["SettingsPageClient",()=>a_],379020)}];
1
+ module.exports=[379020,a=>{"use strict";var b=a.i(556365),c=a.i(944592),d=a.i(872016),e=a.i(134644),f=a.i(863698),g=a.i(953170),h=a.i(144981),i=a.i(225700);let j=(0,i.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"}]]),k=(0,i.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"}]]),l=(0,i.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 m=a.i(884494),n=a.i(116126),o=a.i(867837),p=a.i(771238);let q=(0,i.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 r=a.i(407421),s=a.i(612882),t=a.i(882014),u=a.i(378352),v=a.i(483886),w=a.i(341274),x=a.i(323784),y=a.i(952313);a.i(490370);var z=a.i(224640),A=a.i(385536),B=a.i(758860),C=a.i(390920),D=a.i(118948),E=a.i(896867),F=a.i(159175),G=a.i(289111);let H=(0,G.createServerReference)("40d67a4547e3385399c55e42521e04fc4ddca73651",G.callServer,void 0,G.findSourceMapURL,"updateSettingsAction");var I=a.i(746847),J=a.i(125681),K=a.i(944447),L=a.i(87926);function M(a){return(0,b.jsx)(K.Code,{className:(0,A.cn)("h-4 w-4",a.className),...a})}function N({className:a}){return(0,b.jsx)(J.default,{src:"/icons/editors/vscode.svg",alt:"VS Code",width:24,height:24,className:(0,A.cn)("rounded-sm object-contain",a)})}function O({className:a}){return(0,b.jsx)(J.default,{src:"/icons/agents/cursor.jpeg",alt:"Cursor",width:24,height:24,className:(0,A.cn)("rounded-sm object-contain",a)})}function P({className:a}){return(0,b.jsx)(J.default,{src:"/icons/editors/windsurf.svg",alt:"Windsurf",width:24,height:24,className:(0,A.cn)("rounded-sm object-contain",a)})}function Q({className:a}){return(0,b.jsx)(J.default,{src:"/icons/editors/zed.svg",alt:"Zed",width:24,height:24,className:(0,A.cn)("rounded-sm object-contain",a)})}function R({className:a,...c}){return(0,b.jsx)(L.Rocket,{className:(0,A.cn)("h-4 w-4",a),...c})}N.displayName="VsCodeIcon",O.displayName="CursorEditorIcon",P.displayName="WindsurfIcon",Q.displayName="ZedIcon",R.displayName="AntigravityIcon";let S={vscode:N,cursor:O,windsurf:P,zed:Q,antigravity:R};var T=a.i(961781),U=a.i(867075);let V=(0,G.createServerReference)("40300525816e6dce82b313e0458074a8059747654e",G.callServer,void 0,G.findSourceMapURL,"connectGithubAction"),W=(0,G.createServerReference)("00d110d278ca27f5be0e499768da94696e8ad3f276",G.callServer,void 0,G.findSourceMapURL,"disconnectGithubAction"),X=(0,G.createServerReference)("007696380cc405e049765057b1bbeda43d195a6a4a",G.callServer,void 0,G.findSourceMapURL,"getGithubStatusAction");function Y(){let[a,d]=(0,c.useState)(null),[e,f]=(0,c.useState)(""),[g,h]=(0,c.useState)(!1),[i,j]=(0,c.useTransition)();return((0,c.useEffect)(()=>{let a=!1;return X().then(b=>{a||d(b)}).catch(()=>{a||d({connected:!1,connectedAt:null,updatedAt:null})}),()=>{a=!0}},[]),null===a)?(0,b.jsx)("div",{className:"text-muted-foreground py-4 text-xs","data-testid":"github-integration-loading",children:"Checking GitHub integration…"}):a.connected?(0,b.jsxs)("div",{className:"space-y-3 py-3","data-testid":"github-integration-connected",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(U.CheckCircle2,{className:"h-4 w-4 text-emerald-500"}),(0,b.jsx)("span",{className:"text-sm",children:"Connected"}),a.updatedAt?(0,b.jsxs)("span",{className:"text-muted-foreground text-[11px]",children:["· last updated ",new Date(a.updatedAt).toLocaleDateString()]}):null]}),(0,b.jsxs)("p",{className:"text-muted-foreground text-[11px] leading-relaxed",children:["Every terminal opened in shep now has ",(0,b.jsx)("code",{children:"GH_TOKEN"})," and ",(0,b.jsx)("code",{children:"GITHUB_TOKEN"})," ","set automatically. ",(0,b.jsx)("code",{children:"gh"}),", ",(0,b.jsx)("code",{children:"git push"}),", and other tools that read those env vars will authenticate as your GitHub user."]}),(0,b.jsx)("div",{className:"flex items-center gap-2",children:(0,b.jsx)(D.Button,{variant:"outline",size:"sm",onClick:function(){j(async()=>{let a=await W();a.success?(y.toast.success("GitHub disconnected"),d(await X())):y.toast.error(a.error??"Failed to disconnect")})},disabled:i,"data-testid":"github-disconnect-button",children:i?"Disconnecting…":"Disconnect"})})]}):(0,b.jsxs)("div",{className:"space-y-3 py-3","data-testid":"github-integration-disconnected",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)(B.Label,{htmlFor:"github-pat",className:"text-xs",children:"Personal Access Token"}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsxs)("div",{className:"relative flex-1",children:[(0,b.jsx)(C.Input,{id:"github-pat","data-testid":"github-pat-input",type:g?"text":"password",value:e,onChange:a=>f(a.target.value),placeholder:"github_pat_… or ghp_…",autoComplete:"off",className:"pr-9 font-mono text-xs",disabled:i}),(0,b.jsx)("button",{type:"button",onClick:()=>h(a=>!a),className:"text-muted-foreground hover:text-foreground absolute top-1/2 right-2 -translate-y-1/2","aria-label":g?"Hide token":"Show token",tabIndex:-1,children:g?(0,b.jsx)(w.EyeOff,{className:"h-3.5 w-3.5"}):(0,b.jsx)(v.Eye,{className:"h-3.5 w-3.5"})})]}),(0,b.jsx)(D.Button,{size:"sm",onClick:function(){let a=e.trim();a?j(async()=>{let b=await V(a);b.success?(y.toast.success(`Connected to GitHub${b.login?` as @${b.login}`:""}`),f(""),h(!1),d(await X())):y.toast.error(b.error??"Failed to connect to GitHub")}):y.toast.error("Paste a GitHub Personal Access Token first")},disabled:i||!e.trim(),"data-testid":"github-connect-button",children:i?"Connecting…":"Connect"})]})]}),(0,b.jsxs)("p",{className:"text-muted-foreground text-[11px] leading-relaxed",children:["Create a fine-grained PAT with ",(0,b.jsx)("code",{children:"contents: read/write"})," and"," ",(0,b.jsx)("code",{children:"pull requests: read/write"})," on the repos you want shep to access. Token is encrypted at rest and never leaves this machine."]}),(0,b.jsxs)("a",{href:"https://github.com/settings/tokens?type=beta",target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground inline-flex items-center gap-1 text-[11px] transition-colors",children:[(0,b.jsx)(p.ExternalLink,{className:"h-3 w-3"}),"Generate a token on github.com"]})]})}var Z=a.i(48972),$=a.i(559653),_=a.i(406175),aa=a.i(307420),ab=a.i(417329),ac=a.i(748939),ad=a.i(264005),ae=a.i(474432),af=a.i(666873),ag=a.i(563496),ah=["PageUp","PageDown"],ai=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],aj={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},ak="Slider",[al,am,an]=(0,ag.createCollection)(ak),[ao,ap]=(0,aa.createContextScope)(ak,[an]),[aq,ar]=ao(ak),as=c.forwardRef((a,d)=>{let{name:e,min:f=0,max:g=100,step:h=1,orientation:i="horizontal",disabled:j=!1,minStepsBetweenThumbs:k=0,defaultValue:l=[f],value:m,onValueChange:n=()=>{},onValueCommit:o=()=>{},inverted:p=!1,form:q,...r}=a,s=c.useRef(new Set),t=c.useRef(0),u="horizontal"===i,[v=[],w]=(0,ab.useControllableState)({prop:m,defaultProp:l,onChange:a=>{let b=[...s.current];b[t.current]?.focus(),n(a)}}),x=c.useRef(v);function y(a,b,{commit:c}={commit:!1}){let d,e=(String(h).split(".")[1]||"").length,i=Math.round((Math.round((a-f)/h)*h+f)*(d=Math.pow(10,e)))/d,j=(0,Z.clamp)(i,[f,g]);w((a=[])=>{let d=function(a=[],b,c){let d=[...a];return d[c]=b,d.sort((a,b)=>a-b)}(a,j,b);if(!function(a,b){if(b>0)return Math.min(...a.slice(0,-1).map((b,c)=>a[c+1]-b))>=b;return!0}(d,k*h))return a;{t.current=d.indexOf(j);let b=String(d)!==String(a);return b&&c&&o(d),b?d:a}})}return(0,b.jsx)(aq,{scope:a.__scopeSlider,name:e,disabled:j,min:f,max:g,valueIndexToChangeRef:t,thumbs:s.current,values:v,orientation:i,form:q,children:(0,b.jsx)(al.Provider,{scope:a.__scopeSlider,children:(0,b.jsx)(al.Slot,{scope:a.__scopeSlider,children:(0,b.jsx)(u?av:aw,{"aria-disabled":j,"data-disabled":j?"":void 0,...r,ref:d,onPointerDown:(0,$.composeEventHandlers)(r.onPointerDown,()=>{j||(x.current=v)}),min:f,max:g,inverted:p,onSlideStart:j?void 0:function(a){let b=function(a,b){if(1===a.length)return 0;let c=a.map(a=>Math.abs(a-b)),d=Math.min(...c);return c.indexOf(d)}(v,a);y(a,b)},onSlideMove:j?void 0:function(a){y(a,t.current)},onSlideEnd:j?void 0:function(){let a=x.current[t.current];v[t.current]!==a&&o(v)},onHomeKeyDown:()=>!j&&y(f,0,{commit:!0}),onEndKeyDown:()=>!j&&y(g,v.length-1,{commit:!0}),onStepKeyDown:({event:a,direction:b})=>{if(!j){let c=ah.includes(a.key)||a.shiftKey&&ai.includes(a.key),d=t.current;y(v[d]+h*(c?10:1)*b,d,{commit:!0})}}})})})})});as.displayName=ak;var[at,au]=ao(ak,{startEdge:"left",endEdge:"right",size:"width",direction:1}),av=c.forwardRef((a,d)=>{let{min:e,max:f,dir:g,inverted:h,onSlideStart:i,onSlideMove:j,onSlideEnd:k,onStepKeyDown:l,...m}=a,[n,o]=c.useState(null),p=(0,_.useComposedRefs)(d,a=>o(a)),q=c.useRef(void 0),r=(0,ac.useDirection)(g),s="ltr"===r,t=s&&!h||!s&&h;function u(a){let b=q.current||n.getBoundingClientRect(),c=aH([0,b.width],t?[e,f]:[f,e]);return q.current=b,c(a-b.left)}return(0,b.jsx)(at,{scope:a.__scopeSlider,startEdge:t?"left":"right",endEdge:t?"right":"left",direction:t?1:-1,size:"width",children:(0,b.jsx)(ax,{dir:r,"data-orientation":"horizontal",...m,ref:p,style:{...m.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:a=>{let b=u(a.clientX);i?.(b)},onSlideMove:a=>{let b=u(a.clientX);j?.(b)},onSlideEnd:()=>{q.current=void 0,k?.()},onStepKeyDown:a=>{let b=aj[t?"from-left":"from-right"].includes(a.key);l?.({event:a,direction:b?-1:1})}})})}),aw=c.forwardRef((a,d)=>{let{min:e,max:f,inverted:g,onSlideStart:h,onSlideMove:i,onSlideEnd:j,onStepKeyDown:k,...l}=a,m=c.useRef(null),n=(0,_.useComposedRefs)(d,m),o=c.useRef(void 0),p=!g;function q(a){let b=o.current||m.current.getBoundingClientRect(),c=aH([0,b.height],p?[f,e]:[e,f]);return o.current=b,c(a-b.top)}return(0,b.jsx)(at,{scope:a.__scopeSlider,startEdge:p?"bottom":"top",endEdge:p?"top":"bottom",size:"height",direction:p?1:-1,children:(0,b.jsx)(ax,{"data-orientation":"vertical",...l,ref:n,style:{...l.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:a=>{let b=q(a.clientY);h?.(b)},onSlideMove:a=>{let b=q(a.clientY);i?.(b)},onSlideEnd:()=>{o.current=void 0,j?.()},onStepKeyDown:a=>{let b=aj[p?"from-bottom":"from-top"].includes(a.key);k?.({event:a,direction:b?-1:1})}})})}),ax=c.forwardRef((a,c)=>{let{__scopeSlider:d,onSlideStart:e,onSlideMove:f,onSlideEnd:g,onHomeKeyDown:h,onEndKeyDown:i,onStepKeyDown:j,...k}=a,l=ar(ak,d);return(0,b.jsx)(af.Primitive.span,{...k,ref:c,onKeyDown:(0,$.composeEventHandlers)(a.onKeyDown,a=>{"Home"===a.key?(h(a),a.preventDefault()):"End"===a.key?(i(a),a.preventDefault()):ah.concat(ai).includes(a.key)&&(j(a),a.preventDefault())}),onPointerDown:(0,$.composeEventHandlers)(a.onPointerDown,a=>{let b=a.target;b.setPointerCapture(a.pointerId),a.preventDefault(),l.thumbs.has(b)?b.focus():e(a)}),onPointerMove:(0,$.composeEventHandlers)(a.onPointerMove,a=>{a.target.hasPointerCapture(a.pointerId)&&f(a)}),onPointerUp:(0,$.composeEventHandlers)(a.onPointerUp,a=>{let b=a.target;b.hasPointerCapture(a.pointerId)&&(b.releasePointerCapture(a.pointerId),g(a))})})}),ay="SliderTrack",az=c.forwardRef((a,c)=>{let{__scopeSlider:d,...e}=a,f=ar(ay,d);return(0,b.jsx)(af.Primitive.span,{"data-disabled":f.disabled?"":void 0,"data-orientation":f.orientation,...e,ref:c})});az.displayName=ay;var aA="SliderRange",aB=c.forwardRef((a,d)=>{let{__scopeSlider:e,...f}=a,g=ar(aA,e),h=au(aA,e),i=c.useRef(null),j=(0,_.useComposedRefs)(d,i),k=g.values.length,l=g.values.map(a=>aG(a,g.min,g.max)),m=k>1?Math.min(...l):0,n=100-Math.max(...l);return(0,b.jsx)(af.Primitive.span,{"data-orientation":g.orientation,"data-disabled":g.disabled?"":void 0,...f,ref:j,style:{...a.style,[h.startEdge]:m+"%",[h.endEdge]:n+"%"}})});aB.displayName=aA;var aC="SliderThumb",aD=c.forwardRef((a,d)=>{let e=am(a.__scopeSlider),[f,g]=c.useState(null),h=(0,_.useComposedRefs)(d,a=>g(a)),i=c.useMemo(()=>f?e().findIndex(a=>a.ref.current===f):-1,[e,f]);return(0,b.jsx)(aE,{...a,ref:h,index:i})}),aE=c.forwardRef((a,d)=>{var e,f,g,h,i;let j,k,{__scopeSlider:l,index:m,name:n,...o}=a,p=ar(aC,l),q=au(aC,l),[r,s]=c.useState(null),t=(0,_.useComposedRefs)(d,a=>s(a)),u=!r||p.form||!!r.closest("form"),v=(0,ae.useSize)(r),w=p.values[m],x=void 0===w?0:aG(w,p.min,p.max),y=(e=m,(f=p.values.length)>2?`Value ${e+1} of ${f}`:2===f?["Minimum","Maximum"][e]:void 0),z=v?.[q.size],A=z?(g=z,h=x,i=q.direction,k=aH([0,50],[0,j=g/2]),(j-k(h)*i)*i):0;return c.useEffect(()=>{if(r)return p.thumbs.add(r),()=>{p.thumbs.delete(r)}},[r,p.thumbs]),(0,b.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[q.startEdge]:`calc(${x}% + ${A}px)`},children:[(0,b.jsx)(al.ItemSlot,{scope:a.__scopeSlider,children:(0,b.jsx)(af.Primitive.span,{role:"slider","aria-label":a["aria-label"]||y,"aria-valuemin":p.min,"aria-valuenow":w,"aria-valuemax":p.max,"aria-orientation":p.orientation,"data-orientation":p.orientation,"data-disabled":p.disabled?"":void 0,tabIndex:p.disabled?void 0:0,...o,ref:t,style:void 0===w?{display:"none"}:a.style,onFocus:(0,$.composeEventHandlers)(a.onFocus,()=>{p.valueIndexToChangeRef.current=m})})}),u&&(0,b.jsx)(aF,{name:n??(p.name?p.name+(p.values.length>1?"[]":""):void 0),form:p.form,value:w},m)]})});aD.displayName=aC;var aF=c.forwardRef(({__scopeSlider:a,value:d,...e},f)=>{let g=c.useRef(null),h=(0,_.useComposedRefs)(g,f),i=(0,ad.usePrevious)(d);return c.useEffect(()=>{let a=g.current;if(!a)return;let b=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(i!==d&&b){let c=new Event("input",{bubbles:!0});b.call(a,d),a.dispatchEvent(c)}},[i,d]),(0,b.jsx)(af.Primitive.input,{style:{display:"none"},...e,ref:h,defaultValue:d})});function aG(a,b,c){return(0,Z.clamp)(100/(c-b)*(a-b),[0,100])}function aH(a,b){return c=>{if(a[0]===a[1]||b[0]===b[1])return b[0];let d=(b[1]-b[0])/(a[1]-a[0]);return b[0]+d*(c-a[0])}}aF.displayName="RadioBubbleInput",a.s(["Range",()=>aB,"Root",()=>as,"Slider",()=>as,"SliderRange",()=>aB,"SliderThumb",()=>aD,"SliderTrack",()=>az,"Thumb",()=>aD,"Track",()=>az,"createSliderScope",()=>ap],161569);var aI=a.i(161569),aI=aI;function aJ({className:a,defaultValue:d,value:e,min:f=0,max:g=100,...h}){let i=c.useMemo(()=>Array.isArray(e)?e:Array.isArray(d)?d:[f,g],[e,d,f,g]);return(0,b.jsxs)(aI.Root,{"data-slot":"slider",defaultValue:d,value:e,min:f,max:g,className:(0,A.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",a),...h,children:[(0,b.jsx)(aI.Track,{"data-slot":"slider-track",className:(0,A.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,b.jsx)(aI.Range,{"data-slot":"slider-range",className:(0,A.cn)("bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:i.length},(a,c)=>(0,b.jsx)(aI.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"},c))]})}let aK=[60,120,300,600,900,1800,2700,3600,7200,10800,14400,21600,28800,43200,86400],aL=aK.length-1;function aM(a){let b=0,c=Math.abs(a-aK[0]);for(let d=1;d<aK.length;d++){let e=Math.abs(a-aK[d]);e<c&&(c=e,b=d)}return b}function aN({id:a,testId:d,value:e,onChange:f,onBlur:g,defaultSeconds:h=1800}){var i;let j,k,l=(""===e?h:parseInt(e,10))||h,[m,n]=(0,c.useState)(()=>aM(l)),o=aM(l);o!==m&&aK[m]!==l&&n(o);let p=(0,c.useCallback)(([a])=>{n(a),f(String(aK[a]))},[f]);return(0,b.jsxs)("div",{className:"flex w-55 items-center gap-2",children:[(0,b.jsx)(aJ,{id:a,"data-testid":d,min:0,max:aL,step:1,value:[m],onValueChange:p,onValueCommit:()=>g(),className:"min-w-0 flex-1"}),(0,b.jsx)("span",{className:"text-muted-foreground shrink-0 text-end text-xs tabular-nums",children:(j=Math.floor((i=aK[m])/3600),k=Math.round(i%3600/60),0===j?`${k}m`:0===k?`${j}h`:`${j}h ${k}m`)})]})}let aO=[{value:I.Language.English,nativeName:"English"},{value:I.Language.Ukrainian,nativeName:"Українська"},{value:I.Language.Russian,nativeName:"Русский"},{value:I.Language.Portuguese,nativeName:"Português"},{value:I.Language.Spanish,nativeName:"Español"},{value:I.Language.Arabic,nativeName:"العربية"},{value:I.Language.Hebrew,nativeName:"עברית"},{value:I.Language.French,nativeName:"Français"},{value:I.Language.German,nativeName:"Deutsch"}],aP=[{value:I.EditorType.VsCode,label:"VS Code"},{value:I.EditorType.Cursor,label:"Cursor"},{value:I.EditorType.Windsurf,label:"Windsurf"},{value:I.EditorType.Zed,label:"Zed"},{value:I.EditorType.Antigravity,label:"Antigravity"}],aQ=[{value:"bash",label:"Bash"},{value:"zsh",label:"Zsh"},{value:"fish",label:"Fish"}],aR=new Set([I.AgentType.CopilotCli]),aS=new Set([I.AgentType.OpenRouter,I.AgentType.TogetherAi]),aT=[{value:I.AgentAuthMethod.Session,label:"Session"},{value:I.AgentAuthMethod.Token,label:"Token"}],aU=[{id:"language",labelKey:"settings.sections.language",icon:m.Globe},{id:"agent",labelKey:"settings.sections.agent",icon:e.Bot},{id:"environment",labelKey:"settings.sections.environment",icon:f.Terminal},{id:"workflow",labelKey:"settings.sections.workflow",icon:g.GitBranch},{id:"ci",labelKey:"settings.sections.ci",icon:h.Activity},{id:"stage-timeouts",labelKey:"settings.sections.timeouts",icon:r.Timer},{id:"notifications",labelKey:"settings.sections.notifications",icon:j},{id:"feature-flags",labelKey:"settings.sections.flags",icon:k},{id:"interactive-agent",labelKey:"settings.sections.chat",icon:s.MessageSquare},{id:"home-page",labelKey:"settings.sections.homePage",icon:u.Home},{id:"fab-layout",labelKey:"settings.sections.layout",icon:t.LayoutGrid},{id:"integrations",labelKey:"settings.sections.integrations",icon:x.Github},{id:"database",labelKey:"settings.sections.database",icon:l}];function aV({label:a,description:c,htmlFor:d,children:e}){return(0,b.jsxs)("div",{className:"flex items-center justify-between gap-4 border-b py-2.5 last:border-b-0",children:[(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)(B.Label,{htmlFor:d,className:"cursor-pointer text-sm font-normal whitespace-nowrap",children:a}),c?(0,b.jsx)("p",{className:"text-muted-foreground text-[11px] leading-tight",children:c}):null]}),(0,b.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:e})]})}function aW({label:a,description:c,id:d,testId:e,checked:f,onChange:g,disabled:h}){return(0,b.jsx)(aV,{label:a,description:c,htmlFor:d,children:(0,b.jsx)(E.Switch,{id:d,"data-testid":e,checked:f,onCheckedChange:g,disabled:h,className:(0,A.cn)("cursor-pointer",h&&"cursor-not-allowed opacity-50")})})}function aX({icon:a,title:c,description:d,badge:e,testId:f,children:g}){return(0,b.jsxs)("div",{className:"bg-background rounded-lg border","data-testid":f,children:[(0,b.jsxs)("div",{className:"bg-muted/30 border-b px-4 py-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(a,{className:"text-muted-foreground h-3.5 w-3.5"}),(0,b.jsx)("h2",{className:"text-sm font-semibold",children:c}),e?(0,b.jsx)("span",{className:"bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-[9px] font-medium tracking-wider uppercase",children:e}):null]}),(0,b.jsx)("p",{className:"text-muted-foreground mt-0.5 text-[11px]",children:d})]}),(0,b.jsx)("div",{className:"px-4",children:g})]})}function aY({id:a,testId:c,value:d,onChange:e,onBlur:f,placeholder:g,min:h=1,max:i,step:j=1,suffix:k}){let{t:l}=(0,z.useTranslation)("web"),m=""===d?void 0:parseInt(d,10);return(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center overflow-hidden rounded-md border",children:[(0,b.jsx)("button",{type:"button",onClick:()=>{e(String(Math.max(h,(m??parseInt(g,10))-j)))},onMouseUp:f,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":l("common.decrease"),children:(0,b.jsx)(n.Minus,{className:"h-3 w-3"})}),(0,b.jsx)("input",{id:a,"data-testid":c,type:"text",inputMode:"numeric",pattern:"[0-9]*",value:d,placeholder:g,onChange:a=>{e(a.target.value.replace(/[^0-9]/g,""))},onBlur:f,className:"h-8 w-14 bg-transparent text-center text-xs outline-none"}),(0,b.jsx)("button",{type:"button",onClick:()=>{let a;a=m??parseInt(g,10),e(String(null!=i?Math.min(i,a+j):a+j))},onMouseUp:f,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":l("common.increase"),children:(0,b.jsx)(o.Plus,{className:"h-3 w-3"})})]}),k?(0,b.jsx)("span",{className:"text-muted-foreground text-[11px]",children:k}):null]})}function aZ({children:a}){return(0,b.jsx)("div",{className:"border-b pt-3 pb-1",children:(0,b.jsx)("span",{className:"text-muted-foreground text-[10px] font-semibold tracking-wider uppercase",children:a})})}function a$({children:a,links:c}){return(0,b.jsxs)("div",{className:"hidden pt-2 lg:block",children:[(0,b.jsx)("p",{className:"text-muted-foreground/70 text-[11px] leading-relaxed",children:a}),null!=c&&c.length>0?(0,b.jsx)("div",{className:"mt-2 flex flex-col gap-1",children:c.map(a=>(0,b.jsxs)("a",{href:a.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,b.jsx)(p.ExternalLink,{className:"h-2.5 w-2.5"}),a.label]},a.href))}):null]})}function a_({settings:a,shepHome:i,dbFileSize:n,availableTerminals:o}){let{t:p,i18n:B}=(0,z.useTranslation)("web"),{showSaving:E,showSaved:G,save:J}=function(){let{t:a}=(0,z.useTranslation)("web"),[b,d]=(0,c.useTransition)(),[e,f]=(0,c.useState)(!1),[g,h]=(0,c.useState)(!1),i=(0,c.useRef)(null),j=(0,c.useRef)(!1);return(0,c.useEffect)(()=>{b&&!e&&(f(!0),j.current=!1,i.current=setTimeout(()=>{i.current=null,j.current&&(f(!1),h(!0),setTimeout(()=>h(!1),2e3))},350)),!b&&e&&(j.current=!0,i.current||(f(!1),h(!0),setTimeout(()=>h(!1),2e3)))},[b,e]),{showSaving:e,showSaved:g,save:(0,c.useCallback)(b=>{d(async()=>{let c=await H(b);c.success||y.toast.error(c.error??a("settings.failedToSave"))})},[d,a])}}(),K=a.featureFlags??{envDeploy:!1,debug:!1,reactFileManager:!1,projects:!1,codeReview:!1,collaboration:!1},[L,N]=(0,c.useState)(a.user?.preferredLanguage??I.Language.English),[O,P]=(0,c.useState)(a.agent.type),[Q,R]=(0,c.useState)(a.agent.authMethod),[U,V]=(0,c.useState)(a.agent.token??""),[W,X]=(0,c.useState)(!1),[Z,$]=(0,c.useState)(a.environment.defaultEditor),[_,aa]=(0,c.useState)(a.environment.shellPreference),[ab,ac]=(0,c.useState)(a.environment.terminalPreference??I.TerminalType.System),ad=o?o.filter(a=>a.available):[{id:I.TerminalType.System,name:p("settings.environment.systemTerminal"),available:!0}],[ae,af]=(0,c.useState)(a.workflow.openPrOnImplementationComplete),[ag,ah]=(0,c.useState)(a.workflow.approvalGateDefaults.pushOnImplementationComplete),[ai,aj]=(0,c.useState)(a.workflow.approvalGateDefaults.allowPrd),[ak,al]=(0,c.useState)(a.workflow.approvalGateDefaults.allowPlan),[am,an]=(0,c.useState)(a.workflow.approvalGateDefaults.allowMerge),[ao,ap]=(0,c.useState)(a.workflow.enableEvidence),[aq,ar]=(0,c.useState)(a.workflow.commitEvidence),[as,at]=(0,c.useState)(!1!==a.workflow.ciWatchEnabled),[au,av]=(0,c.useState)(!1!==a.workflow.hideCiStatus),[aw,ax]=(0,c.useState)(!1!==a.workflow.defaultFastMode),[ay,az]=(0,c.useState)((a.workflow.autoArchiveDelayMinutes??10)>0),[aA,aB]=(0,c.useState)(String(a.workflow.autoArchiveDelayMinutes??10)),[aC,aD]=(0,c.useState)(null!=a.workflow.ciMaxFixAttempts?String(a.workflow.ciMaxFixAttempts):""),[aE,aF]=(0,c.useState)(null!=a.workflow.ciWatchTimeoutMs?String(Math.round(a.workflow.ciWatchTimeoutMs/1e3)):""),[aG,aH]=(0,c.useState)(null!=a.workflow.ciLogMaxChars?String(a.workflow.ciLogMaxChars):""),[aI,aJ]=(0,c.useState)(null!=a.workflow.ciWatchPollIntervalSeconds?String(a.workflow.ciWatchPollIntervalSeconds):""),aK=a.workflow.stageTimeouts,[aL,aM]=(0,c.useState)(String(Math.round((aK?.analyzeMs??18e5)/1e3))),[a_,a0]=(0,c.useState)(String(Math.round((aK?.requirementsMs??18e5)/1e3))),[a1,a2]=(0,c.useState)(String(Math.round((aK?.researchMs??18e5)/1e3))),[a3,a4]=(0,c.useState)(String(Math.round((aK?.planMs??18e5)/1e3))),[a5,a6]=(0,c.useState)(String(Math.round((aK?.implementMs??18e5)/1e3))),[a7,a8]=(0,c.useState)(String(Math.round((aK?.fastImplementMs??18e5)/1e3))),[a9,ba]=(0,c.useState)(String(Math.round((aK?.mergeMs??18e5)/1e3))),bb=a.workflow.analyzeRepoTimeouts,[bc,bd]=(0,c.useState)(String(Math.round((bb?.analyzeMs??6e5)/1e3))),be=a.interactiveAgent??{enabled:!0,autoTimeoutMinutes:15,maxConcurrentSessions:3},[bf,bg]=(0,c.useState)(be.enabled),[bh,bi]=(0,c.useState)(String(be.autoTimeoutMinutes)),[bj,bk]=(0,c.useState)(String(be.maxConcurrentSessions)),[bl,bm]=(0,c.useState)(a.defaultHomePage??I.DefaultHomePage.ControlCenter),bn=a.fabLayout??{swapPosition:!1},[bo,bp]=(0,c.useState)(bn.swapPosition),[bq,br]=(0,c.useState)(a.notifications.inApp.enabled),[bs,bt]=(0,c.useState)({...a.notifications.events}),[bu,bv]=(0,c.useState)({...K}),bw=null!=a.workflow.ciMaxFixAttempts?String(a.workflow.ciMaxFixAttempts):"",bx=null!=a.workflow.ciWatchTimeoutMs?String(Math.round(a.workflow.ciWatchTimeoutMs/1e3)):"",by=null!=a.workflow.ciLogMaxChars?String(a.workflow.ciLogMaxChars):"",bz=null!=a.workflow.ciWatchPollIntervalSeconds?String(a.workflow.ciWatchPollIntervalSeconds):"",bA=aK?.analyzeMs!=null?String(Math.round(aK.analyzeMs/1e3)):"",bB=aK?.requirementsMs!=null?String(Math.round(aK.requirementsMs/1e3)):"",bC=aK?.researchMs!=null?String(Math.round(aK.researchMs/1e3)):"",bD=aK?.planMs!=null?String(Math.round(aK.planMs/1e3)):"",bE=aK?.implementMs!=null?String(Math.round(aK.implementMs/1e3)):"",bF=aK?.fastImplementMs!=null?String(Math.round(aK.fastImplementMs/1e3)):"",bG=aK?.mergeMs!=null?String(Math.round(aK.mergeMs/1e3)):"",bH=bb?.analyzeMs!=null?String(Math.round(bb.analyzeMs/1e3)):"";function bI(a){if(""===a)return;let b=parseInt(a,10);return Number.isNaN(b)||b<=0?void 0:b}function bJ(a){if(void 0===a)return;let b=bI(a);return null!=b?1e3*b:void 0}function bK(a={}){let b=bI(a.ciTimeout??aE),c=a.autoArchiveEnabled??ay,d=parseInt(a.autoArchiveDelay??aA,10);return{workflow:{openPrOnImplementationComplete:a.openPr??ae,approvalGateDefaults:{pushOnImplementationComplete:a.pushOnComplete??ag,allowPrd:a.allowPrd??ai,allowPlan:a.allowPlan??ak,allowMerge:a.allowMerge??am},enableEvidence:a.enableEvidence??ao,commitEvidence:a.commitEvidence??aq,ciWatchEnabled:a.ciWatchEnabled??as,hideCiStatus:a.hideCiStatus??au,defaultFastMode:a.defaultFastMode??aw,autoArchiveDelayMinutes:c?Number.isNaN(d)||d<1?10:d:0,ciMaxFixAttempts:bI(a.ciMaxFix??aC),ciWatchTimeoutMs:null!=b?1e3*b:void 0,ciLogMaxChars:bI(a.ciLogMax??aG),ciWatchPollIntervalSeconds:bI(a.ciPollInterval??aI),stageTimeouts:{analyzeMs:bJ(a.analyzeTimeout??aL),requirementsMs:bJ(a.requirementsTimeout??a_),researchMs:bJ(a.researchTimeout??a1),planMs:bJ(a.planTimeout??a3),implementMs:bJ(a.implementTimeout??a5),fastImplementMs:bJ(a.fastImplementTimeout??a7),mergeMs:bJ(a.mergeTimeout??a9)},analyzeRepoTimeouts:{analyzeMs:bJ(a.analyzeRepoTimeout??bc)}}}}function bL(a={}){return{notifications:{inApp:{enabled:a.inApp??bq},events:a.events??bs}}}let[bM,bN]=(0,c.useState)("agent");(0,c.useEffect)(()=>{let a=aU.map(a=>document.getElementById(`section-${a.id}`)).filter(Boolean);if(0===a.length)return;let b=new IntersectionObserver(a=>{for(let b of a)b.isIntersecting&&bN(b.target.id.replace("section-",""))},{rootMargin:"-65px 0px -60% 0px",threshold:0});for(let c of a)b.observe(c);return()=>b.disconnect()},[]);let bO=(0,c.useCallback)(a=>{let b=document.getElementById(`section-${a}`);b&&(b.scrollIntoView({behavior:"smooth",block:"start"}),b.style.animation="none",b.offsetHeight,b.style.animation="section-flash 1s ease-out")},[]);return(0,b.jsxs)("div",{"data-testid":"settings-page-client",className:"max-w-5xl",children:[(0,b.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,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(q,{className:"text-muted-foreground h-4 w-4"}),(0,b.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:p("settings.title")}),(0,b.jsxs)("span",{className:"relative h-4 w-16",children:[(0,b.jsx)("span",{className:(0,A.cn)("text-muted-foreground absolute inset-0 flex items-center text-xs transition-opacity duration-300",E?"opacity-100":"opacity-0"),children:p("settings.saving")}),(0,b.jsxs)("span",{className:(0,A.cn)("absolute inset-0 flex items-center gap-1 text-xs text-green-600 transition-opacity duration-300",G&&!E?"opacity-100":"opacity-0"),children:[(0,b.jsx)(d.Check,{className:"h-3 w-3"}),p("settings.saved")]})]}),(0,b.jsx)("nav",{className:"ml-auto flex items-center gap-0.5",children:aU.map(a=>{let c=a.icon,d=bM===a.id;return(0,b.jsxs)("button",{type:"button",onClick:()=>bO(a.id),className:(0,A.cn)("flex cursor-pointer items-center gap-1 rounded-md px-1.5 py-1 text-[11px] transition-all",d?"bg-accent text-foreground font-medium":"text-muted-foreground/60 hover:text-foreground hover:bg-accent/50"),children:[(0,b.jsx)(c,{className:"h-3 w-3"}),(0,b.jsx)("span",{className:"hidden sm:inline",children:p(a.labelKey)})]},a.id)})})]})}),(0,b.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,b.jsx)("div",{id:"section-language",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:(0,b.jsx)(aX,{icon:m.Globe,title:p("settings.language.title"),description:p("settings.language.description"),testId:"language-settings-section",children:(0,b.jsx)(aV,{label:p("settings.language.label"),htmlFor:"display-language",children:(0,b.jsxs)(F.Select,{value:L,onValueChange:function(a){N(a),B.changeLanguage(a);let b="ar"===a||"he"===a?"rtl":"ltr";document.documentElement.lang=a,document.documentElement.dir=b,J({user:{preferredLanguage:a}})},children:[(0,b.jsx)(F.SelectTrigger,{id:"display-language","data-testid":"language-select",className:"w-44",children:(0,b.jsx)(F.SelectValue,{placeholder:p("settings.language.placeholder")})}),(0,b.jsx)(F.SelectContent,{children:aO.map(a=>(0,b.jsx)(F.SelectItem,{value:a.value,children:a.nativeName},a.value))})]})})})}),(0,b.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,b.jsxs)(aX,{icon:e.Bot,title:p("settings.agent.sectionTitle"),description:p("settings.agent.sectionDescription"),testId:"agent-settings-section",children:[(0,b.jsx)(aV,{label:p("settings.agent.agentAndModel"),description:p("settings.agent.agentAndModelDescription"),htmlFor:"agent-model-picker",children:(0,b.jsx)(T.AgentModelPicker,{initialAgentType:O,initialModel:a.models.default,mode:"settings",onAgentModelChange:a=>{P(a),aS.has(a)&&Q!==I.AgentAuthMethod.Token?(R(I.AgentAuthMethod.Token),J({agent:{type:a,authMethod:I.AgentAuthMethod.Token}})):aR.has(a)&&Q!==I.AgentAuthMethod.Session&&(R(I.AgentAuthMethod.Session),J({agent:{type:a,authMethod:I.AgentAuthMethod.Session}}))},className:"w-55"})}),(0,b.jsx)(aV,{label:"Auth Method",description:"How this agent authenticates",htmlFor:"agent-auth-method",children:(0,b.jsxs)(F.Select,{value:Q,onValueChange:a=>{R(a);let b={type:O,authMethod:a};a===I.AgentAuthMethod.Token&&(b.token=U),J({agent:b})},disabled:aR.has(O)||aS.has(O),children:[(0,b.jsx)(F.SelectTrigger,{id:"agent-auth-method","data-testid":"agent-auth-method-select",className:"w-55 cursor-pointer text-xs",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:aT.filter(a=>aR.has(O)?a.value===I.AgentAuthMethod.Session:!aS.has(O)||a.value===I.AgentAuthMethod.Token).map(a=>(0,b.jsx)(F.SelectItem,{value:a.value,children:a.label},a.value))})]})}),aS.has(O)&&(0,b.jsx)("div",{className:"border-b py-2.5 last:border-b-0",children:(0,b.jsx)("p",{className:"text-muted-foreground text-[11px] leading-tight",children:"This provider requires an API key for authentication. No CLI binary needed."})}),Q===I.AgentAuthMethod.Token&&(0,b.jsx)(aV,{label:"API Token",description:"Saves on blur",htmlFor:"agent-token",children:(0,b.jsxs)("div",{className:"relative w-55",children:[(0,b.jsx)(C.Input,{id:"agent-token","data-testid":"agent-token-input",type:W?"text":"password",value:U,onChange:a=>V(a.target.value),onBlur:()=>{U!==(a.agent.token??"")&&J({agent:{type:O,authMethod:Q,token:U}})},placeholder:"Enter your API token",className:"pe-10 text-xs"}),(0,b.jsx)(D.Button,{type:"button",variant:"ghost",size:"sm",className:"absolute top-0 right-0 h-full px-3 hover:bg-transparent",onClick:()=>X(!W),"data-testid":"toggle-token-visibility","aria-label":W?"Hide token":"Show token",children:W?(0,b.jsx)(w.EyeOff,{className:"h-3.5 w-3.5"}):(0,b.jsx)(v.Eye,{className:"h-3.5 w-3.5"})})]})})]}),(0,b.jsx)(a$,{links:[{label:p("settings.agent.links.agentSystem"),href:"https://github.com/shep-ai/shep/blob/main/docs/architecture/agent-system.md"},{label:p("settings.agent.links.addingAgents"),href:"https://github.com/shep-ai/shep/blob/main/docs/development/adding-agents.md"},{label:p("settings.agent.links.configurationGuide"),href:"https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md"}],children:p("settings.agent.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:f.Terminal,title:p("settings.environment.sectionTitle"),description:p("settings.environment.sectionDescription"),testId:"environment-settings-section",children:[(0,b.jsx)(aV,{label:p("settings.environment.defaultEditor"),description:p("settings.environment.defaultEditorDescription"),htmlFor:"default-editor",children:(0,b.jsxs)(F.Select,{value:Z,onValueChange:a=>{$(a),J({environment:{defaultEditor:a,shellPreference:_,terminalPreference:ab}})},children:[(0,b.jsx)(F.SelectTrigger,{id:"default-editor","data-testid":"editor-select",className:"w-55 cursor-pointer text-xs",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:aP.map(a=>{var c;let d=(c=a.value)&&c in S?S[c]:M;return(0,b.jsx)(F.SelectItem,{value:a.value,children:(0,b.jsxs)("span",{className:"flex items-center gap-2 text-xs",children:[(0,b.jsx)(d,{className:"h-4 w-4 shrink-0"}),a.label]})},a.value)})})]})}),(0,b.jsx)(aV,{label:p("settings.environment.shell"),description:p("settings.environment.shellDescription"),htmlFor:"shell-preference",children:(0,b.jsxs)(F.Select,{value:_,onValueChange:a=>{aa(a),J({environment:{defaultEditor:Z,shellPreference:a,terminalPreference:ab}})},children:[(0,b.jsx)(F.SelectTrigger,{id:"shell-preference","data-testid":"shell-select",className:"w-55 cursor-pointer text-xs",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:aQ.map(a=>(0,b.jsx)(F.SelectItem,{value:a.value,children:a.label},a.value))})]})}),(0,b.jsx)(aV,{label:p("settings.environment.terminal"),description:p("settings.environment.terminalDescription"),htmlFor:"terminal-preference",children:(0,b.jsxs)(F.Select,{value:ab,onValueChange:a=>{ac(a),J({environment:{defaultEditor:Z,shellPreference:_,terminalPreference:a}})},children:[(0,b.jsx)(F.SelectTrigger,{id:"terminal-preference","data-testid":"terminal-select",className:"w-55 cursor-pointer text-xs",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:ad.map(a=>(0,b.jsx)(F.SelectItem,{value:a.id,children:a.name},a.id))})]})})]}),(0,b.jsx)(a$,{links:[{label:p("settings.environment.links.configurationGuide"),href:"https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md"}],children:p("settings.environment.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:g.GitBranch,title:p("settings.workflow.title"),description:p("settings.workflow.sectionDescription"),testId:"workflow-settings-section",children:[(0,b.jsx)(aW,{label:p("settings.workflow.defaultFastMode"),description:p("settings.workflow.defaultFastModeDescription"),id:"default-fast-mode",testId:"switch-default-fast-mode",checked:aw,onChange:a=>{ax(a),J(bK({defaultFastMode:a}))}}),(0,b.jsx)(aZ,{children:p("settings.workflow.subsections.approve")}),(0,b.jsx)(aW,{label:p("settings.workflow.autoApprovePrd"),description:p("settings.workflow.autoApprovePrdDescription"),id:"allow-prd",testId:"switch-allow-prd",checked:ai,onChange:a=>{aj(a),J(bK({allowPrd:a}))}}),(0,b.jsx)(aW,{label:p("settings.workflow.autoApprovePlan"),description:p("settings.workflow.autoApprovePlanDescription"),id:"allow-plan",testId:"switch-allow-plan",checked:ak,onChange:a=>{al(a),J(bK({allowPlan:a}))}}),(0,b.jsx)(aW,{label:p("settings.workflow.autoApproveMerge"),description:p("settings.workflow.autoApproveMergeDescription"),id:"allow-merge",testId:"switch-allow-merge",checked:am,onChange:a=>{an(a),J(bK({allowMerge:a}))}}),(0,b.jsx)(aZ,{children:p("settings.workflow.subsections.evidence")}),(0,b.jsx)(aW,{label:p("settings.workflow.collectEvidence"),description:p("settings.workflow.collectEvidenceDescription"),id:"enable-evidence",testId:"switch-enable-evidence",checked:ao,onChange:a=>{ap(a),a?J(bK({enableEvidence:a})):(ar(!1),J(bK({enableEvidence:a,commitEvidence:!1})))}}),(0,b.jsx)(aW,{label:p("settings.workflow.addEvidenceToPr"),description:p("settings.workflow.addEvidenceToPrDescription"),id:"commit-evidence",testId:"switch-commit-evidence",checked:aq,disabled:!ao||!ae,onChange:a=>{ar(a),J(bK({commitEvidence:a}))}}),(0,b.jsx)(aZ,{children:p("settings.workflow.subsections.git")}),(0,b.jsx)(aW,{label:p("settings.workflow.pushOnComplete"),description:p("settings.workflow.pushOnCompleteDescription"),id:"push-on-complete",testId:"switch-push-on-complete",checked:ag,onChange:a=>{ah(a),J(bK({pushOnComplete:a}))}}),(0,b.jsx)(aW,{label:p("settings.workflow.openPrOnComplete"),description:p("settings.workflow.openPrOnCompleteDescription"),id:"open-pr",testId:"switch-open-pr",checked:ae,onChange:a=>{af(a),a?J(bK({openPr:a})):(ar(!1),J(bK({openPr:a,commitEvidence:!1})))}}),(0,b.jsx)(aW,{label:p("settings.workflow.watchCiAfterPush"),description:p("settings.workflow.watchCiAfterPushDescription"),id:"ci-watch-enabled",testId:"switch-ci-watch-enabled",checked:as,onChange:a=>{at(a),J(bK({ciWatchEnabled:a}))}}),(0,b.jsx)(aZ,{children:"Archive"}),(0,b.jsx)(aW,{label:"Auto-archive completed",description:"Automatically archive features after they reach the completed state",id:"auto-archive-enabled",testId:"switch-auto-archive-enabled",checked:ay,onChange:a=>{az(a),J(bK({autoArchiveEnabled:a}))}}),(0,b.jsx)(aV,{label:"Archive delay",description:"Minutes to wait after completion before archiving (1–1440)",htmlFor:"auto-archive-delay",children:(0,b.jsx)(aY,{id:"auto-archive-delay",testId:"input-auto-archive-delay",value:aA,placeholder:"10",min:1,max:1440,suffix:"min",onChange:a=>{aB(a)},onBlur:()=>{if(!ay)return;let a=parseInt(aA,10),b=Number.isNaN(a)?10:Math.min(1440,Math.max(1,a));aB(String(b)),J(bK({autoArchiveDelay:String(b)}))}})})]}),(0,b.jsx)(a$,{links:[{label:p("settings.workflow.links.approvalGates"),href:"https://github.com/shep-ai/shep/blob/main/specs/016-hitl-approval-gates/spec.yaml"},{label:p("settings.workflow.links.pushAndPrFlags"),href:"https://github.com/shep-ai/shep/blob/main/specs/037-feature-pr-push-flags/spec.yaml"}],children:p("settings.workflow.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:h.Activity,title:p("settings.ci.title"),description:p("settings.ci.description"),testId:"ci-settings-section",children:[(0,b.jsx)(aV,{label:p("settings.ci.maxFixAttempts"),description:p("settings.ci.maxFixAttemptsDescription"),htmlFor:"ci-max-fix",children:(0,b.jsx)(aY,{id:"ci-max-fix",testId:"ci-max-fix-input",placeholder:"3",value:aC,onChange:aD,onBlur:()=>{aC!==bw&&J(bK({ciMaxFix:aC}))},min:1,max:10})}),(0,b.jsx)(aV,{label:p("settings.ci.watchTimeout"),description:p("settings.ci.watchTimeoutDescription"),htmlFor:"ci-timeout",children:(0,b.jsx)(aY,{id:"ci-timeout",testId:"ci-timeout-input",placeholder:"300",value:aE,onChange:aF,onBlur:()=>{aE!==bx&&J(bK({ciTimeout:aE}))},min:30,step:30,suffix:"sec"})}),(0,b.jsx)(aV,{label:p("settings.ci.maxLogSize"),description:p("settings.ci.maxLogSizeDescription"),htmlFor:"ci-log-max",children:(0,b.jsx)(aY,{id:"ci-log-max",testId:"ci-log-max-input",placeholder:"50000",value:aG,onChange:aH,onBlur:()=>{aG!==by&&J(bK({ciLogMax:aG}))},min:1e3,step:5e3,suffix:"chars"})}),(0,b.jsx)(aV,{label:p("settings.ci.pollInterval"),description:p("settings.ci.pollIntervalDescription"),htmlFor:"ci-poll-interval",children:(0,b.jsx)(aY,{id:"ci-poll-interval",testId:"ci-poll-interval-input",placeholder:"30",value:aI,onChange:aJ,onBlur:()=>{aI!==bz&&J(bK({ciPollInterval:aI}))},min:5,step:5,suffix:"sec"})}),(0,b.jsx)(aW,{label:p("settings.ci.hideCiStatus"),description:p("settings.ci.hideCiStatusDescription"),id:"hide-ci-status",testId:"switch-hide-ci-status",checked:au,onChange:a=>{av(a),J(bK({hideCiStatus:a}))}})]}),(0,b.jsx)(a$,{links:[{label:p("settings.ci.links.cicdPipeline"),href:"https://github.com/shep-ai/shep/blob/main/docs/development/cicd.md"},{label:p("settings.ci.links.ciSecurityGates"),href:"https://github.com/shep-ai/shep/blob/main/specs/003-cicd-security-gates/spec.md"}],children:p("settings.ci.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:r.Timer,title:p("settings.stageTimeouts.title"),description:p("settings.stageTimeouts.description"),testId:"stage-timeouts-settings-section",children:[(0,b.jsx)(aZ,{children:p("settings.stageTimeouts.subsections.featureAgent")}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.analyze"),description:p("settings.stageTimeouts.analyzeDescription"),htmlFor:"timeout-analyze",children:(0,b.jsx)(aN,{id:"timeout-analyze",testId:"timeout-analyze-input",value:aL,onChange:aM,onBlur:()=>{aL!==bA&&J(bK({analyzeTimeout:aL}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.requirements"),description:p("settings.stageTimeouts.requirementsDescription"),htmlFor:"timeout-requirements",children:(0,b.jsx)(aN,{id:"timeout-requirements",testId:"timeout-requirements-input",value:a_,onChange:a0,onBlur:()=>{a_!==bB&&J(bK({requirementsTimeout:a_}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.research"),description:p("settings.stageTimeouts.researchDescription"),htmlFor:"timeout-research",children:(0,b.jsx)(aN,{id:"timeout-research",testId:"timeout-research-input",value:a1,onChange:a2,onBlur:()=>{a1!==bC&&J(bK({researchTimeout:a1}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.plan"),description:p("settings.stageTimeouts.planDescription"),htmlFor:"timeout-plan",children:(0,b.jsx)(aN,{id:"timeout-plan",testId:"timeout-plan-input",value:a3,onChange:a4,onBlur:()=>{a3!==bD&&J(bK({planTimeout:a3}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.implement"),description:p("settings.stageTimeouts.implementDescription"),htmlFor:"timeout-implement",children:(0,b.jsx)(aN,{id:"timeout-implement",testId:"timeout-implement-input",value:a5,onChange:a6,onBlur:()=>{a5!==bE&&J(bK({implementTimeout:a5}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.fastImplement"),description:p("settings.stageTimeouts.fastImplementDescription"),htmlFor:"timeout-fast-implement",children:(0,b.jsx)(aN,{id:"timeout-fast-implement",testId:"timeout-fast-implement-input",value:a7,onChange:a8,onBlur:()=>{a7!==bF&&J(bK({fastImplementTimeout:a7}))},defaultSeconds:1800})}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.merge"),description:p("settings.stageTimeouts.mergeDescription"),htmlFor:"timeout-merge",children:(0,b.jsx)(aN,{id:"timeout-merge",testId:"timeout-merge-input",value:a9,onChange:ba,onBlur:()=>{a9!==bG&&J(bK({mergeTimeout:a9}))},defaultSeconds:1800})}),(0,b.jsx)(aZ,{children:p("settings.stageTimeouts.subsections.analyzeRepoAgent")}),(0,b.jsx)(aV,{label:p("settings.stageTimeouts.analyze"),description:p("settings.stageTimeouts.analyzeDescription"),htmlFor:"timeout-analyze-repo",children:(0,b.jsx)(aN,{id:"timeout-analyze-repo",testId:"timeout-analyze-repo-input",value:bc,onChange:bd,onBlur:()=>{bc!==bH&&J(bK({analyzeRepoTimeout:bc}))},defaultSeconds:600})})]}),(0,b.jsx)(a$,{children:p("settings.stageTimeouts.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:j,title:p("settings.notifications.title"),description:p("settings.notifications.sectionDescription"),testId:"notification-settings-section",children:[(0,b.jsx)(aZ,{children:p("settings.notifications.channels")}),(0,b.jsx)(aW,{label:p("settings.notifications.inAppLabel"),description:p("settings.notifications.inAppDescription"),id:"notif-in-app",testId:"switch-in-app",checked:bq,onChange:a=>{br(a),J(bL({inApp:a}))}}),(0,b.jsx)(aZ,{children:p("settings.notifications.subsections.agentEvents")}),(0,b.jsx)(aW,{label:p("settings.notifications.events.agentStarted"),id:"notif-event-agentStarted",testId:"switch-event-agentStarted",checked:bs.agentStarted,onChange:a=>{let b={...bs,agentStarted:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.phaseCompleted"),id:"notif-event-phaseCompleted",testId:"switch-event-phaseCompleted",checked:bs.phaseCompleted,onChange:a=>{let b={...bs,phaseCompleted:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.waitingApproval"),id:"notif-event-waitingApproval",testId:"switch-event-waitingApproval",checked:bs.waitingApproval,onChange:a=>{let b={...bs,waitingApproval:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.agentCompleted"),id:"notif-event-agentCompleted",testId:"switch-event-agentCompleted",checked:bs.agentCompleted,onChange:a=>{let b={...bs,agentCompleted:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.agentFailed"),id:"notif-event-agentFailed",testId:"switch-event-agentFailed",checked:bs.agentFailed,onChange:a=>{let b={...bs,agentFailed:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aZ,{children:p("settings.notifications.subsections.pullRequestEvents")}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prMerged"),id:"notif-event-prMerged",testId:"switch-event-prMerged",checked:bs.prMerged,onChange:a=>{let b={...bs,prMerged:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prClosed"),id:"notif-event-prClosed",testId:"switch-event-prClosed",checked:bs.prClosed,onChange:a=>{let b={...bs,prClosed:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prChecksPassed"),id:"notif-event-prChecksPassed",testId:"switch-event-prChecksPassed",checked:bs.prChecksPassed,onChange:a=>{let b={...bs,prChecksPassed:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prChecksFailed"),id:"notif-event-prChecksFailed",testId:"switch-event-prChecksFailed",checked:bs.prChecksFailed,onChange:a=>{let b={...bs,prChecksFailed:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.prBlocked"),id:"notif-event-prBlocked",testId:"switch-event-prBlocked",checked:bs.prBlocked,onChange:a=>{let b={...bs,prBlocked:a};bt(b),J(bL({events:b}))}}),(0,b.jsx)(aW,{label:p("settings.notifications.events.mergeReviewReady"),id:"notif-event-mergeReviewReady",testId:"switch-event-mergeReviewReady",checked:bs.mergeReviewReady,onChange:a=>{let b={...bs,mergeReviewReady:a};bt(b),J(bL({events:b}))}})]}),(0,b.jsx)(a$,{links:[{label:p("settings.notifications.links.notificationSystem"),href:"https://github.com/shep-ai/shep/blob/main/specs/021-agent-notifications/spec.yaml"}],children:p("settings.notifications.hint")})]}),(0,b.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,b.jsxs)(aX,{icon:k,title:p("settings.featureFlags.title"),description:p("settings.featureFlags.sectionDescription"),badge:p("settings.featureFlags.badge"),testId:"feature-flags-settings-section",children:[(0,b.jsx)(aW,{label:p("settings.featureFlags.deployments"),description:p("settings.featureFlags.deploymentsDescription"),id:"flag-envDeploy",testId:"switch-flag-envDeploy",checked:bu.envDeploy,onChange:a=>{let b={...bu,envDeploy:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.debug"),description:p("settings.featureFlags.debugDescription"),id:"flag-debug",testId:"switch-flag-debug",checked:bu.debug,onChange:a=>{let b={...bu,debug:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.reactFileManager"),description:p("settings.featureFlags.reactFileManagerDescription"),id:"flag-reactFileManager",testId:"switch-flag-reactFileManager",checked:bu.reactFileManager,onChange:a=>{let b={...bu,reactFileManager:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.projects"),description:p("settings.featureFlags.projectsDescription"),id:"flag-projects",testId:"switch-flag-projects",checked:bu.projects,onChange:a=>{let b={...bu,projects:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.codeReview"),description:p("settings.featureFlags.codeReviewDescription"),id:"flag-code-review",testId:"switch-flag-code-review",checked:bu.codeReview,onChange:a=>{let b={...bu,codeReview:a};bv(b),J({featureFlags:b})}}),(0,b.jsx)(aW,{label:p("settings.featureFlags.collaboration"),description:p("settings.featureFlags.collaborationDescription"),id:"flag-collaboration",testId:"switch-flag-collaboration",checked:bu.collaboration,onChange:a=>{let b={...bu,collaboration:a};bv(b),J({featureFlags:b})}})]}),(0,b.jsx)(a$,{children:p("settings.featureFlags.hint")})]}),(0,b.jsxs)("div",{id:"section-interactive-agent",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,b.jsxs)(aX,{icon:s.MessageSquare,title:p("settings.interactiveAgent.title"),description:p("settings.interactiveAgent.description"),testId:"interactive-agent-settings-section",children:[(0,b.jsx)(aW,{label:p("settings.interactiveAgent.enableChatTab"),description:p("settings.interactiveAgent.enableChatTabDescription"),id:"interactive-agent-enabled",testId:"switch-interactive-agent-enabled",checked:bf,onChange:a=>{bg(a),J({interactiveAgent:{enabled:a,autoTimeoutMinutes:parseInt(bh,10)||15,maxConcurrentSessions:parseInt(bj,10)||3}})}}),(0,b.jsx)(aV,{label:p("settings.interactiveAgent.autoTimeout"),description:p("settings.interactiveAgent.autoTimeoutDescription"),htmlFor:"interactive-agent-timeout",children:(0,b.jsx)(aY,{id:"interactive-agent-timeout",testId:"input-interactive-agent-timeout",value:bh,placeholder:"15",min:1,max:120,suffix:"min",onChange:bi,onBlur:()=>{let a=parseInt(bh,10),b=Number.isNaN(a)?15:Math.min(120,Math.max(1,a));bi(String(b)),J({interactiveAgent:{enabled:bf,autoTimeoutMinutes:b,maxConcurrentSessions:parseInt(bj,10)||3}})}})}),(0,b.jsx)(aV,{label:p("settings.interactiveAgent.maxConcurrentSessions"),description:p("settings.interactiveAgent.maxConcurrentSessionsDescription"),htmlFor:"interactive-agent-sessions",children:(0,b.jsx)(aY,{id:"interactive-agent-sessions",testId:"input-interactive-agent-sessions",value:bj,placeholder:"3",min:1,max:10,onChange:bk,onBlur:()=>{let a=parseInt(bj,10),b=Number.isNaN(a)?3:Math.min(10,Math.max(1,a));bk(String(b)),J({interactiveAgent:{enabled:bf,autoTimeoutMinutes:parseInt(bh,10)||15,maxConcurrentSessions:b}})}})})]}),(0,b.jsx)(a$,{children:p("settings.interactiveAgent.hint")})]}),(0,b.jsxs)("div",{id:"section-home-page",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,b.jsx)(aX,{icon:u.Home,title:p("settings.homePage.title"),description:p("settings.homePage.description"),testId:"home-page-settings-section",children:(0,b.jsx)(aV,{label:p("settings.homePage.label"),description:p("settings.homePage.labelDescription"),htmlFor:"default-home-page",children:(0,b.jsxs)(F.Select,{value:bl,onValueChange:a=>{bm(a),J({defaultHomePage:a})},children:[(0,b.jsx)(F.SelectTrigger,{id:"default-home-page","data-testid":"default-home-page-select",className:"w-44",children:(0,b.jsx)(F.SelectValue,{})}),(0,b.jsx)(F.SelectContent,{children:Object.values(I.DefaultHomePage).map(a=>(0,b.jsx)(F.SelectItem,{value:a,children:p(`settings.homePage.options.${a}`)},a))})]})})}),(0,b.jsx)(a$,{children:p("settings.homePage.hint")})]}),(0,b.jsxs)("div",{id:"section-fab-layout",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,b.jsx)(aX,{icon:t.LayoutGrid,title:p("settings.fabLayout.title"),description:p("settings.fabLayout.description"),testId:"fab-layout-settings-section",children:(0,b.jsx)(aW,{label:p("settings.fabLayout.swapPosition"),description:p("settings.fabLayout.swapPositionDescription"),id:"fab-swap-position",testId:"switch-fab-swap-position",checked:bo,onChange:a=>{bp(a),J({fabLayout:{swapPosition:a}})}})}),(0,b.jsx)(a$,{children:p("settings.fabLayout.hint")})]}),(0,b.jsxs)("div",{id:"section-integrations",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,b.jsx)(aX,{icon:x.Github,title:"GitHub",description:"Connect a Personal Access Token so gh, git push, and other tools authenticate automatically in shep terminals.",testId:"github-integration-section",children:(0,b.jsx)(Y,{})}),(0,b.jsx)(a$,{children:"The token is encrypted with your local LocalSecretBox and only injected into terminal sessions you start from shep. It never leaves this machine."})]}),(0,b.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,b.jsxs)(aX,{icon:l,title:p("settings.database.title"),description:p("settings.database.sectionDescription"),testId:"database-settings-section",children:[(0,b.jsx)(aV,{label:p("settings.database.location"),description:p("settings.database.locationDescription"),children:(0,b.jsx)("span",{className:"text-muted-foreground max-w-50 truncate font-mono text-xs","data-testid":"shep-home-path",children:i})}),(0,b.jsx)(aV,{label:p("settings.database.size"),children:(0,b.jsx)("span",{className:"text-muted-foreground text-xs","data-testid":"db-file-size",children:n})})]}),(0,b.jsx)(a$,{links:[{label:p("settings.database.links.settingsService"),href:"https://github.com/shep-ai/shep/blob/main/docs/architecture/settings-service.md"},{label:p("settings.database.links.settingsSpec"),href:"https://github.com/shep-ai/shep/blob/main/specs/005-global-settings-service/spec.md"}],children:p("settings.database.hint")})]})]})]})}a.s(["SettingsPageClient",()=>a_],379020)}];
2
2
 
3
3
  //# sourceMappingURL=b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map