@shepai/cli 1.201.0-pr600.2bbad7b → 1.202.0-pr601.3b893d1

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 (367) hide show
  1. package/package.json +2 -1
  2. package/web/.next/BUILD_ID +1 -1
  3. package/web/.next/build-manifest.json +2 -2
  4. package/web/.next/fallback-build-manifest.json +2 -2
  5. package/web/.next/prerender-manifest.json +3 -3
  6. package/web/.next/required-server-files.js +2 -2
  7. package/web/.next/required-server-files.json +2 -2
  8. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/react-loadable-manifest.json +4 -4
  9. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +37 -37
  10. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  11. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  12. package/web/.next/server/app/(dashboard)/@drawer/chat/page/react-loadable-manifest.json +4 -4
  13. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +35 -35
  14. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  15. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  16. package/web/.next/server/app/(dashboard)/@drawer/create/page/react-loadable-manifest.json +4 -4
  17. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +38 -38
  18. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  19. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  20. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/react-loadable-manifest.json +4 -4
  21. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +47 -47
  22. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  23. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  24. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/react-loadable-manifest.json +4 -4
  25. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +47 -47
  26. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  27. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  28. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +4 -4
  29. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +36 -36
  30. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  31. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  32. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/react-loadable-manifest.json +4 -4
  33. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +36 -36
  34. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  35. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  36. package/web/.next/server/app/(dashboard)/chat/page/react-loadable-manifest.json +4 -4
  37. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +35 -35
  38. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  39. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  40. package/web/.next/server/app/(dashboard)/control-center/page/react-loadable-manifest.json +4 -4
  41. package/web/.next/server/app/(dashboard)/control-center/page/server-reference-manifest.json +35 -35
  42. package/web/.next/server/app/(dashboard)/control-center/page.js.nft.json +1 -1
  43. package/web/.next/server/app/(dashboard)/control-center/page_client-reference-manifest.js +1 -1
  44. package/web/.next/server/app/(dashboard)/create/page/react-loadable-manifest.json +4 -4
  45. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +38 -38
  46. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  47. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  48. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/react-loadable-manifest.json +4 -4
  49. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +47 -47
  50. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  51. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  52. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/react-loadable-manifest.json +4 -4
  53. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +47 -47
  54. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  55. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  56. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/react-loadable-manifest.json +4 -4
  57. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +36 -36
  58. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  59. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  60. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/react-loadable-manifest.json +4 -4
  61. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +36 -36
  62. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  63. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  64. package/web/.next/server/app/_global-error.html +2 -2
  65. package/web/.next/server/app/_global-error.rsc +1 -1
  66. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  67. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  68. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  69. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  70. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  71. package/web/.next/server/app/_not-found/page/react-loadable-manifest.json +4 -4
  72. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +9 -9
  73. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  74. package/web/.next/server/app/agent-questions/page/react-loadable-manifest.json +4 -4
  75. package/web/.next/server/app/agent-questions/page/server-reference-manifest.json +11 -11
  76. package/web/.next/server/app/agent-questions/page_client-reference-manifest.js +1 -1
  77. package/web/.next/server/app/agents/[agentType]/page/react-loadable-manifest.json +4 -4
  78. package/web/.next/server/app/agents/[agentType]/page/server-reference-manifest.json +13 -13
  79. package/web/.next/server/app/agents/[agentType]/page_client-reference-manifest.js +1 -1
  80. package/web/.next/server/app/agents/page/react-loadable-manifest.json +4 -4
  81. package/web/.next/server/app/agents/page/server-reference-manifest.json +10 -10
  82. package/web/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  83. package/web/.next/server/app/application/[id]/page/react-loadable-manifest.json +4 -4
  84. package/web/.next/server/app/application/[id]/page/server-reference-manifest.json +18 -18
  85. package/web/.next/server/app/application/[id]/page.js.nft.json +1 -1
  86. package/web/.next/server/app/application/[id]/page_client-reference-manifest.js +1 -1
  87. package/web/.next/server/app/application/[id]/supervisor/page/react-loadable-manifest.json +4 -4
  88. package/web/.next/server/app/application/[id]/supervisor/page/server-reference-manifest.json +10 -10
  89. package/web/.next/server/app/application/[id]/supervisor/page_client-reference-manifest.js +1 -1
  90. package/web/.next/server/app/applications/page/react-loadable-manifest.json +4 -4
  91. package/web/.next/server/app/applications/page/server-reference-manifest.json +19 -19
  92. package/web/.next/server/app/applications/page.js.nft.json +1 -1
  93. package/web/.next/server/app/applications/page_client-reference-manifest.js +1 -1
  94. package/web/.next/server/app/features/page/react-loadable-manifest.json +4 -4
  95. package/web/.next/server/app/features/page/server-reference-manifest.json +31 -31
  96. package/web/.next/server/app/features/page.js.nft.json +1 -1
  97. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  98. package/web/.next/server/app/onboarding/page/react-loadable-manifest.json +4 -4
  99. package/web/.next/server/app/onboarding/page/server-reference-manifest.json +9 -9
  100. package/web/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  101. package/web/.next/server/app/page/react-loadable-manifest.json +4 -4
  102. package/web/.next/server/app/page/server-reference-manifest.json +9 -9
  103. package/web/.next/server/app/page_client-reference-manifest.js +1 -1
  104. package/web/.next/server/app/projects/[slug]/items/[itemId]/page/react-loadable-manifest.json +4 -4
  105. package/web/.next/server/app/projects/[slug]/items/[itemId]/page/server-reference-manifest.json +16 -16
  106. package/web/.next/server/app/projects/[slug]/items/[itemId]/page_client-reference-manifest.js +1 -1
  107. package/web/.next/server/app/projects/[slug]/page/react-loadable-manifest.json +4 -4
  108. package/web/.next/server/app/projects/[slug]/page/server-reference-manifest.json +28 -28
  109. package/web/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  110. package/web/.next/server/app/projects/[slug]/pages/page/react-loadable-manifest.json +4 -4
  111. package/web/.next/server/app/projects/[slug]/pages/page/server-reference-manifest.json +12 -12
  112. package/web/.next/server/app/projects/[slug]/pages/page_client-reference-manifest.js +1 -1
  113. package/web/.next/server/app/projects/[slug]/settings/page/react-loadable-manifest.json +4 -4
  114. package/web/.next/server/app/projects/[slug]/settings/page/server-reference-manifest.json +18 -18
  115. package/web/.next/server/app/projects/[slug]/settings/page_client-reference-manifest.js +1 -1
  116. package/web/.next/server/app/projects/page/react-loadable-manifest.json +4 -4
  117. package/web/.next/server/app/projects/page/server-reference-manifest.json +10 -10
  118. package/web/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  119. package/web/.next/server/app/settings/page/react-loadable-manifest.json +4 -4
  120. package/web/.next/server/app/settings/page/server-reference-manifest.json +15 -15
  121. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  122. package/web/.next/server/app/skills/page/react-loadable-manifest.json +4 -4
  123. package/web/.next/server/app/skills/page/server-reference-manifest.json +17 -17
  124. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  125. package/web/.next/server/app/supervisor/feature/[featureId]/page/react-loadable-manifest.json +4 -4
  126. package/web/.next/server/app/supervisor/feature/[featureId]/page/server-reference-manifest.json +10 -10
  127. package/web/.next/server/app/supervisor/feature/[featureId]/page_client-reference-manifest.js +1 -1
  128. package/web/.next/server/app/supervisor/page/react-loadable-manifest.json +4 -4
  129. package/web/.next/server/app/supervisor/page/server-reference-manifest.json +10 -10
  130. package/web/.next/server/app/supervisor/page_client-reference-manifest.js +1 -1
  131. package/web/.next/server/app/supervisor/repo/[repositoryId]/page/react-loadable-manifest.json +4 -4
  132. package/web/.next/server/app/supervisor/repo/[repositoryId]/page/server-reference-manifest.json +10 -10
  133. package/web/.next/server/app/supervisor/repo/[repositoryId]/page_client-reference-manifest.js +1 -1
  134. package/web/.next/server/app/tools/page/react-loadable-manifest.json +4 -4
  135. package/web/.next/server/app/tools/page/server-reference-manifest.json +15 -15
  136. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  137. package/web/.next/server/app/version/page/react-loadable-manifest.json +4 -4
  138. package/web/.next/server/app/version/page/server-reference-manifest.json +9 -9
  139. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  140. package/web/.next/server/chunks/[root-of-the-server]__10e976f3._.js +1 -1
  141. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agent-questions_page_actions_4b694f8d.js +1 -1
  142. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agent-questions_page_actions_4b694f8d.js.map +1 -1
  143. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agents_[agentType]_page_actions_103679a6.js +1 -1
  144. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_agents_[agentType]_page_actions_103679a6.js.map +1 -1
  145. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_projects_[slug]_pages_page_actions_19d50f6c.js +1 -1
  146. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_projects_[slug]_pages_page_actions_19d50f6c.js.map +1 -1
  147. package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_items_[itemId]_work-item-detail-client_tsx_d2e02407._.js +1 -1
  148. package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_items_[itemId]_work-item-detail-client_tsx_d2e02407._.js.map +1 -1
  149. package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_settings_project-settings-client_tsx_e8b85ddc._.js +1 -1
  150. package/web/.next/server/chunks/ssr/744ca_web_app_projects_[slug]_settings_project-settings-client_tsx_e8b85ddc._.js.map +1 -1
  151. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
  152. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  153. package/web/.next/server/chunks/ssr/744ca_web_components_features_applications_applications-page-client_tsx_d0db9938._.js +1 -1
  154. package/web/.next/server/chunks/ssr/[root-of-the-server]__0b652a2f._.js +1 -1
  155. package/web/.next/server/chunks/ssr/[root-of-the-server]__56cf47e7._.js +1 -1
  156. package/web/.next/server/chunks/ssr/[root-of-the-server]__56cf47e7._.js.map +1 -1
  157. package/web/.next/server/chunks/ssr/[root-of-the-server]__648730d4._.js +1 -1
  158. package/web/.next/server/chunks/ssr/[root-of-the-server]__68df6415._.js +1 -1
  159. package/web/.next/server/chunks/ssr/[root-of-the-server]__68df6415._.js.map +1 -1
  160. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bc6bf96._.js +1 -1
  161. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bc6bf96._.js.map +1 -1
  162. package/web/.next/server/chunks/ssr/[root-of-the-server]__9852cb08._.js +2 -2
  163. package/web/.next/server/chunks/ssr/[root-of-the-server]__9852cb08._.js.map +1 -1
  164. package/web/.next/server/chunks/ssr/[root-of-the-server]__a1167cec._.js +1 -1
  165. package/web/.next/server/chunks/ssr/[root-of-the-server]__a1167cec._.js.map +1 -1
  166. package/web/.next/server/chunks/ssr/{[root-of-the-server]__796984c7._.js → [root-of-the-server]__acaaed62._.js} +2 -2
  167. package/web/.next/server/chunks/ssr/{[root-of-the-server]__796984c7._.js.map → [root-of-the-server]__acaaed62._.js.map} +1 -1
  168. package/web/.next/server/chunks/ssr/[root-of-the-server]__b0d7cca3._.js +3 -3
  169. package/web/.next/server/chunks/ssr/[root-of-the-server]__b0d7cca3._.js.map +1 -1
  170. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba699bec._.js +1 -1
  171. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba699bec._.js.map +1 -1
  172. package/web/.next/server/chunks/ssr/[root-of-the-server]__e0741ee1._.js +1 -1
  173. package/web/.next/server/chunks/ssr/[root-of-the-server]__e0fa59e6._.js +1 -1
  174. package/web/.next/server/chunks/ssr/[root-of-the-server]__e0fa59e6._.js.map +1 -1
  175. package/web/.next/server/chunks/ssr/[root-of-the-server]__ea26ff90._.js +3 -3
  176. package/web/.next/server/chunks/ssr/{[root-of-the-server]__abab3b61._.js → [root-of-the-server]__f83cecd5._.js} +2 -2
  177. package/web/.next/server/chunks/ssr/{[root-of-the-server]__abab3b61._.js.map → [root-of-the-server]__f83cecd5._.js.map} +1 -1
  178. package/web/.next/server/chunks/ssr/[root-of-the-server]__ff0095e3._.js +1 -1
  179. package/web/.next/server/chunks/ssr/_07036593._.js +1 -1
  180. package/web/.next/server/chunks/ssr/_07036593._.js.map +1 -1
  181. package/web/.next/server/chunks/ssr/{_7c360295._.js → _0a666f6f._.js} +2 -2
  182. package/web/.next/server/chunks/ssr/{_7c360295._.js.map → _0a666f6f._.js.map} +1 -1
  183. package/web/.next/server/chunks/ssr/_0d2a7595._.js +1 -1
  184. package/web/.next/server/chunks/ssr/_0d2a7595._.js.map +1 -1
  185. package/web/.next/server/chunks/ssr/_101de7c3._.js +1 -1
  186. package/web/.next/server/chunks/ssr/_101de7c3._.js.map +1 -1
  187. package/web/.next/server/chunks/ssr/_24fca3cf._.js +1 -1
  188. package/web/.next/server/chunks/ssr/_24fca3cf._.js.map +1 -1
  189. package/web/.next/server/chunks/ssr/_2bc48f3d._.js +1 -1
  190. package/web/.next/server/chunks/ssr/_2bc48f3d._.js.map +1 -1
  191. package/web/.next/server/chunks/ssr/_32f66845._.js +1 -1
  192. package/web/.next/server/chunks/ssr/_408848e6._.js +1 -1
  193. package/web/.next/server/chunks/ssr/_408848e6._.js.map +1 -1
  194. package/web/.next/server/chunks/ssr/_40e02782._.js +1 -1
  195. package/web/.next/server/chunks/ssr/_40e02782._.js.map +1 -1
  196. package/web/.next/server/chunks/ssr/_486d45d6._.js +1 -1
  197. package/web/.next/server/chunks/ssr/_486d45d6._.js.map +1 -1
  198. package/web/.next/server/chunks/ssr/{_7b8add77._.js → _4c81bcc4._.js} +2 -2
  199. package/web/.next/server/chunks/ssr/{_7b8add77._.js.map → _4c81bcc4._.js.map} +1 -1
  200. package/web/.next/server/chunks/ssr/{_92c3fc3d._.js → _4cec17d6._.js} +2 -2
  201. package/web/.next/server/chunks/ssr/{_92c3fc3d._.js.map → _4cec17d6._.js.map} +1 -1
  202. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  203. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  204. package/web/.next/server/chunks/ssr/{_1d23a6ad._.js → _5916a65c._.js} +2 -2
  205. package/web/.next/server/chunks/ssr/{_1d23a6ad._.js.map → _5916a65c._.js.map} +1 -1
  206. package/web/.next/server/chunks/ssr/_5cbb0e22._.js +1 -1
  207. package/web/.next/server/chunks/ssr/_5cbb0e22._.js.map +1 -1
  208. package/web/.next/server/chunks/ssr/{_4a25fd2a._.js → _69d28743._.js} +2 -2
  209. package/web/.next/server/chunks/ssr/{_4a25fd2a._.js.map → _69d28743._.js.map} +1 -1
  210. package/web/.next/server/chunks/ssr/{_c37ef8be._.js → _74ee33b9._.js} +2 -2
  211. package/web/.next/server/chunks/ssr/{_c37ef8be._.js.map → _74ee33b9._.js.map} +1 -1
  212. package/web/.next/server/chunks/ssr/_7ba67729._.js +1 -1
  213. package/web/.next/server/chunks/ssr/_7ba67729._.js.map +1 -1
  214. package/web/.next/server/chunks/ssr/_805ae1aa._.js +1 -1
  215. package/web/.next/server/chunks/ssr/_805ae1aa._.js.map +1 -1
  216. package/web/.next/server/chunks/ssr/_87cf18c3._.js +1 -1
  217. package/web/.next/server/chunks/ssr/_87cf18c3._.js.map +1 -1
  218. package/web/.next/server/chunks/ssr/_8a700ff4._.js +1 -1
  219. package/web/.next/server/chunks/ssr/_8a700ff4._.js.map +1 -1
  220. package/web/.next/server/chunks/ssr/{_c77a0a62._.js → _904d6c22._.js} +2 -2
  221. package/web/.next/server/chunks/ssr/{_c77a0a62._.js.map → _904d6c22._.js.map} +1 -1
  222. package/web/.next/server/chunks/ssr/_95b97274._.js +1 -1
  223. package/web/.next/server/chunks/ssr/_95b97274._.js.map +1 -1
  224. package/web/.next/server/chunks/ssr/{_3f6a8669._.js → _a85af8c2._.js} +2 -2
  225. package/web/.next/server/chunks/ssr/{_3f6a8669._.js.map → _a85af8c2._.js.map} +1 -1
  226. package/web/.next/server/chunks/ssr/_c2e196ee._.js +1 -1
  227. package/web/.next/server/chunks/ssr/_c2e196ee._.js.map +1 -1
  228. package/web/.next/server/chunks/ssr/_ca3b7bf7._.js +1 -1
  229. package/web/.next/server/chunks/ssr/_ca3b7bf7._.js.map +1 -1
  230. package/web/.next/server/chunks/ssr/_d53224a9._.js +1 -1
  231. package/web/.next/server/chunks/ssr/_d53224a9._.js.map +1 -1
  232. package/web/.next/server/chunks/ssr/_d573dcc2._.js +1 -1
  233. package/web/.next/server/chunks/ssr/_e2671e14._.js +1 -1
  234. package/web/.next/server/chunks/ssr/_e2671e14._.js.map +1 -1
  235. package/web/.next/server/chunks/ssr/_ecd45b17._.js +1 -1
  236. package/web/.next/server/chunks/ssr/_ecd45b17._.js.map +1 -1
  237. package/web/.next/server/chunks/ssr/{_3a9f8b6f._.js → _f0bdafe2._.js} +2 -2
  238. package/web/.next/server/chunks/ssr/{_3a9f8b6f._.js.map → _f0bdafe2._.js.map} +1 -1
  239. package/web/.next/server/chunks/ssr/_f602cc9f._.js +1 -1
  240. package/web/.next/server/chunks/ssr/_f602cc9f._.js.map +1 -1
  241. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  242. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  243. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  244. package/web/.next/server/chunks/ssr/src_presentation_web_0e291f0b._.js +1 -1
  245. package/web/.next/server/chunks/ssr/src_presentation_web_0e291f0b._.js.map +1 -1
  246. package/web/.next/server/chunks/ssr/src_presentation_web_1d8d177f._.js +1 -1
  247. package/web/.next/server/chunks/ssr/src_presentation_web_1d8d177f._.js.map +1 -1
  248. package/web/.next/server/chunks/ssr/src_presentation_web_450b58fc._.js +1 -1
  249. package/web/.next/server/chunks/ssr/src_presentation_web_450b58fc._.js.map +1 -1
  250. package/web/.next/server/chunks/ssr/src_presentation_web_47727150._.js +1 -1
  251. package/web/.next/server/chunks/ssr/src_presentation_web_47727150._.js.map +1 -1
  252. package/web/.next/server/chunks/ssr/src_presentation_web_64fcfc84._.js +1 -1
  253. package/web/.next/server/chunks/ssr/src_presentation_web_64fcfc84._.js.map +1 -1
  254. package/web/.next/server/chunks/ssr/{src_presentation_web_011b1b2b._.js → src_presentation_web_6f8efc48._.js} +2 -2
  255. package/web/.next/server/chunks/ssr/{src_presentation_web_011b1b2b._.js.map → src_presentation_web_6f8efc48._.js.map} +1 -1
  256. package/web/.next/server/chunks/ssr/src_presentation_web_74b7bdb2._.js +1 -1
  257. package/web/.next/server/chunks/ssr/src_presentation_web_74b7bdb2._.js.map +1 -1
  258. package/web/.next/server/chunks/ssr/src_presentation_web_82aeca34._.js +1 -1
  259. package/web/.next/server/chunks/ssr/src_presentation_web_82aeca34._.js.map +1 -1
  260. package/web/.next/server/chunks/ssr/src_presentation_web_8a564d47._.js +1 -1
  261. package/web/.next/server/chunks/ssr/src_presentation_web_8a564d47._.js.map +1 -1
  262. package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js +1 -1
  263. package/web/.next/server/chunks/ssr/src_presentation_web_9a543843._.js.map +1 -1
  264. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_f4f3fad9.js +1 -1
  265. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app__not-found_page_actions_f4f3fad9.js.map +1 -1
  266. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_agents_page_actions_d4bd4711.js +1 -1
  267. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_agents_page_actions_d4bd4711.js.map +1 -1
  268. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_onboarding_page_actions_bb695e8d.js +1 -1
  269. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_onboarding_page_actions_bb695e8d.js.map +1 -1
  270. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_page_actions_ac47e420.js +1 -1
  271. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_page_actions_ac47e420.js.map +1 -1
  272. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_projects_page_actions_c91a23a8.js +1 -1
  273. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_projects_page_actions_c91a23a8.js.map +1 -1
  274. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_63c2d912.js +1 -1
  275. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_version_page_actions_63c2d912.js.map +1 -1
  276. package/web/.next/server/chunks/ssr/src_presentation_web_a53a3da6._.js +1 -1
  277. package/web/.next/server/chunks/ssr/src_presentation_web_a53a3da6._.js.map +1 -1
  278. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_246617fe._.js +3 -3
  279. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_adopt-local-directory_ts_75f1f28c._.js +1 -1
  280. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_adopt-local-directory_ts_75f1f28c._.js.map +1 -1
  281. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_approve-feature_ts_9453ce8b._.js +1 -1
  282. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-directory_ts_1209d917._.js +1 -1
  283. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-directory_ts_1209d917._.js.map +1 -1
  284. package/web/.next/server/chunks/ssr/src_presentation_web_app_features_feature-tree-page-client_tsx_34c5cbbf._.js +1 -1
  285. package/web/.next/server/chunks/ssr/src_presentation_web_b1b3c26c._.js +1 -1
  286. package/web/.next/server/chunks/ssr/src_presentation_web_b1b3c26c._.js.map +1 -1
  287. package/web/.next/server/chunks/ssr/src_presentation_web_b98a4353._.js +1 -1
  288. package/web/.next/server/chunks/ssr/src_presentation_web_b98a4353._.js.map +1 -1
  289. package/web/.next/server/chunks/ssr/src_presentation_web_c96ca051._.js +1 -1
  290. package/web/.next/server/chunks/ssr/src_presentation_web_c96ca051._.js.map +1 -1
  291. package/web/.next/server/chunks/ssr/{src_presentation_web_4992017e._.js → src_presentation_web_cc905835._.js} +2 -2
  292. package/web/.next/server/chunks/ssr/{src_presentation_web_4992017e._.js.map → src_presentation_web_cc905835._.js.map} +1 -1
  293. package/web/.next/server/chunks/ssr/src_presentation_web_components_66643378._.js +1 -1
  294. package/web/.next/server/chunks/ssr/src_presentation_web_components_66643378._.js.map +1 -1
  295. package/web/.next/server/chunks/ssr/src_presentation_web_components_agent-editor_agent-editor-tabs_tsx_d5a954b4._.js +1 -1
  296. package/web/.next/server/chunks/ssr/src_presentation_web_components_agent-editor_agent-editor-tabs_tsx_d5a954b4._.js.map +1 -1
  297. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
  298. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
  299. package/web/.next/server/chunks/ssr/src_presentation_web_d3858f16._.js +1 -1
  300. package/web/.next/server/chunks/ssr/src_presentation_web_d3858f16._.js.map +1 -1
  301. package/web/.next/server/chunks/ssr/src_presentation_web_d7f8130c._.js +1 -1
  302. package/web/.next/server/chunks/ssr/src_presentation_web_d7f8130c._.js.map +1 -1
  303. package/web/.next/server/chunks/ssr/src_presentation_web_dddd8ccd._.js +1 -1
  304. package/web/.next/server/chunks/ssr/src_presentation_web_dddd8ccd._.js.map +1 -1
  305. package/web/.next/server/chunks/ssr/src_presentation_web_e13d58b0._.js +1 -1
  306. package/web/.next/server/chunks/ssr/src_presentation_web_e13d58b0._.js.map +1 -1
  307. package/web/.next/server/chunks/ssr/src_presentation_web_ee94a9aa._.js +1 -1
  308. package/web/.next/server/chunks/ssr/src_presentation_web_ee94a9aa._.js.map +1 -1
  309. package/web/.next/server/chunks/ssr/src_presentation_web_f0fcfdff._.js +1 -1
  310. package/web/.next/server/chunks/ssr/src_presentation_web_f0fcfdff._.js.map +1 -1
  311. package/web/.next/server/chunks/ssr/src_presentation_web_f17e8516._.js +1 -1
  312. package/web/.next/server/chunks/ssr/src_presentation_web_f17e8516._.js.map +1 -1
  313. package/web/.next/server/chunks/ssr/src_presentation_web_f7180fec._.js +1 -1
  314. package/web/.next/server/chunks/ssr/src_presentation_web_f7180fec._.js.map +1 -1
  315. package/web/.next/server/pages/500.html +2 -2
  316. package/web/.next/server/server-reference-manifest.js +1 -1
  317. package/web/.next/server/server-reference-manifest.json +110 -110
  318. package/web/.next/static/chunks/{a8d8f9c61ec519d7.js → 06a3ce6f0a63bb38.js} +1 -1
  319. package/web/.next/static/chunks/{a7920ec2696dea6b.js → 0872ff9e21208474.js} +1 -1
  320. package/web/.next/static/chunks/{8505947d14732a53.js → 18d0b0f66c3a5030.js} +1 -1
  321. package/web/.next/static/chunks/{21ae217482df277e.js → 1935b7e366ff3eb6.js} +1 -1
  322. package/web/.next/static/chunks/{bc7ff90acabf822e.js → 19aa3cc6df5f5833.js} +1 -1
  323. package/web/.next/static/chunks/{14ae33e3d05df7ae.js → 25277f492a8e114f.js} +1 -1
  324. package/web/.next/static/chunks/{a9b788473a1a2f74.js → 2fd21b1e8f74dddd.js} +1 -1
  325. package/web/.next/static/chunks/{73de88f5c150f826.js → 35ea128cac9da3aa.js} +1 -1
  326. package/web/.next/static/chunks/{16a0872b47a0c873.js → 3b0e5f1d61bbe5b9.js} +1 -1
  327. package/web/.next/static/chunks/{2e2bbe08a2ced79d.js → 3e4b4cc39d18c2d3.js} +1 -1
  328. package/web/.next/static/chunks/{8aa1b266648944de.js → 3fdf3bfbaa542a58.js} +1 -1
  329. package/web/.next/static/chunks/{28b1e727e07ee99e.js → 46bacb3927eb4aad.js} +1 -1
  330. package/web/.next/static/chunks/{f2eb8ed0ba27add9.js → 4e6d1ce8b909633b.js} +1 -1
  331. package/web/.next/static/chunks/{ef1c174fb55135fb.js → 506cd958e1d95d99.js} +1 -1
  332. package/web/.next/static/chunks/{eb1c0aac34a995fe.js → 558f703ea70fb12f.js} +1 -1
  333. package/web/.next/static/chunks/{46628109fd139e38.js → 55f0874ed4cff0b4.js} +1 -1
  334. package/web/.next/static/chunks/64228763c0a5b398.js +1 -0
  335. package/web/.next/static/chunks/{df57f17a33536493.js → 66a4af80ba31ab99.js} +1 -1
  336. package/web/.next/static/chunks/{a4379769c9845bed.js → 69001f2dc93cd854.js} +1 -1
  337. package/web/.next/static/chunks/{04bf00ba0dfe132e.js → 7cd5b1d4aecb605f.js} +1 -1
  338. package/web/.next/static/chunks/{98a7e6a733c1eec1.js → 8437b14aa3d30c4a.js} +1 -1
  339. package/web/.next/static/chunks/{1d767f2bf1e60119.js → 85ddd1e61b5acfa7.js} +1 -1
  340. package/web/.next/static/chunks/{3d096d025d3a4300.js → 88e44bfd13326e0a.js} +1 -1
  341. package/web/.next/static/chunks/{cd553eaf62c59330.js → 89ea6a36b13564bb.js} +3 -3
  342. package/web/.next/static/chunks/{c3f8977262e99729.js → 8e05b72447a6de2d.js} +1 -1
  343. package/web/.next/static/chunks/92b0f4ef034da238.js +1 -0
  344. package/web/.next/static/chunks/{661ae8c69fd4c6e0.js → 9955264849876242.js} +1 -1
  345. package/web/.next/static/chunks/a8bd431b98488304.js +1 -0
  346. package/web/.next/static/chunks/{b1ce1428c415689c.js → aff24d3846940734.js} +1 -1
  347. package/web/.next/static/chunks/{6b2db436783731a9.js → bed79ff1fb1474b2.js} +1 -1
  348. package/web/.next/static/chunks/{2964ed9040700d3d.js → cafa3b9f2631ead4.js} +1 -1
  349. package/web/.next/static/chunks/{444614c3115ff33e.js → cf29be39771eed74.js} +1 -1
  350. package/web/.next/static/chunks/{6724456c4ee12a6c.js → e0033d3fa646e3ba.js} +1 -1
  351. package/web/.next/static/chunks/{29d53f36d9cf3511.js → e097ae94a23d6f6e.js} +1 -1
  352. package/web/.next/static/chunks/e4d71aefcaf0bcb8.js +1 -0
  353. package/web/.next/static/chunks/{0797756ed1f6ae7c.js → e62855ec84a7075d.js} +1 -1
  354. package/web/.next/static/chunks/e648942ddca82602.js +1 -0
  355. package/web/.next/static/chunks/{f478ef3c6d77bea8.js → f039f96340b89e08.js} +1 -1
  356. package/web/.next/static/chunks/{ea31f78dde34f8e1.js → f4c2e3f10d87b772.js} +1 -1
  357. package/web/.next/static/chunks/f671dcbbfd92b775.js +1 -0
  358. package/web/.next/static/chunks/{e1fee822ce83d4e4.js → fd4d834af4d4bf63.js} +1 -1
  359. package/web/.next/static/chunks/4d7b6685af2c61f9.js +0 -1
  360. package/web/.next/static/chunks/6352e668ea0a8df7.js +0 -1
  361. package/web/.next/static/chunks/74098475a938bee3.js +0 -1
  362. package/web/.next/static/chunks/798f66a5fdd1e765.js +0 -1
  363. package/web/.next/static/chunks/b3e91925f7db1ae9.js +0 -1
  364. package/web/.next/static/chunks/c8c4ea71670c4e55.js +0 -1
  365. /package/web/.next/static/{ChVi9RNp-ZER74W2GrrbV → iJI1BMB-BwFI6JHl9YJW8}/_buildManifest.js +0 -0
  366. /package/web/.next/static/{ChVi9RNp-ZER74W2GrrbV → iJI1BMB-BwFI6JHl9YJW8}/_clientMiddlewareManifest.json +0 -0
  367. /package/web/.next/static/{ChVi9RNp-ZER74W2GrrbV → iJI1BMB-BwFI6JHl9YJW8}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[66763,a=>{"use strict";var b=a.i(556365),c=a.i(944592),d=a.i(91109),e=a.i(450488),f=a.i(863698),g=a.i(403195),h=a.i(428002),i=a.i(450490),j=a.i(5698),k=a.i(598410),l=a.i(872016),m=a.i(488064),n=a.i(256957),o=a.i(612882),p=a.i(953170),q=a.i(492548),r=a.i(591498),s=a.i(884494),t=a.i(225700);let u=(0,t.default)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);var v=a.i(433511),w=a.i(65298),x=a.i(638019);let y=(0,t.default)("file-check-corner",[["path",{d:"M10.5 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v6",key:"g5mvt7"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m14 20 2 2 4-4",key:"15kota"}]]);var z=a.i(385536);a.i(478454);var A=a.i(124255);a.i(149235);var B=a.i(985080),C=a.i(182934),D=a.i(441305),E=a.i(755628),F=a.i(118662),G=a.i(821333),H=a.i(661544),I=a.i(624458);let J="text-muted-foreground hover:bg-foreground/8 hover:text-foreground inline-flex size-8 items-center justify-center rounded-[3px] disabled:opacity-40",K="bg-border/60 mx-1.5 h-5 w-px shrink-0";function L({data:a,initialTab:p}){let q=(0,G.useFeatureFlags)(),r=(0,d.useRouter)(),s=(0,d.usePathname)().startsWith("/repository/"),[t,u]=(0,c.useState)(p??"overview"),[v,w]=(0,c.useState)(!1),x=(0,E.useRepositoryActions)(a.repositoryPath?{repositoryId:a.id,repositoryPath:a.repositoryPath}:null),y=(0,c.useCallback)(()=>{r.push("/control-center")},[r]),I=(0,F.useDeployAction)(a.repositoryPath?{targetId:a.repositoryPath,targetType:"repository",repositoryPath:a.repositoryPath}:null),L="Booting"===I.status||"Ready"===I.status,M=(0,c.useCallback)(()=>{a.repositoryPath&&(navigator.clipboard.writeText(a.repositoryPath),w(!0),setTimeout(()=>w(!1),2e3))},[a.repositoryPath]),N=a.id?`repo-${a.id}`:`repo-${a.name}`;return(0,b.jsx)(A.BaseDrawer,{open:s,onClose:y,size:"lg",modal:!1,"data-testid":"repository-drawer",children:(0,b.jsxs)(D.Tabs,{value:t,onValueChange:u,className:"flex min-h-0 flex-1 flex-col",children:[(0,b.jsxs)(D.TabsList,{className:"bg-muted/50 h-auto w-full shrink-0 justify-start gap-0 rounded-none border-b p-0",children:[(0,b.jsxs)(D.TabsTrigger,{value:"overview",className:"text-muted-foreground hover:bg-muted hover:text-foreground data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:border-t-primary [&:not([data-state=active])]:border-r-border relative h-auto rounded-none border-t-2 border-r border-t-transparent border-r-transparent bg-transparent px-3.5 py-2.5 text-[13px] font-normal shadow-none transition-none last:border-r-transparent data-[state=active]:shadow-none",children:[(0,b.jsx)(n.LayoutDashboard,{className:"mr-1.5 size-4"}),"Overview"]}),(0,b.jsxs)(D.TabsTrigger,{value:"chat",className:"text-muted-foreground hover:bg-muted hover:text-foreground data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:border-t-primary [&:not([data-state=active])]:border-r-border relative h-auto rounded-none border-t-2 border-r border-t-transparent border-r-transparent bg-transparent px-3.5 py-2.5 text-[13px] font-normal shadow-none transition-none last:border-r-transparent data-[state=active]:shadow-none",children:[(0,b.jsx)(o.MessageSquare,{className:"mr-1.5 size-4"}),"Chat"]})]}),(0,b.jsxs)("div",{className:"bg-muted/40 shrink-0 border-b",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-4 pe-10 pt-2.5 pb-2","data-testid":"repository-drawer-header",children:[(0,b.jsx)("h2",{className:"text-foreground min-w-0 truncate text-base font-semibold tracking-tight",children:a.name}),a.repositoryPath?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"text-muted-foreground/40 text-xs",children:"/"}),(0,b.jsx)("span",{className:"text-muted-foreground min-w-0 truncate font-mono text-[11px]",children:a.repositoryPath})]}):null]}),a.repositoryPath?(0,b.jsx)("div",{"data-testid":"repository-drawer-toolbar",children:(0,b.jsxs)("div",{className:"flex h-9 items-center px-1.5",children:[(0,b.jsxs)(C.TooltipProvider,{delayDuration:300,children:[(0,b.jsxs)("div",{className:"flex items-center",children:[(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:x.openInIde,disabled:x.ideLoading,"aria-label":"Open in IDE",children:x.ideLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(e.Code2,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:"Open in IDE"})]}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:x.openInShell,disabled:x.shellLoading,"aria-label":"Open terminal",children:x.shellLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(f.Terminal,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:"Open terminal"})]}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:x.openFolder,disabled:x.folderLoading,"aria-label":"Open folder",children:x.folderLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(g.FolderOpen,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:"Open folder"})]}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:M,"aria-label":"Copy path",children:v?(0,b.jsx)(l.Check,{className:"size-3.5 text-green-500"}):(0,b.jsx)(k.Copy,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:v?"Copied!":"Copy path"})]})]}),a.id?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:K}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:x.syncMain,disabled:x.syncLoading,"aria-label":"Sync main",children:x.syncLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(h.RefreshCw,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:"Sync main"})]})]}):null,q.envDeploy?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:K}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",disabled:I.deployLoading||I.stopLoading,onClick:L?I.stop:I.deploy,className:(0,z.cn)("inline-flex size-7 items-center justify-center rounded-[3px] disabled:opacity-40",L?"text-red-500 hover:bg-red-500/10 hover:text-red-400":"text-green-500 hover:bg-green-500/10 hover:text-green-400"),"aria-label":L?"Stop dev server":"Start dev server",children:I.deployLoading||I.stopLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):L?(0,b.jsx)(j.Square,{className:"size-4"}):(0,b.jsx)(i.Play,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:L?"Stop dev server":"Start dev server"})]}),L?(0,b.jsx)(B.DeploymentStatusBadge,{status:I.status,url:I.url,targetId:a.repositoryPath}):null]}):null]}),(0,b.jsx)("div",{className:"flex-1"})]})}):null]}),(0,b.jsx)(D.TabsContent,{value:"overview",className:"mt-0 flex-1 overflow-y-auto",children:(0,b.jsx)(P,{data:a,syncError:x.syncError})}),(0,b.jsx)(D.TabsContent,{value:"chat",className:"mt-0 flex min-h-0 flex-1 flex-col overflow-hidden",children:(0,b.jsx)(H.ChatTab,{featureId:N,worktreePath:a.repositoryPath})})]})})}function M({icon:a,title:c,children:d}){return(0,b.jsxs)("div",{className:"px-3 pt-4 pb-1",children:[(0,b.jsxs)("div",{className:"text-foreground mb-2 flex items-center gap-1.5 text-sm font-semibold tracking-wider uppercase",children:[(0,b.jsx)(a,{className:"size-4 opacity-50"}),c]}),d]})}function N({children:a,className:c}){return(0,b.jsx)("div",{className:(0,z.cn)("bg-muted/60 rounded-md border border-transparent p-3",c),children:a})}function O({label:a,children:c}){return(0,b.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("span",{className:"text-foreground/40 text-[11px] font-medium tracking-wider uppercase",children:a}),(0,b.jsx)("span",{className:"text-sm leading-snug",children:c})]})}function P({data:a,syncError:d}){let[e,f]=(0,c.useState)(null),[g,h]=(0,c.useState)(!1);if((0,c.useEffect)(()=>{if(!a.repositoryPath)return;let b=!1;return h(!0),(0,I.getGitRepoInfo)(a.repositoryPath,8).then(a=>{b||f(a)}).catch(()=>{}).finally(()=>{b||h(!1)}),()=>{b=!0}},[a.repositoryPath]),!a.repositoryPath)return null;let i=e?.workingTree,j=i&&(i.staged>0||i.modified>0||i.untracked>0),k=e?.diffStats;return(0,b.jsxs)("div",{className:"pb-4",children:[g?(0,b.jsxs)("div",{className:"text-foreground/40 flex items-center gap-2 px-4 py-8 text-sm",children:[(0,b.jsx)(m.Loader2,{className:"size-4 animate-spin"})," Loading repository info..."]}):null,e?(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-2 px-3 pt-3",children:[(0,b.jsx)(N,{children:(0,b.jsxs)(O,{label:"Branch",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,b.jsx)(p.GitBranch,{className:"text-foreground/30 size-3.5 shrink-0"}),(0,b.jsx)("code",{className:"font-mono text-sm",children:e.currentBranch??a.branch??"—"})]}),null!=a.behindCount&&a.behindCount>0?(0,b.jsxs)("span",{className:"mt-0.5 block text-xs text-orange-600 dark:text-orange-400",children:[a.behindCount," behind default"]}):null]})}),(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Working Tree",children:j?(0,b.jsxs)("div",{className:"flex flex-wrap gap-x-3 gap-y-0.5",children:[i.staged>0?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-sm text-green-600 dark:text-green-400",children:[(0,b.jsx)(y,{className:"size-3.5"})," ",i.staged," staged"]}):null,i.modified>0?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-sm text-amber-600 dark:text-amber-400",children:[(0,b.jsx)(w.FileEdit,{className:"size-3.5"})," ",i.modified," modified"]}):null,i.untracked>0?(0,b.jsxs)("span",{className:"text-foreground/50 inline-flex items-center gap-1 text-sm",children:[(0,b.jsx)(x.FilePlus,{className:"size-3.5"})," ",i.untracked," untracked"]}):null]}):(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm text-green-600 dark:text-green-400",children:[(0,b.jsx)(l.Check,{className:"size-3.5"})," Clean"]})})}),k?(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Uncommitted Changes",children:(0,b.jsxs)("div",{className:"flex items-center gap-3 text-sm",children:[(0,b.jsxs)("span",{children:[k.filesChanged," file",1!==k.filesChanged?"s":""]}),(0,b.jsxs)("span",{className:"text-green-600 dark:text-green-400",children:["+",k.insertions]}),(0,b.jsxs)("span",{className:"text-red-500 dark:text-red-400",children:["-",k.deletions]})]})})}):null,e.remotes.length>0?(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Remote",children:e.remotes.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm",children:[(0,b.jsx)(s.Globe,{className:"text-foreground/30 size-3.5 shrink-0"}),(0,b.jsx)("span",{className:"truncate",children:a.url.replace(/\.git$/,"").replace(/^https?:\/\/([^@]+@)?/,"").replace(/x-access-token:[^@]+@/,"")})]},a.name))})}):null,e.stashCount>0?(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Stashes",children:(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm",children:[(0,b.jsx)(v.Archive,{className:"text-foreground/30 size-3.5 shrink-0"}),e.stashCount," stash",1!==e.stashCount?"es":""]})})}):null,e.tags.length>0?(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Tags",children:(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5",children:e.tags.map(a=>(0,b.jsxs)("span",{className:"bg-foreground/[0.04] inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-xs",children:[(0,b.jsx)(u,{className:"text-foreground/30 size-2.5"}),a]},a))})})}):null]}):null,e&&e.commits.length>0?(0,b.jsx)(M,{icon:q.GitCommitHorizontal,title:"Recent Commits",children:(0,b.jsxs)("div",{className:"relative ml-3",children:[(0,b.jsx)("div",{className:"bg-border absolute top-2 bottom-2 left-[5px] w-px"}),e.commits.map((a,c)=>(0,b.jsxs)("div",{className:"group relative flex gap-3 py-1.5",children:[(0,b.jsx)("div",{className:(0,z.cn)("relative z-10 mt-1.5 size-[11px] shrink-0 rounded-full border-2",0===c?"border-primary bg-primary":"border-border bg-background group-hover:border-foreground/30")}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,b.jsx)("p",{className:"min-w-0 truncate text-sm leading-snug",children:a.subject}),(0,b.jsx)("code",{className:"text-foreground/30 shrink-0 font-mono text-[11px]",children:a.shortHash})]}),(0,b.jsxs)("div",{className:"text-foreground/40 mt-0.5 flex items-center gap-2 text-xs",children:[(0,b.jsx)("span",{children:a.author}),(0,b.jsx)("span",{children:"·"}),(0,b.jsx)("span",{children:a.relativeDate}),a.branch?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{children:"·"}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-0.5",children:[(0,b.jsx)(p.GitBranch,{className:"size-3"}),a.branch]})]}):null]})]})]},a.hash))]})}):null,e&&e.branches.length>1?(0,b.jsx)(M,{icon:p.GitBranch,title:"Branches",children:(0,b.jsx)("div",{className:"flex flex-col",children:[...e.branches].sort((a,b)=>{let c,d,e,f;return a.isCurrent&&!b.isCurrent?-1:!a.isCurrent&&b.isCurrent?1:(c=a.name,/^(main|master)$/.test(c)&&(d=b.name,!/^(main|master)$/.test(d)))?-1:+(e=a.name,!!(!/^(main|master)$/.test(e)&&(f=b.name,/^(main|master)$/.test(f))))}).map(a=>(0,b.jsxs)("div",{className:(0,z.cn)("flex items-center justify-between rounded px-2 py-1.5",a.isCurrent&&"bg-muted/60"),children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm",children:[a.isCurrent?(0,b.jsx)("span",{className:"size-2 shrink-0 rounded-full bg-green-500"}):/^(main|master)$/.test(a.name)?(0,b.jsx)("span",{className:"size-2 shrink-0 rounded-full bg-blue-500"}):(0,b.jsx)("span",{className:"bg-foreground/10 size-2 shrink-0 rounded-full"}),(0,b.jsx)("code",{className:"font-mono text-[13px]",children:a.name}),a.isCurrent?(0,b.jsx)("span",{className:"text-foreground/40 text-[10px]",children:"current"}):null]}),(0,b.jsx)("span",{className:"text-foreground/40 text-xs",children:a.lastCommitDate})]},a.name))})}):null,d?(0,b.jsx)(M,{icon:r.AlertTriangle,title:"Issues",children:(0,b.jsx)(N,{className:"bg-destructive/5 border-transparent",children:(0,b.jsx)("p",{className:"text-destructive text-sm",children:d})})}):null]})}a.s(["RepositoryDrawerClient",()=>L],66763)}];
1
+ module.exports=[66763,a=>{"use strict";var b=a.i(556365),c=a.i(944592),d=a.i(91109),e=a.i(450488),f=a.i(863698),g=a.i(403195),h=a.i(428002),i=a.i(450490),j=a.i(5698),k=a.i(598410),l=a.i(872016),m=a.i(488064),n=a.i(256957),o=a.i(612882),p=a.i(953170),q=a.i(492548),r=a.i(591498),s=a.i(884494),t=a.i(225700);let u=(0,t.default)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);var v=a.i(433511),w=a.i(65298),x=a.i(638019);let y=(0,t.default)("file-check-corner",[["path",{d:"M10.5 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v6",key:"g5mvt7"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m14 20 2 2 4-4",key:"15kota"}]]);var z=a.i(385536);a.i(478454);var A=a.i(124255);a.i(149235);var B=a.i(985080),C=a.i(182934),D=a.i(441305),E=a.i(755628),F=a.i(118662),G=a.i(821333),H=a.i(661544),I=a.i(906711);let J="text-muted-foreground hover:bg-foreground/8 hover:text-foreground inline-flex size-8 items-center justify-center rounded-[3px] disabled:opacity-40",K="bg-border/60 mx-1.5 h-5 w-px shrink-0";function L({data:a,initialTab:p}){let q=(0,G.useFeatureFlags)(),r=(0,d.useRouter)(),s=(0,d.usePathname)().startsWith("/repository/"),[t,u]=(0,c.useState)(p??"overview"),[v,w]=(0,c.useState)(!1),x=(0,E.useRepositoryActions)(a.repositoryPath?{repositoryId:a.id,repositoryPath:a.repositoryPath}:null),y=(0,c.useCallback)(()=>{r.push("/control-center")},[r]),I=(0,F.useDeployAction)(a.repositoryPath?{targetId:a.repositoryPath,targetType:"repository",repositoryPath:a.repositoryPath}:null),L="Booting"===I.status||"Ready"===I.status,M=(0,c.useCallback)(()=>{a.repositoryPath&&(navigator.clipboard.writeText(a.repositoryPath),w(!0),setTimeout(()=>w(!1),2e3))},[a.repositoryPath]),N=a.id?`repo-${a.id}`:`repo-${a.name}`;return(0,b.jsx)(A.BaseDrawer,{open:s,onClose:y,size:"lg",modal:!1,"data-testid":"repository-drawer",children:(0,b.jsxs)(D.Tabs,{value:t,onValueChange:u,className:"flex min-h-0 flex-1 flex-col",children:[(0,b.jsxs)(D.TabsList,{className:"bg-muted/50 h-auto w-full shrink-0 justify-start gap-0 rounded-none border-b p-0",children:[(0,b.jsxs)(D.TabsTrigger,{value:"overview",className:"text-muted-foreground hover:bg-muted hover:text-foreground data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:border-t-primary [&:not([data-state=active])]:border-r-border relative h-auto rounded-none border-t-2 border-r border-t-transparent border-r-transparent bg-transparent px-3.5 py-2.5 text-[13px] font-normal shadow-none transition-none last:border-r-transparent data-[state=active]:shadow-none",children:[(0,b.jsx)(n.LayoutDashboard,{className:"mr-1.5 size-4"}),"Overview"]}),(0,b.jsxs)(D.TabsTrigger,{value:"chat",className:"text-muted-foreground hover:bg-muted hover:text-foreground data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:border-t-primary [&:not([data-state=active])]:border-r-border relative h-auto rounded-none border-t-2 border-r border-t-transparent border-r-transparent bg-transparent px-3.5 py-2.5 text-[13px] font-normal shadow-none transition-none last:border-r-transparent data-[state=active]:shadow-none",children:[(0,b.jsx)(o.MessageSquare,{className:"mr-1.5 size-4"}),"Chat"]})]}),(0,b.jsxs)("div",{className:"bg-muted/40 shrink-0 border-b",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-4 pe-10 pt-2.5 pb-2","data-testid":"repository-drawer-header",children:[(0,b.jsx)("h2",{className:"text-foreground min-w-0 truncate text-base font-semibold tracking-tight",children:a.name}),a.repositoryPath?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"text-muted-foreground/40 text-xs",children:"/"}),(0,b.jsx)("span",{className:"text-muted-foreground min-w-0 truncate font-mono text-[11px]",children:a.repositoryPath})]}):null]}),a.repositoryPath?(0,b.jsx)("div",{"data-testid":"repository-drawer-toolbar",children:(0,b.jsxs)("div",{className:"flex h-9 items-center px-1.5",children:[(0,b.jsxs)(C.TooltipProvider,{delayDuration:300,children:[(0,b.jsxs)("div",{className:"flex items-center",children:[(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:x.openInIde,disabled:x.ideLoading,"aria-label":"Open in IDE",children:x.ideLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(e.Code2,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:"Open in IDE"})]}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:x.openInShell,disabled:x.shellLoading,"aria-label":"Open terminal",children:x.shellLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(f.Terminal,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:"Open terminal"})]}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:x.openFolder,disabled:x.folderLoading,"aria-label":"Open folder",children:x.folderLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(g.FolderOpen,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:"Open folder"})]}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:M,"aria-label":"Copy path",children:v?(0,b.jsx)(l.Check,{className:"size-3.5 text-green-500"}):(0,b.jsx)(k.Copy,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:v?"Copied!":"Copy path"})]})]}),a.id?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:K}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",className:J,onClick:x.syncMain,disabled:x.syncLoading,"aria-label":"Sync main",children:x.syncLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(h.RefreshCw,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:"Sync main"})]})]}):null,q.envDeploy?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:K}),(0,b.jsxs)(C.Tooltip,{children:[(0,b.jsx)(C.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("button",{type:"button",disabled:I.deployLoading||I.stopLoading,onClick:L?I.stop:I.deploy,className:(0,z.cn)("inline-flex size-7 items-center justify-center rounded-[3px] disabled:opacity-40",L?"text-red-500 hover:bg-red-500/10 hover:text-red-400":"text-green-500 hover:bg-green-500/10 hover:text-green-400"),"aria-label":L?"Stop dev server":"Start dev server",children:I.deployLoading||I.stopLoading?(0,b.jsx)(m.Loader2,{className:"size-3.5 animate-spin"}):L?(0,b.jsx)(j.Square,{className:"size-4"}):(0,b.jsx)(i.Play,{className:"size-4"})})}),(0,b.jsx)(C.TooltipContent,{side:"bottom",className:"text-xs",children:L?"Stop dev server":"Start dev server"})]}),L?(0,b.jsx)(B.DeploymentStatusBadge,{status:I.status,url:I.url,targetId:a.repositoryPath}):null]}):null]}),(0,b.jsx)("div",{className:"flex-1"})]})}):null]}),(0,b.jsx)(D.TabsContent,{value:"overview",className:"mt-0 flex-1 overflow-y-auto",children:(0,b.jsx)(P,{data:a,syncError:x.syncError})}),(0,b.jsx)(D.TabsContent,{value:"chat",className:"mt-0 flex min-h-0 flex-1 flex-col overflow-hidden",children:(0,b.jsx)(H.ChatTab,{featureId:N,worktreePath:a.repositoryPath})})]})})}function M({icon:a,title:c,children:d}){return(0,b.jsxs)("div",{className:"px-3 pt-4 pb-1",children:[(0,b.jsxs)("div",{className:"text-foreground mb-2 flex items-center gap-1.5 text-sm font-semibold tracking-wider uppercase",children:[(0,b.jsx)(a,{className:"size-4 opacity-50"}),c]}),d]})}function N({children:a,className:c}){return(0,b.jsx)("div",{className:(0,z.cn)("bg-muted/60 rounded-md border border-transparent p-3",c),children:a})}function O({label:a,children:c}){return(0,b.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,b.jsx)("span",{className:"text-foreground/40 text-[11px] font-medium tracking-wider uppercase",children:a}),(0,b.jsx)("span",{className:"text-sm leading-snug",children:c})]})}function P({data:a,syncError:d}){let[e,f]=(0,c.useState)(null),[g,h]=(0,c.useState)(!1);if((0,c.useEffect)(()=>{if(!a.repositoryPath)return;let b=!1;return h(!0),(0,I.getGitRepoInfo)(a.repositoryPath,8).then(a=>{b||f(a)}).catch(()=>{}).finally(()=>{b||h(!1)}),()=>{b=!0}},[a.repositoryPath]),!a.repositoryPath)return null;let i=e?.workingTree,j=i&&(i.staged>0||i.modified>0||i.untracked>0),k=e?.diffStats;return(0,b.jsxs)("div",{className:"pb-4",children:[g?(0,b.jsxs)("div",{className:"text-foreground/40 flex items-center gap-2 px-4 py-8 text-sm",children:[(0,b.jsx)(m.Loader2,{className:"size-4 animate-spin"})," Loading repository info..."]}):null,e?(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-2 px-3 pt-3",children:[(0,b.jsx)(N,{children:(0,b.jsxs)(O,{label:"Branch",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,b.jsx)(p.GitBranch,{className:"text-foreground/30 size-3.5 shrink-0"}),(0,b.jsx)("code",{className:"font-mono text-sm",children:e.currentBranch??a.branch??"—"})]}),null!=a.behindCount&&a.behindCount>0?(0,b.jsxs)("span",{className:"mt-0.5 block text-xs text-orange-600 dark:text-orange-400",children:[a.behindCount," behind default"]}):null]})}),(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Working Tree",children:j?(0,b.jsxs)("div",{className:"flex flex-wrap gap-x-3 gap-y-0.5",children:[i.staged>0?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-sm text-green-600 dark:text-green-400",children:[(0,b.jsx)(y,{className:"size-3.5"})," ",i.staged," staged"]}):null,i.modified>0?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-sm text-amber-600 dark:text-amber-400",children:[(0,b.jsx)(w.FileEdit,{className:"size-3.5"})," ",i.modified," modified"]}):null,i.untracked>0?(0,b.jsxs)("span",{className:"text-foreground/50 inline-flex items-center gap-1 text-sm",children:[(0,b.jsx)(x.FilePlus,{className:"size-3.5"})," ",i.untracked," untracked"]}):null]}):(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm text-green-600 dark:text-green-400",children:[(0,b.jsx)(l.Check,{className:"size-3.5"})," Clean"]})})}),k?(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Uncommitted Changes",children:(0,b.jsxs)("div",{className:"flex items-center gap-3 text-sm",children:[(0,b.jsxs)("span",{children:[k.filesChanged," file",1!==k.filesChanged?"s":""]}),(0,b.jsxs)("span",{className:"text-green-600 dark:text-green-400",children:["+",k.insertions]}),(0,b.jsxs)("span",{className:"text-red-500 dark:text-red-400",children:["-",k.deletions]})]})})}):null,e.remotes.length>0?(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Remote",children:e.remotes.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm",children:[(0,b.jsx)(s.Globe,{className:"text-foreground/30 size-3.5 shrink-0"}),(0,b.jsx)("span",{className:"truncate",children:a.url.replace(/\.git$/,"").replace(/^https?:\/\/([^@]+@)?/,"").replace(/x-access-token:[^@]+@/,"")})]},a.name))})}):null,e.stashCount>0?(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Stashes",children:(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm",children:[(0,b.jsx)(v.Archive,{className:"text-foreground/30 size-3.5 shrink-0"}),e.stashCount," stash",1!==e.stashCount?"es":""]})})}):null,e.tags.length>0?(0,b.jsx)(N,{children:(0,b.jsx)(O,{label:"Tags",children:(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5",children:e.tags.map(a=>(0,b.jsxs)("span",{className:"bg-foreground/[0.04] inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-xs",children:[(0,b.jsx)(u,{className:"text-foreground/30 size-2.5"}),a]},a))})})}):null]}):null,e&&e.commits.length>0?(0,b.jsx)(M,{icon:q.GitCommitHorizontal,title:"Recent Commits",children:(0,b.jsxs)("div",{className:"relative ml-3",children:[(0,b.jsx)("div",{className:"bg-border absolute top-2 bottom-2 left-[5px] w-px"}),e.commits.map((a,c)=>(0,b.jsxs)("div",{className:"group relative flex gap-3 py-1.5",children:[(0,b.jsx)("div",{className:(0,z.cn)("relative z-10 mt-1.5 size-[11px] shrink-0 rounded-full border-2",0===c?"border-primary bg-primary":"border-border bg-background group-hover:border-foreground/30")}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,b.jsx)("p",{className:"min-w-0 truncate text-sm leading-snug",children:a.subject}),(0,b.jsx)("code",{className:"text-foreground/30 shrink-0 font-mono text-[11px]",children:a.shortHash})]}),(0,b.jsxs)("div",{className:"text-foreground/40 mt-0.5 flex items-center gap-2 text-xs",children:[(0,b.jsx)("span",{children:a.author}),(0,b.jsx)("span",{children:"·"}),(0,b.jsx)("span",{children:a.relativeDate}),a.branch?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{children:"·"}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-0.5",children:[(0,b.jsx)(p.GitBranch,{className:"size-3"}),a.branch]})]}):null]})]})]},a.hash))]})}):null,e&&e.branches.length>1?(0,b.jsx)(M,{icon:p.GitBranch,title:"Branches",children:(0,b.jsx)("div",{className:"flex flex-col",children:[...e.branches].sort((a,b)=>{let c,d,e,f;return a.isCurrent&&!b.isCurrent?-1:!a.isCurrent&&b.isCurrent?1:(c=a.name,/^(main|master)$/.test(c)&&(d=b.name,!/^(main|master)$/.test(d)))?-1:+(e=a.name,!!(!/^(main|master)$/.test(e)&&(f=b.name,/^(main|master)$/.test(f))))}).map(a=>(0,b.jsxs)("div",{className:(0,z.cn)("flex items-center justify-between rounded px-2 py-1.5",a.isCurrent&&"bg-muted/60"),children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm",children:[a.isCurrent?(0,b.jsx)("span",{className:"size-2 shrink-0 rounded-full bg-green-500"}):/^(main|master)$/.test(a.name)?(0,b.jsx)("span",{className:"size-2 shrink-0 rounded-full bg-blue-500"}):(0,b.jsx)("span",{className:"bg-foreground/10 size-2 shrink-0 rounded-full"}),(0,b.jsx)("code",{className:"font-mono text-[13px]",children:a.name}),a.isCurrent?(0,b.jsx)("span",{className:"text-foreground/40 text-[10px]",children:"current"}):null]}),(0,b.jsx)("span",{className:"text-foreground/40 text-xs",children:a.lastCommitDate})]},a.name))})}):null,d?(0,b.jsx)(M,{icon:r.AlertTriangle,title:"Issues",children:(0,b.jsx)(N,{className:"bg-destructive/5 border-transparent",children:(0,b.jsx)("p",{className:"text-destructive text-sm",children:d})})}):null]})}a.s(["RepositoryDrawerClient",()=>L],66763)}];
2
2
 
