@shepai/cli 1.162.0-pr506.4839064 → 1.162.0-pr507.849f7ce

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 (266) hide show
  1. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.d.ts +0 -20
  2. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.d.ts.map +1 -1
  3. package/dist/packages/core/src/application/ports/output/services/index.d.ts +1 -1
  4. package/dist/packages/core/src/application/ports/output/services/index.d.ts.map +1 -1
  5. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  6. package/dist/packages/core/src/infrastructure/di/container.js +0 -5
  7. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.d.ts +1 -2
  8. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.d.ts.map +1 -1
  9. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.js +0 -20
  10. package/dist/src/presentation/cli/commands/repo/add.command.d.ts.map +1 -1
  11. package/dist/src/presentation/cli/commands/repo/add.command.js +1 -3
  12. package/dist/src/presentation/cli/index.js +1 -0
  13. package/dist/src/presentation/tui/wizards/github-import.wizard.d.ts +2 -5
  14. package/dist/src/presentation/tui/wizards/github-import.wizard.d.ts.map +1 -1
  15. package/dist/src/presentation/tui/wizards/github-import.wizard.js +6 -38
  16. package/dist/src/presentation/web/app/actions/list-github-repositories.d.ts +0 -1
  17. package/dist/src/presentation/web/app/actions/list-github-repositories.d.ts.map +1 -1
  18. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.d.ts +1 -8
  19. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.d.ts.map +1 -1
  20. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.js +7 -37
  21. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.stories.d.ts +0 -1
  22. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.stories.d.ts.map +1 -1
  23. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.stories.js +0 -35
  24. package/dist/tsconfig.build.tsbuildinfo +1 -1
  25. package/package.json +1 -1
  26. package/web/.next/BUILD_ID +1 -1
  27. package/web/.next/build-manifest.json +2 -2
  28. package/web/.next/fallback-build-manifest.json +2 -2
  29. package/web/.next/prerender-manifest.json +3 -3
  30. package/web/.next/required-server-files.js +1 -1
  31. package/web/.next/required-server-files.json +1 -1
  32. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +56 -71
  33. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +1 -1
  34. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  35. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  36. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +52 -67
  37. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +1 -1
  38. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  39. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  40. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +58 -73
  41. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +1 -1
  42. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  43. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  44. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +72 -87
  45. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +1 -1
  46. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  47. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  48. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +72 -87
  49. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +1 -1
  50. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  51. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  52. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +52 -67
  53. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +1 -1
  54. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  55. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  56. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +52 -67
  57. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +1 -1
  58. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  59. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  60. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +52 -67
  61. package/web/.next/server/app/(dashboard)/chat/page.js +1 -1
  62. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  63. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  64. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +58 -73
  65. package/web/.next/server/app/(dashboard)/create/page.js +1 -1
  66. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  67. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  68. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +72 -87
  69. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +1 -1
  70. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  71. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  72. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +72 -87
  73. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +1 -1
  74. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  75. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  76. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +52 -67
  77. package/web/.next/server/app/(dashboard)/page.js +1 -1
  78. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  79. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  80. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +52 -67
  81. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +1 -1
  82. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  83. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  84. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +52 -67
  85. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +1 -1
  86. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  87. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  88. package/web/.next/server/app/_global-error.html +2 -2
  89. package/web/.next/server/app/_global-error.rsc +1 -1
  90. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  91. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  92. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  93. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  94. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  95. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +10 -25
  96. package/web/.next/server/app/_not-found/page.js +1 -1
  97. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  98. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  99. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  100. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  101. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  102. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  103. package/web/.next/server/app/settings/page/server-reference-manifest.json +16 -31
  104. package/web/.next/server/app/settings/page.js +1 -1
  105. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  106. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  107. package/web/.next/server/app/skills/page/server-reference-manifest.json +20 -35
  108. package/web/.next/server/app/skills/page.js +1 -1
  109. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  110. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  111. package/web/.next/server/app/tools/page/server-reference-manifest.json +20 -35
  112. package/web/.next/server/app/tools/page.js +1 -1
  113. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  114. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  115. package/web/.next/server/app/version/page/server-reference-manifest.json +10 -25
  116. package/web/.next/server/app/version/page.js +1 -1
  117. package/web/.next/server/app/version/page.js.nft.json +1 -1
  118. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  119. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  120. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  121. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  122. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
  123. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  124. package/web/.next/server/chunks/ssr/[root-of-the-server]__209c9597._.js +4 -0
  125. package/web/.next/server/chunks/ssr/[root-of-the-server]__209c9597._.js.map +1 -0
  126. package/web/.next/server/chunks/ssr/[root-of-the-server]__27301e38._.js +4 -0
  127. package/web/.next/server/chunks/ssr/[root-of-the-server]__27301e38._.js.map +1 -0
  128. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  129. package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js +4 -0
  130. package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js.map +1 -0
  131. package/web/.next/server/chunks/ssr/[root-of-the-server]__6fecf886._.js +4 -0
  132. package/web/.next/server/chunks/ssr/[root-of-the-server]__6fecf886._.js.map +1 -0
  133. package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js +1 -1
  134. package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js.map +1 -1
  135. package/web/.next/server/chunks/ssr/[root-of-the-server]__8d27866c._.js +4 -0
  136. package/web/.next/server/chunks/ssr/[root-of-the-server]__8d27866c._.js.map +1 -0
  137. package/web/.next/server/chunks/ssr/[root-of-the-server]__9f3504c7._.js +4 -0
  138. package/web/.next/server/chunks/ssr/[root-of-the-server]__9f3504c7._.js.map +1 -0
  139. package/web/.next/server/chunks/ssr/[root-of-the-server]__bd6ed91a._.js +4 -0
  140. package/web/.next/server/chunks/ssr/[root-of-the-server]__bd6ed91a._.js.map +1 -0
  141. package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js +4 -0
  142. package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js.map +1 -0
  143. package/web/.next/server/chunks/ssr/[root-of-the-server]__ee0eaaf9._.js +3 -0
  144. package/web/.next/server/chunks/ssr/[root-of-the-server]__ee0eaaf9._.js.map +1 -0
  145. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  146. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  147. package/web/.next/server/chunks/ssr/{_0fc83881._.js → _09eb1627._.js} +2 -2
  148. package/web/.next/server/chunks/ssr/{_0fc83881._.js.map → _09eb1627._.js.map} +1 -1
  149. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  150. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  151. package/web/.next/server/chunks/ssr/{_ce97386b._.js → _1c309165._.js} +2 -2
  152. package/web/.next/server/chunks/ssr/_1c309165._.js.map +1 -0
  153. package/web/.next/server/chunks/ssr/_3a0b989f._.js +6 -0
  154. package/web/.next/server/chunks/ssr/_3a0b989f._.js.map +1 -0
  155. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  156. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  157. package/web/.next/server/chunks/ssr/_5f69c13f._.js +4 -0
  158. package/web/.next/server/chunks/ssr/_5f69c13f._.js.map +1 -0
  159. package/web/.next/server/chunks/ssr/{_71ba6039._.js → _67f274ab._.js} +2 -2
  160. package/web/.next/server/chunks/ssr/{_71ba6039._.js.map → _67f274ab._.js.map} +1 -1
  161. package/web/.next/server/chunks/ssr/_7c5b97c6._.js +4 -0
  162. package/web/.next/server/chunks/ssr/_7c5b97c6._.js.map +1 -0
  163. package/web/.next/server/chunks/ssr/_82c57f10._.js +4 -0
  164. package/web/.next/server/chunks/ssr/_82c57f10._.js.map +1 -0
  165. package/web/.next/server/chunks/ssr/{_0727935d._.js → _9495d50b._.js} +2 -2
  166. package/web/.next/server/chunks/ssr/{_0727935d._.js.map → _9495d50b._.js.map} +1 -1
  167. package/web/.next/server/chunks/ssr/_a0e3f7e4._.js +4 -0
  168. package/web/.next/server/chunks/ssr/_a0e3f7e4._.js.map +1 -0
  169. package/web/.next/server/chunks/ssr/_ac4a3873._.js +1 -1
  170. package/web/.next/server/chunks/ssr/_ae9a5167._.js +3 -0
  171. package/web/.next/server/chunks/ssr/_ae9a5167._.js.map +1 -0
  172. package/web/.next/server/chunks/ssr/_ca0aa7f0._.js +4 -0
  173. package/web/.next/server/chunks/ssr/_ca0aa7f0._.js.map +1 -0
  174. package/web/.next/server/chunks/ssr/_cb5a021e._.js +4 -0
  175. package/web/.next/server/chunks/ssr/_cb5a021e._.js.map +1 -0
  176. package/web/.next/server/chunks/ssr/_d86175ae._.js +4 -0
  177. package/web/.next/server/chunks/ssr/_d86175ae._.js.map +1 -0
  178. package/web/.next/server/chunks/ssr/_d8bedf13._.js +4 -0
  179. package/web/.next/server/chunks/ssr/_d8bedf13._.js.map +1 -0
  180. package/web/.next/server/chunks/ssr/_d90b0a06._.js +3 -0
  181. package/web/.next/server/chunks/ssr/_d90b0a06._.js.map +1 -0
  182. package/web/.next/server/chunks/ssr/_fa7efce3._.js +6 -0
  183. package/web/.next/server/chunks/ssr/_fa7efce3._.js.map +1 -0
  184. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  185. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  186. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  187. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  188. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  189. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  190. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  191. package/web/.next/server/pages/500.html +2 -2
  192. package/web/.next/server/server-reference-manifest.js +1 -1
  193. package/web/.next/server/server-reference-manifest.json +495 -636
  194. package/web/.next/static/chunks/{b84a4b22a24e32e5.js → 0a1302fa9e8ddc13.js} +1 -1
  195. package/web/.next/static/chunks/3b45c776a05c1123.js +1 -0
  196. package/web/.next/static/chunks/4864ff06a738d58b.js +1 -0
  197. package/web/.next/static/chunks/4e3ea38f9c5bc78a.js +1 -0
  198. package/web/.next/static/chunks/58bc94d43b417c8f.js +7 -0
  199. package/web/.next/static/chunks/{35ec31863fa35a53.js → 5ca1b20e40c47ed5.js} +1 -1
  200. package/web/.next/static/chunks/{d98bc2adcbbf962b.js → 6ee1820e7482f238.js} +3 -3
  201. package/web/.next/static/chunks/80f09a63cf8735dc.js +1 -0
  202. package/web/.next/static/chunks/df5268d72cd90143.js +1 -0
  203. package/web/.next/static/chunks/{63f6860c64adac54.js → e2ed585d0efeb410.js} +1 -1
  204. package/web/.next/static/chunks/{6dfd3331ed16c17a.js → e622977f4618a305.js} +1 -1
  205. package/web/.next/static/chunks/{430ebb233af04232.js → f3c516675573eaa5.js} +2 -2
  206. package/web/.next/static/chunks/{0b25e132c6474df2.js → fc37540c1389c0f2.js} +1 -1
  207. package/dist/packages/core/src/application/use-cases/repositories/list-github-organizations.use-case.d.ts +0 -13
  208. package/dist/packages/core/src/application/use-cases/repositories/list-github-organizations.use-case.d.ts.map +0 -1
  209. package/dist/packages/core/src/application/use-cases/repositories/list-github-organizations.use-case.js +0 -35
  210. package/dist/src/presentation/web/app/actions/list-github-organizations.d.ts +0 -6
  211. package/dist/src/presentation/web/app/actions/list-github-organizations.d.ts.map +0 -1
  212. package/dist/src/presentation/web/app/actions/list-github-organizations.js +0 -17
  213. package/web/.next/server/chunks/ssr/[root-of-the-server]__1abe77bb._.js +0 -4
  214. package/web/.next/server/chunks/ssr/[root-of-the-server]__1abe77bb._.js.map +0 -1
  215. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js +0 -4
  216. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js.map +0 -1
  217. package/web/.next/server/chunks/ssr/[root-of-the-server]__512b2c98._.js +0 -4
  218. package/web/.next/server/chunks/ssr/[root-of-the-server]__512b2c98._.js.map +0 -1
  219. package/web/.next/server/chunks/ssr/[root-of-the-server]__7562afc6._.js +0 -4
  220. package/web/.next/server/chunks/ssr/[root-of-the-server]__7562afc6._.js.map +0 -1
  221. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js +0 -4
  222. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js.map +0 -1
  223. package/web/.next/server/chunks/ssr/[root-of-the-server]__bde2d922._.js +0 -4
  224. package/web/.next/server/chunks/ssr/[root-of-the-server]__bde2d922._.js.map +0 -1
  225. package/web/.next/server/chunks/ssr/[root-of-the-server]__c7691da2._.js +0 -4
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__c7691da2._.js.map +0 -1
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__e5ceba65._.js +0 -3
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__e5ceba65._.js.map +0 -1
  229. package/web/.next/server/chunks/ssr/[root-of-the-server]__f1048f45._.js +0 -4
  230. package/web/.next/server/chunks/ssr/[root-of-the-server]__f1048f45._.js.map +0 -1
  231. package/web/.next/server/chunks/ssr/_075fae20._.js +0 -4
  232. package/web/.next/server/chunks/ssr/_075fae20._.js.map +0 -1
  233. package/web/.next/server/chunks/ssr/_125c55af._.js +0 -4
  234. package/web/.next/server/chunks/ssr/_125c55af._.js.map +0 -1
  235. package/web/.next/server/chunks/ssr/_22e00a14._.js +0 -4
  236. package/web/.next/server/chunks/ssr/_22e00a14._.js.map +0 -1
  237. package/web/.next/server/chunks/ssr/_289a182a._.js +0 -3
  238. package/web/.next/server/chunks/ssr/_289a182a._.js.map +0 -1
  239. package/web/.next/server/chunks/ssr/_628621c7._.js +0 -4
  240. package/web/.next/server/chunks/ssr/_628621c7._.js.map +0 -1
  241. package/web/.next/server/chunks/ssr/_68996e5b._.js +0 -3
  242. package/web/.next/server/chunks/ssr/_68996e5b._.js.map +0 -1
  243. package/web/.next/server/chunks/ssr/_9412b27f._.js +0 -4
  244. package/web/.next/server/chunks/ssr/_9412b27f._.js.map +0 -1
  245. package/web/.next/server/chunks/ssr/_a5a5901d._.js +0 -4
  246. package/web/.next/server/chunks/ssr/_a5a5901d._.js.map +0 -1
  247. package/web/.next/server/chunks/ssr/_c3f595c6._.js +0 -4
  248. package/web/.next/server/chunks/ssr/_c3f595c6._.js.map +0 -1
  249. package/web/.next/server/chunks/ssr/_ce97386b._.js.map +0 -1
  250. package/web/.next/server/chunks/ssr/_f1ba9be6._.js +0 -6
  251. package/web/.next/server/chunks/ssr/_f1ba9be6._.js.map +0 -1
  252. package/web/.next/server/chunks/ssr/_f33cd07e._.js +0 -6
  253. package/web/.next/server/chunks/ssr/_f33cd07e._.js.map +0 -1
  254. package/web/.next/server/chunks/ssr/_f8b45233._.js +0 -4
  255. package/web/.next/server/chunks/ssr/_f8b45233._.js.map +0 -1
  256. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_select_tsx_45d6b8ae._.js +0 -3
  257. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_select_tsx_45d6b8ae._.js.map +0 -1
  258. package/web/.next/static/chunks/045afc2f5599f55e.js +0 -7
  259. package/web/.next/static/chunks/50a500c1cc2dee74.js +0 -1
  260. package/web/.next/static/chunks/6b7c8cc4aaebde67.js +0 -1
  261. package/web/.next/static/chunks/9059af01c4765dae.js +0 -1
  262. package/web/.next/static/chunks/c3a67566f78b5bc3.js +0 -1
  263. package/web/.next/static/chunks/e4f58183caab77d8.js +0 -1
  264. /package/web/.next/static/{Nr75BQmqg1jHaq9Qff_Wk → FImZqP4RlA8Up4DEd4Gzg}/_buildManifest.js +0 -0
  265. /package/web/.next/static/{Nr75BQmqg1jHaq9Qff_Wk → FImZqP4RlA8Up4DEd4Gzg}/_clientMiddlewareManifest.json +0 -0
  266. /package/web/.next/static/{Nr75BQmqg1jHaq9Qff_Wk → FImZqP4RlA8Up4DEd4Gzg}/_ssgManifest.js +0 -0
