@shepai/cli 1.173.0 → 1.174.0-pr531.0f666b7

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 (407) hide show
  1. package/apis/json-schema/Repository.yaml +6 -0
  2. package/dist/packages/core/src/application/ports/output/repositories/repository-repository.interface.d.ts +3 -1
  3. package/dist/packages/core/src/application/ports/output/repositories/repository-repository.interface.d.ts.map +1 -1
  4. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts +28 -0
  5. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map +1 -1
  6. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.js +2 -0
  7. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.d.ts +47 -0
  8. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.d.ts.map +1 -1
  9. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.js +12 -0
  10. package/dist/packages/core/src/application/use-cases/features/create/create-feature-from-remote.use-case.d.ts +67 -0
  11. package/dist/packages/core/src/application/use-cases/features/create/create-feature-from-remote.use-case.d.ts.map +1 -0
  12. package/dist/packages/core/src/application/use-cases/features/create/create-feature-from-remote.use-case.js +125 -0
  13. package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.d.ts +13 -4
  14. package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.d.ts.map +1 -1
  15. package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.js +54 -10
  16. package/dist/packages/core/src/application/use-cases/repositories/init-remote-repository.use-case.d.ts +30 -0
  17. package/dist/packages/core/src/application/use-cases/repositories/init-remote-repository.use-case.d.ts.map +1 -0
  18. package/dist/packages/core/src/application/use-cases/repositories/init-remote-repository.use-case.js +50 -0
  19. package/dist/packages/core/src/domain/generated/output.d.ts +8 -0
  20. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  21. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  22. package/dist/packages/core/src/infrastructure/di/container.js +10 -0
  23. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/repository.mapper.d.ts +2 -0
  24. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/repository.mapper.d.ts.map +1 -1
  25. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/repository.mapper.js +4 -0
  26. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/055-add-repository-fork-fields.d.ts +12 -0
  27. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/055-add-repository-fork-fields.d.ts.map +1 -0
  28. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/055-add-repository-fork-fields.js +26 -0
  29. package/dist/packages/core/src/infrastructure/repositories/sqlite-repository.repository.d.ts +2 -1
  30. package/dist/packages/core/src/infrastructure/repositories/sqlite-repository.repository.d.ts.map +1 -1
  31. package/dist/packages/core/src/infrastructure/repositories/sqlite-repository.repository.js +14 -0
  32. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.d.ts +4 -1
  33. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.d.ts.map +1 -1
  34. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.js +55 -1
  35. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts +5 -0
  36. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.d.ts.map +1 -1
  37. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +32 -0
  38. package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
  39. package/dist/src/presentation/cli/commands/feat/new.command.js +32 -6
  40. package/dist/src/presentation/cli/commands/repo/index.d.ts.map +1 -1
  41. package/dist/src/presentation/cli/commands/repo/index.js +3 -1
  42. package/dist/src/presentation/cli/commands/repo/init-remote.command.d.ts +15 -0
  43. package/dist/src/presentation/cli/commands/repo/init-remote.command.d.ts.map +1 -0
  44. package/dist/src/presentation/cli/commands/repo/init-remote.command.js +44 -0
  45. package/dist/src/presentation/web/app/actions/create-feature-from-remote.d.ts +31 -0
  46. package/dist/src/presentation/web/app/actions/create-feature-from-remote.d.ts.map +1 -0
  47. package/dist/src/presentation/web/app/actions/create-feature-from-remote.js +69 -0
  48. package/dist/src/presentation/web/app/actions/import-github-repository.d.ts +1 -0
  49. package/dist/src/presentation/web/app/actions/import-github-repository.d.ts.map +1 -1
  50. package/dist/src/presentation/web/app/actions/import-github-repository.js +1 -1
  51. package/dist/src/presentation/web/app/features/feature-tree-page-client.d.ts +7 -1
  52. package/dist/src/presentation/web/app/features/feature-tree-page-client.d.ts.map +1 -1
  53. package/dist/src/presentation/web/app/features/feature-tree-page-client.js +142 -3
  54. package/dist/src/presentation/web/app/features/get-feature-tree-data.d.ts.map +1 -1
  55. package/dist/src/presentation/web/app/features/get-feature-tree-data.js +4 -1
  56. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +2 -0
  57. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
  58. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +1 -1
  59. package/dist/src/presentation/web/components/common/feature-create-drawer/repository-combobox.stories.d.ts +2 -0
  60. package/dist/src/presentation/web/components/common/feature-create-drawer/repository-combobox.stories.d.ts.map +1 -1
  61. package/dist/src/presentation/web/components/common/feature-create-drawer/repository-combobox.stories.js +22 -0
  62. package/dist/src/presentation/web/components/features/feature-tree-table/feature-tree-table.d.ts +21 -5
  63. package/dist/src/presentation/web/components/features/feature-tree-table/feature-tree-table.d.ts.map +1 -1
  64. package/dist/src/presentation/web/components/features/feature-tree-table/feature-tree-table.js +169 -87
  65. package/dist/src/presentation/web/components/features/feature-tree-table/index.d.ts +2 -2
  66. package/dist/src/presentation/web/components/features/feature-tree-table/index.d.ts.map +1 -1
  67. package/dist/src/presentation/web/components/features/feature-tree-table/index.js +1 -1
  68. package/dist/src/presentation/web/lib/feature-flags.js +1 -1
  69. package/dist/translations/ar/cli.json +12 -0
  70. package/dist/translations/de/cli.json +12 -0
  71. package/dist/translations/en/cli.json +12 -0
  72. package/dist/translations/es/cli.json +12 -0
  73. package/dist/translations/fr/cli.json +12 -0
  74. package/dist/translations/he/cli.json +12 -0
  75. package/dist/translations/pt/cli.json +12 -0
  76. package/dist/translations/ru/cli.json +12 -0
  77. package/dist/tsconfig.build.tsbuildinfo +1 -1
  78. package/package.json +1 -1
  79. package/web/.next/BUILD_ID +1 -1
  80. package/web/.next/build-manifest.json +4 -4
  81. package/web/.next/fallback-build-manifest.json +2 -2
  82. package/web/.next/prerender-manifest.json +3 -3
  83. package/web/.next/required-server-files.js +3 -3
  84. package/web/.next/required-server-files.json +3 -3
  85. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/build-manifest.json +2 -2
  86. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +29 -29
  87. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +2 -1
  88. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  89. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  90. package/web/.next/server/app/(dashboard)/@drawer/chat/page/build-manifest.json +2 -2
  91. package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +27 -27
  92. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +2 -1
  93. package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
  94. package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
  95. package/web/.next/server/app/(dashboard)/@drawer/create/page/build-manifest.json +2 -2
  96. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +30 -30
  97. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +2 -1
  98. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  99. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  100. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/build-manifest.json +2 -2
  101. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +38 -38
  102. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +2 -1
  103. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  104. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  105. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/build-manifest.json +2 -2
  106. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +38 -38
  107. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +2 -1
  108. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  109. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  110. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/build-manifest.json +2 -2
  111. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  112. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +2 -1
  113. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  114. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  115. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/build-manifest.json +2 -2
  116. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  117. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +2 -1
  118. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  119. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  120. package/web/.next/server/app/(dashboard)/chat/page/build-manifest.json +2 -2
  121. package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +27 -27
  122. package/web/.next/server/app/(dashboard)/chat/page.js +2 -1
  123. package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  124. package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  125. package/web/.next/server/app/(dashboard)/create/page/build-manifest.json +2 -2
  126. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +30 -30
  127. package/web/.next/server/app/(dashboard)/create/page.js +2 -1
  128. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  129. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  130. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/build-manifest.json +2 -2
  131. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +38 -38
  132. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +2 -1
  133. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  134. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  135. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/build-manifest.json +2 -2
  136. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +38 -38
  137. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +2 -1
  138. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  139. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  140. package/web/.next/server/app/(dashboard)/page/build-manifest.json +2 -2
  141. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +27 -27
  142. package/web/.next/server/app/(dashboard)/page.js +2 -1
  143. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  144. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  145. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/build-manifest.json +2 -2
  146. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +28 -28
  147. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +2 -1
  148. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
  149. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
  150. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/build-manifest.json +2 -2
  151. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +28 -28
  152. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +2 -1
  153. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  154. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  155. package/web/.next/server/app/_global-error/page/build-manifest.json +2 -2
  156. package/web/.next/server/app/_global-error.html +2 -2
  157. package/web/.next/server/app/_global-error.rsc +1 -1
  158. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  159. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  160. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  161. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  162. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  163. package/web/.next/server/app/_not-found/page/build-manifest.json +2 -2
  164. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +6 -6
  165. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  166. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  167. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  168. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  169. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  170. package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
  171. package/web/.next/server/app/features/page/build-manifest.json +2 -2
  172. package/web/.next/server/app/features/page/server-reference-manifest.json +6 -6
  173. package/web/.next/server/app/features/page.js.nft.json +1 -1
  174. package/web/.next/server/app/features/page_client-reference-manifest.js +1 -1
  175. package/web/.next/server/app/settings/page/build-manifest.json +2 -2
  176. package/web/.next/server/app/settings/page/server-reference-manifest.json +9 -9
  177. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  178. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  179. package/web/.next/server/app/skills/page/build-manifest.json +2 -2
  180. package/web/.next/server/app/skills/page/server-reference-manifest.json +13 -13
  181. package/web/.next/server/app/skills/page.js +2 -1
  182. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  183. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  184. package/web/.next/server/app/tools/page/build-manifest.json +2 -2
  185. package/web/.next/server/app/tools/page/server-reference-manifest.json +11 -11
  186. package/web/.next/server/app/tools/page.js +2 -1
  187. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  188. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  189. package/web/.next/server/app/version/page/build-manifest.json +2 -2
  190. package/web/.next/server/app/version/page/server-reference-manifest.json +6 -6
  191. package/web/.next/server/app/version/page.js.nft.json +1 -1
  192. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  193. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  194. package/web/.next/server/chunks/[root-of-the-server]__c78383b1._.js.map +1 -1
  195. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  196. package/web/.next/server/chunks/ssr/403f9_next_dist_a53cb908._.js +1 -1
  197. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_ceb2fa1e._.js +1 -1
  198. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_ad0071c9.js +3 -0
  199. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_ad0071c9.js.map +1 -0
  200. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_90d98b2b.js +3 -0
  201. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_chat_page_actions_90d98b2b.js.map +1 -0
  202. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_chat_page_actions_d3828105.js +3 -0
  203. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_chat_page_actions_d3828105.js.map +1 -0
  204. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  205. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  206. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +2 -2
  207. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
  208. package/web/.next/server/chunks/ssr/[root-of-the-server]__08c912ab._.js +1 -1
  209. package/web/.next/server/chunks/ssr/[root-of-the-server]__08c912ab._.js.map +1 -1
  210. package/web/.next/server/chunks/ssr/[root-of-the-server]__0c5452c3._.js +1 -1
  211. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js +1 -1
  212. package/web/.next/server/chunks/ssr/[root-of-the-server]__1cd4327c._.js.map +1 -1
  213. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js +1 -1
  214. package/web/.next/server/chunks/ssr/[root-of-the-server]__1f389e5d._.js.map +1 -1
  215. package/web/.next/server/chunks/ssr/[root-of-the-server]__22d17c66._.js +3 -0
  216. package/web/.next/server/chunks/ssr/[root-of-the-server]__22d17c66._.js.map +1 -0
  217. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
  218. package/web/.next/server/chunks/ssr/[root-of-the-server]__51ec77a8._.js +3 -0
  219. package/web/.next/server/chunks/ssr/[root-of-the-server]__51ec77a8._.js.map +1 -0
  220. package/web/.next/server/chunks/ssr/{[root-of-the-server]__b020c17d._.js → [root-of-the-server]__540c615f._.js} +3 -3
  221. package/web/.next/server/chunks/ssr/[root-of-the-server]__540c615f._.js.map +1 -0
  222. package/web/.next/server/chunks/ssr/[root-of-the-server]__66047a1b._.js +3 -0
  223. package/web/.next/server/chunks/ssr/[root-of-the-server]__66047a1b._.js.map +1 -0
  224. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js +1 -1
  225. package/web/.next/server/chunks/ssr/[root-of-the-server]__6c7d3936._.js.map +1 -1
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__851f6adb._.js +1 -1
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__86ff0bc5._.js +2 -2
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__a932cd3a._.js +3 -0
  229. package/web/.next/server/chunks/ssr/[root-of-the-server]__a932cd3a._.js.map +1 -0
  230. package/web/.next/server/chunks/ssr/[root-of-the-server]__aa72e794._.js +3 -0
  231. package/web/.next/server/chunks/ssr/[root-of-the-server]__aa72e794._.js.map +1 -0
  232. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js +1 -1
  233. package/web/.next/server/chunks/ssr/[root-of-the-server]__b7b96453._.js.map +1 -1
  234. package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
  235. package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
  236. package/web/.next/server/chunks/ssr/_073183f4._.js +3 -0
  237. package/web/.next/server/chunks/ssr/_073183f4._.js.map +1 -0
  238. package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
  239. package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
  240. package/web/.next/server/chunks/ssr/_1879404a._.js +1 -1
  241. package/web/.next/server/chunks/ssr/_1b7dae9a._.js +1 -1
  242. package/web/.next/server/chunks/ssr/{_cd92091d._.js → _1c627e53._.js} +3 -3
  243. package/web/.next/server/chunks/ssr/{_cd92091d._.js.map → _1c627e53._.js.map} +1 -1
  244. package/web/.next/server/chunks/ssr/{_5119a3df._.js → _295fffde._.js} +2 -2
  245. package/web/.next/server/chunks/ssr/_295fffde._.js.map +1 -0
  246. package/web/.next/server/chunks/ssr/{_817ddf8a._.js → _398f5019._.js} +3 -3
  247. package/web/.next/server/chunks/ssr/{_817ddf8a._.js.map → _398f5019._.js.map} +1 -1
  248. package/web/.next/server/chunks/ssr/_43ba79e7._.js +1 -1
  249. package/web/.next/server/chunks/ssr/_45496654._.js +1 -1
  250. package/web/.next/server/chunks/ssr/_45496654._.js.map +1 -1
  251. package/web/.next/server/chunks/ssr/{_6f35fb9a._.js → _49b8d085._.js} +2 -2
  252. package/web/.next/server/chunks/ssr/{_6f35fb9a._.js.map → _49b8d085._.js.map} +1 -1
  253. package/web/.next/server/chunks/ssr/_4cbb7f95._.js +1 -1
  254. package/web/.next/server/chunks/ssr/_4cbb7f95._.js.map +1 -1
  255. package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
  256. package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
  257. package/web/.next/server/chunks/ssr/_6abfa39e._.js +3 -0
  258. package/web/.next/server/chunks/ssr/_6abfa39e._.js.map +1 -0
  259. package/web/.next/server/chunks/ssr/_7476c702._.js +3 -0
  260. package/web/.next/server/chunks/ssr/_7476c702._.js.map +1 -0
  261. package/web/.next/server/chunks/ssr/_7cb0396e._.js +3 -0
  262. package/web/.next/server/chunks/ssr/_7cb0396e._.js.map +1 -0
  263. package/web/.next/server/chunks/ssr/_bb09579b._.js +1 -1
  264. package/web/.next/server/chunks/ssr/{_0020fddd._.js → _d9c0a97a._.js} +3 -3
  265. package/web/.next/server/chunks/ssr/_d9c0a97a._.js.map +1 -0
  266. package/web/.next/server/chunks/ssr/_e680c57c._.js +9 -0
  267. package/web/.next/server/chunks/ssr/_e680c57c._.js.map +1 -0
  268. package/web/.next/server/chunks/ssr/_f080a56e._.js +3 -0
  269. package/web/.next/server/chunks/ssr/_f080a56e._.js.map +1 -0
  270. package/web/.next/server/chunks/ssr/_f8c55130._.js +4 -0
  271. package/web/.next/server/chunks/ssr/_f8c55130._.js.map +1 -0
  272. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  273. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  274. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_global-chat-drawer-client_tsx_158c4b12._.js +1 -1
  275. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js +1 -1
  276. package/web/.next/server/chunks/ssr/f3a1f_components_common_control-center-drawer_repository-drawer-client_tsx_39a00c03._.js.map +1 -1
  277. package/web/.next/server/chunks/ssr/node_modules__pnpm_63d47a3e._.js +3 -0
  278. package/web/.next/server/chunks/ssr/node_modules__pnpm_63d47a3e._.js.map +1 -0
  279. package/web/.next/server/chunks/ssr/node_modules__pnpm_747b43ac._.js +3 -0
  280. package/web/.next/server/chunks/ssr/node_modules__pnpm_747b43ac._.js.map +1 -0
  281. package/web/.next/server/chunks/ssr/node_modules__pnpm_ef15a0bd._.js +1 -1
  282. package/web/.next/server/chunks/ssr/src_presentation_web_17d39233._.js +3 -0
  283. package/web/.next/server/chunks/ssr/src_presentation_web_17d39233._.js.map +1 -0
  284. package/web/.next/server/chunks/ssr/src_presentation_web_54b02639._.js +5 -0
  285. package/web/.next/server/chunks/ssr/src_presentation_web_54b02639._.js.map +1 -0
  286. package/web/.next/server/chunks/ssr/src_presentation_web_7b7b9e3b._.js +5 -0
  287. package/web/.next/server/chunks/ssr/src_presentation_web_7b7b9e3b._.js.map +1 -0
  288. package/web/.next/server/chunks/ssr/src_presentation_web_807cba76._.js +3 -0
  289. package/web/.next/server/chunks/ssr/src_presentation_web_807cba76._.js.map +1 -0
  290. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_90b5e66e.js +3 -0
  291. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_90b5e66e.js.map +1 -0
  292. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_4ce30db7.js +3 -0
  293. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_4ce30db7.js.map +1 -0
  294. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_e4032193.js +3 -0
  295. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_e4032193.js.map +1 -0
  296. package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
  297. package/web/.next/server/chunks/ssr/src_presentation_web_app_features_feature-tree-page-client_tsx_34c5cbbf._.js +2 -2
  298. package/web/.next/server/chunks/ssr/src_presentation_web_app_features_feature-tree-page-client_tsx_34c5cbbf._.js.map +1 -1
  299. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +1 -1
  300. package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -1
  301. package/web/.next/server/chunks/ssr/src_presentation_web_components_a5e6c910._.js +1 -1
  302. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  303. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  304. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js +1 -1
  305. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_skills_8a174cac._.js.map +1 -1
  306. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js +1 -1
  307. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_select_tsx_45d6b8ae._.js +1 -1
  308. package/web/.next/server/chunks/ssr/src_presentation_web_e1cd1869._.js +3 -0
  309. package/web/.next/server/chunks/ssr/src_presentation_web_e1cd1869._.js.map +1 -0
  310. package/web/.next/server/chunks/ssr/src_presentation_web_e3a30e30._.js +3 -0
  311. package/web/.next/server/chunks/ssr/src_presentation_web_e3a30e30._.js.map +1 -0
  312. package/web/.next/server/middleware-build-manifest.js +2 -2
  313. package/web/.next/server/pages/500.html +2 -2
  314. package/web/.next/server/server-reference-manifest.js +1 -1
  315. package/web/.next/server/server-reference-manifest.json +50 -50
  316. package/web/.next/static/chunks/{ab5970241b29b648.js → 041bbd573f24c747.js} +1 -1
  317. package/web/.next/static/chunks/{0658f5f58d5b60c5.js → 273d92d4c2d7785c.js} +1 -1
  318. package/web/.next/static/chunks/2ceebcc839ee0d4b.js +1 -0
  319. package/web/.next/static/chunks/46e2693dbc9262fd.js +5 -0
  320. package/web/.next/static/chunks/{51bb2fb93740d2cb.js → 53fc463b54ef2b4b.js} +2 -2
  321. package/web/.next/static/chunks/{641583aadf11b219.js → 6129f01524593835.js} +1 -1
  322. package/web/.next/static/chunks/{e5c06df7f30a05b9.js → 659ee5c3bcd5908a.js} +1 -1
  323. package/web/.next/static/chunks/{96b63a24ad83be21.js → 6adf506943611449.js} +1 -1
  324. package/web/.next/static/chunks/{a1f976e9c8b07306.js → 79b8efa054660be8.js} +1 -1
  325. package/web/.next/static/chunks/7e50572eaeede7f0.js +3 -0
  326. package/web/.next/static/chunks/8492d8e0b5f9a4e8.js +1 -0
  327. package/web/.next/static/chunks/88192bc55f93b89e.js +1 -0
  328. package/web/.next/static/chunks/98e3a7cf58fc912a.js +1 -0
  329. package/web/.next/static/chunks/9f5327851ad07bdf.js +7 -0
  330. package/web/.next/static/chunks/a20f2d6f76f469b7.css +1 -0
  331. package/web/.next/static/chunks/ad7590436eef8a9e.js +1 -0
  332. package/web/.next/static/chunks/{819d8097ac0ca319.js → ae65839330ff1113.js} +1 -1
  333. package/web/.next/static/chunks/b49ab0b290e9342d.js +1 -0
  334. package/web/.next/static/chunks/b88dd71478d03b6a.js +1 -0
  335. package/web/.next/static/chunks/bb479c31b5b53bac.js +8 -0
  336. package/web/.next/static/chunks/c10c0d6d458453bc.js +1 -0
  337. package/web/.next/static/chunks/{4161d4663009140f.js → dbaa2ef826fd65d6.js} +1 -1
  338. package/web/.next/static/chunks/{185e4f36cb6efb24.js → eb1ca1b0a34166f5.js} +1 -1
  339. package/web/.next/static/chunks/fc0232384ec2b48d.js +1 -0
  340. package/web/.next/static/chunks/{turbopack-b38a68b1b1c41a87.js → turbopack-fa58b7ea4a4b26e7.js} +1 -1
  341. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js +0 -4
  342. package/web/.next/server/chunks/ssr/[root-of-the-server]__4fb81977._.js.map +0 -1
  343. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js +0 -4
  344. package/web/.next/server/chunks/ssr/[root-of-the-server]__7dcd0917._.js.map +0 -1
  345. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js +0 -4
  346. package/web/.next/server/chunks/ssr/[root-of-the-server]__92ffd5ee._.js.map +0 -1
  347. package/web/.next/server/chunks/ssr/[root-of-the-server]__b020c17d._.js.map +0 -1
  348. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js +0 -4
  349. package/web/.next/server/chunks/ssr/[root-of-the-server]__ba7f5873._.js.map +0 -1
  350. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js +0 -4
  351. package/web/.next/server/chunks/ssr/[root-of-the-server]__c5e09f6f._.js.map +0 -1
  352. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa525872._.js +0 -3
  353. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa525872._.js.map +0 -1
  354. package/web/.next/server/chunks/ssr/_0020fddd._.js.map +0 -1
  355. package/web/.next/server/chunks/ssr/_02e01240._.js +0 -4
  356. package/web/.next/server/chunks/ssr/_02e01240._.js.map +0 -1
  357. package/web/.next/server/chunks/ssr/_068492bf._.js +0 -3
  358. package/web/.next/server/chunks/ssr/_068492bf._.js.map +0 -1
  359. package/web/.next/server/chunks/ssr/_18886033._.js +0 -4
  360. package/web/.next/server/chunks/ssr/_18886033._.js.map +0 -1
  361. package/web/.next/server/chunks/ssr/_22e00a14._.js +0 -4
  362. package/web/.next/server/chunks/ssr/_22e00a14._.js.map +0 -1
  363. package/web/.next/server/chunks/ssr/_5119a3df._.js.map +0 -1
  364. package/web/.next/server/chunks/ssr/_560f2971._.js +0 -3
  365. package/web/.next/server/chunks/ssr/_560f2971._.js.map +0 -1
  366. package/web/.next/server/chunks/ssr/_a5a5901d._.js +0 -4
  367. package/web/.next/server/chunks/ssr/_a5a5901d._.js.map +0 -1
  368. package/web/.next/server/chunks/ssr/_a963dd3c._.js +0 -3
  369. package/web/.next/server/chunks/ssr/_a963dd3c._.js.map +0 -1
  370. package/web/.next/server/chunks/ssr/_ad09f271._.js +0 -4
  371. package/web/.next/server/chunks/ssr/_ad09f271._.js.map +0 -1
  372. package/web/.next/server/chunks/ssr/_c3f595c6._.js +0 -4
  373. package/web/.next/server/chunks/ssr/_c3f595c6._.js.map +0 -1
  374. package/web/.next/server/chunks/ssr/_df737cce._.js +0 -3
  375. package/web/.next/server/chunks/ssr/_df737cce._.js.map +0 -1
  376. package/web/.next/server/chunks/ssr/_e3f14907._.js +0 -9
  377. package/web/.next/server/chunks/ssr/_e3f14907._.js.map +0 -1
  378. package/web/.next/server/chunks/ssr/_ea9e1556._.js +0 -4
  379. package/web/.next/server/chunks/ssr/_ea9e1556._.js.map +0 -1
  380. package/web/.next/server/chunks/ssr/_f1ba9be6._.js +0 -6
  381. package/web/.next/server/chunks/ssr/_f1ba9be6._.js.map +0 -1
  382. package/web/.next/server/chunks/ssr/_f33cd07e._.js +0 -6
  383. package/web/.next/server/chunks/ssr/_f33cd07e._.js.map +0 -1
  384. package/web/.next/server/chunks/ssr/_f535d854._.js +0 -3
  385. package/web/.next/server/chunks/ssr/_f535d854._.js.map +0 -1
  386. package/web/.next/server/chunks/ssr/_f8b45233._.js +0 -4
  387. package/web/.next/server/chunks/ssr/_f8b45233._.js.map +0 -1
  388. package/web/.next/server/chunks/ssr/node_modules__pnpm_1300ae39._.js +0 -3
  389. package/web/.next/server/chunks/ssr/node_modules__pnpm_1300ae39._.js.map +0 -1
  390. package/web/.next/server/chunks/ssr/src_presentation_web_components_common_page-header_index_ts_bdf4db0b._.js +0 -3
  391. package/web/.next/server/chunks/ssr/src_presentation_web_components_common_page-header_index_ts_bdf4db0b._.js.map +0 -1
  392. package/web/.next/static/chunks/3e393d6a78b2ade4.js +0 -1
  393. package/web/.next/static/chunks/453ad57269a1004f.js +0 -1
  394. package/web/.next/static/chunks/4559a403ee40dd19.js +0 -7
  395. package/web/.next/static/chunks/4855528484f00bd6.js +0 -1
  396. package/web/.next/static/chunks/4bacc77e3952f063.js +0 -3
  397. package/web/.next/static/chunks/5ed47e998707b519.js +0 -8
  398. package/web/.next/static/chunks/9f59ea29d6034111.js +0 -1
  399. package/web/.next/static/chunks/bb5400da64270df6.js +0 -1
  400. package/web/.next/static/chunks/cc5fe8d1d9e1e519.js +0 -5
  401. package/web/.next/static/chunks/d5366257d6b9f855.js +0 -1
  402. package/web/.next/static/chunks/dcf8bb4389557a76.css +0 -1
  403. package/web/.next/static/chunks/f37a5e031a5d0f75.js +0 -1
  404. package/web/.next/static/chunks/f998b42b5cddafd6.js +0 -1
  405. /package/web/.next/static/{1awQPFeGEuNwpeu1Kgpxd → UWgKy2y_bjIYkCFOMl8Am}/_buildManifest.js +0 -0
  406. /package/web/.next/static/{1awQPFeGEuNwpeu1Kgpxd → UWgKy2y_bjIYkCFOMl8Am}/_clientMiddlewareManifest.json +0 -0
  407. /package/web/.next/static/{1awQPFeGEuNwpeu1Kgpxd → UWgKy2y_bjIYkCFOMl8Am}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,83843,e=>{"use strict";let a=(0,e.i(3645).default)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);e.s(["ChevronsUpDown",()=>a],83843)},36479,e=>{"use strict";var a=e.i(20314),t=e.i(79054),s=e.i(31406),r=e.i(60112),o=e.i(21023);let n=(0,o.createServerReference)("4092090450ff430223cd6042f01aecdb28387d435e",o.callServer,void 0,o.findSourceMapURL,"adoptBranch"),l=(0,o.createServerReference)("40690698bc389a7267d9d20d14b06f160d7fc3f4b8",o.callServer,void 0,o.findSourceMapURL,"listBranches");var c=e.i(23925),i=e.i(97667),d=e.i(83843),p=e.i(49228),h=e.i(83428);e.i(1650);var u=e.i(11495),m=e.i(45811),x=e.i(35364),f=e.i(98127),b=e.i(41957),v=e.i(66459),g=e.i(31777);let j=t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md",e),...t}));j.displayName="Command";let w=t.forwardRef(({className:e,...t},s)=>(0,a.jsxs)("div",{className:"flex items-center border-b px-3",children:[(0,a.jsx)(v.Search,{className:"me-2 h-4 w-4 shrink-0 opacity-50"}),(0,a.jsx)("input",{ref:s,className:(0,g.cn)("placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none disabled:cursor-not-allowed disabled:opacity-50",e),...t})]}));w.displayName="CommandInput";let N=t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("max-h-[300px] overflow-x-hidden overflow-y-auto",e),...t}));N.displayName="CommandList";let y=t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("text-muted-foreground py-6 text-center text-sm",e),...t}));y.displayName="CommandEmpty";let C=t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("text-foreground overflow-hidden p-1",e),...t}));C.displayName="CommandGroup";let S=t.forwardRef(({className:e,selected:t,...s},r)=>(0,a.jsx)("button",{ref:r,type:"button","data-selected":t,className:(0,g.cn)("relative flex w-full cursor-default items-center rounded-sm px-2 py-1.5 text-sm transition-colors outline-none select-none","hover:bg-accent hover:text-accent-foreground","data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground","disabled:pointer-events-none disabled:opacity-50",e),...s}));S.displayName="CommandItem",t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("bg-border -mx-1 h-px",e),...t})).displayName="CommandSeparator";var k=e.i(90382);function R({open:e,onClose:s,onSubmit:r,isSubmitting:o=!1,error:n,repositories:l=[],selectedRepositoryPath:v,onRepositoryChange:R,branches:L=[],branchesLoading:B=!1}){let[P,E]=(0,t.useState)(""),[D,T]=(0,t.useState)(!1),[U,A]=(0,t.useState)(""),I=(0,t.useRef)(null),[O,F]=(0,t.useState)(!1),[G,K]=(0,t.useState)(""),M=(0,t.useRef)(null),$=l.find(e=>e.path===v),z=!!v;(0,t.useEffect)(()=>{e||(E(""),A(""),T(!1),F(!1),K(""))},[e]),(0,t.useEffect)(()=>{E(""),A("")},[v]);let W=(0,t.useCallback)(e=>{e.preventDefault();let a=P.trim();a&&v&&!o&&r(a,v)},[P,v,o,r]),q=(0,t.useCallback)(()=>{E(""),A(""),s()},[s]),H=(0,t.useCallback)(e=>{E(e),A(e),T(!1)},[]),J=(0,t.useCallback)(e=>{A(e.target.value),D||T(!0)},[D]),Q=(0,t.useCallback)(e=>{if("Enter"===e.key){e.preventDefault();let a=U.trim();a&&(E(a),T(!1))}"Escape"===e.key&&(T(!1),A(P))},[U,P]),V=(0,t.useCallback)(e=>{R?.(e),F(!1),K("")},[R]),X=L.filter(e=>e.toLowerCase().includes(U.toLowerCase())),Y=G.trim()?l.filter(e=>e.name.toLowerCase().includes(G.toLowerCase())||e.path.toLowerCase().includes(G.toLowerCase())):l;(0,t.useEffect)(()=>{O?setTimeout(()=>M.current?.focus(),0):K("")},[O]);let Z=!P.trim()||!v||o,_=(0,a.jsxs)("div",{children:[(0,a.jsxs)(m.DrawerTitle,{className:"flex items-center gap-2",children:[(0,a.jsx)(p.GitBranch,{className:"h-4 w-4"}),"Adopt Branch"]}),(0,a.jsx)(m.DrawerDescription,{className:"text-muted-foreground text-sm",children:"Import an existing git branch into Shep's feature tracking"})]});return(0,a.jsx)(u.BaseDrawer,{open:e,onClose:q,size:"sm",modal:!1,header:_,"data-testid":"adopt-branch-drawer",children:(0,a.jsxs)("form",{onSubmit:W,className:"flex flex-1 flex-col",children:[(0,a.jsx)("div",{className:"flex-1 overflow-y-auto p-4",children:(0,a.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(b.Label,{children:"Repository"}),(0,a.jsxs)(k.Popover,{open:O,onOpenChange:F,children:[(0,a.jsx)(k.PopoverTrigger,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",role:"combobox","aria-expanded":O,"aria-label":"Repository",disabled:o,"data-testid":"adopt-repo-combobox",className:(0,g.cn)("border-input bg-background ring-offset-background focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border px-3 py-2 text-sm focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",!$&&"text-muted-foreground"),children:[(0,a.jsx)("span",{className:"truncate",children:$?$.name:"Select repository..."}),(0,a.jsx)(d.ChevronsUpDown,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,a.jsx)(k.PopoverContent,{className:"w-80 p-0",align:"start","data-testid":"adopt-repo-combobox-content",children:(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("div",{className:"border-b p-2",children:(0,a.jsx)(f.Input,{ref:M,placeholder:"Search repositories...",value:G,onChange:e=>K(e.target.value),className:"h-8 border-0 p-0 text-sm shadow-none focus-visible:ring-0","data-testid":"adopt-repo-search"})}),(0,a.jsx)("div",{className:"max-h-48 overflow-y-auto py-1",role:"listbox","aria-label":"Repositories",children:0===Y.length?(0,a.jsx)("p",{className:"text-muted-foreground px-3 py-2 text-sm",children:"No repositories found."}):Y.map(e=>(0,a.jsxs)("button",{type:"button",role:"option","aria-selected":v===e.path,onClick:()=>V(e.path),className:(0,g.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",v===e.path&&"bg-accent/50"),"data-testid":`adopt-repo-option-${e.id}`,children:[(0,a.jsx)(i.CheckIcon,{className:(0,g.cn)("h-4 w-4 shrink-0",v!==e.path&&"invisible")}),(0,a.jsxs)("span",{className:"flex flex-col items-start truncate",children:[(0,a.jsx)("span",{className:"truncate",children:e.name}),(0,a.jsx)("span",{className:"text-muted-foreground truncate text-xs",children:e.path})]})]},e.id))})]})})]}),(0,a.jsx)("p",{className:"text-muted-foreground text-xs",children:"Select the repository that contains the branch you want to adopt."})]}),(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(b.Label,{htmlFor:"branch-name",children:"Branch name"}),(0,a.jsxs)(k.Popover,{open:D,onOpenChange:T,children:[(0,a.jsx)(k.PopoverTrigger,{asChild:!0,children:(0,a.jsxs)(x.Button,{variant:"outline",role:"combobox","aria-expanded":D,disabled:o||!z,className:"w-full justify-between font-normal","data-testid":"adopt-branch-input",children:[(0,a.jsx)("span",{className:"truncate",children:z?B?"Loading branches...":P||"Select a branch...":"Select a repository first..."}),(0,a.jsx)(d.ChevronsUpDown,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,a.jsx)(k.PopoverContent,{className:"w-[var(--radix-popover-trigger-width)] p-0",align:"start",children:(0,a.jsxs)(j,{children:[(0,a.jsx)(w,{ref:I,placeholder:"Search branches...",value:U,onChange:J,onKeyDown:Q,"data-testid":"adopt-branch-search"}),(0,a.jsxs)(N,{children:[!B&&0===X.length&&(0,a.jsx)(y,{children:0===L.length?"No branches found.":U?"No match — press Enter to use this value.":"No branches available."}),B?(0,a.jsx)(y,{children:(0,a.jsx)(h.Loader2,{className:"mx-auto h-4 w-4 animate-spin"})}):null,X.length>0&&(0,a.jsx)(C,{children:X.map(e=>(0,a.jsxs)(S,{selected:e===P,onClick:()=>H(e),children:[(0,a.jsx)(c.Check,{className:(0,g.cn)("me-2 h-4 w-4",e===P?"opacity-100":"opacity-0")}),(0,a.jsx)(p.GitBranch,{className:"me-2 h-3 w-3 opacity-50"}),e]},e))})]})]})})]}),(0,a.jsx)("p",{className:"text-muted-foreground text-xs",children:z?"Select a branch from the dropdown or type to search. Local and remote branches are shown.":"Please select a repository above to see available branches."})]}),n?(0,a.jsx)("p",{className:"text-destructive text-sm","data-testid":"adopt-branch-error",children:n}):null]})}),(0,a.jsx)("div",{className:"border-t p-4",children:(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(x.Button,{type:"button",variant:"outline",onClick:q,disabled:o,className:"flex-1",children:"Cancel"}),(0,a.jsx)(x.Button,{type:"submit",disabled:Z,className:"flex-1","data-testid":"adopt-branch-submit",children:o?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h.Loader2,{className:"me-2 h-4 w-4 animate-spin"}),"Adopting..."]}):"Adopt Branch"})]})})]})})}function L({repositoryPath:e,repositories:o}){let c=(0,s.useRouter)(),i=(0,s.usePathname)(),[d,p]=(0,t.useState)(!1),[h,u]=(0,t.useState)(),[m,x]=(0,t.useState)([]),[f,b]=(0,t.useState)(!1),[v,g]=(0,t.useState)(e),j=i.startsWith("/adopt"),w=!d&&j;(0,t.useEffect)(()=>{!j&&d&&p(!1)},[j,d]),(0,t.useEffect)(()=>{j&&(u(void 0),g(e))},[j,e]),(0,t.useEffect)(()=>{j&&v?(b(!0),x([]),l(v).then(x).catch(()=>x([])).finally(()=>b(!1))):x([])},[j,v]);let N=(0,t.useCallback)(()=>{c.push("/")},[c]),y=(0,t.useCallback)(e=>{g(e)},[]),C=(0,t.useCallback)((e,a)=>{u(void 0),p(!0),c.push("/"),n({branchName:e,repositoryPath:a}).then(e=>{e.error?r.toast.error(e.error):(window.dispatchEvent(new CustomEvent("shep:feature-created",{detail:{featureId:e.feature.id,name:e.feature.name,description:e.feature.description,repositoryPath:e.feature.repositoryPath}})),r.toast.success(`Branch adopted as "${e.feature.name}"`))}).catch(()=>{r.toast.error("Failed to adopt branch"),p(!1)})},[c]);return(0,a.jsx)(R,{open:w,onClose:N,onSubmit:C,isSubmitting:d,error:h,repositories:o,selectedRepositoryPath:v,onRepositoryChange:y,branches:m,branchesLoading:f})}e.s(["AdoptDrawerClient",()=>L],36479)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,83843,e=>{"use strict";let a=(0,e.i(3645).default)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);e.s(["ChevronsUpDown",()=>a],83843)},36479,e=>{"use strict";var a=e.i(20314),t=e.i(79054),s=e.i(31406),r=e.i(60112),o=e.i(21023);let n=(0,o.createServerReference)("40e9de6fe57eb55ccc531b2527fbeb76bafe97e718",o.callServer,void 0,o.findSourceMapURL,"adoptBranch"),l=(0,o.createServerReference)("408336561f5f0db1a3e47b2d5ac6342f648dc45358",o.callServer,void 0,o.findSourceMapURL,"listBranches");var c=e.i(23925),i=e.i(97667),d=e.i(83843),p=e.i(49228),h=e.i(83428);e.i(1650);var u=e.i(11495),m=e.i(45811),x=e.i(35364),f=e.i(98127),b=e.i(41957),v=e.i(66459),g=e.i(31777);let j=t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md",e),...t}));j.displayName="Command";let w=t.forwardRef(({className:e,...t},s)=>(0,a.jsxs)("div",{className:"flex items-center border-b px-3",children:[(0,a.jsx)(v.Search,{className:"me-2 h-4 w-4 shrink-0 opacity-50"}),(0,a.jsx)("input",{ref:s,className:(0,g.cn)("placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none disabled:cursor-not-allowed disabled:opacity-50",e),...t})]}));w.displayName="CommandInput";let N=t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("max-h-[300px] overflow-x-hidden overflow-y-auto",e),...t}));N.displayName="CommandList";let y=t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("text-muted-foreground py-6 text-center text-sm",e),...t}));y.displayName="CommandEmpty";let C=t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("text-foreground overflow-hidden p-1",e),...t}));C.displayName="CommandGroup";let S=t.forwardRef(({className:e,selected:t,...s},r)=>(0,a.jsx)("button",{ref:r,type:"button","data-selected":t,className:(0,g.cn)("relative flex w-full cursor-default items-center rounded-sm px-2 py-1.5 text-sm transition-colors outline-none select-none","hover:bg-accent hover:text-accent-foreground","data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground","disabled:pointer-events-none disabled:opacity-50",e),...s}));S.displayName="CommandItem",t.forwardRef(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,g.cn)("bg-border -mx-1 h-px",e),...t})).displayName="CommandSeparator";var k=e.i(90382);function R({open:e,onClose:s,onSubmit:r,isSubmitting:o=!1,error:n,repositories:l=[],selectedRepositoryPath:v,onRepositoryChange:R,branches:L=[],branchesLoading:B=!1}){let[P,E]=(0,t.useState)(""),[D,T]=(0,t.useState)(!1),[U,A]=(0,t.useState)(""),I=(0,t.useRef)(null),[O,F]=(0,t.useState)(!1),[G,K]=(0,t.useState)(""),M=(0,t.useRef)(null),$=l.find(e=>e.path===v),z=!!v;(0,t.useEffect)(()=>{e||(E(""),A(""),T(!1),F(!1),K(""))},[e]),(0,t.useEffect)(()=>{E(""),A("")},[v]);let W=(0,t.useCallback)(e=>{e.preventDefault();let a=P.trim();a&&v&&!o&&r(a,v)},[P,v,o,r]),q=(0,t.useCallback)(()=>{E(""),A(""),s()},[s]),H=(0,t.useCallback)(e=>{E(e),A(e),T(!1)},[]),J=(0,t.useCallback)(e=>{A(e.target.value),D||T(!0)},[D]),Q=(0,t.useCallback)(e=>{if("Enter"===e.key){e.preventDefault();let a=U.trim();a&&(E(a),T(!1))}"Escape"===e.key&&(T(!1),A(P))},[U,P]),V=(0,t.useCallback)(e=>{R?.(e),F(!1),K("")},[R]),X=L.filter(e=>e.toLowerCase().includes(U.toLowerCase())),Y=G.trim()?l.filter(e=>e.name.toLowerCase().includes(G.toLowerCase())||e.path.toLowerCase().includes(G.toLowerCase())):l;(0,t.useEffect)(()=>{O?setTimeout(()=>M.current?.focus(),0):K("")},[O]);let Z=!P.trim()||!v||o,_=(0,a.jsxs)("div",{children:[(0,a.jsxs)(m.DrawerTitle,{className:"flex items-center gap-2",children:[(0,a.jsx)(p.GitBranch,{className:"h-4 w-4"}),"Adopt Branch"]}),(0,a.jsx)(m.DrawerDescription,{className:"text-muted-foreground text-sm",children:"Import an existing git branch into Shep's feature tracking"})]});return(0,a.jsx)(u.BaseDrawer,{open:e,onClose:q,size:"sm",modal:!1,header:_,"data-testid":"adopt-branch-drawer",children:(0,a.jsxs)("form",{onSubmit:W,className:"flex flex-1 flex-col",children:[(0,a.jsx)("div",{className:"flex-1 overflow-y-auto p-4",children:(0,a.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(b.Label,{children:"Repository"}),(0,a.jsxs)(k.Popover,{open:O,onOpenChange:F,children:[(0,a.jsx)(k.PopoverTrigger,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",role:"combobox","aria-expanded":O,"aria-label":"Repository",disabled:o,"data-testid":"adopt-repo-combobox",className:(0,g.cn)("border-input bg-background ring-offset-background focus:ring-ring flex h-9 w-full items-center justify-between rounded-md border px-3 py-2 text-sm focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:cursor-not-allowed disabled:opacity-50",!$&&"text-muted-foreground"),children:[(0,a.jsx)("span",{className:"truncate",children:$?$.name:"Select repository..."}),(0,a.jsx)(d.ChevronsUpDown,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,a.jsx)(k.PopoverContent,{className:"w-80 p-0",align:"start","data-testid":"adopt-repo-combobox-content",children:(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("div",{className:"border-b p-2",children:(0,a.jsx)(f.Input,{ref:M,placeholder:"Search repositories...",value:G,onChange:e=>K(e.target.value),className:"h-8 border-0 p-0 text-sm shadow-none focus-visible:ring-0","data-testid":"adopt-repo-search"})}),(0,a.jsx)("div",{className:"max-h-48 overflow-y-auto py-1",role:"listbox","aria-label":"Repositories",children:0===Y.length?(0,a.jsx)("p",{className:"text-muted-foreground px-3 py-2 text-sm",children:"No repositories found."}):Y.map(e=>(0,a.jsxs)("button",{type:"button",role:"option","aria-selected":v===e.path,onClick:()=>V(e.path),className:(0,g.cn)("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 px-3 py-2 text-sm",v===e.path&&"bg-accent/50"),"data-testid":`adopt-repo-option-${e.id}`,children:[(0,a.jsx)(i.CheckIcon,{className:(0,g.cn)("h-4 w-4 shrink-0",v!==e.path&&"invisible")}),(0,a.jsxs)("span",{className:"flex flex-col items-start truncate",children:[(0,a.jsx)("span",{className:"truncate",children:e.name}),(0,a.jsx)("span",{className:"text-muted-foreground truncate text-xs",children:e.path})]})]},e.id))})]})})]}),(0,a.jsx)("p",{className:"text-muted-foreground text-xs",children:"Select the repository that contains the branch you want to adopt."})]}),(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(b.Label,{htmlFor:"branch-name",children:"Branch name"}),(0,a.jsxs)(k.Popover,{open:D,onOpenChange:T,children:[(0,a.jsx)(k.PopoverTrigger,{asChild:!0,children:(0,a.jsxs)(x.Button,{variant:"outline",role:"combobox","aria-expanded":D,disabled:o||!z,className:"w-full justify-between font-normal","data-testid":"adopt-branch-input",children:[(0,a.jsx)("span",{className:"truncate",children:z?B?"Loading branches...":P||"Select a branch...":"Select a repository first..."}),(0,a.jsx)(d.ChevronsUpDown,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,a.jsx)(k.PopoverContent,{className:"w-[var(--radix-popover-trigger-width)] p-0",align:"start",children:(0,a.jsxs)(j,{children:[(0,a.jsx)(w,{ref:I,placeholder:"Search branches...",value:U,onChange:J,onKeyDown:Q,"data-testid":"adopt-branch-search"}),(0,a.jsxs)(N,{children:[!B&&0===X.length&&(0,a.jsx)(y,{children:0===L.length?"No branches found.":U?"No match — press Enter to use this value.":"No branches available."}),B?(0,a.jsx)(y,{children:(0,a.jsx)(h.Loader2,{className:"mx-auto h-4 w-4 animate-spin"})}):null,X.length>0&&(0,a.jsx)(C,{children:X.map(e=>(0,a.jsxs)(S,{selected:e===P,onClick:()=>H(e),children:[(0,a.jsx)(c.Check,{className:(0,g.cn)("me-2 h-4 w-4",e===P?"opacity-100":"opacity-0")}),(0,a.jsx)(p.GitBranch,{className:"me-2 h-3 w-3 opacity-50"}),e]},e))})]})]})})]}),(0,a.jsx)("p",{className:"text-muted-foreground text-xs",children:z?"Select a branch from the dropdown or type to search. Local and remote branches are shown.":"Please select a repository above to see available branches."})]}),n?(0,a.jsx)("p",{className:"text-destructive text-sm","data-testid":"adopt-branch-error",children:n}):null]})}),(0,a.jsx)("div",{className:"border-t p-4",children:(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(x.Button,{type:"button",variant:"outline",onClick:q,disabled:o,className:"flex-1",children:"Cancel"}),(0,a.jsx)(x.Button,{type:"submit",disabled:Z,className:"flex-1","data-testid":"adopt-branch-submit",children:o?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h.Loader2,{className:"me-2 h-4 w-4 animate-spin"}),"Adopting..."]}):"Adopt Branch"})]})})]})})}function L({repositoryPath:e,repositories:o}){let c=(0,s.useRouter)(),i=(0,s.usePathname)(),[d,p]=(0,t.useState)(!1),[h,u]=(0,t.useState)(),[m,x]=(0,t.useState)([]),[f,b]=(0,t.useState)(!1),[v,g]=(0,t.useState)(e),j=i.startsWith("/adopt"),w=!d&&j;(0,t.useEffect)(()=>{!j&&d&&p(!1)},[j,d]),(0,t.useEffect)(()=>{j&&(u(void 0),g(e))},[j,e]),(0,t.useEffect)(()=>{j&&v?(b(!0),x([]),l(v).then(x).catch(()=>x([])).finally(()=>b(!1))):x([])},[j,v]);let N=(0,t.useCallback)(()=>{c.push("/")},[c]),y=(0,t.useCallback)(e=>{g(e)},[]),C=(0,t.useCallback)((e,a)=>{u(void 0),p(!0),c.push("/"),n({branchName:e,repositoryPath:a}).then(e=>{e.error?r.toast.error(e.error):(window.dispatchEvent(new CustomEvent("shep:feature-created",{detail:{featureId:e.feature.id,name:e.feature.name,description:e.feature.description,repositoryPath:e.feature.repositoryPath}})),r.toast.success(`Branch adopted as "${e.feature.name}"`))}).catch(()=>{r.toast.error("Failed to adopt branch"),p(!1)})},[c]);return(0,a.jsx)(R,{open:w,onClose:N,onSubmit:C,isSubmitting:d,error:h,repositories:o,selectedRepositoryPath:v,onRepositoryChange:y,branches:m,branchesLoading:f})}e.s(["AdoptDrawerClient",()=>L],36479)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,59311,e=>{"use strict";let t=(0,e.i(3645).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],59311)},16868,e=>{"use strict";var t=e.i(43698);e.s(["PaperclipIcon",()=>t.default])},70471,e=>{"use strict";var t=e.i(16298);e.s(["FileText",()=>t.default])},42076,e=>{"use strict";async function t(){let e=await fetch("/api/dialog/pick-files",{method:"POST"});if(!e.ok)throw Error("Failed to open file dialog");let t=await e.json();return t.cancelled?null:t.files}e.s(["pickFiles",()=>t])},83843,e=>{"use strict";let t=(0,e.i(3645).default)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);e.s(["ChevronsUpDown",()=>t],83843)},51911,e=>{"use strict";var t=e.i(20314),a=e.i(79054),r=e.i(91967),s=e.i(5978),i=e.i(22528),c=e.i(36589),o=e.i(23405),n=e.i(77624),d=e.i(87620),l="Switch",[u,p]=(0,i.createContextScope)(l),[h,f]=u(l),b=a.forwardRef((e,i)=>{let{__scopeSwitch:o,name:n,checked:u,defaultChecked:p,required:f,disabled:b,value:k="on",onCheckedChange:m,form:v,...y}=e,[x,S]=a.useState(null),C=(0,s.useComposedRefs)(i,e=>S(e)),R=a.useRef(!1),P=!x||v||!!x.closest("form"),[T,j]=(0,c.useControllableState)({prop:u,defaultProp:p??!1,onChange:m,caller:l});return(0,t.jsxs)(h,{scope:o,checked:T,disabled:b,children:[(0,t.jsx)(d.Primitive.button,{type:"button",role:"switch","aria-checked":T,"aria-required":f,"data-state":g(T),"data-disabled":b?"":void 0,disabled:b,value:k,...y,ref:C,onClick:(0,r.composeEventHandlers)(e.onClick,e=>{j(e=>!e),P&&(R.current=e.isPropagationStopped(),R.current||e.stopPropagation())})}),P&&(0,t.jsx)(w,{control:x,bubbles:!R.current,name:n,value:k,checked:T,required:f,disabled:b,form:v,style:{transform:"translateX(-100%)"}})]})});b.displayName=l;var k="SwitchThumb",m=a.forwardRef((e,a)=>{let{__scopeSwitch:r,...s}=e,i=f(k,r);return(0,t.jsx)(d.Primitive.span,{"data-state":g(i.checked),"data-disabled":i.disabled?"":void 0,...s,ref:a})});m.displayName=k;var w=a.forwardRef(({__scopeSwitch:e,control:r,checked:i,bubbles:c=!0,...d},l)=>{let u=a.useRef(null),p=(0,s.useComposedRefs)(u,l),h=(0,o.usePrevious)(i),f=(0,n.useSize)(r);return a.useEffect(()=>{let e=u.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(h!==i&&t){let a=new Event("click",{bubbles:c});t.call(e,i),e.dispatchEvent(a)}},[h,i,c]),(0,t.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:i,...d,tabIndex:-1,ref:p,style:{...d.style,...f,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function g(e){return e?"checked":"unchecked"}w.displayName="SwitchBubbleInput",e.s(["Root",()=>b,"Switch",()=>b,"SwitchThumb",()=>m,"Thumb",()=>m,"createSwitchScope",()=>p],95291);var v=e.i(95291),v=v,y=e.i(31777);function x({className:e,size:a="default",...r}){return(0,t.jsx)(v.Root,{"data-slot":"switch","data-size":a,className:(0,y.cn)("peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6",e),...r,children:(0,t.jsx)(v.Thumb,{"data-slot":"switch-thumb",className:(0,y.cn)("bg-background dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0 rtl:data-[state=checked]:-translate-x-[calc(100%-2px)]")})})}e.s(["Switch",()=>x],51911)}]);
@@ -0,0 +1,5 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,90382,e=>{"use strict";var t=e.i(20314),o=e.i(79054),r=e.i(91967),n=e.i(5978),a=e.i(22528),i=e.i(53532),l=e.i(41687),s=e.i(56720),u=e.i(13123),d=e.i(52740),c=e.i(39979),p=e.i(85995),f=e.i(87620),g=e.i(86874),v=e.i(36589),m=e.i(73772),x=e.i(13044),h="Popover",[y,C]=(0,a.createContextScope)(h,[d.createPopperScope]),b=(0,d.createPopperScope)(),[w,P]=y(h),R=e=>{let{__scopePopover:r,children:n,open:a,defaultOpen:i,onOpenChange:l,modal:s=!1}=e,c=b(r),p=o.useRef(null),[f,g]=o.useState(!1),[m,x]=(0,v.useControllableState)({prop:a,defaultProp:i??!1,onChange:l,caller:h});return(0,t.jsx)(d.Root,{...c,children:(0,t.jsx)(w,{scope:r,contentId:(0,u.useId)(),triggerRef:p,open:m,onOpenChange:x,onOpenToggle:o.useCallback(()=>x(e=>!e),[x]),hasCustomAnchor:f,onCustomAnchorAdd:o.useCallback(()=>g(!0),[]),onCustomAnchorRemove:o.useCallback(()=>g(!1),[]),modal:s,children:n})})};R.displayName=h;var D="PopoverAnchor",j=o.forwardRef((e,r)=>{let{__scopePopover:n,...a}=e,i=P(D,n),l=b(n),{onCustomAnchorAdd:s,onCustomAnchorRemove:u}=i;return o.useEffect(()=>(s(),()=>u()),[s,u]),(0,t.jsx)(d.Anchor,{...l,...a,ref:r})});j.displayName=D;var T="PopoverTrigger",E=o.forwardRef((e,o)=>{let{__scopePopover:a,...i}=e,l=P(T,a),s=b(a),u=(0,n.useComposedRefs)(o,l.triggerRef),c=(0,t.jsx)(f.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":l.open,"aria-controls":l.contentId,"data-state":U(l.open),...i,ref:u,onClick:(0,r.composeEventHandlers)(e.onClick,l.onOpenToggle)});return l.hasCustomAnchor?c:(0,t.jsx)(d.Anchor,{asChild:!0,...s,children:c})});E.displayName=T;var k="PopoverPortal",[N,O]=y(k,{forceMount:void 0}),_=e=>{let{__scopePopover:o,forceMount:r,children:n,container:a}=e,i=P(k,o);return(0,t.jsx)(N,{scope:o,forceMount:r,children:(0,t.jsx)(p.Presence,{present:r||i.open,children:(0,t.jsx)(c.Portal,{asChild:!0,container:a,children:n})})})};_.displayName=k;var A="PopoverContent",I=o.forwardRef((e,o)=>{let r=O(A,e.__scopePopover),{forceMount:n=r.forceMount,...a}=e,i=P(A,e.__scopePopover);return(0,t.jsx)(p.Presence,{present:n||i.open,children:i.modal?(0,t.jsx)(S,{...a,ref:o}):(0,t.jsx)(L,{...a,ref:o})})});I.displayName=A;var F=(0,g.createSlot)("PopoverContent.RemoveScroll"),S=o.forwardRef((e,a)=>{let i=P(A,e.__scopePopover),l=o.useRef(null),s=(0,n.useComposedRefs)(a,l),u=o.useRef(!1);return o.useEffect(()=>{let e=l.current;if(e)return(0,m.hideOthers)(e)},[]),(0,t.jsx)(x.RemoveScroll,{as:F,allowPinchZoom:!0,children:(0,t.jsx)(M,{...e,ref:s,trapFocus:i.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,r.composeEventHandlers)(e.onCloseAutoFocus,e=>{e.preventDefault(),u.current||i.triggerRef.current?.focus()}),onPointerDownOutside:(0,r.composeEventHandlers)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,o=0===t.button&&!0===t.ctrlKey;u.current=2===t.button||o},{checkForDefaultPrevented:!1}),onFocusOutside:(0,r.composeEventHandlers)(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})}),L=o.forwardRef((e,r)=>{let n=P(A,e.__scopePopover),a=o.useRef(!1),i=o.useRef(!1);return(0,t.jsx)(M,{...e,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(a.current||n.triggerRef.current?.focus(),t.preventDefault()),a.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(a.current=!0,"pointerdown"===t.detail.originalEvent.type&&(i.current=!0));let o=t.target;n.triggerRef.current?.contains(o)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&i.current&&t.preventDefault()}})}),M=o.forwardRef((e,o)=>{let{__scopePopover:r,trapFocus:n,onOpenAutoFocus:a,onCloseAutoFocus:u,disableOutsidePointerEvents:c,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:g,onInteractOutside:v,...m}=e,x=P(A,r),h=b(r);return(0,l.useFocusGuards)(),(0,t.jsx)(s.FocusScope,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:a,onUnmountAutoFocus:u,children:(0,t.jsx)(i.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:c,onInteractOutside:v,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:g,onDismiss:()=>x.onOpenChange(!1),children:(0,t.jsx)(d.Content,{"data-state":U(x.open),role:"dialog",id:x.contentId,...h,...m,ref:o,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),H="PopoverClose",z=o.forwardRef((e,o)=>{let{__scopePopover:n,...a}=e,i=P(H,n);return(0,t.jsx)(f.Primitive.button,{type:"button",...a,ref:o,onClick:(0,r.composeEventHandlers)(e.onClick,()=>i.onOpenChange(!1))})});z.displayName=H;var B=o.forwardRef((e,o)=>{let{__scopePopover:r,...n}=e,a=b(r);return(0,t.jsx)(d.Arrow,{...a,...n,ref:o})});function U(e){return e?"open":"closed"}B.displayName="PopoverArrow",e.s(["Anchor",()=>j,"Arrow",()=>B,"Close",()=>z,"Content",()=>I,"Popover",()=>R,"PopoverAnchor",()=>j,"PopoverArrow",()=>B,"PopoverClose",()=>z,"PopoverContent",()=>I,"PopoverPortal",()=>_,"PopoverTrigger",()=>E,"Portal",()=>_,"Root",()=>R,"Trigger",()=>E,"createPopoverScope",()=>C],89920);var X=e.i(89920),X=X,$=e.i(31777);let K=X.Root,W=X.Trigger;X.Anchor;let G=o.forwardRef(({className:e,align:o="center",sideOffset:r=4,...n},a)=>(0,t.jsx)(X.Portal,{children:(0,t.jsx)(X.Content,{ref:a,align:o,sideOffset:r,className:(0,$.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 shadow-md outline-none",e),...n})}));G.displayName=X.Content.displayName,e.s(["Popover",()=>K,"PopoverContent",()=>G,"PopoverTrigger",()=>W],90382)},25235,e=>{"use strict";var t=e.i(20314),o=e.i(79054),r=e.i(87620),n="horizontal",a=["horizontal","vertical"],i=o.forwardRef((e,o)=>{var i;let{decorative:l,orientation:s=n,...u}=e,d=(i=s,a.includes(i))?s:n;return(0,t.jsx)(r.Primitive.div,{"data-orientation":d,...l?{role:"none"}:{"aria-orientation":"vertical"===d?d:void 0,role:"separator"},...u,ref:o})});i.displayName="Separator",e.s(["Root",()=>i,"Separator",()=>i],47402);var l=e.i(47402),l=l,s=e.i(31777);function u({className:e,orientation:o="horizontal",decorative:r=!0,...n}){return(0,t.jsx)(l.Root,{"data-slot":"separator",decorative:r,orientation:o,className:(0,s.cn)("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",e),...n})}e.s(["Separator",()=>u],25235)},48249,e=>{"use strict";var t=e.i(90537);e.s(["XIcon",()=>t.default])},567,e=>{"use strict";var t=e.i(79054),o=e.i(91967),r=e.i(5978),n=e.i(22528),a=e.i(13123),i=e.i(36589),l=e.i(53532),s=e.i(56720),u=e.i(39979),d=e.i(85995),c=e.i(87620),p=e.i(41687),f=e.i(13044),g=e.i(73772),v=e.i(86874),m=e.i(20314),x="Dialog",[h,y]=(0,n.createContextScope)(x),[C,b]=h(x),w=e=>{let{__scopeDialog:o,children:r,open:n,defaultOpen:l,onOpenChange:s,modal:u=!0}=e,d=t.useRef(null),c=t.useRef(null),[p,f]=(0,i.useControllableState)({prop:n,defaultProp:l??!1,onChange:s,caller:x});return(0,m.jsx)(C,{scope:o,triggerRef:d,contentRef:c,contentId:(0,a.useId)(),titleId:(0,a.useId)(),descriptionId:(0,a.useId)(),open:p,onOpenChange:f,onOpenToggle:t.useCallback(()=>f(e=>!e),[f]),modal:u,children:r})};w.displayName=x;var P="DialogTrigger",R=t.forwardRef((e,t)=>{let{__scopeDialog:n,...a}=e,i=b(P,n),l=(0,r.useComposedRefs)(t,i.triggerRef);return(0,m.jsx)(c.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":$(i.open),...a,ref:l,onClick:(0,o.composeEventHandlers)(e.onClick,i.onOpenToggle)})});R.displayName=P;var D="DialogPortal",[j,T]=h(D,{forceMount:void 0}),E=e=>{let{__scopeDialog:o,forceMount:r,children:n,container:a}=e,i=b(D,o);return(0,m.jsx)(j,{scope:o,forceMount:r,children:t.Children.map(n,e=>(0,m.jsx)(d.Presence,{present:r||i.open,children:(0,m.jsx)(u.Portal,{asChild:!0,container:a,children:e})}))})};E.displayName=D;var k="DialogOverlay",N=t.forwardRef((e,t)=>{let o=T(k,e.__scopeDialog),{forceMount:r=o.forceMount,...n}=e,a=b(k,e.__scopeDialog);return a.modal?(0,m.jsx)(d.Presence,{present:r||a.open,children:(0,m.jsx)(_,{...n,ref:t})}):null});N.displayName=k;var O=(0,v.createSlot)("DialogOverlay.RemoveScroll"),_=t.forwardRef((e,t)=>{let{__scopeDialog:o,...r}=e,n=b(k,o);return(0,m.jsx)(f.RemoveScroll,{as:O,allowPinchZoom:!0,shards:[n.contentRef],children:(0,m.jsx)(c.Primitive.div,{"data-state":$(n.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),A="DialogContent",I=t.forwardRef((e,t)=>{let o=T(A,e.__scopeDialog),{forceMount:r=o.forceMount,...n}=e,a=b(A,e.__scopeDialog);return(0,m.jsx)(d.Presence,{present:r||a.open,children:a.modal?(0,m.jsx)(F,{...n,ref:t}):(0,m.jsx)(S,{...n,ref:t})})});I.displayName=A;var F=t.forwardRef((e,n)=>{let a=b(A,e.__scopeDialog),i=t.useRef(null),l=(0,r.useComposedRefs)(n,a.contentRef,i);return t.useEffect(()=>{let e=i.current;if(e)return(0,g.hideOthers)(e)},[]),(0,m.jsx)(L,{...e,ref:l,trapFocus:a.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,o.composeEventHandlers)(e.onCloseAutoFocus,e=>{e.preventDefault(),a.triggerRef.current?.focus()}),onPointerDownOutside:(0,o.composeEventHandlers)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,o=0===t.button&&!0===t.ctrlKey;(2===t.button||o)&&e.preventDefault()}),onFocusOutside:(0,o.composeEventHandlers)(e.onFocusOutside,e=>e.preventDefault())})}),S=t.forwardRef((e,o)=>{let r=b(A,e.__scopeDialog),n=t.useRef(!1),a=t.useRef(!1);return(0,m.jsx)(L,{...e,ref:o,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(n.current||r.triggerRef.current?.focus(),t.preventDefault()),n.current=!1,a.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(n.current=!0,"pointerdown"===t.detail.originalEvent.type&&(a.current=!0));let o=t.target;r.triggerRef.current?.contains(o)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&a.current&&t.preventDefault()}})}),L=t.forwardRef((e,o)=>{let{__scopeDialog:n,trapFocus:a,onOpenAutoFocus:i,onCloseAutoFocus:u,...d}=e,c=b(A,n),f=t.useRef(null),g=(0,r.useComposedRefs)(o,f);return(0,p.useFocusGuards)(),(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(s.FocusScope,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:i,onUnmountAutoFocus:u,children:(0,m.jsx)(l.DismissableLayer,{role:"dialog",id:c.contentId,"aria-describedby":c.descriptionId,"aria-labelledby":c.titleId,"data-state":$(c.open),...d,ref:g,onDismiss:()=>c.onOpenChange(!1)})}),(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(q,{titleId:c.titleId}),(0,m.jsx)(Y,{contentRef:f,descriptionId:c.descriptionId})]})]})}),M="DialogTitle",H=t.forwardRef((e,t)=>{let{__scopeDialog:o,...r}=e,n=b(M,o);return(0,m.jsx)(c.Primitive.h2,{id:n.titleId,...r,ref:t})});H.displayName=M;var z="DialogDescription",B=t.forwardRef((e,t)=>{let{__scopeDialog:o,...r}=e,n=b(z,o);return(0,m.jsx)(c.Primitive.p,{id:n.descriptionId,...r,ref:t})});B.displayName=z;var U="DialogClose",X=t.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,a=b(U,r);return(0,m.jsx)(c.Primitive.button,{type:"button",...n,ref:t,onClick:(0,o.composeEventHandlers)(e.onClick,()=>a.onOpenChange(!1))})});function $(e){return e?"open":"closed"}X.displayName=U;var K="DialogTitleWarning",[W,G]=(0,n.createContext)(K,{contentName:A,titleName:M,docsSlug:"dialog"}),q=({titleId:e})=>{let o=G(K),r=`\`${o.contentName}\` requires a \`${o.titleName}\` for the component to be accessible for screen reader users.
2
+
3
+ If you want to hide the \`${o.titleName}\`, you can wrap it with our VisuallyHidden component.
4
+
5
+ For more information, see https://radix-ui.com/primitives/docs/components/${o.docsSlug}`;return t.useEffect(()=>{e&&(document.getElementById(e)||console.error(r))},[r,e]),null},Y=({contentRef:e,descriptionId:o})=>{let r=G("DialogDescriptionWarning"),n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${r.contentName}}.`;return t.useEffect(()=>{let t=e.current?.getAttribute("aria-describedby");o&&t&&(document.getElementById(o)||console.warn(n))},[n,e,o]),null};e.s(["Close",()=>X,"Content",()=>I,"Description",()=>B,"Dialog",()=>w,"DialogClose",()=>X,"DialogContent",()=>I,"DialogDescription",()=>B,"DialogOverlay",()=>N,"DialogPortal",()=>E,"DialogTitle",()=>H,"DialogTrigger",()=>R,"Overlay",()=>N,"Portal",()=>E,"Root",()=>w,"Title",()=>H,"Trigger",()=>R,"WarningProvider",()=>W,"createDialogScope",()=>y])},90033,e=>{"use strict";var t=e.i(567);e.s(["Dialog",0,t])},2828,e=>{"use strict";var t=e.i(20314),o=e.i(79054),r=e.i(91967),n=e.i(5978),a=e.i(22528),i=e.i(53532),l=e.i(13123),s=e.i(52740),u=e.i(39979),d=e.i(85995),c=e.i(87620),p=e.i(86874),f=e.i(36589),g=e.i(1693),[v,m]=(0,a.createContextScope)("Tooltip",[s.createPopperScope]),x=(0,s.createPopperScope)(),h="TooltipProvider",y="tooltip.open",[C,b]=v(h),w=e=>{let{__scopeTooltip:r,delayDuration:n=700,skipDelayDuration:a=300,disableHoverableContent:i=!1,children:l}=e,s=o.useRef(!0),u=o.useRef(!1),d=o.useRef(0);return o.useEffect(()=>{let e=d.current;return()=>window.clearTimeout(e)},[]),(0,t.jsx)(C,{scope:r,isOpenDelayedRef:s,delayDuration:n,onOpen:o.useCallback(()=>{window.clearTimeout(d.current),s.current=!1},[]),onClose:o.useCallback(()=>{window.clearTimeout(d.current),d.current=window.setTimeout(()=>s.current=!0,a)},[a]),isPointerInTransitRef:u,onPointerInTransitChange:o.useCallback(e=>{u.current=e},[]),disableHoverableContent:i,children:l})};w.displayName=h;var P="Tooltip",[R,D]=v(P),j=e=>{let{__scopeTooltip:r,children:n,open:a,defaultOpen:i,onOpenChange:u,disableHoverableContent:d,delayDuration:c}=e,p=b(P,e.__scopeTooltip),g=x(r),[v,m]=o.useState(null),h=(0,l.useId)(),C=o.useRef(0),w=d??p.disableHoverableContent,D=c??p.delayDuration,j=o.useRef(!1),[T,E]=(0,f.useControllableState)({prop:a,defaultProp:i??!1,onChange:e=>{e?(p.onOpen(),document.dispatchEvent(new CustomEvent(y))):p.onClose(),u?.(e)},caller:P}),k=o.useMemo(()=>T?j.current?"delayed-open":"instant-open":"closed",[T]),N=o.useCallback(()=>{window.clearTimeout(C.current),C.current=0,j.current=!1,E(!0)},[E]),O=o.useCallback(()=>{window.clearTimeout(C.current),C.current=0,E(!1)},[E]),_=o.useCallback(()=>{window.clearTimeout(C.current),C.current=window.setTimeout(()=>{j.current=!0,E(!0),C.current=0},D)},[D,E]);return o.useEffect(()=>()=>{C.current&&(window.clearTimeout(C.current),C.current=0)},[]),(0,t.jsx)(s.Root,{...g,children:(0,t.jsx)(R,{scope:r,contentId:h,open:T,stateAttribute:k,trigger:v,onTriggerChange:m,onTriggerEnter:o.useCallback(()=>{p.isOpenDelayedRef.current?_():N()},[p.isOpenDelayedRef,_,N]),onTriggerLeave:o.useCallback(()=>{w?O():(window.clearTimeout(C.current),C.current=0)},[O,w]),onOpen:N,onClose:O,disableHoverableContent:w,children:n})})};j.displayName=P;var T="TooltipTrigger",E=o.forwardRef((e,a)=>{let{__scopeTooltip:i,...l}=e,u=D(T,i),d=b(T,i),p=x(i),f=o.useRef(null),g=(0,n.useComposedRefs)(a,f,u.onTriggerChange),v=o.useRef(!1),m=o.useRef(!1),h=o.useCallback(()=>v.current=!1,[]);return o.useEffect(()=>()=>document.removeEventListener("pointerup",h),[h]),(0,t.jsx)(s.Anchor,{asChild:!0,...p,children:(0,t.jsx)(c.Primitive.button,{"aria-describedby":u.open?u.contentId:void 0,"data-state":u.stateAttribute,...l,ref:g,onPointerMove:(0,r.composeEventHandlers)(e.onPointerMove,e=>{"touch"!==e.pointerType&&(m.current||d.isPointerInTransitRef.current||(u.onTriggerEnter(),m.current=!0))}),onPointerLeave:(0,r.composeEventHandlers)(e.onPointerLeave,()=>{u.onTriggerLeave(),m.current=!1}),onPointerDown:(0,r.composeEventHandlers)(e.onPointerDown,()=>{u.open&&u.onClose(),v.current=!0,document.addEventListener("pointerup",h,{once:!0})}),onFocus:(0,r.composeEventHandlers)(e.onFocus,()=>{v.current||u.onOpen()}),onBlur:(0,r.composeEventHandlers)(e.onBlur,u.onClose),onClick:(0,r.composeEventHandlers)(e.onClick,u.onClose)})})});E.displayName=T;var k="TooltipPortal",[N,O]=v(k,{forceMount:void 0}),_=e=>{let{__scopeTooltip:o,forceMount:r,children:n,container:a}=e,i=D(k,o);return(0,t.jsx)(N,{scope:o,forceMount:r,children:(0,t.jsx)(d.Presence,{present:r||i.open,children:(0,t.jsx)(u.Portal,{asChild:!0,container:a,children:n})})})};_.displayName=k;var A="TooltipContent",I=o.forwardRef((e,o)=>{let r=O(A,e.__scopeTooltip),{forceMount:n=r.forceMount,side:a="top",...i}=e,l=D(A,e.__scopeTooltip);return(0,t.jsx)(d.Presence,{present:n||l.open,children:l.disableHoverableContent?(0,t.jsx)(H,{side:a,...i,ref:o}):(0,t.jsx)(F,{side:a,...i,ref:o})})}),F=o.forwardRef((e,r)=>{let a=D(A,e.__scopeTooltip),i=b(A,e.__scopeTooltip),l=o.useRef(null),s=(0,n.useComposedRefs)(r,l),[u,d]=o.useState(null),{trigger:c,onClose:p}=a,f=l.current,{onPointerInTransitChange:g}=i,v=o.useCallback(()=>{d(null),g(!1)},[g]),m=o.useCallback((e,t)=>{let o,r=e.currentTarget,n={x:e.clientX,y:e.clientY},a=function(e,t){let o=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),n=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(o,r,n,a)){case a:return"left";case n:return"right";case o:return"top";case r:return"bottom";default:throw Error("unreachable")}}(n,r.getBoundingClientRect());d(((o=[...function(e,t,o=5){let r=[];switch(t){case"top":r.push({x:e.x-o,y:e.y+o},{x:e.x+o,y:e.y+o});break;case"bottom":r.push({x:e.x-o,y:e.y-o},{x:e.x+o,y:e.y-o});break;case"left":r.push({x:e.x+o,y:e.y-o},{x:e.x+o,y:e.y+o});break;case"right":r.push({x:e.x-o,y:e.y-o},{x:e.x-o,y:e.y+o})}return r}(n,a),...function(e){let{top:t,right:o,bottom:r,left:n}=e;return[{x:n,y:t},{x:o,y:t},{x:o,y:r},{x:n,y:r}]}(t.getBoundingClientRect())].slice()).sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:1*!!(e.y>t.y)),function(e){if(e.length<=1)return e.slice();let t=[];for(let o=0;o<e.length;o++){let r=e[o];for(;t.length>=2;){let e=t[t.length-1],o=t[t.length-2];if((e.x-o.x)*(r.y-o.y)>=(e.y-o.y)*(r.x-o.x))t.pop();else break}t.push(r)}t.pop();let o=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;o.length>=2;){let e=o[o.length-1],t=o[o.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))o.pop();else break}o.push(r)}return(o.pop(),1===t.length&&1===o.length&&t[0].x===o[0].x&&t[0].y===o[0].y)?t:t.concat(o)}(o))),g(!0)},[g]);return o.useEffect(()=>()=>v(),[v]),o.useEffect(()=>{if(c&&f){let e=e=>m(e,f),t=e=>m(e,c);return c.addEventListener("pointerleave",e),f.addEventListener("pointerleave",t),()=>{c.removeEventListener("pointerleave",e),f.removeEventListener("pointerleave",t)}}},[c,f,m,v]),o.useEffect(()=>{if(u){let e=e=>{let t=e.target,o={x:e.clientX,y:e.clientY},r=c?.contains(t)||f?.contains(t),n=!function(e,t){let{x:o,y:r}=e,n=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let i=t[e],l=t[a],s=i.x,u=i.y,d=l.x,c=l.y;u>r!=c>r&&o<(d-s)*(r-u)/(c-u)+s&&(n=!n)}return n}(o,u);r?v():n&&(v(),p())};return document.addEventListener("pointermove",e),()=>document.removeEventListener("pointermove",e)}},[c,f,u,p,v]),(0,t.jsx)(H,{...e,ref:s})}),[S,L]=v(P,{isInside:!1}),M=(0,p.createSlottable)("TooltipContent"),H=o.forwardRef((e,r)=>{let{__scopeTooltip:n,children:a,"aria-label":l,onEscapeKeyDown:u,onPointerDownOutside:d,...c}=e,p=D(A,n),f=x(n),{onClose:v}=p;return o.useEffect(()=>(document.addEventListener(y,v),()=>document.removeEventListener(y,v)),[v]),o.useEffect(()=>{if(p.trigger){let e=e=>{let t=e.target;t?.contains(p.trigger)&&v()};return window.addEventListener("scroll",e,{capture:!0}),()=>window.removeEventListener("scroll",e,{capture:!0})}},[p.trigger,v]),(0,t.jsx)(i.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:e=>e.preventDefault(),onDismiss:v,children:(0,t.jsxs)(s.Content,{"data-state":p.stateAttribute,...f,...c,ref:r,style:{...c.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[(0,t.jsx)(M,{children:a}),(0,t.jsx)(S,{scope:n,isInside:!0,children:(0,t.jsx)(g.Root,{id:p.contentId,role:"tooltip",children:l||a})})]})})});I.displayName=A;var z="TooltipArrow",B=o.forwardRef((e,o)=>{let{__scopeTooltip:r,...n}=e,a=x(r);return L(z,r).isInside?null:(0,t.jsx)(s.Arrow,{...a,...n,ref:o})});B.displayName=z,e.s(["Arrow",()=>B,"Content",()=>I,"Portal",()=>_,"Provider",()=>w,"Root",()=>j,"Tooltip",()=>j,"TooltipArrow",()=>B,"TooltipContent",()=>I,"TooltipPortal",()=>_,"TooltipProvider",()=>w,"TooltipTrigger",()=>E,"Trigger",()=>E,"createTooltipScope",()=>m],30643);var U=e.i(30643),U=U,X=e.i(31777);function $({delayDuration:e=400,...o}){return(0,t.jsx)(U.Provider,{"data-slot":"tooltip-provider",delayDuration:e,...o})}function K({...e}){return(0,t.jsx)(U.Root,{"data-slot":"tooltip",...e})}function W({...e}){return(0,t.jsx)(U.Trigger,{"data-slot":"tooltip-trigger",...e})}function G({className:e,sideOffset:o=0,children:r,...n}){return(0,t.jsx)(U.Portal,{children:(0,t.jsxs)(U.Content,{"data-slot":"tooltip-content",sideOffset:o,className:(0,X.cn)("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",e),...n,children:[r,(0,t.jsx)(U.Arrow,{className:"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}e.s(["Tooltip",()=>K,"TooltipContent",()=>G,"TooltipProvider",()=>$,"TooltipTrigger",()=>W],2828)},51251,14748,e=>{"use strict";let t=(0,e.i(3645).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["default",()=>t],14748),e.s(["CircleAlert",()=>t],51251)},83428,15506,e=>{"use strict";let t=(0,e.i(3645).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",()=>t],15506),e.s(["Loader2",()=>t],83428)},2287,e=>{"use strict";var t=e.i(20314),o=e.i(79054),r=e.i(90033),n=e.i(60253),a=e.i(31777);let i=r.Dialog.Root,l=r.Dialog.Trigger,s=r.Dialog.Portal,u=r.Dialog.Close,d=o.forwardRef(({className:e,onClick:o,...n},i)=>(0,t.jsx)(r.Dialog.Overlay,{ref:i,className:(0,a.cn)("data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 fixed inset-0 z-50 bg-black/80 duration-150",e),onClick:e=>{e.stopPropagation(),o?.(e)},...n}));d.displayName=r.Dialog.Overlay.displayName;let c=o.forwardRef(({className:e,children:o,...i},l)=>(0,t.jsxs)(s,{children:[(0,t.jsx)(d,{}),(0,t.jsxs)(r.Dialog.Content,{ref:l,className:(0,a.cn)("bg-background data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border p-6 shadow-lg duration-150 sm:rounded-lg",e),...i,children:[o,(0,t.jsxs)(r.Dialog.Close,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute end-4 top-4 cursor-pointer rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none",children:[(0,t.jsx)(n.X,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]}));c.displayName=r.Dialog.Content.displayName;let p=({className:e,...o})=>(0,t.jsx)("div",{className:(0,a.cn)("flex flex-col space-y-1.5 text-center sm:text-start",e),...o});p.displayName="DialogHeader";let f=({className:e,...o})=>(0,t.jsx)("div",{className:(0,a.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...o});f.displayName="DialogFooter";let g=o.forwardRef(({className:e,...o},n)=>(0,t.jsx)(r.Dialog.Title,{ref:n,className:(0,a.cn)("text-lg leading-none font-semibold tracking-tight",e),...o}));g.displayName=r.Dialog.Title.displayName;let v=o.forwardRef(({className:e,...o},n)=>(0,t.jsx)(r.Dialog.Description,{ref:n,className:(0,a.cn)("text-muted-foreground text-sm",e),...o}));v.displayName=r.Dialog.Description.displayName,e.s(["Dialog",()=>i,"DialogClose",()=>u,"DialogContent",()=>c,"DialogDescription",()=>v,"DialogFooter",()=>f,"DialogHeader",()=>p,"DialogTitle",()=>g,"DialogTrigger",()=>l])},8361,73709,18354,e=>{"use strict";var t=e.i(44172),o=e.i(79054);let r="shep-sound-enabled",n="shep:sound-toggle";function a(){let[e,t]=(0,o.useState)(!0);(0,o.useEffect)(()=>{"false"===localStorage.getItem(r)&&t(!1);let e=e=>{t(e.detail)};return window.addEventListener(n,e),()=>window.removeEventListener(n,e)},[]);let a=(0,o.useCallback)(()=>{let o=!e;localStorage.setItem(r,String(o)),t(o),window.dispatchEvent(new CustomEvent(n,{detail:o}))},[e]);return{enabled:e,toggle:a}}e.s(["useSoundEnabled",()=>a],73709);let i=new Map,l={navigate:{sound:"tap_01",volume:.2},"menu-item":{sound:"tap_01",volume:.2},select:{sound:"select",volume:.3},"toggle-on":{sound:"toggle_on",volume:.3},"toggle-off":{sound:"toggle_off",volume:.3},click:{sound:"tap_01",volume:.3},cancel:{sound:"transition_down",volume:.3},expand:{sound:"tap_01",volume:.2},collapse:{sound:"tap_01",volume:.2},"menu-open":{sound:"select",volume:.3},copy:{sound:"select",volume:.3},"drawer-open":{sound:"transition_up",volume:.4},"drawer-close":{sound:"transition_down",volume:.4},submit:{sound:"button",volume:.4},approve:{sound:"celebration",volume:.5},reject:{sound:"caution",volume:.5},create:{sound:"transition_up",volume:.5},delete:{sound:"transition_down",volume:.5},"notification-success":{sound:"celebration",volume:.5},"notification-error":{sound:"caution",volume:.5},"notification-warning":{sound:"notification",volume:.5},"notification-info":{sound:"button",volume:.5}};function s(e){let{sound:t,volume:r}=l[e];return function(e,t={}){let{volume:r=1,loop:n=!1}=t,{enabled:l}=a(),s=(0,o.useRef)(null),u=(0,o.useRef)(!1);return(0,o.useEffect)(()=>{let t,o=((t=i.get(e))||((t=new Audio(`/sounds/${e}.wav`)).preload="auto",i.set(e,t)),t);return o.loop=n,o.volume=Math.max(0,Math.min(1,r)),o.addEventListener("ended",()=>{u.current=!1}),s.current=o,()=>{o.pause(),s.current=null,u.current=!1}},[e,n,r]),{play:(0,o.useCallback)(()=>{if(!l)return;let e=s.current;e&&(e.currentTime=0,e.play()?.catch(e=>{}),u.current=!0)},[l,e]),stop:(0,o.useCallback)(()=>{let e=s.current;e&&(e.pause(),e.currentTime=0,u.current=!1)},[]),isPlaying:u.current}}(t,{volume:r})}e.s(["useSoundAction",()=>s],8361);let u=!!t.default.env.NEXT_PUBLIC_DEBUG,d=()=>void 0;function c(e){return{info:u?(...t)=>console.info(e,...t):d,debug:u?(...t)=>console.debug(e,...t):d,warn:(...t)=>console.warn(e,...t),error:(...t)=>console.error(e,...t)}}e.s(["createLogger",()=>c],18354)},75921,e=>{"use strict";var t=e.i(20314),o=e.i(79054);let r=(0,o.createContext)({skills:!1,envDeploy:!0,debug:!1,githubImport:!1,adoptBranch:!1,gitRebaseSync:!1,reactFileManager:!1,inventory:!1});function n({children:e,flags:o}){return(0,t.jsx)(r.Provider,{value:o,children:e})}function a(){return(0,o.useContext)(r)}e.s(["FeatureFlagsProvider",()=>n,"useFeatureFlags",()=>a])},31406,(e,t,o)=>{t.exports=e.r(67013)},23925,1012,e=>{"use strict";let t=(0,e.i(3645).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",()=>t],1012),e.s(["Check",()=>t],23925)},60253,90537,e=>{"use strict";let t=(0,e.i(3645).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["default",()=>t],90537),e.s(["X",()=>t],60253)}]);