vibebusiness 1.2.87 → 1.2.89

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 (277) hide show
  1. package/.next/standalone/.env +27 -14
  2. package/.next/standalone/.next/BUILD_ID +1 -1
  3. package/.next/standalone/.next/app-build-manifest.json +89 -72
  4. package/.next/standalone/.next/app-path-routes-manifest.json +1 -1
  5. package/.next/standalone/.next/build-manifest.json +8 -8
  6. package/.next/standalone/.next/prerender-manifest.json +1 -1
  7. package/.next/standalone/.next/required-server-files.json +1 -1
  8. package/.next/standalone/.next/routes-manifest.json +1 -1
  9. package/.next/standalone/.next/server/app/_not-found/page.js +1 -1
  10. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  12. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  13. package/.next/standalone/.next/server/app/api/analyze/route.js +1 -1
  14. package/.next/standalone/.next/server/app/api/analyze/route.js.nft.json +1 -1
  15. package/.next/standalone/.next/server/app/api/briefing/route.js +1 -0
  16. package/.next/standalone/.next/server/app/api/briefing/route.js.nft.json +1 -0
  17. package/.next/standalone/.next/server/app/api/checkout/route.js +1 -1
  18. package/.next/standalone/.next/server/app/api/config/detect-repos/route.js +1 -1
  19. package/.next/standalone/.next/server/app/api/config/route.js +1 -1
  20. package/.next/standalone/.next/server/app/api/config/route.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/api/epics/[id]/ideas/route.js +1 -1
  22. package/.next/standalone/.next/server/app/api/epics/[id]/ideas/route.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/api/epics/[id]/route.js +1 -1
  24. package/.next/standalone/.next/server/app/api/epics/[id]/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/epics/route.js +1 -1
  26. package/.next/standalone/.next/server/app/api/epics/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/goals/[id]/kpis/route.js +1 -1
  28. package/.next/standalone/.next/server/app/api/goals/[id]/kpis/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/goals/[id]/route.js +1 -1
  30. package/.next/standalone/.next/server/app/api/goals/[id]/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/goals/route.js +1 -1
  32. package/.next/standalone/.next/server/app/api/goals/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/health/route.js +1 -1
  34. package/.next/standalone/.next/server/app/api/hypotheses/[id]/route.js +1 -1
  35. package/.next/standalone/.next/server/app/api/hypotheses/[id]/route.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/api/hypotheses/route.js +1 -1
  37. package/.next/standalone/.next/server/app/api/hypotheses/route.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/api/ideas/[id]/card/route.js +1 -1
  39. package/.next/standalone/.next/server/app/api/ideas/[id]/card/route.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/api/ideas/[id]/comments/route.js +1 -1
  41. package/.next/standalone/.next/server/app/api/ideas/[id]/comments/route.js.nft.json +1 -1
  42. package/.next/standalone/.next/server/app/api/ideas/[id]/implement/route.js +1 -1
  43. package/.next/standalone/.next/server/app/api/ideas/[id]/implement/route.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/api/ideas/[id]/route.js +1 -1
  45. package/.next/standalone/.next/server/app/api/ideas/[id]/route.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/api/ideas/[id]/transition/route.js +1 -1
  47. package/.next/standalone/.next/server/app/api/ideas/[id]/transition/route.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/api/ideas/route.js +1 -1
  49. package/.next/standalone/.next/server/app/api/ideas/route.js.nft.json +1 -1
  50. package/.next/standalone/.next/server/app/api/implementations/route.js +1 -1
  51. package/.next/standalone/.next/server/app/api/implementations/route.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/api/investor-updates/generate/route.js +1 -1
  53. package/.next/standalone/.next/server/app/api/kpis/refresh/route.js +1 -1
  54. package/.next/standalone/.next/server/app/api/kpis/refresh/route.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/api/license/route.js +1 -1
  56. package/.next/standalone/.next/server/app/api/portal/route.js +1 -1
  57. package/.next/standalone/.next/server/app/api/provider-status/route.js +1 -1
  58. package/.next/standalone/.next/server/app/api/social/[id]/publish/route.js +1 -1
  59. package/.next/standalone/.next/server/app/api/social/[id]/publish/route.js.nft.json +1 -1
  60. package/.next/standalone/.next/server/app/api/social/[id]/route.js +1 -1
  61. package/.next/standalone/.next/server/app/api/social/[id]/route.js.nft.json +1 -1
  62. package/.next/standalone/.next/server/app/api/social/route.js +1 -1
  63. package/.next/standalone/.next/server/app/api/social/route.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/api/webhook/route.js +1 -1
  65. package/.next/standalone/.next/server/app/briefing/page.js +1 -0
  66. package/.next/standalone/.next/server/app/briefing/page.js.nft.json +1 -0
  67. package/.next/standalone/.next/server/app/briefing/page_client-reference-manifest.js +1 -0
  68. package/.next/standalone/.next/server/app/goals/[id]/page.js +1 -1
  69. package/.next/standalone/.next/server/app/goals/[id]/page.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/goals/[id]/page_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/goals/page.js +1 -1
  72. package/.next/standalone/.next/server/app/goals/page.js.nft.json +1 -1
  73. package/.next/standalone/.next/server/app/goals/page_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/hypotheses/[id]/page.js +1 -1
  75. package/.next/standalone/.next/server/app/hypotheses/[id]/page.js.nft.json +1 -1
  76. package/.next/standalone/.next/server/app/hypotheses/[id]/page_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/hypotheses/page.js +1 -1
  78. package/.next/standalone/.next/server/app/hypotheses/page.js.nft.json +1 -1
  79. package/.next/standalone/.next/server/app/hypotheses/page_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/ideas/[id]/page.js +1 -1
  81. package/.next/standalone/.next/server/app/ideas/[id]/page.js.nft.json +1 -1
  82. package/.next/standalone/.next/server/app/ideas/[id]/page_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/index.html +1 -0
  84. package/.next/standalone/.next/server/app/index.meta +6 -0
  85. package/.next/standalone/.next/server/app/index.rsc +6 -0
  86. package/.next/standalone/.next/server/app/kanban/page.js +1 -0
  87. package/.next/standalone/.next/server/app/kanban/page.js.nft.json +1 -0
  88. package/.next/standalone/.next/server/app/kanban/page_client-reference-manifest.js +1 -0
  89. package/.next/standalone/.next/server/app/page.js +1 -1
  90. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  91. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/roadmap/[id]/page.js +1 -1
  93. package/.next/standalone/.next/server/app/roadmap/[id]/page.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/app/roadmap/[id]/page_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/roadmap/investors/page.js +1 -1
  96. package/.next/standalone/.next/server/app/roadmap/investors/page.js.nft.json +1 -1
  97. package/.next/standalone/.next/server/app/roadmap/investors/page_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/roadmap/page.js +1 -1
  99. package/.next/standalone/.next/server/app/roadmap/page.js.nft.json +1 -1
  100. package/.next/standalone/.next/server/app/roadmap/page_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/roadmap/public/page.js +1 -1
  102. package/.next/standalone/.next/server/app/roadmap/public/page.js.nft.json +1 -1
  103. package/.next/standalone/.next/server/app/roadmap/public/page_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/sessions/page.js +1 -1
  105. package/.next/standalone/.next/server/app/sessions/page.js.nft.json +1 -1
  106. package/.next/standalone/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/settings/page.js +1 -1
  108. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  109. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/settings.html +1 -1
  111. package/.next/standalone/.next/server/app/settings.rsc +3 -3
  112. package/.next/standalone/.next/server/app/social/page.js +1 -1
  113. package/.next/standalone/.next/server/app/social/page.js.nft.json +1 -1
  114. package/.next/standalone/.next/server/app/social/page_client-reference-manifest.js +1 -1
  115. package/.next/standalone/.next/server/app/social.html +1 -1
  116. package/.next/standalone/.next/server/app/social.rsc +3 -3
  117. package/.next/standalone/.next/server/app/updates/[id]/page.js +1 -1
  118. package/.next/standalone/.next/server/app/updates/[id]/page.js.nft.json +1 -1
  119. package/.next/standalone/.next/server/app/updates/[id]/page_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/updates/new/page.js +1 -1
  121. package/.next/standalone/.next/server/app/updates/new/page_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/updates/new.html +1 -1
  123. package/.next/standalone/.next/server/app/updates/new.rsc +3 -3
  124. package/.next/standalone/.next/server/app/updates/page.js +1 -1
  125. package/.next/standalone/.next/server/app/updates/page.js.nft.json +1 -1
  126. package/.next/standalone/.next/server/app/updates/page_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app-paths-manifest.json +18 -15
  128. package/.next/standalone/.next/server/chunks/3098.js +1 -0
  129. package/.next/standalone/.next/server/chunks/3871.js +1 -1
  130. package/.next/standalone/.next/server/chunks/4355.js +1 -0
  131. package/.next/standalone/.next/server/chunks/4471.js +2 -2
  132. package/.next/standalone/.next/server/chunks/7151.js +10 -10
  133. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  134. package/.next/standalone/.next/server/pages/404.html +1 -1
  135. package/.next/standalone/.next/server/pages/500.html +1 -1
  136. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  138. package/.next/standalone/data/business-context.json +31 -181
  139. package/.next/standalone/data/codebase-snapshot.json +64 -42
  140. package/.next/standalone/data/competitors.json +39 -559
  141. package/.next/standalone/data/config.json +16 -40
  142. package/.next/standalone/data/goals.json +35 -410
  143. package/.next/standalone/data/positioning.json +10 -127
  144. package/.next/standalone/data/sessions.json +84 -299
  145. package/.next/standalone/node_modules/@esbuild/{darwin-arm64 → darwin-x64}/bin/esbuild +0 -0
  146. package/.next/standalone/node_modules/@esbuild/{darwin-arm64 → darwin-x64}/package.json +3 -3
  147. package/.next/standalone/package.json +3 -2
  148. package/.next/standalone/scripts/analyze.ts +70 -21
  149. package/.next/standalone/scripts/implement.ts +67 -17
  150. package/.next/standalone/server.js +1 -1
  151. package/.next/standalone/templates/commands/distribution-google-ads.md +86 -0
  152. package/.next/standalone/templates/commands/distribution-meta-ads.md +106 -0
  153. package/.next/standalone/templates/commands/distribution-repurpose.md +121 -0
  154. package/.next/standalone/templates/commands/distribution-seo-content.md +115 -0
  155. package/.next/standalone/templates/commands/distribution-social-expansion.md +128 -0
  156. package/.next/static/chunks/147-b00f2ac2bbec93ae.js +1 -0
  157. package/.next/static/chunks/159-4ce492ccac6de8f7.js +1 -0
  158. package/.next/static/chunks/47-eba0f8b4f9b17641.js +1 -0
  159. package/.next/static/chunks/547-921898871311cd72.js +1 -0
  160. package/.next/static/chunks/619-2b2ff3b9eaef112c.js +1 -0
  161. package/.next/static/chunks/735-b33805b2b19d17ad.js +1 -0
  162. package/.next/static/chunks/879-7fbd95e93ddc4636.js +1 -0
  163. package/.next/static/chunks/930-330300153dfcbfc0.js +1 -0
  164. package/.next/static/chunks/app/briefing/page-683aba0c52e910d7.js +1 -0
  165. package/.next/static/chunks/app/goals/[id]/page-40818dc7e710eeda.js +1 -0
  166. package/.next/static/chunks/app/goals/page-f80a64a68854e357.js +1 -0
  167. package/.next/static/chunks/app/hypotheses/[id]/page-023c882fa395f3ed.js +1 -0
  168. package/.next/static/chunks/app/hypotheses/page-168748bde00e7d90.js +1 -0
  169. package/.next/static/chunks/app/ideas/[id]/page-5f33e0ecf590ddec.js +1 -0
  170. package/.next/static/chunks/app/kanban/page-4f18f1e4f56948a5.js +1 -0
  171. package/.next/static/chunks/app/layout-cd1571ba4ed4a0fa.js +1 -0
  172. package/.next/static/chunks/app/page-0a8b9a7b052e6eac.js +1 -0
  173. package/.next/static/chunks/app/roadmap/[id]/page-9ba8a537e30c633c.js +1 -0
  174. package/.next/static/chunks/app/roadmap/investors/{page-0095ea5695573796.js → page-a914223623f56df3.js} +1 -1
  175. package/.next/static/chunks/app/roadmap/page-30de1fdc304eb572.js +1 -0
  176. package/.next/static/chunks/app/roadmap/public/page-c481b3f9217919ac.js +1 -0
  177. package/.next/static/chunks/app/sessions/page-d7eefd2fd42b4d55.js +1 -0
  178. package/.next/static/chunks/app/settings/{page-3afa908a96ce4e51.js → page-caf6daf930e4f2c6.js} +1 -1
  179. package/.next/static/chunks/app/social/page-21daeca0cf8af46b.js +1 -0
  180. package/.next/static/chunks/app/updates/[id]/page-2807cd17ae4938d0.js +1 -0
  181. package/.next/static/chunks/app/updates/new/{page-dcc67ffca587dcc2.js → page-ac5b966024ce0ddc.js} +1 -1
  182. package/.next/static/chunks/app/updates/page-b6efcdaae7f4f6d2.js +1 -0
  183. package/.next/static/chunks/{main-6ee938c5db2d5eb4.js → main-3eb11800bc19ca7f.js} +1 -1
  184. package/.next/static/chunks/{main-app-f42d9aa726a818bf.js → main-app-06ab73909d2a44c7.js} +1 -1
  185. package/.next/static/chunks/webpack-616e068a201ad621.js +1 -0
  186. package/.next/static/css/ff70d16171b1c02c.css +3 -0
  187. package/dist/bin/vibebusiness.js +1 -8
  188. package/dist/scripts/analyze.js +161 -19
  189. package/dist/scripts/heartbeat.js +24 -129
  190. package/dist/scripts/implement.js +77 -15
  191. package/dist/scripts/scan.js +0 -3
  192. package/dist/scripts/social-routine.js +0 -3
  193. package/package.json +3 -2
  194. package/scripts/lib/video/compositions/DemoVideo.tsx +50 -134
  195. package/scripts/lib/video/compositions/Root.tsx +2 -21
  196. package/templates/commands/distribution-google-ads.md +86 -0
  197. package/templates/commands/distribution-meta-ads.md +106 -0
  198. package/templates/commands/distribution-repurpose.md +121 -0
  199. package/templates/commands/distribution-seo-content.md +115 -0
  200. package/templates/commands/distribution-social-expansion.md +128 -0
  201. package/.next/standalone/.next/server/chunks/6299.js +0 -1
  202. package/.next/standalone/.next/server/chunks/995.js +0 -1
  203. package/.next/standalone/data/.analysis-prompt.txt +0 -170
  204. package/.next/standalone/data/copy/landing-improvements-2026-02-20.md +0 -111
  205. package/.next/standalone/data/copy/landing-landing-page-2026-02-20.md +0 -68
  206. package/.next/standalone/data/email-campaigns/sequences/onboarding.md +0 -183
  207. package/.next/standalone/data/email-campaigns/welcome-2026-02-20.md +0 -42
  208. package/.next/standalone/data/heartbeat-sessions.json +0 -7550
  209. package/.next/standalone/data/hypotheses.json +0 -269
  210. package/.next/standalone/data/ideas.json +0 -10764
  211. package/.next/standalone/data/implementations.json +0 -3342
  212. package/.next/standalone/data/pages.json +0 -22
  213. package/.next/standalone/data/payments.json +0 -33
  214. package/.next/standalone/data/reports/visuals/idea-3f4595f7-card.png +0 -0
  215. package/.next/standalone/data/reports/visuals/idea-4rxt3mkj-card.png +0 -0
  216. package/.next/standalone/data/reports/visuals/idea-6631456b-card.png +0 -0
  217. package/.next/standalone/data/reports/visuals/idea-boot-001-card.png +0 -0
  218. package/.next/standalone/data/reports/visuals/idea-fb3eba74-card.png +0 -0
  219. package/.next/standalone/data/reports/visuals/idea-first-tweet-card.png +0 -0
  220. package/.next/standalone/data/reports/visuals/idea-lp-hero-specificity-card.png +0 -0
  221. package/.next/standalone/data/reports/visuals/idea-lp-og-meta-card.png +0 -0
  222. package/.next/standalone/data/reports/visuals/idea-lp-social-proof-card.png +0 -0
  223. package/.next/standalone/data/reports/visuals/idea-prqf3lob-card.png +0 -0
  224. package/.next/standalone/data/reports/visuals/idea-readme-landing-url-card.png +0 -0
  225. package/.next/standalone/data/reports/visuals/idea-stripe-integration-card.png +0 -0
  226. package/.next/standalone/data/reports/visuals/promo-launch.png +0 -0
  227. package/.next/standalone/data/reports/visuals/promo-ship-fast.png +0 -0
  228. package/.next/standalone/data/reports/visuals/promo-while-you-slept-v2.png +0 -0
  229. package/.next/standalone/data/reports/visuals/promo-while-you-slept-v3.png +0 -0
  230. package/.next/standalone/data/reports/visuals/promo-while-you-slept.png +0 -0
  231. package/.next/standalone/data/social.json +0 -194
  232. package/.next/standalone/data/social.json.backup +0 -179
  233. package/.next/standalone/data/videos/ad-solo-founder-burnout.mp4 +0 -0
  234. package/.next/standalone/data/videos/ai-gets-business-feed.mp4 +0 -0
  235. package/.next/standalone/data/videos/idea-graveyard-feed.mp4 +0 -0
  236. package/.next/standalone/data/videos/lonely-founder-feed.mp4 +0 -0
  237. package/.next/standalone/data/videos/staging/ad-solo-founder-burnout.json +0 -54
  238. package/.next/standalone/data/videos/staging/ai-gets-business.json +0 -55
  239. package/.next/standalone/data/videos/staging/idea-graveyard.json +0 -61
  240. package/.next/standalone/data/videos/staging/lonely-founder.json +0 -60
  241. package/.next/standalone/data/videos/staging/while-you-slept-v2-fast.json +0 -67
  242. package/.next/standalone/data/videos/staging/while-you-slept-v3-dynamic.json +0 -67
  243. package/.next/standalone/data/videos/while-you-slept-demo-feed.mp4 +0 -0
  244. package/.next/standalone/data/videos/while-you-slept-v2-fast-feed.mp4 +0 -0
  245. package/.next/standalone/data/videos/while-you-slept-v3-dynamic-feed.mp4 +0 -0
  246. package/.next/standalone/node_modules/.cache/webpack/remotion-production-4.0.428/48519e014fdef8bfe40a0d447e90c96c/0.pack +0 -0
  247. package/.next/standalone/node_modules/.cache/webpack/remotion-production-4.0.428/48519e014fdef8bfe40a0d447e90c96c/index.pack +0 -0
  248. package/.next/standalone/node_modules/.cache/webpack/remotion-production-4.0.428/c99d23d3548030c8ff8de678c71eeb15/0.pack +0 -0
  249. package/.next/standalone/node_modules/.cache/webpack/remotion-production-4.0.428/c99d23d3548030c8ff8de678c71eeb15/1.pack +0 -0
  250. package/.next/standalone/node_modules/.cache/webpack/remotion-production-4.0.428/c99d23d3548030c8ff8de678c71eeb15/2.pack +0 -0
  251. package/.next/standalone/node_modules/.cache/webpack/remotion-production-4.0.428/c99d23d3548030c8ff8de678c71eeb15/3.pack +0 -0
  252. package/.next/standalone/node_modules/.cache/webpack/remotion-production-4.0.428/c99d23d3548030c8ff8de678c71eeb15/index.pack +0 -0
  253. package/.next/standalone/node_modules/.cache/webpack/remotion-production-4.0.428/c99d23d3548030c8ff8de678c71eeb15/index.pack.old +0 -0
  254. package/.next/static/chunks/280-fd1092f75f985b1e.js +0 -1
  255. package/.next/static/chunks/354-d5bc9619159f46c5.js +0 -1
  256. package/.next/static/chunks/429-8f4030371ebef5c3.js +0 -1
  257. package/.next/static/chunks/809-833fcb9fe6e81fd6.js +0 -1
  258. package/.next/static/chunks/827-6cf4bfc10d1ff0c7.js +0 -1
  259. package/.next/static/chunks/851-65b033bf38847cbb.js +0 -1
  260. package/.next/static/chunks/app/goals/[id]/page-231bb4daae0f06eb.js +0 -1
  261. package/.next/static/chunks/app/goals/page-4dfa36ac38853b88.js +0 -1
  262. package/.next/static/chunks/app/hypotheses/[id]/page-6ec09d5470557c18.js +0 -1
  263. package/.next/static/chunks/app/hypotheses/page-1732b7466579493e.js +0 -1
  264. package/.next/static/chunks/app/ideas/[id]/page-b3dfe1e61fc656a4.js +0 -1
  265. package/.next/static/chunks/app/layout-eeef7928298d2198.js +0 -1
  266. package/.next/static/chunks/app/page-d325a95479e7c453.js +0 -1
  267. package/.next/static/chunks/app/roadmap/[id]/page-b93a96f017c8d3dd.js +0 -1
  268. package/.next/static/chunks/app/roadmap/page-eacd69a99fcfc658.js +0 -1
  269. package/.next/static/chunks/app/roadmap/public/page-6b791041894b76d2.js +0 -1
  270. package/.next/static/chunks/app/sessions/page-a56ea625acdfa13e.js +0 -1
  271. package/.next/static/chunks/app/social/page-5211c78a5f37df65.js +0 -1
  272. package/.next/static/chunks/app/updates/[id]/page-fa20533878416cd0.js +0 -1
  273. package/.next/static/chunks/app/updates/page-19a09d7046577f70.js +0 -1
  274. package/.next/static/chunks/webpack-a3c37fcbf859f6f9.js +0 -1
  275. package/.next/static/css/654766eb547c6bab.css +0 -3
  276. /package/.next/static/{kgtR3Ls8MG4aQqwp3I0UE → UaMf1fmArAE78vyk_zQVK}/_buildManifest.js +0 -0
  277. /package/.next/static/{kgtR3Ls8MG4aQqwp3I0UE → UaMf1fmArAE78vyk_zQVK}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[496],{3883:function(e,t,a){Promise.resolve().then(a.bind(a,1259))},9205:function(e,t,a){"use strict";a.d(t,{Z:function(){return c}});var r=a(2265);let s=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),n=function(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return t.filter((e,t,a)=>!!e&&a.indexOf(e)===t).join(" ")};var l={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,r.forwardRef)((e,t)=>{let{color:a="currentColor",size:s=24,strokeWidth:i=2,absoluteStrokeWidth:c,className:h="",children:o,iconNode:u,...d}=e;return(0,r.createElement)("svg",{ref:t,...l,width:s,height:s,stroke:a,strokeWidth:c?24*Number(i)/Number(s):i,className:n("lucide",h),...d},[...u.map(e=>{let[t,a]=e;return(0,r.createElement)(t,a)}),...Array.isArray(o)?o:[o]])}),c=(e,t)=>{let a=(0,r.forwardRef)((a,l)=>{let{className:c,...h}=a;return(0,r.createElement)(i,{ref:l,iconNode:t,className:n("lucide-".concat(s(e)),c),...h})});return a.displayName="".concat(e),a}},2222:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]])},8220:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("FlaskConical",[["path",{d:"M10 2v7.527a2 2 0 0 1-.211.896L4.72 20.55a1 1 0 0 0 .9 1.45h12.76a1 1 0 0 0 .9-1.45l-5.069-10.127A2 2 0 0 1 14 9.527V2",key:"pzvekw"}],["path",{d:"M8.5 2h7",key:"csnxdl"}],["path",{d:"M7 16h10",key:"wp8him"}]])},5621:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]])},5466:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]])},2048:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Map",[["path",{d:"M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z",key:"169xi5"}],["path",{d:"M15 5.764v15",key:"1pn4in"}],["path",{d:"M9 3.236v15",key:"1uimfh"}]])},2718:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("MessageCircle",[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]])},8728:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},2023:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]])},5929:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]])},8896:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]])},7648:function(e,t,a){"use strict";a.d(t,{default:function(){return s.a}});var r=a(2972),s=a.n(r)},9376:function(e,t,a){"use strict";var r=a(5475);a.o(r,"usePathname")&&a.d(t,{usePathname:function(){return r.usePathname}}),a.o(r,"useRouter")&&a.d(t,{useRouter:function(){return r.useRouter}})},1259:function(e,t,a){"use strict";a.d(t,{default:function(){return k}});var r=a(7437),s=a(7648),n=a(9376),l=a(5929),i=a(5466),c=a(2048),h=a(8896),o=a(8220),u=a(2718),d=a(5621),f=a(8728),x=a(2222),y=a(2023),p=a(1994);let m=[{href:"/briefing",label:"Briefing",icon:(0,r.jsx)(l.Z,{size:18})},{href:"/kanban",label:"Dashboard",icon:(0,r.jsx)(i.Z,{className:"w-5 h-5"})},{href:"/roadmap",label:"Roadmap",icon:(0,r.jsx)(c.Z,{className:"w-5 h-5"})},{href:"/goals",label:"Goals",icon:(0,r.jsx)(h.Z,{className:"w-5 h-5"})},{href:"/hypotheses",label:"Hypotheses",icon:(0,r.jsx)(o.Z,{className:"w-5 h-5"})},{href:"/social",label:"Social",icon:(0,r.jsx)(u.Z,{className:"w-5 h-5"})},{href:"/sessions",label:"Sessions",icon:(0,r.jsx)(d.Z,{className:"w-5 h-5"})},{href:"/settings",label:"Settings",icon:(0,r.jsx)(f.Z,{className:"w-5 h-5"})}];function k(e){let{children:t}=e,a=(0,n.usePathname)();return(0,r.jsxs)("div",{className:"min-h-screen flex",children:[(0,r.jsxs)("aside",{className:"w-64 bg-slate-900 text-white flex flex-col",children:[(0,r.jsx)("div",{className:"p-4 border-b border-slate-700",children:(0,r.jsxs)(s.default,{href:"/",className:"flex items-center gap-2",children:[(0,r.jsx)("div",{className:"w-10 h-10 bg-emerald-500 rounded-lg flex items-center justify-center",children:(0,r.jsx)(x.Z,{className:"w-6 h-6 text-white"})}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h1",{className:"font-bold text-lg leading-tight",children:"Analyst"}),(0,r.jsx)("p",{className:"text-xs text-slate-400",children:"AI Product Manager"})]})]})}),(0,r.jsx)("nav",{className:"flex-1 p-4",children:(0,r.jsx)("ul",{className:"space-y-1",children:m.map(e=>{let t=a.startsWith(e.href);return(0,r.jsx)("li",{children:(0,r.jsxs)(s.default,{href:e.href,className:(0,p.Z)("flex items-center gap-3 px-3 py-2 rounded-lg transition-colors",t?"bg-slate-800 text-white":"text-slate-400 hover:text-white hover:bg-slate-800"),children:[e.icon,(0,r.jsx)("span",{children:e.label})]})},e.href)})})}),(0,r.jsx)("div",{className:"p-4 border-t border-slate-700",children:(0,r.jsxs)("div",{className:"flex items-center gap-2 text-xs text-slate-500",children:[(0,r.jsx)(y.Z,{className:"w-4 h-4"}),(0,r.jsx)("span",{children:"Powered by Claude"})]})})]}),(0,r.jsx)("main",{className:"flex-1 overflow-auto",children:t})]})}},1994:function(e,t,a){"use strict";t.Z=function(){for(var e,t,a=0,r="",s=arguments.length;a<s;a++)(e=arguments[a])&&(t=function e(t){var a,r,s="";if("string"==typeof t||"number"==typeof t)s+=t;else if("object"==typeof t){if(Array.isArray(t)){var n=t.length;for(a=0;a<n;a++)t[a]&&(r=e(t[a]))&&(s&&(s+=" "),s+=r)}else for(r in t)t[r]&&(s&&(s+=" "),s+=r)}return s}(e))&&(r&&(r+=" "),r+=t);return r}}},function(e){e.O(0,[972,971,117,744],function(){return e(e.s=3883)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[938],{8645:function(e,s,t){Promise.resolve().then(t.bind(t,8301))},8301:function(e,s,t){"use strict";t.r(s),t.d(s,{default:function(){return y}});var a=t(7437),l=t(2265),n=t(1817),i=t(7168),r=t(3229),c=t(6475),d=t(4822),o=t(401),m=t(2489),x=t(9397),h=t(8930),p=t(3247),u=t(1723),b=t(8226),j=t(6362),N=t(4001),f=t(1259),g=t(1994);function y(){let[e,s]=(0,l.useState)(null),[t,y]=(0,l.useState)(!0),[v,w]=(0,l.useState)(!1),[k,C]=(0,l.useState)(null),[S,Z]=(0,l.useState)(""),[_,I]=(0,l.useState)(!1),[A,P]=(0,l.useState)(null),[T,E]=(0,l.useState)(null),[L,R]=(0,l.useState)(null),[M,O]=(0,l.useState)(null),[D,F]=(0,l.useState)(null),[U,K]=(0,l.useState)(""),[B,z]=(0,l.useState)(!1),[H,J]=(0,l.useState)(null);(0,l.useEffect)(()=>{G(),W(),X()},[]);let G=async()=>{try{let e=await fetch("/api/config"),t=await e.json();t.success&&s(t.data)}catch(e){console.error("Failed to load config:",e)}finally{y(!1)}},W=async()=>{try{let e=await fetch("/api/license"),s=await e.json();s.success&&F(s.data)}catch(e){}},X=async()=>{try{let e=await fetch("/api/provider-status"),s=await e.json();s.success&&O(s.data)}catch(e){}},q=async()=>{if(U.trim()){z(!0),J(null);try{let e=await fetch("/api/license",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:U.trim()})}),s=await e.json();s.success?(J({type:"success",text:s.data.message}),F(s.data),K("")):J({type:"error",text:s.error||"Activation failed"})}catch(e){J({type:"error",text:"Failed to activate license"})}finally{z(!1),setTimeout(()=>J(null),5e3)}}},Q=async()=>{if(e){w(!0),C(null);try{(await fetch("/api/config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})).ok?C({type:"success",text:"Settings saved successfully"}):C({type:"error",text:"Failed to save settings"})}catch(e){C({type:"error",text:"Failed to save settings"})}finally{w(!1),setTimeout(()=>C(null),3e3)}}},V=(t,a,l)=>{if(!e)return;let n=[...e.repos];n[t]={...n[t],[a]:l},s({...e,repos:n})},Y=t=>{if(!e)return;let a=e.repos.filter((e,s)=>s!==t);s({...e,repos:a})},$=async()=>{if(S.trim()){I(!0),P(null),E(null),R(null);try{let e=await fetch("/api/config/detect-repos",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootDir:S.trim()})}),s=await e.json();if(!s.success){R(s.error||"Scan failed");return}P(s.data.repos),s.data.warning&&E(s.data.warning)}catch(e){R("Failed to scan directory")}finally{I(!1)}}},ee=t=>{if(!e)return;let a=new Set(e.repos.map(e=>e.path)),l=t.filter(e=>!a.has(e.path)).map(e=>({name:e.name,path:e.path,type:e.type,default_branch:"main"}));s({...e,repos:[...e.repos,...l]}),P(null),E(null)},es=t=>{e&&(s({...e,repos:t.map(e=>({name:e.name,path:e.path,type:e.type,default_branch:"main"}))}),P(null),E(null))},et=(t,a,l)=>{if(!e)return;let n={...e.schedules};"focus"===a?n[t]={...n[t],focus:l.split(",").map(e=>e.trim())}:"max_ideas"===a&&(n[t]={...n[t],max_ideas:l}),s({...e,schedules:n})};return t?(0,a.jsx)(f.default,{children:(0,a.jsx)("div",{className:"flex items-center justify-center h-full",children:(0,a.jsx)(n.Z,{className:"w-8 h-8 text-slate-400 animate-spin"})})}):e?(0,a.jsx)(f.default,{children:(0,a.jsxs)("div",{className:"p-6 max-w-4xl",children:[(0,a.jsxs)("header",{className:"flex items-center justify-between mb-6",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-2xl font-bold text-slate-900",children:"Settings"}),(0,a.jsx)("p",{className:"text-slate-500 mt-1",children:"Configure analysis settings and repositories"})]}),(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[(0,a.jsxs)("button",{onClick:G,className:"btn btn-secondary gap-2",disabled:t,children:[(0,a.jsx)(i.Z,{className:(0,g.Z)("w-4 h-4",t&&"animate-spin")}),"Reload"]}),(0,a.jsxs)("button",{onClick:Q,className:"btn btn-primary gap-2",disabled:v,children:[v?(0,a.jsx)(n.Z,{className:"w-4 h-4 animate-spin"}):(0,a.jsx)(r.Z,{className:"w-4 h-4"}),"Save Changes"]})]})]}),k&&(0,a.jsx)("div",{className:(0,g.Z)("mb-6 p-4 rounded-lg border animate-slide-in","success"===k.type?"bg-emerald-50 border-emerald-200 text-emerald-700":"bg-red-50 border-red-200 text-red-700"),children:k.text}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6 mb-6",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900 mb-4",children:[(0,a.jsx)(c.Z,{className:"w-5 h-5"}),"Implementation Workspace"]}),(0,a.jsx)("p",{className:"text-sm text-slate-500 mb-4",children:"Directory where the analyst clones repositories for implementation work (separate from your working copies)."}),(0,a.jsx)("input",{type:"text",value:e.workspace_dir||"",onChange:t=>s({...e,workspace_dir:t.target.value}),className:"input font-mono text-sm",placeholder:"/Users/you/Code/analyst-workspaces"})]}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6 mb-6",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900 mb-4",children:[(0,a.jsx)(d.Z,{className:"w-5 h-5"}),"AI Provider"]}),M?(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsx)("div",{className:"p-4 bg-slate-50 rounded-lg",children:(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Provider"}),(0,a.jsx)("p",{className:"text-sm font-semibold text-slate-900",children:M.provider||"None"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Status"}),(0,a.jsx)("span",{className:(0,g.Z)("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",M.provider?"bg-emerald-100 text-emerald-700":"bg-slate-100 text-slate-600"),children:M.provider?"Active":"Not configured"})]}),M.keyMasked&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"API Key"}),(0,a.jsx)("p",{className:"text-sm font-mono text-slate-700",children:M.keyMasked})]}),M.model&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Model"}),(0,a.jsx)("p",{className:"text-sm text-slate-700",children:M.model})]}),M.keySource&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Key Source"}),(0,a.jsx)("p",{className:"text-sm text-slate-700 capitalize",children:"credentials"===M.keySource?"~/.vibebusiness/credentials.json":"Environment variable"})]}),M.cli&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Claude CLI"}),(0,a.jsx)("p",{className:"text-sm text-slate-700",children:M.cli.version||"Installed"})]})]})}),(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-slate-700 mb-3",children:"Capabilities"}),(0,a.jsx)("div",{className:"grid grid-cols-2 gap-2",children:[{key:"heartbeat_reasoning",label:"Heartbeat reasoning",needs:"API key"},{key:"idea_evaluation",label:"Idea evaluation",needs:"API key"},{key:"idea_decomposition",label:"Idea decomposition",needs:"API key"},{key:"codebase_analysis",label:"Codebase analysis",needs:"Claude CLI"},{key:"implementation",label:"Implementation",needs:"Claude CLI"},{key:"interactive_chat",label:"Interactive chat",needs:"Claude CLI"}].map(e=>{let{key:s,label:t,needs:l}=e;return(0,a.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[M.capabilities[s]?(0,a.jsx)(o.Z,{className:"w-3.5 h-3.5 text-emerald-600 flex-shrink-0"}):(0,a.jsx)(m.Z,{className:"w-3.5 h-3.5 text-slate-400 flex-shrink-0"}),(0,a.jsx)("span",{className:M.capabilities[s]?"text-slate-700":"text-slate-400",children:t}),!M.capabilities[s]&&(0,a.jsxs)("span",{className:"text-xs text-slate-400",children:["(needs ",l,")"]})]},s)})})]}),(0,a.jsxs)("p",{className:"text-xs text-slate-500",children:["Manage via CLI: ",(0,a.jsx)("code",{className:"text-xs bg-slate-100 px-1.5 py-0.5 rounded",children:"vibebusiness provider setup"})]})]}):(0,a.jsxs)("p",{className:"text-sm text-slate-500",children:["No AI provider configured. Run ",(0,a.jsx)("code",{className:"text-xs bg-slate-100 px-1.5 py-0.5 rounded",children:"vibebusiness provider setup"})," to set up."]})]}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6 mb-6",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900",children:[(0,a.jsx)(c.Z,{className:"w-5 h-5"}),"Repositories"]}),(0,a.jsxs)("button",{onClick:()=>{e&&s({...e,repos:[...e.repos,{name:"",path:"",type:"nodejs",default_branch:"main"}]})},className:"btn btn-secondary gap-2 text-sm",children:[(0,a.jsx)(x.Z,{className:"w-4 h-4"}),"Add Repository"]})]}),(0,a.jsxs)("div",{className:"space-y-4",children:[e.repos.map((e,s)=>(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg space-y-3 relative group",children:[(0,a.jsx)("button",{onClick:()=>Y(s),className:"absolute top-3 right-3 p-1.5 text-slate-400 hover:text-red-500 hover:bg-red-50 rounded transition-colors",title:"Remove repository",children:(0,a.jsx)(h.Z,{className:"w-4 h-4"})}),(0,a.jsxs)("div",{className:"grid grid-cols-3 gap-4 pr-10",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Name"}),(0,a.jsx)("input",{type:"text",value:e.name,onChange:e=>V(s,"name",e.target.value),className:"input",placeholder:"my-repo"})]}),(0,a.jsxs)("div",{className:"col-span-2",children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Local Path (for analysis)"}),(0,a.jsx)("input",{type:"text",value:e.path,onChange:e=>V(s,"path",e.target.value),className:"input font-mono text-sm",placeholder:"/Users/you/Code/my-repo"})]})]}),(0,a.jsxs)("div",{className:"grid grid-cols-4 gap-4 pr-10",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Type"}),(0,a.jsx)("input",{type:"text",value:e.type||"",onChange:e=>V(s,"type",e.target.value),className:"input text-sm",placeholder:"nextjs"})]}),(0,a.jsxs)("div",{className:"col-span-2",children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"GitHub URL (for cloning to workspace)"}),(0,a.jsx)("input",{type:"text",value:e.github_url||"",onChange:e=>V(s,"github_url",e.target.value),className:"input font-mono text-sm",placeholder:"git@github.com:user/repo.git"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Default Branch"}),(0,a.jsx)("input",{type:"text",value:e.default_branch||"main",onChange:e=>V(s,"default_branch",e.target.value),className:"input",placeholder:"main"})]})]})]},s)),0===e.repos.length&&(0,a.jsx)("div",{className:"text-center py-8 text-slate-400",children:"No repositories configured. Add one manually or scan a directory below."})]}),(0,a.jsxs)("div",{className:"mt-6 pt-6 border-t border-slate-200",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-slate-700 mb-2",children:"Scan Directory"}),(0,a.jsx)("p",{className:"text-sm text-slate-500 mb-3",children:"Auto-detect repositories in a directory."}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)("input",{type:"text",value:S,onChange:e=>Z(e.target.value),className:"input font-mono text-sm flex-1",placeholder:"/Users/you/Code/my-project",onKeyDown:e=>"Enter"===e.key&&$()}),(0,a.jsxs)("button",{onClick:$,className:"btn btn-secondary gap-2 text-sm whitespace-nowrap",disabled:_||!S.trim(),children:[_?(0,a.jsx)(n.Z,{className:"w-4 h-4 animate-spin"}):(0,a.jsx)(p.Z,{className:"w-4 h-4"}),"Scan"]})]}),L&&(0,a.jsx)("div",{className:"mt-3 p-3 bg-red-50 border border-red-200 rounded-lg text-sm text-red-700",children:L}),T&&(0,a.jsx)("div",{className:"mt-3 p-3 bg-amber-50 border border-amber-200 rounded-lg text-sm text-amber-700",children:T}),A&&(0,a.jsx)("div",{className:"mt-3",children:0===A.length?(0,a.jsx)("div",{className:"p-3 bg-slate-50 rounded-lg text-sm text-slate-500",children:"No repositories detected in that directory."}):(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg space-y-3",children:[(0,a.jsxs)("div",{className:"text-sm font-medium text-slate-700",children:["Found ",A.length," repo",1!==A.length?"s":"",":"]}),(0,a.jsx)("div",{className:"space-y-1",children:A.map((e,s)=>(0,a.jsxs)("div",{className:"flex items-center gap-3 text-sm",children:[(0,a.jsx)("span",{className:(0,g.Z)("inline-block w-2 h-2 rounded-full","high"===e.confidence?"bg-emerald-500":"bg-amber-500")}),(0,a.jsx)("span",{className:"font-medium text-slate-900",children:e.name}),(0,a.jsxs)("span",{className:"text-slate-500",children:["(",e.type,")"]}),(0,a.jsx)("span",{className:"text-slate-400 font-mono text-xs truncate",children:e.path})]},s))}),(0,a.jsxs)("div",{className:"flex gap-2 pt-2",children:[(0,a.jsx)("button",{onClick:()=>ee(A),className:"btn btn-secondary text-sm",children:"Add to existing"}),(0,a.jsx)("button",{onClick:()=>es(A),className:"btn btn-secondary text-sm text-red-600 hover:text-red-700",children:"Replace all"}),(0,a.jsx)("button",{onClick:()=>{P(null),E(null)},className:"btn btn-secondary text-sm",children:"Dismiss"})]})]})})]})]}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900 mb-4",children:[(0,a.jsx)(u.Z,{className:"w-5 h-5"}),"Analysis Schedules"]}),(0,a.jsx)("div",{className:"space-y-6",children:Object.keys(e.schedules).map(s=>(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg",children:[(0,a.jsxs)("h3",{className:"font-medium text-slate-900 mb-3 capitalize",children:[s," Analysis"]}),(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Focus Areas (comma-separated)"}),(0,a.jsx)("input",{type:"text",value:e.schedules[s].focus.join(", "),onChange:e=>et(s,"focus",e.target.value),className:"input"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Max Ideas"}),(0,a.jsx)("input",{type:"number",value:e.schedules[s].max_ideas,onChange:e=>et(s,"max_ideas",parseInt(e.target.value,10)),className:"input",min:1,max:50})]})]})]},s))})]}),(0,a.jsxs)("section",{className:"mt-6 p-4 bg-slate-100 rounded-lg",children:[(0,a.jsx)("h3",{className:"font-medium text-slate-700 mb-2",children:"Cron Setup"}),(0,a.jsx)("p",{className:"text-sm text-slate-600 mb-2",children:"To enable automated analysis, run the setup script:"}),(0,a.jsx)("pre",{className:"bg-slate-800 text-slate-100 p-3 rounded text-sm font-mono overflow-x-auto",children:"./scripts/setup-cron.sh"})]}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6 mt-6",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900 mb-4",children:[(0,a.jsx)(b.Z,{className:"w-5 h-5"}),"Subscription & Billing"]}),D?(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg",children:[(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Plan"}),(0,a.jsx)("p",{className:"text-sm font-semibold text-slate-900 capitalize",children:D.tier})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Status"}),(0,a.jsx)("span",{className:(0,g.Z)("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium","valid"===D.status&&"bg-emerald-100 text-emerald-700","trial"===D.status&&"bg-blue-100 text-blue-700","expired"===D.status&&"bg-red-100 text-red-700",(!D.status||"unknown"===D.status)&&"bg-slate-100 text-slate-600"),children:D.status})]}),D.keyMasked&&"(trial)"!==D.keyMasked&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"License Key"}),(0,a.jsx)("p",{className:"text-sm font-mono text-slate-700",children:D.keyMasked})]}),D.email&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Email"}),(0,a.jsx)("p",{className:"text-sm text-slate-700",children:D.email})]})]}),(0,a.jsx)("p",{className:"text-xs text-slate-500 mt-3",children:D.message})]}),(0,a.jsxs)("a",{href:"https://vibebusiness.com/pricing",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 text-sm text-emerald-600 hover:text-emerald-700 font-medium",children:[(0,a.jsx)(j.Z,{className:"w-3.5 h-3.5"}),"Manage Subscription"]})]}):(0,a.jsxs)("p",{className:"text-sm text-slate-500",children:["License information unavailable. Run ",(0,a.jsx)("code",{className:"text-xs bg-slate-100 px-1.5 py-0.5 rounded",children:"vibebusiness init"})," to set up."]}),(0,a.jsxs)("div",{className:"mt-6 pt-6 border-t border-slate-200",children:[(0,a.jsxs)("h3",{className:"flex items-center gap-2 text-sm font-semibold text-slate-700 mb-2",children:[(0,a.jsx)(N.Z,{className:"w-4 h-4"}),"Enter License Key"]}),(0,a.jsx)("p",{className:"text-sm text-slate-500 mb-3",children:"Activate a license key purchased from vibebusiness.com."}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)("input",{type:"text",value:U,onChange:e=>K(e.target.value),className:"input font-mono text-sm flex-1",placeholder:"PRO-xxxxxxxxxxxx",onKeyDown:e=>"Enter"===e.key&&q()}),(0,a.jsxs)("button",{onClick:q,className:"btn btn-primary gap-2 text-sm whitespace-nowrap",disabled:B||!U.trim(),children:[B?(0,a.jsx)(n.Z,{className:"w-4 h-4 animate-spin"}):(0,a.jsx)(N.Z,{className:"w-4 h-4"}),"Activate"]})]}),H&&(0,a.jsx)("div",{className:(0,g.Z)("mt-3 p-3 rounded-lg text-sm","success"===H.type?"bg-emerald-50 border border-emerald-200 text-emerald-700":"bg-red-50 border border-red-200 text-red-700"),children:H.text})]})]})]})}):(0,a.jsx)(f.default,{children:(0,a.jsx)("div",{className:"p-6",children:(0,a.jsx)("div",{className:"bg-red-50 border border-red-200 rounded-lg p-4 text-red-700",children:"Failed to load configuration. Please check that data/config.json exists."})})})}},1259:function(e,s,t){"use strict";t.d(s,{default:function(){return N}});var a=t(7437),l=t(7648),n=t(9376),i=t(5466),r=t(2048),c=t(8896),d=t(8220),o=t(2718),m=t(5621),x=t(8728),h=t(2222),p=t(2023),u=t(1994),b=t(257);let j=[{href:"/",label:"Dashboard",icon:(0,a.jsx)(i.Z,{className:"w-5 h-5"})},{href:"/roadmap",label:"Roadmap",icon:(0,a.jsx)(r.Z,{className:"w-5 h-5"})},{href:"/goals",label:"Goals",icon:(0,a.jsx)(c.Z,{className:"w-5 h-5"})},{href:"/hypotheses",label:"Hypotheses",icon:(0,a.jsx)(d.Z,{className:"w-5 h-5"})},{href:"/social",label:"Social",icon:(0,a.jsx)(o.Z,{className:"w-5 h-5"})},{href:"/sessions",label:"Sessions",icon:(0,a.jsx)(m.Z,{className:"w-5 h-5"})},{href:"/settings",label:"Settings",icon:(0,a.jsx)(x.Z,{className:"w-5 h-5"})}];function N(e){let{children:s}=e,t=(0,n.usePathname)();return(0,a.jsxs)("div",{className:"min-h-screen flex",children:[(0,a.jsxs)("aside",{className:"w-64 bg-slate-900 text-white flex flex-col",children:[(0,a.jsx)("div",{className:"p-4 border-b border-slate-700",children:(0,a.jsxs)(l.default,{href:"/",className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"w-10 h-10 bg-emerald-500 rounded-lg flex items-center justify-center",children:(0,a.jsx)(h.Z,{className:"w-6 h-6 text-white"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"font-bold text-lg leading-tight",children:"Analyst"}),(0,a.jsx)("p",{className:"text-xs text-slate-400",children:b.env.NEXT_PUBLIC_PRODUCT_NAME||"Business"})]})]})}),(0,a.jsx)("nav",{className:"flex-1 p-4",children:(0,a.jsx)("ul",{className:"space-y-1",children:j.map(e=>{let s="/"===e.href?"/"===t:t.startsWith(e.href);return(0,a.jsx)("li",{children:(0,a.jsxs)(l.default,{href:e.href,className:(0,u.Z)("flex items-center gap-3 px-3 py-2 rounded-lg transition-colors",s?"bg-slate-800 text-white":"text-slate-400 hover:text-white hover:bg-slate-800"),children:[e.icon,(0,a.jsx)("span",{children:e.label})]})},e.href)})})}),(0,a.jsx)("div",{className:"p-4 border-t border-slate-700",children:(0,a.jsxs)("div",{className:"flex items-center gap-2 text-xs text-slate-500",children:[(0,a.jsx)(p.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Powered by Claude"})]})})]}),(0,a.jsx)("main",{className:"flex-1 overflow-auto",children:s})]})}}},function(e){e.O(0,[972,809,971,117,744],function(){return e(e.s=8645)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[938],{9523:function(e,s,t){Promise.resolve().then(t.bind(t,8301))},8301:function(e,s,t){"use strict";t.r(s),t.d(s,{default:function(){return y}});var a=t(7437),l=t(2265),n=t(1817),i=t(7168),r=t(3229),c=t(6475),d=t(4822),o=t(401),m=t(2489),x=t(9397),h=t(8930),p=t(3247),u=t(1723),b=t(8226),j=t(6362),N=t(4001),f=t(1259),g=t(1994);function y(){let[e,s]=(0,l.useState)(null),[t,y]=(0,l.useState)(!0),[v,w]=(0,l.useState)(!1),[k,C]=(0,l.useState)(null),[S,Z]=(0,l.useState)(""),[_,I]=(0,l.useState)(!1),[A,P]=(0,l.useState)(null),[L,M]=(0,l.useState)(null),[R,T]=(0,l.useState)(null),[E,O]=(0,l.useState)(null),[D,F]=(0,l.useState)(null),[K,U]=(0,l.useState)(""),[z,B]=(0,l.useState)(!1),[H,J]=(0,l.useState)(null);(0,l.useEffect)(()=>{G(),W(),q()},[]);let G=async()=>{try{let e=await fetch("/api/config"),t=await e.json();t.success&&s(t.data)}catch(e){console.error("Failed to load config:",e)}finally{y(!1)}},W=async()=>{try{let e=await fetch("/api/license"),s=await e.json();s.success&&F(s.data)}catch(e){}},q=async()=>{try{let e=await fetch("/api/provider-status"),s=await e.json();s.success&&O(s.data)}catch(e){}},Q=async()=>{if(K.trim()){B(!0),J(null);try{let e=await fetch("/api/license",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:K.trim()})}),s=await e.json();s.success?(J({type:"success",text:s.data.message}),F(s.data),U("")):J({type:"error",text:s.error||"Activation failed"})}catch(e){J({type:"error",text:"Failed to activate license"})}finally{B(!1),setTimeout(()=>J(null),5e3)}}},V=async()=>{if(e){w(!0),C(null);try{(await fetch("/api/config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})).ok?C({type:"success",text:"Settings saved successfully"}):C({type:"error",text:"Failed to save settings"})}catch(e){C({type:"error",text:"Failed to save settings"})}finally{w(!1),setTimeout(()=>C(null),3e3)}}},X=(t,a,l)=>{if(!e)return;let n=[...e.repos];n[t]={...n[t],[a]:l},s({...e,repos:n})},Y=t=>{if(!e)return;let a=e.repos.filter((e,s)=>s!==t);s({...e,repos:a})},$=async()=>{if(S.trim()){I(!0),P(null),M(null),T(null);try{let e=await fetch("/api/config/detect-repos",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({rootDir:S.trim()})}),s=await e.json();if(!s.success){T(s.error||"Scan failed");return}P(s.data.repos),s.data.warning&&M(s.data.warning)}catch(e){T("Failed to scan directory")}finally{I(!1)}}},ee=t=>{if(!e)return;let a=new Set(e.repos.map(e=>e.path)),l=t.filter(e=>!a.has(e.path)).map(e=>({name:e.name,path:e.path,type:e.type,default_branch:"main"}));s({...e,repos:[...e.repos,...l]}),P(null),M(null)},es=t=>{e&&(s({...e,repos:t.map(e=>({name:e.name,path:e.path,type:e.type,default_branch:"main"}))}),P(null),M(null))},et=(t,a,l)=>{if(!e)return;let n={...e.schedules};"focus"===a?n[t]={...n[t],focus:l.split(",").map(e=>e.trim())}:"max_ideas"===a&&(n[t]={...n[t],max_ideas:l}),s({...e,schedules:n})};return t?(0,a.jsx)(f.default,{children:(0,a.jsx)("div",{className:"flex items-center justify-center h-full",children:(0,a.jsx)(n.Z,{className:"w-8 h-8 text-slate-400 animate-spin"})})}):e?(0,a.jsx)(f.default,{children:(0,a.jsxs)("div",{className:"p-6 max-w-4xl",children:[(0,a.jsxs)("header",{className:"flex items-center justify-between mb-6",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-2xl font-bold text-slate-900",children:"Settings"}),(0,a.jsx)("p",{className:"text-slate-500 mt-1",children:"Configure analysis settings and repositories"})]}),(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[(0,a.jsxs)("button",{onClick:G,className:"btn btn-secondary gap-2",disabled:t,children:[(0,a.jsx)(i.Z,{className:(0,g.Z)("w-4 h-4",t&&"animate-spin")}),"Reload"]}),(0,a.jsxs)("button",{onClick:V,className:"btn btn-primary gap-2",disabled:v,children:[v?(0,a.jsx)(n.Z,{className:"w-4 h-4 animate-spin"}):(0,a.jsx)(r.Z,{className:"w-4 h-4"}),"Save Changes"]})]})]}),k&&(0,a.jsx)("div",{className:(0,g.Z)("mb-6 p-4 rounded-lg border animate-slide-in","success"===k.type?"bg-emerald-50 border-emerald-200 text-emerald-700":"bg-red-50 border-red-200 text-red-700"),children:k.text}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6 mb-6",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900 mb-4",children:[(0,a.jsx)(c.Z,{className:"w-5 h-5"}),"Implementation Workspace"]}),(0,a.jsx)("p",{className:"text-sm text-slate-500 mb-4",children:"Directory where the analyst clones repositories for implementation work (separate from your working copies)."}),(0,a.jsx)("input",{type:"text",value:e.workspace_dir||"",onChange:t=>s({...e,workspace_dir:t.target.value}),className:"input font-mono text-sm",placeholder:"/Users/you/Code/analyst-workspaces"})]}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6 mb-6",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900 mb-4",children:[(0,a.jsx)(d.Z,{className:"w-5 h-5"}),"AI Provider"]}),E?(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsx)("div",{className:"p-4 bg-slate-50 rounded-lg",children:(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Provider"}),(0,a.jsx)("p",{className:"text-sm font-semibold text-slate-900",children:E.provider||"None"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Status"}),(0,a.jsx)("span",{className:(0,g.Z)("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",E.provider?"bg-emerald-100 text-emerald-700":"bg-slate-100 text-slate-600"),children:E.provider?"Active":"Not configured"})]}),E.keyMasked&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"API Key"}),(0,a.jsx)("p",{className:"text-sm font-mono text-slate-700",children:E.keyMasked})]}),E.model&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Model"}),(0,a.jsx)("p",{className:"text-sm text-slate-700",children:E.model})]}),E.keySource&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Key Source"}),(0,a.jsx)("p",{className:"text-sm text-slate-700 capitalize",children:"credentials"===E.keySource?"~/.vibebusiness/credentials.json":"Environment variable"})]}),E.cli&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Claude CLI"}),(0,a.jsx)("p",{className:"text-sm text-slate-700",children:E.cli.version||"Installed"})]})]})}),(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-slate-700 mb-3",children:"Capabilities"}),(0,a.jsx)("div",{className:"grid grid-cols-2 gap-2",children:[{key:"heartbeat_reasoning",label:"Heartbeat reasoning",needs:"API key"},{key:"idea_evaluation",label:"Idea evaluation",needs:"API key"},{key:"idea_decomposition",label:"Idea decomposition",needs:"API key"},{key:"codebase_analysis",label:"Codebase analysis",needs:"Claude CLI"},{key:"implementation",label:"Implementation",needs:"Claude CLI"},{key:"interactive_chat",label:"Interactive chat",needs:"Claude CLI"}].map(e=>{let{key:s,label:t,needs:l}=e;return(0,a.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[E.capabilities[s]?(0,a.jsx)(o.Z,{className:"w-3.5 h-3.5 text-emerald-600 flex-shrink-0"}):(0,a.jsx)(m.Z,{className:"w-3.5 h-3.5 text-slate-400 flex-shrink-0"}),(0,a.jsx)("span",{className:E.capabilities[s]?"text-slate-700":"text-slate-400",children:t}),!E.capabilities[s]&&(0,a.jsxs)("span",{className:"text-xs text-slate-400",children:["(needs ",l,")"]})]},s)})})]}),(0,a.jsxs)("p",{className:"text-xs text-slate-500",children:["Manage via CLI: ",(0,a.jsx)("code",{className:"text-xs bg-slate-100 px-1.5 py-0.5 rounded",children:"vibebusiness provider setup"})]})]}):(0,a.jsxs)("p",{className:"text-sm text-slate-500",children:["No AI provider configured. Run ",(0,a.jsx)("code",{className:"text-xs bg-slate-100 px-1.5 py-0.5 rounded",children:"vibebusiness provider setup"})," to set up."]})]}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6 mb-6",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900",children:[(0,a.jsx)(c.Z,{className:"w-5 h-5"}),"Repositories"]}),(0,a.jsxs)("button",{onClick:()=>{e&&s({...e,repos:[...e.repos,{name:"",path:"",type:"nodejs",default_branch:"main"}]})},className:"btn btn-secondary gap-2 text-sm",children:[(0,a.jsx)(x.Z,{className:"w-4 h-4"}),"Add Repository"]})]}),(0,a.jsxs)("div",{className:"space-y-4",children:[e.repos.map((e,s)=>(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg space-y-3 relative group",children:[(0,a.jsx)("button",{onClick:()=>Y(s),className:"absolute top-3 right-3 p-1.5 text-slate-400 hover:text-red-500 hover:bg-red-50 rounded transition-colors",title:"Remove repository",children:(0,a.jsx)(h.Z,{className:"w-4 h-4"})}),(0,a.jsxs)("div",{className:"grid grid-cols-3 gap-4 pr-10",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Name"}),(0,a.jsx)("input",{type:"text",value:e.name,onChange:e=>X(s,"name",e.target.value),className:"input",placeholder:"my-repo"})]}),(0,a.jsxs)("div",{className:"col-span-2",children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Local Path (for analysis)"}),(0,a.jsx)("input",{type:"text",value:e.path,onChange:e=>X(s,"path",e.target.value),className:"input font-mono text-sm",placeholder:"/Users/you/Code/my-repo"})]})]}),(0,a.jsxs)("div",{className:"grid grid-cols-4 gap-4 pr-10",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Type"}),(0,a.jsx)("input",{type:"text",value:e.type||"",onChange:e=>X(s,"type",e.target.value),className:"input text-sm",placeholder:"nextjs"})]}),(0,a.jsxs)("div",{className:"col-span-2",children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"GitHub URL (for cloning to workspace)"}),(0,a.jsx)("input",{type:"text",value:e.github_url||"",onChange:e=>X(s,"github_url",e.target.value),className:"input font-mono text-sm",placeholder:"git@github.com:user/repo.git"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Default Branch"}),(0,a.jsx)("input",{type:"text",value:e.default_branch||"main",onChange:e=>X(s,"default_branch",e.target.value),className:"input",placeholder:"main"})]})]})]},s)),0===e.repos.length&&(0,a.jsx)("div",{className:"text-center py-8 text-slate-400",children:"No repositories configured. Add one manually or scan a directory below."})]}),(0,a.jsxs)("div",{className:"mt-6 pt-6 border-t border-slate-200",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-slate-700 mb-2",children:"Scan Directory"}),(0,a.jsx)("p",{className:"text-sm text-slate-500 mb-3",children:"Auto-detect repositories in a directory."}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)("input",{type:"text",value:S,onChange:e=>Z(e.target.value),className:"input font-mono text-sm flex-1",placeholder:"/Users/you/Code/my-project",onKeyDown:e=>"Enter"===e.key&&$()}),(0,a.jsxs)("button",{onClick:$,className:"btn btn-secondary gap-2 text-sm whitespace-nowrap",disabled:_||!S.trim(),children:[_?(0,a.jsx)(n.Z,{className:"w-4 h-4 animate-spin"}):(0,a.jsx)(p.Z,{className:"w-4 h-4"}),"Scan"]})]}),R&&(0,a.jsx)("div",{className:"mt-3 p-3 bg-red-50 border border-red-200 rounded-lg text-sm text-red-700",children:R}),L&&(0,a.jsx)("div",{className:"mt-3 p-3 bg-amber-50 border border-amber-200 rounded-lg text-sm text-amber-700",children:L}),A&&(0,a.jsx)("div",{className:"mt-3",children:0===A.length?(0,a.jsx)("div",{className:"p-3 bg-slate-50 rounded-lg text-sm text-slate-500",children:"No repositories detected in that directory."}):(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg space-y-3",children:[(0,a.jsxs)("div",{className:"text-sm font-medium text-slate-700",children:["Found ",A.length," repo",1!==A.length?"s":"",":"]}),(0,a.jsx)("div",{className:"space-y-1",children:A.map((e,s)=>(0,a.jsxs)("div",{className:"flex items-center gap-3 text-sm",children:[(0,a.jsx)("span",{className:(0,g.Z)("inline-block w-2 h-2 rounded-full","high"===e.confidence?"bg-emerald-500":"bg-amber-500")}),(0,a.jsx)("span",{className:"font-medium text-slate-900",children:e.name}),(0,a.jsxs)("span",{className:"text-slate-500",children:["(",e.type,")"]}),(0,a.jsx)("span",{className:"text-slate-400 font-mono text-xs truncate",children:e.path})]},s))}),(0,a.jsxs)("div",{className:"flex gap-2 pt-2",children:[(0,a.jsx)("button",{onClick:()=>ee(A),className:"btn btn-secondary text-sm",children:"Add to existing"}),(0,a.jsx)("button",{onClick:()=>es(A),className:"btn btn-secondary text-sm text-red-600 hover:text-red-700",children:"Replace all"}),(0,a.jsx)("button",{onClick:()=>{P(null),M(null)},className:"btn btn-secondary text-sm",children:"Dismiss"})]})]})})]})]}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900 mb-4",children:[(0,a.jsx)(u.Z,{className:"w-5 h-5"}),"Analysis Schedules"]}),(0,a.jsx)("div",{className:"space-y-6",children:Object.keys(e.schedules).map(s=>(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg",children:[(0,a.jsxs)("h3",{className:"font-medium text-slate-900 mb-3 capitalize",children:[s," Analysis"]}),(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Focus Areas (comma-separated)"}),(0,a.jsx)("input",{type:"text",value:e.schedules[s].focus.join(", "),onChange:e=>et(s,"focus",e.target.value),className:"input"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-700 mb-1",children:"Max Ideas"}),(0,a.jsx)("input",{type:"number",value:e.schedules[s].max_ideas,onChange:e=>et(s,"max_ideas",parseInt(e.target.value,10)),className:"input",min:1,max:50})]})]})]},s))})]}),(0,a.jsxs)("section",{className:"mt-6 p-4 bg-slate-100 rounded-lg",children:[(0,a.jsx)("h3",{className:"font-medium text-slate-700 mb-2",children:"Cron Setup"}),(0,a.jsx)("p",{className:"text-sm text-slate-600 mb-2",children:"To enable automated analysis, run the setup script:"}),(0,a.jsx)("pre",{className:"bg-slate-800 text-slate-100 p-3 rounded text-sm font-mono overflow-x-auto",children:"./scripts/setup-cron.sh"})]}),(0,a.jsxs)("section",{className:"bg-white rounded-lg shadow-sm border border-slate-200 p-6 mt-6",children:[(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-lg font-semibold text-slate-900 mb-4",children:[(0,a.jsx)(b.Z,{className:"w-5 h-5"}),"Subscription & Billing"]}),D?(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"p-4 bg-slate-50 rounded-lg",children:[(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Plan"}),(0,a.jsx)("p",{className:"text-sm font-semibold text-slate-900 capitalize",children:D.tier})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Status"}),(0,a.jsx)("span",{className:(0,g.Z)("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium","valid"===D.status&&"bg-emerald-100 text-emerald-700","trial"===D.status&&"bg-blue-100 text-blue-700","expired"===D.status&&"bg-red-100 text-red-700",(!D.status||"unknown"===D.status)&&"bg-slate-100 text-slate-600"),children:D.status})]}),D.keyMasked&&"(trial)"!==D.keyMasked&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"License Key"}),(0,a.jsx)("p",{className:"text-sm font-mono text-slate-700",children:D.keyMasked})]}),D.email&&(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-sm font-medium text-slate-500 mb-1",children:"Email"}),(0,a.jsx)("p",{className:"text-sm text-slate-700",children:D.email})]})]}),(0,a.jsx)("p",{className:"text-xs text-slate-500 mt-3",children:D.message})]}),(0,a.jsxs)("a",{href:"https://vibebusiness.com/pricing",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 text-sm text-emerald-600 hover:text-emerald-700 font-medium",children:[(0,a.jsx)(j.Z,{className:"w-3.5 h-3.5"}),"Manage Subscription"]})]}):(0,a.jsxs)("p",{className:"text-sm text-slate-500",children:["License information unavailable. Run ",(0,a.jsx)("code",{className:"text-xs bg-slate-100 px-1.5 py-0.5 rounded",children:"vibebusiness init"})," to set up."]}),(0,a.jsxs)("div",{className:"mt-6 pt-6 border-t border-slate-200",children:[(0,a.jsxs)("h3",{className:"flex items-center gap-2 text-sm font-semibold text-slate-700 mb-2",children:[(0,a.jsx)(N.Z,{className:"w-4 h-4"}),"Enter License Key"]}),(0,a.jsx)("p",{className:"text-sm text-slate-500 mb-3",children:"Activate a license key purchased from vibebusiness.com."}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)("input",{type:"text",value:K,onChange:e=>U(e.target.value),className:"input font-mono text-sm flex-1",placeholder:"PRO-xxxxxxxxxxxx",onKeyDown:e=>"Enter"===e.key&&Q()}),(0,a.jsxs)("button",{onClick:Q,className:"btn btn-primary gap-2 text-sm whitespace-nowrap",disabled:z||!K.trim(),children:[z?(0,a.jsx)(n.Z,{className:"w-4 h-4 animate-spin"}):(0,a.jsx)(N.Z,{className:"w-4 h-4"}),"Activate"]})]}),H&&(0,a.jsx)("div",{className:(0,g.Z)("mt-3 p-3 rounded-lg text-sm","success"===H.type?"bg-emerald-50 border border-emerald-200 text-emerald-700":"bg-red-50 border border-red-200 text-red-700"),children:H.text})]})]})]})}):(0,a.jsx)(f.default,{children:(0,a.jsx)("div",{className:"p-6",children:(0,a.jsx)("div",{className:"bg-red-50 border border-red-200 rounded-lg p-4 text-red-700",children:"Failed to load configuration. Please check that data/config.json exists."})})})}},1259:function(e,s,t){"use strict";t.d(s,{default:function(){return N}});var a=t(7437),l=t(7648),n=t(9376),i=t(5929),r=t(5466),c=t(2048),d=t(8896),o=t(8220),m=t(2718),x=t(5621),h=t(8728),p=t(2222),u=t(2023),b=t(1994);let j=[{href:"/briefing",label:"Briefing",icon:(0,a.jsx)(i.Z,{size:18})},{href:"/kanban",label:"Dashboard",icon:(0,a.jsx)(r.Z,{className:"w-5 h-5"})},{href:"/roadmap",label:"Roadmap",icon:(0,a.jsx)(c.Z,{className:"w-5 h-5"})},{href:"/goals",label:"Goals",icon:(0,a.jsx)(d.Z,{className:"w-5 h-5"})},{href:"/hypotheses",label:"Hypotheses",icon:(0,a.jsx)(o.Z,{className:"w-5 h-5"})},{href:"/social",label:"Social",icon:(0,a.jsx)(m.Z,{className:"w-5 h-5"})},{href:"/sessions",label:"Sessions",icon:(0,a.jsx)(x.Z,{className:"w-5 h-5"})},{href:"/settings",label:"Settings",icon:(0,a.jsx)(h.Z,{className:"w-5 h-5"})}];function N(e){let{children:s}=e,t=(0,n.usePathname)();return(0,a.jsxs)("div",{className:"min-h-screen flex",children:[(0,a.jsxs)("aside",{className:"w-64 bg-slate-900 text-white flex flex-col",children:[(0,a.jsx)("div",{className:"p-4 border-b border-slate-700",children:(0,a.jsxs)(l.default,{href:"/",className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"w-10 h-10 bg-emerald-500 rounded-lg flex items-center justify-center",children:(0,a.jsx)(p.Z,{className:"w-6 h-6 text-white"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"font-bold text-lg leading-tight",children:"Analyst"}),(0,a.jsx)("p",{className:"text-xs text-slate-400",children:"AI Product Manager"})]})]})}),(0,a.jsx)("nav",{className:"flex-1 p-4",children:(0,a.jsx)("ul",{className:"space-y-1",children:j.map(e=>{let s=t.startsWith(e.href);return(0,a.jsx)("li",{children:(0,a.jsxs)(l.default,{href:e.href,className:(0,b.Z)("flex items-center gap-3 px-3 py-2 rounded-lg transition-colors",s?"bg-slate-800 text-white":"text-slate-400 hover:text-white hover:bg-slate-800"),children:[e.icon,(0,a.jsx)("span",{children:e.label})]})},e.href)})})}),(0,a.jsx)("div",{className:"p-4 border-t border-slate-700",children:(0,a.jsxs)("div",{className:"flex items-center gap-2 text-xs text-slate-500",children:[(0,a.jsx)(u.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Powered by Claude"})]})})]}),(0,a.jsx)("main",{className:"flex-1 overflow-auto",children:s})]})}}},function(e){e.O(0,[972,930,971,117,744],function(){return e(e.s=9523)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[674],{9830:function(e,t,s){Promise.resolve().then(s.bind(s,4687))},4687:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return C}});var a=s(7437),r=s(2265),l=s(9397),n=s(7168),i=s(9322),d=s(6399),c=s(4743),o=s(1259),x=s(505),m=s(2489),h=s(401),u=s(2135),b=s(875),g=s(6362),p=s(2208),f=s(8997),j=s(1178),N=s(2718),w=s(525),v=s(1239),y=s(5675),_=s(8930),k=s(1994),S=s(6153);function Z(e){let{draft:t,onPublish:s,onEdit:l,onDiscard:n}=e,[i,d]=(0,r.useState)(!1),[o,Z]=(0,r.useState)(t.text),[C,P]=(0,r.useState)(!1),[E,A]=(0,r.useState)(!1),T=i?o.length:t.text.length,R=T>280,D="draft"===t.status;async function I(){P(!0);try{await s(t.id)}finally{P(!1)}}async function F(){if(!R&&o.trim()){P(!0);try{await l(t.id,o),d(!1)}finally{P(!1)}}}async function L(){P(!0);try{await n(t.id)}finally{P(!1)}}return(0,a.jsxs)("div",{className:(0,k.Z)("border rounded-lg p-4 transition-colors",D?"bg-white border-slate-200":"bg-slate-50 border-slate-100"),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:(0,k.Z)("text-xs px-2 py-0.5 rounded-full font-medium",S.Q_[t.source]),children:S.PN[t.source]}),t.is_thread&&t.thread_tweets&&(0,a.jsxs)("span",{className:"text-xs px-2 py-0.5 rounded-full font-medium bg-indigo-50 text-indigo-600 border border-indigo-200",children:[t.thread_tweets.length," tweets"]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[t.scheduled_date&&(0,a.jsxs)("span",{className:"text-xs text-slate-500 flex items-center gap-1",children:[(0,a.jsx)(x.Z,{className:"w-3 h-3"}),new Date(t.scheduled_date+"T00:00:00").toLocaleDateString("en-US",{weekday:"short",month:"short",day:"numeric"})]}),(0,a.jsx)("span",{className:"text-xs text-slate-400",children:new Date(t.created_at).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})})]})]}),i?(0,a.jsxs)("div",{className:"mb-3",children:[(0,a.jsx)("textarea",{value:o,onChange:e=>Z(e.target.value),className:"w-full border border-slate-300 rounded-md p-3 text-sm resize-none focus:outline-none focus:ring-2 focus:ring-blue-500",rows:4,maxLength:300}),(0,a.jsxs)("div",{className:"flex items-center justify-between mt-1",children:[(0,a.jsxs)("span",{className:(0,k.Z)("text-xs",R?"text-red-500 font-medium":"text-slate-400"),children:[T,"/280"]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsxs)("button",{onClick:()=>{d(!1),Z(t.text)},className:"text-xs text-slate-500 hover:text-slate-700 flex items-center gap-1",disabled:C,children:[(0,a.jsx)(m.Z,{className:"w-3 h-3"})," Cancel"]}),(0,a.jsxs)("button",{onClick:F,className:"text-xs text-blue-600 hover:text-blue-800 flex items-center gap-1 disabled:opacity-50",disabled:C||R||!o.trim(),children:[(0,a.jsx)(h.Z,{className:"w-3 h-3"})," Save"]})]})]})]}):(0,a.jsxs)("div",{className:"mb-3",children:[(0,a.jsx)("p",{className:"text-sm text-slate-800 whitespace-pre-wrap leading-relaxed",children:t.text}),D&&!t.is_thread&&(0,a.jsx)("div",{className:"mt-1",children:(0,a.jsxs)("span",{className:(0,k.Z)("text-xs",T>260?"text-amber-500":"text-slate-400"),children:[T,"/280"]})}),t.is_thread&&t.thread_tweets&&t.thread_tweets.length>1&&(0,a.jsxs)("div",{className:"mt-3",children:[(0,a.jsxs)("button",{onClick:()=>A(!E),className:"text-xs text-indigo-600 hover:text-indigo-800 flex items-center gap-1 transition-colors",children:[E?(0,a.jsx)(u.Z,{className:"w-3 h-3"}):(0,a.jsx)(b.Z,{className:"w-3 h-3"}),E?"Collapse thread":"Show all ".concat(t.thread_tweets.length," tweets")]}),E&&(0,a.jsx)("div",{className:"mt-2 space-y-2 border-l-2 border-indigo-200 pl-3",children:t.thread_tweets.slice(1).map((e,t)=>(0,a.jsxs)("div",{className:"text-sm text-slate-700 whitespace-pre-wrap leading-relaxed",children:[(0,a.jsxs)("span",{className:"text-xs font-medium text-indigo-400 mr-1",children:[t+2,"/"]}),e]},t))})]})]}),"published"===t.status&&t.tweet_url&&(0,a.jsxs)("div",{className:"mb-3 space-y-2",children:[(0,a.jsxs)("a",{href:t.tweet_url,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-blue-500 hover:text-blue-700 flex items-center gap-1",children:[(0,a.jsx)(g.Z,{className:"w-3 h-3"}),"View on X"]}),t.engagement_history&&t.engagement_history.length>0&&(()=>{let e=t.engagement_history[t.engagement_history.length-1],s=100*e.engagement_rate;return(0,a.jsxs)("div",{className:"flex flex-wrap gap-3 text-xs text-slate-500 pt-1",children:[(0,a.jsxs)("span",{className:"flex items-center gap-1",title:"Impressions",children:[(0,a.jsx)(p.Z,{className:"w-3 h-3"}),e.impressions.toLocaleString()]}),(0,a.jsxs)("span",{className:"flex items-center gap-1",title:"Likes",children:[(0,a.jsx)(f.Z,{className:"w-3 h-3"}),e.likes]}),(0,a.jsxs)("span",{className:"flex items-center gap-1",title:"Bookmarks (10x algorithm weight)",children:[(0,a.jsx)(j.Z,{className:"w-3 h-3"}),e.bookmarks]}),(0,a.jsxs)("span",{className:"flex items-center gap-1",title:"Replies",children:[(0,a.jsx)(N.Z,{className:"w-3 h-3"}),e.replies]}),(0,a.jsxs)("span",{className:"flex items-center gap-1",title:"Retweets",children:[(0,a.jsx)(w.Z,{className:"w-3 h-3"}),e.retweets]}),(0,a.jsxs)("span",{className:(0,k.Z)("flex items-center gap-1 font-medium",s>=2?"text-emerald-600":s>=1?"text-amber-600":"text-red-500"),title:"Engagement rate",children:[(0,a.jsx)(v.Z,{className:"w-3 h-3"}),s.toFixed(2),"%"]})]})})(),t.self_reply_id&&(0,a.jsxs)("span",{className:"text-xs text-emerald-600 flex items-center gap-1",children:[(0,a.jsx)(v.Z,{className:"w-3 h-3"}),"Algorithm boost active (self-reply)"]})]}),D&&!i&&(0,a.jsxs)("div",{className:"flex items-center gap-2 pt-3 border-t border-slate-100",children:[(0,a.jsxs)("button",{onClick:I,className:"flex items-center gap-1.5 px-3 py-1.5 bg-slate-900 text-white text-xs rounded-md hover:bg-slate-800 disabled:opacity-50 transition-colors",disabled:C,children:[(0,a.jsx)(c.Z,{className:"w-3 h-3"}),C?"Publishing...":"Publish"]}),(0,a.jsxs)("button",{onClick:()=>d(!0),className:"flex items-center gap-1.5 px-3 py-1.5 border border-slate-200 text-slate-600 text-xs rounded-md hover:bg-slate-50 disabled:opacity-50 transition-colors",disabled:C,children:[(0,a.jsx)(y.Z,{className:"w-3 h-3"}),"Edit"]}),(0,a.jsxs)("button",{onClick:L,className:"flex items-center gap-1.5 px-3 py-1.5 text-red-500 text-xs rounded-md hover:bg-red-50 disabled:opacity-50 transition-colors ml-auto",disabled:C,children:[(0,a.jsx)(_.Z,{className:"w-3 h-3"}),"Discard"]})]})]})}function C(){var e;let[t,s]=(0,r.useState)(null),[x,m]=(0,r.useState)(!0),[h,u]=(0,r.useState)(null),[b,g]=(0,r.useState)(!1),[p,f]=(0,r.useState)(""),[j,N]=(0,r.useState)(!1),w=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/social"),t=await e.json();t.success?(s(t.data),u(null)):u(t.error||"Failed to load social data")}catch(e){u("Failed to connect to server")}finally{m(!1)}},[]);async function v(e){let t=await fetch("/api/social/".concat(e,"/publish"),{method:"POST"}),s=await t.json();if(!s.success){alert(s.error||"Failed to publish");return}await w()}async function y(e,t){let s=await fetch("/api/social/".concat(e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({text:t})}),a=await s.json();if(!a.success){alert(a.error||"Failed to update");return}await w()}async function _(e){let t=await fetch("/api/social/".concat(e),{method:"DELETE"}),s=await t.json();if(!s.success){alert(s.error||"Failed to discard");return}await w()}async function k(){if(p.trim()&&!(p.length>280)){N(!0);try{let e=await fetch("/api/social",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({text:p})}),t=await e.json();t.success?(f(""),g(!1),await w()):alert(t.error||"Failed to create draft")}finally{N(!1)}}}(0,r.useEffect)(()=>{w()},[w]);let S=(null==t?void 0:t.drafts.filter(e=>"draft"===e.status))||[],C=(null==t?void 0:t.drafts.filter(e=>"published"===e.status).sort((e,t)=>(t.published_at||"").localeCompare(e.published_at||"")))||[];return(0,a.jsx)(o.default,{children:(0,a.jsxs)("div",{className:"p-6 max-w-3xl mx-auto",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-6",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-2xl font-bold text-slate-900",children:"Social Media"}),(0,a.jsx)("p",{className:"text-sm text-slate-500 mt-1",children:"Review and publish tweet drafts for your build-in-public journey."})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsxs)("button",{onClick:()=>g(!0),className:"flex items-center gap-1.5 px-3 py-2 bg-slate-900 text-white text-sm rounded-lg hover:bg-slate-800 transition-colors",children:[(0,a.jsx)(l.Z,{className:"w-4 h-4"}),"New Draft"]}),(0,a.jsx)("button",{onClick:()=>{m(!0),w()},className:"p-2 text-slate-400 hover:text-slate-600 transition-colors",title:"Refresh",children:(0,a.jsx)(n.Z,{className:"w-4 h-4 ".concat(x?"animate-spin":"")})})]})]}),t&&!t.metrics.credentials_valid&&(0,a.jsxs)("div",{className:"mb-6 p-4 bg-amber-50 border border-amber-200 rounded-lg flex items-start gap-3",children:[(0,a.jsx)(i.Z,{className:"w-5 h-5 text-amber-500 mt-0.5 flex-shrink-0"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-sm font-medium text-amber-800",children:"X/Twitter not connected"}),(0,a.jsxs)("p",{className:"text-xs text-amber-600 mt-1",children:["Add X_API_KEY, X_API_SECRET, X_ACCESS_TOKEN, and X_ACCESS_SECRET to your .env file, then run the ",(0,a.jsx)("code",{className:"bg-amber-100 px-1 rounded",children:"social-setup-x"})," task."]})]})]}),t&&t.metrics.credentials_valid&&(0,a.jsxs)("div",{className:"mb-6 grid grid-cols-4 gap-4",children:[(0,a.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-3 text-center",children:[(0,a.jsx)("p",{className:"text-xs text-slate-500",children:"Account"}),(0,a.jsx)("p",{className:"text-sm font-medium text-slate-900 mt-1",children:t.metrics.username||"—"})]}),(0,a.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-3 text-center",children:[(0,a.jsx)("p",{className:"text-xs text-slate-500",children:"Followers"}),(0,a.jsx)("p",{className:"text-sm font-medium text-slate-900 mt-1",children:null!==(e=t.metrics.followers_count)&&void 0!==e?e:"—"})]}),(0,a.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-3 text-center",children:[(0,a.jsxs)("p",{className:"text-xs text-slate-500 flex items-center justify-center gap-1",children:[(0,a.jsx)(d.Z,{className:"w-3 h-3"})," Streak"]}),(0,a.jsxs)("p",{className:"text-sm font-medium text-slate-900 mt-1",children:[t.metrics.post_streak_days," day",1!==t.metrics.post_streak_days?"s":""]})]}),(0,a.jsxs)("div",{className:"bg-white border border-slate-200 rounded-lg p-3 text-center",children:[(0,a.jsx)("p",{className:"text-xs text-slate-500",children:"Total Posts"}),(0,a.jsx)("p",{className:"text-sm font-medium text-slate-900 mt-1",children:t.metrics.total_posts})]})]}),b&&(0,a.jsxs)("div",{className:"mb-6 bg-white border border-slate-200 rounded-lg p-4",children:[(0,a.jsx)("h3",{className:"text-sm font-medium text-slate-900 mb-2",children:"Compose Tweet"}),(0,a.jsx)("textarea",{value:p,onChange:e=>f(e.target.value),className:"w-full border border-slate-300 rounded-md p-3 text-sm resize-none focus:outline-none focus:ring-2 focus:ring-blue-500",rows:4,placeholder:"What's happening with your product?",maxLength:300,autoFocus:!0}),(0,a.jsxs)("div",{className:"flex items-center justify-between mt-2",children:[(0,a.jsxs)("span",{className:"text-xs ".concat(p.length>280?"text-red-500 font-medium":"text-slate-400"),children:[p.length,"/280"]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)("button",{onClick:()=>{g(!1),f("")},className:"px-3 py-1.5 text-sm text-slate-500 hover:text-slate-700",children:"Cancel"}),(0,a.jsxs)("button",{onClick:k,className:"flex items-center gap-1.5 px-3 py-1.5 bg-slate-900 text-white text-sm rounded-md hover:bg-slate-800 disabled:opacity-50 transition-colors",disabled:j||!p.trim()||p.length>280,children:[(0,a.jsx)(c.Z,{className:"w-3 h-3"}),"Save Draft"]})]})]})]}),x&&!t&&(0,a.jsxs)("div",{className:"text-center py-12",children:[(0,a.jsx)(n.Z,{className:"w-6 h-6 animate-spin text-slate-400 mx-auto"}),(0,a.jsx)("p",{className:"text-sm text-slate-500 mt-2",children:"Loading drafts..."})]}),h&&(0,a.jsx)("div",{className:"text-center py-12",children:(0,a.jsx)("p",{className:"text-sm text-red-500",children:h})}),t&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"mb-4",children:(0,a.jsxs)("h2",{className:"text-lg font-semibold text-slate-900",children:["Drafts (",S.length,")"]})}),0===S.length?(0,a.jsx)("div",{className:"text-center py-8 bg-slate-50 rounded-lg border border-dashed border-slate-200",children:(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"No pending drafts. The heartbeat will generate drafts as you ship features and hit milestones."})}):(0,a.jsx)("div",{className:"space-y-3 mb-8",children:S.map(e=>(0,a.jsx)(Z,{draft:e,onPublish:v,onEdit:y,onDiscard:_},e.id))}),C.length>0&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"mb-4 mt-8",children:(0,a.jsxs)("h2",{className:"text-lg font-semibold text-slate-900",children:["Published (",C.length,")"]})}),(0,a.jsx)("div",{className:"space-y-3",children:C.map(e=>(0,a.jsx)(Z,{draft:e,onPublish:v,onEdit:y,onDiscard:_},e.id))})]})]})]})})}},1259:function(e,t,s){"use strict";s.d(t,{default:function(){return f}});var a=s(7437),r=s(7648),l=s(9376),n=s(5929),i=s(5466),d=s(2048),c=s(8896),o=s(8220),x=s(2718),m=s(5621),h=s(8728),u=s(2222),b=s(2023),g=s(1994);let p=[{href:"/briefing",label:"Briefing",icon:(0,a.jsx)(n.Z,{size:18})},{href:"/kanban",label:"Dashboard",icon:(0,a.jsx)(i.Z,{className:"w-5 h-5"})},{href:"/roadmap",label:"Roadmap",icon:(0,a.jsx)(d.Z,{className:"w-5 h-5"})},{href:"/goals",label:"Goals",icon:(0,a.jsx)(c.Z,{className:"w-5 h-5"})},{href:"/hypotheses",label:"Hypotheses",icon:(0,a.jsx)(o.Z,{className:"w-5 h-5"})},{href:"/social",label:"Social",icon:(0,a.jsx)(x.Z,{className:"w-5 h-5"})},{href:"/sessions",label:"Sessions",icon:(0,a.jsx)(m.Z,{className:"w-5 h-5"})},{href:"/settings",label:"Settings",icon:(0,a.jsx)(h.Z,{className:"w-5 h-5"})}];function f(e){let{children:t}=e,s=(0,l.usePathname)();return(0,a.jsxs)("div",{className:"min-h-screen flex",children:[(0,a.jsxs)("aside",{className:"w-64 bg-slate-900 text-white flex flex-col",children:[(0,a.jsx)("div",{className:"p-4 border-b border-slate-700",children:(0,a.jsxs)(r.default,{href:"/",className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"w-10 h-10 bg-emerald-500 rounded-lg flex items-center justify-center",children:(0,a.jsx)(u.Z,{className:"w-6 h-6 text-white"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"font-bold text-lg leading-tight",children:"Analyst"}),(0,a.jsx)("p",{className:"text-xs text-slate-400",children:"AI Product Manager"})]})]})}),(0,a.jsx)("nav",{className:"flex-1 p-4",children:(0,a.jsx)("ul",{className:"space-y-1",children:p.map(e=>{let t=s.startsWith(e.href);return(0,a.jsx)("li",{children:(0,a.jsxs)(r.default,{href:e.href,className:(0,g.Z)("flex items-center gap-3 px-3 py-2 rounded-lg transition-colors",t?"bg-slate-800 text-white":"text-slate-400 hover:text-white hover:bg-slate-800"),children:[e.icon,(0,a.jsx)("span",{children:e.label})]})},e.href)})})}),(0,a.jsx)("div",{className:"p-4 border-t border-slate-700",children:(0,a.jsxs)("div",{className:"flex items-center gap-2 text-xs text-slate-500",children:[(0,a.jsx)(b.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Powered by Claude"})]})})]}),(0,a.jsx)("main",{className:"flex-1 overflow-auto",children:t})]})}},6153:function(e,t,s){"use strict";s.d(t,{G:function(){return i},GK:function(){return k},Gs:function(){return o},Hs:function(){return a},PN:function(){return u},PW:function(){return y},Q_:function(){return b},R$:function(){return w},Vr:function(){return x},Wb:function(){return h},aR:function(){return m},bi:function(){return d},en:function(){return N},i2:function(){return j},kT:function(){return g},l5:function(){return p},lE:function(){return v},lv:function(){return n},pG:function(){return r},rF:function(){return c},tV:function(){return f},tl:function(){return _},xP:function(){return S},yb:function(){return l}});let a={product:"Product",ux_design:"UX/Design",growth:"Growth",performance:"Performance",tech_debt:"Tech Debt",security:"Security",infrastructure:"Infrastructure",content:"Content",analytics:"Analytics",integration:"Integration"},r={product:"bg-blue-100 text-blue-800",ux_design:"bg-purple-100 text-purple-800",growth:"bg-green-100 text-green-800",performance:"bg-orange-100 text-orange-800",tech_debt:"bg-yellow-100 text-yellow-800",security:"bg-red-100 text-red-800",infrastructure:"bg-gray-100 text-gray-800",content:"bg-pink-100 text-pink-800",analytics:"bg-cyan-100 text-cyan-800",integration:"bg-indigo-100 text-indigo-800"},l={inbox:"Inbox",under_review:"Under Review",approved:"Approved",in_progress:"In Progress",testing:"Testing",shipped:"Shipped",deferred:"Deferred",rejected:"Rejected",rolled_back:"Rolled Back"},n={inbox:"bg-amber-500",under_review:"bg-blue-500",approved:"bg-emerald-500",in_progress:"bg-violet-500",testing:"bg-cyan-500",shipped:"bg-green-500",deferred:"bg-gray-500",rejected:"bg-red-500",rolled_back:"bg-orange-500"},i=["inbox","under_review","approved","in_progress","testing","shipped"],d={xs:"XS",s:"S",m:"M",l:"L",xl:"XL"},c={critical:"Critical",high:"High",medium:"Medium",low:"Low"},o={critical:"bg-red-100 text-red-800 border-red-300",high:"bg-orange-100 text-orange-800 border-orange-300",medium:"bg-yellow-100 text-yellow-800 border-yellow-300",low:"bg-gray-100 text-gray-800 border-gray-300"},x={codebase_analysis:"Codebase Analysis",metrics_review:"Metrics Review",market_research:"Market Research",seo_audit:"SEO Audit",growth_distribution:"Growth Distribution",manual:"Manual"},m={pending:"bg-slate-100 text-slate-700",validated:"bg-emerald-100 text-emerald-800",needs_investigation:"bg-amber-100 text-amber-800",inconclusive:"bg-slate-100 text-slate-600",invalidated:"bg-red-100 text-red-800"},h={pending:"Pending",validated:"Validated",needs_investigation:"Needs Investigation",inconclusive:"Inconclusive",invalidated:"Invalidated"},u={ship:"Ship",update:"Update",milestone:"Milestone",digest:"Digest",manual:"Manual",thread:"Thread",insight:"Insight"},b={ship:"bg-green-100 text-green-800",update:"bg-blue-100 text-blue-800",milestone:"bg-amber-100 text-amber-800",digest:"bg-purple-100 text-purple-800",manual:"bg-slate-100 text-slate-800",thread:"bg-indigo-100 text-indigo-800",insight:"bg-cyan-100 text-cyan-800"},g={acquisition:"Acquisition",activation:"Activation",retention:"Retention",revenue:"Revenue",referral:"Referral"},p={acquisition:"bg-blue-100 text-blue-800",activation:"bg-emerald-100 text-emerald-800",retention:"bg-purple-100 text-purple-800",revenue:"bg-amber-100 text-amber-800",referral:"bg-pink-100 text-pink-800"},f={on_track:"On Track",at_risk:"At Risk",behind:"Behind",achieved:"Achieved"},j={on_track:"bg-emerald-100 text-emerald-800 border-emerald-300",at_risk:"bg-amber-100 text-amber-800 border-amber-300",behind:"bg-red-100 text-red-800 border-red-300",achieved:"bg-blue-100 text-blue-800 border-blue-300"},N={manual:"Manual",rest_api:"REST API",posthog:"PostHog",firestore:"Firestore",stripe:"Stripe",whatsapp:"WhatsApp"},w={stated:"Stated",testing:"Testing",validated:"Validated",invalidated:"Invalidated",deferred:"Deferred"},v={stated:"bg-slate-100 text-slate-800 border-slate-300",testing:"bg-amber-100 text-amber-800 border-amber-300",validated:"bg-emerald-100 text-emerald-800 border-emerald-300",invalidated:"bg-red-100 text-red-800 border-red-300",deferred:"bg-slate-100 text-slate-500 border-slate-200"},y={acquisition:"Acquisition",engagement:"Engagement",conversion:"Conversion",monetization:"Monetization"},_={acquisition:"bg-blue-100 text-blue-800",engagement:"bg-purple-100 text-purple-800",conversion:"bg-amber-100 text-amber-800",monetization:"bg-emerald-100 text-emerald-800"},k={planned:"Planned",active:"Active",completed:"Completed",paused:"Paused"},S={planned:"bg-slate-100 text-slate-700 border-slate-300",active:"bg-blue-100 text-blue-800 border-blue-300",completed:"bg-emerald-100 text-emerald-800 border-emerald-300",paused:"bg-amber-100 text-amber-800 border-amber-300"}}},function(e){e.O(0,[972,159,971,117,744],function(){return e(e.s=9830)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[704],{7891:function(n,e,u){Promise.resolve().then(u.t.bind(u,2972,23))}},function(n){n.O(0,[972,971,117,744],function(){return n(n.s=7891)}),_N_E=n.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[940],{1554:function(e,t,s){Promise.resolve().then(s.bind(s,9525))},9205:function(e,t,s){"use strict";s.d(t,{Z:function(){return c}});var a=s(2265);let r=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),n=function(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return t.filter((e,t,s)=>!!e&&s.indexOf(e)===t).join(" ")};var l={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,a.forwardRef)((e,t)=>{let{color:s="currentColor",size:r=24,strokeWidth:i=2,absoluteStrokeWidth:c,className:d="",children:o,iconNode:m,...h}=e;return(0,a.createElement)("svg",{ref:t,...l,width:r,height:r,stroke:s,strokeWidth:c?24*Number(i)/Number(r):i,className:n("lucide",d),...h},[...m.map(e=>{let[t,s]=e;return(0,a.createElement)(t,s)}),...Array.isArray(o)?o:[o]])}),c=(e,t)=>{let s=(0,a.forwardRef)((s,l)=>{let{className:c,...d}=s;return(0,a.createElement)(i,{ref:l,iconNode:t,className:n("lucide-".concat(r(e)),c),...d})});return s.displayName="".concat(e),s}},2660:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},505:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]])},401:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]])},8867:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]])},2735:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]])},8736:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]])},2023:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]])},7648:function(e,t,s){"use strict";s.d(t,{default:function(){return r.a}});var a=s(2972),r=s.n(a)},9376:function(e,t,s){"use strict";var a=s(5475);s.o(a,"usePathname")&&s.d(t,{usePathname:function(){return a.usePathname}}),s.o(a,"useRouter")&&s.d(t,{useRouter:function(){return a.useRouter}})},9525:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return u}});var a=s(7437),r=s(2265),n=s(2660),l=s(505),i=s(2023),c=s(8736),d=s(401),o=s(8867),m=s(2735),h=s(7648),x=s(9376);function u(){let e=(0,x.useRouter)(),[t,s]=(0,r.useState)(!1),[u,p]=(0,r.useState)("last_30"),[g,j]=(0,r.useState)(!0),[f,b]=(0,r.useState)(null),[y,w]=(0,r.useState)(!1),[N,v]=(0,r.useState)(null),k=async()=>{s(!0),v(null);try{let e=await fetch("/api/investor-updates/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dateRange:u,includeAI:g})});if(!e.ok){let t=(await e.json()).error||"Failed to generate update";console.error("API error:",t),v(t);return}let t=await e.json();b(t)}catch(e){console.error("Error generating update:",e),v(e instanceof Error?e.message:"Network error. Please try again.")}finally{s(!1)}},Z=async()=>{f&&(await navigator.clipboard.writeText(f.markdown),w(!0),setTimeout(()=>w(!1),2e3))};return(0,a.jsxs)("div",{className:"min-h-screen bg-slate-50",children:[(0,a.jsx)("div",{className:"bg-white border-b border-slate-200 px-6 py-4",children:(0,a.jsx)("div",{className:"max-w-7xl mx-auto flex items-center justify-between",children:(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)(h.default,{href:"/updates",className:"text-slate-600 hover:text-slate-900 transition-colors",children:(0,a.jsx)(n.Z,{className:"w-5 h-5"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-xl font-bold text-slate-900",children:"Generate Investor Update"}),(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"Create a compelling monthly update with AI narrative"})]})]})})}),(0,a.jsx)("div",{className:"max-w-7xl mx-auto p-6",children:(0,a.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[(0,a.jsxs)("div",{className:"bg-white rounded-lg border border-slate-200 p-6",children:[(0,a.jsx)("h2",{className:"text-lg font-semibold text-slate-900 mb-4",children:"Configuration"}),(0,a.jsxs)("div",{className:"mb-6",children:[(0,a.jsxs)("label",{className:"block text-sm font-medium text-slate-700 mb-2",children:[(0,a.jsx)(l.Z,{className:"w-4 h-4 inline mr-1"}),"Time Period"]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,a.jsx)("input",{type:"radio",name:"dateRange",value:"last_30",checked:"last_30"===u,onChange:e=>p(e.target.value),className:"w-4 h-4 text-emerald-600"}),(0,a.jsx)("span",{className:"text-sm text-slate-700",children:"Last 30 Days (Monthly)"})]}),(0,a.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,a.jsx)("input",{type:"radio",name:"dateRange",value:"last_90",checked:"last_90"===u,onChange:e=>p(e.target.value),className:"w-4 h-4 text-emerald-600"}),(0,a.jsx)("span",{className:"text-sm text-slate-700",children:"Last 90 Days (Quarterly)"})]}),(0,a.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer opacity-50",children:[(0,a.jsx)("input",{type:"radio",name:"dateRange",value:"custom",disabled:!0,className:"w-4 h-4 text-emerald-600"}),(0,a.jsx)("span",{className:"text-sm text-slate-700",children:"Custom Range (Coming Soon)"})]})]})]}),(0,a.jsxs)("div",{className:"mb-6",children:[(0,a.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,a.jsx)("input",{type:"checkbox",checked:g,onChange:e=>j(e.target.checked),className:"w-4 h-4 text-emerald-600 rounded"}),(0,a.jsx)(i.Z,{className:"w-4 h-4 text-emerald-500"}),(0,a.jsx)("span",{className:"text-sm font-medium text-slate-700",children:"Include AI Narrative (Recommended)"})]}),(0,a.jsx)("p",{className:"text-xs text-slate-500 ml-6 mt-1",children:"Generates executive summary, strategic context, and asks rationale"})]}),N&&(0,a.jsxs)("div",{className:"mb-4 p-4 bg-red-50 border border-red-200 rounded-lg",children:[(0,a.jsx)("p",{className:"text-sm text-red-700 font-medium",children:"Error"}),(0,a.jsx)("p",{className:"text-xs text-red-600 mt-1",children:N})]}),(0,a.jsx)("button",{onClick:k,disabled:t,className:"w-full flex items-center justify-center gap-2 px-4 py-3 bg-emerald-600 text-white rounded-lg hover:bg-emerald-700 transition-colors disabled:bg-slate-300 disabled:cursor-not-allowed",children:t?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"w-4 h-4 border-2 border-white border-t-transparent rounded-full animate-spin"}),(0,a.jsx)("span",{children:"Generating..."})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Generate Update"})]})}),(0,a.jsxs)("div",{className:"mt-6 p-4 bg-blue-50 border border-blue-200 rounded-lg",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-blue-900 mb-2",children:"What's included:"}),(0,a.jsxs)("ul",{className:"text-xs text-blue-700 space-y-1",children:[(0,a.jsx)("li",{children:"• Completed epics and shipped features"}),(0,a.jsx)("li",{children:"• Goal metrics with month-over-month growth"}),(0,a.jsx)("li",{children:"• Upcoming roadmap with strategic priorities"}),(0,a.jsx)("li",{children:"• Strategic insights from MEMORY.md"}),(0,a.jsx)("li",{children:"• AI-generated narrative (if enabled)"})]})]})]}),(0,a.jsxs)("div",{className:"bg-white rounded-lg border border-slate-200 p-6",children:[(0,a.jsx)("h2",{className:"text-lg font-semibold text-slate-900 mb-4",children:"Preview"}),f?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,a.jsx)("button",{onClick:Z,className:"flex items-center gap-1 px-3 py-2 text-sm bg-slate-100 hover:bg-slate-200 rounded-lg transition-colors",children:y?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.Z,{className:"w-4 h-4 text-emerald-600"}),(0,a.jsx)("span",{children:"Copied!"})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Copy Markdown"})]})}),(0,a.jsxs)("button",{onClick:()=>{if(!f)return;let e=new Blob([f.markdown],{type:"text/markdown"}),t=URL.createObjectURL(e),s=document.createElement("a");s.href=t,s.download="investor-update-".concat(new Date().toISOString().split("T")[0],".md"),s.click(),URL.revokeObjectURL(t)},className:"flex items-center gap-1 px-3 py-2 text-sm bg-slate-100 hover:bg-slate-200 rounded-lg transition-colors",children:[(0,a.jsx)(m.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Download"})]}),(0,a.jsxs)("button",{onClick:()=>{f&&e.push("/updates/".concat(f.id))},className:"flex items-center gap-1 px-3 py-2 text-sm bg-emerald-600 text-white hover:bg-emerald-700 rounded-lg transition-colors ml-auto",children:[(0,a.jsx)(c.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"View Details"})]})]}),(0,a.jsx)("div",{className:"prose prose-sm max-w-none overflow-auto max-h-[600px] p-4 bg-slate-50 rounded-lg border border-slate-200",children:(0,a.jsx)("pre",{className:"whitespace-pre-wrap text-xs font-mono",children:f.markdown})})]}):(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center h-64 text-center",children:[(0,a.jsx)(c.Z,{className:"w-12 h-12 text-slate-300 mb-4"}),(0,a.jsxs)("p",{className:"text-sm text-slate-500",children:["Configure your update and click Generate",(0,a.jsx)("br",{}),"to see a preview here"]})]})]})]})})]})}}},function(e){e.O(0,[972,971,117,744],function(){return e(e.s=1554)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[940],{3410:function(e,t,s){Promise.resolve().then(s.bind(s,9525))},9205:function(e,t,s){"use strict";s.d(t,{Z:function(){return c}});var a=s(2265);let r=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),n=function(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return t.filter((e,t,s)=>!!e&&s.indexOf(e)===t).join(" ")};var l={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,a.forwardRef)((e,t)=>{let{color:s="currentColor",size:r=24,strokeWidth:i=2,absoluteStrokeWidth:c,className:d="",children:o,iconNode:m,...h}=e;return(0,a.createElement)("svg",{ref:t,...l,width:r,height:r,stroke:s,strokeWidth:c?24*Number(i)/Number(r):i,className:n("lucide",d),...h},[...m.map(e=>{let[t,s]=e;return(0,a.createElement)(t,s)}),...Array.isArray(o)?o:[o]])}),c=(e,t)=>{let s=(0,a.forwardRef)((s,l)=>{let{className:c,...d}=s;return(0,a.createElement)(i,{ref:l,iconNode:t,className:n("lucide-".concat(r(e)),c),...d})});return s.displayName="".concat(e),s}},2660:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},505:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]])},401:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]])},8867:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]])},2735:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]])},8736:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]])},2023:function(e,t,s){"use strict";s.d(t,{Z:function(){return a}});let a=(0,s(9205).Z)("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]])},7648:function(e,t,s){"use strict";s.d(t,{default:function(){return r.a}});var a=s(2972),r=s.n(a)},9376:function(e,t,s){"use strict";var a=s(5475);s.o(a,"usePathname")&&s.d(t,{usePathname:function(){return a.usePathname}}),s.o(a,"useRouter")&&s.d(t,{useRouter:function(){return a.useRouter}})},9525:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return u}});var a=s(7437),r=s(2265),n=s(2660),l=s(505),i=s(2023),c=s(8736),d=s(401),o=s(8867),m=s(2735),h=s(7648),x=s(9376);function u(){let e=(0,x.useRouter)(),[t,s]=(0,r.useState)(!1),[u,p]=(0,r.useState)("last_30"),[g,j]=(0,r.useState)(!0),[f,b]=(0,r.useState)(null),[y,w]=(0,r.useState)(!1),[N,v]=(0,r.useState)(null),k=async()=>{s(!0),v(null);try{let e=await fetch("/api/investor-updates/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dateRange:u,includeAI:g})});if(!e.ok){let t=(await e.json()).error||"Failed to generate update";console.error("API error:",t),v(t);return}let t=await e.json();b(t)}catch(e){console.error("Error generating update:",e),v(e instanceof Error?e.message:"Network error. Please try again.")}finally{s(!1)}},Z=async()=>{f&&(await navigator.clipboard.writeText(f.markdown),w(!0),setTimeout(()=>w(!1),2e3))};return(0,a.jsxs)("div",{className:"min-h-screen bg-slate-50",children:[(0,a.jsx)("div",{className:"bg-white border-b border-slate-200 px-6 py-4",children:(0,a.jsx)("div",{className:"max-w-7xl mx-auto flex items-center justify-between",children:(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)(h.default,{href:"/updates",className:"text-slate-600 hover:text-slate-900 transition-colors",children:(0,a.jsx)(n.Z,{className:"w-5 h-5"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-xl font-bold text-slate-900",children:"Generate Investor Update"}),(0,a.jsx)("p",{className:"text-sm text-slate-500",children:"Create a compelling monthly update with AI narrative"})]})]})})}),(0,a.jsx)("div",{className:"max-w-7xl mx-auto p-6",children:(0,a.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[(0,a.jsxs)("div",{className:"bg-white rounded-lg border border-slate-200 p-6",children:[(0,a.jsx)("h2",{className:"text-lg font-semibold text-slate-900 mb-4",children:"Configuration"}),(0,a.jsxs)("div",{className:"mb-6",children:[(0,a.jsxs)("label",{className:"block text-sm font-medium text-slate-700 mb-2",children:[(0,a.jsx)(l.Z,{className:"w-4 h-4 inline mr-1"}),"Time Period"]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,a.jsx)("input",{type:"radio",name:"dateRange",value:"last_30",checked:"last_30"===u,onChange:e=>p(e.target.value),className:"w-4 h-4 text-emerald-600"}),(0,a.jsx)("span",{className:"text-sm text-slate-700",children:"Last 30 Days (Monthly)"})]}),(0,a.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,a.jsx)("input",{type:"radio",name:"dateRange",value:"last_90",checked:"last_90"===u,onChange:e=>p(e.target.value),className:"w-4 h-4 text-emerald-600"}),(0,a.jsx)("span",{className:"text-sm text-slate-700",children:"Last 90 Days (Quarterly)"})]}),(0,a.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer opacity-50",children:[(0,a.jsx)("input",{type:"radio",name:"dateRange",value:"custom",disabled:!0,className:"w-4 h-4 text-emerald-600"}),(0,a.jsx)("span",{className:"text-sm text-slate-700",children:"Custom Range (Coming Soon)"})]})]})]}),(0,a.jsxs)("div",{className:"mb-6",children:[(0,a.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,a.jsx)("input",{type:"checkbox",checked:g,onChange:e=>j(e.target.checked),className:"w-4 h-4 text-emerald-600 rounded"}),(0,a.jsx)(i.Z,{className:"w-4 h-4 text-emerald-500"}),(0,a.jsx)("span",{className:"text-sm font-medium text-slate-700",children:"Include AI Narrative (Recommended)"})]}),(0,a.jsx)("p",{className:"text-xs text-slate-500 ml-6 mt-1",children:"Generates executive summary, strategic context, and asks rationale"})]}),N&&(0,a.jsxs)("div",{className:"mb-4 p-4 bg-red-50 border border-red-200 rounded-lg",children:[(0,a.jsx)("p",{className:"text-sm text-red-700 font-medium",children:"Error"}),(0,a.jsx)("p",{className:"text-xs text-red-600 mt-1",children:N})]}),(0,a.jsx)("button",{onClick:k,disabled:t,className:"w-full flex items-center justify-center gap-2 px-4 py-3 bg-emerald-600 text-white rounded-lg hover:bg-emerald-700 transition-colors disabled:bg-slate-300 disabled:cursor-not-allowed",children:t?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"w-4 h-4 border-2 border-white border-t-transparent rounded-full animate-spin"}),(0,a.jsx)("span",{children:"Generating..."})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Generate Update"})]})}),(0,a.jsxs)("div",{className:"mt-6 p-4 bg-blue-50 border border-blue-200 rounded-lg",children:[(0,a.jsx)("h3",{className:"text-sm font-semibold text-blue-900 mb-2",children:"What's included:"}),(0,a.jsxs)("ul",{className:"text-xs text-blue-700 space-y-1",children:[(0,a.jsx)("li",{children:"• Completed epics and shipped features"}),(0,a.jsx)("li",{children:"• Goal metrics with month-over-month growth"}),(0,a.jsx)("li",{children:"• Upcoming roadmap with strategic priorities"}),(0,a.jsx)("li",{children:"• Strategic insights from MEMORY.md"}),(0,a.jsx)("li",{children:"• AI-generated narrative (if enabled)"})]})]})]}),(0,a.jsxs)("div",{className:"bg-white rounded-lg border border-slate-200 p-6",children:[(0,a.jsx)("h2",{className:"text-lg font-semibold text-slate-900 mb-4",children:"Preview"}),f?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,a.jsx)("button",{onClick:Z,className:"flex items-center gap-1 px-3 py-2 text-sm bg-slate-100 hover:bg-slate-200 rounded-lg transition-colors",children:y?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.Z,{className:"w-4 h-4 text-emerald-600"}),(0,a.jsx)("span",{children:"Copied!"})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Copy Markdown"})]})}),(0,a.jsxs)("button",{onClick:()=>{if(!f)return;let e=new Blob([f.markdown],{type:"text/markdown"}),t=URL.createObjectURL(e),s=document.createElement("a");s.href=t,s.download="investor-update-".concat(new Date().toISOString().split("T")[0],".md"),s.click(),URL.revokeObjectURL(t)},className:"flex items-center gap-1 px-3 py-2 text-sm bg-slate-100 hover:bg-slate-200 rounded-lg transition-colors",children:[(0,a.jsx)(m.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"Download"})]}),(0,a.jsxs)("button",{onClick:()=>{f&&e.push("/updates/".concat(f.id))},className:"flex items-center gap-1 px-3 py-2 text-sm bg-emerald-600 text-white hover:bg-emerald-700 rounded-lg transition-colors ml-auto",children:[(0,a.jsx)(c.Z,{className:"w-4 h-4"}),(0,a.jsx)("span",{children:"View Details"})]})]}),(0,a.jsx)("div",{className:"prose prose-sm max-w-none overflow-auto max-h-[600px] p-4 bg-slate-50 rounded-lg border border-slate-200",children:(0,a.jsx)("pre",{className:"whitespace-pre-wrap text-xs font-mono",children:f.markdown})})]}):(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center h-64 text-center",children:[(0,a.jsx)(c.Z,{className:"w-12 h-12 text-slate-300 mb-4"}),(0,a.jsxs)("p",{className:"text-sm text-slate-500",children:["Configure your update and click Generate",(0,a.jsx)("br",{}),"to see a preview here"]})]})]})]})})]})}}},function(e){e.O(0,[972,971,117,744],function(){return e(e.s=3410)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[346],{5978:function(e,t,a){Promise.resolve().then(a.t.bind(a,2972,23)),Promise.resolve().then(a.bind(a,1259))},9205:function(e,t,a){"use strict";a.d(t,{Z:function(){return c}});var r=a(2265);let s=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),n=function(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return t.filter((e,t,a)=>!!e&&a.indexOf(e)===t).join(" ")};var l={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,r.forwardRef)((e,t)=>{let{color:a="currentColor",size:s=24,strokeWidth:i=2,absoluteStrokeWidth:c,className:h="",children:o,iconNode:u,...d}=e;return(0,r.createElement)("svg",{ref:t,...l,width:s,height:s,stroke:a,strokeWidth:c?24*Number(i)/Number(s):i,className:n("lucide",h),...d},[...u.map(e=>{let[t,a]=e;return(0,r.createElement)(t,a)}),...Array.isArray(o)?o:[o]])}),c=(e,t)=>{let a=(0,r.forwardRef)((a,l)=>{let{className:c,...h}=a;return(0,r.createElement)(i,{ref:l,iconNode:t,className:n("lucide-".concat(s(e)),c),...h})});return a.displayName="".concat(e),a}},2222:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]])},8220:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("FlaskConical",[["path",{d:"M10 2v7.527a2 2 0 0 1-.211.896L4.72 20.55a1 1 0 0 0 .9 1.45h12.76a1 1 0 0 0 .9-1.45l-5.069-10.127A2 2 0 0 1 14 9.527V2",key:"pzvekw"}],["path",{d:"M8.5 2h7",key:"csnxdl"}],["path",{d:"M7 16h10",key:"wp8him"}]])},5621:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]])},5466:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]])},2048:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Map",[["path",{d:"M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z",key:"169xi5"}],["path",{d:"M15 5.764v15",key:"1pn4in"}],["path",{d:"M9 3.236v15",key:"1uimfh"}]])},2718:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("MessageCircle",[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]])},8728:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},2023:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]])},5929:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]])},8896:function(e,t,a){"use strict";a.d(t,{Z:function(){return r}});let r=(0,a(9205).Z)("Target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]])},7648:function(e,t,a){"use strict";a.d(t,{default:function(){return s.a}});var r=a(2972),s=a.n(r)},9376:function(e,t,a){"use strict";var r=a(5475);a.o(r,"usePathname")&&a.d(t,{usePathname:function(){return r.usePathname}}),a.o(r,"useRouter")&&a.d(t,{useRouter:function(){return r.useRouter}})},1259:function(e,t,a){"use strict";a.d(t,{default:function(){return k}});var r=a(7437),s=a(7648),n=a(9376),l=a(5929),i=a(5466),c=a(2048),h=a(8896),o=a(8220),u=a(2718),d=a(5621),f=a(8728),x=a(2222),y=a(2023),p=a(1994);let m=[{href:"/briefing",label:"Briefing",icon:(0,r.jsx)(l.Z,{size:18})},{href:"/kanban",label:"Dashboard",icon:(0,r.jsx)(i.Z,{className:"w-5 h-5"})},{href:"/roadmap",label:"Roadmap",icon:(0,r.jsx)(c.Z,{className:"w-5 h-5"})},{href:"/goals",label:"Goals",icon:(0,r.jsx)(h.Z,{className:"w-5 h-5"})},{href:"/hypotheses",label:"Hypotheses",icon:(0,r.jsx)(o.Z,{className:"w-5 h-5"})},{href:"/social",label:"Social",icon:(0,r.jsx)(u.Z,{className:"w-5 h-5"})},{href:"/sessions",label:"Sessions",icon:(0,r.jsx)(d.Z,{className:"w-5 h-5"})},{href:"/settings",label:"Settings",icon:(0,r.jsx)(f.Z,{className:"w-5 h-5"})}];function k(e){let{children:t}=e,a=(0,n.usePathname)();return(0,r.jsxs)("div",{className:"min-h-screen flex",children:[(0,r.jsxs)("aside",{className:"w-64 bg-slate-900 text-white flex flex-col",children:[(0,r.jsx)("div",{className:"p-4 border-b border-slate-700",children:(0,r.jsxs)(s.default,{href:"/",className:"flex items-center gap-2",children:[(0,r.jsx)("div",{className:"w-10 h-10 bg-emerald-500 rounded-lg flex items-center justify-center",children:(0,r.jsx)(x.Z,{className:"w-6 h-6 text-white"})}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h1",{className:"font-bold text-lg leading-tight",children:"Analyst"}),(0,r.jsx)("p",{className:"text-xs text-slate-400",children:"AI Product Manager"})]})]})}),(0,r.jsx)("nav",{className:"flex-1 p-4",children:(0,r.jsx)("ul",{className:"space-y-1",children:m.map(e=>{let t=a.startsWith(e.href);return(0,r.jsx)("li",{children:(0,r.jsxs)(s.default,{href:e.href,className:(0,p.Z)("flex items-center gap-3 px-3 py-2 rounded-lg transition-colors",t?"bg-slate-800 text-white":"text-slate-400 hover:text-white hover:bg-slate-800"),children:[e.icon,(0,r.jsx)("span",{children:e.label})]})},e.href)})})}),(0,r.jsx)("div",{className:"p-4 border-t border-slate-700",children:(0,r.jsxs)("div",{className:"flex items-center gap-2 text-xs text-slate-500",children:[(0,r.jsx)(y.Z,{className:"w-4 h-4"}),(0,r.jsx)("span",{children:"Powered by Claude"})]})})]}),(0,r.jsx)("main",{className:"flex-1 overflow-auto",children:t})]})}},1994:function(e,t,a){"use strict";t.Z=function(){for(var e,t,a=0,r="",s=arguments.length;a<s;a++)(e=arguments[a])&&(t=function e(t){var a,r,s="";if("string"==typeof t||"number"==typeof t)s+=t;else if("object"==typeof t){if(Array.isArray(t)){var n=t.length;for(a=0;a<n;a++)t[a]&&(r=e(t[a]))&&(s&&(s+=" "),s+=r)}else for(r in t)t[r]&&(s&&(s+=" "),s+=r)}return s}(e))&&(r&&(r+=" "),r+=t);return r}}},function(e){e.O(0,[972,971,117,744],function(){return e(e.s=5978)}),_N_E=e.O()}]);