@@ -58,17 +58,6 @@ export interface ListUserRepositoriesOptions {
58
58
  limit?: number;
59
59
  /** Filter repos by name substring */
60
60
  search?: string;
61
- /** Owner (user or organization) to list repos for. Omit for the authenticated user's repos. */
62
- owner?: string;
63
- }
64
- /**
65
- * A GitHub organization the authenticated user belongs to.
66
- */
67
- export interface GitHubOrganization {
68
- /** Organization login handle (e.g. "my-org") */
69
- login: string;
70
- /** Organization description (may be empty string) */
71
- description: string;
72
61
  }
73
62
  /**
74
63
  * Options for cloning a repository.
@@ -112,20 +101,11 @@ export interface IGitHubRepositoryService {
112
101
  /**
113
102
  * List the authenticated user's GitHub repositories.
114
103
  *
115
- * When `options.owner` is provided, lists repositories for that user or organization instead.
116
- *
117
104
  * @param options - Optional filtering and pagination
118
105
  * @returns Array of GitHub repositories sorted by most recently pushed
119
106
  * @throws {GitHubRepoListError} if the list operation fails
120
107
  */
121
108
  listUserRepositories(options?: ListUserRepositoriesOptions): Promise<GitHubRepo[]>;
122
- /**
123
- * List organizations the authenticated user belongs to.
124
- *
125
- * @returns Array of GitHub organizations
126
- * @throws {GitHubRepoListError} if the list operation fails
127
- */
128
- listOrganizations(): Promise<GitHubOrganization[]>;
129
109
  /**
130
110
  * Parse a GitHub URL or shorthand into its owner/repo components.
131
111
  *
@@ -1 +1 @@
1
- {"version":3,"file":"github-repository-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/github-repository-service.interface.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAMD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,aAAa,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,aAAa,EAAE,MAAM,CAAC;CACvB;AAMD;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B;;;;;;;OAOG;IACH,eAAe,CACb,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;;OAQG;IACH,oBAAoB,CAAC,OAAO,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAEnF;;;;;OAKG;IACH,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAEnD;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC;IAE7C;;;;;;;;;OASG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACxD"}
1
+ {"version":3,"file":"github-repository-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/github-repository-service.interface.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM3C;AAMD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,aAAa,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,aAAa,EAAE,MAAM,CAAC;CACvB;AAMD;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B;;;;;;;OAOG;IACH,eAAe,CACb,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;OAMG;IACH,oBAAoB,CAAC,OAAO,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAEnF;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC;IAE7C;;;;;;;;;OASG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACxD"}
@@ -17,7 +17,7 @@ export { GitPrError, GitPrErrorCode } from './git-pr-service.interface.js';
17
17
  export type { IIdeLauncherService, LaunchIdeInput, LaunchIdeResult, LaunchIdeSuccess, LaunchIdeFailed, } from './ide-launcher-service.interface.js';
18
18
  export type { IDaemonService, DaemonState } from './daemon-service.interface.js';
19
19
  export type { IDeploymentService, DeploymentStatus } from './deployment-service.interface.js';
20
- export type { IGitHubRepositoryService, GitHubRepo, GitHubOrganization, ListUserRepositoriesOptions, CloneOptions, ParsedGitHubUrl, } from './github-repository-service.interface.js';
20
+ export type { IGitHubRepositoryService, GitHubRepo, ListUserRepositoriesOptions, CloneOptions, ParsedGitHubUrl, } from './github-repository-service.interface.js';
21
21
  export { GitHubAuthError, GitHubCloneError, GitHubUrlParseError, GitHubRepoListError, } from './github-repository-service.interface.js';
22
22
  export type { IInteractiveSessionService, StreamChunk, UnsubscribeFn, ChatState, } from './interactive-session-service.interface.js';
23
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,YAAY,EACV,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACjG,YAAY,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,YAAY,EACV,aAAa,EACb,QAAQ,EACR,cAAc,EACd,WAAW,EACX,aAAa,EACb,cAAc,GACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC3E,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC9F,YAAY,EACV,wBAAwB,EACxB,UAAU,EACV,kBAAkB,EAClB,2BAA2B,EAC3B,YAAY,EACZ,eAAe,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,YAAY,EACV,0BAA0B,EAC1B,WAAW,EACX,aAAa,EACb,SAAS,GACV,MAAM,4CAA4C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,YAAY,EACV,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACnF,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACjG,YAAY,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,YAAY,EACV,aAAa,EACb,QAAQ,EACR,cAAc,EACd,WAAW,EACX,aAAa,EACb,cAAc,GACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC3E,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjF,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC9F,YAAY,EACV,wBAAwB,EACxB,UAAU,EACV,2BAA2B,EAC3B,YAAY,EACZ,eAAe,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,YAAY,EACV,0BAA0B,EAC1B,WAAW,EACX,aAAa,EACb,SAAS,GACV,MAAM,4CAA4C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/src/infrastructure/di/container.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAmJrC;;;;;;GAMG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,SAAS,CAAC,CAgbrE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAEhD;AAED;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../../../packages/core/src/infrastructure/di/container.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAkJrC;;;;;;GAMG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,SAAS,CAAC,CA4arE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAEhD;AAED;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -81,7 +81,6 @@ import { ListRepositoriesUseCase } from '../../application/use-cases/repositorie
81
81
  import { DeleteRepositoryUseCase } from '../../application/use-cases/repositories/delete-repository.use-case.js';
82
82
  import { ImportGitHubRepositoryUseCase } from '../../application/use-cases/repositories/import-github-repository.use-case.js';
83
83
  import { ListGitHubRepositoriesUseCase } from '../../application/use-cases/repositories/list-github-repositories.use-case.js';
84
- import { ListGitHubOrganizationsUseCase } from '../../application/use-cases/repositories/list-github-organizations.use-case.js';
85
84
  import { CheckAndUnblockFeaturesUseCase } from '../../application/use-cases/features/check-and-unblock-features.use-case.js';
86
85
  import { UpdateFeatureLifecycleUseCase } from '../../application/use-cases/features/update/update-feature-lifecycle.use-case.js';
87
86
  import { CleanupFeatureWorktreeUseCase } from '../../application/use-cases/features/cleanup-feature-worktree.use-case.js';
@@ -319,7 +318,6 @@ export async function initializeContainer() {
319
318
  container.registerSingleton(DeleteRepositoryUseCase);
320
319
  container.registerSingleton(ImportGitHubRepositoryUseCase);
321
320
  container.registerSingleton(ListGitHubRepositoriesUseCase);
322
- container.registerSingleton(ListGitHubOrganizationsUseCase);
323
321
  // CheckAndUnblockFeaturesUseCase must be registered before UpdateFeatureLifecycleUseCase
324
322
  // because the latter injects the former via class token.
325
323
  container.registerSingleton(CheckAndUnblockFeaturesUseCase);
@@ -417,9 +415,6 @@ export async function initializeContainer() {
417
415
  container.register('ListGitHubRepositoriesUseCase', {
418
416
  useFactory: (c) => c.resolve(ListGitHubRepositoriesUseCase),
419
417
  });
420
- container.register('ListGitHubOrganizationsUseCase', {
421
- useFactory: (c) => c.resolve(ListGitHubOrganizationsUseCase),
422
- });
423
418
  container.register('CheckAndUnblockFeaturesUseCase', {
424
419
  useFactory: (c) => c.resolve(CheckAndUnblockFeaturesUseCase),
425
420
  });
@@ -5,13 +5,12 @@
5
5
  * checks, repository listing, cloning (with progress streaming), and URL parsing.
6
6
  */
