trybeacon 0.1.50 → 0.1.51

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 (418) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +23 -19
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/routes-manifest.json +26 -0
  6. package/.next/server/app/_global-error/page.js +3 -3
  7. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/_global-error.html +1 -1
  9. package/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next/server/app/_not-found/page.js +2 -2
  17. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  18. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  19. package/.next/server/app/_not-found.html +1 -1
  20. package/.next/server/app/_not-found.rsc +11 -11
  21. package/.next/server/app/_not-found.segments/_full.segment.rsc +11 -11
  22. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  23. package/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
  24. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  25. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  26. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  27. package/.next/server/app/api/board-annotations/[id]/route.js +1 -1
  28. package/.next/server/app/api/board-annotations/[id]/route.js.nft.json +1 -1
  29. package/.next/server/app/api/board-annotations/route.js +1 -1
  30. package/.next/server/app/api/board-annotations/route.js.nft.json +1 -1
  31. package/.next/server/app/api/board-layout/route.js +1 -1
  32. package/.next/server/app/api/board-layout/route.js.nft.json +1 -1
  33. package/.next/server/app/api/bug-flags/[id]/route.js +1 -1
  34. package/.next/server/app/api/bug-flags/[id]/route.js.nft.json +1 -1
  35. package/.next/server/app/api/bug-flags/route.js +1 -1
  36. package/.next/server/app/api/bug-flags/route.js.nft.json +1 -1
  37. package/.next/server/app/api/code-graph/position/route.js +1 -1
  38. package/.next/server/app/api/code-graph/position/route.js.nft.json +1 -1
  39. package/.next/server/app/api/code-graph/route.js +1 -1
  40. package/.next/server/app/api/code-graph/route.js.nft.json +1 -1
  41. package/.next/server/app/api/context/feature/route.js +1 -1
  42. package/.next/server/app/api/context/feature/route.js.nft.json +1 -1
  43. package/.next/server/app/api/context/file/route.js +1 -1
  44. package/.next/server/app/api/context/file/route.js.nft.json +1 -1
  45. package/.next/server/app/api/context/route.js +2 -2
  46. package/.next/server/app/api/context/route.js.nft.json +1 -1
  47. package/.next/server/app/api/db/arrange/route.js +1 -1
  48. package/.next/server/app/api/db/arrange/route.js.nft.json +1 -1
  49. package/.next/server/app/api/db/backfill-access/route.js +1 -1
  50. package/.next/server/app/api/db/backfill-access/route.js.nft.json +1 -1
  51. package/.next/server/app/api/db/position/route.js +1 -1
  52. package/.next/server/app/api/db/position/route.js.nft.json +1 -1
  53. package/.next/server/app/api/db/prune-planned/route.js +1 -1
  54. package/.next/server/app/api/db/prune-planned/route.js.nft.json +1 -1
  55. package/.next/server/app/api/db/reconcile-endpoints/route.js +1 -1
  56. package/.next/server/app/api/db/reconcile-endpoints/route.js.nft.json +1 -1
  57. package/.next/server/app/api/db/relations/[id]/route.js +1 -1
  58. package/.next/server/app/api/db/relations/[id]/route.js.nft.json +1 -1
  59. package/.next/server/app/api/db/tables/[id]/route.js +1 -1
  60. package/.next/server/app/api/db/tables/[id]/route.js.nft.json +1 -1
  61. package/.next/server/app/api/draft/approve/route.js +1 -1
  62. package/.next/server/app/api/draft/approve/route.js.nft.json +1 -1
  63. package/.next/server/app/api/draft/route.js +1 -1
  64. package/.next/server/app/api/draft/route.js.nft.json +1 -1
  65. package/.next/server/app/api/draft/status/route.js +1 -1
  66. package/.next/server/app/api/draft/status/route.js.nft.json +1 -1
  67. package/.next/server/app/api/edges/[id]/route.js +1 -1
  68. package/.next/server/app/api/edges/[id]/route.js.nft.json +1 -1
  69. package/.next/server/app/api/edges/route.js +1 -1
  70. package/.next/server/app/api/edges/route.js.nft.json +1 -1
  71. package/.next/server/app/api/endpoints/[id]/route.js +1 -1
  72. package/.next/server/app/api/endpoints/[id]/route.js.nft.json +1 -1
  73. package/.next/server/app/api/entities/route.js +1 -1
  74. package/.next/server/app/api/entities/route.js.nft.json +1 -1
  75. package/.next/server/app/api/feedback/[id]/route.js +1 -1
  76. package/.next/server/app/api/feedback/[id]/route.js.nft.json +1 -1
  77. package/.next/server/app/api/feedback/[id]/vote/route.js +1 -1
  78. package/.next/server/app/api/feedback/[id]/vote/route.js.nft.json +1 -1
  79. package/.next/server/app/api/feedback/route.js +1 -1
  80. package/.next/server/app/api/feedback/route.js.nft.json +1 -1
  81. package/.next/server/app/api/flags/route.js +1 -1
  82. package/.next/server/app/api/flags/route.js.nft.json +1 -1
  83. package/.next/server/app/api/ingest/route.js +2 -2
  84. package/.next/server/app/api/ingest/route.js.nft.json +1 -1
  85. package/.next/server/app/api/init/route.js +2 -2
  86. package/.next/server/app/api/init/route.js.nft.json +1 -1
  87. package/.next/server/app/api/map/describe/route.js +2 -2
  88. package/.next/server/app/api/map/describe/route.js.nft.json +1 -1
  89. package/.next/server/app/api/map/files/route.js +1 -1
  90. package/.next/server/app/api/map/files/route.js.nft.json +1 -1
  91. package/.next/server/app/api/map/finish/route.js +1 -1
  92. package/.next/server/app/api/map/finish/route.js.nft.json +1 -1
  93. package/.next/server/app/api/map/route.js +1 -1
  94. package/.next/server/app/api/map/route.js.nft.json +1 -1
  95. package/.next/server/app/api/map/start/route.js +1 -1
  96. package/.next/server/app/api/map/start/route.js.nft.json +1 -1
  97. package/.next/server/app/api/map/touch-active/route.js +1 -1
  98. package/.next/server/app/api/map/touch-active/route.js.nft.json +1 -1
  99. package/.next/server/app/api/mention-search/route.js +1 -0
  100. package/.next/server/app/api/mention-search/route.js.nft.json +1 -0
  101. package/.next/server/app/api/mention-search/route_client-reference-manifest.js +1 -0
  102. package/.next/server/app/api/nodes/[id]/position/route.js +1 -1
  103. package/.next/server/app/api/nodes/[id]/position/route.js.nft.json +1 -1
  104. package/.next/server/app/api/nodes/[id]/route.js +1 -1
  105. package/.next/server/app/api/nodes/[id]/route.js.nft.json +1 -1
  106. package/.next/server/app/api/nodes/positions/route.js +1 -1
  107. package/.next/server/app/api/nodes/positions/route.js.nft.json +1 -1
  108. package/.next/server/app/api/nodes/route.js +1 -1
  109. package/.next/server/app/api/nodes/route.js.nft.json +1 -1
  110. package/.next/server/app/api/nodes/subtasks/route.js +1 -1
  111. package/.next/server/app/api/nodes/subtasks/route.js.nft.json +1 -1
  112. package/.next/server/app/api/notes/[id]/route.js +1 -1
  113. package/.next/server/app/api/notes/[id]/route.js.nft.json +1 -1
  114. package/.next/server/app/api/notes/route.js +1 -1
  115. package/.next/server/app/api/notes/route.js.nft.json +1 -1
  116. package/.next/server/app/api/open/route.js +1 -1
  117. package/.next/server/app/api/open/route.js.nft.json +1 -1
  118. package/.next/server/app/api/plan/annotations/route.js +3 -3
  119. package/.next/server/app/api/plan/annotations/route.js.nft.json +1 -1
  120. package/.next/server/app/api/plan/approve/route.js +2 -2
  121. package/.next/server/app/api/plan/approve/route.js.nft.json +1 -1
  122. package/.next/server/app/api/plan/history/route.js +1 -1
  123. package/.next/server/app/api/plan/history/route.js.nft.json +1 -1
  124. package/.next/server/app/api/plan/markdown/route.js +1 -1
  125. package/.next/server/app/api/plan/markdown/route.js.nft.json +1 -1
  126. package/.next/server/app/api/plan/presence/route.js +1 -1
  127. package/.next/server/app/api/plan/presence/route.js.nft.json +1 -1
  128. package/.next/server/app/api/plan/route.js +1 -1
  129. package/.next/server/app/api/plan/route.js.nft.json +1 -1
  130. package/.next/server/app/api/plan/verdict/route.js +1 -1
  131. package/.next/server/app/api/plan/verdict/route.js.nft.json +1 -1
  132. package/.next/server/app/api/preferences/route.js +1 -1
  133. package/.next/server/app/api/preferences/route.js.nft.json +1 -1
  134. package/.next/server/app/api/project-meta/route.js +1 -1
  135. package/.next/server/app/api/project-meta/route.js.nft.json +1 -1
  136. package/.next/server/app/api/reset/route.js +1 -1
  137. package/.next/server/app/api/reset/route.js.nft.json +1 -1
  138. package/.next/server/app/api/scope-guard/check/route.js +1 -1
  139. package/.next/server/app/api/scope-guard/check/route.js.nft.json +1 -1
  140. package/.next/server/app/api/share/create/route.js +1 -0
  141. package/.next/server/app/api/share/create/route.js.nft.json +1 -0
  142. package/.next/server/app/api/share/create/route_client-reference-manifest.js +1 -0
  143. package/.next/server/app/api/share/route.js +1 -0
  144. package/.next/server/app/api/share/route.js.nft.json +1 -0
  145. package/.next/server/app/api/share/route_client-reference-manifest.js +1 -0
  146. package/.next/server/app/api/stream/route.js +2 -2
  147. package/.next/server/app/api/stream/route.js.nft.json +1 -1
  148. package/.next/server/app/api/tab/nav/route.js +1 -1
  149. package/.next/server/app/api/tab/nav/route.js.nft.json +1 -1
  150. package/.next/server/app/api/tab/presence/route.js +1 -1
  151. package/.next/server/app/api/tab/presence/route.js.nft.json +1 -1
  152. package/.next/server/app/api/telemetry/route.js +1 -1
  153. package/.next/server/app/api/telemetry/route.js.nft.json +1 -1
  154. package/.next/server/app/api/telemetry/stats/route.js +1 -1
  155. package/.next/server/app/api/telemetry/stats/route.js.nft.json +1 -1
  156. package/.next/server/app/api/version/route.js +1 -1
  157. package/.next/server/app/api/version/route.js.nft.json +1 -1
  158. package/.next/server/app/api/workspace/activate/route.js +1 -1
  159. package/.next/server/app/api/workspace/activate/route.js.nft.json +1 -1
  160. package/.next/server/app/api/workspace/route.js +1 -1
  161. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  162. package/.next/server/app/apple-icon.png/route.js +1 -1
  163. package/.next/server/app/docs/page.js +2 -2
  164. package/.next/server/app/docs/page.js.nft.json +1 -1
  165. package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  166. package/.next/server/app/docs.html +1 -1
  167. package/.next/server/app/docs.rsc +11 -11
  168. package/.next/server/app/docs.segments/_full.segment.rsc +11 -11
  169. package/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  170. package/.next/server/app/docs.segments/_index.segment.rsc +11 -11
  171. package/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  172. package/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  173. package/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  174. package/.next/server/app/feedback/page.js +2 -2
  175. package/.next/server/app/feedback/page.js.nft.json +1 -1
  176. package/.next/server/app/feedback/page_client-reference-manifest.js +1 -1
  177. package/.next/server/app/feedback.html +1 -1
  178. package/.next/server/app/feedback.rsc +11 -11
  179. package/.next/server/app/feedback.segments/_full.segment.rsc +11 -11
  180. package/.next/server/app/feedback.segments/_head.segment.rsc +1 -1
  181. package/.next/server/app/feedback.segments/_index.segment.rsc +11 -11
  182. package/.next/server/app/feedback.segments/_tree.segment.rsc +2 -2
  183. package/.next/server/app/feedback.segments/feedback/__PAGE__.segment.rsc +1 -1
  184. package/.next/server/app/feedback.segments/feedback.segment.rsc +1 -1
  185. package/.next/server/app/help/page.js +2 -2
  186. package/.next/server/app/help/page.js.nft.json +1 -1
  187. package/.next/server/app/help/page_client-reference-manifest.js +1 -1
  188. package/.next/server/app/help.html +1 -1
  189. package/.next/server/app/help.rsc +11 -11
  190. package/.next/server/app/help.segments/_full.segment.rsc +11 -11
  191. package/.next/server/app/help.segments/_head.segment.rsc +1 -1
  192. package/.next/server/app/help.segments/_index.segment.rsc +11 -11
  193. package/.next/server/app/help.segments/_tree.segment.rsc +2 -2
  194. package/.next/server/app/help.segments/help/__PAGE__.segment.rsc +1 -1
  195. package/.next/server/app/help.segments/help.segment.rsc +1 -1
  196. package/.next/server/app/icon.svg/route.js +1 -1
  197. package/.next/server/app/index.html +1 -1
  198. package/.next/server/app/index.rsc +12 -12
  199. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  200. package/.next/server/app/index.segments/_full.segment.rsc +12 -12
  201. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  202. package/.next/server/app/index.segments/_index.segment.rsc +11 -11
  203. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  204. package/.next/server/app/map/page.js +2 -2
  205. package/.next/server/app/map/page.js.nft.json +1 -1
  206. package/.next/server/app/map/page_client-reference-manifest.js +1 -1
  207. package/.next/server/app/page.js +2 -2
  208. package/.next/server/app/page.js.nft.json +1 -1
  209. package/.next/server/app/page_client-reference-manifest.js +1 -1
  210. package/.next/server/app/plan/page.js +2 -2
  211. package/.next/server/app/plan/page.js.nft.json +1 -1
  212. package/.next/server/app/plan/page_client-reference-manifest.js +1 -1
  213. package/.next/server/app/s/[token]/page.js +2 -0
  214. package/.next/server/app/s/[token]/page.js.nft.json +1 -0
  215. package/.next/server/app/s/[token]/page_client-reference-manifest.js +1 -0
  216. package/.next/server/app/settings/page.js +2 -2
  217. package/.next/server/app/settings/page.js.nft.json +1 -1
  218. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  219. package/.next/server/app-paths-manifest.json +23 -19
  220. package/.next/server/chunks/1669.js +1 -0
  221. package/.next/server/chunks/2050.js +1 -0
  222. package/.next/server/chunks/249.js +1 -1
  223. package/.next/server/chunks/{3221.js → 2693.js} +1 -1
  224. package/.next/server/chunks/2942.js +1 -0
  225. package/.next/server/chunks/3098.js +1 -0
  226. package/.next/server/chunks/3254.js +1 -1
  227. package/.next/server/chunks/{2999.js → 3304.js} +65 -4
  228. package/.next/server/chunks/4046.js +3 -3
  229. package/.next/server/chunks/4307.js +1 -1
  230. package/.next/server/chunks/{4217.js → 4700.js} +19 -19
  231. package/.next/server/chunks/5841.js +1 -0
  232. package/.next/server/chunks/{4940.js → 7350.js} +1 -1
  233. package/.next/server/chunks/{8423.js → 9338.js} +8 -8
  234. package/.next/server/chunks/9683.js +1 -1
  235. package/.next/server/chunks/9734.js +1 -1
  236. package/.next/server/chunks/9884.js +2 -2
  237. package/.next/server/middleware-build-manifest.js +1 -1
  238. package/.next/server/middleware.js +1 -1
  239. package/.next/server/pages/404.html +1 -1
  240. package/.next/server/pages/500.html +1 -1
  241. package/.next/server/server-reference-manifest.js +1 -1
  242. package/.next/server/server-reference-manifest.json +1 -1
  243. package/.next/static/Etq8pxeFDTNRRYXdxo_DD/_buildManifest.js +1 -0
  244. package/.next/static/chunks/1099-208cc390a92efae0.js +62 -0
  245. package/.next/static/chunks/1175-715e4664e518ded4.js +1 -0
  246. package/.next/static/chunks/2231-379685a022444780.js +1 -0
  247. package/.next/static/chunks/{2500-15c373070714563d.js → 3021-ed52ee7b3f02e2cd.js} +1 -1
  248. package/.next/static/chunks/54a60aa6-0378818fce5a4dc5.js +82 -0
  249. package/.next/static/chunks/874-c750840a8644deb1.js +1 -0
  250. package/.next/static/chunks/9320-7bd45e3feba086b6.js +1 -0
  251. package/.next/static/chunks/9887-e8954568a4031ed3.js +74 -0
  252. package/.next/static/chunks/app/_global-error/page-548a84d85e061550.js +1 -0
  253. package/.next/static/chunks/app/api/board-annotations/[id]/route-548a84d85e061550.js +1 -0
  254. package/.next/static/chunks/app/api/board-annotations/route-548a84d85e061550.js +1 -0
  255. package/.next/static/chunks/app/api/board-layout/route-548a84d85e061550.js +1 -0
  256. package/.next/static/chunks/app/api/bug-flags/[id]/route-548a84d85e061550.js +1 -0
  257. package/.next/static/chunks/app/api/bug-flags/route-548a84d85e061550.js +1 -0
  258. package/.next/static/chunks/app/api/code-graph/position/route-548a84d85e061550.js +1 -0
  259. package/.next/static/chunks/app/api/code-graph/route-548a84d85e061550.js +1 -0
  260. package/.next/static/chunks/app/api/context/feature/route-548a84d85e061550.js +1 -0
  261. package/.next/static/chunks/app/api/context/file/route-548a84d85e061550.js +1 -0
  262. package/.next/static/chunks/app/api/context/route-548a84d85e061550.js +1 -0
  263. package/.next/static/chunks/app/api/db/arrange/route-548a84d85e061550.js +1 -0
  264. package/.next/static/chunks/app/api/db/backfill-access/route-548a84d85e061550.js +1 -0
  265. package/.next/static/chunks/app/api/db/position/route-548a84d85e061550.js +1 -0
  266. package/.next/static/chunks/app/api/db/prune-planned/route-548a84d85e061550.js +1 -0
  267. package/.next/static/chunks/app/api/db/reconcile-endpoints/route-548a84d85e061550.js +1 -0
  268. package/.next/static/chunks/app/api/db/relations/[id]/route-548a84d85e061550.js +1 -0
  269. package/.next/static/chunks/app/api/db/tables/[id]/route-548a84d85e061550.js +1 -0
  270. package/.next/static/chunks/app/api/draft/approve/route-548a84d85e061550.js +1 -0
  271. package/.next/static/chunks/app/api/draft/route-548a84d85e061550.js +1 -0
  272. package/.next/static/chunks/app/api/draft/status/route-548a84d85e061550.js +1 -0
  273. package/.next/static/chunks/app/api/edges/[id]/route-548a84d85e061550.js +1 -0
  274. package/.next/static/chunks/app/api/edges/route-548a84d85e061550.js +1 -0
  275. package/.next/static/chunks/app/api/endpoints/[id]/route-548a84d85e061550.js +1 -0
  276. package/.next/static/chunks/app/api/entities/route-548a84d85e061550.js +1 -0
  277. package/.next/static/chunks/app/api/feedback/[id]/route-548a84d85e061550.js +1 -0
  278. package/.next/static/chunks/app/api/feedback/[id]/vote/route-548a84d85e061550.js +1 -0
  279. package/.next/static/chunks/app/api/feedback/route-548a84d85e061550.js +1 -0
  280. package/.next/static/chunks/app/api/flags/route-548a84d85e061550.js +1 -0
  281. package/.next/static/chunks/app/api/ingest/route-548a84d85e061550.js +1 -0
  282. package/.next/static/chunks/app/api/init/route-548a84d85e061550.js +1 -0
  283. package/.next/static/chunks/app/api/map/describe/route-548a84d85e061550.js +1 -0
  284. package/.next/static/chunks/app/api/map/files/route-548a84d85e061550.js +1 -0
  285. package/.next/static/chunks/app/api/map/finish/route-548a84d85e061550.js +1 -0
  286. package/.next/static/chunks/app/api/map/route-548a84d85e061550.js +1 -0
  287. package/.next/static/chunks/app/api/map/start/route-548a84d85e061550.js +1 -0
  288. package/.next/static/chunks/app/api/map/touch-active/route-548a84d85e061550.js +1 -0
  289. package/.next/static/chunks/app/api/mention-search/route-548a84d85e061550.js +1 -0
  290. package/.next/static/chunks/app/api/nodes/[id]/position/route-548a84d85e061550.js +1 -0
  291. package/.next/static/chunks/app/api/nodes/[id]/route-548a84d85e061550.js +1 -0
  292. package/.next/static/chunks/app/api/nodes/positions/route-548a84d85e061550.js +1 -0
  293. package/.next/static/chunks/app/api/nodes/route-548a84d85e061550.js +1 -0
  294. package/.next/static/chunks/app/api/nodes/subtasks/route-548a84d85e061550.js +1 -0
  295. package/.next/static/chunks/app/api/notes/[id]/route-548a84d85e061550.js +1 -0
  296. package/.next/static/chunks/app/api/notes/route-548a84d85e061550.js +1 -0
  297. package/.next/static/chunks/app/api/open/route-548a84d85e061550.js +1 -0
  298. package/.next/static/chunks/app/api/plan/annotations/route-548a84d85e061550.js +1 -0
  299. package/.next/static/chunks/app/api/plan/approve/route-548a84d85e061550.js +1 -0
  300. package/.next/static/chunks/app/api/plan/history/route-548a84d85e061550.js +1 -0
  301. package/.next/static/chunks/app/api/plan/markdown/route-548a84d85e061550.js +1 -0
  302. package/.next/static/chunks/app/api/plan/presence/route-548a84d85e061550.js +1 -0
  303. package/.next/static/chunks/app/api/plan/route-548a84d85e061550.js +1 -0
  304. package/.next/static/chunks/app/api/plan/verdict/route-548a84d85e061550.js +1 -0
  305. package/.next/static/chunks/app/api/preferences/route-548a84d85e061550.js +1 -0
  306. package/.next/static/chunks/app/api/project-meta/route-548a84d85e061550.js +1 -0
  307. package/.next/static/chunks/app/api/reset/route-548a84d85e061550.js +1 -0
  308. package/.next/static/chunks/app/api/scope-guard/check/route-548a84d85e061550.js +1 -0
  309. package/.next/static/chunks/app/api/share/create/route-548a84d85e061550.js +1 -0
  310. package/.next/static/chunks/app/api/share/route-548a84d85e061550.js +1 -0
  311. package/.next/static/chunks/app/api/stream/route-548a84d85e061550.js +1 -0
  312. package/.next/static/chunks/app/api/tab/nav/route-548a84d85e061550.js +1 -0
  313. package/.next/static/chunks/app/api/tab/presence/route-548a84d85e061550.js +1 -0
  314. package/.next/static/chunks/app/api/telemetry/route-548a84d85e061550.js +1 -0
  315. package/.next/static/chunks/app/api/telemetry/stats/route-548a84d85e061550.js +1 -0
  316. package/.next/static/chunks/app/api/version/route-548a84d85e061550.js +1 -0
  317. package/.next/static/chunks/app/api/workspace/activate/route-548a84d85e061550.js +1 -0
  318. package/.next/static/chunks/app/api/workspace/route-548a84d85e061550.js +1 -0
  319. package/.next/static/chunks/app/layout-3115f8503ff00902.js +1 -0
  320. package/.next/static/chunks/app/map/page-07f6e0d7c4cac26c.js +1 -0
  321. package/.next/static/chunks/app/{page-541e900d67f17dae.js → page-a229992616b3a3de.js} +1 -1
  322. package/.next/static/chunks/app/plan/page-e314ca5940473e0e.js +1 -0
  323. package/.next/static/chunks/app/s/[token]/page-5fbceb666bceb88e.js +1 -0
  324. package/.next/static/chunks/next/dist/client/components/builtin/app-error-548a84d85e061550.js +1 -0
  325. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-548a84d85e061550.js +1 -0
  326. package/.next/static/chunks/next/dist/client/components/builtin/not-found-548a84d85e061550.js +1 -0
  327. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-548a84d85e061550.js +1 -0
  328. package/.next/static/css/d60eecd8c5676c16.css +1 -0
  329. package/.next/trace +42 -39
  330. package/.next/trace-build +1 -1
  331. package/.next/types/app/api/mention-search/route.ts +351 -0
  332. package/.next/types/app/api/share/create/route.ts +351 -0
  333. package/.next/types/app/api/share/route.ts +351 -0
  334. package/.next/types/app/s/[token]/page.ts +87 -0
  335. package/.next/types/routes.d.ts +6 -2
  336. package/.next/types/validator.ts +36 -0
  337. package/package.json +4 -1
  338. package/.next/server/chunks/1341.js +0 -1
  339. package/.next/server/chunks/9773.js +0 -1
  340. package/.next/static/J1AU9kp6Vs1x9YOBkXMiR/_buildManifest.js +0 -1
  341. package/.next/static/chunks/1439-260d1c3a9b3b79b3.js +0 -1
  342. package/.next/static/chunks/1487-13f43d25413ae041.js +0 -1
  343. package/.next/static/chunks/3343-af1292b51a276724.js +0 -1
  344. package/.next/static/chunks/54a60aa6-407808fee210eca2.js +0 -82
  345. package/.next/static/chunks/7886-46eaf3a9533310f7.js +0 -74
  346. package/.next/static/chunks/app/_global-error/page-dc3f0f4fd9e88c4e.js +0 -1
  347. package/.next/static/chunks/app/api/board-annotations/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  348. package/.next/static/chunks/app/api/board-annotations/route-dc3f0f4fd9e88c4e.js +0 -1
  349. package/.next/static/chunks/app/api/board-layout/route-dc3f0f4fd9e88c4e.js +0 -1
  350. package/.next/static/chunks/app/api/bug-flags/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  351. package/.next/static/chunks/app/api/bug-flags/route-dc3f0f4fd9e88c4e.js +0 -1
  352. package/.next/static/chunks/app/api/code-graph/position/route-dc3f0f4fd9e88c4e.js +0 -1
  353. package/.next/static/chunks/app/api/code-graph/route-dc3f0f4fd9e88c4e.js +0 -1
  354. package/.next/static/chunks/app/api/context/feature/route-dc3f0f4fd9e88c4e.js +0 -1
  355. package/.next/static/chunks/app/api/context/file/route-dc3f0f4fd9e88c4e.js +0 -1
  356. package/.next/static/chunks/app/api/context/route-dc3f0f4fd9e88c4e.js +0 -1
  357. package/.next/static/chunks/app/api/db/arrange/route-dc3f0f4fd9e88c4e.js +0 -1
  358. package/.next/static/chunks/app/api/db/backfill-access/route-dc3f0f4fd9e88c4e.js +0 -1
  359. package/.next/static/chunks/app/api/db/position/route-dc3f0f4fd9e88c4e.js +0 -1
  360. package/.next/static/chunks/app/api/db/prune-planned/route-dc3f0f4fd9e88c4e.js +0 -1
  361. package/.next/static/chunks/app/api/db/reconcile-endpoints/route-dc3f0f4fd9e88c4e.js +0 -1
  362. package/.next/static/chunks/app/api/db/relations/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  363. package/.next/static/chunks/app/api/db/tables/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  364. package/.next/static/chunks/app/api/draft/approve/route-dc3f0f4fd9e88c4e.js +0 -1
  365. package/.next/static/chunks/app/api/draft/route-dc3f0f4fd9e88c4e.js +0 -1
  366. package/.next/static/chunks/app/api/draft/status/route-dc3f0f4fd9e88c4e.js +0 -1
  367. package/.next/static/chunks/app/api/edges/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  368. package/.next/static/chunks/app/api/edges/route-dc3f0f4fd9e88c4e.js +0 -1
  369. package/.next/static/chunks/app/api/endpoints/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  370. package/.next/static/chunks/app/api/entities/route-dc3f0f4fd9e88c4e.js +0 -1
  371. package/.next/static/chunks/app/api/feedback/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  372. package/.next/static/chunks/app/api/feedback/[id]/vote/route-dc3f0f4fd9e88c4e.js +0 -1
  373. package/.next/static/chunks/app/api/feedback/route-dc3f0f4fd9e88c4e.js +0 -1
  374. package/.next/static/chunks/app/api/flags/route-dc3f0f4fd9e88c4e.js +0 -1
  375. package/.next/static/chunks/app/api/ingest/route-dc3f0f4fd9e88c4e.js +0 -1
  376. package/.next/static/chunks/app/api/init/route-dc3f0f4fd9e88c4e.js +0 -1
  377. package/.next/static/chunks/app/api/map/describe/route-dc3f0f4fd9e88c4e.js +0 -1
  378. package/.next/static/chunks/app/api/map/files/route-dc3f0f4fd9e88c4e.js +0 -1
  379. package/.next/static/chunks/app/api/map/finish/route-dc3f0f4fd9e88c4e.js +0 -1
  380. package/.next/static/chunks/app/api/map/route-dc3f0f4fd9e88c4e.js +0 -1
  381. package/.next/static/chunks/app/api/map/start/route-dc3f0f4fd9e88c4e.js +0 -1
  382. package/.next/static/chunks/app/api/map/touch-active/route-dc3f0f4fd9e88c4e.js +0 -1
  383. package/.next/static/chunks/app/api/nodes/[id]/position/route-dc3f0f4fd9e88c4e.js +0 -1
  384. package/.next/static/chunks/app/api/nodes/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  385. package/.next/static/chunks/app/api/nodes/positions/route-dc3f0f4fd9e88c4e.js +0 -1
  386. package/.next/static/chunks/app/api/nodes/route-dc3f0f4fd9e88c4e.js +0 -1
  387. package/.next/static/chunks/app/api/nodes/subtasks/route-dc3f0f4fd9e88c4e.js +0 -1
  388. package/.next/static/chunks/app/api/notes/[id]/route-dc3f0f4fd9e88c4e.js +0 -1
  389. package/.next/static/chunks/app/api/notes/route-dc3f0f4fd9e88c4e.js +0 -1
  390. package/.next/static/chunks/app/api/open/route-dc3f0f4fd9e88c4e.js +0 -1
  391. package/.next/static/chunks/app/api/plan/annotations/route-dc3f0f4fd9e88c4e.js +0 -1
  392. package/.next/static/chunks/app/api/plan/approve/route-dc3f0f4fd9e88c4e.js +0 -1
  393. package/.next/static/chunks/app/api/plan/history/route-dc3f0f4fd9e88c4e.js +0 -1
  394. package/.next/static/chunks/app/api/plan/markdown/route-dc3f0f4fd9e88c4e.js +0 -1
  395. package/.next/static/chunks/app/api/plan/presence/route-dc3f0f4fd9e88c4e.js +0 -1
  396. package/.next/static/chunks/app/api/plan/route-dc3f0f4fd9e88c4e.js +0 -1
  397. package/.next/static/chunks/app/api/plan/verdict/route-dc3f0f4fd9e88c4e.js +0 -1
  398. package/.next/static/chunks/app/api/preferences/route-dc3f0f4fd9e88c4e.js +0 -1
  399. package/.next/static/chunks/app/api/project-meta/route-dc3f0f4fd9e88c4e.js +0 -1
  400. package/.next/static/chunks/app/api/reset/route-dc3f0f4fd9e88c4e.js +0 -1
  401. package/.next/static/chunks/app/api/scope-guard/check/route-dc3f0f4fd9e88c4e.js +0 -1
  402. package/.next/static/chunks/app/api/stream/route-dc3f0f4fd9e88c4e.js +0 -1
  403. package/.next/static/chunks/app/api/tab/nav/route-dc3f0f4fd9e88c4e.js +0 -1
  404. package/.next/static/chunks/app/api/tab/presence/route-dc3f0f4fd9e88c4e.js +0 -1
  405. package/.next/static/chunks/app/api/telemetry/route-dc3f0f4fd9e88c4e.js +0 -1
  406. package/.next/static/chunks/app/api/telemetry/stats/route-dc3f0f4fd9e88c4e.js +0 -1
  407. package/.next/static/chunks/app/api/version/route-dc3f0f4fd9e88c4e.js +0 -1
  408. package/.next/static/chunks/app/api/workspace/activate/route-dc3f0f4fd9e88c4e.js +0 -1
  409. package/.next/static/chunks/app/api/workspace/route-dc3f0f4fd9e88c4e.js +0 -1
  410. package/.next/static/chunks/app/layout-1bc5f9fd4ce6bff9.js +0 -1
  411. package/.next/static/chunks/app/map/page-5074176a5e746ffb.js +0 -1
  412. package/.next/static/chunks/app/plan/page-3c4c1fc03275299f.js +0 -1
  413. package/.next/static/chunks/next/dist/client/components/builtin/app-error-dc3f0f4fd9e88c4e.js +0 -1
  414. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-dc3f0f4fd9e88c4e.js +0 -1
  415. package/.next/static/chunks/next/dist/client/components/builtin/not-found-dc3f0f4fd9e88c4e.js +0 -1
  416. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-dc3f0f4fd9e88c4e.js +0 -1
  417. package/.next/static/css/629ab377241de9ca.css +0 -1
  418. /package/.next/static/{J1AU9kp6Vs1x9YOBkXMiR → Etq8pxeFDTNRRYXdxo_DD}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7177],{434:(e,t,n)=>{"use strict";n.d(t,{PlanBar:()=>u});var s=n(95155),r=n(98500),a=n.n(r),i=n(73321),l=n(86272),o=n(32133),c=n(65738),d=n(48484);function u(){let{status:e,discard:t}=(0,d.j)(),n=(0,i.usePathname)();return e.pending&&"/plan"!==n?(0,s.jsx)("div",{className:"pointer-events-none fixed inset-x-0 top-14 z-40 flex justify-center px-2",children:(0,s.jsxs)("div",{className:"pointer-events-auto flex max-w-3xl items-center gap-2 rounded-xl border border-emerald-500/30 bg-card/85 px-3 py-1.5 shadow-lg backdrop-blur supports-[backdrop-filter]:bg-card/70",children:[(0,s.jsx)(l.A,{className:"size-3.5 shrink-0 text-emerald-300"}),(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsxs)("div",{className:"truncate text-[12px] leading-tight text-foreground",children:[(0,s.jsx)("span",{className:"text-emerald-300/80",children:"Plan ready \xb7 "}),e.description||"(no description)"]}),(0,s.jsxs)("div",{className:"text-[10px] leading-tight text-muted-foreground",children:[e.features," feature(s) \xb7 ",e.tables," table(s) \xb7 ",e.endpoints," ","endpoint(s)"]})]}),(0,s.jsxs)(a(),{href:"/plan",className:"flex shrink-0 items-center gap-1 rounded-md border border-emerald-500/40 bg-emerald-500/15 px-2 py-1 text-[11px] font-semibold text-emerald-300 transition-colors hover:bg-emerald-500/25",title:"Open Plannotator + canvases side by side",children:[(0,s.jsx)(o.A,{className:"size-3"})," Open plan"]}),(0,s.jsxs)("button",{onClick:t,className:"flex shrink-0 items-center gap-1 rounded-md px-2 py-1 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-red-500/15 hover:text-red-300",title:"Discard the plan",children:[(0,s.jsx)(c.A,{className:"size-3"})," Discard"]})]})}):null}},1494:(e,t,n)=>{"use strict";n.d(t,{NotesDrawer:()=>O});var s=n(95155),r=n(12115),a=n(82879),i=n(2125),l=n(9005),o=n(62700),c=n(27076),d=n(65738),u=n(82099),h=n(13439),x=n(95112),f=n(67357),p=n(50109),m=n(38332),g=n(8143),b=n(58309),v=n(5497),w=n(11436),j=n(82150),N=n(83694),k=n(35580);let y=N.z.extend({renderMarkdown:(e,t)=>`<u>${t.renderChildren(e)}</u>`}),z=[w.W.configure({underline:!1}),y,j._0,j.L2.configure({nested:!0})],C=new k.db({extensions:z});var S=n(91337);function P({value:e,onChange:t}){let n=(0,h.hG)({extensions:z,content:e?function e(t){if("text"===t.type&&(t.text??"").includes("<u>"))return{type:"__frag",content:function(e){let t,n=e.text??"",s=e.marks??[],r=/<u>([\s\S]*?)<\/u>/g,a=[],i=0;for(;null!==(t=r.exec(n));)t.index>i&&a.push({...e,text:n.slice(i,t.index)}),a.push({type:"text",text:t[1],marks:[...s,{type:"underline"}]}),i=r.lastIndex;return i<n.length&&a.push({...e,text:n.slice(i)}),a.filter(e=>(e.text??"").length>0)}(t)};if(Array.isArray(t.content)){let n=t.content.flatMap(t=>{let n=e(t);return"__frag"===n.type?n.content:[n]});return{...t,content:n}}return t}(C.parse(e)):void 0,immediatelyRender:!1,editorProps:{attributes:{class:"note-prose focus:outline-none"}},onUpdate:({editor:e})=>{var n;return t((n=e.getJSON(),C.serialize(n)))}});return n?(0,s.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col",children:[(0,s.jsx)(A,{editor:n}),(0,s.jsx)(h.$Z,{editor:n,className:"min-h-0 flex-1 overflow-y-auto px-1 py-2 text-[14px] leading-relaxed"})]}):null}function A({editor:e}){let[,t]=(0,r.useReducer)(e=>e+1,0);(0,r.useEffect)(()=>{let n=()=>t();return e.on("transaction",n),()=>{e.off("transaction",n)}},[e]);let n=()=>e.chain().focus();return(0,s.jsxs)("div",{className:"flex items-center gap-0.5 border-b border-white/10 pb-2",children:[(0,s.jsx)(E,{label:"Bold",active:e.isActive("bold"),onClick:()=>n().toggleBold().run(),children:(0,s.jsx)(x.A,{className:"size-4"})}),(0,s.jsx)(E,{label:"Italic",active:e.isActive("italic"),onClick:()=>n().toggleItalic().run(),children:(0,s.jsx)(f.A,{className:"size-4"})}),(0,s.jsx)(E,{label:"Underline",active:e.isActive("underline"),onClick:()=>n().toggleUnderline().run(),children:(0,s.jsx)(p.A,{className:"size-4"})}),(0,s.jsx)(E,{label:"Strikethrough",active:e.isActive("strike"),onClick:()=>n().toggleStrike().run(),children:(0,s.jsx)(m.A,{className:"size-4"})}),(0,s.jsx)("span",{"aria-hidden":!0,className:"mx-1 h-5 w-px bg-white/10"}),(0,s.jsx)(E,{label:"Checklist",active:e.isActive("taskList"),onClick:()=>n().toggleTaskList().run(),children:(0,s.jsx)(g.A,{className:"size-4"})}),(0,s.jsx)(E,{label:"Bullet list",active:e.isActive("bulletList"),onClick:()=>n().toggleBulletList().run(),children:(0,s.jsx)(b.A,{className:"size-4"})}),(0,s.jsx)(E,{label:"Numbered list",active:e.isActive("orderedList"),onClick:()=>n().toggleOrderedList().run(),children:(0,s.jsx)(v.A,{className:"size-4"})})]})}function E({label:e,active:t,onClick:n,children:r}){return(0,s.jsx)("button",{type:"button","aria-label":e,"aria-pressed":t,title:e,onMouseDown:e=>e.preventDefault(),onClick:n,className:(0,S.cn)("rounded-md p-1.5 text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",t&&"bg-white/[0.12] text-foreground"),children:r})}var _=n(81984);function L(e){return[...e].sort((e,t)=>e.pinned!==t.pinned?Number(t.pinned)-Number(e.pinned):t.updatedAt.localeCompare(e.updatedAt))}function O(){let{open:e,close:t}=(0,_.b)(),[n,h]=(0,r.useState)([]),[x,f]=(0,r.useState)(null),p=(0,r.useRef)({}),m=(0,r.useRef)({}),g=(0,r.useCallback)(e=>{clearTimeout(p.current[e]);let t=m.current[e];t&&(delete m.current[e],fetch(`/api/notes/${e}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(t)}).catch(()=>{}))},[]),b=(0,r.useCallback)((e,t)=>{m.current[e]={...m.current[e],...t},clearTimeout(p.current[e]),p.current[e]=setTimeout(()=>g(e),500)},[g]),v=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/notes",{cache:"no-store"});if(!e.ok)return;let t=await e.json();h(L(t)),f(e=>e??t[0]?.id??null)}catch{}},[]);(0,r.useEffect)(()=>{e?v():Object.keys(m.current).forEach(g)},[e,v,g]);let w=(0,r.useCallback)(async()=>{let e=await fetch("/api/notes",{method:"POST"}).catch(()=>null);if(!e?.ok)return;let t=await e.json();h(e=>L([t,...e])),f(t.id)},[]),j=(0,r.useCallback)(async e=>{clearTimeout(p.current[e]),delete m.current[e],h(t=>{let n=t.filter(t=>t.id!==e);return f(t=>t===e?n[0]?.id??null:t),n}),await fetch(`/api/notes/${e}`,{method:"DELETE"}).catch(()=>{})},[]),N=(0,r.useCallback)((e,t)=>{h(n=>L(n.map(n=>n.id===e?{...n,...t,updatedAt:new Date().toISOString()}:n))),b(e,t)},[b]),k=(0,r.useCallback)(e=>N(e.id,{pinned:!e.pinned}),[N]),y=n.find(e=>e.id===x)??null;return(0,s.jsx)("div",{"aria-hidden":!e,className:(0,S.cn)("fixed inset-y-0 right-0 z-40 flex transition-transform duration-300 ease-out",e?"translate-x-0":"pointer-events-none translate-x-full"),children:(0,s.jsxs)(u.b,{className:"flex h-full w-[420px] flex-col rounded-l-2xl border-l border-white/10",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 border-b border-white/10 px-3 py-2.5",children:[(0,s.jsx)(a.A,{className:"size-4 text-[var(--accent-2,#ff7a45)]"}),(0,s.jsx)("span",{className:"text-sm font-semibold tracking-tight",children:"Notes"}),(0,s.jsx)("span",{className:"ml-auto"}),(0,s.jsx)("button",{type:"button",onClick:w,"aria-label":"New note",title:"New note",className:"rounded-md p-1.5 text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(i.A,{className:"size-4"})}),(0,s.jsx)("button",{type:"button",onClick:t,"aria-label":"Close notes",title:"Close",className:"rounded-md p-1.5 text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(l.A,{className:"size-4"})})]}),(0,s.jsx)("div",{className:"max-h-44 shrink-0 overflow-y-auto border-b border-white/10 p-1.5",children:0===n.length?(0,s.jsxs)("p",{className:"px-2 py-3 text-[13px] text-muted-foreground",children:["No notes yet. Hit ",(0,s.jsx)("span",{className:"text-foreground",children:"+"})," to start one."]}):n.map(e=>(0,s.jsxs)("div",{className:(0,S.cn)("group flex items-center gap-1 rounded-md px-2 py-1.5 text-[13px]",e.id===x?"bg-white/[0.09] text-foreground":"text-muted-foreground hover:bg-white/[0.04]"),children:[(0,s.jsxs)("button",{type:"button",onClick:()=>f(e.id),className:"min-w-0 flex-1 truncate text-left",children:[e.pinned&&(0,s.jsx)(o.A,{className:"mr-1 inline size-3 -translate-y-px"}),e.title||"Untitled"]}),(0,s.jsx)("button",{type:"button",onClick:()=>k(e),"aria-label":e.pinned?"Unpin":"Pin",title:e.pinned?"Unpin":"Pin",className:"rounded p-1 opacity-0 transition hover:bg-white/[0.08] hover:text-foreground group-hover:opacity-100",children:e.pinned?(0,s.jsx)(c.A,{className:"size-3.5"}):(0,s.jsx)(o.A,{className:"size-3.5"})}),(0,s.jsx)("button",{type:"button",onClick:()=>j(e.id),"aria-label":"Delete note",title:"Delete",className:"rounded p-1 opacity-0 transition hover:bg-white/[0.08] hover:text-red-300 group-hover:opacity-100",children:(0,s.jsx)(d.A,{className:"size-3.5"})})]},e.id))}),y?(0,s.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col gap-2 p-3",children:[(0,s.jsx)("input",{value:y.title,onChange:e=>N(y.id,{title:e.target.value}),placeholder:"Untitled",className:"w-full bg-transparent text-base font-semibold tracking-tight text-foreground placeholder:text-muted-foreground/60 focus:outline-none"}),(0,s.jsx)(P,{value:y.body,onChange:e=>N(y.id,{body:e})},y.id)]}):(0,s.jsxs)("div",{className:"flex flex-1 items-center justify-center p-6 text-center text-[13px] text-muted-foreground",children:["Select a note, or create one. Then ",(0,s.jsx)("span",{className:"px-1 text-foreground",children:"@"}),"-mention it in your terminal to turn it into features."]})]})})}},15053:(e,t,n)=>{Promise.resolve().then(n.t.bind(n,66872,23)),Promise.resolve().then(n.bind(n,52174)),Promise.resolve().then(n.bind(n,81998)),Promise.resolve().then(n.bind(n,81984)),Promise.resolve().then(n.bind(n,1494)),Promise.resolve().then(n.bind(n,434)),Promise.resolve().then(n.bind(n,48484)),Promise.resolve().then(n.bind(n,77242)),Promise.resolve().then(n.bind(n,96848)),Promise.resolve().then(n.bind(n,33082)),Promise.resolve().then(n.t.bind(n,35353,23)),Promise.resolve().then(n.t.bind(n,63494,23))},26518:(e,t,n)=>{"use strict";n.d(t,{bq:()=>k,eb:()=>z,gC:()=>y,l6:()=>j,yv:()=>N});var s=n(95155);n(12115);var r=n(40595),a=n(41294),i=n(75681),l=n(17314),o=n(37265),c=n(23107),d=n(70826),u=n(67564),h=n(1938),x=n(15433),f=n(5919),p=n(45450),m=n(88988),g=n(91337),b=n(12363),v=n(64577),w=n(94088);let j=r.H;function N({className:e,...t}){return(0,s.jsx)(a.y,{"data-slot":"select-value",className:(0,g.cn)("flex flex-1 text-left",e),...t})}function k({className:e,size:t="default",children:n,...r}){return(0,s.jsxs)(i.b,{"data-slot":"select-trigger","data-size":t,className:(0,g.cn)("flex w-fit items-center justify-between gap-1.5 rounded-lg border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...r,children:[n,(0,s.jsx)(l.w,{render:(0,s.jsx)(b.A,{className:"pointer-events-none size-4 text-muted-foreground"})})]})}function y({className:e,children:t,side:n="bottom",sideOffset:r=4,align:a="center",alignOffset:i=0,alignItemWithTrigger:l=!0,...h}){return(0,s.jsx)(o.V,{children:(0,s.jsx)(c.l,{side:n,sideOffset:r,align:a,alignOffset:i,alignItemWithTrigger:l,className:"isolate z-50",children:(0,s.jsxs)(d.t,{"data-slot":"select-content","data-align-trigger":l,className:(0,g.cn)("relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...h,children:[(0,s.jsx)(C,{}),(0,s.jsx)(u.B,{children:t}),(0,s.jsx)(S,{})]})})})}function z({className:e,children:t,...n}){return(0,s.jsxs)(h.e,{"data-slot":"select-item",className:(0,g.cn)("relative flex w-full cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",e),...n,children:[(0,s.jsx)(x.h,{className:"flex flex-1 shrink-0 gap-2 whitespace-nowrap",children:t}),(0,s.jsx)(f.h,{render:(0,s.jsx)("span",{className:"pointer-events-none absolute right-2 flex size-4 items-center justify-center"}),children:(0,s.jsx)(v.A,{className:"pointer-events-none"})})]})}function C({className:e,...t}){return(0,s.jsx)(p.w,{"data-slot":"select-scroll-up-button",className:(0,g.cn)("top-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",e),...t,children:(0,s.jsx)(w.A,{})})}function S({className:e,...t}){return(0,s.jsx)(m.d,{"data-slot":"select-scroll-down-button",className:(0,g.cn)("bottom-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",e),...t,children:(0,s.jsx)(b.A,{})})}},33082:(e,t,n)=>{"use strict";n.d(t,{UpdateBanner:()=>h});var s=n(95155),r=n(12115),a=n(56363),i=n(9005),l=n(64577),o=n(99314),c=n(39593);function d(e){if("string"!=typeof e)return null;let t=e.trim().replace(/^v/i,"").match(/^(\d+)(?:\.(\d+))?(?:\.(\d+))?/);return t?[Number(t[1]),Number(t[2]??0),Number(t[3]??0)]:null}let u="beacon:update-dismissed";function h({currentVersion:e}){let[t,n]=(0,r.useState)(null),[x,f]=(0,r.useState)(!1);if((0,r.useEffect)(()=>{let t=!1;return(async()=>{try{let s=await fetch(c.kw);if(!s.ok)return;let r=await s.json(),a="string"==typeof r?.version?r.version:"";if(t||!function(e,t){let n=d(e),s=d(t);if(!n||!s)return!1;for(let e=0;e<3;e++){if(n[e]>s[e])return!0;if(n[e]<s[e])break}return!1}(a,e)||localStorage.getItem(u)===a)return;n(a)}catch{}})(),()=>{t=!0}},[e]),!t)return null;let p=async()=>{try{await navigator.clipboard?.writeText(c.EO),f(!0),setTimeout(()=>f(!1),1600)}catch{}};return(0,s.jsx)("div",{className:"pointer-events-none fixed bottom-4 right-4 z-50 flex justify-end",children:(0,s.jsx)("div",{className:"glass pointer-events-auto w-[320px] rounded-xl p-3.5 shadow-xl",children:(0,s.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,s.jsx)(a.A,{className:"mt-0.5 size-4 shrink-0 text-[#ff7a45]"}),(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,s.jsx)("p",{className:"text-[13px] font-semibold tracking-tight text-foreground",children:"New version available"}),(0,s.jsx)("button",{type:"button",onClick:()=>{try{localStorage.setItem(u,t)}catch{}n(null)},"aria-label":"Dismiss",className:"shrink-0 rounded-md p-0.5 text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(i.A,{className:"size-3.5"})})]}),(0,s.jsxs)("p",{className:"mt-0.5 text-[11px] text-muted-foreground",children:[e," →"," ",(0,s.jsx)("span",{className:"text-foreground",children:t.replace(/^v/i,"")})," \xb7 update Beacon"]}),(0,s.jsxs)("button",{type:"button",onClick:p,title:"Copy the update command",className:"mt-2.5 flex w-full items-center justify-between gap-2 rounded-lg border border-white/10 bg-black/30 px-2.5 py-1.5 text-left font-mono text-[11px] text-muted-foreground transition-colors hover:border-white/20 hover:text-foreground",children:[(0,s.jsx)("span",{className:"truncate",children:c.EO}),x?(0,s.jsx)(l.A,{className:"size-3.5 shrink-0 text-[#ff7a45]"}):(0,s.jsx)(o.A,{className:"size-3.5 shrink-0"})]})]})]})})})}},39593:(e,t,n)=>{"use strict";n.d(t,{EO:()=>i,W6:()=>a,kw:()=>r});var s=n(41463);let r="https://registry.npmjs.org/trybeacon/latest",a=(s.env.NEXT_PUBLIC_BEACON_SITE_URL??"https://www.trybeacon.sh").replace(/\/$/,""),i=`curl -fsSL ${a}/install.sh | sh`},48484:(e,t,n)=>{"use strict";n.d(t,{PlanProvider:()=>d,j:()=>u});var s=n(95155),r=n(12115),a=n(73321),i=n(60292),l=n(99979);let o={pending:!1,proposedAt:0,tables:0,endpoints:0,features:0},c=(0,r.createContext)(null);function d({children:e}){let t=(0,a.useRouter)(),[n,u]=(0,r.useState)(o),h=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/plan",{method:"GET",cache:"no-store",headers:(0,i.dh)((0,l.X0)())});if(!e.ok)return;let t=await e.json();u(t)}catch{}},[]);(0,r.useEffect)(()=>{h();let e=setInterval(()=>void h(),4e3);return()=>clearInterval(e)},[h]);let x=(0,r.useCallback)(async()=>{await fetch("/api/plan",{method:"DELETE",headers:(0,i.dh)((0,l.X0)())}).catch(()=>{}),u(o),t.refresh()},[t]),f=(0,r.useCallback)(async()=>{await fetch("/api/plan/approve",{method:"POST",headers:(0,i.dh)((0,l.X0)())}).catch(()=>{}),u(o),t.refresh()},[t]);return(0,s.jsx)(c.Provider,{value:{status:n,discard:x,approvePlan:f,refresh:h},children:e})}function u(){let e=(0,r.useContext)(c);if(!e)throw Error("usePlan must be used inside PlanProvider");return e}},52174:(e,t,n)=>{"use strict";n.d(t,{MainRegion:()=>r});var s=n(95155);function r({children:e}){return(0,s.jsx)("main",{className:"flex flex-1 flex-col",children:e})}},52965:(e,t,n)=>{"use strict";n.d(t,{_:()=>r});var s=n(95155);function r({size:e=18,className:t}){return(0,s.jsxs)("svg",{width:e,height:e,viewBox:"20 22 56 56",fill:"none",className:t,"aria-hidden":"true",children:[(0,s.jsx)("path",{d:"M48 33 L72.5 73 L23.5 73 Z",fill:"none",stroke:"var(--accent-2, #ff7a45)",strokeWidth:7,strokeLinejoin:"round",strokeLinecap:"round"}),(0,s.jsx)("circle",{cx:"48",cy:"29.5",r:"7",fill:"var(--accent-2, #ff7a45)"})]})}},60292:(e,t,n)=>{"use strict";n.d(t,{Bz:()=>s,Fj:()=>l,aE:()=>a,dh:()=>i,fk:()=>r,q0:()=>o});let s="beacon:tab-ws";function r(){var e;let t=new URLSearchParams(window.location.search).get("ws"),n=null;try{t&&sessionStorage.setItem(s,t),n=sessionStorage.getItem(s)}catch{}return e=n,t||e||null}function a(e){try{sessionStorage.setItem(s,e)}catch{}}function i(e){return e?{"x-beacon-workspace":e}:{}}function l(e,t,n){let s=new URLSearchParams;for(let[e,r]of(t&&s.set("ws",t),Object.entries(n??{})))s.set(e,r);let r=s.toString();return r?`${e}?${r}`:e}function o(e,t){if(e.startsWith("/api/"))return!0;try{let n=new URL(e,t);return n.origin===t&&n.pathname.startsWith("/api/")}catch{return!1}}},66872:()=>{},77242:(e,t,n)=>{"use strict";n.d(t,{TabWorkspace:()=>i});var s=n(12115),r=n(73321),a=n(60292);function i(){let e=(0,r.useRouter)(),t=(0,r.usePathname)();return(0,s.useEffect)(()=>{let e=window.fetch;if(e.__beaconPinned)return;let t=(t,n)=>{try{let s=(0,a.fk)();if(s){let r=window.location.origin;if(t instanceof Request){if((0,a.q0)(t.url,r)&&!t.headers.has("x-beacon-workspace")){let r=new Headers(t.headers);return r.set("x-beacon-workspace",s),e(new Request(t,{headers:r}),n)}}else{let i="string"==typeof t?t:t.href;if((0,a.q0)(i,r)){let r=new Headers(n?.headers);if(!r.has("x-beacon-workspace"))return r.set("x-beacon-workspace",s),e(t,{...n,headers:r})}}}}catch{}return e(t,n)};return t.__beaconPinned=!0,window.fetch=t,()=>{window.fetch=e}},[]),(0,s.useEffect)(()=>{let n=new URLSearchParams(window.location.search).get("ws");if(n){try{sessionStorage.setItem(a.Bz,n)}catch{}return}let s=null;try{s=sessionStorage.getItem(a.Bz)}catch{}if(!s)return;let r=new URLSearchParams(window.location.search);r.set("ws",s),e.replace(`${t}?${r.toString()}`)},[t,e]),null}},81984:(e,t,n)=>{"use strict";n.d(t,{NotesProvider:()=>i,b:()=>l});var s=n(95155),r=n(12115);let a=(0,r.createContext)(null);function i({children:e}){let[t,n]=(0,r.useState)(!1),l=(0,r.useCallback)(()=>n(!0),[]),o=(0,r.useCallback)(()=>n(!1),[]),c=(0,r.useCallback)(()=>n(e=>!e),[]),d=(0,r.useMemo)(()=>({open:t,openDrawer:l,close:o,toggle:c}),[t,l,o,c]);return(0,s.jsx)(a.Provider,{value:d,children:e})}function l(){let e=(0,r.useContext)(a);if(!e)throw Error("useNotes must be used inside NotesProvider");return e}},81998:(e,t,n)=>{"use strict";n.d(t,{LiveRefresh:()=>l});var s=n(12115),r=n(73321);let a={primed:!1,lastV:-1,lastNavSeq:-1};var i=n(60292);function l(){let e=(0,r.useRouter)();return(0,s.useEffect)(()=>{let t=(0,i.fk)(),n=new EventSource(t?`/api/stream?ws=${encodeURIComponent(t)}`:"/api/stream"),s=a;return n.onopen=()=>{s=a},n.onmessage=t=>{var n,r;let a;try{a=JSON.parse(t.data)}catch{e.refresh();return}let{state:i,action:l}=(n=s,r={v:"number"==typeof a.v?a.v:0,navSeq:a.nav?.seq??0,navPath:a.nav?.path??""},n.primed?r.navSeq!==n.lastNavSeq?{state:{primed:!0,lastV:r.v,lastNavSeq:r.navSeq},action:{kind:"push",path:r.navPath}}:r.v!==n.lastV?{state:{...n,lastV:r.v},action:{kind:"refresh"}}:{state:n,action:{kind:"none"}}:{state:{primed:!0,lastV:r.v,lastNavSeq:r.navSeq},action:{kind:"none"}});if(s=i,"refresh"===l.kind)e.refresh();else if("push"===l.kind&&l.path){e.push(l.path);try{window.focus()}catch{}}},()=>n.close()},[e]),null}},82099:(e,t,n)=>{"use strict";n.d(t,{b:()=>a});var s=n(95155);n(12115);var r=n(91337);function a({className:e,children:t,...n}){return(0,s.jsxs)("div",{className:(0,r.cn)("glass relative isolate overflow-hidden",e),...n,children:[(0,s.jsx)("span",{"aria-hidden":!0,className:"pointer-events-none absolute inset-0 -z-10 rounded-[inherit]",style:{background:"radial-gradient(90% 60% at 0% 0%, oklch(1 0 0 / 0.04), transparent 42%)"}}),(0,s.jsx)("span",{"aria-hidden":!0,className:"pointer-events-none absolute inset-0 -z-10 rounded-[inherit] opacity-[0.035] mix-blend-overlay",style:{backgroundImage:"url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E\")",backgroundSize:"120px 120px"}}),t]})}},91337:(e,t,n)=>{"use strict";n.d(t,{cn:()=>a});var s=n(29722),r=n(622);function a(...e){return(0,r.QP)((0,s.$)(e))}},96848:(e,t,n)=>{"use strict";n.d(t,{TopNav:()=>g});var s=n(95155),r=n(12115),a=n(98500),i=n.n(a),l=n(73321),o=n(82879),c=n(52965),d=n(39143),u=n(26518),h=n(91337),x=n(60292);function f({fallback:e}){let[t,n]=(0,r.useState)([]),[a,i]=(0,r.useState)(null);if((0,r.useEffect)(()=>{let e=!0,t=()=>fetch("/api/workspace").then(e=>e.ok?e.json():null).then(t=>{e&&t&&(n(t.workspaces??[]),i((0,x.fk)()??t.active??null))}).catch(()=>{});t();let s=setInterval(t,5e3);return()=>{e=!1,clearInterval(s)}},[]),0===t.length)return e?(0,s.jsxs)("span",{className:"font-mono text-xs text-muted-foreground",children:["\xb7 ",e]}):null;async function l(e){i(e),(0,x.aE)(e),await Promise.race([fetch("/api/workspace",{method:"POST",headers:{"content-type":"application/json","x-beacon-workspace":e},body:JSON.stringify({id:e}),signal:AbortSignal.timeout(8e3)}).catch(()=>{}),new Promise(e=>setTimeout(e,2500))]);let t=new URLSearchParams(window.location.search);t.set("ws",e),window.location.href=`${window.location.pathname}?${t.toString()}`}let o=t.find(e=>e.id===a);return(0,s.jsxs)(u.l6,{value:a??"",onValueChange:e=>e&&l(e),children:[(0,s.jsxs)(u.bq,{className:"h-7 gap-1.5 rounded-lg border-white/12 bg-white/[0.04] px-2 text-xs font-medium transition-colors hover:bg-white/[0.07]",children:[(0,s.jsx)(d.A,{className:"size-3.5 shrink-0 text-muted-foreground"}),(0,s.jsx)(u.yv,{children:()=>o?.name??"Project"})]}),(0,s.jsxs)(u.gC,{align:"start",alignItemWithTrigger:!1,sideOffset:6,className:"min-w-[250px] border border-white/10 bg-popover/95 p-1.5 backdrop-blur-xl",children:[(0,s.jsx)("p",{className:"px-2 pt-1 pb-1.5 text-[10px] font-semibold uppercase tracking-wider text-muted-foreground/70",children:"Workspace"}),t.map(e=>{var t,n;let r,i=e.id===a;return(0,s.jsx)(u.eb,{value:e.id,className:(0,h.cn)("gap-2.5 rounded-lg py-1.5 pr-8 pl-1.5 transition-colors",i&&"bg-white/[0.05]"),children:(0,s.jsxs)("span",{className:"flex items-center gap-2.5",children:[(0,s.jsx)("span",{className:(0,h.cn)("flex size-7 shrink-0 items-center justify-center rounded-md border",i?"border-sky-400/30 bg-sky-400/10 text-sky-300":"border-white/10 bg-white/[0.03] text-muted-foreground"),children:(0,s.jsx)(d.A,{className:"size-3.5"})}),(0,s.jsxs)("span",{className:"flex min-w-0 flex-col",children:[(0,s.jsx)("span",{className:"truncate text-[13px] font-medium leading-tight text-foreground",children:e.name}),(0,s.jsx)("span",{className:"truncate font-mono text-[10px] leading-tight text-muted-foreground",children:(t=e.path,n=e.name,(r=t.replace(/^\/(Users|home)\/[^/]+/,"~").split("/").filter(Boolean))[r.length-1]===n&&r.pop(),(r.length>3?[r[0],"…",r[r.length-1]]:r).join("/")||"~")})]})]})},e.id)})]})]})}var p=n(81984);let m=[{href:"/plan",label:"Plans"},{href:"/map",label:"Map"},{href:"/settings",label:"Settings"}];function g({repo:e}){let t=(0,l.usePathname)(),{toggle:n,open:a}=(0,p.b)(),[d,u]=(0,r.useState)(null);return(0,r.useEffect)(()=>{u((0,x.fk)())},[t]),(0,s.jsx)("header",{className:"pointer-events-none fixed left-3 top-3 z-30",children:(0,s.jsxs)("div",{className:"glass pointer-events-auto flex h-10 items-center gap-1 rounded-full pl-3 pr-1.5",children:[(0,s.jsxs)(i(),{href:"/",className:"mr-1 flex items-center gap-2 text-sm font-semibold tracking-tight",children:[(0,s.jsx)(c._,{size:18,className:"text-foreground"}),"Beacon"]}),(0,s.jsx)("span",{"aria-hidden":!0,className:"mx-1 h-5 w-px bg-white/10"}),(0,s.jsx)(f,{fallback:e}),(0,s.jsx)("span",{"aria-hidden":!0,className:"mx-1 h-5 w-px bg-white/10"}),(0,s.jsx)("nav",{className:"flex items-center gap-0.5 text-sm",children:m.map(e=>{let n=t===e.href||t.startsWith(e.href+"/");return(0,s.jsx)(i(),{href:(0,x.Fj)(e.href,d),className:(0,h.cn)("rounded-full px-3 py-1 text-[13px] tracking-tight transition-colors",n?"bg-white/[0.09] text-foreground shadow-[inset_0_1px_0_rgba(255,255,255,0.06)]":"text-muted-foreground hover:bg-white/[0.04] hover:text-foreground"),children:e.label},e.href)})}),(0,s.jsx)("span",{"aria-hidden":!0,className:"mx-1 h-5 w-px bg-white/10"}),(0,s.jsx)("button",{type:"button",onClick:n,"aria-pressed":a,"aria-label":"Notes",title:"Notes",className:(0,h.cn)("flex items-center justify-center rounded-full p-1.5 transition-colors",a?"bg-white/[0.09] text-foreground shadow-[inset_0_1px_0_rgba(255,255,255,0.06)]":"text-muted-foreground hover:bg-white/[0.04] hover:text-foreground"),children:(0,s.jsx)(o.A,{className:"size-4"})})]})})}},99979:(e,t,n)=>{"use strict";function s(){return new URLSearchParams(window.location.search).get("ws")}function r(e){let t=new URLSearchParams,n=s();for(let[s,r]of(n&&t.set("ws",n),Object.entries(e??{})))t.set(s,r);let r=t.toString();return r?`/plan?${r}`:"/plan"}n.d(t,{X0:()=>s,rc:()=>r})}},e=>{e.O(0,[7513,7352,5004,277,8500,4888,8997,7886,8441,3794,7358],()=>e(e.s=15053)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5823],{39454:(e,t,s)=>{Promise.resolve().then(s.bind(s,91588)),Promise.resolve().then(s.bind(s,62079)),Promise.resolve().then(s.bind(s,69882))},62079:(e,t,s)=>{"use strict";s.d(t,{FilesMapClient:()=>L});var o=s(95155),n=s(12115),r=s(81750),l=s(6266),a=s(7679),i=s(98766),d=s(15629),c=s(79176),u=s(2982),p=s(64385);s(53255);var h=s(17356),f=s(24413),x=s(18986),m=s(9005),g=s(25583),b=s(82099),y=s(62311),j=s(9991),k=s(91157),w=s(56895),N=s(16607),v=s(14983);let M=/(^|\/)tests?\/|\.(test|spec)\.[jt]sx?$/i;var C=s(44267),S=s(70947),A=s(98238),$=s(56614),z=s(28161);let E=/\.(py|go|rb|rs|java|php|ex|exs)$/i,I=/(^|\/)(app\/api|pages\/api|migrations|bin)\/|(^|\/)instrumentation\.[^/]+$/,O=e=>e.includes("/")?e.slice(0,e.indexOf("/")):"(root)";function D(e){let t=Math.max(14,.35*e.length),s=new Map;for(let t of e)s.set(t,O(t));for(let e=0;e<6;e++){let e=new Map;for(let t of s.values())e.set(t,(e.get(t)??0)+1);let o=!1;for(let[n,r]of s){if((e.get(r)??0)<=t||!n.startsWith(`${r}/`))continue;let l=n.slice(r.length+1);l.includes("/")&&(s.set(n,`${r}/${l.slice(0,l.indexOf("/"))}`),o=!0)}if(!o)break}return s}var Z=s(29523),R=s(70221),F=s(12410),P=s(91337);function _(e){return 5+.5*Math.min(e,26)}let T={file:function({data:e}){let t=(0,Z.k)(R.kz),s=!!e.touched,n=e.recency??0,a=e.inDegree??0,i=_(a),d=e.layer??null,c=2*!!d,u=a>0?` \xb7 imported by ${a}`:"",p=d?` \xb7 ${"fullstack"===d?"shared (used by frontend + backend)":z.YG[d].label.toLowerCase()}`:"",h=s?`${e.tooltip} \xb7 edited ${e.count??0}\xd7 this session${u}${p}`:e.untested?`${e.tooltip} \xb7 no test imports this file${u}${p}`:`${e.tooltip}${u}${p}`;return(0,o.jsxs)("div",{title:h,className:"relative flex flex-col items-center",children:[(0,o.jsx)(r.h7,{type:"target",position:l.yX.Top,isConnectable:!1,className:"!h-0 !w-0 !min-w-0 !border-0 !bg-transparent",style:{top:i+c,left:"50%"}}),(0,o.jsx)("span",{"aria-hidden":!0,className:(0,P.cn)("rounded-full",e.isNewest&&"animate-touch-pulse"),style:{padding:c,background:d?(0,z.A6)(d):void 0,boxShadow:s?`0 0 ${8+Math.round(14*n)}px ${2+Math.round(3*n)}px rgba(45,212,191,${(.35+.45*n).toFixed(2)})`:e.untested?"0 0 0 2px rgba(251,191,36,0.65)":"none"},children:(0,o.jsx)("span",{"aria-hidden":!0,className:"block rounded-full",style:{width:2*i,height:2*i,backgroundColor:e.dirColor}})}),s&&(e.count??0)>0&&(0,o.jsx)("span",{"aria-hidden":!0,className:"absolute -right-2 -top-2 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-teal-400 px-0.5 text-[8px] font-bold text-background ring-1 ring-background",children:e.count}),("full"===t||"mid"===t&&a>=4)&&(0,o.jsx)("span",{className:(0,P.cn)("pointer-events-none mt-1 max-w-44 truncate text-[10px] leading-tight",s?"font-semibold text-teal-100":"text-foreground/75"),children:e.label}),(0,o.jsx)(r.h7,{type:"source",position:l.yX.Bottom,isConnectable:!1,className:"!h-0 !w-0 !min-w-0 !border-0 !bg-transparent",style:{top:i+c,bottom:"auto",left:"50%"}})]})}};function W({regions:e,dominant:t}){return(0,o.jsx)(r.DX,{children:e.map(e=>{let s=t.get(e.key);return s&&"fullstack"!==s?(0,o.jsx)("div",{style:{position:"absolute",transform:`translate(${e.x-.15*e.w}px, ${e.y-.15*e.h}px)`,width:1.3*e.w,height:1.3*e.h,pointerEvents:"none",zIndex:0,background:`radial-gradient(closest-side, ${z.ZD[s]} 0%, transparent 72%)`,opacity:.1}},e.key):null})})}function L({files:e,edges:t,touched:s,hasFrontend:l=!1,classificationRoots:O=[]}){let X,B=(0,n.useMemo)(()=>(function(e,t){let s=function(e){if(!e?.length)return[];let t=new Set;for(let s of e){let e=s.trim().replace(/^\/+|\/+$/g,"");e&&t.add(e)}return[...t]}(t);if(!s.length)return D(e);let o=new Map,n=[];for(let t of e){let e=function(e,t){let s=null;for(let o of t)(e===o||e.startsWith(`${o}/`))&&(!s||o.length>s.length)&&(s=o);return s}(t,s);e?o.set(t,function(e,t){if(e===t||!e.startsWith(`${t}/`))return t;let s=e.slice(t.length+1);return s.includes("/")?`${t}/${s.slice(0,s.indexOf("/"))}`:t}(t,e)):n.push(t)}for(let[e,t]of D(n))o.set(e,t);return o})(e.map(e=>e.path),O),[e,O]),G=(0,n.useMemo)(()=>(function(e,t,s){let o=function(e){let t=new Map;for(let s of e.values())t.set(s,(t.get(s)??0)+1);let s=Array.from(t.entries()).sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])),o=Math.max(1,Math.ceil(Math.sqrt(2.5*s.length))),n=new Map;return s.forEach(([e],t)=>{n.set(e,{x:t%o*1250,y:950*Math.floor(t/o)})}),n}(s),n=e=>o.get(s.get(e)??"(root)"),r=e.map(e=>{let t=function(e){let t=0x811c9dc5;for(let s=0;s<e.length;s++)t=(t^e.charCodeAt(s))*0x1000193>>>0;return{x:(t%10007/10007-.5)*900,y:((t>>>13)%10007/10007-.5)*900}}(e.path),s=n(e.path);return{id:e.path,x:s.x+.5*t.x,y:s.y+.5*t.y,pinned:!1,radius:_(e.inDegree??0)+22}}),l=t.filter(e=>e.from!==e.to).map(e=>({source:e.from,target:e.to})),h=(0,a.A)(r).force("link",(0,i.A)(l).id(e=>e.id).distance(100).strength(e=>{let t="object"==typeof e.source?e.source.id:String(e.source),o="object"==typeof e.target?e.target.id:String(e.target);return s.get(t)===s.get(o)?.5:.02})).force("charge",(0,d.A)().strength(-260).distanceMax(800)).force("collide",(0,c.A)().radius(e=>e.radius).strength(.6)).force("clusterX",(0,u.A)(e=>n(e.id).x).strength(.1)).force("clusterY",(0,p.A)(e=>n(e.id).y).strength(.115)).stop();for(let e=0;e<500;e++)h.tick();let f=new Map;for(let e of r)f.set(e.id,{x:e.x??0,y:e.y??0});return f})(e,t,B),[e,t,B]),U=(0,n.useMemo)(()=>(function(e,t){var s;let o=new Set;for(let e of t)s=e.from,M.test(s)&&o.add(e.to);let n=new Set;for(let t of e)M.test(t)||o.has(t)||n.add(t);return n})(e.map(e=>e.path),t),[e,t]),H=(0,n.useMemo)(()=>l?function(e,t){let s=new Map,o=new Map;for(let e of t){let t=o.get(e.from);t?t.push(e.to):o.set(e.from,[e.to])}let n=new Map;for(let t of e){let e=I.test(t)?"backend":z.An.test(t)?"frontend":E.test(t)?"backend":null;s.set(t,e),e&&n.set(t,e)}let r=e=>{let t=new Set,s=[];for(let[t,o]of n)o===e&&s.push(t);for(;s.length;){let e=s.pop();for(let n of o.get(e)??[])t.has(n)||(t.add(n),s.push(n))}return t},l=r("frontend"),a=r("backend");for(let t of e){if(s.get(t))continue;let e=l.has(t),o=a.has(t);e&&o?s.set(t,"fullstack"):e?s.set(t,"frontend"):o&&s.set(t,"backend")}return s}(e.map(e=>e.path),t):null,[l,e,t]),q=(0,n.useMemo)(()=>{let e=new Map,t=Object.entries(s??{});if(!t.length)return e;let o=t.map(([,e])=>e.lastAt),n=Math.max(...o),r=Math.min(...o),l=n-r||1,a=t[0][0],i=t[0][1].lastAt;for(let[e,s]of t)s.lastAt>=i&&(a=e,i=s.lastAt);for(let[s,o]of t)e.set(s,{count:o.count,recency:(o.lastAt-r)/l,isNewest:s===a});return e},[s]),J=q.size>0,K=(0,n.useMemo)(()=>Array.from(q.entries()).map(([e,t])=>({path:e,label:e.slice(e.lastIndexOf("/")+1),count:t.count,recency:t.recency})).sort((e,t)=>t.recency-e.recency),[q]),Q=(0,n.useMemo)(()=>e.map(e=>{let t=G.get(e.path)??{x:e.x,y:e.y},s=e.path.lastIndexOf("/"),o=s>=0?e.path.slice(s+1):e.path,n=q.get(e.path);return{id:e.path,type:"file",position:t,data:{label:o,tooltip:e.path,untested:U.has(e.path),inDegree:e.inDegree??0,dirColor:(0,F.i3)(B.get(e.path)??"(root)"),layer:H?.get(e.path)??null,touched:!!n,count:n?.count??0,recency:n?.recency??0,isNewest:n?.isNewest??!1}}}),[e,G,U,q,H,B]),Y=(0,n.useMemo)(()=>t.map(e=>({id:`${e.from}|${e.to}`,source:e.from,target:e.to,type:"straight",selectable:!1,focusable:!1,style:{pointerEvents:"none",...e.circular?{stroke:"#f87171",strokeDasharray:"5 3",strokeWidth:1.5,opacity:.6}:{stroke:"#8b8b94",strokeWidth:1,opacity:.3}}})),[t]),[ee,et]=(0,n.useState)(Q),[es,eo]=(0,n.useState)(Y),[en,er]=(0,n.useState)(null),[el,ea]=(0,n.useState)(null),[ei,ed]=(0,n.useState)(null),[ec,eu]=(0,n.useState)(!1),[ep,eh]=(0,n.useState)(!1),[ef,ex]=(0,n.useState)(null),[em,eg]=(0,n.useState)(!1),[eb,ey]=(0,n.useState)(""),[ej,ek]=(0,n.useState)(!1),[ew,eN]=(0,n.useState)("full"),ev=(0,n.useRef)(null),eM=(0,n.useCallback)(e=>{er(e),ed(null);let t=ev.current?.getNode(e);t&&ev.current&&ev.current.setCenter(t.position.x+40,t.position.y+12,{zoom:1.4,duration:600})},[]),eC=(0,n.useCallback)(()=>{er(null),ed(null);let e=!ep;if(eh(e),eg(e),e&&ev.current){let e=Array.from(q.keys()).map(e=>({id:e}));e.length&&ev.current.fitView({nodes:e,duration:600,padding:.4})}},[ep,q]),eS=(0,n.useMemo)(()=>(0,k.b)(e,t,B),[e,t,B]),eA=(0,n.useCallback)(e=>{ev.current&&(e.focusIds.length?ev.current.fitView({nodes:e.focusIds.map(e=>({id:e})),duration:700,padding:.3,maxZoom:1.1}):ev.current.fitView({duration:700,padding:.1}))},[]),e$=(0,w.W)(eS,eA);(0,n.useEffect)(()=>ek(!0),[]),(0,n.useEffect)(()=>et(Q),[Q]),(0,n.useEffect)(()=>eo(Y),[Y]);let ez=(0,n.useCallback)(e=>et(t=>(0,r._0)(e,t)),[]),eE=(0,n.useCallback)(e=>eo(t=>(0,r.zW)(e,t)),[]),eI=(0,n.useCallback)((e,t,s)=>{fetch("/api/code-graph/position",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({path:e,x:t,y:s})})},[]),eO=(0,n.useMemo)(()=>new Set(t.filter(e=>e.circular).map(e=>`${e.from}|${e.to}`)),[t]),eD=(0,n.useMemo)(()=>{let e=new Set;for(let s of t)s.circular&&(e.add(s.from),e.add(s.to));return e},[t]),eZ=en??el,eR=eb.trim().length>0,eF=(0,n.useMemo)(()=>{if(!eR)return null;let t=new Set;for(let s of e)(0,v.Qk)((0,v.zn)(s),eb)&&t.add(s.path);return t},[e,eb,eR]),eP=(0,n.useMemo)(()=>eR?(0,v.r2)(e,eb,e=>(0,v.zn)(e),e=>({id:e.path,label:e.path,sublabel:e.lang??void 0,kind:"file"})):[],[e,eb,eR]),e_=(0,n.useMemo)(()=>{if(ei){let e=es.find(e=>e.id===ei);return e?new Set([e.source,e.target]):null}if(eZ){let e=new Set([eZ]);for(let s of t)s.from===eZ&&e.add(s.to),s.to===eZ&&e.add(s.from);return e}return ec?eD:ep&&J?new Set(q.keys()):null},[eZ,ei,ec,eD,t,es,ep,J,q]),eT=e$.focusIds,eW=eT??eF??e_,eL=eF??eT,eV=(0,n.useMemo)(()=>{if(!ef||!H)return null;let t=new Set;for(let s of e)(0,A.F)(ef,H.get(s.path)??null)||t.add(s.path);return t},[ef,H,e]),eX=(0,n.useMemo)(()=>eW?ee.map(e=>{let t=eW.has(e.id);return{...e,zIndex:t&&eL?10:e.zIndex,style:{...e.style,opacity:t?1:.15,boxShadow:t&&eL?v.RU:e.style?.boxShadow,borderRadius:t&&eL?9999:e.style?.borderRadius,transition:"opacity 120ms, box-shadow 120ms"}}}):eV?ee.map(e=>eV.has(e.id)?{...e,style:{...e.style,opacity:.15,transition:"opacity 120ms"}}:e):ee,[ee,eW,eL,eV]),eB=(0,n.useMemo)(()=>eT?es.map(e=>eT.has(e.source)&&eT.has(e.target)?{...e,style:{...e.style,stroke:"#e4e4e7",opacity:.9,strokeWidth:1.4}}:{...e,style:{...e.style,opacity:.05}}):eF?es.map(e=>eF.has(e.source)&&eF.has(e.target)?{...e,style:{...e.style,stroke:"#e4e4e7",opacity:.95,strokeWidth:1.6}}:{...e,style:{...e.style,opacity:.05}}):eZ||ei||ec||ep?es.map(e=>{let t=!1;return ei?t=e.id===ei:eZ?t=e.source===eZ||e.target===eZ:ec?t=eO.has(e.id):ep&&(t=q.has(e.source)&&q.has(e.target)),t?{...e,style:{...e.style,stroke:"#e4e4e7",opacity:.95,strokeWidth:1.6}}:{...e,style:{...e.style,opacity:.05}}}):eV?es.map(e=>eV.has(e.source)||eV.has(e.target)?{...e,style:{...e.style,opacity:.05}}:e):es,[es,eZ,ei,ec,eO,ep,q,eF,eV,eT]),eG=(0,n.useMemo)(()=>{let e=ee.map(e=>{let t=_(e.data.inDegree??0);return{id:e.id,group:B.get(e.id)??"(root)",x:e.position.x,y:e.position.y,w:2*t,h:2*t}});return(0,C.S)(e,{pad:60})},[ee,B]),eU=(0,n.useMemo)(()=>{let t=new Map;if(!H)return t;let s=new Map;for(let t of e){let e=H.get(t.path);if(!e)continue;let o=B.get(t.path)??"(root)",n=s.get(o)??new Map;n.set(e,(n.get(e)??0)+1),s.set(o,n)}for(let[e,o]of s){let s=null,n=0,r=!1;for(let[e,t]of o)t>n?(s=e,n=t,r=!1):t===n&&(r=!0);t.set(e,r?null:s)}return t},[H,e,B]),eH=(0,n.useMemo)(()=>{let e=new Map;for(let t of B.values())e.set(t,(e.get(t)??0)+1);return Array.from(e.entries()).sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])).map(([e,t])=>({group:e,count:t,color:(0,F.i3)(e)}))},[B]),eq=t.filter(e=>e.circular).length,eJ=(0,n.useMemo)(()=>en?t.filter(e=>e.from===en).map(e=>e.to):[],[en,t]),eK=(0,n.useMemo)(()=>en?t.filter(e=>e.to===en).map(e=>e.from):[],[en,t]),eQ=null!==en||em&&J,eY=(0,n.useCallback)(()=>{er(null),eg(!1),eh(!1)},[]);return ej?(0,o.jsxs)("div",{className:"canvas-dots relative h-screen w-full",children:[(0,o.jsxs)(r.Gc,{nodes:eX,edges:eB,nodeTypes:T,onNodesChange:ez,onEdgesChange:eE,onNodeClick:(e,t)=>{er(t.id),ed(null)},onEdgeClick:(e,t)=>{ed(t.id),er(null)},onPaneClick:()=>{er(null),ed(null)},onNodeMouseEnter:(e,t)=>ea(t.id),onNodeMouseLeave:()=>ea(null),onInit:e=>{ev.current=e},onNodeDragStop:(e,t)=>eI(t.id,t.position.x,t.position.y),deleteKeyCode:null,colorMode:"dark",fitView:!0,fitViewOptions:{padding:.1,minZoom:.18,maxZoom:.9},minZoom:.05,panOnScroll:!0,zoomActivationKeyCode:["Meta","Control"],proOptions:{hideAttribution:!0},children:[(0,o.jsx)(S.Z,{regions:"far"===ew?eG:[],tone:"category",lod:ew}),l&&(0,o.jsx)(W,{regions:"far"===ew?[]:eG,dominant:eU}),(0,o.jsx)(Z.J,{onLod:eN,thresholds:R.kz}),(0,o.jsx)(r.H2,{position:"bottom-right",className:"!overflow-hidden !rounded-xl !border !border-white/10 [&_button]:!border-white/10 [&_button]:!bg-card/70 [&_button]:!text-foreground [&_button]:!backdrop-blur"}),(0,o.jsx)(r.Zk,{position:"bottom-right",style:{marginBottom:152},children:(0,o.jsx)($.er,{title:"Legend",trigger:(e,t)=>(0,o.jsx)("button",{type:"button",onClick:t,title:"Legend",className:(0,P.cn)("glass flex size-8 items-center justify-center rounded-lg transition-colors",e?"text-foreground":"text-muted-foreground hover:text-foreground"),children:(0,o.jsx)(h.A,{className:"size-4"})}),children:(0,o.jsxs)("ul",{className:"space-y-1.5 text-[10.5px] text-muted-foreground",children:[(0,o.jsxs)("li",{className:"flex items-center gap-2",children:[(0,o.jsx)("span",{"aria-hidden":!0,className:"inline-block size-2.5 shrink-0 rounded-full bg-zinc-400"}),(0,o.jsx)("span",{children:"a file \xb7 bigger dot = more files import it"})]}),l&&(0,o.jsxs)("li",{className:"flex items-center gap-2",children:[(0,o.jsx)("span",{"aria-hidden":!0,className:"inline-block size-2.5 shrink-0 rounded-full",style:{boxShadow:`inset 0 0 0 2px ${z.ZD.frontend}`}}),(0,o.jsx)("span",{children:"colored ring \xb7 frontend / backend layer"})]}),(0,o.jsxs)("li",{className:"flex items-center gap-2",children:[(0,o.jsx)("span",{"aria-hidden":!0,className:"inline-block h-px w-6 bg-[#4a4a52]"}),(0,o.jsx)("span",{children:"line \xb7 imports another file"})]}),(0,o.jsxs)("li",{className:"flex items-center gap-2",children:[(0,o.jsx)("span",{"aria-hidden":!0,className:"inline-block h-px w-6 bg-red-400"}),(0,o.jsx)("span",{children:"red \xb7 part of an import cycle"})]}),(0,o.jsxs)("li",{className:"flex items-center gap-2",children:[(0,o.jsxs)("span",{"aria-hidden":!0,className:"inline-flex shrink-0 gap-0.5",children:[(0,o.jsx)("span",{className:"inline-block size-2 rounded-full bg-violet-400"}),(0,o.jsx)("span",{className:"inline-block size-2 rounded-full bg-amber-400"})]}),(0,o.jsx)("span",{children:"dot color \xb7 its directory (chips, top-right)"})]})]})})}),(0,o.jsx)(r.of,{pannable:!0,zoomable:!0,position:"bottom-left",style:{width:140,height:90},className:"!overflow-hidden !rounded-xl !border !border-white/10 !bg-card/50 !backdrop-blur",nodeColor:()=>"#555"}),eS.length>0&&!e$.active&&(0,o.jsx)(r.Zk,{position:"top-left",className:"!mt-14",children:(0,o.jsxs)("button",{type:"button",onClick:e$.start,title:"Guided, dependency-ordered walkthrough of the codebase",className:"glass flex items-center gap-1.5 rounded-xl px-3 py-1.5 text-[11px] text-muted-foreground transition-colors hover:text-foreground",children:[(0,o.jsx)(f.A,{className:"size-3.5"}),"Start tour"]})}),(0,o.jsx)(r.Zk,{position:"top-center",className:"glass rounded-full px-1 py-0.5",children:(0,o.jsx)(y.Z,{active:"FILES",tabs:[{value:"ROADMAP",label:"Roadmap",href:"/map?view=ROADMAP"},{value:"ARCHITECTURE",label:"Architecture",href:"/map?view=ARCHITECTURE"},{value:"DATABASE",label:"Database",href:"/map?view=DATABASE"},{value:"FILES",label:"Files",href:"/map?view=FILES"}]})}),(0,o.jsx)(r.Zk,{position:"top-right",className:"glass !mt-14 flex max-w-[300px] flex-wrap items-center justify-end gap-x-2.5 gap-y-1 rounded-xl px-3 py-1.5",children:eH.map(t=>(0,o.jsxs)("button",{type:"button",onClick:()=>{let s=e.filter(e=>(B.get(e.path)??"(root)")===t.group).map(e=>({id:e.path}));s.length&&ev.current?.fitView({nodes:s,duration:600,padding:.3,maxZoom:1})},title:`${t.count} files — click to zoom to ${t.group}`,className:"flex items-center gap-1.5 rounded px-1 py-0.5 text-[10px] text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:[(0,o.jsx)("span",{"aria-hidden":!0,className:"size-2 shrink-0 rounded-full",style:{backgroundColor:t.color}}),t.group]},t.group))}),(0,o.jsxs)(r.Zk,{position:"top-right",className:"flex items-center gap-2",children:[(0,o.jsx)(j.X,{query:eb,onQuery:ey,hits:eP,placeholder:"Find a file…",onPick:e=>{ey(""),eM(e)},onZoomToMatches:()=>{eF?.size&&ev.current?.fitView({nodes:[...eF].map(e=>({id:e})),duration:600,padding:.3})}}),l&&(0,o.jsx)(A.o,{value:ef,onChange:ex,options:["frontend","backend"]}),(0,o.jsxs)("div",{className:"glass flex items-center gap-3 rounded-xl px-3 py-1.5 text-[11px]",children:[(0,o.jsxs)("span",{className:"text-muted-foreground",children:[e.length," files \xb7 ",t.length," imports"]}),eq>0&&(0,o.jsxs)("button",{type:"button",onClick:()=>{eu(e=>!e),er(null),ed(null)},title:ec?"Show all imports":"Show only files involved in import cycles",className:(0,P.cn)("flex items-center gap-1.5 rounded-md px-1.5 py-0.5 transition-colors",ec?"bg-red-500/15 text-red-200 ring-1 ring-red-400/40":"text-red-300 hover:bg-red-500/10"),children:[(0,o.jsx)("span",{"aria-hidden":!0,className:"inline-block h-0 w-5 border-t border-dashed",style:{borderColor:"#ef4444"}}),eq," circular"]}),J&&(0,o.jsx)(o.Fragment,{children:(0,o.jsxs)("button",{type:"button",onClick:eC,title:ep?"Show all files again":"Focus + zoom to the files edited this session",className:(0,P.cn)("flex items-center gap-1.5 rounded-md px-1.5 py-0.5 transition-colors",ep?"bg-teal-500/15 text-teal-200 ring-1 ring-teal-400/40":"text-teal-300 hover:bg-teal-500/10"),children:[(0,o.jsx)(x.A,{className:"size-3"}),q.size," edited"]})})]})]})]}),eQ&&(0,o.jsxs)(b.b,{className:"absolute bottom-3 right-3 top-16 z-10 flex w-72 flex-col rounded-2xl",children:[(0,o.jsxs)("div",{className:"flex items-center justify-between border-b border-white/10 px-3.5 py-2.5",children:[(0,o.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:en?"File":"Edited this session"}),(0,o.jsx)("button",{onClick:eY,title:"Close panel",className:"rounded-md p-1 text-muted-foreground transition-colors hover:bg-white/10 hover:text-foreground",children:(0,o.jsx)(m.A,{className:"size-4"})})]}),(0,o.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto p-3",children:en?(0,o.jsxs)("div",{className:"space-y-3",children:[(0,o.jsxs)("div",{children:[(0,o.jsxs)("div",{className:"flex items-start gap-1.5",children:[(0,o.jsx)(g.A,{className:"mt-0.5 size-4 shrink-0 text-muted-foreground"}),(0,o.jsx)("h2",{className:"break-all text-sm font-semibold leading-tight",children:en.slice(en.lastIndexOf("/")+1)})]}),(0,o.jsx)("div",{className:"mt-0.5 break-all font-mono text-[10px] text-muted-foreground",children:en})]}),(0,o.jsxs)("div",{className:"flex flex-wrap gap-1",children:[(X=q.get(en))?(0,o.jsxs)("span",{className:"rounded bg-teal-500/15 px-1.5 py-0.5 text-[10px] font-semibold text-teal-300",children:["edited ",X.count,"\xd7"]}):null,U.has(en)&&(0,o.jsx)("span",{className:"rounded bg-amber-500/15 px-1.5 py-0.5 text-[10px] font-semibold text-amber-300",children:"untested"})]}),(0,o.jsx)("button",{onClick:()=>fetch(`/api/open?path=${encodeURIComponent(en)}`).catch(()=>{}),className:"w-full rounded-md border border-white/10 px-2 py-1.5 text-[11px] text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:"Open in editor"}),(0,o.jsx)(V,{label:"Imports",paths:eJ,onPick:eM}),(0,o.jsx)(V,{label:"Imported by",paths:eK,onPick:eM})]}):(0,o.jsx)("ul",{className:"space-y-0.5",children:K.map(e=>(0,o.jsx)("li",{children:(0,o.jsxs)("button",{onClick:()=>eM(e.path),title:e.path,className:"flex w-full items-center justify-between gap-2 rounded px-2 py-1 text-left transition-colors hover:bg-white/[0.06]",children:[(0,o.jsx)("span",{className:"truncate text-[11px] text-foreground/90",children:e.label}),(0,o.jsxs)("span",{className:"shrink-0 text-[9px] text-teal-300/80",children:[e.count,"\xd7"]})]})},e.path))})})]}),e$.active&&e$.step&&(0,o.jsx)(N.d,{steps:eS,index:e$.index,onPrev:e$.prev,onNext:e$.next,onExit:e$.stop,onGoto:e$.goto})]}):(0,o.jsx)("div",{className:"flex h-screen w-full items-center justify-center text-sm text-muted-foreground",children:"Loading graph…"})}function V({label:e,paths:t,onPick:s}){return t.length?(0,o.jsxs)("div",{children:[(0,o.jsxs)("h3",{className:"mb-1 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground",children:[e," (",t.length,")"]}),(0,o.jsx)("ul",{className:"space-y-0.5",children:t.map(e=>(0,o.jsx)("li",{children:(0,o.jsx)("button",{onClick:()=>s(e),title:e,className:"block w-full truncate rounded px-1.5 py-0.5 text-left font-mono text-[10px] text-muted-foreground transition-colors hover:bg-white/5 hover:text-foreground",children:e.slice(e.lastIndexOf("/")+1)})},e))})]}):null}}},e=>{e.O(0,[2574,3862,8500,4888,8997,2500,766,3343,1439,1487,8441,3794,7358],()=>e(e.s=39454)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6624],{8143:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});let s=(0,n(30772).A)("list-checks",[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}]])},9383:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});let s=(0,n(30772).A)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]])},22137:(e,t,n)=>{Promise.resolve().then(n.bind(n,69958))},38332:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});let s=(0,n(30772).A)("strikethrough",[["path",{d:"M16 4H9a3 3 0 0 0-2.83 4",key:"43sutm"}],["path",{d:"M14 12a4 4 0 0 1 0 8H6",key:"nlfj13"}],["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}]])},48484:(e,t,n)=>{"use strict";n.d(t,{PlanProvider:()=>c,j:()=>u});var s=n(95155),r=n(12115),o=n(73321),a=n(60292),l=n(99979);let i={pending:!1,proposedAt:0,tables:0,endpoints:0,features:0},d=(0,r.createContext)(null);function c({children:e}){let t=(0,o.useRouter)(),[n,u]=(0,r.useState)(i),m=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/plan",{method:"GET",cache:"no-store",headers:(0,a.dh)((0,l.X0)())});if(!e.ok)return;let t=await e.json();u(t)}catch{}},[]);(0,r.useEffect)(()=>{m();let e=setInterval(()=>void m(),4e3);return()=>clearInterval(e)},[m]);let h=(0,r.useCallback)(async()=>{await fetch("/api/plan",{method:"DELETE",headers:(0,a.dh)((0,l.X0)())}).catch(()=>{}),u(i),t.refresh()},[t]),x=(0,r.useCallback)(async()=>{await fetch("/api/plan/approve",{method:"POST",headers:(0,a.dh)((0,l.X0)())}).catch(()=>{}),u(i),t.refresh()},[t]);return(0,s.jsx)(d.Provider,{value:{status:n,discard:h,approvePlan:x,refresh:m},children:e})}function u(){let e=(0,r.useContext)(d);if(!e)throw Error("usePlan must be used inside PlanProvider");return e}},50981:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});let s=(0,n(30772).A)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]])},69958:(e,t,n)=>{"use strict";n.d(t,{PlanWorkspace:()=>es});var s=n(95155),r=n(12115),o=n(64577),a=n(25640),l=n(34306),i=n(92571),d=n(65408),c=n(30772);let u=(0,c.A)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);var m=n(8143);let h=(0,c.A)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);var x=n(82879),p=n(17356),f=n(9383),g=n(9005),b=n(65738),v=n(8962),y=n(73321),j=n(48484),w=n(60292),k=n(99979),N=n(32133),C=n(38332),A=n(91337),S=n(60874);let E="u">typeof CSS&&"highlights"in CSS&&"u">typeof Highlight,z="beacon-pending",R="beacon-annotation",M="beacon-deletion";function D(){return E?CSS.highlights:null}function O(...e){return new globalThis.Highlight(...e)}function P({markdown:e,round:t,onApi:n,hideSubmit:a=!1,getExtraSubmitPayload:l}){let[i,d]=(0,r.useState)([]),[c,u]=(0,r.useState)(""),[m,h]=(0,r.useState)(!1),[x,p]=(0,r.useState)(null),[b,v]=(0,r.useState)(null),[y,j]=(0,r.useState)(null),[S,I]=(0,r.useState)(!1),[$,L]=(0,r.useState)(!1),B=(0,r.useRef)(null),X=(0,r.useRef)(null),H=(0,r.useRef)(null);(0,r.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await fetch("/api/plan/annotations",{cache:"no-store",headers:(0,w.dh)((0,k.X0)())});if(!t.ok)return;let n=await t.json();if(!e)return;d(n.annotations??[]),u(n.globalComment??""),L(!!n.submitted)}catch{}})(),()=>{e=!1}},[e,t]),(0,r.useEffect)(()=>{if($)return;let e=setTimeout(()=>{fetch("/api/plan/annotations",{method:"PUT",headers:{"content-type":"application/json",...(0,w.dh)((0,k.X0)())},body:JSON.stringify({annotations:i,globalComment:c,round:t})}).catch(()=>{})},400);return()=>clearTimeout(e)},[i,c,$,t]);let q=(0,r.useCallback)(()=>{let e=window.getSelection();if(!e||e.isCollapsed)return void p(null);let t=e.toString().trim();if(!t)return void p(null);if(!B.current?.contains(e.anchorNode))return;let n=e.getRangeAt(0).getBoundingClientRect();p({x:n.right+window.scrollX,y:n.top+window.scrollY,excerpt:t})},[]);(0,r.useEffect)(()=>{let e=()=>setTimeout(q,0);return document.addEventListener("mouseup",e),document.addEventListener("selectionchange",e),()=>{document.removeEventListener("mouseup",e),document.removeEventListener("selectionchange",e)}},[q]);let U=(0,r.useCallback)((e,t="comment",n="")=>{let s=`a-${Date.now()}-${Math.floor(1e6*Math.random())}`;d(r=>[...r,{id:s,excerpt:e,comment:n,kind:t}]),"comment"===t&&j(s),p(null),window.getSelection()?.removeAllRanges()},[]);(0,r.useEffect)(()=>{let e=e=>{let t=window.getSelection();if(!t||t.isCollapsed)return;let n=t.toString().trim();if(!n||!B.current?.contains(t.anchorNode))return;let s=document.activeElement;if(s&&/^(TEXTAREA|INPUT)$/.test(s.tagName)||!(1===e.key.length&&!e.metaKey&&!e.ctrlKey&&!e.altKey))return;e.preventDefault();let r=t.getRangeAt(0);H.current=r.cloneRange();let o=r.getBoundingClientRect();v({x:o.right+window.scrollX,y:o.top+window.scrollY,excerpt:n,seed:e.key}),p(null),window.getSelection()?.removeAllRanges()};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[]),(0,r.useEffect)(()=>{let e=D();if(!b||!e)return;let t=H.current;if(t)return e.set(z,O(t)),()=>{e.delete(z)}},[b]),(0,r.useEffect)(()=>{let e=D();if(!e||!B.current)return;let t=[],n=[];for(let e of i){let s=function(e,t){if(!t)return null;let n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,{acceptNode:e=>e.parentElement?.closest("pre, table")?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}),s=[],r="";for(let e=n.nextNode();e;e=n.nextNode())s.push({node:e,start:r.length}),r+=e.nodeValue??"";let o=r.indexOf(t);if(o<0)return null;let a=e=>{for(let t=s.length-1;t>=0;t--)if(s[t].start<=e)return{node:s[t].node,offset:e-s[t].start};return null},l=a(o),i=a(o+t.length);if(!l||!i)return null;let d=document.createRange();return d.setStart(l.node,l.offset),d.setEnd(i.node,i.offset),d}(B.current,e.excerpt);s&&((e.kind??"comment")==="deletion"?n:t).push(s)}let s=(t,n)=>n.length?e.set(t,O(...n)):e.delete(t);return s(R,t),s(M,n),()=>{e.delete(R),e.delete(M)}},[i,e]),(0,r.useEffect)(()=>{if(!m)return;let e=e=>{let t=e.target;!t||X.current?.contains(t)||t.closest("[data-overall-toggle]")||h(!1)},t=e=>{"Escape"===e.key&&h(!1)};return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[m]);let G=(e,t)=>d(n=>n.map(n=>n.id===e?{...n,comment:t}:n)),_=e=>d(t=>t.filter(t=>t.id!==e)),K=()=>{d([]),u(""),h(!1),fetch("/api/plan/annotations",{method:"DELETE",headers:(0,w.dh)((0,k.X0)())}).catch(()=>{})},V=async()=>{if(!S){I(!0);try{let e=l?.()??{},n=await fetch("/api/plan/annotations",{method:"POST",headers:{"content-type":"application/json",...(0,w.dh)((0,k.X0)())},body:JSON.stringify({annotations:i,globalComment:c,round:t,...e})});n.ok?L(!0):409===n.status&&window.location.reload()}finally{I(!1)}}},J=(0,r.useMemo)(()=>i.filter(e=>"deletion"===e.kind||e.comment.trim()).length+ +!!c.trim(),[i,c]);return(0,r.useEffect)(()=>{n?.({liveCount:J,submitting:S,submitted:$,submit:()=>void V(),clearAll:K,annotationCount:i.length,hasGlobalComment:!!c.trim(),globalOpen:m,toggleOverall:()=>h(e=>!e),annotations:i,updateComment:G,removeAnnotation:_,focusOnAnnotation:e=>j(e),addComment:e=>U(e,"comment")})},[J,S,$,i,c,m]),(0,s.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,s.jsx)("div",{className:"relative shrink-0",children:(0,s.jsxs)("div",{className:"absolute right-3 top-2 z-30 flex items-center gap-1",children:[!a&&(0,s.jsxs)("button",{onClick:()=>void V(),disabled:S||0===J,className:(0,A.cn)("flex items-center gap-1 rounded-md border px-2 py-1 text-[11px] font-semibold transition-colors",$?"border-emerald-500/40 bg-emerald-500/15 text-emerald-300":0===J?"border-white/10 text-muted-foreground opacity-50":"border-sky-500/40 bg-sky-500/15 text-sky-300 hover:bg-sky-500/25"),title:$?"Submitted — your terminal session is reading the feedback":"Submit all feedback so the agent can revise the plan",children:[$?(0,s.jsx)(o.A,{className:"size-3"}):(0,s.jsx)(f.A,{className:"size-3"}),$?"Submitted":"Submit feedback"]}),m&&(0,s.jsxs)("div",{ref:X,className:"absolute right-0 top-[calc(100%+6px)] z-50 w-[320px] rounded-md border border-white/10 bg-card p-2 shadow-xl",children:[(0,s.jsxs)("div",{className:"mb-1 flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Overall feedback"}),(0,s.jsx)("button",{onClick:()=>h(!1),title:"Close (Esc)",className:"rounded p-0.5 text-muted-foreground hover:text-foreground",children:(0,s.jsx)(g.A,{className:"size-3"})})]}),(0,s.jsx)("textarea",{autoFocus:!0,value:c,onChange:e=>u(e.target.value),onKeyDown:e=>{e.stopPropagation(),"Enter"===e.key&&e.shiftKey?(e.preventDefault(),!S&&J>0&&(V(),h(!1))):"Escape"===e.key&&(e.preventDefault(),h(!1))},placeholder:"Plan-level notes — e.g. 'split this into two phases' or 'wrong abstraction'…",rows:4,className:"w-full resize-y rounded border border-white/5 bg-background px-2 py-1.5 text-[12px] leading-snug outline-none focus:border-sky-400/40"}),(0,s.jsx)("div",{className:"mt-1 text-right text-[9px] text-muted-foreground/70",children:"Shift+Enter to submit \xb7 Esc to close"})]})]})}),(0,s.jsx)("div",{ref:B,className:"min-h-0 flex-1 overflow-y-auto px-5 pb-5 pt-16 text-[15px] leading-[1.6] selection:bg-[var(--accent-2,#ff7a45)]/30",children:(0,s.jsx)(F,{markdown:e,annotations:b&&!E?[...i,{id:"__pending",excerpt:b.excerpt,comment:"",kind:"comment"}]:i,focusOnId:y,onClearFocus:()=>j(null),onUpdate:G,onRemove:_})}),x&&(0,s.jsxs)("div",{style:{position:"fixed",left:x.x+4,top:x.y-30,zIndex:60},className:"flex items-center gap-0.5 rounded-md border border-white/15 bg-card/95 p-0.5 shadow-lg backdrop-blur",children:[(0,s.jsx)("button",{onClick:()=>{let e=window.getSelection();H.current=e&&e.rangeCount?e.getRangeAt(0).cloneRange():null,v({...x,seed:""}),p(null),e?.removeAllRanges()},title:"Comment on this text",className:"rounded p-1 text-sky-300 hover:bg-sky-500/15",children:(0,s.jsx)(N.A,{className:"size-3.5"})}),(0,s.jsx)("button",{onClick:()=>U(x.excerpt,"deletion"),title:"Mark this for deletion",className:"rounded p-1 text-red-300 hover:bg-red-500/15",children:(0,s.jsx)(C.A,{className:"size-3.5"})})]}),b&&(0,s.jsx)(T,{excerpt:b.excerpt,x:b.x,y:b.y,seed:b.seed,onConfirm:e=>{U(b.excerpt,"comment",e),v(null)},onCancel:()=>v(null)})]})}function T({excerpt:e,x:t,y:n,seed:a,onConfirm:l,onCancel:i}){let[d,c]=(0,r.useState)(a),u=(0,r.useRef)(null),m=()=>d.trim()?l(d.trim()):i();return(0,s.jsxs)("div",{ref:u,style:{position:"fixed",left:t+4,top:n-6,zIndex:60},className:"w-64 rounded-md border border-white/15 bg-card/95 p-1.5 shadow-xl backdrop-blur",onBlur:e=>{u.current?.contains(e.relatedTarget)||m()},children:[(0,s.jsxs)("div",{className:"mb-1 line-clamp-1 text-[10px] text-muted-foreground",children:["“",e,"”"]}),(0,s.jsx)("textarea",{autoFocus:!0,value:d,onChange:e=>c(e.target.value),onFocus:e=>e.currentTarget.setSelectionRange(d.length,d.length),placeholder:"Comment… (Enter to add \xb7 Esc to discard)",onKeyDown:e=>{e.stopPropagation(),"Enter"!==e.key||e.shiftKey?"Escape"===e.key&&(e.preventDefault(),i()):(e.preventDefault(),m())},className:"h-16 w-full resize-none rounded bg-white/[0.05] px-1.5 py-1 text-xs outline-none placeholder:text-muted-foreground/50 focus:bg-white/[0.08]"}),(0,s.jsxs)("div",{className:"mt-1 flex items-center justify-end gap-1",children:[(0,s.jsxs)("button",{type:"button",onClick:i,title:"Discard this comment (Esc)",className:"flex items-center gap-1 rounded px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground transition-colors hover:bg-red-500/15 hover:text-red-300",children:[(0,s.jsx)(g.A,{className:"size-3"}),"Discard"]}),(0,s.jsxs)("button",{type:"button",onClick:m,disabled:!d.trim(),title:"Add this comment (Enter)",className:"flex items-center gap-1 rounded bg-sky-500/15 px-1.5 py-0.5 text-[10px] font-semibold text-sky-300 transition-colors hover:bg-sky-500/25 disabled:opacity-40",children:[(0,s.jsx)(o.A,{className:"size-3"}),"Add"]})]})]})}function I({annotations:e,updateComment:t,removeAnnotation:n,focusOnAnnotation:r,onClose:o}){return 0===e.length?(0,s.jsx)("div",{className:"rounded-lg border border-dashed border-white/10 px-3 py-6 text-center text-[11px] text-muted-foreground",children:"Highlight any text in the plan to leave an inline comment."}):(0,s.jsx)("ul",{className:"space-y-1.5",children:e.map(e=>(0,s.jsx)("li",{className:(0,A.cn)("group rounded-md border bg-background/30 px-2 py-1.5 transition-colors hover:bg-background/50","deletion"===e.kind?"border-red-500/25":"border-sky-500/15"),children:(0,s.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsxs)("button",{type:"button",onClick:()=>{r(e.id),o?.()},title:"Jump to this excerpt in the plan",className:(0,A.cn)("block w-full truncate text-left text-[10.5px] font-mono","deletion"===e.kind?"text-red-300/90 line-through":"text-foreground/80 hover:text-foreground"),children:["“",e.excerpt,"”"]}),"deletion"!==e.kind&&(0,s.jsx)("textarea",{value:e.comment,onChange:n=>t(e.id,n.target.value),placeholder:"Write your comment…",rows:1,className:"field-sizing-content mt-1 w-full resize-none bg-transparent text-[11px] leading-snug text-foreground/90 outline-none placeholder:text-muted-foreground/60 focus:text-foreground"})]}),(0,s.jsx)("button",{onClick:()=>n(e.id),title:"Remove this annotation",className:"shrink-0 rounded p-1 text-muted-foreground/70 opacity-0 transition-opacity hover:bg-red-500/15 hover:text-red-300 group-hover:opacity-100",children:(0,s.jsx)(b.A,{className:"size-3"})})]})},e.id))})}function F({markdown:e,annotations:t,focusOnId:n,onClearFocus:o,onUpdate:a,onRemove:l}){let i=(0,r.useMemo)(()=>(0,S.n$)(e),[e]);return(0,s.jsx)("div",{className:"mx-auto w-full max-w-[66ch] space-y-4",children:i.map((e,r)=>(0,s.jsx)($,{block:e,index:r,annotations:t,focusOnId:n,onClearFocus:o,onUpdate:a,onRemove:l},r))})}function $({block:e,index:t,annotations:n,focusOnId:r,onClearFocus:o,onUpdate:a,onRemove:l}){if("code"===e.kind)return(0,s.jsx)(S.NG,{text:e.text});if("table"===e.kind)return(0,s.jsx)(S.QH,{block:e});let i=(0,s.jsx)(L,{text:e.text,annotations:n,focusOnId:r,onClearFocus:o,onUpdate:a,onRemove:l}),d=(0,S.Vq)(e.kind)?(0,S.vB)(t):void 0;return(0,s.jsx)(s.Fragment,{children:(0,S.aM)(e,i,"reading",d)})}function L({text:e,annotations:t,focusOnId:n,onClearFocus:r,onUpdate:o,onRemove:a}){let l=(E?[]:t).map(t=>({a:t,idx:e.indexOf(t.excerpt)})).filter(e=>e.idx>=0).sort((e,t)=>e.idx-t.idx);if(!l.length)return(0,s.jsx)(X,{text:e});let i=[],d=0;for(let{a:t,idx:c}of l)c<d||(c>d&&i.push((0,s.jsx)(X,{text:e.slice(d,c)},`p-${d}`)),i.push((0,s.jsx)(B,{annotation:t,autoFocus:n===t.id,onClearFocus:r,onUpdate:o,onRemove:a},t.id)),d=c+t.excerpt.length);return d<e.length&&i.push((0,s.jsx)(X,{text:e.slice(d)},"p-tail")),(0,s.jsx)(s.Fragment,{children:i})}function B({annotation:e,autoFocus:t,onClearFocus:n,onUpdate:o,onRemove:a}){let l=(0,r.useRef)(null);return((0,r.useEffect)(()=>{if(t&&l.current){l.current.focus();let e=l.current.value;l.current.setSelectionRange(e.length,e.length),n()}},[t,n]),"deletion"===(e.kind??"comment"))?(0,s.jsxs)("span",{className:"relative inline",children:[(0,s.jsx)("span",{className:"rounded bg-red-500/15 px-0.5 text-red-200/90 line-through decoration-red-300/70 decoration-2",children:(0,s.jsx)(X,{text:e.excerpt})}),(0,s.jsx)("button",{type:"button",onClick:()=>a(e.id),title:"Unmark",className:"ml-0.5 inline-flex translate-y-[-1px] items-center text-red-300/70 hover:text-red-300",children:(0,s.jsx)(b.A,{className:"size-3"})})]}):(0,s.jsx)("span",{className:"rounded bg-[var(--accent-2,#ff7a45)]/15 px-0.5","data-annotation-id":e.id,children:(0,s.jsx)(X,{text:e.excerpt})})}function X({text:e}){return(0,s.jsx)(S.cV,{text:e})}let H=(0,c.A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]),q=(0,c.A)("panel-left-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]]),U=(0,c.A)("panel-left-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]]);var G=n(69882),_=n(91588),K=n(36849);let V="beacon:plan-history-sidebar";function J({pendingPlan:e=!1,workspaceId:t}){let n=(0,y.useRouter)(),[i,d]=(0,r.useState)([]),[c,m]=(0,r.useState)(null),[h,x]=(0,r.useState)(null),[p,f]=(0,r.useState)("map"),[b,v]=(0,r.useState)(()=>{try{return"0"!==window.localStorage.getItem(V)}catch{return!0}}),j=(0,r.useCallback)(()=>{v(e=>{let t=!e;try{localStorage.setItem(V,t?"1":"0")}catch{}return t})},[]);(0,r.useEffect)(()=>{(async()=>{try{let e=await fetch("/api/plan/history");if(!e.ok)return;let t=await e.json();d(t.items),t.items.length&&!c&&m(t.items[0].id)}catch{}})()},[]),(0,r.useEffect)(()=>{c&&(async()=>{let e=await fetch(`/api/plan/history?id=${encodeURIComponent(c)}`);e.ok&&x(await e.json())})()},[c]);let w=(0,r.useMemo)(()=>(function(e){let t=new Map;for(let n of e){let e=new Date(n.archivedAt).toLocaleDateString(void 0,{weekday:"short",month:"short",day:"numeric"});t.has(e)||t.set(e,[]),t.get(e).push(n)}return Array.from(t.entries())})(i),[i]),N=(0,r.useMemo)(()=>(function(e){let t=e?.features??[];if(0===t.length)return{nodes:[],edges:[]};let n=new Map;t.forEach((e,t)=>{let s=e.title.trim();n.has(s)||n.set(s,`arch-${t}`)});let s=(e,t)=>n.get(e.title.trim())??`arch-${t}`,r=t.map((e,t)=>({id:s(e,t),parentId:null,cluster:e.cluster??null,status:"PENDING",priority:e.priority??2})),o=(0,K.VI)(r,"cluster"),a=t.map((e,t)=>{let n=s(e,t),r=o.get(n)??{x:0,y:0};return{id:n,view:"ROADMAP",kind:e.kind??"FEATURE",cluster:e.cluster??null,layer:e.layer??null,title:e.title,role:e.role??null,plain:e.plain??null,status:"PENDING",priority:e.priority??2,x:r.x,y:r.y,source:"DRAFT",sourceRef:null,parentId:null,isCriterion:!1,files:[],bugFlags:[]}}),l=[];return t.forEach((e,t)=>{let r=s(e,t);for(let t of e.dependsOn??[]){let e=n.get(t.trim());e&&e!==r&&l.push({id:`arch-edge-${r}-${e}`,fromId:r,toId:e,kind:"DEPENDS",label:"depends on",sourceHandle:null,targetHandle:null})}}),{nodes:a,edges:l}})(h?.featureGraph),[h]),C=N.nodes.length>0,E=(h?.draftDoc?.tables.length??0)>0||(h?.draftDoc?.endpoints.length??0)>0,z=C||E,R="map"!==p||C?"db"!==p||E?p:"map":"db",M=!!h&&""===h.markdown.replace(/^#[^\n]*\n?/,"").trim(),D=e?(0,s.jsxs)("button",{onClick:()=>n.push((0,k.rc)()),className:"glass pointer-events-auto fixed left-3 top-3 z-30 flex h-10 items-center gap-1.5 rounded-full px-3 text-[11px] font-semibold text-sky-300 transition-colors hover:bg-sky-500/15",title:"Return to the plan that's still pending review",children:[(0,s.jsx)(H,{className:"size-3.5"})," Back to current plan"]}):null;return 0===i.length?(0,s.jsxs)(s.Fragment,{children:[D,(0,s.jsx)("div",{className:"flex h-screen items-center justify-center px-6 pt-14 text-center",children:(0,s.jsxs)("div",{className:"max-w-md text-sm text-muted-foreground",children:[(0,s.jsx)(u,{className:"mx-auto mb-3 size-7 text-muted-foreground/40"}),(0,s.jsx)("div",{className:"mb-2 text-base font-semibold text-foreground",children:"No plans yet."}),"Ask the agent to propose a feature in your terminal session — it lands here via MCP and you can review + annotate on both sides. Past plans get archived to this page for browsing."]})})]}):(0,s.jsxs)("div",{className:"flex h-screen min-h-0 pt-14",children:[D,h&&(0,s.jsxs)("div",{className:"glass pointer-events-auto fixed right-3 top-3 z-30 flex h-9 items-center gap-2 rounded-full px-3",children:[(0,s.jsx)("span",{className:(0,A.cn)("rounded px-1.5 py-0.5 text-[9px] font-semibold uppercase tracking-wide","approved"===h.verdict?"bg-emerald-500/15 text-emerald-300":"bg-red-500/15 text-red-300"),children:h.verdict}),(0,s.jsx)("span",{className:"text-[10px] text-muted-foreground",children:new Date(h.archivedAt).toLocaleString()})]}),b?(0,s.jsxs)("aside",{className:"flex w-64 min-w-0 shrink-0 flex-col border-r border-white/5 bg-card/30",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between border-b border-white/5 px-3 py-2",children:[(0,s.jsxs)("span",{className:"text-[10.5px] font-semibold uppercase tracking-wide text-muted-foreground",children:["Plan history \xb7 ",i.length]}),(0,s.jsx)("button",{onClick:j,title:"Collapse history",className:"flex size-5 items-center justify-center rounded text-muted-foreground/70 transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(q,{className:"size-3.5"})})]}),(0,s.jsx)("ul",{className:"min-h-0 flex-1 overflow-y-auto",children:w.map(([e,t])=>(0,s.jsxs)("li",{children:[(0,s.jsx)("div",{className:"px-3 pb-1 pt-3 text-[9px] font-semibold uppercase tracking-widest text-muted-foreground/60",children:e}),(0,s.jsx)("ul",{children:t.map(e=>(0,s.jsx)("li",{children:(0,s.jsxs)("button",{onClick:()=>m(e.id),className:(0,A.cn)("flex w-full items-start gap-1.5 px-3 py-1.5 text-left text-[12px] transition-colors",c===e.id?"bg-white/[0.06] text-foreground":"text-muted-foreground hover:bg-white/[0.03] hover:text-foreground"),children:[(0,s.jsx)("span",{className:(0,A.cn)("mt-0.5 inline-flex size-3.5 shrink-0 items-center justify-center rounded-full","approved"===e.verdict?"bg-emerald-500/15 text-emerald-300":"bg-red-500/15 text-red-300"),title:e.verdict,children:"approved"===e.verdict?(0,s.jsx)(o.A,{className:"size-2.5"}):(0,s.jsx)(g.A,{className:"size-2.5"})}),(0,s.jsx)("span",{className:"line-clamp-2",children:e.description})]})},e.id))})]},e))})]}):(0,s.jsx)("aside",{className:"flex w-10 shrink-0 flex-col items-center border-r border-white/5 bg-card/30 py-2",children:(0,s.jsx)("button",{onClick:j,title:`Show plan history \xb7 ${i.length}`,className:"flex size-7 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(U,{className:"size-4"})})}),h?(0,s.jsxs)("div",{className:"flex min-h-0 min-w-0 flex-1",children:[(0,s.jsx)("div",{className:(0,A.cn)("relative flex min-h-0 min-w-0 flex-col",!z&&"flex-1"),style:z?{width:"44%"}:void 0,children:(0,s.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto px-5 py-4",children:[(0,s.jsx)(S.pO,{markdown:h.markdown}),M&&(0,s.jsx)("p",{className:"mt-2 text-[13px] text-muted-foreground",children:(h.featureGraph?.features?.length??0)===0&&(h.draftDoc?.tables?.length??0)===0&&(h.draftDoc?.endpoints?.length??0)===0?"This plan was approved without a detailed write-up — no features or schema were attached either.":"This plan has no written body. See the Features and Schema canvases for what it proposed."}),h.globalComment&&(0,s.jsxs)("div",{className:"mt-4 rounded-lg border border-white/5 bg-card/40 p-3",children:[(0,s.jsx)("div",{className:"mb-1 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Overall feedback"}),(0,s.jsx)("div",{className:"text-[12px] whitespace-pre-wrap",children:h.globalComment})]})]})}),z&&(0,s.jsxs)("div",{className:"relative flex min-h-0 min-w-0 flex-1 flex-col border-l border-white/5",children:[C&&E&&(0,s.jsx)("div",{className:"pointer-events-none absolute left-3 top-3 z-20",children:(0,s.jsxs)("div",{className:"glass pointer-events-auto flex items-center gap-1 rounded-full p-0.5",children:[(0,s.jsx)(W,{active:"map"===R,onClick:()=>f("map"),icon:(0,s.jsx)(a.A,{className:"size-3"}),children:"Features"}),(0,s.jsx)(W,{active:"db"===R,onClick:()=>f("db"),icon:(0,s.jsx)(l.A,{className:"size-3"}),children:"Schema"})]})}),(0,s.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden bg-background",children:"map"===R?(0,s.jsx)(G.MapClient,{view:"ROADMAP",nodes:N.nodes,edges:N.edges,embedded:!0,readOnly:!0}):(0,s.jsx)(_.DbMapClient,{tables:[],relations:[],endpoints:[],draft:h.draftDoc??null,workspaceId:t,embedded:!0,readOnly:!0})})]})]}):(0,s.jsx)("section",{className:"flex min-h-0 min-w-0 flex-1 items-center justify-center text-sm text-muted-foreground",children:"Select a plan on the left to view it."})]})}function W({active:e,onClick:t,icon:n,children:r}){return(0,s.jsxs)("button",{onClick:t,className:(0,A.cn)("flex items-center gap-1 rounded-md px-2 py-1 text-[11px] font-medium transition-colors",e?"bg-white/10 text-foreground":"text-muted-foreground hover:text-foreground"),children:[n,r]})}function Y({markdown:e}){let t=(0,r.useMemo)(()=>(0,S.n$)(e).map((e,t)=>({b:e,i:t})).filter(({b:e})=>(0,S.Vq)(e.kind)).map(({b:e,i:t})=>({id:(0,S.vB)(t),level:(0,S.F8)(e.kind),label:(0,S.kz)(e.text)})).filter(e=>e.label.length>0),[e]),[n,o]=(0,r.useState)(null);return(0,r.useEffect)(()=>{if("u"<typeof IntersectionObserver||0===t.length)return;let e=t.map(e=>document.getElementById(e.id)).filter(e=>null!==e);if(0===e.length)return;let n=new IntersectionObserver(e=>{let t=e.filter(e=>e.isIntersecting).sort((e,t)=>e.boundingClientRect.top-t.boundingClientRect.top);t[0]&&o(t[0].target.id)},{rootMargin:"-12% 0px -70% 0px",threshold:0});return e.forEach(e=>n.observe(e)),()=>n.disconnect()},[t]),(0,s.jsxs)("aside",{className:"flex w-60 shrink-0 flex-col overflow-y-auto border-r border-white/5 bg-background pt-16",children:[(0,s.jsx)("div",{className:"px-4 pb-2 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Sections"}),0===t.length?(0,s.jsx)("p",{className:"px-4 text-[12px] text-muted-foreground/70",children:"No headings in this plan."}):(0,s.jsx)("nav",{className:"space-y-0.5 px-2 pb-6",children:t.map(e=>(0,s.jsx)("button",{onClick:()=>{var t;let n;return t=e.id,void((n=document.getElementById(t))&&(n.scrollIntoView({behavior:"smooth",block:"start"}),o(t)))},title:e.label,style:{paddingLeft:`${.5+.75*e.level}rem`},className:(0,A.cn)("block w-full truncate rounded py-1 pr-2 text-left text-[12px] leading-snug transition-colors",n===e.id?"bg-white/10 font-medium text-foreground":"text-muted-foreground hover:bg-white/[0.05] hover:text-foreground"),children:e.label},e.id))})]})}var Q=n(50981),Z=n(74350),ee=n(4474),et=n(97358);function en({open:e,onOpenChange:t,onConfirmed:n}){let[a,l]=(0,r.useState)("bypassPermissions"),[i,d]=(0,r.useState)(!1);async function c(){d(!0);try{await fetch("/api/preferences",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({planApprovalMode:a})}).catch(()=>{}),t(!1),n()}finally{d(!1)}}return(0,s.jsx)(Z.lG,{open:e,onOpenChange:t,children:(0,s.jsxs)(Z.Cf,{className:"max-w-lg",children:[(0,s.jsxs)(Z.c7,{children:[(0,s.jsxs)(Z.L3,{className:"flex items-center gap-2",children:[(0,s.jsx)(Q.A,{className:"size-4 text-emerald-400"}),"After approving, the agent should…"]}),(0,s.jsx)(Z.rr,{children:"Pick the permission mode your terminal session enters when you approve a plan. We ask once and remember it for every project — change it anytime in Settings."})]}),(0,s.jsx)("div",{className:"space-y-2 py-1",children:et.pC.map(e=>(0,s.jsxs)("button",{type:"button",onClick:()=>l(e.value),className:(0,A.cn)("flex w-full items-start gap-3 rounded-lg border p-3 text-left transition-colors",a===e.value?"border-emerald-500/50 bg-emerald-500/10":"border-white/10 bg-white/[0.03] hover:bg-white/[0.06]"),children:[(0,s.jsx)("span",{className:(0,A.cn)("mt-0.5 flex size-4 shrink-0 items-center justify-center rounded-full border",a===e.value?"border-emerald-400 bg-emerald-400/20":"border-white/30"),children:a===e.value&&(0,s.jsx)(o.A,{className:"size-3 text-emerald-300"})}),(0,s.jsxs)("span",{className:"min-w-0",children:[(0,s.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e.label}),(0,s.jsx)("span",{className:"block text-xs text-muted-foreground",children:e.description})]})]},e.value))}),(0,s.jsxs)(Z.Es,{className:"items-center justify-between gap-2 sm:justify-between",children:[(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:"You can change this later in Settings."}),(0,s.jsx)(ee.$,{onClick:c,disabled:i,size:"sm",children:i?"Saving…":"Save & approve"})]})]})})}function es({dbProps:e,mapProps:t,planMarkdown:n,forceHistory:c=!1}){let N=(0,y.useRouter)(),{status:C,discard:S}=(0,j.j)(),E=t.nodes.length>0,z=e.tables.length>0||e.endpoints.length>0||(e.draft?.tables.length??0)>0||(e.draft?.endpoints.length??0)>0,[R,M]=(0,r.useState)(E?"map":"db"),D="map"!==R||E?"db"!==R||z?R:"map":"db",[O,T]=(0,r.useState)(!1),[F,$]=(0,r.useState)(!1),[L,B]=(0,r.useState)(null),X=(0,r.useRef)(!1),H=(0,r.useCallback)(async()=>{await fetch("/api/plan/approve",{method:"POST",headers:(0,w.dh)((0,k.X0)())}).catch(()=>{}),B({features:C.features,tables:C.tables,endpoints:C.endpoints})},[C.features,C.tables,C.endpoints]);(0,r.useEffect)(()=>{if(!L)return;X.current=!1;let e=L.features>0?"/map?view=ROADMAP":L.tables>0||L.endpoints>0?"/map?view=DATABASE":"/map?view=ROADMAP",t=setTimeout(()=>{X.current||(X.current=!0,N.push(e))},3e3);return()=>clearTimeout(t)},[L,N]);let q=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/preferences",{cache:"no-store"});if((await e.json()).planApprovalModeConfigured)return void H()}catch{H();return}$(!0)},[H]),[U,K]=(0,r.useState)(null),V=(0,r.useCallback)(e=>K(e),[]),W=(0,r.useRef)(null),Q=(0,r.useRef)(null),Z=(0,r.useRef)(e.draft),[ee,et]=(0,r.useState)(!1),ea=(0,r.useCallback)(()=>et(!0),[]),[el,ei]=(0,r.useState)([]),[ed,ec]=(0,r.useState)(!1),[eu,em]=(0,r.useState)(""),eh=(0,r.useCallback)(e=>{em(e),ec(!0)},[]),ex=(0,r.useRef)(el);(0,r.useEffect)(()=>{ex.current=el},[el]),(0,r.useEffect)(()=>{ei([]),ec(!1),et(!1)},[C.proposedAt]),(0,r.useEffect)(()=>{let e=()=>void fetch("/api/plan/presence",{method:"POST",cache:"no-store",headers:(0,w.dh)((0,k.X0)())}).catch(()=>{});e();let t=setInterval(e,5e3);return()=>clearInterval(t)},[]);let ep=(0,r.useCallback)(()=>({draft:Z.current,questions:ex.current}),[]),ef=(0,r.useMemo)(()=>{let n=[];for(let e of t.nodes)n.push(`feature: ${e.title}`);for(let t of e.draft?.tables??[])n.push(`table: ${t.name}`);for(let t of e.tables)n.push(`table: ${t.name}`);for(let t of e.draft?.endpoints??[])n.push(`endpoint: ${t.method} ${t.path}`);for(let t of e.endpoints)n.push(`endpoint: ${t.method} ${t.path}`);return Array.from(new Set(n))},[t.nodes,e]),eg=U?(0,s.jsx)(I,{annotations:U.annotations,updateComment:U.updateComment,removeAnnotation:U.removeAnnotation,focusOnAnnotation:U.focusOnAnnotation,onClose:()=>W.current?.close()}):null,eb=(0,r.useCallback)(()=>{W.current?.open()},[]),ev=(0,r.useCallback)(()=>{"db"===D?Q.current?.openComments():W.current?.openComments()},[D]),ey=(0,r.useCallback)(e=>{U?.addComment(e)},[U]),ej=(0,r.useCallback)(e=>{U?.focusOnAnnotation(e),"db"===D?Q.current?.openComments():W.current?.openComments()},[U,D]),[ew,ek]=(0,r.useState)(()=>{try{let e=window.localStorage.getItem("beacon:plan-left-pct");return e?Math.max(20,Math.min(80,Number(e))):50}catch{return 50}}),eN=(0,r.useRef)(null),eC=(0,r.useRef)(!1),eA=(0,r.useCallback)(e=>{e.preventDefault(),eC.current=!0,document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[]);(0,r.useEffect)(()=>{let e=e=>{if(!eC.current||!eN.current)return;let t=eN.current.getBoundingClientRect();ek(Math.max(20,Math.min(80,(e.clientX-t.left)/t.width*100)))},t=()=>{if(eC.current){eC.current=!1,document.body.style.cursor="",document.body.style.userSelect="";try{localStorage.setItem("beacon:plan-left-pct",String(ew))}catch{}}};return window.addEventListener("pointermove",e),window.addEventListener("pointerup",t),()=>{window.removeEventListener("pointermove",e),window.removeEventListener("pointerup",t)}},[ew]);let eS=async()=>{await fetch("/api/plan/annotations",{method:"DELETE",headers:(0,w.dh)((0,k.X0)())}).catch(()=>{}),await S(),N.refresh()};if((!C.pending||c)&&!L)return(0,s.jsx)(J,{pendingPlan:C.pending,workspaceId:e.workspaceId});let eE=E||z,ez=eE&&!O,eR=!eE||O,eM=((U?.liveCount??0)>0||ee||el.length>0)&&!U?.submitted;return(0,s.jsxs)("div",{className:"relative flex h-screen flex-col",children:[L&&(0,s.jsxs)("div",{className:"absolute inset-0 z-50 flex flex-col items-center justify-center gap-5 bg-background/97 px-6 text-center backdrop-blur-sm",children:[(0,s.jsx)("div",{className:"flex size-12 items-center justify-center rounded-full bg-emerald-500/15",children:(0,s.jsx)(o.A,{className:"size-6 text-emerald-300"})}),(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("h2",{className:"text-lg font-semibold text-foreground",children:"Plan approved"}),(0,s.jsx)("p",{className:"max-w-sm text-sm text-muted-foreground",children:L.features>0||L.tables>0||L.endpoints>0?"It's committed. Here's where to find it:":"It's archived to your plan history."}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground/70",children:"Taking you to the map in 3 seconds…"})]}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center justify-center gap-2",children:[L.features>0&&(0,s.jsxs)("button",{onClick:()=>{X.current=!0,N.push("/map?view=ROADMAP")},className:"flex items-center gap-2 rounded-lg border border-white/12 px-3 py-2 text-sm text-foreground transition-colors hover:bg-white/[0.06]",children:[(0,s.jsx)(a.A,{className:"size-4 text-sky-300"})," ",L.features," feature",1===L.features?"":"s"," → Map"]}),(L.tables>0||L.endpoints>0)&&(0,s.jsxs)("button",{onClick:()=>{X.current=!0,N.push("/map?view=DATABASE")},className:"flex items-center gap-2 rounded-lg border border-white/12 px-3 py-2 text-sm text-foreground transition-colors hover:bg-white/[0.06]",children:[(0,s.jsx)(l.A,{className:"size-4 text-violet-300"})," ",L.tables," table",1===L.tables?"":"s"," \xb7 ",L.endpoints," endpoint",1===L.endpoints?"":"s"," → Database"]})]}),(0,s.jsx)("button",{onClick:()=>{X.current=!0,B(null),N.push((0,k.rc)({view:"history"}))},className:"rounded-full border border-white/12 px-3 py-1.5 text-xs font-medium text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:"Done — browse plan history"})]}),U?.submitted&&(0,s.jsxs)("div",{className:"absolute inset-0 z-40 flex flex-col items-center justify-center gap-4 bg-background/95 px-6 text-center backdrop-blur-sm",children:[(0,s.jsx)("div",{className:"flex size-12 items-center justify-center rounded-full bg-sky-500/15",children:(0,s.jsx)(i.A,{className:"size-6 animate-spin text-sky-300"})}),(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("h2",{className:"text-lg font-semibold text-foreground",children:"Feedback sent"}),(0,s.jsx)("p",{className:"max-w-sm text-sm text-muted-foreground",children:"Your terminal session is revising the plan based on your comments. The updated plan will appear here automatically — no need to refresh."})]}),(0,s.jsx)("button",{onClick:()=>N.push((0,k.rc)({view:"history"})),className:"rounded-full border border-white/12 px-3 py-1.5 text-xs font-medium text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:"Browse past plans"})]}),(0,s.jsxs)("div",{className:"pointer-events-none fixed right-3 top-3 z-30 flex items-center gap-2",children:[eE&&O&&(0,s.jsx)("button",{onClick:()=>T(!1),title:"Collapse — show the board again",className:"glass pointer-events-auto flex size-8 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(d.A,{className:"size-3.5"})}),(0,s.jsxs)("div",{className:"glass pointer-events-auto flex h-10 items-center gap-0.5 rounded-full px-1",children:[(0,s.jsx)("button",{onClick:()=>N.push((0,k.rc)({view:"history"})),title:"Browse past plans (you can come back to this one)",className:"flex size-8 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(u,{className:"size-3.5"})}),(0,s.jsx)("span",{"aria-hidden":!0,className:"mx-1 h-5 w-px bg-white/10"}),(0,s.jsx)("button",{onClick:eb,disabled:!U,title:"Open the side panel (details)",className:"relative flex size-8 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(m.A,{className:"size-3.5"})}),(0,s.jsxs)("button",{onClick:ev,disabled:!U,title:U?.annotationCount?`Open comments \xb7 ${U.annotationCount} comment${1===U.annotationCount?"":"s"} so far`:"Open comments — select a card/table and 'Comment on this', or highlight text",className:"relative flex size-8 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:[(0,s.jsx)(h,{className:"size-3.5"}),U&&(U.annotationCount??0)>0&&(0,s.jsx)("span",{className:"absolute -right-0.5 -top-0.5 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-sky-500 px-1 text-[9px] font-semibold text-white",children:U.annotationCount})]}),(0,s.jsxs)("button",{"data-overall-toggle":!0,onClick:()=>U?.toggleOverall?.(),disabled:!U?.toggleOverall,title:U?.hasGlobalComment?"Edit your overall feedback":"Add overall plan-level feedback",className:(0,A.cn)("relative flex size-8 shrink-0 items-center justify-center rounded-full transition-colors",U?.globalOpen?"bg-white/10 text-foreground":U?.hasGlobalComment?"text-sky-300 hover:bg-sky-500/15":"text-muted-foreground hover:bg-white/[0.06] hover:text-foreground"),children:[(0,s.jsx)(x.A,{className:"size-3.5"}),U?.hasGlobalComment&&(0,s.jsx)("span",{className:"absolute -right-0.5 -top-0.5 size-2 rounded-full bg-sky-400"})]}),(0,s.jsxs)("button",{onClick:()=>ec(e=>!e),title:"Ask the agent a question about a node (answered in its next round)",className:(0,A.cn)("relative flex size-8 shrink-0 items-center justify-center rounded-full transition-colors",ed?"bg-white/10 text-foreground":el.length?"text-sky-300 hover:bg-sky-500/15":"text-muted-foreground hover:bg-white/[0.06] hover:text-foreground"),children:[(0,s.jsx)(p.A,{className:"size-3.5"}),el.length>0&&(0,s.jsx)("span",{className:"absolute -right-0.5 -top-0.5 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-sky-500 px-1 text-[9px] font-semibold text-white",children:el.length})]}),(0,s.jsx)("span",{"aria-hidden":!0,className:"mx-1 h-5 w-px bg-white/10"}),(0,s.jsxs)("button",{onClick:()=>U?.submit(),disabled:!U||U.submitting||0===U.liveCount&&!ee&&0===el.length,title:U&&(0!==U.liveCount||ee||0!==el.length)?U.submitted?"Submitted — your terminal session is reading the feedback":"Submit feedback (comments + canvas edits) so the agent can revise the plan":"Highlight text or edit the canvas, then submit",className:(0,A.cn)("flex shrink-0 items-center gap-1 rounded-full px-2.5 py-1 text-[11px] font-semibold transition-colors",U?.submitted?"text-sky-300":U&&(0!==U.liveCount||ee||0!==el.length)?"text-sky-300 hover:bg-sky-500/15":"text-muted-foreground opacity-50"),children:[U?.submitted?(0,s.jsx)(o.A,{className:"size-3"}):(0,s.jsx)(f.A,{className:"size-3"}),U?.submitted?"Submitted":"Feedback"]}),eM&&(0,s.jsxs)("button",{onClick:()=>{U?.clearAll?.(),et(!1),ei([])},title:"Discard your unsubmitted comments / canvas edits so you can approve the plan as-is",className:"flex shrink-0 items-center gap-1 rounded-full px-2 py-1 text-[11px] font-medium text-amber-300/90 transition-colors hover:bg-amber-500/15",children:[(0,s.jsx)(g.A,{className:"size-3"})," Clear to approve"]}),(0,s.jsxs)("button",{onClick:()=>void q(),disabled:eM,title:eM?"You have unsubmitted feedback — submit it, or click ‘Clear to approve’ to drop it":"Approve the plan",className:(0,A.cn)("flex shrink-0 items-center gap-1 rounded-full border border-emerald-500/40 bg-emerald-500/15 px-2.5 py-1 text-[11px] font-semibold text-emerald-300 transition-colors hover:bg-emerald-500/25",eM&&"opacity-40 hover:bg-emerald-500/15"),children:[(0,s.jsx)(o.A,{className:"size-3"})," Approve"]}),(0,s.jsxs)("button",{onClick:eS,className:"flex shrink-0 items-center gap-1 rounded-full px-2.5 py-1 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-red-500/15 hover:text-red-300",title:"Discard the plan",children:[(0,s.jsx)(b.A,{className:"size-3"})," Discard"]}),(0,s.jsx)(en,{open:F,onOpenChange:$,onConfirmed:()=>void H()})]})]}),ed&&(0,s.jsxs)("div",{className:"fixed right-3 top-16 z-30 w-80 rounded-xl border border-white/10 bg-card p-3 shadow-xl",children:[(0,s.jsxs)("div",{className:"mb-2 flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Ask the agent"}),(0,s.jsx)("button",{onClick:()=>ec(!1),title:"Close",className:"rounded p-0.5 text-muted-foreground hover:text-foreground",children:(0,s.jsx)(g.A,{className:"size-3.5"})})]}),(0,s.jsx)(er,{targets:ef,initialTarget:eu,onAdd:e=>ei(t=>[...t,e])}),el.length>0&&(0,s.jsx)("ul",{className:"mt-2 space-y-1",children:el.map((e,t)=>(0,s.jsxs)("li",{className:"group flex items-start justify-between gap-2 rounded-md border border-white/5 bg-background/40 px-2 py-1",children:[(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("div",{className:"truncate font-mono text-[10px] text-sky-300/90",children:e.target}),(0,s.jsx)("div",{className:"text-[11px] text-foreground/90",children:e.question})]}),(0,s.jsx)("button",{onClick:()=>ei(e=>e.filter((e,n)=>n!==t)),title:"Remove",className:"shrink-0 rounded p-0.5 text-muted-foreground/70 opacity-0 transition-opacity hover:text-red-300 group-hover:opacity-100",children:(0,s.jsx)(g.A,{className:"size-3"})})]},t))}),(0,s.jsx)("p",{className:"mt-2 text-[10px] text-muted-foreground",children:"Questions are sent with your feedback on Submit — the agent answers them in its next round."})]}),(0,s.jsxs)("div",{ref:eN,className:"flex min-h-0 flex-1",children:[eR&&(0,s.jsx)(Y,{markdown:n}),(0,s.jsxs)("div",{className:(0,A.cn)("relative flex min-w-0 flex-col",!ez&&"flex-1"),style:ez?{width:`${ew}%`}:void 0,children:[ez&&(0,s.jsx)("div",{className:"pointer-events-none absolute right-3 top-3 z-20",children:(0,s.jsx)("button",{onClick:()=>T(!0),title:"Expand the plan to full width",className:"glass pointer-events-auto flex size-8 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-white/[0.06] hover:text-foreground",children:(0,s.jsx)(v.A,{className:"size-3.5"})})}),(0,s.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden bg-background",children:(0,s.jsx)(P,{markdown:n,round:C.proposedAt,onApi:V,hideSubmit:!0,getExtraSubmitPayload:ep})})]}),ez&&(0,s.jsx)("div",{onPointerDown:eA,className:"group relative w-px shrink-0 cursor-col-resize bg-white/5 hover:bg-white/15",title:"Drag to resize",children:(0,s.jsx)("div",{className:"absolute inset-y-0 -left-1.5 right-[-6px] z-10"})}),ez&&(0,s.jsxs)("div",{className:"relative flex min-w-0 flex-col",style:{width:`${100-ew}%`},children:[E&&z&&(0,s.jsx)("div",{className:"pointer-events-none absolute left-3 top-3 z-20",children:(0,s.jsxs)("div",{className:"glass pointer-events-auto flex items-center gap-1 rounded-full p-0.5",children:[(0,s.jsx)(eo,{active:"map"===D,onClick:()=>M("map"),icon:(0,s.jsx)(a.A,{className:"size-3"}),children:"Map"}),(0,s.jsx)(eo,{active:"db"===D,onClick:()=>M("db"),icon:(0,s.jsx)(l.A,{className:"size-3"}),children:"Database"})]})}),(0,s.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden bg-background",children:"map"===D?(0,s.jsx)(G.MapClient,{view:t.view,nodes:t.nodes,edges:t.edges,hasFrontend:t.hasFrontend,embedded:!0,commentsContent:eg,commentsCount:U?.annotationCount??0,controlRef:W,onAskAgent:eh,onAddComment:ey,annotations:U?.annotations,onPinClick:ej,onUpdateComment:U?.updateComment,onRemoveComment:U?.removeAnnotation}):(0,s.jsx)(_.DbMapClient,{tables:e.tables,relations:e.relations,endpoints:e.endpoints,draft:e.draft,workspaceId:e.workspaceId,diffBase:e.diffBase,embedded:!0,draftRef:Z,onEdit:ea,controlRef:Q,commentsContent:eg,commentsCount:U?.annotationCount??0,onAddComment:ey,annotations:U?.annotations,onPinClick:ej,onUpdateComment:U?.updateComment,onRemoveComment:U?.removeAnnotation})})]})]})]})}function er({targets:e,onAdd:t,initialTarget:n}){let[o,a]=(0,r.useState)(n||e[0]||""),[l,i]=(0,r.useState)("");(0,r.useEffect)(()=>{n&&a(n)},[n]),(0,r.useEffect)(()=>{!o&&e[0]&&a(e[0])},[e,o]);let d=()=>{let e=l.trim();e&&(t({target:o||"(plan)",question:e}),i(""))};return(0,s.jsxs)("div",{className:"space-y-1.5",children:[e.length>0&&(0,s.jsx)("select",{value:o,onChange:e=>a(e.target.value),className:"w-full rounded border border-white/10 bg-background px-2 py-1 text-[11px] outline-none focus:border-sky-400/40",children:e.map(e=>(0,s.jsx)("option",{value:e,className:"bg-card",children:e},e))}),(0,s.jsx)("textarea",{value:l,onChange:e=>i(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),d())},rows:2,placeholder:"e.g. why a new table instead of reusing users? (⌘/Ctrl+Enter to add)",className:"w-full resize-y rounded border border-white/10 bg-background px-2 py-1.5 text-[12px] leading-snug outline-none focus:border-sky-400/40"}),(0,s.jsx)("button",{onClick:d,disabled:!l.trim(),className:(0,A.cn)("w-full rounded-md px-2 py-1 text-[11px] font-semibold transition-colors",l.trim()?"bg-sky-500/15 text-sky-300 hover:bg-sky-500/25":"text-muted-foreground opacity-50"),children:"Add question"})]})}function eo({active:e,onClick:t,icon:n,children:r}){return(0,s.jsxs)("button",{onClick:t,className:(0,A.cn)("flex items-center gap-1 rounded-md px-2.5 py-1 text-[11px] font-medium transition-colors",e?"bg-white/10 text-foreground":"text-muted-foreground hover:text-foreground"),children:[n,r]})}},82879:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});let s=(0,n(30772).A)("sticky-note",[["path",{d:"M21 9a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 15 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2z",key:"1dfntj"}],["path",{d:"M15 3v5a1 1 0 0 0 1 1h5",key:"6s6qgf"}]])},92571:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});let s=(0,n(30772).A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},97358:(e,t,n)=>{"use strict";n.d(t,{pC:()=>s});let s=[{value:"default",label:"Manual approval",description:"Approve each tool call yourself — Claude Code's default."},{value:"acceptEdits",label:"Auto-accept edits",description:"Auto-approve file edits; still ask before running other tools."},{value:"bypassPermissions",label:"Bypass permissions",description:"Auto-approve every tool call (like --dangerously-skip-permissions)."},{value:"auto",label:"Auto",description:"Autonomous, gated by a safety classifier (needs a recent Claude Code + Sonnet 4.6+)."}]},99979:(e,t,n)=>{"use strict";function s(){return new URLSearchParams(window.location.search).get("ws")}function r(e){let t=new URLSearchParams,n=s();for(let[s,r]of(n&&t.set("ws",n),Object.entries(e??{})))t.set(s,r);let r=t.toString();return r?`/plan?${r}`:"/plan"}n.d(t,{X0:()=>s,rc:()=>r})}},e=>{e.O(0,[2574,3862,8500,4888,8997,2500,766,3343,1487,8441,3794,7358],()=>e(e.s=22137)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44,204,439,543,730,1145,1235,1288,1361,1403,1570,1617,1662,1918,1929,1979,2113,2442,2449,2681,2752,2821,2922,3087,3185,3290,3519,3688,3979,4039,4284,4360,4505,4636,4816,4852,4896,5022,5043,5152,5190,5412,5545,5807,5884,6600,6714,6760,6805,6819,6886,6950,6988,7137,7317,7423,7612,7691,7705,7743,7851,8167,8235,8617,8650,9140,9550,9560],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);