3
3
  //# sourceMappingURL=f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[495072,a=>{"use strict";var b=a.i(237705),c=a.i(996380);async function d(a){if(!a?.trim())return{error:"Application ID is required"};try{let b=(0,c.resolve)("DeleteApplicationUseCase");return await b.execute(a),{}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete application"}}}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"40ee0dce4d739915bb12ef0b956193880235b9a565",null),a.s(["deleteApplication",()=>d])},280496,a=>{"use strict";var b=a.i(237705),c=a.i(902157),d=a.i(660526),e=a.i(750227),f=a.i(874533),g=a.i(701904);let h={darwin:{cmd:"open",args:a=>[a]},linux:{cmd:"xdg-open",args:a=>[a]},win32:{cmd:"explorer",args:a=>[a]}};async function i(a){if(!a||!(0,e.isAbsolute)(a))return{success:!1,error:"repositoryPath must be an absolute path"};try{if(!(0,c.existsSync)(a))return{success:!1,error:"Directory not found"};let b=h[(0,d.platform)()];if(!b)return{success:!1,error:`Unsupported platform: ${(0,d.platform)()}`};let g=(0,e.normalize)(a),i=(0,f.spawn)(b.cmd,b.args(g),{detached:!0,stdio:"ignore"});return i.on("error",()=>void 0),i.unref(),{success:!0,path:a}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to open folder"}}}(0,g.ensureServerEntryExports)([i]),(0,b.registerServerReference)(i,"4002b3abd5f24cadbf804abf04b21c13fc4f5500d6",null),a.s(["openFolder",()=>i])},93225,941872,609959,879124,839353,529207,a=>{"use strict";var b=a.i(237705),c=a.i(996380),d=a.i(701904);async function e(a){if(!a?.trim())return{success:!1,error:"Repository id is required"};try{let b=(0,c.resolve)("SyncRepositoryMainUseCase");return await b.execute(a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to sync repository"}}}(0,d.ensureServerEntryExports)([e]),(0,b.registerServerReference)(e,"4066a9d8d0dda058531d65c2446ac6cb8ff154af11",null),a.s(["syncRepository",()=>e],93225);var f=a.i(633244);async function g(){try{return(0,f.getSettings)().onboardingComplete}catch{return!1}}async function h(){return(0,c.resolve)("CheckAgentAuthUseCase").execute()}(0,d.ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"00933775e01860066430b96082381f264bbfe02a8d",null),a.s(["isAgentSetupComplete",()=>g],941872),(0,d.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"0059f06e85af72df98fa4b4c4016d572df2234f9f5",null),a.s(["checkAgentAuth",()=>h],609959);var i=a.i(874533),j=a.i(825832);function k(a,b){return new Promise(c=>{try{let d=j.IS_WINDOWS?{timeout:5e3,windowsHide:!0}:{timeout:5e3};(0,i.execFile)(a,b,d,(a,b)=>{if(a)return void c({installed:!1,version:null});let d=b.match(/(\d+\.\d+(?:\.\d+)?)/);c({installed:!0,version:d?.[1]??null})})}catch{c({installed:!1,version:null})}})}async function l(){let[a,b,d]=await Promise.all([k("git",["--version"]),k("gh",["--version"]),(async()=>{try{let a=(0,c.resolve)("ListToolsUseCase");return await a.execute()}catch{return[]}})()]),e=d.find(a=>"git"===a.id),f=d.find(a=>"gh"===a.id);return{git:{...a,installCommand:e?.installCommand??null,installUrl:e?.website??"https://git-scm.com"},gh:{...b,installCommand:f?.installCommand??null,installUrl:f?.website??"https://cli.github.com"}}}async function m(a,b){if(!a?.trim())return{success:!1,error:"id is required"};try{let d=(0,c.resolve)("DeleteRepositoryUseCase");return await d.execute(a,{deleteFromDisk:b?.deleteFromDisk===!0}),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete repository"}}}async function n(a){let b=(0,c.resolve)("IFeatureRepository"),d=await b.findById(a);return d?{name:d.name,description:d.description}:null}(0,d.ensureServerEntryExports)([l]),(0,b.registerServerReference)(l,"006e51768eb29ea850e57f0ecc5420a82104617695",null),a.s(["checkToolStatus",()=>l],879124),(0,d.ensureServerEntryExports)([m]),(0,b.registerServerReference)(m,"60a6f0beec5cd17a71626e3a079643390379a2f73f",null),a.s(["deleteRepository",()=>m],839353),(0,d.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"4063bd26add460c56d1bd55d8619d98cdb46146e17",null),a.s(["getFeatureMetadata",()=>n],529207)},524860,a=>{"use strict";var b=a.i(237705),c=a.i(633244);async function d(){let{workflow:a}=(0,c.getSettings)();return{approvalGates:{allowPrd:a.approvalGateDefaults.allowPrd,allowPlan:a.approvalGateDefaults.allowPlan,allowMerge:a.approvalGateDefaults.allowMerge},push:a.approvalGateDefaults.pushOnImplementationComplete,openPr:a.openPrOnImplementationComplete,ciWatchEnabled:a.ciWatchEnabled,enableEvidence:a.enableEvidence,commitEvidence:a.commitEvidence,fast:a.defaultFastMode,injectSkills:a.skillInjection?.enabled??!1}}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"00f4c0a8e488dc116fdbd006e1a630f7aec089f47e",null),a.s(["getWorkflowDefaults",()=>d])},719720,a=>{"use strict";var b=a.i(237705),c=a.i(996380),d=a.i(701904);let e=new Set(["ADMIN","MAINTAIN","WRITE"]);async function f(a){try{let b=(0,c.resolve)("IGitHubRepositoryService"),d=await b.getViewerPermission(a);return{canPushDirectly:e.has(d)}}catch{return{canPushDirectly:!1}}}(0,d.ensureServerEntryExports)([f]),(0,b.registerServerReference)(f,"406463b34c09cb208d035711c634444f32072f573f",null),a.s(["getViewerPermission",()=>f])},172267,a=>{"use strict";var b=a.i(912513),c=a.i(889253),d=a.i(723504),e=a.i(408115),f=a.i(827900),g=a.i(673350),h=a.i(673101),i=a.i(654775),j=a.i(265324),k=a.i(433841),l=a.i(46646),m=a.i(868378),n=a.i(268670),o=a.i(685321),p=a.i(284095),q=a.i(656799),r=a.i(280496),s=a.i(93225),t=a.i(794691),u=a.i(477710),v=a.i(145395),w=a.i(941872),x=a.i(609959),y=a.i(879124),z=a.i(576707),A=a.i(410528),B=a.i(150845),C=a.i(26604),D=a.i(354723),E=a.i(118942),F=a.i(342886),G=a.i(649560),H=a.i(839353),I=a.i(495072),J=a.i(529207),K=a.i(524860),L=a.i(719720),M=a.i(977605);a.s([],377051),a.i(377051),a.s(["0022cadc32a7a5f3ed643a86a65eecdf0738f33dd0",()=>i.listGitHubOrganizations,"005795b9404f47f18715abda65314752aefc5fb8d5",()=>b.pickFolder,"0059f06e85af72df98fa4b4c4016d572df2234f9f5",()=>x.checkAgentAuth,"005cb4c82d2d3466deabb307d24d6ed8436d67544f",()=>d.getAllAgentModels,"006e51768eb29ea850e57f0ecc5420a82104617695",()=>y.checkToolStatus,"00933775e01860066430b96082381f264bbfe02a8d",()=>w.isAgentSetupComplete,"00938d775c42cdd54bd0e44a7d4da5cfe944dfe93b",()=>c.getDefaultAgentAndModel,"00d01781e65ac3d3a4afd541463d639fa5f0769040",()=>e.checkAllAgentsStatus,"00f4c0a8e488dc116fdbd006e1a630f7aec089f47e",()=>K.getWorkflowDefaults,"4002b3abd5f24cadbf804abf04b21c13fc4f5500d6",()=>r.openFolder,"401c8a9885b4d22bb353804e800938e62a251039d9",()=>E.stopFeature,"4020fd8b041ccb49d33f20186a34e5f7236a2c63de",()=>l.deployRepository,"403096a8dae140b85b54ee8fea0bd8ec34e1661117",()=>q.openShell,"403258509228eaa2958e23dc4d326c05a2e84b3099",()=>G.addRepository,"403a7efb89ddbcbfbd2d1aad796b93856de0c17c18",()=>g.globalSearch,"40452ebbb203a93524b9edc2238f64602b22073187",()=>A.archiveFeature,"4049262c2a16b5cf71d99252d50445b8d1eb2af28f",()=>k.deployFeature,"404c5c9797c8357ba95e33741387c8f8be645162ac",()=>M.createFeature,"40566073d295426a1ffd9e73141a98e1e6d63f2e78",()=>p.openIde,"4059b4307390b3c1543b98cbc280624be22eef4d39",()=>o.getDeploymentStatus,"4063bd26add460c56d1bd55d8619d98cdb46146e17",()=>J.getFeatureMetadata,"40645357a559aa008b8943a06f8811d680bd95e865",()=>v.createApplication,"406463b34c09cb208d035711c634444f32072f573f",()=>L.getViewerPermission,"4066a9d8d0dda058531d65c2446ac6cb8ff154af11",()=>s.syncRepository,"4088569ab6e6a5fe2e71ba0ac2cd3856c7cb36609a",()=>h.listGitHubRepositories,"40a43a48767caedd34e790ac2e54ba9fd7ada14238",()=>D.startFeature,"40ac687ce7283fa0b54dabe2f4ccaad99a6ce9b438",()=>j.importGitHubRepository,"40b1961bb1ecdede5b8f4d91c3c85a98550016d124",()=>t.getDeploymentLogs,"40bcba328c605961eb6f11ed41067f6fc3c0095327",()=>z.createProjectFolder,"40c18317fe037650f1affa6602054914227bba4f36",()=>n.stopDeployment,"40c52ee83193cb498f7589027bff41fba1c5fc6a08",()=>F.unarchiveFeature,"40d598a484e187624eab017da54f9731ce4f592c66",()=>u.createProjectAndFeature,"40ee0dce4d739915bb12ef0b956193880235b9a565",()=>I.deleteApplication,"40f700cd4c7d576c044b8ebb8f0016050e58325b42",()=>m.deployApplication,"40fc13f8f74c86b1ded3fe4170f2818cf98024de0f",()=>C.resumeFeature,"604457fce11c9b3dbf6b9522d5c4f7495770f0e22f",()=>f.updateAgentAndModel,"60a6f0beec5cd17a71626e3a079643390379a2f73f",()=>H.deleteRepository,"789a2e6dc111efa3fbfeb0a4a5655ec83e1a2812ac",()=>B.deleteFeature],172267)}];