7
7
  import type { ExecFunction } from '../git/worktree.service.js';
8
- import type { IGitHubRepositoryService, GitHubRepo, GitHubOrganization, ListUserRepositoriesOptions, CloneOptions, ParsedGitHubUrl } from '../../../application/ports/output/services/github-repository-service.interface.js';
8
+ import type { IGitHubRepositoryService, GitHubRepo, ListUserRepositoriesOptions, CloneOptions, ParsedGitHubUrl } from '../../../application/ports/output/services/github-repository-service.interface.js';
9
9
  export declare class GitHubRepositoryService implements IGitHubRepositoryService {
10
10
  private readonly execFile;
11
11
  constructor(execFile: ExecFunction);
12
12
  checkAuth(): Promise<void>;
13
13
  listUserRepositories(options?: ListUserRepositoriesOptions): Promise<GitHubRepo[]>;
14
- listOrganizations(): Promise<GitHubOrganization[]>;
15
14
  cloneRepository(nameWithOwner: string, destination: string, options?: CloneOptions): Promise<void>;
16
15
  parseGitHubUrl(url: string): ParsedGitHubUrl;
17
16
  getViewerPermission(repoPath: string): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"github-repository.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/infrastructure/services/external/github-repository.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EACV,wBAAwB,EACxB,UAAU,EACV,kBAAkB,EAClB,2BAA2B,EAC3B,YAAY,EACZ,eAAe,EAChB,MAAM,mFAAmF,CAAC;AAyB3F,qBACa,uBAAwB,YAAW,wBAAwB;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,YAAY;IAErE,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB1B,oBAAoB,CAAC,OAAO,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAuClF,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IA2BlD,eAAe,CACnB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,IAAI,CAAC;IAgDhB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe;IA2CtC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAyB9C,mBAAmB;CAOlC"}
