@shepai/cli 1.160.0 → 1.161.0-pr502.e6799ec

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 (237) hide show
  1. package/apis/json-schema/WorkflowConfig.yaml +5 -0
  2. package/dist/packages/core/src/application/use-cases/features/auto-archive-completed.use-case.d.ts +30 -0
  3. package/dist/packages/core/src/application/use-cases/features/auto-archive-completed.use-case.d.ts.map +1 -0
  4. package/dist/packages/core/src/application/use-cases/features/auto-archive-completed.use-case.js +75 -0
  5. package/dist/packages/core/src/application/use-cases/features/auto-resolve-merged-branches.use-case.d.ts +38 -0
  6. package/dist/packages/core/src/application/use-cases/features/auto-resolve-merged-branches.use-case.d.ts.map +1 -0
  7. package/dist/packages/core/src/application/use-cases/features/auto-resolve-merged-branches.use-case.js +190 -0
  8. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  9. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -0
  10. package/dist/packages/core/src/domain/generated/output.d.ts +4 -0
  11. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  12. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  13. package/dist/packages/core/src/infrastructure/di/container.js +5 -0
  14. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -0
  15. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  16. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +3 -0
  17. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-auto-archive-delay-minutes.d.ts +15 -0
  18. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-auto-archive-delay-minutes.d.ts.map +1 -0
  19. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-auto-archive-delay-minutes.js +20 -0
  20. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  21. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +6 -3
  22. package/dist/packages/core/src/infrastructure/services/auto-archive/auto-archive-watcher.service.d.ts +48 -0
  23. package/dist/packages/core/src/infrastructure/services/auto-archive/auto-archive-watcher.service.d.ts.map +1 -0
  24. package/dist/packages/core/src/infrastructure/services/auto-archive/auto-archive-watcher.service.js +101 -0
  25. package/dist/src/presentation/cli/commands/_serve.command.d.ts.map +1 -1
  26. package/dist/src/presentation/cli/commands/_serve.command.js +5 -0
  27. package/dist/src/presentation/cli/commands/ui.command.d.ts.map +1 -1
  28. package/dist/src/presentation/cli/commands/ui.command.js +5 -0
  29. package/dist/src/presentation/web/app/(dashboard)/get-graph-data.d.ts.map +1 -1
  30. package/dist/src/presentation/web/app/(dashboard)/get-graph-data.js +10 -0
  31. package/dist/src/presentation/web/components/common/index.d.ts +1 -0
  32. package/dist/src/presentation/web/components/common/index.d.ts.map +1 -1
  33. package/dist/src/presentation/web/components/common/index.js +1 -0
  34. package/dist/src/presentation/web/components/common/repo-group/index.d.ts +3 -0
  35. package/dist/src/presentation/web/components/common/repo-group/index.d.ts.map +1 -0
  36. package/dist/src/presentation/web/components/common/repo-group/index.js +1 -0
  37. package/dist/src/presentation/web/components/common/repo-group/repo-group.d.ts +12 -0
  38. package/dist/src/presentation/web/components/common/repo-group/repo-group.d.ts.map +1 -0
  39. package/dist/src/presentation/web/components/common/repo-group/repo-group.js +9 -0
  40. package/dist/src/presentation/web/components/common/repo-group/repo-group.stories.d.ts +10 -0
  41. package/dist/src/presentation/web/components/common/repo-group/repo-group.stories.d.ts.map +1 -0
  42. package/dist/src/presentation/web/components/common/repo-group/repo-group.stories.js +42 -0
  43. package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
  44. package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +4 -1
  45. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  46. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +23 -1
  47. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts +2 -0
  48. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
  49. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +31 -6
  50. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.d.ts +1 -0
  51. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.d.ts.map +1 -1
  52. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.js +108 -3
  53. package/dist/src/presentation/web/dev-server.js +10 -0
  54. package/dist/src/presentation/web/hooks/sidebar-features-context.d.ts +4 -0
  55. package/dist/src/presentation/web/hooks/sidebar-features-context.d.ts.map +1 -1
  56. package/dist/tsconfig.build.tsbuildinfo +1 -1
  57. package/package.json +1 -1
  58. package/web/.next/BUILD_ID +1 -1
  59. package/web/.next/build-manifest.json +2 -2
  60. package/web/.next/fallback-build-manifest.json +2 -2
  61. package/web/.next/prerender-manifest.json +3 -3
  62. package/web/.next/required-server-files.js +3 -3
  63. package/web/.next/required-server-files.json +3 -3
  64. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +28 -28
  65. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  66. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  67. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +26 -26
  68. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  69. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  70. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +29 -29
  71. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  72. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  73. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +36 -36
  74. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  75. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  76. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +36 -36
  77. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  78. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  79. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +26 -26
  80. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  81. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  82. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +26 -26
  83. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  84. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  85. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +26 -26
  86. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  87. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  88. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +29 -29
  89. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  90. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  91. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +36 -36
  92. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  93. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  94. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +36 -36
  95. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  96. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  97. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +26 -26
  98. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  99. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  100. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +26 -26
  101. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  102. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  103. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +26 -26
  104. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  105. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  106. package/web/.next/server/app/_global-error.html +2 -2
  107. package/web/.next/server/app/_global-error.rsc +1 -1
  108. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  109. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  110. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  111. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  112. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  113. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +5 -5
  114. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  115. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  116. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  117. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  118. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  119. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  120. package/web/.next/server/app/settings/page/server-reference-manifest.json +8 -8
  121. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  122. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  123. package/web/.next/server/app/skills/page/server-reference-manifest.json +10 -10
  124. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  125. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  126. package/web/.next/server/app/tools/page/server-reference-manifest.json +10 -10
  127. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  128. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  129. package/web/.next/server/app/version/page/server-reference-manifest.json +5 -5
  130. package/web/.next/server/app/version/page.js.nft.json +1 -1
  131. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  132. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
  133. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
  134. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  135. package/web/.next/server/chunks/[root-of-the-server]__beda892a._.js.map +1 -1
  136. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  137. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  138. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  139. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
  140. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  141. package/web/.next/server/chunks/ssr/[root-of-the-server]__209c9597._.js +1 -1
  142. package/web/.next/server/chunks/ssr/[root-of-the-server]__209c9597._.js.map +1 -1
  143. package/web/.next/server/chunks/ssr/[root-of-the-server]__27301e38._.js +1 -1
  144. package/web/.next/server/chunks/ssr/[root-of-the-server]__27301e38._.js.map +1 -1
  145. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  146. package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js +1 -1
  147. package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js.map +1 -1
  148. package/web/.next/server/chunks/ssr/[root-of-the-server]__6fecf886._.js +1 -1
  149. package/web/.next/server/chunks/ssr/[root-of-the-server]__6fecf886._.js.map +1 -1
  150. package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js +1 -1
  151. package/web/.next/server/chunks/ssr/[root-of-the-server]__8d27866c._.js +2 -2
  152. package/web/.next/server/chunks/ssr/[root-of-the-server]__8d27866c._.js.map +1 -1
  153. package/web/.next/server/chunks/ssr/[root-of-the-server]__9f3504c7._.js +1 -1
  154. package/web/.next/server/chunks/ssr/[root-of-the-server]__9f3504c7._.js.map +1 -1
  155. package/web/.next/server/chunks/ssr/[root-of-the-server]__bd6ed91a._.js +2 -2
  156. package/web/.next/server/chunks/ssr/[root-of-the-server]__bd6ed91a._.js.map +1 -1
  157. package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js +1 -1
  158. package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js.map +1 -1
  159. package/web/.next/server/chunks/ssr/[root-of-the-server]__ee0eaaf9._.js +3 -0
  160. package/web/.next/server/chunks/ssr/[root-of-the-server]__ee0eaaf9._.js.map +1 -0
  161. package/web/.next/server/chunks/ssr/{_bcecbd2d._.js → _02faf7b0._.js} +2 -2
  162. package/web/.next/server/chunks/ssr/{_bcecbd2d._.js.map → _02faf7b0._.js.map} +1 -1
  163. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  164. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  165. package/web/.next/server/chunks/ssr/_0dc06d07._.js.map +1 -1
  166. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  167. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  168. package/web/.next/server/chunks/ssr/{_bcfa8457._.js → _1c309165._.js} +2 -2
  169. package/web/.next/server/chunks/ssr/{_bcfa8457._.js.map → _1c309165._.js.map} +1 -1
  170. package/web/.next/server/chunks/ssr/_3a0b989f._.js +2 -2
  171. package/web/.next/server/chunks/ssr/_3a0b989f._.js.map +1 -1
  172. package/web/.next/server/chunks/ssr/_5119a3df._.js.map +1 -1
  173. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  174. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  175. package/web/.next/server/chunks/ssr/_5f69c13f._.js +1 -1
  176. package/web/.next/server/chunks/ssr/_5f69c13f._.js.map +1 -1
  177. package/web/.next/server/chunks/ssr/_7c5b97c6._.js +1 -1
  178. package/web/.next/server/chunks/ssr/_7c5b97c6._.js.map +1 -1
  179. package/web/.next/server/chunks/ssr/_82c57f10._.js +1 -1
  180. package/web/.next/server/chunks/ssr/_82c57f10._.js.map +1 -1
  181. package/web/.next/server/chunks/ssr/{_401aad6a._.js → _89888c28._.js} +2 -2
  182. package/web/.next/server/chunks/ssr/{_401aad6a._.js.map → _89888c28._.js.map} +1 -1
  183. package/web/.next/server/chunks/ssr/_9495d50b._.js +1 -1
  184. package/web/.next/server/chunks/ssr/_9495d50b._.js.map +1 -1
  185. package/web/.next/server/chunks/ssr/_a0e3f7e4._.js +1 -1
  186. package/web/.next/server/chunks/ssr/_a0e3f7e4._.js.map +1 -1
  187. package/web/.next/server/chunks/ssr/_ac4a3873._.js +1 -1
  188. package/web/.next/server/chunks/ssr/_ac4a3873._.js.map +1 -1
  189. package/web/.next/server/chunks/ssr/_bcaea66b._.js.map +1 -1
  190. package/web/.next/server/chunks/ssr/_ca0aa7f0._.js +1 -1
  191. package/web/.next/server/chunks/ssr/_ca0aa7f0._.js.map +1 -1
  192. package/web/.next/server/chunks/ssr/_cb5a021e._.js +1 -1
  193. package/web/.next/server/chunks/ssr/_cb5a021e._.js.map +1 -1
  194. package/web/.next/server/chunks/ssr/{_d7406c2b._.js → _d6095b7d._.js} +2 -2
  195. package/web/.next/server/chunks/ssr/{_d7406c2b._.js.map → _d6095b7d._.js.map} +1 -1
  196. package/web/.next/server/chunks/ssr/_d86175ae._.js +1 -1
  197. package/web/.next/server/chunks/ssr/_d86175ae._.js.map +1 -1
  198. package/web/.next/server/chunks/ssr/_d8bedf13._.js +1 -1
  199. package/web/.next/server/chunks/ssr/_d8bedf13._.js.map +1 -1
  200. package/web/.next/server/chunks/ssr/_fa7efce3._.js +2 -2
  201. package/web/.next/server/chunks/ssr/_fa7efce3._.js.map +1 -1
  202. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  203. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  204. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  205. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
  206. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
  207. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  208. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  209. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  210. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  211. package/web/.next/server/pages/500.html +2 -2
  212. package/web/.next/server/server-reference-manifest.js +1 -1
  213. package/web/.next/server/server-reference-manifest.json +45 -45
  214. package/web/.next/static/chunks/{a277dde6a33d761a.js → 0f530fbc8e92cdf1.js} +1 -1
  215. package/web/.next/static/chunks/{0c34c75262578118.js → 1e4d12f926104279.js} +1 -1
  216. package/web/.next/static/chunks/24f89a05416dbf98.js +1 -0
  217. package/web/.next/static/chunks/{ec29c15b7610bf44.js → 25cd2e12b5e9ea1f.js} +3 -3
  218. package/web/.next/static/chunks/4757a1c5e88907e7.js +1 -0
  219. package/web/.next/static/chunks/5e1e5ed662b1db5c.js +7 -0
  220. package/web/.next/static/chunks/86c476f04ff32e7b.css +1 -0
  221. package/web/.next/static/chunks/{91c47fe1490ee9d2.js → 8eae623a6cacf293.js} +2 -2
  222. package/web/.next/static/chunks/{a4c531d2bd6ee3a1.js → 9af792d9beccc4cd.js} +1 -1
  223. package/web/.next/static/chunks/{47101aacecf73db2.js → a2fe40c99165d226.js} +2 -2
  224. package/web/.next/static/chunks/ac2f09da00dccd74.js +1 -0
  225. package/web/.next/static/chunks/c96f19b37f4aeb1a.js +1 -0
  226. package/web/.next/static/chunks/{3f3392825baaeccc.js → d26f3595acbc9b19.js} +1 -1
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__f8dd4422._.js +0 -3
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__f8dd4422._.js.map +0 -1
  229. package/web/.next/static/chunks/063fdc7b93122947.js +0 -1
  230. package/web/.next/static/chunks/0ee69810b6988211.js +0 -1
  231. package/web/.next/static/chunks/2273b81cd7c7d2af.css +0 -1
  232. package/web/.next/static/chunks/970be3f5fd3c241f.js +0 -1
  233. package/web/.next/static/chunks/a73b2859b406358e.js +0 -7
  234. package/web/.next/static/chunks/e7896b32fb180b2b.js +0 -1
  235. /package/web/.next/static/{ngP4CzWRianvh1cHNq8_I → zIDPEvpCNwkdD3EzM4M4L}/_buildManifest.js +0 -0
  236. /package/web/.next/static/{ngP4CzWRianvh1cHNq8_I → zIDPEvpCNwkdD3EzM4M4L}/_clientMiddlewareManifest.json +0 -0
  237. /package/web/.next/static/{ngP4CzWRianvh1cHNq8_I → zIDPEvpCNwkdD3EzM4M4L}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,41952,e=>{"use strict";var t=e.i(20314),n=e.i(79054),i=e.i(23925),s=e.i(26370),a=e.i(38573),r=e.i(49228),l=e.i(3645);let o=(0,l.default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]),c=(0,l.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"}]]),d=(0,l.default)("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]),u=(0,l.default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);var p=e.i(32494),g=e.i(10714),g=g,m=e.i(3214),h=e.i(30702);let f=(0,l.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 v=e.i(58860),x=e.i(48109),w=e.i(60112);e.i(41001);var b=e.i(64780),y=e.i(31777),j=e.i(41957),S=e.i(51911),C=e.i(26036),k=e.i(27069),N=e.i(91967),M=e.i(87342),I=e.i(5978),T=e.i(22528),P=e.i(66033),E=e.i(53532),R=e.i(41687),D=e.i(56720),A=e.i(13123),F=e.i(52740),L=e.i(39979),B=e.i(87620),H=e.i(86874),z=e.i(29297),_=e.i(36589),V=e.i(5192),K=e.i(23405),O=e.i(1693),W=e.i(73772),U=e.i(13044),G=[" ","Enter","ArrowUp","ArrowDown"],q=[" ","Enter"],$="Select",[Y,Z,X]=(0,M.createCollection)($),[J,Q]=(0,T.createContextScope)($,[X,F.createPopperScope]),ee=(0,F.createPopperScope)(),[et,en]=J($),[ei,es]=J($),ea=e=>{let{__scopeSelect:i,children:s,open:a,defaultOpen:r,onOpenChange:l,value:o,defaultValue:c,onValueChange:d,dir:u,name:p,autoComplete:g,disabled:m,required:h,form:f}=e,v=ee(i),[x,w]=n.useState(null),[b,y]=n.useState(null),[j,S]=n.useState(!1),C=(0,P.useDirection)(u),[k,N]=(0,_.useControllableState)({prop:a,defaultProp:r??!1,onChange:l,caller:$}),[M,I]=(0,_.useControllableState)({prop:o,defaultProp:c,onChange:d,caller:$}),T=n.useRef(null),E=!x||f||!!x.closest("form"),[R,D]=n.useState(new Set),L=Array.from(R).map(e=>e.props.value).join(";");return(0,t.jsx)(F.Root,{...v,children:(0,t.jsxs)(et,{required:h,scope:i,trigger:x,onTriggerChange:w,valueNode:b,onValueNodeChange:y,valueNodeHasChildren:j,onValueNodeHasChildrenChange:S,contentId:(0,A.useId)(),value:M,onValueChange:I,open:k,onOpenChange:N,dir:C,triggerPointerDownPosRef:T,disabled:m,children:[(0,t.jsx)(Y.Provider,{scope:i,children:(0,t.jsx)(ei,{scope:e.__scopeSelect,onNativeOptionAdd:n.useCallback(e=>{D(t=>new Set(t).add(e))},[]),onNativeOptionRemove:n.useCallback(e=>{D(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:s})}),E?(0,t.jsxs)(eG,{"aria-hidden":!0,required:h,tabIndex:-1,name:p,autoComplete:g,value:M,onChange:e=>I(e.target.value),disabled:m,form:f,children:[void 0===M?(0,t.jsx)("option",{value:""}):null,Array.from(R)]},L):null]})})};ea.displayName=$;var er="SelectTrigger",el=n.forwardRef((e,i)=>{let{__scopeSelect:s,disabled:a=!1,...r}=e,l=ee(s),o=en(er,s),c=o.disabled||a,d=(0,I.useComposedRefs)(i,o.onTriggerChange),u=Z(s),p=n.useRef("touch"),[g,m,h]=e$(e=>{let t=u().filter(e=>!e.disabled),n=t.find(e=>e.value===o.value),i=eY(t,e,n);void 0!==i&&o.onValueChange(i.value)}),f=e=>{c||(o.onOpenChange(!0),h()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,t.jsx)(F.Anchor,{asChild:!0,...l,children:(0,t.jsx)(B.Primitive.button,{type:"button",role:"combobox","aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":"none",dir:o.dir,"data-state":o.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":eq(o.value)?"":void 0,...r,ref:d,onClick:(0,N.composeEventHandlers)(r.onClick,e=>{e.currentTarget.focus(),"mouse"!==p.current&&f(e)}),onPointerDown:(0,N.composeEventHandlers)(r.onPointerDown,e=>{p.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&"mouse"===e.pointerType&&(f(e),e.preventDefault())}),onKeyDown:(0,N.composeEventHandlers)(r.onKeyDown,e=>{let t=""!==g.current;e.ctrlKey||e.altKey||e.metaKey||1!==e.key.length||m(e.key),(!t||" "!==e.key)&&G.includes(e.key)&&(f(),e.preventDefault())})})})});el.displayName=er;var eo="SelectValue",ec=n.forwardRef((e,n)=>{let{__scopeSelect:i,className:s,style:a,children:r,placeholder:l="",...o}=e,c=en(eo,i),{onValueNodeHasChildrenChange:d}=c,u=void 0!==r,p=(0,I.useComposedRefs)(n,c.onValueNodeChange);return(0,V.useLayoutEffect)(()=>{d(u)},[d,u]),(0,t.jsx)(B.Primitive.span,{...o,ref:p,style:{pointerEvents:"none"},children:eq(c.value)?(0,t.jsx)(t.Fragment,{children:l}):r})});ec.displayName=eo;var ed=n.forwardRef((e,n)=>{let{__scopeSelect:i,children:s,...a}=e;return(0,t.jsx)(B.Primitive.span,{"aria-hidden":!0,...a,ref:n,children:s||"▼"})});ed.displayName="SelectIcon";var eu=e=>(0,t.jsx)(L.Portal,{asChild:!0,...e});eu.displayName="SelectPortal";var ep="SelectContent",eg=n.forwardRef((e,i)=>{let s=en(ep,e.__scopeSelect),[a,r]=n.useState();return((0,V.useLayoutEffect)(()=>{r(new DocumentFragment)},[]),s.open)?(0,t.jsx)(ev,{...e,ref:i}):a?C.createPortal((0,t.jsx)(em,{scope:e.__scopeSelect,children:(0,t.jsx)(Y.Slot,{scope:e.__scopeSelect,children:(0,t.jsx)("div",{children:e.children})})}),a):null});eg.displayName=ep;var[em,eh]=J(ep),ef=(0,H.createSlot)("SelectContent.RemoveScroll"),ev=n.forwardRef((e,i)=>{let{__scopeSelect:s,position:a="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:l,onPointerDownOutside:o,side:c,sideOffset:d,align:u,alignOffset:p,arrowPadding:g,collisionBoundary:m,collisionPadding:h,sticky:f,hideWhenDetached:v,avoidCollisions:x,...w}=e,b=en(ep,s),[y,j]=n.useState(null),[S,C]=n.useState(null),k=(0,I.useComposedRefs)(i,e=>j(e)),[M,T]=n.useState(null),[P,A]=n.useState(null),F=Z(s),[L,B]=n.useState(!1),H=n.useRef(!1);n.useEffect(()=>{if(y)return(0,W.hideOthers)(y)},[y]),(0,R.useFocusGuards)();let z=n.useCallback(e=>{let[t,...n]=F().map(e=>e.ref.current),[i]=n.slice(-1),s=document.activeElement;for(let n of e)if(n===s||(n?.scrollIntoView({block:"nearest"}),n===t&&S&&(S.scrollTop=0),n===i&&S&&(S.scrollTop=S.scrollHeight),n?.focus(),document.activeElement!==s))return},[F,S]),_=n.useCallback(()=>z([M,y]),[z,M,y]);n.useEffect(()=>{L&&_()},[L,_]);let{onOpenChange:V,triggerPointerDownPosRef:K}=b;n.useEffect(()=>{if(y){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(K.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(K.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():y.contains(n.target)||V(!1),document.removeEventListener("pointermove",t),K.current=null};return null!==K.current&&(document.addEventListener("pointermove",t),document.addEventListener("pointerup",n,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",t),document.removeEventListener("pointerup",n,{capture:!0})}}},[y,V,K]),n.useEffect(()=>{let e=()=>V(!1);return window.addEventListener("blur",e),window.addEventListener("resize",e),()=>{window.removeEventListener("blur",e),window.removeEventListener("resize",e)}},[V]);let[O,G]=e$(e=>{let t=F().filter(e=>!e.disabled),n=t.find(e=>e.ref.current===document.activeElement),i=eY(t,e,n);i&&setTimeout(()=>i.ref.current.focus())}),q=n.useCallback((e,t,n)=>{let i=!H.current&&!n;(void 0!==b.value&&b.value===t||i)&&(T(e),i&&(H.current=!0))},[b.value]),$=n.useCallback(()=>y?.focus(),[y]),Y=n.useCallback((e,t,n)=>{let i=!H.current&&!n;(void 0!==b.value&&b.value===t||i)&&A(e)},[b.value]),X="popper"===a?ew:ex,J=X===ew?{side:c,sideOffset:d,align:u,alignOffset:p,arrowPadding:g,collisionBoundary:m,collisionPadding:h,sticky:f,hideWhenDetached:v,avoidCollisions:x}:{};return(0,t.jsx)(em,{scope:s,content:y,viewport:S,onViewportChange:C,itemRefCallback:q,selectedItem:M,onItemLeave:$,itemTextRefCallback:Y,focusSelectedItem:_,selectedItemText:P,position:a,isPositioned:L,searchRef:O,children:(0,t.jsx)(U.RemoveScroll,{as:ef,allowPinchZoom:!0,children:(0,t.jsx)(D.FocusScope,{asChild:!0,trapped:b.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:(0,N.composeEventHandlers)(r,e=>{b.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,t.jsx)(E.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:l,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>b.onOpenChange(!1),children:(0,t.jsx)(X,{role:"listbox",id:b.contentId,"data-state":b.open?"open":"closed",dir:b.dir,onContextMenu:e=>e.preventDefault(),...w,...J,onPlaced:()=>B(!0),ref:k,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:(0,N.composeEventHandlers)(w.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if("Tab"===e.key&&e.preventDefault(),t||1!==e.key.length||G(e.key),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let t=F().filter(e=>!e.disabled).map(e=>e.ref.current);if(["ArrowUp","End"].includes(e.key)&&(t=t.slice().reverse()),["ArrowUp","ArrowDown"].includes(e.key)){let n=e.target,i=t.indexOf(n);t=t.slice(i+1)}setTimeout(()=>z(t)),e.preventDefault()}})})})})})})});ev.displayName="SelectContentImpl";var ex=n.forwardRef((e,i)=>{let{__scopeSelect:s,onPlaced:a,...r}=e,l=en(ep,s),o=eh(ep,s),[c,d]=n.useState(null),[u,p]=n.useState(null),g=(0,I.useComposedRefs)(i,e=>p(e)),m=Z(s),h=n.useRef(!1),f=n.useRef(!0),{viewport:v,selectedItem:x,selectedItemText:w,focusSelectedItem:b}=o,y=n.useCallback(()=>{if(l.trigger&&l.valueNode&&c&&u&&v&&x&&w){let e=l.trigger.getBoundingClientRect(),t=u.getBoundingClientRect(),n=l.valueNode.getBoundingClientRect(),i=w.getBoundingClientRect();if("rtl"!==l.dir){let s=i.left-t.left,a=n.left-s,r=e.left-a,l=e.width+r,o=Math.max(l,t.width),d=window.innerWidth-10,u=(0,k.clamp)(a,[10,Math.max(10,d-o)]);c.style.minWidth=l+"px",c.style.left=u+"px"}else{let s=t.right-i.right,a=window.innerWidth-n.right-s,r=window.innerWidth-e.right-a,l=e.width+r,o=Math.max(l,t.width),d=window.innerWidth-10,u=(0,k.clamp)(a,[10,Math.max(10,d-o)]);c.style.minWidth=l+"px",c.style.right=u+"px"}let s=m(),r=window.innerHeight-20,o=v.scrollHeight,d=window.getComputedStyle(u),p=parseInt(d.borderTopWidth,10),g=parseInt(d.paddingTop,10),f=parseInt(d.borderBottomWidth,10),b=p+g+o+parseInt(d.paddingBottom,10)+f,y=Math.min(5*x.offsetHeight,b),j=window.getComputedStyle(v),S=parseInt(j.paddingTop,10),C=parseInt(j.paddingBottom,10),N=e.top+e.height/2-10,M=x.offsetHeight/2,I=p+g+(x.offsetTop+M);if(I<=N){let e=s.length>0&&x===s[s.length-1].ref.current;c.style.bottom="0px";let t=Math.max(r-N,M+(e?C:0)+(u.clientHeight-v.offsetTop-v.offsetHeight)+f);c.style.height=I+t+"px"}else{let e=s.length>0&&x===s[0].ref.current;c.style.top="0px";let t=Math.max(N,p+v.offsetTop+(e?S:0)+M);c.style.height=t+(b-I)+"px",v.scrollTop=I-N+v.offsetTop}c.style.margin="10px 0",c.style.minHeight=y+"px",c.style.maxHeight=r+"px",a?.(),requestAnimationFrame(()=>h.current=!0)}},[m,l.trigger,l.valueNode,c,u,v,x,w,l.dir,a]);(0,V.useLayoutEffect)(()=>y(),[y]);let[j,S]=n.useState();(0,V.useLayoutEffect)(()=>{u&&S(window.getComputedStyle(u).zIndex)},[u]);let C=n.useCallback(e=>{e&&!0===f.current&&(y(),b?.(),f.current=!1)},[y,b]);return(0,t.jsx)(eb,{scope:s,contentWrapper:c,shouldExpandOnScrollRef:h,onScrollButtonChange:C,children:(0,t.jsx)("div",{ref:d,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:(0,t.jsx)(B.Primitive.div,{...r,ref:g,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})});ex.displayName="SelectItemAlignedPosition";var ew=n.forwardRef((e,n)=>{let{__scopeSelect:i,align:s="start",collisionPadding:a=10,...r}=e,l=ee(i);return(0,t.jsx)(F.Content,{...l,...r,ref:n,align:s,collisionPadding:a,style:{boxSizing:"border-box",...r.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ew.displayName="SelectPopperPosition";var[eb,ey]=J(ep,{}),ej="SelectViewport",eS=n.forwardRef((e,i)=>{let{__scopeSelect:s,nonce:a,...r}=e,l=eh(ej,s),o=ey(ej,s),c=(0,I.useComposedRefs)(i,l.onViewportChange),d=n.useRef(0);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:a}),(0,t.jsx)(Y.Slot,{scope:s,children:(0,t.jsx)(B.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:(0,N.composeEventHandlers)(r.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:i}=o;if(i?.current&&n){let e=Math.abs(d.current-t.scrollTop);if(e>0){let i=window.innerHeight-20,s=Math.max(parseFloat(n.style.minHeight),parseFloat(n.style.height));if(s<i){let a=s+e,r=Math.min(i,a),l=a-r;n.style.height=r+"px","0px"===n.style.bottom&&(t.scrollTop=l>0?l:0,n.style.justifyContent="flex-end")}}}d.current=t.scrollTop})})})]})});eS.displayName=ej;var eC="SelectGroup",[ek,eN]=J(eC),eM=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e,a=(0,A.useId)();return(0,t.jsx)(ek,{scope:i,id:a,children:(0,t.jsx)(B.Primitive.div,{role:"group","aria-labelledby":a,...s,ref:n})})});eM.displayName=eC;var eI="SelectLabel",eT=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e,a=eN(eI,i);return(0,t.jsx)(B.Primitive.div,{id:a.id,...s,ref:n})});eT.displayName=eI;var eP="SelectItem",[eE,eR]=J(eP),eD=n.forwardRef((e,i)=>{let{__scopeSelect:s,value:a,disabled:r=!1,textValue:l,...o}=e,c=en(eP,s),d=eh(eP,s),u=c.value===a,[p,g]=n.useState(l??""),[m,h]=n.useState(!1),f=(0,I.useComposedRefs)(i,e=>d.itemRefCallback?.(e,a,r)),v=(0,A.useId)(),x=n.useRef("touch"),w=()=>{r||(c.onValueChange(a),c.onOpenChange(!1))};if(""===a)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,t.jsx)(eE,{scope:s,value:a,disabled:r,textId:v,isSelected:u,onItemTextChange:n.useCallback(e=>{g(t=>t||(e?.textContent??"").trim())},[]),children:(0,t.jsx)(Y.ItemSlot,{scope:s,value:a,disabled:r,textValue:p,children:(0,t.jsx)(B.Primitive.div,{role:"option","aria-labelledby":v,"data-highlighted":m?"":void 0,"aria-selected":u&&m,"data-state":u?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...o,ref:f,onFocus:(0,N.composeEventHandlers)(o.onFocus,()=>h(!0)),onBlur:(0,N.composeEventHandlers)(o.onBlur,()=>h(!1)),onClick:(0,N.composeEventHandlers)(o.onClick,()=>{"mouse"!==x.current&&w()}),onPointerUp:(0,N.composeEventHandlers)(o.onPointerUp,()=>{"mouse"===x.current&&w()}),onPointerDown:(0,N.composeEventHandlers)(o.onPointerDown,e=>{x.current=e.pointerType}),onPointerMove:(0,N.composeEventHandlers)(o.onPointerMove,e=>{x.current=e.pointerType,r?d.onItemLeave?.():"mouse"===x.current&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,N.composeEventHandlers)(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&d.onItemLeave?.()}),onKeyDown:(0,N.composeEventHandlers)(o.onKeyDown,e=>{(d.searchRef?.current===""||" "!==e.key)&&(q.includes(e.key)&&w()," "===e.key&&e.preventDefault())})})})})});eD.displayName=eP;var eA="SelectItemText",eF=n.forwardRef((e,i)=>{let{__scopeSelect:s,className:a,style:r,...l}=e,o=en(eA,s),c=eh(eA,s),d=eR(eA,s),u=es(eA,s),[p,g]=n.useState(null),m=(0,I.useComposedRefs)(i,e=>g(e),d.onItemTextChange,e=>c.itemTextRefCallback?.(e,d.value,d.disabled)),h=p?.textContent,f=n.useMemo(()=>(0,t.jsx)("option",{value:d.value,disabled:d.disabled,children:h},d.value),[d.disabled,d.value,h]),{onNativeOptionAdd:v,onNativeOptionRemove:x}=u;return(0,V.useLayoutEffect)(()=>(v(f),()=>x(f)),[v,x,f]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(B.Primitive.span,{id:d.textId,...l,ref:m}),d.isSelected&&o.valueNode&&!o.valueNodeHasChildren?C.createPortal(l.children,o.valueNode):null]})});eF.displayName=eA;var eL="SelectItemIndicator",eB=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e;return eR(eL,i).isSelected?(0,t.jsx)(B.Primitive.span,{"aria-hidden":!0,...s,ref:n}):null});eB.displayName=eL;var eH="SelectScrollUpButton",ez=n.forwardRef((e,i)=>{let s=eh(eH,e.__scopeSelect),a=ey(eH,e.__scopeSelect),[r,l]=n.useState(!1),o=(0,I.useComposedRefs)(i,a.onScrollButtonChange);return(0,V.useLayoutEffect)(()=>{if(s.viewport&&s.isPositioned){let e=function(){l(t.scrollTop>0)},t=s.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[s.viewport,s.isPositioned]),r?(0,t.jsx)(eK,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=s;e&&t&&(e.scrollTop=e.scrollTop-t.offsetHeight)}}):null});ez.displayName=eH;var e_="SelectScrollDownButton",eV=n.forwardRef((e,i)=>{let s=eh(e_,e.__scopeSelect),a=ey(e_,e.__scopeSelect),[r,l]=n.useState(!1),o=(0,I.useComposedRefs)(i,a.onScrollButtonChange);return(0,V.useLayoutEffect)(()=>{if(s.viewport&&s.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;l(Math.ceil(t.scrollTop)<e)},t=s.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[s.viewport,s.isPositioned]),r?(0,t.jsx)(eK,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=s;e&&t&&(e.scrollTop=e.scrollTop+t.offsetHeight)}}):null});eV.displayName=e_;var eK=n.forwardRef((e,i)=>{let{__scopeSelect:s,onAutoScroll:a,...r}=e,l=eh("SelectScrollButton",s),o=n.useRef(null),c=Z(s),d=n.useCallback(()=>{null!==o.current&&(window.clearInterval(o.current),o.current=null)},[]);return n.useEffect(()=>()=>d(),[d]),(0,V.useLayoutEffect)(()=>{let e=c().find(e=>e.ref.current===document.activeElement);e?.ref.current?.scrollIntoView({block:"nearest"})},[c]),(0,t.jsx)(B.Primitive.div,{"aria-hidden":!0,...r,ref:i,style:{flexShrink:0,...r.style},onPointerDown:(0,N.composeEventHandlers)(r.onPointerDown,()=>{null===o.current&&(o.current=window.setInterval(a,50))}),onPointerMove:(0,N.composeEventHandlers)(r.onPointerMove,()=>{l.onItemLeave?.(),null===o.current&&(o.current=window.setInterval(a,50))}),onPointerLeave:(0,N.composeEventHandlers)(r.onPointerLeave,()=>{d()})})}),eO=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e;return(0,t.jsx)(B.Primitive.div,{"aria-hidden":!0,...s,ref:n})});eO.displayName="SelectSeparator";var eW="SelectArrow",eU=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e,a=ee(i),r=en(eW,i),l=eh(eW,i);return r.open&&"popper"===l.position?(0,t.jsx)(F.Arrow,{...a,...s,ref:n}):null});eU.displayName=eW;var eG=n.forwardRef(({__scopeSelect:e,value:i,...s},a)=>{let r=n.useRef(null),l=(0,I.useComposedRefs)(a,r),o=(0,K.usePrevious)(i);return n.useEffect(()=>{let e=r.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(o!==i&&t){let n=new Event("change",{bubbles:!0});t.call(e,i),e.dispatchEvent(n)}},[o,i]),(0,t.jsx)(B.Primitive.select,{...s,style:{...O.VISUALLY_HIDDEN_STYLES,...s.style},ref:l,defaultValue:i})});function eq(e){return""===e||void 0===e}function e$(e){let t=(0,z.useCallbackRef)(e),i=n.useRef(""),s=n.useRef(0),a=n.useCallback(e=>{let n=i.current+e;t(n),function e(t){i.current=t,window.clearTimeout(s.current),""!==t&&(s.current=window.setTimeout(()=>e(""),1e3))}(n)},[t]),r=n.useCallback(()=>{i.current="",window.clearTimeout(s.current)},[]);return n.useEffect(()=>()=>window.clearTimeout(s.current),[]),[i,a,r]}function eY(e,t,n){var i,s;let a=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,r=n?e.indexOf(n):-1,l=(i=e,s=Math.max(r,0),i.map((e,t)=>i[(s+t)%i.length]));1===a.length&&(l=l.filter(e=>e!==n));let o=l.find(e=>e.textValue.toLowerCase().startsWith(a.toLowerCase()));return o!==n?o:void 0}eG.displayName="SelectBubbleInput",e.s(["Arrow",()=>eU,"Content",()=>eg,"Group",()=>eM,"Icon",()=>ed,"Item",()=>eD,"ItemIndicator",()=>eB,"ItemText",()=>eF,"Label",()=>eT,"Portal",()=>eu,"Root",()=>ea,"ScrollDownButton",()=>eV,"ScrollUpButton",()=>ez,"Select",()=>ea,"SelectArrow",()=>eU,"SelectContent",()=>eg,"SelectGroup",()=>eM,"SelectIcon",()=>ed,"SelectItem",()=>eD,"SelectItemIndicator",()=>eB,"SelectItemText",()=>eF,"SelectLabel",()=>eT,"SelectPortal",()=>eu,"SelectScrollDownButton",()=>eV,"SelectScrollUpButton",()=>ez,"SelectSeparator",()=>eO,"SelectTrigger",()=>el,"SelectValue",()=>ec,"SelectViewport",()=>eS,"Separator",()=>eO,"Trigger",()=>el,"Value",()=>ec,"Viewport",()=>eS,"createSelectScope",()=>Q],83830);var eZ=e.i(83830),eZ=eZ,eX=e.i(99105),eJ=e.i(48829);let eQ=eZ.Root;eZ.Group;let e0=eZ.Value,e1=n.forwardRef(({className:e,children:n,...i},s)=>(0,t.jsxs)(eZ.Trigger,{ref:s,className:(0,y.cn)("border-input ring-offset-background placeholder:text-muted-foreground focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...i,children:[n,(0,t.jsx)(eZ.Icon,{asChild:!0,children:(0,t.jsx)(eX.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));e1.displayName=eZ.Trigger.displayName;let e2=n.forwardRef(({className:e,...n},i)=>(0,t.jsx)(eZ.ScrollUpButton,{ref:i,className:(0,y.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(eJ.ChevronUp,{className:"h-4 w-4"})}));e2.displayName=eZ.ScrollUpButton.displayName;let e3=n.forwardRef(({className:e,...n},i)=>(0,t.jsx)(eZ.ScrollDownButton,{ref:i,className:(0,y.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(eX.ChevronDown,{className:"h-4 w-4"})}));e3.displayName=eZ.ScrollDownButton.displayName;let e5=n.forwardRef(({className:e,children:n,position:i="popper",...s},a)=>(0,t.jsx)(eZ.Portal,{children:(0,t.jsxs)(eZ.Content,{ref:a,className:(0,y.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md","popper"===i&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:i,...s,children:[(0,t.jsx)(e2,{}),(0,t.jsx)(eZ.Viewport,{className:(0,y.cn)("p-1","popper"===i&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:n}),(0,t.jsx)(e3,{})]})}));e5.displayName=eZ.Content.displayName,n.forwardRef(({className:e,...n},i)=>(0,t.jsx)(eZ.Label,{ref:i,className:(0,y.cn)("px-2 py-1.5 text-sm font-semibold",e),...n})).displayName=eZ.Label.displayName;let e4=n.forwardRef(({className:e,children:n,...s},a)=>(0,t.jsxs)(eZ.Item,{ref:a,className:(0,y.cn)("focus:bg-accent focus:text-accent-foreground relative flex w-full cursor-default items-center rounded-sm py-1.5 ps-2 pe-8 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...s,children:[(0,t.jsx)("span",{className:"absolute end-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,t.jsx)(eZ.ItemIndicator,{children:(0,t.jsx)(i.Check,{className:"h-4 w-4"})})}),(0,t.jsx)(eZ.ItemText,{children:n})]}));e4.displayName=eZ.Item.displayName,n.forwardRef(({className:e,...n},i)=>(0,t.jsx)(eZ.Separator,{ref:i,className:(0,y.cn)("bg-muted -mx-1 my-1 h-px",e),...n})).displayName=eZ.Separator.displayName;var e8=e.i(21023);let e6=(0,e8.createServerReference)("4051c86216c727f53e1eca2e24cdfd321efad56ca6",e8.callServer,void 0,e8.findSourceMapURL,"updateSettingsAction");var e9=e.i(17406),e7=e.i(98804),te=e.i(44229),tt=e.i(83902);function tn(e){return(0,t.jsx)(te.Code,{className:(0,y.cn)("h-4 w-4",e.className),...e})}function ti({className:e}){return(0,t.jsx)(e7.default,{src:"/icons/editors/vscode.svg",alt:"VS Code",width:24,height:24,className:(0,y.cn)("rounded-sm object-contain",e)})}function ts({className:e}){return(0,t.jsx)(e7.default,{src:"/icons/agents/cursor.jpeg",alt:"Cursor",width:24,height:24,className:(0,y.cn)("rounded-sm object-contain",e)})}function ta({className:e}){return(0,t.jsx)(e7.default,{src:"/icons/editors/windsurf.svg",alt:"Windsurf",width:24,height:24,className:(0,y.cn)("rounded-sm object-contain",e)})}function tr({className:e}){return(0,t.jsx)(e7.default,{src:"/icons/editors/zed.svg",alt:"Zed",width:24,height:24,className:(0,y.cn)("rounded-sm object-contain",e)})}function tl({className:e,...n}){return(0,t.jsx)(tt.Rocket,{className:(0,y.cn)("h-4 w-4",e),...n})}ti.displayName="VsCodeIcon",ts.displayName="CursorEditorIcon",ta.displayName="WindsurfIcon",tr.displayName="ZedIcon",tl.displayName="AntigravityIcon";let to={vscode:ti,cursor:ts,windsurf:ta,zed:tr,antigravity:tl};var tc=e.i(41413),td=e.i(956);let tu=[{value:e9.Language.English,label:"English",nativeName:"English"},{value:e9.Language.Russian,label:"Русский",nativeName:"Русский"},{value:e9.Language.Portuguese,label:"Português",nativeName:"Português"},{value:e9.Language.Spanish,label:"Español",nativeName:"Español"},{value:e9.Language.Arabic,label:"العربية",nativeName:"العربية"},{value:e9.Language.Hebrew,label:"עברית",nativeName:"עברית"},{value:e9.Language.French,label:"Français",nativeName:"Français"},{value:e9.Language.German,label:"Deutsch",nativeName:"Deutsch"}];function tp({language:e}){let{t:s,i18n:a}=(0,b.useTranslation)("web"),[r,l]=(0,n.useState)(e),[o,c]=(0,n.useTransition)(),[d,u]=(0,n.useState)(!1),g=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{if(g.current&&!o){u(!0);let e=setTimeout(()=>u(!1),2e3);return()=>clearTimeout(e)}g.current=o},[o]),(0,t.jsxs)(td.Card,{id:"language",className:"scroll-mt-6","data-testid":"language-settings-section",children:[(0,t.jsxs)(td.CardHeader,{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(p.Globe,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)(td.CardTitle,{children:s("settings.language.title")})]}),o?(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:s("common:labels.saving")}):null,d&&!o?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-xs text-green-600",children:[(0,t.jsx)(i.Check,{className:"h-3 w-3"}),s("common:labels.saved")]}):null]}),(0,t.jsx)(td.CardDescription,{children:s("settings.language.description")})]}),(0,t.jsx)(td.CardContent,{className:"space-y-4",children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(j.Label,{htmlFor:"display-language",children:s("settings.language.label")}),(0,t.jsxs)(eQ,{value:r,onValueChange:function(e){l(e),a.changeLanguage(e);let t="ar"===e||"he"===e?"rtl":"ltr";document.documentElement.lang=e,document.documentElement.dir=t,c(async()=>{let t=await e6({user:{preferredLanguage:e}});t.success||w.toast.error(t.error??s("settings.language.failedToSave","Failed to save language settings"))})},children:[(0,t.jsx)(e1,{id:"display-language","data-testid":"language-select",children:(0,t.jsx)(e0,{placeholder:s("settings.language.placeholder")})}),(0,t.jsx)(e5,{children:tu.map(e=>(0,t.jsx)(e4,{value:e.value,children:e.nativeName},e.value))})]})]})})]})}var tg=e.i(77624),tm=["PageUp","PageDown"],th=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],tf={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},tv="Slider",[tx,tw,tb]=(0,M.createCollection)(tv),[ty,tj]=(0,T.createContextScope)(tv,[tb]),[tS,tC]=ty(tv),tk=n.forwardRef((e,i)=>{let{name:s,min:a=0,max:r=100,step:l=1,orientation:o="horizontal",disabled:c=!1,minStepsBetweenThumbs:d=0,defaultValue:u=[a],value:p,onValueChange:g=()=>{},onValueCommit:m=()=>{},inverted:h=!1,form:f,...v}=e,x=n.useRef(new Set),w=n.useRef(0),b="horizontal"===o,[y=[],j]=(0,_.useControllableState)({prop:p,defaultProp:u,onChange:e=>{let t=[...x.current];t[w.current]?.focus(),g(e)}}),S=n.useRef(y);function C(e,t,{commit:n}={commit:!1}){let i,s=(String(l).split(".")[1]||"").length,o=Math.round((Math.round((e-a)/l)*l+a)*(i=Math.pow(10,s)))/i,c=(0,k.clamp)(o,[a,r]);j((e=[])=>{let i=function(e=[],t,n){let i=[...e];return i[n]=t,i.sort((e,t)=>e-t)}(e,c,t);if(!function(e,t){if(t>0)return Math.min(...e.slice(0,-1).map((t,n)=>e[n+1]-t))>=t;return!0}(i,d*l))return e;{w.current=i.indexOf(c);let t=String(i)!==String(e);return t&&n&&m(i),t?i:e}})}return(0,t.jsx)(tS,{scope:e.__scopeSlider,name:s,disabled:c,min:a,max:r,valueIndexToChangeRef:w,thumbs:x.current,values:y,orientation:o,form:f,children:(0,t.jsx)(tx.Provider,{scope:e.__scopeSlider,children:(0,t.jsx)(tx.Slot,{scope:e.__scopeSlider,children:(0,t.jsx)(b?tI:tT,{"aria-disabled":c,"data-disabled":c?"":void 0,...v,ref:i,onPointerDown:(0,N.composeEventHandlers)(v.onPointerDown,()=>{c||(S.current=y)}),min:a,max:r,inverted:h,onSlideStart:c?void 0:function(e){let t=function(e,t){if(1===e.length)return 0;let n=e.map(e=>Math.abs(e-t)),i=Math.min(...n);return n.indexOf(i)}(y,e);C(e,t)},onSlideMove:c?void 0:function(e){C(e,w.current)},onSlideEnd:c?void 0:function(){let e=S.current[w.current];y[w.current]!==e&&m(y)},onHomeKeyDown:()=>!c&&C(a,0,{commit:!0}),onEndKeyDown:()=>!c&&C(r,y.length-1,{commit:!0}),onStepKeyDown:({event:e,direction:t})=>{if(!c){let n=tm.includes(e.key)||e.shiftKey&&th.includes(e.key),i=w.current;C(y[i]+l*(n?10:1)*t,i,{commit:!0})}}})})})})});tk.displayName=tv;var[tN,tM]=ty(tv,{startEdge:"left",endEdge:"right",size:"width",direction:1}),tI=n.forwardRef((e,i)=>{let{min:s,max:a,dir:r,inverted:l,onSlideStart:o,onSlideMove:c,onSlideEnd:d,onStepKeyDown:u,...p}=e,[g,m]=n.useState(null),h=(0,I.useComposedRefs)(i,e=>m(e)),f=n.useRef(void 0),v=(0,P.useDirection)(r),x="ltr"===v,w=x&&!l||!x&&l;function b(e){let t=f.current||g.getBoundingClientRect(),n=t_([0,t.width],w?[s,a]:[a,s]);return f.current=t,n(e-t.left)}return(0,t.jsx)(tN,{scope:e.__scopeSlider,startEdge:w?"left":"right",endEdge:w?"right":"left",direction:w?1:-1,size:"width",children:(0,t.jsx)(tP,{dir:v,"data-orientation":"horizontal",...p,ref:h,style:{...p.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:e=>{let t=b(e.clientX);o?.(t)},onSlideMove:e=>{let t=b(e.clientX);c?.(t)},onSlideEnd:()=>{f.current=void 0,d?.()},onStepKeyDown:e=>{let t=tf[w?"from-left":"from-right"].includes(e.key);u?.({event:e,direction:t?-1:1})}})})}),tT=n.forwardRef((e,i)=>{let{min:s,max:a,inverted:r,onSlideStart:l,onSlideMove:o,onSlideEnd:c,onStepKeyDown:d,...u}=e,p=n.useRef(null),g=(0,I.useComposedRefs)(i,p),m=n.useRef(void 0),h=!r;function f(e){let t=m.current||p.current.getBoundingClientRect(),n=t_([0,t.height],h?[a,s]:[s,a]);return m.current=t,n(e-t.top)}return(0,t.jsx)(tN,{scope:e.__scopeSlider,startEdge:h?"bottom":"top",endEdge:h?"top":"bottom",size:"height",direction:h?1:-1,children:(0,t.jsx)(tP,{"data-orientation":"vertical",...u,ref:g,style:{...u.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:e=>{let t=f(e.clientY);l?.(t)},onSlideMove:e=>{let t=f(e.clientY);o?.(t)},onSlideEnd:()=>{m.current=void 0,c?.()},onStepKeyDown:e=>{let t=tf[h?"from-bottom":"from-top"].includes(e.key);d?.({event:e,direction:t?-1:1})}})})}),tP=n.forwardRef((e,n)=>{let{__scopeSlider:i,onSlideStart:s,onSlideMove:a,onSlideEnd:r,onHomeKeyDown:l,onEndKeyDown:o,onStepKeyDown:c,...d}=e,u=tC(tv,i);return(0,t.jsx)(B.Primitive.span,{...d,ref:n,onKeyDown:(0,N.composeEventHandlers)(e.onKeyDown,e=>{"Home"===e.key?(l(e),e.preventDefault()):"End"===e.key?(o(e),e.preventDefault()):tm.concat(th).includes(e.key)&&(c(e),e.preventDefault())}),onPointerDown:(0,N.composeEventHandlers)(e.onPointerDown,e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),u.thumbs.has(t)?t.focus():s(e)}),onPointerMove:(0,N.composeEventHandlers)(e.onPointerMove,e=>{e.target.hasPointerCapture(e.pointerId)&&a(e)}),onPointerUp:(0,N.composeEventHandlers)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),r(e))})})}),tE="SliderTrack",tR=n.forwardRef((e,n)=>{let{__scopeSlider:i,...s}=e,a=tC(tE,i);return(0,t.jsx)(B.Primitive.span,{"data-disabled":a.disabled?"":void 0,"data-orientation":a.orientation,...s,ref:n})});tR.displayName=tE;var tD="SliderRange",tA=n.forwardRef((e,i)=>{let{__scopeSlider:s,...a}=e,r=tC(tD,s),l=tM(tD,s),o=n.useRef(null),c=(0,I.useComposedRefs)(i,o),d=r.values.length,u=r.values.map(e=>tz(e,r.min,r.max)),p=d>1?Math.min(...u):0,g=100-Math.max(...u);return(0,t.jsx)(B.Primitive.span,{"data-orientation":r.orientation,"data-disabled":r.disabled?"":void 0,...a,ref:c,style:{...e.style,[l.startEdge]:p+"%",[l.endEdge]:g+"%"}})});tA.displayName=tD;var tF="SliderThumb",tL=n.forwardRef((e,i)=>{let s=tw(e.__scopeSlider),[a,r]=n.useState(null),l=(0,I.useComposedRefs)(i,e=>r(e)),o=n.useMemo(()=>a?s().findIndex(e=>e.ref.current===a):-1,[s,a]);return(0,t.jsx)(tB,{...e,ref:l,index:o})}),tB=n.forwardRef((e,i)=>{var s,a,r,l,o;let c,d,{__scopeSlider:u,index:p,name:g,...m}=e,h=tC(tF,u),f=tM(tF,u),[v,x]=n.useState(null),w=(0,I.useComposedRefs)(i,e=>x(e)),b=!v||h.form||!!v.closest("form"),y=(0,tg.useSize)(v),j=h.values[p],S=void 0===j?0:tz(j,h.min,h.max),C=(s=p,(a=h.values.length)>2?`Value ${s+1} of ${a}`:2===a?["Minimum","Maximum"][s]:void 0),k=y?.[f.size],M=k?(r=k,l=S,o=f.direction,d=t_([0,50],[0,c=r/2]),(c-d(l)*o)*o):0;return n.useEffect(()=>{if(v)return h.thumbs.add(v),()=>{h.thumbs.delete(v)}},[v,h.thumbs]),(0,t.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[f.startEdge]:`calc(${S}% + ${M}px)`},children:[(0,t.jsx)(tx.ItemSlot,{scope:e.__scopeSlider,children:(0,t.jsx)(B.Primitive.span,{role:"slider","aria-label":e["aria-label"]||C,"aria-valuemin":h.min,"aria-valuenow":j,"aria-valuemax":h.max,"aria-orientation":h.orientation,"data-orientation":h.orientation,"data-disabled":h.disabled?"":void 0,tabIndex:h.disabled?void 0:0,...m,ref:w,style:void 0===j?{display:"none"}:e.style,onFocus:(0,N.composeEventHandlers)(e.onFocus,()=>{h.valueIndexToChangeRef.current=p})})}),b&&(0,t.jsx)(tH,{name:g??(h.name?h.name+(h.values.length>1?"[]":""):void 0),form:h.form,value:j},p)]})});tL.displayName=tF;var tH=n.forwardRef(({__scopeSlider:e,value:i,...s},a)=>{let r=n.useRef(null),l=(0,I.useComposedRefs)(r,a),o=(0,K.usePrevious)(i);return n.useEffect(()=>{let e=r.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(o!==i&&t){let n=new Event("input",{bubbles:!0});t.call(e,i),e.dispatchEvent(n)}},[o,i]),(0,t.jsx)(B.Primitive.input,{style:{display:"none"},...s,ref:l,defaultValue:i})});function tz(e,t,n){return(0,k.clamp)(100/(n-t)*(e-t),[0,100])}function t_(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let i=(t[1]-t[0])/(e[1]-e[0]);return t[0]+i*(n-e[0])}}tH.displayName="RadioBubbleInput",e.s(["Range",()=>tA,"Root",()=>tk,"Slider",()=>tk,"SliderRange",()=>tA,"SliderThumb",()=>tL,"SliderTrack",()=>tR,"Thumb",()=>tL,"Track",()=>tR,"createSliderScope",()=>tj],29991);var tV=e.i(29991),tV=tV;function tK({className:e,defaultValue:i,value:s,min:a=0,max:r=100,...l}){let o=n.useMemo(()=>Array.isArray(s)?s:Array.isArray(i)?i:[a,r],[s,i,a,r]);return(0,t.jsxs)(tV.Root,{"data-slot":"slider",defaultValue:i,value:s,min:a,max:r,className:(0,y.cn)("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",e),...l,children:[(0,t.jsx)(tV.Track,{"data-slot":"slider-track",className:(0,y.cn)("bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"),children:(0,t.jsx)(tV.Range,{"data-slot":"slider-range",className:(0,y.cn)("bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:o.length},(e,n)=>(0,t.jsx)(tV.Thumb,{"data-slot":"slider-thumb",className:"border-primary ring-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50"},n))]})}let tO=[60,120,300,600,900,1800,2700,3600,7200,10800,14400,21600,28800,43200,86400],tW=tO.length-1;function tU(e){let t=0,n=Math.abs(e-tO[0]);for(let i=1;i<tO.length;i++){let s=Math.abs(e-tO[i]);s<n&&(n=s,t=i)}return t}function tG({id:e,testId:i,value:s,onChange:a,onBlur:r,defaultSeconds:l=1800}){var o;let c,d,u=(""===s?l:parseInt(s,10))||l,[p,g]=(0,n.useState)(()=>tU(u)),m=tU(u);m!==p&&tO[p]!==u&&g(m);let h=(0,n.useCallback)(([e])=>{g(e),a(String(tO[e]))},[a]);return(0,t.jsxs)("div",{className:"flex w-55 items-center gap-2",children:[(0,t.jsx)(tK,{id:e,"data-testid":i,min:0,max:tW,step:1,value:[p],onValueChange:h,onValueCommit:()=>r(),className:"min-w-0 flex-1"}),(0,t.jsx)("span",{className:"text-muted-foreground shrink-0 text-end text-xs tabular-nums",children:(c=Math.floor((o=tO[p])/3600),d=Math.round(o%3600/60),0===c?`${d}m`:0===d?`${c}h`:`${c}h ${d}m`)})]})}let tq=[{value:e9.EditorType.VsCode,label:"VS Code"},{value:e9.EditorType.Cursor,label:"Cursor"},{value:e9.EditorType.Windsurf,label:"Windsurf"},{value:e9.EditorType.Zed,label:"Zed"},{value:e9.EditorType.Antigravity,label:"Antigravity"}],t$=[{value:"bash",label:"Bash"},{value:"zsh",label:"Zsh"},{value:"fish",label:"Fish"}],tY=[{id:"language",labelKey:"settings.sections.language",icon:p.Globe},{id:"agent",labelKey:"settings.sections.agent",icon:s.Bot},{id:"environment",labelKey:"settings.sections.environment",icon:a.Terminal},{id:"workflow",labelKey:"settings.sections.workflow",icon:r.GitBranch},{id:"ci",labelKey:"settings.sections.ci",icon:o},{id:"stage-timeouts",labelKey:"settings.sections.timeouts",icon:v.Timer},{id:"notifications",labelKey:"settings.sections.notifications",icon:c},{id:"feature-flags",labelKey:"settings.sections.flags",icon:d},{id:"interactive-agent",labelKey:"settings.sections.chat",icon:x.MessageSquare},{id:"database",labelKey:"settings.sections.database",icon:u}];function tZ({label:e,description:n,htmlFor:i,children:s}){return(0,t.jsxs)("div",{className:"flex items-center justify-between gap-4 border-b py-2.5 last:border-b-0",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)(j.Label,{htmlFor:i,className:"cursor-pointer text-sm font-normal whitespace-nowrap",children:e}),n?(0,t.jsx)("p",{className:"text-muted-foreground text-[11px] leading-tight",children:n}):null]}),(0,t.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:s})]})}function tX({label:e,description:n,id:i,testId:s,checked:a,onChange:r,disabled:l}){return(0,t.jsx)(tZ,{label:e,description:n,htmlFor:i,children:(0,t.jsx)(S.Switch,{id:i,"data-testid":s,checked:a,onCheckedChange:r,disabled:l,className:(0,y.cn)("cursor-pointer",l&&"cursor-not-allowed opacity-50")})})}function tJ({icon:e,title:n,description:i,badge:s,testId:a,children:r}){return(0,t.jsxs)("div",{className:"bg-background rounded-lg border","data-testid":a,children:[(0,t.jsxs)("div",{className:"bg-muted/30 border-b px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(e,{className:"text-muted-foreground h-3.5 w-3.5"}),(0,t.jsx)("h2",{className:"text-sm font-semibold",children:n}),s?(0,t.jsx)("span",{className:"bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-[9px] font-medium tracking-wider uppercase",children:s}):null]}),(0,t.jsx)("p",{className:"text-muted-foreground mt-0.5 text-[11px]",children:i})]}),(0,t.jsx)("div",{className:"px-4",children:r})]})}function tQ({id:e,testId:n,value:i,onChange:s,onBlur:a,placeholder:r,min:l=1,max:o,step:c=1,suffix:d}){let{t:u}=(0,b.useTranslation)("web"),p=""===i?void 0:parseInt(i,10);return(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center overflow-hidden rounded-md border",children:[(0,t.jsx)("button",{type:"button",onClick:()=>{s(String(Math.max(l,(p??parseInt(r,10))-c)))},onMouseUp:a,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":u("common.decrease"),children:(0,t.jsx)(g.default,{className:"h-3 w-3"})}),(0,t.jsx)("input",{id:e,"data-testid":n,type:"text",inputMode:"numeric",pattern:"[0-9]*",value:i,placeholder:r,onChange:e=>{s(e.target.value.replace(/[^0-9]/g,""))},onBlur:a,className:"h-8 w-14 bg-transparent text-center text-xs outline-none"}),(0,t.jsx)("button",{type:"button",onClick:()=>{let e;e=p??parseInt(r,10),s(String(null!=o?Math.min(o,e+c):e+c))},onMouseUp:a,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":u("common.increase"),children:(0,t.jsx)(m.Plus,{className:"h-3 w-3"})})]}),d?(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:d}):null]})}function t0({children:e}){return(0,t.jsx)("div",{className:"border-b pt-3 pb-1",children:(0,t.jsx)("span",{className:"text-muted-foreground text-[10px] font-semibold tracking-wider uppercase",children:e})})}function t1({children:e,links:n}){return(0,t.jsxs)("div",{className:"hidden pt-2 lg:block",children:[(0,t.jsx)("p",{className:"text-muted-foreground/70 text-[11px] leading-relaxed",children:e}),null!=n&&n.length>0?(0,t.jsx)("div",{className:"mt-2 flex flex-col gap-1",children:n.map(e=>(0,t.jsxs)("a",{href:e.href,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground inline-flex items-center gap-1 text-[10px] transition-colors",children:[(0,t.jsx)(h.ExternalLink,{className:"h-2.5 w-2.5"}),e.label]},e.href))}):null]})}function t2({settings:e,shepHome:l,dbFileSize:p,availableTerminals:g}){let{t:m}=(0,b.useTranslation)("web"),{showSaving:h,showSaved:j,save:S}=function(){let{t:e}=(0,b.useTranslation)("web"),[t,i]=(0,n.useTransition)(),[s,a]=(0,n.useState)(!1),[r,l]=(0,n.useState)(!1),o=(0,n.useRef)(null),c=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{t&&!s&&(a(!0),c.current=!1,o.current=setTimeout(()=>{o.current=null,c.current&&(a(!1),l(!0),setTimeout(()=>l(!1),2e3))},350)),!t&&s&&(c.current=!0,o.current||(a(!1),l(!0),setTimeout(()=>l(!1),2e3)))},[t,s]),{showSaving:s,showSaved:r,save:(0,n.useCallback)(t=>{i(async()=>{let n=await e6(t);n.success||w.toast.error(n.error??e("settings.failedToSave"))})},[i,e])}}(),C=e.featureFlags??{skills:!1,envDeploy:!1,debug:!1,githubImport:!1,adoptBranch:!1,gitRebaseSync:!1,reactFileManager:!1},[k,N]=(0,n.useState)(e.agent.type),[M,I]=(0,n.useState)(e.environment.defaultEditor),[T,P]=(0,n.useState)(e.environment.shellPreference),[E,R]=(0,n.useState)(e.environment.terminalPreference??e9.TerminalType.System),D=g?g.filter(e=>e.available):[{id:e9.TerminalType.System,name:m("settings.environment.systemTerminal"),available:!0}],[A,F]=(0,n.useState)(e.workflow.openPrOnImplementationComplete),[L,B]=(0,n.useState)(e.workflow.approvalGateDefaults.pushOnImplementationComplete),[H,z]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPrd),[_,V]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPlan),[K,O]=(0,n.useState)(e.workflow.approvalGateDefaults.allowMerge),[W,U]=(0,n.useState)(e.workflow.enableEvidence),[G,q]=(0,n.useState)(e.workflow.commitEvidence),[$,Y]=(0,n.useState)(!1!==e.workflow.ciWatchEnabled),[Z,X]=(0,n.useState)(!1!==e.workflow.hideCiStatus),[J,Q]=(0,n.useState)(!1!==e.workflow.defaultFastMode),[ee,et]=(0,n.useState)(null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):""),[en,ei]=(0,n.useState)(null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):""),[es,ea]=(0,n.useState)(null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):""),[er,el]=(0,n.useState)(null!=e.workflow.ciWatchPollIntervalSeconds?String(e.workflow.ciWatchPollIntervalSeconds):""),eo=e.workflow.stageTimeouts,[ec,ed]=(0,n.useState)(String(Math.round((eo?.analyzeMs??18e5)/1e3))),[eu,ep]=(0,n.useState)(String(Math.round((eo?.requirementsMs??18e5)/1e3))),[eg,em]=(0,n.useState)(String(Math.round((eo?.researchMs??18e5)/1e3))),[eh,ef]=(0,n.useState)(String(Math.round((eo?.planMs??18e5)/1e3))),[ev,ex]=(0,n.useState)(String(Math.round((eo?.implementMs??18e5)/1e3))),[ew,eb]=(0,n.useState)(String(Math.round((eo?.mergeMs??18e5)/1e3))),ey=e.workflow.analyzeRepoTimeouts,[ej,eS]=(0,n.useState)(String(Math.round((ey?.analyzeMs??6e5)/1e3))),eC=e.interactiveAgent??{enabled:!0,autoTimeoutMinutes:15,maxConcurrentSessions:3},[ek,eN]=(0,n.useState)(eC.enabled),[eM,eI]=(0,n.useState)(String(eC.autoTimeoutMinutes)),[eT,eP]=(0,n.useState)(String(eC.maxConcurrentSessions)),[eE,eR]=(0,n.useState)(e.notifications.inApp.enabled),[eD,eA]=(0,n.useState)({...e.notifications.events}),[eF,eL]=(0,n.useState)({...C}),eB=null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):"",eH=null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):"",ez=null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):"",e_=null!=e.workflow.ciWatchPollIntervalSeconds?String(e.workflow.ciWatchPollIntervalSeconds):"",eV=eo?.analyzeMs!=null?String(Math.round(eo.analyzeMs/1e3)):"",eK=eo?.requirementsMs!=null?String(Math.round(eo.requirementsMs/1e3)):"",eO=eo?.researchMs!=null?String(Math.round(eo.researchMs/1e3)):"",eW=eo?.planMs!=null?String(Math.round(eo.planMs/1e3)):"",eU=eo?.implementMs!=null?String(Math.round(eo.implementMs/1e3)):"",eG=eo?.mergeMs!=null?String(Math.round(eo.mergeMs/1e3)):"",eq=ey?.analyzeMs!=null?String(Math.round(ey.analyzeMs/1e3)):"";function e$(e){if(""===e)return;let t=parseInt(e,10);return Number.isNaN(t)||t<=0?void 0:t}function eY(e){if(void 0===e)return;let t=e$(e);return null!=t?1e3*t:void 0}function eZ(e={}){let t=e$(e.ciTimeout??en);return{workflow:{openPrOnImplementationComplete:e.openPr??A,approvalGateDefaults:{pushOnImplementationComplete:e.pushOnComplete??L,allowPrd:e.allowPrd??H,allowPlan:e.allowPlan??_,allowMerge:e.allowMerge??K},enableEvidence:e.enableEvidence??W,commitEvidence:e.commitEvidence??G,ciWatchEnabled:e.ciWatchEnabled??$,hideCiStatus:e.hideCiStatus??Z,defaultFastMode:e.defaultFastMode??J,ciMaxFixAttempts:e$(e.ciMaxFix??ee),ciWatchTimeoutMs:null!=t?1e3*t:void 0,ciLogMaxChars:e$(e.ciLogMax??es),ciWatchPollIntervalSeconds:e$(e.ciPollInterval??er),stageTimeouts:{analyzeMs:eY(e.analyzeTimeout??ec),requirementsMs:eY(e.requirementsTimeout??eu),researchMs:eY(e.researchTimeout??eg),planMs:eY(e.planTimeout??eh),implementMs:eY(e.implementTimeout??ev),mergeMs:eY(e.mergeTimeout??ew)},analyzeRepoTimeouts:{analyzeMs:eY(e.analyzeRepoTimeout??ej)}}}}function eX(e={}){return{notifications:{inApp:{enabled:e.inApp??eE},events:e.events??eD}}}let[eJ,e2]=(0,n.useState)("agent");(0,n.useEffect)(()=>{let e=tY.map(e=>document.getElementById(`section-${e.id}`)).filter(Boolean);if(0===e.length)return;let t=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&e2(t.target.id.replace("section-",""))},{rootMargin:"-65px 0px -60% 0px",threshold:0});for(let n of e)t.observe(n);return()=>t.disconnect()},[]);let e3=(0,n.useCallback)(e=>{let t=document.getElementById(`section-${e}`);t&&(t.scrollIntoView({behavior:"smooth",block:"start"}),t.style.animation="none",t.offsetHeight,t.style.animation="section-flash 1s ease-out")},[]);return(0,t.jsxs)("div",{"data-testid":"settings-page-client",className:"max-w-5xl",children:[(0,t.jsx)("div",{className:"bg-background/95 supports-backdrop-filter:bg-background/80 sticky top-0 z-10 grid grid-cols-1 gap-x-5 pt-6 pb-4 backdrop-blur lg:grid-cols-[1fr_280px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(f,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:m("settings.title")}),(0,t.jsxs)("span",{className:"relative h-4 w-16",children:[(0,t.jsx)("span",{className:(0,y.cn)("text-muted-foreground absolute inset-0 flex items-center text-xs transition-opacity duration-300",h?"opacity-100":"opacity-0"),children:m("settings.saving")}),(0,t.jsxs)("span",{className:(0,y.cn)("absolute inset-0 flex items-center gap-1 text-xs text-green-600 transition-opacity duration-300",j&&!h?"opacity-100":"opacity-0"),children:[(0,t.jsx)(i.Check,{className:"h-3 w-3"}),m("settings.saved")]})]}),(0,t.jsx)("nav",{className:"ml-auto flex items-center gap-0.5",children:tY.map(e=>{let n=e.icon,i=eJ===e.id;return(0,t.jsxs)("button",{type:"button",onClick:()=>e3(e.id),className:(0,y.cn)("flex cursor-pointer items-center gap-1 rounded-md px-1.5 py-1 text-[11px] transition-all",i?"bg-accent text-foreground font-medium":"text-muted-foreground/60 hover:text-foreground hover:bg-accent/50"),children:[(0,t.jsx)(n,{className:"h-3 w-3"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:m(e.labelKey)})]},e.id)})})]})}),(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.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,t.jsx)(tp,{language:e.user?.preferredLanguage??e9.Language.English})}),(0,t.jsxs)("div",{id:"section-agent",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsx)(tJ,{icon:s.Bot,title:m("settings.agent.sectionTitle"),description:m("settings.agent.sectionDescription"),testId:"agent-settings-section",children:(0,t.jsx)(tZ,{label:m("settings.agent.agentAndModel"),description:m("settings.agent.agentAndModelDescription"),htmlFor:"agent-model-picker",children:(0,t.jsx)(tc.AgentModelPicker,{initialAgentType:k,initialModel:e.models.default,mode:"settings",onAgentModelChange:e=>N(e),className:"w-55"})})}),(0,t.jsx)(t1,{links:[{label:m("settings.agent.links.agentSystem"),href:"https://github.com/shep-ai/shep/blob/main/docs/architecture/agent-system.md"},{label:m("settings.agent.links.addingAgents"),href:"https://github.com/shep-ai/shep/blob/main/docs/development/adding-agents.md"},{label:m("settings.agent.links.configurationGuide"),href:"https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md"}],children:m("settings.agent.hint")})]}),(0,t.jsxs)("div",{id:"section-environment",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:a.Terminal,title:m("settings.environment.sectionTitle"),description:m("settings.environment.sectionDescription"),testId:"environment-settings-section",children:[(0,t.jsx)(tZ,{label:m("settings.environment.defaultEditor"),description:m("settings.environment.defaultEditorDescription"),htmlFor:"default-editor",children:(0,t.jsxs)(eQ,{value:M,onValueChange:e=>{I(e),S({environment:{defaultEditor:e,shellPreference:T,terminalPreference:E}})},children:[(0,t.jsx)(e1,{id:"default-editor","data-testid":"editor-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(e0,{})}),(0,t.jsx)(e5,{children:tq.map(e=>{var n;let i=(n=e.value)&&n in to?to[n]:tn;return(0,t.jsx)(e4,{value:e.value,children:(0,t.jsxs)("span",{className:"flex items-center gap-2 text-xs",children:[(0,t.jsx)(i,{className:"h-4 w-4 shrink-0"}),e.label]})},e.value)})})]})}),(0,t.jsx)(tZ,{label:m("settings.environment.shell"),description:m("settings.environment.shellDescription"),htmlFor:"shell-preference",children:(0,t.jsxs)(eQ,{value:T,onValueChange:e=>{P(e),S({environment:{defaultEditor:M,shellPreference:e,terminalPreference:E}})},children:[(0,t.jsx)(e1,{id:"shell-preference","data-testid":"shell-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(e0,{})}),(0,t.jsx)(e5,{children:t$.map(e=>(0,t.jsx)(e4,{value:e.value,children:e.label},e.value))})]})}),(0,t.jsx)(tZ,{label:m("settings.environment.terminal"),description:m("settings.environment.terminalDescription"),htmlFor:"terminal-preference",children:(0,t.jsxs)(eQ,{value:E,onValueChange:e=>{R(e),S({environment:{defaultEditor:M,shellPreference:T,terminalPreference:e}})},children:[(0,t.jsx)(e1,{id:"terminal-preference","data-testid":"terminal-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(e0,{})}),(0,t.jsx)(e5,{children:D.map(e=>(0,t.jsx)(e4,{value:e.id,children:e.name},e.id))})]})})]}),(0,t.jsx)(t1,{links:[{label:m("settings.environment.links.configurationGuide"),href:"https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md"}],children:m("settings.environment.hint")})]}),(0,t.jsxs)("div",{id:"section-workflow",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:r.GitBranch,title:m("settings.workflow.title"),description:m("settings.workflow.sectionDescription"),testId:"workflow-settings-section",children:[(0,t.jsx)(tX,{label:m("settings.workflow.defaultFastMode"),description:m("settings.workflow.defaultFastModeDescription"),id:"default-fast-mode",testId:"switch-default-fast-mode",checked:J,onChange:e=>{Q(e),S(eZ({defaultFastMode:e}))}}),(0,t.jsx)(t0,{children:m("settings.workflow.subsections.approve")}),(0,t.jsx)(tX,{label:m("settings.workflow.autoApprovePrd"),description:m("settings.workflow.autoApprovePrdDescription"),id:"allow-prd",testId:"switch-allow-prd",checked:H,onChange:e=>{z(e),S(eZ({allowPrd:e}))}}),(0,t.jsx)(tX,{label:m("settings.workflow.autoApprovePlan"),description:m("settings.workflow.autoApprovePlanDescription"),id:"allow-plan",testId:"switch-allow-plan",checked:_,onChange:e=>{V(e),S(eZ({allowPlan:e}))}}),(0,t.jsx)(tX,{label:m("settings.workflow.autoApproveMerge"),description:m("settings.workflow.autoApproveMergeDescription"),id:"allow-merge",testId:"switch-allow-merge",checked:K,onChange:e=>{O(e),S(eZ({allowMerge:e}))}}),(0,t.jsx)(t0,{children:m("settings.workflow.subsections.evidence")}),(0,t.jsx)(tX,{label:m("settings.workflow.collectEvidence"),description:m("settings.workflow.collectEvidenceDescription"),id:"enable-evidence",testId:"switch-enable-evidence",checked:W,onChange:e=>{U(e),e?S(eZ({enableEvidence:e})):(q(!1),S(eZ({enableEvidence:e,commitEvidence:!1})))}}),(0,t.jsx)(tX,{label:m("settings.workflow.addEvidenceToPr"),description:m("settings.workflow.addEvidenceToPrDescription"),id:"commit-evidence",testId:"switch-commit-evidence",checked:G,disabled:!W||!A,onChange:e=>{q(e),S(eZ({commitEvidence:e}))}}),(0,t.jsx)(t0,{children:m("settings.workflow.subsections.git")}),(0,t.jsx)(tX,{label:m("settings.workflow.pushOnComplete"),description:m("settings.workflow.pushOnCompleteDescription"),id:"push-on-complete",testId:"switch-push-on-complete",checked:L,onChange:e=>{B(e),S(eZ({pushOnComplete:e}))}}),(0,t.jsx)(tX,{label:m("settings.workflow.openPrOnComplete"),description:m("settings.workflow.openPrOnCompleteDescription"),id:"open-pr",testId:"switch-open-pr",checked:A,onChange:e=>{F(e),e?S(eZ({openPr:e})):(q(!1),S(eZ({openPr:e,commitEvidence:!1})))}}),(0,t.jsx)(tX,{label:m("settings.workflow.watchCiAfterPush"),description:m("settings.workflow.watchCiAfterPushDescription"),id:"ci-watch-enabled",testId:"switch-ci-watch-enabled",checked:$,onChange:e=>{Y(e),S(eZ({ciWatchEnabled:e}))}})]}),(0,t.jsx)(t1,{links:[{label:m("settings.workflow.links.approvalGates"),href:"https://github.com/shep-ai/shep/blob/main/specs/016-hitl-approval-gates/spec.yaml"},{label:m("settings.workflow.links.pushAndPrFlags"),href:"https://github.com/shep-ai/shep/blob/main/specs/037-feature-pr-push-flags/spec.yaml"}],children:m("settings.workflow.hint")})]}),(0,t.jsxs)("div",{id:"section-ci",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:o,title:m("settings.ci.title"),description:m("settings.ci.description"),testId:"ci-settings-section",children:[(0,t.jsx)(tZ,{label:m("settings.ci.maxFixAttempts"),description:m("settings.ci.maxFixAttemptsDescription"),htmlFor:"ci-max-fix",children:(0,t.jsx)(tQ,{id:"ci-max-fix",testId:"ci-max-fix-input",placeholder:"3",value:ee,onChange:et,onBlur:()=>{ee!==eB&&S(eZ({ciMaxFix:ee}))},min:1,max:10})}),(0,t.jsx)(tZ,{label:m("settings.ci.watchTimeout"),description:m("settings.ci.watchTimeoutDescription"),htmlFor:"ci-timeout",children:(0,t.jsx)(tQ,{id:"ci-timeout",testId:"ci-timeout-input",placeholder:"300",value:en,onChange:ei,onBlur:()=>{en!==eH&&S(eZ({ciTimeout:en}))},min:30,step:30,suffix:"sec"})}),(0,t.jsx)(tZ,{label:m("settings.ci.maxLogSize"),description:m("settings.ci.maxLogSizeDescription"),htmlFor:"ci-log-max",children:(0,t.jsx)(tQ,{id:"ci-log-max",testId:"ci-log-max-input",placeholder:"50000",value:es,onChange:ea,onBlur:()=>{es!==ez&&S(eZ({ciLogMax:es}))},min:1e3,step:5e3,suffix:"chars"})}),(0,t.jsx)(tZ,{label:m("settings.ci.pollInterval"),description:m("settings.ci.pollIntervalDescription"),htmlFor:"ci-poll-interval",children:(0,t.jsx)(tQ,{id:"ci-poll-interval",testId:"ci-poll-interval-input",placeholder:"30",value:er,onChange:el,onBlur:()=>{er!==e_&&S(eZ({ciPollInterval:er}))},min:5,step:5,suffix:"sec"})}),(0,t.jsx)(tX,{label:m("settings.ci.hideCiStatus"),description:m("settings.ci.hideCiStatusDescription"),id:"hide-ci-status",testId:"switch-hide-ci-status",checked:Z,onChange:e=>{X(e),S(eZ({hideCiStatus:e}))}})]}),(0,t.jsx)(t1,{links:[{label:m("settings.ci.links.cicdPipeline"),href:"https://github.com/shep-ai/shep/blob/main/docs/development/cicd.md"},{label:m("settings.ci.links.ciSecurityGates"),href:"https://github.com/shep-ai/shep/blob/main/specs/003-cicd-security-gates/spec.md"}],children:m("settings.ci.hint")})]}),(0,t.jsxs)("div",{id:"section-stage-timeouts",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:v.Timer,title:m("settings.stageTimeouts.title"),description:m("settings.stageTimeouts.description"),testId:"stage-timeouts-settings-section",children:[(0,t.jsx)(t0,{children:m("settings.stageTimeouts.subsections.featureAgent")}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.analyze"),description:m("settings.stageTimeouts.analyzeDescription"),htmlFor:"timeout-analyze",children:(0,t.jsx)(tG,{id:"timeout-analyze",testId:"timeout-analyze-input",value:ec,onChange:ed,onBlur:()=>{ec!==eV&&S(eZ({analyzeTimeout:ec}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.requirements"),description:m("settings.stageTimeouts.requirementsDescription"),htmlFor:"timeout-requirements",children:(0,t.jsx)(tG,{id:"timeout-requirements",testId:"timeout-requirements-input",value:eu,onChange:ep,onBlur:()=>{eu!==eK&&S(eZ({requirementsTimeout:eu}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.research"),description:m("settings.stageTimeouts.researchDescription"),htmlFor:"timeout-research",children:(0,t.jsx)(tG,{id:"timeout-research",testId:"timeout-research-input",value:eg,onChange:em,onBlur:()=>{eg!==eO&&S(eZ({researchTimeout:eg}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.plan"),description:m("settings.stageTimeouts.planDescription"),htmlFor:"timeout-plan",children:(0,t.jsx)(tG,{id:"timeout-plan",testId:"timeout-plan-input",value:eh,onChange:ef,onBlur:()=>{eh!==eW&&S(eZ({planTimeout:eh}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.implement"),description:m("settings.stageTimeouts.implementDescription"),htmlFor:"timeout-implement",children:(0,t.jsx)(tG,{id:"timeout-implement",testId:"timeout-implement-input",value:ev,onChange:ex,onBlur:()=>{ev!==eU&&S(eZ({implementTimeout:ev}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.merge"),description:m("settings.stageTimeouts.mergeDescription"),htmlFor:"timeout-merge",children:(0,t.jsx)(tG,{id:"timeout-merge",testId:"timeout-merge-input",value:ew,onChange:eb,onBlur:()=>{ew!==eG&&S(eZ({mergeTimeout:ew}))},defaultSeconds:1800})}),(0,t.jsx)(t0,{children:m("settings.stageTimeouts.subsections.analyzeRepoAgent")}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.analyze"),description:m("settings.stageTimeouts.analyzeDescription"),htmlFor:"timeout-analyze-repo",children:(0,t.jsx)(tG,{id:"timeout-analyze-repo",testId:"timeout-analyze-repo-input",value:ej,onChange:eS,onBlur:()=>{ej!==eq&&S(eZ({analyzeRepoTimeout:ej}))},defaultSeconds:600})})]}),(0,t.jsx)(t1,{children:m("settings.stageTimeouts.hint")})]}),(0,t.jsxs)("div",{id:"section-notifications",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:c,title:m("settings.notifications.title"),description:m("settings.notifications.sectionDescription"),testId:"notification-settings-section",children:[(0,t.jsx)(t0,{children:m("settings.notifications.channels")}),(0,t.jsx)(tX,{label:m("settings.notifications.inAppLabel"),description:m("settings.notifications.inAppDescription"),id:"notif-in-app",testId:"switch-in-app",checked:eE,onChange:e=>{eR(e),S(eX({inApp:e}))}}),(0,t.jsx)(t0,{children:m("settings.notifications.subsections.agentEvents")}),(0,t.jsx)(tX,{label:m("settings.notifications.events.agentStarted"),id:"notif-event-agentStarted",testId:"switch-event-agentStarted",checked:eD.agentStarted,onChange:e=>{let t={...eD,agentStarted:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.phaseCompleted"),id:"notif-event-phaseCompleted",testId:"switch-event-phaseCompleted",checked:eD.phaseCompleted,onChange:e=>{let t={...eD,phaseCompleted:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.waitingApproval"),id:"notif-event-waitingApproval",testId:"switch-event-waitingApproval",checked:eD.waitingApproval,onChange:e=>{let t={...eD,waitingApproval:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.agentCompleted"),id:"notif-event-agentCompleted",testId:"switch-event-agentCompleted",checked:eD.agentCompleted,onChange:e=>{let t={...eD,agentCompleted:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.agentFailed"),id:"notif-event-agentFailed",testId:"switch-event-agentFailed",checked:eD.agentFailed,onChange:e=>{let t={...eD,agentFailed:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(t0,{children:m("settings.notifications.subsections.pullRequestEvents")}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prMerged"),id:"notif-event-prMerged",testId:"switch-event-prMerged",checked:eD.prMerged,onChange:e=>{let t={...eD,prMerged:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prClosed"),id:"notif-event-prClosed",testId:"switch-event-prClosed",checked:eD.prClosed,onChange:e=>{let t={...eD,prClosed:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prChecksPassed"),id:"notif-event-prChecksPassed",testId:"switch-event-prChecksPassed",checked:eD.prChecksPassed,onChange:e=>{let t={...eD,prChecksPassed:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prChecksFailed"),id:"notif-event-prChecksFailed",testId:"switch-event-prChecksFailed",checked:eD.prChecksFailed,onChange:e=>{let t={...eD,prChecksFailed:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prBlocked"),id:"notif-event-prBlocked",testId:"switch-event-prBlocked",checked:eD.prBlocked,onChange:e=>{let t={...eD,prBlocked:e};eA(t),S(eX({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.mergeReviewReady"),id:"notif-event-mergeReviewReady",testId:"switch-event-mergeReviewReady",checked:eD.mergeReviewReady,onChange:e=>{let t={...eD,mergeReviewReady:e};eA(t),S(eX({events:t}))}})]}),(0,t.jsx)(t1,{links:[{label:m("settings.notifications.links.notificationSystem"),href:"https://github.com/shep-ai/shep/blob/main/specs/021-agent-notifications/spec.yaml"}],children:m("settings.notifications.hint")})]}),(0,t.jsxs)("div",{id:"section-feature-flags",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:d,title:m("settings.featureFlags.title"),description:m("settings.featureFlags.sectionDescription"),badge:m("settings.featureFlags.badge"),testId:"feature-flags-settings-section",children:[(0,t.jsx)(tX,{label:m("settings.featureFlags.skills"),description:m("settings.featureFlags.skillsDescription"),id:"flag-skills",testId:"switch-flag-skills",checked:eF.skills,onChange:e=>{let t={...eF,skills:e};eL(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.deployments"),description:m("settings.featureFlags.deploymentsDescription"),id:"flag-envDeploy",testId:"switch-flag-envDeploy",checked:eF.envDeploy,onChange:e=>{let t={...eF,envDeploy:e};eL(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.debug"),description:m("settings.featureFlags.debugDescription"),id:"flag-debug",testId:"switch-flag-debug",checked:eF.debug,onChange:e=>{let t={...eF,debug:e};eL(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.githubImport"),description:m("settings.featureFlags.githubImportDescription"),id:"flag-githubImport",testId:"switch-flag-githubImport",checked:eF.githubImport,onChange:e=>{let t={...eF,githubImport:e};eL(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.adoptBranch"),description:m("settings.featureFlags.adoptBranchDescription"),id:"flag-adoptBranch",testId:"switch-flag-adoptBranch",checked:eF.adoptBranch,onChange:e=>{let t={...eF,adoptBranch:e};eL(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.gitRebaseSync"),description:m("settings.featureFlags.gitRebaseSyncDescription"),id:"flag-gitRebaseSync",testId:"switch-flag-gitRebaseSync",checked:eF.gitRebaseSync,onChange:e=>{let t={...eF,gitRebaseSync:e};eL(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.reactFileManager"),description:m("settings.featureFlags.reactFileManagerDescription"),id:"flag-reactFileManager",testId:"switch-flag-reactFileManager",checked:eF.reactFileManager,onChange:e=>{let t={...eF,reactFileManager:e};eL(t),S({featureFlags:t})}})]}),(0,t.jsx)(t1,{children:m("settings.featureFlags.hint")})]}),(0,t.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,t.jsxs)(tJ,{icon:x.MessageSquare,title:m("settings.interactiveAgent.title"),description:m("settings.interactiveAgent.description"),testId:"interactive-agent-settings-section",children:[(0,t.jsx)(tX,{label:m("settings.interactiveAgent.enableChatTab"),description:m("settings.interactiveAgent.enableChatTabDescription"),id:"interactive-agent-enabled",testId:"switch-interactive-agent-enabled",checked:ek,onChange:e=>{eN(e),S({interactiveAgent:{enabled:e,autoTimeoutMinutes:parseInt(eM,10)||15,maxConcurrentSessions:parseInt(eT,10)||3}})}}),(0,t.jsx)(tZ,{label:m("settings.interactiveAgent.autoTimeout"),description:m("settings.interactiveAgent.autoTimeoutDescription"),htmlFor:"interactive-agent-timeout",children:(0,t.jsx)(tQ,{id:"interactive-agent-timeout",testId:"input-interactive-agent-timeout",value:eM,placeholder:"15",min:1,max:120,suffix:"min",onChange:eI,onBlur:()=>{let e=parseInt(eM,10),t=Number.isNaN(e)?15:Math.min(120,Math.max(1,e));eI(String(t)),S({interactiveAgent:{enabled:ek,autoTimeoutMinutes:t,maxConcurrentSessions:parseInt(eT,10)||3}})}})}),(0,t.jsx)(tZ,{label:m("settings.interactiveAgent.maxConcurrentSessions"),description:m("settings.interactiveAgent.maxConcurrentSessionsDescription"),htmlFor:"interactive-agent-sessions",children:(0,t.jsx)(tQ,{id:"interactive-agent-sessions",testId:"input-interactive-agent-sessions",value:eT,placeholder:"3",min:1,max:10,onChange:eP,onBlur:()=>{let e=parseInt(eT,10),t=Number.isNaN(e)?3:Math.min(10,Math.max(1,e));eP(String(t)),S({interactiveAgent:{enabled:ek,autoTimeoutMinutes:parseInt(eM,10)||15,maxConcurrentSessions:t}})}})})]}),(0,t.jsx)(t1,{children:m("settings.interactiveAgent.hint")})]}),(0,t.jsxs)("div",{id:"section-database",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:u,title:m("settings.database.title"),description:m("settings.database.sectionDescription"),testId:"database-settings-section",children:[(0,t.jsx)(tZ,{label:m("settings.database.location"),description:m("settings.database.locationDescription"),children:(0,t.jsx)("span",{className:"text-muted-foreground max-w-50 truncate font-mono text-xs","data-testid":"shep-home-path",children:l})}),(0,t.jsx)(tZ,{label:m("settings.database.size"),children:(0,t.jsx)("span",{className:"text-muted-foreground text-xs","data-testid":"db-file-size",children:p})})]}),(0,t.jsx)(t1,{links:[{label:m("settings.database.links.settingsService"),href:"https://github.com/shep-ai/shep/blob/main/docs/architecture/settings-service.md"},{label:m("settings.database.links.settingsSpec"),href:"https://github.com/shep-ai/shep/blob/main/specs/005-global-settings-service/spec.md"}],children:m("settings.database.hint")})]})]})]})}e.s(["SettingsPageClient",()=>t2],41952)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,41952,e=>{"use strict";var t=e.i(20314),n=e.i(79054),i=e.i(23925),s=e.i(26370),a=e.i(38573),r=e.i(49228),l=e.i(3645);let o=(0,l.default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]),c=(0,l.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"}]]),d=(0,l.default)("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]),u=(0,l.default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);var p=e.i(32494),g=e.i(10714),g=g,m=e.i(3214),h=e.i(30702);let f=(0,l.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 v=e.i(58860),x=e.i(48109),w=e.i(60112);e.i(41001);var b=e.i(64780),y=e.i(31777),j=e.i(41957),S=e.i(51911),C=e.i(26036),k=e.i(27069),N=e.i(91967),M=e.i(87342),I=e.i(5978),T=e.i(22528),E=e.i(66033),P=e.i(53532),D=e.i(41687),R=e.i(56720),A=e.i(13123),F=e.i(52740),L=e.i(39979),B=e.i(87620),H=e.i(86874),z=e.i(29297),_=e.i(36589),V=e.i(5192),K=e.i(23405),O=e.i(1693),W=e.i(73772),U=e.i(13044),G=[" ","Enter","ArrowUp","ArrowDown"],q=[" ","Enter"],$="Select",[Y,Z,X]=(0,M.createCollection)($),[J,Q]=(0,T.createContextScope)($,[X,F.createPopperScope]),ee=(0,F.createPopperScope)(),[et,en]=J($),[ei,es]=J($),ea=e=>{let{__scopeSelect:i,children:s,open:a,defaultOpen:r,onOpenChange:l,value:o,defaultValue:c,onValueChange:d,dir:u,name:p,autoComplete:g,disabled:m,required:h,form:f}=e,v=ee(i),[x,w]=n.useState(null),[b,y]=n.useState(null),[j,S]=n.useState(!1),C=(0,E.useDirection)(u),[k,N]=(0,_.useControllableState)({prop:a,defaultProp:r??!1,onChange:l,caller:$}),[M,I]=(0,_.useControllableState)({prop:o,defaultProp:c,onChange:d,caller:$}),T=n.useRef(null),P=!x||f||!!x.closest("form"),[D,R]=n.useState(new Set),L=Array.from(D).map(e=>e.props.value).join(";");return(0,t.jsx)(F.Root,{...v,children:(0,t.jsxs)(et,{required:h,scope:i,trigger:x,onTriggerChange:w,valueNode:b,onValueNodeChange:y,valueNodeHasChildren:j,onValueNodeHasChildrenChange:S,contentId:(0,A.useId)(),value:M,onValueChange:I,open:k,onOpenChange:N,dir:C,triggerPointerDownPosRef:T,disabled:m,children:[(0,t.jsx)(Y.Provider,{scope:i,children:(0,t.jsx)(ei,{scope:e.__scopeSelect,onNativeOptionAdd:n.useCallback(e=>{R(t=>new Set(t).add(e))},[]),onNativeOptionRemove:n.useCallback(e=>{R(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:s})}),P?(0,t.jsxs)(eG,{"aria-hidden":!0,required:h,tabIndex:-1,name:p,autoComplete:g,value:M,onChange:e=>I(e.target.value),disabled:m,form:f,children:[void 0===M?(0,t.jsx)("option",{value:""}):null,Array.from(D)]},L):null]})})};ea.displayName=$;var er="SelectTrigger",el=n.forwardRef((e,i)=>{let{__scopeSelect:s,disabled:a=!1,...r}=e,l=ee(s),o=en(er,s),c=o.disabled||a,d=(0,I.useComposedRefs)(i,o.onTriggerChange),u=Z(s),p=n.useRef("touch"),[g,m,h]=e$(e=>{let t=u().filter(e=>!e.disabled),n=t.find(e=>e.value===o.value),i=eY(t,e,n);void 0!==i&&o.onValueChange(i.value)}),f=e=>{c||(o.onOpenChange(!0),h()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,t.jsx)(F.Anchor,{asChild:!0,...l,children:(0,t.jsx)(B.Primitive.button,{type:"button",role:"combobox","aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":"none",dir:o.dir,"data-state":o.open?"open":"closed",disabled:c,"data-disabled":c?"":void 0,"data-placeholder":eq(o.value)?"":void 0,...r,ref:d,onClick:(0,N.composeEventHandlers)(r.onClick,e=>{e.currentTarget.focus(),"mouse"!==p.current&&f(e)}),onPointerDown:(0,N.composeEventHandlers)(r.onPointerDown,e=>{p.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),0===e.button&&!1===e.ctrlKey&&"mouse"===e.pointerType&&(f(e),e.preventDefault())}),onKeyDown:(0,N.composeEventHandlers)(r.onKeyDown,e=>{let t=""!==g.current;e.ctrlKey||e.altKey||e.metaKey||1!==e.key.length||m(e.key),(!t||" "!==e.key)&&G.includes(e.key)&&(f(),e.preventDefault())})})})});el.displayName=er;var eo="SelectValue",ec=n.forwardRef((e,n)=>{let{__scopeSelect:i,className:s,style:a,children:r,placeholder:l="",...o}=e,c=en(eo,i),{onValueNodeHasChildrenChange:d}=c,u=void 0!==r,p=(0,I.useComposedRefs)(n,c.onValueNodeChange);return(0,V.useLayoutEffect)(()=>{d(u)},[d,u]),(0,t.jsx)(B.Primitive.span,{...o,ref:p,style:{pointerEvents:"none"},children:eq(c.value)?(0,t.jsx)(t.Fragment,{children:l}):r})});ec.displayName=eo;var ed=n.forwardRef((e,n)=>{let{__scopeSelect:i,children:s,...a}=e;return(0,t.jsx)(B.Primitive.span,{"aria-hidden":!0,...a,ref:n,children:s||"▼"})});ed.displayName="SelectIcon";var eu=e=>(0,t.jsx)(L.Portal,{asChild:!0,...e});eu.displayName="SelectPortal";var ep="SelectContent",eg=n.forwardRef((e,i)=>{let s=en(ep,e.__scopeSelect),[a,r]=n.useState();return((0,V.useLayoutEffect)(()=>{r(new DocumentFragment)},[]),s.open)?(0,t.jsx)(ev,{...e,ref:i}):a?C.createPortal((0,t.jsx)(em,{scope:e.__scopeSelect,children:(0,t.jsx)(Y.Slot,{scope:e.__scopeSelect,children:(0,t.jsx)("div",{children:e.children})})}),a):null});eg.displayName=ep;var[em,eh]=J(ep),ef=(0,H.createSlot)("SelectContent.RemoveScroll"),ev=n.forwardRef((e,i)=>{let{__scopeSelect:s,position:a="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:l,onPointerDownOutside:o,side:c,sideOffset:d,align:u,alignOffset:p,arrowPadding:g,collisionBoundary:m,collisionPadding:h,sticky:f,hideWhenDetached:v,avoidCollisions:x,...w}=e,b=en(ep,s),[y,j]=n.useState(null),[S,C]=n.useState(null),k=(0,I.useComposedRefs)(i,e=>j(e)),[M,T]=n.useState(null),[E,A]=n.useState(null),F=Z(s),[L,B]=n.useState(!1),H=n.useRef(!1);n.useEffect(()=>{if(y)return(0,W.hideOthers)(y)},[y]),(0,D.useFocusGuards)();let z=n.useCallback(e=>{let[t,...n]=F().map(e=>e.ref.current),[i]=n.slice(-1),s=document.activeElement;for(let n of e)if(n===s||(n?.scrollIntoView({block:"nearest"}),n===t&&S&&(S.scrollTop=0),n===i&&S&&(S.scrollTop=S.scrollHeight),n?.focus(),document.activeElement!==s))return},[F,S]),_=n.useCallback(()=>z([M,y]),[z,M,y]);n.useEffect(()=>{L&&_()},[L,_]);let{onOpenChange:V,triggerPointerDownPosRef:K}=b;n.useEffect(()=>{if(y){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(K.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(K.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():y.contains(n.target)||V(!1),document.removeEventListener("pointermove",t),K.current=null};return null!==K.current&&(document.addEventListener("pointermove",t),document.addEventListener("pointerup",n,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",t),document.removeEventListener("pointerup",n,{capture:!0})}}},[y,V,K]),n.useEffect(()=>{let e=()=>V(!1);return window.addEventListener("blur",e),window.addEventListener("resize",e),()=>{window.removeEventListener("blur",e),window.removeEventListener("resize",e)}},[V]);let[O,G]=e$(e=>{let t=F().filter(e=>!e.disabled),n=t.find(e=>e.ref.current===document.activeElement),i=eY(t,e,n);i&&setTimeout(()=>i.ref.current.focus())}),q=n.useCallback((e,t,n)=>{let i=!H.current&&!n;(void 0!==b.value&&b.value===t||i)&&(T(e),i&&(H.current=!0))},[b.value]),$=n.useCallback(()=>y?.focus(),[y]),Y=n.useCallback((e,t,n)=>{let i=!H.current&&!n;(void 0!==b.value&&b.value===t||i)&&A(e)},[b.value]),X="popper"===a?ew:ex,J=X===ew?{side:c,sideOffset:d,align:u,alignOffset:p,arrowPadding:g,collisionBoundary:m,collisionPadding:h,sticky:f,hideWhenDetached:v,avoidCollisions:x}:{};return(0,t.jsx)(em,{scope:s,content:y,viewport:S,onViewportChange:C,itemRefCallback:q,selectedItem:M,onItemLeave:$,itemTextRefCallback:Y,focusSelectedItem:_,selectedItemText:E,position:a,isPositioned:L,searchRef:O,children:(0,t.jsx)(U.RemoveScroll,{as:ef,allowPinchZoom:!0,children:(0,t.jsx)(R.FocusScope,{asChild:!0,trapped:b.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:(0,N.composeEventHandlers)(r,e=>{b.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,t.jsx)(P.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:l,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>b.onOpenChange(!1),children:(0,t.jsx)(X,{role:"listbox",id:b.contentId,"data-state":b.open?"open":"closed",dir:b.dir,onContextMenu:e=>e.preventDefault(),...w,...J,onPlaced:()=>B(!0),ref:k,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:(0,N.composeEventHandlers)(w.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if("Tab"===e.key&&e.preventDefault(),t||1!==e.key.length||G(e.key),["ArrowUp","ArrowDown","Home","End"].includes(e.key)){let t=F().filter(e=>!e.disabled).map(e=>e.ref.current);if(["ArrowUp","End"].includes(e.key)&&(t=t.slice().reverse()),["ArrowUp","ArrowDown"].includes(e.key)){let n=e.target,i=t.indexOf(n);t=t.slice(i+1)}setTimeout(()=>z(t)),e.preventDefault()}})})})})})})});ev.displayName="SelectContentImpl";var ex=n.forwardRef((e,i)=>{let{__scopeSelect:s,onPlaced:a,...r}=e,l=en(ep,s),o=eh(ep,s),[c,d]=n.useState(null),[u,p]=n.useState(null),g=(0,I.useComposedRefs)(i,e=>p(e)),m=Z(s),h=n.useRef(!1),f=n.useRef(!0),{viewport:v,selectedItem:x,selectedItemText:w,focusSelectedItem:b}=o,y=n.useCallback(()=>{if(l.trigger&&l.valueNode&&c&&u&&v&&x&&w){let e=l.trigger.getBoundingClientRect(),t=u.getBoundingClientRect(),n=l.valueNode.getBoundingClientRect(),i=w.getBoundingClientRect();if("rtl"!==l.dir){let s=i.left-t.left,a=n.left-s,r=e.left-a,l=e.width+r,o=Math.max(l,t.width),d=window.innerWidth-10,u=(0,k.clamp)(a,[10,Math.max(10,d-o)]);c.style.minWidth=l+"px",c.style.left=u+"px"}else{let s=t.right-i.right,a=window.innerWidth-n.right-s,r=window.innerWidth-e.right-a,l=e.width+r,o=Math.max(l,t.width),d=window.innerWidth-10,u=(0,k.clamp)(a,[10,Math.max(10,d-o)]);c.style.minWidth=l+"px",c.style.right=u+"px"}let s=m(),r=window.innerHeight-20,o=v.scrollHeight,d=window.getComputedStyle(u),p=parseInt(d.borderTopWidth,10),g=parseInt(d.paddingTop,10),f=parseInt(d.borderBottomWidth,10),b=p+g+o+parseInt(d.paddingBottom,10)+f,y=Math.min(5*x.offsetHeight,b),j=window.getComputedStyle(v),S=parseInt(j.paddingTop,10),C=parseInt(j.paddingBottom,10),N=e.top+e.height/2-10,M=x.offsetHeight/2,I=p+g+(x.offsetTop+M);if(I<=N){let e=s.length>0&&x===s[s.length-1].ref.current;c.style.bottom="0px";let t=Math.max(r-N,M+(e?C:0)+(u.clientHeight-v.offsetTop-v.offsetHeight)+f);c.style.height=I+t+"px"}else{let e=s.length>0&&x===s[0].ref.current;c.style.top="0px";let t=Math.max(N,p+v.offsetTop+(e?S:0)+M);c.style.height=t+(b-I)+"px",v.scrollTop=I-N+v.offsetTop}c.style.margin="10px 0",c.style.minHeight=y+"px",c.style.maxHeight=r+"px",a?.(),requestAnimationFrame(()=>h.current=!0)}},[m,l.trigger,l.valueNode,c,u,v,x,w,l.dir,a]);(0,V.useLayoutEffect)(()=>y(),[y]);let[j,S]=n.useState();(0,V.useLayoutEffect)(()=>{u&&S(window.getComputedStyle(u).zIndex)},[u]);let C=n.useCallback(e=>{e&&!0===f.current&&(y(),b?.(),f.current=!1)},[y,b]);return(0,t.jsx)(eb,{scope:s,contentWrapper:c,shouldExpandOnScrollRef:h,onScrollButtonChange:C,children:(0,t.jsx)("div",{ref:d,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:j},children:(0,t.jsx)(B.Primitive.div,{...r,ref:g,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})});ex.displayName="SelectItemAlignedPosition";var ew=n.forwardRef((e,n)=>{let{__scopeSelect:i,align:s="start",collisionPadding:a=10,...r}=e,l=ee(i);return(0,t.jsx)(F.Content,{...l,...r,ref:n,align:s,collisionPadding:a,style:{boxSizing:"border-box",...r.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ew.displayName="SelectPopperPosition";var[eb,ey]=J(ep,{}),ej="SelectViewport",eS=n.forwardRef((e,i)=>{let{__scopeSelect:s,nonce:a,...r}=e,l=eh(ej,s),o=ey(ej,s),c=(0,I.useComposedRefs)(i,l.onViewportChange),d=n.useRef(0);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:a}),(0,t.jsx)(Y.Slot,{scope:s,children:(0,t.jsx)(B.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:c,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:(0,N.composeEventHandlers)(r.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:i}=o;if(i?.current&&n){let e=Math.abs(d.current-t.scrollTop);if(e>0){let i=window.innerHeight-20,s=Math.max(parseFloat(n.style.minHeight),parseFloat(n.style.height));if(s<i){let a=s+e,r=Math.min(i,a),l=a-r;n.style.height=r+"px","0px"===n.style.bottom&&(t.scrollTop=l>0?l:0,n.style.justifyContent="flex-end")}}}d.current=t.scrollTop})})})]})});eS.displayName=ej;var eC="SelectGroup",[ek,eN]=J(eC),eM=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e,a=(0,A.useId)();return(0,t.jsx)(ek,{scope:i,id:a,children:(0,t.jsx)(B.Primitive.div,{role:"group","aria-labelledby":a,...s,ref:n})})});eM.displayName=eC;var eI="SelectLabel",eT=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e,a=eN(eI,i);return(0,t.jsx)(B.Primitive.div,{id:a.id,...s,ref:n})});eT.displayName=eI;var eE="SelectItem",[eP,eD]=J(eE),eR=n.forwardRef((e,i)=>{let{__scopeSelect:s,value:a,disabled:r=!1,textValue:l,...o}=e,c=en(eE,s),d=eh(eE,s),u=c.value===a,[p,g]=n.useState(l??""),[m,h]=n.useState(!1),f=(0,I.useComposedRefs)(i,e=>d.itemRefCallback?.(e,a,r)),v=(0,A.useId)(),x=n.useRef("touch"),w=()=>{r||(c.onValueChange(a),c.onOpenChange(!1))};if(""===a)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,t.jsx)(eP,{scope:s,value:a,disabled:r,textId:v,isSelected:u,onItemTextChange:n.useCallback(e=>{g(t=>t||(e?.textContent??"").trim())},[]),children:(0,t.jsx)(Y.ItemSlot,{scope:s,value:a,disabled:r,textValue:p,children:(0,t.jsx)(B.Primitive.div,{role:"option","aria-labelledby":v,"data-highlighted":m?"":void 0,"aria-selected":u&&m,"data-state":u?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...o,ref:f,onFocus:(0,N.composeEventHandlers)(o.onFocus,()=>h(!0)),onBlur:(0,N.composeEventHandlers)(o.onBlur,()=>h(!1)),onClick:(0,N.composeEventHandlers)(o.onClick,()=>{"mouse"!==x.current&&w()}),onPointerUp:(0,N.composeEventHandlers)(o.onPointerUp,()=>{"mouse"===x.current&&w()}),onPointerDown:(0,N.composeEventHandlers)(o.onPointerDown,e=>{x.current=e.pointerType}),onPointerMove:(0,N.composeEventHandlers)(o.onPointerMove,e=>{x.current=e.pointerType,r?d.onItemLeave?.():"mouse"===x.current&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,N.composeEventHandlers)(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&d.onItemLeave?.()}),onKeyDown:(0,N.composeEventHandlers)(o.onKeyDown,e=>{(d.searchRef?.current===""||" "!==e.key)&&(q.includes(e.key)&&w()," "===e.key&&e.preventDefault())})})})})});eR.displayName=eE;var eA="SelectItemText",eF=n.forwardRef((e,i)=>{let{__scopeSelect:s,className:a,style:r,...l}=e,o=en(eA,s),c=eh(eA,s),d=eD(eA,s),u=es(eA,s),[p,g]=n.useState(null),m=(0,I.useComposedRefs)(i,e=>g(e),d.onItemTextChange,e=>c.itemTextRefCallback?.(e,d.value,d.disabled)),h=p?.textContent,f=n.useMemo(()=>(0,t.jsx)("option",{value:d.value,disabled:d.disabled,children:h},d.value),[d.disabled,d.value,h]),{onNativeOptionAdd:v,onNativeOptionRemove:x}=u;return(0,V.useLayoutEffect)(()=>(v(f),()=>x(f)),[v,x,f]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(B.Primitive.span,{id:d.textId,...l,ref:m}),d.isSelected&&o.valueNode&&!o.valueNodeHasChildren?C.createPortal(l.children,o.valueNode):null]})});eF.displayName=eA;var eL="SelectItemIndicator",eB=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e;return eD(eL,i).isSelected?(0,t.jsx)(B.Primitive.span,{"aria-hidden":!0,...s,ref:n}):null});eB.displayName=eL;var eH="SelectScrollUpButton",ez=n.forwardRef((e,i)=>{let s=eh(eH,e.__scopeSelect),a=ey(eH,e.__scopeSelect),[r,l]=n.useState(!1),o=(0,I.useComposedRefs)(i,a.onScrollButtonChange);return(0,V.useLayoutEffect)(()=>{if(s.viewport&&s.isPositioned){let e=function(){l(t.scrollTop>0)},t=s.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[s.viewport,s.isPositioned]),r?(0,t.jsx)(eK,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=s;e&&t&&(e.scrollTop=e.scrollTop-t.offsetHeight)}}):null});ez.displayName=eH;var e_="SelectScrollDownButton",eV=n.forwardRef((e,i)=>{let s=eh(e_,e.__scopeSelect),a=ey(e_,e.__scopeSelect),[r,l]=n.useState(!1),o=(0,I.useComposedRefs)(i,a.onScrollButtonChange);return(0,V.useLayoutEffect)(()=>{if(s.viewport&&s.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;l(Math.ceil(t.scrollTop)<e)},t=s.viewport;return e(),t.addEventListener("scroll",e),()=>t.removeEventListener("scroll",e)}},[s.viewport,s.isPositioned]),r?(0,t.jsx)(eK,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=s;e&&t&&(e.scrollTop=e.scrollTop+t.offsetHeight)}}):null});eV.displayName=e_;var eK=n.forwardRef((e,i)=>{let{__scopeSelect:s,onAutoScroll:a,...r}=e,l=eh("SelectScrollButton",s),o=n.useRef(null),c=Z(s),d=n.useCallback(()=>{null!==o.current&&(window.clearInterval(o.current),o.current=null)},[]);return n.useEffect(()=>()=>d(),[d]),(0,V.useLayoutEffect)(()=>{let e=c().find(e=>e.ref.current===document.activeElement);e?.ref.current?.scrollIntoView({block:"nearest"})},[c]),(0,t.jsx)(B.Primitive.div,{"aria-hidden":!0,...r,ref:i,style:{flexShrink:0,...r.style},onPointerDown:(0,N.composeEventHandlers)(r.onPointerDown,()=>{null===o.current&&(o.current=window.setInterval(a,50))}),onPointerMove:(0,N.composeEventHandlers)(r.onPointerMove,()=>{l.onItemLeave?.(),null===o.current&&(o.current=window.setInterval(a,50))}),onPointerLeave:(0,N.composeEventHandlers)(r.onPointerLeave,()=>{d()})})}),eO=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e;return(0,t.jsx)(B.Primitive.div,{"aria-hidden":!0,...s,ref:n})});eO.displayName="SelectSeparator";var eW="SelectArrow",eU=n.forwardRef((e,n)=>{let{__scopeSelect:i,...s}=e,a=ee(i),r=en(eW,i),l=eh(eW,i);return r.open&&"popper"===l.position?(0,t.jsx)(F.Arrow,{...a,...s,ref:n}):null});eU.displayName=eW;var eG=n.forwardRef(({__scopeSelect:e,value:i,...s},a)=>{let r=n.useRef(null),l=(0,I.useComposedRefs)(a,r),o=(0,K.usePrevious)(i);return n.useEffect(()=>{let e=r.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(o!==i&&t){let n=new Event("change",{bubbles:!0});t.call(e,i),e.dispatchEvent(n)}},[o,i]),(0,t.jsx)(B.Primitive.select,{...s,style:{...O.VISUALLY_HIDDEN_STYLES,...s.style},ref:l,defaultValue:i})});function eq(e){return""===e||void 0===e}function e$(e){let t=(0,z.useCallbackRef)(e),i=n.useRef(""),s=n.useRef(0),a=n.useCallback(e=>{let n=i.current+e;t(n),function e(t){i.current=t,window.clearTimeout(s.current),""!==t&&(s.current=window.setTimeout(()=>e(""),1e3))}(n)},[t]),r=n.useCallback(()=>{i.current="",window.clearTimeout(s.current)},[]);return n.useEffect(()=>()=>window.clearTimeout(s.current),[]),[i,a,r]}function eY(e,t,n){var i,s;let a=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,r=n?e.indexOf(n):-1,l=(i=e,s=Math.max(r,0),i.map((e,t)=>i[(s+t)%i.length]));1===a.length&&(l=l.filter(e=>e!==n));let o=l.find(e=>e.textValue.toLowerCase().startsWith(a.toLowerCase()));return o!==n?o:void 0}eG.displayName="SelectBubbleInput",e.s(["Arrow",()=>eU,"Content",()=>eg,"Group",()=>eM,"Icon",()=>ed,"Item",()=>eR,"ItemIndicator",()=>eB,"ItemText",()=>eF,"Label",()=>eT,"Portal",()=>eu,"Root",()=>ea,"ScrollDownButton",()=>eV,"ScrollUpButton",()=>ez,"Select",()=>ea,"SelectArrow",()=>eU,"SelectContent",()=>eg,"SelectGroup",()=>eM,"SelectIcon",()=>ed,"SelectItem",()=>eR,"SelectItemIndicator",()=>eB,"SelectItemText",()=>eF,"SelectLabel",()=>eT,"SelectPortal",()=>eu,"SelectScrollDownButton",()=>eV,"SelectScrollUpButton",()=>ez,"SelectSeparator",()=>eO,"SelectTrigger",()=>el,"SelectValue",()=>ec,"SelectViewport",()=>eS,"Separator",()=>eO,"Trigger",()=>el,"Value",()=>ec,"Viewport",()=>eS,"createSelectScope",()=>Q],83830);var eZ=e.i(83830),eZ=eZ,eX=e.i(99105),eJ=e.i(48829);let eQ=eZ.Root;eZ.Group;let e0=eZ.Value,e1=n.forwardRef(({className:e,children:n,...i},s)=>(0,t.jsxs)(eZ.Trigger,{ref:s,className:(0,y.cn)("border-input ring-offset-background placeholder:text-muted-foreground focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-sm focus:ring-1 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...i,children:[n,(0,t.jsx)(eZ.Icon,{asChild:!0,children:(0,t.jsx)(eX.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));e1.displayName=eZ.Trigger.displayName;let e2=n.forwardRef(({className:e,...n},i)=>(0,t.jsx)(eZ.ScrollUpButton,{ref:i,className:(0,y.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(eJ.ChevronUp,{className:"h-4 w-4"})}));e2.displayName=eZ.ScrollUpButton.displayName;let e3=n.forwardRef(({className:e,...n},i)=>(0,t.jsx)(eZ.ScrollDownButton,{ref:i,className:(0,y.cn)("flex cursor-default items-center justify-center py-1",e),...n,children:(0,t.jsx)(eX.ChevronDown,{className:"h-4 w-4"})}));e3.displayName=eZ.ScrollDownButton.displayName;let e5=n.forwardRef(({className:e,children:n,position:i="popper",...s},a)=>(0,t.jsx)(eZ.Portal,{children:(0,t.jsxs)(eZ.Content,{ref:a,className:(0,y.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border shadow-md","popper"===i&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:i,...s,children:[(0,t.jsx)(e2,{}),(0,t.jsx)(eZ.Viewport,{className:(0,y.cn)("p-1","popper"===i&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:n}),(0,t.jsx)(e3,{})]})}));e5.displayName=eZ.Content.displayName,n.forwardRef(({className:e,...n},i)=>(0,t.jsx)(eZ.Label,{ref:i,className:(0,y.cn)("px-2 py-1.5 text-sm font-semibold",e),...n})).displayName=eZ.Label.displayName;let e4=n.forwardRef(({className:e,children:n,...s},a)=>(0,t.jsxs)(eZ.Item,{ref:a,className:(0,y.cn)("focus:bg-accent focus:text-accent-foreground relative flex w-full cursor-default items-center rounded-sm py-1.5 ps-2 pe-8 text-sm outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...s,children:[(0,t.jsx)("span",{className:"absolute end-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,t.jsx)(eZ.ItemIndicator,{children:(0,t.jsx)(i.Check,{className:"h-4 w-4"})})}),(0,t.jsx)(eZ.ItemText,{children:n})]}));e4.displayName=eZ.Item.displayName,n.forwardRef(({className:e,...n},i)=>(0,t.jsx)(eZ.Separator,{ref:i,className:(0,y.cn)("bg-muted -mx-1 my-1 h-px",e),...n})).displayName=eZ.Separator.displayName;var e8=e.i(21023);let e6=(0,e8.createServerReference)("408c197cac13b1a1b082964c306dd8aacd89400222",e8.callServer,void 0,e8.findSourceMapURL,"updateSettingsAction");var e9=e.i(17406),e7=e.i(98804),te=e.i(44229),tt=e.i(83902);function tn(e){return(0,t.jsx)(te.Code,{className:(0,y.cn)("h-4 w-4",e.className),...e})}function ti({className:e}){return(0,t.jsx)(e7.default,{src:"/icons/editors/vscode.svg",alt:"VS Code",width:24,height:24,className:(0,y.cn)("rounded-sm object-contain",e)})}function ts({className:e}){return(0,t.jsx)(e7.default,{src:"/icons/agents/cursor.jpeg",alt:"Cursor",width:24,height:24,className:(0,y.cn)("rounded-sm object-contain",e)})}function ta({className:e}){return(0,t.jsx)(e7.default,{src:"/icons/editors/windsurf.svg",alt:"Windsurf",width:24,height:24,className:(0,y.cn)("rounded-sm object-contain",e)})}function tr({className:e}){return(0,t.jsx)(e7.default,{src:"/icons/editors/zed.svg",alt:"Zed",width:24,height:24,className:(0,y.cn)("rounded-sm object-contain",e)})}function tl({className:e,...n}){return(0,t.jsx)(tt.Rocket,{className:(0,y.cn)("h-4 w-4",e),...n})}ti.displayName="VsCodeIcon",ts.displayName="CursorEditorIcon",ta.displayName="WindsurfIcon",tr.displayName="ZedIcon",tl.displayName="AntigravityIcon";let to={vscode:ti,cursor:ts,windsurf:ta,zed:tr,antigravity:tl};var tc=e.i(41413),td=e.i(956);let tu=[{value:e9.Language.English,label:"English",nativeName:"English"},{value:e9.Language.Russian,label:"Русский",nativeName:"Русский"},{value:e9.Language.Portuguese,label:"Português",nativeName:"Português"},{value:e9.Language.Spanish,label:"Español",nativeName:"Español"},{value:e9.Language.Arabic,label:"العربية",nativeName:"العربية"},{value:e9.Language.Hebrew,label:"עברית",nativeName:"עברית"},{value:e9.Language.French,label:"Français",nativeName:"Français"},{value:e9.Language.German,label:"Deutsch",nativeName:"Deutsch"}];function tp({language:e}){let{t:s,i18n:a}=(0,b.useTranslation)("web"),[r,l]=(0,n.useState)(e),[o,c]=(0,n.useTransition)(),[d,u]=(0,n.useState)(!1),g=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{if(g.current&&!o){u(!0);let e=setTimeout(()=>u(!1),2e3);return()=>clearTimeout(e)}g.current=o},[o]),(0,t.jsxs)(td.Card,{id:"language",className:"scroll-mt-6","data-testid":"language-settings-section",children:[(0,t.jsxs)(td.CardHeader,{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(p.Globe,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)(td.CardTitle,{children:s("settings.language.title")})]}),o?(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:s("common:labels.saving")}):null,d&&!o?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-xs text-green-600",children:[(0,t.jsx)(i.Check,{className:"h-3 w-3"}),s("common:labels.saved")]}):null]}),(0,t.jsx)(td.CardDescription,{children:s("settings.language.description")})]}),(0,t.jsx)(td.CardContent,{className:"space-y-4",children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(j.Label,{htmlFor:"display-language",children:s("settings.language.label")}),(0,t.jsxs)(eQ,{value:r,onValueChange:function(e){l(e),a.changeLanguage(e);let t="ar"===e||"he"===e?"rtl":"ltr";document.documentElement.lang=e,document.documentElement.dir=t,c(async()=>{let t=await e6({user:{preferredLanguage:e}});t.success||w.toast.error(t.error??s("settings.language.failedToSave","Failed to save language settings"))})},children:[(0,t.jsx)(e1,{id:"display-language","data-testid":"language-select",children:(0,t.jsx)(e0,{placeholder:s("settings.language.placeholder")})}),(0,t.jsx)(e5,{children:tu.map(e=>(0,t.jsx)(e4,{value:e.value,children:e.nativeName},e.value))})]})]})})]})}var tg=e.i(77624),tm=["PageUp","PageDown"],th=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],tf={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},tv="Slider",[tx,tw,tb]=(0,M.createCollection)(tv),[ty,tj]=(0,T.createContextScope)(tv,[tb]),[tS,tC]=ty(tv),tk=n.forwardRef((e,i)=>{let{name:s,min:a=0,max:r=100,step:l=1,orientation:o="horizontal",disabled:c=!1,minStepsBetweenThumbs:d=0,defaultValue:u=[a],value:p,onValueChange:g=()=>{},onValueCommit:m=()=>{},inverted:h=!1,form:f,...v}=e,x=n.useRef(new Set),w=n.useRef(0),b="horizontal"===o,[y=[],j]=(0,_.useControllableState)({prop:p,defaultProp:u,onChange:e=>{let t=[...x.current];t[w.current]?.focus(),g(e)}}),S=n.useRef(y);function C(e,t,{commit:n}={commit:!1}){let i,s=(String(l).split(".")[1]||"").length,o=Math.round((Math.round((e-a)/l)*l+a)*(i=Math.pow(10,s)))/i,c=(0,k.clamp)(o,[a,r]);j((e=[])=>{let i=function(e=[],t,n){let i=[...e];return i[n]=t,i.sort((e,t)=>e-t)}(e,c,t);if(!function(e,t){if(t>0)return Math.min(...e.slice(0,-1).map((t,n)=>e[n+1]-t))>=t;return!0}(i,d*l))return e;{w.current=i.indexOf(c);let t=String(i)!==String(e);return t&&n&&m(i),t?i:e}})}return(0,t.jsx)(tS,{scope:e.__scopeSlider,name:s,disabled:c,min:a,max:r,valueIndexToChangeRef:w,thumbs:x.current,values:y,orientation:o,form:f,children:(0,t.jsx)(tx.Provider,{scope:e.__scopeSlider,children:(0,t.jsx)(tx.Slot,{scope:e.__scopeSlider,children:(0,t.jsx)(b?tI:tT,{"aria-disabled":c,"data-disabled":c?"":void 0,...v,ref:i,onPointerDown:(0,N.composeEventHandlers)(v.onPointerDown,()=>{c||(S.current=y)}),min:a,max:r,inverted:h,onSlideStart:c?void 0:function(e){let t=function(e,t){if(1===e.length)return 0;let n=e.map(e=>Math.abs(e-t)),i=Math.min(...n);return n.indexOf(i)}(y,e);C(e,t)},onSlideMove:c?void 0:function(e){C(e,w.current)},onSlideEnd:c?void 0:function(){let e=S.current[w.current];y[w.current]!==e&&m(y)},onHomeKeyDown:()=>!c&&C(a,0,{commit:!0}),onEndKeyDown:()=>!c&&C(r,y.length-1,{commit:!0}),onStepKeyDown:({event:e,direction:t})=>{if(!c){let n=tm.includes(e.key)||e.shiftKey&&th.includes(e.key),i=w.current;C(y[i]+l*(n?10:1)*t,i,{commit:!0})}}})})})})});tk.displayName=tv;var[tN,tM]=ty(tv,{startEdge:"left",endEdge:"right",size:"width",direction:1}),tI=n.forwardRef((e,i)=>{let{min:s,max:a,dir:r,inverted:l,onSlideStart:o,onSlideMove:c,onSlideEnd:d,onStepKeyDown:u,...p}=e,[g,m]=n.useState(null),h=(0,I.useComposedRefs)(i,e=>m(e)),f=n.useRef(void 0),v=(0,E.useDirection)(r),x="ltr"===v,w=x&&!l||!x&&l;function b(e){let t=f.current||g.getBoundingClientRect(),n=t_([0,t.width],w?[s,a]:[a,s]);return f.current=t,n(e-t.left)}return(0,t.jsx)(tN,{scope:e.__scopeSlider,startEdge:w?"left":"right",endEdge:w?"right":"left",direction:w?1:-1,size:"width",children:(0,t.jsx)(tE,{dir:v,"data-orientation":"horizontal",...p,ref:h,style:{...p.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:e=>{let t=b(e.clientX);o?.(t)},onSlideMove:e=>{let t=b(e.clientX);c?.(t)},onSlideEnd:()=>{f.current=void 0,d?.()},onStepKeyDown:e=>{let t=tf[w?"from-left":"from-right"].includes(e.key);u?.({event:e,direction:t?-1:1})}})})}),tT=n.forwardRef((e,i)=>{let{min:s,max:a,inverted:r,onSlideStart:l,onSlideMove:o,onSlideEnd:c,onStepKeyDown:d,...u}=e,p=n.useRef(null),g=(0,I.useComposedRefs)(i,p),m=n.useRef(void 0),h=!r;function f(e){let t=m.current||p.current.getBoundingClientRect(),n=t_([0,t.height],h?[a,s]:[s,a]);return m.current=t,n(e-t.top)}return(0,t.jsx)(tN,{scope:e.__scopeSlider,startEdge:h?"bottom":"top",endEdge:h?"top":"bottom",size:"height",direction:h?1:-1,children:(0,t.jsx)(tE,{"data-orientation":"vertical",...u,ref:g,style:{...u.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:e=>{let t=f(e.clientY);l?.(t)},onSlideMove:e=>{let t=f(e.clientY);o?.(t)},onSlideEnd:()=>{m.current=void 0,c?.()},onStepKeyDown:e=>{let t=tf[h?"from-bottom":"from-top"].includes(e.key);d?.({event:e,direction:t?-1:1})}})})}),tE=n.forwardRef((e,n)=>{let{__scopeSlider:i,onSlideStart:s,onSlideMove:a,onSlideEnd:r,onHomeKeyDown:l,onEndKeyDown:o,onStepKeyDown:c,...d}=e,u=tC(tv,i);return(0,t.jsx)(B.Primitive.span,{...d,ref:n,onKeyDown:(0,N.composeEventHandlers)(e.onKeyDown,e=>{"Home"===e.key?(l(e),e.preventDefault()):"End"===e.key?(o(e),e.preventDefault()):tm.concat(th).includes(e.key)&&(c(e),e.preventDefault())}),onPointerDown:(0,N.composeEventHandlers)(e.onPointerDown,e=>{let t=e.target;t.setPointerCapture(e.pointerId),e.preventDefault(),u.thumbs.has(t)?t.focus():s(e)}),onPointerMove:(0,N.composeEventHandlers)(e.onPointerMove,e=>{e.target.hasPointerCapture(e.pointerId)&&a(e)}),onPointerUp:(0,N.composeEventHandlers)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&(t.releasePointerCapture(e.pointerId),r(e))})})}),tP="SliderTrack",tD=n.forwardRef((e,n)=>{let{__scopeSlider:i,...s}=e,a=tC(tP,i);return(0,t.jsx)(B.Primitive.span,{"data-disabled":a.disabled?"":void 0,"data-orientation":a.orientation,...s,ref:n})});tD.displayName=tP;var tR="SliderRange",tA=n.forwardRef((e,i)=>{let{__scopeSlider:s,...a}=e,r=tC(tR,s),l=tM(tR,s),o=n.useRef(null),c=(0,I.useComposedRefs)(i,o),d=r.values.length,u=r.values.map(e=>tz(e,r.min,r.max)),p=d>1?Math.min(...u):0,g=100-Math.max(...u);return(0,t.jsx)(B.Primitive.span,{"data-orientation":r.orientation,"data-disabled":r.disabled?"":void 0,...a,ref:c,style:{...e.style,[l.startEdge]:p+"%",[l.endEdge]:g+"%"}})});tA.displayName=tR;var tF="SliderThumb",tL=n.forwardRef((e,i)=>{let s=tw(e.__scopeSlider),[a,r]=n.useState(null),l=(0,I.useComposedRefs)(i,e=>r(e)),o=n.useMemo(()=>a?s().findIndex(e=>e.ref.current===a):-1,[s,a]);return(0,t.jsx)(tB,{...e,ref:l,index:o})}),tB=n.forwardRef((e,i)=>{var s,a,r,l,o;let c,d,{__scopeSlider:u,index:p,name:g,...m}=e,h=tC(tF,u),f=tM(tF,u),[v,x]=n.useState(null),w=(0,I.useComposedRefs)(i,e=>x(e)),b=!v||h.form||!!v.closest("form"),y=(0,tg.useSize)(v),j=h.values[p],S=void 0===j?0:tz(j,h.min,h.max),C=(s=p,(a=h.values.length)>2?`Value ${s+1} of ${a}`:2===a?["Minimum","Maximum"][s]:void 0),k=y?.[f.size],M=k?(r=k,l=S,o=f.direction,d=t_([0,50],[0,c=r/2]),(c-d(l)*o)*o):0;return n.useEffect(()=>{if(v)return h.thumbs.add(v),()=>{h.thumbs.delete(v)}},[v,h.thumbs]),(0,t.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[f.startEdge]:`calc(${S}% + ${M}px)`},children:[(0,t.jsx)(tx.ItemSlot,{scope:e.__scopeSlider,children:(0,t.jsx)(B.Primitive.span,{role:"slider","aria-label":e["aria-label"]||C,"aria-valuemin":h.min,"aria-valuenow":j,"aria-valuemax":h.max,"aria-orientation":h.orientation,"data-orientation":h.orientation,"data-disabled":h.disabled?"":void 0,tabIndex:h.disabled?void 0:0,...m,ref:w,style:void 0===j?{display:"none"}:e.style,onFocus:(0,N.composeEventHandlers)(e.onFocus,()=>{h.valueIndexToChangeRef.current=p})})}),b&&(0,t.jsx)(tH,{name:g??(h.name?h.name+(h.values.length>1?"[]":""):void 0),form:h.form,value:j},p)]})});tL.displayName=tF;var tH=n.forwardRef(({__scopeSlider:e,value:i,...s},a)=>{let r=n.useRef(null),l=(0,I.useComposedRefs)(r,a),o=(0,K.usePrevious)(i);return n.useEffect(()=>{let e=r.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(o!==i&&t){let n=new Event("input",{bubbles:!0});t.call(e,i),e.dispatchEvent(n)}},[o,i]),(0,t.jsx)(B.Primitive.input,{style:{display:"none"},...s,ref:l,defaultValue:i})});function tz(e,t,n){return(0,k.clamp)(100/(n-t)*(e-t),[0,100])}function t_(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let i=(t[1]-t[0])/(e[1]-e[0]);return t[0]+i*(n-e[0])}}tH.displayName="RadioBubbleInput",e.s(["Range",()=>tA,"Root",()=>tk,"Slider",()=>tk,"SliderRange",()=>tA,"SliderThumb",()=>tL,"SliderTrack",()=>tD,"Thumb",()=>tL,"Track",()=>tD,"createSliderScope",()=>tj],29991);var tV=e.i(29991),tV=tV;function tK({className:e,defaultValue:i,value:s,min:a=0,max:r=100,...l}){let o=n.useMemo(()=>Array.isArray(s)?s:Array.isArray(i)?i:[a,r],[s,i,a,r]);return(0,t.jsxs)(tV.Root,{"data-slot":"slider",defaultValue:i,value:s,min:a,max:r,className:(0,y.cn)("relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",e),...l,children:[(0,t.jsx)(tV.Track,{"data-slot":"slider-track",className:(0,y.cn)("bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"),children:(0,t.jsx)(tV.Range,{"data-slot":"slider-range",className:(0,y.cn)("bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:o.length},(e,n)=>(0,t.jsx)(tV.Thumb,{"data-slot":"slider-thumb",className:"border-primary ring-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50"},n))]})}let tO=[60,120,300,600,900,1800,2700,3600,7200,10800,14400,21600,28800,43200,86400],tW=tO.length-1;function tU(e){let t=0,n=Math.abs(e-tO[0]);for(let i=1;i<tO.length;i++){let s=Math.abs(e-tO[i]);s<n&&(n=s,t=i)}return t}function tG({id:e,testId:i,value:s,onChange:a,onBlur:r,defaultSeconds:l=1800}){var o;let c,d,u=(""===s?l:parseInt(s,10))||l,[p,g]=(0,n.useState)(()=>tU(u)),m=tU(u);m!==p&&tO[p]!==u&&g(m);let h=(0,n.useCallback)(([e])=>{g(e),a(String(tO[e]))},[a]);return(0,t.jsxs)("div",{className:"flex w-55 items-center gap-2",children:[(0,t.jsx)(tK,{id:e,"data-testid":i,min:0,max:tW,step:1,value:[p],onValueChange:h,onValueCommit:()=>r(),className:"min-w-0 flex-1"}),(0,t.jsx)("span",{className:"text-muted-foreground shrink-0 text-end text-xs tabular-nums",children:(c=Math.floor((o=tO[p])/3600),d=Math.round(o%3600/60),0===c?`${d}m`:0===d?`${c}h`:`${c}h ${d}m`)})]})}let tq=[{value:e9.EditorType.VsCode,label:"VS Code"},{value:e9.EditorType.Cursor,label:"Cursor"},{value:e9.EditorType.Windsurf,label:"Windsurf"},{value:e9.EditorType.Zed,label:"Zed"},{value:e9.EditorType.Antigravity,label:"Antigravity"}],t$=[{value:"bash",label:"Bash"},{value:"zsh",label:"Zsh"},{value:"fish",label:"Fish"}],tY=[{id:"language",labelKey:"settings.sections.language",icon:p.Globe},{id:"agent",labelKey:"settings.sections.agent",icon:s.Bot},{id:"environment",labelKey:"settings.sections.environment",icon:a.Terminal},{id:"workflow",labelKey:"settings.sections.workflow",icon:r.GitBranch},{id:"ci",labelKey:"settings.sections.ci",icon:o},{id:"stage-timeouts",labelKey:"settings.sections.timeouts",icon:v.Timer},{id:"notifications",labelKey:"settings.sections.notifications",icon:c},{id:"feature-flags",labelKey:"settings.sections.flags",icon:d},{id:"interactive-agent",labelKey:"settings.sections.chat",icon:x.MessageSquare},{id:"database",labelKey:"settings.sections.database",icon:u}];function tZ({label:e,description:n,htmlFor:i,children:s}){return(0,t.jsxs)("div",{className:"flex items-center justify-between gap-4 border-b py-2.5 last:border-b-0",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)(j.Label,{htmlFor:i,className:"cursor-pointer text-sm font-normal whitespace-nowrap",children:e}),n?(0,t.jsx)("p",{className:"text-muted-foreground text-[11px] leading-tight",children:n}):null]}),(0,t.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:s})]})}function tX({label:e,description:n,id:i,testId:s,checked:a,onChange:r,disabled:l}){return(0,t.jsx)(tZ,{label:e,description:n,htmlFor:i,children:(0,t.jsx)(S.Switch,{id:i,"data-testid":s,checked:a,onCheckedChange:r,disabled:l,className:(0,y.cn)("cursor-pointer",l&&"cursor-not-allowed opacity-50")})})}function tJ({icon:e,title:n,description:i,badge:s,testId:a,children:r}){return(0,t.jsxs)("div",{className:"bg-background rounded-lg border","data-testid":a,children:[(0,t.jsxs)("div",{className:"bg-muted/30 border-b px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(e,{className:"text-muted-foreground h-3.5 w-3.5"}),(0,t.jsx)("h2",{className:"text-sm font-semibold",children:n}),s?(0,t.jsx)("span",{className:"bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-[9px] font-medium tracking-wider uppercase",children:s}):null]}),(0,t.jsx)("p",{className:"text-muted-foreground mt-0.5 text-[11px]",children:i})]}),(0,t.jsx)("div",{className:"px-4",children:r})]})}function tQ({id:e,testId:n,value:i,onChange:s,onBlur:a,placeholder:r,min:l=1,max:o,step:c=1,suffix:d}){let{t:u}=(0,b.useTranslation)("web"),p=""===i?void 0:parseInt(i,10);return(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center overflow-hidden rounded-md border",children:[(0,t.jsx)("button",{type:"button",onClick:()=>{s(String(Math.max(l,(p??parseInt(r,10))-c)))},onMouseUp:a,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":u("common.decrease"),children:(0,t.jsx)(g.default,{className:"h-3 w-3"})}),(0,t.jsx)("input",{id:e,"data-testid":n,type:"text",inputMode:"numeric",pattern:"[0-9]*",value:i,placeholder:r,onChange:e=>{s(e.target.value.replace(/[^0-9]/g,""))},onBlur:a,className:"h-8 w-14 bg-transparent text-center text-xs outline-none"}),(0,t.jsx)("button",{type:"button",onClick:()=>{let e;e=p??parseInt(r,10),s(String(null!=o?Math.min(o,e+c):e+c))},onMouseUp:a,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":u("common.increase"),children:(0,t.jsx)(m.Plus,{className:"h-3 w-3"})})]}),d?(0,t.jsx)("span",{className:"text-muted-foreground text-[11px]",children:d}):null]})}function t0({children:e}){return(0,t.jsx)("div",{className:"border-b pt-3 pb-1",children:(0,t.jsx)("span",{className:"text-muted-foreground text-[10px] font-semibold tracking-wider uppercase",children:e})})}function t1({children:e,links:n}){return(0,t.jsxs)("div",{className:"hidden pt-2 lg:block",children:[(0,t.jsx)("p",{className:"text-muted-foreground/70 text-[11px] leading-relaxed",children:e}),null!=n&&n.length>0?(0,t.jsx)("div",{className:"mt-2 flex flex-col gap-1",children:n.map(e=>(0,t.jsxs)("a",{href:e.href,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground inline-flex items-center gap-1 text-[10px] transition-colors",children:[(0,t.jsx)(h.ExternalLink,{className:"h-2.5 w-2.5"}),e.label]},e.href))}):null]})}function t2({settings:e,shepHome:l,dbFileSize:p,availableTerminals:g}){let{t:m}=(0,b.useTranslation)("web"),{showSaving:h,showSaved:j,save:S}=function(){let{t:e}=(0,b.useTranslation)("web"),[t,i]=(0,n.useTransition)(),[s,a]=(0,n.useState)(!1),[r,l]=(0,n.useState)(!1),o=(0,n.useRef)(null),c=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{t&&!s&&(a(!0),c.current=!1,o.current=setTimeout(()=>{o.current=null,c.current&&(a(!1),l(!0),setTimeout(()=>l(!1),2e3))},350)),!t&&s&&(c.current=!0,o.current||(a(!1),l(!0),setTimeout(()=>l(!1),2e3)))},[t,s]),{showSaving:s,showSaved:r,save:(0,n.useCallback)(t=>{i(async()=>{let n=await e6(t);n.success||w.toast.error(n.error??e("settings.failedToSave"))})},[i,e])}}(),C=e.featureFlags??{skills:!1,envDeploy:!1,debug:!1,githubImport:!1,adoptBranch:!1,gitRebaseSync:!1,reactFileManager:!1},[k,N]=(0,n.useState)(e.agent.type),[M,I]=(0,n.useState)(e.environment.defaultEditor),[T,E]=(0,n.useState)(e.environment.shellPreference),[P,D]=(0,n.useState)(e.environment.terminalPreference??e9.TerminalType.System),R=g?g.filter(e=>e.available):[{id:e9.TerminalType.System,name:m("settings.environment.systemTerminal"),available:!0}],[A,F]=(0,n.useState)(e.workflow.openPrOnImplementationComplete),[L,B]=(0,n.useState)(e.workflow.approvalGateDefaults.pushOnImplementationComplete),[H,z]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPrd),[_,V]=(0,n.useState)(e.workflow.approvalGateDefaults.allowPlan),[K,O]=(0,n.useState)(e.workflow.approvalGateDefaults.allowMerge),[W,U]=(0,n.useState)(e.workflow.enableEvidence),[G,q]=(0,n.useState)(e.workflow.commitEvidence),[$,Y]=(0,n.useState)(!1!==e.workflow.ciWatchEnabled),[Z,X]=(0,n.useState)(!1!==e.workflow.hideCiStatus),[J,Q]=(0,n.useState)(!1!==e.workflow.defaultFastMode),[ee,et]=(0,n.useState)((e.workflow.autoArchiveDelayMinutes??10)>0),[en,ei]=(0,n.useState)(String(e.workflow.autoArchiveDelayMinutes??10)),[es,ea]=(0,n.useState)(null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):""),[er,el]=(0,n.useState)(null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):""),[eo,ec]=(0,n.useState)(null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):""),[ed,eu]=(0,n.useState)(null!=e.workflow.ciWatchPollIntervalSeconds?String(e.workflow.ciWatchPollIntervalSeconds):""),ep=e.workflow.stageTimeouts,[eg,em]=(0,n.useState)(String(Math.round((ep?.analyzeMs??18e5)/1e3))),[eh,ef]=(0,n.useState)(String(Math.round((ep?.requirementsMs??18e5)/1e3))),[ev,ex]=(0,n.useState)(String(Math.round((ep?.researchMs??18e5)/1e3))),[ew,eb]=(0,n.useState)(String(Math.round((ep?.planMs??18e5)/1e3))),[ey,ej]=(0,n.useState)(String(Math.round((ep?.implementMs??18e5)/1e3))),[eS,eC]=(0,n.useState)(String(Math.round((ep?.mergeMs??18e5)/1e3))),ek=e.workflow.analyzeRepoTimeouts,[eN,eM]=(0,n.useState)(String(Math.round((ek?.analyzeMs??6e5)/1e3))),eI=e.interactiveAgent??{enabled:!0,autoTimeoutMinutes:15,maxConcurrentSessions:3},[eT,eE]=(0,n.useState)(eI.enabled),[eP,eD]=(0,n.useState)(String(eI.autoTimeoutMinutes)),[eR,eA]=(0,n.useState)(String(eI.maxConcurrentSessions)),[eF,eL]=(0,n.useState)(e.notifications.inApp.enabled),[eB,eH]=(0,n.useState)({...e.notifications.events}),[ez,e_]=(0,n.useState)({...C}),eV=null!=e.workflow.ciMaxFixAttempts?String(e.workflow.ciMaxFixAttempts):"",eK=null!=e.workflow.ciWatchTimeoutMs?String(Math.round(e.workflow.ciWatchTimeoutMs/1e3)):"",eO=null!=e.workflow.ciLogMaxChars?String(e.workflow.ciLogMaxChars):"",eW=null!=e.workflow.ciWatchPollIntervalSeconds?String(e.workflow.ciWatchPollIntervalSeconds):"",eU=ep?.analyzeMs!=null?String(Math.round(ep.analyzeMs/1e3)):"",eG=ep?.requirementsMs!=null?String(Math.round(ep.requirementsMs/1e3)):"",eq=ep?.researchMs!=null?String(Math.round(ep.researchMs/1e3)):"",e$=ep?.planMs!=null?String(Math.round(ep.planMs/1e3)):"",eY=ep?.implementMs!=null?String(Math.round(ep.implementMs/1e3)):"",eZ=ep?.mergeMs!=null?String(Math.round(ep.mergeMs/1e3)):"",eX=ek?.analyzeMs!=null?String(Math.round(ek.analyzeMs/1e3)):"";function eJ(e){if(""===e)return;let t=parseInt(e,10);return Number.isNaN(t)||t<=0?void 0:t}function e2(e){if(void 0===e)return;let t=eJ(e);return null!=t?1e3*t:void 0}function e3(e={}){let t=eJ(e.ciTimeout??er),n=e.autoArchiveEnabled??ee,i=parseInt(e.autoArchiveDelay??en,10);return{workflow:{openPrOnImplementationComplete:e.openPr??A,approvalGateDefaults:{pushOnImplementationComplete:e.pushOnComplete??L,allowPrd:e.allowPrd??H,allowPlan:e.allowPlan??_,allowMerge:e.allowMerge??K},enableEvidence:e.enableEvidence??W,commitEvidence:e.commitEvidence??G,ciWatchEnabled:e.ciWatchEnabled??$,hideCiStatus:e.hideCiStatus??Z,defaultFastMode:e.defaultFastMode??J,autoArchiveDelayMinutes:n?Number.isNaN(i)||i<1?10:i:0,ciMaxFixAttempts:eJ(e.ciMaxFix??es),ciWatchTimeoutMs:null!=t?1e3*t:void 0,ciLogMaxChars:eJ(e.ciLogMax??eo),ciWatchPollIntervalSeconds:eJ(e.ciPollInterval??ed),stageTimeouts:{analyzeMs:e2(e.analyzeTimeout??eg),requirementsMs:e2(e.requirementsTimeout??eh),researchMs:e2(e.researchTimeout??ev),planMs:e2(e.planTimeout??ew),implementMs:e2(e.implementTimeout??ey),mergeMs:e2(e.mergeTimeout??eS)},analyzeRepoTimeouts:{analyzeMs:e2(e.analyzeRepoTimeout??eN)}}}}function e8(e={}){return{notifications:{inApp:{enabled:e.inApp??eF},events:e.events??eB}}}let[e7,te]=(0,n.useState)("agent");(0,n.useEffect)(()=>{let e=tY.map(e=>document.getElementById(`section-${e.id}`)).filter(Boolean);if(0===e.length)return;let t=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&te(t.target.id.replace("section-",""))},{rootMargin:"-65px 0px -60% 0px",threshold:0});for(let n of e)t.observe(n);return()=>t.disconnect()},[]);let tt=(0,n.useCallback)(e=>{let t=document.getElementById(`section-${e}`);t&&(t.scrollIntoView({behavior:"smooth",block:"start"}),t.style.animation="none",t.offsetHeight,t.style.animation="section-flash 1s ease-out")},[]);return(0,t.jsxs)("div",{"data-testid":"settings-page-client",className:"max-w-5xl",children:[(0,t.jsx)("div",{className:"bg-background/95 supports-backdrop-filter:bg-background/80 sticky top-0 z-10 grid grid-cols-1 gap-x-5 pt-6 pb-4 backdrop-blur lg:grid-cols-[1fr_280px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(f,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:m("settings.title")}),(0,t.jsxs)("span",{className:"relative h-4 w-16",children:[(0,t.jsx)("span",{className:(0,y.cn)("text-muted-foreground absolute inset-0 flex items-center text-xs transition-opacity duration-300",h?"opacity-100":"opacity-0"),children:m("settings.saving")}),(0,t.jsxs)("span",{className:(0,y.cn)("absolute inset-0 flex items-center gap-1 text-xs text-green-600 transition-opacity duration-300",j&&!h?"opacity-100":"opacity-0"),children:[(0,t.jsx)(i.Check,{className:"h-3 w-3"}),m("settings.saved")]})]}),(0,t.jsx)("nav",{className:"ml-auto flex items-center gap-0.5",children:tY.map(e=>{let n=e.icon,i=e7===e.id;return(0,t.jsxs)("button",{type:"button",onClick:()=>tt(e.id),className:(0,y.cn)("flex cursor-pointer items-center gap-1 rounded-md px-1.5 py-1 text-[11px] transition-all",i?"bg-accent text-foreground font-medium":"text-muted-foreground/60 hover:text-foreground hover:bg-accent/50"),children:[(0,t.jsx)(n,{className:"h-3 w-3"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:m(e.labelKey)})]},e.id)})})]})}),(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.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,t.jsx)(tp,{language:e.user?.preferredLanguage??e9.Language.English})}),(0,t.jsxs)("div",{id:"section-agent",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsx)(tJ,{icon:s.Bot,title:m("settings.agent.sectionTitle"),description:m("settings.agent.sectionDescription"),testId:"agent-settings-section",children:(0,t.jsx)(tZ,{label:m("settings.agent.agentAndModel"),description:m("settings.agent.agentAndModelDescription"),htmlFor:"agent-model-picker",children:(0,t.jsx)(tc.AgentModelPicker,{initialAgentType:k,initialModel:e.models.default,mode:"settings",onAgentModelChange:e=>N(e),className:"w-55"})})}),(0,t.jsx)(t1,{links:[{label:m("settings.agent.links.agentSystem"),href:"https://github.com/shep-ai/shep/blob/main/docs/architecture/agent-system.md"},{label:m("settings.agent.links.addingAgents"),href:"https://github.com/shep-ai/shep/blob/main/docs/development/adding-agents.md"},{label:m("settings.agent.links.configurationGuide"),href:"https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md"}],children:m("settings.agent.hint")})]}),(0,t.jsxs)("div",{id:"section-environment",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:a.Terminal,title:m("settings.environment.sectionTitle"),description:m("settings.environment.sectionDescription"),testId:"environment-settings-section",children:[(0,t.jsx)(tZ,{label:m("settings.environment.defaultEditor"),description:m("settings.environment.defaultEditorDescription"),htmlFor:"default-editor",children:(0,t.jsxs)(eQ,{value:M,onValueChange:e=>{I(e),S({environment:{defaultEditor:e,shellPreference:T,terminalPreference:P}})},children:[(0,t.jsx)(e1,{id:"default-editor","data-testid":"editor-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(e0,{})}),(0,t.jsx)(e5,{children:tq.map(e=>{var n;let i=(n=e.value)&&n in to?to[n]:tn;return(0,t.jsx)(e4,{value:e.value,children:(0,t.jsxs)("span",{className:"flex items-center gap-2 text-xs",children:[(0,t.jsx)(i,{className:"h-4 w-4 shrink-0"}),e.label]})},e.value)})})]})}),(0,t.jsx)(tZ,{label:m("settings.environment.shell"),description:m("settings.environment.shellDescription"),htmlFor:"shell-preference",children:(0,t.jsxs)(eQ,{value:T,onValueChange:e=>{E(e),S({environment:{defaultEditor:M,shellPreference:e,terminalPreference:P}})},children:[(0,t.jsx)(e1,{id:"shell-preference","data-testid":"shell-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(e0,{})}),(0,t.jsx)(e5,{children:t$.map(e=>(0,t.jsx)(e4,{value:e.value,children:e.label},e.value))})]})}),(0,t.jsx)(tZ,{label:m("settings.environment.terminal"),description:m("settings.environment.terminalDescription"),htmlFor:"terminal-preference",children:(0,t.jsxs)(eQ,{value:P,onValueChange:e=>{D(e),S({environment:{defaultEditor:M,shellPreference:T,terminalPreference:e}})},children:[(0,t.jsx)(e1,{id:"terminal-preference","data-testid":"terminal-select",className:"w-55 cursor-pointer text-xs",children:(0,t.jsx)(e0,{})}),(0,t.jsx)(e5,{children:R.map(e=>(0,t.jsx)(e4,{value:e.id,children:e.name},e.id))})]})})]}),(0,t.jsx)(t1,{links:[{label:m("settings.environment.links.configurationGuide"),href:"https://github.com/shep-ai/shep/blob/main/docs/guides/configuration.md"}],children:m("settings.environment.hint")})]}),(0,t.jsxs)("div",{id:"section-workflow",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:r.GitBranch,title:m("settings.workflow.title"),description:m("settings.workflow.sectionDescription"),testId:"workflow-settings-section",children:[(0,t.jsx)(tX,{label:m("settings.workflow.defaultFastMode"),description:m("settings.workflow.defaultFastModeDescription"),id:"default-fast-mode",testId:"switch-default-fast-mode",checked:J,onChange:e=>{Q(e),S(e3({defaultFastMode:e}))}}),(0,t.jsx)(t0,{children:m("settings.workflow.subsections.approve")}),(0,t.jsx)(tX,{label:m("settings.workflow.autoApprovePrd"),description:m("settings.workflow.autoApprovePrdDescription"),id:"allow-prd",testId:"switch-allow-prd",checked:H,onChange:e=>{z(e),S(e3({allowPrd:e}))}}),(0,t.jsx)(tX,{label:m("settings.workflow.autoApprovePlan"),description:m("settings.workflow.autoApprovePlanDescription"),id:"allow-plan",testId:"switch-allow-plan",checked:_,onChange:e=>{V(e),S(e3({allowPlan:e}))}}),(0,t.jsx)(tX,{label:m("settings.workflow.autoApproveMerge"),description:m("settings.workflow.autoApproveMergeDescription"),id:"allow-merge",testId:"switch-allow-merge",checked:K,onChange:e=>{O(e),S(e3({allowMerge:e}))}}),(0,t.jsx)(t0,{children:m("settings.workflow.subsections.evidence")}),(0,t.jsx)(tX,{label:m("settings.workflow.collectEvidence"),description:m("settings.workflow.collectEvidenceDescription"),id:"enable-evidence",testId:"switch-enable-evidence",checked:W,onChange:e=>{U(e),e?S(e3({enableEvidence:e})):(q(!1),S(e3({enableEvidence:e,commitEvidence:!1})))}}),(0,t.jsx)(tX,{label:m("settings.workflow.addEvidenceToPr"),description:m("settings.workflow.addEvidenceToPrDescription"),id:"commit-evidence",testId:"switch-commit-evidence",checked:G,disabled:!W||!A,onChange:e=>{q(e),S(e3({commitEvidence:e}))}}),(0,t.jsx)(t0,{children:m("settings.workflow.subsections.git")}),(0,t.jsx)(tX,{label:m("settings.workflow.pushOnComplete"),description:m("settings.workflow.pushOnCompleteDescription"),id:"push-on-complete",testId:"switch-push-on-complete",checked:L,onChange:e=>{B(e),S(e3({pushOnComplete:e}))}}),(0,t.jsx)(tX,{label:m("settings.workflow.openPrOnComplete"),description:m("settings.workflow.openPrOnCompleteDescription"),id:"open-pr",testId:"switch-open-pr",checked:A,onChange:e=>{F(e),e?S(e3({openPr:e})):(q(!1),S(e3({openPr:e,commitEvidence:!1})))}}),(0,t.jsx)(tX,{label:m("settings.workflow.watchCiAfterPush"),description:m("settings.workflow.watchCiAfterPushDescription"),id:"ci-watch-enabled",testId:"switch-ci-watch-enabled",checked:$,onChange:e=>{Y(e),S(e3({ciWatchEnabled:e}))}}),(0,t.jsx)(t0,{children:"Archive"}),(0,t.jsx)(tX,{label:"Auto-archive completed",description:"Automatically archive features after they reach the completed state",id:"auto-archive-enabled",testId:"switch-auto-archive-enabled",checked:ee,onChange:e=>{et(e),S(e3({autoArchiveEnabled:e}))}}),(0,t.jsx)(tZ,{label:"Archive delay",description:"Minutes to wait after completion before archiving (1–1440)",htmlFor:"auto-archive-delay",children:(0,t.jsx)(tQ,{id:"auto-archive-delay",testId:"input-auto-archive-delay",value:en,placeholder:"10",min:1,max:1440,suffix:"min",onChange:e=>{ei(e)},onBlur:()=>{if(!ee)return;let e=parseInt(en,10),t=Number.isNaN(e)?10:Math.min(1440,Math.max(1,e));ei(String(t)),S(e3({autoArchiveDelay:String(t)}))}})})]}),(0,t.jsx)(t1,{links:[{label:m("settings.workflow.links.approvalGates"),href:"https://github.com/shep-ai/shep/blob/main/specs/016-hitl-approval-gates/spec.yaml"},{label:m("settings.workflow.links.pushAndPrFlags"),href:"https://github.com/shep-ai/shep/blob/main/specs/037-feature-pr-push-flags/spec.yaml"}],children:m("settings.workflow.hint")})]}),(0,t.jsxs)("div",{id:"section-ci",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:o,title:m("settings.ci.title"),description:m("settings.ci.description"),testId:"ci-settings-section",children:[(0,t.jsx)(tZ,{label:m("settings.ci.maxFixAttempts"),description:m("settings.ci.maxFixAttemptsDescription"),htmlFor:"ci-max-fix",children:(0,t.jsx)(tQ,{id:"ci-max-fix",testId:"ci-max-fix-input",placeholder:"3",value:es,onChange:ea,onBlur:()=>{es!==eV&&S(e3({ciMaxFix:es}))},min:1,max:10})}),(0,t.jsx)(tZ,{label:m("settings.ci.watchTimeout"),description:m("settings.ci.watchTimeoutDescription"),htmlFor:"ci-timeout",children:(0,t.jsx)(tQ,{id:"ci-timeout",testId:"ci-timeout-input",placeholder:"300",value:er,onChange:el,onBlur:()=>{er!==eK&&S(e3({ciTimeout:er}))},min:30,step:30,suffix:"sec"})}),(0,t.jsx)(tZ,{label:m("settings.ci.maxLogSize"),description:m("settings.ci.maxLogSizeDescription"),htmlFor:"ci-log-max",children:(0,t.jsx)(tQ,{id:"ci-log-max",testId:"ci-log-max-input",placeholder:"50000",value:eo,onChange:ec,onBlur:()=>{eo!==eO&&S(e3({ciLogMax:eo}))},min:1e3,step:5e3,suffix:"chars"})}),(0,t.jsx)(tZ,{label:m("settings.ci.pollInterval"),description:m("settings.ci.pollIntervalDescription"),htmlFor:"ci-poll-interval",children:(0,t.jsx)(tQ,{id:"ci-poll-interval",testId:"ci-poll-interval-input",placeholder:"30",value:ed,onChange:eu,onBlur:()=>{ed!==eW&&S(e3({ciPollInterval:ed}))},min:5,step:5,suffix:"sec"})}),(0,t.jsx)(tX,{label:m("settings.ci.hideCiStatus"),description:m("settings.ci.hideCiStatusDescription"),id:"hide-ci-status",testId:"switch-hide-ci-status",checked:Z,onChange:e=>{X(e),S(e3({hideCiStatus:e}))}})]}),(0,t.jsx)(t1,{links:[{label:m("settings.ci.links.cicdPipeline"),href:"https://github.com/shep-ai/shep/blob/main/docs/development/cicd.md"},{label:m("settings.ci.links.ciSecurityGates"),href:"https://github.com/shep-ai/shep/blob/main/specs/003-cicd-security-gates/spec.md"}],children:m("settings.ci.hint")})]}),(0,t.jsxs)("div",{id:"section-stage-timeouts",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:v.Timer,title:m("settings.stageTimeouts.title"),description:m("settings.stageTimeouts.description"),testId:"stage-timeouts-settings-section",children:[(0,t.jsx)(t0,{children:m("settings.stageTimeouts.subsections.featureAgent")}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.analyze"),description:m("settings.stageTimeouts.analyzeDescription"),htmlFor:"timeout-analyze",children:(0,t.jsx)(tG,{id:"timeout-analyze",testId:"timeout-analyze-input",value:eg,onChange:em,onBlur:()=>{eg!==eU&&S(e3({analyzeTimeout:eg}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.requirements"),description:m("settings.stageTimeouts.requirementsDescription"),htmlFor:"timeout-requirements",children:(0,t.jsx)(tG,{id:"timeout-requirements",testId:"timeout-requirements-input",value:eh,onChange:ef,onBlur:()=>{eh!==eG&&S(e3({requirementsTimeout:eh}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.research"),description:m("settings.stageTimeouts.researchDescription"),htmlFor:"timeout-research",children:(0,t.jsx)(tG,{id:"timeout-research",testId:"timeout-research-input",value:ev,onChange:ex,onBlur:()=>{ev!==eq&&S(e3({researchTimeout:ev}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.plan"),description:m("settings.stageTimeouts.planDescription"),htmlFor:"timeout-plan",children:(0,t.jsx)(tG,{id:"timeout-plan",testId:"timeout-plan-input",value:ew,onChange:eb,onBlur:()=>{ew!==e$&&S(e3({planTimeout:ew}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.implement"),description:m("settings.stageTimeouts.implementDescription"),htmlFor:"timeout-implement",children:(0,t.jsx)(tG,{id:"timeout-implement",testId:"timeout-implement-input",value:ey,onChange:ej,onBlur:()=>{ey!==eY&&S(e3({implementTimeout:ey}))},defaultSeconds:1800})}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.merge"),description:m("settings.stageTimeouts.mergeDescription"),htmlFor:"timeout-merge",children:(0,t.jsx)(tG,{id:"timeout-merge",testId:"timeout-merge-input",value:eS,onChange:eC,onBlur:()=>{eS!==eZ&&S(e3({mergeTimeout:eS}))},defaultSeconds:1800})}),(0,t.jsx)(t0,{children:m("settings.stageTimeouts.subsections.analyzeRepoAgent")}),(0,t.jsx)(tZ,{label:m("settings.stageTimeouts.analyze"),description:m("settings.stageTimeouts.analyzeDescription"),htmlFor:"timeout-analyze-repo",children:(0,t.jsx)(tG,{id:"timeout-analyze-repo",testId:"timeout-analyze-repo-input",value:eN,onChange:eM,onBlur:()=>{eN!==eX&&S(e3({analyzeRepoTimeout:eN}))},defaultSeconds:600})})]}),(0,t.jsx)(t1,{children:m("settings.stageTimeouts.hint")})]}),(0,t.jsxs)("div",{id:"section-notifications",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:c,title:m("settings.notifications.title"),description:m("settings.notifications.sectionDescription"),testId:"notification-settings-section",children:[(0,t.jsx)(t0,{children:m("settings.notifications.channels")}),(0,t.jsx)(tX,{label:m("settings.notifications.inAppLabel"),description:m("settings.notifications.inAppDescription"),id:"notif-in-app",testId:"switch-in-app",checked:eF,onChange:e=>{eL(e),S(e8({inApp:e}))}}),(0,t.jsx)(t0,{children:m("settings.notifications.subsections.agentEvents")}),(0,t.jsx)(tX,{label:m("settings.notifications.events.agentStarted"),id:"notif-event-agentStarted",testId:"switch-event-agentStarted",checked:eB.agentStarted,onChange:e=>{let t={...eB,agentStarted:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.phaseCompleted"),id:"notif-event-phaseCompleted",testId:"switch-event-phaseCompleted",checked:eB.phaseCompleted,onChange:e=>{let t={...eB,phaseCompleted:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.waitingApproval"),id:"notif-event-waitingApproval",testId:"switch-event-waitingApproval",checked:eB.waitingApproval,onChange:e=>{let t={...eB,waitingApproval:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.agentCompleted"),id:"notif-event-agentCompleted",testId:"switch-event-agentCompleted",checked:eB.agentCompleted,onChange:e=>{let t={...eB,agentCompleted:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.agentFailed"),id:"notif-event-agentFailed",testId:"switch-event-agentFailed",checked:eB.agentFailed,onChange:e=>{let t={...eB,agentFailed:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(t0,{children:m("settings.notifications.subsections.pullRequestEvents")}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prMerged"),id:"notif-event-prMerged",testId:"switch-event-prMerged",checked:eB.prMerged,onChange:e=>{let t={...eB,prMerged:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prClosed"),id:"notif-event-prClosed",testId:"switch-event-prClosed",checked:eB.prClosed,onChange:e=>{let t={...eB,prClosed:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prChecksPassed"),id:"notif-event-prChecksPassed",testId:"switch-event-prChecksPassed",checked:eB.prChecksPassed,onChange:e=>{let t={...eB,prChecksPassed:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prChecksFailed"),id:"notif-event-prChecksFailed",testId:"switch-event-prChecksFailed",checked:eB.prChecksFailed,onChange:e=>{let t={...eB,prChecksFailed:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.prBlocked"),id:"notif-event-prBlocked",testId:"switch-event-prBlocked",checked:eB.prBlocked,onChange:e=>{let t={...eB,prBlocked:e};eH(t),S(e8({events:t}))}}),(0,t.jsx)(tX,{label:m("settings.notifications.events.mergeReviewReady"),id:"notif-event-mergeReviewReady",testId:"switch-event-mergeReviewReady",checked:eB.mergeReviewReady,onChange:e=>{let t={...eB,mergeReviewReady:e};eH(t),S(e8({events:t}))}})]}),(0,t.jsx)(t1,{links:[{label:m("settings.notifications.links.notificationSystem"),href:"https://github.com/shep-ai/shep/blob/main/specs/021-agent-notifications/spec.yaml"}],children:m("settings.notifications.hint")})]}),(0,t.jsxs)("div",{id:"section-feature-flags",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:d,title:m("settings.featureFlags.title"),description:m("settings.featureFlags.sectionDescription"),badge:m("settings.featureFlags.badge"),testId:"feature-flags-settings-section",children:[(0,t.jsx)(tX,{label:m("settings.featureFlags.skills"),description:m("settings.featureFlags.skillsDescription"),id:"flag-skills",testId:"switch-flag-skills",checked:ez.skills,onChange:e=>{let t={...ez,skills:e};e_(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.deployments"),description:m("settings.featureFlags.deploymentsDescription"),id:"flag-envDeploy",testId:"switch-flag-envDeploy",checked:ez.envDeploy,onChange:e=>{let t={...ez,envDeploy:e};e_(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.debug"),description:m("settings.featureFlags.debugDescription"),id:"flag-debug",testId:"switch-flag-debug",checked:ez.debug,onChange:e=>{let t={...ez,debug:e};e_(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.githubImport"),description:m("settings.featureFlags.githubImportDescription"),id:"flag-githubImport",testId:"switch-flag-githubImport",checked:ez.githubImport,onChange:e=>{let t={...ez,githubImport:e};e_(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.adoptBranch"),description:m("settings.featureFlags.adoptBranchDescription"),id:"flag-adoptBranch",testId:"switch-flag-adoptBranch",checked:ez.adoptBranch,onChange:e=>{let t={...ez,adoptBranch:e};e_(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.gitRebaseSync"),description:m("settings.featureFlags.gitRebaseSyncDescription"),id:"flag-gitRebaseSync",testId:"switch-flag-gitRebaseSync",checked:ez.gitRebaseSync,onChange:e=>{let t={...ez,gitRebaseSync:e};e_(t),S({featureFlags:t})}}),(0,t.jsx)(tX,{label:m("settings.featureFlags.reactFileManager"),description:m("settings.featureFlags.reactFileManagerDescription"),id:"flag-reactFileManager",testId:"switch-flag-reactFileManager",checked:ez.reactFileManager,onChange:e=>{let t={...ez,reactFileManager:e};e_(t),S({featureFlags:t})}})]}),(0,t.jsx)(t1,{children:m("settings.featureFlags.hint")})]}),(0,t.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,t.jsxs)(tJ,{icon:x.MessageSquare,title:m("settings.interactiveAgent.title"),description:m("settings.interactiveAgent.description"),testId:"interactive-agent-settings-section",children:[(0,t.jsx)(tX,{label:m("settings.interactiveAgent.enableChatTab"),description:m("settings.interactiveAgent.enableChatTabDescription"),id:"interactive-agent-enabled",testId:"switch-interactive-agent-enabled",checked:eT,onChange:e=>{eE(e),S({interactiveAgent:{enabled:e,autoTimeoutMinutes:parseInt(eP,10)||15,maxConcurrentSessions:parseInt(eR,10)||3}})}}),(0,t.jsx)(tZ,{label:m("settings.interactiveAgent.autoTimeout"),description:m("settings.interactiveAgent.autoTimeoutDescription"),htmlFor:"interactive-agent-timeout",children:(0,t.jsx)(tQ,{id:"interactive-agent-timeout",testId:"input-interactive-agent-timeout",value:eP,placeholder:"15",min:1,max:120,suffix:"min",onChange:eD,onBlur:()=>{let e=parseInt(eP,10),t=Number.isNaN(e)?15:Math.min(120,Math.max(1,e));eD(String(t)),S({interactiveAgent:{enabled:eT,autoTimeoutMinutes:t,maxConcurrentSessions:parseInt(eR,10)||3}})}})}),(0,t.jsx)(tZ,{label:m("settings.interactiveAgent.maxConcurrentSessions"),description:m("settings.interactiveAgent.maxConcurrentSessionsDescription"),htmlFor:"interactive-agent-sessions",children:(0,t.jsx)(tQ,{id:"interactive-agent-sessions",testId:"input-interactive-agent-sessions",value:eR,placeholder:"3",min:1,max:10,onChange:eA,onBlur:()=>{let e=parseInt(eR,10),t=Number.isNaN(e)?3:Math.min(10,Math.max(1,e));eA(String(t)),S({interactiveAgent:{enabled:eT,autoTimeoutMinutes:parseInt(eP,10)||15,maxConcurrentSessions:t}})}})})]}),(0,t.jsx)(t1,{children:m("settings.interactiveAgent.hint")})]}),(0,t.jsxs)("div",{id:"section-database",className:"grid scroll-mt-18 grid-cols-1 gap-x-5 rounded-lg lg:grid-cols-[1fr_280px]",children:[(0,t.jsxs)(tJ,{icon:u,title:m("settings.database.title"),description:m("settings.database.sectionDescription"),testId:"database-settings-section",children:[(0,t.jsx)(tZ,{label:m("settings.database.location"),description:m("settings.database.locationDescription"),children:(0,t.jsx)("span",{className:"text-muted-foreground max-w-50 truncate font-mono text-xs","data-testid":"shep-home-path",children:l})}),(0,t.jsx)(tZ,{label:m("settings.database.size"),children:(0,t.jsx)("span",{className:"text-muted-foreground text-xs","data-testid":"db-file-size",children:p})})]}),(0,t.jsx)(t1,{links:[{label:m("settings.database.links.settingsService"),href:"https://github.com/shep-ai/shep/blob/main/docs/architecture/settings-service.md"},{label:m("settings.database.links.settingsSpec"),href:"https://github.com/shep-ai/shep/blob/main/specs/005-global-settings-service/spec.md"}],children:m("settings.database.hint")})]})]})]})}e.s(["SettingsPageClient",()=>t2],41952)}]);
@@ -1,3 +0,0 @@
1
- module.exports=[50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},15108,(a,b,c)=>{"use strict";b.exports=a.r(55721).vendored.contexts.HooksClientContext},71915,(a,b,c)=>{"use strict";b.exports=a.r(55721).vendored.contexts.ServerInsertedHtml},18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},55721,(a,b,c)=>{"use strict";b.exports=a.r(18622)},10973,(a,b,c)=>{"use strict";b.exports=a.r(55721).vendored["react-ssr"].ReactJsxRuntime},96960,(a,b,c)=>{"use strict";b.exports=a.r(55721).vendored["react-ssr"].React},55690,(a,b,c)=>{"use strict";b.exports=a.r(55721).vendored["react-ssr"].ReactDOM},21032,(a,b,c)=>{"use strict";b.exports=a.r(55721).vendored["react-ssr"].ReactServerDOMTurbopackClient},62485,(a,b,c)=>{"use strict";b.exports=a.r(55721).vendored.contexts.AppRouterContext},41305,a=>{"use strict";var b=a.i(10973),c=a.i(96960),d=a.i(59653),e=a.i(7420),f=a.i(77127),g=a.i(14272),h=a.i(66873),i=a.i(48939),j=a.i(17329),k=a.i(5472),l="Tabs",[m,n]=(0,e.createContextScope)(l,[f.createRovingFocusGroupScope]),o=(0,f.createRovingFocusGroupScope)(),[p,q]=m(l),r=c.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,onValueChange:f,defaultValue:g,orientation:m="horizontal",dir:n,activationMode:o="automatic",...q}=a,r=(0,i.useDirection)(n),[s,t]=(0,j.useControllableState)({prop:e,onChange:f,defaultProp:g??"",caller:l});return(0,b.jsx)(p,{scope:d,baseId:(0,k.useId)(),value:s,onValueChange:t,orientation:m,dir:r,activationMode:o,children:(0,b.jsx)(h.Primitive.div,{dir:r,"data-orientation":m,...q,ref:c})})});r.displayName=l;var s="TabsList",t=c.forwardRef((a,c)=>{let{__scopeTabs:d,loop:e=!0,...g}=a,i=q(s,d),j=o(d);return(0,b.jsx)(f.Root,{asChild:!0,...j,orientation:i.orientation,dir:i.dir,loop:e,children:(0,b.jsx)(h.Primitive.div,{role:"tablist","aria-orientation":i.orientation,...g,ref:c})})});t.displayName=s;var u="TabsTrigger",v=c.forwardRef((a,c)=>{let{__scopeTabs:e,value:g,disabled:i=!1,...j}=a,k=q(u,e),l=o(e),m=y(k.baseId,g),n=z(k.baseId,g),p=g===k.value;return(0,b.jsx)(f.Item,{asChild:!0,...l,focusable:!i,active:p,children:(0,b.jsx)(h.Primitive.button,{type:"button",role:"tab","aria-selected":p,"aria-controls":n,"data-state":p?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:m,...j,ref:c,onMouseDown:(0,d.composeEventHandlers)(a.onMouseDown,a=>{i||0!==a.button||!1!==a.ctrlKey?a.preventDefault():k.onValueChange(g)}),onKeyDown:(0,d.composeEventHandlers)(a.onKeyDown,a=>{[" ","Enter"].includes(a.key)&&k.onValueChange(g)}),onFocus:(0,d.composeEventHandlers)(a.onFocus,()=>{let a="manual"!==k.activationMode;p||i||!a||k.onValueChange(g)})})})});v.displayName=u;var w="TabsContent",x=c.forwardRef((a,d)=>{let{__scopeTabs:e,value:f,forceMount:i,children:j,...k}=a,l=q(w,e),m=y(l.baseId,f),n=z(l.baseId,f),o=f===l.value,p=c.useRef(o);return c.useEffect(()=>{let a=requestAnimationFrame(()=>p.current=!1);return()=>cancelAnimationFrame(a)},[]),(0,b.jsx)(g.Presence,{present:i||o,children:({present:c})=>(0,b.jsx)(h.Primitive.div,{"data-state":o?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":m,hidden:!c,id:n,tabIndex:0,...k,ref:d,style:{...a.style,animationDuration:p.current?"0s":void 0},children:c&&j})})});function y(a,b){return`${a}-trigger-${b}`}function z(a,b){return`${a}-content-${b}`}x.displayName=w,a.s(["Content",()=>x,"List",()=>t,"Root",()=>r,"Tabs",()=>r,"TabsContent",()=>x,"TabsList",()=>t,"TabsTrigger",()=>v,"Trigger",()=>v,"createTabsScope",()=>n],287);var A=a.i(287),A=A,B=a.i(85536);let C=A.Root,D=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(A.List,{ref:d,className:(0,B.cn)("bg-muted text-muted-foreground inline-flex h-9 items-center justify-center rounded-lg p-1",a),...c}));D.displayName=A.List.displayName;let E=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(A.Trigger,{ref:d,className:(0,B.cn)("ring-offset-background focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow",a),...c}));E.displayName=A.Trigger.displayName;let F=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(A.Content,{ref:d,className:(0,B.cn)("ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none",a),...c}));F.displayName=A.Content.displayName,a.s(["Tabs",()=>C,"TabsContent",()=>F,"TabsList",()=>D,"TabsTrigger",()=>E],41305)},71716,a=>{"use strict";let b=(0,a.i(25700).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);a.s(["ChevronDown",()=>b],71716)},98410,a=>{"use strict";let b=(0,a.i(25700).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",()=>b],98410)},34644,19880,a=>{"use strict";var b=a.i(25700);let c=(0,b.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);a.s(["Bot",()=>c],34644);let d=(0,b.default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);a.s(["ChevronUp",()=>d],19880)},80998,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=a.r(62219);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},82470,(a,b,c)=>{"use strict";function d(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"encodeURIPath",{enumerable:!0,get:function(){return d}})},37987,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=a.r(10973),e=a.r(55690),f=a.r(56704),g=a.r(82470),h=a.r(27478);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let i=(0,h.getDeploymentIdQueryOrEmptyString)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${i}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},17278,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return j}});let d=a.r(10973),e=a.r(96960),f=a.r(80998),g=a.r(37987);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},53866,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return e}});let d=a.r(63652)._(a.r(17278));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},21434,34379,a=>{"use strict";var b=a.i(10973),c=a.i(96960),d=a.i(53866),e=a.i(88064),f=a.i(52313),g=a.i(45670),h=a.i(18948);let i=(0,d.default)(async()=>{},{loadableGenerated:{modules:[15567]},ssr:!1,loading:()=>(0,b.jsx)(j,{})});function j(){return(0,b.jsx)("div",{className:"flex h-full w-full items-center justify-center",children:(0,b.jsx)(e.Loader2,{className:"text-muted-foreground h-8 w-8 animate-spin"})})}async function k(a){let b=new URLSearchParams;a&&b.set("path",a);let c=await fetch(`/api/directory/list?${b.toString()}`);if(!c.ok)throw Error((await c.json().catch(()=>({error:"Failed to load directory"}))).error??"Failed to load directory");return c.json()}function l({open:a,onOpenChange:d,onSelect:e,initialPath:j}){let[l,m]=(0,c.useState)([]),[n,o]=(0,c.useState)(""),[p,q]=(0,c.useState)(!1),[r,s]=(0,c.useState)(null),t=(0,c.useRef)(!1),u=(0,c.useCallback)(async a=>{q(!0),s(null);try{let b=await k(a);m(b.entries),o(b.currentPath)}catch(b){let a=b instanceof Error?b.message:"Failed to load directory";f.toast.error(a)}finally{q(!1)}},[]);(0,c.useEffect)(()=>{a&&!t.current&&(t.current=!0,u(j)),a||(t.current=!1)},[a,j,u]);let v=(0,c.useCallback)(a=>{let b=a.absolutePath;a.isDirectory&&b&&u(b)},[u]),w=(0,c.useCallback)(a=>{1===a.length&&a[0].isDirectory?s(a[0].absolutePath??null):s(null)},[]);function x(){e(null),d(!1)}return(0,b.jsx)(g.Dialog,{open:a,onOpenChange:a=>{a||x()},children:(0,b.jsxs)(g.DialogContent,{className:"flex h-[95dvh] max-w-[95vw] flex-col",onCloseAutoFocus:a=>a.preventDefault(),children:[(0,b.jsxs)(g.DialogHeader,{children:[(0,b.jsx)(g.DialogTitle,{children:"Select Folder"}),(0,b.jsx)(g.DialogDescription,{className:"truncate font-mono text-xs",children:n||"Loading..."})]}),(0,b.jsx)("div",{className:"shep-file-manager min-h-0 flex-1 overflow-hidden rounded-md border",children:(0,b.jsx)(i,{files:l.map(a=>({name:a.name,isDirectory:!0,path:`/${a.name}`,absolutePath:a.path,updatedAt:a.updatedAt})),isLoading:p,height:"100%",width:"100%",layout:"list",enableFilePreview:!1,permissions:{upload:!1,delete:!1,create:!1,download:!1,copy:!1,move:!1,rename:!1},onFileOpen:v,onSelectionChange:w,onRefresh:()=>u(n)},n)}),(0,b.jsxs)(g.DialogFooter,{children:[(0,b.jsx)(h.Button,{variant:"outline",onClick:x,children:"Cancel"}),(0,b.jsx)(h.Button,{variant:"secondary",onClick:function(){n&&(e(n),d(!1))},disabled:!n,children:"Select Current Folder"}),(0,b.jsx)(h.Button,{onClick:function(){r&&(e(r),d(!1))},disabled:!r,children:"Select Folder"})]})]})})}a.s(["ReactFileManagerDialog",()=>l],34379),a.s([],21434)},1377,a=>{"use strict";var b=a.i(25674);let c=(0,b.createServerReference)("00f3cbb923d27c79bc519e443033fcfe62784ec8b4",b.callServer,void 0,b.findSourceMapURL,"pickFolder");async function d(){let a=await c();if(a.error)throw Error(a.error);return a.path}a.s(["pickFolder",()=>d],1377)},48972,a=>{"use strict";function b(a,[b,c]){return Math.min(c,Math.max(b,a))}a.s(["clamp",()=>b])},17300,a=>{"use strict";let b=(0,a.i(25700).default)("wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]]);a.s(["Wrench",()=>b],17300)},90920,a=>{"use strict";var b=a.i(10973),c=a.i(85536);function d({className:a,type:d,...e}){return(0,b.jsx)("input",{type:d,"data-slot":"input",className:(0,c.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",a),...e})}a.s(["Input",()=>d])},31378,a=>{"use strict";let b=(0,a.i(25700).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["Search",()=>b],31378)},67424,a=>{"use strict";let b=(0,a.i(25700).default)("puzzle",[["path",{d:"M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z",key:"w46dr5"}]]);a.s(["Puzzle",()=>b],67424)}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__f8dd4422._.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/contexts/hooks-client-context.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/contexts/server-inserted-html.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/module.compiled.js","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/ssr/react.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/ssr/react-dom.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/ssr/react-server-dom-turbopack-client.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/server/route-modules/app-page/vendored/contexts/app-router-context.ts","../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-tabs%401.1.13_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Breact%40_68a385a9eea120600bb372a91de22b00/node_modules/%40radix-ui/react-tabs/dist/index.mjs","../../../../../../../src/presentation/web/components/ui/tabs.tsx","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/chevron-down.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/copy.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/chevron-up.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/bot.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/shared/lib/lazy-dynamic/dynamic-bailout-to-csr.tsx","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/shared/lib/encode-uri-path.ts","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/shared/lib/lazy-dynamic/preload-chunks.tsx","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/shared/lib/lazy-dynamic/loadable.tsx","../../../../../../../node_modules/.pnpm/next%4016.1.6_%40babel%2Bcore%407.29.0_%40playwright%2Btest%401.58.1_react-dom%4019.2.4_react%4019.2.4__react%4019.2.4/node_modules/next/src/shared/lib/app-dynamic.tsx","../../../../../../../src/presentation/web/components/common/react-file-manager-dialog/react-file-manager-dialog.tsx","../../../../../../../src/presentation/web/app/actions/data%3A57c38a%20%3Ctext/javascript%3E","../../../../../../../src/presentation/web/components/common/add-repository-button/pick-folder.ts","../../../../../../../node_modules/.pnpm/%40radix-ui%2Bnumber%401.1.1/node_modules/%40radix-ui/number/src/number.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/wrench.ts","../../../../../../../src/presentation/web/components/ui/input.tsx","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/search.ts","../../../../../../../node_modules/.pnpm/lucide-react%400.563.0_react%4019.2.4/node_modules/lucide-react/src/icons/puzzle.ts"],"sourcesContent":["module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['contexts'].HooksClientContext\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['contexts'].ServerInsertedHtml\n","if (process.env.NEXT_RUNTIME === 'edge') {\n module.exports = require('next/dist/server/route-modules/app-page/module.js')\n} else {\n if (process.env.__NEXT_EXPERIMENTAL_REACT) {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.prod.js')\n }\n }\n } else {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.prod.js')\n }\n }\n }\n}\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-ssr']!.ReactJsxRuntime\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-ssr']!.React\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-ssr']!.ReactDOM\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-ssr']!.ReactServerDOMTurbopackClient\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['contexts'].AppRouterContext\n","\"use client\";\n\n// src/tabs.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar TABS_NAME = \"Tabs\";\nvar [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [\n createRovingFocusGroupScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [TabsProvider, useTabsContext] = createTabsContext(TABS_NAME);\nvar Tabs = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTabs,\n value: valueProp,\n onValueChange,\n defaultValue,\n orientation = \"horizontal\",\n dir,\n activationMode = \"automatic\",\n ...tabsProps\n } = props;\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n defaultProp: defaultValue ?? \"\",\n caller: TABS_NAME\n });\n return /* @__PURE__ */ jsx(\n TabsProvider,\n {\n scope: __scopeTabs,\n baseId: useId(),\n value,\n onValueChange: setValue,\n orientation,\n dir: direction,\n activationMode,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n \"data-orientation\": orientation,\n ...tabsProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabs.displayName = TABS_NAME;\nvar TAB_LIST_NAME = \"TabsList\";\nvar TabsList = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, loop = true, ...listProps } = props;\n const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation: context.orientation,\n dir: context.dir,\n loop,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"tablist\",\n \"aria-orientation\": context.orientation,\n ...listProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabsList.displayName = TAB_LIST_NAME;\nvar TRIGGER_NAME = \"TabsTrigger\";\nvar TabsTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, disabled = false, ...triggerProps } = props;\n const context = useTabsContext(TRIGGER_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !disabled,\n active: isSelected,\n children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"tab\",\n \"aria-selected\": isSelected,\n \"aria-controls\": contentId,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n id: triggerId,\n ...triggerProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!disabled && event.button === 0 && event.ctrlKey === false) {\n context.onValueChange(value);\n } else {\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if ([\" \", \"Enter\"].includes(event.key)) context.onValueChange(value);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n const isAutomaticActivation = context.activationMode !== \"manual\";\n if (!isSelected && !disabled && isAutomaticActivation) {\n context.onValueChange(value);\n }\n })\n }\n )\n }\n );\n }\n);\nTabsTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"TabsContent\";\nvar TabsContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, forceMount, children, ...contentProps } = props;\n const context = useTabsContext(CONTENT_NAME, __scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n const isMountAnimationPreventedRef = React.useRef(isSelected);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || isSelected, children: ({ present }) => /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-orientation\": context.orientation,\n role: \"tabpanel\",\n \"aria-labelledby\": triggerId,\n hidden: !present,\n id: contentId,\n tabIndex: 0,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...props.style,\n animationDuration: isMountAnimationPreventedRef.current ? \"0s\" : void 0\n },\n children: present && children\n }\n ) });\n }\n);\nTabsContent.displayName = CONTENT_NAME;\nfunction makeTriggerId(baseId, value) {\n return `${baseId}-trigger-${value}`;\n}\nfunction makeContentId(baseId, value) {\n return `${baseId}-content-${value}`;\n}\nvar Root2 = Tabs;\nvar List = TabsList;\nvar Trigger = TabsTrigger;\nvar Content = TabsContent;\nexport {\n Content,\n List,\n Root2 as Root,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Trigger,\n createTabsScope\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as React from 'react';\nimport { Tabs as TabsPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nconst Tabs = TabsPrimitive.Root;\n\nconst TabsList = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.List\n ref={ref}\n className={cn(\n 'bg-muted text-muted-foreground inline-flex h-9 items-center justify-center rounded-lg p-1',\n className\n )}\n {...props}\n />\n));\nTabsList.displayName = TabsPrimitive.List.displayName;\n\nconst TabsTrigger = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Trigger\n ref={ref}\n className={cn(\n 'ring-offset-background focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow',\n className\n )}\n {...props}\n />\n));\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName;\n\nconst TabsContent = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Content\n ref={ref}\n className={cn(\n 'ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none',\n className\n )}\n {...props}\n />\n));\nTabsContent.displayName = TabsPrimitive.Content.displayName;\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [['path', { d: 'm6 9 6 6 6-6', key: 'qrunsl' }]];\n\n/**\n * @component @name ChevronDown\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtNiA5IDYgNiA2LTYiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/chevron-down\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ChevronDown = createLucideIcon('chevron-down', __iconNode);\n\nexport default ChevronDown;\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n ['rect', { width: '14', height: '14', x: '8', y: '8', rx: '2', ry: '2', key: '17jyea' }],\n ['path', { d: 'M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2', key: 'zix9uf' }],\n];\n\n/**\n * @component @name Copy\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHg9IjgiIHk9IjgiIHJ4PSIyIiByeT0iMiIgLz4KICA8cGF0aCBkPSJNNCAxNmMtMS4xIDAtMi0uOS0yLTJWNGMwLTEuMS45LTIgMi0yaDEwYzEuMSAwIDIgLjkgMiAyIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/copy\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Copy = createLucideIcon('copy', __iconNode);\n\nexport default Copy;\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [['path', { d: 'm18 15-6-6-6 6', key: '153udz' }]];\n\n/**\n * @component @name ChevronUp\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMTggMTUtNi02LTYgNiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/chevron-up\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ChevronUp = createLucideIcon('chevron-up', __iconNode);\n\nexport default ChevronUp;\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n ['path', { d: 'M12 8V4H8', key: 'hb8ula' }],\n ['rect', { width: '16', height: '12', x: '4', y: '8', rx: '2', key: 'enze0r' }],\n ['path', { d: 'M2 14h2', key: 'vft8re' }],\n ['path', { d: 'M20 14h2', key: '4cs60a' }],\n ['path', { d: 'M15 13v2', key: '1xurst' }],\n ['path', { d: 'M9 13v2', key: 'rq6x2g' }],\n];\n\n/**\n * @component @name Bot\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIgOFY0SDgiIC8+CiAgPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjEyIiB4PSI0IiB5PSI4IiByeD0iMiIgLz4KICA8cGF0aCBkPSJNMiAxNGgyIiAvPgogIDxwYXRoIGQ9Ik0yMCAxNGgyIiAvPgogIDxwYXRoIGQ9Ik0xNSAxM3YyIiAvPgogIDxwYXRoIGQ9Ik05IDEzdjIiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/bot\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Bot = createLucideIcon('bot', __iconNode);\n\nexport default Bot;\n","'use client'\n\nimport type { ReactElement } from 'react'\nimport { BailoutToCSRError } from './bailout-to-csr'\n\ninterface BailoutToCSRProps {\n reason: string\n children: ReactElement\n}\n\n/**\n * If rendered on the server, this component throws an error\n * to signal Next.js that it should bail out to client-side rendering instead.\n */\nexport function BailoutToCSR({ reason, children }: BailoutToCSRProps) {\n if (typeof window === 'undefined') {\n throw new BailoutToCSRError(reason)\n }\n\n return children\n}\n","export function encodeURIPath(file: string) {\n return file\n .split('/')\n .map((p) => encodeURIComponent(p))\n .join('/')\n}\n","'use client'\n\nimport { preload } from 'react-dom'\n\nimport { workAsyncStorage } from '../../../server/app-render/work-async-storage.external'\nimport { encodeURIPath } from '../encode-uri-path'\nimport { getDeploymentIdQueryOrEmptyString } from '../deployment-id'\n\nexport function PreloadChunks({\n moduleIds,\n}: {\n moduleIds: string[] | undefined\n}) {\n // Early return in client compilation and only load requestStore on server side\n if (typeof window !== 'undefined') {\n return null\n }\n\n const workStore = workAsyncStorage.getStore()\n if (workStore === undefined) {\n return null\n }\n\n const allFiles = []\n\n // Search the current dynamic call unique key id in react loadable manifest,\n // and find the corresponding CSS files to preload\n if (workStore.reactLoadableManifest && moduleIds) {\n const manifest = workStore.reactLoadableManifest\n for (const key of moduleIds) {\n if (!manifest[key]) continue\n const chunks = manifest[key].files\n allFiles.push(...chunks)\n }\n }\n\n if (allFiles.length === 0) {\n return null\n }\n\n const dplId = getDeploymentIdQueryOrEmptyString()\n\n return (\n <>\n {allFiles.map((chunk) => {\n const href = `${workStore.assetPrefix}/_next/${encodeURIPath(chunk)}${dplId}`\n const isCss = chunk.endsWith('.css')\n // If it's stylesheet we use `precedence` o help hoist with React Float.\n // For stylesheets we actually need to render the CSS because nothing else is going to do it so it needs to be part of the component tree.\n // The `preload` for stylesheet is not optional.\n if (isCss) {\n return (\n <link\n key={chunk}\n // @ts-ignore\n precedence=\"dynamic\"\n href={href}\n rel=\"stylesheet\"\n as=\"style\"\n nonce={workStore.nonce}\n />\n )\n } else {\n // If it's script we use ReactDOM.preload to preload the resources\n preload(href, {\n as: 'script',\n fetchPriority: 'low',\n nonce: workStore.nonce,\n })\n return null\n }\n })}\n </>\n )\n}\n","import { Suspense, Fragment, lazy } from 'react'\nimport { BailoutToCSR } from './dynamic-bailout-to-csr'\nimport type { ComponentModule } from './types'\nimport { PreloadChunks } from './preload-chunks'\n\n// Normalize loader to return the module as form { default: Component } for `React.lazy`.\n// Also for backward compatible since next/dynamic allows to resolve a component directly with loader\n// Client component reference proxy need to be converted to a module.\nfunction convertModule<P>(\n mod: React.ComponentType<P> | ComponentModule<P> | undefined\n): {\n default: React.ComponentType<P>\n} {\n // Check \"default\" prop before accessing it, as it could be client reference proxy that could break it reference.\n // Cases:\n // mod: { default: Component }\n // mod: Component\n // mod: { default: proxy(Component) }\n // mod: proxy(Component)\n const hasDefault = mod && 'default' in mod\n return {\n default: hasDefault\n ? (mod as ComponentModule<P>).default\n : (mod as React.ComponentType<P>),\n }\n}\n\nconst defaultOptions = {\n loader: () => Promise.resolve(convertModule(() => null)),\n loading: null,\n ssr: true,\n}\n\ninterface LoadableOptions {\n loader?: () => Promise<React.ComponentType<any> | ComponentModule<any>>\n loading?: React.ComponentType<any> | null\n ssr?: boolean\n modules?: string[]\n}\n\nfunction Loadable(options: LoadableOptions) {\n const opts = { ...defaultOptions, ...options }\n const Lazy = lazy(() => opts.loader().then(convertModule))\n const Loading = opts.loading\n\n function LoadableComponent(props: any) {\n const fallbackElement = Loading ? (\n <Loading isLoading={true} pastDelay={true} error={null} />\n ) : null\n\n // If it's non-SSR or provided a loading component, wrap it in a suspense boundary\n const hasSuspenseBoundary = !opts.ssr || !!opts.loading\n const Wrap = hasSuspenseBoundary ? Suspense : Fragment\n const wrapProps = hasSuspenseBoundary ? { fallback: fallbackElement } : {}\n const children = opts.ssr ? (\n <>\n {/* During SSR, we need to preload the CSS from the dynamic component to avoid flash of unstyled content */}\n {typeof window === 'undefined' ? (\n <PreloadChunks moduleIds={opts.modules} />\n ) : null}\n <Lazy {...props} />\n </>\n ) : (\n <BailoutToCSR reason=\"next/dynamic\">\n <Lazy {...props} />\n </BailoutToCSR>\n )\n\n return <Wrap {...wrapProps}>{children}</Wrap>\n }\n\n LoadableComponent.displayName = 'LoadableComponent'\n\n return LoadableComponent\n}\n\nexport default Loadable\n","import type React from 'react'\nimport type { JSX } from 'react'\nimport Loadable from './lazy-dynamic/loadable'\n\nimport type {\n LoadableGeneratedOptions,\n DynamicOptionsLoadingProps,\n Loader,\n LoaderComponent,\n} from './lazy-dynamic/types'\n\nexport {\n type LoadableGeneratedOptions,\n type DynamicOptionsLoadingProps,\n type Loader,\n type LoaderComponent,\n}\n\nexport type DynamicOptions<P = {}> = LoadableGeneratedOptions & {\n loading?: () => JSX.Element | null\n loader?: Loader<P>\n loadableGenerated?: LoadableGeneratedOptions\n modules?: string[]\n ssr?: boolean\n}\n\nexport type LoadableOptions<P = {}> = DynamicOptions<P>\n\nexport type LoadableFn<P = {}> = (\n opts: LoadableOptions<P>\n) => React.ComponentType<P>\n\nexport type LoadableComponent<P = {}> = React.ComponentType<P>\n\nexport default function dynamic<P = {}>(\n dynamicOptions: DynamicOptions<P> | Loader<P>,\n options?: DynamicOptions<P>\n): React.ComponentType<P> {\n const loadableOptions: LoadableOptions<P> = {}\n\n if (typeof dynamicOptions === 'function') {\n loadableOptions.loader = dynamicOptions\n }\n\n const mergedOptions = {\n ...loadableOptions,\n ...options,\n }\n\n return Loadable({\n ...mergedOptions,\n modules: mergedOptions.loadableGenerated?.modules,\n })\n}\n","'use client';\n\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport dynamic from 'next/dynamic';\nimport { Loader2 } from 'lucide-react';\nimport { toast } from 'sonner';\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n} from '@/components/ui/dialog';\nimport { Button } from '@/components/ui/button';\nimport type { FileManagerFile } from '@cubone/react-file-manager';\nimport type {\n DirectoryEntry,\n DirectoryListResponse,\n ReactFileManagerDialogProps,\n} from './react-file-manager-dialog-config';\n\nconst FileManager = dynamic(\n () => import('@cubone/react-file-manager').then((mod) => mod.FileManager),\n { ssr: false, loading: () => <FileManagerSkeleton /> }\n);\n\nfunction FileManagerSkeleton() {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Loader2 className=\"text-muted-foreground h-8 w-8 animate-spin\" />\n </div>\n );\n}\n\nfunction toFileManagerFiles(entries: DirectoryEntry[]) {\n // The @cubone/react-file-manager component filters visible files by matching\n // file.path === currentPath + \"/\" + file.name. Since we dynamically fetch\n // directory contents on each navigation, we present all entries at the\n // FileManager's root level by using path = \"/\" + name. The real absolute\n // path is preserved in a custom `absolutePath` field for selection/navigation.\n return entries.map((entry) => ({\n name: entry.name,\n isDirectory: true as const,\n path: `/${entry.name}`,\n absolutePath: entry.path,\n updatedAt: entry.updatedAt,\n }));\n}\n\nasync function fetchDirectory(dirPath?: string): Promise<DirectoryListResponse> {\n const params = new URLSearchParams();\n if (dirPath) {\n params.set('path', dirPath);\n }\n const res = await fetch(`/api/directory/list?${params.toString()}`);\n if (!res.ok) {\n const body = await res.json().catch(() => ({ error: 'Failed to load directory' }));\n throw new Error(body.error ?? 'Failed to load directory');\n }\n return res.json();\n}\n\nexport function ReactFileManagerDialog({\n open,\n onOpenChange,\n onSelect,\n initialPath,\n}: ReactFileManagerDialogProps) {\n const [entries, setEntries] = useState<DirectoryEntry[]>([]);\n const [currentPath, setCurrentPath] = useState('');\n const [isLoading, setIsLoading] = useState(false);\n const [selectedPath, setSelectedPath] = useState<string | null>(null);\n const hasLoadedRef = useRef(false);\n\n const loadDirectory = useCallback(async (dirPath?: string) => {\n setIsLoading(true);\n setSelectedPath(null);\n try {\n const data = await fetchDirectory(dirPath);\n setEntries(data.entries);\n setCurrentPath(data.currentPath);\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to load directory';\n toast.error(message);\n } finally {\n setIsLoading(false);\n }\n }, []);\n\n useEffect(() => {\n if (open && !hasLoadedRef.current) {\n hasLoadedRef.current = true;\n loadDirectory(initialPath);\n }\n if (!open) {\n hasLoadedRef.current = false;\n }\n }, [open, initialPath, loadDirectory]);\n\n const handleFileOpen = useCallback(\n (file: FileManagerFile) => {\n // Use absolutePath (real filesystem path) for navigation, not the\n // virtual path used by the FileManager tree.\n const realPath = file.absolutePath;\n if (file.isDirectory && realPath) {\n loadDirectory(realPath);\n }\n },\n [loadDirectory]\n );\n\n const handleSelectionChange = useCallback((files: FileManagerFile[]) => {\n if (files.length === 1 && files[0].isDirectory) {\n const realPath = files[0].absolutePath;\n setSelectedPath(realPath ?? null);\n } else {\n setSelectedPath(null);\n }\n }, []);\n\n function handleSelect() {\n if (selectedPath) {\n onSelect(selectedPath);\n onOpenChange(false);\n }\n }\n\n function handleSelectCurrentPath() {\n if (currentPath) {\n onSelect(currentPath);\n onOpenChange(false);\n }\n }\n\n function handleCancel() {\n onSelect(null);\n onOpenChange(false);\n }\n\n return (\n <Dialog\n open={open}\n onOpenChange={(isOpen) => {\n if (!isOpen) {\n handleCancel();\n }\n }}\n >\n <DialogContent\n className=\"flex h-[95dvh] max-w-[95vw] flex-col\"\n onCloseAutoFocus={(e) => e.preventDefault()}\n >\n <DialogHeader>\n <DialogTitle>Select Folder</DialogTitle>\n <DialogDescription className=\"truncate font-mono text-xs\">\n {currentPath || 'Loading...'}\n </DialogDescription>\n </DialogHeader>\n <div className=\"shep-file-manager min-h-0 flex-1 overflow-hidden rounded-md border\">\n <FileManager\n key={currentPath}\n files={toFileManagerFiles(entries)}\n isLoading={isLoading}\n height=\"100%\"\n width=\"100%\"\n layout=\"list\"\n enableFilePreview={false}\n permissions={{\n upload: false,\n delete: false,\n create: false,\n download: false,\n copy: false,\n move: false,\n rename: false,\n }}\n onFileOpen={handleFileOpen}\n onSelectionChange={handleSelectionChange}\n onRefresh={() => loadDirectory(currentPath)}\n />\n </div>\n <DialogFooter>\n <Button variant=\"outline\" onClick={handleCancel}>\n Cancel\n </Button>\n <Button variant=\"secondary\" onClick={handleSelectCurrentPath} disabled={!currentPath}>\n Select Current Folder\n </Button>\n <Button onClick={handleSelect} disabled={!selectedPath}>\n Select Folder\n </Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n );\n}\n","/* __next_internal_action_entry_do_not_use__ [{\"00f3cbb923d27c79bc519e443033fcfe62784ec8b4\":\"pickFolder\"},\"src/presentation/web/app/actions/pick-folder.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";const $$RSC_SERVER_ACTION_0=/*#__PURE__*/createServerReference(\"00f3cbb923d27c79bc519e443033fcfe62784ec8b4\",callServer,void 0,findSourceMapURL,\"pickFolder\");export{$$RSC_SERVER_ACTION_0 as pickFolder};","import { pickFolder as pickFolderAction } from '@/app/actions/pick-folder';\n\n/**\n * Opens a native OS folder picker dialog via server action.\n * Returns the selected absolute path, or null if the user cancelled.\n */\nexport async function pickFolder(): Promise<string | null> {\n const result = await pickFolderAction();\n\n if (result.error) {\n throw new Error(result.error);\n }\n\n return result.path;\n}\n","function clamp(value: number, [min, max]: [number, number]): number {\n return Math.min(max, Math.max(min, value));\n}\n\nexport { clamp };\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n [\n 'path',\n {\n d: 'M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z',\n key: '1ngwbx',\n },\n ],\n];\n\n/**\n * @component @name Wrench\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTQuNyA2LjNhMSAxIDAgMCAwIDAgMS40bDEuNiAxLjZhMSAxIDAgMCAwIDEuNCAwbDMuMTA2LTMuMTA1Yy4zMi0uMzIyLjg2My0uMjIuOTgzLjIxOGE2IDYgMCAwIDEtOC4yNTkgNy4wNTdsLTcuOTEgNy45MWExIDEgMCAwIDEtMi45OTktM2w3LjkxLTcuOTFhNiA2IDAgMCAxIDcuMDU3LTguMjU5Yy40MzguMTIuNTQuNjYyLjIxOS45ODR6IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/wrench\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Wrench = createLucideIcon('wrench', __iconNode);\n\nexport default Wrench;\n","import * as React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nfunction Input({ className, type, ...props }: React.ComponentProps<'input'>) {\n return (\n <input\n type={type}\n data-slot=\"input\"\n className={cn(\n 'file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm',\n 'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n 'aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive',\n className\n )}\n {...props}\n />\n );\n}\n\nexport { Input };\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n ['path', { d: 'm21 21-4.34-4.34', key: '14j7rj' }],\n ['circle', { cx: '11', cy: '11', r: '8', key: '4ej97u' }],\n];\n\n/**\n * @component @name Search\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMjEgMjEtNC4zNC00LjM0IiAvPgogIDxjaXJjbGUgY3g9IjExIiBjeT0iMTEiIHI9IjgiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/search\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Search = createLucideIcon('search', __iconNode);\n\nexport default Search;\n","import createLucideIcon from '../createLucideIcon';\nimport { IconNode } from '../types';\n\nexport const __iconNode: IconNode = [\n [\n 'path',\n {\n d: 'M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z',\n key: 'w46dr5',\n },\n ],\n];\n\n/**\n * @component @name Puzzle\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTUuMzkgNC4zOWExIDEgMCAwIDAgMS42OC0uNDc0IDIuNSAyLjUgMCAxIDEgMy4wMTQgMy4wMTUgMSAxIDAgMCAwLS40NzQgMS42OGwxLjY4MyAxLjY4MmEyLjQxNCAyLjQxNCAwIDAgMSAwIDMuNDE0TDE5LjYxIDE1LjM5YTEgMSAwIDAgMS0xLjY4LS40NzQgMi41IDIuNSAwIDEgMC0zLjAxNCAzLjAxNSAxIDEgMCAwIDEgLjQ3NCAxLjY4bC0xLjY4MyAxLjY4MmEyLjQxNCAyLjQxNCAwIDAgMS0zLjQxNCAwTDguNjEgMTkuNjFhMSAxIDAgMCAwLTEuNjguNDc0IDIuNSAyLjUgMCAxIDEtMy4wMTQtMy4wMTUgMSAxIDAgMCAwIC40NzQtMS42OGwtMS42ODMtMS42ODJhMi40MTQgMi40MTQgMCAwIDEgMC0zLjQxNEw0LjM5IDguNjFhMSAxIDAgMCAxIDEuNjguNDc0IDIuNSAyLjUgMCAxIDAgMy4wMTQtMy4wMTUgMSAxIDAgMCAxLS40NzQtMS42OGwxLjY4My0xLjY4MmEyLjQxNCAyLjQxNCAwIDAgMSAzLjQxNCAweiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/puzzle\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Puzzle = createLucideIcon('puzzle', __iconNode);\n\nexport default Puzzle;\n"],"names":["module","exports","require","vendored","HooksClientContext","ServerInsertedHtml","process","env","NEXT_RUNTIME","__NEXT_EXPERIMENTAL_REACT","NODE_ENV","TURBOPACK","ReactJsxRuntime","React","ReactDOM","ReactServerDOMTurbopackClient","AppRouterContext","BailoutToCSR","reason","children","window","BailoutToCSRError","encodeURIPath","file","split","map","p","encodeURIComponent","join","PreloadChunks","moduleIds","workStore","workAsyncStorage","getStore","undefined","allFiles","reactLoadableManifest","manifest","key","chunks","files","push","length","dplId","getDeploymentIdQueryOrEmptyString","chunk","href","assetPrefix","isCss","endsWith","link","precedence","rel","as","nonce","preload","fetchPriority","convertModule","mod","hasDefault","default","defaultOptions","loader","Promise","resolve","loading","ssr","Loadable","options","opts","Lazy","lazy","then","Loading","LoadableComponent","props","fallbackElement","isLoading","pastDelay","error","hasSuspenseBoundary","Wrap","Suspense","Fragment","wrapProps","fallback","modules","displayName","dynamic","dynamicOptions","loadableOptions","mergedOptions","loadableGenerated"],"mappings":"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A,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACH,GAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EACP,CAEJ","ignoreList":[0,1,2,3,4,5,6,7,8,10,11,12,13,14,15,16,17,18,23,25,26]}