@shepai/cli 1.22.0 → 1.23.0

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 (232) hide show
  1. package/dist/packages/core/src/infrastructure/services/file-dialog.service.d.ts +28 -0
  2. package/dist/packages/core/src/infrastructure/services/file-dialog.service.d.ts.map +1 -0
  3. package/dist/packages/core/src/infrastructure/services/file-dialog.service.js +63 -0
  4. package/dist/packages/core/src/infrastructure/services/tool-installer/tool-installer.service.d.ts.map +1 -1
  5. package/dist/packages/core/src/infrastructure/services/tool-installer/tool-installer.service.js +16 -2
  6. package/dist/packages/core/src/infrastructure/services/tool-installer/tools/cursor-cli.json +5 -5
  7. package/dist/packages/core/src/infrastructure/services/tool-installer/tools/cursor.json +5 -5
  8. package/dist/packages/core/src/infrastructure/services/tool-installer/tools/vscode.json +2 -2
  9. package/dist/packages/core/src/infrastructure/services/tool-installer/tools/windsurf.json +1 -1
  10. package/dist/src/presentation/web/app/api/dialog/pick-files/route.d.ts +11 -0
  11. package/dist/src/presentation/web/app/api/dialog/pick-files/route.d.ts.map +1 -0
  12. package/dist/src/presentation/web/app/api/dialog/pick-files/route.js +16 -0
  13. package/dist/src/presentation/web/app/derive-state.d.ts +12 -0
  14. package/dist/src/presentation/web/app/derive-state.d.ts.map +1 -0
  15. package/dist/src/presentation/web/app/derive-state.js +21 -0
  16. package/dist/src/presentation/web/app/page.d.ts.map +1 -1
  17. package/dist/src/presentation/web/app/page.js +23 -12
  18. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts +15 -0
  19. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -0
  20. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +102 -0
  21. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts +63 -0
  22. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.d.ts.map +1 -0
  23. package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.stories.js +164 -0
  24. package/dist/src/presentation/web/components/common/feature-create-drawer/index.d.ts +2 -0
  25. package/dist/src/presentation/web/components/common/feature-create-drawer/index.d.ts.map +1 -0
  26. package/dist/src/presentation/web/components/common/feature-create-drawer/index.js +1 -0
  27. package/dist/src/presentation/web/components/common/feature-create-drawer/pick-files.d.ts +7 -0
  28. package/dist/src/presentation/web/components/common/feature-create-drawer/pick-files.d.ts.map +1 -0
  29. package/dist/src/presentation/web/components/common/feature-create-drawer/pick-files.js +13 -0
  30. package/dist/src/presentation/web/components/common/feature-drawer/feature-drawer.d.ts +7 -0
  31. package/dist/src/presentation/web/components/common/feature-drawer/feature-drawer.d.ts.map +1 -0
  32. package/dist/src/presentation/web/components/common/feature-drawer/feature-drawer.js +28 -0
  33. package/dist/src/presentation/web/components/common/feature-drawer/feature-drawer.stories.d.ts +19 -0
  34. package/dist/src/presentation/web/components/common/feature-drawer/feature-drawer.stories.d.ts.map +1 -0
  35. package/dist/src/presentation/web/components/common/feature-drawer/feature-drawer.stories.js +167 -0
  36. package/dist/src/presentation/web/components/common/feature-drawer/index.d.ts +2 -0
  37. package/dist/src/presentation/web/components/common/feature-drawer/index.d.ts.map +1 -0
  38. package/dist/src/presentation/web/components/common/feature-drawer/index.js +1 -0
  39. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +2 -5
  40. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
  41. package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.js +4 -13
  42. package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
  43. package/dist/src/presentation/web/components/common/feature-node/feature-node.js +7 -9
  44. package/dist/src/presentation/web/components/common/feature-node/feature-node.stories.d.ts +0 -1
  45. package/dist/src/presentation/web/components/common/feature-node/feature-node.stories.d.ts.map +1 -1
  46. package/dist/src/presentation/web/components/common/feature-node/feature-node.stories.js +4 -23
  47. package/dist/src/presentation/web/components/common/feature-node/index.d.ts +1 -3
  48. package/dist/src/presentation/web/components/common/feature-node/index.d.ts.map +1 -1
  49. package/dist/src/presentation/web/components/common/feature-node/index.js +1 -3
  50. package/dist/src/presentation/web/components/common/index.d.ts +2 -0
  51. package/dist/src/presentation/web/components/common/index.d.ts.map +1 -1
  52. package/dist/src/presentation/web/components/common/index.js +2 -0
  53. package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
  54. package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +11 -3
  55. package/dist/src/presentation/web/components/features/control-center/use-control-center-state.d.ts +4 -0
  56. package/dist/src/presentation/web/components/features/control-center/use-control-center-state.d.ts.map +1 -1
  57. package/dist/src/presentation/web/components/features/control-center/use-control-center-state.js +20 -4
  58. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts +1 -1
  59. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
  60. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +5 -1
  61. package/dist/src/presentation/web/components/ui/button.d.ts +1 -1
  62. package/dist/src/presentation/web/components/ui/drawer.d.ts +17 -0
  63. package/dist/src/presentation/web/components/ui/drawer.d.ts.map +1 -0
  64. package/dist/src/presentation/web/components/ui/drawer.js +45 -0
  65. package/dist/src/presentation/web/components/ui/drawer.stories.d.ts +17 -0
  66. package/dist/src/presentation/web/components/ui/drawer.stories.d.ts.map +1 -0
  67. package/dist/src/presentation/web/components/ui/drawer.stories.js +29 -0
  68. package/dist/src/presentation/web/components/ui/textarea.d.ts +4 -0
  69. package/dist/src/presentation/web/components/ui/textarea.d.ts.map +1 -0
  70. package/dist/src/presentation/web/components/ui/textarea.js +6 -0
  71. package/dist/src/presentation/web/components/ui/textarea.stories.d.ts +10 -0
  72. package/dist/src/presentation/web/components/ui/textarea.stories.d.ts.map +1 -0
  73. package/dist/src/presentation/web/components/ui/textarea.stories.js +28 -0
  74. package/dist/src/presentation/web/lib/features.d.ts +30 -0
  75. package/dist/src/presentation/web/lib/features.d.ts.map +1 -0
  76. package/dist/src/presentation/web/lib/features.js +50 -0
  77. package/dist/tsconfig.build.tsbuildinfo +1 -1
  78. package/package.json +2 -2
  79. package/web/.next/BUILD_ID +1 -1
  80. package/web/.next/app-path-routes-manifest.json +1 -0
  81. package/web/.next/build-manifest.json +5 -5
  82. package/web/.next/cache/.previewinfo +1 -1
  83. package/web/.next/cache/.rscinfo +1 -1
  84. package/web/.next/cache/.tsbuildinfo +1 -1
  85. package/web/.next/cache/config.json +3 -3
  86. package/web/.next/fallback-build-manifest.json +2 -2
  87. package/web/.next/prerender-manifest.json +3 -3
  88. package/web/.next/required-server-files.js +1 -1
  89. package/web/.next/required-server-files.json +1 -1
  90. package/web/.next/routes-manifest.json +6 -0
  91. package/web/.next/server/app/_global-error/page/build-manifest.json +3 -3
  92. package/web/.next/server/app/_global-error/page.js +1 -1
  93. package/web/.next/server/app/_global-error/page.js.nft.json +1 -1
  94. package/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  95. package/web/.next/server/app/_global-error.html +2 -2
  96. package/web/.next/server/app/_global-error.rsc +1 -1
  97. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  98. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  99. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  100. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  101. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  102. package/web/.next/server/app/_not-found/page/build-manifest.json +3 -3
  103. package/web/.next/server/app/_not-found/page.js +1 -1
  104. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  105. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  106. package/web/.next/server/app/_not-found.html +2 -2
  107. package/web/.next/server/app/_not-found.rsc +9 -9
  108. package/web/.next/server/app/_not-found.segments/_full.segment.rsc +9 -9
  109. package/web/.next/server/app/_not-found.segments/_head.segment.rsc +3 -3
  110. package/web/.next/server/app/_not-found.segments/_index.segment.rsc +5 -5
  111. package/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  112. package/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  113. package/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  114. package/web/.next/server/app/api/dialog/pick-files/route/app-paths-manifest.json +3 -0
  115. package/web/.next/server/app/api/dialog/pick-files/route/build-manifest.json +11 -0
  116. package/web/.next/server/app/api/dialog/pick-files/route/server-reference-manifest.json +4 -0
  117. package/web/.next/server/app/api/dialog/pick-files/route.js +6 -0
  118. package/web/.next/server/app/api/dialog/pick-files/route.js.map +5 -0
  119. package/web/.next/server/app/api/dialog/pick-files/route.js.nft.json +1 -0
  120. package/web/.next/server/app/api/dialog/pick-files/route_client-reference-manifest.js +2 -0
  121. package/web/.next/server/app/api/dialog/pick-folder/route.js +2 -2
  122. package/web/.next/server/app/api/dialog/pick-folder/route.js.nft.json +1 -1
  123. package/web/.next/server/app/index.html +2 -2
  124. package/web/.next/server/app/index.rsc +4 -4
  125. package/web/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  126. package/web/.next/server/app/index.segments/_full.segment.rsc +4 -4
  127. package/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  128. package/web/.next/server/app/index.segments/_index.segment.rsc +3 -3
  129. package/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  130. package/web/.next/server/app/page/build-manifest.json +3 -3
  131. package/web/.next/server/app/page.js +3 -3
  132. package/web/.next/server/app/page.js.nft.json +1 -1
  133. package/web/.next/server/app/page_client-reference-manifest.js +1 -1
  134. package/web/.next/server/app/version/page/build-manifest.json +3 -3
  135. package/web/.next/server/app/version/page.js +1 -1
  136. package/web/.next/server/app/version/page.js.nft.json +1 -1
  137. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  138. package/web/.next/server/app/version.html +2 -2
  139. package/web/.next/server/app/version.rsc +4 -4
  140. package/web/.next/server/app/version.segments/_full.segment.rsc +4 -4
  141. package/web/.next/server/app/version.segments/_head.segment.rsc +1 -1
  142. package/web/.next/server/app/version.segments/_index.segment.rsc +3 -3
  143. package/web/.next/server/app/version.segments/_tree.segment.rsc +2 -2
  144. package/web/.next/server/app/version.segments/version/__PAGE__.segment.rsc +2 -2
  145. package/web/.next/server/app/version.segments/version.segment.rsc +1 -1
  146. package/web/.next/server/app-paths-manifest.json +1 -0
  147. package/web/.next/server/chunks/744ca_web__next-internal_server_app_api_dialog_pick-files_route_actions_f9868286.js +3 -0
  148. package/web/.next/server/chunks/[root-of-the-server]__00833626._.js +21 -0
  149. package/web/.next/server/chunks/[root-of-the-server]__00833626._.js.map +1 -0
  150. package/web/.next/server/chunks/[root-of-the-server]__22cabd43._.js +4 -0
  151. package/web/.next/server/chunks/[root-of-the-server]__22cabd43._.js.map +1 -0
  152. package/web/.next/server/chunks/[root-of-the-server]__95785ac7._.js +3 -0
  153. package/web/.next/server/chunks/[root-of-the-server]__95785ac7._.js.map +1 -0
  154. package/web/.next/server/chunks/ssr/403f9_next_dist_esm_build_templates_app-page_dbf21e04.js +1 -1
  155. package/web/.next/server/chunks/ssr/[root-of-the-server]__1eade43f._.js +3 -0
  156. package/web/.next/server/chunks/ssr/[root-of-the-server]__1eade43f._.js.map +1 -0
  157. package/web/.next/server/chunks/ssr/{[root-of-the-server]__6b3c1f2b._.js → [root-of-the-server]__685eaa45._.js} +2 -2
  158. package/web/.next/server/chunks/ssr/[root-of-the-server]__71515c64._.js +3 -0
  159. package/web/.next/server/chunks/ssr/[root-of-the-server]__757c7912._.js +3 -0
  160. package/web/.next/server/chunks/ssr/[root-of-the-server]__7c64f85c._.js +3 -0
  161. package/web/.next/server/chunks/ssr/[root-of-the-server]__7c64f85c._.js.map +1 -0
  162. package/web/.next/server/chunks/ssr/[root-of-the-server]__8507ac68._.js +3 -0
  163. package/web/.next/server/chunks/ssr/[root-of-the-server]__8507ac68._.js.map +1 -0
  164. package/web/.next/server/chunks/ssr/{[root-of-the-server]__e55e9c7f._.js → [root-of-the-server]__dbd220d2._.js} +2 -2
  165. package/web/.next/server/chunks/ssr/[root-of-the-server]__f12b60be._.js +1 -1
  166. package/web/.next/server/chunks/ssr/[root-of-the-server]__fa87595c._.js +1 -1
  167. package/web/.next/server/chunks/ssr/_09afa42a._.js +1 -1
  168. package/web/.next/server/chunks/ssr/_09afa42a._.js.map +1 -1
  169. package/web/.next/server/chunks/ssr/_1f9347c8._.js +7 -0
  170. package/web/.next/server/chunks/ssr/_1f9347c8._.js.map +1 -0
  171. package/web/.next/server/chunks/ssr/_884ddade._.js +1 -1
  172. package/web/.next/server/chunks/ssr/_937b37e2._.js +3 -0
  173. package/web/.next/server/chunks/ssr/_937b37e2._.js.map +1 -0
  174. package/web/.next/server/chunks/ssr/_a0c04017._.js +1 -5
  175. package/web/.next/server/chunks/ssr/_a0c04017._.js.map +1 -1
  176. package/web/.next/server/chunks/ssr/_c5d377cc._.js +1 -1
  177. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_version_version-page-client_tsx_fe9db753._.js +1 -1
  178. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_version_version-page-client_tsx_fe9db753._.js.map +1 -1
  179. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_badge_tsx_964c2a3b._.js +3 -0
  180. package/web/.next/server/chunks/ssr/src_presentation_web_components_ui_badge_tsx_964c2a3b._.js.map +1 -0
  181. package/web/.next/server/middleware-build-manifest.js +3 -3
  182. package/web/.next/server/pages/404.html +2 -2
  183. package/web/.next/server/pages/500.html +2 -2
  184. package/web/.next/server/server-reference-manifest.js +1 -1
  185. package/web/.next/server/server-reference-manifest.json +1 -1
  186. package/web/.next/static/chunks/4431cc2d3628b6f6.js +1 -0
  187. package/web/.next/static/chunks/49488cbe99543598.css +1 -0
  188. package/web/.next/static/chunks/70993ebedee7eab0.js +2 -0
  189. package/web/.next/static/chunks/8bc34062bc0f4ddc.js +1 -0
  190. package/web/.next/static/chunks/c95b4cf170b7f301.js +1 -0
  191. package/web/.next/static/chunks/df7d29673e0ac11d.js +1 -0
  192. package/web/.next/static/chunks/e78d1b265b8110c3.js +1 -0
  193. package/web/.next/static/chunks/f5099c5888ef9a74.js +5 -0
  194. package/web/.next/static/chunks/{b29c0572633eb9e4.js → f6b5484377f4e78e.js} +2 -2
  195. package/web/.next/static/chunks/{turbopack-e0a0178ee911c212.js → turbopack-a5a88a85e7ac8e8d.js} +1 -1
  196. package/web/.next/trace +1 -1
  197. package/web/.next/trace-build +1 -1
  198. package/web/.next/types/link.d.ts +1 -0
  199. package/web/.next/types/routes.d.ts +2 -1
  200. package/web/.next/types/validator.ts +9 -0
  201. package/web/next.config.mjs +1 -1
  202. package/web/package.json +3 -3
  203. package/web/.next/server/chunks/[externals]_next_dist_a6d89067._.js +0 -3
  204. package/web/.next/server/chunks/[root-of-the-server]__ebcd3642._.js +0 -21
  205. package/web/.next/server/chunks/[root-of-the-server]__ebcd3642._.js.map +0 -1
  206. package/web/.next/server/chunks/ssr/[root-of-the-server]__2127336f._.js +0 -3
  207. package/web/.next/server/chunks/ssr/[root-of-the-server]__44c4e191._.js +0 -3
  208. package/web/.next/server/chunks/ssr/[root-of-the-server]__44c4e191._.js.map +0 -1
  209. package/web/.next/server/chunks/ssr/[root-of-the-server]__492e833d._.js +0 -3
  210. package/web/.next/server/chunks/ssr/[root-of-the-server]__492e833d._.js.map +0 -1
  211. package/web/.next/server/chunks/ssr/[root-of-the-server]__80e5bed2._.js +0 -3
  212. package/web/.next/server/chunks/ssr/_3d152196._.js +0 -3
  213. package/web/.next/server/chunks/ssr/_3d152196._.js.map +0 -1
  214. package/web/.next/server/chunks/ssr/node_modules__pnpm_b11d5ad4._.js +0 -3
  215. package/web/.next/server/chunks/ssr/node_modules__pnpm_b11d5ad4._.js.map +0 -1
  216. package/web/.next/server/chunks/ssr/src_presentation_web_ed0934e5._.js +0 -3
  217. package/web/.next/server/chunks/ssr/src_presentation_web_ed0934e5._.js.map +0 -1
  218. package/web/.next/static/chunks/3701b9d5749e6143.css +0 -1
  219. package/web/.next/static/chunks/a8030d19b4d73c95.js +0 -1
  220. package/web/.next/static/chunks/b0d13220be9ac29c.js +0 -1
  221. package/web/.next/static/chunks/be34161188b4e0a0.js +0 -2
  222. package/web/.next/static/chunks/c87445f8cbe36c74.js +0 -1
  223. package/web/.next/static/chunks/f220dad9d38bff95.js +0 -5
  224. package/web/.next/static/chunks/f74cb59a5a6c94f1.js +0 -1
  225. /package/web/.next/server/chunks/{[externals]_next_dist_a6d89067._.js.map → 744ca_web__next-internal_server_app_api_dialog_pick-files_route_actions_f9868286.js.map} +0 -0
  226. /package/web/.next/server/chunks/ssr/{[root-of-the-server]__6b3c1f2b._.js.map → [root-of-the-server]__685eaa45._.js.map} +0 -0
  227. /package/web/.next/server/chunks/ssr/{[root-of-the-server]__80e5bed2._.js.map → [root-of-the-server]__71515c64._.js.map} +0 -0
  228. /package/web/.next/server/chunks/ssr/{[root-of-the-server]__2127336f._.js.map → [root-of-the-server]__757c7912._.js.map} +0 -0
  229. /package/web/.next/server/chunks/ssr/{[root-of-the-server]__e55e9c7f._.js.map → [root-of-the-server]__dbd220d2._.js.map} +0 -0
  230. /package/web/.next/static/{50v5TcK4kMIcF3xxCPBNl → WqMlhB4Xv4T13f0oXQ5uG}/_buildManifest.js +0 -0
  231. /package/web/.next/static/{50v5TcK4kMIcF3xxCPBNl → WqMlhB4Xv4T13f0oXQ5uG}/_clientMiddlewareManifest.json +0 -0
  232. /package/web/.next/static/{50v5TcK4kMIcF3xxCPBNl → WqMlhB4Xv4T13f0oXQ5uG}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- module.exports=[96523,a=>{a.n(a.i(48886))},92556,a=>{"use strict";var b=a.i(91153),c=a.i(92273),d=a.i(71257),e=a.i(42982),f=a.i(20853),g=a.i(66172),h=a.i(88403),i=a.i(84477),j=a.i(7452),k=a.i(32557),l=a.i(66941),m=a.i(81940),n=a.i(19882),o=a.i(92631),p=a.i(61767),q=a.i(79714),r=a.i(82101);a.i(53143);var s=a.i(15253),t=a.i(54358),u=a.i(11503),v=a.i(80176),w=a.i(77550),x=a.i(58325),y=a.i(93695),z=a.i(74990),A=a.i(22672);a.i(33322);var B=a.i(83528),C=a.i(40077),D=a.i(1577),E=a.i(78567),F=a.i(56780);let G=["",{children:["__PAGE__",{},{metadata:{},page:[()=>a.r(96523),"[project]/src/presentation/web/app/page.tsx"]}]},{layout:[()=>a.r(59975),"[project]/src/presentation/web/app/layout.tsx"],"not-found":[()=>a.r(63754),"[project]/src/presentation/web/app/not-found.tsx"],forbidden:[()=>a.r(27075),"[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>a.r(37458),"[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/unauthorized.js"],"global-error":[()=>a.r(22672),"[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js"]}],H={require:a.r.bind(a),loadChunk:a.l.bind(a)},I=new b.AppPageRouteModule({definition:{kind:c.RouteKind.APP_PAGE,page:"/page",pathname:"/",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:G},distDir:".next",relativeProjectDir:""});async function J(a,b,K){var L;I.isDev&&(0,f.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let M=!!(0,f.getRequestMeta)(a,"minimalMode"),N="/page";N=N.replace(/\/index$/,"")||"/";let O=await I.prepare(a,b,{srcPage:N,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==K.waitUntil||K.waitUntil.call(K,Promise.resolve()),null;let{buildId:P,query:Q,params:R,pageIsDynamic:S,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,serverActionsManifest:W,clientReferenceManifest:X,subresourceIntegrityManifest:Y,prerenderManifest:Z,isDraftMode:$,resolvedPathname:_,revalidateOnlyGenerated:aa,routerServerContext:ab,nextConfig:ac,parsedUrl:ad,interceptionRoutePatterns:ae,deploymentId:af}=O,ag=(0,o.normalizeAppPath)(N),{isOnDemandRevalidate:ah}=O,ai=ac.experimental.ppr&&!ac.cacheComponents&&(0,F.isInterceptionRouteAppPath)(_)?null:I.match(_,Z),aj=!!Z.routes[_],ak=a.headers["user-agent"]||"",al=(0,r.getBotType)(ak),am=(0,n.isHtmlBotRequest)(a),an=(0,f.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[q.NEXT_ROUTER_PREFETCH_HEADER],ao=(0,f.getRequestMeta)(a,"isRSCRequest")??!!a.headers[q.RSC_HEADER],ap=(0,p.getIsPossibleServerAction)(a),aq=(0,k.checkIsAppPPREnabled)(ac.experimental.ppr);if(!(0,f.getRequestMeta)(a,"postponed")&&aq&&"1"===a.headers[v.NEXT_RESUME_HEADER]&&"POST"===a.method){let b=[];for await(let c of a)b.push(c);let c=Buffer.concat(b).toString("utf8");(0,f.addRequestMeta)(a,"postponed",c)}let ar=aq&&(null==(L=Z.routes[ag]??Z.dynamicRoutes[ag])?void 0:L.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?(0,f.getRequestMeta)(a,"postponed"):void 0,av=ar&&ao&&!an;M&&(av=av&&!!au);let aw=(0,f.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=(!am||!ar)&&(!ak||(0,n.shouldServeStreamingMetadata)(ak,ac.htmlLimitedBots)),ay=!!((ai||aj||Z.routes[ag])&&!(am&&ar)),az=ar&&!0===ac.cacheComponents,aA=!0===I.isDev||!ay||"string"==typeof au||(az&&(0,f.getRequestMeta)(a,"onCacheEntryV2")?av&&!M:av),aB=am&&ar,aC=null;$||!ay||aA||ap||au||av||(aC=_);let aD=aC;!aD&&I.isDev&&(aD=_),I.isDev||$||!ay||!ao||av||(0,i.stripFlightHeaders)(a.headers);let aE={...B,tree:G,GlobalError:A.default,handler:J,routeModule:I,__next_app__:H};W&&X&&(0,m.setManifestsSingleton)({page:N,clientReferenceManifest:X,serverActionsManifest:W});let aF=a.method||"GET",aG=(0,e.getTracer)(),aH=aG.getActiveScopeSpan(),aI=async()=>((null==ab?void 0:ab.render404)?await ab.render404(a,b,ad,!1):b.end("This page could not be found"),null);try{let d=I.getVaryHeader(_,ae);b.setHeader("Vary",d);let i=async(c,d)=>{let e=new j.NodeNextRequest(a),f=new j.NodeNextResponse(b);return I.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aG.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==g.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aF} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aF} ${N}`)})},k=(0,f.getRequestMeta)(a,"incrementalCache"),m=async({span:c,postponed:d,fallbackRouteParams:e,forceStaticRender:g})=>{let j={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,f.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:e,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aE,Component:(0,h.interopDefault)(aE),params:R,routeModule:I,page:N,postponed:d,shouldWaitOnAllReady:aB,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof d||aA,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,subresourceIntegrityManifest:Y,setCacheStatus:null==ab?void 0:ab.setCacheStatus,setIsrStatus:null==ab?void 0:ab.setIsrStatus,setReactDebugChannel:null==ab?void 0:ab.setReactDebugChannel,sendErrorsToBrowser:null==ab?void 0:ab.sendErrorsToBrowser,dir:require("path").join(process.cwd(),I.relativeProjectDir),isDraftMode:$,botType:al,isOnDemandRevalidate:ah,isPossibleServerAction:ap,assetPrefix:ac.assetPrefix,nextConfigOutput:ac.output,crossOrigin:ac.crossOrigin,trailingSlash:ac.trailingSlash,images:ac.images,previewProps:Z.preview,deploymentId:af,enableTainting:ac.experimental.taint,htmlLimitedBots:ac.htmlLimitedBots,reactMaxHeadersLength:ac.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:k,cacheLifeProfiles:ac.cacheLife,basePath:ac.basePath,serverActions:ac.experimental.serverActions,...as||at?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:as}:{},cacheComponents:!!ac.cacheComponents,experimental:{isRoutePPREnabled:ar,expireTime:ac.expireTime,staleTimes:ac.experimental.staleTimes,dynamicOnHover:!!ac.experimental.dynamicOnHover,inlineCss:!!ac.experimental.inlineCss,authInterrupts:!!ac.experimental.authInterrupts,clientTraceMetadata:ac.experimental.clientTraceMetadata||[],clientParamParsingOrigins:ac.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,z.parseMaxPostponedStateSize)(ac.experimental.maxPostponedStateSize)},waitUntil:K.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>I.onRequestError(a,b,d,e,ab),err:(0,f.getRequestMeta)(a,"invokeError"),dev:I.isDev}};as&&(j.renderOpts.nextExport=!0,j.renderOpts.supportsDynamicResponse=!1,j.renderOpts.isDebugDynamicAccesses=as),g&&(j.renderOpts.supportsDynamicResponse=!1);let l=await i(c,j),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p,fetchMetrics:q}=m;if(p&&(o[v.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=q,ay&&(null==n?void 0:n.revalidate)===0&&!I.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${_}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
1
+ module.exports=[96523,a=>{a.n(a.i(48886))},92556,a=>{"use strict";var b=a.i(91153),c=a.i(92273),d=a.i(71257),e=a.i(42982),f=a.i(20853),g=a.i(66172),h=a.i(88403),i=a.i(84477),j=a.i(7452),k=a.i(32557),l=a.i(66941),m=a.i(81940),n=a.i(19882),o=a.i(92631),p=a.i(61767),q=a.i(79714),r=a.i(82101);a.i(53143);var s=a.i(15253),t=a.i(54358),u=a.i(11503),v=a.i(80176),w=a.i(77550),x=a.i(58325),y=a.i(93695),z=a.i(74990),A=a.i(22672);a.i(33322);var B=a.i(83528),C=a.i(40077),D=a.i(1577),E=a.i(78567),F=a.i(56780);let G=["",{children:["__PAGE__",{},{metadata:{},page:[()=>a.r(96523),"[project]/src/presentation/web/app/page.tsx"]}]},{layout:[()=>a.r(59975),"[project]/src/presentation/web/app/layout.tsx"],"not-found":[()=>a.r(81719),"[project]/src/presentation/web/app/not-found.tsx"],forbidden:[()=>a.r(27075),"[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>a.r(37458),"[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/unauthorized.js"],"global-error":[()=>a.r(22672),"[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_@playwright+test@1.58.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js"]}],H={require:a.r.bind(a),loadChunk:a.l.bind(a)},I=new b.AppPageRouteModule({definition:{kind:c.RouteKind.APP_PAGE,page:"/page",pathname:"/",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:G},distDir:".next",relativeProjectDir:""});async function J(a,b,K){var L;I.isDev&&(0,f.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let M=!!(0,f.getRequestMeta)(a,"minimalMode"),N="/page";N=N.replace(/\/index$/,"")||"/";let O=await I.prepare(a,b,{srcPage:N,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==K.waitUntil||K.waitUntil.call(K,Promise.resolve()),null;let{buildId:P,query:Q,params:R,pageIsDynamic:S,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,serverActionsManifest:W,clientReferenceManifest:X,subresourceIntegrityManifest:Y,prerenderManifest:Z,isDraftMode:$,resolvedPathname:_,revalidateOnlyGenerated:aa,routerServerContext:ab,nextConfig:ac,parsedUrl:ad,interceptionRoutePatterns:ae,deploymentId:af}=O,ag=(0,o.normalizeAppPath)(N),{isOnDemandRevalidate:ah}=O,ai=ac.experimental.ppr&&!ac.cacheComponents&&(0,F.isInterceptionRouteAppPath)(_)?null:I.match(_,Z),aj=!!Z.routes[_],ak=a.headers["user-agent"]||"",al=(0,r.getBotType)(ak),am=(0,n.isHtmlBotRequest)(a),an=(0,f.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[q.NEXT_ROUTER_PREFETCH_HEADER],ao=(0,f.getRequestMeta)(a,"isRSCRequest")??!!a.headers[q.RSC_HEADER],ap=(0,p.getIsPossibleServerAction)(a),aq=(0,k.checkIsAppPPREnabled)(ac.experimental.ppr);if(!(0,f.getRequestMeta)(a,"postponed")&&aq&&"1"===a.headers[v.NEXT_RESUME_HEADER]&&"POST"===a.method){let b=[];for await(let c of a)b.push(c);let c=Buffer.concat(b).toString("utf8");(0,f.addRequestMeta)(a,"postponed",c)}let ar=aq&&(null==(L=Z.routes[ag]??Z.dynamicRoutes[ag])?void 0:L.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?(0,f.getRequestMeta)(a,"postponed"):void 0,av=ar&&ao&&!an;M&&(av=av&&!!au);let aw=(0,f.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=(!am||!ar)&&(!ak||(0,n.shouldServeStreamingMetadata)(ak,ac.htmlLimitedBots)),ay=!!((ai||aj||Z.routes[ag])&&!(am&&ar)),az=ar&&!0===ac.cacheComponents,aA=!0===I.isDev||!ay||"string"==typeof au||(az&&(0,f.getRequestMeta)(a,"onCacheEntryV2")?av&&!M:av),aB=am&&ar,aC=null;$||!ay||aA||ap||au||av||(aC=_);let aD=aC;!aD&&I.isDev&&(aD=_),I.isDev||$||!ay||!ao||av||(0,i.stripFlightHeaders)(a.headers);let aE={...B,tree:G,GlobalError:A.default,handler:J,routeModule:I,__next_app__:H};W&&X&&(0,m.setManifestsSingleton)({page:N,clientReferenceManifest:X,serverActionsManifest:W});let aF=a.method||"GET",aG=(0,e.getTracer)(),aH=aG.getActiveScopeSpan(),aI=async()=>((null==ab?void 0:ab.render404)?await ab.render404(a,b,ad,!1):b.end("This page could not be found"),null);try{let d=I.getVaryHeader(_,ae);b.setHeader("Vary",d);let i=async(c,d)=>{let e=new j.NodeNextRequest(a),f=new j.NodeNextResponse(b);return I.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aG.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==g.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aF} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aF} ${N}`)})},k=(0,f.getRequestMeta)(a,"incrementalCache"),m=async({span:c,postponed:d,fallbackRouteParams:e,forceStaticRender:g})=>{let j={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,f.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:e,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aE,Component:(0,h.interopDefault)(aE),params:R,routeModule:I,page:N,postponed:d,shouldWaitOnAllReady:aB,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof d||aA,buildManifest:T,nextFontManifest:U,reactLoadableManifest:V,subresourceIntegrityManifest:Y,setCacheStatus:null==ab?void 0:ab.setCacheStatus,setIsrStatus:null==ab?void 0:ab.setIsrStatus,setReactDebugChannel:null==ab?void 0:ab.setReactDebugChannel,sendErrorsToBrowser:null==ab?void 0:ab.sendErrorsToBrowser,dir:require("path").join(process.cwd(),I.relativeProjectDir),isDraftMode:$,botType:al,isOnDemandRevalidate:ah,isPossibleServerAction:ap,assetPrefix:ac.assetPrefix,nextConfigOutput:ac.output,crossOrigin:ac.crossOrigin,trailingSlash:ac.trailingSlash,images:ac.images,previewProps:Z.preview,deploymentId:af,enableTainting:ac.experimental.taint,htmlLimitedBots:ac.htmlLimitedBots,reactMaxHeadersLength:ac.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:k,cacheLifeProfiles:ac.cacheLife,basePath:ac.basePath,serverActions:ac.experimental.serverActions,...as||at?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:as}:{},cacheComponents:!!ac.cacheComponents,experimental:{isRoutePPREnabled:ar,expireTime:ac.expireTime,staleTimes:ac.experimental.staleTimes,dynamicOnHover:!!ac.experimental.dynamicOnHover,inlineCss:!!ac.experimental.inlineCss,authInterrupts:!!ac.experimental.authInterrupts,clientTraceMetadata:ac.experimental.clientTraceMetadata||[],clientParamParsingOrigins:ac.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,z.parseMaxPostponedStateSize)(ac.experimental.maxPostponedStateSize)},waitUntil:K.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>I.onRequestError(a,b,d,e,ab),err:(0,f.getRequestMeta)(a,"invokeError"),dev:I.isDev}};as&&(j.renderOpts.nextExport=!0,j.renderOpts.supportsDynamicResponse=!1,j.renderOpts.isDebugDynamicAccesses=as),g&&(j.renderOpts.supportsDynamicResponse=!1);let l=await i(c,j),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p,fetchMetrics:q}=m;if(p&&(o[v.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=q,ay&&(null==n?void 0:n.revalidate)===0&&!I.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${_}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
2
  see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:s.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},n=async({hasResolved:d,previousCacheEntry:e,isRevalidating:g,span:h,forceStaticRender:i=!1})=>{let j,o=!1===I.isDev,p=d||b.writableEnded;if(ah&&aa&&!e&&!M)return(null==ab?void 0:ab.render404)?await ab.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,t.parseFallbackField)(ai.fallback)),j===t.FallbackMode.PRERENDER&&(0,r.isBot)(ak)&&(!ar||am)&&(j=t.FallbackMode.BLOCKING_STATIC_RENDER),(null==e?void 0:e.isStale)===-1&&(ah=!0),ah&&(j!==t.FallbackMode.NOT_FOUND||e)&&(j=t.FallbackMode.BLOCKING_STATIC_RENDER),!M&&j!==t.FallbackMode.BLOCKING_STATIC_RENDER&&aD&&!p&&!$&&S&&(o||!aj)){if((o||ai)&&j===t.FallbackMode.NOT_FOUND){if(ac.experimental.adapterPath)return await aI();throw new y.NoFallbackError}if(ar&&(ac.cacheComponents?!av:!ao)){let b=o&&"string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:ag,d=o&&(null==ai?void 0:ai.fallbackRouteParams)?(0,l.createOpaqueFallbackRouteParams)(ai.fallbackRouteParams):at?(0,l.getFallbackRouteParams)(ag,I):null,e=await I.handleResponse({cacheKey:b,req:a,nextConfig:ac,routeKind:c.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:Z,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:h,postponed:void 0,fallbackRouteParams:d,forceStaticRender:!1}),waitUntil:K.waitUntil,isMinimalMode:M});if(null===e)return null;if(e)return delete e.cacheControl,e}}let q=ah||g||!au?void 0:au;if(az&&!M&&k&&av&&!i){let b=await k.get(_,{kind:s.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===s.CachedRouteKind.APP_PAGE&&(q=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,E.scheduleOnNextTick)(async()=>{let b=I.getResponseCache(a);try{await b.revalidate(_,k,ar,!1,a=>n({...a,forceStaticRender:!0}),null,d,K.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if(as&&void 0!==q)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:s.CachedRouteKind.PAGES,html:u.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let v=o&&(null==ai?void 0:ai.fallbackRouteParams)&&(0,f.getRequestMeta)(a,"renderFallbackShell")?(0,l.createOpaqueFallbackRouteParams)(ai.fallbackRouteParams):at?(0,l.getFallbackRouteParams)(ag,I):null;return m({span:h,postponed:q,fallbackRouteParams:v,forceStaticRender:i})},o=async d=>{var e,g,h,i,j;let k,l=await I.handleResponse({cacheKey:aC,responseGenerator:a=>n({span:d,...a}),routeKind:c.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ac,prerenderManifest:Z,waitUntil:K.waitUntil,isMinimalMode:M});if($&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),I.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!l){if(aC)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(e=l.value)?void 0:e.kind)!==s.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(h=l.value)?void 0:h.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let o="string"==typeof l.value.postponed;ay&&!av&&(!o||an)&&(M||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),b.setHeader(q.NEXT_IS_PRERENDER_HEADER,"1"));let{value:p}=l;if(au)k={revalidate:0,expire:void 0};else if(av)k={revalidate:0,expire:void 0};else if(!I.isDev)if($)k={revalidate:0,expire:void 0};else if(ay){if(l.cacheControl)if("number"==typeof l.cacheControl.revalidate){if(l.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${l.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});k={revalidate:l.cacheControl.revalidate,expire:(null==(i=l.cacheControl)?void 0:i.expire)??ac.expireTime}}else k={revalidate:v.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(k={revalidate:0,expire:void 0});if(l.cacheControl=k,"string"==typeof aw&&(null==p?void 0:p.kind)===s.CachedRouteKind.APP_PAGE&&p.segmentData){b.setHeader(q.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(j=p.headers)?void 0:j[v.NEXT_CACHE_TAGS_HEADER];M&&ay&&c&&"string"==typeof c&&b.setHeader(v.NEXT_CACHE_TAGS_HEADER,c);let d=p.segmentData.get(aw);return void 0!==d?(0,x.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:u.default.fromStatic(d,q.RSC_CONTENT_TYPE_HEADER),cacheControl:l.cacheControl}):(b.statusCode=204,(0,x.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:u.default.EMPTY,cacheControl:l.cacheControl}))}let r=az?(0,f.getRequestMeta)(a,"onCacheEntryV2")??(0,f.getRequestMeta)(a,"onCacheEntry"):(0,f.getRequestMeta)(a,"onCacheEntry");if(r&&await r(l,{url:(0,f.getRequestMeta)(a,"initURL")??a.url}))return null;if(p.headers){let a={...p.headers};for(let[c,d]of(M&&ay||delete a[v.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let t=null==(g=p.headers)?void 0:g[v.NEXT_CACHE_TAGS_HEADER];if(M&&ay&&t&&"string"==typeof t&&b.setHeader(v.NEXT_CACHE_TAGS_HEADER,t),!p.status||ao&&ar||(b.statusCode=p.status),!M&&p.status&&C.RedirectStatusCode[p.status]&&ao&&(b.statusCode=200),o&&!av&&b.setHeader(q.NEXT_DID_POSTPONE_HEADER,"1"),ao&&!$){if(void 0===p.rscData){if(p.html.contentType!==q.RSC_CONTENT_TYPE_HEADER)if(ac.cacheComponents)return b.statusCode=404,(0,x.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:u.default.EMPTY,cacheControl:l.cacheControl});else throw Object.defineProperty(new D.InvariantError(`Expected RSC response, got ${p.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,x.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:p.html,cacheControl:l.cacheControl})}return(0,x.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:u.default.fromStatic(p.rscData,q.RSC_CONTENT_TYPE_HEADER),cacheControl:l.cacheControl})}let y=p.html;if(!o||M||ao)return(0,x.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:y,cacheControl:l.cacheControl});if(as)return y.push(new ReadableStream({start(a){a.enqueue(w.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,x.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:y,cacheControl:{revalidate:0,expire:void 0}});let z=new TransformStream;return y.push(z.readable),m({span:d,postponed:p.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==s.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(z.writable)}).catch(a=>{z.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,x.sendRenderResult)({req:a,res:b,generateEtags:ac.generateEtags,poweredByHeader:ac.poweredByHeader,result:y,cacheControl:{revalidate:0,expire:void 0}})};if(!aH)return await aG.withPropagatedContext(a.headers,()=>aG.trace(g.BaseServerSpan.handleRequest,{spanName:`${aF} ${N}`,kind:e.SpanKind.SERVER,attributes:{"http.method":aF,"http.target":a.url}},o));await o(aH)}catch(b){throw b instanceof y.NoFallbackError||await I.onRequestError(a,b,{routerKind:"App Router",routePath:N,routeType:"render",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:ay,isOnDemandRevalidate:ah})},!1,ab),b}}a.s(["__next_app__",0,H,"handler",()=>J,"routeModule",0,I],53504),a.i(53504),a.s(["ClientPageRoot",()=>B.ClientPageRoot,"ClientSegmentRoot",()=>B.ClientSegmentRoot,"Fragment",()=>B.Fragment,"GlobalError",()=>A.default,"HTTPAccessFallbackBoundary",()=>B.HTTPAccessFallbackBoundary,"LayoutRouter",()=>B.LayoutRouter,"Postpone",()=>B.Postpone,"RenderFromTemplateContext",()=>B.RenderFromTemplateContext,"RootLayoutBoundary",()=>B.RootLayoutBoundary,"SegmentViewNode",()=>B.SegmentViewNode,"SegmentViewStateNode",()=>B.SegmentViewStateNode,"__next_app__",0,H,"actionAsyncStorage",()=>B.actionAsyncStorage,"captureOwnerStack",()=>B.captureOwnerStack,"collectSegmentData",()=>B.collectSegmentData,"createElement",()=>B.createElement,"createMetadataComponents",()=>B.createMetadataComponents,"createPrerenderParamsForClientSegment",()=>B.createPrerenderParamsForClientSegment,"createPrerenderSearchParamsForClientPage",()=>B.createPrerenderSearchParamsForClientPage,"createServerParamsForServerSegment",()=>B.createServerParamsForServerSegment,"createServerSearchParamsForServerPage",()=>B.createServerSearchParamsForServerPage,"createTemporaryReferenceSet",()=>B.createTemporaryReferenceSet,"decodeAction",()=>B.decodeAction,"decodeFormState",()=>B.decodeFormState,"decodeReply",()=>B.decodeReply,"handler",()=>J,"patchFetch",()=>B.patchFetch,"preconnect",()=>B.preconnect,"preloadFont",()=>B.preloadFont,"preloadStyle",()=>B.preloadStyle,"prerender",()=>B.prerender,"renderToReadableStream",()=>B.renderToReadableStream,"routeModule",0,I,"serverHooks",()=>B.serverHooks,"taintObjectReference",()=>B.taintObjectReference,"workAsyncStorage",()=>B.workAsyncStorage,"workUnitAsyncStorage",()=>B.workUnitAsyncStorage],92556)}];
3
3
 
4
4
  //# sourceMappingURL=_c5d377cc._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[86259,a=>{"use strict";var b=a.i(10973),c=a.i(56109),d=a.i(96960),e=a.i(85536);let f=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("bg-card text-card-foreground rounded-xl border shadow",a),...c}));f.displayName="Card";let g=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("flex flex-col space-y-1.5 p-6",a),...c}));g.displayName="CardHeader";let h=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("leading-none font-semibold tracking-tight",a),...c}));h.displayName="CardTitle";let i=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("text-muted-foreground text-sm",a),...c}));i.displayName="CardDescription";let j=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("p-6 pt-0",a),...c}));j.displayName="CardContent",d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("flex items-center p-6 pt-0",a),...c})).displayName="CardFooter";let k=(0,a.i(42261).cva)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-none",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function l({className:a,variant:c,...d}){return(0,b.jsx)("div",{className:(0,e.cn)(k({variant:c}),a),...d})}var m=a.i(18948),n=a.i(59653),o=a.i(7420),p=a.i(6175),q=a.i(90986),r=new WeakMap;function s(a,b){var c,d;let e,f,g;if("at"in Array.prototype)return Array.prototype.at.call(a,b);let h=(c=a,d=b,e=c.length,(g=(f=t(d))>=0?f:e+f)<0||g>=e?-1:g);return -1===h?void 0:a[h]}function t(a){return a!=a||0===a?0:Math.trunc(a)}(class a extends Map{#a;constructor(a){super(a),this.#a=[...super.keys()],r.set(this,!0)}set(a,b){return r.get(this)&&(this.has(a)?this.#a[this.#a.indexOf(a)]=a:this.#a.push(a)),super.set(a,b),this}insert(a,b,c){let d,e=this.has(b),f=this.#a.length,g=t(a),h=g>=0?g:f+g,i=h<0||h>=f?-1:h;if(i===this.size||e&&i===this.size-1||-1===i)return this.set(b,c),this;let j=this.size+ +!e;g<0&&h++;let k=[...this.#a],l=!1;for(let a=h;a<j;a++)if(h===a){let f=k[a];k[a]===b&&(f=k[a+1]),e&&this.delete(b),d=this.get(f),this.set(b,c)}else{l||k[a-1]!==b||(l=!0);let c=k[l?a:a-1],e=d;d=this.get(c),this.delete(c),this.set(c,e)}return this}with(b,c,d){let e=new a(this);return e.insert(b,c,d),e}before(a){let b=this.#a.indexOf(a)-1;if(!(b<0))return this.entryAt(b)}setBefore(a,b,c){let d=this.#a.indexOf(a);return -1===d?this:this.insert(d,b,c)}after(a){let b=this.#a.indexOf(a);if(-1!==(b=-1===b||b===this.size-1?-1:b+1))return this.entryAt(b)}setAfter(a,b,c){let d=this.#a.indexOf(a);return -1===d?this:this.insert(d+1,b,c)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#a=[],super.clear()}delete(a){let b=super.delete(a);return b&&this.#a.splice(this.#a.indexOf(a),1),b}deleteAt(a){let b=this.keyAt(a);return void 0!==b&&this.delete(b)}at(a){let b=s(this.#a,a);if(void 0!==b)return this.get(b)}entryAt(a){let b=s(this.#a,a);if(void 0!==b)return[b,this.get(b)]}indexOf(a){return this.#a.indexOf(a)}keyAt(a){return s(this.#a,a)}from(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.at(d)}keyFrom(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.keyAt(d)}find(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return d;c++}}findIndex(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return c;c++}return -1}filter(b,c){let d=[],e=0;for(let a of this)Reflect.apply(b,c,[a,e,this])&&d.push(a),e++;return new a(d)}map(b,c){let d=[],e=0;for(let a of this)d.push([a[0],Reflect.apply(b,c,[a,e,this])]),e++;return new a(d)}reduce(...a){let[b,c]=a,d=0,e=c??this.at(0);for(let c of this)e=0===d&&1===a.length?c:Reflect.apply(b,this,[e,c,d,this]),d++;return e}reduceRight(...a){let[b,c]=a,d=c??this.at(-1);for(let c=this.size-1;c>=0;c--){let e=this.at(c);d=c===this.size-1&&1===a.length?e:Reflect.apply(b,this,[d,e,c,this])}return d}toSorted(b){return new a([...this.entries()].sort(b))}toReversed(){let b=new a;for(let a=this.size-1;a>=0;a--){let c=this.keyAt(a),d=this.get(c);b.set(c,d)}return b}toSpliced(...b){let c=[...this.entries()];return c.splice(...b),new a(c)}slice(b,c){let d=new a,e=this.size-1;if(void 0===b)return d;b<0&&(b+=this.size),void 0!==c&&c>0&&(e=c-1);for(let a=b;a<=e;a++){let b=this.keyAt(a),c=this.get(b);d.set(b,c)}return d}every(a,b){let c=0;for(let d of this){if(!Reflect.apply(a,b,[d,c,this]))return!1;c++}return!0}some(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return!0;c++}return!1}});var u=a.i(5472),v=a.i(66873),w=a.i(79406),x=a.i(17329),y=a.i(48939),z="rovingFocusGroup.onEntryFocus",A={bubbles:!1,cancelable:!0},B="RovingFocusGroup",[C,D,E]=function(a){let c=a+"CollectionProvider",[e,f]=(0,o.createContextScope)(c),[g,h]=e(c,{collectionRef:{current:null},itemMap:new Map}),i=a=>{let{scope:c,children:e}=a,f=d.default.useRef(null),h=d.default.useRef(new Map).current;return(0,b.jsx)(g,{scope:c,itemMap:h,collectionRef:f,children:e})};i.displayName=c;let j=a+"CollectionSlot",k=(0,q.createSlot)(j),l=d.default.forwardRef((a,c)=>{let{scope:d,children:e}=a,f=h(j,d),g=(0,p.useComposedRefs)(c,f.collectionRef);return(0,b.jsx)(k,{ref:g,children:e})});l.displayName=j;let m=a+"CollectionItemSlot",n="data-radix-collection-item",r=(0,q.createSlot)(m),s=d.default.forwardRef((a,c)=>{let{scope:e,children:f,...g}=a,i=d.default.useRef(null),j=(0,p.useComposedRefs)(c,i),k=h(m,e);return d.default.useEffect(()=>(k.itemMap.set(i,{ref:i,...g}),()=>void k.itemMap.delete(i))),(0,b.jsx)(r,{...{[n]:""},ref:j,children:f})});return s.displayName=m,[{Provider:i,Slot:l,ItemSlot:s},function(b){let c=h(a+"CollectionConsumer",b);return d.default.useCallback(()=>{let a=c.collectionRef.current;if(!a)return[];let b=Array.from(a.querySelectorAll(`[${n}]`));return Array.from(c.itemMap.values()).sort((a,c)=>b.indexOf(a.ref.current)-b.indexOf(c.ref.current))},[c.collectionRef,c.itemMap])},f]}(B),[F,G]=(0,o.createContextScope)(B,[E]),[H,I]=F(B),J=d.forwardRef((a,c)=>(0,b.jsx)(C.Provider,{scope:a.__scopeRovingFocusGroup,children:(0,b.jsx)(C.Slot,{scope:a.__scopeRovingFocusGroup,children:(0,b.jsx)(K,{...a,ref:c})})}));J.displayName=B;var K=d.forwardRef((a,c)=>{let{__scopeRovingFocusGroup:e,orientation:f,loop:g=!1,dir:h,currentTabStopId:i,defaultCurrentTabStopId:j,onCurrentTabStopIdChange:k,onEntryFocus:l,preventScrollOnEntryFocus:m=!1,...o}=a,q=d.useRef(null),r=(0,p.useComposedRefs)(c,q),s=(0,y.useDirection)(h),[t,u]=(0,x.useControllableState)({prop:i,defaultProp:j??null,onChange:k,caller:B}),[C,E]=d.useState(!1),F=(0,w.useCallbackRef)(l),G=D(e),I=d.useRef(!1),[J,K]=d.useState(0);return d.useEffect(()=>{let a=q.current;if(a)return a.addEventListener(z,F),()=>a.removeEventListener(z,F)},[F]),(0,b.jsx)(H,{scope:e,orientation:f,dir:s,loop:g,currentTabStopId:t,onItemFocus:d.useCallback(a=>u(a),[u]),onItemShiftTab:d.useCallback(()=>E(!0),[]),onFocusableItemAdd:d.useCallback(()=>K(a=>a+1),[]),onFocusableItemRemove:d.useCallback(()=>K(a=>a-1),[]),children:(0,b.jsx)(v.Primitive.div,{tabIndex:C||0===J?-1:0,"data-orientation":f,...o,ref:r,style:{outline:"none",...a.style},onMouseDown:(0,n.composeEventHandlers)(a.onMouseDown,()=>{I.current=!0}),onFocus:(0,n.composeEventHandlers)(a.onFocus,a=>{let b=!I.current;if(a.target===a.currentTarget&&b&&!C){let b=new CustomEvent(z,A);if(a.currentTarget.dispatchEvent(b),!b.defaultPrevented){let a=G().filter(a=>a.focusable);O([a.find(a=>a.active),a.find(a=>a.id===t),...a].filter(Boolean).map(a=>a.ref.current),m)}}I.current=!1}),onBlur:(0,n.composeEventHandlers)(a.onBlur,()=>E(!1))})})}),L="RovingFocusGroupItem",M=d.forwardRef((a,c)=>{let{__scopeRovingFocusGroup:e,focusable:f=!0,active:g=!1,tabStopId:h,children:i,...j}=a,k=(0,u.useId)(),l=h||k,m=I(L,e),o=m.currentTabStopId===l,p=D(e),{onFocusableItemAdd:q,onFocusableItemRemove:r,currentTabStopId:s}=m;return d.useEffect(()=>{if(f)return q(),()=>r()},[f,q,r]),(0,b.jsx)(C.ItemSlot,{scope:e,id:l,focusable:f,active:g,children:(0,b.jsx)(v.Primitive.span,{tabIndex:o?0:-1,"data-orientation":m.orientation,...j,ref:c,onMouseDown:(0,n.composeEventHandlers)(a.onMouseDown,a=>{f?m.onItemFocus(l):a.preventDefault()}),onFocus:(0,n.composeEventHandlers)(a.onFocus,()=>m.onItemFocus(l)),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,a=>{if("Tab"===a.key&&a.shiftKey)return void m.onItemShiftTab();if(a.target!==a.currentTarget)return;let b=function(a,b,c){var d;let e=(d=a.key,"rtl"!==c?d:"ArrowLeft"===d?"ArrowRight":"ArrowRight"===d?"ArrowLeft":d);if(!("vertical"===b&&["ArrowLeft","ArrowRight"].includes(e))&&!("horizontal"===b&&["ArrowUp","ArrowDown"].includes(e)))return N[e]}(a,m.orientation,m.dir);if(void 0!==b){if(a.metaKey||a.ctrlKey||a.altKey||a.shiftKey)return;a.preventDefault();let e=p().filter(a=>a.focusable).map(a=>a.ref.current);if("last"===b)e.reverse();else if("prev"===b||"next"===b){var c,d;"prev"===b&&e.reverse();let f=e.indexOf(a.currentTarget);e=m.loop?(c=e,d=f+1,c.map((a,b)=>c[(d+b)%c.length])):e.slice(f+1)}setTimeout(()=>O(e))}}),children:"function"==typeof i?i({isCurrentTabStop:o,hasTabStop:null!=s}):i})})});M.displayName=L;var N={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function O(a,b=!1){let c=document.activeElement;for(let d of a)if(d===c||(d.focus({preventScroll:b}),document.activeElement!==c))return}var P=a.i(14272),Q="Tabs",[R,S]=(0,o.createContextScope)(Q,[G]),T=G(),[U,V]=R(Q),W=d.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,onValueChange:f,defaultValue:g,orientation:h="horizontal",dir:i,activationMode:j="automatic",...k}=a,l=(0,y.useDirection)(i),[m,n]=(0,x.useControllableState)({prop:e,onChange:f,defaultProp:g??"",caller:Q});return(0,b.jsx)(U,{scope:d,baseId:(0,u.useId)(),value:m,onValueChange:n,orientation:h,dir:l,activationMode:j,children:(0,b.jsx)(v.Primitive.div,{dir:l,"data-orientation":h,...k,ref:c})})});W.displayName=Q;var X="TabsList",Y=d.forwardRef((a,c)=>{let{__scopeTabs:d,loop:e=!0,...f}=a,g=V(X,d),h=T(d);return(0,b.jsx)(J,{asChild:!0,...h,orientation:g.orientation,dir:g.dir,loop:e,children:(0,b.jsx)(v.Primitive.div,{role:"tablist","aria-orientation":g.orientation,...f,ref:c})})});Y.displayName=X;var Z="TabsTrigger",$=d.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,disabled:f=!1,...g}=a,h=V(Z,d),i=T(d),j=ab(h.baseId,e),k=ac(h.baseId,e),l=e===h.value;return(0,b.jsx)(M,{asChild:!0,...i,focusable:!f,active:l,children:(0,b.jsx)(v.Primitive.button,{type:"button",role:"tab","aria-selected":l,"aria-controls":k,"data-state":l?"active":"inactive","data-disabled":f?"":void 0,disabled:f,id:j,...g,ref:c,onMouseDown:(0,n.composeEventHandlers)(a.onMouseDown,a=>{f||0!==a.button||!1!==a.ctrlKey?a.preventDefault():h.onValueChange(e)}),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,a=>{[" ","Enter"].includes(a.key)&&h.onValueChange(e)}),onFocus:(0,n.composeEventHandlers)(a.onFocus,()=>{let a="manual"!==h.activationMode;l||f||!a||h.onValueChange(e)})})})});$.displayName=Z;var _="TabsContent",aa=d.forwardRef((a,c)=>{let{__scopeTabs:e,value:f,forceMount:g,children:h,...i}=a,j=V(_,e),k=ab(j.baseId,f),l=ac(j.baseId,f),m=f===j.value,n=d.useRef(m);return d.useEffect(()=>{let a=requestAnimationFrame(()=>n.current=!1);return()=>cancelAnimationFrame(a)},[]),(0,b.jsx)(P.Presence,{present:g||m,children:({present:d})=>(0,b.jsx)(v.Primitive.div,{"data-state":m?"active":"inactive","data-orientation":j.orientation,role:"tabpanel","aria-labelledby":k,hidden:!d,id:l,tabIndex:0,...i,ref:c,style:{...a.style,animationDuration:n.current?"0s":void 0},children:d&&h})})});function ab(a,b){return`${a}-trigger-${b}`}function ac(a,b){return`${a}-content-${b}`}aa.displayName=_,a.s(["Content",()=>aa,"List",()=>Y,"Root",()=>W,"Tabs",()=>W,"TabsContent",()=>aa,"TabsList",()=>Y,"TabsTrigger",()=>$,"Trigger",()=>$,"createTabsScope",()=>S],287);var ad=a.i(287),ad=ad;let ae=ad.Root,af=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)(ad.List,{ref:d,className:(0,e.cn)("bg-muted text-muted-foreground inline-flex h-9 items-center justify-center rounded-lg p-1",a),...c}));af.displayName=ad.List.displayName;let ag=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)(ad.Trigger,{ref:d,className:(0,e.cn)("ring-offset-background focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow",a),...c}));ag.displayName=ad.Trigger.displayName;let ah=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)(ad.Content,{ref:d,className:(0,e.cn)("ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none",a),...c}));function ai({label:a,value:c,badge:d,badgeVariant:e="secondary"}){return(0,b.jsxs)("div",{className:"flex items-center justify-between py-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground text-sm",children:a}),d?(0,b.jsx)(l,{variant:e,children:c}):(0,b.jsx)("span",{className:"font-mono text-sm",children:c})]})}function aj({versionInfo:a,systemInfo:d}){return(0,b.jsx)("div",{className:"flex flex-col items-center justify-center p-4",children:(0,b.jsxs)("div",{className:"w-full max-w-2xl space-y-6",children:[(0,b.jsxs)("div",{className:"text-center",children:[(0,b.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:a.name}),(0,b.jsx)("p",{className:"text-muted-foreground mt-2",children:a.description}),(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsxs)(l,{variant:"default","data-testid":"version-badge",children:["v",a.version]})})]}),(0,b.jsxs)(ae,{defaultValue:"overview",className:"w-full",children:[(0,b.jsxs)(af,{className:"grid w-full grid-cols-3",children:[(0,b.jsx)(ag,{value:"overview",children:"Overview"}),(0,b.jsx)(ag,{value:"system",children:"System"}),(0,b.jsx)(ag,{value:"features",children:"Features"})]}),(0,b.jsx)(ah,{value:"overview",children:(0,b.jsxs)(f,{children:[(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{children:"Package Information"}),(0,b.jsx)(i,{children:"Details about the Shep AI CLI package"})]}),(0,b.jsxs)(j,{className:"space-y-1",children:[(0,b.jsx)(ai,{label:"Package",value:a.name}),(0,b.jsx)(ai,{label:"Version",value:`v${a.version}`,badge:!0,badgeVariant:"default"}),(0,b.jsx)(ai,{label:"License",value:"MIT",badge:!0,badgeVariant:"outline"}),(0,b.jsx)(ai,{label:"Author",value:"Shep AI"})]})]})}),(0,b.jsx)(ah,{value:"system",children:(0,b.jsxs)(f,{children:[(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{children:"System Information"}),(0,b.jsx)(i,{children:"Runtime environment details"})]}),(0,b.jsxs)(j,{className:"space-y-1",children:[(0,b.jsx)(ai,{label:"Node.js",value:d.nodeVersion,badge:!0,badgeVariant:"secondary"}),(0,b.jsx)(ai,{label:"Platform",value:`${d.platform} ${d.arch}`})]})]})}),(0,b.jsx)(ah,{value:"features",children:(0,b.jsxs)(f,{children:[(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{children:"Key Features"}),(0,b.jsx)(i,{children:"What Shep AI can do for you"})]}),(0,b.jsx)(j,{children:(0,b.jsxs)("ul",{className:"space-y-2 text-sm",children:[(0,b.jsxs)("li",{className:"flex items-center gap-2",children:[(0,b.jsx)(l,{variant:"outline",children:"AI"}),(0,b.jsx)("span",{children:"Autonomous code generation"})]}),(0,b.jsxs)("li",{className:"flex items-center gap-2",children:[(0,b.jsx)(l,{variant:"outline",children:"SDLC"}),(0,b.jsx)("span",{children:"Full development lifecycle automation"})]}),(0,b.jsxs)("li",{className:"flex items-center gap-2",children:[(0,b.jsx)(l,{variant:"outline",children:"CLI"}),(0,b.jsx)("span",{children:"Powerful command-line interface"})]}),(0,b.jsxs)("li",{className:"flex items-center gap-2",children:[(0,b.jsx)(l,{variant:"outline",children:"Web"}),(0,b.jsx)("span",{children:"Modern web UI dashboard"})]})]})})]})})]}),(0,b.jsxs)("div",{className:"flex justify-center gap-4",children:[(0,b.jsx)(m.Button,{asChild:!0,variant:"outline",children:(0,b.jsx)(c.default,{href:"/",children:"Back to Home"})}),(0,b.jsx)(m.Button,{asChild:!0,children:(0,b.jsx)("a",{href:"https://github.com/shep-ai/cli",target:"_blank",rel:"noopener noreferrer",children:"View on GitHub"})})]})]})})}ah.displayName=ad.Content.displayName,a.s(["default",()=>aj],86259)}];
1
+ module.exports=[86259,a=>{"use strict";var b=a.i(10973),c=a.i(56109),d=a.i(96960),e=a.i(85536);let f=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("bg-card text-card-foreground rounded-xl border shadow",a),...c}));f.displayName="Card";let g=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("flex flex-col space-y-1.5 p-6",a),...c}));g.displayName="CardHeader";let h=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("leading-none font-semibold tracking-tight",a),...c}));h.displayName="CardTitle";let i=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("text-muted-foreground text-sm",a),...c}));i.displayName="CardDescription";let j=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("p-6 pt-0",a),...c}));j.displayName="CardContent",d.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,e.cn)("flex items-center p-6 pt-0",a),...c})).displayName="CardFooter";var k=a.i(58339),l=a.i(18948),m=a.i(59653),n=a.i(7420),o=a.i(6175),p=a.i(90986),q=new WeakMap;function r(a,b){var c,d;let e,f,g;if("at"in Array.prototype)return Array.prototype.at.call(a,b);let h=(c=a,d=b,e=c.length,(g=(f=s(d))>=0?f:e+f)<0||g>=e?-1:g);return -1===h?void 0:a[h]}function s(a){return a!=a||0===a?0:Math.trunc(a)}(class a extends Map{#a;constructor(a){super(a),this.#a=[...super.keys()],q.set(this,!0)}set(a,b){return q.get(this)&&(this.has(a)?this.#a[this.#a.indexOf(a)]=a:this.#a.push(a)),super.set(a,b),this}insert(a,b,c){let d,e=this.has(b),f=this.#a.length,g=s(a),h=g>=0?g:f+g,i=h<0||h>=f?-1:h;if(i===this.size||e&&i===this.size-1||-1===i)return this.set(b,c),this;let j=this.size+ +!e;g<0&&h++;let k=[...this.#a],l=!1;for(let a=h;a<j;a++)if(h===a){let f=k[a];k[a]===b&&(f=k[a+1]),e&&this.delete(b),d=this.get(f),this.set(b,c)}else{l||k[a-1]!==b||(l=!0);let c=k[l?a:a-1],e=d;d=this.get(c),this.delete(c),this.set(c,e)}return this}with(b,c,d){let e=new a(this);return e.insert(b,c,d),e}before(a){let b=this.#a.indexOf(a)-1;if(!(b<0))return this.entryAt(b)}setBefore(a,b,c){let d=this.#a.indexOf(a);return -1===d?this:this.insert(d,b,c)}after(a){let b=this.#a.indexOf(a);if(-1!==(b=-1===b||b===this.size-1?-1:b+1))return this.entryAt(b)}setAfter(a,b,c){let d=this.#a.indexOf(a);return -1===d?this:this.insert(d+1,b,c)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#a=[],super.clear()}delete(a){let b=super.delete(a);return b&&this.#a.splice(this.#a.indexOf(a),1),b}deleteAt(a){let b=this.keyAt(a);return void 0!==b&&this.delete(b)}at(a){let b=r(this.#a,a);if(void 0!==b)return this.get(b)}entryAt(a){let b=r(this.#a,a);if(void 0!==b)return[b,this.get(b)]}indexOf(a){return this.#a.indexOf(a)}keyAt(a){return r(this.#a,a)}from(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.at(d)}keyFrom(a,b){let c=this.indexOf(a);if(-1===c)return;let d=c+b;return d<0&&(d=0),d>=this.size&&(d=this.size-1),this.keyAt(d)}find(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return d;c++}}findIndex(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return c;c++}return -1}filter(b,c){let d=[],e=0;for(let a of this)Reflect.apply(b,c,[a,e,this])&&d.push(a),e++;return new a(d)}map(b,c){let d=[],e=0;for(let a of this)d.push([a[0],Reflect.apply(b,c,[a,e,this])]),e++;return new a(d)}reduce(...a){let[b,c]=a,d=0,e=c??this.at(0);for(let c of this)e=0===d&&1===a.length?c:Reflect.apply(b,this,[e,c,d,this]),d++;return e}reduceRight(...a){let[b,c]=a,d=c??this.at(-1);for(let c=this.size-1;c>=0;c--){let e=this.at(c);d=c===this.size-1&&1===a.length?e:Reflect.apply(b,this,[d,e,c,this])}return d}toSorted(b){return new a([...this.entries()].sort(b))}toReversed(){let b=new a;for(let a=this.size-1;a>=0;a--){let c=this.keyAt(a),d=this.get(c);b.set(c,d)}return b}toSpliced(...b){let c=[...this.entries()];return c.splice(...b),new a(c)}slice(b,c){let d=new a,e=this.size-1;if(void 0===b)return d;b<0&&(b+=this.size),void 0!==c&&c>0&&(e=c-1);for(let a=b;a<=e;a++){let b=this.keyAt(a),c=this.get(b);d.set(b,c)}return d}every(a,b){let c=0;for(let d of this){if(!Reflect.apply(a,b,[d,c,this]))return!1;c++}return!0}some(a,b){let c=0;for(let d of this){if(Reflect.apply(a,b,[d,c,this]))return!0;c++}return!1}});var t=a.i(5472),u=a.i(66873),v=a.i(79406),w=a.i(17329),x=a.i(48939),y="rovingFocusGroup.onEntryFocus",z={bubbles:!1,cancelable:!0},A="RovingFocusGroup",[B,C,D]=function(a){let c=a+"CollectionProvider",[e,f]=(0,n.createContextScope)(c),[g,h]=e(c,{collectionRef:{current:null},itemMap:new Map}),i=a=>{let{scope:c,children:e}=a,f=d.default.useRef(null),h=d.default.useRef(new Map).current;return(0,b.jsx)(g,{scope:c,itemMap:h,collectionRef:f,children:e})};i.displayName=c;let j=a+"CollectionSlot",k=(0,p.createSlot)(j),l=d.default.forwardRef((a,c)=>{let{scope:d,children:e}=a,f=h(j,d),g=(0,o.useComposedRefs)(c,f.collectionRef);return(0,b.jsx)(k,{ref:g,children:e})});l.displayName=j;let m=a+"CollectionItemSlot",q="data-radix-collection-item",r=(0,p.createSlot)(m),s=d.default.forwardRef((a,c)=>{let{scope:e,children:f,...g}=a,i=d.default.useRef(null),j=(0,o.useComposedRefs)(c,i),k=h(m,e);return d.default.useEffect(()=>(k.itemMap.set(i,{ref:i,...g}),()=>void k.itemMap.delete(i))),(0,b.jsx)(r,{...{[q]:""},ref:j,children:f})});return s.displayName=m,[{Provider:i,Slot:l,ItemSlot:s},function(b){let c=h(a+"CollectionConsumer",b);return d.default.useCallback(()=>{let a=c.collectionRef.current;if(!a)return[];let b=Array.from(a.querySelectorAll(`[${q}]`));return Array.from(c.itemMap.values()).sort((a,c)=>b.indexOf(a.ref.current)-b.indexOf(c.ref.current))},[c.collectionRef,c.itemMap])},f]}(A),[E,F]=(0,n.createContextScope)(A,[D]),[G,H]=E(A),I=d.forwardRef((a,c)=>(0,b.jsx)(B.Provider,{scope:a.__scopeRovingFocusGroup,children:(0,b.jsx)(B.Slot,{scope:a.__scopeRovingFocusGroup,children:(0,b.jsx)(J,{...a,ref:c})})}));I.displayName=A;var J=d.forwardRef((a,c)=>{let{__scopeRovingFocusGroup:e,orientation:f,loop:g=!1,dir:h,currentTabStopId:i,defaultCurrentTabStopId:j,onCurrentTabStopIdChange:k,onEntryFocus:l,preventScrollOnEntryFocus:n=!1,...p}=a,q=d.useRef(null),r=(0,o.useComposedRefs)(c,q),s=(0,x.useDirection)(h),[t,B]=(0,w.useControllableState)({prop:i,defaultProp:j??null,onChange:k,caller:A}),[D,E]=d.useState(!1),F=(0,v.useCallbackRef)(l),H=C(e),I=d.useRef(!1),[J,K]=d.useState(0);return d.useEffect(()=>{let a=q.current;if(a)return a.addEventListener(y,F),()=>a.removeEventListener(y,F)},[F]),(0,b.jsx)(G,{scope:e,orientation:f,dir:s,loop:g,currentTabStopId:t,onItemFocus:d.useCallback(a=>B(a),[B]),onItemShiftTab:d.useCallback(()=>E(!0),[]),onFocusableItemAdd:d.useCallback(()=>K(a=>a+1),[]),onFocusableItemRemove:d.useCallback(()=>K(a=>a-1),[]),children:(0,b.jsx)(u.Primitive.div,{tabIndex:D||0===J?-1:0,"data-orientation":f,...p,ref:r,style:{outline:"none",...a.style},onMouseDown:(0,m.composeEventHandlers)(a.onMouseDown,()=>{I.current=!0}),onFocus:(0,m.composeEventHandlers)(a.onFocus,a=>{let b=!I.current;if(a.target===a.currentTarget&&b&&!D){let b=new CustomEvent(y,z);if(a.currentTarget.dispatchEvent(b),!b.defaultPrevented){let a=H().filter(a=>a.focusable);N([a.find(a=>a.active),a.find(a=>a.id===t),...a].filter(Boolean).map(a=>a.ref.current),n)}}I.current=!1}),onBlur:(0,m.composeEventHandlers)(a.onBlur,()=>E(!1))})})}),K="RovingFocusGroupItem",L=d.forwardRef((a,c)=>{let{__scopeRovingFocusGroup:e,focusable:f=!0,active:g=!1,tabStopId:h,children:i,...j}=a,k=(0,t.useId)(),l=h||k,n=H(K,e),o=n.currentTabStopId===l,p=C(e),{onFocusableItemAdd:q,onFocusableItemRemove:r,currentTabStopId:s}=n;return d.useEffect(()=>{if(f)return q(),()=>r()},[f,q,r]),(0,b.jsx)(B.ItemSlot,{scope:e,id:l,focusable:f,active:g,children:(0,b.jsx)(u.Primitive.span,{tabIndex:o?0:-1,"data-orientation":n.orientation,...j,ref:c,onMouseDown:(0,m.composeEventHandlers)(a.onMouseDown,a=>{f?n.onItemFocus(l):a.preventDefault()}),onFocus:(0,m.composeEventHandlers)(a.onFocus,()=>n.onItemFocus(l)),onKeyDown:(0,m.composeEventHandlers)(a.onKeyDown,a=>{if("Tab"===a.key&&a.shiftKey)return void n.onItemShiftTab();if(a.target!==a.currentTarget)return;let b=function(a,b,c){var d;let e=(d=a.key,"rtl"!==c?d:"ArrowLeft"===d?"ArrowRight":"ArrowRight"===d?"ArrowLeft":d);if(!("vertical"===b&&["ArrowLeft","ArrowRight"].includes(e))&&!("horizontal"===b&&["ArrowUp","ArrowDown"].includes(e)))return M[e]}(a,n.orientation,n.dir);if(void 0!==b){if(a.metaKey||a.ctrlKey||a.altKey||a.shiftKey)return;a.preventDefault();let e=p().filter(a=>a.focusable).map(a=>a.ref.current);if("last"===b)e.reverse();else if("prev"===b||"next"===b){var c,d;"prev"===b&&e.reverse();let f=e.indexOf(a.currentTarget);e=n.loop?(c=e,d=f+1,c.map((a,b)=>c[(d+b)%c.length])):e.slice(f+1)}setTimeout(()=>N(e))}}),children:"function"==typeof i?i({isCurrentTabStop:o,hasTabStop:null!=s}):i})})});L.displayName=K;var M={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function N(a,b=!1){let c=document.activeElement;for(let d of a)if(d===c||(d.focus({preventScroll:b}),document.activeElement!==c))return}var O=a.i(14272),P="Tabs",[Q,R]=(0,n.createContextScope)(P,[F]),S=F(),[T,U]=Q(P),V=d.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,onValueChange:f,defaultValue:g,orientation:h="horizontal",dir:i,activationMode:j="automatic",...k}=a,l=(0,x.useDirection)(i),[m,n]=(0,w.useControllableState)({prop:e,onChange:f,defaultProp:g??"",caller:P});return(0,b.jsx)(T,{scope:d,baseId:(0,t.useId)(),value:m,onValueChange:n,orientation:h,dir:l,activationMode:j,children:(0,b.jsx)(u.Primitive.div,{dir:l,"data-orientation":h,...k,ref:c})})});V.displayName=P;var W="TabsList",X=d.forwardRef((a,c)=>{let{__scopeTabs:d,loop:e=!0,...f}=a,g=U(W,d),h=S(d);return(0,b.jsx)(I,{asChild:!0,...h,orientation:g.orientation,dir:g.dir,loop:e,children:(0,b.jsx)(u.Primitive.div,{role:"tablist","aria-orientation":g.orientation,...f,ref:c})})});X.displayName=W;var Y="TabsTrigger",Z=d.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,disabled:f=!1,...g}=a,h=U(Y,d),i=S(d),j=aa(h.baseId,e),k=ab(h.baseId,e),l=e===h.value;return(0,b.jsx)(L,{asChild:!0,...i,focusable:!f,active:l,children:(0,b.jsx)(u.Primitive.button,{type:"button",role:"tab","aria-selected":l,"aria-controls":k,"data-state":l?"active":"inactive","data-disabled":f?"":void 0,disabled:f,id:j,...g,ref:c,onMouseDown:(0,m.composeEventHandlers)(a.onMouseDown,a=>{f||0!==a.button||!1!==a.ctrlKey?a.preventDefault():h.onValueChange(e)}),onKeyDown:(0,m.composeEventHandlers)(a.onKeyDown,a=>{[" ","Enter"].includes(a.key)&&h.onValueChange(e)}),onFocus:(0,m.composeEventHandlers)(a.onFocus,()=>{let a="manual"!==h.activationMode;l||f||!a||h.onValueChange(e)})})})});Z.displayName=Y;var $="TabsContent",_=d.forwardRef((a,c)=>{let{__scopeTabs:e,value:f,forceMount:g,children:h,...i}=a,j=U($,e),k=aa(j.baseId,f),l=ab(j.baseId,f),m=f===j.value,n=d.useRef(m);return d.useEffect(()=>{let a=requestAnimationFrame(()=>n.current=!1);return()=>cancelAnimationFrame(a)},[]),(0,b.jsx)(O.Presence,{present:g||m,children:({present:d})=>(0,b.jsx)(u.Primitive.div,{"data-state":m?"active":"inactive","data-orientation":j.orientation,role:"tabpanel","aria-labelledby":k,hidden:!d,id:l,tabIndex:0,...i,ref:c,style:{...a.style,animationDuration:n.current?"0s":void 0},children:d&&h})})});function aa(a,b){return`${a}-trigger-${b}`}function ab(a,b){return`${a}-content-${b}`}_.displayName=$,a.s(["Content",()=>_,"List",()=>X,"Root",()=>V,"Tabs",()=>V,"TabsContent",()=>_,"TabsList",()=>X,"TabsTrigger",()=>Z,"Trigger",()=>Z,"createTabsScope",()=>R],287);var ac=a.i(287),ac=ac;let ad=ac.Root,ae=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)(ac.List,{ref:d,className:(0,e.cn)("bg-muted text-muted-foreground inline-flex h-9 items-center justify-center rounded-lg p-1",a),...c}));ae.displayName=ac.List.displayName;let af=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)(ac.Trigger,{ref:d,className:(0,e.cn)("ring-offset-background focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow",a),...c}));af.displayName=ac.Trigger.displayName;let ag=d.forwardRef(({className:a,...c},d)=>(0,b.jsx)(ac.Content,{ref:d,className:(0,e.cn)("ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none",a),...c}));function ah({label:a,value:c,badge:d,badgeVariant:e="secondary"}){return(0,b.jsxs)("div",{className:"flex items-center justify-between py-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground text-sm",children:a}),d?(0,b.jsx)(k.Badge,{variant:e,children:c}):(0,b.jsx)("span",{className:"font-mono text-sm",children:c})]})}function ai({versionInfo:a,systemInfo:d}){return(0,b.jsx)("div",{className:"flex flex-col items-center justify-center p-4",children:(0,b.jsxs)("div",{className:"w-full max-w-2xl space-y-6",children:[(0,b.jsxs)("div",{className:"text-center",children:[(0,b.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:a.name}),(0,b.jsx)("p",{className:"text-muted-foreground mt-2",children:a.description}),(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsxs)(k.Badge,{variant:"default","data-testid":"version-badge",children:["v",a.version]})})]}),(0,b.jsxs)(ad,{defaultValue:"overview",className:"w-full",children:[(0,b.jsxs)(ae,{className:"grid w-full grid-cols-3",children:[(0,b.jsx)(af,{value:"overview",children:"Overview"}),(0,b.jsx)(af,{value:"system",children:"System"}),(0,b.jsx)(af,{value:"features",children:"Features"})]}),(0,b.jsx)(ag,{value:"overview",children:(0,b.jsxs)(f,{children:[(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{children:"Package Information"}),(0,b.jsx)(i,{children:"Details about the Shep AI CLI package"})]}),(0,b.jsxs)(j,{className:"space-y-1",children:[(0,b.jsx)(ah,{label:"Package",value:a.name}),(0,b.jsx)(ah,{label:"Version",value:`v${a.version}`,badge:!0,badgeVariant:"default"}),(0,b.jsx)(ah,{label:"License",value:"MIT",badge:!0,badgeVariant:"outline"}),(0,b.jsx)(ah,{label:"Author",value:"Shep AI"})]})]})}),(0,b.jsx)(ag,{value:"system",children:(0,b.jsxs)(f,{children:[(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{children:"System Information"}),(0,b.jsx)(i,{children:"Runtime environment details"})]}),(0,b.jsxs)(j,{className:"space-y-1",children:[(0,b.jsx)(ah,{label:"Node.js",value:d.nodeVersion,badge:!0,badgeVariant:"secondary"}),(0,b.jsx)(ah,{label:"Platform",value:`${d.platform} ${d.arch}`})]})]})}),(0,b.jsx)(ag,{value:"features",children:(0,b.jsxs)(f,{children:[(0,b.jsxs)(g,{children:[(0,b.jsx)(h,{children:"Key Features"}),(0,b.jsx)(i,{children:"What Shep AI can do for you"})]}),(0,b.jsx)(j,{children:(0,b.jsxs)("ul",{className:"space-y-2 text-sm",children:[(0,b.jsxs)("li",{className:"flex items-center gap-2",children:[(0,b.jsx)(k.Badge,{variant:"outline",children:"AI"}),(0,b.jsx)("span",{children:"Autonomous code generation"})]}),(0,b.jsxs)("li",{className:"flex items-center gap-2",children:[(0,b.jsx)(k.Badge,{variant:"outline",children:"SDLC"}),(0,b.jsx)("span",{children:"Full development lifecycle automation"})]}),(0,b.jsxs)("li",{className:"flex items-center gap-2",children:[(0,b.jsx)(k.Badge,{variant:"outline",children:"CLI"}),(0,b.jsx)("span",{children:"Powerful command-line interface"})]}),(0,b.jsxs)("li",{className:"flex items-center gap-2",children:[(0,b.jsx)(k.Badge,{variant:"outline",children:"Web"}),(0,b.jsx)("span",{children:"Modern web UI dashboard"})]})]})})]})})]}),(0,b.jsxs)("div",{className:"flex justify-center gap-4",children:[(0,b.jsx)(l.Button,{asChild:!0,variant:"outline",children:(0,b.jsx)(c.default,{href:"/",children:"Back to Home"})}),(0,b.jsx)(l.Button,{asChild:!0,children:(0,b.jsx)("a",{href:"https://github.com/shep-ai/cli",target:"_blank",rel:"noopener noreferrer",children:"View on GitHub"})})]})]})})}ag.displayName=ac.Content.displayName,a.s(["default",()=>ai],86259)}];
2
2
 
3
3
  //# sourceMappingURL=b1a17_presentation_web_components_features_version_version-page-client_tsx_fe9db753._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-collection%401.1.7_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Br_2988d950cbd44144aec5e6ce60804441/node_modules/%40radix-ui/react-collection/dist/index.mjs","../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-roving-focus%401.1.11_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40type_61b1e57265158db0f110fd8c0c27aeba/node_modules/%40radix-ui/react-roving-focus/dist/index.mjs","../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-tabs%401.1.13_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Breact%40_68a385a9eea120600bb372a91de22b00/node_modules/%40radix-ui/react-tabs/dist/index.mjs","../../../../../../../src/presentation/web/components/ui/tabs.tsx","../../../../../../../src/presentation/web/components/features/version/version-page-client.tsx","../../../../../../../src/presentation/web/components/ui/card.tsx","../../../../../../../src/presentation/web/components/ui/badge.tsx"],"sourcesContent":["\"use client\";\n\n// src/collection-legacy.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createCollection(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope(PROVIDER_NAME);\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }\n );\n const CollectionProvider = (props) => {\n const { scope, children } = props;\n const ref = React.useRef(null);\n const itemMap = React.useRef(/* @__PURE__ */ new Map()).current;\n return /* @__PURE__ */ jsx(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot(COLLECTION_SLOT_NAME);\n const CollectionSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot(ITEM_SLOT_NAME);\n const CollectionItemSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n React.useEffect(() => {\n context.itemMap.set(ref, { ref, ...itemData });\n return () => void context.itemMap.delete(ref);\n });\n return /* @__PURE__ */ jsx(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useCollection(scope) {\n const context = useCollectionContext(name + \"CollectionConsumer\", scope);\n const getItems = React.useCallback(() => {\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort(\n (a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current)\n );\n return orderedItems;\n }, [context.collectionRef, context.itemMap]);\n return getItems;\n }\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n useCollection,\n createCollectionScope\n ];\n}\n\n// src/collection.tsx\nimport React2 from \"react\";\nimport { createContextScope as createContextScope2 } from \"@radix-ui/react-context\";\nimport { useComposedRefs as useComposedRefs2 } from \"@radix-ui/react-compose-refs\";\nimport { createSlot as createSlot2 } from \"@radix-ui/react-slot\";\n\n// src/ordered-dictionary.ts\nvar __instanciated = /* @__PURE__ */ new WeakMap();\nvar OrderedDict = class _OrderedDict extends Map {\n #keys;\n constructor(entries) {\n super(entries);\n this.#keys = [...super.keys()];\n __instanciated.set(this, true);\n }\n set(key, value) {\n if (__instanciated.get(this)) {\n if (this.has(key)) {\n this.#keys[this.#keys.indexOf(key)] = key;\n } else {\n this.#keys.push(key);\n }\n }\n super.set(key, value);\n return this;\n }\n insert(index, key, value) {\n const has = this.has(key);\n const length = this.#keys.length;\n const relativeIndex = toSafeInteger(index);\n let actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;\n const safeIndex = actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;\n if (safeIndex === this.size || has && safeIndex === this.size - 1 || safeIndex === -1) {\n this.set(key, value);\n return this;\n }\n const size = this.size + (has ? 0 : 1);\n if (relativeIndex < 0) {\n actualIndex++;\n }\n const keys = [...this.#keys];\n let nextValue;\n let shouldSkip = false;\n for (let i = actualIndex; i < size; i++) {\n if (actualIndex === i) {\n let nextKey = keys[i];\n if (keys[i] === key) {\n nextKey = keys[i + 1];\n }\n if (has) {\n this.delete(key);\n }\n nextValue = this.get(nextKey);\n this.set(key, value);\n } else {\n if (!shouldSkip && keys[i - 1] === key) {\n shouldSkip = true;\n }\n const currentKey = keys[shouldSkip ? i : i - 1];\n const currentValue = nextValue;\n nextValue = this.get(currentKey);\n this.delete(currentKey);\n this.set(currentKey, currentValue);\n }\n }\n return this;\n }\n with(index, key, value) {\n const copy = new _OrderedDict(this);\n copy.insert(index, key, value);\n return copy;\n }\n before(key) {\n const index = this.#keys.indexOf(key) - 1;\n if (index < 0) {\n return void 0;\n }\n return this.entryAt(index);\n }\n /**\n * Sets a new key-value pair at the position before the given key.\n */\n setBefore(key, newKey, value) {\n const index = this.#keys.indexOf(key);\n if (index === -1) {\n return this;\n }\n return this.insert(index, newKey, value);\n }\n after(key) {\n let index = this.#keys.indexOf(key);\n index = index === -1 || index === this.size - 1 ? -1 : index + 1;\n if (index === -1) {\n return void 0;\n }\n return this.entryAt(index);\n }\n /**\n * Sets a new key-value pair at the position after the given key.\n */\n setAfter(key, newKey, value) {\n const index = this.#keys.indexOf(key);\n if (index === -1) {\n return this;\n }\n return this.insert(index + 1, newKey, value);\n }\n first() {\n return this.entryAt(0);\n }\n last() {\n return this.entryAt(-1);\n }\n clear() {\n this.#keys = [];\n return super.clear();\n }\n delete(key) {\n const deleted = super.delete(key);\n if (deleted) {\n this.#keys.splice(this.#keys.indexOf(key), 1);\n }\n return deleted;\n }\n deleteAt(index) {\n const key = this.keyAt(index);\n if (key !== void 0) {\n return this.delete(key);\n }\n return false;\n }\n at(index) {\n const key = at(this.#keys, index);\n if (key !== void 0) {\n return this.get(key);\n }\n }\n entryAt(index) {\n const key = at(this.#keys, index);\n if (key !== void 0) {\n return [key, this.get(key)];\n }\n }\n indexOf(key) {\n return this.#keys.indexOf(key);\n }\n keyAt(index) {\n return at(this.#keys, index);\n }\n from(key, offset) {\n const index = this.indexOf(key);\n if (index === -1) {\n return void 0;\n }\n let dest = index + offset;\n if (dest < 0) dest = 0;\n if (dest >= this.size) dest = this.size - 1;\n return this.at(dest);\n }\n keyFrom(key, offset) {\n const index = this.indexOf(key);\n if (index === -1) {\n return void 0;\n }\n let dest = index + offset;\n if (dest < 0) dest = 0;\n if (dest >= this.size) dest = this.size - 1;\n return this.keyAt(dest);\n }\n find(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return entry;\n }\n index++;\n }\n return void 0;\n }\n findIndex(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return index;\n }\n index++;\n }\n return -1;\n }\n filter(predicate, thisArg) {\n const entries = [];\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n entries.push(entry);\n }\n index++;\n }\n return new _OrderedDict(entries);\n }\n map(callbackfn, thisArg) {\n const entries = [];\n let index = 0;\n for (const entry of this) {\n entries.push([entry[0], Reflect.apply(callbackfn, thisArg, [entry, index, this])]);\n index++;\n }\n return new _OrderedDict(entries);\n }\n reduce(...args) {\n const [callbackfn, initialValue] = args;\n let index = 0;\n let accumulator = initialValue ?? this.at(0);\n for (const entry of this) {\n if (index === 0 && args.length === 1) {\n accumulator = entry;\n } else {\n accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);\n }\n index++;\n }\n return accumulator;\n }\n reduceRight(...args) {\n const [callbackfn, initialValue] = args;\n let accumulator = initialValue ?? this.at(-1);\n for (let index = this.size - 1; index >= 0; index--) {\n const entry = this.at(index);\n if (index === this.size - 1 && args.length === 1) {\n accumulator = entry;\n } else {\n accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);\n }\n }\n return accumulator;\n }\n toSorted(compareFn) {\n const entries = [...this.entries()].sort(compareFn);\n return new _OrderedDict(entries);\n }\n toReversed() {\n const reversed = new _OrderedDict();\n for (let index = this.size - 1; index >= 0; index--) {\n const key = this.keyAt(index);\n const element = this.get(key);\n reversed.set(key, element);\n }\n return reversed;\n }\n toSpliced(...args) {\n const entries = [...this.entries()];\n entries.splice(...args);\n return new _OrderedDict(entries);\n }\n slice(start, end) {\n const result = new _OrderedDict();\n let stop = this.size - 1;\n if (start === void 0) {\n return result;\n }\n if (start < 0) {\n start = start + this.size;\n }\n if (end !== void 0 && end > 0) {\n stop = end - 1;\n }\n for (let index = start; index <= stop; index++) {\n const key = this.keyAt(index);\n const element = this.get(key);\n result.set(key, element);\n }\n return result;\n }\n every(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (!Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return false;\n }\n index++;\n }\n return true;\n }\n some(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return true;\n }\n index++;\n }\n return false;\n }\n};\nfunction at(array, index) {\n if (\"at\" in Array.prototype) {\n return Array.prototype.at.call(array, index);\n }\n const actualIndex = toSafeIndex(array, index);\n return actualIndex === -1 ? void 0 : array[actualIndex];\n}\nfunction toSafeIndex(array, index) {\n const length = array.length;\n const relativeIndex = toSafeInteger(index);\n const actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;\n return actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;\n}\nfunction toSafeInteger(number) {\n return number !== number || number === 0 ? 0 : Math.trunc(number);\n}\n\n// src/collection.tsx\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nfunction createCollection2(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope2(PROVIDER_NAME);\n const [CollectionContextProvider, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n {\n collectionElement: null,\n collectionRef: { current: null },\n collectionRefObject: { current: null },\n itemMap: new OrderedDict(),\n setItemMap: () => void 0\n }\n );\n const CollectionProvider = ({ state, ...props }) => {\n return state ? /* @__PURE__ */ jsx2(CollectionProviderImpl, { ...props, state }) : /* @__PURE__ */ jsx2(CollectionInit, { ...props });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const CollectionInit = (props) => {\n const state = useInitCollection();\n return /* @__PURE__ */ jsx2(CollectionProviderImpl, { ...props, state });\n };\n CollectionInit.displayName = PROVIDER_NAME + \"Init\";\n const CollectionProviderImpl = (props) => {\n const { scope, children, state } = props;\n const ref = React2.useRef(null);\n const [collectionElement, setCollectionElement] = React2.useState(\n null\n );\n const composeRefs = useComposedRefs2(ref, setCollectionElement);\n const [itemMap, setItemMap] = state;\n React2.useEffect(() => {\n if (!collectionElement) return;\n const observer = getChildListObserver(() => {\n });\n observer.observe(collectionElement, {\n childList: true,\n subtree: true\n });\n return () => {\n observer.disconnect();\n };\n }, [collectionElement]);\n return /* @__PURE__ */ jsx2(\n CollectionContextProvider,\n {\n scope,\n itemMap,\n setItemMap,\n collectionRef: composeRefs,\n collectionRefObject: ref,\n collectionElement,\n children\n }\n );\n };\n CollectionProviderImpl.displayName = PROVIDER_NAME + \"Impl\";\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot2(COLLECTION_SLOT_NAME);\n const CollectionSlot = React2.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs2(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx2(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot2(ITEM_SLOT_NAME);\n const CollectionItemSlot = React2.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React2.useRef(null);\n const [element, setElement] = React2.useState(null);\n const composedRefs = useComposedRefs2(forwardedRef, ref, setElement);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n const { setItemMap } = context;\n const itemDataRef = React2.useRef(itemData);\n if (!shallowEqual(itemDataRef.current, itemData)) {\n itemDataRef.current = itemData;\n }\n const memoizedItemData = itemDataRef.current;\n React2.useEffect(() => {\n const itemData2 = memoizedItemData;\n setItemMap((map) => {\n if (!element) {\n return map;\n }\n if (!map.has(element)) {\n map.set(element, { ...itemData2, element });\n return map.toSorted(sortByDocumentPosition);\n }\n return map.set(element, { ...itemData2, element }).toSorted(sortByDocumentPosition);\n });\n return () => {\n setItemMap((map) => {\n if (!element || !map.has(element)) {\n return map;\n }\n map.delete(element);\n return new OrderedDict(map);\n });\n };\n }, [element, memoizedItemData, setItemMap]);\n return /* @__PURE__ */ jsx2(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useInitCollection() {\n return React2.useState(new OrderedDict());\n }\n function useCollection(scope) {\n const { itemMap } = useCollectionContext(name + \"CollectionConsumer\", scope);\n return itemMap;\n }\n const functions = {\n createCollectionScope,\n useCollection,\n useInitCollection\n };\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n functions\n ];\n}\nfunction shallowEqual(a, b) {\n if (a === b) return true;\n if (typeof a !== \"object\" || typeof b !== \"object\") return false;\n if (a == null || b == null) return false;\n const keysA = Object.keys(a);\n const keysB = Object.keys(b);\n if (keysA.length !== keysB.length) return false;\n for (const key of keysA) {\n if (!Object.prototype.hasOwnProperty.call(b, key)) return false;\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\nfunction isElementPreceding(a, b) {\n return !!(b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_PRECEDING);\n}\nfunction sortByDocumentPosition(a, b) {\n return !a[1].element || !b[1].element ? 0 : isElementPreceding(a[1].element, b[1].element) ? -1 : 1;\n}\nfunction getChildListObserver(callback) {\n const observer = new MutationObserver((mutationsList) => {\n for (const mutation of mutationsList) {\n if (mutation.type === \"childList\") {\n callback();\n return;\n }\n }\n });\n return observer;\n}\nexport {\n createCollection,\n createCollection2 as unstable_createCollection\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/roving-focus-group.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar GROUP_NAME = \"RovingFocusGroup\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);\nvar [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(\n GROUP_NAME,\n [createCollectionScope]\n);\nvar [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);\nvar RovingFocusGroup = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });\n }\n);\nRovingFocusGroup.displayName = GROUP_NAME;\nvar RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n orientation,\n loop = false,\n dir,\n currentTabStopId: currentTabStopIdProp,\n defaultCurrentTabStopId,\n onCurrentTabStopIdChange,\n onEntryFocus,\n preventScrollOnEntryFocus = false,\n ...groupProps\n } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const direction = useDirection(dir);\n const [currentTabStopId, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId ?? null,\n onChange: onCurrentTabStopIdChange,\n caller: GROUP_NAME\n });\n const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);\n const handleEntryFocus = useCallbackRef(onEntryFocus);\n const getItems = useCollection(__scopeRovingFocusGroup);\n const isClickFocusRef = React.useRef(false);\n const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n node.addEventListener(ENTRY_FOCUS, handleEntryFocus);\n return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);\n }\n }, [handleEntryFocus]);\n return /* @__PURE__ */ jsx(\n RovingFocusProvider,\n {\n scope: __scopeRovingFocusGroup,\n orientation,\n dir: direction,\n loop,\n currentTabStopId,\n onItemFocus: React.useCallback(\n (tabStopId) => setCurrentTabStopId(tabStopId),\n [setCurrentTabStopId]\n ),\n onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),\n onFocusableItemAdd: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount + 1),\n []\n ),\n onFocusableItemRemove: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount - 1),\n []\n ),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,\n \"data-orientation\": orientation,\n ...groupProps,\n ref: composedRefs,\n style: { outline: \"none\", ...props.style },\n onMouseDown: composeEventHandlers(props.onMouseDown, () => {\n isClickFocusRef.current = true;\n }),\n onFocus: composeEventHandlers(props.onFocus, (event) => {\n const isKeyboardFocus = !isClickFocusRef.current;\n if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n event.currentTarget.dispatchEvent(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = getItems().filter((item) => item.focusable);\n const activeItem = items.find((item) => item.active);\n const currentItem = items.find((item) => item.id === currentTabStopId);\n const candidateItems = [activeItem, currentItem, ...items].filter(\n Boolean\n );\n const candidateNodes = candidateItems.map((item) => item.ref.current);\n focusFirst(candidateNodes, preventScrollOnEntryFocus);\n }\n }\n isClickFocusRef.current = false;\n }),\n onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))\n }\n )\n }\n );\n});\nvar ITEM_NAME = \"RovingFocusGroupItem\";\nvar RovingFocusGroupItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n focusable = true,\n active = false,\n tabStopId,\n children,\n ...itemProps\n } = props;\n const autoId = useId();\n const id = tabStopId || autoId;\n const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);\n const isCurrentTabStop = context.currentTabStopId === id;\n const getItems = useCollection(__scopeRovingFocusGroup);\n const { onFocusableItemAdd, onFocusableItemRemove, currentTabStopId } = context;\n React.useEffect(() => {\n if (focusable) {\n onFocusableItemAdd();\n return () => onFocusableItemRemove();\n }\n }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeRovingFocusGroup,\n id,\n focusable,\n active,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n tabIndex: isCurrentTabStop ? 0 : -1,\n \"data-orientation\": context.orientation,\n ...itemProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!focusable) event.preventDefault();\n else context.onItemFocus(id);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Tab\" && event.shiftKey) {\n context.onItemShiftTab();\n return;\n }\n if (event.target !== event.currentTarget) return;\n const focusIntent = getFocusIntent(event, context.orientation, context.dir);\n if (focusIntent !== void 0) {\n if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;\n event.preventDefault();\n const items = getItems().filter((item) => item.focusable);\n let candidateNodes = items.map((item) => item.ref.current);\n if (focusIntent === \"last\") candidateNodes.reverse();\n else if (focusIntent === \"prev\" || focusIntent === \"next\") {\n if (focusIntent === \"prev\") candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(event.currentTarget);\n candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n }\n }),\n children: typeof children === \"function\" ? children({ isCurrentTabStop, hasTabStop: currentTabStopId != null }) : children\n }\n )\n }\n );\n }\n);\nRovingFocusGroupItem.displayName = ITEM_NAME;\nvar MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: \"prev\",\n ArrowUp: \"prev\",\n ArrowRight: \"next\",\n ArrowDown: \"next\",\n PageUp: \"first\",\n Home: \"first\",\n PageDown: \"last\",\n End: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n if (dir !== \"rtl\") return key;\n return key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n if (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root = RovingFocusGroup;\nvar Item = RovingFocusGroupItem;\nexport {\n Item,\n Root,\n RovingFocusGroup,\n RovingFocusGroupItem,\n createRovingFocusGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/tabs.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar TABS_NAME = \"Tabs\";\nvar [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [\n createRovingFocusGroupScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [TabsProvider, useTabsContext] = createTabsContext(TABS_NAME);\nvar Tabs = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTabs,\n value: valueProp,\n onValueChange,\n defaultValue,\n orientation = \"horizontal\",\n dir,\n activationMode = \"automatic\",\n ...tabsProps\n } = props;\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n defaultProp: defaultValue ?? \"\",\n caller: TABS_NAME\n });\n return /* @__PURE__ */ jsx(\n TabsProvider,\n {\n scope: __scopeTabs,\n baseId: useId(),\n value,\n onValueChange: setValue,\n orientation,\n dir: direction,\n activationMode,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n \"data-orientation\": orientation,\n ...tabsProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabs.displayName = TABS_NAME;\nvar TAB_LIST_NAME = \"TabsList\";\nvar TabsList = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, loop = true, ...listProps } = props;\n const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation: context.orientation,\n dir: context.dir,\n loop,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"tablist\",\n \"aria-orientation\": context.orientation,\n ...listProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabsList.displayName = TAB_LIST_NAME;\nvar TRIGGER_NAME = \"TabsTrigger\";\nvar TabsTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, disabled = false, ...triggerProps } = props;\n const context = useTabsContext(TRIGGER_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !disabled,\n active: isSelected,\n children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"tab\",\n \"aria-selected\": isSelected,\n \"aria-controls\": contentId,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n id: triggerId,\n ...triggerProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!disabled && event.button === 0 && event.ctrlKey === false) {\n context.onValueChange(value);\n } else {\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if ([\" \", \"Enter\"].includes(event.key)) context.onValueChange(value);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n const isAutomaticActivation = context.activationMode !== \"manual\";\n if (!isSelected && !disabled && isAutomaticActivation) {\n context.onValueChange(value);\n }\n })\n }\n )\n }\n );\n }\n);\nTabsTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"TabsContent\";\nvar TabsContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, forceMount, children, ...contentProps } = props;\n const context = useTabsContext(CONTENT_NAME, __scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n const isMountAnimationPreventedRef = React.useRef(isSelected);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || isSelected, children: ({ present }) => /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-orientation\": context.orientation,\n role: \"tabpanel\",\n \"aria-labelledby\": triggerId,\n hidden: !present,\n id: contentId,\n tabIndex: 0,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...props.style,\n animationDuration: isMountAnimationPreventedRef.current ? \"0s\" : void 0\n },\n children: present && children\n }\n ) });\n }\n);\nTabsContent.displayName = CONTENT_NAME;\nfunction makeTriggerId(baseId, value) {\n return `${baseId}-trigger-${value}`;\n}\nfunction makeContentId(baseId, value) {\n return `${baseId}-content-${value}`;\n}\nvar Root2 = Tabs;\nvar List = TabsList;\nvar Trigger = TabsTrigger;\nvar Content = TabsContent;\nexport {\n Content,\n List,\n Root2 as Root,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Trigger,\n createTabsScope\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as React from 'react';\nimport { Tabs as TabsPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nconst Tabs = TabsPrimitive.Root;\n\nconst TabsList = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.List\n ref={ref}\n className={cn(\n 'bg-muted text-muted-foreground inline-flex h-9 items-center justify-center rounded-lg p-1',\n className\n )}\n {...props}\n />\n));\nTabsList.displayName = TabsPrimitive.List.displayName;\n\nconst TabsTrigger = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Trigger\n ref={ref}\n className={cn(\n 'ring-offset-background focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow',\n className\n )}\n {...props}\n />\n));\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName;\n\nconst TabsContent = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Content\n ref={ref}\n className={cn(\n 'ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none',\n className\n )}\n {...props}\n />\n));\nTabsContent.displayName = TabsPrimitive.Content.displayName;\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n","'use client';\n\nimport Link from 'next/link';\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';\nimport { Badge } from '@/components/ui/badge';\nimport { Button } from '@/components/ui/button';\nimport { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs';\nimport type { VersionInfo, SystemInfo } from '@/lib/version';\n\ninterface InfoRowProps {\n label: string;\n value: string;\n badge?: boolean;\n badgeVariant?: 'default' | 'secondary' | 'outline';\n}\n\nfunction InfoRow({ label, value, badge, badgeVariant = 'secondary' }: InfoRowProps) {\n return (\n <div className=\"flex items-center justify-between py-2\">\n <span className=\"text-muted-foreground text-sm\">{label}</span>\n {badge ? (\n <Badge variant={badgeVariant}>{value}</Badge>\n ) : (\n <span className=\"font-mono text-sm\">{value}</span>\n )}\n </div>\n );\n}\n\ninterface VersionPageClientProps {\n versionInfo: VersionInfo;\n systemInfo: SystemInfo;\n}\n\nexport default function VersionPageClient({ versionInfo, systemInfo }: VersionPageClientProps) {\n return (\n <div className=\"flex flex-col items-center justify-center p-4\">\n <div className=\"w-full max-w-2xl space-y-6\">\n <div className=\"text-center\">\n <h1 className=\"text-3xl font-bold tracking-tight\">{versionInfo.name}</h1>\n <p className=\"text-muted-foreground mt-2\">{versionInfo.description}</p>\n <div className=\"mt-4\">\n <Badge variant=\"default\" data-testid=\"version-badge\">\n v{versionInfo.version}\n </Badge>\n </div>\n </div>\n\n <Tabs defaultValue=\"overview\" className=\"w-full\">\n <TabsList className=\"grid w-full grid-cols-3\">\n <TabsTrigger value=\"overview\">Overview</TabsTrigger>\n <TabsTrigger value=\"system\">System</TabsTrigger>\n <TabsTrigger value=\"features\">Features</TabsTrigger>\n </TabsList>\n\n <TabsContent value=\"overview\">\n <Card>\n <CardHeader>\n <CardTitle>Package Information</CardTitle>\n <CardDescription>Details about the Shep AI CLI package</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-1\">\n <InfoRow label=\"Package\" value={versionInfo.name} />\n <InfoRow\n label=\"Version\"\n value={`v${versionInfo.version}`}\n badge\n badgeVariant=\"default\"\n />\n <InfoRow label=\"License\" value=\"MIT\" badge badgeVariant=\"outline\" />\n <InfoRow label=\"Author\" value=\"Shep AI\" />\n </CardContent>\n </Card>\n </TabsContent>\n\n <TabsContent value=\"system\">\n <Card>\n <CardHeader>\n <CardTitle>System Information</CardTitle>\n <CardDescription>Runtime environment details</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-1\">\n <InfoRow\n label=\"Node.js\"\n value={systemInfo.nodeVersion}\n badge\n badgeVariant=\"secondary\"\n />\n <InfoRow label=\"Platform\" value={`${systemInfo.platform} ${systemInfo.arch}`} />\n </CardContent>\n </Card>\n </TabsContent>\n\n <TabsContent value=\"features\">\n <Card>\n <CardHeader>\n <CardTitle>Key Features</CardTitle>\n <CardDescription>What Shep AI can do for you</CardDescription>\n </CardHeader>\n <CardContent>\n <ul className=\"space-y-2 text-sm\">\n <li className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">AI</Badge>\n <span>Autonomous code generation</span>\n </li>\n <li className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">SDLC</Badge>\n <span>Full development lifecycle automation</span>\n </li>\n <li className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">CLI</Badge>\n <span>Powerful command-line interface</span>\n </li>\n <li className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">Web</Badge>\n <span>Modern web UI dashboard</span>\n </li>\n </ul>\n </CardContent>\n </Card>\n </TabsContent>\n </Tabs>\n\n <div className=\"flex justify-center gap-4\">\n <Button asChild variant=\"outline\">\n <Link href=\"/\">Back to Home</Link>\n </Button>\n <Button asChild>\n <a href=\"https://github.com/shep-ai/cli\" target=\"_blank\" rel=\"noopener noreferrer\">\n View on GitHub\n </a>\n </Button>\n </div>\n </div>\n </div>\n );\n}\n","import * as React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nconst Card = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('bg-card text-card-foreground rounded-xl border shadow', className)}\n {...props}\n />\n )\n);\nCard.displayName = 'Card';\n\nconst CardHeader = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} className={cn('flex flex-col space-y-1.5 p-6', className)} {...props} />\n )\n);\nCardHeader.displayName = 'CardHeader';\n\nconst CardTitle = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('leading-none font-semibold tracking-tight', className)}\n {...props}\n />\n )\n);\nCardTitle.displayName = 'CardTitle';\n\nconst CardDescription = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} className={cn('text-muted-foreground text-sm', className)} {...props} />\n )\n);\nCardDescription.displayName = 'CardDescription';\n\nconst CardContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} className={cn('p-6 pt-0', className)} {...props} />\n )\n);\nCardContent.displayName = 'CardContent';\n\nconst CardFooter = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} className={cn('flex items-center p-6 pt-0', className)} {...props} />\n )\n);\nCardFooter.displayName = 'CardFooter';\n\nexport { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent };\n","import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst badgeVariants = cva(\n 'inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-none',\n {\n variants: {\n variant: {\n default: 'border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80',\n secondary:\n 'border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80',\n destructive:\n 'border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80',\n outline: 'text-foreground',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return <div className={cn(badgeVariants({ variant }), className)} {...props} />;\n}\n\nexport { Badge, badgeVariants };\n"],"names":[],"mappings":"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","ignoreList":[0,1,2]}
1
+ {"version":3,"sources":["../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-collection%401.1.7_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Br_2988d950cbd44144aec5e6ce60804441/node_modules/%40radix-ui/react-collection/dist/index.mjs","../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-roving-focus%401.1.11_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40type_61b1e57265158db0f110fd8c0c27aeba/node_modules/%40radix-ui/react-roving-focus/dist/index.mjs","../../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-tabs%401.1.13_%40types%2Breact-dom%4019.2.3_%40types%2Breact%4019.2.10__%40types%2Breact%40_68a385a9eea120600bb372a91de22b00/node_modules/%40radix-ui/react-tabs/dist/index.mjs","../../../../../../../src/presentation/web/components/ui/tabs.tsx","../../../../../../../src/presentation/web/components/features/version/version-page-client.tsx","../../../../../../../src/presentation/web/components/ui/card.tsx"],"sourcesContent":["\"use client\";\n\n// src/collection-legacy.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createCollection(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope(PROVIDER_NAME);\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }\n );\n const CollectionProvider = (props) => {\n const { scope, children } = props;\n const ref = React.useRef(null);\n const itemMap = React.useRef(/* @__PURE__ */ new Map()).current;\n return /* @__PURE__ */ jsx(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot(COLLECTION_SLOT_NAME);\n const CollectionSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot(ITEM_SLOT_NAME);\n const CollectionItemSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n React.useEffect(() => {\n context.itemMap.set(ref, { ref, ...itemData });\n return () => void context.itemMap.delete(ref);\n });\n return /* @__PURE__ */ jsx(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useCollection(scope) {\n const context = useCollectionContext(name + \"CollectionConsumer\", scope);\n const getItems = React.useCallback(() => {\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort(\n (a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current)\n );\n return orderedItems;\n }, [context.collectionRef, context.itemMap]);\n return getItems;\n }\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n useCollection,\n createCollectionScope\n ];\n}\n\n// src/collection.tsx\nimport React2 from \"react\";\nimport { createContextScope as createContextScope2 } from \"@radix-ui/react-context\";\nimport { useComposedRefs as useComposedRefs2 } from \"@radix-ui/react-compose-refs\";\nimport { createSlot as createSlot2 } from \"@radix-ui/react-slot\";\n\n// src/ordered-dictionary.ts\nvar __instanciated = /* @__PURE__ */ new WeakMap();\nvar OrderedDict = class _OrderedDict extends Map {\n #keys;\n constructor(entries) {\n super(entries);\n this.#keys = [...super.keys()];\n __instanciated.set(this, true);\n }\n set(key, value) {\n if (__instanciated.get(this)) {\n if (this.has(key)) {\n this.#keys[this.#keys.indexOf(key)] = key;\n } else {\n this.#keys.push(key);\n }\n }\n super.set(key, value);\n return this;\n }\n insert(index, key, value) {\n const has = this.has(key);\n const length = this.#keys.length;\n const relativeIndex = toSafeInteger(index);\n let actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;\n const safeIndex = actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;\n if (safeIndex === this.size || has && safeIndex === this.size - 1 || safeIndex === -1) {\n this.set(key, value);\n return this;\n }\n const size = this.size + (has ? 0 : 1);\n if (relativeIndex < 0) {\n actualIndex++;\n }\n const keys = [...this.#keys];\n let nextValue;\n let shouldSkip = false;\n for (let i = actualIndex; i < size; i++) {\n if (actualIndex === i) {\n let nextKey = keys[i];\n if (keys[i] === key) {\n nextKey = keys[i + 1];\n }\n if (has) {\n this.delete(key);\n }\n nextValue = this.get(nextKey);\n this.set(key, value);\n } else {\n if (!shouldSkip && keys[i - 1] === key) {\n shouldSkip = true;\n }\n const currentKey = keys[shouldSkip ? i : i - 1];\n const currentValue = nextValue;\n nextValue = this.get(currentKey);\n this.delete(currentKey);\n this.set(currentKey, currentValue);\n }\n }\n return this;\n }\n with(index, key, value) {\n const copy = new _OrderedDict(this);\n copy.insert(index, key, value);\n return copy;\n }\n before(key) {\n const index = this.#keys.indexOf(key) - 1;\n if (index < 0) {\n return void 0;\n }\n return this.entryAt(index);\n }\n /**\n * Sets a new key-value pair at the position before the given key.\n */\n setBefore(key, newKey, value) {\n const index = this.#keys.indexOf(key);\n if (index === -1) {\n return this;\n }\n return this.insert(index, newKey, value);\n }\n after(key) {\n let index = this.#keys.indexOf(key);\n index = index === -1 || index === this.size - 1 ? -1 : index + 1;\n if (index === -1) {\n return void 0;\n }\n return this.entryAt(index);\n }\n /**\n * Sets a new key-value pair at the position after the given key.\n */\n setAfter(key, newKey, value) {\n const index = this.#keys.indexOf(key);\n if (index === -1) {\n return this;\n }\n return this.insert(index + 1, newKey, value);\n }\n first() {\n return this.entryAt(0);\n }\n last() {\n return this.entryAt(-1);\n }\n clear() {\n this.#keys = [];\n return super.clear();\n }\n delete(key) {\n const deleted = super.delete(key);\n if (deleted) {\n this.#keys.splice(this.#keys.indexOf(key), 1);\n }\n return deleted;\n }\n deleteAt(index) {\n const key = this.keyAt(index);\n if (key !== void 0) {\n return this.delete(key);\n }\n return false;\n }\n at(index) {\n const key = at(this.#keys, index);\n if (key !== void 0) {\n return this.get(key);\n }\n }\n entryAt(index) {\n const key = at(this.#keys, index);\n if (key !== void 0) {\n return [key, this.get(key)];\n }\n }\n indexOf(key) {\n return this.#keys.indexOf(key);\n }\n keyAt(index) {\n return at(this.#keys, index);\n }\n from(key, offset) {\n const index = this.indexOf(key);\n if (index === -1) {\n return void 0;\n }\n let dest = index + offset;\n if (dest < 0) dest = 0;\n if (dest >= this.size) dest = this.size - 1;\n return this.at(dest);\n }\n keyFrom(key, offset) {\n const index = this.indexOf(key);\n if (index === -1) {\n return void 0;\n }\n let dest = index + offset;\n if (dest < 0) dest = 0;\n if (dest >= this.size) dest = this.size - 1;\n return this.keyAt(dest);\n }\n find(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return entry;\n }\n index++;\n }\n return void 0;\n }\n findIndex(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return index;\n }\n index++;\n }\n return -1;\n }\n filter(predicate, thisArg) {\n const entries = [];\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n entries.push(entry);\n }\n index++;\n }\n return new _OrderedDict(entries);\n }\n map(callbackfn, thisArg) {\n const entries = [];\n let index = 0;\n for (const entry of this) {\n entries.push([entry[0], Reflect.apply(callbackfn, thisArg, [entry, index, this])]);\n index++;\n }\n return new _OrderedDict(entries);\n }\n reduce(...args) {\n const [callbackfn, initialValue] = args;\n let index = 0;\n let accumulator = initialValue ?? this.at(0);\n for (const entry of this) {\n if (index === 0 && args.length === 1) {\n accumulator = entry;\n } else {\n accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);\n }\n index++;\n }\n return accumulator;\n }\n reduceRight(...args) {\n const [callbackfn, initialValue] = args;\n let accumulator = initialValue ?? this.at(-1);\n for (let index = this.size - 1; index >= 0; index--) {\n const entry = this.at(index);\n if (index === this.size - 1 && args.length === 1) {\n accumulator = entry;\n } else {\n accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);\n }\n }\n return accumulator;\n }\n toSorted(compareFn) {\n const entries = [...this.entries()].sort(compareFn);\n return new _OrderedDict(entries);\n }\n toReversed() {\n const reversed = new _OrderedDict();\n for (let index = this.size - 1; index >= 0; index--) {\n const key = this.keyAt(index);\n const element = this.get(key);\n reversed.set(key, element);\n }\n return reversed;\n }\n toSpliced(...args) {\n const entries = [...this.entries()];\n entries.splice(...args);\n return new _OrderedDict(entries);\n }\n slice(start, end) {\n const result = new _OrderedDict();\n let stop = this.size - 1;\n if (start === void 0) {\n return result;\n }\n if (start < 0) {\n start = start + this.size;\n }\n if (end !== void 0 && end > 0) {\n stop = end - 1;\n }\n for (let index = start; index <= stop; index++) {\n const key = this.keyAt(index);\n const element = this.get(key);\n result.set(key, element);\n }\n return result;\n }\n every(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (!Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return false;\n }\n index++;\n }\n return true;\n }\n some(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return true;\n }\n index++;\n }\n return false;\n }\n};\nfunction at(array, index) {\n if (\"at\" in Array.prototype) {\n return Array.prototype.at.call(array, index);\n }\n const actualIndex = toSafeIndex(array, index);\n return actualIndex === -1 ? void 0 : array[actualIndex];\n}\nfunction toSafeIndex(array, index) {\n const length = array.length;\n const relativeIndex = toSafeInteger(index);\n const actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;\n return actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;\n}\nfunction toSafeInteger(number) {\n return number !== number || number === 0 ? 0 : Math.trunc(number);\n}\n\n// src/collection.tsx\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nfunction createCollection2(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope2(PROVIDER_NAME);\n const [CollectionContextProvider, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n {\n collectionElement: null,\n collectionRef: { current: null },\n collectionRefObject: { current: null },\n itemMap: new OrderedDict(),\n setItemMap: () => void 0\n }\n );\n const CollectionProvider = ({ state, ...props }) => {\n return state ? /* @__PURE__ */ jsx2(CollectionProviderImpl, { ...props, state }) : /* @__PURE__ */ jsx2(CollectionInit, { ...props });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const CollectionInit = (props) => {\n const state = useInitCollection();\n return /* @__PURE__ */ jsx2(CollectionProviderImpl, { ...props, state });\n };\n CollectionInit.displayName = PROVIDER_NAME + \"Init\";\n const CollectionProviderImpl = (props) => {\n const { scope, children, state } = props;\n const ref = React2.useRef(null);\n const [collectionElement, setCollectionElement] = React2.useState(\n null\n );\n const composeRefs = useComposedRefs2(ref, setCollectionElement);\n const [itemMap, setItemMap] = state;\n React2.useEffect(() => {\n if (!collectionElement) return;\n const observer = getChildListObserver(() => {\n });\n observer.observe(collectionElement, {\n childList: true,\n subtree: true\n });\n return () => {\n observer.disconnect();\n };\n }, [collectionElement]);\n return /* @__PURE__ */ jsx2(\n CollectionContextProvider,\n {\n scope,\n itemMap,\n setItemMap,\n collectionRef: composeRefs,\n collectionRefObject: ref,\n collectionElement,\n children\n }\n );\n };\n CollectionProviderImpl.displayName = PROVIDER_NAME + \"Impl\";\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot2(COLLECTION_SLOT_NAME);\n const CollectionSlot = React2.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs2(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx2(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot2(ITEM_SLOT_NAME);\n const CollectionItemSlot = React2.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React2.useRef(null);\n const [element, setElement] = React2.useState(null);\n const composedRefs = useComposedRefs2(forwardedRef, ref, setElement);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n const { setItemMap } = context;\n const itemDataRef = React2.useRef(itemData);\n if (!shallowEqual(itemDataRef.current, itemData)) {\n itemDataRef.current = itemData;\n }\n const memoizedItemData = itemDataRef.current;\n React2.useEffect(() => {\n const itemData2 = memoizedItemData;\n setItemMap((map) => {\n if (!element) {\n return map;\n }\n if (!map.has(element)) {\n map.set(element, { ...itemData2, element });\n return map.toSorted(sortByDocumentPosition);\n }\n return map.set(element, { ...itemData2, element }).toSorted(sortByDocumentPosition);\n });\n return () => {\n setItemMap((map) => {\n if (!element || !map.has(element)) {\n return map;\n }\n map.delete(element);\n return new OrderedDict(map);\n });\n };\n }, [element, memoizedItemData, setItemMap]);\n return /* @__PURE__ */ jsx2(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useInitCollection() {\n return React2.useState(new OrderedDict());\n }\n function useCollection(scope) {\n const { itemMap } = useCollectionContext(name + \"CollectionConsumer\", scope);\n return itemMap;\n }\n const functions = {\n createCollectionScope,\n useCollection,\n useInitCollection\n };\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n functions\n ];\n}\nfunction shallowEqual(a, b) {\n if (a === b) return true;\n if (typeof a !== \"object\" || typeof b !== \"object\") return false;\n if (a == null || b == null) return false;\n const keysA = Object.keys(a);\n const keysB = Object.keys(b);\n if (keysA.length !== keysB.length) return false;\n for (const key of keysA) {\n if (!Object.prototype.hasOwnProperty.call(b, key)) return false;\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\nfunction isElementPreceding(a, b) {\n return !!(b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_PRECEDING);\n}\nfunction sortByDocumentPosition(a, b) {\n return !a[1].element || !b[1].element ? 0 : isElementPreceding(a[1].element, b[1].element) ? -1 : 1;\n}\nfunction getChildListObserver(callback) {\n const observer = new MutationObserver((mutationsList) => {\n for (const mutation of mutationsList) {\n if (mutation.type === \"childList\") {\n callback();\n return;\n }\n }\n });\n return observer;\n}\nexport {\n createCollection,\n createCollection2 as unstable_createCollection\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/roving-focus-group.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar GROUP_NAME = \"RovingFocusGroup\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);\nvar [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(\n GROUP_NAME,\n [createCollectionScope]\n);\nvar [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);\nvar RovingFocusGroup = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });\n }\n);\nRovingFocusGroup.displayName = GROUP_NAME;\nvar RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n orientation,\n loop = false,\n dir,\n currentTabStopId: currentTabStopIdProp,\n defaultCurrentTabStopId,\n onCurrentTabStopIdChange,\n onEntryFocus,\n preventScrollOnEntryFocus = false,\n ...groupProps\n } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const direction = useDirection(dir);\n const [currentTabStopId, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId ?? null,\n onChange: onCurrentTabStopIdChange,\n caller: GROUP_NAME\n });\n const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);\n const handleEntryFocus = useCallbackRef(onEntryFocus);\n const getItems = useCollection(__scopeRovingFocusGroup);\n const isClickFocusRef = React.useRef(false);\n const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n node.addEventListener(ENTRY_FOCUS, handleEntryFocus);\n return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);\n }\n }, [handleEntryFocus]);\n return /* @__PURE__ */ jsx(\n RovingFocusProvider,\n {\n scope: __scopeRovingFocusGroup,\n orientation,\n dir: direction,\n loop,\n currentTabStopId,\n onItemFocus: React.useCallback(\n (tabStopId) => setCurrentTabStopId(tabStopId),\n [setCurrentTabStopId]\n ),\n onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),\n onFocusableItemAdd: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount + 1),\n []\n ),\n onFocusableItemRemove: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount - 1),\n []\n ),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,\n \"data-orientation\": orientation,\n ...groupProps,\n ref: composedRefs,\n style: { outline: \"none\", ...props.style },\n onMouseDown: composeEventHandlers(props.onMouseDown, () => {\n isClickFocusRef.current = true;\n }),\n onFocus: composeEventHandlers(props.onFocus, (event) => {\n const isKeyboardFocus = !isClickFocusRef.current;\n if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n event.currentTarget.dispatchEvent(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = getItems().filter((item) => item.focusable);\n const activeItem = items.find((item) => item.active);\n const currentItem = items.find((item) => item.id === currentTabStopId);\n const candidateItems = [activeItem, currentItem, ...items].filter(\n Boolean\n );\n const candidateNodes = candidateItems.map((item) => item.ref.current);\n focusFirst(candidateNodes, preventScrollOnEntryFocus);\n }\n }\n isClickFocusRef.current = false;\n }),\n onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))\n }\n )\n }\n );\n});\nvar ITEM_NAME = \"RovingFocusGroupItem\";\nvar RovingFocusGroupItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n focusable = true,\n active = false,\n tabStopId,\n children,\n ...itemProps\n } = props;\n const autoId = useId();\n const id = tabStopId || autoId;\n const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);\n const isCurrentTabStop = context.currentTabStopId === id;\n const getItems = useCollection(__scopeRovingFocusGroup);\n const { onFocusableItemAdd, onFocusableItemRemove, currentTabStopId } = context;\n React.useEffect(() => {\n if (focusable) {\n onFocusableItemAdd();\n return () => onFocusableItemRemove();\n }\n }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeRovingFocusGroup,\n id,\n focusable,\n active,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n tabIndex: isCurrentTabStop ? 0 : -1,\n \"data-orientation\": context.orientation,\n ...itemProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!focusable) event.preventDefault();\n else context.onItemFocus(id);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Tab\" && event.shiftKey) {\n context.onItemShiftTab();\n return;\n }\n if (event.target !== event.currentTarget) return;\n const focusIntent = getFocusIntent(event, context.orientation, context.dir);\n if (focusIntent !== void 0) {\n if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;\n event.preventDefault();\n const items = getItems().filter((item) => item.focusable);\n let candidateNodes = items.map((item) => item.ref.current);\n if (focusIntent === \"last\") candidateNodes.reverse();\n else if (focusIntent === \"prev\" || focusIntent === \"next\") {\n if (focusIntent === \"prev\") candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(event.currentTarget);\n candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n }\n }),\n children: typeof children === \"function\" ? children({ isCurrentTabStop, hasTabStop: currentTabStopId != null }) : children\n }\n )\n }\n );\n }\n);\nRovingFocusGroupItem.displayName = ITEM_NAME;\nvar MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: \"prev\",\n ArrowUp: \"prev\",\n ArrowRight: \"next\",\n ArrowDown: \"next\",\n PageUp: \"first\",\n Home: \"first\",\n PageDown: \"last\",\n End: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n if (dir !== \"rtl\") return key;\n return key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n if (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root = RovingFocusGroup;\nvar Item = RovingFocusGroupItem;\nexport {\n Item,\n Root,\n RovingFocusGroup,\n RovingFocusGroupItem,\n createRovingFocusGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/tabs.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar TABS_NAME = \"Tabs\";\nvar [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [\n createRovingFocusGroupScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [TabsProvider, useTabsContext] = createTabsContext(TABS_NAME);\nvar Tabs = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTabs,\n value: valueProp,\n onValueChange,\n defaultValue,\n orientation = \"horizontal\",\n dir,\n activationMode = \"automatic\",\n ...tabsProps\n } = props;\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n defaultProp: defaultValue ?? \"\",\n caller: TABS_NAME\n });\n return /* @__PURE__ */ jsx(\n TabsProvider,\n {\n scope: __scopeTabs,\n baseId: useId(),\n value,\n onValueChange: setValue,\n orientation,\n dir: direction,\n activationMode,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n \"data-orientation\": orientation,\n ...tabsProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabs.displayName = TABS_NAME;\nvar TAB_LIST_NAME = \"TabsList\";\nvar TabsList = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, loop = true, ...listProps } = props;\n const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation: context.orientation,\n dir: context.dir,\n loop,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"tablist\",\n \"aria-orientation\": context.orientation,\n ...listProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabsList.displayName = TAB_LIST_NAME;\nvar TRIGGER_NAME = \"TabsTrigger\";\nvar TabsTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, disabled = false, ...triggerProps } = props;\n const context = useTabsContext(TRIGGER_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !disabled,\n active: isSelected,\n children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"tab\",\n \"aria-selected\": isSelected,\n \"aria-controls\": contentId,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n id: triggerId,\n ...triggerProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!disabled && event.button === 0 && event.ctrlKey === false) {\n context.onValueChange(value);\n } else {\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if ([\" \", \"Enter\"].includes(event.key)) context.onValueChange(value);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n const isAutomaticActivation = context.activationMode !== \"manual\";\n if (!isSelected && !disabled && isAutomaticActivation) {\n context.onValueChange(value);\n }\n })\n }\n )\n }\n );\n }\n);\nTabsTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"TabsContent\";\nvar TabsContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, forceMount, children, ...contentProps } = props;\n const context = useTabsContext(CONTENT_NAME, __scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n const isMountAnimationPreventedRef = React.useRef(isSelected);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || isSelected, children: ({ present }) => /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-orientation\": context.orientation,\n role: \"tabpanel\",\n \"aria-labelledby\": triggerId,\n hidden: !present,\n id: contentId,\n tabIndex: 0,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...props.style,\n animationDuration: isMountAnimationPreventedRef.current ? \"0s\" : void 0\n },\n children: present && children\n }\n ) });\n }\n);\nTabsContent.displayName = CONTENT_NAME;\nfunction makeTriggerId(baseId, value) {\n return `${baseId}-trigger-${value}`;\n}\nfunction makeContentId(baseId, value) {\n return `${baseId}-content-${value}`;\n}\nvar Root2 = Tabs;\nvar List = TabsList;\nvar Trigger = TabsTrigger;\nvar Content = TabsContent;\nexport {\n Content,\n List,\n Root2 as Root,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Trigger,\n createTabsScope\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as React from 'react';\nimport { Tabs as TabsPrimitive } from 'radix-ui';\n\nimport { cn } from '@/lib/utils';\n\nconst Tabs = TabsPrimitive.Root;\n\nconst TabsList = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.List\n ref={ref}\n className={cn(\n 'bg-muted text-muted-foreground inline-flex h-9 items-center justify-center rounded-lg p-1',\n className\n )}\n {...props}\n />\n));\nTabsList.displayName = TabsPrimitive.List.displayName;\n\nconst TabsTrigger = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Trigger\n ref={ref}\n className={cn(\n 'ring-offset-background focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground inline-flex items-center justify-center rounded-md px-3 py-1 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow',\n className\n )}\n {...props}\n />\n));\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName;\n\nconst TabsContent = React.forwardRef<\n React.ComponentRef<typeof TabsPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Content\n ref={ref}\n className={cn(\n 'ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none',\n className\n )}\n {...props}\n />\n));\nTabsContent.displayName = TabsPrimitive.Content.displayName;\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n","'use client';\n\nimport Link from 'next/link';\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';\nimport { Badge } from '@/components/ui/badge';\nimport { Button } from '@/components/ui/button';\nimport { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs';\nimport type { VersionInfo, SystemInfo } from '@/lib/version';\n\ninterface InfoRowProps {\n label: string;\n value: string;\n badge?: boolean;\n badgeVariant?: 'default' | 'secondary' | 'outline';\n}\n\nfunction InfoRow({ label, value, badge, badgeVariant = 'secondary' }: InfoRowProps) {\n return (\n <div className=\"flex items-center justify-between py-2\">\n <span className=\"text-muted-foreground text-sm\">{label}</span>\n {badge ? (\n <Badge variant={badgeVariant}>{value}</Badge>\n ) : (\n <span className=\"font-mono text-sm\">{value}</span>\n )}\n </div>\n );\n}\n\ninterface VersionPageClientProps {\n versionInfo: VersionInfo;\n systemInfo: SystemInfo;\n}\n\nexport default function VersionPageClient({ versionInfo, systemInfo }: VersionPageClientProps) {\n return (\n <div className=\"flex flex-col items-center justify-center p-4\">\n <div className=\"w-full max-w-2xl space-y-6\">\n <div className=\"text-center\">\n <h1 className=\"text-3xl font-bold tracking-tight\">{versionInfo.name}</h1>\n <p className=\"text-muted-foreground mt-2\">{versionInfo.description}</p>\n <div className=\"mt-4\">\n <Badge variant=\"default\" data-testid=\"version-badge\">\n v{versionInfo.version}\n </Badge>\n </div>\n </div>\n\n <Tabs defaultValue=\"overview\" className=\"w-full\">\n <TabsList className=\"grid w-full grid-cols-3\">\n <TabsTrigger value=\"overview\">Overview</TabsTrigger>\n <TabsTrigger value=\"system\">System</TabsTrigger>\n <TabsTrigger value=\"features\">Features</TabsTrigger>\n </TabsList>\n\n <TabsContent value=\"overview\">\n <Card>\n <CardHeader>\n <CardTitle>Package Information</CardTitle>\n <CardDescription>Details about the Shep AI CLI package</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-1\">\n <InfoRow label=\"Package\" value={versionInfo.name} />\n <InfoRow\n label=\"Version\"\n value={`v${versionInfo.version}`}\n badge\n badgeVariant=\"default\"\n />\n <InfoRow label=\"License\" value=\"MIT\" badge badgeVariant=\"outline\" />\n <InfoRow label=\"Author\" value=\"Shep AI\" />\n </CardContent>\n </Card>\n </TabsContent>\n\n <TabsContent value=\"system\">\n <Card>\n <CardHeader>\n <CardTitle>System Information</CardTitle>\n <CardDescription>Runtime environment details</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-1\">\n <InfoRow\n label=\"Node.js\"\n value={systemInfo.nodeVersion}\n badge\n badgeVariant=\"secondary\"\n />\n <InfoRow label=\"Platform\" value={`${systemInfo.platform} ${systemInfo.arch}`} />\n </CardContent>\n </Card>\n </TabsContent>\n\n <TabsContent value=\"features\">\n <Card>\n <CardHeader>\n <CardTitle>Key Features</CardTitle>\n <CardDescription>What Shep AI can do for you</CardDescription>\n </CardHeader>\n <CardContent>\n <ul className=\"space-y-2 text-sm\">\n <li className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">AI</Badge>\n <span>Autonomous code generation</span>\n </li>\n <li className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">SDLC</Badge>\n <span>Full development lifecycle automation</span>\n </li>\n <li className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">CLI</Badge>\n <span>Powerful command-line interface</span>\n </li>\n <li className=\"flex items-center gap-2\">\n <Badge variant=\"outline\">Web</Badge>\n <span>Modern web UI dashboard</span>\n </li>\n </ul>\n </CardContent>\n </Card>\n </TabsContent>\n </Tabs>\n\n <div className=\"flex justify-center gap-4\">\n <Button asChild variant=\"outline\">\n <Link href=\"/\">Back to Home</Link>\n </Button>\n <Button asChild>\n <a href=\"https://github.com/shep-ai/cli\" target=\"_blank\" rel=\"noopener noreferrer\">\n View on GitHub\n </a>\n </Button>\n </div>\n </div>\n </div>\n );\n}\n","import * as React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nconst Card = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('bg-card text-card-foreground rounded-xl border shadow', className)}\n {...props}\n />\n )\n);\nCard.displayName = 'Card';\n\nconst CardHeader = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} className={cn('flex flex-col space-y-1.5 p-6', className)} {...props} />\n )\n);\nCardHeader.displayName = 'CardHeader';\n\nconst CardTitle = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('leading-none font-semibold tracking-tight', className)}\n {...props}\n />\n )\n);\nCardTitle.displayName = 'CardTitle';\n\nconst CardDescription = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} className={cn('text-muted-foreground text-sm', className)} {...props} />\n )\n);\nCardDescription.displayName = 'CardDescription';\n\nconst CardContent = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} className={cn('p-6 pt-0', className)} {...props} />\n )\n);\nCardContent.displayName = 'CardContent';\n\nconst CardFooter = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(\n ({ className, ...props }, ref) => (\n <div ref={ref} className={cn('flex items-center p-6 pt-0', className)} {...props} />\n )\n);\nCardFooter.displayName = 'CardFooter';\n\nexport { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent };\n"],"names":[],"mappings":"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","ignoreList":[0,1,2]}
@@ -0,0 +1,3 @@
1
+ module.exports=[58339,a=>{"use strict";var b=a.i(10973),c=a.i(42261),d=a.i(85536);let e=(0,c.cva)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-none",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function f({className:a,variant:c,...f}){return(0,b.jsx)("div",{className:(0,d.cn)(e({variant:c}),a),...f})}a.s(["Badge",()=>f])}];
2
+
3
+ //# sourceMappingURL=src_presentation_web_components_ui_badge_tsx_964c2a3b._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../src/presentation/web/components/ui/badge.tsx"],"sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nconst badgeVariants = cva(\n 'inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-none',\n {\n variants: {\n variant: {\n default: 'border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80',\n secondary:\n 'border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80',\n destructive:\n 'border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80',\n outline: 'text-foreground',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return <div className={cn(badgeVariants({ variant }), className)} {...props} />;\n}\n\nexport { Badge, badgeVariants };\n"],"names":[],"mappings":"wDACA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAEA,IAAM,EAAgB,CAAA,EAAA,EAAA,GAAA,AAAG,EACvB,uKACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,mFACT,UACE,kFACF,YACE,+FACF,QAAS,iBACX,CACF,EACA,gBAAiB,CACf,QAAS,SACX,CACF,GAOF,SAAS,EAAM,WAAE,CAAS,SAAE,CAAO,CAAE,GAAG,EAAmB,EACzD,MAAO,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI,UAAW,CAAA,EAAA,EAAA,EAAA,AAAE,EAAC,EAAc,SAAE,CAAQ,GAAI,GAAa,GAAG,CAAK,EAC7E"}
@@ -8,11 +8,11 @@ globalThis.__BUILD_MANIFEST = {
8
8
  ],
9
9
  "lowPriorityFiles": [],
10
10
  "rootMainFiles": [
11
- "static/chunks/a8030d19b4d73c95.js",
11
+ "static/chunks/df7d29673e0ac11d.js",
12
12
  "static/chunks/07f00e2e73d322d2.js",
13
13
  "static/chunks/f3b4460b1496ef52.js",
14
- "static/chunks/be34161188b4e0a0.js",
15
- "static/chunks/turbopack-e0a0178ee911c212.js"
14
+ "static/chunks/70993ebedee7eab0.js",
15
+ "static/chunks/turbopack-a5a88a85e7ac8e8d.js"
16
16
  ]
17
17
  };
18
18
  globalThis.__BUILD_MANIFEST.lowPriorityFiles = [