1
+ {"version":3,"file":"github-repository.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/infrastructure/services/external/github-repository.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EACV,wBAAwB,EACxB,UAAU,EACV,2BAA2B,EAC3B,YAAY,EACZ,eAAe,EAChB,MAAM,mFAAmF,CAAC;AAyB3F,qBACa,uBAAwB,YAAW,wBAAwB;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,YAAY;IAErE,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB1B,oBAAoB,CAAC,OAAO,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAsClF,eAAe,CACnB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,IAAI,CAAC;IAgDhB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe;IA2CtC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAyB9C,mBAAmB;CAOlC"}
@@ -59,7 +59,6 @@ let GitHubRepositoryService = class GitHubRepositoryService {
59
59
  const args = [
60
60
  'repo',
61
61
  'list',
62
- ...(options?.owner ? [options.owner] : []),
63
62
  '--json',
64
63
  'name,nameWithOwner,description,isPrivate,pushedAt',
65
64
  '--limit',
@@ -83,25 +82,6 @@ let GitHubRepositoryService = class GitHubRepositoryService {
83
82
  throw new GitHubRepoListError(`Failed to list GitHub repositories: ${cause?.message ?? String(error)}`, cause);
84
83
  }
85
84
  }
86
- async listOrganizations() {
87
- try {
88
- const { stdout } = await this.execFile('gh', [
89
- 'api',
90
- '/user/orgs',
91
- '--jq',
92
- '[.[] | {login: .login, description: (.description // "")}]',
93
- ]);
94
- return JSON.parse(stdout);
95
- }
96
- catch (error) {
97
- const cause = error instanceof Error ? error : undefined;
98
- const errnoCode = error?.code;
99
- if (errnoCode === 'ENOENT') {
100
- throw new GitHubRepoListError('GitHub CLI (gh) is not installed. Install it from https://cli.github.com/', cause);
101
- }
102
- throw new GitHubRepoListError(`Failed to list GitHub organizations: ${cause?.message ?? String(error)}`, cause);
103
- }
104
- }
105
85
  async cloneRepository(nameWithOwner, destination, options) {
106
86
  // Validate destination path — reject path traversal
107
87
  const resolved = resolve(destination);
@@ -1 +1 @@
1
- {"version":3,"file":"add.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/add.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBpC,wBAAgB,gBAAgB,IAAI,OAAO,CA8E1C"}
1
+ {"version":3,"file":"add.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/add.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,wBAAgB,gBAAgB,IAAI,OAAO,CAyE1C"}
@@ -13,7 +13,6 @@ import { container } from '../../../../../packages/core/src/infrastructure/di/co
13
13
  import { getSettings } from '../../../../../packages/core/src/infrastructure/services/settings.service.js';
14
14
  import { ImportGitHubRepositoryUseCase } from '../../../../../packages/core/src/application/use-cases/repositories/import-github-repository.use-case.js';
15
15
  import { ListGitHubRepositoriesUseCase } from '../../../../../packages/core/src/application/use-cases/repositories/list-github-repositories.use-case.js';
16
- import { ListGitHubOrganizationsUseCase } from '../../../../../packages/core/src/application/use-cases/repositories/list-github-organizations.use-case.js';
17
16
  import { GitHubAuthError, GitHubCloneError, GitHubUrlParseError, } from '../../../../../packages/core/src/application/ports/output/services/github-repository-service.interface.js';
18
17
  import { messages } from '../../ui/index.js';
19
18
  import { githubImportWizard } from '../../../tui/wizards/github-import.wizard.js';
@@ -36,8 +35,7 @@ export function createAddCommand() {
36
35
  // Interactive wizard
37
36
  const gitHubService = container.resolve('IGitHubRepositoryService');
38
37
  const listUseCase = container.resolve(ListGitHubRepositoriesUseCase);
39
- const listOrgsUseCase = container.resolve(ListGitHubOrganizationsUseCase);
40
- const wizardResult = await githubImportWizard(gitHubService, listUseCase, listOrgsUseCase);
38
+ const wizardResult = await githubImportWizard(gitHubService, listUseCase);
41
39
  url = wizardResult.url;
42
40
  if (!dest && wizardResult.dest) {
43
41
  dest = wizardResult.dest;
@@ -101,6 +101,7 @@ async function bootstrap() {
101
101
  .name('shep')
102
102
  .description(description)
103
103
  .version(version, '-v, --version', 'Display version number')
104
+ .addHelpCommand('help [command]', 'Display help for a command')
104
105
  // task-10: Default action starts the daemon (or shows already-running URL).
105
106
  // The onboarding gate above (lines 82-89) ensures the wizard runs on first launch;
106
107
  // after the gate, startDaemon() is the correct next step in both cases.
@@ -3,12 +3,10 @@
3
3
  *
4
4
  * Interactive TUI wizard that guides users through importing a GitHub repository.
5
5
  * Offers two paths: paste a GitHub URL or browse the user's repositories.
6
- * Supports browsing repos from multiple organizations.
7
6
  * Returns the selected URL/nameWithOwner and optional destination override.
8
7
  */
9
8
  import type { IGitHubRepositoryService } from '../../../../packages/core/src/application/ports/output/services/github-repository-service.interface.js';
10
9
  import type { ListGitHubRepositoriesUseCase } from '../../../../packages/core/src/application/use-cases/repositories/list-github-repositories.use-case.js';
11
- import type { ListGitHubOrganizationsUseCase } from '../../../../packages/core/src/application/use-cases/repositories/list-github-organizations.use-case.js';
12
10
  /**
13
11
  * Result returned by the GitHub import wizard.
14
12
  */
@@ -24,13 +22,12 @@ export interface GitHubImportWizardResult {
24
22
  * Steps:
25
23
  * 1. Choose import method (URL input or browse repos)
26
24
  * 2a. If URL: prompt for URL, validate with parseGitHubUrl
27
- * 2b. If browse: optionally select an org, then fetch repos via listUseCase, display select list
25
+ * 2b. If browse: fetch repos via listUseCase, display select list
28
26
  * 3. Optionally prompt for destination directory override
29
27
  *
30
28
  * @param gitHubService - Service for URL validation
31
29
  * @param listUseCase - Use case for listing user repos
32
- * @param listOrgsUseCase - Use case for listing user's organizations
33
30
  * @returns The selected import target and optional destination
34
31
  */
35
- export declare function githubImportWizard(gitHubService: IGitHubRepositoryService, listUseCase: ListGitHubRepositoriesUseCase, listOrgsUseCase?: ListGitHubOrganizationsUseCase): Promise<GitHubImportWizardResult>;
32
+ export declare function githubImportWizard(gitHubService: IGitHubRepositoryService, listUseCase: ListGitHubRepositoriesUseCase): Promise<GitHubImportWizardResult>;
36
33
  //# sourceMappingURL=github-import.wizard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"github-import.wizard.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/wizards/github-import.wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,4EAA4E,CAAC;AAEpF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,2EAA2E,CAAC;AAC/H,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,4EAA4E,CAAC;AAIjI;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAuBD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,wBAAwB,EACvC,WAAW,EAAE,6BAA6B,EAC1C,eAAe,CAAC,EAAE,8BAA8B,GAC/C,OAAO,CAAC,wBAAwB,CAAC,CAqCnC"}
1
+ {"version":3,"file":"github-import.wizard.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/wizards/github-import.wizard.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,4EAA4E,CAAC;AAEpF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,2EAA2E,CAAC;AAI/H;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAoBD;;;;;;;;;;;;GAYG;AACH,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,wBAAwB,EACvC,WAAW,EAAE,6BAA6B,GACzC,OAAO,CAAC,wBAAwB,CAAC,CAqCnC"}
@@ -3,15 +3,12 @@
3
3
  *
4
4
  * Interactive TUI wizard that guides users through importing a GitHub repository.
5
5
  * Offers two paths: paste a GitHub URL or browse the user's repositories.
6
- * Supports browsing repos from multiple organizations.
7
6
  * Returns the selected URL/nameWithOwner and optional destination override.
8
7
  */
9
8
  import { select, input } from '@inquirer/prompts';
10
9
  import { GitHubUrlParseError } from '../../../../packages/core/src/application/ports/output/services/github-repository-service.interface.js';
11
10
  import { getTuiI18n } from '../i18n.js';
12
11
  import { shepTheme } from '../themes/shep.theme.js';
13
- /** Sentinel value representing the authenticated user's personal account */
14
- const PERSONAL_OWNER = '__personal__';
15
12
  /**
16
13
  * Format a GitHub repo for display in the select list.
17
14
  * Shows name, visibility badge, and truncated description.
@@ -30,15 +27,14 @@ function formatRepoChoice(repo) {
30
27
  * Steps:
31
28
  * 1. Choose import method (URL input or browse repos)
32
29
  * 2a. If URL: prompt for URL, validate with parseGitHubUrl
33
- * 2b. If browse: optionally select an org, then fetch repos via listUseCase, display select list
30
+ * 2b. If browse: fetch repos via listUseCase, display select list
34
31
  * 3. Optionally prompt for destination directory override
35
32
  *
36
33
  * @param gitHubService - Service for URL validation
37
34
  * @param listUseCase - Use case for listing user repos
38
- * @param listOrgsUseCase - Use case for listing user's organizations
39
35
  * @returns The selected import target and optional destination
40
36
  */
41
- export async function githubImportWizard(gitHubService, listUseCase, listOrgsUseCase) {
37
+ export async function githubImportWizard(gitHubService, listUseCase) {
42
38
  // Step 1: Choose import method
43
39
  const t = getTuiI18n().t;
44
40
  const method = await select({
@@ -62,7 +58,7 @@ export async function githubImportWizard(gitHubService, listUseCase, listOrgsUse
62
58
  url = await promptForUrl(gitHubService);
63
59
  }
64
60
  else {
65
- url = await promptForBrowse(listUseCase, listOrgsUseCase);
61
+ url = await promptForBrowse(listUseCase);
66
62
  }
67
63
  // Step 3: Optional destination override
68
64
  const dest = await promptForDestination();
@@ -101,39 +97,11 @@ async function promptForUrl(gitHubService) {
101
97
  }
102
98
  /**
103
99
  * Prompt the user to browse and select from their GitHub repositories.
104
- * If organizations are available, first prompts the user to select an owner.
100
+ * Fetches repos via the list use case and displays them in a select prompt.
105
101
  */
106
- async function promptForBrowse(listUseCase, listOrgsUseCase) {
102
+ async function promptForBrowse(listUseCase) {
103
+ const repos = await listUseCase.execute({ limit: 30 });
107
104
  const t = getTuiI18n().t;
108
- let owner;
109
- // Try to load organizations for the owner selector
110
- if (listOrgsUseCase) {
111
- try {
112
- const orgs = await listOrgsUseCase.execute();
113
- if (orgs.length > 0) {
114
- const ownerChoices = [
115
- { name: 'My repositories', value: PERSONAL_OWNER },
116
- ...orgs.map((org) => ({
117
- name: org.login,
118
- value: org.login,
119
- description: org.description || undefined,
120
- })),
121
- ];
122
- const selectedOwner = await select({
123
- message: 'Select account',
124
- choices: ownerChoices,
125
- theme: shepTheme,
126
- });
127
- if (selectedOwner !== PERSONAL_OWNER) {
128
- owner = selectedOwner;
129
- }
130
- }
131
- }
132
- catch {
133
- // Org listing failure is non-critical — proceed with personal repos
134
- }
135
- }
136
- const repos = await listUseCase.execute({ limit: 30, owner });
137
105
  if (repos.length === 0) {
138
106
  throw new Error(t('tui:wizards.githubImport.noRepos'));
139
107
  }
@@ -2,7 +2,6 @@ import type { GitHubRepo } from '../../../../../packages/core/src/application/po
2
2
  interface ListGitHubRepositoriesInput {
3
3
  search?: string;
4
4
  limit?: number;
5
- owner?: string;
6
5
  }
7
6
  export declare function listGitHubRepositories(input?: ListGitHubRepositoriesInput): Promise<{
8
7
  repos?: GitHubRepo[];
@@ -1 +1 @@
1
- {"version":3,"file":"list-github-repositories.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/list-github-repositories.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oFAAoF,CAAC;AAGrH,UAAU,2BAA2B;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,sBAAsB,CAC1C,KAAK,CAAC,EAAE,2BAA2B,GAClC,OAAO,CAAC;IAAE,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAYnD"}
1
+ {"version":3,"file":"list-github-repositories.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/list-github-repositories.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oFAAoF,CAAC;AAGrH,UAAU,2BAA2B;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,sBAAsB,CAC1C,KAAK,CAAC,EAAE,2BAA2B,GAClC,OAAO,CAAC;IAAE,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAYnD"}
@@ -1,5 +1,4 @@
1
1
  import type { GitHubRepo } from '../../../../../../packages/core/src/application/ports/output/services/github-repository-service.interface.js';
2
- import type { GitHubOrganization } from '../../../../../../packages/core/src/application/ports/output/services/github-repository-service.interface.js';
3
2
  export interface GitHubRepoBrowserProps {
4
3
  onSelect: (nameWithOwner: string) => void;
5
4
  loading?: boolean;
@@ -7,16 +6,10 @@ export interface GitHubRepoBrowserProps {
7
6
  fetchRepos?: (input?: {
8
7
  search?: string;
9
8
  limit?: number;
10
- owner?: string;
11
9
  }) => Promise<{
12
10
  repos?: GitHubRepo[];
13
11
  error?: string;
14
12
  }>;
15
- /** Override the fetch function for testing/stories */
16
- fetchOrgs?: () => Promise<{
17
- orgs?: GitHubOrganization[];
18
- error?: string;
19
- }>;
20
13
  }
21
- export declare function GitHubRepoBrowser({ onSelect, loading: externalLoading, fetchRepos, fetchOrgs, }: GitHubRepoBrowserProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare function GitHubRepoBrowser({ onSelect, loading: externalLoading, fetchRepos, }: GitHubRepoBrowserProps): import("react/jsx-runtime").JSX.Element;
22
15
  //# sourceMappingURL=github-repo-browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"github-repo-browser.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/github-import-dialog/github-repo-browser.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oFAAoF,CAAC;AACrH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oFAAoF,CAAC;AAK7H,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,KAAK,OAAO,CAAC;QAAE,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,IAAI,CAAC,EAAE,kBAAkB,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC5E;AAED,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,OAAO,EAAE,eAAuB,EAChC,UAAmC,EACnC,SAAmC,GACpC,EAAE,sBAAsB,2CA+KxB"}
1
+ {"version":3,"file":"github-repo-browser.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/github-import-dialog/github-repo-browser.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oFAAoF,CAAC;AAErH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,KAAK,OAAO,CAAC;QAAE,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACzD;AAED,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,OAAO,EAAE,eAAuB,EAChC,UAAmC,GACpC,EAAE,sBAAsB,2CAsIxB"}
@@ -5,44 +5,18 @@ import { Lock, Globe, Loader2, Search, AlertCircle } from 'lucide-react';
5
5
  import { Input } from '../../ui/input.js';
6
6
  import { Badge } from '../../ui/badge.js';
7
7
  import { Skeleton } from '../../ui/skeleton.js';
8
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '../../ui/select.js';
9
8
  import { listGitHubRepositories } from '../../../app/actions/list-github-repositories.js';
10
- import { listGitHubOrganizations } from '../../../app/actions/list-github-organizations.js';
11
- /** Sentinel value representing the authenticated user's personal account */
12
- const PERSONAL_OWNER = '__personal__';
13
- export function GitHubRepoBrowser({ onSelect, loading: externalLoading = false, fetchRepos = listGitHubRepositories, fetchOrgs = listGitHubOrganizations, }) {
9
+ export function GitHubRepoBrowser({ onSelect, loading: externalLoading = false, fetchRepos = listGitHubRepositories, }) {
14
10
  const [repos, setRepos] = useState([]);
15
- const [orgs, setOrgs] = useState([]);
16
11
  const [fetching, setFetching] = useState(true);
17
12
  const [error, setError] = useState('');
18
13
  const [search, setSearch] = useState('');
19
- const [selectedOwner, setSelectedOwner] = useState(PERSONAL_OWNER);
20
14
  const debounceRef = useRef(null);
21
- // Fetch organizations on mount
22
- useEffect(() => {
23
- async function loadOrgs() {
24
- try {
25
- const result = await fetchOrgs();
26
- if (result.orgs) {
27
- setOrgs(result.orgs);
28
- }
29
- }
30
- catch {
31
- // Org listing failure is non-critical — user can still browse personal repos
32
- }
33
- }
34
- loadOrgs();
35
- }, [fetchOrgs]);
36
- const fetchData = useCallback(async (searchTerm, owner) => {
15
+ const fetchData = useCallback(async (searchTerm) => {
37
16
  setFetching(true);
38
17
  setError('');
39
18
  try {
40
- const input = {};
41
- if (searchTerm)
42
- input.search = searchTerm;
43
- if (owner && owner !== PERSONAL_OWNER)
44
- input.owner = owner;
45
- const result = await fetchRepos(Object.keys(input).length > 0 ? input : undefined);
19
+ const result = await fetchRepos(searchTerm ? { search: searchTerm } : undefined);
46
20
  if (result.error) {
47
21
  setError(result.error);
48
22
  setRepos([]);
@@ -60,23 +34,19 @@ export function GitHubRepoBrowser({ onSelect, loading: externalLoading = false,
60
34
  }
61
35
  }, [fetchRepos]);
62
36
  useEffect(() => {
63
- fetchData(search || undefined, selectedOwner);
64
- }, [fetchData, selectedOwner]); // eslint-disable-line react-hooks/exhaustive-deps
37
+ fetchData();
38
+ }, [fetchData]);
65
39
  function handleSearchChange(value) {
66
40
  setSearch(value);
67
41
  if (debounceRef.current)
68
42
  clearTimeout(debounceRef.current);
69
43
  debounceRef.current = setTimeout(() => {
70
- fetchData(value || undefined, selectedOwner);
44
+ fetchData(value || undefined);
71
45
  }, 300);
72
46
  }
73
- function handleOwnerChange(value) {
74
- setSelectedOwner(value);
75
- setSearch('');
76
- }
77
47
  const disabled = externalLoading;
78
48
  if (error && !fetching) {
79
49
  return (_jsxs("div", { className: "flex flex-col items-center gap-2 py-8 text-center", "data-testid": "repo-browser-error", children: [_jsx(AlertCircle, { className: "text-destructive h-8 w-8" }), _jsx("p", { className: "text-destructive text-sm", children: error })] }));
80
50
  }
81
- return (_jsxs("div", { className: "flex flex-col gap-3", children: [orgs.length > 0 ? (_jsxs(Select, { value: selectedOwner, onValueChange: handleOwnerChange, disabled: disabled, children: [_jsx(SelectTrigger, { "aria-label": "Select owner", children: _jsx(SelectValue, { placeholder: "Select owner" }) }), _jsxs(SelectContent, { children: [_jsx(SelectItem, { value: PERSONAL_OWNER, children: "My repositories" }), orgs.map((org) => (_jsx(SelectItem, { value: org.login, children: org.login }, org.login)))] })] })) : null, _jsxs("div", { className: "relative", children: [_jsx(Search, { className: "text-muted-foreground absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2" }), _jsx(Input, { placeholder: "Search repositories...", value: search, onChange: (e) => handleSearchChange(e.target.value), className: "ps-9", disabled: disabled, "aria-label": "Search repositories" })] }), _jsx("div", { className: "max-h-64 overflow-x-hidden overflow-y-auto rounded-md border", role: "listbox", "aria-label": "GitHub repositories", children: fetching ? (_jsx("div", { className: "flex flex-col gap-2 p-3", "data-testid": "repo-browser-loading", children: Array.from({ length: 5 }).map((_, i) => (_jsxs("div", { className: "flex flex-col gap-1", children: [_jsx(Skeleton, { className: "h-4 w-48" }), _jsx(Skeleton, { className: "h-3 w-72" })] }, `skeleton-${String(i)}`))) })) : repos.length === 0 ? (_jsx("div", { className: "text-muted-foreground py-8 text-center text-sm", "data-testid": "repo-browser-empty", children: "No repositories found" })) : (repos.map((repo) => (_jsxs("button", { type: "button", role: "option", "aria-selected": false, className: "hover:bg-accent flex w-full items-start gap-2 border-b px-3 py-2.5 text-start last:border-b-0 disabled:opacity-50", onClick: () => onSelect(repo.nameWithOwner), disabled: disabled, children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "truncate text-sm font-medium", children: repo.nameWithOwner }), _jsx(Badge, { variant: repo.isPrivate ? 'secondary' : 'outline', className: "shrink-0 text-xs", children: repo.isPrivate ? (_jsxs(_Fragment, { children: [_jsx(Lock, { className: "me-1 h-3 w-3" }), "Private"] })) : (_jsxs(_Fragment, { children: [_jsx(Globe, { className: "me-1 h-3 w-3" }), "Public"] })) })] }), repo.description ? (_jsx("p", { className: "text-muted-foreground mt-0.5 truncate text-xs", children: repo.description })) : null] }), disabled ? _jsx(Loader2, { className: "mt-0.5 h-4 w-4 shrink-0 animate-spin" }) : null] }, repo.nameWithOwner)))) })] }));
51
+ return (_jsxs("div", { className: "flex flex-col gap-3", children: [_jsxs("div", { className: "relative", children: [_jsx(Search, { className: "text-muted-foreground absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2" }), _jsx(Input, { placeholder: "Search repositories...", value: search, onChange: (e) => handleSearchChange(e.target.value), className: "ps-9", disabled: disabled, "aria-label": "Search repositories" })] }), _jsx("div", { className: "max-h-64 overflow-x-hidden overflow-y-auto rounded-md border", role: "listbox", "aria-label": "GitHub repositories", children: fetching ? (_jsx("div", { className: "flex flex-col gap-2 p-3", "data-testid": "repo-browser-loading", children: Array.from({ length: 5 }).map((_, i) => (_jsxs("div", { className: "flex flex-col gap-1", children: [_jsx(Skeleton, { className: "h-4 w-48" }), _jsx(Skeleton, { className: "h-3 w-72" })] }, `skeleton-${String(i)}`))) })) : repos.length === 0 ? (_jsx("div", { className: "text-muted-foreground py-8 text-center text-sm", "data-testid": "repo-browser-empty", children: "No repositories found" })) : (repos.map((repo) => (_jsxs("button", { type: "button", role: "option", "aria-selected": false, className: "hover:bg-accent flex w-full items-start gap-2 border-b px-3 py-2.5 text-start last:border-b-0 disabled:opacity-50", onClick: () => onSelect(repo.nameWithOwner), disabled: disabled, children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "truncate text-sm font-medium", children: repo.nameWithOwner }), _jsx(Badge, { variant: repo.isPrivate ? 'secondary' : 'outline', className: "shrink-0 text-xs", children: repo.isPrivate ? (_jsxs(_Fragment, { children: [_jsx(Lock, { className: "me-1 h-3 w-3" }), "Private"] })) : (_jsxs(_Fragment, { children: [_jsx(Globe, { className: "me-1 h-3 w-3" }), "Public"] })) })] }), repo.description ? (_jsx("p", { className: "text-muted-foreground mt-0.5 truncate text-xs", children: repo.description })) : null] }), disabled ? _jsx(Loader2, { className: "mt-0.5 h-4 w-4 shrink-0 animate-spin" }) : null] }, repo.nameWithOwner)))) })] }));
82
52
  }
@@ -4,7 +4,6 @@ declare const meta: Meta<typeof GitHubRepoBrowser>;
4
4
  export default meta;
5
5
  type Story = StoryObj<typeof GitHubRepoBrowser>;
6
6
  export declare const Default: Story;
7
- export declare const WithOrganizations: Story;
8
7
  export declare const Loading: Story;
9
8
  export declare const Empty: Story;
10
9
  export declare const Error: Story;
@@ -1 +1 @@
1
- {"version":3,"file":"github-repo-browser.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/github-import-dialog/github-repo-browser.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAgE1D,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,iBAAiB,CAiBxC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhD,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAU/B,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAKnB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAQnB,CAAC"}
1
+ {"version":3,"file":"github-repo-browser.stories.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/web/components/common/github-import-dialog/github-repo-browser.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAyC1D,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,iBAAiB,CAiBxC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhD,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAInB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAOnB,CAAC"}
@@ -38,26 +38,6 @@ const mockRepos = [
38
38
  pushedAt: '2025-03-11T09:00:00Z',
39
39
  },
40
40
  ];