1
+ module.exports=[495072,a=>{"use strict";var b=a.i(237705),c=a.i(996380);async function d(a){if(!a?.trim())return{error:"Application ID is required"};try{let b=(0,c.resolve)("DeleteApplicationUseCase");return await b.execute(a),{}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete application"}}}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"40d920f3d98dbcb907e8b9309df6d6f5301fe517e8",null),a.s(["deleteApplication",()=>d])},280496,a=>{"use strict";var b=a.i(237705),c=a.i(902157),d=a.i(660526),e=a.i(750227),f=a.i(874533),g=a.i(701904);let h={darwin:{cmd:"open",args:a=>[a]},linux:{cmd:"xdg-open",args:a=>[a]},win32:{cmd:"explorer",args:a=>[a]}};async function i(a){if(!a||!(0,e.isAbsolute)(a))return{success:!1,error:"repositoryPath must be an absolute path"};try{if(!(0,c.existsSync)(a))return{success:!1,error:"Directory not found"};let b=h[(0,d.platform)()];if(!b)return{success:!1,error:`Unsupported platform: ${(0,d.platform)()}`};let g=(0,e.normalize)(a),i=(0,f.spawn)(b.cmd,b.args(g),{detached:!0,stdio:"ignore"});return i.on("error",()=>void 0),i.unref(),{success:!0,path:a}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to open folder"}}}(0,g.ensureServerEntryExports)([i]),(0,b.registerServerReference)(i,"408cf3e917c9b04cceb9fc776366d15370238d6727",null),a.s(["openFolder",()=>i])},93225,941872,609959,879124,839353,529207,a=>{"use strict";var b=a.i(237705),c=a.i(996380),d=a.i(701904);async function e(a){if(!a?.trim())return{success:!1,error:"Repository id is required"};try{let b=(0,c.resolve)("SyncRepositoryMainUseCase");return await b.execute(a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to sync repository"}}}(0,d.ensureServerEntryExports)([e]),(0,b.registerServerReference)(e,"402e612bff7a86f73c6fc6523a68febe611c5e24bf",null),a.s(["syncRepository",()=>e],93225);var f=a.i(633244);async function g(){try{return(0,f.getSettings)().onboardingComplete}catch{return!1}}async function h(){return(0,c.resolve)("CheckAgentAuthUseCase").execute()}(0,d.ensureServerEntryExports)([g]),(0,b.registerServerReference)(g,"00a8ddbf51d2a807792f55a087d2ec675f33a25600",null),a.s(["isAgentSetupComplete",()=>g],941872),(0,d.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"003bc6e4df3f0b971695f493e3b0545a6385402705",null),a.s(["checkAgentAuth",()=>h],609959);var i=a.i(874533),j=a.i(825832);function k(a,b){return new Promise(c=>{try{let d=j.IS_WINDOWS?{timeout:5e3,windowsHide:!0}:{timeout:5e3};(0,i.execFile)(a,b,d,(a,b)=>{if(a)return void c({installed:!1,version:null});let d=b.match(/(\d+\.\d+(?:\.\d+)?)/);c({installed:!0,version:d?.[1]??null})})}catch{c({installed:!1,version:null})}})}async function l(){let[a,b,d]=await Promise.all([k("git",["--version"]),k("gh",["--version"]),(async()=>{try{let a=(0,c.resolve)("ListToolsUseCase");return await a.execute()}catch{return[]}})()]),e=d.find(a=>"git"===a.id),f=d.find(a=>"gh"===a.id);return{git:{...a,installCommand:e?.installCommand??null,installUrl:e?.website??"https://git-scm.com"},gh:{...b,installCommand:f?.installCommand??null,installUrl:f?.website??"https://cli.github.com"}}}async function m(a,b){if(!a?.trim())return{success:!1,error:"id is required"};try{let d=(0,c.resolve)("DeleteRepositoryUseCase");return await d.execute(a,{deleteFromDisk:b?.deleteFromDisk===!0}),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete repository"}}}async function n(a){let b=(0,c.resolve)("IFeatureRepository"),d=await b.findById(a);return d?{name:d.name,description:d.description}:null}(0,d.ensureServerEntryExports)([l]),(0,b.registerServerReference)(l,"00854fcdec2aa41cd7135223de9cf9fef7a5a5a5a2",null),a.s(["checkToolStatus",()=>l],879124),(0,d.ensureServerEntryExports)([m]),(0,b.registerServerReference)(m,"60dccc1641605f3092b3586191b756d57c6681f013",null),a.s(["deleteRepository",()=>m],839353),(0,d.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"40ae52e21e520d4a2efb02c49daa6e16d7d3a9e918",null),a.s(["getFeatureMetadata",()=>n],529207)},524860,a=>{"use strict";var b=a.i(237705),c=a.i(633244);async function d(){let{workflow:a}=(0,c.getSettings)();return{approvalGates:{allowPrd:a.approvalGateDefaults.allowPrd,allowPlan:a.approvalGateDefaults.allowPlan,allowMerge:a.approvalGateDefaults.allowMerge},push:a.approvalGateDefaults.pushOnImplementationComplete,openPr:a.openPrOnImplementationComplete,ciWatchEnabled:a.ciWatchEnabled,enableEvidence:a.enableEvidence,commitEvidence:a.commitEvidence,fast:a.defaultFastMode,injectSkills:a.skillInjection?.enabled??!1}}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"0030fada0fa977d66a6afba7f908bffda827a13a30",null),a.s(["getWorkflowDefaults",()=>d])},719720,a=>{"use strict";var b=a.i(237705),c=a.i(996380),d=a.i(701904);let e=new Set(["ADMIN","MAINTAIN","WRITE"]);async function f(a){try{let b=(0,c.resolve)("IGitHubRepositoryService"),d=await b.getViewerPermission(a);return{canPushDirectly:e.has(d)}}catch{return{canPushDirectly:!1}}}(0,d.ensureServerEntryExports)([f]),(0,b.registerServerReference)(f,"403a8b7843d90b87e48b67f0e6a9682da2cd2e9c2e",null),a.s(["getViewerPermission",()=>f])},172267,a=>{"use strict";var b=a.i(912513),c=a.i(889253),d=a.i(723504),e=a.i(408115),f=a.i(827900),g=a.i(673350),h=a.i(673101),i=a.i(654775),j=a.i(265324),k=a.i(433841),l=a.i(46646),m=a.i(868378),n=a.i(268670),o=a.i(685321),p=a.i(284095),q=a.i(656799),r=a.i(280496),s=a.i(93225),t=a.i(794691),u=a.i(477710),v=a.i(145395),w=a.i(941872),x=a.i(609959),y=a.i(879124),z=a.i(576707),A=a.i(410528),B=a.i(150845),C=a.i(26604),D=a.i(354723),E=a.i(118942),F=a.i(342886),G=a.i(649560),H=a.i(839353),I=a.i(495072),J=a.i(529207),K=a.i(524860),L=a.i(719720),M=a.i(977605);a.s([],377051),a.i(377051),a.s(["0012d55443d3ecd4371eeb3c2f54845ed7051ec3e4",()=>c.getDefaultAgentAndModel,"002333039f4600b7fac2e032dbbff5dce622bc32c4",()=>i.listGitHubOrganizations,"0030fada0fa977d66a6afba7f908bffda827a13a30",()=>K.getWorkflowDefaults,"003bc6e4df3f0b971695f493e3b0545a6385402705",()=>x.checkAgentAuth,"0047f63775193a38157ed541c90ceb8ec71c6b1dee",()=>e.checkAllAgentsStatus,"00854fcdec2aa41cd7135223de9cf9fef7a5a5a5a2",()=>y.checkToolStatus,"0090f855082c32ca62e2570d7d1ab2962ce337e2fa",()=>b.pickFolder,"00a8ddbf51d2a807792f55a087d2ec675f33a25600",()=>w.isAgentSetupComplete,"00d173d22344bd77e0101fc0f79221379fcebccdd3",()=>d.getAllAgentModels,"4019e0d1d95deabc4b7d5d89946429f6fdf95b2e5d",()=>n.stopDeployment,"401c69fd0ea332b5338d2681374f58f26450e1d213",()=>h.listGitHubRepositories,"401e500b225df13f8eea0d531a2892632e03a8f4d6",()=>C.resumeFeature,"402dbd5f92240a716fd7d1e11cee7c2ef093a5a8f8",()=>m.deployApplication,"402e612bff7a86f73c6fc6523a68febe611c5e24bf",()=>s.syncRepository,"40336205a28ad800c54cfb8be2c4220b1b1c702c0c",()=>g.globalSearch,"403a8b7843d90b87e48b67f0e6a9682da2cd2e9c2e",()=>L.getViewerPermission,"4047687dae2f619d07071416cc3f3c821fc704d1e6",()=>k.deployFeature,"4050968664ffebcc6b15e3a32490af30ff07757e2b",()=>t.getDeploymentLogs,"405fed07dcfbeab7dfc818727ab1f2c409e2289188",()=>p.openIde,"4065491a97be2a50102b694855c38043cb50fd5c4a",()=>u.createProjectAndFeature,"406e1923fad46a89b9f216334729faed4449552eec",()=>o.getDeploymentStatus,"40815776e7a6bda2e6d29f697d71e59aae910c82d1",()=>v.createApplication,"408cf3e917c9b04cceb9fc776366d15370238d6727",()=>r.openFolder,"4092c0bc0d4f943525dd619742641d13d14d68660e",()=>F.unarchiveFeature,"4097f8b4782d629828d53bd1a714d124f4f8e65757",()=>q.openShell,"409f3d622d9b3706d5f170602d19cc293aa8a29b80",()=>z.createProjectFolder,"40a35502b2865b3669eb7fa2499a87d447aba8ab06",()=>l.deployRepository,"40ae52e21e520d4a2efb02c49daa6e16d7d3a9e918",()=>J.getFeatureMetadata,"40bb53c65e93da6c62122e7bf9cd0b925701449795",()=>M.createFeature,"40c5c632eba38d44e53c287ca35739c52a2f7493be",()=>G.addRepository,"40cbc69e2b4838fe70182e22359322508c94c1be69",()=>E.stopFeature,"40d1d116caf904c2efac53381ef6e5d32250a4a042",()=>A.archiveFeature,"40d466ff9789889567ff0b65d9b5c87f7f7b11f943",()=>j.importGitHubRepository,"40d920f3d98dbcb907e8b9309df6d6f5301fe517e8",()=>I.deleteApplication,"40e1ba4edfdb370119a99845605fab8efc198dd600",()=>D.startFeature,"6000b91246c62b8ea2f123b9167538880bea50e6af",()=>f.updateAgentAndModel,"60dccc1641605f3092b3586191b756d57c6681f013",()=>H.deleteRepository,"7834489596b2b14c929806b48ffff590a12854d7de",()=>B.deleteFeature],172267)}];
2
2
 
3
3
  //# sourceMappingURL=src_presentation_web_0e291f0b._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/presentation/web/app/actions/delete-application.ts","../../../../../../../src/presentation/web/app/actions/open-folder.ts","../../../../../../../src/presentation/web/app/actions/sync-repository.ts","../../../../../../../src/presentation/web/app/actions/agent-setup-flag.ts","../../../../../../../src/presentation/web/app/actions/check-agent-auth.ts","../../../../../../../src/presentation/web/app/actions/check-tool-status.ts","../../../../../../../src/presentation/web/app/actions/delete-repository.ts","../../../../../../../src/presentation/web/app/actions/get-feature-metadata.ts","../../../../../../../src/presentation/web/app/actions/get-workflow-defaults.ts","../../../../../../../src/presentation/web/app/actions/get-viewer-permission.ts","../../../../../../../src/presentation/web/.next-internal/server/app/%28dashboard%29/%40drawer/create/page/actions.js%20%28server%20actions%20loader%29"],"sourcesContent":["'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { DeleteApplicationUseCase } from '@shepai/core/application/use-cases/applications/delete-application.use-case';\n\nexport async function deleteApplication(id: string): Promise<{ error?: string }> {\n if (!id?.trim()) {\n return { error: 'Application ID is required' };\n }\n\n try {\n const useCase = resolve<DeleteApplicationUseCase>('DeleteApplicationUseCase');\n await useCase.execute(id);\n return {};\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to delete application';\n return { error: message };\n }\n}\n","'use server';\n\nimport { existsSync } from 'node:fs';\nimport { platform } from 'node:os';\nimport { isAbsolute, normalize } from 'node:path';\nimport { spawn } from 'node:child_process';\n\n// Use a record lookup instead of if/else to prevent the bundler from\n// tree-shaking platform branches at build time. Turbopack evaluates\n// os.platform() during the build and dead-code-eliminates unused branches,\n// baking in the CI platform (linux) and breaking macOS/Windows installs.\nconst FOLDER_COMMANDS: Record<string, { cmd: string; args: (path: string) => string[] }> = {\n darwin: { cmd: 'open', args: (p) => [p] },\n linux: { cmd: 'xdg-open', args: (p) => [p] },\n win32: { cmd: 'explorer', args: (p) => [p] },\n};\n\nexport async function openFolder(\n repositoryPath: string\n): Promise<{ success: boolean; error?: string; path?: string }> {\n if (!repositoryPath || !isAbsolute(repositoryPath)) {\n return { success: false, error: 'repositoryPath must be an absolute path' };\n }\n\n try {\n if (!existsSync(repositoryPath)) {\n return { success: false, error: 'Directory not found' };\n }\n\n const entry = FOLDER_COMMANDS[platform()];\n if (!entry) {\n return {\n success: false,\n error: `Unsupported platform: ${platform()}`,\n };\n }\n\n // Normalize to platform-native separators — explorer.exe on Windows\n // does not understand forward-slash paths and falls back to Documents.\n const nativePath = normalize(repositoryPath);\n\n const child = spawn(entry.cmd, entry.args(nativePath), {\n detached: true,\n stdio: 'ignore',\n });\n child.on('error', () => undefined); // Prevent uncaught exception on spawn failure\n child.unref();\n\n return { success: true, path: repositoryPath };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to open folder';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { SyncRepositoryMainUseCase } from '@shepai/core/application/use-cases/repositories/sync-repository-main.use-case';\n\nexport async function syncRepository(\n repositoryId: string\n): Promise<{ success: boolean; error?: string }> {\n if (!repositoryId?.trim()) {\n return { success: false, error: 'Repository id is required' };\n }\n\n try {\n const useCase = resolve<SyncRepositoryMainUseCase>('SyncRepositoryMainUseCase');\n await useCase.execute(repositoryId);\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to sync repository';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { getSettings } from '@shepai/core/infrastructure/services/settings.service';\n\n/**\n * Check whether onboarding has been completed.\n * Delegates to the in-memory settings singleton (zero DB overhead).\n */\nexport async function isAgentSetupComplete(): Promise<boolean> {\n try {\n return getSettings().onboardingComplete;\n } catch {\n return false;\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { CheckAgentAuthUseCase } from '@shepai/core/application/use-cases/agents/check-agent-auth.use-case';\n\n/**\n * Result shape for the agent auth checklist on the onboarding empty state.\n * Matches CheckAgentAuthResult from the use case 1:1 — kept locally so the\n * web type stays serializable through the Server Actions boundary.\n */\nexport interface AgentAuthStatus {\n agentType: string;\n /** Whether the CLI tool binary is installed */\n installed: boolean;\n /** Whether credentials / auth appear valid */\n authenticated: boolean;\n /** Human-readable label for the agent */\n label: string;\n /** CLI binary name (e.g. \"claude\", \"gemini\") */\n binaryName: string | null;\n /** Shell command to install the tool (e.g. \"npm install -g @anthropic-ai/claude-code\") */\n installCommand: string | null;\n /** Instructions to authenticate if not authenticated */\n authCommand: string | null;\n}\n\n/**\n * Thin server-action wrapper around CheckAgentAuthUseCase. All agent-type\n * mapping, tool lookup, and platform credential detection live in:\n *\n * packages/core/src/application/use-cases/agents/check-agent-auth.use-case.ts\n * packages/core/src/infrastructure/services/agent-auth-detector/platform-agent-auth-detector.service.ts\n */\nexport async function checkAgentAuth(): Promise<AgentAuthStatus> {\n const useCase = resolve<CheckAgentAuthUseCase>('CheckAgentAuthUseCase');\n return useCase.execute();\n}\n","'use server';\n\nimport { execFile } from 'node:child_process';\nimport { IS_WINDOWS } from '@shepai/core/infrastructure/platform';\nimport { resolve } from '@/lib/server-container';\nimport type { ListToolsUseCase } from '@shepai/core/application/use-cases/tools/list-tools.use-case';\n\nexport interface ToolStatusEntry {\n installed: boolean;\n version: string | null;\n /** Platform-specific install command from tool JSON metadata */\n installCommand: string | null;\n /** Documentation/website URL */\n installUrl: string | null;\n}\n\nexport interface ToolStatusResult {\n git: ToolStatusEntry;\n gh: ToolStatusEntry;\n}\n\nfunction getVersion(\n command: string,\n args: string[]\n): Promise<{ installed: boolean; version: string | null }> {\n return new Promise((resolve) => {\n try {\n const opts = IS_WINDOWS ? { timeout: 5000, windowsHide: true } : { timeout: 5000 };\n execFile(command, args, opts, (error, stdout) => {\n if (error) {\n resolve({ installed: false, version: null });\n return;\n }\n // Extract version number from output like \"git version 2.43.0\" or \"gh version 2.40.1\"\n const match = stdout.match(/(\\d+\\.\\d+(?:\\.\\d+)?)/);\n resolve({ installed: true, version: match?.[1] ?? null });\n });\n } catch {\n resolve({ installed: false, version: null });\n }\n });\n}\n\nexport async function checkToolStatus(): Promise<ToolStatusResult> {\n // Run version checks and tool metadata lookup in parallel\n const [gitVersion, ghVersion, tools] = await Promise.all([\n getVersion('git', ['--version']),\n getVersion('gh', ['--version']),\n (async () => {\n try {\n const useCase = resolve<ListToolsUseCase>('ListToolsUseCase');\n return await useCase.execute();\n } catch {\n return [];\n }\n })(),\n ]);\n\n const gitTool = tools.find((t) => t.id === 'git');\n const ghTool = tools.find((t) => t.id === 'gh');\n\n return {\n git: {\n ...gitVersion,\n installCommand: gitTool?.installCommand ?? null,\n installUrl: gitTool?.website ?? 'https://git-scm.com',\n },\n gh: {\n ...ghVersion,\n installCommand: ghTool?.installCommand ?? null,\n installUrl: ghTool?.website ?? 'https://cli.github.com',\n },\n };\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { DeleteRepositoryUseCase } from '@shepai/core/application/use-cases/repositories/delete-repository.use-case';\n\nexport interface DeleteRepositoryActionOptions {\n deleteFromDisk?: boolean;\n}\n\nexport async function deleteRepository(\n repositoryId: string,\n options?: DeleteRepositoryActionOptions\n): Promise<{ success: boolean; error?: string }> {\n if (!repositoryId?.trim()) {\n return { success: false, error: 'id is required' };\n }\n\n try {\n const useCase = resolve<DeleteRepositoryUseCase>('DeleteRepositoryUseCase');\n await useCase.execute(repositoryId, { deleteFromDisk: options?.deleteFromDisk === true });\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to delete repository';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\n\n/**\n * Lightweight server action to fetch a single feature's name and description.\n * Used by the SSE effect to update node metadata after AI metadata generation\n * without a full graph reconcile (which can overwrite SSE-driven state).\n */\nexport async function getFeatureMetadata(\n featureId: string\n): Promise<{ name: string; description: string } | null> {\n const featureRepo = resolve<IFeatureRepository>('IFeatureRepository');\n const feature = await featureRepo.findById(featureId);\n if (!feature) return null;\n return { name: feature.name, description: feature.description };\n}\n","'use server';\n\nimport { getSettings } from '@shepai/core/infrastructure/services/settings.service';\n\nexport interface WorkflowDefaults {\n approvalGates: {\n allowPrd: boolean;\n allowPlan: boolean;\n allowMerge: boolean;\n };\n push: boolean;\n openPr: boolean;\n ciWatchEnabled: boolean;\n enableEvidence: boolean;\n commitEvidence: boolean;\n fast: boolean;\n injectSkills: boolean;\n}\n\nexport async function getWorkflowDefaults(): Promise<WorkflowDefaults> {\n const settings = getSettings();\n const { workflow } = settings;\n\n return {\n approvalGates: {\n allowPrd: workflow.approvalGateDefaults.allowPrd,\n allowPlan: workflow.approvalGateDefaults.allowPlan,\n allowMerge: workflow.approvalGateDefaults.allowMerge,\n },\n push: workflow.approvalGateDefaults.pushOnImplementationComplete,\n openPr: workflow.openPrOnImplementationComplete,\n ciWatchEnabled: workflow.ciWatchEnabled,\n enableEvidence: workflow.enableEvidence,\n commitEvidence: workflow.commitEvidence,\n fast: workflow.defaultFastMode,\n injectSkills: workflow.skillInjection?.enabled ?? false,\n };\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IGitHubRepositoryService } from '@shepai/core/application/ports/output/services/github-repository-service.interface';\n\n/** Permissions that grant direct push access to a repository. */\nconst PUSH_PERMISSIONS = new Set(['ADMIN', 'MAINTAIN', 'WRITE']);\n\nexport async function getViewerPermission(repoPath: string): Promise<{ canPushDirectly: boolean }> {\n try {\n const service = resolve<IGitHubRepositoryService>('IGitHubRepositoryService');\n const permission = await service.getViewerPermission(repoPath);\n return { canPushDirectly: PUSH_PERMISSIONS.has(permission) };\n } catch {\n return { canPushDirectly: false };\n }\n}\n","export {pickFolder as '005795b9404f47f18715abda65314752aefc5fb8d5'} from 'ACTIONS_MODULE0'\nexport {getDefaultAgentAndModel as '00938d775c42cdd54bd0e44a7d4da5cfe944dfe93b'} from 'ACTIONS_MODULE1'\nexport {getAllAgentModels as '005cb4c82d2d3466deabb307d24d6ed8436d67544f'} from 'ACTIONS_MODULE2'\nexport {checkAllAgentsStatus as '00d01781e65ac3d3a4afd541463d639fa5f0769040'} from 'ACTIONS_MODULE3'\nexport {updateAgentAndModel as '604457fce11c9b3dbf6b9522d5c4f7495770f0e22f'} from 'ACTIONS_MODULE4'\nexport {globalSearch as '403a7efb89ddbcbfbd2d1aad796b93856de0c17c18'} from 'ACTIONS_MODULE5'\nexport {listGitHubRepositories as '4088569ab6e6a5fe2e71ba0ac2cd3856c7cb36609a'} from 'ACTIONS_MODULE6'\nexport {listGitHubOrganizations as '0022cadc32a7a5f3ed643a86a65eecdf0738f33dd0'} from 'ACTIONS_MODULE7'\nexport {importGitHubRepository as '40ac687ce7283fa0b54dabe2f4ccaad99a6ce9b438'} from 'ACTIONS_MODULE8'\nexport {deployFeature as '4049262c2a16b5cf71d99252d50445b8d1eb2af28f'} from 'ACTIONS_MODULE9'\nexport {deployRepository as '4020fd8b041ccb49d33f20186a34e5f7236a2c63de'} from 'ACTIONS_MODULE10'\nexport {deployApplication as '40f700cd4c7d576c044b8ebb8f0016050e58325b42'} from 'ACTIONS_MODULE11'\nexport {stopDeployment as '40c18317fe037650f1affa6602054914227bba4f36'} from 'ACTIONS_MODULE12'\nexport {getDeploymentStatus as '4059b4307390b3c1543b98cbc280624be22eef4d39'} from 'ACTIONS_MODULE13'\nexport {openIde as '40566073d295426a1ffd9e73141a98e1e6d63f2e78'} from 'ACTIONS_MODULE14'\nexport {openShell as '403096a8dae140b85b54ee8fea0bd8ec34e1661117'} from 'ACTIONS_MODULE15'\nexport {openFolder as '4002b3abd5f24cadbf804abf04b21c13fc4f5500d6'} from 'ACTIONS_MODULE16'\nexport {syncRepository as '4066a9d8d0dda058531d65c2446ac6cb8ff154af11'} from 'ACTIONS_MODULE17'\nexport {getDeploymentLogs as '40b1961bb1ecdede5b8f4d91c3c85a98550016d124'} from 'ACTIONS_MODULE18'\nexport {createProjectAndFeature as '40d598a484e187624eab017da54f9731ce4f592c66'} from 'ACTIONS_MODULE19'\nexport {createApplication as '40645357a559aa008b8943a06f8811d680bd95e865'} from 'ACTIONS_MODULE20'\nexport {isAgentSetupComplete as '00933775e01860066430b96082381f264bbfe02a8d'} from 'ACTIONS_MODULE21'\nexport {checkAgentAuth as '0059f06e85af72df98fa4b4c4016d572df2234f9f5'} from 'ACTIONS_MODULE22'\nexport {checkToolStatus as '006e51768eb29ea850e57f0ecc5420a82104617695'} from 'ACTIONS_MODULE23'\nexport {createProjectFolder as '40bcba328c605961eb6f11ed41067f6fc3c0095327'} from 'ACTIONS_MODULE24'\nexport {archiveFeature as '40452ebbb203a93524b9edc2238f64602b22073187'} from 'ACTIONS_MODULE25'\nexport {deleteFeature as '789a2e6dc111efa3fbfeb0a4a5655ec83e1a2812ac'} from 'ACTIONS_MODULE26'\nexport {resumeFeature as '40fc13f8f74c86b1ded3fe4170f2818cf98024de0f'} from 'ACTIONS_MODULE27'\nexport {startFeature as '40a43a48767caedd34e790ac2e54ba9fd7ada14238'} from 'ACTIONS_MODULE28'\nexport {stopFeature as '401c8a9885b4d22bb353804e800938e62a251039d9'} from 'ACTIONS_MODULE29'\nexport {unarchiveFeature as '40c52ee83193cb498f7589027bff41fba1c5fc6a08'} from 'ACTIONS_MODULE30'\nexport {addRepository as '403258509228eaa2958e23dc4d326c05a2e84b3099'} from 'ACTIONS_MODULE31'\nexport {deleteRepository as '60a6f0beec5cd17a71626e3a079643390379a2f73f'} from 'ACTIONS_MODULE32'\nexport {deleteApplication as '40ee0dce4d739915bb12ef0b956193880235b9a565'} from 'ACTIONS_MODULE33'\nexport {getFeatureMetadata as '4063bd26add460c56d1bd55d8619d98cdb46146e17'} from 'ACTIONS_MODULE34'\nexport {getWorkflowDefaults as '00f4c0a8e488dc116fdbd006e1a630f7aec089f47e'} from 'ACTIONS_MODULE35'\nexport {getViewerPermission as '406463b34c09cb208d035711c634444f32072f573f'} from 'ACTIONS_MODULE36'\nexport {createFeature as '404c5c9797c8357ba95e33741387c8f8be645162ac'} from 'ACTIONS_MODULE37'\nexport {getViewerPermission as '406463b34c09cb208d035711c634444f32072f573f'} from 'ACTIONS_MODULE36'\n"],"names":[],"mappings":"0DAEA,EAAA,EAAA,CAAA,CAAA,QAGO,eAAe,EAAkB,CAAU,EAChD,GAAI,CAAC,GAAI,OACP,CADe,KACR,CAAE,MAAO,4BAA6B,EAG/C,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAO,AAAP,EAAkC,4BAElD,OADA,MAAM,EAAQ,OAAO,CAAC,GACf,CAAC,CACV,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,MADO,CACA,YADiB,MAAQ,EAAM,OAAO,CAAG,8BACjC,CAC1B,CACF,2CAbsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,kFCHtB,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,sBAMA,IAAM,EAAqF,CACzF,OAAQ,CAAE,IAAK,OAAQ,KAAM,AAAC,GAAM,CAAC,EAAE,AAAC,EACxC,MAAO,CAAE,IAAK,WAAY,KAAM,AAAC,GAAM,CAAC,EAAG,AAAD,EAC1C,MAAO,CAAE,IAAK,WAAY,KAAM,AAAC,GAAM,CAAC,EAAE,AAAC,CAC7C,EAEO,eAAe,EACpB,CAAsB,EAEtB,GAAI,CAAC,GAAkB,CAAC,CAAA,EAAA,EAAA,UAAA,AAAU,EAAC,GACjC,MAAO,CAAE,OADyC,CAChC,GAAO,MAAO,yCAA0C,EAG5E,GAAI,CACF,GAAI,CAAC,CAAA,EAAA,EAAA,UAAU,AAAV,EAAW,GACd,MAAO,CAAE,OADsB,EACb,EAAO,MAAO,qBAAsB,EAGxD,IAAM,EAAQ,CAAe,CAAC,CAAA,EAAA,EAAA,QAAA,AAAQ,IAAG,CACzC,GAAI,CAAC,EACH,KADU,CACH,CACL,SAAS,EACT,MAAO,CAAC,sBAAsB,EAAE,CAAA,EAAA,EAAA,QAAQ,AAAR,IAAQ,CAAI,AAC9C,EAKF,IAAM,EAAa,CAAA,EAAA,EAAA,SAAA,AAAS,EAAC,GAEvB,EAAQ,CAAA,EAAA,EAAA,KAAA,AAAK,EAAC,EAAM,GAAG,CAAE,EAAM,IAAI,CAAC,GAAa,CACrD,UAAU,EACV,MAAO,QACT,GAIA,OAHA,EAAM,EAAE,CAAC,QAAS,SAAM,GACxB,EAAM,KAAK,EADyB,CAG7B,CAAE,SAAS,EAAM,KAAM,CAAe,CAC/C,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,SAAS,AANgE,EAMzD,MADT,CACgB,YADC,MAAQ,EAAM,OAAO,CAAG,uBACjB,CAC1C,CACF,iCApCsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,6GCftB,EAAA,EAAA,CAAA,CAAA,sBAGO,eAAe,EACpB,CAAoB,EAEpB,GAAI,CAAC,GAAc,OACjB,CADyB,KAClB,CAAE,SAAS,EAAO,MAAO,2BAA4B,EAG9D,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAA4B,6BAEnD,OADA,MAAM,EAAQ,OAAO,CAAC,GACf,CAAE,QAAS,EAAK,CACzB,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,SAAS,EAAO,MADT,CACgB,YADC,MAAQ,EAAM,OAAO,CAAG,2BACjB,CAC1C,CACF,iCAfsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,0CCHtB,IAAA,EAAA,EAAA,CAAA,CAAA,QAMO,eAAe,IACpB,GAAI,CACF,MAAO,CAAA,EAAA,EAAA,WAAA,AAAW,IAAG,kBAAkB,AACzC,CAAE,KAAM,CACN,OAAO,CACT,CACF,CCmBO,eAAe,IAEpB,MADgB,AACT,CADS,EAAA,EAAA,OAAA,AAAO,EAAwB,yBAChC,OAAO,EACxB,iCD5BsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,iFCyBA,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,2CC/BtB,IAAA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QAkBA,SAAS,EACP,CAAe,CACf,CAAc,EAEd,OAAO,IAAI,QAAQ,AAAC,IAClB,GAAI,CACF,IAAM,EAAO,EAAA,UAAU,CAAG,CAAE,QAAS,IAAM,aAAa,CAAK,EAAI,CAAE,QAAS,GAAK,EACjF,CAAA,EAAA,EAAA,QAAA,AAAQ,EAAC,EAAS,EAAM,EAAM,CAAC,EAAO,KACpC,GAAI,EAAO,YACT,EAAQ,CAAE,WAAW,EAAO,QAAS,IAAK,GAI5C,IAAM,EAAQ,EAAO,KAAK,CAAC,wBAC3B,EAAQ,CAAE,WAAW,EAAM,QAAS,GAAO,CAAC,EAAE,EAAI,IAAK,EACzD,EACF,CAAE,KAAM,CACN,EAAQ,CAAE,WAAW,EAAO,QAAS,IAAK,EAC5C,CACF,EACF,CAEO,eAAe,IAEpB,GAAM,CAAC,EAAY,EAAW,EAAM,CAAG,MAAM,QAAQ,GAAG,CAAC,CACvD,EAAW,MAAO,CAAC,YAAY,EAC/B,EAAW,KAAM,CAAC,YAAY,EAC9B,CAAC,UACC,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAAmB,oBAC1C,OAAO,MAAM,EAAQ,OAAO,EAC9B,CAAE,KAAM,CACN,MAAO,EAAE,AACX,EACF,CAAC,GACF,EAEK,EAAU,EAAM,IAAI,CAAC,AAAC,GAAe,QAAT,EAAE,EAAE,EAChC,EAAS,EAAM,IAAI,CAAC,AAAC,GAAM,AAAS,SAAP,EAAE,EAErC,MAAO,CACL,IAAK,CACH,GAAG,CAAU,CACb,eAAgB,GAAS,gBAAkB,KAC3C,WAAY,GAAS,SAAW,qBAClC,EACA,GAAI,CACF,GAAG,CAAS,CACZ,eAAgB,GAAQ,gBAAkB,KAC1C,WAAY,GAAQ,SAAW,wBACjC,CACF,CACF,CChEO,eAAe,EACpB,CAAoB,CACpB,CAAuC,EAEvC,GAAI,CAAC,GAAc,OACjB,CADyB,KAClB,CAAE,SAAS,EAAO,MAAO,gBAAiB,EAGnD,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAA0B,2BAEjD,OADA,MAAM,EAAQ,OAAO,CAAC,EAAc,CAAE,eAAgB,GAAS,kBAAmB,CAAK,GAChF,CAAE,SAAS,CAAK,CACzB,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,SAAS,EAAO,MADT,CACgB,YADC,MAAQ,EAAM,OAAO,CAAG,6BACjB,CAC1C,CACF,CCfO,eAAe,EACpB,CAAiB,EAEjB,IAAM,EAAc,CAAA,EAAA,EAAA,OAAA,AAAO,EAAqB,sBAC1C,EAAU,MAAM,EAAY,QAAQ,CAAC,UAC3C,AAAK,EACE,CAAE,CADL,IACW,CADD,CACS,IAAI,CAAE,YAAa,EAAQ,WAAW,AAAC,EADzC,IAEvB,iCF0BsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,4EClCA,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,6ECCA,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,0FCRtB,EAAA,EAAA,CAAA,CAAA,QAiBO,eAAe,IAEpB,GAAM,UAAE,CAAQ,CAAE,CADD,CAAA,CACI,CADJ,EAAA,WAAW,AAAX,IAGjB,MAAO,CACL,cAAe,CACb,SAAU,EAAS,oBAAoB,CAAC,QAAQ,CAChD,UAAW,EAAS,oBAAoB,CAAC,SAAS,CAClD,WAAY,EAAS,oBAAoB,CAAC,UAAU,AACtD,EACA,KAAM,EAAS,oBAAoB,CAAC,4BAA4B,CAChE,OAAQ,EAAS,8BAA8B,CAC/C,eAAgB,EAAS,cAAc,CACvC,eAAgB,EAAS,cAAc,CACvC,eAAgB,EAAS,cAAc,CACvC,KAAM,EAAS,eAAe,CAC9B,aAAc,EAAS,cAAc,EAAE,UAAW,CACpD,CACF,2CAlBsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,oFCjBtB,EAAA,EAAA,CAAA,CAAA,sBAIA,IAAM,EAAmB,IAAI,IAAI,CAAC,QAAS,WAAY,QAAQ,EAExD,eAAe,EAAoB,CAAgB,EACxD,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAA2B,4BAC5C,EAAa,MAAM,EAAQ,mBAAmB,CAAC,GACrD,MAAO,CAAE,gBAAiB,EAAiB,GAAG,CAAC,EAAY,CAC7D,CAAE,KAAM,CACN,MAAO,CAAE,iBAAiB,CAAM,CAClC,CACF,iCARsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,kECRtB,IAAA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA"}
1
+ {"version":3,"sources":["../../../../../../../src/presentation/web/app/actions/delete-application.ts","../../../../../../../src/presentation/web/app/actions/open-folder.ts","../../../../../../../src/presentation/web/app/actions/sync-repository.ts","../../../../../../../src/presentation/web/app/actions/agent-setup-flag.ts","../../../../../../../src/presentation/web/app/actions/check-agent-auth.ts","../../../../../../../src/presentation/web/app/actions/check-tool-status.ts","../../../../../../../src/presentation/web/app/actions/delete-repository.ts","../../../../../../../src/presentation/web/app/actions/get-feature-metadata.ts","../../../../../../../src/presentation/web/app/actions/get-workflow-defaults.ts","../../../../../../../src/presentation/web/app/actions/get-viewer-permission.ts","../../../../../../../src/presentation/web/.next-internal/server/app/%28dashboard%29/%40drawer/create/page/actions.js%20%28server%20actions%20loader%29"],"sourcesContent":["'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { DeleteApplicationUseCase } from '@shepai/core/application/use-cases/applications/delete-application.use-case';\n\nexport async function deleteApplication(id: string): Promise<{ error?: string }> {\n if (!id?.trim()) {\n return { error: 'Application ID is required' };\n }\n\n try {\n const useCase = resolve<DeleteApplicationUseCase>('DeleteApplicationUseCase');\n await useCase.execute(id);\n return {};\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to delete application';\n return { error: message };\n }\n}\n","'use server';\n\nimport { existsSync } from 'node:fs';\nimport { platform } from 'node:os';\nimport { isAbsolute, normalize } from 'node:path';\nimport { spawn } from 'node:child_process';\n\n// Use a record lookup instead of if/else to prevent the bundler from\n// tree-shaking platform branches at build time. Turbopack evaluates\n// os.platform() during the build and dead-code-eliminates unused branches,\n// baking in the CI platform (linux) and breaking macOS/Windows installs.\nconst FOLDER_COMMANDS: Record<string, { cmd: string; args: (path: string) => string[] }> = {\n darwin: { cmd: 'open', args: (p) => [p] },\n linux: { cmd: 'xdg-open', args: (p) => [p] },\n win32: { cmd: 'explorer', args: (p) => [p] },\n};\n\nexport async function openFolder(\n repositoryPath: string\n): Promise<{ success: boolean; error?: string; path?: string }> {\n if (!repositoryPath || !isAbsolute(repositoryPath)) {\n return { success: false, error: 'repositoryPath must be an absolute path' };\n }\n\n try {\n if (!existsSync(repositoryPath)) {\n return { success: false, error: 'Directory not found' };\n }\n\n const entry = FOLDER_COMMANDS[platform()];\n if (!entry) {\n return {\n success: false,\n error: `Unsupported platform: ${platform()}`,\n };\n }\n\n // Normalize to platform-native separators — explorer.exe on Windows\n // does not understand forward-slash paths and falls back to Documents.\n const nativePath = normalize(repositoryPath);\n\n const child = spawn(entry.cmd, entry.args(nativePath), {\n detached: true,\n stdio: 'ignore',\n });\n child.on('error', () => undefined); // Prevent uncaught exception on spawn failure\n child.unref();\n\n return { success: true, path: repositoryPath };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to open folder';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { SyncRepositoryMainUseCase } from '@shepai/core/application/use-cases/repositories/sync-repository-main.use-case';\n\nexport async function syncRepository(\n repositoryId: string\n): Promise<{ success: boolean; error?: string }> {\n if (!repositoryId?.trim()) {\n return { success: false, error: 'Repository id is required' };\n }\n\n try {\n const useCase = resolve<SyncRepositoryMainUseCase>('SyncRepositoryMainUseCase');\n await useCase.execute(repositoryId);\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to sync repository';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { getSettings } from '@shepai/core/infrastructure/services/settings.service';\n\n/**\n * Check whether onboarding has been completed.\n * Delegates to the in-memory settings singleton (zero DB overhead).\n */\nexport async function isAgentSetupComplete(): Promise<boolean> {\n try {\n return getSettings().onboardingComplete;\n } catch {\n return false;\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { CheckAgentAuthUseCase } from '@shepai/core/application/use-cases/agents/check-agent-auth.use-case';\n\n/**\n * Result shape for the agent auth checklist on the onboarding empty state.\n * Matches CheckAgentAuthResult from the use case 1:1 — kept locally so the\n * web type stays serializable through the Server Actions boundary.\n */\nexport interface AgentAuthStatus {\n agentType: string;\n /** Whether the CLI tool binary is installed */\n installed: boolean;\n /** Whether credentials / auth appear valid */\n authenticated: boolean;\n /** Human-readable label for the agent */\n label: string;\n /** CLI binary name (e.g. \"claude\", \"gemini\") */\n binaryName: string | null;\n /** Shell command to install the tool (e.g. \"npm install -g @anthropic-ai/claude-code\") */\n installCommand: string | null;\n /** Instructions to authenticate if not authenticated */\n authCommand: string | null;\n}\n\n/**\n * Thin server-action wrapper around CheckAgentAuthUseCase. All agent-type\n * mapping, tool lookup, and platform credential detection live in:\n *\n * packages/core/src/application/use-cases/agents/check-agent-auth.use-case.ts\n * packages/core/src/infrastructure/services/agent-auth-detector/platform-agent-auth-detector.service.ts\n */\nexport async function checkAgentAuth(): Promise<AgentAuthStatus> {\n const useCase = resolve<CheckAgentAuthUseCase>('CheckAgentAuthUseCase');\n return useCase.execute();\n}\n","'use server';\n\nimport { execFile } from 'node:child_process';\nimport { IS_WINDOWS } from '@shepai/core/infrastructure/platform';\nimport { resolve } from '@/lib/server-container';\nimport type { ListToolsUseCase } from '@shepai/core/application/use-cases/tools/list-tools.use-case';\n\nexport interface ToolStatusEntry {\n installed: boolean;\n version: string | null;\n /** Platform-specific install command from tool JSON metadata */\n installCommand: string | null;\n /** Documentation/website URL */\n installUrl: string | null;\n}\n\nexport interface ToolStatusResult {\n git: ToolStatusEntry;\n gh: ToolStatusEntry;\n}\n\nfunction getVersion(\n command: string,\n args: string[]\n): Promise<{ installed: boolean; version: string | null }> {\n return new Promise((resolve) => {\n try {\n const opts = IS_WINDOWS ? { timeout: 5000, windowsHide: true } : { timeout: 5000 };\n execFile(command, args, opts, (error, stdout) => {\n if (error) {\n resolve({ installed: false, version: null });\n return;\n }\n // Extract version number from output like \"git version 2.43.0\" or \"gh version 2.40.1\"\n const match = stdout.match(/(\\d+\\.\\d+(?:\\.\\d+)?)/);\n resolve({ installed: true, version: match?.[1] ?? null });\n });\n } catch {\n resolve({ installed: false, version: null });\n }\n });\n}\n\nexport async function checkToolStatus(): Promise<ToolStatusResult> {\n // Run version checks and tool metadata lookup in parallel\n const [gitVersion, ghVersion, tools] = await Promise.all([\n getVersion('git', ['--version']),\n getVersion('gh', ['--version']),\n (async () => {\n try {\n const useCase = resolve<ListToolsUseCase>('ListToolsUseCase');\n return await useCase.execute();\n } catch {\n return [];\n }\n })(),\n ]);\n\n const gitTool = tools.find((t) => t.id === 'git');\n const ghTool = tools.find((t) => t.id === 'gh');\n\n return {\n git: {\n ...gitVersion,\n installCommand: gitTool?.installCommand ?? null,\n installUrl: gitTool?.website ?? 'https://git-scm.com',\n },\n gh: {\n ...ghVersion,\n installCommand: ghTool?.installCommand ?? null,\n installUrl: ghTool?.website ?? 'https://cli.github.com',\n },\n };\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { DeleteRepositoryUseCase } from '@shepai/core/application/use-cases/repositories/delete-repository.use-case';\n\nexport interface DeleteRepositoryActionOptions {\n deleteFromDisk?: boolean;\n}\n\nexport async function deleteRepository(\n repositoryId: string,\n options?: DeleteRepositoryActionOptions\n): Promise<{ success: boolean; error?: string }> {\n if (!repositoryId?.trim()) {\n return { success: false, error: 'id is required' };\n }\n\n try {\n const useCase = resolve<DeleteRepositoryUseCase>('DeleteRepositoryUseCase');\n await useCase.execute(repositoryId, { deleteFromDisk: options?.deleteFromDisk === true });\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to delete repository';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IFeatureRepository } from '@shepai/core/application/ports/output/repositories/feature-repository.interface';\n\n/**\n * Lightweight server action to fetch a single feature's name and description.\n * Used by the SSE effect to update node metadata after AI metadata generation\n * without a full graph reconcile (which can overwrite SSE-driven state).\n */\nexport async function getFeatureMetadata(\n featureId: string\n): Promise<{ name: string; description: string } | null> {\n const featureRepo = resolve<IFeatureRepository>('IFeatureRepository');\n const feature = await featureRepo.findById(featureId);\n if (!feature) return null;\n return { name: feature.name, description: feature.description };\n}\n","'use server';\n\nimport { getSettings } from '@shepai/core/infrastructure/services/settings.service';\n\nexport interface WorkflowDefaults {\n approvalGates: {\n allowPrd: boolean;\n allowPlan: boolean;\n allowMerge: boolean;\n };\n push: boolean;\n openPr: boolean;\n ciWatchEnabled: boolean;\n enableEvidence: boolean;\n commitEvidence: boolean;\n fast: boolean;\n injectSkills: boolean;\n}\n\nexport async function getWorkflowDefaults(): Promise<WorkflowDefaults> {\n const settings = getSettings();\n const { workflow } = settings;\n\n return {\n approvalGates: {\n allowPrd: workflow.approvalGateDefaults.allowPrd,\n allowPlan: workflow.approvalGateDefaults.allowPlan,\n allowMerge: workflow.approvalGateDefaults.allowMerge,\n },\n push: workflow.approvalGateDefaults.pushOnImplementationComplete,\n openPr: workflow.openPrOnImplementationComplete,\n ciWatchEnabled: workflow.ciWatchEnabled,\n enableEvidence: workflow.enableEvidence,\n commitEvidence: workflow.commitEvidence,\n fast: workflow.defaultFastMode,\n injectSkills: workflow.skillInjection?.enabled ?? false,\n };\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { IGitHubRepositoryService } from '@shepai/core/application/ports/output/services/github-repository-service.interface';\n\n/** Permissions that grant direct push access to a repository. */\nconst PUSH_PERMISSIONS = new Set(['ADMIN', 'MAINTAIN', 'WRITE']);\n\nexport async function getViewerPermission(repoPath: string): Promise<{ canPushDirectly: boolean }> {\n try {\n const service = resolve<IGitHubRepositoryService>('IGitHubRepositoryService');\n const permission = await service.getViewerPermission(repoPath);\n return { canPushDirectly: PUSH_PERMISSIONS.has(permission) };\n } catch {\n return { canPushDirectly: false };\n }\n}\n","export {pickFolder as '0090f855082c32ca62e2570d7d1ab2962ce337e2fa'} from 'ACTIONS_MODULE0'\nexport {getDefaultAgentAndModel as '0012d55443d3ecd4371eeb3c2f54845ed7051ec3e4'} from 'ACTIONS_MODULE1'\nexport {getAllAgentModels as '00d173d22344bd77e0101fc0f79221379fcebccdd3'} from 'ACTIONS_MODULE2'\nexport {checkAllAgentsStatus as '0047f63775193a38157ed541c90ceb8ec71c6b1dee'} from 'ACTIONS_MODULE3'\nexport {updateAgentAndModel as '6000b91246c62b8ea2f123b9167538880bea50e6af'} from 'ACTIONS_MODULE4'\nexport {globalSearch as '40336205a28ad800c54cfb8be2c4220b1b1c702c0c'} from 'ACTIONS_MODULE5'\nexport {listGitHubRepositories as '401c69fd0ea332b5338d2681374f58f26450e1d213'} from 'ACTIONS_MODULE6'\nexport {listGitHubOrganizations as '002333039f4600b7fac2e032dbbff5dce622bc32c4'} from 'ACTIONS_MODULE7'\nexport {importGitHubRepository as '40d466ff9789889567ff0b65d9b5c87f7f7b11f943'} from 'ACTIONS_MODULE8'\nexport {deployFeature as '4047687dae2f619d07071416cc3f3c821fc704d1e6'} from 'ACTIONS_MODULE9'\nexport {deployRepository as '40a35502b2865b3669eb7fa2499a87d447aba8ab06'} from 'ACTIONS_MODULE10'\nexport {deployApplication as '402dbd5f92240a716fd7d1e11cee7c2ef093a5a8f8'} from 'ACTIONS_MODULE11'\nexport {stopDeployment as '4019e0d1d95deabc4b7d5d89946429f6fdf95b2e5d'} from 'ACTIONS_MODULE12'\nexport {getDeploymentStatus as '406e1923fad46a89b9f216334729faed4449552eec'} from 'ACTIONS_MODULE13'\nexport {openIde as '405fed07dcfbeab7dfc818727ab1f2c409e2289188'} from 'ACTIONS_MODULE14'\nexport {openShell as '4097f8b4782d629828d53bd1a714d124f4f8e65757'} from 'ACTIONS_MODULE15'\nexport {openFolder as '408cf3e917c9b04cceb9fc776366d15370238d6727'} from 'ACTIONS_MODULE16'\nexport {syncRepository as '402e612bff7a86f73c6fc6523a68febe611c5e24bf'} from 'ACTIONS_MODULE17'\nexport {getDeploymentLogs as '4050968664ffebcc6b15e3a32490af30ff07757e2b'} from 'ACTIONS_MODULE18'\nexport {createProjectAndFeature as '4065491a97be2a50102b694855c38043cb50fd5c4a'} from 'ACTIONS_MODULE19'\nexport {createApplication as '40815776e7a6bda2e6d29f697d71e59aae910c82d1'} from 'ACTIONS_MODULE20'\nexport {isAgentSetupComplete as '00a8ddbf51d2a807792f55a087d2ec675f33a25600'} from 'ACTIONS_MODULE21'\nexport {checkAgentAuth as '003bc6e4df3f0b971695f493e3b0545a6385402705'} from 'ACTIONS_MODULE22'\nexport {checkToolStatus as '00854fcdec2aa41cd7135223de9cf9fef7a5a5a5a2'} from 'ACTIONS_MODULE23'\nexport {createProjectFolder as '409f3d622d9b3706d5f170602d19cc293aa8a29b80'} from 'ACTIONS_MODULE24'\nexport {archiveFeature as '40d1d116caf904c2efac53381ef6e5d32250a4a042'} from 'ACTIONS_MODULE25'\nexport {deleteFeature as '7834489596b2b14c929806b48ffff590a12854d7de'} from 'ACTIONS_MODULE26'\nexport {resumeFeature as '401e500b225df13f8eea0d531a2892632e03a8f4d6'} from 'ACTIONS_MODULE27'\nexport {startFeature as '40e1ba4edfdb370119a99845605fab8efc198dd600'} from 'ACTIONS_MODULE28'\nexport {stopFeature as '40cbc69e2b4838fe70182e22359322508c94c1be69'} from 'ACTIONS_MODULE29'\nexport {unarchiveFeature as '4092c0bc0d4f943525dd619742641d13d14d68660e'} from 'ACTIONS_MODULE30'\nexport {addRepository as '40c5c632eba38d44e53c287ca35739c52a2f7493be'} from 'ACTIONS_MODULE31'\nexport {deleteRepository as '60dccc1641605f3092b3586191b756d57c6681f013'} from 'ACTIONS_MODULE32'\nexport {deleteApplication as '40d920f3d98dbcb907e8b9309df6d6f5301fe517e8'} from 'ACTIONS_MODULE33'\nexport {getFeatureMetadata as '40ae52e21e520d4a2efb02c49daa6e16d7d3a9e918'} from 'ACTIONS_MODULE34'\nexport {getWorkflowDefaults as '0030fada0fa977d66a6afba7f908bffda827a13a30'} from 'ACTIONS_MODULE35'\nexport {getViewerPermission as '403a8b7843d90b87e48b67f0e6a9682da2cd2e9c2e'} from 'ACTIONS_MODULE36'\nexport {createFeature as '40bb53c65e93da6c62122e7bf9cd0b925701449795'} from 'ACTIONS_MODULE37'\nexport {getViewerPermission as '403a8b7843d90b87e48b67f0e6a9682da2cd2e9c2e'} from 'ACTIONS_MODULE36'\n"],"names":[],"mappings":"0DAEA,EAAA,EAAA,CAAA,CAAA,QAGO,eAAe,EAAkB,CAAU,EAChD,GAAI,CAAC,GAAI,OACP,CADe,KACR,CAAE,MAAO,4BAA6B,EAG/C,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAO,AAAP,EAAkC,4BAElD,OADA,MAAM,EAAQ,OAAO,CAAC,GACf,CAAC,CACV,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,MADO,CACA,YADiB,MAAQ,EAAM,OAAO,CAAG,8BACjC,CAC1B,CACF,2CAbsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,kFCHtB,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,sBAMA,IAAM,EAAqF,CACzF,OAAQ,CAAE,IAAK,OAAQ,KAAM,AAAC,GAAM,CAAC,EAAE,AAAC,EACxC,MAAO,CAAE,IAAK,WAAY,KAAM,AAAC,GAAM,CAAC,EAAG,AAAD,EAC1C,MAAO,CAAE,IAAK,WAAY,KAAM,AAAC,GAAM,CAAC,EAAE,AAAC,CAC7C,EAEO,eAAe,EACpB,CAAsB,EAEtB,GAAI,CAAC,GAAkB,CAAC,CAAA,EAAA,EAAA,UAAA,AAAU,EAAC,GACjC,MAAO,CAAE,OADyC,CAChC,GAAO,MAAO,yCAA0C,EAG5E,GAAI,CACF,GAAI,CAAC,CAAA,EAAA,EAAA,UAAU,AAAV,EAAW,GACd,MAAO,CAAE,OADsB,EACb,EAAO,MAAO,qBAAsB,EAGxD,IAAM,EAAQ,CAAe,CAAC,CAAA,EAAA,EAAA,QAAA,AAAQ,IAAG,CACzC,GAAI,CAAC,EACH,KADU,CACH,CACL,SAAS,EACT,MAAO,CAAC,sBAAsB,EAAE,CAAA,EAAA,EAAA,QAAQ,AAAR,IAAQ,CAAI,AAC9C,EAKF,IAAM,EAAa,CAAA,EAAA,EAAA,SAAA,AAAS,EAAC,GAEvB,EAAQ,CAAA,EAAA,EAAA,KAAA,AAAK,EAAC,EAAM,GAAG,CAAE,EAAM,IAAI,CAAC,GAAa,CACrD,UAAU,EACV,MAAO,QACT,GAIA,OAHA,EAAM,EAAE,CAAC,QAAS,SAAM,GACxB,EAAM,KAAK,EADyB,CAG7B,CAAE,SAAS,EAAM,KAAM,CAAe,CAC/C,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,SAAS,AANgE,EAMzD,MADT,CACgB,YADC,MAAQ,EAAM,OAAO,CAAG,uBACjB,CAC1C,CACF,iCApCsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,6GCftB,EAAA,EAAA,CAAA,CAAA,sBAGO,eAAe,EACpB,CAAoB,EAEpB,GAAI,CAAC,GAAc,OACjB,CADyB,KAClB,CAAE,SAAS,EAAO,MAAO,2BAA4B,EAG9D,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAA4B,6BAEnD,OADA,MAAM,EAAQ,OAAO,CAAC,GACf,CAAE,QAAS,EAAK,CACzB,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,SAAS,EAAO,MADT,CACgB,YADC,MAAQ,EAAM,OAAO,CAAG,2BACjB,CAC1C,CACF,iCAfsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,0CCHtB,IAAA,EAAA,EAAA,CAAA,CAAA,QAMO,eAAe,IACpB,GAAI,CACF,MAAO,CAAA,EAAA,EAAA,WAAA,AAAW,IAAG,kBAAkB,AACzC,CAAE,KAAM,CACN,OAAO,CACT,CACF,CCmBO,eAAe,IAEpB,MADgB,AACT,CADS,EAAA,EAAA,OAAA,AAAO,EAAwB,yBAChC,OAAO,EACxB,iCD5BsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,iFCyBA,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,2CC/BtB,IAAA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QAkBA,SAAS,EACP,CAAe,CACf,CAAc,EAEd,OAAO,IAAI,QAAQ,AAAC,IAClB,GAAI,CACF,IAAM,EAAO,EAAA,UAAU,CAAG,CAAE,QAAS,IAAM,aAAa,CAAK,EAAI,CAAE,QAAS,GAAK,EACjF,CAAA,EAAA,EAAA,QAAA,AAAQ,EAAC,EAAS,EAAM,EAAM,CAAC,EAAO,KACpC,GAAI,EAAO,YACT,EAAQ,CAAE,WAAW,EAAO,QAAS,IAAK,GAI5C,IAAM,EAAQ,EAAO,KAAK,CAAC,wBAC3B,EAAQ,CAAE,WAAW,EAAM,QAAS,GAAO,CAAC,EAAE,EAAI,IAAK,EACzD,EACF,CAAE,KAAM,CACN,EAAQ,CAAE,WAAW,EAAO,QAAS,IAAK,EAC5C,CACF,EACF,CAEO,eAAe,IAEpB,GAAM,CAAC,EAAY,EAAW,EAAM,CAAG,MAAM,QAAQ,GAAG,CAAC,CACvD,EAAW,MAAO,CAAC,YAAY,EAC/B,EAAW,KAAM,CAAC,YAAY,EAC9B,CAAC,UACC,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAAmB,oBAC1C,OAAO,MAAM,EAAQ,OAAO,EAC9B,CAAE,KAAM,CACN,MAAO,EAAE,AACX,EACF,CAAC,GACF,EAEK,EAAU,EAAM,IAAI,CAAC,AAAC,GAAe,QAAT,EAAE,EAAE,EAChC,EAAS,EAAM,IAAI,CAAC,AAAC,GAAM,AAAS,SAAP,EAAE,EAErC,MAAO,CACL,IAAK,CACH,GAAG,CAAU,CACb,eAAgB,GAAS,gBAAkB,KAC3C,WAAY,GAAS,SAAW,qBAClC,EACA,GAAI,CACF,GAAG,CAAS,CACZ,eAAgB,GAAQ,gBAAkB,KAC1C,WAAY,GAAQ,SAAW,wBACjC,CACF,CACF,CChEO,eAAe,EACpB,CAAoB,CACpB,CAAuC,EAEvC,GAAI,CAAC,GAAc,OACjB,CADyB,KAClB,CAAE,SAAS,EAAO,MAAO,gBAAiB,EAGnD,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAA0B,2BAEjD,OADA,MAAM,EAAQ,OAAO,CAAC,EAAc,CAAE,eAAgB,GAAS,kBAAmB,CAAK,GAChF,CAAE,SAAS,CAAK,CACzB,CAAE,MAAO,EAAgB,CAEvB,MAAO,CAAE,SAAS,EAAO,MADT,CACgB,YADC,MAAQ,EAAM,OAAO,CAAG,6BACjB,CAC1C,CACF,CCfO,eAAe,EACpB,CAAiB,EAEjB,IAAM,EAAc,CAAA,EAAA,EAAA,OAAA,AAAO,EAAqB,sBAC1C,EAAU,MAAM,EAAY,QAAQ,CAAC,UAC3C,AAAK,EACE,CAAE,CADL,IACW,CADD,CACS,IAAI,CAAE,YAAa,EAAQ,WAAW,AAAC,EADzC,IAEvB,iCF0BsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,4EClCA,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,6ECCA,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,0FCRtB,EAAA,EAAA,CAAA,CAAA,QAiBO,eAAe,IAEpB,GAAM,UAAE,CAAQ,CAAE,CADD,CAAA,CACI,CADJ,EAAA,WAAW,AAAX,IAGjB,MAAO,CACL,cAAe,CACb,SAAU,EAAS,oBAAoB,CAAC,QAAQ,CAChD,UAAW,EAAS,oBAAoB,CAAC,SAAS,CAClD,WAAY,EAAS,oBAAoB,CAAC,UAAU,AACtD,EACA,KAAM,EAAS,oBAAoB,CAAC,4BAA4B,CAChE,OAAQ,EAAS,8BAA8B,CAC/C,eAAgB,EAAS,cAAc,CACvC,eAAgB,EAAS,cAAc,CACvC,eAAgB,EAAS,cAAc,CACvC,KAAM,EAAS,eAAe,CAC9B,aAAc,EAAS,cAAc,EAAE,UAAW,CACpD,CACF,2CAlBsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,oFCjBtB,EAAA,EAAA,CAAA,CAAA,sBAIA,IAAM,EAAmB,IAAI,IAAI,CAAC,QAAS,WAAY,QAAQ,EAExD,eAAe,EAAoB,CAAgB,EACxD,GAAI,CACF,IAAM,EAAU,CAAA,EAAA,EAAA,OAAA,AAAO,EAA2B,4BAC5C,EAAa,MAAM,EAAQ,mBAAmB,CAAC,GACrD,MAAO,CAAE,gBAAiB,EAAiB,GAAG,CAAC,EAAY,CAC7D,CAAE,KAAM,CACN,MAAO,CAAE,iBAAiB,CAAM,CAClC,CACF,iCARsB,IAAA,CAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,6CAAA,kECRtB,IAAA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA,QACA,EAAA,EAAA,CAAA,CAAA"}
@@ -1,3 +1,3 @@
1
- module.exports=[433841,46646,868378,268670,685321,a=>{"use strict";var b=a.i(237705),c=a.i(996380);let d=()=>void 0;function e(a){let b=!!process.env.DEBUG;return{info:b?(...b)=>console.info(a,...b):d,debug:b?(...b)=>console.debug(a,...b):d,warn:(...b)=>console.warn(a,...b),error:(...b)=>console.error(a,...b)}}var f=a.i(701904);let g=e("[deployFeature]");async function h(a){g.info(`called — featureId="${a}"`);try{let b=(0,c.resolve)("StartFeatureDeploymentUseCase"),d=await b.execute(a);return g.info(`start succeeded — state=${d.state}`),{success:!0,state:d.state}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy feature";return g.error(`error: ${a}`,b),{success:!1,error:a}}}(0,f.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"4049262c2a16b5cf71d99252d50445b8d1eb2af28f",null),a.s(["deployFeature",()=>h],433841);let i=e("[deployRepository]");async function j(a){i.info(`called — repositoryPath="${a}"`);try{let b=(0,c.resolve)("StartRepositoryDeploymentUseCase"),d=await b.execute(a);return i.info(`start succeeded — state=${d.state}`),{success:!0,state:d.state}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy repository";return i.error(`error: ${a}`,b),{success:!1,error:a}}}(0,f.ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"4020fd8b041ccb49d33f20186a34e5f7236a2c63de",null),a.s(["deployRepository",()=>j],46646);class k extends Error{applicationId;code;constructor(a){super(`Application ${a} not found`),this.applicationId=a,this.code="APPLICATION_NOT_FOUND",this.name="ApplicationNotFoundError",Object.setPrototypeOf(this,new.target.prototype)}}class l extends Error{applicationId;repositoryPath;code;constructor(a,b){super(`Repository path does not exist: ${b}`),this.applicationId=a,this.repositoryPath=b,this.code="APPLICATION_REPOSITORY_NOT_ON_DISK",this.name="ApplicationRepositoryNotOnDiskError",Object.setPrototypeOf(this,new.target.prototype)}}class m extends Error{repositoryPath;code;constructor(a){super("Cannot start a dev server for the repository Shep is running from"),this.repositoryPath=a,this.code="CANNOT_DEPLOY_SELF",this.name="CannotDeploySelfError",Object.setPrototypeOf(this,new.target.prototype)}}async function n(a){if(!a?.trim())return{success:!1,error:"applicationId is required"};try{let b=(0,c.resolve)("StartApplicationDeploymentUseCase"),d=await b.execute({applicationId:a});return{success:!0,state:d.state}}catch(b){if(b instanceof k)return{success:!1,error:`Application not found: ${a}`};if(b instanceof l)return{success:!1,error:`Repository path does not exist: ${b.repositoryPath}`};if(b instanceof m)return{success:!1,error:"Cannot start a dev server for the repository Shep is running from"};return{success:!1,error:b instanceof Error?b.message:"Failed to deploy application"}}}async function o(a){try{let b=(0,c.resolve)("StopDeploymentUseCase");return await b.execute(a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to stop deployment"}}}async function p(a){return(0,c.resolve)("GetDeploymentStatusUseCase").execute(a)}(0,f.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"40f700cd4c7d576c044b8ebb8f0016050e58325b42",null),a.s(["deployApplication",()=>n],868378),(0,f.ensureServerEntryExports)([o]),(0,b.registerServerReference)(o,"40c18317fe037650f1affa6602054914227bba4f36",null),a.s(["stopDeployment",()=>o],268670),(0,f.ensureServerEntryExports)([p]),(0,b.registerServerReference)(p,"4059b4307390b3c1543b98cbc280624be22eef4d39",null),a.s(["getDeploymentStatus",()=>p],685321)},794691,a=>{"use strict";var b=a.i(237705),c=a.i(996380);async function d(a){return a?.trim()?(0,c.resolve)("IDeploymentService").getLogs(a):null}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"40b1961bb1ecdede5b8f4d91c3c85a98550016d124",null),a.s(["getDeploymentLogs",()=>d])},958925,a=>{"use strict";var b=a.i(912513),c=a.i(889253),d=a.i(723504),e=a.i(408115),f=a.i(827900),g=a.i(673350),h=a.i(673101),i=a.i(654775),j=a.i(265324),k=a.i(794691),l=a.i(433841),m=a.i(46646),n=a.i(868378),o=a.i(268670),p=a.i(685321),q=a.i(237705),r=a.i(615704),s=a.i(996380),t=a.i(633244),u=a.i(701904);async function v(a){try{let b=(0,s.resolve)("LoadSettingsUseCase"),c=await b.execute(),d=c.workflow.skillInjection?.skills??[],e=d.filter(b=>b.name!==a);if(e.length===d.length)return{success:!1,error:`Skill "${a}" not found in configuration`};let f={...c,workflow:{...c.workflow,skillInjection:{enabled:c.workflow.skillInjection?.enabled??!1,skills:e}},updatedAt:new Date},g=(0,s.resolve)("UpdateSettingsUseCase");return await g.execute(f),(0,t.updateSettings)(f),(0,r.revalidatePath)("/skills"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to remove skill"}}}async function w(a){try{let b=(0,s.resolve)("LoadSettingsUseCase"),c=await b.execute(),d=c.workflow.skillInjection?.skills??[];if(d.some(b=>b.name===a.name))return{success:!1,error:`Skill "${a.name}" is already configured`};let e={...c,workflow:{...c.workflow,skillInjection:{enabled:c.workflow.skillInjection?.enabled??!0,skills:[...d,a]}},updatedAt:new Date},f=(0,s.resolve)("UpdateSettingsUseCase");return await f.execute(e),(0,t.updateSettings)(e),(0,r.revalidatePath)("/skills"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to add skill"}}}(0,u.ensureServerEntryExports)([v]),(0,q.registerServerReference)(v,"4036a4866c0807818ec42b202c5c6ab4f41d6674d8",null),(0,u.ensureServerEntryExports)([w]),(0,q.registerServerReference)(w,"40124330ea0942c979c26720e5af3ad0eb97f894e1",null),a.s([],408157),a.i(408157),a.s(["0022cadc32a7a5f3ed643a86a65eecdf0738f33dd0",()=>i.listGitHubOrganizations,"005795b9404f47f18715abda65314752aefc5fb8d5",()=>b.pickFolder,"005cb4c82d2d3466deabb307d24d6ed8436d67544f",()=>d.getAllAgentModels,"00938d775c42cdd54bd0e44a7d4da5cfe944dfe93b",()=>c.getDefaultAgentAndModel,"00d01781e65ac3d3a4afd541463d639fa5f0769040",()=>e.checkAllAgentsStatus,"40124330ea0942c979c26720e5af3ad0eb97f894e1",()=>w,"4020fd8b041ccb49d33f20186a34e5f7236a2c63de",()=>m.deployRepository,"4036a4866c0807818ec42b202c5c6ab4f41d6674d8",()=>v,"403a7efb89ddbcbfbd2d1aad796b93856de0c17c18",()=>g.globalSearch,"4049262c2a16b5cf71d99252d50445b8d1eb2af28f",()=>l.deployFeature,"4059b4307390b3c1543b98cbc280624be22eef4d39",()=>p.getDeploymentStatus,"4088569ab6e6a5fe2e71ba0ac2cd3856c7cb36609a",()=>h.listGitHubRepositories,"40ac687ce7283fa0b54dabe2f4ccaad99a6ce9b438",()=>j.importGitHubRepository,"40b1961bb1ecdede5b8f4d91c3c85a98550016d124",()=>k.getDeploymentLogs,"40c18317fe037650f1affa6602054914227bba4f36",()=>o.stopDeployment,"40f700cd4c7d576c044b8ebb8f0016050e58325b42",()=>n.deployApplication,"604457fce11c9b3dbf6b9522d5c4f7495770f0e22f",()=>f.updateAgentAndModel],958925)}];
1
+ module.exports=[433841,46646,868378,268670,685321,a=>{"use strict";var b=a.i(237705),c=a.i(996380);let d=()=>void 0;function e(a){let b=!!process.env.DEBUG;return{info:b?(...b)=>console.info(a,...b):d,debug:b?(...b)=>console.debug(a,...b):d,warn:(...b)=>console.warn(a,...b),error:(...b)=>console.error(a,...b)}}var f=a.i(701904);let g=e("[deployFeature]");async function h(a){g.info(`called — featureId="${a}"`);try{let b=(0,c.resolve)("StartFeatureDeploymentUseCase"),d=await b.execute(a);return g.info(`start succeeded — state=${d.state}`),{success:!0,state:d.state}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy feature";return g.error(`error: ${a}`,b),{success:!1,error:a}}}(0,f.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"4047687dae2f619d07071416cc3f3c821fc704d1e6",null),a.s(["deployFeature",()=>h],433841);let i=e("[deployRepository]");async function j(a){i.info(`called — repositoryPath="${a}"`);try{let b=(0,c.resolve)("StartRepositoryDeploymentUseCase"),d=await b.execute(a);return i.info(`start succeeded — state=${d.state}`),{success:!0,state:d.state}}catch(b){let a=b instanceof Error?b.message:"Failed to deploy repository";return i.error(`error: ${a}`,b),{success:!1,error:a}}}(0,f.ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"40a35502b2865b3669eb7fa2499a87d447aba8ab06",null),a.s(["deployRepository",()=>j],46646);class k extends Error{applicationId;code;constructor(a){super(`Application ${a} not found`),this.applicationId=a,this.code="APPLICATION_NOT_FOUND",this.name="ApplicationNotFoundError",Object.setPrototypeOf(this,new.target.prototype)}}class l extends Error{applicationId;repositoryPath;code;constructor(a,b){super(`Repository path does not exist: ${b}`),this.applicationId=a,this.repositoryPath=b,this.code="APPLICATION_REPOSITORY_NOT_ON_DISK",this.name="ApplicationRepositoryNotOnDiskError",Object.setPrototypeOf(this,new.target.prototype)}}class m extends Error{repositoryPath;code;constructor(a){super("Cannot start a dev server for the repository Shep is running from"),this.repositoryPath=a,this.code="CANNOT_DEPLOY_SELF",this.name="CannotDeploySelfError",Object.setPrototypeOf(this,new.target.prototype)}}async function n(a){if(!a?.trim())return{success:!1,error:"applicationId is required"};try{let b=(0,c.resolve)("StartApplicationDeploymentUseCase"),d=await b.execute({applicationId:a});return{success:!0,state:d.state}}catch(b){if(b instanceof k)return{success:!1,error:`Application not found: ${a}`};if(b instanceof l)return{success:!1,error:`Repository path does not exist: ${b.repositoryPath}`};if(b instanceof m)return{success:!1,error:"Cannot start a dev server for the repository Shep is running from"};return{success:!1,error:b instanceof Error?b.message:"Failed to deploy application"}}}async function o(a){try{let b=(0,c.resolve)("StopDeploymentUseCase");return await b.execute(a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to stop deployment"}}}async function p(a){return(0,c.resolve)("GetDeploymentStatusUseCase").execute(a)}(0,f.ensureServerEntryExports)([n]),(0,b.registerServerReference)(n,"402dbd5f92240a716fd7d1e11cee7c2ef093a5a8f8",null),a.s(["deployApplication",()=>n],868378),(0,f.ensureServerEntryExports)([o]),(0,b.registerServerReference)(o,"4019e0d1d95deabc4b7d5d89946429f6fdf95b2e5d",null),a.s(["stopDeployment",()=>o],268670),(0,f.ensureServerEntryExports)([p]),(0,b.registerServerReference)(p,"406e1923fad46a89b9f216334729faed4449552eec",null),a.s(["getDeploymentStatus",()=>p],685321)},794691,a=>{"use strict";var b=a.i(237705),c=a.i(996380);async function d(a){return a?.trim()?(0,c.resolve)("IDeploymentService").getLogs(a):null}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"4050968664ffebcc6b15e3a32490af30ff07757e2b",null),a.s(["getDeploymentLogs",()=>d])},958925,a=>{"use strict";var b=a.i(912513),c=a.i(889253),d=a.i(723504),e=a.i(408115),f=a.i(827900),g=a.i(673350),h=a.i(673101),i=a.i(654775),j=a.i(265324),k=a.i(794691),l=a.i(433841),m=a.i(46646),n=a.i(868378),o=a.i(268670),p=a.i(685321),q=a.i(237705),r=a.i(615704),s=a.i(996380),t=a.i(633244),u=a.i(701904);async function v(a){try{let b=(0,s.resolve)("LoadSettingsUseCase"),c=await b.execute(),d=c.workflow.skillInjection?.skills??[],e=d.filter(b=>b.name!==a);if(e.length===d.length)return{success:!1,error:`Skill "${a}" not found in configuration`};let f={...c,workflow:{...c.workflow,skillInjection:{enabled:c.workflow.skillInjection?.enabled??!1,skills:e}},updatedAt:new Date},g=(0,s.resolve)("UpdateSettingsUseCase");return await g.execute(f),(0,t.updateSettings)(f),(0,r.revalidatePath)("/skills"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to remove skill"}}}async function w(a){try{let b=(0,s.resolve)("LoadSettingsUseCase"),c=await b.execute(),d=c.workflow.skillInjection?.skills??[];if(d.some(b=>b.name===a.name))return{success:!1,error:`Skill "${a.name}" is already configured`};let e={...c,workflow:{...c.workflow,skillInjection:{enabled:c.workflow.skillInjection?.enabled??!0,skills:[...d,a]}},updatedAt:new Date},f=(0,s.resolve)("UpdateSettingsUseCase");return await f.execute(e),(0,t.updateSettings)(e),(0,r.revalidatePath)("/skills"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to add skill"}}}(0,u.ensureServerEntryExports)([v]),(0,q.registerServerReference)(v,"4070685679fefb9b70703fb9802a711d912214b11a",null),(0,u.ensureServerEntryExports)([w]),(0,q.registerServerReference)(w,"4012572835677f9bed65c3195f011391010da34d47",null),a.s([],408157),a.i(408157),a.s(["0012d55443d3ecd4371eeb3c2f54845ed7051ec3e4",()=>c.getDefaultAgentAndModel,"002333039f4600b7fac2e032dbbff5dce622bc32c4",()=>i.listGitHubOrganizations,"0047f63775193a38157ed541c90ceb8ec71c6b1dee",()=>e.checkAllAgentsStatus,"0090f855082c32ca62e2570d7d1ab2962ce337e2fa",()=>b.pickFolder,"00d173d22344bd77e0101fc0f79221379fcebccdd3",()=>d.getAllAgentModels,"4012572835677f9bed65c3195f011391010da34d47",()=>w,"4019e0d1d95deabc4b7d5d89946429f6fdf95b2e5d",()=>o.stopDeployment,"401c69fd0ea332b5338d2681374f58f26450e1d213",()=>h.listGitHubRepositories,"402dbd5f92240a716fd7d1e11cee7c2ef093a5a8f8",()=>n.deployApplication,"40336205a28ad800c54cfb8be2c4220b1b1c702c0c",()=>g.globalSearch,"4047687dae2f619d07071416cc3f3c821fc704d1e6",()=>l.deployFeature,"4050968664ffebcc6b15e3a32490af30ff07757e2b",()=>k.getDeploymentLogs,"406e1923fad46a89b9f216334729faed4449552eec",()=>p.getDeploymentStatus,"4070685679fefb9b70703fb9802a711d912214b11a",()=>v,"40a35502b2865b3669eb7fa2499a87d447aba8ab06",()=>m.deployRepository,"40d466ff9789889567ff0b65d9b5c87f7f7b11f943",()=>j.importGitHubRepository,"6000b91246c62b8ea2f123b9167538880bea50e6af",()=>f.updateAgentAndModel],958925)}];
2
2
 
3
3
  //# sourceMappingURL=src_presentation_web_1d8d177f._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/presentation/web/app/actions/deploy-feature.ts","../../../../../../../packages/core/src/infrastructure/services/deployment/deployment-logger.ts","../../../../../../../src/presentation/web/app/actions/deploy-repository.ts","../../../../../../../packages/core/src/domain/errors/application-not-found.error.ts","../../../../../../../packages/core/src/domain/errors/application-repository-not-on-disk.error.ts","../../../../../../../packages/core/src/domain/errors/cannot-deploy-self.error.ts","../../../../../../../src/presentation/web/app/actions/deploy-application.ts","../../../../../../../src/presentation/web/app/actions/stop-deployment.ts","../../../../../../../src/presentation/web/app/actions/get-deployment-status.ts","../../../../../../../src/presentation/web/app/actions/get-deployment-logs.ts","../../../../../../../src/presentation/web/.next-internal/server/app/skills/page/actions.js%20%28server%20actions%20loader%29","../../../../../../../src/presentation/web/app/actions/remove-injected-skill.ts","../../../../../../../src/presentation/web/app/actions/add-injected-skill.ts"],"sourcesContent":["'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport { createDeploymentLogger } from '@shepai/core/infrastructure/services/deployment/deployment-logger';\nimport type { StartFeatureDeploymentUseCase } from '@shepai/core/application/use-cases/deployments/start-feature-deployment.use-case';\nimport type { DeploymentState } from '@shepai/core/domain/generated/output';\n\nconst log = createDeploymentLogger('[deployFeature]');\n\nexport async function deployFeature(\n featureId: string\n): Promise<{ success: boolean; error?: string; state?: DeploymentState }> {\n log.info(`called — featureId=\"${featureId}\"`);\n\n try {\n const useCase = resolve<StartFeatureDeploymentUseCase>('StartFeatureDeploymentUseCase');\n const status = await useCase.execute(featureId);\n log.info(`start succeeded — state=${status.state}`);\n return { success: true, state: status.state };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to deploy feature';\n log.error(`error: ${message}`, error);\n return { success: false, error: message };\n }\n}\n","/* eslint-disable no-console */\n\n/**\n * Debug-gated logger for deployment services.\n *\n * - `info` and `debug` only emit when `process.env.DEBUG` is set.\n * - `warn` and `error` always emit (they indicate real problems).\n */\n\nconst noop = () => undefined;\n\nexport function createDeploymentLogger(prefix: string) {\n const isDebug = !!process.env.DEBUG;\n\n return {\n info: isDebug ? (...args: unknown[]) => console.info(prefix, ...args) : noop,\n debug: isDebug ? (...args: unknown[]) => console.debug(prefix, ...args) : noop,\n warn: (...args: unknown[]) => console.warn(prefix, ...args),\n error: (...args: unknown[]) => console.error(prefix, ...args),\n };\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport { createDeploymentLogger } from '@shepai/core/infrastructure/services/deployment/deployment-logger';\nimport type { StartRepositoryDeploymentUseCase } from '@shepai/core/application/use-cases/deployments/start-repository-deployment.use-case';\nimport type { DeploymentState } from '@shepai/core/domain/generated/output';\n\nconst log = createDeploymentLogger('[deployRepository]');\n\nexport async function deployRepository(\n repositoryPath: string\n): Promise<{ success: boolean; error?: string; state?: DeploymentState }> {\n log.info(`called — repositoryPath=\"${repositoryPath}\"`);\n\n try {\n const useCase = resolve<StartRepositoryDeploymentUseCase>('StartRepositoryDeploymentUseCase');\n const status = await useCase.execute(repositoryPath);\n log.info(`start succeeded — state=${status.state}`);\n return { success: true, state: status.state };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to deploy repository';\n log.error(`error: ${message}`, error);\n return { success: false, error: message };\n }\n}\n","/**\n * Application Not Found Error\n *\n * Thrown by application use cases when an application lookup by id\n * does not find a matching record in the repository.\n */\nexport class ApplicationNotFoundError extends Error {\n readonly code = 'APPLICATION_NOT_FOUND';\n constructor(public readonly applicationId: string) {\n super(`Application ${applicationId} not found`);\n this.name = 'ApplicationNotFoundError';\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","/**\n * Application Repository Not On Disk Error\n *\n * Thrown by deployment use cases when an application's repositoryPath no\n * longer exists on the local filesystem — e.g. the user deleted the folder\n * out from under us. The caller (CLI / TUI / Web) should surface this as a\n * recoverable precondition failure, not an internal error.\n */\nexport class ApplicationRepositoryNotOnDiskError extends Error {\n readonly code = 'APPLICATION_REPOSITORY_NOT_ON_DISK';\n constructor(\n public readonly applicationId: string,\n public readonly repositoryPath: string\n ) {\n super(`Repository path does not exist: ${repositoryPath}`);\n this.name = 'ApplicationRepositoryNotOnDiskError';\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","/**\n * Cannot Deploy Self Error\n *\n * Thrown by deployment use cases when the target repository is the same\n * directory (or a worktree of) the currently running Shep instance.\n * Spawning a nested Shep dev server would collide on the shared\n * ~/.shep/data SQLite database.\n */\nexport class CannotDeploySelfError extends Error {\n readonly code = 'CANNOT_DEPLOY_SELF';\n constructor(public readonly repositoryPath: string) {\n super('Cannot start a dev server for the repository Shep is running from');\n this.name = 'CannotDeploySelfError';\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { StartApplicationDeploymentUseCase } from '@shepai/core/application/use-cases/deployments/start-application-deployment.use-case';\nimport { ApplicationNotFoundError } from '@shepai/core/domain/errors/application-not-found.error';\nimport { ApplicationRepositoryNotOnDiskError } from '@shepai/core/domain/errors/application-repository-not-on-disk.error';\nimport { CannotDeploySelfError } from '@shepai/core/domain/errors/cannot-deploy-self.error';\nimport type { DeploymentState } from '@shepai/core/domain/generated/output';\n\n/**\n * Start a local dev server for an application.\n *\n * Thin server action: parses input, delegates to\n * `StartApplicationDeploymentUseCase`, and maps domain errors to the\n * action's historical response shape.\n *\n * All orchestration (repo lookup, filesystem precondition, self-instance\n * guard, `.start()` call, logging) lives in the use case — see\n * `packages/core/src/application/use-cases/deployments/\n * start-application-deployment.use-case.ts`.\n */\nexport async function deployApplication(\n applicationId: string\n): Promise<{ success: boolean; error?: string; state?: DeploymentState }> {\n if (!applicationId?.trim()) {\n return { success: false, error: 'applicationId is required' };\n }\n\n try {\n const useCase = resolve<StartApplicationDeploymentUseCase>('StartApplicationDeploymentUseCase');\n const result = await useCase.execute({ applicationId });\n return { success: true, state: result.state };\n } catch (error: unknown) {\n if (error instanceof ApplicationNotFoundError) {\n return { success: false, error: `Application not found: ${applicationId}` };\n }\n if (error instanceof ApplicationRepositoryNotOnDiskError) {\n return {\n success: false,\n error: `Repository path does not exist: ${error.repositoryPath}`,\n };\n }\n if (error instanceof CannotDeploySelfError) {\n return {\n success: false,\n error: 'Cannot start a dev server for the repository Shep is running from',\n };\n }\n const message = error instanceof Error ? error.message : 'Failed to deploy application';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { StopDeploymentUseCase } from '@shepai/core/application/use-cases/deployments/stop-deployment.use-case';\n\nexport async function stopDeployment(\n targetId: string\n): Promise<{ success: boolean; error?: string }> {\n try {\n const useCase = resolve<StopDeploymentUseCase>('StopDeploymentUseCase');\n await useCase.execute(targetId);\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to stop deployment';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { GetDeploymentStatusUseCase } from '@shepai/core/application/use-cases/deployments/get-deployment-status.use-case';\nimport type { DeploymentStatus } from '@shepai/core/application/ports/output/services/deployment-service.interface';\n\nexport async function getDeploymentStatus(targetId: string): Promise<DeploymentStatus | null> {\n const useCase = resolve<GetDeploymentStatusUseCase>('GetDeploymentStatusUseCase');\n return useCase.execute(targetId);\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type {\n IDeploymentService,\n LogEntry,\n} from '@shepai/core/application/ports/output/services/deployment-service.interface';\n\nexport async function getDeploymentLogs(targetId: string): Promise<LogEntry[] | null> {\n if (!targetId?.trim()) {\n return null;\n }\n\n const deploymentService = resolve<IDeploymentService>('IDeploymentService');\n return deploymentService.getLogs(targetId);\n}\n","export {pickFolder as '005795b9404f47f18715abda65314752aefc5fb8d5'} from 'ACTIONS_MODULE0'\nexport {getDefaultAgentAndModel as '00938d775c42cdd54bd0e44a7d4da5cfe944dfe93b'} from 'ACTIONS_MODULE1'\nexport {getAllAgentModels as '005cb4c82d2d3466deabb307d24d6ed8436d67544f'} from 'ACTIONS_MODULE2'\nexport {checkAllAgentsStatus as '00d01781e65ac3d3a4afd541463d639fa5f0769040'} from 'ACTIONS_MODULE3'\nexport {updateAgentAndModel as '604457fce11c9b3dbf6b9522d5c4f7495770f0e22f'} from 'ACTIONS_MODULE4'\nexport {globalSearch as '403a7efb89ddbcbfbd2d1aad796b93856de0c17c18'} from 'ACTIONS_MODULE5'\nexport {listGitHubRepositories as '4088569ab6e6a5fe2e71ba0ac2cd3856c7cb36609a'} from 'ACTIONS_MODULE6'\nexport {listGitHubOrganizations as '0022cadc32a7a5f3ed643a86a65eecdf0738f33dd0'} from 'ACTIONS_MODULE7'\nexport {importGitHubRepository as '40ac687ce7283fa0b54dabe2f4ccaad99a6ce9b438'} from 'ACTIONS_MODULE8'\nexport {getDeploymentLogs as '40b1961bb1ecdede5b8f4d91c3c85a98550016d124'} from 'ACTIONS_MODULE9'\nexport {deployFeature as '4049262c2a16b5cf71d99252d50445b8d1eb2af28f'} from 'ACTIONS_MODULE10'\nexport {deployRepository as '4020fd8b041ccb49d33f20186a34e5f7236a2c63de'} from 'ACTIONS_MODULE11'\nexport {deployApplication as '40f700cd4c7d576c044b8ebb8f0016050e58325b42'} from 'ACTIONS_MODULE12'\nexport {stopDeployment as '40c18317fe037650f1affa6602054914227bba4f36'} from 'ACTIONS_MODULE13'\nexport {getDeploymentStatus as '4059b4307390b3c1543b98cbc280624be22eef4d39'} from 'ACTIONS_MODULE14'\nexport {removeInjectedSkill as '4036a4866c0807818ec42b202c5c6ab4f41d6674d8'} from 'ACTIONS_MODULE15'\nexport {addInjectedSkill as '40124330ea0942c979c26720e5af3ad0eb97f894e1'} from 'ACTIONS_MODULE16'\n","'use server';\n\nimport { revalidatePath } from 'next/cache';\nimport { resolve } from '@/lib/server-container';\nimport type { LoadSettingsUseCase } from '@shepai/core/application/use-cases/settings/load-settings.use-case';\nimport type { UpdateSettingsUseCase } from '@shepai/core/application/use-cases/settings/update-settings.use-case';\nimport { updateSettings as updateSettingsSingleton } from '@shepai/core/infrastructure/services/settings.service';\n\nexport interface RemoveInjectedSkillResult {\n success: boolean;\n error?: string;\n}\n\nexport async function removeInjectedSkill(skillName: string): Promise<RemoveInjectedSkillResult> {\n try {\n const loadUseCase = resolve<LoadSettingsUseCase>('LoadSettingsUseCase');\n const current = await loadUseCase.execute();\n\n const existingSkills = current.workflow.skillInjection?.skills ?? [];\n const filtered = existingSkills.filter((s) => s.name !== skillName);\n\n if (filtered.length === existingSkills.length) {\n return { success: false, error: `Skill \"${skillName}\" not found in configuration` };\n }\n\n const updated = {\n ...current,\n workflow: {\n ...current.workflow,\n skillInjection: {\n enabled: current.workflow.skillInjection?.enabled ?? false,\n skills: filtered,\n },\n },\n updatedAt: new Date(),\n };\n\n const updateUseCase = resolve<UpdateSettingsUseCase>('UpdateSettingsUseCase');\n await updateUseCase.execute(updated);\n updateSettingsSingleton(updated);\n revalidatePath('/skills');\n\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to remove skill';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { revalidatePath } from 'next/cache';\nimport { resolve } from '@/lib/server-container';\nimport type { LoadSettingsUseCase } from '@shepai/core/application/use-cases/settings/load-settings.use-case';\nimport type { UpdateSettingsUseCase } from '@shepai/core/application/use-cases/settings/update-settings.use-case';\nimport { updateSettings as updateSettingsSingleton } from '@shepai/core/infrastructure/services/settings.service';\nimport type { SkillSource } from '@shepai/core/domain/generated/output';\n\nexport interface AddInjectedSkillResult {\n success: boolean;\n error?: string;\n}\n\nexport async function addInjectedSkill(skill: SkillSource): Promise<AddInjectedSkillResult> {\n try {\n const loadUseCase = resolve<LoadSettingsUseCase>('LoadSettingsUseCase');\n const current = await loadUseCase.execute();\n\n const existingSkills = current.workflow.skillInjection?.skills ?? [];\n if (existingSkills.some((s) => s.name === skill.name)) {\n return { success: false, error: `Skill \"${skill.name}\" is already configured` };\n }\n\n const updated = {\n ...current,\n workflow: {\n ...current.workflow,\n skillInjection: {\n enabled: current.workflow.skillInjection?.enabled ?? true,\n skills: [...existingSkills, skill],\n },\n },\n updatedAt: new Date(),\n };\n\n const updateUseCase = resolve<UpdateSettingsUseCase>('UpdateSettingsUseCase');\n await updateUseCase.execute(updated);\n updateSettingsSingleton(updated);\n revalidatePath('/skills');\n\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to add skill';\n return { success: false, error: message };\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../../src/presentation/web/app/actions/deploy-feature.ts","../../../../../../../packages/core/src/infrastructure/services/deployment/deployment-logger.ts","../../../../../../../src/presentation/web/app/actions/deploy-repository.ts","../../../../../../../packages/core/src/domain/errors/application-not-found.error.ts","../../../../../../../packages/core/src/domain/errors/application-repository-not-on-disk.error.ts","../../../../../../../packages/core/src/domain/errors/cannot-deploy-self.error.ts","../../../../../../../src/presentation/web/app/actions/deploy-application.ts","../../../../../../../src/presentation/web/app/actions/stop-deployment.ts","../../../../../../../src/presentation/web/app/actions/get-deployment-status.ts","../../../../../../../src/presentation/web/app/actions/get-deployment-logs.ts","../../../../../../../src/presentation/web/.next-internal/server/app/skills/page/actions.js%20%28server%20actions%20loader%29","../../../../../../../src/presentation/web/app/actions/remove-injected-skill.ts","../../../../../../../src/presentation/web/app/actions/add-injected-skill.ts"],"sourcesContent":["'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport { createDeploymentLogger } from '@shepai/core/infrastructure/services/deployment/deployment-logger';\nimport type { StartFeatureDeploymentUseCase } from '@shepai/core/application/use-cases/deployments/start-feature-deployment.use-case';\nimport type { DeploymentState } from '@shepai/core/domain/generated/output';\n\nconst log = createDeploymentLogger('[deployFeature]');\n\nexport async function deployFeature(\n featureId: string\n): Promise<{ success: boolean; error?: string; state?: DeploymentState }> {\n log.info(`called — featureId=\"${featureId}\"`);\n\n try {\n const useCase = resolve<StartFeatureDeploymentUseCase>('StartFeatureDeploymentUseCase');\n const status = await useCase.execute(featureId);\n log.info(`start succeeded — state=${status.state}`);\n return { success: true, state: status.state };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to deploy feature';\n log.error(`error: ${message}`, error);\n return { success: false, error: message };\n }\n}\n","/* eslint-disable no-console */\n\n/**\n * Debug-gated logger for deployment services.\n *\n * - `info` and `debug` only emit when `process.env.DEBUG` is set.\n * - `warn` and `error` always emit (they indicate real problems).\n */\n\nconst noop = () => undefined;\n\nexport function createDeploymentLogger(prefix: string) {\n const isDebug = !!process.env.DEBUG;\n\n return {\n info: isDebug ? (...args: unknown[]) => console.info(prefix, ...args) : noop,\n debug: isDebug ? (...args: unknown[]) => console.debug(prefix, ...args) : noop,\n warn: (...args: unknown[]) => console.warn(prefix, ...args),\n error: (...args: unknown[]) => console.error(prefix, ...args),\n };\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport { createDeploymentLogger } from '@shepai/core/infrastructure/services/deployment/deployment-logger';\nimport type { StartRepositoryDeploymentUseCase } from '@shepai/core/application/use-cases/deployments/start-repository-deployment.use-case';\nimport type { DeploymentState } from '@shepai/core/domain/generated/output';\n\nconst log = createDeploymentLogger('[deployRepository]');\n\nexport async function deployRepository(\n repositoryPath: string\n): Promise<{ success: boolean; error?: string; state?: DeploymentState }> {\n log.info(`called — repositoryPath=\"${repositoryPath}\"`);\n\n try {\n const useCase = resolve<StartRepositoryDeploymentUseCase>('StartRepositoryDeploymentUseCase');\n const status = await useCase.execute(repositoryPath);\n log.info(`start succeeded — state=${status.state}`);\n return { success: true, state: status.state };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to deploy repository';\n log.error(`error: ${message}`, error);\n return { success: false, error: message };\n }\n}\n","/**\n * Application Not Found Error\n *\n * Thrown by application use cases when an application lookup by id\n * does not find a matching record in the repository.\n */\nexport class ApplicationNotFoundError extends Error {\n readonly code = 'APPLICATION_NOT_FOUND';\n constructor(public readonly applicationId: string) {\n super(`Application ${applicationId} not found`);\n this.name = 'ApplicationNotFoundError';\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","/**\n * Application Repository Not On Disk Error\n *\n * Thrown by deployment use cases when an application's repositoryPath no\n * longer exists on the local filesystem — e.g. the user deleted the folder\n * out from under us. The caller (CLI / TUI / Web) should surface this as a\n * recoverable precondition failure, not an internal error.\n */\nexport class ApplicationRepositoryNotOnDiskError extends Error {\n readonly code = 'APPLICATION_REPOSITORY_NOT_ON_DISK';\n constructor(\n public readonly applicationId: string,\n public readonly repositoryPath: string\n ) {\n super(`Repository path does not exist: ${repositoryPath}`);\n this.name = 'ApplicationRepositoryNotOnDiskError';\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","/**\n * Cannot Deploy Self Error\n *\n * Thrown by deployment use cases when the target repository is the same\n * directory (or a worktree of) the currently running Shep instance.\n * Spawning a nested Shep dev server would collide on the shared\n * ~/.shep/data SQLite database.\n */\nexport class CannotDeploySelfError extends Error {\n readonly code = 'CANNOT_DEPLOY_SELF';\n constructor(public readonly repositoryPath: string) {\n super('Cannot start a dev server for the repository Shep is running from');\n this.name = 'CannotDeploySelfError';\n Object.setPrototypeOf(this, new.target.prototype);\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { StartApplicationDeploymentUseCase } from '@shepai/core/application/use-cases/deployments/start-application-deployment.use-case';\nimport { ApplicationNotFoundError } from '@shepai/core/domain/errors/application-not-found.error';\nimport { ApplicationRepositoryNotOnDiskError } from '@shepai/core/domain/errors/application-repository-not-on-disk.error';\nimport { CannotDeploySelfError } from '@shepai/core/domain/errors/cannot-deploy-self.error';\nimport type { DeploymentState } from '@shepai/core/domain/generated/output';\n\n/**\n * Start a local dev server for an application.\n *\n * Thin server action: parses input, delegates to\n * `StartApplicationDeploymentUseCase`, and maps domain errors to the\n * action's historical response shape.\n *\n * All orchestration (repo lookup, filesystem precondition, self-instance\n * guard, `.start()` call, logging) lives in the use case — see\n * `packages/core/src/application/use-cases/deployments/\n * start-application-deployment.use-case.ts`.\n */\nexport async function deployApplication(\n applicationId: string\n): Promise<{ success: boolean; error?: string; state?: DeploymentState }> {\n if (!applicationId?.trim()) {\n return { success: false, error: 'applicationId is required' };\n }\n\n try {\n const useCase = resolve<StartApplicationDeploymentUseCase>('StartApplicationDeploymentUseCase');\n const result = await useCase.execute({ applicationId });\n return { success: true, state: result.state };\n } catch (error: unknown) {\n if (error instanceof ApplicationNotFoundError) {\n return { success: false, error: `Application not found: ${applicationId}` };\n }\n if (error instanceof ApplicationRepositoryNotOnDiskError) {\n return {\n success: false,\n error: `Repository path does not exist: ${error.repositoryPath}`,\n };\n }\n if (error instanceof CannotDeploySelfError) {\n return {\n success: false,\n error: 'Cannot start a dev server for the repository Shep is running from',\n };\n }\n const message = error instanceof Error ? error.message : 'Failed to deploy application';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { StopDeploymentUseCase } from '@shepai/core/application/use-cases/deployments/stop-deployment.use-case';\n\nexport async function stopDeployment(\n targetId: string\n): Promise<{ success: boolean; error?: string }> {\n try {\n const useCase = resolve<StopDeploymentUseCase>('StopDeploymentUseCase');\n await useCase.execute(targetId);\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to stop deployment';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type { GetDeploymentStatusUseCase } from '@shepai/core/application/use-cases/deployments/get-deployment-status.use-case';\nimport type { DeploymentStatus } from '@shepai/core/application/ports/output/services/deployment-service.interface';\n\nexport async function getDeploymentStatus(targetId: string): Promise<DeploymentStatus | null> {\n const useCase = resolve<GetDeploymentStatusUseCase>('GetDeploymentStatusUseCase');\n return useCase.execute(targetId);\n}\n","'use server';\n\nimport { resolve } from '@/lib/server-container';\nimport type {\n IDeploymentService,\n LogEntry,\n} from '@shepai/core/application/ports/output/services/deployment-service.interface';\n\nexport async function getDeploymentLogs(targetId: string): Promise<LogEntry[] | null> {\n if (!targetId?.trim()) {\n return null;\n }\n\n const deploymentService = resolve<IDeploymentService>('IDeploymentService');\n return deploymentService.getLogs(targetId);\n}\n","export {pickFolder as '0090f855082c32ca62e2570d7d1ab2962ce337e2fa'} from 'ACTIONS_MODULE0'\nexport {getDefaultAgentAndModel as '0012d55443d3ecd4371eeb3c2f54845ed7051ec3e4'} from 'ACTIONS_MODULE1'\nexport {getAllAgentModels as '00d173d22344bd77e0101fc0f79221379fcebccdd3'} from 'ACTIONS_MODULE2'\nexport {checkAllAgentsStatus as '0047f63775193a38157ed541c90ceb8ec71c6b1dee'} from 'ACTIONS_MODULE3'\nexport {updateAgentAndModel as '6000b91246c62b8ea2f123b9167538880bea50e6af'} from 'ACTIONS_MODULE4'\nexport {globalSearch as '40336205a28ad800c54cfb8be2c4220b1b1c702c0c'} from 'ACTIONS_MODULE5'\nexport {listGitHubRepositories as '401c69fd0ea332b5338d2681374f58f26450e1d213'} from 'ACTIONS_MODULE6'\nexport {listGitHubOrganizations as '002333039f4600b7fac2e032dbbff5dce622bc32c4'} from 'ACTIONS_MODULE7'\nexport {importGitHubRepository as '40d466ff9789889567ff0b65d9b5c87f7f7b11f943'} from 'ACTIONS_MODULE8'\nexport {getDeploymentLogs as '4050968664ffebcc6b15e3a32490af30ff07757e2b'} from 'ACTIONS_MODULE9'\nexport {deployFeature as '4047687dae2f619d07071416cc3f3c821fc704d1e6'} from 'ACTIONS_MODULE10'\nexport {deployRepository as '40a35502b2865b3669eb7fa2499a87d447aba8ab06'} from 'ACTIONS_MODULE11'\nexport {deployApplication as '402dbd5f92240a716fd7d1e11cee7c2ef093a5a8f8'} from 'ACTIONS_MODULE12'\nexport {stopDeployment as '4019e0d1d95deabc4b7d5d89946429f6fdf95b2e5d'} from 'ACTIONS_MODULE13'\nexport {getDeploymentStatus as '406e1923fad46a89b9f216334729faed4449552eec'} from 'ACTIONS_MODULE14'\nexport {removeInjectedSkill as '4070685679fefb9b70703fb9802a711d912214b11a'} from 'ACTIONS_MODULE15'\nexport {addInjectedSkill as '4012572835677f9bed65c3195f011391010da34d47'} from 'ACTIONS_MODULE16'\n","'use server';\n\nimport { revalidatePath } from 'next/cache';\nimport { resolve } from '@/lib/server-container';\nimport type { LoadSettingsUseCase } from '@shepai/core/application/use-cases/settings/load-settings.use-case';\nimport type { UpdateSettingsUseCase } from '@shepai/core/application/use-cases/settings/update-settings.use-case';\nimport { updateSettings as updateSettingsSingleton } from '@shepai/core/infrastructure/services/settings.service';\n\nexport interface RemoveInjectedSkillResult {\n success: boolean;\n error?: string;\n}\n\nexport async function removeInjectedSkill(skillName: string): Promise<RemoveInjectedSkillResult> {\n try {\n const loadUseCase = resolve<LoadSettingsUseCase>('LoadSettingsUseCase');\n const current = await loadUseCase.execute();\n\n const existingSkills = current.workflow.skillInjection?.skills ?? [];\n const filtered = existingSkills.filter((s) => s.name !== skillName);\n\n if (filtered.length === existingSkills.length) {\n return { success: false, error: `Skill \"${skillName}\" not found in configuration` };\n }\n\n const updated = {\n ...current,\n workflow: {\n ...current.workflow,\n skillInjection: {\n enabled: current.workflow.skillInjection?.enabled ?? false,\n skills: filtered,\n },\n },\n updatedAt: new Date(),\n };\n\n const updateUseCase = resolve<UpdateSettingsUseCase>('UpdateSettingsUseCase');\n await updateUseCase.execute(updated);\n updateSettingsSingleton(updated);\n revalidatePath('/skills');\n\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to remove skill';\n return { success: false, error: message };\n }\n}\n","'use server';\n\nimport { revalidatePath } from 'next/cache';\nimport { resolve } from '@/lib/server-container';\nimport type { LoadSettingsUseCase } from '@shepai/core/application/use-cases/settings/load-settings.use-case';\nimport type { UpdateSettingsUseCase } from '@shepai/core/application/use-cases/settings/update-settings.use-case';\nimport { updateSettings as updateSettingsSingleton } from '@shepai/core/infrastructure/services/settings.service';\nimport type { SkillSource } from '@shepai/core/domain/generated/output';\n\nexport interface AddInjectedSkillResult {\n success: boolean;\n error?: string;\n}\n\nexport async function addInjectedSkill(skill: SkillSource): Promise<AddInjectedSkillResult> {\n try {\n const loadUseCase = resolve<LoadSettingsUseCase>('LoadSettingsUseCase');\n const current = await loadUseCase.execute();\n\n const existingSkills = current.workflow.skillInjection?.skills ?? [];\n if (existingSkills.some((s) => s.name === skill.name)) {\n return { success: false, error: `Skill \"${skill.name}\" is already configured` };\n }\n\n const updated = {\n ...current,\n workflow: {\n ...current.workflow,\n skillInjection: {\n enabled: current.workflow.skillInjection?.enabled ?? true,\n skills: [...existingSkills, skill],\n },\n },\n updatedAt: new Date(),\n };\n\n const updateUseCase = resolve<UpdateSettingsUseCase>('UpdateSettingsUseCase');\n await updateUseCase.execute(updated);\n updateSettingsSingleton(updated);\n revalidatePath('/skills');\n\n return { success: true };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Failed to add skill';\n return { success: false, error: message };\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- module.exports=[872875,a=>{"use strict";var b=a.i(237705),c=a.i(996380);async function d(a,b){if(!a?.trim())return{error:"Project ID is required"};try{let d=(0,c.resolve)("UpdatePmProjectUseCase"),e=await d.execute(a,b);if(!e.ok)return{error:e.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to update project"}}}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"60f3616b3870351e42154257ca243e3fde36d81088",null),a.s(["updatePmProject",()=>d])},923667,a=>{"use strict";var b=a.i(237705),c=a.i(996380);async function d(a){try{let b=(0,c.resolve)("CreateWorkItemUseCase"),d=await b.execute(a);if(!d.ok)return{error:d.error};return{workItem:d.workItem}}catch(a){return{error:a instanceof Error?a.message:"Failed to create work item"}}}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"40239d655b24efce84b186628e38e7f9074459272f",null),a.s(["createWorkItem",()=>d])},117613,a=>{"use strict";var b=a.i(912513),c=a.i(889253),d=a.i(723504),e=a.i(408115),f=a.i(827900),g=a.i(673350),h=a.i(673101),i=a.i(654775),j=a.i(265324),k=a.i(923667),l=a.i(237705),m=a.i(996380),n=a.i(701904);async function o(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("GetProjectBreakdownUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{data:c.data}}catch(a){return{error:a instanceof Error?a.message:"Failed to get project breakdown"}}}async function p(a){if(!a?.trim())return{error:"Cycle ID is required"};try{let b=(0,m.resolve)("GetCycleBurndownUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{data:c.data}}catch(a){return{error:a instanceof Error?a.message:"Failed to get cycle burndown"}}}async function q(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("GetModuleProgressUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{modules:c.modules}}catch(a){return{error:a instanceof Error?a.message:"Failed to get module progress"}}}async function r(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("ListWorkItemsUseCase"),c=(0,m.resolve)("ListWorkItemRelationsUseCase"),d=await b.execute(a),e=new Map;for(let a of d)for(let b of(await c.execute(a.id)))e.set(b.id,b);return{relations:Array.from(e.values())}}catch(a){return{error:a instanceof Error?a.message:"Failed to list project relations"}}}async function s(a){if(!a.name?.trim())return{error:"Cycle name is required"};try{let b=(0,m.resolve)("CreateCycleUseCase"),c=await b.execute({...a,startDate:a.startDate?new Date(a.startDate):void 0,endDate:a.endDate?new Date(a.endDate):void 0});if(!c.ok)return{error:c.error};return{cycle:c.cycle}}catch(a){return{error:a instanceof Error?a.message:"Failed to create cycle"}}}async function t(a,b){try{let c=(0,m.resolve)("UpdateCycleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{cycle:d.cycle}}catch(a){return{error:a instanceof Error?a.message:"Failed to update cycle"}}}async function u(a){try{let b=(0,m.resolve)("DeleteCycleUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete cycle"}}}async function v(a,b){try{let c=(0,m.resolve)("AddItemsToCycleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{added:d.added}}catch(a){return{error:a instanceof Error?a.message:"Failed to add items to cycle"}}}async function w(a,b){try{let c=(0,m.resolve)("RemoveItemsFromCycleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to remove items from cycle"}}}async function x(a,b){try{let c=(0,m.resolve)("TransferCycleItemsUseCase"),d=await c.execute({sourceCycleId:a,targetCycleId:b});if(!d.ok)return{error:d.error};return{transferred:d.transferred,kept:d.kept}}catch(a){return{error:a instanceof Error?a.message:"Failed to transfer cycle items"}}}async function y(a){if(!a.name?.trim())return{error:"Module name is required"};try{let b=(0,m.resolve)("CreateModuleUseCase"),c=await b.execute({...a,startDate:a.startDate?new Date(a.startDate):void 0,endDate:a.endDate?new Date(a.endDate):void 0});if(!c.ok)return{error:c.error};return{module:c.module}}catch(a){return{error:a instanceof Error?a.message:"Failed to create module"}}}async function z(a,b){try{let c=(0,m.resolve)("UpdateModuleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{module:d.module}}catch(a){return{error:a instanceof Error?a.message:"Failed to update module"}}}async function A(a){try{let b=(0,m.resolve)("DeleteModuleUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete module"}}}async function B(a,b){try{let c=(0,m.resolve)("AddItemsToModuleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{added:d.added}}catch(a){return{error:a instanceof Error?a.message:"Failed to add items to module"}}}async function C(a,b){try{let c=(0,m.resolve)("RemoveItemsFromModuleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to remove items from module"}}}async function D(a){try{let b=(0,m.resolve)("CreateEpicUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{epic:c.epic}}catch(a){return{error:a instanceof Error?a.message:"Failed to create epic"}}}async function E(a){try{let b=(0,m.resolve)("ListEpicsUseCase");return{epics:(await b.execute(a)).epics}}catch(a){return{error:a instanceof Error?a.message:"Failed to list epics"}}}async function F(a,b){try{let c=(0,m.resolve)("UpdateEpicUseCase"),d=await c.execute({epicId:a,...b});if(!d.ok)return{error:d.error};return{epic:d.epic}}catch(a){return{error:a instanceof Error?a.message:"Failed to update epic"}}}async function G(a){try{let b=(0,m.resolve)("DeleteEpicUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete epic"}}}(0,n.ensureServerEntryExports)([o]),(0,l.registerServerReference)(o,"404a18a0711903cdd52fdb3c10581a476c19419a7b",null),(0,n.ensureServerEntryExports)([p]),(0,l.registerServerReference)(p,"409ffb147c0c7264058b2578ad8f8cf580172c7aa7",null),(0,n.ensureServerEntryExports)([q]),(0,l.registerServerReference)(q,"40cc5b8ece96a0b88d5bb14b5e599a5ab5e7f2a1e1",null),(0,n.ensureServerEntryExports)([r]),(0,l.registerServerReference)(r,"40b72c816553fe2fef90c752625f47b4bd1fb2043c",null),(0,n.ensureServerEntryExports)([s,t,u,v,w,x]),(0,l.registerServerReference)(s,"40671e22fff9f55fab878dbcee4cd3206d742929ec",null),(0,l.registerServerReference)(t,"60658368c97eb513643049e7f2cad9f04103f21514",null),(0,l.registerServerReference)(u,"4093a6e13ee2d1249c2a71a00b5ee488199de2dea4",null),(0,l.registerServerReference)(v,"609908b22f78bd2e4adc321881fb1ed31af1b29525",null),(0,l.registerServerReference)(w,"6083a2af8dd04190db1c73f6c8e277821b19e65092",null),(0,l.registerServerReference)(x,"60ba424cf9fe04360eb0bf2bf749049d0ec27a7d62",null),(0,n.ensureServerEntryExports)([y,z,A,B,C]),(0,l.registerServerReference)(y,"40b47c832eb57ae9a96772c1dec0d308ec352c9ab5",null),(0,l.registerServerReference)(z,"60fd90d6db42673ef4d31d0f95baabea531ecaf2fd",null),(0,l.registerServerReference)(A,"40d5aeca8bfe41e398468869c0ad6b7c6991e9e034",null),(0,l.registerServerReference)(B,"6067fb2acb501b45fd1cbbcdbee4a50e902d194902",null),(0,l.registerServerReference)(C,"60a30445dc523eff8324cf04303499b040678d9b17",null),(0,n.ensureServerEntryExports)([D,E,F,G]),(0,l.registerServerReference)(D,"405dc265ef8f2e4b60cb5cdf253a892bb715229ae0",null),(0,l.registerServerReference)(E,"4077c5cd009d1ac496e12f2c622b6d7c3c3418973b",null),(0,l.registerServerReference)(F,"60e3b4644e6d21b49e15dca41d7c1c294624e70f8c",null),(0,l.registerServerReference)(G,"40ccc68697d05fae379f629ebdf4e87a9751f967f9",null);var H=a.i(872875);async function I(a,b){if(!a?.trim())return{error:"Work item ID is required"};try{let c=(0,m.resolve)("UpdateWorkItemUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to update work item"}}}async function J(a,b){if(!a?.trim())return{error:"Project ID is required"};try{let c=(0,m.resolve)("ListWorkItemsUseCase");return{workItems:await c.execute(a,b)}}catch(a){return{error:a instanceof Error?a.message:"Failed to list work items"}}}async function K(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("ListCyclesUseCase");return{cycles:await b.execute(a)}}catch(a){return{error:a instanceof Error?a.message:"Failed to list cycles"}}}async function L(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("ListModulesUseCase");return{modules:await b.execute(a)}}catch(a){return{error:a instanceof Error?a.message:"Failed to list modules"}}}(0,n.ensureServerEntryExports)([I]),(0,l.registerServerReference)(I,"607039c7111ed6b628044ce34500e91e4450583c1d",null),(0,n.ensureServerEntryExports)([J]),(0,l.registerServerReference)(J,"60e88f95fa30f026c8c701b751e4866507a123cca3",null),(0,n.ensureServerEntryExports)([K]),(0,l.registerServerReference)(K,"407dc7d3300eb1a8a1aac4be0cc78f16ef090f60c5",null),(0,n.ensureServerEntryExports)([L]),(0,l.registerServerReference)(L,"402b2b2d2ab73f76581c71b7f1f2d62a1f0662890c",null),a.s([],44645),a.i(44645),a.s(["0022cadc32a7a5f3ed643a86a65eecdf0738f33dd0",()=>i.listGitHubOrganizations,"005795b9404f47f18715abda65314752aefc5fb8d5",()=>b.pickFolder,"005cb4c82d2d3466deabb307d24d6ed8436d67544f",()=>d.getAllAgentModels,"00938d775c42cdd54bd0e44a7d4da5cfe944dfe93b",()=>c.getDefaultAgentAndModel,"00d01781e65ac3d3a4afd541463d639fa5f0769040",()=>e.checkAllAgentsStatus,"40239d655b24efce84b186628e38e7f9074459272f",()=>k.createWorkItem,"402b2b2d2ab73f76581c71b7f1f2d62a1f0662890c",()=>L,"403a7efb89ddbcbfbd2d1aad796b93856de0c17c18",()=>g.globalSearch,"404a18a0711903cdd52fdb3c10581a476c19419a7b",()=>o,"405dc265ef8f2e4b60cb5cdf253a892bb715229ae0",()=>D,"40671e22fff9f55fab878dbcee4cd3206d742929ec",()=>s,"407dc7d3300eb1a8a1aac4be0cc78f16ef090f60c5",()=>K,"4088569ab6e6a5fe2e71ba0ac2cd3856c7cb36609a",()=>h.listGitHubRepositories,"4093a6e13ee2d1249c2a71a00b5ee488199de2dea4",()=>u,"409ffb147c0c7264058b2578ad8f8cf580172c7aa7",()=>p,"40ac687ce7283fa0b54dabe2f4ccaad99a6ce9b438",()=>j.importGitHubRepository,"40b47c832eb57ae9a96772c1dec0d308ec352c9ab5",()=>y,"40b72c816553fe2fef90c752625f47b4bd1fb2043c",()=>r,"40cc5b8ece96a0b88d5bb14b5e599a5ab5e7f2a1e1",()=>q,"40ccc68697d05fae379f629ebdf4e87a9751f967f9",()=>G,"40d5aeca8bfe41e398468869c0ad6b7c6991e9e034",()=>A,"604457fce11c9b3dbf6b9522d5c4f7495770f0e22f",()=>f.updateAgentAndModel,"60658368c97eb513643049e7f2cad9f04103f21514",()=>t,"607039c7111ed6b628044ce34500e91e4450583c1d",()=>I,"60ba424cf9fe04360eb0bf2bf749049d0ec27a7d62",()=>x,"60e3b4644e6d21b49e15dca41d7c1c294624e70f8c",()=>F,"60e88f95fa30f026c8c701b751e4866507a123cca3",()=>J,"60f3616b3870351e42154257ca243e3fde36d81088",()=>H.updatePmProject],117613)}];
1
+ module.exports=[872875,a=>{"use strict";var b=a.i(237705),c=a.i(996380);async function d(a,b){if(!a?.trim())return{error:"Project ID is required"};try{let d=(0,c.resolve)("UpdatePmProjectUseCase"),e=await d.execute(a,b);if(!e.ok)return{error:e.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to update project"}}}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"60e50bb1ef1cba1e3e05f572110cb27874c4bfdde1",null),a.s(["updatePmProject",()=>d])},923667,a=>{"use strict";var b=a.i(237705),c=a.i(996380);async function d(a){try{let b=(0,c.resolve)("CreateWorkItemUseCase"),d=await b.execute(a);if(!d.ok)return{error:d.error};return{workItem:d.workItem}}catch(a){return{error:a instanceof Error?a.message:"Failed to create work item"}}}(0,a.i(701904).ensureServerEntryExports)([d]),(0,b.registerServerReference)(d,"40bff29122cd4fb74d349bacf8f54833f0e67bdfef",null),a.s(["createWorkItem",()=>d])},117613,a=>{"use strict";var b=a.i(912513),c=a.i(889253),d=a.i(723504),e=a.i(408115),f=a.i(827900),g=a.i(673350),h=a.i(673101),i=a.i(654775),j=a.i(265324),k=a.i(923667),l=a.i(237705),m=a.i(996380),n=a.i(701904);async function o(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("GetProjectBreakdownUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{data:c.data}}catch(a){return{error:a instanceof Error?a.message:"Failed to get project breakdown"}}}async function p(a){if(!a?.trim())return{error:"Cycle ID is required"};try{let b=(0,m.resolve)("GetCycleBurndownUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{data:c.data}}catch(a){return{error:a instanceof Error?a.message:"Failed to get cycle burndown"}}}async function q(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("GetModuleProgressUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{modules:c.modules}}catch(a){return{error:a instanceof Error?a.message:"Failed to get module progress"}}}async function r(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("ListWorkItemsUseCase"),c=(0,m.resolve)("ListWorkItemRelationsUseCase"),d=await b.execute(a),e=new Map;for(let a of d)for(let b of(await c.execute(a.id)))e.set(b.id,b);return{relations:Array.from(e.values())}}catch(a){return{error:a instanceof Error?a.message:"Failed to list project relations"}}}async function s(a){if(!a.name?.trim())return{error:"Cycle name is required"};try{let b=(0,m.resolve)("CreateCycleUseCase"),c=await b.execute({...a,startDate:a.startDate?new Date(a.startDate):void 0,endDate:a.endDate?new Date(a.endDate):void 0});if(!c.ok)return{error:c.error};return{cycle:c.cycle}}catch(a){return{error:a instanceof Error?a.message:"Failed to create cycle"}}}async function t(a,b){try{let c=(0,m.resolve)("UpdateCycleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{cycle:d.cycle}}catch(a){return{error:a instanceof Error?a.message:"Failed to update cycle"}}}async function u(a){try{let b=(0,m.resolve)("DeleteCycleUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete cycle"}}}async function v(a,b){try{let c=(0,m.resolve)("AddItemsToCycleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{added:d.added}}catch(a){return{error:a instanceof Error?a.message:"Failed to add items to cycle"}}}async function w(a,b){try{let c=(0,m.resolve)("RemoveItemsFromCycleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to remove items from cycle"}}}async function x(a,b){try{let c=(0,m.resolve)("TransferCycleItemsUseCase"),d=await c.execute({sourceCycleId:a,targetCycleId:b});if(!d.ok)return{error:d.error};return{transferred:d.transferred,kept:d.kept}}catch(a){return{error:a instanceof Error?a.message:"Failed to transfer cycle items"}}}async function y(a){if(!a.name?.trim())return{error:"Module name is required"};try{let b=(0,m.resolve)("CreateModuleUseCase"),c=await b.execute({...a,startDate:a.startDate?new Date(a.startDate):void 0,endDate:a.endDate?new Date(a.endDate):void 0});if(!c.ok)return{error:c.error};return{module:c.module}}catch(a){return{error:a instanceof Error?a.message:"Failed to create module"}}}async function z(a,b){try{let c=(0,m.resolve)("UpdateModuleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{module:d.module}}catch(a){return{error:a instanceof Error?a.message:"Failed to update module"}}}async function A(a){try{let b=(0,m.resolve)("DeleteModuleUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete module"}}}async function B(a,b){try{let c=(0,m.resolve)("AddItemsToModuleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{added:d.added}}catch(a){return{error:a instanceof Error?a.message:"Failed to add items to module"}}}async function C(a,b){try{let c=(0,m.resolve)("RemoveItemsFromModuleUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to remove items from module"}}}async function D(a){try{let b=(0,m.resolve)("CreateEpicUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{epic:c.epic}}catch(a){return{error:a instanceof Error?a.message:"Failed to create epic"}}}async function E(a){try{let b=(0,m.resolve)("ListEpicsUseCase");return{epics:(await b.execute(a)).epics}}catch(a){return{error:a instanceof Error?a.message:"Failed to list epics"}}}async function F(a,b){try{let c=(0,m.resolve)("UpdateEpicUseCase"),d=await c.execute({epicId:a,...b});if(!d.ok)return{error:d.error};return{epic:d.epic}}catch(a){return{error:a instanceof Error?a.message:"Failed to update epic"}}}async function G(a){try{let b=(0,m.resolve)("DeleteEpicUseCase"),c=await b.execute(a);if(!c.ok)return{error:c.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to delete epic"}}}(0,n.ensureServerEntryExports)([o]),(0,l.registerServerReference)(o,"40182dd066d6458f0721d8f2fc738f20d1dcef9e9a",null),(0,n.ensureServerEntryExports)([p]),(0,l.registerServerReference)(p,"40a0b0206a2284cdcd777aa9c848ae54cfbc296fb2",null),(0,n.ensureServerEntryExports)([q]),(0,l.registerServerReference)(q,"4046a041de71317c8320d27fd2ec6172a29ea56476",null),(0,n.ensureServerEntryExports)([r]),(0,l.registerServerReference)(r,"40422aa9464f148623d033738f49416e921c67cda7",null),(0,n.ensureServerEntryExports)([s,t,u,v,w,x]),(0,l.registerServerReference)(s,"40eb0a097575a7160ace27fe5a253a5df6f87c8686",null),(0,l.registerServerReference)(t,"602fa5cde7821dd953208d8fcd8c4908e2754639f5",null),(0,l.registerServerReference)(u,"40f7d182898c9f0d1deb43282d2ff68bca8aaaa078",null),(0,l.registerServerReference)(v,"600ccf04b03442f500d90a4ebf1aafe7a7cea84cba",null),(0,l.registerServerReference)(w,"60686a0aac69e501dafb1c6ef076e840e5e69b3361",null),(0,l.registerServerReference)(x,"60ad94a34725dd17946b0bfdb37073a6bc53ccd2c3",null),(0,n.ensureServerEntryExports)([y,z,A,B,C]),(0,l.registerServerReference)(y,"404371caaad44a47bdd8a167aa7ff83787ae1aa82b",null),(0,l.registerServerReference)(z,"604bc72bad2ec6e9b644aa195ccc4406a1d557865e",null),(0,l.registerServerReference)(A,"400ecf68d258031af758f93dee1fdc442b87a0f869",null),(0,l.registerServerReference)(B,"6072bd4df369e90129e99fe59764d2af85528e3261",null),(0,l.registerServerReference)(C,"607467277cd15478c9884cb7eb01167f7d7441a8aa",null),(0,n.ensureServerEntryExports)([D,E,F,G]),(0,l.registerServerReference)(D,"40bafd84f9f3e18353af43511ab8ae4ab45fd898af",null),(0,l.registerServerReference)(E,"404278ba51fb361b82cdc669dc601d223cd8f752be",null),(0,l.registerServerReference)(F,"600dff671fa762ea47492def9fed904424831ff6ed",null),(0,l.registerServerReference)(G,"408c1527d17bc0a9ed9818957d747d27387b04c879",null);var H=a.i(872875);async function I(a,b){if(!a?.trim())return{error:"Work item ID is required"};try{let c=(0,m.resolve)("UpdateWorkItemUseCase"),d=await c.execute(a,b);if(!d.ok)return{error:d.error};return{}}catch(a){return{error:a instanceof Error?a.message:"Failed to update work item"}}}async function J(a,b){if(!a?.trim())return{error:"Project ID is required"};try{let c=(0,m.resolve)("ListWorkItemsUseCase");return{workItems:await c.execute(a,b)}}catch(a){return{error:a instanceof Error?a.message:"Failed to list work items"}}}async function K(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("ListCyclesUseCase");return{cycles:await b.execute(a)}}catch(a){return{error:a instanceof Error?a.message:"Failed to list cycles"}}}async function L(a){if(!a?.trim())return{error:"Project ID is required"};try{let b=(0,m.resolve)("ListModulesUseCase");return{modules:await b.execute(a)}}catch(a){return{error:a instanceof Error?a.message:"Failed to list modules"}}}(0,n.ensureServerEntryExports)([I]),(0,l.registerServerReference)(I,"60679f2da1fdb6c52c90f9a5ad90e0c9ca3b97cf83",null),(0,n.ensureServerEntryExports)([J]),(0,l.registerServerReference)(J,"60d2d120aea6a79bccf9be6dcc982ec30083469efd",null),(0,n.ensureServerEntryExports)([K]),(0,l.registerServerReference)(K,"4001501623c1d625aea7e501f59eef4dd8c7d87ed9",null),(0,n.ensureServerEntryExports)([L]),(0,l.registerServerReference)(L,"40025b65ebd015ade84728d6f5e66e9a87b3e11487",null),a.s([],44645),a.i(44645),a.s(["0012d55443d3ecd4371eeb3c2f54845ed7051ec3e4",()=>c.getDefaultAgentAndModel,"002333039f4600b7fac2e032dbbff5dce622bc32c4",()=>i.listGitHubOrganizations,"0047f63775193a38157ed541c90ceb8ec71c6b1dee",()=>e.checkAllAgentsStatus,"0090f855082c32ca62e2570d7d1ab2962ce337e2fa",()=>b.pickFolder,"00d173d22344bd77e0101fc0f79221379fcebccdd3",()=>d.getAllAgentModels,"4001501623c1d625aea7e501f59eef4dd8c7d87ed9",()=>K,"40025b65ebd015ade84728d6f5e66e9a87b3e11487",()=>L,"400ecf68d258031af758f93dee1fdc442b87a0f869",()=>A,"40182dd066d6458f0721d8f2fc738f20d1dcef9e9a",()=>o,"401c69fd0ea332b5338d2681374f58f26450e1d213",()=>h.listGitHubRepositories,"40336205a28ad800c54cfb8be2c4220b1b1c702c0c",()=>g.globalSearch,"40422aa9464f148623d033738f49416e921c67cda7",()=>r,"404371caaad44a47bdd8a167aa7ff83787ae1aa82b",()=>y,"4046a041de71317c8320d27fd2ec6172a29ea56476",()=>q,"408c1527d17bc0a9ed9818957d747d27387b04c879",()=>G,"40a0b0206a2284cdcd777aa9c848ae54cfbc296fb2",()=>p,"40bafd84f9f3e18353af43511ab8ae4ab45fd898af",()=>D,"40bff29122cd4fb74d349bacf8f54833f0e67bdfef",()=>k.createWorkItem,"40d466ff9789889567ff0b65d9b5c87f7f7b11f943",()=>j.importGitHubRepository,"40eb0a097575a7160ace27fe5a253a5df6f87c8686",()=>s,"40f7d182898c9f0d1deb43282d2ff68bca8aaaa078",()=>u,"6000b91246c62b8ea2f123b9167538880bea50e6af",()=>f.updateAgentAndModel,"600dff671fa762ea47492def9fed904424831ff6ed",()=>F,"602fa5cde7821dd953208d8fcd8c4908e2754639f5",()=>t,"60679f2da1fdb6c52c90f9a5ad90e0c9ca3b97cf83",()=>I,"60ad94a34725dd17946b0bfdb37073a6bc53ccd2c3",()=>x,"60d2d120aea6a79bccf9be6dcc982ec30083469efd",()=>J,"60e50bb1ef1cba1e3e05f572110cb27874c4bfdde1",()=>H.updatePmProject],117613)}];
2
2
 
3
3
  //# sourceMappingURL=src_presentation_web_450b58fc._.js.map