vibedoc 1.11.0 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (818) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +5 -1
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +70 -14
  5. package/.next/routes-manifest.json +24 -0
  6. package/.next/server/app/(app)/activity/page.js.nft.json +1 -1
  7. package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/(app)/board/page.js.nft.json +1 -1
  9. package/.next/server/app/(app)/board/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/(app)/chat/page.js.nft.json +1 -1
  11. package/.next/server/app/(app)/chat/page_client-reference-manifest.js +1 -1
  12. package/.next/server/app/(app)/docs/page.js.nft.json +1 -1
  13. package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/(app)/explorer/page.js.nft.json +1 -1
  15. package/.next/server/app/(app)/explorer/page_client-reference-manifest.js +1 -1
  16. package/.next/server/app/(app)/getting-started/page/app-paths-manifest.json +3 -0
  17. package/.next/server/app/(app)/getting-started/page/build-manifest.json +20 -0
  18. package/.next/server/app/(app)/getting-started/page/next-font-manifest.json +11 -0
  19. package/.next/server/app/(app)/getting-started/page/react-loadable-manifest.json +1 -0
  20. package/.next/server/app/(app)/getting-started/page/server-reference-manifest.json +4 -0
  21. package/.next/server/app/(app)/getting-started/page.js +15 -0
  22. package/.next/server/app/(app)/getting-started/page.js.map +5 -0
  23. package/.next/server/app/(app)/getting-started/page.js.nft.json +1 -0
  24. package/.next/server/app/(app)/getting-started/page_client-reference-manifest.js +3 -0
  25. package/.next/server/app/(app)/graph/page.js.nft.json +1 -1
  26. package/.next/server/app/(app)/graph/page_client-reference-manifest.js +1 -1
  27. package/.next/server/app/(app)/manual-tests/page.js.nft.json +1 -1
  28. package/.next/server/app/(app)/manual-tests/page_client-reference-manifest.js +1 -1
  29. package/.next/server/app/(app)/memory/page.js.nft.json +1 -1
  30. package/.next/server/app/(app)/memory/page_client-reference-manifest.js +1 -1
  31. package/.next/server/app/(app)/roadmap/page.js.nft.json +1 -1
  32. package/.next/server/app/(app)/roadmap/page_client-reference-manifest.js +1 -1
  33. package/.next/server/app/(app)/settings/page.js.nft.json +1 -1
  34. package/.next/server/app/(app)/settings/page_client-reference-manifest.js +1 -1
  35. package/.next/server/app/(app)/setup/page.js.nft.json +1 -1
  36. package/.next/server/app/(app)/setup/page_client-reference-manifest.js +1 -1
  37. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  38. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  39. package/.next/server/app/_global-error.html +1 -1
  40. package/.next/server/app/_global-error.rsc +1 -1
  41. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  42. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  43. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  44. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  45. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  46. package/.next/server/app/_not-found.html +1 -1
  47. package/.next/server/app/_not-found.rsc +2 -2
  48. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  49. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  50. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  51. package/.next/server/app/activity.html +1 -1
  52. package/.next/server/app/activity.rsc +7 -7
  53. package/.next/server/app/activity.segments/!KGFwcCk/activity/__PAGE__.segment.rsc +5 -5
  54. package/.next/server/app/activity.segments/_full.segment.rsc +7 -7
  55. package/.next/server/app/activity.segments/_tree.segment.rsc +2 -2
  56. package/.next/server/app/api/activity/route.js +2 -3
  57. package/.next/server/app/api/activity/route.js.nft.json +1 -1
  58. package/.next/server/app/api/chat/route.js +2 -2
  59. package/.next/server/app/api/chat/route.js.nft.json +1 -1
  60. package/.next/server/app/api/context/route.js +2 -3
  61. package/.next/server/app/api/context/route.js.nft.json +1 -1
  62. package/.next/server/app/api/conversations/route.js +3 -4
  63. package/.next/server/app/api/conversations/route.js.nft.json +1 -1
  64. package/.next/server/app/api/decisions/route.js +2 -3
  65. package/.next/server/app/api/decisions/route.js.nft.json +1 -1
  66. package/.next/server/app/api/docs/graph/route.js +2 -4
  67. package/.next/server/app/api/docs/graph/route.js.nft.json +1 -1
  68. package/.next/server/app/api/docs/links/route.js +2 -4
  69. package/.next/server/app/api/docs/links/route.js.nft.json +1 -1
  70. package/.next/server/app/api/docs/route.js +2 -3
  71. package/.next/server/app/api/docs/route.js.nft.json +1 -1
  72. package/.next/server/app/api/explorer/route.js +3 -4
  73. package/.next/server/app/api/explorer/route.js.nft.json +1 -1
  74. package/.next/server/app/api/mcp/route.js +3 -4
  75. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  76. package/.next/server/app/api/memory/entries/delete/route.js +3 -4
  77. package/.next/server/app/api/memory/entries/delete/route.js.nft.json +1 -1
  78. package/.next/server/app/api/memory/entries/merge/route.js +3 -4
  79. package/.next/server/app/api/memory/entries/merge/route.js.nft.json +1 -1
  80. package/.next/server/app/api/memory/entries/merge/undo/route.js +3 -4
  81. package/.next/server/app/api/memory/entries/merge/undo/route.js.nft.json +1 -1
  82. package/.next/server/app/api/memory/entries/restore/route.js +3 -4
  83. package/.next/server/app/api/memory/entries/restore/route.js.nft.json +1 -1
  84. package/.next/server/app/api/memory/entries/route.js +2 -3
  85. package/.next/server/app/api/memory/entries/route.js.nft.json +1 -1
  86. package/.next/server/app/api/memory/entries/save/route.js +3 -4
  87. package/.next/server/app/api/memory/entries/save/route.js.nft.json +1 -1
  88. package/.next/server/app/api/memory/graph/route.js +3 -4
  89. package/.next/server/app/api/memory/graph/route.js.nft.json +1 -1
  90. package/.next/server/app/api/memory/health/dismiss/route.js +3 -4
  91. package/.next/server/app/api/memory/health/dismiss/route.js.nft.json +1 -1
  92. package/.next/server/app/api/memory/health/route.js +2 -3
  93. package/.next/server/app/api/memory/health/route.js.nft.json +1 -1
  94. package/.next/server/app/api/memory/history/route.js +2 -4
  95. package/.next/server/app/api/memory/history/route.js.nft.json +1 -1
  96. package/.next/server/app/api/memory/restore/route/app-paths-manifest.json +3 -0
  97. package/.next/server/app/api/memory/restore/route/build-manifest.json +12 -0
  98. package/.next/server/app/api/memory/restore/route/server-reference-manifest.json +4 -0
  99. package/.next/server/app/api/memory/restore/route.js +8 -0
  100. package/.next/server/app/api/memory/restore/route.js.map +5 -0
  101. package/.next/server/app/api/memory/restore/route.js.nft.json +1 -0
  102. package/.next/server/app/api/memory/restore/route_client-reference-manifest.js +3 -0
  103. package/.next/server/app/api/memory/route.js +2 -3
  104. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  105. package/.next/server/app/api/memory/versions/route/app-paths-manifest.json +3 -0
  106. package/.next/server/app/api/memory/versions/route/build-manifest.json +12 -0
  107. package/.next/server/app/api/memory/versions/route/server-reference-manifest.json +4 -0
  108. package/.next/server/app/api/memory/versions/route.js +7 -0
  109. package/.next/server/app/api/memory/versions/route.js.map +5 -0
  110. package/.next/server/app/api/memory/versions/route.js.nft.json +1 -0
  111. package/.next/server/app/api/memory/versions/route_client-reference-manifest.js +3 -0
  112. package/.next/server/app/api/plan/apply/route.js +3 -4
  113. package/.next/server/app/api/plan/apply/route.js.nft.json +1 -1
  114. package/.next/server/app/api/projects/route.js +2 -3
  115. package/.next/server/app/api/projects/route.js.nft.json +1 -1
  116. package/.next/server/app/api/registry/route.js +2 -3
  117. package/.next/server/app/api/registry/route.js.nft.json +1 -1
  118. package/.next/server/app/api/roadmap/create/route.js +3 -4
  119. package/.next/server/app/api/roadmap/create/route.js.nft.json +1 -1
  120. package/.next/server/app/api/roadmap/delete/route.js +3 -4
  121. package/.next/server/app/api/roadmap/delete/route.js.nft.json +1 -1
  122. package/.next/server/app/api/roadmap/generate/route.js +3 -4
  123. package/.next/server/app/api/roadmap/generate/route.js.nft.json +1 -1
  124. package/.next/server/app/api/roadmap/layout/route.js +3 -4
  125. package/.next/server/app/api/roadmap/layout/route.js.nft.json +1 -1
  126. package/.next/server/app/api/roadmap/restore/route.js +3 -4
  127. package/.next/server/app/api/roadmap/restore/route.js.nft.json +1 -1
  128. package/.next/server/app/api/roadmap/route.js +2 -3
  129. package/.next/server/app/api/roadmap/route.js.nft.json +1 -1
  130. package/.next/server/app/api/roadmap/update/route.js +3 -4
  131. package/.next/server/app/api/roadmap/update/route.js.nft.json +1 -1
  132. package/.next/server/app/api/sessions/route.js +2 -3
  133. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  134. package/.next/server/app/api/settings/route.js +2 -3
  135. package/.next/server/app/api/settings/route.js.nft.json +1 -1
  136. package/.next/server/app/api/setup/generate/route.js +2 -3
  137. package/.next/server/app/api/setup/generate/route.js.nft.json +1 -1
  138. package/.next/server/app/api/setup/write/route.js +2 -3
  139. package/.next/server/app/api/setup/write/route.js.nft.json +1 -1
  140. package/.next/server/app/api/summary/route.js +2 -3
  141. package/.next/server/app/api/summary/route.js.nft.json +1 -1
  142. package/.next/server/app/api/tasks/bulk/route.js +3 -4
  143. package/.next/server/app/api/tasks/bulk/route.js.nft.json +1 -1
  144. package/.next/server/app/api/tasks/create/route.js +2 -3
  145. package/.next/server/app/api/tasks/create/route.js.nft.json +1 -1
  146. package/.next/server/app/api/tasks/delete/route.js +3 -4
  147. package/.next/server/app/api/tasks/delete/route.js.nft.json +1 -1
  148. package/.next/server/app/api/tasks/manual-tests/route.js +3 -3
  149. package/.next/server/app/api/tasks/manual-tests/route.js.nft.json +1 -1
  150. package/.next/server/app/api/tasks/restore/route.js +3 -4
  151. package/.next/server/app/api/tasks/restore/route.js.nft.json +1 -1
  152. package/.next/server/app/api/tasks/review/route.js +3 -4
  153. package/.next/server/app/api/tasks/review/route.js.nft.json +1 -1
  154. package/.next/server/app/api/tasks/route.js +2 -3
  155. package/.next/server/app/api/tasks/route.js.nft.json +1 -1
  156. package/.next/server/app/api/tasks/update/route.js +3 -4
  157. package/.next/server/app/api/tasks/update/route.js.nft.json +1 -1
  158. package/.next/server/app/api/views/route.js +2 -3
  159. package/.next/server/app/api/views/route.js.nft.json +1 -1
  160. package/.next/server/app/board.html +1 -1
  161. package/.next/server/app/board.rsc +7 -7
  162. package/.next/server/app/board.segments/!KGFwcCk/board/__PAGE__.segment.rsc +5 -5
  163. package/.next/server/app/board.segments/_full.segment.rsc +7 -7
  164. package/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  165. package/.next/server/app/chat.html +1 -1
  166. package/.next/server/app/chat.rsc +6 -6
  167. package/.next/server/app/chat.segments/!KGFwcCk/chat/__PAGE__.segment.rsc +6 -6
  168. package/.next/server/app/chat.segments/_full.segment.rsc +6 -6
  169. package/.next/server/app/chat.segments/_tree.segment.rsc +2 -2
  170. package/.next/server/app/docs.html +1 -1
  171. package/.next/server/app/docs.rsc +7 -7
  172. package/.next/server/app/docs.segments/!KGFwcCk/docs/__PAGE__.segment.rsc +5 -5
  173. package/.next/server/app/docs.segments/_full.segment.rsc +7 -7
  174. package/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  175. package/.next/server/app/explorer.html +1 -1
  176. package/.next/server/app/explorer.rsc +7 -7
  177. package/.next/server/app/explorer.segments/!KGFwcCk/explorer/__PAGE__.segment.rsc +9 -11
  178. package/.next/server/app/explorer.segments/_full.segment.rsc +7 -7
  179. package/.next/server/app/explorer.segments/_tree.segment.rsc +2 -2
  180. package/.next/server/app/getting-started.html +1 -0
  181. package/.next/server/app/getting-started.meta +31 -0
  182. package/.next/server/app/getting-started.rsc +31 -0
  183. package/.next/server/app/getting-started.segments/!KGFwcCk/getting-started/__PAGE__.segment.rsc +32 -0
  184. package/.next/server/app/getting-started.segments/_full.segment.rsc +31 -0
  185. package/.next/server/app/getting-started.segments/_tree.segment.rsc +5 -0
  186. package/.next/server/app/graph.html +1 -1
  187. package/.next/server/app/graph.rsc +6 -6
  188. package/.next/server/app/graph.segments/!KGFwcCk/graph/__PAGE__.segment.rsc +5 -5
  189. package/.next/server/app/graph.segments/_full.segment.rsc +6 -6
  190. package/.next/server/app/graph.segments/_tree.segment.rsc +2 -2
  191. package/.next/server/app/index.html +1 -1
  192. package/.next/server/app/index.rsc +2 -2
  193. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  194. package/.next/server/app/index.segments/_full.segment.rsc +2 -2
  195. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  196. package/.next/server/app/manual-tests.html +1 -1
  197. package/.next/server/app/manual-tests.rsc +7 -7
  198. package/.next/server/app/manual-tests.segments/!KGFwcCk/manual-tests/__PAGE__.segment.rsc +9 -11
  199. package/.next/server/app/manual-tests.segments/_full.segment.rsc +7 -7
  200. package/.next/server/app/manual-tests.segments/_tree.segment.rsc +2 -2
  201. package/.next/server/app/memory.html +1 -1
  202. package/.next/server/app/memory.rsc +7 -7
  203. package/.next/server/app/memory.segments/!KGFwcCk/memory/__PAGE__.segment.rsc +5 -5
  204. package/.next/server/app/memory.segments/_full.segment.rsc +7 -7
  205. package/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
  206. package/.next/server/app/page.js.nft.json +1 -1
  207. package/.next/server/app/page_client-reference-manifest.js +1 -1
  208. package/.next/server/app/roadmap.html +1 -1
  209. package/.next/server/app/roadmap.rsc +7 -7
  210. package/.next/server/app/roadmap.segments/!KGFwcCk/roadmap/__PAGE__.segment.rsc +5 -5
  211. package/.next/server/app/roadmap.segments/_full.segment.rsc +7 -7
  212. package/.next/server/app/roadmap.segments/_tree.segment.rsc +2 -2
  213. package/.next/server/app/settings.html +1 -1
  214. package/.next/server/app/settings.rsc +6 -6
  215. package/.next/server/app/settings.segments/!KGFwcCk/settings/__PAGE__.segment.rsc +11 -9
  216. package/.next/server/app/settings.segments/_full.segment.rsc +6 -6
  217. package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  218. package/.next/server/app/setup.html +1 -1
  219. package/.next/server/app/setup.rsc +6 -6
  220. package/.next/server/app/setup.segments/!KGFwcCk/setup/__PAGE__.segment.rsc +9 -11
  221. package/.next/server/app/setup.segments/_full.segment.rsc +6 -6
  222. package/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  223. package/.next/server/app/welcome/page/app-paths-manifest.json +3 -0
  224. package/.next/server/app/welcome/page/build-manifest.json +20 -0
  225. package/.next/server/app/welcome/page/next-font-manifest.json +11 -0
  226. package/.next/server/app/welcome/page/react-loadable-manifest.json +1 -0
  227. package/.next/server/app/welcome/page/server-reference-manifest.json +4 -0
  228. package/.next/server/app/welcome/page.js +13 -0
  229. package/.next/server/app/welcome/page.js.map +5 -0
  230. package/.next/server/app/welcome/page.js.nft.json +1 -0
  231. package/.next/server/app/welcome/page_client-reference-manifest.js +3 -0
  232. package/.next/server/app/welcome.html +1 -0
  233. package/.next/server/app/welcome.meta +26 -0
  234. package/.next/server/app/welcome.rsc +27 -0
  235. package/.next/server/app/welcome.segments/_full.segment.rsc +27 -0
  236. package/.next/server/app/welcome.segments/_tree.segment.rsc +5 -0
  237. package/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +29 -0
  238. package/.next/server/app-paths-manifest.json +5 -1
  239. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01gyja3._.js → 11mp_@anthropic-ai_sdk_0-smxh7._.js} +1 -1
  240. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_02lx_j3._.js → 11mp_@anthropic-ai_sdk_0-upxuo._.js} +1 -1
  241. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0-r4g2t._.js → 11mp_@anthropic-ai_sdk_00stvd0._.js} +1 -1
  242. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05iv23g._.js → 11mp_@anthropic-ai_sdk_05tlp4j._.js} +1 -1
  243. package/.next/server/chunks/11mp_@anthropic-ai_sdk_06i1jku._.js +3 -0
  244. package/.next/server/chunks/11mp_@anthropic-ai_sdk_06pqlwo._.js +3 -0
  245. package/.next/server/chunks/11mp_@anthropic-ai_sdk_06q_bm6._.js +3 -0
  246. package/.next/server/chunks/11mp_@anthropic-ai_sdk_098dref._.js +3 -0
  247. package/.next/server/chunks/11mp_@anthropic-ai_sdk_09q07e_._.js +3 -0
  248. package/.next/server/chunks/11mp_@anthropic-ai_sdk_09r9wsn._.js +3 -0
  249. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0_rnqa6._.js +3 -0
  250. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ch0mdl._.js +3 -0
  251. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0didq3m._.js +3 -0
  252. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0dwtv_z._.js +3 -0
  253. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0e8sqia._.js +3 -0
  254. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0gk-rze._.js +3 -0
  255. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0gywxp1._.js +3 -0
  256. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0h4l0yx._.js +3 -0
  257. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0hjmy82._.js +3 -0
  258. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0jbmnx_._.js +3 -0
  259. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0l7teck._.js +3 -0
  260. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ldf-lc._.js +3 -0
  261. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0oe9p6l._.js +3 -0
  262. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ppgi2h._.js +3 -0
  263. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ydb8nm._.js +3 -0
  264. package/.next/server/chunks/11mp_@anthropic-ai_sdk_11hsr1e._.js +3 -0
  265. package/.next/server/chunks/11mp_@anthropic-ai_sdk_14pgcis._.js +3 -0
  266. package/.next/server/chunks/11mp_@anthropic-ai_sdk_15_sqq8._.js +3 -0
  267. package/.next/server/chunks/11mp_@anthropic-ai_sdk_16up-b0._.js +3 -0
  268. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1_jm94w._.js +3 -0
  269. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1aswx0v._.js +3 -0
  270. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1bkea9c._.js +3 -0
  271. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1d41_6l._.js +3 -0
  272. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1d959rx._.js +3 -0
  273. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1eughke._.js +3 -0
  274. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ev29eb._.js +3 -0
  275. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1faxy2m._.js +3 -0
  276. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1lginb1._.js +3 -0
  277. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1pg6fky._.js +3 -0
  278. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1qfho5e._.js +3 -0
  279. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1r9e6jv._.js +3 -0
  280. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1tjlpeq._.js +3 -0
  281. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1wcdj4f._.js +3 -0
  282. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1x25dnb._.js +3 -0
  283. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ywjkuh._.js +3 -0
  284. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1zbnql3._.js +3 -0
  285. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1zbnql3._.js.map +1 -0
  286. package/.next/server/chunks/11mp_@anthropic-ai_sdk_208gclq._.js +3 -0
  287. package/.next/server/chunks/11mp_@anthropic-ai_sdk_208gclq._.js.map +1 -0
  288. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_07rnikd._.js +3 -0
  289. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0cxqkzo._.js +3 -0
  290. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0iemvsj._.js +3 -0
  291. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0losy1p._.js +3 -0
  292. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0q2-o56._.js +3 -0
  293. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0v9tonm._.js +3 -0
  294. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ve_28v._.js +3 -0
  295. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0vta7f6._.js +3 -0
  296. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0xme80s._.js +3 -0
  297. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_12tnhho._.js +3 -0
  298. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_14-nnf3._.js +3 -0
  299. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_14e0xcw._.js +3 -0
  300. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1cbywiw._.js +3 -0
  301. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1d4fc7y._.js +3 -0
  302. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1e89sld._.js +3 -0
  303. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1emt011._.js +3 -0
  304. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1jgaffx._.js +3 -0
  305. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1m9p_w8._.js +3 -0
  306. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1mtv1gy._.js +3 -0
  307. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1plmrbl._.js +3 -0
  308. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1toqkb5._.js +3 -0
  309. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1yc8ml3._.js +3 -0
  310. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1ycnogk._.js +3 -0
  311. package/.next/server/chunks/[root-of-the-server]__02ym03p._.js +3 -0
  312. package/.next/server/chunks/[root-of-the-server]__02ym03p._.js.map +1 -0
  313. package/.next/server/chunks/[root-of-the-server]__04qfxm4._.js +3 -0
  314. package/.next/server/chunks/[root-of-the-server]__04qfxm4._.js.map +1 -0
  315. package/.next/server/chunks/[root-of-the-server]__04t339z._.js +3 -0
  316. package/.next/server/chunks/[root-of-the-server]__04t339z._.js.map +1 -0
  317. package/.next/server/chunks/[root-of-the-server]__05b72pa._.js +3 -0
  318. package/.next/server/chunks/[root-of-the-server]__05b72pa._.js.map +1 -0
  319. package/.next/server/chunks/[root-of-the-server]__05jwgm-._.js +261 -0
  320. package/.next/server/chunks/[root-of-the-server]__05jwgm-._.js.map +1 -0
  321. package/.next/server/chunks/{[root-of-the-server]__0rh8yfn._.js → [root-of-the-server]__06ikdrx._.js} +2 -2
  322. package/.next/server/chunks/{[root-of-the-server]__0rh8yfn._.js.map → [root-of-the-server]__06ikdrx._.js.map} +1 -1
  323. package/.next/server/chunks/[root-of-the-server]__06x7kjp._.js +3 -0
  324. package/.next/server/chunks/{[root-of-the-server]__1wbho9e._.js.map → [root-of-the-server]__06x7kjp._.js.map} +1 -1
  325. package/.next/server/chunks/[root-of-the-server]__07-qwkc._.js +3 -0
  326. package/.next/server/chunks/[root-of-the-server]__07-qwkc._.js.map +1 -0
  327. package/.next/server/chunks/[root-of-the-server]__0_j-3zy._.js +3 -0
  328. package/.next/server/chunks/{[root-of-the-server]__1r_0uma._.js.map → [root-of-the-server]__0_j-3zy._.js.map} +1 -1
  329. package/.next/server/chunks/{[root-of-the-server]__0pz59qo._.js → [root-of-the-server]__0_paned._.js} +2 -2
  330. package/.next/server/chunks/[root-of-the-server]__0_paned._.js.map +1 -0
  331. package/.next/server/chunks/{[root-of-the-server]__0rikmqn._.js → [root-of-the-server]__0adl8c2._.js} +2 -2
  332. package/.next/server/chunks/[root-of-the-server]__0be-1oe._.js +3 -0
  333. package/.next/server/chunks/[root-of-the-server]__0be-1oe._.js.map +1 -0
  334. package/.next/server/chunks/[root-of-the-server]__0c7qnhb._.js +3 -0
  335. package/.next/server/chunks/{[root-of-the-server]__0vf-0gp._.js.map → [root-of-the-server]__0c7qnhb._.js.map} +1 -1
  336. package/.next/server/chunks/[root-of-the-server]__0dfd91u._.js +3 -0
  337. package/.next/server/chunks/[root-of-the-server]__0dfd91u._.js.map +1 -0
  338. package/.next/server/chunks/[root-of-the-server]__0e_zpd3._.js +3 -0
  339. package/.next/server/chunks/[root-of-the-server]__0e_zpd3._.js.map +1 -0
  340. package/.next/server/chunks/[root-of-the-server]__0efnsph._.js +3 -0
  341. package/.next/server/chunks/[root-of-the-server]__0efnsph._.js.map +1 -0
  342. package/.next/server/chunks/{[root-of-the-server]__1sn6-7a._.js → [root-of-the-server]__0gbhsr4._.js} +2 -2
  343. package/.next/server/chunks/{[root-of-the-server]__1sn6-7a._.js.map → [root-of-the-server]__0gbhsr4._.js.map} +1 -1
  344. package/.next/server/chunks/[root-of-the-server]__0pb7dzk._.js +261 -0
  345. package/.next/server/chunks/[root-of-the-server]__0pb7dzk._.js.map +1 -0
  346. package/.next/server/chunks/[root-of-the-server]__0q-h0w3._.js +3 -0
  347. package/.next/server/chunks/[root-of-the-server]__0q-h0w3._.js.map +1 -0
  348. package/.next/server/chunks/{[root-of-the-server]__1yh-4vk._.js → [root-of-the-server]__0r_831n._.js} +2 -2
  349. package/.next/server/chunks/[root-of-the-server]__0s9wedh._.js +3 -0
  350. package/.next/server/chunks/[root-of-the-server]__0s9wedh._.js.map +1 -0
  351. package/.next/server/chunks/{[root-of-the-server]__08v3p50._.js → [root-of-the-server]__0tzsbyx._.js} +2 -2
  352. package/.next/server/chunks/[root-of-the-server]__0uyhc_4._.js +3 -0
  353. package/.next/server/chunks/[root-of-the-server]__0uyhc_4._.js.map +1 -0
  354. package/.next/server/chunks/[root-of-the-server]__0z2h080._.js +3 -0
  355. package/.next/server/chunks/[root-of-the-server]__0z2h080._.js.map +1 -0
  356. package/.next/server/chunks/[root-of-the-server]__1-f1pzo._.js +3 -0
  357. package/.next/server/chunks/{[root-of-the-server]__0b6w_wb._.js.map → [root-of-the-server]__1-f1pzo._.js.map} +1 -1
  358. package/.next/server/chunks/[root-of-the-server]__120uun8._.js +3 -0
  359. package/.next/server/chunks/{[root-of-the-server]__05us508._.js.map → [root-of-the-server]__120uun8._.js.map} +1 -1
  360. package/.next/server/chunks/[root-of-the-server]__12qs29o._.js +261 -0
  361. package/.next/server/chunks/[root-of-the-server]__12qs29o._.js.map +1 -0
  362. package/.next/server/chunks/{[root-of-the-server]__1r67yrn._.js → [root-of-the-server]__146-7zt._.js} +2 -2
  363. package/.next/server/chunks/[root-of-the-server]__146-7zt._.js.map +1 -0
  364. package/.next/server/chunks/[root-of-the-server]__17_dic_._.js +3 -0
  365. package/.next/server/chunks/[root-of-the-server]__17_dic_._.js.map +1 -0
  366. package/.next/server/chunks/[root-of-the-server]__19a04nn._.js +3 -0
  367. package/.next/server/chunks/{[root-of-the-server]__0hg1r2b._.js.map → [root-of-the-server]__19a04nn._.js.map} +1 -1
  368. package/.next/server/chunks/[root-of-the-server]__1_q8upn._.js +3 -0
  369. package/.next/server/chunks/[root-of-the-server]__1ar-16i._.js +3 -0
  370. package/.next/server/chunks/[root-of-the-server]__1ar-16i._.js.map +1 -0
  371. package/.next/server/chunks/[root-of-the-server]__1egi_4t._.js +3 -0
  372. package/.next/server/chunks/[root-of-the-server]__1egi_4t._.js.map +1 -0
  373. package/.next/server/chunks/[root-of-the-server]__1eh1p2_._.js +3 -0
  374. package/.next/server/chunks/[root-of-the-server]__1eh1p2_._.js.map +1 -0
  375. package/.next/server/chunks/[root-of-the-server]__1gwdudg._.js +3 -0
  376. package/.next/server/chunks/{[root-of-the-server]__18dt3sr._.js.map → [root-of-the-server]__1gwdudg._.js.map} +1 -1
  377. package/.next/server/chunks/{[root-of-the-server]__0wc_gnr._.js → [root-of-the-server]__1hz94ca._.js} +2 -2
  378. package/.next/server/chunks/[root-of-the-server]__1jyx430._.js +3 -0
  379. package/.next/server/chunks/{[root-of-the-server]__1wcd2x9._.js.map → [root-of-the-server]__1jyx430._.js.map} +1 -1
  380. package/.next/server/chunks/[root-of-the-server]__1meifxd._.js +3 -0
  381. package/.next/server/chunks/[root-of-the-server]__1meifxd._.js.map +1 -0
  382. package/.next/server/chunks/[root-of-the-server]__1mn0d5e._.js +3 -0
  383. package/.next/server/chunks/[root-of-the-server]__1mn0d5e._.js.map +1 -0
  384. package/.next/server/chunks/[root-of-the-server]__1o-hldt._.js +3 -0
  385. package/.next/server/chunks/{[root-of-the-server]__1pjwaan._.js.map → [root-of-the-server]__1o-hldt._.js.map} +1 -1
  386. package/.next/server/chunks/[root-of-the-server]__1ocnzl5._.js +3 -0
  387. package/.next/server/chunks/[root-of-the-server]__1ocnzl5._.js.map +1 -0
  388. package/.next/server/chunks/{[root-of-the-server]__06ndlro._.js → [root-of-the-server]__1pf07ha._.js} +2 -2
  389. package/.next/server/chunks/{[root-of-the-server]__0zy73pu._.js → [root-of-the-server]__1rtj94g._.js} +2 -2
  390. package/.next/server/chunks/{[root-of-the-server]__11nbc9e._.js.map → [root-of-the-server]__1rtj94g._.js.map} +1 -1
  391. package/.next/server/chunks/[root-of-the-server]__1rz7a1h._.js +3 -0
  392. package/.next/server/chunks/[root-of-the-server]__1rz7a1h._.js.map +1 -0
  393. package/.next/server/chunks/[root-of-the-server]__1s7yctb._.js +3 -0
  394. package/.next/server/chunks/{[root-of-the-server]__0rggulw._.js.map → [root-of-the-server]__1s7yctb._.js.map} +1 -1
  395. package/.next/server/chunks/[root-of-the-server]__1tebaoq._.js +3 -0
  396. package/.next/server/chunks/[root-of-the-server]__1tebaoq._.js.map +1 -0
  397. package/.next/server/chunks/[root-of-the-server]__1uh0213._.js +3 -0
  398. package/.next/server/chunks/{[root-of-the-server]__1skrybv._.js.map → [root-of-the-server]__1uh0213._.js.map} +1 -1
  399. package/.next/server/chunks/[root-of-the-server]__1vj_u-e._.js +3 -0
  400. package/.next/server/chunks/{[root-of-the-server]__1p6-0l0._.js.map → [root-of-the-server]__1vj_u-e._.js.map} +1 -1
  401. package/.next/server/chunks/{[root-of-the-server]__1_qenei._.js → [root-of-the-server]__20ctbhx._.js} +2 -2
  402. package/.next/server/chunks/{[root-of-the-server]__1_qenei._.js.map → [root-of-the-server]__20ctbhx._.js.map} +1 -1
  403. package/.next/server/chunks/[root-of-the-server]__20nzp64._.js +3 -0
  404. package/.next/server/chunks/{[root-of-the-server]__1r67yrn._.js.map → [root-of-the-server]__20nzp64._.js.map} +1 -1
  405. package/.next/server/chunks/_04byth9._.js +19 -18
  406. package/.next/server/chunks/_04byth9._.js.map +1 -1
  407. package/.next/server/chunks/_0safx0g._.js +3 -3
  408. package/.next/server/chunks/_0safx0g._.js.map +1 -1
  409. package/.next/server/chunks/_1au4syj._.js +1 -1
  410. package/.next/server/chunks/_1au4syj._.js.map +1 -1
  411. package/.next/server/chunks/_1b5fqxy._.js +1 -1
  412. package/.next/server/chunks/_1b5fqxy._.js.map +1 -1
  413. package/.next/server/chunks/_1ivswa9._.js +1 -1
  414. package/.next/server/chunks/_1ivswa9._.js.map +1 -1
  415. package/.next/server/chunks/_1si7nb_._.js +2 -2
  416. package/.next/server/chunks/_1si7nb_._.js.map +1 -1
  417. package/.next/server/chunks/_next-internal_server_app_api_memory_restore_route_actions_0679kmo.js +3 -0
  418. package/.next/server/chunks/_next-internal_server_app_api_memory_versions_route_actions_13mix75.js +3 -0
  419. package/.next/server/chunks/ssr/{0_nd_mermaid_dist_mermaid_core_mjs_0y_edkq._.js → 0_nd_mermaid_dist_mermaid_core_mjs_1trh599._.js} +2 -2
  420. package/.next/server/chunks/ssr/{1u84_katex_dist_katex_mjs_0yg8zto._.js → 1u84_katex_dist_katex_mjs_0wukkxe._.js} +1 -1
  421. package/.next/server/chunks/ssr/[root-of-the-server]__0dn-5g9._.js +3 -0
  422. package/.next/server/chunks/ssr/[root-of-the-server]__0dn-5g9._.js.map +1 -0
  423. package/.next/server/chunks/ssr/{[root-of-the-server]__08z0szh._.js → [root-of-the-server]__0p_ieww._.js} +1 -1
  424. package/.next/server/chunks/ssr/[root-of-the-server]__1_4pq0_._.js +3 -0
  425. package/.next/server/chunks/ssr/[root-of-the-server]__1_4pq0_._.js.map +1 -0
  426. package/.next/server/chunks/ssr/{[root-of-the-server]__1wdwnnp._.js → [root-of-the-server]__1ecvjg8._.js} +1 -1
  427. package/.next/server/chunks/ssr/_04xff_2._.js +1 -1
  428. package/.next/server/chunks/ssr/_04xff_2._.js.map +1 -1
  429. package/.next/server/chunks/ssr/_09qa3fe._.js +3 -0
  430. package/.next/server/chunks/ssr/_09qa3fe._.js.map +1 -0
  431. package/.next/server/chunks/ssr/_0_74-q8._.js +3 -0
  432. package/.next/server/chunks/ssr/_0_74-q8._.js.map +1 -0
  433. package/.next/server/chunks/ssr/_0cv0ugs._.js +3 -0
  434. package/.next/server/chunks/ssr/_0cv0ugs._.js.map +1 -0
  435. package/.next/server/chunks/ssr/_0ghj-vx._.js +1 -1
  436. package/.next/server/chunks/ssr/_0ghj-vx._.js.map +1 -1
  437. package/.next/server/chunks/ssr/_0hck6f0._.js +3 -0
  438. package/.next/server/chunks/ssr/_0hck6f0._.js.map +1 -0
  439. package/.next/server/chunks/ssr/_0o8t6j-._.js +3 -0
  440. package/.next/server/chunks/ssr/_0o8t6j-._.js.map +1 -0
  441. package/.next/server/chunks/ssr/_0p_5o4z._.js +23 -0
  442. package/.next/server/chunks/ssr/_0p_5o4z._.js.map +1 -0
  443. package/.next/server/chunks/ssr/_0rmo9r-._.js +1 -1
  444. package/.next/server/chunks/ssr/_0rmo9r-._.js.map +1 -1
  445. package/.next/server/chunks/ssr/_0ust7tw._.js +1 -1
  446. package/.next/server/chunks/ssr/_0ust7tw._.js.map +1 -1
  447. package/.next/server/chunks/ssr/_1c46ap6._.js +23 -0
  448. package/.next/server/chunks/ssr/_1c46ap6._.js.map +1 -0
  449. package/.next/server/chunks/ssr/_1gxjjvh._.js +1 -1
  450. package/.next/server/chunks/ssr/_1gxjjvh._.js.map +1 -1
  451. package/.next/server/chunks/ssr/_1jjs63r._.js +131 -0
  452. package/.next/server/chunks/ssr/_1jjs63r._.js.map +1 -0
  453. package/.next/server/chunks/ssr/_1kcyxnh._.js +3 -0
  454. package/.next/server/chunks/ssr/_1kcyxnh._.js.map +1 -0
  455. package/.next/server/chunks/ssr/_1lvbdeq._.js +3 -0
  456. package/.next/server/chunks/ssr/_1lvbdeq._.js.map +1 -0
  457. package/.next/server/chunks/ssr/_1rewjdw._.js +3 -0
  458. package/.next/server/chunks/ssr/_1rewjdw._.js.map +1 -0
  459. package/.next/server/chunks/ssr/_1tv---f._.js +3 -0
  460. package/.next/server/chunks/ssr/_1tv---f._.js.map +1 -0
  461. package/.next/server/chunks/ssr/_1zyvi-w._.js +3 -0
  462. package/.next/server/chunks/ssr/_1zyvi-w._.js.map +1 -0
  463. package/.next/server/chunks/ssr/_next-internal_server_app_(app)_getting-started_page_actions_18jod7i.js +3 -0
  464. package/.next/server/chunks/ssr/_next-internal_server_app_welcome_page_actions_1unjea7.js +3 -0
  465. package/.next/server/chunks/ssr/{node_modules__pnpm_03mp7qw._.js → node_modules__pnpm_0-6sq9f._.js} +2 -2
  466. package/.next/server/chunks/ssr/{node_modules__pnpm_0jampur._.js → node_modules__pnpm_0-vta96._.js} +1 -1
  467. package/.next/server/chunks/ssr/{node_modules__pnpm_00f4yhs._.js → node_modules__pnpm_04qn321._.js} +1 -1
  468. package/.next/server/chunks/ssr/{node_modules__pnpm_0tn5pg3._.js → node_modules__pnpm_06r-oci._.js} +1 -1
  469. package/.next/server/chunks/ssr/{node_modules__pnpm_0iu4132._.js → node_modules__pnpm_0fe8aya._.js} +1 -1
  470. package/.next/server/chunks/ssr/{node_modules__pnpm_0oyo3yo._.js → node_modules__pnpm_0hpufx1._.js} +2 -2
  471. package/.next/server/chunks/ssr/{node_modules__pnpm_0j_-le7._.js → node_modules__pnpm_0k5j0_5._.js} +2 -2
  472. package/.next/server/chunks/ssr/node_modules__pnpm_0k5j0_5._.js.map +1 -0
  473. package/.next/server/chunks/ssr/{node_modules__pnpm_0x5wj-4._.js → node_modules__pnpm_0kv8p99._.js} +2 -2
  474. package/.next/server/chunks/ssr/{node_modules__pnpm_06_8fr8._.js → node_modules__pnpm_0m-_au1._.js} +1 -1
  475. package/.next/server/chunks/ssr/{node_modules__pnpm_1zme4rg._.js → node_modules__pnpm_0mrjd3b._.js} +1 -1
  476. package/.next/server/chunks/ssr/{node_modules__pnpm_0mqeoh-._.js → node_modules__pnpm_0p2ufg5._.js} +2 -2
  477. package/.next/server/chunks/ssr/{node_modules__pnpm_03mpmzx._.js → node_modules__pnpm_0r2omyh._.js} +1 -1
  478. package/.next/server/chunks/ssr/{node_modules__pnpm_0_e05ka._.js → node_modules__pnpm_0uh9zwf._.js} +1 -1
  479. package/.next/server/chunks/ssr/{node_modules__pnpm_035haet._.js → node_modules__pnpm_0ujugl_._.js} +1 -1
  480. package/.next/server/chunks/ssr/{node_modules__pnpm_0lkvbt-._.js → node_modules__pnpm_0v-_iaj._.js} +1 -1
  481. package/.next/server/chunks/ssr/{node_modules__pnpm_0rq9x9q._.js → node_modules__pnpm_0xin4nu._.js} +2 -2
  482. package/.next/server/chunks/ssr/{node_modules__pnpm_139-v1i._.js → node_modules__pnpm_1-zfovp._.js} +1 -1
  483. package/.next/server/chunks/ssr/{node_modules__pnpm_1i_chik._.js → node_modules__pnpm_11p7w0z._.js} +1 -1
  484. package/.next/server/chunks/ssr/{node_modules__pnpm_1jgju12._.js → node_modules__pnpm_16l16l0._.js} +1 -1
  485. package/.next/server/chunks/ssr/{node_modules__pnpm_1n9oeu0._.js → node_modules__pnpm_16vl5yb._.js} +1 -1
  486. package/.next/server/chunks/ssr/{node_modules__pnpm_1ydeqw6._.js → node_modules__pnpm_1alnvos._.js} +1 -1
  487. package/.next/server/chunks/ssr/{node_modules__pnpm_03an60e._.js → node_modules__pnpm_1e_74v6._.js} +1 -1
  488. package/.next/server/chunks/ssr/{node_modules__pnpm_2045l51._.js → node_modules__pnpm_1kvkjrs._.js} +1 -1
  489. package/.next/server/chunks/ssr/{node_modules__pnpm_0zz55xq._.js → node_modules__pnpm_1l4yejo._.js} +1 -1
  490. package/.next/server/chunks/ssr/node_modules__pnpm_1l4yejo._.js.map +1 -0
  491. package/.next/server/chunks/ssr/{node_modules__pnpm_1ws3ez9._.js → node_modules__pnpm_1uly489._.js} +1 -1
  492. package/.next/server/chunks/ssr/{node_modules__pnpm_1zum4yd._.js → node_modules__pnpm_1xntybk._.js} +1 -1
  493. package/.next/server/chunks/ssr/{node_modules__pnpm_09nd7ia._.js → node_modules__pnpm_20g30gl._.js} +1 -1
  494. package/.next/server/chunks/ssr/src_app_(app)_activity_page_tsx_13jd6bn._.js +1 -1
  495. package/.next/server/chunks/ssr/src_app_(app)_activity_page_tsx_13jd6bn._.js.map +1 -1
  496. package/.next/server/chunks/ssr/src_app_(app)_board_page_tsx_0gpfc77._.js +1 -1
  497. package/.next/server/chunks/ssr/src_app_(app)_board_page_tsx_0gpfc77._.js.map +1 -1
  498. package/.next/server/chunks/ssr/src_app_(app)_getting-started_page_tsx_0dgdc6p._.js +3 -0
  499. package/.next/server/chunks/ssr/src_app_(app)_getting-started_page_tsx_0dgdc6p._.js.map +1 -0
  500. package/.next/server/chunks/ssr/src_app_(app)_layout_tsx_1yu5hom._.js +1 -1
  501. package/.next/server/chunks/ssr/src_app_(app)_layout_tsx_1yu5hom._.js.map +1 -1
  502. package/.next/server/chunks/ssr/src_app_(app)_manual-tests_page_tsx_01tnunf._.js +1 -1
  503. package/.next/server/chunks/ssr/src_app_(app)_manual-tests_page_tsx_01tnunf._.js.map +1 -1
  504. package/.next/server/chunks/ssr/src_app_(app)_memory_page_tsx_19jhb1c._.js +3 -3
  505. package/.next/server/chunks/ssr/src_app_(app)_memory_page_tsx_19jhb1c._.js.map +1 -1
  506. package/.next/server/chunks/ssr/src_app_(app)_roadmap_page_tsx_0vcq3jr._.js +2 -2
  507. package/.next/server/chunks/ssr/src_app_(app)_roadmap_page_tsx_0vcq3jr._.js.map +1 -1
  508. package/.next/server/chunks/ssr/src_components_chat_ChatView_tsx_0h5j-e2._.js +1 -1
  509. package/.next/server/chunks/ssr/src_components_chat_ChatView_tsx_0h5j-e2._.js.map +1 -1
  510. package/.next/server/chunks/ssr/src_context_ChatContext_tsx_0lowp8p._.js +2 -2
  511. package/.next/server/chunks/ssr/src_context_ChatContext_tsx_0lowp8p._.js.map +1 -1
  512. package/.next/server/middleware-build-manifest.js +3 -3
  513. package/.next/server/next-font-manifest.js +1 -1
  514. package/.next/server/next-font-manifest.json +8 -0
  515. package/.next/server/pages/404.html +1 -1
  516. package/.next/server/pages/500.html +1 -1
  517. package/.next/server/prefetch-hints.json +33 -0
  518. package/.next/server/server-reference-manifest.js +1 -1
  519. package/.next/server/server-reference-manifest.json +1 -1
  520. package/.next/static/chunks/056pca8ms7k-9.js +1 -0
  521. package/.next/static/chunks/07hf_3iqpzmvo.css +1 -0
  522. package/.next/static/chunks/09-kkj4oxfqu1.js +1 -0
  523. package/.next/static/chunks/0fvkvef41i5ka.js +1 -0
  524. package/.next/static/chunks/{1xxzt2y2ttqql.js → 0kmyxrtasrg2e.js} +1 -1
  525. package/.next/static/chunks/11plpfj6j22fq.js +3 -0
  526. package/.next/static/chunks/{3ly7b47esdb7j.js → 1on4c-091wzdq.js} +1 -1
  527. package/.next/static/chunks/22vfp8880q59s.js +1 -0
  528. package/.next/static/chunks/2kf1_d5fndxdb.js +1 -0
  529. package/.next/static/chunks/{0_8ovyz2sbr3p.js → 2m7a38m38tx5y.js} +1 -1
  530. package/.next/static/chunks/31q2_z_ekk94r.js +1 -0
  531. package/.next/static/chunks/34lxzt8ahe_9n.js +1 -0
  532. package/.next/static/chunks/3fgzdr870mbms.js +2 -0
  533. package/.next/static/chunks/3gzt07wmbrocf.js +12 -0
  534. package/.next/static/chunks/3j_ko3wq2nvby.js +1 -0
  535. package/.next/static/chunks/3l3l7u2t-n2fh.js +3 -0
  536. package/.next/static/chunks/3l4yjycfav_7a.js +1 -0
  537. package/.next/static/chunks/3s8g1yx5n4kmt.js +1 -0
  538. package/.next/static/chunks/3v8szq-k4jtkg.js +1 -0
  539. package/.next/static/chunks/3xp-i_0-8cq9_.js +1 -0
  540. package/.next/static/chunks/41mb4xnwp-aq_.js +1 -0
  541. package/README.md +9 -2
  542. package/bin/vibedoc.check.mts +25 -0
  543. package/bin/vibedoc.mjs +9 -0
  544. package/docs/getting-started.md +93 -0
  545. package/package.json +3 -1
  546. package/.next/server/chunks/0_g__next_1qpfvou._.js +0 -158
  547. package/.next/server/chunks/0_g__next_1qpfvou._.js.map +0 -1
  548. package/.next/server/chunks/11mp_@anthropic-ai_sdk_05oneea._.js +0 -3
  549. package/.next/server/chunks/11mp_@anthropic-ai_sdk_07fgg-l._.js +0 -3
  550. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0_5gzfy._.js +0 -3
  551. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0_jynr-._.js +0 -3
  552. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0aykesf._.js +0 -3
  553. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0br_1fc._.js +0 -3
  554. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0cd5lu7._.js +0 -3
  555. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0ckxhy7._.js +0 -3
  556. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0e5qkuv._.js +0 -3
  557. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0el8pm6._.js +0 -3
  558. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0i4w8fv._.js +0 -3
  559. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0i7ckik._.js +0 -3
  560. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0l1p4c6._.js +0 -3
  561. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0m-xqs_._.js +0 -3
  562. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0nltdmf._.js +0 -3
  563. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0qxmzg8._.js +0 -3
  564. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0spr_aj._.js +0 -3
  565. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0th0pyh._.js +0 -3
  566. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0x21fif._.js +0 -3
  567. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1-7bj56._.js +0 -3
  568. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1-efoj1._.js +0 -3
  569. package/.next/server/chunks/11mp_@anthropic-ai_sdk_13vu693._.js +0 -3
  570. package/.next/server/chunks/11mp_@anthropic-ai_sdk_13w62gi._.js +0 -3
  571. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1887ce1._.js +0 -3
  572. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1_jq3yb._.js +0 -3
  573. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1agvp6h._.js +0 -3
  574. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1b1-3vt._.js +0 -3
  575. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ekldtb._.js +0 -3
  576. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ezcndt._.js +0 -3
  577. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1gr-orf._.js +0 -3
  578. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1hf-884._.js +0 -3
  579. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ndwnmb._.js +0 -3
  580. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1rdesfd._.js +0 -3
  581. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1s8h60-._.js +0 -3
  582. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1tgk9wk._.js +0 -3
  583. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1uugb45._.js +0 -3
  584. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1vcxmui._.js +0 -3
  585. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1x63qpm._.js +0 -3
  586. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1y5oj_h._.js +0 -3
  587. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1z0q4jj._.js +0 -3
  588. package/.next/server/chunks/11mp_@anthropic-ai_sdk_20j6dn7._.js +0 -3
  589. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_00nr0dy._.js +0 -3
  590. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_06kgcr0._.js +0 -3
  591. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_07kod-g._.js +0 -3
  592. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0_va-1q._.js +0 -3
  593. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0dr79hc._.js +0 -3
  594. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ew4_uw._.js +0 -3
  595. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0iy714m._.js +0 -3
  596. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0n6aq49._.js +0 -3
  597. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ncvuil._.js +0 -3
  598. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0vilstf._.js +0 -3
  599. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0ybdfbv._.js +0 -3
  600. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0z31-c0._.js +0 -3
  601. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0zu51ny._.js +0 -3
  602. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_13-fsm5._.js +0 -3
  603. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_13lk7wf._.js +0 -3
  604. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1ao3e3l._.js +0 -3
  605. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1ck6z1z._.js +0 -3
  606. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1dm3so9._.js +0 -3
  607. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1jxtz_6._.js +0 -3
  608. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1pdl5qg._.js +0 -3
  609. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1tzpss1._.js +0 -3
  610. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1x_0sf4._.js +0 -3
  611. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1x_fy5x._.js +0 -3
  612. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1xx8_-m._.js +0 -3
  613. package/.next/server/chunks/[root-of-the-server]__05us508._.js +0 -3
  614. package/.next/server/chunks/[root-of-the-server]__09oyvwa._.js +0 -3
  615. package/.next/server/chunks/[root-of-the-server]__09oyvwa._.js.map +0 -1
  616. package/.next/server/chunks/[root-of-the-server]__0b6w_wb._.js +0 -3
  617. package/.next/server/chunks/[root-of-the-server]__0cxmrop._.js +0 -3
  618. package/.next/server/chunks/[root-of-the-server]__0cxmrop._.js.map +0 -1
  619. package/.next/server/chunks/[root-of-the-server]__0exzf-v._.js +0 -3
  620. package/.next/server/chunks/[root-of-the-server]__0exzf-v._.js.map +0 -1
  621. package/.next/server/chunks/[root-of-the-server]__0fn-a8c._.js +0 -126
  622. package/.next/server/chunks/[root-of-the-server]__0fn-a8c._.js.map +0 -1
  623. package/.next/server/chunks/[root-of-the-server]__0gnil0m._.js +0 -3
  624. package/.next/server/chunks/[root-of-the-server]__0gnil0m._.js.map +0 -1
  625. package/.next/server/chunks/[root-of-the-server]__0hg1r2b._.js +0 -3
  626. package/.next/server/chunks/[root-of-the-server]__0hk-9ll._.js +0 -3
  627. package/.next/server/chunks/[root-of-the-server]__0hk-9ll._.js.map +0 -1
  628. package/.next/server/chunks/[root-of-the-server]__0i1yba1._.js +0 -3
  629. package/.next/server/chunks/[root-of-the-server]__0i1yba1._.js.map +0 -1
  630. package/.next/server/chunks/[root-of-the-server]__0khz7sy._.js +0 -3
  631. package/.next/server/chunks/[root-of-the-server]__0khz7sy._.js.map +0 -1
  632. package/.next/server/chunks/[root-of-the-server]__0lf11mz._.js +0 -3
  633. package/.next/server/chunks/[root-of-the-server]__0lf11mz._.js.map +0 -1
  634. package/.next/server/chunks/[root-of-the-server]__0lix3ru._.js +0 -3
  635. package/.next/server/chunks/[root-of-the-server]__0lix3ru._.js.map +0 -1
  636. package/.next/server/chunks/[root-of-the-server]__0pvi3ku._.js +0 -126
  637. package/.next/server/chunks/[root-of-the-server]__0pvi3ku._.js.map +0 -1
  638. package/.next/server/chunks/[root-of-the-server]__0pz59qo._.js.map +0 -1
  639. package/.next/server/chunks/[root-of-the-server]__0rggulw._.js +0 -3
  640. package/.next/server/chunks/[root-of-the-server]__0s8v5i-._.js +0 -3
  641. package/.next/server/chunks/[root-of-the-server]__0s8v5i-._.js.map +0 -1
  642. package/.next/server/chunks/[root-of-the-server]__0usdydm._.js +0 -3
  643. package/.next/server/chunks/[root-of-the-server]__0usdydm._.js.map +0 -1
  644. package/.next/server/chunks/[root-of-the-server]__0vf-0gp._.js +0 -3
  645. package/.next/server/chunks/[root-of-the-server]__0xldguc._.js +0 -3
  646. package/.next/server/chunks/[root-of-the-server]__0xldguc._.js.map +0 -1
  647. package/.next/server/chunks/[root-of-the-server]__11nbc9e._.js +0 -3
  648. package/.next/server/chunks/[root-of-the-server]__11rp-qx._.js +0 -3
  649. package/.next/server/chunks/[root-of-the-server]__11rp-qx._.js.map +0 -1
  650. package/.next/server/chunks/[root-of-the-server]__15c5snv._.js +0 -3
  651. package/.next/server/chunks/[root-of-the-server]__15c5snv._.js.map +0 -1
  652. package/.next/server/chunks/[root-of-the-server]__18dt3sr._.js +0 -3
  653. package/.next/server/chunks/[root-of-the-server]__1a7d63a._.js +0 -3
  654. package/.next/server/chunks/[root-of-the-server]__1a7d63a._.js.map +0 -1
  655. package/.next/server/chunks/[root-of-the-server]__1e68zmx._.js +0 -3
  656. package/.next/server/chunks/[root-of-the-server]__1e68zmx._.js.map +0 -1
  657. package/.next/server/chunks/[root-of-the-server]__1ef-hw_._.js +0 -3
  658. package/.next/server/chunks/[root-of-the-server]__1ef-hw_._.js.map +0 -1
  659. package/.next/server/chunks/[root-of-the-server]__1jel07j._.js +0 -3
  660. package/.next/server/chunks/[root-of-the-server]__1jel07j._.js.map +0 -1
  661. package/.next/server/chunks/[root-of-the-server]__1la-6xe._.js +0 -3
  662. package/.next/server/chunks/[root-of-the-server]__1la-6xe._.js.map +0 -1
  663. package/.next/server/chunks/[root-of-the-server]__1p6-0l0._.js +0 -3
  664. package/.next/server/chunks/[root-of-the-server]__1pjwaan._.js +0 -3
  665. package/.next/server/chunks/[root-of-the-server]__1qcy2l0._.js +0 -3
  666. package/.next/server/chunks/[root-of-the-server]__1qcy2l0._.js.map +0 -1
  667. package/.next/server/chunks/[root-of-the-server]__1r_0uma._.js +0 -3
  668. package/.next/server/chunks/[root-of-the-server]__1skrybv._.js +0 -3
  669. package/.next/server/chunks/[root-of-the-server]__1vnine1._.js +0 -126
  670. package/.next/server/chunks/[root-of-the-server]__1vnine1._.js.map +0 -1
  671. package/.next/server/chunks/[root-of-the-server]__1wbho9e._.js +0 -3
  672. package/.next/server/chunks/[root-of-the-server]__1wcd2x9._.js +0 -3
  673. package/.next/server/chunks/[root-of-the-server]__1zhd93r._.js +0 -3
  674. package/.next/server/chunks/[root-of-the-server]__1zhd93r._.js.map +0 -1
  675. package/.next/server/chunks/ssr/_0kob2si._.js +0 -151
  676. package/.next/server/chunks/ssr/_0kob2si._.js.map +0 -1
  677. package/.next/server/chunks/ssr/_0me5_6x._.js +0 -3
  678. package/.next/server/chunks/ssr/_0me5_6x._.js.map +0 -1
  679. package/.next/server/chunks/ssr/_0pg63il._.js +0 -3
  680. package/.next/server/chunks/ssr/_0pg63il._.js.map +0 -1
  681. package/.next/server/chunks/ssr/_16b4hkt._.js +0 -3
  682. package/.next/server/chunks/ssr/_16b4hkt._.js.map +0 -1
  683. package/.next/server/chunks/ssr/_190c11r._.js +0 -3
  684. package/.next/server/chunks/ssr/_190c11r._.js.map +0 -1
  685. package/.next/server/chunks/ssr/_1cz8dnu._.js +0 -3
  686. package/.next/server/chunks/ssr/_1cz8dnu._.js.map +0 -1
  687. package/.next/server/chunks/ssr/_1feybpz._.js +0 -3
  688. package/.next/server/chunks/ssr/_1feybpz._.js.map +0 -1
  689. package/.next/server/chunks/ssr/_1r_t_wi._.js +0 -3
  690. package/.next/server/chunks/ssr/_1t8it2w._.js +0 -3
  691. package/.next/server/chunks/ssr/_1t8it2w._.js.map +0 -1
  692. package/.next/static/chunks/036fex6o238at.css +0 -1
  693. package/.next/static/chunks/03tzhv775qv5m.js +0 -1
  694. package/.next/static/chunks/05rjl54wa6y43.js +0 -1
  695. package/.next/static/chunks/1b9r_vdcewfu7.js +0 -1
  696. package/.next/static/chunks/1c459q7xpgq6r.js +0 -3
  697. package/.next/static/chunks/1c5ibgojv8jdi.js +0 -3
  698. package/.next/static/chunks/1c_8t2kecjnua.js +0 -1
  699. package/.next/static/chunks/1pmgcotwq-_yh.js +0 -1
  700. package/.next/static/chunks/1v63qs4kxxcfh.js +0 -1
  701. package/.next/static/chunks/2-0lpccy0f8bk.js +0 -2
  702. package/.next/static/chunks/263i_dcdizuvd.js +0 -1
  703. package/.next/static/chunks/2mf5us3y9wd9g.js +0 -1
  704. package/.next/static/chunks/36s2k2k_w-or8.js +0 -1
  705. package/.next/static/chunks/37u2gjz5dzhep.js +0 -1
  706. package/.next/static/chunks/3ctec-7mnm19m.js +0 -1
  707. package/.next/static/chunks/3rtr962aa09nh.js +0 -12
  708. package/.next/static/chunks/42c9smmpcu4re.js +0 -1
  709. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0-r4g2t._.js.map → 11mp_@anthropic-ai_sdk_0-smxh7._.js.map} +0 -0
  710. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01gyja3._.js.map → 11mp_@anthropic-ai_sdk_0-upxuo._.js.map} +0 -0
  711. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_02lx_j3._.js.map → 11mp_@anthropic-ai_sdk_00stvd0._.js.map} +0 -0
  712. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05iv23g._.js.map → 11mp_@anthropic-ai_sdk_05tlp4j._.js.map} +0 -0
  713. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_05oneea._.js.map → 11mp_@anthropic-ai_sdk_06i1jku._.js.map} +0 -0
  714. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_07fgg-l._.js.map → 11mp_@anthropic-ai_sdk_06pqlwo._.js.map} +0 -0
  715. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0_5gzfy._.js.map → 11mp_@anthropic-ai_sdk_06q_bm6._.js.map} +0 -0
  716. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0_jynr-._.js.map → 11mp_@anthropic-ai_sdk_098dref._.js.map} +0 -0
  717. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0aykesf._.js.map → 11mp_@anthropic-ai_sdk_09q07e_._.js.map} +0 -0
  718. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0br_1fc._.js.map → 11mp_@anthropic-ai_sdk_09r9wsn._.js.map} +0 -0
  719. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0cd5lu7._.js.map → 11mp_@anthropic-ai_sdk_0_rnqa6._.js.map} +0 -0
  720. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0ckxhy7._.js.map → 11mp_@anthropic-ai_sdk_0ch0mdl._.js.map} +0 -0
  721. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0e5qkuv._.js.map → 11mp_@anthropic-ai_sdk_0didq3m._.js.map} +0 -0
  722. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0el8pm6._.js.map → 11mp_@anthropic-ai_sdk_0dwtv_z._.js.map} +0 -0
  723. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0i4w8fv._.js.map → 11mp_@anthropic-ai_sdk_0e8sqia._.js.map} +0 -0
  724. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0i7ckik._.js.map → 11mp_@anthropic-ai_sdk_0gk-rze._.js.map} +0 -0
  725. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0l1p4c6._.js.map → 11mp_@anthropic-ai_sdk_0gywxp1._.js.map} +0 -0
  726. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0m-xqs_._.js.map → 11mp_@anthropic-ai_sdk_0h4l0yx._.js.map} +0 -0
  727. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0nltdmf._.js.map → 11mp_@anthropic-ai_sdk_0hjmy82._.js.map} +0 -0
  728. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0qxmzg8._.js.map → 11mp_@anthropic-ai_sdk_0jbmnx_._.js.map} +0 -0
  729. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0spr_aj._.js.map → 11mp_@anthropic-ai_sdk_0l7teck._.js.map} +0 -0
  730. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0th0pyh._.js.map → 11mp_@anthropic-ai_sdk_0ldf-lc._.js.map} +0 -0
  731. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0x21fif._.js.map → 11mp_@anthropic-ai_sdk_0oe9p6l._.js.map} +0 -0
  732. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1-7bj56._.js.map → 11mp_@anthropic-ai_sdk_0ppgi2h._.js.map} +0 -0
  733. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1-efoj1._.js.map → 11mp_@anthropic-ai_sdk_0ydb8nm._.js.map} +0 -0
  734. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_13vu693._.js.map → 11mp_@anthropic-ai_sdk_11hsr1e._.js.map} +0 -0
  735. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_13w62gi._.js.map → 11mp_@anthropic-ai_sdk_14pgcis._.js.map} +0 -0
  736. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1887ce1._.js.map → 11mp_@anthropic-ai_sdk_15_sqq8._.js.map} +0 -0
  737. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1_jq3yb._.js.map → 11mp_@anthropic-ai_sdk_16up-b0._.js.map} +0 -0
  738. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1agvp6h._.js.map → 11mp_@anthropic-ai_sdk_1_jm94w._.js.map} +0 -0
  739. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1b1-3vt._.js.map → 11mp_@anthropic-ai_sdk_1aswx0v._.js.map} +0 -0
  740. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ekldtb._.js.map → 11mp_@anthropic-ai_sdk_1bkea9c._.js.map} +0 -0
  741. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ezcndt._.js.map → 11mp_@anthropic-ai_sdk_1d41_6l._.js.map} +0 -0
  742. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1gr-orf._.js.map → 11mp_@anthropic-ai_sdk_1d959rx._.js.map} +0 -0
  743. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1hf-884._.js.map → 11mp_@anthropic-ai_sdk_1eughke._.js.map} +0 -0
  744. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ndwnmb._.js.map → 11mp_@anthropic-ai_sdk_1ev29eb._.js.map} +0 -0
  745. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1rdesfd._.js.map → 11mp_@anthropic-ai_sdk_1faxy2m._.js.map} +0 -0
  746. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1s8h60-._.js.map → 11mp_@anthropic-ai_sdk_1lginb1._.js.map} +0 -0
  747. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1tgk9wk._.js.map → 11mp_@anthropic-ai_sdk_1pg6fky._.js.map} +0 -0
  748. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1uugb45._.js.map → 11mp_@anthropic-ai_sdk_1qfho5e._.js.map} +0 -0
  749. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1vcxmui._.js.map → 11mp_@anthropic-ai_sdk_1r9e6jv._.js.map} +0 -0
  750. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1x63qpm._.js.map → 11mp_@anthropic-ai_sdk_1tjlpeq._.js.map} +0 -0
  751. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1y5oj_h._.js.map → 11mp_@anthropic-ai_sdk_1wcdj4f._.js.map} +0 -0
  752. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1z0q4jj._.js.map → 11mp_@anthropic-ai_sdk_1x25dnb._.js.map} +0 -0
  753. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_20j6dn7._.js.map → 11mp_@anthropic-ai_sdk_1ywjkuh._.js.map} +0 -0
  754. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_00nr0dy._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_07rnikd._.js.map} +0 -0
  755. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_06kgcr0._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0cxqkzo._.js.map} +0 -0
  756. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_07kod-g._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0iemvsj._.js.map} +0 -0
  757. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0_va-1q._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0losy1p._.js.map} +0 -0
  758. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0dr79hc._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0q2-o56._.js.map} +0 -0
  759. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0ew4_uw._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0v9tonm._.js.map} +0 -0
  760. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0iy714m._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0ve_28v._.js.map} +0 -0
  761. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0n6aq49._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0vta7f6._.js.map} +0 -0
  762. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0ncvuil._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0xme80s._.js.map} +0 -0
  763. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0vilstf._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_12tnhho._.js.map} +0 -0
  764. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0ybdfbv._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_14-nnf3._.js.map} +0 -0
  765. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0z31-c0._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_14e0xcw._.js.map} +0 -0
  766. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0zu51ny._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1cbywiw._.js.map} +0 -0
  767. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_13-fsm5._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1d4fc7y._.js.map} +0 -0
  768. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_13lk7wf._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1e89sld._.js.map} +0 -0
  769. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1ao3e3l._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1emt011._.js.map} +0 -0
  770. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1ck6z1z._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1jgaffx._.js.map} +0 -0
  771. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1dm3so9._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1m9p_w8._.js.map} +0 -0
  772. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1jxtz_6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1mtv1gy._.js.map} +0 -0
  773. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1pdl5qg._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1plmrbl._.js.map} +0 -0
  774. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1tzpss1._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1toqkb5._.js.map} +0 -0
  775. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1x_0sf4._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1yc8ml3._.js.map} +0 -0
  776. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1x_fy5x._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1ycnogk._.js.map} +0 -0
  777. /package/.next/server/chunks/{[root-of-the-server]__0rikmqn._.js.map → [root-of-the-server]__0adl8c2._.js.map} +0 -0
  778. /package/.next/server/chunks/{[root-of-the-server]__08v3p50._.js.map → [root-of-the-server]__0r_831n._.js.map} +0 -0
  779. /package/.next/server/chunks/{[root-of-the-server]__0wc_gnr._.js.map → [root-of-the-server]__0tzsbyx._.js.map} +0 -0
  780. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1xx8_-m._.js.map → [root-of-the-server]__1_q8upn._.js.map} +0 -0
  781. /package/.next/server/chunks/{[root-of-the-server]__1yh-4vk._.js.map → [root-of-the-server]__1hz94ca._.js.map} +0 -0
  782. /package/.next/server/chunks/{[root-of-the-server]__06ndlro._.js.map → [root-of-the-server]__1pf07ha._.js.map} +0 -0
  783. /package/.next/server/chunks/{[root-of-the-server]__0zy73pu._.js.map → _next-internal_server_app_api_memory_restore_route_actions_0679kmo.js.map} +0 -0
  784. /package/.next/server/chunks/{ssr/0_nd_mermaid_dist_mermaid_core_mjs_0y_edkq._.js.map → _next-internal_server_app_api_memory_versions_route_actions_13mix75.js.map} +0 -0
  785. /package/.next/server/chunks/ssr/{1u84_katex_dist_katex_mjs_0yg8zto._.js.map → 0_nd_mermaid_dist_mermaid_core_mjs_1trh599._.js.map} +0 -0
  786. /package/.next/server/chunks/ssr/{_1r_t_wi._.js.map → 1u84_katex_dist_katex_mjs_0wukkxe._.js.map} +0 -0
  787. /package/.next/server/chunks/ssr/{[root-of-the-server]__08z0szh._.js.map → [root-of-the-server]__0p_ieww._.js.map} +0 -0
  788. /package/.next/server/chunks/ssr/{[root-of-the-server]__1wdwnnp._.js.map → [root-of-the-server]__1ecvjg8._.js.map} +0 -0
  789. /package/.next/server/chunks/ssr/{node_modules__pnpm_00f4yhs._.js.map → _next-internal_server_app_(app)_getting-started_page_actions_18jod7i.js.map} +0 -0
  790. /package/.next/server/chunks/ssr/{node_modules__pnpm_0j_-le7._.js.map → _next-internal_server_app_welcome_page_actions_1unjea7.js.map} +0 -0
  791. /package/.next/server/chunks/ssr/{node_modules__pnpm_03mp7qw._.js.map → node_modules__pnpm_0-6sq9f._.js.map} +0 -0
  792. /package/.next/server/chunks/ssr/{node_modules__pnpm_0jampur._.js.map → node_modules__pnpm_0-vta96._.js.map} +0 -0
  793. /package/.next/server/chunks/ssr/{node_modules__pnpm_0zz55xq._.js.map → node_modules__pnpm_04qn321._.js.map} +0 -0
  794. /package/.next/server/chunks/ssr/{node_modules__pnpm_0tn5pg3._.js.map → node_modules__pnpm_06r-oci._.js.map} +0 -0
  795. /package/.next/server/chunks/ssr/{node_modules__pnpm_0iu4132._.js.map → node_modules__pnpm_0fe8aya._.js.map} +0 -0
  796. /package/.next/server/chunks/ssr/{node_modules__pnpm_0oyo3yo._.js.map → node_modules__pnpm_0hpufx1._.js.map} +0 -0
  797. /package/.next/server/chunks/ssr/{node_modules__pnpm_0x5wj-4._.js.map → node_modules__pnpm_0kv8p99._.js.map} +0 -0
  798. /package/.next/server/chunks/ssr/{node_modules__pnpm_06_8fr8._.js.map → node_modules__pnpm_0m-_au1._.js.map} +0 -0
  799. /package/.next/server/chunks/ssr/{node_modules__pnpm_1zme4rg._.js.map → node_modules__pnpm_0mrjd3b._.js.map} +0 -0
  800. /package/.next/server/chunks/ssr/{node_modules__pnpm_0mqeoh-._.js.map → node_modules__pnpm_0p2ufg5._.js.map} +0 -0
  801. /package/.next/server/chunks/ssr/{node_modules__pnpm_03mpmzx._.js.map → node_modules__pnpm_0r2omyh._.js.map} +0 -0
  802. /package/.next/server/chunks/ssr/{node_modules__pnpm_0_e05ka._.js.map → node_modules__pnpm_0uh9zwf._.js.map} +0 -0
  803. /package/.next/server/chunks/ssr/{node_modules__pnpm_035haet._.js.map → node_modules__pnpm_0ujugl_._.js.map} +0 -0
  804. /package/.next/server/chunks/ssr/{node_modules__pnpm_0lkvbt-._.js.map → node_modules__pnpm_0v-_iaj._.js.map} +0 -0
  805. /package/.next/server/chunks/ssr/{node_modules__pnpm_0rq9x9q._.js.map → node_modules__pnpm_0xin4nu._.js.map} +0 -0
  806. /package/.next/server/chunks/ssr/{node_modules__pnpm_139-v1i._.js.map → node_modules__pnpm_1-zfovp._.js.map} +0 -0
  807. /package/.next/server/chunks/ssr/{node_modules__pnpm_1i_chik._.js.map → node_modules__pnpm_11p7w0z._.js.map} +0 -0
  808. /package/.next/server/chunks/ssr/{node_modules__pnpm_1jgju12._.js.map → node_modules__pnpm_16l16l0._.js.map} +0 -0
  809. /package/.next/server/chunks/ssr/{node_modules__pnpm_1n9oeu0._.js.map → node_modules__pnpm_16vl5yb._.js.map} +0 -0
  810. /package/.next/server/chunks/ssr/{node_modules__pnpm_1ydeqw6._.js.map → node_modules__pnpm_1alnvos._.js.map} +0 -0
  811. /package/.next/server/chunks/ssr/{node_modules__pnpm_03an60e._.js.map → node_modules__pnpm_1e_74v6._.js.map} +0 -0
  812. /package/.next/server/chunks/ssr/{node_modules__pnpm_2045l51._.js.map → node_modules__pnpm_1kvkjrs._.js.map} +0 -0
  813. /package/.next/server/chunks/ssr/{node_modules__pnpm_1ws3ez9._.js.map → node_modules__pnpm_1uly489._.js.map} +0 -0
  814. /package/.next/server/chunks/ssr/{node_modules__pnpm_1zum4yd._.js.map → node_modules__pnpm_1xntybk._.js.map} +0 -0
  815. /package/.next/server/chunks/ssr/{node_modules__pnpm_09nd7ia._.js.map → node_modules__pnpm_20g30gl._.js.map} +0 -0
  816. /package/.next/static/{5hNes2Kijr5IvUPPw-ez9 → BQD2S1kA-_gIYFyMKyJ2F}/_buildManifest.js +0 -0
  817. /package/.next/static/{5hNes2Kijr5IvUPPw-ez9 → BQD2S1kA-_gIYFyMKyJ2F}/_clientMiddlewareManifest.js +0 -0
  818. /package/.next/static/{5hNes2Kijr5IvUPPw-ez9 → BQD2S1kA-_gIYFyMKyJ2F}/_ssgManifest.js +0 -0
@@ -0,0 +1,261 @@
1
+ module.exports=[233405,(e,t,i)=>{t.exports=e.x("child_process",()=>require("child_process"))},522734,(e,t,i)=>{t.exports=e.x("fs",()=>require("fs"))},924868,(e,t,i)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},687769,(e,t,i)=>{t.exports=e.x("node:events",()=>require("node:events"))},899871,(e,t,i)=>{t.exports=e.x("node:string_decoder",()=>require("node:string_decoder"))},446786,(e,t,i)=>{t.exports=e.x("os",()=>require("os"))},857764,(e,t,i)=>{t.exports=e.x("node:url",()=>require("node:url"))},845285,471448,388985,731946,975283,31451,5704,531208,840980,806723,845122,404466,483284,e=>{"use strict";var t=e.i(857764),i=e.i(750227),r=e.i(522734),n=e.i(902157),s=e.i(912714),a=e.i(687769),o=e.i(81111),l=e.i(899871),u=(e,t,i)=>{let r=e instanceof RegExp?d(e,i):e,n=t instanceof RegExp?d(t,i):t,s=null!==r&&null!=n&&c(r,n,i);return s&&{start:s[0],end:s[1],pre:i.slice(0,s[0]),body:i.slice(s[0]+r.length,s[1]),post:i.slice(s[1]+n.length)}},d=(e,t)=>{let i=t.match(e);return i?i[0]:null},c=(e,t,i)=>{let r,n,s,a,o,l=i.indexOf(e),u=i.indexOf(t,l+1),d=l;if(l>=0&&u>0){if(e===t)return[l,u];for(r=[],s=i.length;d>=0&&!o;){if(d===l)r.push(d),l=i.indexOf(e,d+1);else if(1===r.length){let e=r.pop();void 0!==e&&(o=[e,u])}else void 0!==(n=r.pop())&&n<s&&(s=n,a=u),u=i.indexOf(t,d+1);d=l<u&&l>=0?l:u}r.length&&void 0!==a&&(o=[s,a])}return o},h="\0SLASH"+Math.random()+"\0",f="\0OPEN"+Math.random()+"\0",p="\0CLOSE"+Math.random()+"\0",m="\0COMMA"+Math.random()+"\0",g="\0PERIOD"+Math.random()+"\0",w=RegExp(h,"g"),y=RegExp(f,"g"),b=RegExp(p,"g"),v=RegExp(m,"g"),E=RegExp(g,"g"),S=/\\\\/g,_=/\\{/g,k=/\\}/g,x=/\\,/g,$=/\\./g;function R(e){return isNaN(e)?e.charCodeAt(0):parseInt(e,10)}function O(e){return e.replace(w,"\\").replace(y,"{").replace(b,"}").replace(v,",").replace(E,".")}function j(e){return"{"+e+"}"}function A(e){return/^-?0\d/.test(e)}function P(e,t){return e<=t}function T(e,t){return e>=t}var C=e=>{if("string"!=typeof e)throw TypeError("invalid pattern");if(e.length>65536)throw TypeError("pattern is too long")},D={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},N=e=>e.replace(/[[\]\\-]/g,"\\$&"),I=(e,t)=>{if("["!==e.charAt(t))throw Error("not in a brace expression");let i=[],r=[],n=t+1,s=!1,a=!1,o=!1,l=!1,u=t,d="";e:for(;n<e.length;){let c=e.charAt(n);if(("!"===c||"^"===c)&&n===t+1){l=!0,n++;continue}if("]"===c&&s&&!o){u=n+1;break}if(s=!0,"\\"===c&&!o){o=!0,n++;continue}if("["===c&&!o){for(let[s,[o,l,u]]of Object.entries(D))if(e.startsWith(s,n)){if(d)return["$.",!1,e.length-t,!0];n+=s.length,u?r.push(o):i.push(o),a=a||l;continue e}}if(o=!1,d){c>d?i.push(N(d)+"-"+N(c)):c===d&&i.push(N(c)),d="",n++;continue}if(e.startsWith("-]",n+1)){i.push(N(c+"-")),n+=2;continue}if(e.startsWith("-",n+1)){d=c,n+=2;continue}i.push(N(c)),n++}if(u<n)return["",!1,0,!1];if(!i.length&&!r.length)return["$.",!1,e.length-t,!0];if(0===r.length&&1===i.length&&/^\\?.$/.test(i[0])&&!l)return[(2===i[0].length?i[0].slice(-1):i[0]).replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),!1,u-t,!1];let c="["+(l?"^":"")+i.join("")+"]",h="["+(l?"":"^")+r.join("")+"]";return[i.length&&r.length?"("+c+"|"+h+")":i.length?c:h,a,u-t,!0]},M=(e,{windowsPathsNoEscape:t=!1,magicalBraces:i=!0}={})=>i?t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):t?e.replace(/\[([^\/\\{}])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1"),L=new Set(["!","?","+","*","@"]),F=e=>L.has(e),W="(?!\\.)",U=new Set(["[","."]),z=new Set(["..","."]),B=new Set("().*{}+?[]^$\\!"),G=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),X="[^/]",H=X+"*?",q=X+"+?",Y=class e{type;#e;#t;#i=!1;#r=[];#n;#s;#a;#o=!1;#l;#u;#d=!1;constructor(e,t,i={}){this.type=e,e&&(this.#t=!0),this.#n=t,this.#e=this.#n?this.#n.#e:this,this.#l=this.#e===this?i:this.#e.#l,this.#a=this.#e===this?[]:this.#e.#a,"!"!==e||this.#e.#o||this.#a.push(this),this.#s=this.#n?this.#n.#r.length:0}get hasMagic(){if(void 0!==this.#t)return this.#t;for(let e of this.#r)if("string"!=typeof e&&(e.type||e.hasMagic))return this.#t=!0;return this.#t}toString(){return void 0!==this.#u?this.#u:this.type?this.#u=this.type+"("+this.#r.map(e=>String(e)).join("|")+")":this.#u=this.#r.map(e=>String(e)).join("")}#c(){let e;if(this!==this.#e)throw Error("should only call on root");if(this.#o)return this;for(this.toString(),this.#o=!0;e=this.#a.pop();){if("!"!==e.type)continue;let t=e,i=t.#n;for(;i;){for(let r=t.#s+1;!i.type&&r<i.#r.length;r++)for(let t of e.#r){if("string"==typeof t)throw Error("string part in extglob AST??");t.copyIn(i.#r[r])}i=(t=i).#n}}return this}push(...t){for(let i of t)if(""!==i){if("string"!=typeof i&&!(i instanceof e&&i.#n===this))throw Error("invalid part: "+i);this.#r.push(i)}}toJSON(){let e=null===this.type?this.#r.slice().map(e=>"string"==typeof e?e:e.toJSON()):[this.type,...this.#r.map(e=>e.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#o&&this.#n?.type==="!")&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#n?.isStart())return!1;if(0===this.#s)return!0;let t=this.#n;for(let i=0;i<this.#s;i++){let r=t.#r[i];if(!(r instanceof e&&"!"===r.type))return!1}return!0}isEnd(){if(this.#e===this||this.#n?.type==="!")return!0;if(!this.#n?.isEnd())return!1;if(!this.type)return this.#n?.isEnd();let e=this.#n?this.#n.#r.length:0;return this.#s===e-1}copyIn(e){"string"==typeof e?this.push(e):this.push(e.clone(this))}clone(t){let i=new e(this.type,t);for(let e of this.#r)i.copyIn(e);return i}static #h(t,i,r,n){let s=!1,a=!1,o=-1,l=!1;if(null===i.type){let u=r,d="";for(;u<t.length;){let r=t.charAt(u++);if(s||"\\"===r){s=!s,d+=r;continue}if(a){u===o+1?("^"===r||"!"===r)&&(l=!0):"]"!==r||u===o+2&&l||(a=!1),d+=r;continue}if("["===r){a=!0,o=u,l=!1,d+=r;continue}if(!n.noext&&F(r)&&"("===t.charAt(u)){i.push(d),d="";let s=new e(r,i);u=e.#h(t,s,u,n),i.push(s);continue}d+=r}return i.push(d),u}let u=r+1,d=new e(null,i),c=[],h="";for(;u<t.length;){let r=t.charAt(u++);if(s||"\\"===r){s=!s,h+=r;continue}if(a){u===o+1?("^"===r||"!"===r)&&(l=!0):"]"!==r||u===o+2&&l||(a=!1),h+=r;continue}if("["===r){a=!0,o=u,l=!1,h+=r;continue}if(F(r)&&"("===t.charAt(u)){d.push(h),h="";let i=new e(r,d);d.push(i),u=e.#h(t,i,u,n);continue}if("|"===r){d.push(h),h="",c.push(d),d=new e(null,i);continue}if(")"===r)return""===h&&0===i.#r.length&&(i.#d=!0),d.push(h),h="",i.push(...c,d),u;h+=r}return i.type=null,i.#t=void 0,i.#r=[t.substring(r-1)],u}static fromGlob(t,i={}){let r=new e(null,void 0,i);return e.#h(t,r,0,i),r}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[t,i,r,n]=this.toRegExpSource();return r||this.#t||this.#l.nocase&&!this.#l.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()?Object.assign(RegExp(`^${t}$`,(this.#l.nocase?"i":"")+(n?"u":"")),{_src:t,_glob:e}):i}get options(){return this.#l}toRegExpSource(t){let i=t??!!this.#l.dot;if(this.#e===this&&this.#c(),!this.type){let r=this.isStart()&&this.isEnd()&&!this.#r.some(e=>"string"!=typeof e),n=this.#r.map(i=>{let[n,s,a,o]="string"==typeof i?e.#f(i,this.#t,r):i.toRegExpSource(t);return this.#t=this.#t||a,this.#i=this.#i||o,n}).join(""),s="";if(this.isStart()&&"string"==typeof this.#r[0]&&!(1===this.#r.length&&z.has(this.#r[0]))){let e=i&&U.has(n.charAt(0))||n.startsWith("\\.")&&U.has(n.charAt(2))||n.startsWith("\\.\\.")&&U.has(n.charAt(4)),r=!i&&!t&&U.has(n.charAt(0));s=e?"(?!(?:^|/)\\.\\.?(?:$|/))":r?W:""}let a="";return this.isEnd()&&this.#e.#o&&this.#n?.type==="!"&&(a="(?:$|\\/)"),[s+n+a,M(n),this.#t=!!this.#t,this.#i]}let r="*"===this.type||"+"===this.type,n="!"===this.type?"(?:(?!(?:":"(?:",s=this.#p(i);if(this.isStart()&&this.isEnd()&&!s&&"!"!==this.type){let e=this.toString();return this.#r=[e],this.type=null,this.#t=void 0,[e,M(this.toString()),!1,!1]}let a=!r||t||i||!W?"":this.#p(!0);a===s&&(a=""),a&&(s=`(?:${s})(?:${a})*?`);return["!"===this.type&&this.#d?(this.isStart()&&!i?W:"")+q:n+s+("!"===this.type?"))"+(!this.isStart()||i||t?"":W)+H+")":"@"===this.type?")":"?"===this.type?")?":"+"===this.type&&a?")":"*"===this.type&&a?")?":`)${this.type}`),M(s),this.#t=!!this.#t,this.#i]}#p(e){return this.#r.map(t=>{if("string"==typeof t)throw Error("string type in extglob ast??");let[i,r,n,s]=t.toRegExpSource(e);return this.#i=this.#i||s,i}).filter(e=>!(this.isStart()&&this.isEnd())||!!e).join("|")}static #f(e,t,i=!1){let r=!1,n="",s=!1,a=!1;for(let o=0;o<e.length;o++){let l=e.charAt(o);if(r){r=!1,n+=(B.has(l)?"\\":"")+l;continue}if("*"===l){if(a)continue;a=!0,n+=i&&/^[*]+$/.test(e)?q:H,t=!0;continue}if(a=!1,"\\"===l){o===e.length-1?n+="\\\\":r=!0;continue}if("["===l){let[i,r,a,l]=I(e,o);if(a){n+=i,s=s||r,o+=a-1,t=t||l;continue}}if("?"===l){n+=X,t=!0;continue}n+=G(l)}return[n,M(e),!!t,s]}},V=(e,{windowsPathsNoEscape:t=!1,magicalBraces:i=!1}={})=>i?t?e.replace(/[?*()[\]{}]/g,"[$&]"):e.replace(/[?*()[\]\\{}]/g,"\\$&"):t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&"),J=(e,t,i={})=>(C(t),(!!i.nocomment||"#"!==t.charAt(0))&&new ep(t,i).match(e)),Z=/^\*+([^+@!?\*\[\(]*)$/,K=/^\*+\.\*+$/,Q=e=>!e.startsWith(".")&&e.includes("."),ee=e=>"."!==e&&".."!==e&&e.includes("."),et=/^\.\*+$/,ei=e=>"."!==e&&".."!==e&&e.startsWith("."),er=/^\*+$/,en=e=>0!==e.length&&!e.startsWith("."),es=e=>0!==e.length&&"."!==e&&".."!==e,ea=/^\?+([^+@!?\*\[\(]*)?$/,eo=([e])=>{let t=e.length;return e=>e.length===t&&!e.startsWith(".")},el=([e])=>{let t=e.length;return e=>e.length===t&&"."!==e&&".."!==e},eu="object"==typeof process&&process?"object"==typeof process.env&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix";J.sep="win32"===eu?"\\":"/";var ed=Symbol("globstar **");J.GLOBSTAR=ed;J.filter=(e,t={})=>i=>J(i,e,t);var ec=(e,t={})=>Object.assign({},e,t);J.defaults=e=>{if(!e||"object"!=typeof e||!Object.keys(e).length)return J;let t=J;return Object.assign((i,r,n={})=>t(i,r,ec(e,n)),{Minimatch:class extends t.Minimatch{constructor(t,i={}){super(t,ec(e,i))}static defaults(i){return t.defaults(ec(e,i)).Minimatch}},AST:class extends t.AST{constructor(t,i,r={}){super(t,i,ec(e,r))}static fromGlob(i,r={}){return t.AST.fromGlob(i,ec(e,r))}},unescape:(i,r={})=>t.unescape(i,ec(e,r)),escape:(i,r={})=>t.escape(i,ec(e,r)),filter:(i,r={})=>t.filter(i,ec(e,r)),defaults:i=>t.defaults(ec(e,i)),makeRe:(i,r={})=>t.makeRe(i,ec(e,r)),braceExpand:(i,r={})=>t.braceExpand(i,ec(e,r)),match:(i,r,n={})=>t.match(i,r,ec(e,n)),sep:t.sep,GLOBSTAR:ed})};var eh=(e,t={})=>(C(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:function(e,t={}){if(!e)return[];let{max:i=1e5}=t;return"{}"===e.slice(0,2)&&(e="\\{\\}"+e.slice(2)),(function e(t,i,r){let n=[],s=u("{","}",t);if(!s)return[t];let a=s.pre,o=s.post.length?e(s.post,i,!1):[""];if(/\$$/.test(s.pre))for(let e=0;e<o.length&&e<i;e++){let t=a+"{"+s.body+"}"+o[e];n.push(t)}else{let l,d,c=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(s.body),h=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(s.body),f=c||h,m=s.body.indexOf(",")>=0;if(!f&&!m)return s.post.match(/,(?!,).*\}/)?e(t=s.pre+"{"+s.body+p+s.post,i,!0):[t];if(f)l=s.body.split(/\.\./);else if(1===(l=function e(t){if(!t)return[""];let i=[],r=u("{","}",t);if(!r)return t.split(",");let{pre:n,body:s,post:a}=r,o=n.split(",");o[o.length-1]+="{"+s+"}";let l=e(a);return a.length&&(o[o.length-1]+=l.shift(),o.push.apply(o,l)),i.push.apply(i,o),i}(s.body)).length&&void 0!==l[0]&&1===(l=e(l[0],i,!1).map(j)).length)return o.map(e=>s.pre+l[0]+e);if(f&&void 0!==l[0]&&void 0!==l[1]){let e=R(l[0]),t=R(l[1]),i=Math.max(l[0].length,l[1].length),r=3===l.length&&void 0!==l[2]?Math.abs(R(l[2])):1,n=P;t<e&&(r*=-1,n=T);let s=l.some(A);d=[];for(let a=e;n(a,t);a+=r){let e;if(h)"\\"===(e=String.fromCharCode(a))&&(e="");else if(e=String(a),s){let t=i-e.length;if(t>0){let i=Array(t+1).join("0");e=a<0?"-"+i+e.slice(1):i+e}}d.push(e)}}else{d=[];for(let t=0;t<l.length;t++)d.push.apply(d,e(l[t],i,!1))}for(let e=0;e<d.length;e++)for(let t=0;t<o.length&&n.length<i;t++){let i=a+d[e]+o[t];(!r||f||i)&&n.push(i)}}return n})(e.replace(S,h).replace(_,f).replace(k,p).replace(x,m).replace($,g),i,!0).map(O)}(e,{max:t.braceExpandMax}));J.braceExpand=eh,J.makeRe=(e,t={})=>new ep(e,t).makeRe(),J.match=(e,t,i={})=>{let r=new ep(t,i);return e=e.filter(e=>r.match(e)),r.options.nonull&&!e.length&&e.push(t),e};var ef=/[?*]|[+@!]\(.*?\)|\[|\]/,ep=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(e,t={}){C(e),t=t||{},this.options=t,this.pattern=e,this.platform=t.platform||eu,this.isWindows="win32"===this.platform,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||!1===t.allowWindowsEscape,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!t.nonegate,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=void 0!==t.windowsNoMagicRoot?t.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let t of e)if("string"!=typeof t)return!0;return!1}debug(){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&"#"===e.charAt(0)){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,this.globSet);let i=this.globSet.map(e=>this.slashSplit(e));this.globParts=this.preprocess(i),this.debug(this.pattern,this.globParts);let r=this.globParts.map((e,t,i)=>{if(this.isWindows&&this.windowsNoMagicRoot){let t=""===e[0]&&""===e[1]&&("?"===e[2]||!ef.test(e[2]))&&!ef.test(e[3]),i=/^[a-z]:/i.test(e[0]);if(t)return[...e.slice(0,4),...e.slice(4).map(e=>this.parse(e))];if(i)return[e[0],...e.slice(1).map(e=>this.parse(e))]}return e.map(e=>this.parse(e))});if(this.debug(this.pattern,r),this.set=r.filter(e=>-1===e.indexOf(!1)),this.isWindows)for(let e=0;e<this.set.length;e++){let t=this.set[e];""===t[0]&&""===t[1]&&"?"===this.globParts[e][2]&&"string"==typeof t[3]&&/^[a-z]:$/i.test(t[3])&&(t[2]="?")}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let t=0;t<e.length;t++)for(let i=0;i<e[t].length;i++)"**"===e[t][i]&&(e[t][i]="*");let{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):e=t>=1?this.levelOneOptimize(e):this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(e=>{let t=-1;for(;-1!==(t=e.indexOf("**",t+1));){let i=t;for(;"**"===e[i+1];)i++;i!==t&&e.splice(t,i-t)}return e})}levelOneOptimize(e){return e.map(e=>0===(e=e.reduce((e,t)=>{let i=e[e.length-1];return"**"===t&&"**"===i||(".."===t&&i&&".."!==i&&"."!==i&&"**"!==i?e.pop():e.push(t)),e},[])).length?[""]:e)}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=!1;do{if(t=!1,!this.preserveMultipleSlashes){for(let i=1;i<e.length-1;i++){let r=e[i];1===i&&""===r&&""===e[0]||("."===r||""===r)&&(t=!0,e.splice(i,1),i--)}"."===e[0]&&2===e.length&&("."===e[1]||""===e[1])&&(t=!0,e.pop())}let i=0;for(;-1!==(i=e.indexOf("..",i+1));){let r=e[i-1];r&&"."!==r&&".."!==r&&"**"!==r&&(t=!0,e.splice(i-1,2),i-=2)}}while(t)return 0===e.length?[""]:e}firstPhasePreProcess(e){let t=!1;do for(let i of(t=!1,e)){let r=-1;for(;-1!==(r=i.indexOf("**",r+1));){let n=r;for(;"**"===i[n+1];)n++;n>r&&i.splice(r+1,n-r);let s=i[r+1],a=i[r+2],o=i[r+3];if(".."!==s||!a||"."===a||".."===a||!o||"."===o||".."===o)continue;t=!0,i.splice(r,1);let l=i.slice(0);l[r]="**",e.push(l),r--}if(!this.preserveMultipleSlashes){for(let e=1;e<i.length-1;e++){let r=i[e];1===e&&""===r&&""===i[0]||("."===r||""===r)&&(t=!0,i.splice(e,1),e--)}"."===i[0]&&2===i.length&&("."===i[1]||""===i[1])&&(t=!0,i.pop())}let n=0;for(;-1!==(n=i.indexOf("..",n+1));){let e=i[n-1];if(e&&"."!==e&&".."!==e&&"**"!==e){t=!0;let e=1===n&&"**"===i[n+1]?["."]:[];i.splice(n-1,2,...e),0===i.length&&i.push(""),n-=2}}}while(t)return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let i=t+1;i<e.length;i++){let r=this.partsMatch(e[t],e[i],!this.preserveMultipleSlashes);if(r){e[t]=[],e[i]=r;break}}return e.filter(e=>e.length)}partsMatch(e,t,i=!1){let r=0,n=0,s=[],a="";for(;r<e.length&&n<t.length;)if(e[r]===t[n])s.push("b"===a?t[n]:e[r]),r++,n++;else if(i&&"**"===e[r]&&t[n]===e[r+1])s.push(e[r]),r++;else if(i&&"**"===t[n]&&e[r]===t[n+1])s.push(t[n]),n++;else if("*"===e[r]&&t[n]&&(this.options.dot||!t[n].startsWith("."))&&"**"!==t[n]){if("b"===a)return!1;a="a",s.push(e[r]),r++,n++}else{if("*"!==t[n]||!e[r]||!this.options.dot&&e[r].startsWith(".")||"**"===e[r]||"a"===a)return!1;a="b",s.push(t[n]),r++,n++}return e.length===t.length&&s}parseNegate(){if(this.nonegate)return;let e=this.pattern,t=!1,i=0;for(let r=0;r<e.length&&"!"===e.charAt(r);r++)t=!t,i++;i&&(this.pattern=e.slice(i)),this.negate=t}matchOne(e,t,i=!1){let r=this.options;if(this.isWindows){let i="string"==typeof e[0]&&/^[a-z]:$/i.test(e[0]),r=!i&&""===e[0]&&""===e[1]&&"?"===e[2]&&/^[a-z]:$/i.test(e[3]),n="string"==typeof t[0]&&/^[a-z]:$/i.test(t[0]),s=!n&&""===t[0]&&""===t[1]&&"?"===t[2]&&"string"==typeof t[3]&&/^[a-z]:$/i.test(t[3]),a=r?3:i?0:void 0,o=s?3:n?0:void 0;if("number"==typeof a&&"number"==typeof o){let[i,r]=[e[a],t[o]];i.toLowerCase()===r.toLowerCase()&&(t[o]=i,o>a?t=t.slice(o):a>o&&(e=e.slice(a)))}}let{optimizationLevel:n=1}=this.options;n>=2&&(e=this.levelTwoFileOptimize(e)),this.debug("matchOne",this,{file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var s=0,a=0,o=e.length,l=t.length;s<o&&a<l;s++,a++){let n;this.debug("matchOne loop");var u=t[a],d=e[s];if(this.debug(t,u,d),!1===u)return!1;if(u===ed){this.debug("GLOBSTAR",[t,u,d]);var c=s,h=a+1;if(h===l){for(this.debug("** at the end");s<o;s++)if("."===e[s]||".."===e[s]||!r.dot&&"."===e[s].charAt(0))return!1;return!0}for(;c<o;){var f=e[c];if(this.debug(`
2
+ globstar while`,e,c,t,h,f),this.matchOne(e.slice(c),t.slice(h),i))return this.debug("globstar found match!",c,o,f),!0;if("."===f||".."===f||!r.dot&&"."===f.charAt(0)){this.debug("dot detected!",e,c,t,h);break}this.debug("globstar swallow a segment, and continue"),c++}return!!(i&&(this.debug(`
3
+ >>> no match, partial?`,e,c,t,h),c===o))}if("string"==typeof u?(n=d===u,this.debug("string match",u,d,n)):(n=u.test(d),this.debug("pattern match",u,d,n)),!n)return!1}if(s===o&&a===l)return!0;if(s===o)return i;if(a===l)return s===o-1&&""===e[s];throw Error("wtf?")}braceExpand(){return eh(this.pattern,this.options)}parse(e){C(e);let t=this.options;if("**"===e)return ed;if(""===e)return"";let i,r=null;(i=e.match(er))?r=t.dot?es:en:(i=e.match(Z))?r=(t.nocase?t.dot?e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)):e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)):t.dot?e=>t=>t.endsWith(e):e=>t=>!t.startsWith(".")&&t.endsWith(e))(i[1]):(i=e.match(ea))?r=(t.nocase?t.dot?([e,t=""])=>{let i=el([e]);return t?(t=t.toLowerCase(),e=>i(e)&&e.toLowerCase().endsWith(t)):i}:([e,t=""])=>{let i=eo([e]);return t?(t=t.toLowerCase(),e=>i(e)&&e.toLowerCase().endsWith(t)):i}:t.dot?([e,t=""])=>{let i=el([e]);return t?e=>i(e)&&e.endsWith(t):i}:([e,t=""])=>{let i=eo([e]);return t?e=>i(e)&&e.endsWith(t):i})(i):(i=e.match(K))?r=t.dot?ee:Q:(i=e.match(et))&&(r=ei);let n=Y.fromGlob(e,this.options).toMMPattern();return r&&"object"==typeof n&&Reflect.defineProperty(n,"test",{value:r}),n}makeRe(){if(this.regexp||!1===this.regexp)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,i=t.noglobstar?"[^/]*?":t.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",r=new Set(t.nocase?["i"]:[]),n=e.map(e=>{let t=e.map(e=>{if(e instanceof RegExp)for(let t of e.flags.split(""))r.add(t);return"string"==typeof e?e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):e===ed?ed:e._src});t.forEach((e,r)=>{let n=t[r+1],s=t[r-1];e!==ed||s===ed||(void 0===s?void 0!==n&&n!==ed?t[r+1]="(?:\\/|"+i+"\\/)?"+n:t[r]=i:void 0===n?t[r-1]=s+"(?:\\/|\\/"+i+")?":n!==ed&&(t[r-1]=s+"(?:\\/|\\/"+i+"\\/)"+n,t[r+1]=ed))});let n=t.filter(e=>e!==ed);if(this.partial&&n.length>=1){let e=[];for(let t=1;t<=n.length;t++)e.push(n.slice(0,t).join("/"));return"(?:"+e.join("|")+")"}return n.join("/")}).join("|"),[s,a]=e.length>1?["(?:",")"]:["",""];n="^"+s+n+a+"$",this.partial&&(n="^(?:\\/|"+s+n.slice(1,-1)+a+")$"),this.negate&&(n="^(?!"+n+").+$");try{this.regexp=new RegExp(n,[...r].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;let i=this.options;this.isWindows&&(e=e.split("\\").join("/"));let r=this.slashSplit(e);this.debug(this.pattern,"split",r);let n=this.set;this.debug(this.pattern,"set",n);let s=r[r.length-1];if(!s)for(let e=r.length-2;!s&&e>=0;e--)s=r[e];for(let e=0;e<n.length;e++){let a=n[e],o=r;if(i.matchBase&&1===a.length&&(o=[s]),this.matchOne(o,a,t))return!!i.flipNegate||!this.negate}return!i.flipNegate&&this.negate}static defaults(e){return J.defaults(e).Minimatch}};J.AST=Y,J.Minimatch=ep,J.escape=V,J.unescape=M;var em="object"==typeof performance&&performance&&"function"==typeof performance.now?performance:Date,eg=new Set,ew="object"==typeof process&&process?process:{},ey=(e,t,i,r)=>{"function"==typeof ew.emitWarning?ew.emitWarning(e,t,i,r):console.error(`[${i}] ${t}: ${e}`)},eb=globalThis.AbortController,ev=globalThis.AbortSignal;if(typeof eb>"u"){ev=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(e,t){this._onabort.push(t)}},eb=class{constructor(){t()}signal=new ev;abort(e){if(!this.signal.aborted){for(let t of(this.signal.reason=e,this.signal.aborted=!0,this.signal._onabort))t(e);this.signal.onabort?.(e)}}};let e=ew.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=!1,ey("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var eE=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),eS=e=>eE(e)?e<=256?Uint8Array:e<=65536?Uint16Array:e<=0x100000000?Uint32Array:e<=Number.MAX_SAFE_INTEGER?e_:null:null,e_=class extends Array{constructor(e){super(e),this.fill(0)}},ek=class e{heap;length;static #e=!1;static create(t){let i=eS(t);if(!i)return[];e.#e=!0;let r=new e(t,i);return e.#e=!1,r}constructor(t,i){if(!e.#e)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(t),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},ex=class e{#e;#t;#i;#r;#n;#s;#a;#o;get perf(){return this.#o}ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#l;#u;#d;#c;#h;#p;#f;#m;#g;#w;#y;#b;#v;#E;#S;#_;#k;#x;#$;static unsafeExposeInternals(e){return{starts:e.#v,ttls:e.#E,autopurgeTimers:e.#S,sizes:e.#b,keyMap:e.#d,keyList:e.#c,valList:e.#h,next:e.#p,prev:e.#f,get head(){return e.#m},get tail(){return e.#g},free:e.#w,isBackgroundFetch:t=>e.#R(t),backgroundFetch:(t,i,r,n)=>e.#O(t,i,r,n),moveToTail:t=>e.#j(t),indexes:t=>e.#A(t),rindexes:t=>e.#P(t),isStale:t=>e.#T(t)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#u}get size(){return this.#l}get fetchMethod(){return this.#s}get memoMethod(){return this.#a}get dispose(){return this.#i}get onInsert(){return this.#r}get disposeAfter(){return this.#n}constructor(t){let{max:i=0,ttl:r,ttlResolution:n=1,ttlAutopurge:s,updateAgeOnGet:a,updateAgeOnHas:o,allowStale:l,dispose:u,onInsert:d,disposeAfter:c,noDisposeOnSet:h,noUpdateTTL:f,maxSize:p=0,maxEntrySize:m=0,sizeCalculation:g,fetchMethod:w,memoMethod:y,noDeleteOnFetchRejection:b,noDeleteOnStaleGet:v,allowStaleOnFetchRejection:E,allowStaleOnFetchAbort:S,ignoreFetchAbort:_,perf:k}=t;if(void 0!==k&&"function"!=typeof k?.now)throw TypeError("perf option must have a now() method if specified");if(this.#o=k??em,0!==i&&!eE(i))throw TypeError("max option must be a nonnegative integer");let x=i?eS(i):Array;if(!x)throw Error("invalid max value: "+i);if(this.#e=i,this.#t=p,this.maxEntrySize=m||this.#t,this.sizeCalculation=g,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if("function"!=typeof this.sizeCalculation)throw TypeError("sizeCalculation set to non-function")}if(void 0!==y&&"function"!=typeof y)throw TypeError("memoMethod must be a function if defined");if(this.#a=y,void 0!==w&&"function"!=typeof w)throw TypeError("fetchMethod must be a function if specified");if(this.#s=w,this.#k=!!w,this.#d=new Map,this.#c=Array(i).fill(void 0),this.#h=Array(i).fill(void 0),this.#p=new x(i),this.#f=new x(i),this.#m=0,this.#g=0,this.#w=ek.create(i),this.#l=0,this.#u=0,"function"==typeof u&&(this.#i=u),"function"==typeof d&&(this.#r=d),"function"==typeof c?(this.#n=c,this.#y=[]):(this.#n=void 0,this.#y=void 0),this.#_=!!this.#i,this.#$=!!this.#r,this.#x=!!this.#n,this.noDisposeOnSet=!!h,this.noUpdateTTL=!!f,this.noDeleteOnFetchRejection=!!b,this.allowStaleOnFetchRejection=!!E,this.allowStaleOnFetchAbort=!!S,this.ignoreFetchAbort=!!_,0!==this.maxEntrySize){if(0!==this.#t&&!eE(this.#t))throw TypeError("maxSize must be a positive integer if specified");if(!eE(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#C()}if(this.allowStale=!!l,this.noDeleteOnStaleGet=!!v,this.updateAgeOnGet=!!a,this.updateAgeOnHas=!!o,this.ttlResolution=eE(n)||0===n?n:1,this.ttlAutopurge=!!s,this.ttl=r||0,this.ttl){if(!eE(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#D()}if(0===this.#e&&0===this.ttl&&0===this.#t)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let t="LRU_CACHE_UNBOUNDED";(e=>!eg.has(e))(t)&&(eg.add(t),ey("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",t,e))}}getRemainingTTL(e){return this.#d.has(e)?1/0:0}#D(){let e=new e_(this.#e),t=new e_(this.#e);this.#E=e,this.#v=t;let i=this.ttlAutopurge?Array(this.#e):void 0;this.#S=i,this.#N=(r,n,s=this.#o.now())=>{if(t[r]=0!==n?s:0,e[r]=n,i?.[r]&&(clearTimeout(i[r]),i[r]=void 0),0!==n&&i){let e=setTimeout(()=>{this.#T(r)&&this.#I(this.#c[r],"expire")},n+1);e.unref&&e.unref(),i[r]=e}},this.#M=i=>{t[i]=0!==e[i]?this.#o.now():0},this.#L=(i,s)=>{if(e[s]){let a=e[s],o=t[s];if(!a||!o)return;i.ttl=a,i.start=o,i.now=r||n();let l=i.now-o;i.remainingTTL=a-l}};let r=0,n=()=>{let e=this.#o.now();if(this.ttlResolution>0){r=e;let t=setTimeout(()=>r=0,this.ttlResolution);t.unref&&t.unref()}return e};this.getRemainingTTL=i=>{let s=this.#d.get(i);if(void 0===s)return 0;let a=e[s],o=t[s];return a&&o?a-((r||n())-o):1/0},this.#T=i=>{let s=t[i],a=e[i];return!!a&&!!s&&(r||n())-s>a}}#M=()=>{};#L=()=>{};#N=()=>{};#T=()=>!1;#C(){let e=new e_(this.#e);this.#u=0,this.#b=e,this.#F=t=>{this.#u-=e[t],e[t]=0},this.#W=(e,t,i,r)=>{if(this.#R(t))return 0;if(!eE(i))if(r){if("function"!=typeof r)throw TypeError("sizeCalculation must be a function");if(!eE(i=r(t,e)))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#U=(t,i,r)=>{if(e[t]=i,this.#t){let i=this.#t-e[t];for(;this.#u>i;)this.#z(!0)}this.#u+=e[t],r&&(r.entrySize=i,r.totalCalculatedSize=this.#u)}}#F=e=>{};#U=(e,t,i)=>{};#W=(e,t,i,r)=>{if(i||r)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#A({allowStale:e=this.allowStale}={}){if(this.#l)for(let t=this.#g;!(!this.#B(t)||((e||!this.#T(t))&&(yield t),t===this.#m));)t=this.#f[t]}*#P({allowStale:e=this.allowStale}={}){if(this.#l)for(let t=this.#m;!(!this.#B(t)||((e||!this.#T(t))&&(yield t),t===this.#g));)t=this.#p[t]}#B(e){return void 0!==e&&this.#d.get(this.#c[e])===e}*entries(){for(let e of this.#A())void 0===this.#h[e]||void 0===this.#c[e]||this.#R(this.#h[e])||(yield[this.#c[e],this.#h[e]])}*rentries(){for(let e of this.#P())void 0===this.#h[e]||void 0===this.#c[e]||this.#R(this.#h[e])||(yield[this.#c[e],this.#h[e]])}*keys(){for(let e of this.#A()){let t=this.#c[e];void 0===t||this.#R(this.#h[e])||(yield t)}}*rkeys(){for(let e of this.#P()){let t=this.#c[e];void 0===t||this.#R(this.#h[e])||(yield t)}}*values(){for(let e of this.#A())void 0===this.#h[e]||this.#R(this.#h[e])||(yield this.#h[e])}*rvalues(){for(let e of this.#P())void 0===this.#h[e]||this.#R(this.#h[e])||(yield this.#h[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,t={}){for(let i of this.#A()){let r=this.#h[i],n=this.#R(r)?r.__staleWhileFetching:r;if(void 0!==n&&e(n,this.#c[i],this))return this.get(this.#c[i],t)}}forEach(e,t=this){for(let i of this.#A()){let r=this.#h[i],n=this.#R(r)?r.__staleWhileFetching:r;void 0!==n&&e.call(t,n,this.#c[i],this)}}rforEach(e,t=this){for(let i of this.#P()){let r=this.#h[i],n=this.#R(r)?r.__staleWhileFetching:r;void 0!==n&&e.call(t,n,this.#c[i],this)}}purgeStale(){let e=!1;for(let t of this.#P({allowStale:!0}))this.#T(t)&&(this.#I(this.#c[t],"expire"),e=!0);return e}info(e){let t=this.#d.get(e);if(void 0===t)return;let i=this.#h[t],r=this.#R(i)?i.__staleWhileFetching:i;if(void 0===r)return;let n={value:r};if(this.#E&&this.#v){let e=this.#E[t],i=this.#v[t];e&&i&&(n.ttl=e-(this.#o.now()-i),n.start=Date.now())}return this.#b&&(n.size=this.#b[t]),n}dump(){let e=[];for(let t of this.#A({allowStale:!0})){let i=this.#c[t],r=this.#h[t],n=this.#R(r)?r.__staleWhileFetching:r;if(void 0===n||void 0===i)continue;let s={value:n};if(this.#E&&this.#v){s.ttl=this.#E[t];let e=this.#o.now()-this.#v[t];s.start=Math.floor(Date.now()-e)}this.#b&&(s.size=this.#b[t]),e.unshift([i,s])}return e}load(e){for(let[t,i]of(this.clear(),e)){if(i.start){let e=Date.now()-i.start;i.start=this.#o.now()-e}this.set(t,i.value,i)}}set(e,t,i={}){if(void 0===t)return this.delete(e),this;let{ttl:r=this.ttl,start:n,noDisposeOnSet:s=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:o}=i,{noUpdateTTL:l=this.noUpdateTTL}=i,u=this.#W(e,t,i.size||0,a);if(this.maxEntrySize&&u>this.maxEntrySize)return o&&(o.set="miss",o.maxEntrySizeExceeded=!0),this.#I(e,"set"),this;let d=0===this.#l?void 0:this.#d.get(e);if(void 0===d)d=0===this.#l?this.#g:0!==this.#w.length?this.#w.pop():this.#l===this.#e?this.#z(!1):this.#l,this.#c[d]=e,this.#h[d]=t,this.#d.set(e,d),this.#p[this.#g]=d,this.#f[d]=this.#g,this.#g=d,this.#l++,this.#U(d,u,o),o&&(o.set="add"),l=!1,this.#$&&this.#r?.(t,e,"add");else{this.#j(d);let i=this.#h[d];if(t!==i){if(this.#k&&this.#R(i)){i.__abortController.abort(Error("replaced"));let{__staleWhileFetching:t}=i;void 0!==t&&!s&&(this.#_&&this.#i?.(t,e,"set"),this.#x&&this.#y?.push([t,e,"set"]))}else s||(this.#_&&this.#i?.(i,e,"set"),this.#x&&this.#y?.push([i,e,"set"]));if(this.#F(d),this.#U(d,u,o),this.#h[d]=t,o){o.set="replace";let e=i&&this.#R(i)?i.__staleWhileFetching:i;void 0!==e&&(o.oldValue=e)}}else o&&(o.set="update");this.#$&&this.onInsert?.(t,e,t===i?"update":"replace")}if(0===r||this.#E||this.#D(),this.#E&&(l||this.#N(d,r,n),o&&this.#L(o,d)),!s&&this.#x&&this.#y){let e=this.#y,t;for(;t=e?.shift();)this.#n?.(...t)}return this}pop(){try{for(;this.#l;){let e=this.#h[this.#m];if(this.#z(!0),this.#R(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(void 0!==e)return e}}finally{if(this.#x&&this.#y){let e=this.#y,t;for(;t=e?.shift();)this.#n?.(...t)}}}#z(e){let t=this.#m,i=this.#c[t],r=this.#h[t];return this.#k&&this.#R(r)?r.__abortController.abort(Error("evicted")):(this.#_||this.#x)&&(this.#_&&this.#i?.(r,i,"evict"),this.#x&&this.#y?.push([r,i,"evict"])),this.#F(t),this.#S?.[t]&&(clearTimeout(this.#S[t]),this.#S[t]=void 0),e&&(this.#c[t]=void 0,this.#h[t]=void 0,this.#w.push(t)),1===this.#l?(this.#m=this.#g=0,this.#w.length=0):this.#m=this.#p[t],this.#d.delete(i),this.#l--,t}has(e,t={}){let{updateAgeOnHas:i=this.updateAgeOnHas,status:r}=t,n=this.#d.get(e);if(void 0!==n){let e=this.#h[n];if(this.#R(e)&&void 0===e.__staleWhileFetching)return!1;if(!this.#T(n))return i&&this.#M(n),r&&(r.has="hit",this.#L(r,n)),!0;r&&(r.has="stale",this.#L(r,n))}else r&&(r.has="miss");return!1}peek(e,t={}){let{allowStale:i=this.allowStale}=t,r=this.#d.get(e);if(void 0===r||!i&&this.#T(r))return;let n=this.#h[r];return this.#R(n)?n.__staleWhileFetching:n}#O(e,t,i,r){let n=void 0===t?void 0:this.#h[t];if(this.#R(n))return n;let s=new eb,{signal:a}=i;a?.addEventListener("abort",()=>s.abort(a.reason),{signal:s.signal});let o={signal:s.signal,options:i,context:r},l=(r,n=!1)=>{let{aborted:a}=s.signal,l=i.ignoreFetchAbort&&void 0!==r,d=i.ignoreFetchAbort||!!(i.allowStaleOnFetchAbort&&void 0!==r);if(i.status&&(a&&!n?(i.status.fetchAborted=!0,i.status.fetchError=s.signal.reason,l&&(i.status.fetchAbortIgnored=!0)):i.status.fetchResolved=!0),a&&!l&&!n)return u(s.signal.reason,d);let h=this.#h[t];return(h===c||l&&n&&void 0===h)&&(void 0===r?void 0!==c.__staleWhileFetching?this.#h[t]=c.__staleWhileFetching:this.#I(e,"fetch"):(i.status&&(i.status.fetchUpdated=!0),this.set(e,r,o.options))),r},u=(r,n)=>{let{aborted:a}=s.signal,o=a&&i.allowStaleOnFetchAbort,l=o||i.allowStaleOnFetchRejection,u=l||i.noDeleteOnFetchRejection;if(this.#h[t]===c&&(u&&(n||void 0!==c.__staleWhileFetching)?o||(this.#h[t]=c.__staleWhileFetching):this.#I(e,"fetch")),l)return i.status&&void 0!==c.__staleWhileFetching&&(i.status.returnedStale=!0),c.__staleWhileFetching;if(c.__returned===c)throw r},d=(t,r)=>{let a=this.#s?.(e,n,o);a&&a instanceof Promise&&a.then(e=>t(void 0===e?void 0:e),r),s.signal.addEventListener("abort",()=>{(!i.ignoreFetchAbort||i.allowStaleOnFetchAbort)&&(t(void 0),i.allowStaleOnFetchAbort&&(t=e=>l(e,!0)))})};i.status&&(i.status.fetchDispatched=!0);let c=new Promise(d).then(l,e=>(i.status&&(i.status.fetchRejected=!0,i.status.fetchError=e),u(e,!1))),h=Object.assign(c,{__abortController:s,__staleWhileFetching:n,__returned:void 0});return void 0===t?(this.set(e,h,{...o.options,status:void 0}),t=this.#d.get(e)):this.#h[t]=h,h}#R(e){return!!this.#k&&!!e&&e instanceof Promise&&e.hasOwnProperty("__staleWhileFetching")&&e.__abortController instanceof eb}async fetch(e,t={}){let{allowStale:i=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,ttl:s=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:o=0,sizeCalculation:l=this.sizeCalculation,noUpdateTTL:u=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:c=this.allowStaleOnFetchRejection,ignoreFetchAbort:h=this.ignoreFetchAbort,allowStaleOnFetchAbort:f=this.allowStaleOnFetchAbort,context:p,forceRefresh:m=!1,status:g,signal:w}=t;if(!this.#k)return g&&(g.fetch="get"),this.get(e,{allowStale:i,updateAgeOnGet:r,noDeleteOnStaleGet:n,status:g});let y={allowStale:i,updateAgeOnGet:r,noDeleteOnStaleGet:n,ttl:s,noDisposeOnSet:a,size:o,sizeCalculation:l,noUpdateTTL:u,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:c,allowStaleOnFetchAbort:f,ignoreFetchAbort:h,status:g,signal:w},b=this.#d.get(e);if(void 0===b){g&&(g.fetch="miss");let t=this.#O(e,b,y,p);return t.__returned=t}{let t=this.#h[b];if(this.#R(t)){let e=i&&void 0!==t.__staleWhileFetching;return g&&(g.fetch="inflight",e&&(g.returnedStale=!0)),e?t.__staleWhileFetching:t.__returned=t}let n=this.#T(b);if(!m&&!n)return g&&(g.fetch="hit"),this.#j(b),r&&this.#M(b),g&&this.#L(g,b),t;let s=this.#O(e,b,y,p),a=void 0!==s.__staleWhileFetching&&i;return g&&(g.fetch=n?"stale":"refresh",a&&n&&(g.returnedStale=!0)),a?s.__staleWhileFetching:s.__returned=s}}async forceFetch(e,t={}){let i=await this.fetch(e,t);if(void 0===i)throw Error("fetch() returned undefined");return i}memo(e,t={}){let i=this.#a;if(!i)throw Error("no memoMethod provided to constructor");let{context:r,forceRefresh:n,...s}=t,a=this.get(e,s);if(!n&&void 0!==a)return a;let o=i(e,a,{options:s,context:r});return this.set(e,o,s),o}get(e,t={}){let{allowStale:i=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,status:s}=t,a=this.#d.get(e);if(void 0!==a){let t=this.#h[a],o=this.#R(t);return s&&this.#L(s,a),this.#T(a)?(s&&(s.get="stale"),o?(s&&i&&void 0!==t.__staleWhileFetching&&(s.returnedStale=!0),i?t.__staleWhileFetching:void 0):(n||this.#I(e,"expire"),s&&i&&(s.returnedStale=!0),i?t:void 0)):(s&&(s.get="hit"),o?t.__staleWhileFetching:(this.#j(a),r&&this.#M(a),t))}s&&(s.get="miss")}#G(e,t){this.#f[t]=e,this.#p[e]=t}#j(e){e!==this.#g&&(e===this.#m?this.#m=this.#p[e]:this.#G(this.#f[e],this.#p[e]),this.#G(this.#g,e),this.#g=e)}delete(e){return this.#I(e,"delete")}#I(e,t){let i=!1;if(0!==this.#l){let r=this.#d.get(e);if(void 0!==r)if(this.#S?.[r]&&(clearTimeout(this.#S?.[r]),this.#S[r]=void 0),i=!0,1===this.#l)this.#X(t);else{this.#F(r);let i=this.#h[r];if(this.#R(i)?i.__abortController.abort(Error("deleted")):(this.#_||this.#x)&&(this.#_&&this.#i?.(i,e,t),this.#x&&this.#y?.push([i,e,t])),this.#d.delete(e),this.#c[r]=void 0,this.#h[r]=void 0,r===this.#g)this.#g=this.#f[r];else if(r===this.#m)this.#m=this.#p[r];else{let e=this.#f[r];this.#p[e]=this.#p[r];let t=this.#p[r];this.#f[t]=this.#f[r]}this.#l--,this.#w.push(r)}}if(this.#x&&this.#y?.length){let e=this.#y,t;for(;t=e?.shift();)this.#n?.(...t)}return i}clear(){return this.#X("delete")}#X(e){for(let t of this.#P({allowStale:!0})){let i=this.#h[t];if(this.#R(i))i.__abortController.abort(Error("deleted"));else{let r=this.#c[t];this.#_&&this.#i?.(i,r,e),this.#x&&this.#y?.push([i,r,e])}}if(this.#d.clear(),this.#h.fill(void 0),this.#c.fill(void 0),this.#E&&this.#v){for(let e of(this.#E.fill(0),this.#v.fill(0),this.#S??[]))void 0!==e&&clearTimeout(e);this.#S?.fill(void 0)}if(this.#b&&this.#b.fill(0),this.#m=0,this.#g=0,this.#w.length=0,this.#u=0,this.#l=0,this.#x&&this.#y){let e=this.#y,t;for(;t=e?.shift();)this.#n?.(...t)}}},e$="object"==typeof process&&process?process:{stdout:null,stderr:null},eR=e=>!!e&&"object"==typeof e&&(e instanceof tt||e instanceof o.default||eO(e)||ej(e)),eO=e=>!!e&&"object"==typeof e&&e instanceof a.EventEmitter&&"function"==typeof e.pipe&&e.pipe!==o.default.Writable.prototype.pipe,ej=e=>!!e&&"object"==typeof e&&e instanceof a.EventEmitter&&"function"==typeof e.write&&"function"==typeof e.end,eA=Symbol("EOF"),eP=Symbol("maybeEmitEnd"),eT=Symbol("emittedEnd"),eC=Symbol("emittingEnd"),eD=Symbol("emittedError"),eN=Symbol("closed"),eI=Symbol("read"),eM=Symbol("flush"),eL=Symbol("flushChunk"),eF=Symbol("encoding"),eW=Symbol("decoder"),eU=Symbol("flowing"),ez=Symbol("paused"),eB=Symbol("resume"),eG=Symbol("buffer"),eX=Symbol("pipes"),eH=Symbol("bufferLength"),eq=Symbol("bufferPush"),eY=Symbol("bufferShift"),eV=Symbol("objectMode"),eJ=Symbol("destroyed"),eZ=Symbol("error"),eK=Symbol("emitData"),eQ=Symbol("emitEnd"),e0=Symbol("emitEnd2"),e1=Symbol("async"),e2=Symbol("abort"),e3=Symbol("aborted"),e4=Symbol("signal"),e8=Symbol("dataListeners"),e6=Symbol("discarded"),e5=e=>Promise.resolve().then(e),e7=e=>e(),e9=class{src;dest;opts;ondrain;constructor(e,t,i){this.src=e,this.dest=t,this.opts=i,this.ondrain=()=>e[eB](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},te=class extends e9{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,t,i){super(e,t,i),this.proxyErrors=e=>this.dest.emit("error",e),e.on("error",this.proxyErrors)}},tt=class extends a.EventEmitter{[eU]=!1;[ez]=!1;[eX]=[];[eG]=[];[eV];[eF];[e1];[eW];[eA]=!1;[eT]=!1;[eC]=!1;[eN]=!1;[eD]=null;[eH]=0;[eJ]=!1;[e4];[e3]=!1;[e8]=0;[e6]=!1;writable=!0;readable=!0;constructor(...e){let t=e[0]||{};if(super(),t.objectMode&&"string"==typeof t.encoding)throw TypeError("Encoding and objectMode may not be used together");(e=>!!e.objectMode)(t)?(this[eV]=!0,this[eF]=null):(e=>!e.objectMode&&!!e.encoding&&"buffer"!==e.encoding)(t)?(this[eF]=t.encoding,this[eV]=!1):(this[eV]=!1,this[eF]=null),this[e1]=!!t.async,this[eW]=this[eF]?new l.StringDecoder(this[eF]):null,t&&!0===t.debugExposeBuffer&&Object.defineProperty(this,"buffer",{get:()=>this[eG]}),t&&!0===t.debugExposePipes&&Object.defineProperty(this,"pipes",{get:()=>this[eX]});let{signal:i}=t;i&&(this[e4]=i,i.aborted?this[e2]():i.addEventListener("abort",()=>this[e2]()))}get bufferLength(){return this[eH]}get encoding(){return this[eF]}set encoding(e){throw Error("Encoding must be set at instantiation time")}setEncoding(e){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[eV]}set objectMode(e){throw Error("objectMode must be set at instantiation time")}get async(){return this[e1]}set async(e){this[e1]=this[e1]||!!e}[e2](){this[e3]=!0,this.emit("abort",this[e4]?.reason),this.destroy(this[e4]?.reason)}get aborted(){return this[e3]}set aborted(e){}write(e,t,i){if(this[e3])return!1;if(this[eA])throw Error("write after end");if(this[eJ])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;"function"==typeof t&&(i=t,t="utf8"),t||(t="utf8");let r=this[e1]?e5:e7;if(!this[eV]&&!Buffer.isBuffer(e)){let t;if(t=e,!Buffer.isBuffer(t)&&ArrayBuffer.isView(t))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else{let t;if((t=e)instanceof ArrayBuffer||t&&"object"==typeof t&&t.constructor&&"ArrayBuffer"===t.constructor.name&&t.byteLength>=0)e=Buffer.from(e);else if("string"!=typeof e)throw Error("Non-contiguous data written to non-objectMode stream")}}return this[eV]?(this[eU]&&0!==this[eH]&&this[eM](!0),this[eU]?this.emit("data",e):this[eq](e)):e.length&&("string"==typeof e&&(t!==this[eF]||this[eW]?.lastNeed)&&(e=Buffer.from(e,t)),Buffer.isBuffer(e)&&this[eF]&&(e=this[eW].write(e)),this[eU]&&0!==this[eH]&&this[eM](!0),this[eU]?this.emit("data",e):this[eq](e)),0!==this[eH]&&this.emit("readable"),i&&r(i),this[eU]}read(e){if(this[eJ])return null;if(this[e6]=!1,0===this[eH]||0===e||e&&e>this[eH])return this[eP](),null;this[eV]&&(e=null),this[eG].length>1&&!this[eV]&&(this[eG]=[this[eF]?this[eG].join(""):Buffer.concat(this[eG],this[eH])]);let t=this[eI](e||null,this[eG][0]);return this[eP](),t}[eI](e,t){if(this[eV])this[eY]();else{let i=t;e===i.length||null===e?this[eY]():("string"==typeof i?(this[eG][0]=i.slice(e),t=i.slice(0,e)):(this[eG][0]=i.subarray(e),t=i.subarray(0,e)),this[eH]-=e)}return this.emit("data",t),this[eG].length||this[eA]||this.emit("drain"),t}end(e,t,i){return"function"==typeof e&&(i=e,e=void 0),"function"==typeof t&&(i=t,t="utf8"),void 0!==e&&this.write(e,t),i&&this.once("end",i),this[eA]=!0,this.writable=!1,(this[eU]||!this[ez])&&this[eP](),this}[eB](){this[eJ]||(this[e8]||this[eX].length||(this[e6]=!0),this[ez]=!1,this[eU]=!0,this.emit("resume"),this[eG].length?this[eM]():this[eA]?this[eP]():this.emit("drain"))}resume(){return this[eB]()}pause(){this[eU]=!1,this[ez]=!0,this[e6]=!1}get destroyed(){return this[eJ]}get flowing(){return this[eU]}get paused(){return this[ez]}[eq](e){this[eV]?this[eH]+=1:this[eH]+=e.length,this[eG].push(e)}[eY](){return this[eV]?this[eH]-=1:this[eH]-=this[eG][0].length,this[eG].shift()}[eM](e=!1){do;while(this[eL](this[eY]())&&this[eG].length)e||this[eG].length||this[eA]||this.emit("drain")}[eL](e){return this.emit("data",e),this[eU]}pipe(e,t){if(this[eJ])return e;this[e6]=!1;let i=this[eT];return t=t||{},e===e$.stdout||e===e$.stderr?t.end=!1:t.end=!1!==t.end,t.proxyErrors=!!t.proxyErrors,i?t.end&&e.end():(this[eX].push(t.proxyErrors?new te(this,e,t):new e9(this,e,t)),this[e1]?e5(()=>this[eB]()):this[eB]()),e}unpipe(e){let t=this[eX].find(t=>t.dest===e);t&&(1===this[eX].length?(this[eU]&&0===this[e8]&&(this[eU]=!1),this[eX]=[]):this[eX].splice(this[eX].indexOf(t),1),t.unpipe())}addListener(e,t){return this.on(e,t)}on(e,t){let i=super.on(e,t);if("data"===e)this[e6]=!1,this[e8]++,this[eX].length||this[eU]||this[eB]();else if("readable"===e&&0!==this[eH])super.emit("readable");else("end"===e||"finish"===e||"prefinish"===e)&&this[eT]?(super.emit(e),this.removeAllListeners(e)):"error"===e&&this[eD]&&(this[e1]?e5(()=>t.call(this,this[eD])):t.call(this,this[eD]));return i}removeListener(e,t){return this.off(e,t)}off(e,t){let i=super.off(e,t);return"data"===e&&(this[e8]=this.listeners("data").length,0!==this[e8]||this[e6]||this[eX].length||(this[eU]=!1)),i}removeAllListeners(e){let t=super.removeAllListeners(e);return("data"===e||void 0===e)&&(this[e8]=0,this[e6]||this[eX].length||(this[eU]=!1)),t}get emittedEnd(){return this[eT]}[eP](){this[eC]||this[eT]||this[eJ]||0!==this[eG].length||!this[eA]||(this[eC]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[eN]&&this.emit("close"),this[eC]=!1)}emit(e,...t){let i=t[0];if("error"!==e&&"close"!==e&&e!==eJ&&this[eJ])return!1;if("data"===e)return(!!this[eV]||!!i)&&(this[e1]?(e5(()=>this[eK](i)),!0):this[eK](i));if("end"===e)return this[eQ]();if("close"===e){if(this[eN]=!0,!this[eT]&&!this[eJ])return!1;let e=super.emit("close");return this.removeAllListeners("close"),e}if("error"===e){this[eD]=i,super.emit(eZ,i);let e=(!this[e4]||!!this.listeners("error").length)&&super.emit("error",i);return this[eP](),e}if("resume"===e){let e=super.emit("resume");return this[eP](),e}if("finish"===e||"prefinish"===e){let t=super.emit(e);return this.removeAllListeners(e),t}let r=super.emit(e,...t);return this[eP](),r}[eK](e){for(let t of this[eX])!1===t.dest.write(e)&&this.pause();let t=!this[e6]&&super.emit("data",e);return this[eP](),t}[eQ](){return!this[eT]&&(this[eT]=!0,this.readable=!1,this[e1]?(e5(()=>this[e0]()),!0):this[e0]())}[e0](){if(this[eW]){let e=this[eW].end();if(e){for(let t of this[eX])t.dest.write(e);this[e6]||super.emit("data",e)}}for(let e of this[eX])e.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[eV]||(e.dataLength=0);let t=this.promise();return this.on("data",t=>{e.push(t),this[eV]||(e.dataLength+=t.length)}),await t,e}async concat(){if(this[eV])throw Error("cannot concat in objectMode");let e=await this.collect();return this[eF]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,t)=>{this.on(eJ,()=>t(Error("stream destroyed"))),this.on("error",e=>t(e)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[e6]=!1;let e=!1,t=async()=>(this.pause(),e=!0,{value:void 0,done:!0});return{next:()=>{if(e)return t();let i=this.read();if(null!==i)return Promise.resolve({done:!1,value:i});if(this[eA])return t();let r,n,s=e=>{this.off("data",a),this.off("end",o),this.off(eJ,l),t(),n(e)},a=e=>{this.off("error",s),this.off("end",o),this.off(eJ,l),this.pause(),r({value:e,done:!!this[eA]})},o=()=>{this.off("error",s),this.off("data",a),this.off(eJ,l),t(),r({done:!0,value:void 0})},l=()=>s(Error("stream destroyed"));return new Promise((e,t)=>{n=t,r=e,this.once(eJ,l),this.once("error",s),this.once("end",o),this.once("data",a)})},throw:t,return:t,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[e6]=!1;let e=!1,t=()=>(this.pause(),this.off(eZ,t),this.off(eJ,t),this.off("end",t),e=!0,{done:!0,value:void 0}),i=()=>{if(e)return t();let i=this.read();return null===i?t():{done:!1,value:i}};return this.once("end",t),this.once(eZ,t),this.once(eJ,t),{next:i,throw:t,return:t,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(e){return this[eJ]||(this[eJ]=!0,this[e6]=!0,this[eG].length=0,this[eH]=0,"function"!=typeof this.close||this[eN]||this.close()),e?this.emit("error",e):this.emit(eJ),this}static get isStream(){return eR}},ti=r.realpathSync.native,tr={lstatSync:r.lstatSync,readdir:r.readdir,readdirSync:r.readdirSync,readlinkSync:r.readlinkSync,realpathSync:ti,promises:{lstat:s.lstat,readdir:s.readdir,readlink:s.readlink,realpath:s.realpath}},tn=e=>e&&e!==tr&&e!==n?{...tr,...e,promises:{...tr.promises,...e.promises||{}}}:tr,ts=/^\\\\\?\\([a-z]:)\\?$/i,ta=/[\\\/]/,to=e=>e.isFile()?8:e.isDirectory()?4:e.isSymbolicLink()?10:e.isCharacterDevice()?2:e.isBlockDevice()?6:e.isSocket()?12:+!!e.isFIFO(),tl=new ex({max:4096}),tu=e=>{let t=tl.get(e);if(t)return t;let i=e.normalize("NFKD");return tl.set(e,i),i},td=new ex({max:4096}),tc=e=>{let t=td.get(e);if(t)return t;let i=tu(e.toLowerCase());return td.set(e,i),i},th=class extends ex{constructor(){super({max:256})}},tf=class extends ex{constructor(e=16384){super({maxSize:e,sizeCalculation:e=>e.length+1})}},tp=Symbol("PathScurry setAsCwd"),tm=class{name;root;roots;parent;nocase;isCWD=!1;#e;#t;get dev(){return this.#t}#i;get mode(){return this.#i}#r;get nlink(){return this.#r}#n;get uid(){return this.#n}#s;get gid(){return this.#s}#a;get rdev(){return this.#a}#o;get blksize(){return this.#o}#l;get ino(){return this.#l}#u;get size(){return this.#u}#d;get blocks(){return this.#d}#c;get atimeMs(){return this.#c}#h;get mtimeMs(){return this.#h}#p;get ctimeMs(){return this.#p}#f;get birthtimeMs(){return this.#f}#m;get atime(){return this.#m}#g;get mtime(){return this.#g}#w;get ctime(){return this.#w}#y;get birthtime(){return this.#y}#b;#v;#E;#S;#_;#k;#x;#$;#D;#M;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,t=0,i,r,n,s,a){this.name=e,this.#b=n?tc(e):tu(e),this.#x=1023&t,this.nocase=n,this.roots=r,this.root=i||this,this.#$=s,this.#E=a.fullpath,this.#_=a.relative,this.#k=a.relativePosix,this.parent=a.parent,this.parent?this.#e=this.parent.#e:this.#e=tn(a.fs)}depth(){return void 0!==this.#v?this.#v:this.parent?this.#v=this.parent.depth()+1:this.#v=0}childrenCache(){return this.#$}resolve(e){if(!e)return this;let t=this.getRootString(e),i=e.substring(t.length).split(this.splitSep);return t?this.getRoot(t).#L(i):this.#L(i)}#L(e){let t=this;for(let i of e)t=t.child(i);return t}children(){let e=this.#$.get(this);if(e)return e;let t=Object.assign([],{provisional:0});return this.#$.set(this,t),this.#x&=-17,t}child(e,t){if(""===e||"."===e)return this;if(".."===e)return this.parent||this;let i=this.children(),r=this.nocase?tc(e):tu(e);for(let e of i)if(e.#b===r)return e;let n=this.parent?this.sep:"",s=this.#E?this.#E+n+e:void 0,a=this.newChild(e,0,{...t,parent:this,fullpath:s});return this.canReaddir()||(a.#x|=128),i.push(a),a}relative(){if(this.isCWD)return"";if(void 0!==this.#_)return this.#_;let e=this.name,t=this.parent;if(!t)return this.#_=this.name;let i=t.relative();return i+(i&&t.parent?this.sep:"")+e}relativePosix(){if("/"===this.sep)return this.relative();if(this.isCWD)return"";if(void 0!==this.#k)return this.#k;let e=this.name,t=this.parent;if(!t)return this.#k=this.fullpathPosix();let i=t.relativePosix();return i+(i&&t.parent?"/":"")+e}fullpath(){if(void 0!==this.#E)return this.#E;let e=this.name,t=this.parent;if(!t)return this.#E=this.name;let i=t.fullpath()+(t.parent?this.sep:"")+e;return this.#E=i}fullpathPosix(){if(void 0!==this.#S)return this.#S;if("/"===this.sep)return this.#S=this.fullpath();if(!this.parent){let e=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(e)?this.#S=`//?/${e}`:this.#S=e}let e=this.parent,t=e.fullpathPosix(),i=t+(t&&e.parent?"/":"")+this.name;return this.#S=i}isUnknown(){return(15&this.#x)==0}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(15&this.#x)==8}isDirectory(){return(15&this.#x)==4}isCharacterDevice(){return(15&this.#x)==2}isBlockDevice(){return(15&this.#x)==6}isFIFO(){return(15&this.#x)==1}isSocket(){return(15&this.#x)==12}isSymbolicLink(){return(10&this.#x)==10}lstatCached(){return 32&this.#x?this:void 0}readlinkCached(){return this.#D}realpathCached(){return this.#M}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#D)return!0;if(!this.parent)return!1;let e=15&this.#x;return!(0!==e&&10!==e||256&this.#x||128&this.#x)}calledReaddir(){return!!(16&this.#x)}isENOENT(){return!!(128&this.#x)}isNamed(e){return this.nocase?this.#b===tc(e):this.#b===tu(e)}async readlink(){let e=this.#D;if(e)return e;if(this.canReadlink()&&this.parent)try{let e=await this.#e.promises.readlink(this.fullpath()),t=(await this.parent.realpath())?.resolve(e);if(t)return this.#D=t}catch(e){this.#P(e.code);return}}readlinkSync(){let e=this.#D;if(e)return e;if(this.canReadlink()&&this.parent)try{let e=this.#e.readlinkSync(this.fullpath()),t=this.parent.realpathSync()?.resolve(e);if(t)return this.#D=t}catch(e){this.#P(e.code);return}}#N(e){this.#x|=16;for(let t=e.provisional;t<e.length;t++){let i=e[t];i&&i.#T()}}#T(){128&this.#x||(this.#x=(128|this.#x)&-16,this.#C())}#C(){let e=this.children();for(let t of(e.provisional=0,e))t.#T()}#F(){this.#x|=512,this.#U()}#U(){if(64&this.#x)return;let e=this.#x;(15&e)==4&&(e&=-16),this.#x=64|e,this.#C()}#W(e=""){"ENOTDIR"===e||"EPERM"===e?this.#U():"ENOENT"===e?this.#T():this.children().provisional=0}#A(e=""){"ENOTDIR"===e?this.parent.#U():"ENOENT"===e&&this.#T()}#P(e=""){let t=this.#x;t|=256,"ENOENT"===e&&(t|=128),("EINVAL"===e||"UNKNOWN"===e)&&(t&=-16),this.#x=t,"ENOTDIR"===e&&this.parent&&this.parent.#U()}#B(e,t){return this.#O(e,t)||this.#z(e,t)}#z(e,t){let i=to(e),r=this.newChild(e.name,i,{parent:this}),n=15&r.#x;return 4!==n&&10!==n&&0!==n&&(r.#x|=64),t.unshift(r),t.provisional++,r}#O(e,t){for(let i=t.provisional;i<t.length;i++){let r=t[i];if((this.nocase?tc(e.name):tu(e.name))===r.#b)return this.#R(e,r,i,t)}}#R(e,t,i,r){let n=t.name;return t.#x=-16&t.#x|to(e),n!==e.name&&(t.name=e.name),i!==r.provisional&&(i===r.length-1?r.pop():r.splice(i,1),r.unshift(t)),r.provisional++,t}async lstat(){if((128&this.#x)==0)try{return this.#G(await this.#e.promises.lstat(this.fullpath())),this}catch(e){this.#A(e.code)}}lstatSync(){if((128&this.#x)==0)try{return this.#G(this.#e.lstatSync(this.fullpath())),this}catch(e){this.#A(e.code)}}#G(e){let{atime:t,atimeMs:i,birthtime:r,birthtimeMs:n,blksize:s,blocks:a,ctime:o,ctimeMs:l,dev:u,gid:d,ino:c,mode:h,mtime:f,mtimeMs:p,nlink:m,rdev:g,size:w,uid:y}=e;this.#m=t,this.#c=i,this.#y=r,this.#f=n,this.#o=s,this.#d=a,this.#w=o,this.#p=l,this.#t=u,this.#s=d,this.#l=c,this.#i=h,this.#g=f,this.#h=p,this.#r=m,this.#a=g,this.#u=w,this.#n=y;let b=to(e);this.#x=-16&this.#x|b|32,0!==b&&4!==b&&10!==b&&(this.#x|=64)}#j=[];#I=!1;#X(e){this.#I=!1;let t=this.#j.slice();this.#j.length=0,t.forEach(t=>t(null,e))}readdirCB(e,t=!1){if(!this.canReaddir())return void(t?e(null,[]):queueMicrotask(()=>e(null,[])));let i=this.children();if(this.calledReaddir()){let r=i.slice(0,i.provisional);t?e(null,r):queueMicrotask(()=>e(null,r));return}if(this.#j.push(e),this.#I)return;this.#I=!0;let r=this.fullpath();this.#e.readdir(r,{withFileTypes:!0},(e,t)=>{if(e)this.#W(e.code),i.provisional=0;else{for(let e of t)this.#B(e,i);this.#N(i)}this.#X(i.slice(0,i.provisional))})}#H;async readdir(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let t=this.fullpath();if(this.#H)await this.#H;else{let i=()=>{};this.#H=new Promise(e=>i=e);try{for(let i of(await this.#e.promises.readdir(t,{withFileTypes:!0})))this.#B(i,e);this.#N(e)}catch(t){this.#W(t.code),e.provisional=0}this.#H=void 0,i()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let t=this.fullpath();try{for(let i of this.#e.readdirSync(t,{withFileTypes:!0}))this.#B(i,e);this.#N(e)}catch(t){this.#W(t.code),e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(704&this.#x)return!1;let e=15&this.#x;return 0===e||4===e||10===e}shouldWalk(e,t){return(4&this.#x)==4&&!(704&this.#x)&&!e.has(this)&&(!t||t(this))}async realpath(){if(this.#M)return this.#M;if(!(896&this.#x))try{let e=await this.#e.promises.realpath(this.fullpath());return this.#M=this.resolve(e)}catch{this.#F()}}realpathSync(){if(this.#M)return this.#M;if(!(896&this.#x))try{let e=this.#e.realpathSync(this.fullpath());return this.#M=this.resolve(e)}catch{this.#F()}}[tp](e){if(e===this)return;e.isCWD=!1,this.isCWD=!0;let t=new Set([]),i=[],r=this;for(;r&&r.parent;)t.add(r),r.#_=i.join(this.sep),r.#k=i.join("/"),r=r.parent,i.push("..");for(r=e;r&&r.parent&&!t.has(r);)r.#_=void 0,r.#k=void 0,r=r.parent}},tg=class e extends tm{sep="\\";splitSep=ta;constructor(e,t=0,i,r,n,s,a){super(e,t,i,r,n,s,a)}newChild(t,i=0,r={}){return new e(t,i,this.root,this.roots,this.nocase,this.childrenCache(),r)}getRootString(e){return i.win32.parse(e).root}getRoot(e){if((e=e.toUpperCase().replace(/\//g,"\\").replace(ts,"$1\\"))===this.root.name)return this.root;for(let[t,i]of Object.entries(this.roots))if(this.sameRoot(e,t))return this.roots[e]=i;return this.roots[e]=new tb(e,this).root}sameRoot(e,t=this.root.name){return(e=e.toUpperCase().replace(/\//g,"\\").replace(ts,"$1\\"))===t}},tw=class e extends tm{splitSep="/";sep="/";constructor(e,t=0,i,r,n,s,a){super(e,t,i,r,n,s,a)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(t,i=0,r={}){return new e(t,i,this.root,this.roots,this.nocase,this.childrenCache(),r)}},ty=class{root;rootPath;roots;cwd;#e;#t;#i;nocase;#r;constructor(e=process.cwd(),i,r,{nocase:n,childrenCacheSize:s=16384,fs:a=tr}={}){this.#r=tn(a),(e instanceof URL||e.startsWith("file://"))&&(e=(0,t.fileURLToPath)(e));let o=i.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(o),this.#e=new th,this.#t=new th,this.#i=new tf(s);let l=o.substring(this.rootPath.length).split(r);if(1!==l.length||l[0]||l.pop(),void 0===n)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=n,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let u=this.root,d=l.length-1,c=i.sep,h=this.rootPath,f=!1;for(let e of l){let t=d--;u=u.child(e,{relative:Array(t).fill("..").join(c),relativePosix:Array(t).fill("..").join("/"),fullpath:h+=(f?"":c)+e}),f=!0}this.cwd=u}depth(e=this.cwd){return"string"==typeof e&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return this.#i}resolve(...e){let t="";for(let i=e.length-1;i>=0;i--){let r=e[i];if(!(!r||"."===r)&&(t=t?`${r}/${t}`:r,this.isAbsolute(r)))break}let i=this.#e.get(t);if(void 0!==i)return i;let r=this.cwd.resolve(t).fullpath();return this.#e.set(t,r),r}resolvePosix(...e){let t="";for(let i=e.length-1;i>=0;i--){let r=e[i];if(!(!r||"."===r)&&(t=t?`${r}/${t}`:r,this.isAbsolute(r)))break}let i=this.#t.get(t);if(void 0!==i)return i;let r=this.cwd.resolve(t).fullpathPosix();return this.#t.set(t,r),r}relative(e=this.cwd){return"string"==typeof e&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return"string"==typeof e&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return"string"==typeof e&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return"string"==typeof e&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,t={withFileTypes:!0}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e,e=this.cwd);let{withFileTypes:i}=t;if(!e.canReaddir())return[];{let t=await e.readdir();return i?t:t.map(e=>e.name)}}readdirSync(e=this.cwd,t={withFileTypes:!0}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e,e=this.cwd);let{withFileTypes:i=!0}=t;return e.canReaddir()?i?e.readdirSync():e.readdirSync().map(e=>e.name):[]}async lstat(e=this.cwd){return"string"==typeof e&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return"string"==typeof e&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e.withFileTypes,e=this.cwd);let i=await e.readlink();return t?i:i?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e.withFileTypes,e=this.cwd);let i=e.readlinkSync();return t?i:i?.fullpath()}async realpath(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e.withFileTypes,e=this.cwd);let i=await e.realpath();return t?i:i?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:t}={withFileTypes:!1}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e.withFileTypes,e=this.cwd);let i=e.realpathSync();return t?i:i?.fullpath()}async walk(e=this.cwd,t={}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e,e=this.cwd);let{withFileTypes:i=!0,follow:r=!1,filter:n,walkFilter:s}=t,a=[];(!n||n(e))&&a.push(i?e:e.fullpath());let o=new Set,l=(e,t)=>{o.add(e),e.readdirCB((e,u)=>{if(e)return t(e);let d=u.length;if(!d)return t();let c=()=>{0==--d&&t()};for(let e of u)(!n||n(e))&&a.push(i?e:e.fullpath()),r&&e.isSymbolicLink()?e.realpath().then(e=>e?.isUnknown()?e.lstat():e).then(e=>e?.shouldWalk(o,s)?l(e,c):c()):e.shouldWalk(o,s)?l(e,c):c()},!0)},u=e;return new Promise((e,t)=>{l(u,i=>{if(i)return t(i);e(a)})})}walkSync(e=this.cwd,t={}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e,e=this.cwd);let{withFileTypes:i=!0,follow:r=!1,filter:n,walkFilter:s}=t,a=[];(!n||n(e))&&a.push(i?e:e.fullpath());let o=new Set([e]);for(let e of o)for(let t of e.readdirSync()){(!n||n(t))&&a.push(i?t:t.fullpath());let e=t;if(t.isSymbolicLink()){if(!(r&&(e=t.realpathSync())))continue;e.isUnknown()&&e.lstatSync()}e.shouldWalk(o,s)&&o.add(e)}return a}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,t={}){return"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e,e=this.cwd),this.stream(e,t)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,t={}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e,e=this.cwd);let{withFileTypes:i=!0,follow:r=!1,filter:n,walkFilter:s}=t;(!n||n(e))&&(yield i?e:e.fullpath());let a=new Set([e]);for(let e of a)for(let t of e.readdirSync()){(!n||n(t))&&(yield i?t:t.fullpath());let e=t;if(t.isSymbolicLink()){if(!(r&&(e=t.realpathSync())))continue;e.isUnknown()&&e.lstatSync()}e.shouldWalk(a,s)&&a.add(e)}}stream(e=this.cwd,t={}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e,e=this.cwd);let{withFileTypes:i=!0,follow:r=!1,filter:n,walkFilter:s}=t,a=new tt({objectMode:!0});(!n||n(e))&&a.write(i?e:e.fullpath());let o=new Set,l=[e],u=0,d=()=>{let e=!1;for(;!e;){let t=l.shift();if(!t){0===u&&a.end();return}u++,o.add(t);let c=(t,f,p=!1)=>{if(t)return a.emit("error",t);if(r&&!p){let e=[];for(let t of f)t.isSymbolicLink()&&e.push(t.realpath().then(e=>e?.isUnknown()?e.lstat():e));if(e.length)return void Promise.all(e).then(()=>c(null,f,!0))}for(let t of f)t&&(!n||n(t))&&(a.write(i?t:t.fullpath())||(e=!0));for(let e of(u--,f)){let t=e.realpathCached()||e;t.shouldWalk(o,s)&&l.push(t)}e&&!a.flowing?a.once("drain",d):h||d()},h=!0;t.readdirCB(c,!0),h=!1}};return d(),a}streamSync(e=this.cwd,t={}){"string"==typeof e?e=this.cwd.resolve(e):e instanceof tm||(t=e,e=this.cwd);let{withFileTypes:i=!0,follow:r=!1,filter:n,walkFilter:s}=t,a=new tt({objectMode:!0}),o=new Set;(!n||n(e))&&a.write(i?e:e.fullpath());let l=[e],u=0,d=()=>{let e=!1;for(;!e;){let t=l.shift();if(!t){0===u&&a.end();return}u++,o.add(t);let d=t.readdirSync();for(let t of d)(!n||n(t))&&(a.write(i?t:t.fullpath())||(e=!0));for(let e of(u--,d)){let t=e;if(e.isSymbolicLink()){if(!(r&&(t=e.realpathSync())))continue;t.isUnknown()&&t.lstatSync()}t.shouldWalk(o,s)&&l.push(t)}}e&&!a.flowing&&a.once("drain",d)};return d(),a}chdir(e=this.cwd){let t=this.cwd;this.cwd="string"==typeof e?this.cwd.resolve(e):e,this.cwd[tp](t)}},tb=class extends ty{sep="\\";constructor(e=process.cwd(),t={}){let{nocase:r=!0}=t;super(e,i.win32,"\\",{...t,nocase:r}),this.nocase=r;for(let e=this.cwd;e;e=e.parent)e.nocase=this.nocase}parseRootPath(e){return i.win32.parse(e).root.toUpperCase()}newRoot(e){return new tg(this.rootPath,4,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}},tv=class extends ty{sep="/";constructor(e=process.cwd(),t={}){let{nocase:r=!1}=t;super(e,i.posix,"/",{...t,nocase:r}),this.nocase=r}parseRootPath(e){return"/"}newRoot(e){return new tw(this.rootPath,4,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}},tE=class extends tv{constructor(e=process.cwd(),t={}){let{nocase:i=!0}=t;super(e,{...t,nocase:i})}},tS=Symbol.for("nodejs.util.inspect.custom"),t_=class e{#e;#t;#i;length;#r;#n;#s;#a;#o;#l;#u=!0;constructor(e,t,i,r){if(!(e=>e.length>=1)(e))throw TypeError("empty pattern list");if(!(e=>e.length>=1)(t))throw TypeError("empty glob list");if(t.length!==e.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,i<0||i>=this.length)throw TypeError("index out of range");if(this.#e=e,this.#t=t,this.#i=i,this.#r=r,0===this.#i){if(this.isUNC()){let[e,t,i,r,...n]=this.#e,[s,a,o,l,...u]=this.#t;""===n[0]&&(n.shift(),u.shift());let d=[e,t,i,r,""].join("/"),c=[s,a,o,l,""].join("/");this.#e=[d,...n],this.#t=[c,...u],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[e,...t]=this.#e,[i,...r]=this.#t;""===t[0]&&(t.shift(),r.shift()),this.#e=[e+"/",...t],this.#t=[i+"/",...r],this.length=this.#e.length}}}[tS](){return"Pattern <"+this.#t.slice(this.#i).join("/")+">"}pattern(){return this.#e[this.#i]}isString(){return"string"==typeof this.#e[this.#i]}isGlobstar(){return this.#e[this.#i]===ed}isRegExp(){return this.#e[this.#i]instanceof RegExp}globString(){return this.#s=this.#s||(0===this.#i?this.isAbsolute()?this.#t[0]+this.#t.slice(1).join("/"):this.#t.join("/"):this.#t.slice(this.#i).join("/"))}hasMore(){return this.length>this.#i+1}rest(){return void 0!==this.#n?this.#n:this.hasMore()?(this.#n=new e(this.#e,this.#t,this.#i+1,this.#r),this.#n.#l=this.#l,this.#n.#o=this.#o,this.#n.#a=this.#a,this.#n):this.#n=null}isUNC(){let e=this.#e;return void 0!==this.#o?this.#o:this.#o="win32"===this.#r&&0===this.#i&&""===e[0]&&""===e[1]&&"string"==typeof e[2]&&!!e[2]&&"string"==typeof e[3]&&!!e[3]}isDrive(){let e=this.#e;return void 0!==this.#a?this.#a:this.#a="win32"===this.#r&&0===this.#i&&this.length>1&&"string"==typeof e[0]&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#e;return void 0!==this.#l?this.#l:this.#l=""===e[0]&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#e[0];return"string"==typeof e&&this.isAbsolute()&&0===this.#i?e:""}checkFollowGlobstar(){return!(0===this.#i||!this.isGlobstar()||!this.#u)}markFollowGlobstar(){return 0!==this.#i&&!!this.isGlobstar()&&!!this.#u&&(this.#u=!1,!0)}},tk="object"==typeof process&&process&&"string"==typeof process.platform?process.platform:"linux",tx=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:t,nocase:i,noext:r,noglobstar:n,platform:s=tk}){for(let a of(this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=s,this.mmopts={dot:!0,nobrace:t,nocase:i,noext:r,noglobstar:n,optimizationLevel:2,platform:s,nocomment:!0,nonegate:!0},e))this.add(a)}add(e){let t=new ep(e,this.mmopts);for(let e=0;e<t.set.length;e++){let i=t.set[e],r=t.globParts[e];if(!i||!r)throw Error("invalid pattern object");for(;"."===i[0]&&"."===r[0];)i.shift(),r.shift();let n=new t_(i,r,0,this.platform),s=new ep(n.globString(),this.mmopts),a="**"===r[r.length-1],o=n.isAbsolute();o?this.absolute.push(s):this.relative.push(s),a&&(o?this.absoluteChildren.push(s):this.relativeChildren.push(s))}}ignored(e){let t=e.fullpath(),i=`${t}/`,r=e.relative()||".",n=`${r}/`;for(let e of this.relative)if(e.match(r)||e.match(n))return!0;for(let e of this.absolute)if(e.match(t)||e.match(i))return!0;return!1}childrenIgnored(e){let t=e.fullpath()+"/",i=(e.relative()||".")+"/";for(let e of this.relativeChildren)if(e.match(i))return!0;for(let e of this.absoluteChildren)if(e.match(t))return!0;return!1}},t$=class e{store;constructor(e=new Map){this.store=e}copy(){return new e(new Map(this.store))}hasWalked(e,t){return this.store.get(e.fullpath())?.has(t.globString())}storeWalked(e,t){let i=e.fullpath(),r=this.store.get(i);r?r.add(t.globString()):this.store.set(i,new Set([t.globString()]))}},tR=class{store=new Map;add(e,t,i){let r=2*!!t|!!i,n=this.store.get(e);this.store.set(e,void 0===n?r:r&n)}entries(){return[...this.store.entries()].map(([e,t])=>[e,!!(2&t),!!(1&t)])}},tO=class{store=new Map;add(e,t){if(!e.canReaddir())return;let i=this.store.get(e);i?i.find(e=>e.globString()===t.globString())||i.push(t):this.store.set(e,[t])}get(e){let t=this.store.get(e);if(!t)throw Error("attempting to walk unknown path");return t}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return[...this.store.keys()].filter(e=>e.canReaddir())}},tj=class e{hasWalkedCache;matches=new tR;subwalks=new tO;patterns;follow;dot;opts;constructor(e,t){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=t?t.copy():new t$}processPatterns(e,t){for(let[i,r]of(this.patterns=t,t.map(t=>[e,t]))){this.hasWalkedCache.storeWalked(i,r);let e=r.root(),t=r.isAbsolute()&&!1!==this.opts.absolute;if(e){i=i.resolve("/"===e&&void 0!==this.opts.root?this.opts.root:e);let t=r.rest();if(t)r=t;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let n,s,a=!1;for(;"string"==typeof(n=r.pattern())&&(s=r.rest());)i=i.resolve(n),r=s,a=!0;if(n=r.pattern(),s=r.rest(),a){if(this.hasWalkedCache.hasWalked(i,r))continue;this.hasWalkedCache.storeWalked(i,r)}if("string"==typeof n){let e=".."===n||""===n||"."===n;this.matches.add(i.resolve(n),t,e);continue}if(n===ed){(!i.isSymbolicLink()||this.follow||r.checkFollowGlobstar())&&this.subwalks.add(i,r);let e=s?.pattern(),n=s?.rest();if(s&&(""!==e&&"."!==e||n)){if(".."===e){let e=i.parent||i;n?this.hasWalkedCache.hasWalked(e,n)||this.subwalks.add(e,n):this.matches.add(e,t,!0)}}else this.matches.add(i,t,""===e||"."===e)}else n instanceof RegExp&&this.subwalks.add(i,r)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new e(this.opts,this.hasWalkedCache)}filterEntries(e,t){let i=this.subwalks.get(e),r=this.child();for(let e of t)for(let t of i){let i=t.isAbsolute(),n=t.pattern(),s=t.rest();n===ed?r.testGlobstar(e,t,s,i):n instanceof RegExp?r.testRegExp(e,n,s,i):r.testString(e,n,s,i)}return r}testGlobstar(e,t,i,r){if((this.dot||!e.name.startsWith("."))&&(t.hasMore()||this.matches.add(e,r,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,t):e.isSymbolicLink()&&(i&&t.checkFollowGlobstar()?this.subwalks.add(e,i):t.markFollowGlobstar()&&this.subwalks.add(e,t)))),i){let t=i.pattern();if("string"==typeof t&&".."!==t&&""!==t&&"."!==t)this.testString(e,t,i.rest(),r);else if(".."===t){let t=e.parent||e;this.subwalks.add(t,i)}else t instanceof RegExp&&this.testRegExp(e,t,i.rest(),r)}}testRegExp(e,t,i,r){t.test(e.name)&&(i?this.subwalks.add(e,i):this.matches.add(e,r,!1))}testString(e,t,i,r){e.isNamed(t)&&(i?this.subwalks.add(e,i):this.matches.add(e,r,!1))}},tA=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#t;#i;signal;maxDepth;includeChildMatches;constructor(e,t,i){if(this.patterns=e,this.path=t,this.opts=i,this.#i=i.posix||"win32"!==i.platform?"/":"\\",this.includeChildMatches=!1!==i.includeChildMatches,(i.ignore||!this.includeChildMatches)&&(this.#t=((e,t)=>"string"==typeof e?new tx([e],t):Array.isArray(e)?new tx(e,t):e)(i.ignore??[],i),!this.includeChildMatches&&"function"!=typeof this.#t.add))throw Error("cannot ignore child matches, ignore lacks add() method.");this.maxDepth=i.maxDepth||1/0,i.signal&&(this.signal=i.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#r(e){return this.seen.has(e)||!!this.#t?.ignored?.(e)}#n(e){return!!this.#t?.childrenIgnored?.(e)}pause(){this.paused=!0}resume(){let e;if(!this.signal?.aborted)for(this.paused=!1;!this.paused&&(e=this.#e.shift());)e()}onResume(e){this.signal?.aborted||(this.paused?this.#e.push(e):e())}async matchCheck(e,t){let i;if(t&&this.opts.nodir)return;if(this.opts.realpath){if(!(i=e.realpathCached()||await e.realpath()))return;e=i}let r=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&r?.isSymbolicLink()){let e=await r.realpath();e&&(e.isUnknown()||this.opts.stat)&&await e.lstat()}return this.matchCheckTest(r,t)}matchCheckTest(e,t){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!t||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#r(e)?e:void 0}matchCheckSync(e,t){let i;if(t&&this.opts.nodir)return;if(this.opts.realpath){if(!(i=e.realpathCached()||e.realpathSync()))return;e=i}let r=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&r?.isSymbolicLink()){let e=r.realpathSync();e&&(e?.isUnknown()||this.opts.stat)&&e.lstatSync()}return this.matchCheckTest(r,t)}matchFinish(e,t){if(this.#r(e))return;if(!this.includeChildMatches&&this.#t?.add){let t=`${e.relativePosix()}/**`;this.#t.add(t)}let i=void 0===this.opts.absolute?t:this.opts.absolute;this.seen.add(e);let r=this.opts.mark&&e.isDirectory()?this.#i:"";if(this.opts.withFileTypes)this.matchEmit(e);else if(i){let t=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(t+r)}else{let t=this.opts.posix?e.relativePosix():e.relative(),i=this.opts.dotRelative&&!t.startsWith(".."+this.#i)?"."+this.#i:"";this.matchEmit(t?i+t+r:"."+r)}}async match(e,t,i){let r=await this.matchCheck(e,i);r&&this.matchFinish(r,t)}matchSync(e,t,i){let r=this.matchCheckSync(e,i);r&&this.matchFinish(r,t)}walkCB(e,t,i){this.signal?.aborted&&i(),this.walkCB2(e,t,new tj(this.opts),i)}walkCB2(e,t,i,r){if(this.#n(e))return r();if(this.signal?.aborted&&r(),this.paused)return void this.onResume(()=>this.walkCB2(e,t,i,r));i.processPatterns(e,t);let n=1,s=()=>{0==--n&&r()};for(let[e,t,r]of i.matches.entries())this.#r(e)||(n++,this.match(e,t,r).then(()=>s()));for(let e of i.subwalkTargets()){if(this.maxDepth!==1/0&&e.depth()>=this.maxDepth)continue;n++;let t=e.readdirCached();e.calledReaddir()?this.walkCB3(e,t,i,s):e.readdirCB((t,r)=>this.walkCB3(e,r,i,s),!0)}s()}walkCB3(e,t,i,r){i=i.filterEntries(e,t);let n=1,s=()=>{0==--n&&r()};for(let[e,t,r]of i.matches.entries())this.#r(e)||(n++,this.match(e,t,r).then(()=>s()));for(let[e,t]of i.subwalks.entries())n++,this.walkCB2(e,t,i.child(),s);s()}walkCBSync(e,t,i){this.signal?.aborted&&i(),this.walkCB2Sync(e,t,new tj(this.opts),i)}walkCB2Sync(e,t,i,r){if(this.#n(e))return r();if(this.signal?.aborted&&r(),this.paused)return void this.onResume(()=>this.walkCB2Sync(e,t,i,r));i.processPatterns(e,t);let n=1,s=()=>{0==--n&&r()};for(let[e,t,r]of i.matches.entries())this.#r(e)||this.matchSync(e,t,r);for(let e of i.subwalkTargets()){if(this.maxDepth!==1/0&&e.depth()>=this.maxDepth)continue;n++;let t=e.readdirSync();this.walkCB3Sync(e,t,i,s)}s()}walkCB3Sync(e,t,i,r){i=i.filterEntries(e,t);let n=1,s=()=>{0==--n&&r()};for(let[e,t,r]of i.matches.entries())this.#r(e)||this.matchSync(e,t,r);for(let[e,t]of i.subwalks.entries())n++,this.walkCB2Sync(e,t,i.child(),s);s()}},tP=class extends tA{matches=new Set;constructor(e,t,i){super(e,t,i)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((e,t)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?t(this.signal.reason):e(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},tT=class extends tA{results;constructor(e,t,i){super(e,t,i),this.results=new tt({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(e){this.results.write(e),this.results.flowing||this.pause()}stream(){let e=this.path;return e.isUnknown()?e.lstat().then(()=>{this.walkCB(e,this.patterns,()=>this.results.end())}):this.walkCB(e,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}},tC="object"==typeof process&&process&&"string"==typeof process.platform?process.platform:"linux",tD=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,i){if(!i)throw TypeError("glob options required");if(this.withFileTypes=!!i.withFileTypes,this.signal=i.signal,this.follow=!!i.follow,this.dot=!!i.dot,this.dotRelative=!!i.dotRelative,this.nodir=!!i.nodir,this.mark=!!i.mark,i.cwd?(i.cwd instanceof URL||i.cwd.startsWith("file://"))&&(i.cwd=(0,t.fileURLToPath)(i.cwd)):this.cwd="",this.cwd=i.cwd||"",this.root=i.root,this.magicalBraces=!!i.magicalBraces,this.nobrace=!!i.nobrace,this.noext=!!i.noext,this.realpath=!!i.realpath,this.absolute=i.absolute,this.includeChildMatches=!1!==i.includeChildMatches,this.noglobstar=!!i.noglobstar,this.matchBase=!!i.matchBase,this.maxDepth="number"==typeof i.maxDepth?i.maxDepth:1/0,this.stat=!!i.stat,this.ignore=i.ignore,this.withFileTypes&&void 0!==this.absolute)throw Error("cannot set absolute and withFileTypes:true");if("string"==typeof e&&(e=[e]),this.windowsPathsNoEscape=!!i.windowsPathsNoEscape||!1===i.allowWindowsEscape,this.windowsPathsNoEscape&&(e=e.map(e=>e.replace(/\\/g,"/"))),this.matchBase){if(i.noglobstar)throw TypeError("base matching requires globstar");e=e.map(e=>e.includes("/")?e:`./**/${e}`)}if(this.pattern=e,this.platform=i.platform||tC,this.opts={...i,platform:this.platform},i.scurry){if(this.scurry=i.scurry,void 0!==i.nocase&&i.nocase!==i.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let e="win32"===i.platform?tb:"darwin"===i.platform?tE:(i.platform,tv);this.scurry=new e(this.cwd,{nocase:i.nocase,fs:i.fs})}this.nocase=this.scurry.nocase;let r="darwin"===this.platform||"win32"===this.platform,n={braceExpandMax:1e4,...i,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:r,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},[s,a]=this.pattern.map(e=>new ep(e,n)).reduce((e,t)=>(e[0].push(...t.set),e[1].push(...t.globParts),e),[[],[]]);this.patterns=s.map((e,t)=>{let i=a[t];if(!i)throw Error("invalid pattern object");return new t_(e,i,0,this.platform)})}async walk(){return[...await new tP(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new tP(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new tT(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new tT(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};function tN(e,t={}){return new tD(e,t).streamSync()}function tI(e,t={}){return new tD(e,t).stream()}function tM(e,t={}){return new tD(e,t).walkSync()}async function tL(e,t={}){return new tD(e,t).walk()}function tF(e,t={}){return new tD(e,t).iterateSync()}function tW(e,t={}){return new tD(e,t).iterate()}var tU=Object.assign(tI,{sync:tN}),tz=Object.assign(tW,{sync:tF}),tB=Object.assign(tM,{stream:tN,iterate:tF}),tG=Object.assign(tL,{glob:tL,globSync:tM,sync:tB,globStream:tI,stream:tU,globStreamSync:tN,streamSync:tN,globIterate:tW,iterate:tz,globIterateSync:tF,iterateSync:tF,Glob:tD,hasMagic:(e,t={})=>{for(let i of(Array.isArray(e)||(e=[e]),e))if(new ep(i,t).hasMagic())return!0;return!1},escape:V,unescape:M});tG.glob=tG,e.s(["glob",0,tG],845285),e.s(["applyEdits",0,function(e,t){let i=e;for(let[e,r]of t.entries()){if("string"!=typeof r?.old_string||"string"!=typeof r?.new_string)return{error:`Edit ${e+1}: old_string and new_string must be strings`};if(""===r.old_string){if(""!==i)return{error:`Edit ${e+1}: empty old_string is only allowed for a new, empty doc`};i=r.new_string;continue}let t=i.indexOf(r.old_string);if(-1===t)return{error:`Edit ${e+1}: old_string not found in the doc`};if(-1!==i.indexOf(r.old_string,t+1))return{error:`Edit ${e+1}: old_string matches more than once; include more surrounding text`};i=i.slice(0,t)+r.new_string+i.slice(t+r.old_string.length)}return{content:i}}],471448);let tX=/\b(shipped|done|released|complete[d]?)\b/i;function tH(e){return e.replace(/\[([^\]]+)\]\([^)]*\)/g,"$1").replace(/[*_`]/g,"").replace(/\s+/g," ").trim()}function tq(e){return e.length>80?`${e.slice(0,79).trimEnd()}…`:e}function tY(e){return e.length&&e.every(e=>"done"===e)?"done":e.some(e=>"planned"!==e)?"in-progress":"planned"}let tV=e=>{let t=parseFloat(e);return Number.isFinite(t)?t:1/0};e.s(["roadmapFromMarkdown",0,function(e){let t=[],i=null,r=[],n=null,s=0,a=()=>{if(i&&s>0){i.body=r.join(" ").trim();let e=t.filter(e=>e.parent===i?.key).map(e=>e.status);"done"!==i.status&&(i.status=tY(e))}else i&&t.splice(t.indexOf(i),1);i=null,n=null,r=[],s=0};for(let o of e.split("\n")){let e=o.match(/^##\s+(.+?)\s*#*\s*$/);if(e){a();let r=tq(tH(e[1]));i={key:`h${t.length}`,title:r,parent:null,status:tX.test(r)?"done":"planned",tasks:[],body:""},t.push(i);continue}if(!i)continue;if(/^#/.test(o)){a();continue}let l=o.match(/^[-*]\s+(?:\[([ xX])\]\s+)?(.*)$/);if(l){let e=l[2],r=e.match(/^\*\*(.+?)\*\*\s*(?:[—–:-]\s*)?(.*)$/),a=tq(tH(r?r[1]:e));if(!a)continue;let o=l[1]?"x"===l[1].toLowerCase()?"done":"planned":"done"===i.status?"done":"planned";n={key:`f${t.length}`,title:a,parent:i.key,status:o,tasks:[],body:r?r[2].trim():""},t.push(n),s++;continue}let u=o.match(/^\s+(\S.*)$/);n&&u?n.body=[n.body,u[1].replace(/^[-*]\s+/,"- ")].filter(Boolean).join("\n"):!n&&o.trim()&&!/^-{3,}$/.test(o.trim())&&r.push(o.trim())}return a(),t},"roadmapFromTasks",0,function(e){let t=new Map;for(let i of e){if("cancelled"===i.status)continue;let e=tH(i.phase||"").replace(/^—$/,"")||"Unphased";t.set(e,[...t.get(e)??[],i])}let i=[...t.keys()].sort((e,t)=>tV(e)-tV(t)||e.localeCompare(t)),r=[];for(let e of i){let i=`h${r.length}`,n=(t.get(e)??[]).map(e=>({key:`f${e.id}`,title:tq(e.title),parent:i,status:"done"===e.status?"done":"in-progress"===e.status?"in-progress":"planned",tasks:[e.id],body:""}));r.push({key:i,title:tq(e),parent:null,status:tY(n.map(e=>e.status)),tasks:[],body:""},...n)}return r},"starterRoadmap",0,function(){let e=(e,t,i,r)=>({key:e,title:t,parent:null,status:i,tasks:[],body:r});return[e("shipped","Shipped","done","What is already live."),e("now","Now","planned","What we are building right now."),e("next","Next","planned","Planned once the current work ships."),e("later","Later","planned","Ideas — not committed.")]}],388985);let tJ=e=>"done"===e||"cancelled"===e;e.s(["pickNextTask",0,function(e,t){let i=new Map(t.map(e=>[e.id,e])),r=e.tasks.map(e=>i.get(e)).filter(e=>!!e),n=e=>[...new Set((e.dependsOn.match(/\bT\d+\b/gi)??[]).map(e=>e.toUpperCase()))].filter(e=>{let t=i.get(e);return!t||!tJ(t.status)});for(let e of r)if("todo"===e.status&&!n(e).length)return{kind:"ready",taskId:e.id};if(r.every(e=>tJ(e.status)))return{kind:"finished"};let s=new Set(e.tasks),a=new Map,o=e=>{if(a.has(e))return a.get(e)??!1;a.set(e,!1);let t=i.get(e),r=!!t&&"blocked"!==t.status&&"paused"!==t.status&&"review"!==t.status&&("todo"!==t.status||s.has(e)&&n(t).every(o));return a.set(e,r),r},l=[];for(let t of e.tasks){let e=i.get(t);if(e){if("in-progress"===e.status)l.push({taskId:t,reason:`${t} is in progress (claimed)`});else if("blocked"===e.status)l.push({taskId:t,reason:`${t} is blocked`});else if("paused"===e.status)l.push({taskId:t,reason:`${t} is paused — needs a human to resume it`});else if("review"===e.status)l.push({taskId:t,reason:`${t} in review — needs a human`});else if("todo"===e.status){let r=n(e).map(e=>`${e} (${i.get(e)?.status??"missing"})`);l.push({taskId:t,reason:`${t} waits on ${r.join(", ")}`})}}else l.push({taskId:t,reason:`${t} has no task file`})}return{kind:"waiting",waiting:l,needsHuman:l.every(e=>!o(e.taskId))}}],731946);let tZ=e=>!!e&&"object"==typeof e&&!Array.isArray(e),tK=e=>"string"==typeof e?e.trim():"";function tQ(e,t,i="is not an existing roadmap item"){let r=t.find(t=>t.id===e.toUpperCase());return r?null!==r.parent?{error:`parent ${r.id} is an epic, not a horizon (max depth is 2)`}:{id:r.id}:{error:`parent "${e}" ${i}`}}let t0=(e,t,i)=>e.find(e=>(e.parent??"")===t&&e.title.trim().toLowerCase()===i.toLowerCase())?.id,t1=["planned","in-progress","done"];e.s(["planTarget",0,function(e){return tK(e.epic)?tK(e.epic).toUpperCase():e.newEpic?`new epic "${tK(e.newEpic.title)}"`:"no epic"},"selectPlan",0,function(e,t){if("roadmap"===e.kind)return function(e,t){let i=[],r=e.horizons??[],n=e.epics??[],s=new Set(r.map(e=>e.key)),a=new Set([...s,...n.map(e=>e.key)]),o=new Set(t);for(let e of o)a.has(e)||i.push(`unknown key "${e}"`);let l=r.filter(e=>o.has(e.key)),u=n.filter(e=>o.has(e.key));for(let e of(l.length+u.length===0&&i.push("nothing selected"),u)){let t=e.parent.trim();s.has(t)&&!o.has(t)&&i.push(`${e.key} is under ${t}, which you unchecked; check ${t} or uncheck ${e.key}`)}return{plan:{...e,horizons:l,epics:u},errors:i}}(e,t);let i=[],r=new Set(e.tasks.map(e=>e.key.trim())),n=new Set(t.map(e=>e.trim()));for(let e of n)r.has(e)||i.push(`unknown key "${e}"`);let s=e.tasks.filter(e=>n.has(e.key.trim()));for(let e of(0===s.length&&i.push("nothing selected"),s))for(let t of(e.dependsOn??[]).map(e=>e.trim()))r.has(t)&&!n.has(t)&&i.push(`${e.key.trim()} depends on ${t}, which you unchecked`);return{plan:{...e,tasks:s},errors:i}},"validatePlan",0,function(e,t){if(!tZ(e))return["plan must be an object"];if("roadmap"===e.kind)return function(e,t){let i=[],r=e.horizons??[],n=e.epics??[];if(Array.isArray(r)||i.push("horizons must be an array"),Array.isArray(n)||i.push("epics must be an array"),i.length>0)return i;if(r.length+n.length===0)return["a roadmap plan needs at least one horizon or epic"];let s=new Set,a=new Set,o=(e,t,r)=>{let n=tZ(e)?tK(e.key):"";n?s.has(n)?i.push(`duplicate key "${n}"`):(s.add(n),r&&a.add(n)):i.push(`${t}: key is required`)};r.forEach((e,t)=>o(e,`horizon #${t+1}`,!0)),n.forEach((e,t)=>o(e,`epic #${t+1}`,!1));let l=new Map,u=(e,r,n)=>{let s=`${e}\0${r.toLowerCase()}`,a=t0(t.roadmap,e,r)??l.get(s);a?i.push(`${n}: "${r}" already exists ${e?`under ${e}`:"as a horizon"} (${a})`):l.set(s,n)};return r.forEach((e,t)=>{if(!tZ(e))return void i.push(`horizon #${t+1} must be an object`);let r=tK(e.key)||`horizon #${t+1}`,n=tK(e.title);n?u("",n,r):i.push(`${r}: title is required`),void 0!==e.body&&"string"!=typeof e.body&&i.push(`${r}: body must be a markdown string`)}),n.forEach((e,r)=>{if(!tZ(e))return void i.push(`epic #${r+1} must be an object`);let n=tK(e.key)||`epic #${r+1}`,o=tK(e.title);o||i.push(`${n}: title is required`),"string"!=typeof e.body&&i.push(`${n}: body must be a markdown string`),void 0===e.status||t1.includes(e.status)||i.push(`${n}: status must be one of ${t1.join(", ")} (got ${JSON.stringify(e.status)})`);let l=tK(e.parent),d="";if(l)if(a.has(l))d=l;else if(s.has(l))i.push(`${n}: parent "${l}" is an epic in this plan; an epic's parent must be a horizon`);else{let e=tQ(l,t.roadmap,"is neither a horizon key in this plan nor an existing roadmap item");"id"in e?d=e.id:i.push(`${n}: ${e.error}`)}else i.push(`${n}: parent is required (an existing horizon id or a horizon key in this plan)`);o&&d&&u(d,o,n)}),i}(e,t);if("breakdown"!==e.kind)return[`plan.kind must be "breakdown" or "roadmap" (got ${JSON.stringify(e.kind)})`];let i=[],r=tK(e.epic).toUpperCase();if(void 0!==e.epic&&"string"!=typeof e.epic)i.push("epic must be a string (an epic id)");else if(r&&void 0!==e.newEpic)i.push("pass either epic (an existing epic) or newEpic, not both");else if(r){let n=t.roadmap.find(e=>e.id===r);n?n.parent||i.push(`${n.id} is a horizon, not an epic; pass an epic id`):i.push(`Epic ${JSON.stringify(e.epic)} not found`)}else if(void 0!==e.newEpic){let r=e.newEpic;if(tZ(r)){let e=tK(r.title),n=tK(r.parent);if(e||i.push("newEpic: title is required"),"string"!=typeof r.body&&i.push("newEpic: body must be a markdown string"),n){let r=tQ(n,t.roadmap);if("error"in r)i.push(`newEpic: ${r.error}`);else if(e){let n=t0(t.roadmap,r.id,e);n&&i.push(`newEpic: "${e}" already exists under ${r.id} (${n})`)}}else i.push("newEpic: parent is required (an existing horizon id)")}else i.push("newEpic must be an object { title, parent, body }")}if(!Array.isArray(e.tasks)||0===e.tasks.length)return i.push("tasks must be a non-empty array"),i;let n=e.tasks,s=new Set(t.taskIds.map(e=>e.toUpperCase())),a=new Map;n.forEach((e,t)=>{let r=tZ(e)?tK(e.key):"";r?a.has(r)?i.push(`duplicate key "${r}"`):a.set(r,t):i.push(`task #${t+1}: key is required`)});let o=new Map;n.forEach((e,t)=>{var r;let n;if(!tZ(e))return void i.push(`task #${t+1} must be an object`);let l=tK(e.key)||`task #${t+1}`;if(tK(e.title)||i.push(`${l}: title is required`),"string"!=typeof e.body&&i.push(`${l}: body must be a markdown string`),void 0!==e.size&&"string"!=typeof e.size&&i.push(`${l}: size must be a string`),void 0===e.due||"string"==typeof e.due&&(n=(r=e.due).match(/^(\d{4})-(\d{2})-(\d{2})$/))&&new Date(Date.UTC(+n[1],n[2]-1,+n[3])).toISOString().slice(0,10)===r||i.push(`${l}: due must be a date YYYY-MM-DD (got ${JSON.stringify(e.due)})`),void 0===e.dependsOn)return;if(!Array.isArray(e.dependsOn))return void i.push(`${l}: dependsOn must be an array`);let u=[];for(let t of e.dependsOn){let e=tK(t);a.has(e)?u.push(e):s.has(e.toUpperCase())||i.push(`${l}: dependsOn "${String(t)}" is neither a key in this plan nor an existing task`)}tK(e.key)&&o.set(tK(e.key),u)});let l=new Map,u=new Set,d=(e,t)=>{if("done"!==l.get(e)){if("open"===l.get(e)){let r=[...t.slice(t.indexOf(e)),e];r.some(e=>u.has(e))||i.push(`dependency cycle: ${r.join(" → ")}`),r.forEach(e=>u.add(e));return}for(let i of(l.set(e,"open"),o.get(e)??[]))d(i,[...t,e]);l.set(e,"done")}};for(let e of o.keys())d(e,[]);for(let[e,t]of o)if(!u.has(e))for(let r of t)(a.get(r)??0)>(a.get(e)??0)&&i.push(`${e} depends on ${r}, which comes later; list ${r} first`);return i}],975283);let t2=(e,t)=>`${e} ${t}${1===e?"":"s"}`;e.s(["SESSION_GAP_MS",0,18e5,"groupSessions",0,function(e,t={}){let i=t.gapMs??18e5,r=[...e].sort((e,t)=>e.timestamp.localeCompare(t.timestamp)),n=new Map,s=new Map;for(let e of r){let t=e.sessionId;if(!t){let r=Date.parse(e.timestamp),n=s.get(e.actor);(!n||"session_start"===e.type||r-n.lastAt>i)&&(n={id:`legacy_${e.id}`,lastAt:r},s.set(e.actor,n)),n.lastAt=r,t=n.id}let r=n.get(t);r?r.push(e):n.set(t,[e])}return[...n].map(([e,t])=>(function(e,t){let i=new Map,r=new Set,n=[],s=!1,a=0;for(let e of t){"task_updated"===e.type&&e.taskId&&e.taskStatus&&i.set(e.taskId,e.taskStatus);let t=function(e){switch(e.type){case"doc_created":return e.detail??e.title.replace(/^Created: /,"");case"doc_deleted":return e.title.replace(/^Deleted /,"");case"doc_renamed":return e.title.split(" → ")[1]??null;default:return null}}(e);t&&r.add(t),"decision_logged"===e.type&&n.push(e.title),"memory_updated"===e.type&&(s=!0),"roadmap_updated"===e.type&&a++}let o=[...i].map(([e,t])=>({id:e,lastStatus:t})),l=o.filter(e=>"done"===e.lastStatus).length,u=[o.length?`${t2(o.length,"task")} moved${l?` (${l} done)`:""}`:"",r.size?`${t2(r.size,"doc")} changed`:"",n.length?t2(n.length,"ADR"):"",a?t2(a,"roadmap edit"):"",s?"memory updated":""].filter(Boolean);return{id:e,actor:t[0].actor,start:t[0].timestamp,end:t[t.length-1].timestamp,eventCount:t.length,eventIds:t.map(e=>e.id),tasks:o,docs:[...r],decisions:n,memoryUpdated:s,headline:u.join(" · ")||t2(t.length,"event")}})(e,t)).sort((e,t)=>t.start.localeCompare(e.start))},"sessionDuration",0,function(e){let t=Math.round((Date.parse(e.end)-Date.parse(e.start))/6e4);return t<1?"<1m":t<60?`${t}m`:`${Math.floor(t/60)}h ${t%60}m`},"sessionsForTask",0,function(e,t){return e.filter(e=>e.tasks.some(e=>e.id===t))}],31451);let t3="## Manual tests",t4=/^\s*[-*]\s+\[( |x|X)\]\s+(.*)$/,t8=/^\s*[-*]\s+(.*)$/;function t6(e){let t,i=(t=!1,e.map(e=>/^\s*```/.test(e)?(t=!t,!0):t)),r=e.findIndex((e,t)=>!i[t]&&e.trim()===t3);if(r<0)return null;let n=e.findIndex((e,t)=>t>r&&!i[t]&&/^##\s/.test(e));return[r,n<0?e.length:n]}e.s(["parseManualTests",0,function(e){let t=e.split("\n"),i=t6(t);if(!i)return null;let r=[],n="steps",s=null;for(let e of t.slice(i[0]+1,i[1])){let t=e.match(/^_(\d{4}-\d{2}-\d{2})\b/);if(t&&!s&&!r.length){s=t[1];continue}if(/^\s*###\s/.test(e)){n=/^\s*###\s+regression/i.test(e)?"regression":"steps";continue}let i=e.match(t4);i&&r.push({text:i[2].trim(),checked:" "!==i[1],group:n,index:r.length})}return r.length?{items:r,total:r.length,done:r.filter(e=>e.checked).length,date:s}:null},"setManualTests",0,function(e,t,i,r){let n=function(e){let t=[];for(let i of e.replace(/\r\n/g,"\n").split("\n")){let e=i.trimEnd();if(!e.trim())continue;if(/^\s*###\s/.test(e)){t.push(e.trim());continue}if(/^\s*##?\s/.test(e))continue;let r=e.match(t4),n=r?r[2]:e.match(t8)?.[1]??e.trim();t.some(e=>e.startsWith("### "))||t.push("### Steps"),t.push(`- [${r&&" "!==r[1]?"x":" "}] ${n.trim()}`)}return t.join("\n")}(t);if(!n)throw Error("manualTests is empty: give at least one checklist item");let s=e.split("\n"),a=t6(s),o=(a?[...s.slice(0,a[0]),...s.slice(a[1])]:s).join("\n").replace(/\s+$/,"");return`${o}
4
+
5
+ ${t3}
6
+ _${r} — ${i}_
7
+ ${n}
8
+ `},"toggleManualTest",0,function(e,t,i){let r=e.split("\n"),n=t6(r);if(!n)throw RangeError("This task has no manual tests");let s=0;for(let e=n[0]+1;e<n[1];e++)if(t4.test(r[e])&&s++===t)return r[e]=r[e].replace(/\[( |x|X)\]/,i?"[x]":"[ ]"),r.join("\n");throw RangeError(`No manual test item ${t} (the task has ${s})`)}],5704);let t5="## Review",t7=/^###\s+(\S+)\s+—\s+(approved|changes requested)\s*$/;function t9(e){let t,i=(t=!1,e.map(e=>/^\s*```/.test(e)?(t=!t,!0):t)),r=e.findIndex((e,t)=>!i[t]&&e.trim()===t5);if(r<0)return null;let n=e.findIndex((e,t)=>t>r&&!i[t]&&/^##\s/.test(e));return[r,n<0?e.length:n]}e.s(["appendReviewEntry",0,function(e,t,i,r){let n=i.trim();if("changes requested"===t&&!n)throw Error("A note is required to send a task back");let s=n.split("\n").map(e=>/^#{1,3}\s/.test(e)?`\\${e}`:e).join("\n"),a=[`### ${r} — ${t}`,...s?[s]:[]],o=e.split("\n"),l=t9(o);if(!l)return`${e.replace(/\s+$/,"")}
9
+
10
+ ${t5}
11
+ ${a.join("\n")}
12
+ `;let u=l[1];for(;u>l[0]+1&&!o[u-1].trim();)u--;let d=[...o.slice(0,u),...a,...o.slice(u)].join("\n");return l[1]===o.length?`${d.replace(/\s+$/,"")}
13
+ `:d},"latestReview",0,function(e){let t=function(e){let t=e.split("\n"),i=t9(t);if(!i)return[];let r=[];for(let e of t.slice(i[0]+1,i[1])){let t=e.match(t7);if(t)r.push({at:t[1],outcome:t[2],note:""});else if(r.length){let t=r[r.length-1];t.note=t.note?`${t.note}
14
+ ${e}`:e}}return r.map(e=>({...e,note:e.note.trim()}))}(e);return t[t.length-1]??null}],531208);let ie=["claude","cursor","codex","copilot","gemini","windsurf","cline","opencode"];e.s(["agentFromUserAgent",0,function(e){let t=(e??"").toLowerCase();return ie.find(e=>t.includes(e))??"agent"},"parseOwner",0,function(e){let t=(e??"").trim().toLowerCase();if("human"===t)return"human";let i=t.match(/^ai(?::\s*([a-z0-9._-]+))?$/);return i?`ai:${i[1]??"agent"}`:null}],840980);let it={XS:1,S:1,M:3,L:7,XL:14};e.s(["DEFAULT_SIZE_DAYS",0,it,"datesOnMove",0,function(e,t,i,r,n=it){let s={...t};if("in-progress"===e){s.started??=r;let e=n[i.trim().match(/^(XS|XL|S|M|L)\b/i)?.[1].toUpperCase()??null??""];!s.due&&"number"==typeof e&&e>=0&&(s.due=function(e,t){let[i,r,n]=e.split("-").map(Number);return new Date(Date.UTC(i,r-1,n+t)).toISOString().slice(0,10)}(s.started,e))}return"done"===e?s.done=r:s.done&&(s.done=null),s}],806723);let ii=["todo","in-progress","review","blocked","paused","done","cancelled"],ir={todo:"📋","in-progress":"🔨",review:"👀",blocked:"🚫",paused:"⏸️",done:"✅",cancelled:"❌"},is={ready:"todo",planned:"todo","not started":"todo",wip:"in-progress",doing:"in-progress",active:"in-progress",start:"in-progress",started:"in-progress",complete:"done",completed:"done",finished:"done",finish:"done",block:"blocked","on hold":"paused","on-hold":"paused",pause:"paused",hold:"paused","in review":"review",reviewing:"review","needs review":"review",cancel:"cancelled",skip:"cancelled"},ia=["gray","amber","accent","red","slate","teal","blue","pink","green","orange"],io=[{id:"todo",label:"Todo",color:"gray",category:"todo"},{id:"in-progress",label:"In progress",color:"amber",category:"in-progress"},{id:"review",label:"Review",color:"accent",category:"review"},{id:"blocked",label:"Blocked",color:"red",category:"blocked"},{id:"paused",label:"Paused",color:"slate",category:"paused"},{id:"done",label:"Done",color:"teal",category:"done"},{id:"cancelled",label:"Cancelled",color:"gray",category:"cancelled"}],il=e=>ii.includes(e);function iu(e,t=io){let i=e.toLowerCase().replace(/[📋🔨👀✅🚫❌⏸️]/g,"").trim(),r=is[i]??i;if(il(r))return{status:r};let n=t.find(e=>e.id===r||e.id===r.replace(/\s+/g,"-"));return n&&!il(n.id)?{status:n.category,customStatus:n.id}:{status:"todo",unknown:!0}}function id(e,t,i){let r;return e?"done"===t?"done":e<i?"overdue":7>=Math.round(((r=e=>Date.UTC(+e.slice(0,4),e.slice(5,7)-1,+e.slice(8,10)))(e)-r(i))/864e5)?"soon":"ok":null}function ic(e){return e.every(e=>"done"===e)?"done":e.some(e=>"other"!==e)?"in-progress":"planned"}e.s(["resolveStatus",0,iu,"statusDefs",0,function(e){if(!Array.isArray(e))return io;let t=[];for(let i of e){let e="string"==typeof i?.id?i.id.trim().toLowerCase():"";if(!e||t.some(t=>t.id===e))continue;let r=il(e),n=r?e:i?.category;if(!n||!il(n)||!r&&(/^[a-z0-9][a-z0-9-]{0,39}$/.test(e)?il(e)||e in is||e.replace(/-/g," ")in is?`"${e}" already means a built-in status`:null:"use lowercase letters, digits and dashes"))continue;let s=io.find(t=>t.id===(r?e:n));t.push({id:e,label:"string"==typeof i?.label&&i.label.trim()?i.label.trim():s?.label??e,color:ia.includes(i?.color)?i?.color:s?.color??"gray",category:n})}for(let e of io)t.some(t=>t.id===e.id)||t.push(e);return t},"statusLine",0,function(e,t=io){let{status:i,customStatus:r}=iu(e,t),n=r??i;return`${ir[i]} ${n.charAt(0).toUpperCase()}${n.slice(1)}`}],845122),e.s(["dueState",0,id,"localToday",0,function(e=new Date){let t=e=>String(e).padStart(2,"0");return`${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())}`},"roadmapHealth",0,function(e,t,i){let r={},n=[];for(let t of e)t.due&&"overdue"===id(t.due,t.status,i)&&n.push({id:t.id,kind:"overdue",message:`${t.id} "${t.title}" is overdue since ${t.due}`});let s=new Set(e.filter(e=>null===e.parent).map(e=>e.id));for(let s of e){if(null===s.parent)continue;let e=s.tasks.filter(e=>!(e in t));e.length&&n.push({id:s.id,kind:"missing-task",message:`${s.id} links unknown task ${e.join(", ")}`});let a=s.tasks.filter(e=>e in t&&"cancelled"!==t[e].status),o="done"===s.status||"paused"===s.status?[]:function(e,t,i,r){let n=[];for(let e of t){let t=i[e];"done"!==t.status&&t.due&&t.due<r&&n.push(`${e} overdue since ${t.due}`),"blocked"===t.status&&n.push(`${e} blocked`)}let s=t.some(e=>["done","in-progress","review"].includes(i[e].status));return e.due&&"soon"===id(e.due,e.status,r)&&!s&&n.push(`due ${e.due}, nothing started`),n}(s,a,t,i);if(o.length&&n.push({id:s.id,kind:"at-risk",message:`${s.id} "${s.title}" at risk: ${o.join("; ")}`}),!a.length)continue;let l=a.map(e=>"done"===t[e].status?"done":"in-progress"===t[e].status||"review"===t[e].status?"in-progress":"other");r[s.id]={done:l.filter(e=>"done"===e).length,total:a.length};let u=ic(l);if(u!==s.status&&("paused"!==s.status||"done"===u)){let e=a.filter(e=>"done"!==t[e].status);n.push({id:s.id,kind:"status-mismatch",message:"done"===u?`${s.id} "${s.title}": all tasks done but status is ${s.status}`:`${s.id} "${s.title}" is ${s.status} but tasks ${e.join(", ")} are not done`,suggestedStatus:u})}}for(let t of e){if(!s.has(t.id))continue;let i=e.filter(e=>e.parent===t.id);if(!i.length)continue;let a=i.map(e=>"done"===e.status?"done":"in-progress"===e.status?"in-progress":"other");r[t.id]=i.reduce((e,t)=>{let i=r[t.id]??{done:+("done"===t.status),total:1};return{done:e.done+i.done,total:e.total+i.total}},{done:0,total:0});let o=ic(a);o!==t.status&&("paused"!==t.status||"done"===o)&&n.push({id:t.id,kind:"status-mismatch",message:`${t.id} "${t.title}" is ${t.status} but its features say ${o}`,suggestedStatus:o})}return{progress:r,drift:n}}],404466);let ih=["P0","P1","P2","P3"],ip=/^---\r?\n([\s\S]*?)\r?\n?---[ \t]*(?:\r?\n|$)/,im=/^([A-Za-z][\w-]*):[ \t]*(.*?)[ \t]*$/;function ig(e){let t=(e??"").trim().replace(/^["']|["']$/g,"").toUpperCase();return ih.includes(t)?t:null}function iw(e){let t=ip.exec(e);return t?{inner:t[1],length:t[0].length}:null}e.s(["PRIORITIES",0,ih,"PROPERTY_KEY",0,/^[A-Za-z][\w-]{0,39}$/,"docPriority",0,function(e){let t;return ig((!(t=iw(e))?[]:t.inner.split(/\r?\n/).flatMap(e=>{var t;let i=im.exec(e);return i&&""!==i[2]?[{key:i[1],value:(t=i[2]).length>=2&&t.startsWith('"')&&t.endsWith('"')?t.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"):t.length>=2&&t.startsWith("'")&&t.endsWith("'")?t.slice(1,-1).replace(/''/g,"'"):t}]:[]})).find(e=>"priority"===e.key.toLowerCase())?.value)},"parsePriority",0,ig,"setDocProperty",0,function(e,t,i){var r;let n=iw(e),s=e.includes("\r\n")?"\r\n":"\n",a=null===i?null:`${t}: ${r=i.replace(/\s+/g," ").trim(),/^[\w][\w .,/()+-]*$/.test(r)&&!/^(true|false|null|yes|no|~)$/i.test(r)?r:`"${r.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`}`;if(!n)return a?`---${s}${a}${s}---${s}${s}${e}`:e;let o=n.inner.split(/\r?\n/).filter(e=>""!==e),l=o.findIndex(e=>im.exec(e)?.[1].toLowerCase()===t.toLowerCase());if(l>=0&&im.exec(o[l])?.[2]==="")throw Error(`"${t}" holds a list or map; edit it in the file`);l>=0?a?o[l]=a:o.splice(l,1):a&&o.push(a);let u=e.slice(n.length);return 0===o.length?u.replace(/^\r?\n/,""):`---${s}${o.join(s)}${s}---${s}${u}`}],483284)},730003,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={DynamicServerError:function(){return a},isDynamicServerError:function(){return o}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s="DYNAMIC_SERVER_USAGE";class a extends Error{constructor(e){super(`Dynamic server usage: ${e}`),this.description=e,this.digest=s}}function o(e){return"object"==typeof e&&null!==e&&"digest"in e&&"string"==typeof e.digest&&e.digest===s}("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},24511,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={StaticGenBailoutError:function(){return a},isStaticGenBailoutError:function(){return o}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s="NEXT_STATIC_GEN_BAILOUT";class a extends Error{constructor(...e){super(...e),this.code=s}}function o(e){return"object"==typeof e&&null!==e&&"code"in e&&e.code===s}("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},257548,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"InvariantError",{enumerable:!0,get:function(){return r}});class r extends Error{constructor(e,t){super(`Invariant: ${e.endsWith(".")?e:e+"."} This is a bug in Next.js.`,t),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1179",enumerable:!1,configurable:!0}),this.name="InvariantError"}}},253045,(e,t,i)=>{"use strict";function r(){let e,t,i=new Promise((i,r)=>{e=i,t=r});return{resolve:e,reject:t,promise:i}}Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"createPromiseWithResolvers",{enumerable:!0,get:function(){return r}})},703467,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r,n,s={RENDER_STAGE_ADVANCE_ORDER:function(){return d},RenderStage:function(){return u},StagedRenderingController:function(){return p},SyncIOMode:function(){return f},getNextStage:function(){return c},isAdvanceableRenderStage:function(){return h}};for(var a in s)Object.defineProperty(i,a,{enumerable:!0,get:s[a]});let o=e.r(257548),l=e.r(253045);var u=((r={})[r.Before=1]="Before",r[r.ShellStatic=11]="ShellStatic",r[r.Static=13]="Static",r[r.ShellRuntime=21]="ShellRuntime",r[r.Runtime=23]="Runtime",r[r.Dynamic=30]="Dynamic",r[r.Abandoned=40]="Abandoned",r);let d=[11,13,21,23,30];function c(e){return d[d.indexOf(e)+1]}function h(e){return 1<e&&e<=30}var f=((n={})[n.Untracked=1]="Untracked",n[n.AllowedInRuntimeOrDynamic=2]="AllowedInRuntimeOrDynamic",n[n.AllowedInDynamic=3]="AllowedInDynamic",n);class p{constructor({abortSignal:e,abandonController:t,syncIO:i,finalStage:r}){this.currentStage=1,this.syncInterruptReason=null,this.triggers={11:g(),13:g(),21:g(),23:g(),30:g()},this.abortSignal=e,this.abandonController=t,this.syncIOMode=i,this.finalStage=r,e&&e.addEventListener("abort",()=>{let{reason:t}=e;for(let e of Object.values(this.triggers)){var i,r;i=e,r=t,"pending"===i.state&&(i.state="cancelled",i._listeners.length=0,i.promise.catch(m),i._rejectPromise(r))}},{once:!0}),t&&t.signal.addEventListener("abort",()=>{this.abandonRender()},{once:!0})}onStage(e,t){var i,r;i=this.triggers[e],r=t,"pending"===i.state?i._listeners.push(r):r()}shouldTrackSyncInterrupt(){if(1===this.syncIOMode)return!1;switch(this.currentStage){case 1:return!1;case 11:case 13:return!0;case 21:case 23:switch(this.syncIOMode){case 2:return!1;case 3:return!0}case 30:case 40:return!1;default:return this.currentStage,!1}}syncInterruptCurrentStageWithReason(e){let{currentStage:t}=this;if(1!==t&&30!==t&&40!==t){if(this.abandonController)return void this.abandonController.abort();if(this.abortSignal){this.syncInterruptReason=e,this.currentStage=40;return}this.syncInterruptReason=e,this.advanceStage(30)}}getSyncInterruptReason(){return this.syncInterruptReason}getStageEndTime(e){return this.triggers[c(e)].triggeredAt??1/0}abandonRender(){let{currentStage:e}=this;if(1===e)throw Object.defineProperty(new o.InvariantError("A render that hasn't started yet cannot be abandoned"),"__NEXT_ERROR_CODE",{value:"E1300",enumerable:!1,configurable:!0});if(30===e||40===e)return;let t=d.indexOf(e)+1,i=d.indexOf(30);for(let e=t;e<i;e++)this.resolveStage(d[e]);this.currentStage=40}advanceStage(e){if(null!==this.finalStage&&e>this.finalStage)throw Object.defineProperty(new o.InvariantError(`Attempted to advance to stage ${u[e]} but the render is limited to ${u[this.finalStage]}`),"__NEXT_ERROR_CODE",{value:"E1302",enumerable:!1,configurable:!0});let{currentStage:t}=this;if(30===t||40===t||e<=t)return;this.currentStage=e;let i=1===t?0:d.indexOf(t)+1,r=d.indexOf(e);for(let e=i;e<=r;e++)this.resolveStage(d[e])}resolveStage(e){var t=this.triggers[e];if("pending"===t.state){t.state="triggered",t.triggeredAt=performance.now()+performance.timeOrigin;try{let{_listeners:e}=t;for(let t=0;t<e.length;t++)e[t]();e.length=0}finally{t._resolvePromise()}}}getStagePromise(e){return this.triggers[e].promise}waitForStage(e){return this.getStagePromise(e)}delayUntilStage(e,t,i){let r=this.getStagePromise(e).then(()=>i);return this.abortSignal&&r.catch(m),r}}function m(){}function g(){let{promise:e,resolve:t,reject:i}=(0,l.createPromiseWithResolvers)();return{state:"pending",triggeredAt:null,promise:e,_listeners:[],_resolvePromise:t,_rejectPromise:i}}},593281,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"after",{enumerable:!0,get:function(){return s}});let r=e.r(556704),n=e.r(832319);function s(e){let t=r.workAsyncStorage.getStore(),i=n.workUnitAsyncStorage.getStore();if(!t||!i)throw Object.defineProperty(Error("`after` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context"),"__NEXT_ERROR_CODE",{value:"E468",enumerable:!1,configurable:!0});let{afterContext:s}=t;return s.after(e,i)}},34023,(e,t,i)=>{"use strict";var r,n;Object.defineProperty(i,"__esModule",{value:!0}),r=e.r(593281),n=i,Object.keys(r).forEach(function(e){"default"===e||Object.prototype.hasOwnProperty.call(n,e)||Object.defineProperty(n,e,{enumerable:!0,get:function(){return r[e]}})})},962484,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={ClientHookDynamicError:function(){return d},RENDER_STAGES_BY_DATA_KIND:function(){return $},applyOwnerStack:function(){return R},isClientHookDynamicError:function(){return c},isHangingPromiseRejectionError:function(){return a},makeClientHookHangingPromise:function(){return E},makeDevtoolsIOAwarePromise:function(){return x},makeDynamicHangingPromise:function(){return f},makeFallbackParamsHangingPromise:function(){return g},makePromiseFromTrigger:function(){return k},makeRuntimeHangingPromise:function(){return m},makeStageHangingPromise:function(){return w},makeUntrackedHangingPromise:function(){return p},trackFallbackParamsAccessed:function(){return b},trackRuntimeDataAccessed:function(){return y}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s=e.r(703467);function a(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===o}e.r(832319),e.r(559043);let o="HANGING_PROMISE_REJECTION";class l extends Error{constructor(e,t){super(`During prerendering, ${t} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${t} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${e}".`),this.route=e,this.expression=t,this.digest=o}}let u="CLIENT_HOOK_DYNAMIC";class d extends Error{constructor(e,t){super(`Route "${e}": Next.js encountered URL data \`${t}\` in a Client Component outside of \`<Suspense>\`.
15
+
16
+ This blocks prerendering because the value is only available at runtime.
17
+
18
+ Ways to fix this:
19
+ - [stream] Wrap the component in \`<Suspense fallback={...}>\` so the hook value streams in after prerendering
20
+ - [block] Set \`export const instant = false\` to allow a blocking route
21
+
22
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-client-hook`),this.digest=u,Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1433",enumerable:!1,configurable:!0})}}function c(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===u}let h=new WeakMap;function f(e,t,i){return S(e,new l(t,i))}function p(e,t,i){return S(e,new l(t,i))}function m(e,t,i,r){return null!==r&&y(r),S(e,new l(t,i))}function g(e,t,i,r){return null!==r&&b(r),S(e,new l(t,i))}function w(e,t,i,r){return y(r),S(e,new l(t,i))}function y(e){v(e,!1)}function b(e){v(e,!0)}function v(e,t){if("prerender"===e.type){var i;null==(i=e.runtimeDataAccessed)||i.resolve(!0);let r=e.shouldAttemptStaticPrefetch;null===r||t&&e.isFallbackUpgradeable||(r.current=!1)}}function E(e,t){return S(e,t)}function S(e,t){if(e.aborted)return Promise.reject(t);{let i=new Promise((i,r)=>{let n=r.bind(null,t),s=h.get(e);if(s)s.push(n);else{let t=[n];h.set(e,t),e.addEventListener("abort",()=>{for(let e=0;e<t.length;e++)t[e]()},{once:!0})}});return i.catch(_),i}}function _(){}function k(e,t){let i=e.then(()=>t);return i.catch(_),i}function x(e,t,i){return t.stagedRendering?t.stagedRendering.delayUntilStage(i,void 0,e):new Promise(t=>{setTimeout(()=>{t(e)},0)})}let $={sessionData:s.RenderStage.ShellRuntime,staticLinkData:s.RenderStage.Static,runtimeLinkData:s.RenderStage.Runtime};function R(e){return e}},603623,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={METADATA_BOUNDARY_NAME:function(){return s},OUTLET_BOUNDARY_NAME:function(){return o},ROOT_LAYOUT_BOUNDARY_NAME:function(){return l},VIEWPORT_BOUNDARY_NAME:function(){return a}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s="__next_metadata_boundary__",a="__next_viewport_boundary__",o="__next_outlet_boundary__",l="__next_root_layout_boundary__"},149284,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={atLeastOneTask:function(){return o},scheduleImmediate:function(){return a},scheduleOnNextTick:function(){return s},waitAtLeastOneReactRenderTask:function(){return l}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s=e=>{Promise.resolve().then(()=>{process.nextTick(e)})},a=e=>{setImmediate(e)};function o(){return new Promise(e=>a(e))}function l(){return new Promise(e=>setImmediate(e))}},399674,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={BailoutToCSRError:function(){return a},isBailoutToCSRError:function(){return o}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s="BAILOUT_TO_CLIENT_SIDE_RENDERING";class a extends Error{constructor(e){super(`Bail out to client-side rendering: ${e}`),this.reason=e,this.digest=s}}function o(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===s}},806628,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={createDynamicBodyError:function(){return a},createDynamicBodyErrorInNavigation:function(){return u},createDynamicMetadataError:function(){return f},createDynamicOrRuntimeBodyError:function(){return d},createDynamicOrRuntimeMetadataError:function(){return y},createDynamicOrRuntimeViewportError:function(){return w},createDynamicViewportError:function(){return g},createLinkBodyErrorInNavigation:function(){return l},createLinkMetadataError:function(){return c},createLinkViewportError:function(){return p},createRuntimeBodyError:function(){return s},createRuntimeBodyErrorInNavigation:function(){return o},createRuntimeMetadataError:function(){return h},createRuntimeViewportError:function(){return m},logBuildDebugHint:function(){return b}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});function s(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered runtime data during prerendering.
23
+
24
+ \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` accessed outside of \`<Suspense>\` prevents the route from being prerendered, blocking the page load and leading to a slower user experience.
25
+
26
+ Ways to fix this:
27
+ - [stream] Provide a placeholder with \`<Suspense fallback={...}>\` around the data access
28
+ - [block] Set \`export const instant = false\` to allow a blocking route
29
+
30
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-runtime`),"__NEXT_ERROR_CODE",{value:"E1427",enumerable:!1,configurable:!0})}function a(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered uncached data during prerendering.
31
+
32
+ \`fetch(...)\` or \`connection()\` accessed outside of \`<Suspense>\` prevents the route from being prerendered, blocking the page load and leading to a slower user experience.
33
+
34
+ Ways to fix this:
35
+ - [stream] Provide a placeholder with \`<Suspense fallback={...}>\` around the data access
36
+ - [cache] Cache the data access with \`"use cache"\` (does not apply to \`connection()\`)
37
+ - [block] Set \`export const instant = false\` to allow a blocking route
38
+
39
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-dynamic`),"__NEXT_ERROR_CODE",{value:"E1440",enumerable:!1,configurable:!0})}function o(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered runtime data during prerendering or a navigation.
40
+
41
+ \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` accessed outside of \`<Suspense>\` prevents the route from being prerendered or the navigation from being instant, leading to a slower user experience.
42
+
43
+ Ways to fix this:
44
+ - [stream] Provide a placeholder with \`<Suspense fallback={...}>\` around the data access
45
+ - [block] Set \`export const instant = false\` to allow a blocking route
46
+
47
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-runtime`),"__NEXT_ERROR_CODE",{value:"E1430",enumerable:!1,configurable:!0})}function l(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered URL data during prerendering or a navigation.
48
+
49
+ \`params\` or \`searchParams\` accessed outside of \`<Suspense>\` may prevent the navigation from being instant, leading to a slower user experience.
50
+
51
+ Ways to fix this:
52
+ - [stream] Provide a placeholder with \`<Suspense fallback={...}>\` around the data access
53
+ - [block] Set \`export const instant = false\` to allow a blocking route
54
+
55
+ Learn more: https://nextjs.org/docs/messages/instant-shell-url-data`),"__NEXT_ERROR_CODE",{value:"E1439",enumerable:!1,configurable:!0})}function u(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered uncached data during prerendering or a navigation.
56
+
57
+ \`fetch(...)\` or \`connection()\` accessed outside of \`<Suspense>\` prevents the route from being prerendered or the navigation from being instant, leading to a slower user experience.
58
+
59
+ Ways to fix this:
60
+ - [stream] Provide a placeholder with \`<Suspense fallback={...}>\` around the data access
61
+ - [cache] Cache the data access with \`"use cache"\` (does not apply to \`connection()\`)
62
+ - [block] Set \`export const instant = false\` to allow a blocking route
63
+
64
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-dynamic`),"__NEXT_ERROR_CODE",{value:"E1437",enumerable:!1,configurable:!0})}function d(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered uncached or runtime data during prerendering.
65
+
66
+ \`fetch(...)\`, \`cookies()\`, \`headers()\`, \`params\`, \`searchParams\`, or \`connection()\` accessed outside of \`<Suspense>\` prevents the route from being prerendered, blocking the page load and leading to a slower user experience.
67
+
68
+ Ways to fix this:
69
+ - [stream] Provide a placeholder with \`<Suspense fallback={...}>\` around the data access
70
+ - [cache] For uncached data (\`fetch\`, database calls): cache the access with \`"use cache"\` (does not apply to \`connection()\`)
71
+ - [block] Set \`export const instant = false\` to allow a blocking route
72
+
73
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-dynamic`),"__NEXT_ERROR_CODE",{value:"E1428",enumerable:!1,configurable:!0})}function c(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered URL data in \`generateMetadata()\`.
74
+
75
+ This route's metadata is blocked, but the rest of its content can be prefetched. \`params\` or \`searchParams\` accessed in \`generateMetadata()\` prevent it from being prefetched.
76
+
77
+ Ways to fix this:
78
+ - [static] Use a static metadata export instead of \`generateMetadata()\`
79
+ - [dynamic] Render a marker component that calls \`await connection()\` inside \`<Suspense>\` on the page
80
+
81
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-metadata-runtime`),"__NEXT_ERROR_CODE",{value:"E1429",enumerable:!1,configurable:!0})}function h(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered runtime data in \`generateMetadata()\`.
82
+
83
+ This route's metadata is blocked, but the rest of its content can be prerendered. \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` accessed in \`generateMetadata()\` cause it to run dynamically.
84
+
85
+ Ways to fix this:
86
+ - [static] Use a static metadata export instead of \`generateMetadata()\`
87
+ - [dynamic] Render a marker component that calls \`await connection()\` inside \`<Suspense>\` on the page
88
+
89
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-metadata-runtime`),"__NEXT_ERROR_CODE",{value:"E1423",enumerable:!1,configurable:!0})}function f(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered uncached data in \`generateMetadata()\`.
90
+
91
+ This route's metadata is blocked, but the rest of its content can be prerendered. \`fetch(...)\` or \`connection()\` accessed in \`generateMetadata()\` cause it to run dynamically.
92
+
93
+ Ways to fix this:
94
+ - [cache] Cache the metadata with \`"use cache"\` in \`generateMetadata()\` (does not apply to \`connection()\`)
95
+ - [dynamic] Render a marker component that calls \`await connection()\` inside \`<Suspense>\` on the page
96
+
97
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-metadata-dynamic`),"__NEXT_ERROR_CODE",{value:"E1425",enumerable:!1,configurable:!0})}function p(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered URL data in \`generateViewport()\`.
98
+
99
+ \`params\` or \`searchParams\` in \`generateViewport()\` prevents the page from being prerendered, leading to a slower user experience.
100
+
101
+ Ways to fix this:
102
+ - [static] Use a static viewport export instead of \`generateViewport()\`
103
+ - [block] Set \`export const instant = false\` to allow a blocking route
104
+
105
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-viewport-runtime`),"__NEXT_ERROR_CODE",{value:"E1431",enumerable:!1,configurable:!0})}function m(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered runtime data in \`generateViewport()\`.
106
+
107
+ \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` in \`generateViewport()\` prevents the page from being prerendered, leading to a slower user experience.
108
+
109
+ Ways to fix this:
110
+ - [static] Use a static viewport export instead of \`generateViewport()\`
111
+ - [block] Set \`export const instant = false\` to allow a blocking route
112
+
113
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-viewport-runtime`),"__NEXT_ERROR_CODE",{value:"E1424",enumerable:!1,configurable:!0})}function g(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered uncached data in \`generateViewport()\`.
114
+
115
+ \`fetch(...)\` or \`connection()\` in \`generateViewport()\` prevents the page from being prerendered, leading to a slower user experience.
116
+
117
+ Ways to fix this:
118
+ - [cache] Cache the viewport data with \`"use cache"\` in \`generateViewport()\` (does not apply to \`connection()\`)
119
+ - [block] Set \`export const instant = false\` to allow a blocking route
120
+
121
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-viewport-dynamic`),"__NEXT_ERROR_CODE",{value:"E1438",enumerable:!1,configurable:!0})}function w(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered uncached or runtime data in \`generateViewport()\`.
122
+
123
+ This prevents the page from being prerendered, leading to a slower user experience. Unlike metadata, viewport cannot be streamed behind \`<Suspense>\` because it affects the initial page load.
124
+
125
+ Ways to fix this:
126
+ - [static] Use a static viewport export instead of \`generateViewport()\`
127
+ - [cache] For uncached data (\`fetch\`, database calls): cache the viewport with \`"use cache"\` in \`generateViewport()\` (does not apply to \`connection()\`)
128
+ - [block] Set \`export const instant = false\` to allow a blocking route
129
+
130
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-viewport-runtime`),"__NEXT_ERROR_CODE",{value:"E1436",enumerable:!1,configurable:!0})}function y(e){return Object.defineProperty(Error(`Route "${e}": Next.js encountered uncached or runtime data in \`generateMetadata()\`.
131
+
132
+ This route's metadata is blocked, but the rest of its content can be prerendered.
133
+
134
+ Ways to fix this:
135
+ - [static] Use a static metadata export instead of \`generateMetadata()\`
136
+ - [cache] Cache the metadata with \`"use cache"\` in \`generateMetadata()\` (does not apply to \`connection()\`)
137
+ - [dynamic] Render a marker component that calls \`await connection()\` inside \`<Suspense>\` on the page
138
+
139
+ Learn more: https://nextjs.org/docs/messages/blocking-prerender-metadata-runtime`),"__NEXT_ERROR_CODE",{value:"E1426",enumerable:!1,configurable:!0})}function b(e){console.error(`To get a more detailed stack trace and pinpoint the issue, try one of the following:
140
+ - Start the app in development mode by running \`next dev\`, then open "${e}" in your browser to investigate the error.
141
+ - Rerun the production build with \`next build --debug-prerender\` to generate better stack traces.`)}},280910,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={INSTANT_SLOT_MARKER_PREFIX:function(){return a},INSTANT_SLOT_MARKER_SUFFIX:function(){return o},INSTANT_VALIDATION_BOUNDARY_NAME:function(){return s}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s="__next_instant_validation_boundary__",a="__next_instant_slot_",o="__"},734884,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={allRequiredBoundariesRendered:function(){return a},createValidationBoundaryTracking:function(){return s}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});function s(){return{requiredIds:new Map,renderedIds:new Set}}function a(e){for(let t of e.requiredIds.keys())if(!e.renderedIds.has(t))return!1;return!0}},607273,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={createLinkPrefetchPartialError:function(){return a},createUnrenderedSegmentError:function(){return s}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});function s(e,t){let i=`Route "${e}": Could not validate that a segment in your UI has instant navigation.`;if(t.length>0){let e=1===t.length?"Dropped segment":"Dropped segments";i+=`
142
+
143
+ This segment was dropped from rendering. Issues that would prevent instant navigation will go undetected.
144
+
145
+ ${e}:
146
+ ${t.map(e=>` ${e}`).join("\n")}
147
+
148
+ Ways to fix this:
149
+ - [render] Render the dropped segment
150
+ - [ignore] Set \`export const instant = false\` to opt the dropped segment out of instant-navigation validation
151
+
152
+ Learn more: https://nextjs.org/docs/messages/instant-unrendered-segment`}return Object.defineProperty(Error(i),"__NEXT_ERROR_CODE",{value:"E1286",enumerable:!1,configurable:!0})}function a(e){return Object.defineProperty(Error(`Next.js encountered dynamic data during prefetching for "${e}".
153
+
154
+ This will lead to slower, more expensive prefetches.
155
+
156
+ Ways to fix this:
157
+ - [upgrade] Opt into Partial Prefetching by exporting \`const prefetch = 'partial'\` from the page or layout, or by setting \`partialPrefetching: true\` in next.config to opt the whole app in
158
+ - [disable] Remove \`prefetch={true}\` from the <Link> to use the default prefetch
159
+ - [ignore] Set \`export const instant = false\` to opt the route out of instant-navigation validation
160
+
161
+ Learn more: https://nextjs.org/docs/messages/instant-link-prefetch-partial`),"__NEXT_ERROR_CODE",{value:"E1435",enumerable:!1,configurable:!0})}},361854,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r,n,s,a={DynamicHoleKind:function(){return es},Postpone:function(){return C},PreludeState:function(){return eh},abortAndThrowOnSynchronousRequestDataAccess:function(){return T},abortOnSynchronousPlatformIOAccess:function(){return P},accessedDynamicData:function(){return U},annotateDynamicAccess:function(){return q},consumeDynamicAccess:function(){return z},createDynamicTrackingState:function(){return _},createDynamicValidationState:function(){return k},createHangingInputAbortSignal:function(){return X},createInstantValidationState:function(){return ea},createRenderInBrowserAbortSignal:function(){return G},formatDynamicAPIAccesses:function(){return B},getFirstDynamicReason:function(){return $},getNavigationDisallowedDynamicReasons:function(){return ew},getStaticShellDisallowedDynamicReasons:function(){return eg},isDynamicPostpone:function(){return I},isPrerenderInterruptedError:function(){return W},logDisallowedDynamicError:function(){return ef},markCurrentScopeAsDynamic:function(){return R},postponeWithTracking:function(){return D},throwIfDisallowedDynamic:function(){return em},throwIfSyncIOUsed:function(){return ep},throwToInterruptStaticGeneration:function(){return O},trackAllowedDynamicAccess:function(){return en},trackDynamicDataInDynamicRender:function(){return j},trackDynamicHoleInNavigation:function(){return eo},trackDynamicHoleInRuntimeShell:function(){return eu},trackDynamicHoleInStaticShell:function(){return ed},trackThrownErrorInNavigation:function(){return el},useDynamicRouteParams:function(){return Y},useDynamicSearchParams:function(){return V}};for(var o in a)Object.defineProperty(i,o,{enumerable:!0,get:a[o]});let l=(r=e.r(635952))&&r.__esModule?r:{default:r},u=e.r(730003),d=e.r(24511),c=e.r(832319),h=e.r(556704),f=e.r(962484),p=e.r(603623),m=e.r(149284),g=e.r(399674),w=e.r(806628),y=e.r(257548),b=e.r(280910),v=e.r(734884),E=e.r(607273),S="function"==typeof l.default.unstable_postpone;function _(e){return{isDebugDynamicAccesses:e,dynamicAccesses:[],syncDynamicErrorWithStack:null,syncDynamicErrorWithStackPostMicrotask:!1}}function k(){return{hasSuspenseAboveBody:!1,hasDynamicMetadata:!1,dynamicMetadata:null,hasDynamicViewport:!1,hasAllowedDynamic:!1,dynamicErrors:[]}}function x(e){return e.syncDynamicErrorWithStackPostMicrotask?null:e.syncDynamicErrorWithStack}function $(e){var t;return null==(t=e.dynamicAccesses[0])?void 0:t.expression}function R(e,t,i){if(t)switch(t.type){case"cache":case"unstable-cache":case"private-cache":return}if(!e.forceDynamic&&!e.forceStatic){if(e.dynamicShouldError)throw Object.defineProperty(new d.StaticGenBailoutError(`Route ${e.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`${i}\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E553",enumerable:!1,configurable:!0});if(t)switch(t.type){case"prerender-ppr":return D(e.route,i,t.dynamicTracking);case"prerender-legacy":t.revalidate=0;let r=Object.defineProperty(new u.DynamicServerError(`Route ${e.route} couldn't be rendered statically because it used ${i}. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E550",enumerable:!1,configurable:!0});throw e.dynamicUsageDescription=i,e.dynamicUsageStack=r.stack,r}}}function O(e,t,i){let r=Object.defineProperty(new u.DynamicServerError(`Route ${t.route} couldn't be rendered statically because it used \`${e}\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E558",enumerable:!1,configurable:!0});throw i.revalidate=0,t.dynamicUsageDescription=e,t.dynamicUsageStack=r.stack,r}function j(e){switch(e.type){case"cache":case"unstable-cache":case"private-cache":return}}function A(e,t,i){let r=F(`Route ${e} needs to bail out of prerendering at this point because it used ${t}.`);i.controller.abort(r);let n=i.dynamicTracking;n&&n.dynamicAccesses.push({stack:n.isDebugDynamicAccesses?Error().stack:void 0,expression:t})}function P(e,t,i,r){let n=r.dynamicTracking;n&&null===n.syncDynamicErrorWithStack&&(n.syncDynamicErrorWithStack=i,queueMicrotask(()=>{n.syncDynamicErrorWithStackPostMicrotask=!0})),A(e,t,r)}function T(e,t,i,r){if((0,f.trackRuntimeDataAccessed)(r),!1===r.controller.signal.aborted){A(e,t,r);let n=r.dynamicTracking;n&&null===n.syncDynamicErrorWithStack&&(n.syncDynamicErrorWithStack=i)}throw F(`Route ${e} needs to bail out of prerendering at this point because it used ${t}.`)}function C({reason:e,route:t}){let i=c.workUnitAsyncStorage.getStore();D(t,e,i&&"prerender-ppr"===i.type?i.dynamicTracking:null)}function D(e,t,i){(function(){if(!S)throw Object.defineProperty(Error("Invariant: React.unstable_postpone is not defined. This suggests the wrong version of React was loaded. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E224",enumerable:!1,configurable:!0})})(),i&&i.dynamicAccesses.push({stack:i.isDebugDynamicAccesses?Error().stack:void 0,expression:t}),l.default.unstable_postpone(N(e,t))}function N(e,t){return`Route ${e} needs to bail out of prerendering at this point because it used ${t}. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error`}function I(e){return"object"==typeof e&&null!==e&&"string"==typeof e.message&&M(e.message)}function M(e){return e.includes("needs to bail out of prerendering at this point because it used")&&e.includes("Learn more: https://nextjs.org/docs/messages/ppr-caught-error")}if(!1===M(N("%%%","^^^")))throw Object.defineProperty(Error("Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E296",enumerable:!1,configurable:!0});let L="NEXT_PRERENDER_INTERRUPTED";function F(e){let t=Object.defineProperty(Error(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t.digest=L,t}function W(e){return"object"==typeof e&&null!==e&&e.digest===L&&"name"in e&&"message"in e&&e instanceof Error}function U(e){return e.length>0}function z(e,t){return e.dynamicAccesses.push(...t.dynamicAccesses),e.dynamicAccesses}function B(e){return e.filter(e=>"string"==typeof e.stack&&e.stack.length>0).map(({expression:e,stack:t})=>(t=t.split("\n").slice(4).filter(e=>!(e.includes("node_modules/next/")||e.includes(" (<anonymous>)")||e.includes(" (node:"))).join("\n"),`Dynamic API Usage Debug - ${e}:
162
+ ${t}`))}function G(){let e=new AbortController;return e.abort(Object.defineProperty(new g.BailoutToCSRError("Render in Browser"),"__NEXT_ERROR_CODE",{value:"E721",enumerable:!1,configurable:!0})),e.signal}function X(e){switch(e.type){case"prerender":case"prerender-runtime":let t=new AbortController;if(e.cacheSignal)e.cacheSignal.inputReady().then(()=>{t.abort()});else{let i=(0,c.getStagedRenderingController)(e);i&&null!==i.finalStage?i.waitForStage(i.finalStage).then(()=>(0,m.scheduleOnNextTick)(()=>t.abort()),H):(0,m.scheduleOnNextTick)(()=>t.abort())}return t.signal;case"prerender-client":case"validation-client":case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"private-cache":case"unstable-cache":case"generate-static-params":return}}function H(){}function q(e,t){let i=t.dynamicTracking;i&&i.dynamicAccesses.push({stack:i.isDebugDynamicAccesses?Error().stack:void 0,expression:e})}function Y(e){let t=h.workAsyncStorage.getStore(),i=c.workUnitAsyncStorage.getStore();if(t&&i)switch(i.type){case"prerender-client":{let r=i.fallbackRouteParams;r&&r.size>0&&l.default.use((0,f.makeClientHookHangingPromise)(i.renderSignal,new f.ClientHookDynamicError(t.route,e)));break}case"prerender":throw Object.defineProperty(new y.InvariantError(`\`${e}\` was called from a Server Component. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E795",enumerable:!1,configurable:!0});case"prerender-ppr":{let r=i.fallbackRouteParams;if(r&&r.size>0)return D(t.route,e,i.dynamicTracking);break}case"validation-client":case"prerender-legacy":case"request":case"unstable-cache":break;case"prerender-runtime":throw Object.defineProperty(new y.InvariantError(`\`${e}\` was called during a runtime prerender. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E771",enumerable:!1,configurable:!0});case"cache":case"private-cache":throw Object.defineProperty(new y.InvariantError(`\`${e}\` was called inside a cache scope. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E745",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new y.InvariantError(`\`${e}\` was called in \`generateStaticParams\`. Next.js should be preventing ${e} from being included in server component files statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E1130",enumerable:!1,configurable:!0})}}function V(e){let t=h.workAsyncStorage.getStore(),i=c.workUnitAsyncStorage.getStore();if(t)switch(!i&&(0,c.throwForMissingRequestStore)(e),i.type){case"validation-client":case"request":return;case"prerender-client":l.default.use((0,f.makeClientHookHangingPromise)(i.renderSignal,new f.ClientHookDynamicError(t.route,e)));break;case"prerender-legacy":case"prerender-ppr":if(t.forceStatic)return;throw Object.defineProperty(new g.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});case"prerender":case"prerender-runtime":throw Object.defineProperty(new y.InvariantError(`\`${e}\` was called from a Server Component. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E795",enumerable:!1,configurable:!0});case"cache":case"unstable-cache":case"private-cache":throw Object.defineProperty(new y.InvariantError(`\`${e}\` was called inside a cache scope. Next.js should be preventing ${e} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E745",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new y.InvariantError(`\`${e}\` was called in \`generateStaticParams\`. Next.js should be preventing ${e} from being included in server component files statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E1130",enumerable:!1,configurable:!0})}}let J=/\n\s+at Suspense \(<anonymous>\)/,Z=RegExp(`\\n\\s+at Suspense \\(<anonymous>\\)(?:(?!\\n\\s+at (?:body|div|main|section|article|aside|header|footer|nav|form|p|span|h1|h2|h3|h4|h5|h6) \\(<anonymous>\\))[\\s\\S])*?\\n\\s+at ${p.ROOT_LAYOUT_BOUNDARY_NAME} \\([^\\n]*\\)`),K=RegExp(`\\n\\s+at ${p.METADATA_BOUNDARY_NAME}[\\n\\s]`),Q=RegExp(`\\n\\s+at ${p.VIEWPORT_BOUNDARY_NAME}[\\n\\s]`),ee=RegExp(`\\n\\s+at ${p.OUTLET_BOUNDARY_NAME}[\\n\\s]`),et=RegExp(`\\n\\s+at ${b.INSTANT_VALIDATION_BOUNDARY_NAME}[\\n\\s]`),ei=RegExp(`\\n\\s+at ${b.INSTANT_SLOT_MARKER_PREFIX}(\\d+)${b.INSTANT_SLOT_MARKER_SUFFIX}[\\n\\s]`);function er(e,t){Z.test(e)&&(t.hasSuspenseAboveBody=!0)}function en(e,t,i,r,n){let s=x(n);if(ee.test(i))return void er(i,r);if(K.test(i)){r.hasDynamicMetadata=!0;return}if(Q.test(i)){r.hasDynamicViewport=!0;return}if(Z.test(i)){r.hasAllowedDynamic=!0,r.hasSuspenseAboveBody=!0;return}if(J.test(i)){r.hasAllowedDynamic=!0;return}else if(s)return void r.dynamicErrors.push(s);if((0,f.isClientHookDynamicError)(e))return void r.dynamicErrors.push(ec(e,i,null));let a=ec((0,w.createDynamicOrRuntimeBodyError)(t.route),i,null);r.dynamicErrors.push(a)}var es=((n={})[n.Link=1]="Link",n[n.Runtime=2]="Runtime",n[n.Dynamic=3]="Dynamic",n);function ea(e){return{hasDynamicMetadata:!1,hasAllowedClientDynamicAboveBoundary:!1,dynamicMetadata:null,hasDynamicViewport:!1,hasAllowedDynamic:!1,dynamicErrors:[],validationPreventingErrors:[],thrownErrorsOutsideBoundary:[],slotStacks:e}}function eo(e,t,i,r,n,s,a){let o=x(n);if(ee.test(i))return;let l=function(e,t){let{slotStacks:i}=t;if(i.length>1){let t=ei.exec(e);if(t){let e=i[parseInt(t[1],10)+1];if(null!=e)return e}}return i[0]??null}(i,r);if(K.test(i)){r.dynamicMetadata=ec(1===s?(0,w.createLinkMetadataError)(t.route):2===s?(0,w.createRuntimeMetadataError)(t.route):(0,w.createDynamicMetadataError)(t.route),i,l);return}if(Q.test(i)){let e=ec(1===s?(0,w.createLinkViewportError)(t.route):2===s?(0,w.createRuntimeViewportError)(t.route):(0,w.createDynamicViewportError)(t.route),i,l);r.dynamicErrors.push(e);return}let u=et.exec(i);if(u){let e=J.exec(i);if(e&&e.index<u.index){r.hasAllowedDynamic=!0;return}}else if((0,v.allRequiredBoundariesRendered)(a)){r.hasAllowedClientDynamicAboveBoundary=!0,r.hasAllowedDynamic=!0;return}else{let e=ec(Object.defineProperty(Error(`Route "${t.route}": Could not validate \`instant\` because a Client Component in a parent segment prevented the page from rendering.`),"__NEXT_ERROR_CODE",{value:"E1331",enumerable:!1,configurable:!0}),i,l);r.validationPreventingErrors.push(e);return}if(o){null!==l&&void 0===o.cause&&(o.cause=l()),r.dynamicErrors.push(o);return}if((0,f.isClientHookDynamicError)(e))return void r.dynamicErrors.push(ec(e,i,l));let d=ec(1===s?(0,w.createLinkBodyErrorInNavigation)(t.route):2===s?(0,w.createRuntimeBodyErrorInNavigation)(t.route):(0,w.createDynamicBodyErrorInNavigation)(t.route),i,l);r.dynamicErrors.push(d)}function el(e,t,i,r){let n=et.exec(r);if(n){let s=J.exec(r);if(s&&s.index<n.index)return;let a=ec(Object.defineProperty(Error(`Route "${e.route}": Could not validate \`instant\` because an error prevented the target segment from rendering.`,{cause:i}),"__NEXT_ERROR_CODE",{value:"E1338",enumerable:!1,configurable:!0}),r,null);t.validationPreventingErrors.push(a)}else{let e=ec(Object.defineProperty(Error("An error occurred while attempting to validate instant UI. This error may be preventing the validation from completing.",{cause:i}),"__NEXT_ERROR_CODE",{value:"E1118",enumerable:!1,configurable:!0}),r,null);t.thrownErrorsOutsideBoundary.push(e)}}function eu(e,t,i,r,n){let s=x(n);if(ee.test(i))return void er(i,r);if(K.test(i)){r.dynamicMetadata=ec((0,w.createDynamicMetadataError)(t.route),i,null);return}if(Q.test(i)){let e=ec((0,w.createDynamicViewportError)(t.route),i,null);r.dynamicErrors.push(e);return}if(Z.test(i)){r.hasAllowedDynamic=!0,r.hasSuspenseAboveBody=!0;return}if(J.test(i)){r.hasAllowedDynamic=!0;return}else if(s)return void r.dynamicErrors.push(s);if((0,f.isClientHookDynamicError)(e))return void r.dynamicErrors.push(ec(e,i,null));let a=ec((0,w.createDynamicBodyError)(t.route),i,null);r.dynamicErrors.push(a)}function ed(e,t,i,r,n){let s=x(n);if(ee.test(i))return void er(i,r);if(K.test(i)){r.dynamicMetadata=ec((0,w.createRuntimeMetadataError)(t.route),i,null);return}if(Q.test(i)){let e=ec((0,w.createRuntimeViewportError)(t.route),i,null);r.dynamicErrors.push(e);return}if(Z.test(i)){r.hasAllowedDynamic=!0,r.hasSuspenseAboveBody=!0;return}if(J.test(i)){r.hasAllowedDynamic=!0;return}else if(s)return void r.dynamicErrors.push(s);if((0,f.isClientHookDynamicError)(e))return void r.dynamicErrors.push(ec(e,i,null));let a=ec((0,w.createRuntimeBodyError)(t.route),i,null);r.dynamicErrors.push(a)}function ec(e,t,i){return null!==i&&(e.cause=i()),e.stack=e.name+": "+e.message+t,e}var eh=((s={})[s.Full=0]="Full",s[s.Empty=1]="Empty",s[s.Errored=2]="Errored",s);function ef(e,t){console.error(t),(0,w.logBuildDebugHint)(e.route)}function ep(e,t){if(t.syncDynamicErrorWithStack)throw ef(e,t.syncDynamicErrorWithStack),new d.StaticGenBailoutError}function em(e,t,i,r,n){if(ep(e,r),0===t&&!1===i.hasAllowedDynamic&&i.hasDynamicMetadata)throw console.error((0,w.createDynamicOrRuntimeMetadataError)(e.route).message),new d.StaticGenBailoutError;if(!n&&!i.hasSuspenseAboveBody&&0!==t){let r=i.dynamicErrors;if(r.length>0){for(let t=0;t<r.length;t++)ef(e,r[t]);throw new d.StaticGenBailoutError}if(i.hasDynamicViewport)throw console.error((0,w.createDynamicOrRuntimeViewportError)(e.route).message),new d.StaticGenBailoutError;if(1===t)throw console.error(`Route "${e.route}" did not produce a static shell and Next.js was unable to determine a reason. This is a bug in Next.js.`),new d.StaticGenBailoutError}}function eg(e,t,i,r){if(0===t&&!1===i.hasAllowedDynamic&&0===i.dynamicErrors.length&&i.dynamicMetadata)return[i.dynamicMetadata];if(r||i.hasSuspenseAboveBody)return[];if(0!==t){let r=i.dynamicErrors;if(r.length>0)return r;if(1===t)return[Object.defineProperty(new y.InvariantError(`Route "${e.route}" did not produce a static shell and Next.js was unable to determine a reason.`),"__NEXT_ERROR_CODE",{value:"E936",enumerable:!1,configurable:!0})]}return[]}function ew(e,t,i,r,n,s){if(r){let{missingSampleErrors:e}=r;if(e.length>0)return e}let{validationPreventingErrors:a}=i;if(a.length>0)return a;if(0!==t){let r=i.dynamicErrors;if(r.length>0)return r;if(1===t&&!i.hasAllowedClientDynamicAboveBoundary&&(0,v.allRequiredBoundariesRendered)(n))return Object.defineProperty(new y.InvariantError(`Route "${e.route}" failed to render during instant validation and Next.js was unable to determine a reason.`),"__NEXT_ERROR_CODE",{value:"E1055",enumerable:!1,configurable:!0})}else{let e=i.dynamicErrors;if(e.length>0)return e;if(!1===i.hasAllowedDynamic&&i.dynamicMetadata)return[i.dynamicMetadata]}if(!(0,v.allRequiredBoundariesRendered)(n)){let{thrownErrorsOutsideBoundary:t}=i,r=i.slotStacks[0];if(0===t.length){let t=[];for(let[e,i]of n.requiredIds)if(!n.renderedIds.has(e))for(let e of i){let i=e.replace(/^\[project\][\\/]?/,"").replace(process.cwd()+"/","").replace(process.cwd()+"\\","");t.push(i)}return t.sort(),(0,E.createUnrenderedSegmentError)(e.route,t)}if(1===t.length){let i=`Route "${e.route}": Could not validate \`instant\` because the target segment was prevented from rendering, likely due to the following error.`,n=null!==r?r():Error();return n.name="Error",n.message=i,AggregateError([n,t[0]])}{let i=`Route "${e.route}": Could not validate \`instant\` because the target segment was prevented from rendering, likely due to one of the following errors.`,n=null!==r?r():Error();return n.name="Error",n.message=i,AggregateError([n,...t])}}return[]}},323375,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={isRequestApiAllowedInCurrentPhase:function(){return d},throwForSearchParamsAccessInUseCache:function(){return u},throwWithStaticGenerationBailoutErrorWithDynamicError:function(){return l}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s=e.r(24511),a=e.r(120635),o=e.r(324725);function l(e,t){throw Object.defineProperty(new s.StaticGenBailoutError(`Route ${e} with \`dynamic = "error"\` couldn't be rendered statically because it used ${t}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E543",enumerable:!1,configurable:!0})}function u(e,t){let i=Object.defineProperty(Error(`Route ${e.route} used \`searchParams\` inside "use cache". Accessing dynamic request data inside a cache scope is not supported. If you need some search params inside a cached function await \`searchParams\` outside of the cached function and pass only the required search params as arguments to the cached function. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E842",enumerable:!1,configurable:!0});throw Error.captureStackTrace(i,t),e.invalidDynamicUsageError??=i,i}function d(e){switch(e.phase){case"action":case"render":return!0;case"after":{let e=a.actionAsyncStorage.getStore();if(e&&(e.isAppRoute||e.isAction))return!0;let t=o.afterTaskAsyncStorage.getStore();if(t)return"action"===t.rootTaskSpawnPhase;return!1}}}},289408,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"connection",{enumerable:!0,get:function(){return d}});let r=e.r(556704),n=e.r(832319),s=e.r(361854),a=e.r(24511),o=e.r(962484),l=e.r(323375);e.r(703467);let u=e.r(257548);function d(){let e=r.workAsyncStorage.getStore(),t=n.workUnitAsyncStorage.getStore();if(e){if(t&&!(0,l.isRequestApiAllowedInCurrentPhase)(t))throw Object.defineProperty(Error(`Route ${e.route} used \`connection()\` inside \`after()\` while rendering. The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but \`after()\` executes after the request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/app/api-reference/functions/after`),"__NEXT_ERROR_CODE",{value:"E1377",enumerable:!1,configurable:!0});if(e.forceStatic)return Promise.resolve(void 0);if(e.dynamicShouldError)throw Object.defineProperty(new a.StaticGenBailoutError(`Route ${e.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`connection()\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E847",enumerable:!1,configurable:!0});if(t)switch(t.type){case"cache":{let t=Object.defineProperty(Error(`Route ${e.route} used \`connection()\` inside "use cache". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual request, but caches must be able to be produced before a request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E841",enumerable:!1,configurable:!0});throw Error.captureStackTrace(t,d),(0,o.applyOwnerStack)(t),e.invalidDynamicUsageError??=t,t}case"private-cache":{let t=Object.defineProperty(Error(`Route ${e.route} used \`connection()\` inside "use cache: private". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual navigation request, but caches must be able to be produced before a navigation request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E837",enumerable:!1,configurable:!0});throw Error.captureStackTrace(t,d),(0,o.applyOwnerStack)(t),e.invalidDynamicUsageError??=t,t}case"unstable-cache":throw Object.defineProperty(Error(`Route ${e.route} used \`connection()\` inside a function cached with \`unstable_cache()\`. The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but caches must be able to be produced before a Request so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`),"__NEXT_ERROR_CODE",{value:"E840",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(Error(`Route ${e.route} used \`connection()\` inside \`generateStaticParams\`. This is not supported because \`generateStaticParams\` runs at build time without an HTTP request. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context`),"__NEXT_ERROR_CODE",{value:"E1125",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-runtime":return(0,o.makeDynamicHangingPromise)(t.renderSignal,e.route,"`connection()`");case"validation-client":{let e="`connection`";throw Object.defineProperty(new u.InvariantError(`${e} must not be used within a Client Component. Next.js should be preventing ${e} from being included in Client Components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E1063",enumerable:!1,configurable:!0})}case"prerender-ppr":return(0,s.postponeWithTracking)(e.route,"connection",t.dynamicTracking);case"prerender-legacy":return(0,s.throwToInterruptStaticGeneration)("connection",e,t);case"request":if((0,s.trackDynamicDataInDynamicRender)(t),t.asyncApiPromises)return t.asyncApiPromises.connection;return Promise.resolve(void 0)}}(0,n.throwForMissingRequestStore)("connection")}},192258,(e,t,i)=>{let r={NextRequest:e.r(982563).NextRequest,NextResponse:e.r(928021).NextResponse,ImageResponse:e.r(619413).ImageResponse,userAgentFromString:e.r(343023).userAgentFromString,userAgent:e.r(343023).userAgent,URLPattern:e.r(136184).URLPattern,after:e.r(34023).after,connection:e.r(289408).connection};t.exports=r,i.NextRequest=r.NextRequest,i.NextResponse=r.NextResponse,i.ImageResponse=r.ImageResponse,i.userAgentFromString=r.userAgentFromString,i.userAgent=r.userAgent,i.URLPattern=r.URLPattern,i.after=r.after,i.connection=r.connection},128059,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={RequestCookies:function(){return s.RequestCookies},ResponseCookies:function(){return s.ResponseCookies},stringifyCookie:function(){return s.stringifyCookie}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s=e.r(995709)},982563,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={INTERNALS:function(){return u},NextRequest:function(){return d}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s=e.r(700687),a=e.r(776937),o=e.r(476913),l=e.r(128059),u=Symbol("internal request");class d extends Request{constructor(e,t={}){const i="string"!=typeof e&&"url"in e?e.url:String(e);(0,a.validateURL)(i),t.body&&"half"!==t.duplex&&(t.duplex="half"),e instanceof Request?super(e,t):super(i,t);const r=new s.NextURL(i,{headers:(0,a.toNodeOutgoingHttpHeaders)(this.headers),nextConfig:t.nextConfig});this[u]={cookies:new l.RequestCookies(this.headers),nextUrl:r,url:r.toString()}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,nextUrl:this.nextUrl,url:this.url,bodyUsed:this.bodyUsed,cache:this.cache,credentials:this.credentials,destination:this.destination,headers:Object.fromEntries(this.headers),integrity:this.integrity,keepalive:this.keepalive,method:this.method,mode:this.mode,redirect:this.redirect,referrer:this.referrer,referrerPolicy:this.referrerPolicy,signal:this.signal}}get cookies(){return this[u].cookies}get nextUrl(){return this[u].nextUrl}get page(){throw new o.RemovedPageError}get ua(){throw new o.RemovedUAError}get url(){return this[u].url}}},47900,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"ReflectAdapter",{enumerable:!0,get:function(){return r}});class r{static get(e,t,i){let r=Reflect.get(e,t,i);return"function"==typeof r?r.bind(e):r}static set(e,t,i,r){return Reflect.set(e,t,i,r)}static has(e,t){return Reflect.has(e,t)}static deleteProperty(e,t){return Reflect.deleteProperty(e,t)}}},928021,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"NextResponse",{enumerable:!0,get:function(){return c}});let r=e.r(128059),n=e.r(700687),s=e.r(776937),a=e.r(47900),o=e.r(128059),l=Symbol("internal response"),u=new Set([301,302,303,307,308]);function d(e,t){var i;if(null==e||null==(i=e.request)?void 0:i.headers){if(!(e.request.headers instanceof Headers))throw Object.defineProperty(Error("request.headers must be an instance of Headers"),"__NEXT_ERROR_CODE",{value:"E119",enumerable:!1,configurable:!0});let i=[];for(let[r,n]of e.request.headers)t.set("x-middleware-request-"+r,n),i.push(r);t.set("x-middleware-override-headers",i.join(","))}}class c extends Response{constructor(e,t={}){super(e,t);const i=this.headers,u=new Proxy(new o.ResponseCookies(i),{get(e,n,s){switch(n){case"delete":case"set":return(...s)=>{let a=Reflect.apply(e[n],e,s),l=new Headers(i);return a instanceof o.ResponseCookies&&i.set("x-middleware-set-cookie",a.getAll().map(e=>(0,r.stringifyCookie)(e)).join(",")),d(t,l),a};default:return a.ReflectAdapter.get(e,n,s)}}});this[l]={cookies:u,url:t.url?new n.NextURL(t.url,{headers:(0,s.toNodeOutgoingHttpHeaders)(i),nextConfig:t.nextConfig}):void 0}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,url:this.url,body:this.body,bodyUsed:this.bodyUsed,headers:Object.fromEntries(this.headers),ok:this.ok,redirected:this.redirected,status:this.status,statusText:this.statusText,type:this.type}}get cookies(){return this[l].cookies}static json(e,t){let i=Response.json(e,t);return new c(i.body,i)}static redirect(e,t){let i="number"==typeof t?t:(null==t?void 0:t.status)??307;if(!u.has(i))throw Object.defineProperty(RangeError('Failed to execute "redirect" on "response": Invalid status code'),"__NEXT_ERROR_CODE",{value:"E529",enumerable:!1,configurable:!0});let r="object"==typeof t?t:{},n=new Headers(null==r?void 0:r.headers);return n.set("Location",(0,s.validateURL)(e)),new c(null,{...r,headers:n,status:i})}static rewrite(e,t){let i=new Headers(null==t?void 0:t.headers);return i.set("x-middleware-rewrite",(0,s.validateURL)(e)),d(t,i),new c(null,{...t,headers:i})}static next(e){let t=new Headers(null==e?void 0:e.headers);return t.set("x-middleware-next","1"),d(e,t),new c(null,{...e,headers:t})}}},619413,(e,t,i)=>{"use strict";function r(){throw Object.defineProperty(Error('ImageResponse moved from "next/server" to "next/og" since Next.js 14, please import from "next/og" instead'),"__NEXT_ERROR_CODE",{value:"E183",enumerable:!1,configurable:!0})}Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"ImageResponse",{enumerable:!0,get:function(){return r}})},765284,(e,t,i)=>{var r={943:function(t,i){!function(r){"use strict";var n="function",s="undefined",a="object",o="string",l="major",u="model",d="name",c="type",h="vendor",f="version",p="architecture",m="console",g="mobile",w="tablet",y="smarttv",b="wearable",v="embedded",E="Amazon",S="Apple",_="ASUS",k="BlackBerry",x="Browser",$="Chrome",R="Firefox",O="Google",j="Huawei",A="Microsoft",P="Motorola",T="Opera",C="Samsung",D="Sharp",N="Sony",I="Xiaomi",M="Zebra",L="Facebook",F="Chromium OS",W="Mac OS",U=function(e,t){var i={};for(var r in e)t[r]&&t[r].length%2==0?i[r]=t[r].concat(e[r]):i[r]=e[r];return i},z=function(e){for(var t={},i=0;i<e.length;i++)t[e[i].toUpperCase()]=e[i];return t},B=function(e,t){return typeof e===o&&-1!==G(t).indexOf(G(e))},G=function(e){return e.toLowerCase()},X=function(e,t){if(typeof e===o)return e=e.replace(/^\s\s*/,""),typeof t===s?e:e.substring(0,350)},H=function(e,t){for(var i,r,s,o,l,u,d=0;d<t.length&&!l;){var c=t[d],h=t[d+1];for(i=r=0;i<c.length&&!l&&c[i];)if(l=c[i++].exec(e))for(s=0;s<h.length;s++)u=l[++r],typeof(o=h[s])===a&&o.length>0?2===o.length?typeof o[1]==n?this[o[0]]=o[1].call(this,u):this[o[0]]=o[1]:3===o.length?typeof o[1]!==n||o[1].exec&&o[1].test?this[o[0]]=u?u.replace(o[1],o[2]):void 0:this[o[0]]=u?o[1].call(this,u,o[2]):void 0:4===o.length&&(this[o[0]]=u?o[3].call(this,u.replace(o[1],o[2])):void 0):this[o]=u||void 0;d+=2}},q=function(e,t){for(var i in t)if(typeof t[i]===a&&t[i].length>0){for(var r=0;r<t[i].length;r++)if(B(t[i][r],e))return"?"===i?void 0:i}else if(B(t[i],e))return"?"===i?void 0:i;return e},Y={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},V={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[f,[d,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[f,[d,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[d,f],[/opios[\/ ]+([\w\.]+)/i],[f,[d,T+" Mini"]],[/\bopr\/([\w\.]+)/i],[f,[d,T]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[d,f],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[f,[d,"UC"+x]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i],[f,[d,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[f,[d,"WeChat"]],[/konqueror\/([\w\.]+)/i],[f,[d,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[f,[d,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[f,[d,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[d,/(.+)/,"$1 Secure "+x],f],[/\bfocus\/([\w\.]+)/i],[f,[d,R+" Focus"]],[/\bopt\/([\w\.]+)/i],[f,[d,T+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[f,[d,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[f,[d,"Dolphin"]],[/coast\/([\w\.]+)/i],[f,[d,T+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[f,[d,"MIUI "+x]],[/fxios\/([-\w\.]+)/i],[f,[d,R]],[/\bqihu|(qi?ho?o?|360)browser/i],[[d,"360 "+x]],[/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i],[[d,/(.+)/,"$1 "+x],f],[/(comodo_dragon)\/([\w\.]+)/i],[[d,/_/g," "],f],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[d,f],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i,/\[(linkedin)app\]/i],[d],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[d,L],f],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[d,f],[/\bgsa\/([\w\.]+) .*safari\//i],[f,[d,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[f,[d,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[f,[d,$+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[d,$+" WebView"],f],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[f,[d,"Android "+x]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[d,f],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[f,[d,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[f,d],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[d,[f,q,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[d,f],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[d,"Netscape"],f],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[f,[d,R+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i,/panasonic;(viera)/i],[d,f],[/(cobalt)\/([\w\.]+)/i],[d,[f,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[p,"amd64"]],[/(ia32(?=;))/i],[[p,G]],[/((?:i[346]|x)86)[;\)]/i],[[p,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[p,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[p,"armhf"]],[/windows (ce|mobile); ppc;/i],[[p,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[p,/ower/,"",G]],[/(sun4\w)[;\)]/i],[[p,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[p,G]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[u,[h,C],[c,w]],[/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[u,[h,C],[c,g]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[u,[h,S],[c,g]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[u,[h,S],[c,w]],[/(macintosh);/i],[u,[h,S]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[u,[h,D],[c,g]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[u,[h,j],[c,w]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[u,[h,j],[c,g]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[u,/_/g," "],[h,I],[c,g]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[u,/_/g," "],[h,I],[c,w]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[u,[h,"OPPO"],[c,g]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[u,[h,"Vivo"],[c,g]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[u,[h,"Realme"],[c,g]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[u,[h,P],[c,g]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[u,[h,P],[c,w]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[u,[h,"LG"],[c,w]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[u,[h,"LG"],[c,g]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[u,[h,"Lenovo"],[c,w]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[u,/_/g," "],[h,"Nokia"],[c,g]],[/(pixel c)\b/i],[u,[h,O],[c,w]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[u,[h,O],[c,g]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[u,[h,N],[c,g]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[u,"Xperia Tablet"],[h,N],[c,w]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[u,[h,"OnePlus"],[c,g]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[u,[h,E],[c,w]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[u,/(.+)/g,"Fire Phone $1"],[h,E],[c,g]],[/(playbook);[-\w\),; ]+(rim)/i],[u,h,[c,w]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[u,[h,k],[c,g]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[u,[h,_],[c,w]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[u,[h,_],[c,g]],[/(nexus 9)/i],[u,[h,"HTC"],[c,w]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[h,[u,/_/g," "],[c,g]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[u,[h,"Acer"],[c,w]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[u,[h,"Meizu"],[c,g]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[h,u,[c,g]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[h,u,[c,w]],[/(surface duo)/i],[u,[h,A],[c,w]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[u,[h,"Fairphone"],[c,g]],[/(u304aa)/i],[u,[h,"AT&T"],[c,g]],[/\bsie-(\w*)/i],[u,[h,"Siemens"],[c,g]],[/\b(rct\w+) b/i],[u,[h,"RCA"],[c,w]],[/\b(venue[\d ]{2,7}) b/i],[u,[h,"Dell"],[c,w]],[/\b(q(?:mv|ta)\w+) b/i],[u,[h,"Verizon"],[c,w]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[u,[h,"Barnes & Noble"],[c,w]],[/\b(tm\d{3}\w+) b/i],[u,[h,"NuVision"],[c,w]],[/\b(k88) b/i],[u,[h,"ZTE"],[c,w]],[/\b(nx\d{3}j) b/i],[u,[h,"ZTE"],[c,g]],[/\b(gen\d{3}) b.+49h/i],[u,[h,"Swiss"],[c,g]],[/\b(zur\d{3}) b/i],[u,[h,"Swiss"],[c,w]],[/\b((zeki)?tb.*\b) b/i],[u,[h,"Zeki"],[c,w]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[h,"Dragon Touch"],u,[c,w]],[/\b(ns-?\w{0,9}) b/i],[u,[h,"Insignia"],[c,w]],[/\b((nxa|next)-?\w{0,9}) b/i],[u,[h,"NextBook"],[c,w]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[h,"Voice"],u,[c,g]],[/\b(lvtel\-)?(v1[12]) b/i],[[h,"LvTel"],u,[c,g]],[/\b(ph-1) /i],[u,[h,"Essential"],[c,g]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[u,[h,"Envizen"],[c,w]],[/\b(trio[-\w\. ]+) b/i],[u,[h,"MachSpeed"],[c,w]],[/\btu_(1491) b/i],[u,[h,"Rotor"],[c,w]],[/(shield[\w ]+) b/i],[u,[h,"Nvidia"],[c,w]],[/(sprint) (\w+)/i],[h,u,[c,g]],[/(kin\.[onetw]{3})/i],[[u,/\./g," "],[h,A],[c,g]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[u,[h,M],[c,w]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[u,[h,M],[c,g]],[/smart-tv.+(samsung)/i],[h,[c,y]],[/hbbtv.+maple;(\d+)/i],[[u,/^/,"SmartTV"],[h,C],[c,y]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[h,"LG"],[c,y]],[/(apple) ?tv/i],[h,[u,S+" TV"],[c,y]],[/crkey/i],[[u,$+"cast"],[h,O],[c,y]],[/droid.+aft(\w)( bui|\))/i],[u,[h,E],[c,y]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[u,[h,D],[c,y]],[/(bravia[\w ]+)( bui|\))/i],[u,[h,N],[c,y]],[/(mitv-\w{5}) bui/i],[u,[h,I],[c,y]],[/Hbbtv.*(technisat) (.*);/i],[h,u,[c,y]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[h,X],[u,X],[c,y]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[c,y]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[h,u,[c,m]],[/droid.+; (shield) bui/i],[u,[h,"Nvidia"],[c,m]],[/(playstation [345portablevi]+)/i],[u,[h,N],[c,m]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[u,[h,A],[c,m]],[/((pebble))app/i],[h,u,[c,b]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[u,[h,S],[c,b]],[/droid.+; (glass) \d/i],[u,[h,O],[c,b]],[/droid.+; (wt63?0{2,3})\)/i],[u,[h,M],[c,b]],[/(quest( 2| pro)?)/i],[u,[h,L],[c,b]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[h,[c,v]],[/(aeobc)\b/i],[u,[h,E],[c,v]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[u,[c,g]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[u,[c,w]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[c,w]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[c,g]],[/(android[-\w\. ]{0,9});.+buil/i],[u,[h,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[f,[d,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[f,[d,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[d,f],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[f,d]],os:[[/microsoft (windows) (vista|xp)/i],[d,f],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[d,[f,q,Y]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[d,"Windows"],[f,q,Y]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/ios;fbsv\/([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[f,/_/g,"."],[d,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[d,W],[f,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[f,d],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[d,f],[/\(bb(10);/i],[f,[d,k]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[f,[d,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[f,[d,R+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[f,[d,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[f,[d,"watchOS"]],[/crkey\/([\d\.]+)/i],[f,[d,$+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[d,F],f],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[d,f],[/(sunos) ?([\w\.\d]*)/i],[[d,"Solaris"],f],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[d,f]]},J=function(e,t){if(typeof e===a&&(t=e,e=void 0),!(this instanceof J))return new J(e,t).getResult();var i=typeof r!==s&&r.navigator?r.navigator:void 0,m=e||(i&&i.userAgent?i.userAgent:""),y=i&&i.userAgentData?i.userAgentData:void 0,b=t?U(V,t):V,v=i&&i.userAgent==m;return this.getBrowser=function(){var e,t={};return t[d]=void 0,t[f]=void 0,H.call(t,m,b.browser),t[l]=typeof(e=t[f])===o?e.replace(/[^\d\.]/g,"").split(".")[0]:void 0,v&&i&&i.brave&&typeof i.brave.isBrave==n&&(t[d]="Brave"),t},this.getCPU=function(){var e={};return e[p]=void 0,H.call(e,m,b.cpu),e},this.getDevice=function(){var e={};return e[h]=void 0,e[u]=void 0,e[c]=void 0,H.call(e,m,b.device),v&&!e[c]&&y&&y.mobile&&(e[c]=g),v&&"Macintosh"==e[u]&&i&&typeof i.standalone!==s&&i.maxTouchPoints&&i.maxTouchPoints>2&&(e[u]="iPad",e[c]=w),e},this.getEngine=function(){var e={};return e[d]=void 0,e[f]=void 0,H.call(e,m,b.engine),e},this.getOS=function(){var e={};return e[d]=void 0,e[f]=void 0,H.call(e,m,b.os),v&&!e[d]&&y&&"Unknown"!=y.platform&&(e[d]=y.platform.replace(/chrome os/i,F).replace(/macos/i,W)),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return m},this.setUA=function(e){return m=typeof e===o&&e.length>350?X(e,350):e,this},this.setUA(m),this};if(J.VERSION="1.0.35",J.BROWSER=z([d,f,l]),J.CPU=z([p]),J.DEVICE=z([u,h,c,m,g,y,w,b,v]),J.ENGINE=J.OS=z([d,f]),typeof i!==s)t.exports&&(i=t.exports=J),i.UAParser=J;else if(typeof define===n&&define.amd)e.r,void 0!==J&&e.v(J);else typeof r!==s&&(r.UAParser=J);var Z=typeof r!==s&&(r.jQuery||r.Zepto);if(Z&&!Z.ua){var K=new J;Z.ua=K.getResult(),Z.ua.get=function(){return K.getUA()},Z.ua.set=function(e){K.setUA(e);var t=K.getResult();for(var i in t)Z.ua[i]=t[i]}}}(this)}},n={};function s(e){var t=n[e];if(void 0!==t)return t.exports;var i=n[e]={exports:{}},a=!0;try{r[e].call(i.exports,i,i.exports,s),a=!1}finally{a&&delete n[e]}return i.exports}s.ab="/ROOT/node_modules/.pnpm/next@16.3.6_@babel+core@7.29.7_@types+node@22.20.4_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/compiled/ua-parser-js/",t.exports=s(943)},343023,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r,n={isBot:function(){return o},userAgent:function(){return u},userAgentFromString:function(){return l}};for(var s in n)Object.defineProperty(i,s,{enumerable:!0,get:n[s]});let a=(r=e.r(765284))&&r.__esModule?r:{default:r};function o(e){return/Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Google-InspectionTool|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver|GPTBot/i.test(e)}function l(e){return{...(0,a.default)(e),isBot:void 0!==e&&o(e)}}function u({headers:e}){return l(e.get("user-agent")||void 0)}},136184,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"URLPattern",{enumerable:!0,get:function(){return r}});let r="u"<typeof URLPattern?void 0:URLPattern},206352,(e,t,i)=>{"use strict";function r(e,t,i){if(e){for(let r of(i&&(i=i.toLowerCase()),e))if(t===r.domain?.split(":",1)[0].toLowerCase()||i===r.defaultLocale.toLowerCase()||r.locales?.some(e=>e.toLowerCase()===i))return r}}Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"detectDomainLocale",{enumerable:!0,get:function(){return r}})},892771,(e,t,i)=>{"use strict";function r(e){return 47===e.charCodeAt(e.length-1)&&e.length>1?e.slice(0,-1):e}Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"removeTrailingSlash",{enumerable:!0,get:function(){return r}})},754143,(e,t,i)=>{"use strict";function r(e){let t=e.indexOf("#"),i=e.indexOf("?"),r=i>-1&&(t<0||i<t);return r||t>-1?{pathname:e.substring(0,r?i:t),query:r?e.substring(i,t>-1?t:void 0):"",hash:t>-1?e.slice(t):""}:{pathname:e,query:"",hash:""}}Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"parsePath",{enumerable:!0,get:function(){return r}})},402355,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"addPathPrefix",{enumerable:!0,get:function(){return n}});let r=e.r(754143);function n(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:i,query:n,hash:s}=(0,r.parsePath)(e);return`${t}${i}${n}${s}`}},667577,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"addPathSuffix",{enumerable:!0,get:function(){return n}});let r=e.r(754143);function n(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:i,query:n,hash:s}=(0,r.parsePath)(e);return`${i}${t}${n}${s}`}},335642,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"pathHasPrefix",{enumerable:!0,get:function(){return n}});let r=e.r(754143);function n(e,t){if("string"!=typeof e)return!1;let{pathname:i}=(0,r.parsePath)(e);return i===t||i.startsWith(t+"/")}},934624,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"addLocale",{enumerable:!0,get:function(){return s}});let r=e.r(402355),n=e.r(335642);function s(e,t,i,s){if(!t||t===i)return e;let a=e.toLowerCase();return!s&&((0,n.pathHasPrefix)(a,"/api")||(0,n.pathHasPrefix)(a,`/${t.toLowerCase()}`))?e:(0,r.addPathPrefix)(e,`/${t}`)}},472133,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"formatNextPathnameInfo",{enumerable:!0,get:function(){return o}});let r=e.r(892771),n=e.r(402355),s=e.r(667577),a=e.r(934624);function o(e){let t=(0,a.addLocale)(e.pathname,e.locale,e.buildId?void 0:e.defaultLocale,e.ignorePrefix);return(e.buildId||!e.trailingSlash)&&(t=(0,r.removeTrailingSlash)(t)),e.buildId&&(t=(0,s.addPathSuffix)((0,n.addPathPrefix)(t,`/_next/data/${e.buildId}`),"/"===e.pathname?"index.json":".json")),t=(0,n.addPathPrefix)(t,e.basePath),!e.buildId&&e.trailingSlash?t.endsWith("/")?t:(0,s.addPathSuffix)(t,"/"):(0,r.removeTrailingSlash)(t)}},410811,(e,t,i)=>{"use strict";function r(e,t){let i;if(t?.host&&!Array.isArray(t.host))i=t.host.toString().split(":",1)[0];else{if(!e.hostname)return;i=e.hostname}return i.toLowerCase()}Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"getHostname",{enumerable:!0,get:function(){return r}})},544965,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"normalizeLocalePath",{enumerable:!0,get:function(){return n}});let r=new WeakMap;function n(e,t){let i;if(!t)return{pathname:e};let n=r.get(t);n||(n=t.map(e=>e.toLowerCase()),r.set(t,n));let s=e.split("/",2);if(!s[1])return{pathname:e};let a=s[1].toLowerCase(),o=n.indexOf(a);return o<0?{pathname:e}:(i=t[o],{pathname:e=e.slice(i.length+1)||"/",detectedLocale:i})}},320811,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"removePathPrefix",{enumerable:!0,get:function(){return n}});let r=e.r(335642);function n(e,t){if(!(0,r.pathHasPrefix)(e,t))return e;let i=e.slice(t.length);return i.startsWith("/")?i:`/${i}`}},305619,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"getNextPathnameInfo",{enumerable:!0,get:function(){return a}});let r=e.r(544965),n=e.r(320811),s=e.r(335642);function a(e,t){let{basePath:i,i18n:a,trailingSlash:o}=t.nextConfig??{},l={pathname:e,trailingSlash:"/"!==e?e.endsWith("/"):o};i&&(0,s.pathHasPrefix)(l.pathname,i)&&(l.pathname=(0,n.removePathPrefix)(l.pathname,i),l.basePath=i);let u=l.pathname;if(l.pathname.startsWith("/_next/data/")&&l.pathname.endsWith(".json")){let e=l.pathname.replace(/^\/_next\/data\//,"").replace(/\.json$/,"").split("/");l.buildId=e[0],u="index"!==e[1]?`/${e.slice(1).join("/")}`:"/",!0===t.parseData&&(l.pathname=u)}if(a){let e=t.i18nProvider?t.i18nProvider.analyze(l.pathname):(0,r.normalizeLocalePath)(l.pathname,a.locales);l.locale=e.detectedLocale,l.pathname=e.pathname??l.pathname,!e.detectedLocale&&l.buildId&&(e=t.i18nProvider?t.i18nProvider.analyze(u):(0,r.normalizeLocalePath)(u,a.locales)).detectedLocale&&(l.locale=e.detectedLocale)}return l}},700687,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"NextURL",{enumerable:!0,get:function(){return d}});let r=e.r(206352),n=e.r(472133),s=e.r(410811),a=e.r(305619),o=/^(?:127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\[::1\]|localhost)$/;function l(e,t){let i=new URL(String(e),t&&String(t));return o.test(i.hostname)&&(i.hostname="localhost"),i}let u=Symbol("NextURLInternal");class d{constructor(e,t,i){let r,n;"object"==typeof t&&"pathname"in t||"string"==typeof t?(r=t,n=i||{}):n=i||t||{},this[u]={url:l(e,r??n.base),options:n,basePath:""},this.analyze()}analyze(){var e,t,i,n,o;let l=(0,a.getNextPathnameInfo)(this[u].url.pathname,{nextConfig:this[u].options.nextConfig,parseData:!0,i18nProvider:this[u].options.i18nProvider}),d=(0,s.getHostname)(this[u].url,this[u].options.headers);this[u].domainLocale=this[u].options.i18nProvider?this[u].options.i18nProvider.detectDomainLocale(d):(0,r.detectDomainLocale)(null==(t=this[u].options.nextConfig)||null==(e=t.i18n)?void 0:e.domains,d);let c=(null==(i=this[u].domainLocale)?void 0:i.defaultLocale)||(null==(o=this[u].options.nextConfig)||null==(n=o.i18n)?void 0:n.defaultLocale);this[u].url.pathname=l.pathname,this[u].defaultLocale=c,this[u].basePath=l.basePath??"",this[u].buildId=l.buildId,this[u].locale=l.locale??c,this[u].trailingSlash=l.trailingSlash}formatPathname(){return(0,n.formatNextPathnameInfo)({basePath:this[u].basePath,buildId:this[u].buildId,defaultLocale:this[u].options.forceLocale?void 0:this[u].defaultLocale,locale:this[u].locale,pathname:this[u].url.pathname,trailingSlash:this[u].trailingSlash})}formatSearch(){return this[u].url.search}get buildId(){return this[u].buildId}set buildId(e){this[u].buildId=e}get locale(){return this[u].locale??""}set locale(e){var t,i;if(!this[u].locale||!(null==(i=this[u].options.nextConfig)||null==(t=i.i18n)?void 0:t.locales.includes(e)))throw Object.defineProperty(TypeError(`The NextURL configuration includes no locale "${e}"`),"__NEXT_ERROR_CODE",{value:"E597",enumerable:!1,configurable:!0});this[u].locale=e}get defaultLocale(){return this[u].defaultLocale}get domainLocale(){return this[u].domainLocale}get searchParams(){return this[u].url.searchParams}get host(){return this[u].url.host}set host(e){this[u].url.host=e}get hostname(){return this[u].url.hostname}set hostname(e){this[u].url.hostname=e}get port(){return this[u].url.port}set port(e){this[u].url.port=e}get protocol(){return this[u].url.protocol}set protocol(e){this[u].url.protocol=e}get href(){let e=this.formatPathname(),t=this.formatSearch();return`${this.protocol}//${this.host}${e}${t}${this.hash}`}set href(e){this[u].url=l(e),this.analyze()}get origin(){return this[u].url.origin}get pathname(){return this[u].url.pathname}set pathname(e){this[u].url.pathname=e}get hash(){return this[u].url.hash}set hash(e){this[u].url.hash=e}get search(){return this[u].url.search}set search(e){this[u].url.search=e}get password(){return this[u].url.password}set password(e){this[u].url.password=e}get username(){return this[u].url.username}set username(e){this[u].url.username=e}get basePath(){return this[u].basePath}set basePath(e){this[u].basePath=e.startsWith("/")?e:`/${e}`}toString(){return this.href}toJSON(){return this.href}[Symbol.for("edge-runtime.inspect.custom")](){return{href:this.href,origin:this.origin,protocol:this.protocol,username:this.username,password:this.password,host:this.host,hostname:this.hostname,port:this.port,pathname:this.pathname,search:this.search,searchParams:this.searchParams,hash:this.hash}}clone(){return new d(String(this),this[u].options)}}},979843,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={ACTION_SUFFIX:function(){return g},APP_DIR_ALIAS:function(){return U},CACHE_ONE_YEAR_SECONDS:function(){return P},DOT_NEXT_ALIAS:function(){return F},ESLINT_DEFAULT_DIRS:function(){return eo},GSP_NO_RETURNED_VALUE:function(){return et},GSSP_COMPONENT_MEMBER_ERROR:function(){return en},GSSP_NO_RETURNED_VALUE:function(){return ei},HTML_CONTENT_TYPE_HEADER:function(){return a},INFINITE_CACHE:function(){return T},INSTRUMENTATION_HOOK_FILENAME:function(){return M},JSON_CONTENT_TYPE_HEADER:function(){return o},MATCHED_PATH_HEADER:function(){return d},MIDDLEWARE_FILENAME:function(){return C},MIDDLEWARE_LOCATION_REGEXP:function(){return D},NEXT_BODY_SUFFIX:function(){return b},NEXT_CACHE_IMPLICIT_TAG_ID:function(){return j},NEXT_CACHE_REVALIDATED_TAGS_HEADER:function(){return S},NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER:function(){return _},NEXT_CACHE_ROOT_PARAM_TAG_ID:function(){return A},NEXT_CACHE_SOFT_TAG_MAX_LENGTH:function(){return O},NEXT_CACHE_TAGS_HEADER:function(){return E},NEXT_CACHE_TAG_MAX_ITEMS:function(){return $},NEXT_CACHE_TAG_MAX_LENGTH:function(){return R},NEXT_DATA_SUFFIX:function(){return w},NEXT_INTERCEPTION_MARKER_PREFIX:function(){return u},NEXT_META_SUFFIX:function(){return y},NEXT_NAV_DEPLOYMENT_ID_HEADER:function(){return v},NEXT_QUERY_PARAM_PREFIX:function(){return l},NEXT_RESUME_HEADER:function(){return k},NEXT_RESUME_STATE_LENGTH_HEADER:function(){return x},NON_STANDARD_NODE_ENV:function(){return es},PAGES_DIR_ALIAS:function(){return L},PRERENDER_REVALIDATE_HEADER:function(){return c},PRERENDER_REVALIDATE_ONLY_GENERATED_HEADER:function(){return h},PROXY_FILENAME:function(){return N},PROXY_LOCATION_REGEXP:function(){return I},PUBLIC_DIR_MIDDLEWARE_CONFLICT:function(){return V},ROOT_DIR_ALIAS:function(){return W},RSC_ACTION_CLIENT_WRAPPER_ALIAS:function(){return Y},RSC_ACTION_ENCRYPTION_ALIAS:function(){return q},RSC_ACTION_PROXY_ALIAS:function(){return G},RSC_ACTION_VALIDATE_ALIAS:function(){return B},RSC_CACHE_WRAPPER_ALIAS:function(){return X},RSC_DYNAMIC_IMPORT_WRAPPER_ALIAS:function(){return H},RSC_MOD_REF_PROXY_ALIAS:function(){return z},RSC_SEGMENTS_DIR_SUFFIX:function(){return f},RSC_SEGMENT_SUFFIX:function(){return p},RSC_SUFFIX:function(){return m},SERVER_PROPS_EXPORT_ERROR:function(){return ee},SERVER_PROPS_GET_INIT_PROPS_CONFLICT:function(){return Z},SERVER_PROPS_SSG_CONFLICT:function(){return K},SERVER_RUNTIME:function(){return el},SSG_FALLBACK_EXPORT_ERROR:function(){return ea},SSG_GET_INITIAL_PROPS_CONFLICT:function(){return J},STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR:function(){return Q},TEXT_PLAIN_CONTENT_TYPE_HEADER:function(){return s},UNSTABLE_REVALIDATE_RENAME_ERROR:function(){return er},WEBPACK_LAYERS:function(){return ec},WEBPACK_RESOURCE_QUERIES:function(){return eh},WEB_SOCKET_MAX_RECONNECTIONS:function(){return eu}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s="text/plain",a="text/html; charset=utf-8",o="application/json; charset=utf-8",l="nxtP",u="nxtI",d="x-matched-path",c="x-prerender-revalidate",h="x-prerender-revalidate-if-generated",f=".segments",p=".segment.rsc",m=".rsc",g=".action",w=".json",y=".meta",b=".body",v="x-nextjs-deployment-id",E="x-next-cache-tags",S="x-next-revalidated-tags",_="x-next-revalidate-tag-token",k="next-resume",x="x-next-resume-state-length",$=128,R=256,O=1024,j="_N_T_",A="_N_RP_",P=31536e3,T=0xfffffffe,C="middleware",D=`(?:src/)?${C}`,N="proxy",I=`(?:src/)?${N}`,M="instrumentation",L="private-next-pages",F="private-dot-next",W="private-next-root-dir",U="private-next-app-dir",z="private-next-rsc-mod-ref-proxy",B="private-next-rsc-action-validate",G="private-next-rsc-server-reference",X="private-next-rsc-cache-wrapper",H="private-next-rsc-track-dynamic-import",q="private-next-rsc-action-encryption",Y="private-next-rsc-action-client-wrapper",V="You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://nextjs.org/docs/messages/public-next-folder-conflict",J="You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps",Z="You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.",K="You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps",Q="can not have getInitialProps/getServerSideProps, https://nextjs.org/docs/messages/404-get-initial-props",ee="pages with `getServerSideProps` can not be exported. See more info here: https://nextjs.org/docs/messages/gssp-export",et="Your `getStaticProps` function did not return an object. Did you forget to add a `return`?",ei="Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?",er="The `unstable_revalidate` property is available for general use.\nPlease use `revalidate` instead.",en="can not be attached to a page's component and must be exported from the page. See more info here: https://nextjs.org/docs/messages/gssp-component-member",es='You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://nextjs.org/docs/messages/non-standard-node-env',ea="Pages with `fallback` enabled in `getStaticPaths` can not be exported. See more info here: https://nextjs.org/docs/messages/ssg-fallback-true-export",eo=["app","pages","components","lib","src"],el={edge:"edge",experimentalEdge:"experimental-edge",nodejs:"nodejs"},eu=12,ed={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",apiNode:"api-node",apiEdge:"api-edge",middleware:"middleware",instrument:"instrument",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",pagesDirBrowser:"pages-dir-browser",pagesDirEdge:"pages-dir-edge",pagesDirNode:"pages-dir-node"},ec={...ed,GROUP:{builtinReact:[ed.reactServerComponents,ed.actionBrowser],serverOnly:[ed.reactServerComponents,ed.actionBrowser,ed.instrument,ed.middleware],neutralTarget:[ed.apiNode,ed.apiEdge],clientOnly:[ed.serverSideRendering,ed.appPagesBrowser],bundled:[ed.reactServerComponents,ed.actionBrowser,ed.serverSideRendering,ed.appPagesBrowser,ed.shared,ed.instrument,ed.middleware],appPages:[ed.reactServerComponents,ed.serverSideRendering,ed.appPagesBrowser,ed.actionBrowser]}},eh={edgeSSREntry:"__next_edge_ssr_entry__",metadata:"__next_metadata__",metadataRoute:"__next_metadata_route__",metadataImageMeta:"__next_metadata_image_meta__"}},776937,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={fromNodeOutgoingHttpHeaders:function(){return a},normalizeNextQueryParam:function(){return d},splitCookiesString:function(){return o},toNodeOutgoingHttpHeaders:function(){return l},validateURL:function(){return u}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let s=e.r(979843);function a(e){let t=new Headers;for(let[i,r]of Object.entries(e))for(let e of Array.isArray(r)?r:[r])void 0!==e&&("number"==typeof e&&(e=e.toString()),t.append(i,e));return t}function o(e){var t,i,r,n,s,a=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,s=!1;l();)if(","===(i=e.charAt(o))){for(r=o,o+=1,l(),n=o;o<e.length&&"="!==(i=e.charAt(o))&&";"!==i&&","!==i;)o+=1;o<e.length&&"="===e.charAt(o)?(s=!0,o=n,a.push(e.substring(t,r)),t=o):o=r+1}else o+=1;(!s||o>=e.length)&&a.push(e.substring(t,e.length))}return a}function l(e){let t={},i=[];if(e)for(let[r,n]of e.entries())"set-cookie"===r.toLowerCase()?(i.push(...o(n)),t[r]=1===i.length?i[0]:i):t[r]=n;return t}function u(e){try{return String(new URL(String(e)))}catch(t){throw Object.defineProperty(Error(`URL is malformed "${String(e)}". Please use only absolute URLs - https://nextjs.org/docs/messages/middleware-relative-urls`,{cause:t}),"__NEXT_ERROR_CODE",{value:"E61",enumerable:!1,configurable:!0})}}function d(e){for(let t of[s.NEXT_QUERY_PARAM_PREFIX,s.NEXT_INTERCEPTION_MARKER_PREFIX])if(e!==t&&e.startsWith(t))return e.substring(t.length);return null}},476913,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={PageSignatureError:function(){return s},RemovedPageError:function(){return a},RemovedUAError:function(){return o}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});class s extends Error{constructor({page:e}){super(`The middleware "${e}" accepts an async API directly with the form:
163
+
164
+ export function middleware(request, event) {
165
+ return NextResponse.redirect('/new-location')
166
+ }
167
+
168
+ Read more: https://nextjs.org/docs/messages/middleware-new-signature
169
+ `),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1177",enumerable:!1,configurable:!0})}}class a extends Error{constructor(){super("The request.page has been deprecated in favour of `URLPattern`.\n Read more: https://nextjs.org/docs/messages/middleware-request-page\n "),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1178",enumerable:!1,configurable:!0})}}class o extends Error{constructor(){super("The request.ua has been removed in favour of `userAgent` function.\n Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent\n "),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1172",enumerable:!1,configurable:!0})}}},799501,845339,e=>{"use strict";let t;var i=e.i(924868),r=e.i(814747),n=e.i(446786),s=e.i(845285),a=e.i(233405),o=e.i(224361),l=e.i(471448),u=e.i(388985),d=e.i(731946),c=e.i(975283),h=e.i(31451),f=e.i(5704),p=e.i(531208),m=e.i(840980),g=e.i(806723),w=e.i(845122),y=e.i(404466),b=e.i(483284),v=e.i(817466),E=e.i(76569),S=e.i(166045),_=e.i(732613),k=e.i(282416),x=e.i(440732),$=e.i(976259);let R="<!-- vibedoc:entries:start -->",O="<!-- vibedoc:entries:end -->",j={convention:"Conventions",gotcha:"Gotchas",decision:"Decisions",preference:"Preferences"};function A(e){let t=e.body.split(/\r?\n/).map(e=>e.trim()).find(Boolean);return`- ${e.summary}${t?`: ${t.slice(0,200).trim()}`:""} (${e.id})`}let P=["name","description","type"],T=e=>e.trim().replace(/^(['"])(.*)\1$/,"$2"),C="claude-code:";var D=e.i(192258);function N(){return"1"===process.env.VIBEDOC_DEMO}function I(){return process.env.VIBEDOC_ROOT||process.cwd()}async function M(e){let t=e||r.default.dirname(I()),n=[];if(!N())try{for(let e of(await i.default.readdir(t,{withFileTypes:!0}))){if(!e.isDirectory())continue;let s=r.default.join(t,e.name),a=!1;for(let e of["CLAUDE.md","AGENTS.md","docs/architecture",".vibedoc"])try{await i.default.access(r.default.join(s,e)),a=!0;break}catch{}a&&n.push({id:e.name,name:e.name,root:s,hasVibedoc:!0})}}catch{}let s=I(),a=r.default.basename(s),o=n.findIndex(e=>e.root===s);if(o>0){let[e]=n.splice(o,1);n.unshift(e)}else -1===o&&n.unshift({id:a,name:a,root:s,hasVibedoc:!0});return n}async function L(e){return Promise.all((await (0,s.glob)("**/*.md",{cwd:e,ignore:["node_modules/**",".git/**",".next/**"],nodir:!0})).sort().map(async t=>{var n;return{path:t,section:(n=t).includes("/")?n.startsWith("memory/")?"memory":n.startsWith("plans/")?"plans":n.includes("01-overview")?"overview":n.includes("02-high-level")||n.includes("high-level-design")?"high-level-design":n.includes("03-services")||n.includes("/services/")?"services":n.includes("04-data")||n.includes("/data/")?"data":n.includes("05-infra")||n.includes("/infrastructure/")?"infrastructure":n.includes("06-security")||n.includes("/security/")?"security":n.includes("07-observ")||n.includes("/observability/")?"observability":n.includes("08-resil")||n.includes("/resilience/")?"resilience":n.includes("decisions/")||n.includes("ADR")?"decisions":"other":"root",name:r.default.basename(t,".md"),priority:(0,b.docPriority)(await i.default.readFile(r.default.join(e,t),"utf8").catch(()=>""))}}))}async function F(e,t,n){let s=r.default.resolve(n,e);if(!s.startsWith(r.default.resolve(n)+r.default.sep))throw Error("Path outside root");let a=await i.default.readFile(s,"utf8"),o=Object.entries(t).reduce((e,[t,i])=>(0,b.setDocProperty)(e,t,i),a);o!==a&&await i.default.writeFile(s,o,"utf8")}async function W(e,t){for(let n of[r.default.join(t,e),r.default.join(t,`${e}.md`),r.default.join(t,"docs",e),r.default.join(t,"docs",`${e}.md`),r.default.join(t,"docs","architecture",e),r.default.join(t,"docs","architecture",`${e}.md`),r.default.join(t,"memory",e),r.default.join(t,"memory",`${e}.md`),r.default.join(t,"plans",e),r.default.join(t,"plans",`${e}.md`)])try{let e=await i.default.readFile(n,"utf8");return{path:r.default.relative(t,n),content:e}}catch{}for(let n of[`**/${e}.md`,`**/${e}*.md`,`**/*${e}*.md`]){let e=await (0,s.glob)(n,{cwd:t,ignore:["node_modules/**",".git/**",".next/**"],nodir:!0,nocase:!0});if(e.length>0){let n=await i.default.readFile(r.default.join(t,e[0]),"utf8");return{path:e[0],content:n}}}throw Error(`Doc not found: "${e}"`)}async function U(e,t,n){let s=r.default.resolve(n),a=r.default.resolve(n,e);if(!a.startsWith(s+r.default.sep)&&a!==s)throw Error("Path outside root");await i.default.mkdir(r.default.dirname(a),{recursive:!0}),await i.default.writeFile(a,t,"utf8")}async function z(e,t,n,s=!1){let a=r.default.resolve(n),o=r.default.resolve(n,e);if(!o.startsWith(a+r.default.sep))throw Error("Path outside root");let u=await i.default.readFile(o,"utf8").catch(e=>{if("ENOENT"===e.code)return"";throw e}),d=(0,l.applyEdits)(u,t);if("error"in d)throw Error(d.error);return s||(await i.default.mkdir(r.default.dirname(o),{recursive:!0}),await i.default.writeFile(o,d.content,"utf8")),{before:u,content:d.content}}async function B(e,t){let i=[];for(let r of e)try{let{content:e}=await W(r,t);i.push(`--- FILE: ${r} ---
170
+
171
+ ${e.trim()}`)}catch{}return i.join("\n\n---\n\n")}async function G(e,t,n,s="human"){let a=r.default.resolve(n),o=r.default.resolve(n,e);if(!o.startsWith(a+r.default.sep)&&o!==a)throw Error("Path outside root");try{await i.default.access(o);let t=Error(`File already exists: ${e}`);throw t.code="EEXIST",t}catch(e){if("ENOENT"!==e.code)throw e}await i.default.mkdir(r.default.dirname(o),{recursive:!0}),await i.default.writeFile(o,t,"utf8"),await ts(n,{type:"doc_created",actor:s,title:`Created: ${e}`,detail:e});try{let{exists:e}=await tw(n);e&&await ty(n,s,!1)}catch{}}async function X(e,t){let n=await (0,s.glob)("**/*.md",{cwd:t,ignore:["node_modules/**",".git/**",".next/**"],nodir:!0}),a=e.toLowerCase(),o=[];for(let e of n)try{let n=(await i.default.readFile(r.default.join(t,e),"utf8")).split("\n").map((e,t)=>({line:t+1,text:e.trim().slice(0,120)})).filter(e=>e.text.toLowerCase().includes(a));n.length>0&&o.push({file:e,hits:n.slice(0,4),totalHits:n.length})}catch{}return o.sort((e,t)=>t.totalHits-e.totalHits).slice(0,20)}e.s(["demoForbidden",0,function(){return D.NextResponse.json({error:"Read-only demo"},{status:403})},"isDemo",0,N],845339);let H=new Set;function q(e,t,i){let n=t.split("\n"),s=r.default.basename(e,".md"),a=(n.find(e=>e.startsWith("# "))||"").replace(/^#+\s*/,"").replace(/^T\d+\s*[:—–-]\s*/i,"").trim()||s,o={};for(let e of n.slice(0,tL(n))){let t=e.match(/\*\*([^*]+):\*\*\s*(.+)/);t&&(o[t[1].toLowerCase().trim()]=t[2].trim())}let l=(0,w.resolveStatus)(o.status||"todo",i),u=`${e}\0${o.status}`;l.unknown&&!H.has(u)&&(H.add(u),console.warn(`[vibedoc] ${e}: unknown status "${o.status}", shown as todo`));let{status:d,customStatus:c}=l,h=s.match(/^(T\d+)/i),p=h?h[1].toUpperCase():s.toUpperCase(),g=(0,f.parseManualTests)(t),y=g&&{total:g.total,done:g.done};return{id:p,title:a,status:d,...c&&{customStatus:c},size:o.size||"",phase:o.phase||"",dependsOn:o["depends on"]||"",owner:(0,m.parseOwner)(o.owner),priority:(0,b.parsePriority)(o.priority),due:tN(o.due||""),started:tN(o.started||""),finished:tN(o.done||""),manualTests:y,file:e,raw:t}}async function Y(e){let{statuses:t}=await J(e),n=await (0,s.glob)("plans/tasks/T*.md",{cwd:e,nodir:!0});0===n.length&&(n=await (0,s.glob)("plans/T*.md",{cwd:e,nodir:!0}));let a=[];for(let s of n.sort())try{let n=await i.default.readFile(r.default.join(e,s),"utf8");a.push(q(s,n,t))}catch{}let o={todo:[],"in-progress":[],review:[],blocked:[],paused:[],done:[],cancelled:[]};for(let e of a){let t=o[e.status]?e.status:"todo";o[t].push(e)}return{tasks:a,board:o}}async function V(e,t){let{statuses:n}=await J(t),a=e.toUpperCase().startsWith("T")?e.toUpperCase():`T${e}`;for(let e of[`plans/tasks/${a}*.md`,`plans/${a}*.md`]){let a=await (0,s.glob)(e,{cwd:t,nodir:!0});if(a.length>0){let e=await i.default.readFile(r.default.join(t,a[0]),"utf8");return q(a[0],e,n)}}throw Error(`Task not found: ${e}`)}async function J(e){let t=null;try{t=JSON.parse(await i.default.readFile(r.default.join(e,".vibedoc","settings.json"),"utf8"))}catch{}let n=Number(t?.memory?.sessionBudgetTokens);return{sizeDays:{...g.DEFAULT_SIZE_DAYS,...t?.tasks?.sizeDays??{}},statuses:(0,w.statusDefs)(t?.statuses),sessionBudgetTokens:n>0?n:v.DEFAULT_SESSION_BUDGET}}function Z(e,t,i){let r=e.split("\n"),n=tL(r),s=r.slice(0,n).findIndex(e=>e.toLowerCase().startsWith(`**${t.toLowerCase()}:**`));return i?s>=0?r[s]=`**${t}:** ${i}`:r.splice(n,0,`**${t}:** ${i}`):s>=0&&r.splice(s,1),r.join("\n")}async function K(e,t,n,s="human",a){var o;let l=await V(e,n),u=l.status,{statuses:d,sizeDays:c}=await J(n),h=(0,w.resolveStatus)(t,d);if(h.unknown)throw new tx(`Unknown status "${t}" (expected ${d.map(e=>e.id).join(" | ")})`);let f=h.status,p=(0,w.statusLine)(t,d),b=l.raw,v=/(\*\*Status:\*\*\s*).+/;b=v.test(b)?b.replace(v,`$1${p}`):b.replace(/^(#[^\n]+\n)/,`$1**Status:** ${p}
172
+ `);let E=(o=l.owner,a?"ai"===a.actor?"in-progress"===f?(0,m.parseOwner)(`ai:${a.agent||"agent"}`)??"ai:agent":o:o??"human":o);E!==l.owner&&(b=Z(b,"Owner",E));let S=(0,g.datesOnMove)(f,{due:l.due,started:l.started,done:l.finished},l.size,(0,y.localToday)(),c);S.due!==l.due&&(b=Z(b,"Due",S.due)),S.started!==l.started&&(b=Z(b,"Started",S.started)),S.done!==l.finished&&(b=Z(b,"Done",S.done)),await i.default.writeFile(r.default.join(n,l.file),b,"utf8"),(l.status!==f||l.customStatus!==h.customStatus)&&await ts(n,{type:"task_updated",actor:s,title:`${l.id} moved to ${f}`,detail:l.title,taskId:l.id,taskStatus:f});let{customStatus:_,...k}=l;return{task:{...k,status:f,...h.customStatus&&{customStatus:h.customStatus},owner:E,due:S.due,started:S.started,finished:S.done,raw:b},previousStatus:u}}let Q=[["phase","Phase"],["size","Size"],["dependsOn","Depends on"],["due","Due"],["owner","Owner"],["priority","Priority"]];async function ee(e,t,n,s="human"){let a=await V(e,n),o=e=>e.replace(/\s+/g," ").trim(),l=a.raw.split("\n"),u=tL(l);if(void 0!==t.title){let e=o(t.title);if(!e)throw new tx("title must not be empty");let i=l.findIndex(e=>e.startsWith("# "));i>=0?l[i]=`# ${a.id}: ${e}`:(l.unshift(`# ${a.id}: ${e}`),u++)}for(let[e,i]of Q){let r=t[e];if(void 0===r)continue;let n=null===r?"":o(r);if("due"===e&&n){let e=tN(n);if(!e)throw new tx(`due must be a date YYYY-MM-DD (got ${JSON.stringify(r)})`);n=e}if("owner"===e&&n){let e=(0,m.parseOwner)(n);if(!e)throw new tx(`owner must be "human" or "ai:<agent>" (got ${JSON.stringify(r)})`);n=e}if("priority"===e&&n){let e=(0,b.parsePriority)(n);if(!e)throw new tx(`priority must be P0, P1, P2 or P3 (got ${JSON.stringify(r)})`);n=e}let s=l.slice(0,u).findIndex(e=>e.toLowerCase().startsWith(`**${i.toLowerCase()}:**`));if(!n&&("due"===e||"owner"===e||"priority"===e)){s>=0&&(l.splice(s,1),u--);continue}let a=`**${i}:** ${n||"—"}`;s>=0?l[s]=a:(l.splice(u,0,a),u++)}let d=l.join("\n");return d===a.raw?a:(await i.default.writeFile(r.default.join(n,a.file),d,"utf8"),await ts(n,{type:"task_updated",actor:s,title:`${a.id} edited`,detail:a.title,taskId:a.id}),V(a.id,n))}function et(e,t,n="human"){return ed(async()=>{let s=await V(e,t);await i.default.unlink(r.default.join(t,s.file));let{items:a}=await tq(t),o=[];for(let e of a.filter(e=>e.tasks.includes(s.id)))o.push({epic:e.id,index:e.tasks.indexOf(s.id)}),await t1(e.id,{tasks:e.tasks.filter(e=>e!==s.id)},t,n,!1);return await ts(t,{type:"task_updated",actor:n,title:`${s.id} deleted`,detail:s.title,taskId:s.id}),{task:s,links:o}})}async function ei(e,t,i,r="human"){let n=await V(e,i),{items:s}=await tq(i),a=t?s.find(e=>e.id===t.trim().toUpperCase()&&null!==e.parent):void 0;if(t&&!a)throw new tx(`Epic not found: ${t}`);for(let e of s.filter(e=>e.tasks.includes(n.id)&&e.id!==a?.id))await t1(e.id,{tasks:e.tasks.filter(e=>e!==n.id)},i,r,!1);return a&&!a.tasks.includes(n.id)&&await t1(a.id,{tasks:[...a.tasks,n.id]},i,r,!1),ee(n.id,{phase:a?`${a.id} — ${a.title}`:""},i,r)}async function er(e,t,i,r="human"){let n=[];for(let s of e)"status"in t?await K(s,t.status,i,r,{actor:r}):"epic"in t?await ei(s,t.epic,i,r):"delete"in t&&n.push(await et(s,i,r));return{deleted:n}}function en(e,t,i){if("string"!=typeof e)return!1;let n=r.default.posix.normalize(e);return n===e&&r.default.posix.dirname(n)===t&&i.test(r.default.posix.basename(n))}async function es(e,t,n,s="ai"){let a=await V(e,n),o=(0,f.setManualTests)(a.raw??"",t,s,new Date().toISOString().slice(0,10));return await i.default.writeFile(r.default.join(n,a.file),o,"utf8"),V(a.id,n)}class ea extends Error{}async function eo(e,t,n,s,a){let o=await V(e,a);if("review"!==o.status)throw new ea(`${o.id} is ${o.status}, not in review`);let l=new Date().toISOString().replace(/\.\d{3}Z$/,"Z"),u=(0,p.appendReviewEntry)(o.raw??"",t,n,l);return await i.default.writeFile(r.default.join(a,o.file),u,"utf8"),K(o.id,s,a,"human")}async function el(e,t,n,s){let a=await V(e,s),o=(0,f.toggleManualTest)(a.raw??"",t,n);return o!==a.raw&&await i.default.writeFile(r.default.join(s,a.file),o,"utf8"),V(a.id,s)}let eu=Promise.resolve();function ed(e){let t=eu.then(e,e);return eu=t.catch(()=>{}),t}async function ec(e,t,n){let{tasks:s}=await Y(t),a=e.title.replace(/\s+/g," ").trim(),o=s.map(e=>parseInt(e.id.replace(/^T/i,""),10)).filter(e=>!isNaN(e)),l=o.length>0?Math.max(...o)+1:1,u=`T${String(l).padStart(3,"0")}`,d=a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,40)||"task",c=`${u}-${d}.md`,h=r.default.join(t,"plans","tasks");await i.default.mkdir(h,{recursive:!0});let f=r.default.join(h,c),p=e.due?tN(e.due):null;if(e.due&&!p)throw new tx(`due must be a date YYYY-MM-DD (got ${JSON.stringify(e.due)})`);let m=e.phase?.trim().match(/^(R\d+)\b/i)?.[1];!p&&m&&(p=(await tY(m,t).catch(()=>null))?.due??null);let g=`# ${u}: ${a}
173
+ **Status:** 📋 Ready
174
+ **Phase:** ${e.phase||"—"}
175
+ **Size:** ${e.size||"—"}
176
+ **Depends on:** ${e.dependsOn||"—"}
177
+ ${p?`**Due:** ${p}
178
+ `:""}`,w=void 0!==e.body?`${g}
179
+ ${e.body.trim()}
180
+ `:`${g}
181
+ ## What to build
182
+ ${e.description||"—"}
183
+
184
+ ## Scope
185
+ - [ ]
186
+
187
+ ## Acceptance criteria
188
+ - [ ]
189
+
190
+ ## Definition of done
191
+ —
192
+ `;return await i.default.writeFile(f,w,{flag:"wx",encoding:"utf8"}),await ts(t,{type:"task_updated",actor:n,title:`${u} created`,detail:a,taskId:u}),V(u,t)}function eh(e,t,i,r){let n=(0,c.validatePlan)(e,{roadmap:i,taskIds:r});if(n.length>0)throw new tx(n.join("\n"));if(!Array.isArray(t))throw new tx("selected must be an array of plan keys");let{plan:s,errors:a}=(0,c.selectPlan)(e,t.map(String));if(a.length>0)throw new tx(a.join("\n"));return s}async function ef(e,t,n="human"){let{title:a,context:o,decision:l,rationale:u,alternatives:d=[],consequences:c}=e,h=(await (0,s.glob)("docs/architecture/decisions/ADR-*.md",{cwd:t,nodir:!0})).map(e=>parseInt(r.default.basename(e).match(/ADR-(\d+)/)?.[1]||"0")).filter(e=>!isNaN(e)),f=String(h.length>0?Math.max(...h)+1:1).padStart(3,"0"),p=a.toLowerCase().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").slice(0,50),m=`ADR-${f}-${p}.md`,g=new Date().toISOString().split("T")[0],w=d.length>0?d.map(e=>`| ${e.option} | ${e.reason} |`).join("\n"):"| (none) | — |",y=`# ADR-${f}: ${a}
193
+
194
+ **Status:** ✅ Accepted
195
+ **Date:** ${g}
196
+
197
+ ## Context
198
+ ${o}
199
+
200
+ ## Decision
201
+ ${l}
202
+
203
+ ## Rationale
204
+ ${u||""}
205
+
206
+ ## Alternatives considered
207
+ | Option | Why rejected |
208
+ |--------|-------------|
209
+ ${w}
210
+
211
+ ## Consequences
212
+ ${c||""}
213
+ `,b=r.default.join(t,"docs/architecture/decisions",m);await i.default.mkdir(r.default.dirname(b),{recursive:!0}),await i.default.writeFile(b,y,"utf8");let v=r.default.join(t,"docs/architecture/decisions/_INDEX.md");try{let e=await i.default.readFile(v,"utf8");e=e.trimEnd()+`
214
+ | ADR-${f} | ${a} | ✅ Accepted | ${g} |
215
+ `,await i.default.writeFile(v,e,"utf8")}catch{await i.default.writeFile(v,`# ADR Index
216
+
217
+ | ADR | Title | Status | Date |
218
+ |-----|-------|--------|------|
219
+ | ADR-${f} | ${a} | ✅ Accepted | ${g} |
220
+ `,"utf8")}return await ts(t,{type:"decision_logged",actor:n,title:`ADR-${f}: ${a}`,detail:l.slice(0,100)}),{adrNumber:`ADR-${f}`,path:`docs/architecture/decisions/${m}`}}async function ep(e){try{return{content:await i.default.readFile(r.default.join(e,"memory","MEMORY.md"),"utf8"),exists:!0}}catch{return{content:"*(No MEMORY.md found — AI will create one at end of session)*",exists:!1}}}async function em(e,t,n="human"){let s=new Date,a=`${s.toISOString().split("T")[0]} at ${s.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"})}`,o=r.default.join(t,"memory","MEMORY.md"),l=await i.default.readFile(o,"utf8").catch(()=>""),u=(0,x.mergeMemory)(l,e,a);await ev(t,n,"update"),await i.default.mkdir(r.default.join(t,"memory"),{recursive:!0}),await i.default.writeFile(o,u,"utf8");let d=(0,x.passedKeys)(e);await ts(t,{type:"memory_updated",actor:n,title:"Session memory updated",detail:null!=e.handoff?String(e.handoff).slice(0,120):`Updated: ${x.SECTIONS.filter(([e])=>d.includes(e)).map(([,e])=>e).join(", ")}`})}let eg=r.default.join(".vibedoc","memory-history"),ew=/^\d{8}T\d{9}Z-[\w:-]+$/,ey=/^<!-- vibedoc-snapshot actor=(\S*) reason=(\S*) -->\r?\n/,eb=e=>e.replace(/^(\d{4})(\d\d)(\d\d)T(\d\d)(\d\d)(\d\d)(\d{3})Z.*$/,"$1-$2-$3T$4:$5:$6.$7Z");async function ev(e,t,n){let s=await i.default.readFile(r.default.join(e,"memory","MEMORY.md"),"utf8").catch(()=>null);if(null===s)return null;let a=r.default.join(e,eg);await i.default.mkdir(a,{recursive:!0});let o="ai"===t?"ai":"human",l=`<!-- vibedoc-snapshot actor=${o} reason=${n} -->
221
+ ${s}`,u="";for(let e=Date.now();;e++){u=`${new Date(e).toISOString().replace(/[-:.]/g,"")}-${o}`;try{await i.default.writeFile(r.default.join(a,`${u}.md`),l,{encoding:"utf8",flag:"wx"});break}catch(e){if("EEXIST"!==e.code)throw e}}let d=await eE(e);return await Promise.all(d.slice(20).map(e=>i.default.rm(r.default.join(a,`${e}.md`),{force:!0}))),u}async function eE(e){return(await i.default.readdir(r.default.join(e,eg)).catch(()=>[])).filter(e=>e.endsWith(".md")).map(e=>e.slice(0,-3)).filter(e=>ew.test(e)).sort().reverse()}async function eS(e,t){if(!ew.test(e))throw new tx("Invalid version id");let n=await i.default.readFile(r.default.join(t,eg,`${e}.md`),"utf8").catch(()=>null);if(null===n)return null;let s=ey.exec(n);return{actor:s?.[1]??"",reason:s?.[2]??"",content:s?n.slice(s[0].length):n}}async function e_(e){let t=[];for(let i of(await eE(e))){let r=await eS(i,e);if(!r)continue;let n=(0,x.parseMemory)(r.content).sections.find(e=>"handoff for next session"===e.heading.trim().toLowerCase()),s=n?.body.split(/\r?\n/).map(e=>e.trim()).find(Boolean)??"";t.push({id:i,at:eb(i),actor:r.actor,reason:r.reason,bytes:Buffer.byteLength(r.content),excerpt:s})}return t}async function ek(e,t){return(await eS(e,t))?.content??null}async function ex(e,t,n="human"){let s=await ek(e,t);if(null===s)throw new tx(`Version ${e} not found`,404);let a=await ev(t,n,"restore");await i.default.mkdir(r.default.join(t,"memory"),{recursive:!0}),await i.default.writeFile(r.default.join(t,"memory","MEMORY.md"),s,"utf8");let o=eb(e);return await ts(t,{type:"memory_updated",actor:n,title:`Restored MEMORY.md from ${o}`}),{restoredFrom:o,newId:a}}let e$=r.default.join("memory","entries"),eR=Promise.resolve();function eO(e){let t=eR.then(e,e);return eR=t.catch(()=>{}),t}async function ej(e){let t;try{t=await i.default.readdir(r.default.join(e,e$))}catch{return[]}return(await Promise.all(t.filter(e=>e.endsWith(".md")).map(async t=>{let n=r.default.join(e$,t);return(0,$.parseEntry)(await i.default.readFile(r.default.join(e,n),"utf8"),n)}))).filter(e=>!!e).sort((e,t)=>e.id.localeCompare(t.id,"en",{numeric:!0}))}async function eA(e,t){let i=(0,$.normalizeEntryId)(e);return(await ej(t)).find(e=>e.id===i)??null}function eP(e,t,n="human",s,a=!0){let o=(0,$.validateEntryInput)(e);return o?Promise.reject(Error(o)):eO(async()=>{let o,l,u=await ej(t);if(void 0!==e.id){if(o=(0,$.normalizeEntryId)(String(e.id)),!(l=u.find(e=>e.id===o)))throw Error(`Entry ${o} not found`)}else o=(0,$.nextEntryId)(u.map(e=>e.id));let d=e.summary.trim(),c={id:o,type:e.type,summary:d,body:(e.body??"").trim(),updatedAt:(0,y.localToday)(),by:"human"===n?"human":(0,m.parseOwner)(`ai:${s||"agent"}`)??"ai:agent",source:"string"==typeof e.source&&e.source.trim()||l?.source,file:r.default.join(e$,`${o}-${(0,$.entrySlug)(d)}.md`)};return await i.default.mkdir(r.default.join(t,e$),{recursive:!0}),await i.default.writeFile(r.default.join(t,c.file),(0,$.formatEntry)(c),"utf8"),l&&l.file!==c.file&&await i.default.rm(r.default.join(t,l.file),{force:!0}),a&&await ts(t,{type:"memory_updated",actor:n,title:`Entry ${o} saved`,detail:d}),c})}async function eT(e){let t=process.env.CLAUDE_CONFIG_DIR||r.default.join(n.default.homedir(),".claude"),s=await i.default.realpath(e).catch(()=>r.default.resolve(e));return r.default.join(t,"projects",s.replace(/[^a-zA-Z0-9]/g,"-"),"memory")}async function eC(e){let t,n=await eT(e);try{t=await i.default.readdir(n)}catch{return[]}let s=t.filter(e=>e.endsWith(".md")&&"MEMORY.md"!==e).sort();return(await Promise.all(s.map(async e=>(function(e,t){let i=e.replace(/\r\n/g,"\n").split("\n");if(i[0]?.trim()!=="---")return null;let r=i.indexOf("---",1);if(r<0)return null;let n={},s="";for(let e of i.slice(1,r)){let t=/^\s*([\w-]+):(?:\s+(.*))?$/.exec(e);t?(s=t[1],!P.includes(s)||s in n||(n[s]=T((t[2]??"").replace(/^[|>][-+]?$/,"")))):"description"===s&&e.trim()&&(n.description=`${n.description} ${e.trim()}`)}let a=n.name??"",o=(n.description??"").replace(/\s+/g," ").trim().slice(0,120).trim();return a&&o?{name:a,type:function(e){switch((e??"").trim().toLowerCase()){case"feedback":case"user":return"preference";case"project":return"decision";default:return"convention"}}(n.type),summary:o,body:i.slice(r+1).join("\n").trim(),file:t}:null})(await i.default.readFile(r.default.join(n,e),"utf8").catch(()=>""),e)))).filter(e=>!!e)}async function eD(e,t,i,s){let a=await eT(e),o=n.default.homedir(),l=a===o||a.startsWith(o+r.default.sep)?"~"+a.slice(o.length):a,u=await eC(e),d=function(e,t){let i=new Map;for(let e of t)e.source&&!i.has(e.source)&&i.set(e.source,e);let r={create:[],update:[],unchanged:[],onlyInVibedoc:[]},n=new Set;for(let t of e){let e=C+t.name;if(n.has(e))continue;n.add(e);let s=i.get(e);s?s.type!==t.type||s.summary!==t.summary||s.body!==t.body?r.update.push({entry:s,candidate:t}):r.unchanged.push({entry:s,candidate:t}):r.create.push(t)}return r.onlyInVibedoc=[...i.values()].filter(e=>e.source?.startsWith(C)&&!n.has(e.source)),r}(u,await ej(e)),c=0;if(i){let i=(e,t)=>({id:t,type:e.type,summary:e.summary,body:e.body,source:C+e.name});for(let r of d.create)await eP(i(r),e,t,s,!1),c++;for(let r of d.update)await eP(i(r.candidate,r.entry.id),e,t,s,!1),c++;c&&await ts(e,{type:"memory_updated",actor:t,title:`Imported ${c} entries from Claude Code`})}return{dir:l,found:u.length,plan:d,written:c}}async function eN(e,t){let n=await ej(e),s=function(e){let t=[R,"## Project memory","_Generated from memory/entries/ by VibeDoc. Edit the entries, not this block._"],i=(e,t)=>e.id.localeCompare(t.id,"en",{numeric:!0});for(let[r,n]of Object.entries(j)){let s=e.filter(e=>e.type===r).sort(i);s.length&&t.push("",`### ${n}`,...s.map(A))}return e.length||t.push("","_No entries yet._"),t.push(O),t.join("\n")}(n),a=[];for(let t of["AGENTS.md","CLAUDE.md"]){let n=await i.default.readFile(r.default.join(e,t),"utf8").catch(()=>null);if(null===n&&"CLAUDE.md"===t)continue;let o=function(e,t){let i=e.includes("\r\n")?"\r\n":"\n",r=t.replace(/\r?\n/g,i),n=(t,i=0)=>{let r=RegExp(`^${t}\\r?$`,"gm");return r.lastIndex=i,r.exec(e)?.index??-1},s=n(R),a=s>=0?n(O,s):-1;if(a>=0)return{text:e.slice(0,s)+r+e.slice(a+O.length)};let o=n(O);if(s>=0||o>=0)return{error:`found ${s>=0&&o>=0?`${O} before ${R}`:`only ${s>=0?R:O}`}; fix or remove the markers by hand`};if(!e)return{text:r+i};let l=e;return l.endsWith(i)||(l+=i),l.endsWith(i+i)||(l+=i),{text:l+r+i}}(n??"",s);if("error"in o)throw new tx(`${t}: ${o.error}`);a.push({file:t,before:n??"",after:o.text})}for(let n of a)n.after!==n.before&&(await i.default.writeFile(r.default.join(e,n.file),n.after,"utf8"),await ts(e,{type:"doc_updated",actor:t,title:`Exported memory to ${n.file}`,detail:n.file}));return{count:n.length,files:a.map(e=>({file:e.file,changed:e.after!==e.before}))}}async function eI(e,t){let i=new Map((await ej(t)).map(e=>[e.id,e])),r=[],n=[];for(let t of e){let e=i.get((0,$.normalizeEntryId)(String(t))??"");e?r.push(e):n.push(String(t))}return{found:r,missing:n}}let eM=r.default.join("memory",".recall-log.json");async function eL(e){try{let t=JSON.parse(await i.default.readFile(r.default.join(e,eM),"utf-8"));if(t&&"object"==typeof t&&!Array.isArray(t))return Object.fromEntries(Object.entries(t).filter(e=>"string"==typeof e[1]))}catch{}return{}}let eF=async(e,t)=>{let n=r.default.join(e,eM);await i.default.mkdir(r.default.dirname(n),{recursive:!0}),await i.default.writeFile(n,JSON.stringify(t,null,2)+"\n","utf-8")},eW=async(e,t)=>{let i=await eL(e);if(t.some(e=>e in i)){for(let e of t)delete i[e];await eF(e,(0,k.sortedLog)(i))}};async function eU(e){let[t,i,{sessionBudgetTokens:r},n]=await Promise.all([ep(e),ej(e),J(e),id(e)]),s=n.length?(0,v.formatEpisodeSection)(n[0],n.length-1):"",a=t.exists?(0,k.formatHealthWarnings)(await eB(e)):"",o=a?`${t.content.trimEnd()}
222
+
223
+ ${a}
224
+ `:t.content;return(0,v.fitToBudget)(o,(0,v.indexHits)(i),r,s).text}async function ez(e,t,i=3){let r=await ej(t);return(0,v.formatRelated)((0,v.rankEntries)(r,(0,v.taskQuery)(e),{limit:r.length}),i)}async function eB(e,t={}){let[i,r,{tasks:n},{items:s},{dismissed:a},o]=await Promise.all([ep(e),ej(e),Y(e),tq(e),eX(e),eL(e)]),l=[...n,...s].map(({id:e,status:t})=>({id:e,status:t})),u=r.length?(await tE(e)).filter(e=>"memory/MEMORY.md"!==e.path).map(e=>({id:e.id,text:e.text})):[],d=[...(0,k.findContradictions)(i.exists?i.content:"",r,l,e=>(0,S.extractRefs)(e).ids,u),...(0,k.findDuplicates)(r,v.tokenize),...(0,k.findStale)(r,o,(0,y.localToday)())];return t.includeDismissed?d.map(e=>a[e.id]?{...e,dismissed:a[e.id]}:e):d.filter(e=>!a[e.id])}let eG=r.default.join("memory",".cleanup.json");async function eX(e){try{let t=JSON.parse(await i.default.readFile(r.default.join(e,eG),"utf-8"))?.dismissed;if(t&&"object"==typeof t&&!Array.isArray(t))return{dismissed:Object.fromEntries(Object.entries(t).filter(e=>"string"==typeof e[1]))}}catch{}return{dismissed:{}}}let eH=Promise.resolve();function eq(e){let t=eH.then(e,e);return eH=t.catch(()=>{}),t}let eY=async(e,t)=>{let n=Object.fromEntries(Object.entries(t).sort(([e],[t])=>e.localeCompare(t))),s=r.default.join(e,eG);await i.default.mkdir(r.default.dirname(s),{recursive:!0}),await i.default.writeFile(s,JSON.stringify({dismissed:n},null,2)+"\n","utf-8")},eV=(e,t)=>eq(async()=>{let i=(0,k.pruneDismissed)((await eX(e)).dismissed,t);i&&await eY(e,i)});async function eJ(e,t,i="human"){let r=(await eB(t,{includeDismissed:!0})).find(t=>t.id===e);if(!r)throw new tx(`Flag "${e}" not found`,404);let n=await eq(async()=>{let{dismissed:i}=await eX(t);return i[e]=(0,y.localToday)(),await eY(t,i),i[e]});return await ts(t,{type:"memory_updated",actor:i,title:"Cleanup flag dismissed",detail:r.message}),{...r,dismissed:n}}let eZ=(0,o.promisify)(a.execFile),eK=/^[0-9a-f]{7,40}$/;async function eQ(e,t){let{stdout:i}=await eZ("git",e,{cwd:t,maxBuffer:4194304});return i}async function e0(e,t,i=20){let n=function(e,t){let i=r.default.resolve(t,e);if(!i.startsWith(r.default.resolve(t)+r.default.sep))throw new tx("Path outside root");return r.default.relative(t,i).split(r.default.sep).join("/")}(e,t),s=/^(E\d+)-[^/]*\.md$/.exec(r.default.posix.basename(n))?.[1],a=s?[`:(glob)${r.default.posix.dirname(n)}/${s}-*.md`]:["--follow",n];try{let e=(await eQ(["log","--name-status","--format=%x1e%H%x1f%an%x1f%aI%x1f%s","-n",String(Math.min(i,50)),...s?["--",...a]:[a[0],"--",a[1]]],t)).split("\x1e").filter(e=>e.trim()).map(e=>{let[t,...i]=e.split("\n"),[r,n,s,a]=t.split("\x1f"),o=i.map(e=>e.split(" ")).filter(e=>e.length>1&&"D"!==e[0]).map(e=>e[e.length-1]);return{sha:r,author:n,date:s,subject:a,path:o[0]??""}}),r=await eQ(["status","--porcelain","--",s?a[0]:n],t);return{history:e,uncommitted:r.trim().length>0}}catch(e){return console.warn(`git history unavailable for ${n}`,e instanceof Error?e.message:e),{history:[],uncommitted:!1,reason:"no-git"}}}async function e1(e,t,i){if(!eK.test(t))throw new tx(`Invalid commit "${t}"`);let{history:r}=await e0(e,i,50),n=r.find(e=>e.sha.startsWith(t));if(!n)throw new tx(`Commit ${t} did not touch ${e}`,404);if(!n.path)throw new tx(`The file was deleted in ${n.sha.slice(0,7)}`,404);let s=(await eQ(["rev-parse","--show-toplevel"],i)).trim();return eQ(["show",`${n.sha}:${n.path}`],s)}async function e2(e,t,i){return(0,v.rankEntries)(await ej(i),e,t)}let e3=".vibedoc-activity.json",e4=".vibedoc-descriptions.json";async function e8(e){try{let t=await i.default.readFile(r.default.join(e,e4),"utf8");return JSON.parse(t)}catch{return{}}}async function e6(e,t){let n=r.default.join(e,e4);await i.default.mkdir(r.default.dirname(n),{recursive:!0}),await i.default.writeFile(n,JSON.stringify(t,null,2),"utf8")}async function e5(e,t,i){let n=r.default.normalize(t).replace(/\\/g,"/"),s=await e8(e);s[n]=i,await e6(e,s)}let e7=null;async function e9(){if(!e7){let{default:t}=await e.A(400829);e7=new t({apiKey:process.env.ANTHROPIC_API_KEY})}return e7}async function te(e,t){let n=r.default.resolve(t),s=r.default.resolve(t,e);if(!s.startsWith(n+r.default.sep)&&s!==n)throw Error("Path outside root");let a=await e9(),o=await i.default.readFile(s,"utf8"),l=(await a.messages.create({model:"claude-haiku-4-5-20251001",max_tokens:100,messages:[{role:"user",content:`Write a single sentence (max 120 characters) describing what this file is about. Output ONLY the sentence, nothing else.
225
+
226
+ ${o.slice(0,2e3)}`}]})).content.find(e=>"text"===e.type);if(!l)throw Error("No text block in Anthropic response");let u=l.text.trim().slice(0,120);return await e5(t,e,{description:u,source:"ai",updatedAt:new Date().toISOString()}),u}async function tt(e){let t=await L(e),n=await e8(e);return Promise.all(t.map(async t=>{let s=n[t.path],a=s?.description??"",o=s?.source??"extracted",l=new Date().toISOString();try{l=(await i.default.stat(r.default.join(e,t.path))).mtime.toISOString()}catch{}let u=s?.updatedAt??l;if(!s)try{let n=await i.default.readFile(r.default.join(e,t.path),"utf8");a=function(e){let t=e.split("\n"),i="";for(let e of t){let t=e.match(/^#{1,3}\s+(.+)/);if(t&&!i){i=t[1].trim().slice(0,120);continue}let r=e.trim();if(r&&!r.startsWith("#")&&!r.startsWith("```")&&!r.startsWith("|")&&!r.startsWith("-")&&!r.startsWith("*")&&r.length>20)return r.slice(0,120)}return i}(n)}catch{}return{path:t.path,name:t.name,section:t.section,description:a,source:o,updatedAt:u,mtime:l}}))}let ti=globalThis,tr=ti.vibedocSessions??(ti.vibedocSessions=new Map);function tn(e,t="ai"){let i=tr.get(`${e}\0${t}`);return i&&Date.now()-i.lastAt<=h.SESSION_GAP_MS?i.id:null}async function ts(e,t){let n,s;if(N())return;let a=Date.now(),o={id:`evt_${a}_${Math.random().toString(36).slice(2,7)}`,timestamp:new Date(a).toISOString(),...t,sessionId:(n=`${e}\0${t.actor}`,(s=tr.get(n))&&"session_start"!==t.type&&!(a-s.lastAt>h.SESSION_GAP_MS)||(s={id:`ses_${a}_${Math.random().toString(36).slice(2,7)}`,lastAt:a},tr.set(n,s)),s.lastAt=a,s.id)},l=r.default.join(e,e3),u=[];try{let e=await i.default.readFile(l,"utf8");u=JSON.parse(e)}catch{}u.unshift(o),u.length>2e3&&(u=u.slice(0,2e3)),await i.default.writeFile(l,JSON.stringify(u,null,2),"utf8")}async function ta(e,t,n){if(N())return;let s=r.default.join(e,e3),a=[];try{a=JSON.parse(await i.default.readFile(s,"utf8"))}catch{}let o=a.slice(0,50).findIndex(e=>"doc_updated"===e.type&&e.detail===t),l=o>=0?a[o]:void 0;if(l&&l.actor===n&&Date.now()-Date.parse(l.timestamp)<6e5){a.splice(o,1),a.unshift({...l,timestamp:new Date().toISOString()}),await i.default.writeFile(s,JSON.stringify(a,null,2),"utf8");return}await ts(e,{type:"doc_updated",actor:n,title:`Edited ${t}`,detail:t})}async function to(e,t){let i=(await tl(e,2e3)).find(e=>("doc_updated"===e.type||"doc_created"===e.type)&&e.detail===t);return i?{actor:i.actor,at:i.timestamp}:null}async function tl(e,t=50){try{let n=await i.default.readFile(r.default.join(e,e3),"utf8");return JSON.parse(n).slice(0,t)}catch{return[]}}async function tu(e,t="ai"){tn(e,t)||await ts(e,{type:"session_start",actor:t,title:"Session started",detail:"Agent connected"})}async function td(e,t,n){let s,a=r.default.resolve(n),o=r.default.resolve(n,e);if(!o.startsWith(a+r.default.sep)&&o!==a)throw Error("Path outside root");try{s=await i.default.readFile(o,"utf8")}catch{throw Error(`Doc not found: ${e}`)}await i.default.writeFile(o,s.trimEnd()+"\n\n"+t,"utf8")}async function tc(e,t,n,s="human"){let a=r.default.resolve(n),o=r.default.resolve(n,e),l=r.default.resolve(n,t);if(!o.startsWith(a+r.default.sep)&&o!==a||!l.startsWith(a+r.default.sep)&&l!==a)throw Error("Path outside root");if(l!==o&&await i.default.access(l).then(()=>!0,()=>!1))throw Error(`A file already exists at ${t}`);await i.default.mkdir(r.default.dirname(l),{recursive:!0});try{await i.default.rename(o,l)}catch(e){if("EXDEV"===e.code)await i.default.copyFile(o,l),await i.default.unlink(o);else throw e}await ts(n,{type:"doc_renamed",actor:s,title:`Renamed ${e} → ${t}`});try{let{exists:e}=await tw(n);e&&await ty(n,s,!1)}catch{}}async function th(e,t,n="human"){let s=r.default.resolve(t),a=r.default.resolve(t,e);if(!a.startsWith(s+r.default.sep)&&a!==s)throw Error("Path outside root");let o=await i.default.readFile(a,"utf8");await i.default.unlink(a),await ts(t,{type:"doc_deleted",actor:n,title:`Deleted ${e}`});try{let{exists:e}=await tw(t);e&&await ty(t,n,!1)}catch{}return o}let tf="docs/REGISTRY.md",tp="<!-- REGISTRY_ANNOTATIONS_START -->",tm="<!-- REGISTRY_ANNOTATIONS_END -->";function tg(e){let t=new Map,i=e.indexOf(tp),r=e.indexOf(tm);if(-1===i||-1===r)return t;for(let n of e.slice(i+tp.length,r).split("\n").filter(e=>e.startsWith("|")&&!e.includes("---")&&!e.includes("Path"))){let e=n.split("|").map(e=>e.trim()).filter(Boolean);e.length>=3&&t.set(e[0],{description:e[1],keywords:e[2]})}return t}async function tw(e){try{return{content:await i.default.readFile(r.default.join(e,tf),"utf8"),exists:!0}}catch{return{content:"*(No REGISTRY.md found — call vibedoc_rebuild_registry to generate it)*",exists:!1}}}async function ty(e,t="human",n=!0){let s=(await L(e)).map(e=>e.path),a="";try{a=await i.default.readFile(r.default.join(e,tf),"utf8")}catch{}let o=tg(a),l=function(e){let t=new Map;for(let i of e){let e=r.default.dirname(i);t.has(e)||t.set(e,[]),t.get(e).push(r.default.basename(i))}let i=[],n=Array.from(t.keys()).sort(),s=new Set;return!function e(a,o){if(s.has(a))return;s.add(a);let l=" ".repeat(o);if("."!==a){let e=a.split("/");i.push(`${l}${e[e.length-1]}/`)}let u="."===a?0:o+1,d=" ".repeat(u);for(let e of(t.get(a)||[]).sort())i.push(`${d}${e}`);for(let t of n)t!==a&&r.default.dirname(t)===a&&e(t,u)}(".",0),i.join("\n")}(s),u=[];for(let e of s){let t=o.get(e);u.push(`| ${e} | ${t?.description??""} | ${t?.keywords??""} |`)}let d=new Date().toISOString(),c=["# Document Registry",`**Generated:** ${d} **Total:** ${s.length} files`,"","> Edit the Annotations table — it survives rebuilds.","> Run `vibedoc_rebuild_registry` after adding/removing docs.","","## File Tree","```",l,"```","","## Annotations","",tp,"| Path | Description | Keywords |","|------|-------------|----------|",...u,tm,""].join("\n");return await U(tf,c,e),n&&await ts(e,{type:"registry_rebuilt",actor:t,title:"Document registry rebuilt",detail:`${s.length} files indexed`}),{path:tf,totalFiles:s.length}}async function tb(e,t,i,r){let{content:n,exists:s}=await tw(r);if(!s)throw Error("Registry not found — call vibedoc_rebuild_registry first");let a=tg(n);a.set(e,{description:t,keywords:i});let o=n.indexOf(tp),l=n.indexOf(tm);if(-1===o||-1===l)throw Error("Registry format invalid — rebuild first");let u=[tp,"| Path | Description | Keywords |","|------|-------------|----------|",...Array.from(a.entries()).map(([e,t])=>`| ${e} | ${t.description} | ${t.keywords} |`),tm].join("\n"),d=n.slice(0,o)+u+n.slice(l+tm.length);await U(tf,d,r)}async function tv(e){let[t,i]=await Promise.all([ej(e),tE(e)]);return(0,S.buildGraph)(t.map(e=>({id:e.id,kind:"entry",label:e.summary,path:e.file.replace(/\\/g,"/"),text:`${e.summary}
227
+ ${e.body}`})),i)}async function tE(e){let t=await (0,s.glob)("**/*.md",{cwd:e,ignore:["node_modules/**",".git/**",".next/**","memory/entries/**"],nodir:!0});return(await Promise.all(t.map(async t=>{try{let n=await i.default.readFile(r.default.join(e,t),"utf8");return{...(0,S.fileNode)(t,n),text:n}}catch(e){return console.warn(`memory graph: skipped ${t}`,e),null}}))).filter(e=>!!e)}let tS=(t=globalThis,t.__vibedocDocGraphCache?.v!==3&&(t.__vibedocDocGraphCache={v:3,map:new Map}),t.__vibedocDocGraphCache.map);async function t_(e){let t=(await (0,s.glob)("**/*.md",{cwd:e,ignore:["node_modules/**",".git/**",".next/**"],nodir:!0})).map(e=>e.replace(/\\/g,"/")).sort(),n=t=>`${e}\u0000${t}`,a=0,o=await Promise.all(t.map(async t=>{let s=n(t);try{let{mtimeMs:n}=await i.default.stat(r.default.join(e,t)),o=tS.get(s);if(o&&o.mtimeMs===n)return o.item;let l=await i.default.readFile(r.default.join(e,t),"utf8");a++;let u={node:(0,_.docNode)(t,l),links:(0,_.extractLinks)(l,t)};return tS.set(s,{mtimeMs:n,item:u}),u}catch(e){return tS.delete(s),console.warn(`doc graph: skipped ${t}`,e),null}})),l=new Set(t.map(n));for(let t of tS.keys())t.startsWith(`${e}\u0000`)&&!l.has(t)&&tS.delete(t);a&&console.log(`doc graph: read ${a} of ${t.length} files`);let u=(await (0,s.glob)(".*/**/*.md",{cwd:e,dot:!0,ignore:[".git/**",".next/**","**/node_modules/**"],nodir:!0})).map(e=>e.replace(/\\/g,"/"));return(0,_.buildDocGraph)(o.filter(e=>!!e),u)}async function tk(e){let[{tasks:t,board:i},n,s,a]=await Promise.all([Y(e),L(e),ep(e),tl(e,10)]);return{root:e,name:r.default.basename(e),tasks:{total:t.length,board:{todo:i.todo.length,"in-progress":i["in-progress"].length,review:i.review.length,blocked:i.blocked.length,done:i.done.length,cancelled:i.cancelled.length},active:i["in-progress"],blocked:i.blocked},docs:{total:n.length},memory:s,activity:a}}class tx extends Error{status;constructor(e,t=400){super(e),this.status=t,this.name="RoadmapError"}}let t$=r.default.join("plans","roadmap"),tR=r.default.join(t$,"layout.json"),tO=["planned","in-progress","paused","done"],tj=/^\*\*([^*]+):\*\*/;function tA(e){let t=String(e??"").trim().toUpperCase();if(!/^R\d+$/.test(t))throw new tx(`Invalid roadmap id: ${String(e)}`);return t}function tP(e){let t=r.default.basename(e).match(/^(R\d+)(?:-|\.md$)/i);return t?t[1].toUpperCase():null}function tT(e){let t=String(e??"").toLowerCase().trim().replace(/\s+/g,"-"),i="on-hold"===t?"paused":t;if(!tO.includes(i))throw new tx(`Invalid status "${String(e)}" (expected ${tO.join(" | ")})`);return i}function tC(e){if(!Array.isArray(e))throw new tx("tasks must be an array of task ids");return e.map(e=>{let t=String(e).trim().toUpperCase();if(!/^T\d+$/.test(t))throw new tx(`Invalid task id: ${String(e)}`);return t})}function tD(e){let t=String(e??"").replace(/\s+/g," ").trim();if(!t)throw new tx("Title is required");return t}function tN(e){let t=e.match(/^(\d{4})-(\d{2})-(\d{2})$/);return t&&new Date(Date.UTC(+t[1],t[2]-1,+t[3])).toISOString().slice(0,10)===e?e:null}function tI(e){if(null===e||""===e)return null;let t="string"==typeof e?tN(e.trim()):null;if(!t)throw new tx(`due must be a date YYYY-MM-DD (got ${JSON.stringify(e)})`);return t}function tM(e){let t=Number(e);if("number"!=typeof e||!Number.isFinite(t))throw new tx("order must be a finite number");return t}function tL(e){let t=e.findIndex(e=>e.startsWith("# ")),i=t=t<0?0:t+1;for(;i<e.length&&""===e[i].trim();)i++;for(i<e.length&&tj.test(e[i])&&(t=i);t<e.length&&tj.test(e[t]);)t++;return t}function tF(e,t){let i=t.split("\n"),n=i.find(e=>e.startsWith("# ")),s=tP(e)??r.default.basename(e,".md").toUpperCase(),a=(n||"").replace(/^#+\s*/,"").replace(/^R\d+:\s*/i,"").trim()||s,o=tL(i),l={};for(let e of i.slice(0,Math.min(o,30))){let t=e.match(/\*\*([^*]+):\*\*\s*(.+)/);t&&(l[t[1].toLowerCase().trim()]=t[2].trim())}let u=(l.parent||"").toUpperCase(),d="planned";try{d=tT((l.status||"").replace(/[^a-z\s-]/gi,""))}catch{}let c=parseFloat(l.order||"");return{id:s,title:a,parent:/^R\d+$/.test(u)?u:null,status:d,order:Number.isFinite(c)?c:0,tasks:(l.tasks||"").split(/[,\s]+/).map(e=>e.toUpperCase()).filter(e=>/^T\d+$/.test(e)),due:tN(l.due||""),owner:(0,m.parseOwner)(l.owner),priority:(0,b.parsePriority)(l.priority),body:i.slice(o).join("\n").trim(),file:e}}async function tW(e){let t=await (0,s.glob)("plans/roadmap/R*.md",{cwd:e,nodir:!0}),n=[];for(let s of t)if(tP(s))try{let t=await i.default.readFile(r.default.join(e,s),"utf8");n.push({item:tF(s,t),raw:t})}catch{}return n}async function tU(e,t){let n=tA(e),a=(await (0,s.glob)(`plans/roadmap/${n}*.md`,{cwd:t,nodir:!0})).filter(e=>tP(e)===n).sort();if(0===a.length)throw new tx(`Roadmap item not found: ${n}`,404);let o=await i.default.readFile(r.default.join(t,a[0]),"utf8");return{item:tF(a[0],o),raw:o}}function tz(e,t,i){if(e===t)throw new tx("An item cannot be its own parent");let r=i.find(t=>t.id===e);if(!r)throw new tx(`Parent not found: ${e}`);if(null!==r.parent)throw new tx(`Parent ${e} is not a horizon (max depth is 2)`)}function tB(e){if("string"!=typeof e)throw new tx("body must be a string");return e.trim()}let tG=Promise.resolve();function tX(e){let t=tG.then(e,e);return tG=t.catch(()=>{}),t}function tH(e){return e.length>0?e.join(", "):"—"}async function tq(e){var t;let i,[r,n]=await Promise.all([tW(e),t4(e)]);return{items:(t=r.map(e=>e.item),i=e=>parseInt(e.slice(1),10),t.sort((e,t)=>e.order-t.order||i(e.id)-i(t.id))),layout:n}}async function tY(e,t){return(await tU(e,t)).item}function tV(e,t,i="human"){return tX(()=>t0(e??{},t,i))}let tJ=e=>`R${String(e).padStart(3,"0")}`;async function tZ(e,t){let n=t.title.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,40),s=n?`${t.id}-${n}.md`:`${t.id}.md`,a=[`# ${t.id}: ${t.title}`,...t.parent?[`**Parent:** ${t.parent}`]:[],`**Status:** ${t.status}`,`**Order:** ${t.order}`,`**Tasks:** ${tH(t.tasks)}`,...t.due?[`**Due:** ${t.due}`]:[],""].join("\n")+(t.body?`
228
+ ${t.body}
229
+ `:"");await i.default.writeFile(r.default.join(e,t$,s),a,{flag:"wx",encoding:"utf8"})}async function tK(e){return(await tQ(e)).source}async function tQ(e){try{let t=(0,u.roadmapFromMarkdown)(await i.default.readFile(r.default.join(e,"ROADMAP.md"),"utf8"));if(t.length>0)return{source:"roadmap-md",drafts:t}}catch{}let{tasks:t}=await Y(e),n=(0,u.roadmapFromTasks)(t);return n.length>0?{source:"tasks",drafts:n}:{source:"starter",drafts:(0,u.starterRoadmap)()}}async function t0(e,t,n){let s=tD(e.title),a=void 0===e.status?"planned":tT(e.status),o=void 0===e.tasks?[]:tC(e.tasks),l=void 0===e.body?"":tB(e.body),u=void 0===e.due?null:tI(e.due),d=(await tW(t)).map(e=>e.item),c=null==e.parent||""===e.parent?null:tA(e.parent);c&&tz(c,null,d);let h=d.filter(e=>e.parent===c).map(e=>e.order),f=void 0===e.order?(h.length>0?Math.max(...h):0)+10:tM(e.order),p=d.map(e=>parseInt(e.id.slice(1),10)).filter(e=>!isNaN(e)),m=tJ(p.length>0?Math.max(...p)+1:1);return await i.default.mkdir(r.default.join(t,t$),{recursive:!0}),await tZ(t,{id:m,title:s,parent:c,status:a,order:f,tasks:o,due:u,body:l}),await ts(t,{type:"roadmap_updated",actor:n,title:`${m} created`,detail:s}),tY(m,t)}function t1(e,t,i,r="human",n=!0){return tX(()=>t2(e,t,i,r,n))}async function t2(e,t,n,s,a){let o,l,u,{item:d,raw:c}=await tU(e,n),h=t??{},f=void 0===h.title?void 0:tD(h.title),p=void 0===h.status?void 0:tT(h.status),g=void 0===h.order?void 0:tM(h.order),w=void 0===h.tasks?void 0:tC(h.tasks),y=void 0===h.body?void 0:tB(h.body),v=void 0===h.due?void 0:tI(h.due);if(void 0!==h.owner&&(o=null===h.owner||""===h.owner?null:(0,m.parseOwner)(h.owner),h.owner&&!o))throw new tx(`owner must be "human" or "ai:<agent>" (got ${JSON.stringify(h.owner)})`);if(void 0!==h.priority&&(l=null===h.priority||""===h.priority?null:(0,b.parsePriority)(h.priority),h.priority&&!l))throw new tx(`priority must be P0, P1, P2 or P3 (got ${JSON.stringify(h.priority)})`);if(void 0!==h.parent&&null!==(u=null===h.parent||""===h.parent?null:tA(h.parent))){let e=(await tW(n)).map(e=>e.item);if(tz(u,d.id,e),e.some(e=>e.parent===d.id))throw new tx(`${d.id} has children and cannot be given a parent`)}let E=c.split("\n");if(void 0!==f){let e=E.findIndex(e=>e.startsWith("# "));e>=0?E[e]=`# ${d.id}: ${f}`:E.unshift(`# ${d.id}: ${f}`)}let S=tL(E),_=E.slice(0,S),k=E.slice(S),x=(e,t)=>{let i=_.findIndex(t=>t.match(tj)?.[1].trim().toLowerCase()===e.toLowerCase());if(null===t){i>=0&&_.splice(i,1);return}let r=`**${e}:** ${t}`;i>=0?_[i]=r:_.push(r)};void 0!==u&&x("Parent",u),void 0!==p&&x("Status",p),void 0!==g&&x("Order",String(g)),void 0!==w&&x("Tasks",tH(w)),void 0!==v&&x("Due",v),void 0!==o&&x("Owner",o),void 0!==l&&x("Priority",l),void 0!==y&&(k=y?["",y,""]:[""]),await i.default.writeFile(r.default.join(n,d.file),[..._,...k].join("\n"),"utf8");let $=await tY(d.id,n);return a&&await ts(n,{type:"roadmap_updated",actor:s,title:`${d.id} updated`,detail:$.title}),$}async function t3(e,t,n){let{item:s,raw:a}=await tU(e,t),o=(await t4(t))[s.id]??null,l=(await tW(t)).map(e=>e.item).filter(e=>e.parent===s.id).map(e=>e.id);if(l.length>0)throw new tx(`${s.id} still has children (${l.join(", ")}); move or delete them first`);return await i.default.unlink(r.default.join(t,s.file)),await t8({},t),await ts(t,{type:"roadmap_updated",actor:n,title:`${s.id} deleted`,detail:s.title}),{item:s,raw:a,position:o}}async function t4(e){try{let t=JSON.parse(await i.default.readFile(r.default.join(e,tR),"utf8"));if(!t||"object"!=typeof t||Array.isArray(t))return{};let n={};for(let[e,i]of Object.entries(t))i&&Number.isFinite(i.x)&&Number.isFinite(i.y)&&(n[e]={x:i.x,y:i.y});return n}catch{return{}}}async function t8(e,t){let n={};for(let[t,i]of Object.entries(e??{})){let e=t.trim().toUpperCase();if(!(/^R\d+$/.test(e)&&i&&"object"==typeof i&&"number"==typeof i.x&&"number"==typeof i.y&&Number.isFinite(i.x)&&Number.isFinite(i.y)))throw new tx(`Invalid position for ${t}`);n[e]={x:i.x,y:i.y}}let s={...await t4(t),...n},a=new Set((await tW(t)).map(e=>e.item.id)),o={};for(let e of Object.keys(s).sort())a.has(e)&&(o[e]=s[e]);return await i.default.mkdir(r.default.join(t,t$),{recursive:!0}),await i.default.writeFile(r.default.join(t,tR),JSON.stringify(o,null,2)+"\n","utf8"),o}let t6={roadmap:"roadmap-planner",breakdown:"epic-breakdown"};async function t5(e){if(!Object.hasOwn(t6,e))throw Error(`Unknown planning kind "${e}" (expected: ${Object.keys(t6).join(", ")})`);return(await i.default.readFile(r.default.join(process.cwd(),"skills",t6[e],"SKILL.md"),"utf-8")).replace(/^---\r?\n[\s\S]*?\r?\n---\r?\n/,"").trimStart()}async function t7(){return i.default.readFile(r.default.join(process.cwd(),"docs","getting-started.md"),"utf-8")}let t9=r.default.join(".vibedoc","chats"),ie=/^[a-z0-9-]{1,64}$/;function it(e,t){if(!ie.test(e))throw Error(`Invalid chat id "${e}"`);return r.default.join(t,t9,`${e}.json`)}async function ii(e){let t=r.default.join(e,t9),n=await i.default.readdir(t).catch(()=>[]);return(await Promise.all(n.filter(e=>e.endsWith(".json")).map(async e=>{try{return JSON.parse(await i.default.readFile(r.default.join(t,e),"utf-8"))}catch(t){return console.warn(`[vibedoc] skipping unreadable chat ${e}: ${t.message}`),null}}))).filter(e=>null!==e)}async function ir(e,t){let n=e?.id;if("string"!=typeof n)throw Error("chat.id is required");let s=it(n,t);await i.default.mkdir(r.default.dirname(s),{recursive:!0});let a=`${s}.tmp`;await i.default.writeFile(a,JSON.stringify(e),"utf-8"),await i.default.rename(a,s)}async function is(e,t){await i.default.rm(it(e,t),{force:!0})}let ia=r.default.join(".vibedoc","episodes"),io=/^[A-Za-z0-9_-]{1,80}$/;async function il(e,t){if(!io.test(e.sessionId))throw Error(`Invalid session id "${e.sessionId}"`);let n=r.default.join(ia,`${e.sessionId}.md`),s=r.default.join(t,n);await i.default.mkdir(r.default.dirname(s),{recursive:!0});let a=`${s}.tmp`;return await i.default.writeFile(a,e.markdown,"utf8"),await i.default.rename(a,s),n}async function iu(e){let t=await i.default.readdir(r.default.join(e,ia)).catch(()=>[]);return(await Promise.all(t.filter(e=>e.endsWith(".md")).map(async t=>{let n=r.default.join(ia,t);try{return(0,E.parseEpisode)(await i.default.readFile(r.default.join(e,n),"utf8"),n)}catch(e){return console.warn(`[vibedoc] skipping unreadable episode ${t}: ${e.message}`),null}}))).filter(e=>!!e).sort((e,t)=>t.end.localeCompare(e.end))}async function id(e){let[t,n]=await Promise.all([iu(e),i.default.stat(r.default.join(e,"memory","MEMORY.md")).catch(()=>null)]),s=n?.mtimeMs??-1/0;return t.filter(e=>Date.parse(e.end)>s)}function ic(e,t,i,r,n){let s=e.tasks.filter(e=>"done"!==e.lastStatus&&"cancelled"!==e.lastStatus).map(e=>({id:e.id,title:i.find(t=>t.id===e.id)?.title??"",status:e.lastStatus}));return(0,E.buildEpisode)(e,{source:r,agent:n,openTasks:s,lastMessage:(0,E.lastEventTitle)(e,t)})}async function ih(e,{excludeSessionId:t=null,limit:n=5}={}){if(N())return[];let[s,a,o]=await Promise.all([tl(e,2e3),i.default.readdir(r.default.join(e,ia)).catch(()=>[]),i.default.stat(r.default.join(e,"memory","MEMORY.md")).catch(()=>null)]),l=new Set(a.filter(e=>e.endsWith(".md")).map(e=>e.slice(0,-3))),u=(0,E.sessionsNeedingEpisode)((0,h.groupSessions)(s),s,l,t,{now:Date.now(),gapMs:h.SESSION_GAP_MS,since:o?.mtimeMs,limit:n});if(!u.length)return[];let{tasks:d}=await Y(e),c=[];for(let t of u){let i=ic(t,s,d,"inferred");i&&c.push({sessionId:t.id,file:await il({sessionId:t.id,markdown:i},e)})}return c}async function ip(e,t,n){if(N())return null;let s=tn(e);if(!s)return null;let a=await tl(e,2e3),o=(0,h.groupSessions)(a).find(e=>e.id===s);if(!o||!(0,E.hasWork)(o,a)||(0,E.isHandoffWritten)(o,a))return null;let l=r.default.join(ia,`${s}.md`),u=await i.default.readFile(r.default.join(e,l),"utf8").then(e=>(0,E.parseEpisode)(e,l)).catch(()=>null),{tasks:d}=await Y(e),c=ic(o,a,d,(0,E.mergeSources)(u?.source,t),n);return c?{sessionId:s,file:await il({sessionId:s,markdown:c},e)}:null}let im=r.default.join(".vibedoc","views.json");async function ig(e){let t;try{t=await i.default.readFile(r.default.join(e,im),"utf-8")}catch{return null}try{let e=JSON.parse(t)?.views;if(!Array.isArray(e))throw Error('"views" is not an array');return e}catch(e){return console.warn(`[vibedoc] ignoring unreadable ${im}: ${e.message}`),null}}async function iw(e,t){let n=r.default.join(t,im);await i.default.mkdir(r.default.dirname(n),{recursive:!0});let s=`${n}.tmp`;await i.default.writeFile(s,JSON.stringify({views:e},null,2)+"\n","utf-8"),await i.default.rename(s,n)}e.s(["RoadmapError",0,tx,"TaskStateError",0,ea,"appendDoc",0,td,"applyPlan",0,function(e,t,i,r="human"){return e?.kind==="roadmap"?tX(async()=>{let[n,{tasks:s}]=await Promise.all([tW(i),Y(i)]),a=eh(e,t,n.map(e=>e.item),s.map(e=>e.id));if("roadmap"!==a.kind)throw new tx("expected a roadmap plan");let o=new Map,l=[];for(let e of a.horizons){let t=await t0({title:e.title.trim(),body:e.body},i,r);o.set(e.key.trim(),t.id),l.push({key:e.key,id:t.id,file:t.file})}for(let e of a.epics){let t=o.get(e.parent.trim())??e.parent.trim().toUpperCase(),n=await t0({title:e.title.trim(),parent:t,status:e.status,body:e.body},i,r);l.push({key:e.key,id:n.id,file:n.file})}return{created:l,epic:null}}):ed(async()=>{let[{items:n},{tasks:s}]=await Promise.all([tq(i),Y(i)]),a=eh(e,t,n,s.map(e=>e.id));if("breakdown"!==a.kind)throw new tx("expected a breakdown plan");let o=a.epic?.trim()?await tY(a.epic,i):a.newEpic?await tV({title:a.newEpic.title.trim(),parent:a.newEpic.parent.trim().toUpperCase(),body:a.newEpic.body},i,r):null,l=new Map,u=[];for(let e of a.tasks){let t=(e.dependsOn??[]).map(e=>l.get(e.trim())??e.trim().toUpperCase()),n=await ec({title:e.title.trim(),phase:o?`${o.id} — ${o.title}`:void 0,size:e.size,dependsOn:t.join(", ")||void 0,due:e.due,body:e.body},i,r);l.set(e.key.trim(),n.id),u.push({key:e.key,id:n.id,file:n.file})}if(!o)return{created:u,epic:null};let d=await tY(o.id,i),c=await t1(o.id,{tasks:[...d.tasks,...u.map(e=>e.id)]},i,r,!1);return{created:u,epic:c}})},"approveTask",0,function(e,t,i=""){return eo(e,"approved",i,"done",t)},"backfillEpisodes",0,ih,"bulkTasks",0,er,"claimNextTask",0,function(e,t,i){return ed(async()=>{let r=await tY(e,t);if(!r.parent)throw Error(`${r.id} is a horizon; pass an epic id`);let{tasks:n}=await Y(t),s=(0,d.pickNextTask)(r,n);if("ready"!==s.kind)return{result:s};let{task:a,previousStatus:o}=await K(s.taskId,"in-progress",t,"ai",{actor:"ai",agent:i});return{result:s,task:a,previousStatus:o}})},"createDoc",0,G,"createRoadmapItem",0,tV,"createTask",0,function(e,t,i="human"){return ed(()=>ec(e,t,i))},"currentSessionId",0,tn,"deleteChat",0,is,"deleteDoc",0,th,"deleteEntry",0,function(e,t,n="human"){let s=(0,$.normalizeEntryId)(String(e??""));return s?eO(async()=>{let e=(await ej(t)).find(e=>e.id===s);if(!e)throw Error(`Entry ${s} not found`);let a=await i.default.readFile(r.default.join(t,e.file),"utf8");return await i.default.rm(r.default.join(t,e.file)),await eW(t,[s]),await eV(t,[s]),await ts(t,{type:"memory_updated",actor:n,title:`Entry ${s} deleted`,detail:e.summary}),{...e,raw:a}}):Promise.reject(Error(`Invalid id "${e}": expected E followed by a number, e.g. E001`))},"deleteRoadmapItem",0,function(e,t,i="human"){return tX(()=>t3(e,t,i))},"deleteTask",0,et,"detectRoadmapSource",0,tK,"discoverProjects",0,M,"dismissHealthFlag",0,eJ,"docLastEdit",0,to,"editDoc",0,z,"enrichDescription",0,te,"exportEntries",0,eN,"generateRoadmap",0,function(e,t="human"){return tX(async()=>{if((await tW(e)).length>0)throw new tx("Roadmap already exists");let{source:n,drafts:s}=await tQ(e),a=new Map(s.map((e,t)=>[e.key,tJ(t+1)])),o=new Map;for(let t of(await i.default.mkdir(r.default.join(e,t$),{recursive:!0}),s)){let i=(o.get(t.parent)??0)+1;o.set(t.parent,i),await tZ(e,{id:a.get(t.key),title:t.title,parent:null===t.parent?null:a.get(t.parent)??null,status:t.status,order:10*i,tasks:t.tasks,due:null,body:t.body})}await ts(e,{type:"roadmap_updated",actor:t,title:`Roadmap generated (${s.length} items)`,detail:`from ${n}`});let{items:l}=await tq(e);return{items:l,source:n}})},"getConfiguredRoot",0,I,"getContext",0,B,"getDocGraph",0,t_,"getEntriesByIds",0,eI,"getEntry",0,eA,"getFileAtCommit",0,e1,"getFileHistory",0,e0,"getMemoryGraph",0,tv,"getMemoryHealth",0,eB,"getMemoryVersion",0,ek,"getProjectSummary",0,tk,"getTask",0,V,"importClaudeMemory",0,eD,"listChats",0,ii,"listDocs",0,L,"listEntries",0,ej,"listEpisodes",0,iu,"listExplorerFiles",0,tt,"listMemoryVersions",0,e_,"listRoadmap",0,tq,"listTasks",0,Y,"logDecision",0,ef,"logSessionStart",0,tu,"markEntriesRecalled",0,function(e,t){return!e.length||N()?Promise.resolve(!1):eO(async()=>{let i=(0,k.markRecalled)(await eL(t),e,(0,y.localToday)());return i&&await eF(t,i),!!i})},"mergeEntries",0,function(e,t,n="human"){let s=(0,$.normalizeEntryId)(String(e.keepId??""));if(!s)return Promise.reject(new tx(`Invalid keepId "${e.keepId}"`));if(!Array.isArray(e.dropIds)||!e.dropIds.length)return Promise.reject(new tx("dropIds must be a non-empty list"));let a=e.dropIds.map(e=>(0,$.normalizeEntryId)(String(e)));if(a.some(e=>!e))return Promise.reject(new tx(`Invalid dropIds: ${e.dropIds.join(", ")}`));if(new Set(a).size!==a.length||a.includes(s))return Promise.reject(new tx("dropIds must be distinct and not include keepId"));let o={id:s,type:String(e.type??""),summary:String(e.summary??""),body:e.body},l=(0,$.validateEntryInput)(o);return l?Promise.reject(new tx(l)):eO(async()=>{let e=await ej(t),l=new Map(e.map(e=>[e.id,e])),u=[s,...a].filter(e=>!l.has(e));if(u.length)throw new tx(`Entry ${u.join(", ")} not found`);let d=e=>i.default.readFile(r.default.join(t,e.file),"utf8"),c=l.get(s),h=o.summary.trim(),f={id:s,type:o.type,summary:h,body:(0,$.replaceEntryRefs)((o.body??"").trim(),a,s),updatedAt:(0,y.localToday)(),by:"human"===n?"human":"ai:agent",source:c.source,file:r.default.join(e$,`${s}-${(0,$.entrySlug)(h)}.md`)},p=[{file:c.file,raw:await d(c)}];for(let e of a){let t=l.get(e);p.push({file:t.file,raw:await d(t),dropped:!0})}let m=[];for(let t of e){if(t.id===s||a.includes(t.id))continue;let e=await d(t),i=(0,$.replaceEntryRefs)(e,a,s);i!==e&&(p.push({file:t.file,raw:e}),m.push({file:t.file,raw:i}))}for(let e of(await i.default.writeFile(r.default.join(t,f.file),(0,$.formatEntry)(f),"utf8"),c.file!==f.file&&await i.default.rm(r.default.join(t,c.file),{force:!0}),p))e.dropped&&await i.default.rm(r.default.join(t,e.file),{force:!0});for(let e of m)await i.default.writeFile(r.default.join(t,e.file),e.raw,"utf8");return await eW(t,a),await eV(t,a),await ts(t,{type:"memory_updated",actor:n,title:`Entries merged into ${s}`,detail:`${a.join(", ")} merged`}),{entry:f,before:p}})},"noteDocEdit",0,ta,"readActivity",0,tl,"readDoc",0,W,"readGettingStarted",0,t7,"readMemory",0,ep,"readPlanningSkill",0,t5,"readProjectSettings",0,J,"readRegistry",0,tw,"readViews",0,ig,"rebuildRegistry",0,ty,"recallEntries",0,e2,"relatedEntries",0,ez,"renameDoc",0,tc,"restoreEntry",0,function(e,t,n,s="human"){return eO(async()=>{if(!en(e,"memory/entries",/^E\d+[^/]*\.md$/)||"string"!=typeof t)throw new tx("Invalid entry to restore");let a=(0,$.parseEntry)(t,e),o=(0,$.normalizeEntryId)(r.default.basename(e).match(/^(E\d+)/i)?.[1]??"");if(!a||a.id!==o)throw new tx("Invalid entry to restore");if((await ej(n)).some(e=>e.id===o))throw new tx(`${o} already exists`);return await i.default.mkdir(r.default.join(n,e$),{recursive:!0}),await i.default.writeFile(r.default.join(n,e),t,{flag:"wx",encoding:"utf8"}),await ts(n,{type:"memory_updated",actor:s,title:`Entry ${o} restored`,detail:a.summary}),a})},"restoreMemoryVersion",0,ex,"restoreRoadmapItem",0,function(e,t,n,s,a="human"){return tX(async()=>{if(!en(e,t$,/^R\d+[^/]*\.md$/)||"string"!=typeof t)throw new tx("Invalid roadmap item to restore");let o=tP(e);if(!o)throw new tx("Invalid roadmap item to restore");if(await tU(o,s).then(()=>!0,()=>!1))throw new tx(`${o} already exists`);return await i.default.mkdir(r.default.join(s,t$),{recursive:!0}),await i.default.writeFile(r.default.join(s,e),t,{flag:"wx",encoding:"utf8"}),n&&await t8({[o]:n},s),await ts(s,{type:"roadmap_updated",actor:a,title:`${o} restored`}),(await tU(o,s)).item})},"restoreTask",0,function(e,t,n,s,a="human"){return ed(async()=>{if(!en(e,"plans/tasks",/^T\d+[^/]*\.md$/)||"string"!=typeof t)throw new tx("Invalid task to restore");let o=r.default.basename(e).match(/^(T\d+)/i)[1].toUpperCase();if(await V(o,s).then(()=>!0,()=>!1))throw new tx(`${o} already exists`);await i.default.mkdir(r.default.join(s,"plans/tasks"),{recursive:!0}),await i.default.writeFile(r.default.join(s,e),t,{flag:"wx",encoding:"utf8"});let{items:l}=await tq(s);for(let e of Array.isArray(n)?n:[]){let t=l.find(t=>t.id===e?.epic);if(!t||t.tasks.includes(o))continue;let i=[...t.tasks];i.splice(Math.max(0,Math.min(Number(e.index)||0,i.length)),0,o),await t1(t.id,{tasks:i},s,a,!1)}return await ts(s,{type:"task_updated",actor:a,title:`${o} restored`,taskId:o}),V(o,s)})},"rootFrom",0,function(e){return!N()&&e||I()},"saveChat",0,ir,"saveEntry",0,eP,"saveManualTests",0,es,"saveViews",0,iw,"searchDocs",0,X,"sendBackTask",0,function(e,t,i){return eo(e,"changes requested",t,"todo",i)},"sessionStartMemory",0,eU,"setDocProperties",0,F,"setManualTestChecked",0,el,"undoMerge",0,function(e,t,n="human"){return eO(async()=>{if(!Array.isArray(e)||!e.length)throw new tx("Invalid merge to undo");let s=e.map(e=>{let{file:t,raw:i}=e??{};if(!en(t,"memory/entries",/^E\d+[^/]*\.md$/)||"string"!=typeof i)throw new tx("Invalid merge to undo");let n=(0,$.parseEntry)(i,t);if(!n||n.id!==(0,$.normalizeEntryId)(r.default.basename(t).match(/^(E\d+)/i)?.[1]??""))throw new tx("Invalid merge to undo");return{file:t,raw:i,entry:n,dropped:!0===e.dropped}}),a=new Map((await ej(t)).map(e=>[e.id,e])),o=s.filter(e=>e.dropped&&a.has(e.entry.id)).map(e=>e.entry.id);if(o.length)throw new tx(`${o.join(", ")} already exists`);for(let e of(await i.default.mkdir(r.default.join(t,e$),{recursive:!0}),s)){let n=a.get(e.entry.id);await i.default.writeFile(r.default.join(t,e.file),e.raw,{flag:e.dropped?"wx":"w",encoding:"utf8"}),n&&n.file!==e.file&&await i.default.rm(r.default.join(t,n.file),{force:!0})}let l=s.find(e=>!e.dropped)?.entry.id??"";return await ts(t,{type:"memory_updated",actor:n,title:`Merge into ${l} undone`,detail:`${s.filter(e=>e.dropped).map(e=>e.entry.id).join(", ")} restored`}),s.map(e=>e.entry)})},"updateMemory",0,em,"updateRegistryAnnotation",0,tb,"updateRoadmapItem",0,t1,"updateTaskMeta",0,ee,"updateTaskStatus",0,K,"writeDoc",0,U,"writeEpisode",0,il,"writeRoadmapLayout",0,function(e,t){return tX(()=>t8(e,t))},"writeRunEpisode",0,ip],799501)},976259,e=>{"use strict";let t=["convention","gotcha","decision","preference"];function i(e){let t=/^e(\d+)$/i.exec(e.trim());if(!t)return null;let i=Number(t[1]);return i>0?`E${String(i).padStart(3,"0")}`:null}e.s(["ENTRY_TYPES",0,t,"entrySlug",0,function(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"").slice(0,40).replace(/-$/,"")},"formatEntry",0,function(e){let t=`# ${e.id}: ${e.summary}
230
+ **Type:** ${e.type}
231
+ **Updated:** ${e.updatedAt}
232
+ ${e.source?`**Source:** ${e.source}
233
+ `:""}${e.by?`**By:** ${e.by}
234
+ `:""}`;return e.body.trim()?`${t}
235
+ ${e.body.trim()}
236
+ `:t},"nextEntryId",0,function(e){let t=Math.max(0,...e.map(e=>Number(i(e)?.slice(1)??0)));return`E${String(t+1).padStart(3,"0")}`},"normalizeEntryId",0,i,"parseEntry",0,function(e,r){let n=e.replace(/\r\n/g,"\n").split("\n"),s=/^#\s+(E\d+):\s*(.+?)\s*$/i.exec(n[0]??""),a=s&&i(s[1]);if(!s||!a)return null;let o={},l=1;for(;l<n.length;l++){let e=/^\*\*(\w+):\*\*\s*(.*)$/.exec(n[l]);if(!e)break;o[e[1].toLowerCase()]=e[2].trim()}let u=o.type??"";return t.includes(u)?{id:a,type:u,summary:s[2],body:n.slice(l).join("\n").trim(),updatedAt:o.updated??"",by:o.by||null,...o.source?{source:o.source}:{},file:r}:null},"replaceEntryRefs",0,function(e,t,r){let n=new Set(t.map(e=>i(e)));return e.replace(/(?<![A-Za-z0-9_-])E\d+(?![A-Za-z0-9_])/g,e=>n.has(i(e))?r:e)},"validateEntryInput",0,function(e){let r;if(void 0!==e.id&&!i(String(e.id)))return`Invalid id "${e.id}": expected E followed by a number, e.g. E001`;if(r=String(e.type??""),!t.includes(r))return`Invalid type "${e.type??""}": use one of ${t.join(", ")}`;let n=String(e.summary??"").trim();return n?/\n/.test(n)?"summary must be one line":n.length>120?`summary is ${n.length} characters; keep it to 120`:void 0!==e.body&&"string"!=typeof e.body?"body must be a string":null:"summary is required"}])},76569,e=>{"use strict";let t=[1/0,10,5,3,1,0],i=["doc_read","session_start"],r=(e,t)=>e.length<=t?e:`${e.slice(0,Math.max(0,t-1)).trimEnd()}…`;function n(e,t,i){return e.length<=t?e.map(i):[...e.slice(0,t).map(i),`+${e.length-t} more`]}function s(e,t,i,s){let a=[...n(e.tasks,i,e=>`- ${e.id} → ${e.lastStatus}`),...e.docs.length?[`- Docs changed: ${n(e.docs,i,e=>e).join(", ")}`]:[],...e.decisions.length?[`- Decisions: ${n(e.decisions,i,e=>e).join(", ")}`]:[]].map(e=>e.startsWith("+")?`- ${e}`:e),o=(t.lastMessage??"").trim(),l=t.openTasks??[],u=[`## What happened
237
+ ${a.join("\n")||`- ${e.headline}`}`];return o&&u.push(`## Where it stopped
238
+ ${r(o,s).split("\n").map(e=>`> ${e}`).join("\n")}`),l.length&&u.push(`## Open
239
+ ${n(l,i,e=>`- ${e.id} ${e.title} (${e.status})`).map(e=>e.startsWith("+")?`- ${e}`:e).join("\n")}`),u.join("\n\n")}function a(e,t){let r=new Set(e.eventIds),n=t.filter(e=>r.has(e.id)&&!i.includes(e.type)),s=n.filter(e=>"memory_updated"===e.type&&!e.title.startsWith("Entry ")).reduce((e,t)=>null===e||t.timestamp>e?t.timestamp:e,null);return null!==s&&!n.some(e=>e.timestamp>s)}function o(e,t){let r=new Set(e.eventIds);return t.some(e=>r.has(e.id)&&!i.includes(e.type))}e.s(["buildEpisode",0,function(e,i){if(!e.eventCount)return"";let n=i.agent?`ai:${i.agent}`:e.actor,a=e.headline.replace("memory updated","entries saved"),o=`# Episode ${e.id}: ${a}
240
+ **Session:** ${e.id}
241
+ **Actor:** ${n}
242
+ **Start:** ${e.start}
243
+ **End:** ${e.end}
244
+ **Source:** ${i.source}
245
+
246
+ `,l=(i.lastMessage??"").trim().length,u="";for(let r of t){let t=1600-s(e,{...i,lastMessage:""},r,0).length-30;if((u=s(e,i,r,Math.max(200,Math.min(l,t)))).length<=1600)break}return o+r(u,1600)+"\n"},"hasWork",0,o,"isHandoffWritten",0,a,"lastEventTitle",0,function(e,t){let r=new Set(e.eventIds);return t.filter(e=>r.has(e.id)&&!i.includes(e.type)).sort((e,t)=>t.timestamp.localeCompare(e.timestamp))[0]?.title},"mergeSources",0,function(e,t){let i=(e??"").split(", ").filter(Boolean);return i.includes(t)?i.join(", "):[...i,t].join(", ")},"parseEpisode",0,function(e,t){let i=e.match(/^# Episode ([^:\n]+): (.*)$/m);if(!i)return null;let r=t=>e.match(RegExp(`^\\*\\*${t}:\\*\\* (.*)$`,"m"))?.[1].trim()??"",n=r("Session")||i[1].trim(),s=r("Start"),a=r("End");if(!s||!a)return null;let o=e.search(/^## /m);return{sessionId:n,actor:r("Actor"),start:s,end:a,source:r("Source"),headline:i[2].trim(),body:o<0?"":e.slice(o).trim(),file:t}},"sessionsNeedingEpisode",0,function(e,t,i,r,n){let s=n.since??-1/0;return e.filter(l=>{if("ai"!==l.actor||l.id===r||i.has(l.id))return!1;let u=Date.parse(l.end);return(n.now-u>n.gapMs||e.some(e=>e.actor===l.actor&&e.start>l.start&&o(e,t)))&&u>s&&o(l,t)&&!a(l,t)}).slice(0,n.limit??5)},"turnSessions",0,function(e,t,r,n="ai"){let s=new Set(t.filter(e=>e.timestamp>=r&&!i.includes(e.type)).map(e=>e.id));return e.filter(e=>e.actor===n&&e.eventIds.some(e=>s.has(e)))}])},166045,732613,e=>{"use strict";let t=/(?<![A-Za-z0-9_-])(E\d+|T\d{3,}|R\d{3,}|ADR-\d+)(?![A-Za-z0-9_])/g,i=/`([^`\s]+\.md)`/g,r=/\]\(\s*<?([^)\s>#]+\.md)(?:#[^)\s]*)?>?\s*\)/g,n=e=>String(Number(e)).padStart(3,"0");function s(e){return e.startsWith("ADR-")?`ADR-${n(e.slice(4))}`:e.startsWith("E")?`E${n(e.slice(1))}`:e}let a=e=>e.replace(/\\/g,"/").replace(/^\.?\//,"");function o(e){let n=new Set;for(let i of e.matchAll(t))/^E0+$/.test(i[1])||n.add(s(i[1]));let o=new Set;for(let t of[i,r])for(let i of e.matchAll(t))/^[a-z]+:\/\//i.test(i[1])||o.add(a(i[1]));return{ids:[...n],paths:[...o]}}e.s(["buildGraph",0,function(e,t){let i=[...e,...t],r=new Map(i.map(e=>[e.id,e])),n=new Map(i.map(e=>[e.path,e])),s=new Set(e.map(e=>e.id)),a=new Map,l=(e,t)=>{e!==t&&a.set(`${e}\u0000${t}`,{from:e,to:t})};for(let t of e){let{ids:e,paths:i}=o(t.text);for(let i of e)r.has(i)&&l(t.id,i);for(let e of i){let i=n.get(e);i&&l(t.id,i.id)}}for(let e of t)for(let t of o(e.text).ids)s.has(t)&&l(e.id,t);let u=new Set(s);for(let e of a.values())u.add(e.from),u.add(e.to);return{nodes:i.filter(e=>u.has(e.id)).map(({text:e,...t})=>t),edges:[...a.values()]}},"extractRefs",0,o,"fileNode",0,function(e,t){let i,r=a(e),n=r.split("/").pop()??r,o=/^#\s+(.+?)\s*$/m.exec(t)?.[1]??"",l=e=>o.replace(RegExp(`^${e}\\s*[:—–-]\\s*`),"")||n.replace(/\.md$/,"");return(i=/^plans\/tasks\/(T\d{3,})[^/]*\.md$/.exec(r))?{id:i[1],kind:"task",label:l(i[1]),path:r}:(i=/^plans\/roadmap\/(R\d{3,})[^/]*\.md$/.exec(r))?{id:i[1],kind:"epic",label:l(i[1]),path:r}:(i=/(?:^|\/)(ADR-\d+)[^/]*\.md$/.exec(r))?{id:s(i[1]),kind:"adr",label:l(i[1]),path:r}:{id:r,kind:"doc",label:o||n.replace(/\.md$/,""),path:r}},"formatEntryLinks",0,function(e,t,i=10){let r=(e,t)=>{if(!t.length)return[];let r=t.length>i?`, +${t.length-i} more`:"";return[`${e}: ${t.slice(0,i).join(", ")}${r}`]};return[...r("Links",e.edges.filter(e=>e.from===t).map(e=>e.to)),...r("Linked from",e.edges.filter(e=>e.to===t).map(e=>e.from))]},"neighbourhood",0,function(e,t){if(!e.nodes.some(e=>e.id===t))return{nodes:[],edges:[]};let i=e.edges.filter(e=>e.from===t||e.to===t),r=new Set([t,...i.flatMap(e=>[e.from,e.to])]);return{nodes:e.nodes.filter(e=>r.has(e.id)),edges:i}}],166045);let l=/(?<![A-Za-z0-9_-])(E\d+|T\d{3,}|R\d{3,}|ADR-\d+)(?![A-Za-z0-9_])/g,u=/^(E\d+|T\d{3,}|R\d{3,}|ADR-\d+)$/,d=/`([^`\s]+\.md)`/g,c=/\[([^\]]*)\]\(\s*<?([^)\s>#]+\.md)(?:#[^)\s]*)?>?(?:\s+"[^"]*"|\s+'[^']*')?\s*\)/g,h=/^\s*(`{3,}|~{3,})/,f=/(`+)[^`]*?\1/g,p=e=>{try{return decodeURI(e)}catch{return e}},m=e=>e.replace(/^\s*(?:#{1,6}|>|[-*+]|\d+\.)\s+(?:\[[ xX]\]\s+)?/,"").replace(/\[\[([^\]|#]+)(?:#[^\]|]*)?(?:\|([^\]]+))?\]\]/g,(e,t,i)=>i??t).replace(/\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/`|\*\*|__/g,"").trim(),g=/[<>{}*?…]|\.\.\.|(?:^|[^A-Za-z0-9])(?:[A-Z]?0+N|N{2,}|X{3,}|YYYY)(?![A-Za-z0-9])/,w=new Set(["a","b","c","x","y","z","path","name","slug","title","foo","bar","wikilinks","example"]),y=/\[\[([^\]|#]+)(?:#[^\]|]*)?(?:\|([^\]]+))?\]\]/g,b=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,v=e=>String(Number(e)).padStart(3,"0");function E(e){return e.startsWith("ADR-")?`ADR-${v(e.slice(4))}`:e.startsWith("E")?`E${v(e.slice(1))}`:e}function S(e){let t=[];for(let i of e.replace(/\\/g,"/").split("/"))if(i&&"."!==i)if(".."===i){if(!t.length)return null;t.pop()}else t.push(i);return t.join("/")}let _=e=>e.includes("/")?e.slice(0,e.lastIndexOf("/")):"",k=e=>(e.split("/").pop()??e).replace(/\.md$/i,"");function x(e){let t=/^plans\/tasks\/(T\d{3,})[^/]*\.md$/.exec(e)??/^plans\/roadmap\/(R\d{3,})[^/]*\.md$/.exec(e)??/^memory\/entries\/(E\d+)[^/]*\.md$/.exec(e)??/(?:^|\/)(ADR-\d+)[^/]*\.md$/.exec(e);return t?E(t[1]):null}let $=new WeakMap;function R(e){let t=$.get(e);if(t)return t;for(let i of(t={set:new Set(e),byBase:new Map,byId:new Map},e)){let e=k(i).toLowerCase();t.byBase.set(e,[...t.byBase.get(e)??[],i]);let r=x(i);r&&!t.byId.has(r)&&t.byId.set(r,i)}return $.set(e,t),t}function O(e,t){let i=(/\.md$/i.test(e)?e:`${e}.md`).toLowerCase();return(t.byBase.get(k(i))??[]).filter(e=>(e.split("/").pop()??"").toLowerCase()===i)}function j(e,t,i,r){let n=R(i),s=r??(u.test(e)?"id":/\.md$/i.test(e)?"md":"wiki");if("id"===s)return n.byId.get(E(e))??null;if("wiki"===s&&u.test(e)){let t=n.byId.get(E(e));if(t)return t}let a="wiki"===s?e:e.replace(/^@(?=[^/@])/,""),o=/^\.\.?\//.test(a),l=S(t)??t,d=e=>{for(let t of[e,/\.md$/i.test(e)?null:`${e}.md`].filter(e=>!!e)){let e=a.startsWith("/")?null:S(`${_(l)}/${t}`);if(null!==e&&n.set.has(e))return e;if(o)continue;let i=S(t);if(null!==i&&n.set.has(i))return i}return null};if("wiki"!==s){let e="code"!==s||a.includes("/")?[]:O(a,n);return d(a)??(1===e.length?e[0]:null)}let c=a.includes("/")?d(a):null;if(c)return c;let h=k(a).toLowerCase(),f=a.includes("/")?`/${a.replace(/\.md$/i,"").toLowerCase()}.md`:null,p=(n.byBase.get(h)??[]).filter(e=>!f||`/${e.toLowerCase()}`.endsWith(f));if(!p.length)return null;let m=_(l);return p.find(e=>_(e)===m)??[...p].sort((e,t)=>e.split("/").length-t.split("/").length||e.length-t.length||e.localeCompare(t))[0]}e.s(["buildDocGraph",0,function(e,t=[]){let i=e.map(e=>e.node.path),r=[...i,...t],n=(e,t)=>null!==j(e.target,t,r,e.kind)||"code"===e.kind&&!e.target.includes("/")&&O(e.target,R(r)).length>0,s=new Map,a=new Map,o=new Map,l={};for(let{node:t,links:r}of e)for(let e of r){let r=j(e.target,t.path,i,e.kind);if(null!==r&&((l[t.path]??={})[e.target]??=r),r===t.path)continue;if(null===r){if("id"===e.kind||function(e){let t=(e.split("/").pop()??"").replace(/\.md$/i,"").replace(/^(?:ADR-\d+|[TRE]\d+)-/,"");return w.has(t.toLowerCase())}(e.target)||n(e,t.path))continue;let i=`${t.path}\u0000${e.target}`,r="code"===e.kind?o:a;r.has(i)||r.set(i,{from:t.path,target:e.target,line:e.line,text:e.text,kind:e.kind});continue}let u=`${t.path}\u0000${r}`;s.has(u)||s.set(u,{from:t.path,to:r,line:e.line,text:e.text,...e.context&&{context:e.context}})}return{nodes:e.map(e=>e.node),edges:[...s.values()],broken:[...a.values()],stale:[...o.values()],targets:l}},"docLinks",0,function(e,t){let i=S(t)??t,r=new Map(e.nodes.map(e=>[e.path,e]));if(!r.has(i))return null;let n=(e,t)=>{let i=r.get(e);return{path:e,kind:i?.kind??"doc",label:i?.label??k(e),line:t.line,text:t.text,...t.context&&{context:t.context}}},s=e=>({path:e.target,kind:e.kind,label:e.target,line:e.line,text:e.text});return{out:e.edges.filter(e=>e.from===i).map(e=>n(e.to,e)),in:e.edges.filter(e=>e.to===i).map(e=>n(e.from,e)),broken:e.broken.filter(e=>e.from===i).map(s),stale:e.stale.filter(e=>e.from===i).map(s),targets:Object.fromEntries(Object.entries(e.targets[i]??{}).map(([e,t])=>{let i=r.get(t);return[e,{path:t,kind:i?.kind??"doc",id:i?.id??t,label:i?.label??k(t)}]}))}},"docNode",0,function(e,t){let i,r=S(e)??e,n=k(r),s=(/^#\s+(.+?)\s*$/m.exec(t)?.[1]??"").replace(/!?\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[\[([^\]|]+)(?:\|([^\]]+))?\]\]/g,(e,t,i)=>i??t).replace(/(\*\*|\*|~~|`)(\S(?:.*?\S)?)\1/g,"$2").replace(/(^|\W)(__|_)(\S(?:.*?\S)?)\2(?=\W|$)/g,"$1$3").replace(/<[^>]+>/g,"").trim(),a=/[^.][.!]$/.test(s)?"":s,o=e=>a.replace(RegExp(`^${e}\\s*[:—–-]\\s*`),"")||n;return(i=/^plans\/tasks\/(T\d{3,})[^/]*\.md$/.exec(r))?{id:i[1],kind:"task",label:o(i[1]),path:r}:(i=/^plans\/roadmap\/(R\d{3,})[^/]*\.md$/.exec(r))?{id:i[1],kind:"epic",label:o(i[1]),path:r}:(i=/^memory\/entries\/(E\d+)[^/]*\.md$/.exec(r))?{id:E(i[1]),kind:"entry",label:o(i[1]),path:r}:(i=/(?:^|\/)(ADR-\d+)[^/]*\.md$/.exec(r))?{id:E(i[1]),kind:"adr",label:o(i[1]),path:r}:{id:r,kind:"doc",label:a||n,path:r}},"extractLinks",0,function(e,t){let i=[],r="",n="";return e.replace(/\r\n/g,"\n").split("\n").forEach((e,t)=>{let s=h.exec(e)?.[1];if(s&&(!r||s[0]===r[0]&&s.length>=r.length)){r=r?"":s;return}if(r)return;let a=t+1,o=i.length,u=e.replace(f,e=>" ".repeat(e.length));for(let t of u.matchAll(c)){let r=e.slice(t.index+1,t.index+1+t[1].length);b.test(t[2])||g.test(t[2])||i.push({target:p(t[2]),kind:"md",line:a,text:r||t[2]})}for(let e of u.matchAll(y)){let t=p(e[1].trim());!t||b.test(t)||g.test(t)||i.push({target:t,kind:"wiki",line:a,text:(e[2]??t).trim()})}for(let t of e.matchAll(d))b.test(t[1])||g.test(t[1])||i.push({target:p(t[1]),kind:"code",line:a,text:t[1]});for(let t of e.matchAll(l))/^E0+$/.test(t[1])||i.push({target:E(t[1]),kind:"id",line:a,text:t[1]});for(let t of i.slice(o))if(t.text===t.target){let i=function(e,t,i){let r=m(e).split(/(?<=[.!?])\s+/).find(e=>e.includes(t))??"",n=(r.startsWith(t)?r.slice(t.length).replace(/^[\s:,;–—-]+/,""):r).trim();return(/[A-Za-z]{3}/.test(n.replace(t,""))?n:i).slice(0,200)}(e,t.text,n);i&&(t.context=i)}/^#{1,6}\s/.test(e)&&(n=m(e))}),i},"formatRelatedFiles",0,function(e,t=10){if(!e)return"";let i=e=>x(e.path)??e.path,r=(e,i)=>{if(!i.length)return[];let r=i.length>t?` (+${i.length-t} more)`:"";return[`${e}: ${i.slice(0,t).join(" · ")}${r}`]},n=[...r("Links to",e.out.map(i)),...r("Linked from",e.in.map(e=>`${i(e)} (L${e.line})`)),...r("Broken",e.broken.map(e=>`${e.path} (L${e.line})`)),...r("Stale paths",(e.stale??[]).map(e=>`${e.path} (L${e.line})`))];return n.length?["## Related files",...n,"Read with vibedoc_read_doc, or several at once with vibedoc_get_context { paths }."].join("\n"):""}],732613)},282416,440732,e=>{"use strict";let t=[["working-on",/^working on\b/i],["up-next",/^up next\b/i],["just-completed",/^just completed\b/i]],i=new Set(["done","cancelled"]),r=e=>/^[TR]\d/.test(e),n=e=>/^E\d/.test(e);function s(e){let t=!1;return e.split("\n").filter(e=>/^\s*```/.test(e)?(t=!t,!1):!t).join("\n").replace(/`[^`\n]*`/g,"")}let a=e=>t.find(([,t])=>t.test(e))?.[0],o=new Set(["may","must","should"]),l=e=>e.length>4?e.replace(/(ing|ed|es|e)$/,""):e,u=(e,t)=>{if(!e.size&&!t.size)return 0;let i=0;for(let r of e)t.has(r)&&i++;return i/(e.size+t.size-i)},d=(e,t)=>e.localeCompare(t,"en",{numeric:!0}),c=(e,t)=>{let i=.6*u(e.summary,t.summary)+.4*u(e.all,t.all);return e.type===t.type?i:i-.1},h=e=>Date.UTC(+e.slice(0,4),e.slice(5,7)-1,+e.slice(8,10))/864e5,f=e=>!!e&&/^\d{4}-\d{2}-\d{2}$/.test(e),p=e=>Object.fromEntries(Object.entries(e).sort(([e],[t])=>d(e,t)));e.s(["findContradictions",0,function(e,t,o,l,u=[]){let d=new Map(o.map(e=>[e.id,e.status])),c=new Set(t.map(e=>e.id)),h=new Map,f=e=>{h.has(e.id)||h.set(e.id,e)},p=(e,t,i,a)=>{for(let o of l(s(i)))(a.board&&r(o)&&!d.has(o)||a.entry&&n(o)&&!c.has(o))&&f({id:`dangling-ref:${e}:${o}`,kind:"dangling-ref",severity:"info",message:`${t} mentions ${o}, which doesn't exist`,refs:[o]})},m=c.size>0;for(let{heading:t,body:n}of function(e){let t=[{heading:"",body:""}],i=!1;for(let r of e.split("\n")){if(/^\s*```/.test(r)){i=!i;continue}if(i)continue;let e=/^##\s+(.+?)\s*$/.exec(r);e?t.push({heading:e[1],body:""}):t[t.length-1].body+=r+"\n"}return t}(e)){p("handoff","Handoff",n,{board:!0,entry:m});let e=a(t);if(e)for(let t of l(s(n)).filter(r)){let r=d.get(t);if(void 0!==r){if("just-completed"===e)t.startsWith("T")&&"done"!==r&&f({id:`contradiction:${e}:${t}`,kind:"contradiction",severity:"warn",message:`Handoff says ${t} is done, but it is ${r}`,refs:[t]});else if(i.has(r)){let i="working-on"===e?"in progress":"up next";f({id:`contradiction:${e}:${t}`,kind:"contradiction",severity:"warn",message:`Handoff says ${t} is ${i}, but it is ${r}`,refs:[t]})}}}}for(let e of t)p(e.id,e.id,`${e.summary}
247
+ ${e.body}`,{board:!0,entry:!0});if(m)for(let e of u)p(e.id,e.id,e.text,{board:!1,entry:!0});return[...h.values()].sort((e,t)=>(e.severity===t.severity?0:"warn"===e.severity?-1:1)||e.refs[0].localeCompare(t.refs[0],"en",{numeric:!0})||e.id.localeCompare(t.id,"en",{numeric:!0}))},"findDuplicates",0,function(e,t,i={}){let r=i.threshold??.5,n=e.map((e,t)=>t),s=e=>n[e]===e?e:n[e]=s(n[e]),a=new Map,u=e.map(e=>{let i;return i=e=>new Set(t(e).map(l).filter(e=>!o.has(e))),{type:e.type,summary:i(e.summary),all:i(`${e.summary}
248
+ ${e.body}`)}});for(let t=0;t<e.length;t++)for(let i=t+1;i<e.length;i++){let e=c(u[t],u[i]);e<r||(n[s(i)]=s(t),a.set(t,Math.max(a.get(t)??0,e)))}let h=new Map;return e.forEach((e,t)=>{let i=h.get(s(t))??{ids:[],score:0};i.ids.push(e.id),i.score=Math.max(i.score,a.get(t)??0),h.set(s(t),i)}),[...h.values()].filter(e=>e.ids.length>1).map(({ids:e,score:t})=>{e.sort(d);let i=2===e.length?e.join(" and "):`${e.slice(0,-1).join(", ")} and ${e[e.length-1]}`;return{id:`duplicate:${e.join("+")}`,kind:"duplicate",severity:"info",message:`${i} look like duplicates (${Math.round(100*t)}%)`,refs:e,suggestion:{action:"merge",ids:e}}}).sort((e,t)=>d(e.refs[0],t.refs[0]))},"findStale",0,function(e,t,i,r={}){let n=r.days??60,s=[];for(let r of e){let e=f(t[r.id])?t[r.id]:void 0,a=[e,f(r.updatedAt)?r.updatedAt:void 0].filter(f).sort().pop();if(!a||h(i)-h(a)<=n)continue;let o=e=>{let t=h(i)-h(e);return`${t} ${1===t?"day":"days"} ago`};s.push({id:`stale:${r.id}`,kind:"stale",severity:"info",message:e?`${r.id} last recalled ${o(e)}`:`${r.id} never recalled (updated ${o(a)})`,refs:[r.id],suggestion:{action:"delete",ids:[r.id]}})}return s.sort((e,t)=>d(e.refs[0],t.refs[0]))},"formatHealthWarnings",0,function(e){let t=e.filter(e=>"warn"===e.severity);if(!t.length){let t=e.length;return t?`ℹ ${t} memory cleanup ${1===t?"suggestion":"suggestions"} on /memory`:""}let i=t.length-5;return["## ⚠ Memory warnings",...t.slice(0,5).map(e=>`- ⚠ ${e.message}`),...i>0?[`…and ${i} more on /memory`]:[]].join("\n")},"markRecalled",0,function(e,t,i){return t.every(t=>e[t]===i)?null:p({...e,...Object.fromEntries(t.map(e=>[e,i]))})},"pruneDismissed",0,function(e,t){let i=new Set(t),r=Object.entries(e).filter(([e])=>{let t,r,n;return!(t=e.indexOf(":"),r=e.slice(0,t),n=e.slice(t+1),"stale"===r?[n]:"duplicate"===r?n.split("+"):"dangling-ref"===r?[n.slice(0,n.lastIndexOf(":")),n.slice(n.lastIndexOf(":")+1)]:[]).some(e=>i.has(e))});return r.length===Object.keys(e).length?null:Object.fromEntries(r)},"sortedLog",0,p],282416);let m=e=>Array.isArray(e)?e:[e],g=(e,t)=>m(e).map(e=>`- ${e}`).join("\n")||t,w=[["currentState","Current state",e=>String(e??"")],["justCompleted","Just completed",e=>g(e,"- (nothing this session)")],["workingOn","Working on now",e=>String(e??"")||"(nothing active)"],["upNext","Up next",e=>m(e).map((e,t)=>`${t+1}. ${e}`).join("\n")||"1. (define next steps)"],["issues","Active issues",e=>"| Issue | Severity | Status |\n|-------|----------|--------|\n"+(m(e).map(e=>e&&"object"==typeof e?`| ${e.issue} | ${e.severity||"medium"} | ${e.status||"open"} |`:`| ${e} | medium | open |`).join("\n")||"| None | — | — |")],["decisions","Recent decisions",e=>g(e,"- (none this session)")],["techDebt","Tech debt",e=>g(e,"- (none noted)")],["handoff","Handoff for next session",e=>String(e??"")]],y=w.map(([e])=>e),b={justCompleted:[],upNext:[],issues:[],decisions:[],techDebt:[]};function v(e){let t="";return e.map(e=>{let i=/^\s*(`{3,}|~{3,})(.*?)\r?\n?$/.exec(e);return t?(i&&i[1][0]===t[0]&&i[1].length>=t.length&&!i[2].trim()&&(t=""),!0):(i&&(t=i[1]),!!i)})}function E(e){let t={preamble:"",sections:[]},i=e.split(/(?<=\n)/),r=v(i);return i.forEach((e,i)=>{let n=e.replace(/\r?\n$/,""),s=!r[i]&&/^##\s+(.+?)(?:\s+#+)?\s*$/.exec(n);s?t.sections.push({heading:s[1],line:n,body:e.slice(n.length)}):t.sections.length?t.sections[t.sections.length-1].body+=e:t.preamble+=e}),t}function S(e){let t=e.split(/(?<=\n)/),i=v(t);return t.map((e,t)=>i[t]?e:e.replace(/^##(?=\s)/,"###")).join("")}let _=e=>y.filter(t=>null!=e[t]);e.s(["SECTIONS",0,w,"mergeMemory",0,function(e,t,i){if(!_(t).length)throw Error(`Nothing to update: pass at least one of ${y.join(", ")}`);if(!e.trim())return`# Project Memory
249
+ **Last updated:** ${i}
250
+
251
+ `+w.map(([e,i,r])=>`## ${i}
252
+ ${S(r(t[e]??b[e]))}
253
+ `).join("\n");let r=E(e),n=e=>r.sections.findIndex(t=>t.heading.trim().toLowerCase()===e.toLowerCase());w.forEach(([i,s,a],o)=>{if(null==t[i])return;let l=S(a(t[i])).replace(/\s+$/,""),u=n(s);if(u>=0){let e=r.sections[u],t=e.body.startsWith("\r\n")?"\r\n":"\n";e.body=`${t}${l.replace(/\r?\n/g,t)}${/(\r?\n)*$/.exec(e.body)?.[0]||t}`;return}let d=w.slice(0,o).map(([,e])=>n(e)).filter(e=>e>=0),c=w.slice(o+1).map(([,e])=>n(e)).filter(e=>e>=0),h=d.length?Math.max(...d)+1:c.length?Math.min(...c):r.sections.length,f=h===r.sections.length,p=e.includes("\r\n")?"\r\n":"\n",m=h>0?r.sections[h-1]:null;m?m.body=m.body.replace(/(\r?\n)*$/,p+p):r.preamble&&(r.preamble=r.preamble.replace(/(\r?\n)*$/,p+p)),r.sections.splice(h,0,{heading:s,line:`## ${s}`,body:`${p}${l.replace(/\r?\n/g,p)}${p}${f?"":p}`})});let s=`**Last updated:** ${i}`,a=r.preamble.split(/(?<=\n)/),o=v(a),l=e=>a.findIndex((t,i)=>!o[i]&&e.test(t)),u=l(/^\*\*Last updated:\*\*/),d=l(/^# /);return u>=0?a[u]=s+(/\r?\n$/.exec(a[u])?.[0]??""):d>=0?a[d]=a[d].replace(/(\r?\n)?$/,e=>`${e||"\n"}${s}${e}`):a.unshift(`${s}
254
+ `),r.preamble=a.join(""),r.preamble+r.sections.map(e=>e.line+e.body).join("")},"parseMemory",0,E,"passedKeys",0,_],440732)},817466,e=>{"use strict";let t=new Set("a an and are as at be but by can do does for from how i if in into is it its of on or our so that the their then there these this to use used using was we what when where which who why will with you your".split(" "));function i(e){return e.toLowerCase().split(/[^a-z0-9]+/).filter(e=>e.length>1&&!t.has(e)).map(e=>e.length>3&&e.endsWith("s")&&!e.endsWith("ss")?e.slice(0,-1):e)}function r(e){return Math.ceil(e.length/4)}function n(e){return`${e.id} \xb7 ${e.type} \xb7 ${e.summary} (~${e.tokens} tok)`}e.s(["DEFAULT_SESSION_BUDGET",0,2e3,"fitToBudget",0,function(e,t,i,s=""){let a,o=(i,r)=>[e.trimEnd(),"",...s?[s.trimEnd(),""]:[],...r?[r]:[],`## Knowledge entries (${t.length})`,...t.slice(0,i).map(n),...i<t.length?[`+${t.length-i} more entries — use vibedoc_recall { query }`]:[],"Save new facts with vibedoc_save_entry; fetch bodies with vibedoc_get_entries."].join("\n"),l=e=>r(o(e))<=i,u=0;if(l(0)){for(;u<t.length&&l(u+1);)u++;a=o(u)}else{let t=s?`The handoff and the latest episode are ~${r(`${e}
255
+ ${s}`)} tokens`:`The handoff alone is ~${r(e)} tokens`;a=o(0,`⚠️ ${t}, over the ${i}-token session budget: trim memory/MEMORY.md.`)}return{text:a,shown:u,omitted:t.length-u,tokens:r(a)}},"formatCompactLine",0,n,"formatEpisodeSection",0,function(e,t=0){return[`## Since the last handoff (auto, ${e.end.slice(0,10)})`,e.body.trim().replace(/^## /gm,"### "),...t>0?["",`+${t} older episode${1===t?"":"s"} in .vibedoc/episodes/`]:[]].join("\n")},"formatRelated",0,function(e,t=3){let i=e.filter(e=>e.score>=3).slice(0,t);return i.length?`## Related memory
256
+ ${i.map(n).join("\n")}
257
+ Fetch with vibedoc_get_entries`:""},"indexHits",0,function(e){return[...e].sort((e,t)=>t.updatedAt.localeCompare(e.updatedAt)||e.id.localeCompare(t.id,"en",{numeric:!0})).map(e=>({id:e.id,type:e.type,summary:e.summary,tokens:r(`${e.summary}
258
+ ${e.body}`),score:0}))},"rankEntries",0,function(e,t,n={}){let s=[...new Set(i(t))];if(!s.length)return[];let a=[];for(let t of e){if(n.type&&t.type!==n.type)continue;let e=new Set(i(t.summary)),o=new Set(i(t.body)),l=new Set([t.id.toLowerCase(),...i(t.type)]),u=0;for(let t of s)e.has(t)&&(u+=3),l.has(t)&&(u+=2),o.has(t)&&(u+=1);u>0&&a.push({id:t.id,type:t.type,summary:t.summary,tokens:r(`${t.summary}
259
+ ${t.body}`),score:u,updatedAt:t.updatedAt})}return a.sort((e,t)=>t.score-e.score||t.updatedAt.localeCompare(e.updatedAt)),a.slice(0,n.limit??10).map(({updatedAt:e,...t})=>t)},"taskQuery",0,function(e){let t=/^## Goal[ \t]*\n([\s\S]*?)(?=^## |(?![\s\S]))/m.exec(e.raw??"")?.[1].trim()??"",i=(e.phase??"").replace(/^R\d+\s*[—–-]\s*/,"");return[e.title,t.slice(0,500),i].filter(Boolean).join(" ")},"tokenize",0,i])}];
260
+
261
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0pb7dzk._.js.map