41
- const mockOrgRepos = [
42
- {
43
- name: 'platform',
44
- nameWithOwner: 'acme-corp/platform',
45
- description: 'Core platform monorepo',
46
- isPrivate: true,
47
- pushedAt: '2025-03-15T10:00:00Z',
48
- },
49
- {
50
- name: 'design-system',
51
- nameWithOwner: 'acme-corp/design-system',
52
- description: 'Shared design system components',
53
- isPrivate: false,
54
- pushedAt: '2025-03-14T08:00:00Z',
55
- },
56
- ];
57
- const mockOrgs = [
58
- { login: 'acme-corp', description: 'Acme Corporation' },
59
- { login: 'open-source-collective', description: 'Open source projects' },
60
- ];
61
41
  const meta = {
62
42
  title: 'Composed/GitHubRepoBrowser',
63
43
  component: GitHubRepoBrowser,
@@ -76,31 +56,17 @@ export default meta;
76
56
  export const Default = {
77
57
  args: {
78
58
  fetchRepos: () => Promise.resolve({ repos: mockRepos }),
79
- fetchOrgs: () => Promise.resolve({ orgs: [] }),
80
- },
81
- };
82
- export const WithOrganizations = {
83
- args: {
84
- fetchRepos: (input) => {
85
- if (input?.owner === 'acme-corp') {
86
- return Promise.resolve({ repos: mockOrgRepos });
87
- }
88
- return Promise.resolve({ repos: mockRepos });
89
- },
90
- fetchOrgs: () => Promise.resolve({ orgs: mockOrgs }),
91
59
  },
92
60
  };
93
61
  export const Loading = {
94
62
  args: {
95
63
  // eslint-disable-next-line @typescript-eslint/no-empty-function
96
64
  fetchRepos: () => new Promise(() => { }), // never resolves
97
- fetchOrgs: () => Promise.resolve({ orgs: [] }),
98
65
  },
99
66
  };
100
67
  export const Empty = {
101
68
  args: {
102
69
  fetchRepos: () => Promise.resolve({ repos: [] }),
103
- fetchOrgs: () => Promise.resolve({ orgs: [] }),
104
70
  },
105
71
  };
106
72
  export const Error = {
@@ -108,6 +74,5 @@ export const Error = {
108
74
  fetchRepos: () => Promise.resolve({
109
75
  error: 'GitHub CLI is not authenticated. Run `gh auth login` to sign in.',
110
76
  }),
111
- fetchOrgs: () => Promise.resolve({ orgs: [] }),
112
77
  },
113
78
  };