vibedoc 1.7.0 → 1.8.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 (638) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +9 -0
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +42 -14
  5. package/.next/routes-manifest.json +54 -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)/manual-tests/page/app-paths-manifest.json +3 -0
  17. package/.next/server/app/(app)/manual-tests/page/build-manifest.json +20 -0
  18. package/.next/server/app/(app)/manual-tests/page/next-font-manifest.json +11 -0
  19. package/.next/server/app/(app)/manual-tests/page/react-loadable-manifest.json +1 -0
  20. package/.next/server/app/(app)/manual-tests/page/server-reference-manifest.json +4 -0
  21. package/.next/server/app/(app)/manual-tests/page.js +15 -0
  22. package/.next/server/app/(app)/manual-tests/page.js.map +5 -0
  23. package/.next/server/app/(app)/manual-tests/page.js.nft.json +1 -0
  24. package/.next/server/app/(app)/manual-tests/page_client-reference-manifest.js +3 -0
  25. package/.next/server/app/(app)/memory/page.js.nft.json +1 -1
  26. package/.next/server/app/(app)/memory/page_client-reference-manifest.js +1 -1
  27. package/.next/server/app/(app)/roadmap/page.js.nft.json +1 -1
  28. package/.next/server/app/(app)/roadmap/page_client-reference-manifest.js +1 -1
  29. package/.next/server/app/(app)/settings/page.js.nft.json +1 -1
  30. package/.next/server/app/(app)/settings/page_client-reference-manifest.js +1 -1
  31. package/.next/server/app/(app)/setup/page.js.nft.json +1 -1
  32. package/.next/server/app/(app)/setup/page_client-reference-manifest.js +1 -1
  33. package/.next/server/app/_global-error.html +1 -1
  34. package/.next/server/app/_global-error.rsc +1 -1
  35. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  36. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  37. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  38. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  39. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  40. package/.next/server/app/_not-found.html +1 -1
  41. package/.next/server/app/_not-found.rsc +3 -2
  42. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -2
  43. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -2
  44. package/.next/server/app/_not-found.segments/_tree.segment.rsc +3 -2
  45. package/.next/server/app/activity.html +1 -1
  46. package/.next/server/app/activity.rsc +20 -18
  47. package/.next/server/app/activity.segments/!KGFwcCk/activity/__PAGE__.segment.rsc +7 -6
  48. package/.next/server/app/activity.segments/_full.segment.rsc +20 -18
  49. package/.next/server/app/activity.segments/_tree.segment.rsc +3 -2
  50. package/.next/server/app/api/activity/route.js +2 -2
  51. package/.next/server/app/api/activity/route.js.nft.json +1 -1
  52. package/.next/server/app/api/backlinks/route.js +2 -2
  53. package/.next/server/app/api/backlinks/route.js.nft.json +1 -1
  54. package/.next/server/app/api/chat/route.js +1 -1
  55. package/.next/server/app/api/chat/route.js.nft.json +1 -1
  56. package/.next/server/app/api/context/route.js +2 -2
  57. package/.next/server/app/api/context/route.js.nft.json +1 -1
  58. package/.next/server/app/api/conversations/route.js +2 -2
  59. package/.next/server/app/api/conversations/route.js.nft.json +1 -1
  60. package/.next/server/app/api/decisions/route.js +2 -2
  61. package/.next/server/app/api/decisions/route.js.nft.json +1 -1
  62. package/.next/server/app/api/docs/route.js +1 -1
  63. package/.next/server/app/api/docs/route.js.nft.json +1 -1
  64. package/.next/server/app/api/explorer/route.js +2 -2
  65. package/.next/server/app/api/explorer/route.js.nft.json +1 -1
  66. package/.next/server/app/api/mcp/route.js +1 -1
  67. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  68. package/.next/server/app/api/memory/route.js +2 -2
  69. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  70. package/.next/server/app/api/plan/apply/route.js +3 -3
  71. package/.next/server/app/api/plan/apply/route.js.nft.json +1 -1
  72. package/.next/server/app/api/projects/route.js +2 -2
  73. package/.next/server/app/api/projects/route.js.nft.json +1 -1
  74. package/.next/server/app/api/registry/route.js +2 -2
  75. package/.next/server/app/api/registry/route.js.nft.json +1 -1
  76. package/.next/server/app/api/roadmap/create/route.js +3 -3
  77. package/.next/server/app/api/roadmap/create/route.js.nft.json +1 -1
  78. package/.next/server/app/api/roadmap/delete/route.js +3 -3
  79. package/.next/server/app/api/roadmap/delete/route.js.nft.json +1 -1
  80. package/.next/server/app/api/roadmap/generate/route.js +3 -3
  81. package/.next/server/app/api/roadmap/generate/route.js.nft.json +1 -1
  82. package/.next/server/app/api/roadmap/layout/route.js +3 -3
  83. package/.next/server/app/api/roadmap/layout/route.js.nft.json +1 -1
  84. package/.next/server/app/api/roadmap/restore/route/app-paths-manifest.json +3 -0
  85. package/.next/server/app/api/roadmap/restore/route/build-manifest.json +12 -0
  86. package/.next/server/app/api/roadmap/restore/route/server-reference-manifest.json +4 -0
  87. package/.next/server/app/api/roadmap/restore/route.js +9 -0
  88. package/.next/server/app/api/roadmap/restore/route.js.map +5 -0
  89. package/.next/server/app/api/roadmap/restore/route.js.nft.json +1 -0
  90. package/.next/server/app/api/roadmap/restore/route_client-reference-manifest.js +3 -0
  91. package/.next/server/app/api/roadmap/route.js +3 -3
  92. package/.next/server/app/api/roadmap/route.js.nft.json +1 -1
  93. package/.next/server/app/api/roadmap/update/route.js +3 -3
  94. package/.next/server/app/api/roadmap/update/route.js.nft.json +1 -1
  95. package/.next/server/app/api/sessions/route.js +2 -2
  96. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  97. package/.next/server/app/api/settings/route.js +3 -3
  98. package/.next/server/app/api/settings/route.js.nft.json +1 -1
  99. package/.next/server/app/api/setup/generate/route.js +1 -1
  100. package/.next/server/app/api/setup/generate/route.js.nft.json +1 -1
  101. package/.next/server/app/api/setup/write/route.js +2 -2
  102. package/.next/server/app/api/setup/write/route.js.nft.json +1 -1
  103. package/.next/server/app/api/summary/route.js +2 -2
  104. package/.next/server/app/api/summary/route.js.nft.json +1 -1
  105. package/.next/server/app/api/tasks/bulk/route/app-paths-manifest.json +3 -0
  106. package/.next/server/app/api/tasks/bulk/route/build-manifest.json +12 -0
  107. package/.next/server/app/api/tasks/bulk/route/server-reference-manifest.json +4 -0
  108. package/.next/server/app/api/tasks/bulk/route.js +9 -0
  109. package/.next/server/app/api/tasks/bulk/route.js.map +5 -0
  110. package/.next/server/app/api/tasks/bulk/route.js.nft.json +1 -0
  111. package/.next/server/app/api/tasks/bulk/route_client-reference-manifest.js +3 -0
  112. package/.next/server/app/api/tasks/create/route.js +2 -2
  113. package/.next/server/app/api/tasks/create/route.js.nft.json +1 -1
  114. package/.next/server/app/api/tasks/delete/route/app-paths-manifest.json +3 -0
  115. package/.next/server/app/api/tasks/delete/route/build-manifest.json +12 -0
  116. package/.next/server/app/api/tasks/delete/route/server-reference-manifest.json +4 -0
  117. package/.next/server/app/api/tasks/delete/route.js +9 -0
  118. package/.next/server/app/api/tasks/delete/route.js.map +5 -0
  119. package/.next/server/app/api/tasks/delete/route.js.nft.json +1 -0
  120. package/.next/server/app/api/tasks/delete/route_client-reference-manifest.js +3 -0
  121. package/.next/server/app/api/tasks/manual-tests/route/app-paths-manifest.json +3 -0
  122. package/.next/server/app/api/tasks/manual-tests/route/build-manifest.json +12 -0
  123. package/.next/server/app/api/tasks/manual-tests/route/server-reference-manifest.json +4 -0
  124. package/.next/server/app/api/tasks/manual-tests/route.js +8 -0
  125. package/.next/server/app/api/tasks/manual-tests/route.js.map +5 -0
  126. package/.next/server/app/api/tasks/manual-tests/route.js.nft.json +1 -0
  127. package/.next/server/app/api/tasks/manual-tests/route_client-reference-manifest.js +3 -0
  128. package/.next/server/app/api/tasks/restore/route/app-paths-manifest.json +3 -0
  129. package/.next/server/app/api/tasks/restore/route/build-manifest.json +12 -0
  130. package/.next/server/app/api/tasks/restore/route/server-reference-manifest.json +4 -0
  131. package/.next/server/app/api/tasks/restore/route.js +9 -0
  132. package/.next/server/app/api/tasks/restore/route.js.map +5 -0
  133. package/.next/server/app/api/tasks/restore/route.js.nft.json +1 -0
  134. package/.next/server/app/api/tasks/restore/route_client-reference-manifest.js +3 -0
  135. package/.next/server/app/api/tasks/review/route/app-paths-manifest.json +3 -0
  136. package/.next/server/app/api/tasks/review/route/build-manifest.json +12 -0
  137. package/.next/server/app/api/tasks/review/route/server-reference-manifest.json +4 -0
  138. package/.next/server/app/api/tasks/review/route.js +9 -0
  139. package/.next/server/app/api/tasks/review/route.js.map +5 -0
  140. package/.next/server/app/api/tasks/review/route.js.nft.json +1 -0
  141. package/.next/server/app/api/tasks/review/route_client-reference-manifest.js +3 -0
  142. package/.next/server/app/api/tasks/route.js +2 -2
  143. package/.next/server/app/api/tasks/route.js.nft.json +1 -1
  144. package/.next/server/app/api/tasks/update/route/app-paths-manifest.json +3 -0
  145. package/.next/server/app/api/tasks/update/route/build-manifest.json +12 -0
  146. package/.next/server/app/api/tasks/update/route/server-reference-manifest.json +4 -0
  147. package/.next/server/app/api/tasks/update/route.js +9 -0
  148. package/.next/server/app/api/tasks/update/route.js.map +5 -0
  149. package/.next/server/app/api/tasks/update/route.js.nft.json +1 -0
  150. package/.next/server/app/api/tasks/update/route_client-reference-manifest.js +3 -0
  151. package/.next/server/app/api/views/route/app-paths-manifest.json +3 -0
  152. package/.next/server/app/api/views/route/build-manifest.json +12 -0
  153. package/.next/server/app/api/views/route/server-reference-manifest.json +4 -0
  154. package/.next/server/app/api/views/route.js +9 -0
  155. package/.next/server/app/api/views/route.js.map +5 -0
  156. package/.next/server/app/api/views/route.js.nft.json +1 -0
  157. package/.next/server/app/api/views/route_client-reference-manifest.js +3 -0
  158. package/.next/server/app/board.html +1 -1
  159. package/.next/server/app/board.rsc +20 -18
  160. package/.next/server/app/board.segments/!KGFwcCk/board/__PAGE__.segment.rsc +7 -6
  161. package/.next/server/app/board.segments/_full.segment.rsc +20 -18
  162. package/.next/server/app/board.segments/_tree.segment.rsc +3 -2
  163. package/.next/server/app/chat.html +1 -1
  164. package/.next/server/app/chat.rsc +20 -18
  165. package/.next/server/app/chat.segments/!KGFwcCk/chat/__PAGE__.segment.rsc +12 -9
  166. package/.next/server/app/chat.segments/_full.segment.rsc +20 -18
  167. package/.next/server/app/chat.segments/_tree.segment.rsc +3 -2
  168. package/.next/server/app/docs.html +1 -1
  169. package/.next/server/app/docs.rsc +20 -18
  170. package/.next/server/app/docs.segments/!KGFwcCk/docs/__PAGE__.segment.rsc +6 -5
  171. package/.next/server/app/docs.segments/_full.segment.rsc +20 -18
  172. package/.next/server/app/docs.segments/_tree.segment.rsc +3 -2
  173. package/.next/server/app/explorer.html +1 -1
  174. package/.next/server/app/explorer.rsc +20 -18
  175. package/.next/server/app/explorer.segments/!KGFwcCk/explorer/__PAGE__.segment.rsc +11 -9
  176. package/.next/server/app/explorer.segments/_full.segment.rsc +20 -18
  177. package/.next/server/app/explorer.segments/_tree.segment.rsc +3 -2
  178. package/.next/server/app/index.html +1 -1
  179. package/.next/server/app/index.rsc +3 -2
  180. package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -2
  181. package/.next/server/app/index.segments/_full.segment.rsc +3 -2
  182. package/.next/server/app/index.segments/_tree.segment.rsc +3 -2
  183. package/.next/server/app/manual-tests.html +1 -0
  184. package/.next/server/app/manual-tests.meta +31 -0
  185. package/.next/server/app/manual-tests.rsc +31 -0
  186. package/.next/server/app/manual-tests.segments/!KGFwcCk/manual-tests/__PAGE__.segment.rsc +33 -0
  187. package/.next/server/app/manual-tests.segments/_full.segment.rsc +31 -0
  188. package/.next/server/app/manual-tests.segments/_tree.segment.rsc +5 -0
  189. package/.next/server/app/memory.html +1 -1
  190. package/.next/server/app/memory.rsc +20 -18
  191. package/.next/server/app/memory.segments/!KGFwcCk/memory/__PAGE__.segment.rsc +11 -9
  192. package/.next/server/app/memory.segments/_full.segment.rsc +20 -18
  193. package/.next/server/app/memory.segments/_tree.segment.rsc +3 -2
  194. package/.next/server/app/page.js.nft.json +1 -1
  195. package/.next/server/app/page_client-reference-manifest.js +1 -1
  196. package/.next/server/app/roadmap.html +1 -1
  197. package/.next/server/app/roadmap.rsc +20 -18
  198. package/.next/server/app/roadmap.segments/!KGFwcCk/roadmap/__PAGE__.segment.rsc +6 -5
  199. package/.next/server/app/roadmap.segments/_full.segment.rsc +20 -18
  200. package/.next/server/app/roadmap.segments/_tree.segment.rsc +3 -2
  201. package/.next/server/app/settings.html +1 -1
  202. package/.next/server/app/settings.rsc +20 -18
  203. package/.next/server/app/settings.segments/!KGFwcCk/settings/__PAGE__.segment.rsc +7 -6
  204. package/.next/server/app/settings.segments/_full.segment.rsc +20 -18
  205. package/.next/server/app/settings.segments/_tree.segment.rsc +3 -2
  206. package/.next/server/app/setup.html +1 -1
  207. package/.next/server/app/setup.rsc +20 -18
  208. package/.next/server/app/setup.segments/!KGFwcCk/setup/__PAGE__.segment.rsc +11 -9
  209. package/.next/server/app/setup.segments/_full.segment.rsc +20 -18
  210. package/.next/server/app/setup.segments/_tree.segment.rsc +3 -2
  211. package/.next/server/app-paths-manifest.json +9 -0
  212. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0-5bkpj._.js → 11mp_@anthropic-ai_sdk_00p3fu1._.js} +1 -1
  213. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01l5h3i._.js → 11mp_@anthropic-ai_sdk_01amtux._.js} +1 -1
  214. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_00psb_y._.js → 11mp_@anthropic-ai_sdk_01jjl08._.js} +1 -1
  215. package/.next/server/chunks/{11mp_@anthropic-ai_sdk_072r2bd._.js → 11mp_@anthropic-ai_sdk_071zfm8._.js} +1 -1
  216. package/.next/server/chunks/11mp_@anthropic-ai_sdk_07v3boe._.js +3 -0
  217. package/.next/server/chunks/11mp_@anthropic-ai_sdk_09iva72._.js +3 -0
  218. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0bom1b1._.js +3 -0
  219. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0dvji7p._.js +3 -0
  220. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0dzo8jn._.js +3 -0
  221. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0hvqsqq._.js +3 -0
  222. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0i7i-jw._.js +3 -0
  223. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0k0iop5._.js +3 -0
  224. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0l3-6aq._.js +3 -0
  225. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0oegm3y._.js +3 -0
  226. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0p5cyes._.js +3 -0
  227. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0qw8i6_._.js +3 -0
  228. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0yk-a7v._.js +3 -0
  229. package/.next/server/chunks/11mp_@anthropic-ai_sdk_11fsqvb._.js +3 -0
  230. package/.next/server/chunks/11mp_@anthropic-ai_sdk_143_7ez._.js +3 -0
  231. package/.next/server/chunks/11mp_@anthropic-ai_sdk_14a4-64._.js +3 -0
  232. package/.next/server/chunks/11mp_@anthropic-ai_sdk_17d_oma._.js +3 -0
  233. package/.next/server/chunks/11mp_@anthropic-ai_sdk_18qwuyb._.js +3 -0
  234. package/.next/server/chunks/11mp_@anthropic-ai_sdk_19au8y6._.js +3 -0
  235. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ak_hy5._.js +3 -0
  236. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1cqa0nq._.js +3 -0
  237. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1i-x_q0._.js +3 -0
  238. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1jmtliz._.js +3 -0
  239. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1jmtliz._.js.map +1 -0
  240. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1jouwlj._.js +3 -0
  241. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1jouwlj._.js.map +1 -0
  242. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1r_q5um._.js +3 -0
  243. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1r_q5um._.js.map +1 -0
  244. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1t959xd._.js +3 -0
  245. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1t959xd._.js.map +1 -0
  246. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1vkprw9._.js +3 -0
  247. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1vkprw9._.js.map +1 -0
  248. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1y95ax9._.js +3 -0
  249. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1y95ax9._.js.map +1 -0
  250. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1y9misr._.js +3 -0
  251. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1y9misr._.js.map +1 -0
  252. package/.next/server/chunks/11mp_@anthropic-ai_sdk_21b8wwy._.js +3 -0
  253. package/.next/server/chunks/11mp_@anthropic-ai_sdk_21b8wwy._.js.map +1 -0
  254. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_08ecfgc._.js +3 -0
  255. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_09--sd6._.js +3 -0
  256. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0e3mwc6._.js +3 -0
  257. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0go4301._.js +3 -0
  258. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0iq9dmt._.js +3 -0
  259. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0n9ijke._.js +3 -0
  260. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0szcyrx._.js +3 -0
  261. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0xy2s3x._.js +3 -0
  262. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0yaujn7._.js +3 -0
  263. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0z9ly74._.js +3 -0
  264. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1hmq3al._.js +3 -0
  265. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1tqk4bp._.js +3 -0
  266. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1x-hr6f._.js +3 -0
  267. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1zsdhg0._.js +3 -0
  268. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_20t__fe._.js +3 -0
  269. package/.next/server/chunks/{[root-of-the-server]__1u_q61h._.js → [root-of-the-server]__0-pmfg2._.js} +2 -2
  270. package/.next/server/chunks/[root-of-the-server]__02co2yq._.js +3 -0
  271. package/.next/server/chunks/[root-of-the-server]__02co2yq._.js.map +1 -0
  272. package/.next/server/chunks/{[root-of-the-server]__1y3u5ud._.js → [root-of-the-server]__04tibmn._.js} +2 -2
  273. package/.next/server/chunks/{[root-of-the-server]__17xb02p._.js → [root-of-the-server]__05g5cgo._.js} +2 -2
  274. package/.next/server/chunks/{[root-of-the-server]__0aynzrb._.js → [root-of-the-server]__0b5pwze._.js} +2 -2
  275. package/.next/server/chunks/{[root-of-the-server]__142icjb._.js → [root-of-the-server]__0druay_._.js} +2 -2
  276. package/.next/server/chunks/{[root-of-the-server]__106gpvh._.js → [root-of-the-server]__0p6ja6l._.js} +2 -2
  277. package/.next/server/chunks/[root-of-the-server]__0q3-t8a._.js +3 -0
  278. package/.next/server/chunks/[root-of-the-server]__0q3-t8a._.js.map +1 -0
  279. package/.next/server/chunks/[root-of-the-server]__0vcsqzd._.js +3 -0
  280. package/.next/server/chunks/[root-of-the-server]__0vcsqzd._.js.map +1 -0
  281. package/.next/server/chunks/{[root-of-the-server]__0nfvvy9._.js → [root-of-the-server]__1-e3i_5._.js} +2 -2
  282. package/.next/server/chunks/[root-of-the-server]__1-ic3af._.js +3 -0
  283. package/.next/server/chunks/[root-of-the-server]__1-ic3af._.js.map +1 -0
  284. package/.next/server/chunks/[root-of-the-server]__11a4ptn._.js +3 -0
  285. package/.next/server/chunks/[root-of-the-server]__11a4ptn._.js.map +1 -0
  286. package/.next/server/chunks/{[root-of-the-server]__0e59y5j._.js → [root-of-the-server]__11c8641._.js} +2 -2
  287. package/.next/server/chunks/[root-of-the-server]__12nzy_6._.js +3 -0
  288. package/.next/server/chunks/[root-of-the-server]__12nzy_6._.js.map +1 -0
  289. package/.next/server/chunks/[root-of-the-server]__15ck1wv._.js +3 -0
  290. package/.next/server/chunks/[root-of-the-server]__15ck1wv._.js.map +1 -0
  291. package/.next/server/chunks/[root-of-the-server]__1613hjb._.js +30 -19
  292. package/.next/server/chunks/[root-of-the-server]__1613hjb._.js.map +1 -1
  293. package/.next/server/chunks/{[root-of-the-server]__06zf_sh._.js → [root-of-the-server]__197vw9g._.js} +2 -2
  294. package/.next/server/chunks/{[root-of-the-server]__1j0rrps._.js → [root-of-the-server]__19k8t87._.js} +2 -2
  295. package/.next/server/chunks/{[root-of-the-server]__0eqd-tw._.js → [root-of-the-server]__1ezzeji._.js} +2 -2
  296. package/.next/server/chunks/[root-of-the-server]__1mrmaf9._.js +3 -0
  297. package/.next/server/chunks/{[root-of-the-server]__17p0rkn._.js → [root-of-the-server]__1n68akx._.js} +2 -2
  298. package/.next/server/chunks/[root-of-the-server]__1n68akx._.js.map +1 -0
  299. package/.next/server/chunks/{[root-of-the-server]__11s76m8._.js → [root-of-the-server]__1npya5q._.js} +2 -2
  300. package/.next/server/chunks/[root-of-the-server]__1npya5q._.js.map +1 -0
  301. package/.next/server/chunks/[root-of-the-server]__1qusy4g._.js +3 -0
  302. package/.next/server/chunks/[root-of-the-server]__1qusy4g._.js.map +1 -0
  303. package/.next/server/chunks/{[root-of-the-server]__1q4ahvz._.js → [root-of-the-server]__1umrorf._.js} +2 -2
  304. package/.next/server/chunks/{[root-of-the-server]__093hlkh._.js → [root-of-the-server]__1vh9g2o._.js} +2 -2
  305. package/.next/server/chunks/{[root-of-the-server]__1y-tt29._.js → [root-of-the-server]__1vq38ov._.js} +2 -2
  306. package/.next/server/chunks/[root-of-the-server]__1xb0fmp._.js +1 -1
  307. package/.next/server/chunks/[root-of-the-server]__1xb0fmp._.js.map +1 -1
  308. package/.next/server/chunks/_04byth9._.js +24 -19
  309. package/.next/server/chunks/_04byth9._.js.map +1 -1
  310. package/.next/server/chunks/_1au4syj._.js +1 -1
  311. package/.next/server/chunks/_1au4syj._.js.map +1 -1
  312. package/.next/server/chunks/_1b5fqxy._.js.map +1 -1
  313. package/.next/server/chunks/_1ivswa9._.js +3 -0
  314. package/.next/server/chunks/_1ivswa9._.js.map +1 -0
  315. package/.next/server/chunks/_next-internal_server_app_api_roadmap_restore_route_actions_0skshp1.js +3 -0
  316. package/.next/server/chunks/_next-internal_server_app_api_roadmap_restore_route_actions_0skshp1.js.map +1 -0
  317. package/.next/server/chunks/_next-internal_server_app_api_tasks_bulk_route_actions_1k75mlb.js +3 -0
  318. package/.next/server/chunks/_next-internal_server_app_api_tasks_bulk_route_actions_1k75mlb.js.map +1 -0
  319. package/.next/server/chunks/_next-internal_server_app_api_tasks_delete_route_actions_1k1g6mw.js +3 -0
  320. package/.next/server/chunks/_next-internal_server_app_api_tasks_delete_route_actions_1k1g6mw.js.map +1 -0
  321. package/.next/server/chunks/_next-internal_server_app_api_tasks_manual-tests_route_actions_1rpog0y.js +3 -0
  322. package/.next/server/chunks/_next-internal_server_app_api_tasks_manual-tests_route_actions_1rpog0y.js.map +1 -0
  323. package/.next/server/chunks/_next-internal_server_app_api_tasks_restore_route_actions_1ecsti8.js +3 -0
  324. package/.next/server/chunks/_next-internal_server_app_api_tasks_restore_route_actions_1ecsti8.js.map +1 -0
  325. package/.next/server/chunks/_next-internal_server_app_api_tasks_review_route_actions_1dly07f.js +3 -0
  326. package/.next/server/chunks/_next-internal_server_app_api_tasks_review_route_actions_1dly07f.js.map +1 -0
  327. package/.next/server/chunks/_next-internal_server_app_api_tasks_update_route_actions_0z-ho6g.js +3 -0
  328. package/.next/server/chunks/_next-internal_server_app_api_tasks_update_route_actions_0z-ho6g.js.map +1 -0
  329. package/.next/server/chunks/_next-internal_server_app_api_views_route_actions_10-2c0e.js +3 -0
  330. package/.next/server/chunks/_next-internal_server_app_api_views_route_actions_10-2c0e.js.map +1 -0
  331. package/.next/server/chunks/ssr/0_g__next_dist_000c5_m._.js +3 -0
  332. package/.next/server/chunks/ssr/0_g__next_dist_000c5_m._.js.map +1 -0
  333. package/.next/server/chunks/ssr/{0_nd_mermaid_dist_mermaid_core_mjs_0vv_0i3._.js → 0_nd_mermaid_dist_mermaid_core_mjs_027n2yl._.js} +2 -2
  334. package/.next/server/chunks/ssr/0_nd_mermaid_dist_mermaid_core_mjs_027n2yl._.js.map +1 -0
  335. package/.next/server/chunks/ssr/{1u84_katex_dist_katex_mjs_1z0p1bs._.js → 1u84_katex_dist_katex_mjs_1kb5xea._.js} +1 -1
  336. package/.next/server/chunks/ssr/1u84_katex_dist_katex_mjs_1kb5xea._.js.map +1 -0
  337. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_05ggp3i._.js +1 -1
  338. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_05ggp3i._.js.map +1 -1
  339. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0wurouw._.js +3 -0
  340. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0wurouw._.js.map +1 -0
  341. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_14hl50o._.js +3 -0
  342. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_14hl50o._.js.map +1 -0
  343. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_folder-open_mjs_117ipzw._.js +3 -0
  344. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_folder-open_mjs_117ipzw._.js.map +1 -0
  345. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_triangle-alert_mjs_0ei-mpz._.js +3 -0
  346. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_triangle-alert_mjs_0ei-mpz._.js.map +1 -0
  347. package/.next/server/chunks/ssr/[root-of-the-server]__0hcextx._.js +3 -0
  348. package/.next/server/chunks/ssr/[root-of-the-server]__0hcextx._.js.map +1 -0
  349. package/.next/server/chunks/ssr/[root-of-the-server]__0xt_0w2._.js.map +1 -1
  350. package/.next/server/chunks/ssr/_04xff_2._.js +1 -1
  351. package/.next/server/chunks/ssr/_04xff_2._.js.map +1 -1
  352. package/.next/server/chunks/ssr/_071j6mr._.js +4 -0
  353. package/.next/server/chunks/ssr/_071j6mr._.js.map +1 -0
  354. package/.next/server/chunks/ssr/_09b02z-._.js +3 -0
  355. package/.next/server/chunks/ssr/_09b02z-._.js.map +1 -0
  356. package/.next/server/chunks/ssr/_0d0f1s1._.js +3 -0
  357. package/.next/server/chunks/ssr/_0d0f1s1._.js.map +1 -0
  358. package/.next/server/chunks/ssr/_0idb-vo._.js +151 -0
  359. package/.next/server/chunks/ssr/_0idb-vo._.js.map +1 -0
  360. package/.next/server/chunks/ssr/_0lnt_va._.js +4 -0
  361. package/.next/server/chunks/ssr/_0lnt_va._.js.map +1 -0
  362. package/.next/server/chunks/ssr/_0qlymco._.js +3 -0
  363. package/.next/server/chunks/ssr/_0qlymco._.js.map +1 -0
  364. package/.next/server/chunks/ssr/_0qp3gu7._.js +3 -0
  365. package/.next/server/chunks/ssr/_0qp3gu7._.js.map +1 -0
  366. package/.next/server/chunks/ssr/_0sg1oeq._.js +3 -0
  367. package/.next/server/chunks/ssr/_0sg1oeq._.js.map +1 -0
  368. package/.next/server/chunks/ssr/_14emfpq._.js +3 -0
  369. package/.next/server/chunks/ssr/_14emfpq._.js.map +1 -0
  370. package/.next/server/chunks/ssr/_1ftruw6._.js +4 -0
  371. package/.next/server/chunks/ssr/_1ftruw6._.js.map +1 -0
  372. package/.next/server/chunks/ssr/_1gxjjvh._.js +1 -1
  373. package/.next/server/chunks/ssr/_1gxjjvh._.js.map +1 -1
  374. package/.next/server/chunks/ssr/_1ncdakv._.js +4 -0
  375. package/.next/server/chunks/ssr/_1ncdakv._.js.map +1 -0
  376. package/.next/server/chunks/ssr/_1t76zdx._.js +3 -0
  377. package/.next/server/chunks/ssr/_1t76zdx._.js.map +1 -0
  378. package/.next/server/chunks/ssr/_1x7ggg5._.js +4 -0
  379. package/.next/server/chunks/ssr/_1x7ggg5._.js.map +1 -0
  380. package/.next/server/chunks/ssr/_next-internal_server_app_(app)_manual-tests_page_actions_1g5zjb7.js +3 -0
  381. package/.next/server/chunks/ssr/_next-internal_server_app_(app)_manual-tests_page_actions_1g5zjb7.js.map +1 -0
  382. package/.next/server/chunks/ssr/{node_modules__pnpm_04khl_s._.js → node_modules__pnpm_01bjcv9._.js} +1 -1
  383. package/.next/server/chunks/ssr/{node_modules__pnpm_08sqeu2._.js → node_modules__pnpm_03qrzdb._.js} +1 -1
  384. package/.next/server/chunks/ssr/{node_modules__pnpm_104pzhc._.js → node_modules__pnpm_06d-fdo._.js} +2 -2
  385. package/.next/server/chunks/ssr/{node_modules__pnpm_1xzf8g_._.js → node_modules__pnpm_0ctisl0._.js} +1 -1
  386. package/.next/server/chunks/ssr/{node_modules__pnpm_0og06fy._.js → node_modules__pnpm_0fwp8jm._.js} +1 -1
  387. package/.next/server/chunks/ssr/{node_modules__pnpm_0a9b2ei._.js → node_modules__pnpm_0kpu0-2._.js} +1 -1
  388. package/.next/server/chunks/ssr/{node_modules__pnpm_0jpv2b6._.js → node_modules__pnpm_0vry74x._.js} +2 -2
  389. package/.next/server/chunks/ssr/{node_modules__pnpm_0fd3pr1._.js → node_modules__pnpm_0ycbjbd._.js} +2 -2
  390. package/.next/server/chunks/ssr/{node_modules__pnpm_1l8k8w1._.js → node_modules__pnpm_1-76qxg._.js} +1 -1
  391. package/.next/server/chunks/ssr/{node_modules__pnpm_0ah02mu._.js → node_modules__pnpm_1-r94f7._.js} +1 -1
  392. package/.next/server/chunks/ssr/{node_modules__pnpm_1yq90z7._.js → node_modules__pnpm_14piqi4._.js} +1 -1
  393. package/.next/server/chunks/ssr/node_modules__pnpm_14piqi4._.js.map +1 -0
  394. package/.next/server/chunks/ssr/{node_modules__pnpm_0dwi7mu._.js → node_modules__pnpm_16u1vfb._.js} +2 -2
  395. package/.next/server/chunks/ssr/node_modules__pnpm_16u1vfb._.js.map +1 -0
  396. package/.next/server/chunks/ssr/{node_modules__pnpm_0f77_ng._.js → node_modules__pnpm_17i6z2d._.js} +1 -1
  397. package/.next/server/chunks/ssr/{node_modules__pnpm_09_i2jk._.js → node_modules__pnpm_189m48n._.js} +1 -1
  398. package/.next/server/chunks/ssr/node_modules__pnpm_189m48n._.js.map +1 -0
  399. package/.next/server/chunks/ssr/{node_modules__pnpm_0ttvopp._.js → node_modules__pnpm_192f222._.js} +1 -1
  400. package/.next/server/chunks/ssr/{node_modules__pnpm_07t_e8c._.js → node_modules__pnpm_1a48_nl._.js} +1 -1
  401. package/.next/server/chunks/ssr/{node_modules__pnpm_195j8p_._.js → node_modules__pnpm_1aa37e1._.js} +1 -1
  402. package/.next/server/chunks/ssr/{node_modules__pnpm_0cj8ryj._.js → node_modules__pnpm_1f440kx._.js} +1 -1
  403. package/.next/server/chunks/ssr/{node_modules__pnpm_0u3u82f._.js → node_modules__pnpm_1fn3ejy._.js} +1 -1
  404. package/.next/server/chunks/ssr/{node_modules__pnpm_0ts89ne._.js → node_modules__pnpm_1min2jl._.js} +1 -1
  405. package/.next/server/chunks/ssr/node_modules__pnpm_1q89l7p._.js +3 -0
  406. package/.next/server/chunks/ssr/node_modules__pnpm_1q89l7p._.js.map +1 -0
  407. package/.next/server/chunks/ssr/{node_modules__pnpm_1woddr6._.js → node_modules__pnpm_1q_hhr3._.js} +2 -2
  408. package/.next/server/chunks/ssr/{node_modules__pnpm_1x0t5_z._.js → node_modules__pnpm_1qmkxyo._.js} +1 -1
  409. package/.next/server/chunks/ssr/{node_modules__pnpm_0gifu-u._.js → node_modules__pnpm_1qp_jvj._.js} +2 -2
  410. package/.next/server/chunks/ssr/{node_modules__pnpm_0y35hs4._.js → node_modules__pnpm_1ssjj4u._.js} +1 -1
  411. package/.next/server/chunks/ssr/{node_modules__pnpm_0qc3gsk._.js → node_modules__pnpm_1txccoj._.js} +1 -1
  412. package/.next/server/chunks/ssr/{node_modules__pnpm_1w0f1m5._.js → node_modules__pnpm_1uwkcin._.js} +1 -1
  413. package/.next/server/chunks/ssr/node_modules__pnpm_1xeothw._.js +3 -0
  414. package/.next/server/chunks/ssr/node_modules__pnpm_1xeothw._.js.map +1 -0
  415. package/.next/server/chunks/ssr/{node_modules__pnpm_0286-tg._.js → node_modules__pnpm_1ygal0c._.js} +1 -1
  416. package/.next/server/chunks/ssr/src_app_(app)_activity_page_tsx_13jd6bn._.js +1 -1
  417. package/.next/server/chunks/ssr/src_app_(app)_activity_page_tsx_13jd6bn._.js.map +1 -1
  418. package/.next/server/chunks/ssr/src_app_(app)_board_page_tsx_0gpfc77._.js +3 -0
  419. package/.next/server/chunks/ssr/src_app_(app)_board_page_tsx_0gpfc77._.js.map +1 -0
  420. package/.next/server/chunks/ssr/src_app_(app)_chat_page_tsx_0c3e4l4._.js +1 -1
  421. package/.next/server/chunks/ssr/src_app_(app)_chat_page_tsx_0c3e4l4._.js.map +1 -1
  422. package/.next/server/chunks/ssr/src_app_(app)_layout_tsx_1yu5hom._.js +1 -1
  423. package/.next/server/chunks/ssr/src_app_(app)_layout_tsx_1yu5hom._.js.map +1 -1
  424. package/.next/server/chunks/ssr/src_app_(app)_manual-tests_page_tsx_01tnunf._.js +3 -0
  425. package/.next/server/chunks/ssr/src_app_(app)_manual-tests_page_tsx_01tnunf._.js.map +1 -0
  426. package/.next/server/chunks/ssr/src_app_(app)_roadmap_page_tsx_0vcq3jr._.js +2 -2
  427. package/.next/server/chunks/ssr/src_app_(app)_roadmap_page_tsx_0vcq3jr._.js.map +1 -1
  428. package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_0zevtee._.js +2 -2
  429. package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_0zevtee._.js.map +1 -1
  430. package/.next/server/chunks/ssr/src_app_(app)_setup_page_tsx_1yids_n._.js +1 -1
  431. package/.next/server/chunks/ssr/src_app_(app)_setup_page_tsx_1yids_n._.js.map +1 -1
  432. package/.next/server/chunks/ssr/src_components_chat_ChatView_tsx_0h5j-e2._.js +3 -0
  433. package/.next/server/chunks/ssr/src_components_chat_ChatView_tsx_0h5j-e2._.js.map +1 -0
  434. package/.next/server/chunks/ssr/src_context_ChatContext_tsx_0lowp8p._.js +2 -2
  435. package/.next/server/chunks/ssr/src_context_ChatContext_tsx_0lowp8p._.js.map +1 -1
  436. package/.next/server/middleware-build-manifest.js +3 -3
  437. package/.next/server/next-font-manifest.js +1 -1
  438. package/.next/server/next-font-manifest.json +4 -0
  439. package/.next/server/pages/404.html +1 -1
  440. package/.next/server/pages/500.html +1 -1
  441. package/.next/server/prefetch-hints.json +19 -0
  442. package/.next/server/server-reference-manifest.js +1 -1
  443. package/.next/server/server-reference-manifest.json +1 -1
  444. package/.next/static/chunks/02cj5_i9np4sg.js +3 -0
  445. package/.next/static/chunks/02i5hsdat1nuq.css +9 -0
  446. package/.next/static/chunks/0mgifb98wbesa.js +1 -0
  447. package/.next/static/chunks/0p1-hkgnm2ll2.js +1 -0
  448. package/.next/static/chunks/0pgu5q5vodev6.js +1 -0
  449. package/.next/static/chunks/0rqzvayflendx.js +2 -0
  450. package/.next/static/chunks/0vcfs7dii85tw.js +21 -0
  451. package/.next/static/chunks/13l4l-boqg8fx.js +1 -0
  452. package/.next/static/chunks/14hxe1qiaram9.js +1 -0
  453. package/.next/static/chunks/150y5rwg6gwvx.css +1 -0
  454. package/.next/static/chunks/16k196zyl-n9q.js +1 -0
  455. package/.next/static/chunks/18b5l8p0vd9f8.js +1 -0
  456. package/.next/static/chunks/1c_8t2kecjnua.js +1 -0
  457. package/.next/static/chunks/1fd43t9y42wd3.js +1 -0
  458. package/.next/static/chunks/1q50zh5z-fq2k.js +2 -0
  459. package/.next/static/chunks/1tu8lforstp1o.js +1 -0
  460. package/.next/static/chunks/23-xknrz6o748.js +1 -0
  461. package/.next/static/chunks/2_xpm7qhr69n8.js +2 -0
  462. package/.next/static/chunks/2ls_yp4-qgb42.js +1 -0
  463. package/.next/static/chunks/2zz0ip2l_29c3.js +3 -0
  464. package/.next/static/chunks/3ly7b47esdb7j.js +1 -0
  465. package/.next/static/chunks/3ruw8lu2_re-h.js +1 -0
  466. package/.next/static/chunks/3vf5nnd4xjo5_.js +1 -0
  467. package/.next/static/chunks/40jaenrnspnlh.js +68 -0
  468. package/.next/static/chunks/41oxcdcw-pcwt.js +1 -0
  469. package/README.md +2 -1
  470. package/package.json +1 -1
  471. package/skills/work-epic/SKILL.md +22 -3
  472. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0am8bw2._.js +0 -3
  473. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0enefn6._.js +0 -3
  474. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0k3n_5f._.js +0 -3
  475. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0lcfjm4._.js +0 -3
  476. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0lfx9av._.js +0 -3
  477. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0qau3qw._.js +0 -3
  478. package/.next/server/chunks/11mp_@anthropic-ai_sdk_0r1pmvm._.js +0 -3
  479. package/.next/server/chunks/11mp_@anthropic-ai_sdk_11t-z2t._.js +0 -3
  480. package/.next/server/chunks/11mp_@anthropic-ai_sdk_15hyn79._.js +0 -3
  481. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1_qk07x._.js +0 -3
  482. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1b2929e._.js +0 -3
  483. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1e72c89._.js +0 -3
  484. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1eq7asn._.js +0 -3
  485. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1fhdojs._.js +0 -3
  486. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1htgzmb._.js +0 -3
  487. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1lh_vwq._.js +0 -3
  488. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1ludf-o._.js +0 -3
  489. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1m3luz3._.js +0 -3
  490. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1x1iz3d._.js +0 -3
  491. package/.next/server/chunks/11mp_@anthropic-ai_sdk_1xsmwlh._.js +0 -3
  492. package/.next/server/chunks/11mp_@anthropic-ai_sdk_202spah._.js +0 -3
  493. package/.next/server/chunks/11mp_@anthropic-ai_sdk_215hw9u._.js +0 -3
  494. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0d2_lq6._.js +0 -3
  495. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_0n-i0pd._.js +0 -3
  496. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_13pos4j._.js +0 -3
  497. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_17b4pqr._.js +0 -3
  498. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1bkcmom._.js +0 -3
  499. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1hlj_3l._.js +0 -3
  500. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1ip-sor._.js +0 -3
  501. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1pex5o1._.js +0 -3
  502. package/.next/server/chunks/11mp_@anthropic-ai_sdk_index_mjs_1s8lc8_._.js +0 -3
  503. package/.next/server/chunks/[root-of-the-server]__1o4a-4j._.js +0 -3
  504. package/.next/server/chunks/[root-of-the-server]__1o4a-4j._.js.map +0 -1
  505. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0cvmffy._.js +0 -3
  506. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0cvmffy._.js.map +0 -1
  507. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0u3jxas._.js +0 -3
  508. package/.next/server/chunks/ssr/1x05_lucide-react_dist_esm_icons_0u3jxas._.js.map +0 -1
  509. package/.next/server/chunks/ssr/_059qmur._.js +0 -3
  510. package/.next/server/chunks/ssr/_059qmur._.js.map +0 -1
  511. package/.next/server/chunks/ssr/_081irea._.js +0 -3
  512. package/.next/server/chunks/ssr/_081irea._.js.map +0 -1
  513. package/.next/server/chunks/ssr/_0d8t8l4._.js +0 -3
  514. package/.next/server/chunks/ssr/_0d8t8l4._.js.map +0 -1
  515. package/.next/server/chunks/ssr/_0dyvcdg._.js +0 -3
  516. package/.next/server/chunks/ssr/_0dyvcdg._.js.map +0 -1
  517. package/.next/server/chunks/ssr/_1-ghqy4._.js +0 -3
  518. package/.next/server/chunks/ssr/_1-ghqy4._.js.map +0 -1
  519. package/.next/server/chunks/ssr/_17jy5db._.js +0 -3
  520. package/.next/server/chunks/ssr/_17jy5db._.js.map +0 -1
  521. package/.next/server/chunks/ssr/_1c95ems._.js +0 -151
  522. package/.next/server/chunks/ssr/_1c95ems._.js.map +0 -1
  523. package/.next/server/chunks/ssr/_1dllfz5._.js +0 -4
  524. package/.next/server/chunks/ssr/_1dllfz5._.js.map +0 -1
  525. package/.next/server/chunks/ssr/node_modules__pnpm_006_c8z._.js +0 -3
  526. package/.next/server/chunks/ssr/node_modules__pnpm_006_c8z._.js.map +0 -1
  527. package/.next/server/chunks/ssr/node_modules__pnpm_1imm4ut._.js +0 -3
  528. package/.next/server/chunks/ssr/node_modules__pnpm_1imm4ut._.js.map +0 -1
  529. package/.next/server/chunks/ssr/node_modules__pnpm_1kcnkjs._.js +0 -3
  530. package/.next/server/chunks/ssr/node_modules__pnpm_1kcnkjs._.js.map +0 -1
  531. package/.next/server/chunks/ssr/src_components_14pwej-._.js +0 -3
  532. package/.next/server/chunks/ssr/src_components_14pwej-._.js.map +0 -1
  533. package/.next/server/chunks/ssr/src_components_ui_scroll-area_tsx_0i-n_27._.js +0 -3
  534. package/.next/server/chunks/ssr/src_components_ui_scroll-area_tsx_0i-n_27._.js.map +0 -1
  535. package/.next/static/chunks/0-z7kyblalrea.js +0 -1
  536. package/.next/static/chunks/050mq8l4e1ubn.js +0 -1
  537. package/.next/static/chunks/098le48845_fg.js +0 -3
  538. package/.next/static/chunks/0cw4-ebkoufdc.js +0 -1
  539. package/.next/static/chunks/0feo-go1w5nct.js +0 -1
  540. package/.next/static/chunks/0k2qhx29amdgs.js +0 -1
  541. package/.next/static/chunks/14sefb904pl64.js +0 -21
  542. package/.next/static/chunks/1fer-wulyrjrs.js +0 -3
  543. package/.next/static/chunks/1o7b1x4umy8a6.js +0 -1
  544. package/.next/static/chunks/1q_io1j58aukw.js +0 -1
  545. package/.next/static/chunks/1r7z33e9jk3vp.js +0 -1
  546. package/.next/static/chunks/1t-cgh4477hfo.js +0 -1
  547. package/.next/static/chunks/1u-1po1qesc9f.js +0 -1
  548. package/.next/static/chunks/1u5kegkgm0xoz.js +0 -1
  549. package/.next/static/chunks/24ygzsgd-moqy.js +0 -1
  550. package/.next/static/chunks/26folxgplfa9t.js +0 -68
  551. package/.next/static/chunks/2ocixvjhv34_3.js +0 -1
  552. package/.next/static/chunks/3_lsdgxa-h7ma.css +0 -10
  553. package/.next/static/chunks/3rmv-sb9w9i3e.js +0 -1
  554. package/.next/static/chunks/3smp1lj103j-l.js +0 -1
  555. package/.next/static/chunks/3ttzomivj48jh.js +0 -2
  556. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0-5bkpj._.js.map → 11mp_@anthropic-ai_sdk_00p3fu1._.js.map} +0 -0
  557. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_00psb_y._.js.map → 11mp_@anthropic-ai_sdk_01amtux._.js.map} +0 -0
  558. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_01l5h3i._.js.map → 11mp_@anthropic-ai_sdk_01jjl08._.js.map} +0 -0
  559. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_072r2bd._.js.map → 11mp_@anthropic-ai_sdk_071zfm8._.js.map} +0 -0
  560. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0am8bw2._.js.map → 11mp_@anthropic-ai_sdk_07v3boe._.js.map} +0 -0
  561. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0enefn6._.js.map → 11mp_@anthropic-ai_sdk_09iva72._.js.map} +0 -0
  562. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0k3n_5f._.js.map → 11mp_@anthropic-ai_sdk_0bom1b1._.js.map} +0 -0
  563. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0lcfjm4._.js.map → 11mp_@anthropic-ai_sdk_0dvji7p._.js.map} +0 -0
  564. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0lfx9av._.js.map → 11mp_@anthropic-ai_sdk_0dzo8jn._.js.map} +0 -0
  565. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0qau3qw._.js.map → 11mp_@anthropic-ai_sdk_0hvqsqq._.js.map} +0 -0
  566. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_0r1pmvm._.js.map → 11mp_@anthropic-ai_sdk_0i7i-jw._.js.map} +0 -0
  567. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_11t-z2t._.js.map → 11mp_@anthropic-ai_sdk_0k0iop5._.js.map} +0 -0
  568. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_15hyn79._.js.map → 11mp_@anthropic-ai_sdk_0l3-6aq._.js.map} +0 -0
  569. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1_qk07x._.js.map → 11mp_@anthropic-ai_sdk_0oegm3y._.js.map} +0 -0
  570. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1b2929e._.js.map → 11mp_@anthropic-ai_sdk_0p5cyes._.js.map} +0 -0
  571. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1e72c89._.js.map → 11mp_@anthropic-ai_sdk_0qw8i6_._.js.map} +0 -0
  572. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1eq7asn._.js.map → 11mp_@anthropic-ai_sdk_0yk-a7v._.js.map} +0 -0
  573. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1fhdojs._.js.map → 11mp_@anthropic-ai_sdk_11fsqvb._.js.map} +0 -0
  574. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1htgzmb._.js.map → 11mp_@anthropic-ai_sdk_143_7ez._.js.map} +0 -0
  575. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1lh_vwq._.js.map → 11mp_@anthropic-ai_sdk_14a4-64._.js.map} +0 -0
  576. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1ludf-o._.js.map → 11mp_@anthropic-ai_sdk_17d_oma._.js.map} +0 -0
  577. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1m3luz3._.js.map → 11mp_@anthropic-ai_sdk_18qwuyb._.js.map} +0 -0
  578. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1x1iz3d._.js.map → 11mp_@anthropic-ai_sdk_19au8y6._.js.map} +0 -0
  579. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_1xsmwlh._.js.map → 11mp_@anthropic-ai_sdk_1ak_hy5._.js.map} +0 -0
  580. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_202spah._.js.map → 11mp_@anthropic-ai_sdk_1cqa0nq._.js.map} +0 -0
  581. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_215hw9u._.js.map → 11mp_@anthropic-ai_sdk_1i-x_q0._.js.map} +0 -0
  582. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0d2_lq6._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_08ecfgc._.js.map} +0 -0
  583. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_0n-i0pd._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_09--sd6._.js.map} +0 -0
  584. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_13pos4j._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0e3mwc6._.js.map} +0 -0
  585. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_17b4pqr._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0go4301._.js.map} +0 -0
  586. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1bkcmom._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0iq9dmt._.js.map} +0 -0
  587. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1hlj_3l._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0n9ijke._.js.map} +0 -0
  588. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1ip-sor._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0szcyrx._.js.map} +0 -0
  589. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1pex5o1._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0xy2s3x._.js.map} +0 -0
  590. /package/.next/server/chunks/{11mp_@anthropic-ai_sdk_index_mjs_1s8lc8_._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0yaujn7._.js.map} +0 -0
  591. /package/.next/server/chunks/{[root-of-the-server]__0e59y5j._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_0z9ly74._.js.map} +0 -0
  592. /package/.next/server/chunks/{[root-of-the-server]__11s76m8._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1hmq3al._.js.map} +0 -0
  593. /package/.next/server/chunks/{ssr/0_nd_mermaid_dist_mermaid_core_mjs_0vv_0i3._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1tqk4bp._.js.map} +0 -0
  594. /package/.next/server/chunks/{ssr/1u84_katex_dist_katex_mjs_1z0p1bs._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1x-hr6f._.js.map} +0 -0
  595. /package/.next/server/chunks/{ssr/node_modules__pnpm_09_i2jk._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_1zsdhg0._.js.map} +0 -0
  596. /package/.next/server/chunks/{ssr/node_modules__pnpm_0dwi7mu._.js.map → 11mp_@anthropic-ai_sdk_index_mjs_20t__fe._.js.map} +0 -0
  597. /package/.next/server/chunks/{[root-of-the-server]__1u_q61h._.js.map → [root-of-the-server]__0-pmfg2._.js.map} +0 -0
  598. /package/.next/server/chunks/{[root-of-the-server]__1y3u5ud._.js.map → [root-of-the-server]__04tibmn._.js.map} +0 -0
  599. /package/.next/server/chunks/{[root-of-the-server]__17xb02p._.js.map → [root-of-the-server]__05g5cgo._.js.map} +0 -0
  600. /package/.next/server/chunks/{[root-of-the-server]__0aynzrb._.js.map → [root-of-the-server]__0b5pwze._.js.map} +0 -0
  601. /package/.next/server/chunks/{[root-of-the-server]__142icjb._.js.map → [root-of-the-server]__0druay_._.js.map} +0 -0
  602. /package/.next/server/chunks/{[root-of-the-server]__106gpvh._.js.map → [root-of-the-server]__0p6ja6l._.js.map} +0 -0
  603. /package/.next/server/chunks/{[root-of-the-server]__0nfvvy9._.js.map → [root-of-the-server]__1-e3i_5._.js.map} +0 -0
  604. /package/.next/server/chunks/{ssr/node_modules__pnpm_1yq90z7._.js.map → [root-of-the-server]__11c8641._.js.map} +0 -0
  605. /package/.next/server/chunks/{[root-of-the-server]__06zf_sh._.js.map → [root-of-the-server]__197vw9g._.js.map} +0 -0
  606. /package/.next/server/chunks/{[root-of-the-server]__1j0rrps._.js.map → [root-of-the-server]__19k8t87._.js.map} +0 -0
  607. /package/.next/server/chunks/{[root-of-the-server]__0eqd-tw._.js.map → [root-of-the-server]__1ezzeji._.js.map} +0 -0
  608. /package/.next/server/chunks/{[root-of-the-server]__17p0rkn._.js.map → [root-of-the-server]__1mrmaf9._.js.map} +0 -0
  609. /package/.next/server/chunks/{[root-of-the-server]__1q4ahvz._.js.map → [root-of-the-server]__1umrorf._.js.map} +0 -0
  610. /package/.next/server/chunks/{[root-of-the-server]__093hlkh._.js.map → [root-of-the-server]__1vh9g2o._.js.map} +0 -0
  611. /package/.next/server/chunks/{[root-of-the-server]__1y-tt29._.js.map → [root-of-the-server]__1vq38ov._.js.map} +0 -0
  612. /package/.next/server/chunks/ssr/{node_modules__pnpm_04khl_s._.js.map → node_modules__pnpm_01bjcv9._.js.map} +0 -0
  613. /package/.next/server/chunks/ssr/{node_modules__pnpm_08sqeu2._.js.map → node_modules__pnpm_03qrzdb._.js.map} +0 -0
  614. /package/.next/server/chunks/ssr/{node_modules__pnpm_104pzhc._.js.map → node_modules__pnpm_06d-fdo._.js.map} +0 -0
  615. /package/.next/server/chunks/ssr/{node_modules__pnpm_1xzf8g_._.js.map → node_modules__pnpm_0ctisl0._.js.map} +0 -0
  616. /package/.next/server/chunks/ssr/{node_modules__pnpm_0og06fy._.js.map → node_modules__pnpm_0fwp8jm._.js.map} +0 -0
  617. /package/.next/server/chunks/ssr/{node_modules__pnpm_0a9b2ei._.js.map → node_modules__pnpm_0kpu0-2._.js.map} +0 -0
  618. /package/.next/server/chunks/ssr/{node_modules__pnpm_0jpv2b6._.js.map → node_modules__pnpm_0vry74x._.js.map} +0 -0
  619. /package/.next/server/chunks/ssr/{node_modules__pnpm_0fd3pr1._.js.map → node_modules__pnpm_0ycbjbd._.js.map} +0 -0
  620. /package/.next/server/chunks/ssr/{node_modules__pnpm_1l8k8w1._.js.map → node_modules__pnpm_1-76qxg._.js.map} +0 -0
  621. /package/.next/server/chunks/ssr/{node_modules__pnpm_0ah02mu._.js.map → node_modules__pnpm_1-r94f7._.js.map} +0 -0
  622. /package/.next/server/chunks/ssr/{node_modules__pnpm_0f77_ng._.js.map → node_modules__pnpm_17i6z2d._.js.map} +0 -0
  623. /package/.next/server/chunks/ssr/{node_modules__pnpm_0ttvopp._.js.map → node_modules__pnpm_192f222._.js.map} +0 -0
  624. /package/.next/server/chunks/ssr/{node_modules__pnpm_07t_e8c._.js.map → node_modules__pnpm_1a48_nl._.js.map} +0 -0
  625. /package/.next/server/chunks/ssr/{node_modules__pnpm_195j8p_._.js.map → node_modules__pnpm_1aa37e1._.js.map} +0 -0
  626. /package/.next/server/chunks/ssr/{node_modules__pnpm_0cj8ryj._.js.map → node_modules__pnpm_1f440kx._.js.map} +0 -0
  627. /package/.next/server/chunks/ssr/{node_modules__pnpm_0u3u82f._.js.map → node_modules__pnpm_1fn3ejy._.js.map} +0 -0
  628. /package/.next/server/chunks/ssr/{node_modules__pnpm_0ts89ne._.js.map → node_modules__pnpm_1min2jl._.js.map} +0 -0
  629. /package/.next/server/chunks/ssr/{node_modules__pnpm_1woddr6._.js.map → node_modules__pnpm_1q_hhr3._.js.map} +0 -0
  630. /package/.next/server/chunks/ssr/{node_modules__pnpm_1x0t5_z._.js.map → node_modules__pnpm_1qmkxyo._.js.map} +0 -0
  631. /package/.next/server/chunks/ssr/{node_modules__pnpm_0gifu-u._.js.map → node_modules__pnpm_1qp_jvj._.js.map} +0 -0
  632. /package/.next/server/chunks/ssr/{node_modules__pnpm_0y35hs4._.js.map → node_modules__pnpm_1ssjj4u._.js.map} +0 -0
  633. /package/.next/server/chunks/ssr/{node_modules__pnpm_0qc3gsk._.js.map → node_modules__pnpm_1txccoj._.js.map} +0 -0
  634. /package/.next/server/chunks/ssr/{node_modules__pnpm_1w0f1m5._.js.map → node_modules__pnpm_1uwkcin._.js.map} +0 -0
  635. /package/.next/server/chunks/ssr/{node_modules__pnpm_0286-tg._.js.map → node_modules__pnpm_1ygal0c._.js.map} +0 -0
  636. /package/.next/static/{uJ5RYxgFnE5svAvnuLDXN → fGPda81_8-K4GmaNUE6KA}/_buildManifest.js +0 -0
  637. /package/.next/static/{uJ5RYxgFnE5svAvnuLDXN → fGPda81_8-K4GmaNUE6KA}/_clientMiddlewareManifest.js +0 -0
  638. /package/.next/static/{uJ5RYxgFnE5svAvnuLDXN → fGPda81_8-K4GmaNUE6KA}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../node_modules/.pnpm/%40codemirror%2Btheme-one-dark%406.1.3/node_modules/%40codemirror/theme-one-dark/dist/index.js","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/ellipsis.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/folder-input.ts","../../../../node_modules/.pnpm/%40radix-ui%2Breact-collapsible%401.1.20_%40types%2Breact-dom%4019.3.0_%40types%2Breact%4019.3.0__%40types%2B_60ca746e04576a4072dde264acab9013/node_modules/%40radix-ui/react-collapsible/dist/index.mjs","../../../../src/components/ui/badge.tsx","../../../../src/components/ui/collapsible.tsx","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/folder.ts","../../../../node_modules/.pnpm/%40radix-ui%2Breact-collapsible%401.1.20_%40types%2Breact-dom%4019.3.0_%40types%2Breact%4019.3.0__%40types%2B_60ca746e04576a4072dde264acab9013/node_modules/%40radix-ui/react-collapsible/src/collapsible.tsx","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/message-square.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/pencil.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/refresh-cw.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/user.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/list.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/users.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/code-xml.ts","../../../../src/components/activity/ActivityEventRow.tsx","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/scale.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/file-pen.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/file-search.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/file-x.ts","../../../../node_modules/.pnpm/lucide-react%401.48.0_react%4019.3.0/node_modules/lucide-react/src/icons/list-checks.ts","../../../../src/components/shared/ItemPanelHeader.tsx"],"sourcesContent":["import { EditorView } from '@codemirror/view';\nimport { HighlightStyle, syntaxHighlighting } from '@codemirror/language';\nimport { tags } from '@lezer/highlight';\n\n// Using https://github.com/one-dark/vscode-one-dark-theme/ as reference for the colors\nconst chalky = \"#e5c07b\", coral = \"#e06c75\", cyan = \"#56b6c2\", invalid = \"#ffffff\", ivory = \"#abb2bf\", stone = \"#7d8799\", // Brightened compared to original to increase contrast\nmalibu = \"#61afef\", sage = \"#98c379\", whiskey = \"#d19a66\", violet = \"#c678dd\", darkBackground = \"#21252b\", highlightBackground = \"#2c313a\", background = \"#282c34\", tooltipBackground = \"#353a42\", selection = \"#3E4451\", cursor = \"#528bff\";\n/**\nThe colors used in the theme, as CSS color strings.\n*/\nconst color = {\n chalky,\n coral,\n cyan,\n invalid,\n ivory,\n stone,\n malibu,\n sage,\n whiskey,\n violet,\n darkBackground,\n highlightBackground,\n background,\n tooltipBackground,\n selection,\n cursor\n};\n/**\nThe editor theme styles for One Dark.\n*/\nconst oneDarkTheme = /*@__PURE__*/EditorView.theme({\n \"&\": {\n color: ivory,\n backgroundColor: background\n },\n \".cm-content\": {\n caretColor: cursor\n },\n \".cm-cursor, .cm-dropCursor\": { borderLeftColor: cursor },\n \"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection\": { backgroundColor: selection },\n \".cm-panels\": { backgroundColor: darkBackground, color: ivory },\n \".cm-panels.cm-panels-top\": { borderBottom: \"2px solid black\" },\n \".cm-panels.cm-panels-bottom\": { borderTop: \"2px solid black\" },\n \".cm-searchMatch\": {\n backgroundColor: \"#72a1ff59\",\n outline: \"1px solid #457dff\"\n },\n \".cm-searchMatch.cm-searchMatch-selected\": {\n backgroundColor: \"#6199ff2f\"\n },\n \".cm-activeLine\": { backgroundColor: \"#6699ff0b\" },\n \".cm-selectionMatch\": { backgroundColor: \"#aafe661a\" },\n \"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket\": {\n backgroundColor: \"#bad0f847\"\n },\n \".cm-gutters\": {\n backgroundColor: background,\n color: stone,\n border: \"none\"\n },\n \".cm-activeLineGutter\": {\n backgroundColor: highlightBackground\n },\n \".cm-foldPlaceholder\": {\n backgroundColor: \"transparent\",\n border: \"none\",\n color: \"#ddd\"\n },\n \".cm-tooltip\": {\n border: \"none\",\n backgroundColor: tooltipBackground\n },\n \".cm-tooltip .cm-tooltip-arrow:before\": {\n borderTopColor: \"transparent\",\n borderBottomColor: \"transparent\"\n },\n \".cm-tooltip .cm-tooltip-arrow:after\": {\n borderTopColor: tooltipBackground,\n borderBottomColor: tooltipBackground\n },\n \".cm-tooltip-autocomplete\": {\n \"& > ul > li[aria-selected]\": {\n backgroundColor: highlightBackground,\n color: ivory\n }\n }\n}, { dark: true });\n/**\nThe highlighting style for code in the One Dark theme.\n*/\nconst oneDarkHighlightStyle = /*@__PURE__*/HighlightStyle.define([\n { tag: tags.keyword,\n color: violet },\n { tag: [tags.name, tags.deleted, tags.character, tags.propertyName, tags.macroName],\n color: coral },\n { tag: [/*@__PURE__*/tags.function(tags.variableName), tags.labelName],\n color: malibu },\n { tag: [tags.color, /*@__PURE__*/tags.constant(tags.name), /*@__PURE__*/tags.standard(tags.name)],\n color: whiskey },\n { tag: [/*@__PURE__*/tags.definition(tags.name), tags.separator],\n color: ivory },\n { tag: [tags.typeName, tags.className, tags.number, tags.changed, tags.annotation, tags.modifier, tags.self, tags.namespace],\n color: chalky },\n { tag: [tags.operator, tags.operatorKeyword, tags.url, tags.escape, tags.regexp, tags.link, /*@__PURE__*/tags.special(tags.string)],\n color: cyan },\n { tag: [tags.meta, tags.comment],\n color: stone },\n { tag: tags.strong,\n fontWeight: \"bold\" },\n { tag: tags.emphasis,\n fontStyle: \"italic\" },\n { tag: tags.strikethrough,\n textDecoration: \"line-through\" },\n { tag: tags.link,\n color: stone,\n textDecoration: \"underline\" },\n { tag: tags.heading,\n fontWeight: \"bold\",\n color: coral },\n { tag: [tags.atom, tags.bool, /*@__PURE__*/tags.special(tags.variableName)],\n color: whiskey },\n { tag: [tags.processingInstruction, tags.string, tags.inserted],\n color: sage },\n { tag: tags.invalid,\n color: invalid },\n]);\n/**\nExtension to enable the One Dark theme (both the editor theme and\nthe highlight style).\n*/\nconst oneDark = [oneDarkTheme, /*@__PURE__*/syntaxHighlighting(oneDarkHighlightStyle)];\n\nexport { color, oneDark, oneDarkHighlightStyle, oneDarkTheme };\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'ellipsis',\n size: 24,\n node: [\n ['circle', { cx: '12', cy: '12', r: '1', key: '41hilf' }],\n ['circle', { cx: '19', cy: '12', r: '1', key: '1wjl8i' }],\n ['circle', { cx: '5', cy: '12', r: '1', key: '1pcz8c' }],\n ],\n aliases: ['more-horizontal'],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Ellipsis\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxIiAvPgogIDxjaXJjbGUgY3g9IjE5IiBjeT0iMTIiIHI9IjEiIC8+CiAgPGNpcmNsZSBjeD0iNSIgY3k9IjEyIiByPSIxIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/ellipsis\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Ellipsis = createLucideIcon(__iconData);\n\nexport default Ellipsis;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'folder-input',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M2 9V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-1',\n key: 'fm4g5t',\n },\n ],\n ['path', { d: 'M2 13h10', key: 'pgb2dq' }],\n ['path', { d: 'm9 16 3-3-3-3', key: '6m91ic' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name FolderInput\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMiA5VjVhMiAyIDAgMCAxIDItMmgzLjlhMiAyIDAgMCAxIDEuNjkuOWwuODEgMS4yYTIgMiAwIDAgMCAxLjY3LjlIMjBhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMnYtMSIgLz4KICA8cGF0aCBkPSJNMiAxM2gxMCIgLz4KICA8cGF0aCBkPSJtOSAxNiAzLTMtMy0zIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/folder-input\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst FolderInput = createLucideIcon(__iconData);\n\nexport default FolderInput;\n","\"use client\";\nvar __defProp = Object.defineProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\n\n// src/collapsible.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar COLLAPSIBLE_NAME = \"Collapsible\";\nvar [createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME);\nvar [CollapsibleProvider, useCollapsibleContext] = createCollapsibleContext(COLLAPSIBLE_NAME);\nvar Collapsible = /* @__PURE__ */ React.forwardRef(\n /* @__PURE__ */ __name(function Collapsible2(props, forwardedRef) {\n const {\n __scopeCollapsible,\n open: openProp,\n defaultOpen,\n disabled,\n onOpenChange,\n ...collapsibleProps\n } = props;\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: COLLAPSIBLE_NAME\n });\n return /* @__PURE__ */ jsx(\n CollapsibleProvider,\n {\n scope: __scopeCollapsible,\n disabled,\n contentId: useId(),\n open,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(open),\n \"data-disabled\": disabled ? \"\" : void 0,\n ...collapsibleProps,\n ref: forwardedRef\n }\n )\n }\n );\n }, \"Collapsible\")\n);\nvar TRIGGER_NAME = \"CollapsibleTrigger\";\nvar CollapsibleTrigger = /* @__PURE__ */ React.forwardRef(\n // blank line to reduce diff noise\n /* @__PURE__ */ __name(function CollapsibleTrigger2(props, forwardedRef) {\n const { __scopeCollapsible, ...triggerProps } = props;\n const context = useCollapsibleContext(TRIGGER_NAME, __scopeCollapsible);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-controls\": context.open ? context.contentId : void 0,\n \"aria-expanded\": context.open || false,\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n disabled: context.disabled,\n ...triggerProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }, \"CollapsibleTrigger\")\n);\nvar CONTENT_NAME = \"CollapsibleContent\";\nvar CollapsibleContent = /* @__PURE__ */ React.forwardRef(\n // blank line to reduce diff noise\n /* @__PURE__ */ __name(function CollapsibleContent2(props, forwardedRef) {\n const { forceMount, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, props.__scopeCollapsible);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: ({ present }) => /* @__PURE__ */ jsx(CollapsibleContentImpl, { ...contentProps, ref: forwardedRef, present }) });\n }, \"CollapsibleContent\")\n);\nvar CollapsibleContentImpl = /* @__PURE__ */ React.forwardRef(/* @__PURE__ */ __name(function CollapsibleContentImpl2(props, forwardedRef) {\n const { __scopeCollapsible, present, children, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, __scopeCollapsible);\n const [isPresent, setIsPresent] = React.useState(present);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const heightRef = React.useRef(0);\n const height = heightRef.current;\n const widthRef = React.useRef(0);\n const width = widthRef.current;\n const isOpen = context.open || isPresent;\n const isMountAnimationPreventedRef = React.useRef(isOpen);\n const originalStylesRef = React.useRef(void 0);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n useLayoutEffect(() => {\n const node = ref.current;\n if (node) {\n originalStylesRef.current = originalStylesRef.current || {\n transitionDuration: node.style.transitionDuration,\n animationName: node.style.animationName\n };\n node.style.transitionDuration = \"0s\";\n node.style.animationName = \"none\";\n const rect = node.getBoundingClientRect();\n heightRef.current = rect.height;\n widthRef.current = rect.width;\n if (!isMountAnimationPreventedRef.current) {\n node.style.transitionDuration = originalStylesRef.current.transitionDuration;\n node.style.animationName = originalStylesRef.current.animationName;\n }\n setIsPresent(present);\n }\n }, [context.open, present]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n id: context.contentId,\n hidden: !isOpen,\n ...contentProps,\n ref: composedRefs,\n style: {\n [`--radix-collapsible-content-height`]: height ? `${height}px` : void 0,\n [`--radix-collapsible-content-width`]: width ? `${width}px` : void 0,\n ...props.style\n },\n children: isOpen && children\n }\n );\n}, \"CollapsibleContentImpl\"));\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\n__name(getState, \"getState\");\nvar Root = Collapsible;\nvar Trigger = CollapsibleTrigger;\nvar Content = CollapsibleContent;\nexport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n Content,\n Root,\n Trigger,\n createCollapsibleScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\"\r\nimport { cva, type VariantProps } from \"class-variance-authority\"\r\n\r\nimport { cn } from \"@/lib/utils\"\r\n\r\nconst badgeVariants = cva(\r\n \"inline-flex items-center rounded-full border border-border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-accent focus:ring-offset-2\",\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n \"border-transparent bg-accent text-accent-fg hover:bg-accent/80\",\r\n secondary:\r\n \"border-transparent bg-surface2 text-txt hover:bg-surface2/80\",\r\n destructive:\r\n \"border-transparent bg-danger text-destructive-foreground hover:bg-danger/80\",\r\n outline: \"text-txt\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n }\r\n)\r\n\r\nexport interface BadgeProps\r\n extends React.HTMLAttributes<HTMLDivElement>,\r\n VariantProps<typeof badgeVariants> {}\r\n\r\nfunction Badge({ className, variant, ...props }: BadgeProps) {\r\n return (\r\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\r\n )\r\n}\r\n\r\nexport { Badge, badgeVariants }\r\n","import * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\"\r\n\r\nconst Collapsible = CollapsiblePrimitive.Root\r\n\r\nconst CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger\r\n\r\nconst CollapsibleContent = CollapsiblePrimitive.CollapsibleContent\r\n\r\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent }\r\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'folder',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z',\n key: '1kt360',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Folder\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjAgMjBhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOWEyIDIgMCAwIDEtMS42OS0uOUw5LjYgMy45QTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJaIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/folder\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Folder = createLucideIcon(__iconData);\n\nexport default Folder;\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useLayoutEffect } from '@radix-ui/react-use-layout-effect';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { Presence } from '@radix-ui/react-presence';\nimport { useId } from '@radix-ui/react-id';\n\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Collapsible\n * -----------------------------------------------------------------------------------------------*/\n\nconst COLLAPSIBLE_NAME = 'Collapsible';\n\ntype ScopedProps<P> = P & { __scopeCollapsible?: Scope };\nconst [createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME);\n\ntype CollapsibleContextValue = {\n contentId: string;\n disabled?: boolean;\n open: boolean;\n onOpenToggle(): void;\n};\n\nconst [CollapsibleProvider, useCollapsibleContext] =\n createCollapsibleContext<CollapsibleContextValue>(COLLAPSIBLE_NAME);\n\ntype CollapsibleElement = React.ComponentRef<typeof Primitive.div>;\ntype PrimitiveDivProps = React.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface CollapsibleProps extends PrimitiveDivProps {\n defaultOpen?: boolean;\n open?: boolean;\n disabled?: boolean;\n onOpenChange?(open: boolean): void;\n}\n\nconst Collapsible = /* @__PURE__ */ React.forwardRef<CollapsibleElement, CollapsibleProps>(\n function Collapsible(props: ScopedProps<CollapsibleProps>, forwardedRef) {\n const {\n __scopeCollapsible,\n open: openProp,\n defaultOpen,\n disabled,\n onOpenChange,\n ...collapsibleProps\n } = props;\n\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: COLLAPSIBLE_NAME,\n });\n\n return (\n <CollapsibleProvider\n scope={__scopeCollapsible}\n disabled={disabled}\n contentId={useId()}\n open={open}\n onOpenToggle={React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen])}\n >\n <Primitive.div\n data-state={getState(open)}\n data-disabled={disabled ? '' : undefined}\n {...collapsibleProps}\n ref={forwardedRef}\n />\n </CollapsibleProvider>\n );\n },\n);\n\n/* -------------------------------------------------------------------------------------------------\n * CollapsibleTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'CollapsibleTrigger';\n\ntype CollapsibleTriggerElement = React.ComponentRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = React.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface CollapsibleTriggerProps extends PrimitiveButtonProps {}\n\nconst CollapsibleTrigger = /* @__PURE__ */ React.forwardRef<\n CollapsibleTriggerElement,\n CollapsibleTriggerProps\n>(\n // blank line to reduce diff noise\n function CollapsibleTrigger(props: ScopedProps<CollapsibleTriggerProps>, forwardedRef) {\n const { __scopeCollapsible, ...triggerProps } = props;\n const context = useCollapsibleContext(TRIGGER_NAME, __scopeCollapsible);\n return (\n <Primitive.button\n type=\"button\"\n aria-controls={context.open ? context.contentId : undefined}\n aria-expanded={context.open || false}\n data-state={getState(context.open)}\n data-disabled={context.disabled ? '' : undefined}\n disabled={context.disabled}\n {...triggerProps}\n ref={forwardedRef}\n onClick={composeEventHandlers(props.onClick, context.onOpenToggle)}\n />\n );\n },\n);\n\n/* -------------------------------------------------------------------------------------------------\n * CollapsibleContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'CollapsibleContent';\n\ntype CollapsibleContentElement = CollapsibleContentImplElement;\ninterface CollapsibleContentProps extends Omit<CollapsibleContentImplProps, 'present'> {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst CollapsibleContent = /* @__PURE__ */ React.forwardRef<\n CollapsibleContentElement,\n CollapsibleContentProps\n>(\n // blank line to reduce diff noise\n function CollapsibleContent(props: ScopedProps<CollapsibleContentProps>, forwardedRef) {\n const { forceMount, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, props.__scopeCollapsible);\n return (\n <Presence present={forceMount || context.open}>\n {({ present }) => (\n <CollapsibleContentImpl {...contentProps} ref={forwardedRef} present={present} />\n )}\n </Presence>\n );\n },\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype CollapsibleContentImplElement = React.ComponentRef<typeof Primitive.div>;\ninterface CollapsibleContentImplProps extends PrimitiveDivProps {\n present: boolean;\n}\n\nconst CollapsibleContentImpl = /* @__PURE__ */ React.forwardRef<\n CollapsibleContentImplElement,\n CollapsibleContentImplProps\n>(function CollapsibleContentImpl(props: ScopedProps<CollapsibleContentImplProps>, forwardedRef) {\n const { __scopeCollapsible, present, children, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, __scopeCollapsible);\n const [isPresent, setIsPresent] = React.useState(present);\n const ref = React.useRef<CollapsibleContentImplElement>(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const heightRef = React.useRef<number | undefined>(0);\n const height = heightRef.current;\n const widthRef = React.useRef<number | undefined>(0);\n const width = widthRef.current;\n // when opening we want it to immediately open to retrieve dimensions\n // when closing we delay `present` to retrieve dimensions before closing\n const isOpen = context.open || isPresent;\n const isMountAnimationPreventedRef = React.useRef(isOpen);\n const originalStylesRef = React.useRef<Record<string, string>>(undefined);\n\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => (isMountAnimationPreventedRef.current = false));\n return () => cancelAnimationFrame(rAF);\n }, []);\n\n useLayoutEffect(() => {\n const node = ref.current;\n if (node) {\n originalStylesRef.current = originalStylesRef.current || {\n transitionDuration: node.style.transitionDuration,\n animationName: node.style.animationName,\n };\n // block any animations/transitions so the element renders at its full dimensions\n node.style.transitionDuration = '0s';\n node.style.animationName = 'none';\n\n // get width and height from full dimensions\n const rect = node.getBoundingClientRect();\n heightRef.current = rect.height;\n widthRef.current = rect.width;\n\n // kick off any animations/transitions that were originally set up if it isn't the initial mount\n if (!isMountAnimationPreventedRef.current) {\n node.style.transitionDuration = originalStylesRef.current.transitionDuration!;\n node.style.animationName = originalStylesRef.current.animationName!;\n }\n\n setIsPresent(present);\n }\n /**\n * depends on `context.open` because it will change to `false`\n * when a close is triggered but `present` will be `false` on\n * animation end (so when close finishes). This allows us to\n * retrieve the dimensions *before* closing.\n */\n }, [context.open, present]);\n\n return (\n <Primitive.div\n data-state={getState(context.open)}\n data-disabled={context.disabled ? '' : undefined}\n id={context.contentId}\n hidden={!isOpen}\n {...contentProps}\n ref={composedRefs}\n style={{\n [`--radix-collapsible-content-height` as any]: height ? `${height}px` : undefined,\n [`--radix-collapsible-content-width` as any]: width ? `${width}px` : undefined,\n ...props.style,\n }}\n >\n {isOpen && children}\n </Primitive.div>\n );\n});\n\n/* -----------------------------------------------------------------------------------------------*/\n\nfunction getState(open?: boolean) {\n return open ? 'open' : 'closed';\n}\n\nconst Root = Collapsible;\nconst Trigger = CollapsibleTrigger;\nconst Content = CollapsibleContent;\n\nexport {\n createCollapsibleScope,\n //\n Collapsible,\n CollapsibleTrigger,\n CollapsibleContent,\n //\n Root,\n Trigger,\n Content,\n};\nexport type { CollapsibleProps, CollapsibleTriggerProps, CollapsibleContentProps };\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'message-square',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z',\n key: '18887p',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name MessageSquare\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjIgMTdhMiAyIDAgMCAxLTIgMkg2LjgyOGEyIDIgMCAwIDAtMS40MTQuNTg2bC0yLjIwMiAyLjIwMkEuNzEuNzEgMCAwIDEgMiAyMS4yODZWNWEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ6IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/message-square\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst MessageSquare = createLucideIcon(__iconData);\n\nexport default MessageSquare;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'pencil',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z',\n key: '1a8usu',\n },\n ],\n ['path', { d: 'm15 5 4 4', key: '1mk7zo' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Pencil\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjEuMTc0IDYuODEyYTEgMSAwIDAgMC0zLjk4Ni0zLjk4N0wzLjg0MiAxNi4xNzRhMiAyIDAgMCAwLS41LjgzbC0xLjMyMSA0LjM1MmEuNS41IDAgMCAwIC42MjMuNjIybDQuMzUzLTEuMzJhMiAyIDAgMCAwIC44My0uNDk3eiIgLz4KICA8cGF0aCBkPSJtMTUgNSA0IDQiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/pencil\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Pencil = createLucideIcon(__iconData);\n\nexport default Pencil;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'refresh-cw',\n size: 24,\n node: [\n ['path', { d: 'M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8', key: 'v9h5vc' }],\n ['path', { d: 'M21 3v5h-5', key: '1q7to0' }],\n ['path', { d: 'M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16', key: '3uifl3' }],\n ['path', { d: 'M8 16H3v5', key: '1cv678' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name RefreshCw\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMyAxMmE5IDkgMCAwIDEgOS05IDkuNzUgOS43NSAwIDAgMSA2Ljc0IDIuNzRMMjEgOCIgLz4KICA8cGF0aCBkPSJNMjEgM3Y1aC01IiAvPgogIDxwYXRoIGQ9Ik0yMSAxMmE5IDkgMCAwIDEtOSA5IDkuNzUgOS43NSAwIDAgMS02Ljc0LTIuNzRMMyAxNiIgLz4KICA8cGF0aCBkPSJNOCAxNkgzdjUiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/refresh-cw\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst RefreshCw = createLucideIcon(__iconData);\n\nexport default RefreshCw;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'user',\n size: 24,\n node: [\n ['path', { d: 'M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2', key: '975kel' }],\n ['circle', { cx: '12', cy: '7', r: '4', key: '17ys0d' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name User\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTkgMjF2LTJhNCA0IDAgMCAwLTQtNEg5YTQgNCAwIDAgMC00IDR2MiIgLz4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjciIHI9IjQiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/user\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst User = createLucideIcon(__iconData);\n\nexport default User;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'list',\n size: 24,\n node: [\n ['path', { d: 'M3 5h.01', key: '18ugdj' }],\n ['path', { d: 'M3 12h.01', key: 'nlz23k' }],\n ['path', { d: 'M3 19h.01', key: 'noohij' }],\n ['path', { d: 'M8 5h13', key: '1pao27' }],\n ['path', { d: 'M8 12h13', key: '1za7za' }],\n ['path', { d: 'M8 19h13', key: 'm83p4d' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name List\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMyA1aC4wMSIgLz4KICA8cGF0aCBkPSJNMyAxMmguMDEiIC8+CiAgPHBhdGggZD0iTTMgMTloLjAxIiAvPgogIDxwYXRoIGQ9Ik04IDVoMTMiIC8+CiAgPHBhdGggZD0iTTggMTJoMTMiIC8+CiAgPHBhdGggZD0iTTggMTloMTMiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/list\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst List = createLucideIcon(__iconData);\n\nexport default List;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'users',\n size: 24,\n node: [\n ['path', { d: 'M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2', key: '1yyitq' }],\n ['path', { d: 'M16 3.128a4 4 0 0 1 0 7.744', key: '16gr8j' }],\n ['path', { d: 'M22 21v-2a4 4 0 0 0-3-3.87', key: 'kshegd' }],\n ['circle', { cx: '9', cy: '7', r: '4', key: 'nufk8' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Users\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTYgMjF2LTJhNCA0IDAgMCAwLTQtNEg2YTQgNCAwIDAgMC00IDR2MiIgLz4KICA8cGF0aCBkPSJNMTYgMy4xMjhhNCA0IDAgMCAxIDAgNy43NDQiIC8+CiAgPHBhdGggZD0iTTIyIDIxdi0yYTQgNCAwIDAgMC0zLTMuODciIC8+CiAgPGNpcmNsZSBjeD0iOSIgY3k9IjciIHI9IjQiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/users\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Users = createLucideIcon(__iconData);\n\nexport default Users;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'code-xml',\n size: 24,\n node: [\n ['path', { d: 'm18 16 4-4-4-4', key: '1inbqp' }],\n ['path', { d: 'm6 8-4 4 4 4', key: '15zrgr' }],\n ['path', { d: 'm14.5 4-5 16', key: 'e7oirm' }],\n ],\n aliases: ['code-2'],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name CodeXml\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMTggMTYgNC00LTQtNCIgLz4KICA8cGF0aCBkPSJtNiA4LTQgNCA0IDQiIC8+CiAgPHBhdGggZD0ibTE0LjUgNC01IDE2IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/code-xml\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst CodeXml = createLucideIcon(__iconData);\n\nexport default CodeXml;\n","import { User, FilePen, FilePlus, FileSearch, FileText, FileX, ListChecks, Map as MapIcon, Plug, RefreshCw, Scale, Brain, type LucideIcon } from \"lucide-react\"\nimport type { ActivityEvent } from \"@/types\"\nimport { StatusIcon } from \"@/components/shared/StatusIcon\"\n\nconst TYPE_ICON: Record<ActivityEvent[\"type\"], LucideIcon> = {\n task_updated: ListChecks,\n decision_logged: Scale,\n memory_updated: Brain,\n doc_read: FileSearch,\n doc_created: FilePlus,\n doc_updated: FileText,\n doc_deleted: FileX,\n doc_renamed: FilePen,\n session_start: Plug,\n registry_rebuilt: RefreshCw,\n roadmap_updated: MapIcon,\n}\n\nexport function timeAgo(ts: string): string {\n const d = (Date.now() - new Date(ts).getTime()) / 1000\n if (d < 60) return \"just now\"\n if (d < 3600) return `${Math.floor(d / 60)}m ago`\n if (d < 86400) return `${Math.floor(d / 3600)}h ago`\n return `${Math.floor(d / 86400)}d ago`\n}\n\nexport const clock = (ts: string) => new Date(ts).toLocaleTimeString(undefined, { hour: \"2-digit\", minute: \"2-digit\", hourCycle: \"h23\" })\n\n/** One line per event: clock · what kind · what happened. A task move shows its new status icon. */\nexport function ActivityEventRow({ event, showActor = false }: { event: ActivityEvent; showActor?: boolean }) {\n const Icon = TYPE_ICON[event.type] ?? FileText\n return (\n <div className=\"grid grid-cols-[2.75rem_1.5rem_minmax(0,1fr)] items-start py-1.5\">\n <time dateTime={event.timestamp} title={new Date(event.timestamp).toLocaleString()} className=\"pt-px text-right font-mono text-[11px] leading-5 text-muted tabular-nums\">\n {clock(event.timestamp)}\n </time>\n <span className=\"flex justify-center pt-[3px]\">\n {event.type === \"task_updated\" && event.taskStatus\n ? <StatusIcon status={event.taskStatus} />\n : <Icon className=\"size-3.5 text-muted\" aria-hidden />}\n </span>\n <div className=\"flex min-w-0 flex-col gap-0.5 sm:flex-row sm:items-baseline sm:gap-2\">\n <span className=\"min-w-0 text-sm leading-5 text-txt sm:shrink-0 sm:max-w-[60%] sm:truncate\">{event.title}</span>\n {event.detail && <span className=\"min-w-0 truncate text-xs leading-5 text-muted\">{event.detail}</span>}\n {/* Agents write almost everything, so only your own changes get a tag */}\n {showActor && event.actor === \"human\" && (\n <span className=\"flex shrink-0 items-center gap-1 font-mono text-[10px] text-muted sm:ml-auto\">\n <User className=\"size-3\" aria-hidden />you\n </span>\n )}\n </div>\n </div>\n )\n}\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'scale',\n size: 24,\n node: [\n ['path', { d: 'M12 3v18', key: '108xh3' }],\n ['path', { d: 'm19 8 3 8a5 5 0 0 1-6 0zV7', key: 'zcdpyk' }],\n ['path', { d: 'M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1', key: '1yorad' }],\n ['path', { d: 'm5 8 3 8a5 5 0 0 1-6 0zV7', key: 'eua70x' }],\n ['path', { d: 'M7 21h10', key: '1b0cd5' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Scale\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIgM3YxOCIgLz4KICA8cGF0aCBkPSJtMTkgOCAzIDhhNSA1IDAgMCAxLTYgMHpWNyIgLz4KICA8cGF0aCBkPSJNMyA3aDFhMTcgMTcgMCAwIDAgOC0yIDE3IDE3IDAgMCAwIDggMmgxIiAvPgogIDxwYXRoIGQ9Im01IDggMyA4YTUgNSAwIDAgMS02IDB6VjciIC8+CiAgPHBhdGggZD0iTTcgMjFoMTAiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/scale\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Scale = createLucideIcon(__iconData);\n\nexport default Scale;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'file-pen',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34',\n key: 'o6klzx',\n },\n ],\n ['path', { d: 'M14 2v5a1 1 0 0 0 1 1h5', key: 'wfsgrz' }],\n [\n 'path',\n {\n d: 'M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z',\n key: 'zhnas1',\n },\n ],\n ],\n aliases: ['file-edit'],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name FilePen\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIuNjU5IDIySDE4YTIgMiAwIDAgMCAyLTJWOGEyLjQgMi40IDAgMCAwLS43MDYtMS43MDZsLTMuNTg4LTMuNTg4QTIuNCAyLjQgMCAwIDAgMTQgMkg2YTIgMiAwIDAgMC0yIDJ2OS4zNCIgLz4KICA8cGF0aCBkPSJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSIgLz4KICA8cGF0aCBkPSJNMTAuMzc4IDEyLjYyMmExIDEgMCAwIDEgMyAzLjAwM0w4LjM2IDIwLjYzN2EyIDIgMCAwIDEtLjg1NC41MDZsLTIuODY3LjgzN2EuNS41IDAgMCAxLS42Mi0uNjJsLjgzNi0yLjg2OWEyIDIgMCAwIDEgLjUwNi0uODUzeiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/file-pen\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst FilePen = createLucideIcon(__iconData);\n\nexport default FilePen;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'file-search',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z',\n key: '1oefj6',\n },\n ],\n ['path', { d: 'M14 2v5a1 1 0 0 0 1 1h5', key: 'wfsgrz' }],\n ['circle', { cx: '11.5', cy: '14.5', r: '2.5', key: '1bq0ko' }],\n ['path', { d: 'M13.3 16.3 15 18', key: '2quom7' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name FileSearch\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiIgLz4KICA8cGF0aCBkPSJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSIgLz4KICA8Y2lyY2xlIGN4PSIxMS41IiBjeT0iMTQuNSIgcj0iMi41IiAvPgogIDxwYXRoIGQ9Ik0xMy4zIDE2LjMgMTUgMTgiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/file-search\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst FileSearch = createLucideIcon(__iconData);\n\nexport default FileSearch;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'file-x',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z',\n key: '1oefj6',\n },\n ],\n ['path', { d: 'M14 2v5a1 1 0 0 0 1 1h5', key: 'wfsgrz' }],\n ['path', { d: 'm14.5 12.5-5 5', key: 'b62r18' }],\n ['path', { d: 'm9.5 12.5 5 5', key: '1rk7el' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name FileX\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiIgLz4KICA8cGF0aCBkPSJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSIgLz4KICA8cGF0aCBkPSJtMTQuNSAxMi41LTUgNSIgLz4KICA8cGF0aCBkPSJtOS41IDEyLjUgNSA1IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/file-x\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst FileX = createLucideIcon(__iconData);\n\nexport default FileX;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'list-checks',\n size: 24,\n node: [\n ['path', { d: 'M13 5h8', key: 'a7qcls' }],\n ['path', { d: 'M13 12h8', key: 'h98zly' }],\n ['path', { d: 'M13 19h8', key: 'c3s6r1' }],\n ['path', { d: 'm3 17 2 2 4-4', key: '1jhpwq' }],\n ['path', { d: 'm3 7 2 2 4-4', key: '1obspn' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name ListChecks\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTMgNWg4IiAvPgogIDxwYXRoIGQ9Ik0xMyAxMmg4IiAvPgogIDxwYXRoIGQ9Ik0xMyAxOWg4IiAvPgogIDxwYXRoIGQ9Im0zIDE3IDIgMiA0LTQiIC8+CiAgPHBhdGggZD0ibTMgNyAyIDIgNC00IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/list-checks\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ListChecks = createLucideIcon(__iconData);\n\nexport default ListChecks;\n","import type { ReactNode } from \"react\"\nimport { cn } from \"@/lib/utils\"\n\nexport interface ItemProperty {\n label: string\n /** null / undefined / false = the row is left out */\n value: ReactNode\n}\n\n/**\n * The one header every item panel uses (task, epic, doc): a kicker line (id · kind / breadcrumb) with the\n * ⋯ menu always at its right end, the title, then a properties grid.\n * `title` is a node so a Sheet can pass its SheetTitle.\n */\nexport function ItemPanelHeader({ kicker, title, menu, properties, className, children }: {\n kicker: ReactNode\n title: ReactNode\n menu?: ReactNode\n properties: ItemProperty[]\n className?: string\n /** Extra header content under the properties (e.g. an epic's progress) */\n children?: ReactNode\n}) {\n const shown = properties.filter((p) => p.value !== null && p.value !== undefined && p.value !== false)\n return (\n <header data-item-header className={cn(\"flex shrink-0 flex-col gap-2 border-b border-border px-5 pb-4 pt-4\", className)}>\n <div className=\"flex min-h-7 items-center gap-2 pr-8 font-mono text-[11px] text-muted\">\n <div className=\"flex min-w-0 flex-1 items-center gap-1\">{kicker}</div>\n {menu}\n </div>\n <div className=\"text-base font-semibold leading-snug text-txt\">{title}</div>\n {shown.length > 0 && (\n <dl className=\"grid grid-cols-[88px_minmax(0,1fr)] items-center gap-x-3 gap-y-1.5 text-xs\">\n {shown.map((p) => (\n <div key={p.label} className=\"contents\">\n <dt className=\"text-muted\">{p.label}</dt>\n <dd className=\"flex min-w-0 items-center gap-2 text-txt\">{p.value}</dd>\n </div>\n ))}\n </dl>\n )}\n {children}\n </header>\n )\n}\n"],"names":["chalky","coral","cyan","invalid","ivory","stone","malibu","sage","whiskey","violet","darkBackground","highlightBackground","background","tooltipBackground","selection","cursor","color","oneDarkTheme","theme","backgroundColor","caretColor","borderLeftColor","borderBottom","borderTop","outline","border","borderTopColor","borderBottomColor","dark","oneDarkHighlightStyle","define","tag","keyword","name","deleted","character","propertyName","macroName","function","variableName","labelName","constant","standard","definition","separator","typeName","className","number","changed","annotation","modifier","self","namespace","operator","operatorKeyword","url","escape","regexp","link","special","string","meta","comment","strong","fontWeight","emphasis","fontStyle","strikethrough","textDecoration","heading","atom","bool","processingInstruction","inserted","oneDark","aliases","ItemPanelHeader","kicker","title","menu","properties","children","shown","filter","p","value","undefined","length","map","label"],"mappings":"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AR,ADAQ,CCAE,CAAA,sBF3B9B,EAA6B,CACxC,CAAA,AEAA,ADAA,CCAA,ADAA,ADAA,CCAA,ACAA,AFAA,CCAA,ADAA,AEAA,CFAM,CCAA,ACAA,AFAA,CEDK,ADAA,ADAA,ACCL,ADAA,AEAA,CADK,AFCL,ACAA,ACAA,AFDK,ACAA,CAAA,ADAA,AACL,AEDK,ADCL,ACAA,CDAA,ACAA,AFAA,CEAA,ADAA,ADAA,CCAA,ACAA,CAAA,CAAA,CAAA,EFCA,CAAA,ACAA,ACAA,CAAA,ADAA,ADAA,CACN,IEAA,ADAA,ADAA,CCAA,ACAA,AFAA,AAAM,EACH,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,CCAA,ACAA,AFAA,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,AAAQ,CAAE,ACAF,ADAA,AEAA,EFAK,CCAA,ACAA,AFAA,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CAAA,AEAA,ADAA,CDAA,AEAA,ADAA,CCAA,ADAA,ADAA,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CEAA,AFAA,ACAA,CDAA,ACAA,ADAY,AEAZ,CAAA,ADAA,ADAY,CAAA,AEAZ,ADAA,CCAA,ADAA,ADAY,CEAZ,AFAY,ACAZ,ADAiB,UAAU,CCA3B,ACAuB,CDAvB,ACAuB,CDAvB,MDCL,CEAA,AFAE,ACAF,ADAA,EAAK,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,CCAA,ACAA,AFAA,CCAA,ACAA,AFAA,CCAA,ACAA,AFAA,CEAA,ADAA,ADAA,CCAA,ACAA,AFAA,CEAA,AFAA,ACAA,CCAA,AFAA,ACAA,CDAA,ACAA,ACAA,AFAa,CAAA,AEAb,ADAA,CCAA,ADAA,ADAa,EAAK,CCAlB,ACAgB,AFAE,CCAlB,ACAgB,AFAE,QAAU,CAC1C,CAAC,CEAA,AFAA,ACAA,CDAA,AEAA,ADAA,CCAA,ADAA,ADAA,CCAA,ADAA,AEAA,CDAA,ACAA,AFAA,CCAA,ACAA,AFAA,CAAA,ACAA,ACAA,AFAQ,CEAA,AFAA,ACAA,ADAE,EAAG,CCAA,ADAA,AEAA,C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AA,aAC1C,+BAAiC,EDAA,ACC9C,CDD8C,OCCpC,EAAG,CDAA,ACAA,CDAA,ACAA,CDAA,ACAA,CDAA,ACAA,CDAA,ACAA,4CAoBJ,CAAA,ADAR,CAAA,ACAQ,CDAR,ACAQ,CDAR,ACAQ,KAAA,EAAiB,CDAZ,ACAY,CDAZ,ACAY,CDAZ,ACAY,uEC7Ba,0EAEC,CJA3B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,kEIEqB,CAAU,CAAA,mBAoB9B,CAAA,ADhBD,ADAD,AFgBH,CAAA,OAAA,EAAA,GD/Bd,IAAA,EAAA,EAAA,CAAA,CAAA,QAAA,EAAA,EAAA,CAAA,CAAA,QAAA,EAAA,EAAA,CAAA,CAAA,QCGO,CEAA,ACAA,ACAA,AJAA,ACAA,GDAM,EAA6B,mBAElC,CIAA,AJAA,AGAA,ADAA,ADAA,CGAA,AJAA,AEAA,ADAA,AEAA,OHEJ,CAAC,CAAA,AIAA,CJAA,AIAA,CJAA,AIAA,CAAA,AJAA,CAAA,AIAA,CAAA,AJAA,CIAA,AJAA,AAAQ,CIAA,AJAA,aAAiB,CIAD,AJAC,CIAD,AJAC,CIAD,AJAC,CAAK,CIAD,AJAC,CIAD,AJAC,CAAA,AIAD,CJAC,AIAD,CAAA,AJAC,CAAA,AIAD,CJAC,GAAU,SAChC,CIAA,AJAA,EAAK,CIAA,AJAA,4BAA8B,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,SAClD,CAAA,AIAA,AJAE,EAAG,2CAA4C,CAAA,CAAA,CAAA,CAAA,AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CACzE,CAAC,CAAA,AEDC,ADAA,AGCD,ADDC,CAAA,AFAA,ACAA,AECD,AJAA,KAAQ,CIAA,AJAA,AGAF,AFAA,ACAA,AFAI,CGAJ,ADAA,ADAA,CEAA,ADAA,ADAA,ADAO,CGAP,ADAA,AEAO,AHAP,ADAO,CEAP,AEAO,AHAP,AEAA,AHAO,CEAP,AEAO,ADAP,AHAO,ACAP,CGAO,ADAP,ADAA,ADAA,ADAO,CIAA,ADAP,ADAA,ADAA,ADAO,CEAP,AEAO,ADAP,AFAA,ADAO,CAAA,AGAP,ACAO,AFAP,ADAA,CDAO,AGAP,AFAA,ACAA,AEAO,CDAP,ACAO,AFAP,ADAA,ADAO,CGAP,ACAO,AFAP,ADAA,ADAO,CIAA,ADAP,ADAA,ADAA,ADAO,CCAP,ACAA,ACAA,AHAO,AIAA,CAAA,AFAP,ADAA,AEAA,AHAO,CIAA,AJAA,AEAP,ACAA,AFAA,CDAO,AGAP,ADAA,AEAO,AHAP,CAAA,ADAO,AIAA,ADAP,ADAA,YFAoC,CCApC,ACAA,ACAA,AHAoC,GAAK,CGAzC,AFAA,ACAA,AFAyC,CGAzC,AFAA,ACAA,AFAyC,CGAzC,AFAA,ACAA,AFAyC,CAAA,AGAzC,AFAA,ACAA,CFAyC,AGAzC,AFAA,ACAA,CDAA,AEAA,ADAA,AFAyC,CCAzC,AEAA,ADAA,AFAyC,CCAzC,AEAA,ADAA,IFCN,CCDM,AEAA,ACCN,AFDM,AFCN,CCDM,ACAA,ACAA,ACCN,AJAA,QAAa,CEAL,AFAK,ACAL,AEAA,ACAK,CHAL,AGAK,ADAL,ADAA,AFAK,CAAA,AIAA,CAAA,AJAA,CIAA,AJAA,CIAA,AJAA,CIAA,AJAA,CIAA,AJAA,CIAA,AJAA,CIAA,AJAA,CAAY,AIAZ,AJAA,CAAY,AIAZ,CJAY,AIAZ,CAAA,AJAY,CAAK,CIAD,AJAC,CIAD,AJAC,CIAD,AJAC,QAEnC,CGDM,AHCN,AIAA,AHDM,ACAA,QFmBN,CAAA,AEjB4D,ACAA,AFAA,AGiB5D,GJAA,EAAA,CAAA,EAAA,EAAA,OAAA,EAAA,6BD/BA,IAAA,EAAA,EAAA,CAAA,CAAA,QAEA,EAAA,EAAA,CAAA,CAAA,QAEA,IAAM,EAAuD,CAC3D,aAAc,EACd,gBAAiB,EACjB,eAAgB,EAAA,KAAK,CACrB,SAAU,EACV,YAAa,EAAA,QAAQ,CACrB,YAAa,EAAA,QAAQ,CACrB,YAAa,EACb,YAAa,EACb,cAAe,EAAA,IAAI,CACnB,iBAAkB,EAAA,SAAS,CAC3B,gBAAiB,EAAA,GAAO,AAC1B,EAUa,EAAQ,AAAC,GAAe,IAAI,KAAK,GAAI,kBAAkB,MAAC,EAAW,CAAE,KAAM,UAAW,OAAQ,UAAW,UAAW,KAAM,6BAGhI,SAAS,AAAiB,OAAE,CAAK,WAAE,GAAY,CAAK,CAAiD,EAC1G,IAAM,EAAO,CAAS,CAAC,EAAM,IAAI,CAAC,EAAI,EAAA,QAAQ,CAC9C,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAU,6EACb,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,SAAU,EAAM,SAAS,CAAE,MAAO,IAAI,KAAK,EAAM,SAAS,EAAE,cAAc,GAAI,UAAU,oFAC3F,EAAM,EAAM,SAAS,IAExB,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAU,wCACE,iBAAf,EAAM,IAAI,EAAuB,EAAM,UAAU,CAC9C,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,UAAU,CAAA,CAAC,OAAQ,EAAM,UAAU,GACpC,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAK,UAAU,sBAAsB,aAAW,CAAA,CAAA,MAEvD,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAI,UAAU,iFACb,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAU,qFAA6E,EAAM,KAAK,GACvG,EAAM,MAAM,EAAI,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAU,yDAAiD,EAAM,MAAM,GAE7F,GAA6B,UAAhB,EAAM,KAAK,EACvB,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAK,UAAU,yFACd,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,IAAI,CAAA,CAAC,UAAU,SAAS,aAAW,CAAA,CAAA,IAAG,cAMnD,0BAnCO,SAAS,AAAQ,CAAU,EAChC,IAAM,EAAI,CAAC,KAAK,GAAG,GAAK,IAAI,KAAK,GAAI,OAAO,EAAA,CAAE,CAAI,WAClD,AAAI,EAAI,GAAW,CAAP,UACR4D,EAAI,KAAa,CAAP,AAAO,EAAG,KAAK,KAAK,CAAC,EAAI,IAAI,KAAK,CAAC,CAC7C,EAAI,MAAc,CAAA,AAAP,EAAU,KAAK,KAAK,CAAC,EAAI,MAAM,KAAK,CAAC,CAC7C,CAAA,EAAG,KAAK,KAAK,CAAC,EAAI,OAAO,KAAK,CAAC,AACxC,sDMvBA,EAAA,EAAA,CAAA,CAAA,iCAaO,SAASC,AAAgB,QAAEC,CAAM,OAAEC,CAAK,MAAEC,CAAI,YAAEC,CAAU,WAAElC,CAAS,UAAEmC,CAAQ,CAQrF,EACC,IAAMC,EAAQF,EAAWG,MAAM,CAAC,AAACC,GAAMA,AAAY,SAAVC,KAAK,OAAyBC,IAAZF,EAAEC,KAAK,GAA8B,IAAZD,EAAEC,KAAK,EAC3F,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,SAAA,CAAO,kBAAgB,CAAA,CAAA,EAACvC,UAAW,CAAA,EAAA,EAAA,EAAA,AAAE,EAAC,qEAAsEA,aAC3G,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAIA,UAAU,kFACb,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAIA,UAAU,kDAA0C+B,IACxDE,KAEH,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAIjC,UAAU,yDAAiDgC,IAC/DI,EAAMK,MAAM,CAAG,GACd,CAAA,EAAA,EAAA,GAAA,EAAC,KAAA,CAAGzC,UAAU,sFACXoC,EAAMM,GAAG,CAAC,AAACJ,GACV,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAkBtC,UAAU,qBAC3B,CAAA,EAAA,EAAA,GAAA,EAAC,KAAA,CAAGA,UAAU,sBAAcsC,EAAEK,KAAK,GACnC,CAAA,EAAA,EAAA,GAAA,EAAC,KAAA,CAAG3C,UAAU,oDAA4CsC,EAAEC,KAAK,KAFzDD,EAAEK,KAAK,KAOtBR,IAGP","ignoreList":[0,1,2,3,6,7,8,9,10,11,12,13,14,16,17,18,19,20]}
@@ -0,0 +1,4 @@
1
+ module.exports=[365465,152716,a=>{"use strict";var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r=a.i(662145),s=a.i(174897);function t(a){if("string"==typeof a||"number"==typeof a)return""+a;let b="";if(Array.isArray(a))for(let c=0,d;c<a.length;c++)""!==(d=t(a[c]))&&(b+=(b&&" ")+d);else for(let c in a)a[c]&&(b+=(b&&" ")+c);return b}var u=a.i(781078),v=a.i(455784),w=a.i(34669),x=a.i(314600),y=a.i(624894);let z=a=>()=>a;function A(a,{sourceEvent:b,subject:c,target:d,identifier:e,active:f,x:g,y:h,dx:i,dy:j,dispatch:k}){Object.defineProperties(this,{type:{value:a,enumerable:!0,configurable:!0},sourceEvent:{value:b,enumerable:!0,configurable:!0},subject:{value:c,enumerable:!0,configurable:!0},target:{value:d,enumerable:!0,configurable:!0},identifier:{value:e,enumerable:!0,configurable:!0},active:{value:f,enumerable:!0,configurable:!0},x:{value:g,enumerable:!0,configurable:!0},y:{value:h,enumerable:!0,configurable:!0},dx:{value:i,enumerable:!0,configurable:!0},dy:{value:j,enumerable:!0,configurable:!0},_:{value:k}})}function B(a){return!a.ctrlKey&&!a.button}function C(){return this.parentNode}function D(a,b){return null==b?{x:a.x,y:a.y}:b}function E(){return navigator.maxTouchPoints||"ontouchstart"in this}function F(){var a,b,c,d,e=B,f=C,g=D,h=E,i={},j=(0,u.dispatch)("start","drag","end"),k=0,l=0;function m(a){a.on("mousedown.drag",n).filter(h).on("touchstart.drag",q).on("touchmove.drag",r,y.nonpassive).on("touchend.drag touchcancel.drag",s).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function n(g,h){if(!d&&e.call(this,g,h)){var i=t(this,f.call(this,g,h),g,h,"mouse");i&&((0,v.select)(g.view).on("mousemove.drag",o,y.nonpassivecapture).on("mouseup.drag",p,y.nonpassivecapture),(0,x.default)(g.view),(0,y.nopropagation)(g),c=!1,a=g.clientX,b=g.clientY,i("start",g))}}function o(d){if((0,y.default)(d),!c){var e=d.clientX-a,f=d.clientY-b;c=e*e+f*f>l}i.mouse("drag",d)}function p(a){(0,v.select)(a.view).on("mousemove.drag mouseup.drag",null),(0,x.yesdrag)(a.view,c),(0,y.default)(a),i.mouse("end",a)}function q(a,b){if(e.call(this,a,b)){var c,d,g=a.changedTouches,h=f.call(this,a,b),i=g.length;for(c=0;c<i;++c)(d=t(this,h,a,b,g[c].identifier,g[c]))&&((0,y.nopropagation)(a),d("start",a,g[c]))}}function r(a){var b,c,d=a.changedTouches,e=d.length;for(b=0;b<e;++b)(c=i[d[b].identifier])&&((0,y.default)(a),c("drag",a,d[b]))}function s(a){var b,c,e=a.changedTouches,f=e.length;for(d&&clearTimeout(d),d=setTimeout(function(){d=null},500),b=0;b<f;++b)(c=i[e[b].identifier])&&((0,y.nopropagation)(a),c("end",a,e[b]))}function t(a,b,c,d,e,f){var h,l,n,o=j.copy(),p=(0,w.pointer)(f||c,b);if(null!=(n=g.call(a,new A("beforestart",{sourceEvent:c,target:m,identifier:e,active:k,x:p[0],y:p[1],dx:0,dy:0,dispatch:o}),d)))return h=n.x-p[0]||0,l=n.y-p[1]||0,function c(f,g,j){var q,r=p;switch(f){case"start":i[e]=c,q=k++;break;case"end":delete i[e],--k;case"drag":p=(0,w.pointer)(j||g,b),q=k}o.call(f,a,new A(f,{sourceEvent:g,subject:n,target:m,identifier:e,active:q,x:p[0]+h,y:p[1]+l,dx:p[0]-r[0],dy:p[1]-r[1],dispatch:o}),d)}}return m.filter=function(a){return arguments.length?(e="function"==typeof a?a:z(!!a),m):e},m.container=function(a){return arguments.length?(f="function"==typeof a?a:z(a),m):f},m.subject=function(a){return arguments.length?(g="function"==typeof a?a:z(a),m):g},m.touchable=function(a){return arguments.length?(h="function"==typeof a?a:z(!!a),m):h},m.on=function(){var a=j.on.apply(j,arguments);return a===j?m:a},m.clickDistance=function(a){return arguments.length?(l=(a*=1)*a,m):Math.sqrt(l)},m}A.prototype.on=function(){var a=this._.on.apply(this._,arguments);return a===this._?this:a},a.i(633534);var G=a.i(455376),G=G,H=a.i(83356),H=H,I=H,J=a.i(238018),K=a.i(86915);let L={error001:(a="react")=>`Seems like you have not used ${"svelte"===a?"SvelteFlowProvider":"ReactFlowProvider"} as an ancestor. Help: https://${a}flow.dev/error#001`,error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:a=>`Node type "${a}" not found. Using fallback type "default".`,error004:()=>"The parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:a=>`The old edge with id=${a} does not exist.`,error009:a=>`Marker type "${a}" doesn't exist.`,error008:(a,{id:b,sourceHandle:c,targetHandle:d})=>`Couldn't create edge for ${a} handle id: "${"source"===a?c:d}", edge id: ${b}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:a=>`Edge type "${a}" not found. Using fallback type "default".`,error012:a=>`Node with id "${a}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(a="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${a}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",error016:a=>`Edge with id "${a}" does not exist, it may have been removed. This can happen when an edge is deleted before the "onEdgeClick" handler is called.`},M=[[-1/0,-1/0],[1/0,1/0]],N=["Enter"," ","Escape"],O={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:a,x:b,y:c})=>`Moved selected node ${a}. New position, x: ${b}, y: ${c}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};(b=j||(j={})).Strict="strict",b.Loose="loose",(c=k||(k={})).Free="free",c.Vertical="vertical",c.Horizontal="horizontal",(d=l||(l={})).Partial="partial",d.Full="full";let P={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};(e=m||(m={})).Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier",(f=n||(n={})).Arrow="arrow",f.ArrowClosed="arrowclosed",(g=o||(o={})).Left="left",g.Top="top",g.Right="right",g.Bottom="bottom";let Q={[o.Left]:o.Right,[o.Right]:o.Left,[o.Top]:o.Bottom,[o.Bottom]:o.Top},R=a=>!!a&&"object"==typeof a&&"id"in a&&"source"in a&&"target"in a,S=a=>!!a&&"object"==typeof a&&"id"in a&&"position"in a&&!("source"in a)&&!("target"in a),T=a=>!!a&&"object"==typeof a&&"id"in a&&"internals"in a&&!("source"in a)&&!("target"in a),U=(a,b=[0,0])=>{let{width:c,height:d}=aw(a),e=a.origin??b,f=c*e[0],g=d*e[1];return{x:a.position.x-f,y:a.position.y-g}},V=(a,b={nodeOrigin:[0,0]})=>{if(0===a.length)return{x:0,y:0,width:0,height:0};let c=!1,d=a.reduce((a,d)=>{let e="string"==typeof d,f=b.nodeLookup||e?void 0:d;return(b.nodeLookup&&(f=e?b.nodeLookup.get(d):T(d)?d:b.nodeLookup.get(d.id)),f)?(c=!0,ae(a,ai(f,b.nodeOrigin))):a},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return c?ag(d):{x:0,y:0,width:0,height:0}},W=(a,b={})=>{let c={x:1/0,y:1/0,x2:-1/0,y2:-1/0},d=!1;return a.forEach(a=>{(void 0===b.filter||b.filter(a))&&(c=ae(c,ai(a)),d=!0)}),d?ag(c):{x:0,y:0,width:0,height:0}},X=(a,b,[c,d,e]=[0,0,1],f=!1,g=!1)=>{let h=(b.x-c)/e,i=(b.y-d)/e,j=b.width/e,k=b.height/e,l=[];for(let b of a.values()){let{measured:a,selectable:c=!0,hidden:d=!1}=b;if(g&&!c||d)continue;let e=a.width??b.width??b.initialWidth??0,m=a.height??b.height??b.initialHeight??0,{x:n,y:o}=b.internals.positionAbsolute,p=ak(h,i,j,k,n,o,e,m),q=e*m,r=f&&p>0;(!b.internals.handleBounds||r||p>=q||b.dragging)&&l.push(b)}return l};async function Y({nodes:a,width:b,height:c,panZoom:d,minZoom:e,maxZoom:f},g){let h,i;if(0===a.size)return!0;let j=at(W((h=new Map,i=g?.nodes?new Set(g.nodes.map(a=>a.id)):null,a.forEach(a=>{let b;if(g?.includeHiddenNodes){let{width:c,height:d}=aw(a);b=c>0&&d>0}else b=!!(a.measured.width&&a.measured.height&&!a.hidden);b&&(!i||i.has(a.id))&&h.set(a.id,a)}),h)),b,c,g?.minZoom??e,g?.maxZoom??f,g?.padding??.1);return await d.setViewport(j,{duration:g?.duration,ease:g?.ease,interpolate:g?.interpolate}),!0}function Z({nodeId:a,nextPosition:b,nodeLookup:c,nodeOrigin:d=[0,0],nodeExtent:e,onError:f}){let g=c.get(a),h=g.parentId?c.get(g.parentId):void 0,{x:i,y:j}=h?h.internals.positionAbsolute:{x:0,y:0},k=g.origin??d,l=g.extent||e;if("parent"!==g.extent||g.expandParent)h&&av(g.extent)&&(l=[[g.extent[0][0]+i,g.extent[0][1]+j],[g.extent[1][0]+i,g.extent[1][1]+j]]);else if(h){let{width:a,height:b}=aw(h);a&&b&&(l=[[i,j],[i+a,j+b]])}else f?.("005",L.error005());let m=av(l)?aa(b,l,g.measured):b;return(void 0===g.measured.width||void 0===g.measured.height)&&f?.("015",L.error015()),{position:{x:m.x-i+(g.measured.width??0)*k[0],y:m.y-j+(g.measured.height??0)*k[1]},positionAbsolute:m}}async function $({nodesToRemove:a=[],edgesToRemove:b=[],nodes:c,edges:d,onBeforeDelete:e}){let f,g=new Set(a.map(a=>a.id)),h=[];for(let a of c){if(!1===a.deletable)continue;let b=g.has(a.id),c=!b&&a.parentId&&h.find(b=>b.id===a.parentId);(b||c)&&h.push(a)}let i=new Set(b.map(a=>a.id)),j=d.filter(a=>!1!==a.deletable),k=(f=new Set,h.forEach(a=>{f.add(a.id)}),j.filter(a=>f.has(a.source)||f.has(a.target)));for(let a of j)i.has(a.id)&&!k.find(b=>b.id===a.id)&&k.push(a);if(!e)return{edges:k,nodes:h};let l=await e({nodes:h,edges:k});return"boolean"==typeof l?l?{edges:k,nodes:h}:{edges:[],nodes:[]}:l}let _=(a,b=0,c=1)=>Math.min(Math.max(a,b),c),aa=(a={x:0,y:0},b,c)=>({x:_(a.x,b[0][0],b[1][0]-(c?.width??0)),y:_(a.y,b[0][1],b[1][1]-(c?.height??0))});function ab(a,b,c){let{width:d,height:e}=aw(c),{x:f,y:g}=c.internals.positionAbsolute;return aa(a,[[f,g],[f+d,g+e]],b)}let ac=(a,b,c)=>a<b?_(Math.abs(a-b),1,b)/b:a>c?-_(Math.abs(a-c),1,b)/b:0,ad=(a,b,c=15,d=40)=>[ac(a.x,d,b.width-d)*c,ac(a.y,d,b.height-d)*c],ae=(a,b)=>({x:Math.min(a.x,b.x),y:Math.min(a.y,b.y),x2:Math.max(a.x2,b.x2),y2:Math.max(a.y2,b.y2)}),af=({x:a,y:b,width:c,height:d})=>({x:a,y:b,x2:a+c,y2:b+d}),ag=({x:a,y:b,x2:c,y2:d})=>({x:a,y:b,width:c-a,height:d-b}),ah=(a,b=[0,0])=>{let{x:c,y:d}=T(a)?a.internals.positionAbsolute:U(a,b);return{x:c,y:d,width:a.measured?.width??a.width??a.initialWidth??0,height:a.measured?.height??a.height??a.initialHeight??0}},ai=(a,b=[0,0])=>{let{x:c,y:d}=T(a)?a.internals.positionAbsolute:U(a,b);return{x:c,y:d,x2:c+(a.measured?.width??a.width??a.initialWidth??0),y2:d+(a.measured?.height??a.height??a.initialHeight??0)}},aj=(a,b)=>ag(ae(af(a),af(b))),ak=(a,b,c,d,e,f,g,h)=>Math.ceil(Math.max(0,Math.min(a+c,e+g)-Math.max(a,e))*Math.max(0,Math.min(b+d,f+h)-Math.max(b,f))),al=(a,b)=>ak(a.x,a.y,a.width,a.height,b.x,b.y,b.width,b.height),am=a=>an(a.width)&&an(a.height)&&an(a.x)&&an(a.y),an=a=>!isNaN(a)&&isFinite(a),ao=(a,b)=>(a,b)=>{},ap=(a,b=[1,1])=>({x:b[0]*Math.round(a.x/b[0]),y:b[1]*Math.round(a.y/b[1])}),aq=({x:a,y:b},[c,d,e],f=!1,g=[1,1])=>{let h={x:(a-c)/e,y:(b-d)/e};return f?ap(h,g):h},ar=({x:a,y:b},[c,d,e])=>({x:a*e+c,y:b*e+d});function as(a,b){if("number"==typeof a)return Math.floor((b-b/(1+a))*.5);if("string"==typeof a&&a.endsWith("px")){let b=parseFloat(a);if(!Number.isNaN(b))return Math.floor(b)}if("string"==typeof a&&a.endsWith("%")){let c=parseFloat(a);if(!Number.isNaN(c))return Math.floor(b*c*.01)}return console.error(`The padding value "${a}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}let at=(a,b,c,d,e,f)=>{let g=function(a,b,c){if("string"==typeof a||"number"==typeof a){let d=as(a,c),e=as(a,b);return{top:d,right:e,bottom:d,left:e,x:2*e,y:2*d}}if("object"==typeof a){let d=as(a.top??a.y??0,c),e=as(a.bottom??a.y??0,c),f=as(a.left??a.x??0,b),g=as(a.right??a.x??0,b);return{top:d,right:g,bottom:e,left:f,x:f+g,y:d+e}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}(f,b,c),h=_(Math.min((b-g.x)/a.width,(c-g.y)/a.height),d,e),i=a.x+a.width/2,j=a.y+a.height/2,k=b/2-i*h,l=c/2-j*h,m=function(a,b,c,d,e,f){let{x:g,y:h}=ar(a,[b,c,d]),{x:i,y:j}=ar({x:a.x+a.width,y:a.y+a.height},[b,c,d]);return{left:Math.floor(g),top:Math.floor(h),right:Math.floor(e-i),bottom:Math.floor(f-j)}}(a,k,l,h,b,c),n={left:Math.min(m.left-g.left,0),top:Math.min(m.top-g.top,0),right:Math.min(m.right-g.right,0),bottom:Math.min(m.bottom-g.bottom,0)};return{x:k-n.left+n.right,y:l-n.top+n.bottom,zoom:h}},au=()=>"u">typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0;function av(a){return null!=a&&"parent"!==a}function aw(a){return{width:a.measured?.width??a.width??a.initialWidth??0,height:a.measured?.height??a.height??a.initialHeight??0}}function ax(a){return(a.measured?.width??a.width??a.initialWidth)!==void 0&&(a.measured?.height??a.height??a.initialHeight)!==void 0}function ay(a,b={width:0,height:0},c,d,e){let f={...a},g=d.get(c);if(g){let a=g.origin||e;f.x+=g.internals.positionAbsolute.x-(b.width??0)*a[0],f.y+=g.internals.positionAbsolute.y-(b.height??0)*a[1]}return f}function az(a,b){if(a.size!==b.size)return!1;for(let c of a)if(!b.has(c))return!1;return!0}function aA(){let a,b;return{promise:new Promise((c,d)=>{a=c,b=d}),resolve:a,reject:b}}function aB(a){return{...O,...a||{}}}function aC(a){return null===a?null:a?"valid":"invalid"}function aD(a,{snapGrid:b=[0,0],snapToGrid:c=!1,transform:d,containerBounds:e}){let{x:f,y:g}=aJ(a),h=aq({x:f-(e?.left??0),y:g-(e?.top??0)},d),{x:i,y:j}=c?ap(h,b):h;return{xSnapped:i,ySnapped:j,...h}}let aE=a=>({width:a.offsetWidth,height:a.offsetHeight}),aF=a=>a?.getRootNode?.()||window?.document,aG=["INPUT","SELECT","TEXTAREA"];function aH(a){let b=a.composedPath?.()?.[0]||a.target;return b?.nodeType===1&&(aG.includes(b.nodeName)||b.hasAttribute("contenteditable")||!!b.closest(".nokey"))}let aI=a=>"clientX"in a,aJ=(a,b)=>{let c=aI(a),d=c?a.clientX:a.touches?.[0].clientX,e=c?a.clientY:a.touches?.[0].clientY;return{x:d-(b?.left??0),y:e-(b?.top??0)}},aK=(a,b,c,d,e)=>{let f=b.querySelectorAll(`.${a}`);return f&&f.length?Array.from(f).map(b=>{let f=b.getBoundingClientRect();return{id:b.getAttribute("data-handleid"),type:a,nodeId:e,position:b.getAttribute("data-handlepos"),x:(f.left-c.left)/d,y:(f.top-c.top)/d,...aE(b)}}):null};function aL({sourceX:a,sourceY:b,targetX:c,targetY:d,sourceControlX:e,sourceControlY:f,targetControlX:g,targetControlY:h}){let i=.125*a+.375*e+.375*g+.125*c,j=.125*b+.375*f+.375*h+.125*d,k=Math.abs(i-a),l=Math.abs(j-b);return[i,j,k,l]}function aM(a,b){return a>=0?.5*a:25*b*Math.sqrt(-a)}function aN({pos:a,x1:b,y1:c,x2:d,y2:e,c:f}){switch(a){case o.Left:return[b-aM(b-d,f),c];case o.Right:return[b+aM(d-b,f),c];case o.Top:return[b,c-aM(c-e,f)];case o.Bottom:return[b,c+aM(e-c,f)]}}function aO({sourceX:a,sourceY:b,sourcePosition:c=o.Bottom,targetX:d,targetY:e,targetPosition:f=o.Top,curvature:g=.25}){let[h,i]=aN({pos:c,x1:a,y1:b,x2:d,y2:e,c:g}),[j,k]=aN({pos:f,x1:d,y1:e,x2:a,y2:b,c:g}),[l,m,n,p]=aL({sourceX:a,sourceY:b,targetX:d,targetY:e,sourceControlX:h,sourceControlY:i,targetControlX:j,targetControlY:k});return[`M${a},${b} C${h},${i} ${j},${k} ${d},${e}`,l,m,n,p]}function aP({sourceX:a,sourceY:b,targetX:c,targetY:d}){let e=Math.abs(c-a)/2,f=Math.abs(d-b)/2;return[c<a?c+e:c-e,d<b?d+f:d-f,e,f]}function aQ({sourceNode:a,targetNode:b,selected:c=!1,zIndex:d=0,elevateOnSelect:e=!1,zIndexMode:f="basic"}){if("manual"===f)return d;let g=Math.max(a.parentId||e&&a.selected?a.internals.z:0,b.parentId||e&&b.selected?b.internals.z:0);return(e&&c?d+1e3:d)+g}function aR({sourceNode:a,targetNode:b,width:c,height:d,transform:e}){let f=ae(ai(a),ai(b));return f.x===f.x2&&(f.x2+=1),f.y===f.y2&&(f.y2+=1),al({x:-e[0]/e[2],y:-e[1]/e[2],width:c/e[2],height:d/e[2]},ag(f))>0}let aS=({source:a,sourceHandle:b,target:c,targetHandle:d})=>`xy-edge__${a}${b||""}-${c}${d||""}`,aT=(a,b,c={})=>{let d,e;if(!a.source||!a.target)return c.onError?.("006",L.error006()),b;let f=c.getEdgeId||aS;return(e=d=R(a)?{...a}:{...a,id:f(a)},b.some(a=>a.source===e.source&&a.target===e.target&&(a.sourceHandle===e.sourceHandle||!a.sourceHandle&&!e.sourceHandle)&&(a.targetHandle===e.targetHandle||!a.targetHandle&&!e.targetHandle)))?b:(null===d.sourceHandle&&delete d.sourceHandle,null===d.targetHandle&&delete d.targetHandle,b.concat(d))};function aU({sourceX:a,sourceY:b,targetX:c,targetY:d}){let[e,f,g,h]=aP({sourceX:a,sourceY:b,targetX:c,targetY:d});return[`M ${a},${b}L ${c},${d}`,e,f,g,h]}let aV={[o.Left]:{x:-1,y:0},[o.Right]:{x:1,y:0},[o.Top]:{x:0,y:-1},[o.Bottom]:{x:0,y:1}},aW=(a,b)=>Math.sqrt(Math.pow(b.x-a.x,2)+Math.pow(b.y-a.y,2));function aX({sourceX:a,sourceY:b,sourcePosition:c=o.Bottom,targetX:d,targetY:e,targetPosition:f=o.Top,borderRadius:g=5,centerX:h,centerY:i,offset:j=20,stepPosition:k=.5}){let[l,m,n,p,q]=function({source:a,sourcePosition:b=o.Bottom,target:c,targetPosition:d=o.Top,center:e,offset:f,stepPosition:g}){let h,i,j=aV[b],k=aV[d],l={x:a.x+j.x*f,y:a.y+j.y*f},m={x:c.x+k.x*f,y:c.y+k.y*f},n=(({source:a,sourcePosition:b=o.Bottom,target:c})=>b===o.Left||b===o.Right?a.x<c.x?{x:1,y:0}:{x:-1,y:0}:a.y<c.y?{x:0,y:1}:{x:0,y:-1})({source:l,sourcePosition:b,target:m}),p=0!==n.x?"x":"y",q=n[p],r=[],s={x:0,y:0},t={x:0,y:0},[,,u,v]=aP({sourceX:a.x,sourceY:a.y,targetX:c.x,targetY:c.y});if(j[p]*k[p]==-1){"x"===p?(h=e.x??l.x+(m.x-l.x)*g,i=e.y??(l.y+m.y)/2):(h=e.x??(l.x+m.x)/2,i=e.y??l.y+(m.y-l.y)*g);let a=[{x:h,y:l.y},{x:h,y:m.y}],b=[{x:l.x,y:i},{x:m.x,y:i}];r=j[p]===q?"x"===p?a:b:"x"===p?b:a}else{let e=[{x:l.x,y:m.y}],g=[{x:m.x,y:l.y}];if(r="x"===p?j.x===q?g:e:j.y===q?e:g,b===d){let b=Math.abs(a[p]-c[p]);if(b<=f){let d=Math.min(f-1,f-b);j[p]===q?s[p]=(l[p]>a[p]?-1:1)*d:t[p]=(m[p]>c[p]?-1:1)*d}}if(b!==d){let a="x"===p?"y":"x",b=j[p]===k[a],c=l[a]>m[a],d=l[a]<m[a];(1===j[p]&&(!b&&c||b&&d)||1!==j[p]&&(!b&&d||b&&c))&&(r="x"===p?e:g)}let n={x:l.x+s.x,y:l.y+s.y},o={x:m.x+t.x,y:m.y+t.y};Math.max(Math.abs(n.x-r[0].x),Math.abs(o.x-r[0].x))>=Math.max(Math.abs(n.y-r[0].y),Math.abs(o.y-r[0].y))?(h=(n.x+o.x)/2,i=r[0].y):(h=r[0].x,i=(n.y+o.y)/2)}let w={x:l.x+s.x,y:l.y+s.y},x={x:m.x+t.x,y:m.y+t.y};return[[a,...w.x!==r[0].x||w.y!==r[0].y?[w]:[],...r,...x.x!==r[r.length-1].x||x.y!==r[r.length-1].y?[x]:[],c],h,i,u,v]}({source:{x:a,y:b},sourcePosition:c,target:{x:d,y:e},targetPosition:f,center:{x:h,y:i},offset:j,stepPosition:k}),r=`M${l[0].x} ${l[0].y}`;for(let a=1;a<l.length-1;a++)r+=function(a,b,c,d){let e=Math.min(aW(a,b)/2,aW(b,c)/2,d),{x:f,y:g}=b;if(a.x===f&&f===c.x||a.y===g&&g===c.y)return`L${f} ${g}`;if(a.y===g){let b=a.x<c.x?-1:1,d=a.y<c.y?1:-1;return`L ${f+e*b},${g}Q ${f},${g} ${f},${g+e*d}`}let h=a.x<c.x?1:-1,i=a.y<c.y?-1:1;return`L ${f},${g+e*i}Q ${f},${g} ${f+e*h},${g}`}(l[a-1],l[a],l[a+1],g);return[r+=`L${l[l.length-1].x} ${l[l.length-1].y}`,m,n,p,q]}function aY(a){return a&&!!(a.internals.handleBounds||a.handles?.length)&&!!(a.measured.width||a.width||a.initialWidth)}function aZ(a){let{sourceNode:b,targetNode:c}=a;if(!aY(b)||!aY(c))return null;let d=b.internals.handleBounds||a$(b.handles),e=c.internals.handleBounds||a$(c.handles),f=a0(d?.source??[],a.sourceHandle),g=a0(a.connectionMode===j.Strict?e?.target??[]:(e?.target??[]).concat(e?.source??[]),a.targetHandle);if(!f||!g)return a.onError?.("008",L.error008(!f?"source":"target",{id:a.id,sourceHandle:a.sourceHandle,targetHandle:a.targetHandle})),null;let h=f?.position||o.Bottom,i=g?.position||o.Top,k=a_(b,f,h),l=a_(c,g,i);return{sourceX:k.x,sourceY:k.y,targetX:l.x,targetY:l.y,sourcePosition:h,targetPosition:i}}function a$(a){if(!a)return null;let b=[],c=[];for(let d of a)d.width=d.width??1,d.height=d.height??1,"source"===d.type?b.push(d):"target"===d.type&&c.push(d);return{source:b,target:c}}function a_(a,b,c=o.Left,d=!1){let e=(b?.x??0)+a.internals.positionAbsolute.x,f=(b?.y??0)+a.internals.positionAbsolute.y,{width:g,height:h}=b??aw(a);if(d)return{x:e+g/2,y:f+h/2};switch(b?.position??c){case o.Top:return{x:e+g/2,y:f};case o.Right:return{x:e+g,y:f+h/2};case o.Bottom:return{x:e+g/2,y:f+h};case o.Left:return{x:e,y:f+h/2}}}function a0(a,b){return a&&(b?a.find(a=>a.id===b):a[0])||null}function a1(a,b){if(!a)return"";if("string"==typeof a)return a;let c=b?`${b}__`:"";return`${c}${Object.keys(a).sort().map(b=>`${b}=${a[b]}`).join("&")}`}function a2(a,{id:b,defaultColor:c,defaultMarkerStart:d,defaultMarkerEnd:e}){let f=new Set;return a.reduce((a,g)=>([g.markerStart||d,g.markerEnd||e].forEach(d=>{if(d&&"object"==typeof d){let e=a1(d,b);f.has(e)||(a.push({id:e,color:d.color||c,...d}),f.add(e))}}),a),[]).sort((a,b)=>a.id.localeCompare(b.id))}let a3={left:0,center:50,right:100},a4={top:0,center:50,bottom:100},a5={nodeOrigin:[0,0],nodeExtent:M,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},a6={...a5,checkEquality:!0};function a7(a,b){let c={...a};for(let a in b)void 0!==b[a]&&(c[a]=b[a]);return c}function a8(a,b,c){let d=a7(a5,c);for(let c of a.values())if(c.parentId)bb(c,a,b,d);else{let a=aa(U(c,d.nodeOrigin),av(c.extent)?c.extent:d.nodeExtent,aw(c));c.internals.positionAbsolute=a}}function a9(a){return"manual"===a}function ba(a,b,c,d={}){let e=a7(a6,d),f={i:0},g=new Map(b),h=e?.elevateNodesOnSelect&&!a9(e.zIndexMode)?1e3:0,i=a.length>0,j=!1;for(let k of(b.clear(),c.clear(),a)){let a=g.get(k.id);if(e.checkEquality&&k===a?.internals.userNode)b.set(k.id,a);else{let c=aa(U(k,e.nodeOrigin),av(k.extent)?k.extent:e.nodeExtent,aw(k));a={...e.defaults,...k,measured:{width:k.measured?.width,height:k.measured?.height},internals:{positionAbsolute:c,handleBounds:function(a,b){if(!a.handles)return a.measured?b?.internals.handleBounds:void 0;let c=[],d=[];for(let b of a.handles){let e={id:b.id,width:b.width??1,height:b.height??1,nodeId:a.id,x:b.x,y:b.y,position:b.position,type:b.type};"source"===b.type?c.push(e):"target"===b.type&&d.push(e)}return{source:c,target:d}}(k,a),z:bc(k,h,e.zIndexMode),userNode:k}},b.set(k.id,a)}void 0!==a.measured&&void 0!==a.measured.width&&void 0!==a.measured.height||a.hidden||(i=!1),k.parentId&&bb(a,b,c,d,f),j||=k.selected??!1}return{nodesInitialized:i,hasSelectedNodes:j}}function bb(a,b,c,d,e){let{elevateNodesOnSelect:f,nodeOrigin:g,nodeExtent:h,zIndexMode:i}=a7(a5,d),j=a.parentId,k=b.get(j);if(!k)return void console.warn(`Parent node ${j} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);!function(a,b){if(!a.parentId)return;let c=b.get(a.parentId);c?c.set(a.id,a):b.set(a.parentId,new Map([[a.id,a]]))}(a,c),e&&!k.parentId&&void 0===k.internals.rootParentIndex&&"auto"===i&&(k.internals.rootParentIndex=++e.i,k.internals.z=k.internals.z+10*e.i),e&&void 0!==k.internals.rootParentIndex&&(e.i=k.internals.rootParentIndex);let{x:l,y:m,z:n}=function(a,b,c,d,e,f){let{x:g,y:h}=b.internals.positionAbsolute,i=aw(a),j=U(a,c),k=av(a.extent)?aa(j,a.extent,i):j,l=aa({x:g+k.x,y:h+k.y},d,i);"parent"===a.extent&&(l=ab(l,i,b));let m=bc(a,e,f),n=b.internals.z??0;return{x:l.x,y:l.y,z:n>=m?n+1:m}}(a,k,g,h,f&&!a9(i)?1e3:0,i),{positionAbsolute:o}=a.internals,p=l!==o.x||m!==o.y;(p||n!==a.internals.z)&&b.set(a.id,{...a,internals:{...a.internals,positionAbsolute:p?{x:l,y:m}:o,z:n}})}function bc(a,b,c){let d=an(a.zIndex)?a.zIndex:0;return a9(c)?d:d+(a.selected?b:0)}function bd(a,b,c,d=[0,0]){let e=[],f=new Map;for(let c of a){let a=b.get(c.parentId);if(!a)continue;let d=aj(f.get(c.parentId)?.expandedRect??ah(a),c.rect);f.set(c.parentId,{expandedRect:d,parent:a})}return f.size>0&&f.forEach(({expandedRect:b,parent:f},g)=>{let h=f.internals.positionAbsolute,i=aw(f),j=f.origin??d,k=b.x<h.x?Math.round(Math.abs(h.x-b.x)):0,l=b.y<h.y?Math.round(Math.abs(h.y-b.y)):0,m=Math.max(i.width,Math.round(b.width)),n=Math.max(i.height,Math.round(b.height)),o=(m-i.width)*j[0],p=(n-i.height)*j[1];(k>0||l>0||o||p)&&(e.push({id:g,type:"position",position:{x:f.position.x-k+o,y:f.position.y-l+p}}),c.get(g)?.forEach(b=>{a.some(a=>a.id===b.id)||e.push({id:b.id,type:"position",position:{x:b.position.x+k,y:b.position.y+l}})})),(i.width<b.width||i.height<b.height||k||l)&&e.push({id:g,type:"dimensions",setAttributes:!0,dimensions:{width:m+(k?j[0]*k-o:0),height:n+(l?j[1]*l-p:0)}})}),e}function be(a,b,c,d,e,f,g){let h=d?.querySelector(".xyflow__viewport"),i=!1;if(!h)return{changes:[],updatedInternals:i};let j=[],k=window.getComputedStyle(h),{m22:l}=new window.DOMMatrixReadOnly(k.transform),m=[];for(let d of a.values()){let a=b.get(d.id);if(!a)continue;if(a.hidden){b.set(a.id,{...a,internals:{...a.internals,handleBounds:void 0}}),i=!0;continue}let h=aE(d.nodeElement),k=a.measured.width!==h.width||a.measured.height!==h.height;if(h.width&&h.height&&(k||!a.internals.handleBounds||d.force)){let n=d.nodeElement.getBoundingClientRect(),o=av(a.extent)?a.extent:f,{positionAbsolute:p}=a.internals;if(a.parentId&&"parent"===a.extent){let c=b.get(a.parentId);c&&(p=ab(p,h,c))}else o&&(p=aa(p,o,h));let q={...a,measured:h,internals:{...a.internals,positionAbsolute:p,handleBounds:{source:aK("source",d.nodeElement,n,l,a.id),target:aK("target",d.nodeElement,n,l,a.id)}}};b.set(a.id,q),a.parentId&&bb(q,b,c,{nodeOrigin:e,zIndexMode:g}),i=!0,k&&(j.push({id:a.id,type:"dimensions",dimensions:h}),a.expandParent&&a.parentId&&m.push({id:a.id,parentId:a.parentId,rect:ah(q,e)}))}}if(m.length>0){let a=bd(m,b,c,e);j.push(...a)}return{changes:j,updatedInternals:i}}async function bf({delta:a,panZoom:b,transform:c,translateExtent:d,width:e,height:f}){if(!b||!a.x&&!a.y)return!1;let g=await b.setViewportConstrained({x:c[0]+a.x,y:c[1]+a.y,zoom:c[2]},[[0,0],[e,f]],d);return!!g&&(g.x!==c[0]||g.y!==c[1]||g.k!==c[2])}function bg(a,b,c,d,e,f){let g=e,h=d.get(g)||new Map;d.set(g,h.set(c,b)),g=`${e}-${a}`;let i=d.get(g)||new Map;if(d.set(g,i.set(c,b)),f){g=`${e}-${a}-${f}`;let h=d.get(g)||new Map;d.set(g,h.set(c,b))}}function bh(a,b,c){for(let d of(a.clear(),b.clear(),c)){let{source:c,target:e,sourceHandle:f=null,targetHandle:g=null}=d,h={edgeId:d.id,source:c,target:e,sourceHandle:f,targetHandle:g},i=`${c}-${f}--${e}-${g}`;bg("source",h,`${e}-${g}--${c}-${f}`,a,c,f),bg("target",h,i,a,e,g),b.set(d.id,d)}}function bi(a,b,c){let d=a;do{if(d?.matches?.(b))return!0;if(d===c)break;d=d?.parentElement}while(d)return!1}function bj({nodeId:a,dragItems:b,nodeLookup:c,dragging:d=!0}){let e=[];for(let[a,f]of b){let b=c.get(a)?.internals.userNode;b&&e.push({...b,position:f.position,dragging:d})}if(!a)return[e[0],e];let f=c.get(a)?.internals.userNode;return[f?{...f,position:b.get(a)?.position||f.position,dragging:d}:e[0],e]}function bk({onNodeMouseDown:a,getStoreItems:b,onDragStart:c,onDrag:d,onDragStop:e}){let f={x:null,y:null},g=0,h=new Map,i=!1,j={x:0,y:0},k=null,l=!1,m=null,n=!1,o=!1,p=null;return{update:function({noDragClassName:q,handleSelector:r,domNode:s,isSelectable:t,nodeId:u,nodeClickDistance:w=0}){function x({x:a,y:c}){let{nodeLookup:e,nodeExtent:g,snapGrid:i,snapToGrid:j,nodeOrigin:k,onNodeDrag:l,onSelectionDrag:m,onError:n,updateNodePositions:q}=b();f={x:a,y:c};let r=!1,s=h.size>1,t=s&&g?af(W(h)):null,v=s&&j?function({dragItems:a,snapGrid:b,x:c,y:d}){let e=a.values().next().value;if(!e)return null;let f={x:c-e.distance.x,y:d-e.distance.y},g=ap(f,b);return{x:g.x-f.x,y:g.y-f.y}}({dragItems:h,snapGrid:i,x:a,y:c}):null;for(let[b,d]of h){if(!e.has(b))continue;let f={x:a-d.distance.x,y:c-d.distance.y};j&&(f=v?{x:Math.round(f.x+v.x),y:Math.round(f.y+v.y)}:ap(f,i));let h=null;if(s&&g&&!d.extent&&t){let{positionAbsolute:a}=d.internals,b=a.x-t.x+g[0][0],c=a.x+d.measured.width-t.x2+g[1][0];h=[[b,a.y-t.y+g[0][1]],[c,a.y+d.measured.height-t.y2+g[1][1]]]}let{position:l,positionAbsolute:m}=Z({nodeId:b,nextPosition:f,nodeLookup:e,nodeExtent:h||g,nodeOrigin:k,onError:n});r=r||d.position.x!==l.x||d.position.y!==l.y,d.position=l,d.internals.positionAbsolute=m}if(o=o||r,r&&(q(h,!0),p&&(d||l||!u&&m))){let[a,b]=bj({nodeId:u,dragItems:h,nodeLookup:e});d?.(p,h,a,b),l?.(p,a,b),u||m?.(p,b)}}async function y(){if(!k)return;let{transform:a,panBy:c,autoPanSpeed:d,autoPanOnNodeDrag:e}=b();if(!e){i=!1,cancelAnimationFrame(g);return}let[h,l]=ad(j,k,d);(0!==h||0!==l)&&(f.x=(f.x??0)-h/a[2],f.y=(f.y??0)-l/a[2],await c({x:h,y:l})&&x(f)),g=requestAnimationFrame(y)}function z(d){let{nodeLookup:e,multiSelectionActive:g,nodesDraggable:i,transform:j,snapGrid:m,snapToGrid:n,selectNodesOnDrag:o,onNodeDragStart:p,onSelectionDragStart:q,unselectNodesAndEdges:r}=b();l=!0,o&&t||g||!u||e.get(u)?.selected||r(),t&&o&&u&&a?.(u);let s=aD(d.sourceEvent,{transform:j,snapGrid:m,snapToGrid:n,containerBounds:k});if(f=s,(h=function(a,b,c,d){let e=new Map;for(let[f,g]of a)if((g.selected||g.id===d)&&(!g.parentId||!function a(b,c){if(!b.parentId)return!1;let d=c.get(b.parentId);return!!d&&(!!d.selected||a(d,c))}(g,a))&&(g.draggable||b&&void 0===g.draggable)){let b=a.get(f);b&&e.set(f,{id:f,position:b.position||{x:0,y:0},distance:{x:c.x-b.internals.positionAbsolute.x,y:c.y-b.internals.positionAbsolute.y},extent:b.extent,parentId:b.parentId,origin:b.origin,expandParent:b.expandParent,internals:{positionAbsolute:b.internals.positionAbsolute||{x:0,y:0}},measured:{width:b.measured.width??0,height:b.measured.height??0}})}return e}(e,i,s,u)).size>0&&(c||p||!u&&q)){let[a,b]=bj({nodeId:u,dragItems:h,nodeLookup:e});c?.(d.sourceEvent,h,a,b),p?.(d.sourceEvent,a,b),u||q?.(d.sourceEvent,b)}}m=(0,v.select)(s);let A=F().clickDistance(w).on("start",a=>{let{domNode:c,nodeDragThreshold:d,transform:e,snapGrid:g,snapToGrid:h}=b();k=c?.getBoundingClientRect()||null,n=!1,o=!1,p=a.sourceEvent,0===d&&z(a),f=aD(a.sourceEvent,{transform:e,snapGrid:g,snapToGrid:h,containerBounds:k}),j=aJ(a.sourceEvent,k)}).on("drag",a=>{let{autoPanOnNodeDrag:c,transform:d,snapGrid:e,snapToGrid:g,nodeDragThreshold:m,nodeLookup:o}=b(),q=aD(a.sourceEvent,{transform:d,snapGrid:e,snapToGrid:g,containerBounds:k});if(p=a.sourceEvent,("touchmove"===a.sourceEvent.type&&a.sourceEvent.touches.length>1||u&&!o.has(u))&&(n=!0),!n){if(!i&&c&&l&&(i=!0,y()),!l){let b=aJ(a.sourceEvent,k),c=b.x-j.x,d=b.y-j.y;Math.sqrt(c*c+d*d)>m&&z(a)}(f.x!==q.xSnapped||f.y!==q.ySnapped)&&h&&l&&(j=aJ(a.sourceEvent,k),x(q))}}).on("end",a=>{if(!l||n){n&&h.size>0&&b().updateNodePositions(h,!1);return}if(i=!1,l=!1,cancelAnimationFrame(g),h.size>0){let{nodeLookup:c,updateNodePositions:d,onNodeDragStop:f,onSelectionDragStop:g}=b();if(o&&(d(h,!1),o=!1),e||f||!u&&g){let[b,d]=bj({nodeId:u,dragItems:h,nodeLookup:c,dragging:!1});e?.(a.sourceEvent,h,b,d),f?.(a.sourceEvent,b,d),u||g?.(a.sourceEvent,d)}}}).filter(a=>{let b=a.target;return!a.button&&(!q||!bi(b,`.${q}`,s))&&(!r||bi(b,r,s))});m.call(A)},destroy:function(){m?.on(".drag",null)}}}function bl(a,b,c,d,e,f=!1){let g=d.get(a);if(!g)return null;let h="strict"===e?g.internals.handleBounds?.[b]:[...g.internals.handleBounds?.source??[],...g.internals.handleBounds?.target??[]],i=(c?h?.find(a=>a.id===c):h?.[0])??null;return i&&f?{...i,...a_(g,i,i.position,!0)}:i}function bm(a,b){return a?a:b?.classList.contains("target")?"target":b?.classList.contains("source")?"source":null}let bn=()=>!0;function bo(a,{handle:b,connectionMode:c,fromNodeId:d,fromHandleId:e,fromType:f,doc:g,lib:h,flowId:i,isValidConnection:k=bn,nodeLookup:l}){let m="target"===f,n=b?g.querySelector(`.${h}-flow__handle[data-id="${i}-${b?.nodeId}-${b?.id}-${b?.type}"]`):null,{x:o,y:p}=aJ(a),q=g.elementFromPoint(o,p),r=q?.classList.contains(`${h}-flow__handle`)?q:n,s={handleDomNode:r,isValid:!1,connection:null,toHandle:null};if(r){let a=bm(void 0,r),b=r.getAttribute("data-nodeid"),f=r.getAttribute("data-handleid"),g=r.classList.contains("connectable"),h=r.classList.contains("connectableend");if(!b||!a)return s;let i={source:m?b:d,sourceHandle:m?f:e,target:m?d:b,targetHandle:m?e:f};s.connection=i,s.isValid=g&&h&&(c===j.Strict?m&&"source"===a||!m&&"target"===a:b!==d||f!==e)&&k(i),s.toHandle=bl(b,a,f,l,c,!0)}return s}let bp={onPointerDown:function(a,{connectionMode:b,connectionRadius:c,handleId:d,nodeId:e,edgeUpdaterType:f,isTarget:g,domNode:h,nodeLookup:i,lib:j,autoPanOnConnect:k,flowId:l,panBy:m,cancelConnection:n,onConnectStart:p,onConnect:q,onConnectEnd:r,isValidConnection:s=bn,onReconnectEnd:t,updateConnection:u,getTransform:v,getFromHandle:w,autoPanSpeed:x,dragThreshold:y=1,handleDomNode:z}){let A,B=aF(a.target),C=0,{x:D,y:E}=aJ(a),F=bm(f,z),G=h?.getBoundingClientRect(),H=!1;if(!G||!F)return;let I=bl(e,F,d,i,b);if(!I)return;let J=aJ(a,G),K=!1,L=null,M=!1,N=null,O={...I,nodeId:e,type:F,position:I.position},P=i.get(e),R={inProgress:!0,isValid:null,from:a_(P,O,o.Left,!0),fromHandle:O,fromPosition:O.position,fromNode:P,to:J,toHandle:null,toPosition:Q[O.position],toNode:null,pointer:J};function S(){H=!0,u(R),p?.(a,{nodeId:e,handleId:d,handleType:F})}function T(a){var f,h;let n;if(!H){let{x:b,y:c}=aJ(a),d=b-D,e=c-E;if(!(d*d+e*e>y*y))return;S()}if(!w()||!O)return void U(a);let p=v();A=function(a,b,c,d){let e=[],f=1/0;for(let g of function(a,b,c){let d=[],e={x:a.x-c,y:a.y-c,width:2*c,height:2*c};for(let a of b.values())al(e,ah(a))>0&&d.push(a);return d}(a,c,b+250))for(let c of[...g.internals.handleBounds?.source??[],...g.internals.handleBounds?.target??[]]){if(d.nodeId===c.nodeId&&d.type===c.type&&d.id===c.id)continue;let{x:h,y:i}=a_(g,c,c.position,!0),j=Math.sqrt(Math.pow(h-a.x,2)+Math.pow(i-a.y,2));j>b||(j<f?(e=[{...c,x:h,y:i}],f=j):j===f&&e.push({...c,x:h,y:i}))}if(!e.length)return null;if(e.length>1){let a="source"===d.type?"target":"source";return e.find(b=>b.type===a)??e[0]}return e[0]}(aq(J=aJ(a,G),p,!1,[1,1]),c,i,O),K||(!function a(){if(!k||!G)return;let[b,c]=ad(J,G,x);m({x:b,y:c}),C=requestAnimationFrame(a)}(),K=!0);let q=bo(a,{handle:A,connectionMode:b,fromNodeId:e,fromHandleId:d,fromType:g?"target":"source",isValidConnection:s,doc:B,lib:j,flowId:l,nodeLookup:i});N=q.handleDomNode,L=q.connection,f=!!A,h=q.isValid,n=null,h?n=!0:f&&!h&&(n=!1),M=n;let r=i.get(e),t=r?a_(r,O,o.Left,!0):R.from,z={...R,from:t,isValid:M,to:q.toHandle&&M?ar({x:q.toHandle.x,y:q.toHandle.y},p):J,toHandle:q.toHandle,toPosition:M&&q.toHandle?q.toHandle.position:Q[O.position],toNode:q.toHandle?i.get(q.toHandle.nodeId):null,pointer:J};u(z),R=z}function U(a){if(!("touches"in a)||!(a.touches.length>0)){if(H){(A||N)&&L&&M&&q?.(L);let{inProgress:b,...c}=R,d={...c,toPosition:R.toHandle?R.toPosition:null};r?.(a,d),f&&t?.(a,d)}n(),cancelAnimationFrame(C),K=!1,M=!1,L=null,N=null,B.removeEventListener("mousemove",T),B.removeEventListener("mouseup",U),B.removeEventListener("touchmove",T),B.removeEventListener("touchend",U)}}0===y&&S(),B.addEventListener("mousemove",T),B.addEventListener("mouseup",U),B.addEventListener("touchmove",T),B.addEventListener("touchend",U)},isValid:bo};function bq({domNode:a,panZoom:b,getTransform:c,getViewScale:d}){let e=(0,v.select)(a);return{update:function({translateExtent:a,width:f,height:g,zoomStep:h=1,pannable:i=!0,zoomable:j=!0,inversePan:k=!1}){let l=[0,0],m=(0,G.default)().on("start",a=>{("mousedown"===a.sourceEvent.type||"touchstart"===a.sourceEvent.type)&&(l=[a.sourceEvent.clientX??a.sourceEvent.touches[0].clientX,a.sourceEvent.clientY??a.sourceEvent.touches[0].clientY])}).on("zoom",i?e=>{let h=c();if("mousemove"!==e.sourceEvent.type&&"touchmove"!==e.sourceEvent.type||!b)return;let i=[e.sourceEvent.clientX??e.sourceEvent.touches[0].clientX,e.sourceEvent.clientY??e.sourceEvent.touches[0].clientY],j=[i[0]-l[0],i[1]-l[1]];l=i;let m=d()*Math.max(h[2],Math.log(h[2]))*(k?-1:1),n={x:h[0]-j[0]*m,y:h[1]-j[1]*m};b.setViewportConstrained({x:n.x,y:n.y,zoom:h[2]},[[0,0],[f,g]],a)}:null).on("zoom.wheel",j?a=>{if("wheel"!==a.sourceEvent.type||!b)return;let d=c(),e=a.sourceEvent.ctrlKey&&au()?10:1,f=-a.sourceEvent.deltaY*(1===a.sourceEvent.deltaMode?.05:a.sourceEvent.deltaMode?1:.002)*h,g=d[2]*Math.pow(2,f*e);b.scaleTo(g)}:null);e.call(m,{})},destroy:function(){e.on("zoom",null)},pointer:w.pointer}}let br=a=>({x:a.x,y:a.y,zoom:a.k}),bs=({x:a,y:b,zoom:c})=>H.identity.translate(a,b).scale(c),bt=(a,b)=>a.target.closest(`.${b}`),bu=(a,b)=>2===b&&Array.isArray(a)&&a.includes(2),bv=a=>((a*=2)<=1?a*a*a:(a-=2)*a*a+2)/2,bw=(a,b=0,c=bv,d=()=>{})=>{let e="number"==typeof b&&b>0;return e||d(),e?a.transition().duration(b).ease(c).on("end",d):a},bx=a=>{let b=a.ctrlKey&&au()?10:1;return-a.deltaY*(1===a.deltaMode?.05:a.deltaMode?1:.002)*b};function by({domNode:a,minZoom:b,maxZoom:c,translateExtent:d,viewport:e,onPanZoom:f,onPanZoomStart:g,onPanZoomEnd:h,onDraggingChange:i}){let j={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},l=a.getBoundingClientRect(),m=[[0,0],[l.width,l.height]],n="u">typeof ResizeObserver?new ResizeObserver(a=>{let b=a[0];b&&(m=[[0,0],[b.contentRect.width,b.contentRect.height]])}):null;n?.observe(a);let o=(0,G.default)().extent(()=>m).scaleExtent([b,c]).translateExtent(d),p=(0,v.select)(a).call(o);u({x:e.x,y:e.y,zoom:_(e.zoom,b,c)},[[0,0],[l.width,l.height]],d);let q=p.on("wheel.zoom"),r=p.on("dblclick.zoom");async function s(a,b){return!!p&&new Promise(c=>{o?.interpolate(b?.interpolate==="linear"?K.interpolate:J.interpolateZoom).transform(bw(p,b?.duration,b?.ease,()=>c(!0)),a)})}function t(){o.on("zoom",null)}async function u(a,b,c){let d=bs(a),e=o?.constrain()(d,b,c);return e&&await s(e),e}return o.wheelDelta(bx),{update:function({noWheelClassName:a,noPanClassName:b,onPaneContextMenu:c,userSelectionActive:d,panOnScroll:e,panOnDrag:l,panOnScrollMode:m,panOnScrollSpeed:n,preventScrolling:s,zoomOnPinch:u,zoomOnScroll:v,zoomOnDoubleClick:x,panActivationKeyPressed:y=!1,zoomActivationKeyPressed:z,lib:A,onTransformChange:B,connectionInProgress:C,paneClickDistance:D,selectionOnDrag:E}){d&&!j.isZoomingOrPanning&&t();let F=e&&!z&&!d;o.clickDistance(E?1/0:!an(D)||D<0?0:D);let G=F?function({zoomPanValues:a,noWheelClassName:b,d3Selection:c,d3Zoom:d,panOnScrollMode:e,panOnScrollSpeed:f,zoomOnPinch:g,onPanZoomStart:h,onPanZoom:i,onPanZoomEnd:j}){return l=>{if(bt(l,b))return l.ctrlKey&&l.preventDefault(),!1;l.preventDefault(),l.stopImmediatePropagation();let m=c.property("__zoom").k||1;if(l.ctrlKey&&g){let a=(0,w.pointer)(l),b=m*Math.pow(2,bx(l));d.scaleTo(c,b,a,l);return}let n=1===l.deltaMode?20:1,o=e===k.Vertical?0:l.deltaX*n,p=e===k.Horizontal?0:l.deltaY*n;!au()&&l.shiftKey&&e!==k.Vertical&&(o=l.deltaY*n,p=0),d.translateBy(c,-(o/m)*f,-(p/m)*f,{internal:!0});let q=br(c.property("__zoom"));clearTimeout(a.panScrollTimeout),a.isPanScrolling?i?.(l,q):(a.isPanScrolling=!0,h?.(l,q)),a.panScrollTimeout=setTimeout(()=>{j?.(l,q),a.isPanScrolling=!1},150)}}({zoomPanValues:j,noWheelClassName:a,d3Selection:p,d3Zoom:o,panOnScrollMode:m,panOnScrollSpeed:n,zoomOnPinch:u,onPanZoomStart:g,onPanZoom:f,onPanZoomEnd:h}):function({noWheelClassName:a,preventScrolling:b,d3ZoomHandler:c}){return function(d,e){let f="wheel"===d.type,g=!b&&f&&!d.ctrlKey,h=bt(d,a);if(d.ctrlKey&&f&&h&&d.preventDefault(),g||h)return null;d.preventDefault(),c.call(this,d,e)}}({noWheelClassName:a,preventScrolling:s,d3ZoomHandler:q});p.on("wheel.zoom",G,{passive:!1});let H=function({zoomPanValues:a,onDraggingChange:b,onPanZoomStart:c}){return d=>{if(d.sourceEvent?.internal)return;let e=br(d.transform);a.mouseButton=d.sourceEvent?.button||0,a.isZoomingOrPanning=!0,a.prevViewport=e,d.sourceEvent?.type==="mousedown"&&b(!0),c&&c?.(d.sourceEvent,e)}}({zoomPanValues:j,onDraggingChange:i,onPanZoomStart:g});o.on("start",H);let I=function({zoomPanValues:a,panOnDrag:b,onPaneContextMenu:c,onTransformChange:d,onPanZoom:e}){return f=>{a.usedRightMouseButton=!!(c&&bu(b,a.mouseButton??0)),f.sourceEvent?.sync||d([f.transform.x,f.transform.y,f.transform.k]),e&&!f.sourceEvent?.internal&&e?.(f.sourceEvent,br(f.transform))}}({zoomPanValues:j,panOnDrag:l,onPaneContextMenu:!!c,onPanZoom:f,onTransformChange:B});o.on("zoom",I);let J=function({zoomPanValues:a,panOnDrag:b,panOnScroll:c,onDraggingChange:d,onPanZoomEnd:e,onPaneContextMenu:f}){return g=>{if(!g.sourceEvent?.internal&&(a.isZoomingOrPanning=!1,f&&bu(b,a.mouseButton??0)&&!a.usedRightMouseButton&&g.sourceEvent&&f(g.sourceEvent),a.usedRightMouseButton=!1,d(!1),e)){let b=br(g.transform);a.prevViewport=b,clearTimeout(a.timerId),a.timerId=setTimeout(()=>{e?.(g.sourceEvent,b)},150*!!c)}}}({zoomPanValues:j,panOnDrag:l,panOnScroll:e,onPaneContextMenu:c,onPanZoomEnd:h,onDraggingChange:i});o.on("end",J);let K=function({panActivationKeyPressed:a,zoomActivationKeyPressed:b,zoomOnScroll:c,zoomOnPinch:d,panOnDrag:e,panOnScroll:f,zoomOnDoubleClick:g,userSelectionActive:h,noWheelClassName:i,noPanClassName:j,lib:k,connectionInProgress:l}){return m=>{let n=b||c,o=d&&m.ctrlKey,p="wheel"===m.type;if(1===m.button&&"mousedown"===m.type&&(bt(m,`${k}-flow__node`)||bt(m,`${k}-flow__edge`)||bt(m,`${k}-flow__selection`)||bt(m,`${k}-flow__nodesselection`)))return!0;if(!e&&!n&&!f&&!g&&!d||h||l&&!p||bt(m,i)&&p||bt(m,j)&&(!p||f&&p&&!b)||!d&&m.ctrlKey&&p)return!1;if(!d&&"touchstart"===m.type&&m.touches?.length>1)return m.preventDefault(),!1;if(!n&&!f&&!o&&p||!e&&("mousedown"===m.type||"touchstart"===m.type)||Array.isArray(e)&&!e.includes(m.button)&&"mousedown"===m.type)return!1;let q=Array.isArray(e)&&e.includes(m.button)||!m.button||m.button<=1;return(!m.ctrlKey||p||a)&&q}}({panActivationKeyPressed:y,zoomActivationKeyPressed:z,panOnDrag:l,zoomOnScroll:v,panOnScroll:e,zoomOnDoubleClick:x,zoomOnPinch:u,userSelectionActive:d,noPanClassName:b,noWheelClassName:a,lib:A,connectionInProgress:C});o.filter(K),x?p.on("dblclick.zoom",r):p.on("dblclick.zoom",null)},destroy:t,setViewport:async function a(a,b){let c=bs(a);return await s(c,b),c},setViewportConstrained:u,getViewport:function(){let a=p?(0,I.default)(p.node()):{x:0,y:0,k:1};return{x:a.x,y:a.y,zoom:a.k}},scaleTo:async function a(a,b){return!!p&&new Promise(c=>{o?.interpolate(b?.interpolate==="linear"?K.interpolate:J.interpolateZoom).scaleTo(bw(p,b?.duration,b?.ease,()=>c(!0)),a)})},scaleBy:async function a(a,b){return!!p&&new Promise(c=>{o?.interpolate(b?.interpolate==="linear"?K.interpolate:J.interpolateZoom).scaleBy(bw(p,b?.duration,b?.ease,()=>c(!0)),a)})},setScaleExtent:function(a){o?.scaleExtent(a)},setTranslateExtent:function(a){o?.translateExtent(a)},syncViewport:function(a){if(p){let b=bs(a),c=p.property("__zoom");(c.k!==a.zoom||c.x!==a.x||c.y!==a.y)&&o?.transform(p,b,null,{sync:!0})}},setClickDistance:function(a){let b=!an(a)||a<0?0:a;o?.clickDistance(b)}}}function bz(a){let b=a.includes("right")||a.includes("left"),c=a.includes("bottom")||a.includes("top");return{isHorizontal:b,isVertical:c,affectsX:a.includes("left"),affectsY:a.includes("top")}}function bA(a,b){return Math.max(0,b-a)}function bB(a,b){return Math.max(0,a-b)}function bC(a,b,c){return Math.max(0,b-a,a-c)}(h=p||(p={})).Line="line",h.Handle="handle";let bD={width:0,height:0,x:0,y:0},bE={...bD,pointerX:0,pointerY:0,aspectRatio:1};function bF({domNode:a,nodeId:b,getStoreItems:c,onChange:d,onEnd:e}){let f=(0,v.select)(a),g={controlDirection:bz("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};return{update:function({controlPosition:a,boundaries:h,keepAspectRatio:i,resizeDirection:j,onResizeStart:k,onResize:l,onResizeEnd:m,shouldResize:n}){let o,p,q,r,s={...bD},t={...bE};g={boundaries:h,resizeDirection:j,keepAspectRatio:i,controlDirection:bz(a)};let u=null,v=[],w=F().on("start",a=>{let{nodeLookup:d,transform:e,snapGrid:f,snapToGrid:g,nodeOrigin:h,paneDomNode:i}=c();if(!(o=d.get(b)))return;u=i?.getBoundingClientRect()??null;let{xSnapped:j,ySnapped:l}=aD(a.sourceEvent,{transform:e,snapGrid:f,snapToGrid:g,containerBounds:u});for(let[a,c]of(t={...s={width:o.measured.width??0,height:o.measured.height??0,x:o.position.x??0,y:o.position.y??0},pointerX:j,pointerY:l,aspectRatio:s.width/s.height},p=void 0,q=av(o.extent)?o.extent:void 0,o.parentId&&("parent"===o.extent||o.expandParent)&&(p=d.get(o.parentId)),p&&"parent"===o.extent&&(q=[[0,0],[p.measured.width,p.measured.height]]),v=[],r=void 0,d))if(c.parentId===b&&(v.push({id:a,position:{...c.position},extent:c.extent}),"parent"===c.extent||c.expandParent)){let a=function(a,b,c){let d=b.position.x+a.position.x,e=b.position.y+a.position.y,f=a.measured.width??0,g=a.measured.height??0,h=c[0]*f,i=c[1]*g;return[[d-h,e-i],[d+f-h,e+g-i]]}(c,o,c.origin??h);r=r?[[Math.min(a[0][0],r[0][0]),Math.min(a[0][1],r[0][1])],[Math.max(a[1][0],r[1][0]),Math.max(a[1][1],r[1][1])]]:a}k?.(a,{...s})}).on("drag",a=>{let{transform:b,snapGrid:e,snapToGrid:f,nodeOrigin:h}=c(),i=aD(a.sourceEvent,{transform:b,snapGrid:e,snapToGrid:f,containerBounds:u}),j=[];if(!o)return;let{x:k,y:m,width:w,height:x}=s,y={},z=o.origin??h,{width:A,height:B,x:C,y:D}=function(a,b,c,d,e,f,g,h){var i,j,k,l;let{affectsX:m,affectsY:n}=b,{isHorizontal:o,isVertical:p}=b,q=o&&p,{xSnapped:r,ySnapped:s}=c,{minWidth:t,maxWidth:u,minHeight:v,maxHeight:w}=d,{x:x,y:y,width:z,height:A,aspectRatio:B}=a,C=Math.floor(o?r-a.pointerX:0),D=Math.floor(p?s-a.pointerY:0),E=z+(m?-C:C),F=A+(n?-D:D),G=-f[0]*z,H=-f[1]*A,I=bC(E,t,u),J=bC(F,v,w);if(g){let a=0,b=0;m&&C<0?a=bA(x+C+G,g[0][0]):!m&&C>0&&(a=bB(x+E+G,g[1][0])),n&&D<0?b=bA(y+D+H,g[0][1]):!n&&D>0&&(b=bB(y+F+H,g[1][1])),I=Math.max(I,a),J=Math.max(J,b)}if(h){let a=0,b=0;m&&C>0?a=bB(x+C,h[0][0]):!m&&C<0&&(a=bA(x+E,h[1][0])),n&&D>0?b=bB(y+D,h[0][1]):!n&&D<0&&(b=bA(y+F,h[1][1])),I=Math.max(I,a),J=Math.max(J,b)}if(e){if(o){(I=Math.max(I,bC(E/B,v,w)*B),g)&&(I=Math.max(I,(m||n)&&(!m||n||!q)?bA(y+H+(m?C:-C)/B,g[0][1])*B:bB(y+H+E/B,g[1][1])*B));h&&(I=Math.max(I,(m||n)&&(!m||n||!q)?bB(y+(m?C:-C)/B,h[0][1])*B:bA(y+E/B,h[1][1])*B))}if(p){(J=Math.max(J,bC(F*B,t,u)/B),g)&&(J=Math.max(J,(m||n)&&(!n||m||!q)?bA(x+(n?D:-D)*B+G,g[0][0])/B:bB(x+F*B+G,g[1][0])/B));h&&(J=Math.max(J,(m||n)&&(!n||m||!q)?bB(x+(n?D:-D)*B,h[0][0])/B:bA(x+F*B,h[1][0])/B))}}D+=D<0?J:-J,C+=C<0?I:-I,e&&(q?E>F*B?D=((i=m,j=n,i?!j:j)?-C:C)/B:C=((k=m,l=n,k?!l:l)?-D:D)*B:o?(D=C/B,n=m):(C=D*B,m=n));let K=m?x+C:x,L=n?y+D:y;return{width:z+(m?-C:C),height:A+(n?-D:D),x:f[0]*C*(m?-1:1)+K,y:f[1]*D*(n?-1:1)+L}}(t,g.controlDirection,i,g.boundaries,g.keepAspectRatio,z,q,r),E=A!==w,F=B!==x,G=C!==k&&E,H=D!==m&&F;if(!G&&!H&&!E&&!F)return;let I={prevValues:{...s},startX:t.x,startY:t.y,childNodes:v.map(a=>({...a,position:{...a.position}}))};if((G||H||1===z[0]||1===z[1])&&(y.x=G?C:s.x,y.y=H?D:s.y,s.x=y.x,s.y=y.y,v.length>0)){let a=C-k,b=D-m;for(let c of v)c.position={x:c.position.x-a+z[0]*(A-w),y:c.position.y-b+z[1]*(B-x)},j.push(c)}if((E||F)&&(y.width=E&&(!g.resizeDirection||"horizontal"===g.resizeDirection)?A:s.width,y.height=F&&(!g.resizeDirection||"vertical"===g.resizeDirection)?B:s.height,s.width=y.width,s.height=y.height),p&&o.expandParent){let a=z[0]*(y.width??0);y.x&&y.x<a&&(s.x=a,t.x=t.x-(y.x-a));let b=z[1]*(y.height??0);y.y&&y.y<b&&(s.y=b,t.y=t.y-(y.y-b))}let J=function({width:a,prevWidth:b,height:c,prevHeight:d,affectsX:e,affectsY:f}){let g=a-b,h=c-d,i=[g>0?1:g<0?-1:0,h>0?1:h<0?-1:0];return g&&e&&(i[0]=-1*i[0]),h&&f&&(i[1]=-1*i[1]),i}({width:s.width,prevWidth:w,height:s.height,prevHeight:x,affectsX:g.controlDirection.affectsX,affectsY:g.controlDirection.affectsY}),K={...s,direction:J};if(!1===n?.(a,K)){s=I.prevValues,t.x=I.startX,t.y=I.startY,v.forEach((a,b)=>{a.position=I.childNodes[b].position});return}l?.(a,K),d(y,j)}).on("end",a=>{m?.(a,{...s}),e?.({...s})});f.call(w)},destroy:function(){f.on(".drag",null)}}}a.s(["ConnectionLineType",0,m,"ConnectionMode",0,j,"MarkerType",0,n,"PanOnScrollMode",0,k,"Position",0,o,"ResizeControlVariant",0,p,"SelectionMode",0,l,"XYDrag",0,bk,"XYHandle",0,bp,"XYMinimap",0,bq,"XYPanZoom",0,by,"XYResizer",0,bF,"XY_RESIZER_HANDLE_POSITIONS",0,["top-left","top-right","bottom-left","bottom-right"],"XY_RESIZER_LINE_POSITIONS",0,["top","right","bottom","left"],"addEdge",0,aT,"adoptUserNodes",0,ba,"areConnectionMapsEqual",0,function(a,b){if(!a&&!b)return!0;if(!a||!b||a.size!==b.size)return!1;if(!a.size&&!b.size)return!0;for(let c of a.keys())if(!b.has(c))return!1;return!0},"areSetsEqual",0,az,"calcAutoPan",0,ad,"calculateNodePosition",0,Z,"createDevWarn",0,ao,"createMarkerIds",0,a2,"defaultAriaLabelConfig",0,O,"elementSelectionKeys",0,N,"errorMessages",0,L,"evaluateAbsolutePosition",0,ay,"fitViewport",0,Y,"getBezierEdgeCenter",0,aL,"getBezierPath",0,aO,"getBoundsOfRects",0,aj,"getConnectionStatus",0,aC,"getDimensions",0,aE,"getEdgePosition",0,aZ,"getEdgeToolbarTransform",0,function(a,b,c,d="center",e="center"){return`translate(${a}px, ${b}px) scale(${1/c}) translate(${-(a3[d]??50)}%, ${-(a4[e]??50)}%)`},"getElementsToRemove",0,$,"getElevatedEdgeZIndex",0,aQ,"getEventPosition",0,aJ,"getHandlePosition",0,a_,"getHostForElement",0,aF,"getInternalNodesBounds",0,W,"getMarkerId",0,a1,"getNodeDimensions",0,aw,"getNodeToolbarTransform",0,function(a,b,c,d,e){let f=.5;"start"===e?f=0:"end"===e&&(f=1);let g=[(a.x+a.width*f)*b.zoom+b.x,a.y*b.zoom+b.y-d],h=[-100*f,-100];switch(c){case o.Right:g=[(a.x+a.width)*b.zoom+b.x+d,(a.y+a.height*f)*b.zoom+b.y],h=[0,-100*f];break;case o.Bottom:g[1]=(a.y+a.height)*b.zoom+b.y+d,h[1]=0;break;case o.Left:g=[a.x*b.zoom+b.x-d,(a.y+a.height*f)*b.zoom+b.y],h=[-100,-100*f]}return`translate(${g[0]}px, ${g[1]}px) translate(${h[0]}%, ${h[1]}%)`},"getNodesBounds",0,V,"getNodesInside",0,X,"getOverlappingArea",0,al,"getSmoothStepPath",0,aX,"getStraightPath",0,aU,"getViewportForBounds",0,at,"handleConnectionChange",0,function(a,b,c){if(!c)return;let d=[];a.forEach((a,c)=>{b?.has(c)||d.push(a)}),d.length&&c(d)},"handleExpandParent",0,bd,"infiniteExtent",0,M,"initialConnection",0,P,"isEdgeBase",0,R,"isEdgeVisible",0,aR,"isInputDOMNode",0,aH,"isMacOs",0,au,"isMouseEvent",0,aI,"isNodeBase",0,S,"isNumeric",0,an,"isRectObject",0,am,"mergeAriaLabelConfig",0,aB,"nodeHasDimensions",0,ax,"nodeToRect",0,ah,"panBy",0,bf,"pointToRendererPoint",0,aq,"reconnectEdge",0,(a,b,c,d={shouldReplaceId:!0})=>{let{id:e,...f}=a;if(!b.source||!b.target)return d.onError?.("006",L.error006()),c;if(!c.find(b=>b.id===a.id))return d.onError?.("007",L.error007(e)),c;let g=d.getEdgeId||aS,h={...f,id:d.shouldReplaceId?g(b):e,source:b.source,target:b.target,sourceHandle:b.sourceHandle,targetHandle:b.targetHandle};return c.filter(a=>a.id!==e).concat(h)},"rendererPointToPoint",0,ar,"shallowNodeData",0,function(a,b){if(null===a||null===b)return!1;let c=Array.isArray(a)?a:[a],d=Array.isArray(b)?b:[b];if(c.length!==d.length)return!1;for(let a=0;a<c.length;a++)if(c[a].id!==d[a].id||c[a].type!==d[a].type||!Object.is(c[a].data,d[a].data))return!1;return!0},"snapPosition",0,ap,"updateAbsolutePositions",0,a8,"updateConnectionLookup",0,bh,"updateNodeInternals",0,be,"withResolvers",0,aA],152716);var bG=a.i(711822);let bH=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a)),destroy:()=>{c.clear()}},g=b=a(d,e,f);return f},{useDebugValue:bI}=s.default,{useSyncExternalStoreWithSelector:bJ}=bG.default,bK=a=>a;function bL(a,b=bK,c){let d=bJ(a.subscribe,a.getState,a.getServerState||a.getInitialState,b,c);return bI(d),d}let bM=(a,b)=>{let c=a?bH(a):bH,d=(a,d=b)=>bL(c,a,d);return Object.assign(d,c),d};function bN(a,b){if(Object.is(a,b))return!0;if("object"!=typeof a||null===a||"object"!=typeof b||null===b)return!1;if(a instanceof Map&&b instanceof Map){if(a.size!==b.size)return!1;for(let[c,d]of a)if(!Object.is(d,b.get(c)))return!1;return!0}if(a instanceof Set&&b instanceof Set){if(a.size!==b.size)return!1;for(let c of a)if(!b.has(c))return!1;return!0}let c=Object.keys(a);if(c.length!==Object.keys(b).length)return!1;for(let d of c)if(!Object.prototype.hasOwnProperty.call(b,d)||!Object.is(a[d],b[d]))return!1;return!0}a.i(41721);let bO=(0,s.createContext)(null),bP=bO.Provider,bQ=L.error001("react");function bR(a,b){let c=(0,s.useContext)(bO);if(null===c)throw Error(bQ);return bL(c,a,b)}function bS(){let a=(0,s.useContext)(bO);if(null===a)throw Error(bQ);return(0,s.useMemo)(()=>({getState:a.getState,setState:a.setState,subscribe:a.subscribe}),[a])}let bT={display:"none"},bU={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},bV="react-flow__node-desc",bW="react-flow__edge-desc",bX=a=>a.ariaLiveMessage,bY=a=>a.ariaLabelConfig;function bZ({rfId:a}){let b=bR(bX);return(0,r.jsx)("div",{id:`react-flow__aria-live-${a}`,"aria-live":"assertive","aria-atomic":"true",style:bU,children:b})}function b$({rfId:a,disableKeyboardA11y:b}){let c=bR(bY);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{id:`${bV}-${a}`,style:bT,children:b?c["node.a11yDescription.default"]:c["node.a11yDescription.keyboardDisabled"]}),(0,r.jsx)("div",{id:`${bW}-${a}`,style:bT,children:c["edge.a11yDescription.default"]}),!b&&(0,r.jsx)(bZ,{rfId:a})]})}let b_=(0,s.forwardRef)(({position:a="top-left",children:b,className:c,style:d,...e},f)=>{let g=`${a}`.split("-");return(0,r.jsx)("div",{className:t(["react-flow__panel",c,...g]),style:d,ref:f,...e,children:b})});b_.displayName="Panel";let b0="https://reactflow.dev?utm_source=attribution";function b1({proOptions:a,position:b="bottom-right"}){return((0,s.useEffect)(()=>{},[]),a?.hideAttribution)?null:(0,r.jsx)(b_,{position:b,className:"react-flow__attribution","data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: ${b0}`,children:(0,r.jsx)("a",{href:b0,target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}let b2=a=>{let b=[],c=[];for(let[,c]of a.nodeLookup)c.selected&&b.push(c.internals.userNode);for(let[,b]of a.edgeLookup)b.selected&&c.push(b);return{selectedNodes:b,selectedEdges:c}},b3=a=>a.id;function b4(a,b){return bN(a.selectedNodes.map(b3),b.selectedNodes.map(b3))&&bN(a.selectedEdges.map(b3),b.selectedEdges.map(b3))}function b5({onSelectionChange:a}){let b=bS(),{selectedNodes:c,selectedEdges:d}=bR(b2,b4);return(0,s.useEffect)(()=>{let e={nodes:c,edges:d};a?.(e),b.getState().onSelectionChangeHandlers.forEach(a=>a(e))},[c,d,a]),null}let b6=a=>!!a.onSelectionChangeHandlers;function b7({onSelectionChange:a}){let b=bR(b6);return a||b?(0,r.jsx)(b5,{onSelectionChange:a}):null}let b8=[0,0],b9={x:0,y:0,zoom:1},ca=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode","rfId"],cb=a=>({setNodes:a.setNodes,setEdges:a.setEdges,setMinZoom:a.setMinZoom,setMaxZoom:a.setMaxZoom,setTranslateExtent:a.setTranslateExtent,setNodeExtent:a.setNodeExtent,reset:a.reset,setDefaultNodesAndEdges:a.setDefaultNodesAndEdges}),cc={translateExtent:M,nodeOrigin:b8,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function cd(a){let{setNodes:b,setEdges:c,setMinZoom:d,setMaxZoom:e,setTranslateExtent:f,setNodeExtent:g,reset:h,setDefaultNodesAndEdges:i}=bR(cb,bN),j=bS();(0,s.useEffect)(()=>(i(a.defaultNodes,a.defaultEdges),()=>{k.current=cc,h()}),[]);let k=(0,s.useRef)(cc);return(0,s.useEffect)(()=>{for(let h of ca){let i=a[h];i!==k.current[h]&&void 0!==a[h]&&("nodes"===h?b(i):"edges"===h?c(i):"minZoom"===h?d(i):"maxZoom"===h?e(i):"translateExtent"===h?f(i):"nodeExtent"===h?g(i):"ariaLabelConfig"===h?j.setState({ariaLabelConfig:aB(i)}):"fitView"===h?j.setState({fitViewQueued:i}):"fitViewOptions"===h?j.setState({fitViewOptions:i}):j.setState({[h]:i}))}k.current=a},ca.map(b=>a[b])),null}let ce="u">typeof document?document:null;function cf(a=null,b={target:ce,actInsideInputWithModifier:!0}){let[c,d]=(0,s.useState)(!1),e=(0,s.useRef)(!1),f=(0,s.useRef)(new Set([])),[g,h]=(0,s.useMemo)(()=>{if(null!==a){let b=(Array.isArray(a)?a:[a]).filter(a=>"string"==typeof a).map(a=>a.replace(/\+/g,"\n").replace("\n\n","\n+").split("\n")),c=b.reduce((a,b)=>a.concat(...b),[]);return[b,c]}return[[],[]]},[a]);return(0,s.useEffect)(()=>{let c=b?.target??ce,i=b?.actInsideInputWithModifier??!0;if(null!==a){let a=a=>{if(e.current=a.ctrlKey||a.metaKey||a.shiftKey||a.altKey,(!e.current||e.current&&!i)&&aH(a))return!1;let c=ch(a.code,h);if(f.current.add(a[c]),cg(g,f.current,!1)){let c=a.composedPath?.()?.[0]||a.target,f=c?.nodeName==="BUTTON"||c?.nodeName==="A";!1!==b.preventDefault&&(e.current||!f)&&a.preventDefault(),d(!0)}},j=a=>{let b=ch(a.code,h);cg(g,f.current,!0)?(d(!1),f.current.clear()):f.current.delete(a[b]),"Meta"===a.key&&f.current.clear(),e.current=!1},k=()=>{f.current.clear(),d(!1)};return c?.addEventListener("keydown",a),c?.addEventListener("keyup",j),window.addEventListener("blur",k),window.addEventListener("contextmenu",k),()=>{c?.removeEventListener("keydown",a),c?.removeEventListener("keyup",j),window.removeEventListener("blur",k),window.removeEventListener("contextmenu",k)}}},[a,d]),c}function cg(a,b,c){return a.filter(a=>c||a.length===b.size).some(a=>a.every(a=>b.has(a)))}function ch(a,b){return b.includes(a)?"code":"key"}function ci(a,b){let c=[],d=new Map,e=[];for(let b of a)if("add"===b.type){e.push(b);continue}else if("remove"===b.type||"replace"===b.type)d.set(b.id,[b]);else{let a=d.get(b.id);a?a.push(b):d.set(b.id,[b])}for(let a of b){let b=d.get(a.id);if(!b){c.push(a);continue}if("remove"===b[0].type)continue;if("replace"===b[0].type){c.push({...b[0].item});continue}let e={...a};for(let a of b){var f=a,g=e;switch(f.type){case"select":g.selected=f.selected;break;case"position":void 0!==f.position&&(g.position=f.position),void 0!==f.dragging&&(g.dragging=f.dragging);break;case"dimensions":void 0!==f.dimensions&&(g.measured={...f.dimensions},f.setAttributes&&((!0===f.setAttributes||"width"===f.setAttributes)&&(g.width=f.dimensions.width),(!0===f.setAttributes||"height"===f.setAttributes)&&(g.height=f.dimensions.height))),"boolean"==typeof f.resizing&&(g.resizing=f.resizing)}}c.push(e)}return e.length&&e.forEach(a=>{void 0!==a.index?c.splice(a.index,0,{...a.item}):c.push({...a.item})}),c}function cj(a,b){return ci(a,b)}function ck(a,b){return{id:a,type:"select",selected:b}}function cl(a,b=new Set,c=!1){let d=[];for(let[e,f]of a){let a=b.has(e);(void 0!==f.selected||a)&&f.selected!==a&&(c&&(f.selected=a),d.push(ck(f.id,a)))}return d}function cm({items:a=[],lookup:b}){let c=[],d=new Map(a.map(a=>[a.id,a]));for(let[d,e]of a.entries()){let a=b.get(e.id),f=a?.internals?.userNode??a;void 0!==f&&f!==e&&c.push({id:e.id,item:e,type:"replace"}),void 0===f&&c.push({item:e,type:"add",index:d})}for(let[a]of b)void 0===d.get(a)&&c.push({id:a,type:"remove"});return c}function cn(a){return{id:a.id,type:"remove"}}let co=ao("React Flow","https://reactflow.dev/");function cp(a){return(0,s.forwardRef)(a)}let cq=s.useEffect;function cr(a){let[b,c]=(0,s.useState)(BigInt(0)),[d]=(0,s.useState)(()=>{var a;let b;return a=()=>c(a=>a+BigInt(1)),b=[],{get:()=>b,reset:()=>{b=[]},push:c=>{b.push(c),a()}}});return cq(()=>{let b=d.get();b.length&&(a(b),d.reset())},[b]),d}let cs=(0,s.createContext)(null);function ct({children:a}){let b=bS(),c=cr((0,s.useCallback)(a=>{let{nodes:c=[],setNodes:d,hasDefaultNodes:e,onNodesChange:f,nodeLookup:g,fitViewQueued:h,onNodesChangeMiddlewareMap:i}=b.getState(),j=c;for(let b of a)j="function"==typeof b?b(j):b;let k=cm({items:j,lookup:g});for(let a of i.values())k=a(k);e&&d(j),k.length>0?f?.(k):h&&window.requestAnimationFrame(()=>{let{fitViewQueued:a,nodes:c,setNodes:d}=b.getState();a&&d(c)})},[])),d=cr((0,s.useCallback)(a=>{let{edges:c=[],setEdges:d,hasDefaultEdges:e,onEdgesChange:f,edgeLookup:g}=b.getState(),h=c;for(let b of a)h="function"==typeof b?b(h):b;e?d(h):f&&f(cm({items:h,lookup:g}))},[])),e=(0,s.useMemo)(()=>({nodeQueue:c,edgeQueue:d}),[]);return(0,r.jsx)(cs.Provider,{value:e,children:a})}let cu=a=>!!a.panZoom;function cv(){let a,b=(a=bS(),(0,s.useMemo)(()=>({zoomIn:async b=>{let{panZoom:c}=a.getState();return!!c&&c.scaleBy(1.2,b)},zoomOut:async b=>{let{panZoom:c}=a.getState();return!!c&&c.scaleBy(1/1.2,b)},zoomTo:async(b,c)=>{let{panZoom:d}=a.getState();return!!d&&d.scaleTo(b,c)},getZoom:()=>a.getState().transform[2],setViewport:async(b,c)=>{let{transform:[d,e,f],panZoom:g}=a.getState();return!!g&&(await g.setViewport({x:b.x??d,y:b.y??e,zoom:b.zoom??f},c),!0)},getViewport:()=>{let[b,c,d]=a.getState().transform;return{x:b,y:c,zoom:d}},setCenter:async(b,c,d)=>a.getState().setCenter(b,c,d),fitBounds:async(b,c)=>{let{width:d,height:e,minZoom:f,maxZoom:g,panZoom:h}=a.getState(),i=at(b,d,e,f,g,c?.padding??.1);return!!h&&(await h.setViewport(i,{duration:c?.duration,ease:c?.ease,interpolate:c?.interpolate}),!0)},screenToFlowPosition:(b,c={})=>{let{transform:d,snapGrid:e,snapToGrid:f,domNode:g}=a.getState();if(!g)return b;let{x:h,y:i}=g.getBoundingClientRect(),j={x:b.x-h,y:b.y-i},k=c.snapGrid??e;return aq(j,d,c.snapToGrid??f,k)},flowToScreenPosition:b=>{let{transform:c,domNode:d}=a.getState();if(!d)return b;let{x:e,y:f}=d.getBoundingClientRect(),g=ar(b,c);return{x:g.x+e,y:g.y+f}}}),[])),c=bS(),d=function(){let a=(0,s.useContext)(cs);if(!a)throw Error("useBatchContext must be used within a BatchProvider");return a}(),e=bR(cu),f=(0,s.useMemo)(()=>{let a=a=>c.getState().nodeLookup.get(a),b=a=>{d.nodeQueue.push(a)},e=a=>{d.edgeQueue.push(a)},f=a=>{let{nodeLookup:b,nodeOrigin:d}=c.getState(),e=S(a)?a:b.get(a.id),f=e.parentId?ay(e.position,e.measured,e.parentId,b,d):e.position;return ah({...e,position:f,width:e.measured?.width??e.width,height:e.measured?.height??e.height})},g=(a,c,d={replace:!1})=>{b(b=>b.map(b=>{if(b.id===a){let a="function"==typeof c?c(b):c;return d.replace&&S(a)?a:{...b,...a}}return b}))},h=(a,b,c={replace:!1})=>{e(d=>d.map(d=>{if(d.id===a){let a="function"==typeof b?b(d):b;return c.replace&&R(a)?a:{...d,...a}}return d}))};return{getNodes:()=>c.getState().nodes.map(a=>({...a})),getNode:b=>a(b)?.internals.userNode,getInternalNode:a,getEdges:()=>{let{edges:a=[]}=c.getState();return a.map(a=>({...a}))},getEdge:a=>c.getState().edgeLookup.get(a),setNodes:b,setEdges:e,addNodes:a=>{let b=Array.isArray(a)?a:[a];d.nodeQueue.push(a=>[...a,...b])},addEdges:a=>{let b=Array.isArray(a)?a:[a];d.edgeQueue.push(a=>[...a,...b])},toObject:()=>{let{nodes:a=[],edges:b=[],transform:d}=c.getState(),[e,f,g]=d;return{nodes:a.map(a=>({...a})),edges:b.map(a=>({...a})),viewport:{x:e,y:f,zoom:g}}},deleteElements:async({nodes:a=[],edges:b=[]})=>{let{nodes:d,edges:e,onNodesDelete:f,onEdgesDelete:g,triggerNodeChanges:h,triggerEdgeChanges:i,onDelete:j,onBeforeDelete:k}=c.getState(),{nodes:l,edges:m}=await $({nodesToRemove:a,edgesToRemove:b,nodes:d,edges:e,onBeforeDelete:k}),n=m.length>0,o=l.length>0;if(n){let a=m.map(cn);g?.(m),i(a)}if(o){let a=l.map(cn);f?.(l),h(a)}return(o||n)&&j?.({nodes:l,edges:m}),{deletedNodes:l,deletedEdges:m}},getIntersectingNodes:(a,b=!0,d)=>{let e=am(a),g=e?a:f(a),h=void 0!==d;return g?(d||c.getState().nodes).filter(d=>{let f=c.getState().nodeLookup.get(d.id);if(f&&!e&&(d.id===a.id||!f.internals.positionAbsolute))return!1;let i=ah(h?d:f),j=al(i,g);return b&&j>0||j>=i.width*i.height||j>=g.width*g.height}):[]},isNodeIntersecting:(a,b,c=!0)=>{let d=am(a)?a:f(a);if(!d)return!1;let e=al(d,b);return c&&e>0||e>=b.width*b.height||e>=d.width*d.height},updateNode:g,updateNodeData:(a,b,c={replace:!1})=>{g(a,a=>{let d="function"==typeof b?b(a):b;return c.replace?{...a,data:d}:{...a,data:{...a.data,...d}}},c)},updateEdge:h,updateEdgeData:(a,b,c={replace:!1})=>{h(a,a=>{let d="function"==typeof b?b(a):b;return c.replace?{...a,data:d}:{...a,data:{...a.data,...d}}},c)},getNodesBounds:a=>{let{nodeLookup:b,nodeOrigin:d}=c.getState();return V(a,{nodeLookup:b,nodeOrigin:d})},getHandleConnections:({type:a,id:b,nodeId:d})=>Array.from(c.getState().connectionLookup.get(`${d}-${a}${b?`-${b}`:""}`)?.values()??[]),getNodeConnections:({type:a,handleId:b,nodeId:d})=>Array.from(c.getState().connectionLookup.get(`${d}${a?b?`-${a}-${b}`:`-${a}`:""}`)?.values()??[]),fitView:async a=>{let b=c.getState().fitViewResolver??aA();return c.setState({fitViewQueued:!0,fitViewOptions:a,fitViewResolver:b}),d.nodeQueue.push(a=>[...a]),b.promise}}},[]);return(0,s.useMemo)(()=>({...f,...b,viewportInitialized:e}),[e])}let cw=a=>a.selected,cx,cy={position:"absolute",width:"100%",height:"100%",top:0,left:0},cz=a=>({userSelectionActive:a.userSelectionActive,lib:a.lib,connectionInProgress:a.connection.inProgress});function cA({onPaneContextMenu:a,zoomOnScroll:b=!0,zoomOnPinch:c=!0,panOnScroll:d=!1,panActivationKeyPressed:e,panOnScrollSpeed:f=.5,panOnScrollMode:g=k.Free,zoomOnDoubleClick:h=!0,panOnDrag:i=!0,defaultViewport:j,translateExtent:l,minZoom:m,maxZoom:n,zoomActivationKeyCode:o,preventScrolling:p=!0,children:q,noWheelClassName:t,noPanClassName:u,onViewportChange:v,isControlledViewport:w,paneClickDistance:x,selectionOnDrag:y}){let z,A=bS(),B=(0,s.useRef)(null),{userSelectionActive:C,lib:D,connectionInProgress:E}=bR(cz,bN),F=cf(o),G=(0,s.useRef)();z=bS(),(0,s.useEffect)(()=>{let a=()=>{if(!B.current||!(B.current.checkVisibility?.()??!0))return!1;let a=aE(B.current);(0===a.height||0===a.width)&&z.getState().onError?.("004",L.error004()),z.setState({width:a.width||500,height:a.height||500})};if(B.current){a(),window.addEventListener("resize",a);let b=new ResizeObserver(()=>a());return b.observe(B.current),()=>{window.removeEventListener("resize",a),b&&B.current&&b.unobserve(B.current)}}},[]);let H=(0,s.useCallback)(a=>{v?.({x:a[0],y:a[1],zoom:a[2]}),w||A.setState({transform:a})},[v,w]);return(0,s.useEffect)(()=>{if(B.current){G.current=by({domNode:B.current,minZoom:m,maxZoom:n,translateExtent:l,viewport:j,onDraggingChange:a=>A.setState(b=>b.paneDragging===a?b:{paneDragging:a}),onPanZoomStart:(a,b)=>{let{onViewportChangeStart:c,onMoveStart:d}=A.getState();d?.(a,b),c?.(b)},onPanZoom:(a,b)=>{let{onViewportChange:c,onMove:d}=A.getState();d?.(a,b),c?.(b)},onPanZoomEnd:(a,b)=>{let{onViewportChangeEnd:c,onMoveEnd:d}=A.getState();d?.(a,b),c?.(b)}});let{x:a,y:b,zoom:c}=G.current.getViewport();return A.setState({panZoom:G.current,transform:[a,b,c],domNode:B.current.closest(".react-flow")}),()=>{G.current?.destroy()}}},[]),(0,s.useEffect)(()=>{G.current?.update({onPaneContextMenu:a,zoomOnScroll:b,zoomOnPinch:c,panOnScroll:d,panActivationKeyPressed:e,panOnScrollSpeed:f,panOnScrollMode:g,zoomOnDoubleClick:h,panOnDrag:i,zoomActivationKeyPressed:F,preventScrolling:p,noPanClassName:u,userSelectionActive:C,noWheelClassName:t,lib:D,onTransformChange:H,connectionInProgress:E,selectionOnDrag:y,paneClickDistance:x})},[a,b,c,d,e,f,g,h,i,F,p,u,C,t,D,H,E,y,x]),(0,r.jsx)("div",{className:"react-flow__renderer",ref:B,style:cy,children:q})}let cB=a=>({userSelectionActive:a.userSelectionActive,userSelectionRect:a.userSelectionRect});function cC(){let{userSelectionActive:a,userSelectionRect:b}=bR(cB,bN);return a&&b?(0,r.jsx)("div",{className:"react-flow__selection react-flow__container",style:{width:b.width,height:b.height,transform:`translate(${b.x}px, ${b.y}px)`}}):null}let cD=(a,b)=>c=>{c.target===b.current&&a?.(c)},cE=a=>({userSelectionActive:a.userSelectionActive,elementsSelectable:a.elementsSelectable,dragging:a.paneDragging,panBy:a.panBy,autoPanSpeed:a.autoPanSpeed});function cF({isSelecting:a,selectionKeyPressed:b,selectionMode:c=l.Full,panOnDrag:d,autoPanOnSelection:e,paneClickDistance:f,selectionOnDrag:g,onSelectionStart:h,onSelectionEnd:i,onPaneClick:j,onPaneContextMenu:k,onPaneScroll:m,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:p,children:q}){let u=(0,s.useRef)(0),v=bS(),{userSelectionActive:w,elementsSelectable:x,dragging:y,panBy:z,autoPanSpeed:A}=bR(cE,bN),B=x&&(a||w),C=(0,s.useRef)(null),D=(0,s.useRef)(),E=(0,s.useRef)(new Set),F=(0,s.useRef)(new Set),G=(0,s.useRef)(!1),H=(0,s.useRef)(!1),I=(0,s.useRef)({x:0,y:0}),J=(0,s.useRef)(!1),K=a=>{if(H.current||G.current||v.getState().connection.inProgress){H.current=!1,G.current=!1;return}j?.(a),v.getState().resetSelectedElements(),v.setState({nodesSelectionActive:!1})};function L(a,b){let{userSelectionRect:d}=v.getState();if(!d)return;let{transform:e,nodeLookup:f,edgeLookup:g,connectionLookup:h,triggerNodeChanges:i,triggerEdgeChanges:j,defaultEdgeOptions:k}=v.getState(),m={x:d.startX,y:d.startY},{x:n,y:o}=ar(m,e),p={startX:m.x,startY:m.y,x:a<n?a:n,y:b<o?b:o,width:Math.abs(a-n),height:Math.abs(b-o)},q=E.current,r=F.current;E.current=new Set(X(f,p,e,c===l.Partial,!0).map(a=>a.id)),F.current=new Set;let s=k?.selectable??!0;for(let a of E.current){let b=h.get(a);if(b)for(let{edgeId:a}of b.values()){let b=g.get(a);b&&(b.selectable??s)&&F.current.add(a)}}az(q,E.current)||i(cl(f,E.current,!0)),az(r,F.current)||j(cl(g,F.current)),v.setState({userSelectionRect:p,userSelectionActive:!0,nodesSelectionActive:!1})}let M=()=>{cancelAnimationFrame(u.current),u.current=0,J.current=!1};(0,s.useEffect)(()=>()=>M(),[]);let N=!0===d||Array.isArray(d)&&d.includes(0);return(0,r.jsxs)("div",{className:t(["react-flow__pane",{draggable:N,dragging:y,selection:a}]),onClick:B?void 0:cD(K,C),onContextMenu:cD(a=>{Array.isArray(d)&&d?.includes(2)?a.preventDefault():k?.(a)},C),onWheel:cD(m?a=>m(a):void 0,C),onPointerEnter:B?void 0:n,onPointerMove:B?a=>{let{userSelectionRect:c,transform:d,resetSelectedElements:g}=v.getState();if(!D.current||!c)return;let{x:i,y:j}=aJ(a.nativeEvent,D.current);I.current={x:i,y:j};let k=ar({x:c.startX,y:c.startY},d);if(!H.current){if(Math.hypot(i-k.x,j-k.y)<=(b?0:f))return;g(),h?.(a)}H.current=!0,J.current||(!function a(){if(!e||!D.current)return;let[b,c]=ad(I.current,D.current,A);z({x:b,y:c}).then(b=>{if(!H.current||!b){u.current=requestAnimationFrame(a);return}let{x:c,y:d}=I.current;L(c,d),u.current=requestAnimationFrame(a)})}(),J.current=!0),L(i,j)}:o,onPointerUp:a=>{if(!B){a.target===C.current&&v.getState().connection.inProgress&&(G.current=!0);return}0===a.button&&(a.target?.releasePointerCapture?.(a.pointerId),!w&&a.target===C.current&&v.getState().userSelectionRect&&K?.(a),v.setState({userSelectionActive:!1,userSelectionRect:null}),H.current&&(i?.(a),v.setState({nodesSelectionActive:E.current.size>0})),M())},onPointerCancel:B?a=>{a.target?.releasePointerCapture?.(a.pointerId),M()}:void 0,onPointerDownCapture:B?c=>{if("touch"===c.pointerType&&!1!==d&&!b)return;let{domNode:e,transform:f}=v.getState();if(D.current=e?.getBoundingClientRect(),!D.current)return;let h=c.target===C.current;if(!h&&c.target.closest(".nokey")||!a||!(g&&h||b)||0!==c.button||!c.isPrimary)return;c.target?.setPointerCapture?.(c.pointerId),H.current=!1;let{x:i,y:j}=aJ(c.nativeEvent,D.current),k=aq({x:i,y:j},f);v.setState({userSelectionRect:{width:0,height:0,startX:k.x,startY:k.y,x:i,y:j}}),h||(c.stopPropagation(),c.preventDefault())}:void 0,onClickCapture:B?a=>{H.current&&(a.stopPropagation(),H.current=!1)}:void 0,onPointerLeave:p,ref:C,style:cy,children:[q,(0,r.jsx)(cC,{})]})}function cG({id:a,store:b,unselect:c=!1,nodeRef:d}){let{addSelectedNodes:e,unselectNodesAndEdges:f,multiSelectionActive:g,nodeLookup:h,onError:i}=b.getState(),j=h.get(a);j?(b.setState({nodesSelectionActive:!1}),j.selected?(c||j.selected&&g)&&(f({nodes:[j],edges:[]}),requestAnimationFrame(()=>d?.current?.blur())):e([a])):i?.("012",L.error012(a))}function cH({nodeRef:a,disabled:b=!1,noDragClassName:c,handleSelector:d,nodeId:e,isSelectable:f,nodeClickDistance:g}){let h=bS(),[i,j]=(0,s.useState)(!1),k=(0,s.useRef)();return(0,s.useEffect)(()=>{if(!b)return k.current=bk({getStoreItems:()=>h.getState(),onNodeMouseDown:b=>{cG({id:b,store:h,nodeRef:a})},onDragStart:()=>{j(!0)},onDragStop:()=>{j(!1)}}),()=>{k.current?.destroy(),k.current=void 0}},[b,h,a]),(0,s.useEffect)(()=>{!b&&a.current&&k.current&&k.current.update({noDragClassName:c,handleSelector:d,domNode:a.current,isSelectable:f,nodeId:e,nodeClickDistance:g})},[c,d,b,f,a,e,g]),i}function cI(){let a=bS();return(0,s.useCallback)(b=>{let{nodeExtent:c,snapToGrid:d,snapGrid:e,nodesDraggable:f,onError:g,updateNodePositions:h,nodeLookup:i,nodeOrigin:j}=a.getState(),k=new Map,l=a=>a.selected&&(a.draggable||f&&void 0===a.draggable),m=d?e[0]:5,n=d?e[1]:5,o=b.direction.x*m*b.factor,p=b.direction.y*n*b.factor;for(let[,a]of i){if(!l(a))continue;let b={x:a.internals.positionAbsolute.x+o,y:a.internals.positionAbsolute.y+p};d&&(b=ap(b,e));let{position:f,positionAbsolute:h}=Z({nodeId:a.id,nextPosition:b,nodeLookup:i,nodeExtent:c,nodeOrigin:j,onError:g});a.position=f,a.internals.positionAbsolute=h,k.set(a.id,a)}h(k)},[])}let cJ=(0,s.createContext)(null),cK=cJ.Provider;cJ.Consumer;let cL=()=>(0,s.useContext)(cJ),cM=a=>({connectOnClick:a.connectOnClick,noPanClassName:a.noPanClassName,rfId:a.rfId}),cN=(0,s.createContext)(null);function cO({children:a}){let b=bR(cM,bN);return(0,r.jsx)(cN.Provider,{value:b,children:a})}let cP={connectingFrom:!1,connectingTo:!1,clickConnecting:!1,isPossibleEndHandle:!0,connectionInProcess:!1,clickConnectionInProcess:!1,valid:!1},cQ=(0,s.memo)(cp(function({type:a="source",position:b=o.Top,isValidConnection:c,isConnectable:d=!0,isConnectableStart:e=!0,isConnectableEnd:f=!0,id:g,onConnect:h,children:i,className:k,onMouseDown:l,onTouchStart:m,...n},p){let q=g||null,u="target"===a,v=bS(),w=cL(),{connectOnClick:x,noPanClassName:y,rfId:z}=function(){let a=(0,s.useContext)(cN);if(!a)throw Error("useHandleConfig must be used within a HandleConfigProvider");return a}(),{connectingFrom:A,connectingTo:B,clickConnecting:C,isPossibleEndHandle:D,connectionInProcess:E,clickConnectionInProcess:F,valid:G}=bR(b=>{let{connectionClickStartHandle:c,connectionMode:d,connection:e}=b,{fromHandle:f,toHandle:g,isValid:h}=e;if(!f&&!c)return cP;let i=g?.nodeId===w&&g?.id===q&&g?.type===a;return{connectingFrom:f?.nodeId===w&&f?.id===q&&f?.type===a,connectingTo:i,clickConnecting:c?.nodeId===w&&c?.id===q&&c?.type===a,isPossibleEndHandle:d===j.Strict?f?.type!==a:w!==f?.nodeId||q!==f?.id,connectionInProcess:!!f,clickConnectionInProcess:!!c,valid:i&&h}},bN);w||v.getState().onError?.("010",L.error010());let H=a=>{let{defaultEdgeOptions:b,onConnect:c,hasDefaultEdges:d}=v.getState(),e={...b,...a};if(d){let{edges:a,setEdges:b,onError:c}=v.getState();b(function(a,b,c={}){return aT(a,b,{...c,onError:c.onError??co})}(e,a,{onError:c}))}c?.(e),h?.(e)},I=a=>{if(!w)return;let b=aI(a.nativeEvent);if(e&&(b&&0===a.button||!b)){let b=v.getState();bp.onPointerDown(a.nativeEvent,{handleDomNode:a.currentTarget,autoPanOnConnect:b.autoPanOnConnect,connectionMode:b.connectionMode,connectionRadius:b.connectionRadius,domNode:b.domNode,nodeLookup:b.nodeLookup,lib:b.lib,isTarget:u,handleId:q,nodeId:w,flowId:b.rfId,panBy:b.panBy,cancelConnection:b.cancelConnection,onConnectStart:b.onConnectStart,onConnectEnd:(...a)=>v.getState().onConnectEnd?.(...a),updateConnection:b.updateConnection,onConnect:H,isValidConnection:c||((...a)=>v.getState().isValidConnection?.(...a)??!0),getTransform:()=>v.getState().transform,getFromHandle:()=>v.getState().connection.fromHandle,autoPanSpeed:b.autoPanSpeed,dragThreshold:b.connectionDragThreshold})}b?l?.(a):m?.(a)};return(0,r.jsx)("div",{"data-handleid":q,"data-nodeid":w,"data-handlepos":b,"data-id":`${z}-${w}-${q}-${a}`,className:t(["react-flow__handle",`react-flow__handle-${b}`,"nodrag",y,k,{source:!u,target:u,connectable:d,connectablestart:e,connectableend:f,clickconnecting:C,connectingfrom:A,connectingto:B,valid:G,connectionindicator:d&&(!E||D)&&(E||F?f:e)}]),onMouseDown:I,onTouchStart:I,onClick:x?b=>{let{onClickConnectStart:d,onClickConnectEnd:f,connectionClickStartHandle:g,connectionMode:h,isValidConnection:i,lib:j,rfId:k,nodeLookup:l,connection:m}=v.getState();if(!w||!g&&!e)return;if(!g){d?.(b.nativeEvent,{nodeId:w,handleId:q,handleType:a}),v.setState({connectionClickStartHandle:{nodeId:w,type:a,id:q}});return}let n=aF(b.target),o=c||i,{connection:p,isValid:r}=bp.isValid(b.nativeEvent,{handle:{nodeId:w,id:q,type:a},connectionMode:h,fromNodeId:g.nodeId,fromHandleId:g.id||null,fromType:g.type,isValidConnection:o,flowId:k,doc:n,lib:j,nodeLookup:l});r&&p&&H(p);let s=structuredClone(m);delete s.inProgress,s.toPosition=s.toHandle?s.toHandle.position:null,f?.(b,s),v.setState({connectionClickStartHandle:null})}:void 0,ref:p,...n,children:i})})),cR={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},cS={input:function({data:a,isConnectable:b,sourcePosition:c=o.Bottom}){return(0,r.jsxs)(r.Fragment,{children:[a?.label,(0,r.jsx)(cQ,{type:"source",position:c,isConnectable:b})]})},default:function({data:a,isConnectable:b,targetPosition:c=o.Top,sourcePosition:d=o.Bottom}){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(cQ,{type:"target",position:c,isConnectable:b}),a?.label,(0,r.jsx)(cQ,{type:"source",position:d,isConnectable:b})]})},output:function({data:a,isConnectable:b,targetPosition:c=o.Top}){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(cQ,{type:"target",position:c,isConnectable:b}),a?.label]})},group:function(){return null}},cT=a=>{let{width:b,height:c,x:d,y:e}=W(a.nodeLookup,{filter:a=>!!a.selected});return{width:an(b)?b:null,height:an(c)?c:null,userSelectionActive:a.userSelectionActive,transformString:`translate(${a.transform[0]}px,${a.transform[1]}px) scale(${a.transform[2]}) translate(${d}px,${e}px)`}};function cU({onSelectionContextMenu:a,noPanClassName:b,disableKeyboardA11y:c}){let d=bS(),{width:e,height:f,transformString:g,userSelectionActive:h}=bR(cT,bN),i=cI(),j=(0,s.useRef)(null);(0,s.useEffect)(()=>{c||j.current?.focus({preventScroll:!0})},[c]);let k=!h&&null!==e&&null!==f;if(cH({nodeRef:j,disabled:!k}),!k)return null;let l=a?b=>{a(b,d.getState().nodes.filter(a=>a.selected))}:void 0;return(0,r.jsx)("div",{className:t(["react-flow__nodesselection","react-flow__container",b]),style:{transform:g},children:(0,r.jsx)("div",{ref:j,className:"react-flow__nodesselection-rect",onContextMenu:l,tabIndex:c?void 0:-1,onKeyDown:c?void 0:a=>{Object.prototype.hasOwnProperty.call(cR,a.key)&&(a.preventDefault(),i({direction:cR[a.key],factor:a.shiftKey?4:1}))},style:{width:e,height:f}})})}let cV,cW=a=>({nodesSelectionActive:a.nodesSelectionActive,userSelectionActive:a.userSelectionActive});function cX({children:a,onPaneClick:b,onPaneMouseEnter:c,onPaneMouseMove:d,onPaneMouseLeave:e,onPaneContextMenu:f,onPaneScroll:g,paneClickDistance:h,deleteKeyCode:i,selectionKeyCode:j,selectionOnDrag:k,selectionMode:l,onSelectionStart:m,onSelectionEnd:n,multiSelectionKeyCode:o,panActivationKeyCode:p,zoomActivationKeyCode:q,elementsSelectable:t,zoomOnScroll:u,zoomOnPinch:v,panOnScroll:w,panOnScrollSpeed:x,panOnScrollMode:y,zoomOnDoubleClick:z,panOnDrag:A,autoPanOnSelection:B,defaultViewport:C,translateExtent:D,minZoom:E,maxZoom:F,preventScrolling:G,onSelectionContextMenu:H,noWheelClassName:I,noPanClassName:J,disableKeyboardA11y:K,onViewportChange:L,isControlledViewport:M}){let{nodesSelectionActive:N,userSelectionActive:O}=bR(cW,bN),P=cf(j,{target:cV}),Q=cf(p,{target:cV}),R=Q||A,S=Q||w,T=k&&!0!==R,U=P||O||T;return!function({deleteKeyCode:a,multiSelectionKeyCode:b}){let c=bS(),{deleteElements:d}=cv(),e=cf(a,{actInsideInputWithModifier:!1}),f=cf(b,{target:cx});(0,s.useEffect)(()=>{if(e){let{edges:a,nodes:b}=c.getState();d({nodes:b.filter(cw),edges:a.filter(cw)}),c.setState({nodesSelectionActive:!1})}},[e]),(0,s.useEffect)(()=>{c.setState({multiSelectionActive:f})},[f])}({deleteKeyCode:i,multiSelectionKeyCode:o}),(0,r.jsx)(cA,{onPaneContextMenu:f,elementsSelectable:t,zoomOnScroll:u,zoomOnPinch:v,panOnScroll:S,panActivationKeyPressed:Q,panOnScrollSpeed:x,panOnScrollMode:y,zoomOnDoubleClick:z,panOnDrag:!P&&R,defaultViewport:C,translateExtent:D,minZoom:E,maxZoom:F,zoomActivationKeyCode:q,preventScrolling:G,noWheelClassName:I,noPanClassName:J,onViewportChange:L,isControlledViewport:M,paneClickDistance:h,selectionOnDrag:T,children:(0,r.jsxs)(cF,{onSelectionStart:m,onSelectionEnd:n,onPaneClick:b,onPaneMouseEnter:c,onPaneMouseMove:d,onPaneMouseLeave:e,onPaneContextMenu:f,onPaneScroll:g,panOnDrag:R,autoPanOnSelection:B,isSelecting:!!U,selectionMode:l,selectionKeyPressed:P,paneClickDistance:h,selectionOnDrag:T,children:[a,N&&(0,r.jsx)(cU,{onSelectionContextMenu:H,noPanClassName:J,disableKeyboardA11y:K})]})})}cX.displayName="FlowRenderer";let cY=(0,s.memo)(cX),cZ=a=>a.updateNodeInternals;var c$=(0,s.memo)(function({id:a,onClick:b,onMouseEnter:c,onMouseMove:d,onMouseLeave:e,onContextMenu:f,onDoubleClick:g,nodesDraggable:h,elementsSelectable:i,nodesConnectable:j,nodesFocusable:k,resizeObserver:l,noDragClassName:m,noPanClassName:n,disableKeyboardA11y:o,rfId:p,nodeTypes:q,nodeClickDistance:u,onError:v}){let{node:w,internals:x,isParent:y}=bR(b=>{let c=b.nodeLookup.get(a),d=b.parentLookup.has(a);return{node:c,internals:c.internals,isParent:d}},bN),z=w.type||"default",A=q?.[z]||cS[z];void 0===A&&(v?.("003",L.error003(z)),z="default",A=q?.default||cS.default);let B=!!(w.draggable||h&&void 0===w.draggable),C=!!(w.selectable||i&&void 0===w.selectable),D=!!(w.connectable||j&&void 0===w.connectable),E=!!(w.focusable||k&&void 0===w.focusable),F=bS(),G=ax(w),H=function({node:a,nodeType:b,hasDimensions:c,resizeObserver:d}){let e=bS(),f=(0,s.useRef)(null),g=(0,s.useRef)(null),h=(0,s.useRef)(a.sourcePosition),i=(0,s.useRef)(a.targetPosition),j=(0,s.useRef)(b),k=c&&!!a.internals.handleBounds;return(0,s.useEffect)(()=>{!f.current||a.hidden||k&&g.current===f.current||(g.current&&d?.unobserve(g.current),d?.observe(f.current),g.current=f.current)},[k,a.hidden]),(0,s.useEffect)(()=>()=>{g.current&&(d?.unobserve(g.current),g.current=null)},[]),(0,s.useEffect)(()=>{if(f.current){let c=j.current!==b,d=h.current!==a.sourcePosition,g=i.current!==a.targetPosition;(c||d||g)&&(j.current=b,h.current=a.sourcePosition,i.current=a.targetPosition,e.getState().updateNodeInternals(new Map([[a.id,{id:a.id,nodeElement:f.current,force:!0}]])))}},[a.id,b,a.sourcePosition,a.targetPosition]),f}({node:w,nodeType:z,hasDimensions:G,resizeObserver:l}),I=cH({nodeRef:H,disabled:w.hidden||!B,noDragClassName:m,handleSelector:w.dragHandle,nodeId:a,isSelectable:C,nodeClickDistance:u}),J=cI();if(w.hidden)return null;let K=aw(w),M=void 0===w.internals.handleBounds?{width:w.width??w.initialWidth??w.style?.width,height:w.height??w.initialHeight??w.style?.height}:{width:w.width??w.style?.width,height:w.height??w.style?.height},O=C||B||b||c||d||e,P=c?a=>c(a,{...x.userNode}):void 0,Q=d?a=>d(a,{...x.userNode}):void 0,R=e?a=>e(a,{...x.userNode}):void 0,S=f?a=>f(a,{...x.userNode}):void 0,T=g?a=>g(a,{...x.userNode}):void 0;return(0,r.jsx)("div",{className:t(["react-flow__node",`react-flow__node-${z}`,{[n]:B},w.className,{selected:w.selected,selectable:C,parent:y,draggable:B,dragging:I}]),ref:H,style:{zIndex:x.z,transform:`translate(${x.positionAbsolute.x}px,${x.positionAbsolute.y}px)`,pointerEvents:O?"all":"none",visibility:G?"visible":"hidden",...w.style,...M},"data-id":a,"data-testid":`rf__node-${a}`,onMouseEnter:P,onMouseMove:Q,onMouseLeave:R,onContextMenu:S,onClick:c=>{let{selectNodesOnDrag:d,nodeDragThreshold:e}=F.getState();C&&(!d||!B||e>0)&&cG({id:a,store:F,nodeRef:H}),b&&b(c,{...x.userNode})},onDoubleClick:T,onKeyDown:E?b=>{if(!aH(b.nativeEvent)&&!o){if(N.includes(b.key)&&C)cG({id:a,store:F,unselect:"Escape"===b.key,nodeRef:H});else if(B&&w.selected&&Object.prototype.hasOwnProperty.call(cR,b.key)){b.preventDefault();let{ariaLabelConfig:a}=F.getState();F.setState({ariaLiveMessage:a["node.a11yDescription.ariaLiveMessage"]({direction:b.key.replace("Arrow","").toLowerCase(),x:~~x.positionAbsolute.x,y:~~x.positionAbsolute.y})}),J({direction:cR[b.key],factor:b.shiftKey?4:1})}}}:void 0,tabIndex:E?0:void 0,onFocus:E?()=>{if(o||!H.current?.matches(":focus-visible"))return;let{transform:b,width:c,height:d,autoPanOnNodeFocus:e,setCenter:f}=F.getState();!e||X(new Map([[a,w]]),{x:0,y:0,width:c,height:d},b,!0).length>0||f(w.position.x+K.width/2,w.position.y+K.height/2,{zoom:b[2]})}:void 0,role:w.ariaRole??(E?"group":void 0),"aria-roledescription":"node","aria-describedby":o?void 0:`${bV}-${p}`,"aria-label":w.ariaLabel,...w.domAttributes,children:(0,r.jsx)(cK,{value:a,children:(0,r.jsx)(A,{id:a,data:w.data,type:z,positionAbsoluteX:x.positionAbsolute.x,positionAbsoluteY:x.positionAbsolute.y,selected:w.selected??!1,selectable:C,draggable:B,deletable:w.deletable??!0,isConnectable:D,sourcePosition:w.sourcePosition,targetPosition:w.targetPosition,dragging:I,dragHandle:w.dragHandle,zIndex:x.z,parentId:w.parentId,...K})})})});let c_=a=>({nodesConnectable:a.nodesConnectable,nodesFocusable:a.nodesFocusable,elementsSelectable:a.elementsSelectable,onError:a.onError});function c0(a){var b;let{nodesConnectable:c,nodesFocusable:d,elementsSelectable:e,onError:f}=bR(c_,bN),g=(b=a.onlyRenderVisibleElements,bR((0,s.useCallback)(a=>b?X(a.nodeLookup,{x:0,y:0,width:a.width,height:a.height},a.transform,!0).map(a=>a.id):Array.from(a.nodeLookup.keys()),[b]),bN)),h=function(){let a=bR(cZ),[b]=(0,s.useState)(()=>"u"<typeof ResizeObserver?null:new ResizeObserver(b=>{let c=new Map;b.forEach(a=>{let b=a.target.getAttribute("data-id");c.set(b,{id:b,nodeElement:a.target,force:!0})}),a(c)}));return(0,s.useEffect)(()=>()=>{b?.disconnect()},[b]),b}();return(0,r.jsx)("div",{className:"react-flow__nodes",style:cy,children:g.map(b=>(0,r.jsx)(c$,{id:b,nodeTypes:a.nodeTypes,nodeExtent:a.nodeExtent,onClick:a.onNodeClick,onMouseEnter:a.onNodeMouseEnter,onMouseMove:a.onNodeMouseMove,onMouseLeave:a.onNodeMouseLeave,onContextMenu:a.onNodeContextMenu,onDoubleClick:a.onNodeDoubleClick,noDragClassName:a.noDragClassName,noPanClassName:a.noPanClassName,rfId:a.rfId,disableKeyboardA11y:a.disableKeyboardA11y,resizeObserver:h,nodesDraggable:a.nodesDraggable??!0,nodesConnectable:c,nodesFocusable:d,elementsSelectable:e,nodeClickDistance:a.nodeClickDistance,onError:f},b))})}c0.displayName="NodeRenderer";let c1=(0,s.memo)(c0),c2={[n.Arrow]:({color:a="none",strokeWidth:b=1})=>{let c={strokeWidth:b,...a&&{stroke:a}};return(0,r.jsx)("polyline",{className:"arrow",style:c,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},[n.ArrowClosed]:({color:a="none",strokeWidth:b=1})=>{let c={strokeWidth:b,...a&&{stroke:a,fill:a}};return(0,r.jsx)("polyline",{className:"arrowclosed",style:c,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})}},c3=({id:a,type:b,color:c,width:d=12.5,height:e=12.5,markerUnits:f="strokeWidth",strokeWidth:g,orient:h="auto-start-reverse"})=>{let i,j=(i=bS(),(0,s.useMemo)(()=>Object.prototype.hasOwnProperty.call(c2,b)?c2[b]:(i.getState().onError?.("009",L.error009(b)),null),[b]));return j?(0,r.jsx)("marker",{className:"react-flow__arrowhead",id:a,markerWidth:`${d}`,markerHeight:`${e}`,viewBox:"-10 -10 20 20",markerUnits:f,orient:h,refX:"0",refY:"0",children:(0,r.jsx)(j,{color:c,strokeWidth:g})}):null},c4=({defaultColor:a,rfId:b})=>{let c=bR(a=>a.edges),d=bR(a=>a.defaultEdgeOptions),e=(0,s.useMemo)(()=>a2(c,{id:b,defaultColor:a,defaultMarkerStart:d?.markerStart,defaultMarkerEnd:d?.markerEnd}),[c,d,b,a]);return e.length?(0,r.jsx)("svg",{className:"react-flow__marker","aria-hidden":"true",children:(0,r.jsx)("defs",{children:e.map(a=>(0,r.jsx)(c3,{id:a.id,type:a.type,color:a.color,width:a.width,height:a.height,markerUnits:a.markerUnits,strokeWidth:a.strokeWidth,orient:a.orient},a.id))})}):null};c4.displayName="MarkerDefinitions";var c5=(0,s.memo)(c4);function c6({x:a,y:b,label:c,labelStyle:d,labelShowBg:e=!0,labelBgStyle:f,labelBgPadding:g=[2,4],labelBgBorderRadius:h=2,children:i,className:j,...k}){let[l,m]=(0,s.useState)({x:1,y:0,width:0,height:0}),n=t(["react-flow__edge-textwrapper",j]),o=(0,s.useRef)(null);return((0,s.useEffect)(()=>{if(o.current){let a=o.current.getBBox();m({x:a.x,y:a.y,width:a.width,height:a.height})}},[c]),c)?(0,r.jsxs)("g",{transform:`translate(${a-l.width/2} ${b-l.height/2})`,className:n,visibility:l.width?"visible":"hidden",...k,children:[e&&(0,r.jsx)("rect",{width:l.width+2*g[0],x:-g[0],y:-g[1],height:l.height+2*g[1],className:"react-flow__edge-textbg",style:f,rx:h,ry:h}),(0,r.jsx)("text",{className:"react-flow__edge-text",y:l.height/2,dy:"0.3em",ref:o,style:d,children:c}),i]}):null}c6.displayName="EdgeText";let c7=(0,s.memo)(c6);function c8({path:a,labelX:b,labelY:c,label:d,labelStyle:e,labelShowBg:f,labelBgStyle:g,labelBgPadding:h,labelBgBorderRadius:i,interactionWidth:j=20,...k}){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("path",{...k,d:a,fill:"none",className:t(["react-flow__edge-path",k.className])}),j?(0,r.jsx)("path",{d:a,fill:"none",strokeOpacity:0,strokeWidth:j,className:"react-flow__edge-interaction"}):null,d&&an(b)&&an(c)?(0,r.jsx)(c7,{x:b,y:c,label:d,labelStyle:e,labelShowBg:f,labelBgStyle:g,labelBgPadding:h,labelBgBorderRadius:i}):null]})}function c9({pos:a,x1:b,y1:c,x2:d,y2:e}){return a===o.Left||a===o.Right?[.5*(b+d),c]:[b,.5*(c+e)]}function da({sourceX:a,sourceY:b,sourcePosition:c=o.Bottom,targetX:d,targetY:e,targetPosition:f=o.Top}){let[g,h]=c9({pos:c,x1:a,y1:b,x2:d,y2:e}),[i,j]=c9({pos:f,x1:d,y1:e,x2:a,y2:b}),[k,l,m,n]=aL({sourceX:a,sourceY:b,targetX:d,targetY:e,sourceControlX:g,sourceControlY:h,targetControlX:i,targetControlY:j});return[`M${a},${b} C${g},${h} ${i},${j} ${d},${e}`,k,l,m,n]}function db(a){return(0,s.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,sourcePosition:g,targetPosition:h,label:i,labelStyle:j,labelShowBg:k,labelBgStyle:l,labelBgPadding:m,labelBgBorderRadius:n,style:o,markerEnd:p,markerStart:q,interactionWidth:s})=>{let[t,u,v]=da({sourceX:c,sourceY:d,sourcePosition:g,targetX:e,targetY:f,targetPosition:h}),w=a.isInternal?void 0:b;return(0,r.jsx)(c8,{id:w,path:t,labelX:u,labelY:v,label:i,labelStyle:j,labelShowBg:k,labelBgStyle:l,labelBgPadding:m,labelBgBorderRadius:n,style:o,markerEnd:p,markerStart:q,interactionWidth:s})})}let dc=db({isInternal:!1}),dd=db({isInternal:!0});function de(a){return(0,s.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:j,labelBgPadding:k,labelBgBorderRadius:l,style:m,sourcePosition:n=o.Bottom,targetPosition:p=o.Top,markerEnd:q,markerStart:s,pathOptions:t,interactionWidth:u})=>{let[v,w,x]=aX({sourceX:c,sourceY:d,sourcePosition:n,targetX:e,targetY:f,targetPosition:p,borderRadius:t?.borderRadius,offset:t?.offset,stepPosition:t?.stepPosition}),y=a.isInternal?void 0:b;return(0,r.jsx)(c8,{id:y,path:v,labelX:w,labelY:x,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:j,labelBgPadding:k,labelBgBorderRadius:l,style:m,markerEnd:q,markerStart:s,interactionWidth:u})})}dc.displayName="SimpleBezierEdge",dd.displayName="SimpleBezierEdgeInternal";let df=de({isInternal:!1}),dg=de({isInternal:!0});function dh(a){return(0,s.memo)(({id:b,...c})=>{let d=a.isInternal?void 0:b;return(0,r.jsx)(df,{...c,id:d,pathOptions:(0,s.useMemo)(()=>({borderRadius:0,offset:c.pathOptions?.offset}),[c.pathOptions?.offset])})})}df.displayName="SmoothStepEdge",dg.displayName="SmoothStepEdgeInternal";let di=dh({isInternal:!1}),dj=dh({isInternal:!0});function dk(a){return(0,s.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:j,labelBgPadding:k,labelBgBorderRadius:l,style:m,markerEnd:n,markerStart:o,interactionWidth:p})=>{let[q,s,t]=aU({sourceX:c,sourceY:d,targetX:e,targetY:f}),u=a.isInternal?void 0:b;return(0,r.jsx)(c8,{id:u,path:q,labelX:s,labelY:t,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:j,labelBgPadding:k,labelBgBorderRadius:l,style:m,markerEnd:n,markerStart:o,interactionWidth:p})})}di.displayName="StepEdge",dj.displayName="StepEdgeInternal";let dl=dk({isInternal:!1}),dm=dk({isInternal:!0});function dn(a){return(0,s.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,sourcePosition:g=o.Bottom,targetPosition:h=o.Top,label:i,labelStyle:j,labelShowBg:k,labelBgStyle:l,labelBgPadding:m,labelBgBorderRadius:n,style:p,markerEnd:q,markerStart:s,pathOptions:t,interactionWidth:u})=>{let[v,w,x]=aO({sourceX:c,sourceY:d,sourcePosition:g,targetX:e,targetY:f,targetPosition:h,curvature:t?.curvature}),y=a.isInternal?void 0:b;return(0,r.jsx)(c8,{id:y,path:v,labelX:w,labelY:x,label:i,labelStyle:j,labelShowBg:k,labelBgStyle:l,labelBgPadding:m,labelBgBorderRadius:n,style:p,markerEnd:q,markerStart:s,interactionWidth:u})})}dl.displayName="StraightEdge",dm.displayName="StraightEdgeInternal";let dp=dn({isInternal:!1}),dq=dn({isInternal:!0});dp.displayName="BezierEdge",dq.displayName="BezierEdgeInternal";let dr={default:dq,straight:dm,step:dj,smoothstep:dg,simplebezier:dd},ds={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null,zIndex:void 0},dt="react-flow__edgeupdater";function du({position:a,centerX:b,centerY:c,radius:d=10,onMouseDown:e,onMouseEnter:f,onMouseOut:g,type:h}){return(0,r.jsx)("circle",{onMouseDown:e,onMouseEnter:f,onMouseOut:g,className:t([dt,`${dt}-${h}`]),cx:a===o.Left?b-d:a===o.Right?b+d:b,cy:a===o.Top?c-d:a===o.Bottom?c+d:c,r:d,stroke:"transparent",fill:"transparent"})}function dv({isReconnectable:a,reconnectRadius:b,edge:c,sourceX:d,sourceY:e,targetX:f,targetY:g,sourcePosition:h,targetPosition:i,onReconnect:j,onReconnectStart:k,onReconnectEnd:l,setReconnecting:m,setUpdateHover:n}){let o=bS(),p=(a,b)=>{if(0!==a.button)return;let{autoPanOnConnect:d,domNode:e,connectionMode:f,connectionRadius:g,lib:h,onConnectStart:i,cancelConnection:n,nodeLookup:p,rfId:q,panBy:r,updateConnection:s}=o.getState(),t="target"===b.type;bp.onPointerDown(a.nativeEvent,{autoPanOnConnect:d,connectionMode:f,connectionRadius:g,domNode:e,handleId:b.id,nodeId:b.nodeId,nodeLookup:p,isTarget:t,edgeUpdaterType:b.type,lib:h,flowId:q,cancelConnection:n,panBy:r,isValidConnection:(...a)=>o.getState().isValidConnection?.(...a)??!0,onConnect:a=>j?.(c,a),onConnectStart:(d,e)=>{m(!0),k?.(a,c,b.type),i?.(d,e)},onConnectEnd:(...a)=>o.getState().onConnectEnd?.(...a),onReconnectEnd:(a,d)=>{m(!1),l?.(a,c,b.type,d)},updateConnection:s,getTransform:()=>o.getState().transform,getFromHandle:()=>o.getState().connection.fromHandle,dragThreshold:o.getState().connectionDragThreshold,handleDomNode:a.currentTarget})},q=()=>n(!0),s=()=>n(!1);return(0,r.jsxs)(r.Fragment,{children:[(!0===a||"source"===a)&&(0,r.jsx)(du,{position:h,centerX:d,centerY:e,radius:b,onMouseDown:a=>p(a,{nodeId:c.target,id:c.targetHandle??null,type:"target"}),onMouseEnter:q,onMouseOut:s,type:"source"}),(!0===a||"target"===a)&&(0,r.jsx)(du,{position:i,centerX:f,centerY:g,radius:b,onMouseDown:a=>p(a,{nodeId:c.source,id:c.sourceHandle??null,type:"source"}),onMouseEnter:q,onMouseOut:s,type:"target"})]})}var dw=(0,s.memo)(function({id:a,edgesFocusable:b,edgesReconnectable:c,elementsSelectable:d,onClick:e,onDoubleClick:f,onContextMenu:g,onMouseEnter:h,onMouseMove:i,onMouseLeave:j,reconnectRadius:k,onReconnect:l,onReconnectStart:m,onReconnectEnd:n,rfId:o,edgeTypes:p,noPanClassName:q,onError:u,disableKeyboardA11y:v}){let w=bR(b=>b.edgeLookup.get(a)),x=bR(a=>a.defaultEdgeOptions),y=(w=x?{...x,...w}:w).type||"default",z=p?.[y]||dr[y];void 0===z&&(u?.("011",L.error011(y)),y="default",z=p?.default||dr.default);let A=!!(w.focusable||b&&void 0===w.focusable),B=void 0!==l&&(w.reconnectable||c&&void 0===w.reconnectable),C=!!(w.selectable||d&&void 0===w.selectable),D=(0,s.useRef)(null),[E,F]=(0,s.useState)(!1),[G,H]=(0,s.useState)(!1),I=bS(),{zIndex:J=w.zIndex,sourceX:K,sourceY:M,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R}=bR((0,s.useCallback)(b=>{let c=b.nodeLookup.get(w.source),d=b.nodeLookup.get(w.target);if(!c||!d)return ds;let e=aZ({id:a,sourceNode:c,targetNode:d,sourceHandle:w.sourceHandle||null,targetHandle:w.targetHandle||null,connectionMode:b.connectionMode,onError:u}),f=aQ({selected:w.selected,zIndex:w.zIndex,sourceNode:c,targetNode:d,elevateOnSelect:b.elevateEdgesOnSelect,zIndexMode:b.zIndexMode});return{...e||ds,zIndex:f}},[w.source,w.target,w.sourceHandle,w.targetHandle,w.selected,w.zIndex,u]),bN),S=(0,s.useMemo)(()=>w.markerStart?`url('#${a1(w.markerStart,o)}')`:void 0,[w.markerStart,o]),T=(0,s.useMemo)(()=>w.markerEnd?`url('#${a1(w.markerEnd,o)}')`:void 0,[w.markerEnd,o]);if(w.hidden||null===K||null===M||null===O||null===P)return null;let U=f?a=>{f(a,{...w})}:void 0,V=g?a=>{g(a,{...w})}:void 0,W=h?a=>{h(a,{...w})}:void 0,X=i?a=>{i(a,{...w})}:void 0,Y=j?a=>{j(a,{...w})}:void 0;return(0,r.jsx)("svg",{style:{zIndex:J},children:(0,r.jsxs)("g",{className:t(["react-flow__edge",`react-flow__edge-${y}`,w.className,q,{selected:w.selected,animated:w.animated,inactive:!C&&!e,updating:E,selectable:C}]),onClick:b=>{let{addSelectedEdges:c,unselectNodesAndEdges:d,multiSelectionActive:f}=I.getState();C&&(I.setState({nodesSelectionActive:!1}),w.selected&&f?(d({nodes:[],edges:[w]}),D.current?.blur()):c([a])),e&&e(b,w)},onDoubleClick:U,onContextMenu:V,onMouseEnter:W,onMouseMove:X,onMouseLeave:Y,onKeyDown:A?b=>{if(!v&&N.includes(b.key)&&C){let{unselectNodesAndEdges:c,addSelectedEdges:d}=I.getState();"Escape"===b.key?(D.current?.blur(),c({edges:[w]})):d([a])}}:void 0,tabIndex:A?0:void 0,role:w.ariaRole??(A?"group":"img"),"aria-roledescription":"edge","data-id":a,"data-testid":`rf__edge-${a}`,"aria-label":null===w.ariaLabel?void 0:w.ariaLabel||`Edge from ${w.source} to ${w.target}`,"aria-describedby":A?`${bW}-${o}`:void 0,ref:D,...w.domAttributes,children:[!G&&(0,r.jsx)(z,{id:a,source:w.source,target:w.target,type:w.type,selected:w.selected,animated:w.animated,selectable:C,deletable:w.deletable??!0,label:w.label,labelStyle:w.labelStyle,labelShowBg:w.labelShowBg,labelBgStyle:w.labelBgStyle,labelBgPadding:w.labelBgPadding,labelBgBorderRadius:w.labelBgBorderRadius,sourceX:K,sourceY:M,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R,data:w.data,style:w.style,sourceHandleId:w.sourceHandle,targetHandleId:w.targetHandle,markerStart:S,markerEnd:T,pathOptions:"pathOptions"in w?w.pathOptions:void 0,interactionWidth:w.interactionWidth}),B&&(0,r.jsx)(dv,{edge:w,isReconnectable:B,reconnectRadius:k,onReconnect:l,onReconnectStart:m,onReconnectEnd:n,sourceX:K,sourceY:M,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R,setUpdateHover:F,setReconnecting:H})]})})});let dx=a=>({edgesFocusable:a.edgesFocusable,edgesReconnectable:a.edgesReconnectable,elementsSelectable:a.elementsSelectable,connectionMode:a.connectionMode,onError:a.onError});function dy({defaultMarkerColor:a,onlyRenderVisibleElements:b,rfId:c,edgeTypes:d,noPanClassName:e,onReconnect:f,onEdgeContextMenu:g,onEdgeMouseEnter:h,onEdgeMouseMove:i,onEdgeMouseLeave:j,onEdgeClick:k,reconnectRadius:l,onEdgeDoubleClick:m,onReconnectStart:n,onReconnectEnd:o,disableKeyboardA11y:p}){let{edgesFocusable:q,edgesReconnectable:t,elementsSelectable:u,onError:v}=bR(dx,bN),w=bR((0,s.useCallback)(a=>{if(!b)return a.edges.map(a=>a.id);let c=[];if(a.width&&a.height)for(let b of a.edges){let d=a.nodeLookup.get(b.source),e=a.nodeLookup.get(b.target);d&&e&&aR({sourceNode:d,targetNode:e,width:a.width,height:a.height,transform:a.transform})&&c.push(b.id)}return c},[b]),bN);return(0,r.jsxs)("div",{className:"react-flow__edges",children:[(0,r.jsx)(c5,{defaultColor:a,rfId:c}),w.map(a=>(0,r.jsx)(dw,{id:a,edgesFocusable:q,edgesReconnectable:t,elementsSelectable:u,noPanClassName:e,onReconnect:f,onContextMenu:g,onMouseEnter:h,onMouseMove:i,onMouseLeave:j,onClick:k,reconnectRadius:l,onDoubleClick:m,onReconnectStart:n,onReconnectEnd:o,rfId:c,onError:v,edgeTypes:d,disableKeyboardA11y:p},a))]})}dy.displayName="EdgeRenderer";let dz=(0,s.memo)(dy),dA=a=>`translate(${a[0]}px,${a[1]}px) scale(${a[2]})`;function dB({children:a}){let b=bS(),c=(0,s.useRef)(null),[d]=(0,s.useState)(()=>b.getState().transform);return cq(()=>{let a=null,d=()=>{let d=b.getState().transform;(!a||d[0]!==a[0]||d[1]!==a[1]||d[2]!==a[2])&&(a=d,c.current&&(c.current.style.transform=dA(d)))};return d(),b.subscribe(d)},[b]),(0,r.jsx)("div",{ref:c,className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:dA(d)},children:a})}let dC=a=>a.panZoom?.syncViewport;function dD(a){return a.connection.inProgress?{...a.connection,to:aq(a.connection.to,a.transform)}:{...a.connection}}let dE=a=>({nodesConnectable:a.nodesConnectable,isValid:a.connection.isValid,inProgress:a.connection.inProgress,width:a.width,height:a.height});function dF({containerStyle:a,style:b,type:c,component:d}){let{nodesConnectable:e,width:f,height:g,isValid:h,inProgress:i}=bR(dE,bN);return f&&e&&i?(0,r.jsx)("svg",{style:a,width:f,height:g,className:"react-flow__connectionline react-flow__container",children:(0,r.jsx)("g",{className:t(["react-flow__connection",aC(h)]),children:(0,r.jsx)(dG,{style:b,type:c,CustomComponent:d,isValid:h})})}):null}let dG=({style:a,type:b=m.Bezier,CustomComponent:c,isValid:d})=>{let{inProgress:e,from:f,fromNode:g,fromHandle:h,fromPosition:i,to:j,toNode:k,toHandle:l,toPosition:n,pointer:o}=bR(dD,bN);if(!e)return;if(c)return(0,r.jsx)(c,{connectionLineType:b,connectionLineStyle:a,fromNode:g,fromHandle:h,fromX:f.x,fromY:f.y,toX:j.x,toY:j.y,fromPosition:i,toPosition:n,connectionStatus:aC(d),toNode:k,toHandle:l,pointer:o});let p="",q={sourceX:f.x,sourceY:f.y,sourcePosition:i,targetX:j.x,targetY:j.y,targetPosition:n};switch(b){case m.Bezier:[p]=aO(q);break;case m.SimpleBezier:[p]=da(q);break;case m.Step:[p]=aX({...q,borderRadius:0});break;case m.SmoothStep:[p]=aX(q);break;default:[p]=aU(q)}return(0,r.jsx)("path",{d:p,fill:"none",className:"react-flow__connection-path",style:a})};dG.displayName="ConnectionLine";let dH={};function dI(a=dH){(0,s.useRef)(a),bS(),(0,s.useEffect)(()=>{},[a])}function dJ({nodeTypes:a,edgeTypes:b,onInit:c,onNodeClick:d,onEdgeClick:e,onNodeDoubleClick:f,onEdgeDoubleClick:g,onNodeMouseEnter:h,onNodeMouseMove:i,onNodeMouseLeave:j,onNodeContextMenu:k,onSelectionContextMenu:l,onSelectionStart:m,onSelectionEnd:n,connectionLineType:o,connectionLineStyle:p,connectionLineComponent:q,connectionLineContainerStyle:t,selectionKeyCode:u,selectionOnDrag:v,selectionMode:w,multiSelectionKeyCode:x,panActivationKeyCode:y,zoomActivationKeyCode:z,deleteKeyCode:A,onlyRenderVisibleElements:B,elementsSelectable:C,defaultViewport:D,translateExtent:E,minZoom:F,maxZoom:G,preventScrolling:H,defaultMarkerColor:I,zoomOnScroll:J,zoomOnPinch:K,panOnScroll:L,panOnScrollSpeed:M,panOnScrollMode:N,zoomOnDoubleClick:O,panOnDrag:P,autoPanOnSelection:Q,onPaneClick:R,onPaneMouseEnter:S,onPaneMouseMove:T,onPaneMouseLeave:U,onPaneScroll:V,onPaneContextMenu:W,paneClickDistance:X,nodeClickDistance:Y,onEdgeContextMenu:Z,onEdgeMouseEnter:$,onEdgeMouseMove:_,onEdgeMouseLeave:aa,reconnectRadius:ab,onReconnect:ac,onReconnectStart:ad,onReconnectEnd:ae,noDragClassName:af,noWheelClassName:ag,noPanClassName:ah,disableKeyboardA11y:ai,nodeExtent:aj,rfId:ak,viewport:al,onViewportChange:am,nodesDraggable:an}){let ao,ap,aq,ar;return dI(a),dI(b),bS(),(0,s.useRef)(!1),(0,s.useEffect)(()=>{},[]),ao=cv(),ap=(0,s.useRef)(!1),(0,s.useEffect)(()=>{!ap.current&&ao.viewportInitialized&&c&&(setTimeout(()=>c(ao),1),ap.current=!0)},[c,ao.viewportInitialized]),aq=bR(dC),ar=bS(),(0,s.useEffect)(()=>{al&&(aq?.(al),ar.setState({transform:[al.x,al.y,al.zoom]}))},[al,aq]),(0,r.jsx)(cY,{onPaneClick:R,onPaneMouseEnter:S,onPaneMouseMove:T,onPaneMouseLeave:U,onPaneContextMenu:W,onPaneScroll:V,paneClickDistance:X,deleteKeyCode:A,selectionKeyCode:u,selectionOnDrag:v,selectionMode:w,onSelectionStart:m,onSelectionEnd:n,multiSelectionKeyCode:x,panActivationKeyCode:y,zoomActivationKeyCode:z,elementsSelectable:C,zoomOnScroll:J,zoomOnPinch:K,zoomOnDoubleClick:O,panOnScroll:L,panOnScrollSpeed:M,panOnScrollMode:N,panOnDrag:P,autoPanOnSelection:Q,defaultViewport:D,translateExtent:E,minZoom:F,maxZoom:G,onSelectionContextMenu:l,preventScrolling:H,noDragClassName:af,noWheelClassName:ag,noPanClassName:ah,disableKeyboardA11y:ai,onViewportChange:am,isControlledViewport:!!al,children:(0,r.jsxs)(dB,{children:[(0,r.jsx)(dz,{edgeTypes:b,onEdgeClick:e,onEdgeDoubleClick:g,onReconnect:ac,onReconnectStart:ad,onReconnectEnd:ae,onlyRenderVisibleElements:B,onEdgeContextMenu:Z,onEdgeMouseEnter:$,onEdgeMouseMove:_,onEdgeMouseLeave:aa,reconnectRadius:ab,defaultMarkerColor:I,noPanClassName:ah,disableKeyboardA11y:ai,rfId:ak}),(0,r.jsx)(dF,{style:p,type:o,component:q,containerStyle:t}),(0,r.jsx)("div",{className:"react-flow__edgelabel-renderer"}),(0,r.jsx)(c1,{nodeTypes:a,onNodeClick:d,onNodeDoubleClick:f,onNodeMouseEnter:h,onNodeMouseMove:i,onNodeMouseLeave:j,onNodeContextMenu:k,nodeClickDistance:Y,onlyRenderVisibleElements:B,noPanClassName:ah,noDragClassName:af,disableKeyboardA11y:ai,nodeExtent:aj,rfId:ak,nodesDraggable:an}),(0,r.jsx)("div",{className:"react-flow__viewport-portal"})]})})}dJ.displayName="GraphView";let dK=(0,s.memo)(dJ),dL=ao("React Flow","https://reactflow.dev/"),dM=({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:e,height:f,fitView:g,fitViewOptions:h,minZoom:i=.5,maxZoom:k=2,nodeOrigin:l,nodeExtent:m,zIndexMode:n="basic"}={})=>{let o=new Map,p=new Map,q=new Map,r=new Map,s=d??b??[],t=c??a??[],u=l??[0,0],v=m??M;bh(q,r,s);let{nodesInitialized:w}=ba(t,o,p,{nodeOrigin:u,nodeExtent:v,zIndexMode:n}),x=[0,0,1];if(g&&e&&f){let{x:a,y:b,zoom:c}=at(W(o,{filter:a=>!!((a.width||a.initialWidth)&&(a.height||a.initialHeight))}),e,f,i,k,h?.padding??.1);x=[a,b,c]}return{rfId:"1",width:e??0,height:f??0,transform:x,nodes:t,nodesInitialized:w,nodeLookup:o,parentLookup:p,edges:s,edgeLookup:r,connectionLookup:q,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:void 0!==c,hasDefaultEdges:void 0!==d,panZoom:null,minZoom:i,maxZoom:k,translateExtent:M,nodeExtent:v,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:j.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:u,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:g??!1,fitViewOptions:h,fitViewResolver:null,connection:{...P},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:dL,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:O,zIndexMode:n,defaultEdgeOptions:void 0,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map,onNodesDelete:void 0,onEdgesDelete:void 0,onDelete:void 0,onBeforeDelete:void 0,onViewportChangeStart:void 0,onViewportChange:void 0,onViewportChangeEnd:void 0,onNodeDragStart:void 0,onNodeDrag:void 0,onNodeDragStop:void 0,onSelectionDragStart:void 0,onSelectionDrag:void 0,onSelectionDragStop:void 0,onMoveStart:void 0,onMove:void 0,onMoveEnd:void 0,onConnect:void 0,onConnectStart:void 0,onConnectEnd:void 0,onClickConnectStart:void 0,onClickConnectEnd:void 0}};function dN({initialNodes:a,initialEdges:b,defaultNodes:c,defaultEdges:d,initialWidth:e,initialHeight:f,initialMinZoom:g,initialMaxZoom:h,initialFitViewOptions:i,fitView:j,nodeOrigin:k,nodeExtent:l,zIndexMode:m,children:n}){let[p]=(0,s.useState)(()=>(({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:e,height:f,fitView:g,fitViewOptions:h,minZoom:i,maxZoom:j,nodeOrigin:k,nodeExtent:l,zIndexMode:m})=>{let n,p;return n=(n,p)=>{async function q(){let{nodeLookup:a,panZoom:b,fitViewOptions:c,fitViewResolver:d,width:e,height:f,minZoom:g,maxZoom:h}=p();b&&(await Y({nodes:a,width:e,height:f,panZoom:b,minZoom:g,maxZoom:h},c),d?.resolve(!0),n({fitViewResolver:null}))}return{...dM({nodes:a,edges:b,width:e,height:f,fitView:g,fitViewOptions:h,minZoom:i,maxZoom:j,nodeOrigin:k,nodeExtent:l,defaultNodes:c,defaultEdges:d,zIndexMode:m}),setNodes:a=>{let{nodeLookup:b,parentLookup:c,nodeOrigin:d,nodeExtent:e,elevateNodesOnSelect:f,fitViewQueued:g,zIndexMode:h,nodesSelectionActive:i}=p(),{nodesInitialized:j,hasSelectedNodes:k}=ba(a,b,c,{nodeOrigin:d,nodeExtent:e,elevateNodesOnSelect:f,checkEquality:!0,zIndexMode:h}),l=i&&k;g&&j?(q(),n({nodes:a,nodesInitialized:j,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:l})):n({nodes:a,nodesInitialized:j,nodesSelectionActive:l})},setEdges:a=>{let{connectionLookup:b,edgeLookup:c}=p();bh(b,c,a),n({edges:a})},setDefaultNodesAndEdges:(a,b)=>{if(a){let{setNodes:b}=p();b(a),n({hasDefaultNodes:!0})}if(b){let{setEdges:a}=p();a(b),n({hasDefaultEdges:!0})}},updateNodeInternals:a=>{let{triggerNodeChanges:b,nodeLookup:c,parentLookup:d,domNode:e,nodeOrigin:f,nodeExtent:g,debug:h,fitViewQueued:i,zIndexMode:j}=p(),{changes:k,updatedInternals:l}=be(a,c,d,e,f,g,j);l&&(a8(c,d,{nodeOrigin:f,nodeExtent:g,zIndexMode:j}),i?(q(),n({fitViewQueued:!1,fitViewOptions:void 0})):n({}),k?.length>0&&(h&&console.log("React Flow: trigger node changes",k),b?.(k)))},updateNodePositions:(a,b=!1)=>{let c=[],d=[],{nodeLookup:e,triggerNodeChanges:f,connection:g,updateConnection:h,onNodesChangeMiddlewareMap:i}=p();for(let[f,i]of a){let a=e.get(f),j=!!(a?.expandParent&&a?.parentId&&i?.position),k={id:f,type:"position",position:j?{x:Math.max(0,i.position.x),y:Math.max(0,i.position.y)}:i.position,dragging:b};if(a&&g.inProgress&&g.fromNode.id===a.id){let b=a_(a,g.fromHandle,o.Left,!0);h({...g,from:b})}j&&a.parentId&&c.push({id:f,parentId:a.parentId,rect:{...i.internals.positionAbsolute,width:i.measured.width??0,height:i.measured.height??0}}),d.push(k)}if(c.length>0){let{parentLookup:a,nodeOrigin:b}=p(),f=bd(c,e,a,b);d.push(...f)}for(let a of i.values())d=a(d);f(d)},triggerNodeChanges:a=>{let{onNodesChange:b,setNodes:c,nodes:d,hasDefaultNodes:e,debug:f}=p();a?.length&&(e&&c(cj(a,d)),f&&console.log("React Flow: trigger node changes",a),b?.(a))},triggerEdgeChanges:a=>{let{onEdgesChange:b,setEdges:c,edges:d,hasDefaultEdges:e,debug:f}=p();a?.length&&(e&&c(ci(a,d)),f&&console.log("React Flow: trigger edge changes",a),b?.(a))},addSelectedNodes:a=>{let{multiSelectionActive:b,edgeLookup:c,nodeLookup:d,triggerNodeChanges:e,triggerEdgeChanges:f}=p();b?e(a.map(a=>ck(a,!0))):(e(cl(d,new Set([...a]),!0)),f(cl(c)))},addSelectedEdges:a=>{let{multiSelectionActive:b,edgeLookup:c,nodeLookup:d,triggerNodeChanges:e,triggerEdgeChanges:f}=p();b?f(a.map(a=>ck(a,!0))):(f(cl(c,new Set([...a]))),e(cl(d,new Set,!0)))},unselectNodesAndEdges:({nodes:a,edges:b}={})=>{let{edges:c,nodes:d,nodeLookup:e,triggerNodeChanges:f,triggerEdgeChanges:g}=p(),h=[];for(let b of a||d){if(!b.selected)continue;let a=e.get(b.id);a&&(a.selected=!1),h.push(ck(b.id,!1))}let i=[];for(let a of b||c)a.selected&&i.push(ck(a.id,!1));f(h),g(i)},setMinZoom:a=>{let{panZoom:b,maxZoom:c}=p();b?.setScaleExtent([a,c]),n({minZoom:a})},setMaxZoom:a=>{let{panZoom:b,minZoom:c}=p();b?.setScaleExtent([c,a]),n({maxZoom:a})},setTranslateExtent:a=>{p().panZoom?.setTranslateExtent(a),n({translateExtent:a})},resetSelectedElements:()=>{let{edges:a,nodes:b,triggerNodeChanges:c,triggerEdgeChanges:d,elementsSelectable:e}=p();if(!e)return;let f=b.reduce((a,b)=>b.selected?[...a,ck(b.id,!1)]:a,[]),g=a.reduce((a,b)=>b.selected?[...a,ck(b.id,!1)]:a,[]);c(f),d(g)},setNodeExtent:a=>{let{nodes:b,nodeLookup:c,parentLookup:d,nodeOrigin:e,elevateNodesOnSelect:f,nodeExtent:g,zIndexMode:h}=p();(a[0][0]!==g[0][0]||a[0][1]!==g[0][1]||a[1][0]!==g[1][0]||a[1][1]!==g[1][1])&&(ba(b,c,d,{nodeOrigin:e,nodeExtent:a,elevateNodesOnSelect:f,checkEquality:!1,zIndexMode:h}),n({nodeExtent:a}))},panBy:a=>{let{transform:b,width:c,height:d,panZoom:e,translateExtent:f}=p();return bf({delta:a,panZoom:e,transform:b,translateExtent:f,width:c,height:d})},setCenter:async(a,b,c)=>{let{width:d,height:e,maxZoom:f,panZoom:g}=p();if(!g)return!1;let h=void 0!==c?.zoom?c.zoom:f;return await g.setViewport({x:d/2-a*h,y:e/2-b*h,zoom:h},{duration:c?.duration,ease:c?.ease,interpolate:c?.interpolate}),!0},cancelConnection:()=>{n({connection:{...P}})},updateConnection:a=>{n({connection:a})},reset:()=>n({...dM()})}},p=Object.is,n?bM(n,p):bM})({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:e,height:f,fitView:j,minZoom:g,maxZoom:h,fitViewOptions:i,nodeOrigin:k,nodeExtent:l,zIndexMode:m}));return(0,r.jsx)(bP,{value:p,children:(0,r.jsx)(ct,{children:(0,r.jsx)(cO,{children:n})})})}function dO({children:a,nodes:b,edges:c,defaultNodes:d,defaultEdges:e,width:f,height:g,fitView:h,fitViewOptions:i,minZoom:j,maxZoom:k,nodeOrigin:l,nodeExtent:m,zIndexMode:n}){return(0,s.useContext)(bO)?(0,r.jsx)(r.Fragment,{children:a}):(0,r.jsx)(dN,{initialNodes:b,initialEdges:c,defaultNodes:d,defaultEdges:e,initialWidth:f,initialHeight:g,fitView:h,initialFitViewOptions:i,initialMinZoom:j,initialMaxZoom:k,nodeOrigin:l,nodeExtent:m,zIndexMode:n,children:a})}let dP={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};var dQ=cp(function({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,className:e,nodeTypes:f,edgeTypes:g,onNodeClick:h,onEdgeClick:i,onInit:j,onMove:n,onMoveStart:o,onMoveEnd:p,onConnect:q,onConnectStart:u,onConnectEnd:v,onClickConnectStart:w,onClickConnectEnd:x,onNodeMouseEnter:y,onNodeMouseMove:z,onNodeMouseLeave:A,onNodeContextMenu:B,onNodeDoubleClick:C,onNodeDragStart:D,onNodeDrag:E,onNodeDragStop:F,onNodesDelete:G,onEdgesDelete:H,onDelete:I,onSelectionChange:J,onSelectionDragStart:K,onSelectionDrag:L,onSelectionDragStop:N,onSelectionContextMenu:O,onSelectionStart:P,onSelectionEnd:Q,onBeforeDelete:R,connectionMode:S,connectionLineType:T=m.Bezier,connectionLineStyle:U,connectionLineComponent:V,connectionLineContainerStyle:W,deleteKeyCode:X="Backspace",selectionKeyCode:Y="Shift",selectionOnDrag:Z=!1,selectionMode:$=l.Full,panActivationKeyCode:_="Space",multiSelectionKeyCode:aa=au()?"Meta":"Control",zoomActivationKeyCode:ab=au()?"Meta":"Control",snapToGrid:ac,snapGrid:ad,onlyRenderVisibleElements:ae=!1,selectNodesOnDrag:af,nodesDraggable:ag,autoPanOnNodeFocus:ah,nodesConnectable:ai,nodesFocusable:aj,nodeOrigin:ak=b8,edgesFocusable:al,edgesReconnectable:am,elementsSelectable:an=!0,defaultViewport:ao=b9,minZoom:ap=.5,maxZoom:aq=2,translateExtent:ar=M,preventScrolling:as=!0,nodeExtent:at,defaultMarkerColor:av="#b1b1b7",zoomOnScroll:aw=!0,zoomOnPinch:ax=!0,panOnScroll:ay=!1,panOnScrollSpeed:az=.5,panOnScrollMode:aA=k.Free,zoomOnDoubleClick:aB=!0,panOnDrag:aC=!0,onPaneClick:aD,onPaneMouseEnter:aE,onPaneMouseMove:aF,onPaneMouseLeave:aG,onPaneScroll:aH,onPaneContextMenu:aI,paneClickDistance:aJ=1,nodeClickDistance:aK=0,children:aL,onReconnect:aM,onReconnectStart:aN,onReconnectEnd:aO,onEdgeContextMenu:aP,onEdgeDoubleClick:aQ,onEdgeMouseEnter:aR,onEdgeMouseMove:aS,onEdgeMouseLeave:aT,reconnectRadius:aU=10,onNodesChange:aV,onEdgesChange:aW,noDragClassName:aX="nodrag",noWheelClassName:aY="nowheel",noPanClassName:aZ="nopan",fitView:a$,fitViewOptions:a_,connectOnClick:a0,attributionPosition:a1,proOptions:a2,defaultEdgeOptions:a3,elevateNodesOnSelect:a4=!0,elevateEdgesOnSelect:a5=!1,disableKeyboardA11y:a6=!1,autoPanOnConnect:a7,autoPanOnNodeDrag:a8,autoPanOnSelection:a9=!0,autoPanSpeed:ba,connectionRadius:bb,isValidConnection:bc,onError:bd,style:be,id:bf,nodeDragThreshold:bg,connectionDragThreshold:bh,viewport:bi,onViewportChange:bj,width:bk,height:bl,colorMode:bm="light",debug:bn,onScroll:bo,ariaLabelConfig:bp,zIndexMode:bq="basic",...br},bs){let bt=bf||"1",bu=function(a){let[b,c]=(0,s.useState)("system"===a?null:a);return(0,s.useEffect)(()=>"system"!==a?void c(a):(c("light"),()=>{}),[a]),null!==b?b:"light"}(bm),bv=(0,s.useCallback)(a=>{a.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),bo?.(a)},[bo]);return(0,r.jsx)("div",{"data-testid":"rf__wrapper",...br,onScroll:bv,style:{...be,...dP},ref:bs,className:t(["react-flow",e,bu]),id:bf,role:"application",children:(0,r.jsxs)(dO,{nodes:a,edges:b,width:bk,height:bl,fitView:a$,fitViewOptions:a_,minZoom:ap,maxZoom:aq,nodeOrigin:ak,nodeExtent:at,zIndexMode:bq,children:[(0,r.jsx)(cd,{nodes:a,edges:b,defaultNodes:c,defaultEdges:d,onConnect:q,onConnectStart:u,onConnectEnd:v,onClickConnectStart:w,onClickConnectEnd:x,nodesDraggable:ag,autoPanOnNodeFocus:ah,nodesConnectable:ai,nodesFocusable:aj,edgesFocusable:al,edgesReconnectable:am,elementsSelectable:an,elevateNodesOnSelect:a4,elevateEdgesOnSelect:a5,minZoom:ap,maxZoom:aq,nodeExtent:at,onNodesChange:aV,onEdgesChange:aW,snapToGrid:ac,snapGrid:ad,connectionMode:S,translateExtent:ar,connectOnClick:a0,defaultEdgeOptions:a3,fitView:a$,fitViewOptions:a_,onNodesDelete:G,onEdgesDelete:H,onDelete:I,onNodeDragStart:D,onNodeDrag:E,onNodeDragStop:F,onSelectionDrag:L,onSelectionDragStart:K,onSelectionDragStop:N,onMove:n,onMoveStart:o,onMoveEnd:p,noPanClassName:aZ,nodeOrigin:ak,rfId:bt,autoPanOnConnect:a7,autoPanOnNodeDrag:a8,autoPanSpeed:ba,onError:bd,connectionRadius:bb,isValidConnection:bc,selectNodesOnDrag:af,nodeDragThreshold:bg,connectionDragThreshold:bh,onBeforeDelete:R,debug:bn,ariaLabelConfig:bp,zIndexMode:bq}),(0,r.jsx)(dK,{onInit:j,onNodeClick:h,onEdgeClick:i,onNodeMouseEnter:y,onNodeMouseMove:z,onNodeMouseLeave:A,onNodeContextMenu:B,onNodeDoubleClick:C,nodeTypes:f,edgeTypes:g,connectionLineType:T,connectionLineStyle:U,connectionLineComponent:V,connectionLineContainerStyle:W,selectionKeyCode:Y,selectionOnDrag:Z,selectionMode:$,deleteKeyCode:X,multiSelectionKeyCode:aa,panActivationKeyCode:_,zoomActivationKeyCode:ab,onlyRenderVisibleElements:ae,defaultViewport:ao,translateExtent:ar,minZoom:ap,maxZoom:aq,preventScrolling:as,zoomOnScroll:aw,zoomOnPinch:ax,zoomOnDoubleClick:aB,panOnScroll:ay,panOnScrollSpeed:az,panOnScrollMode:aA,panOnDrag:aC,autoPanOnSelection:a9,onPaneClick:aD,onPaneMouseEnter:aE,onPaneMouseMove:aF,onPaneMouseLeave:aG,onPaneScroll:aH,onPaneContextMenu:aI,paneClickDistance:aJ,nodeClickDistance:aK,onSelectionContextMenu:O,onSelectionStart:P,onSelectionEnd:Q,onReconnect:aM,onReconnectStart:aN,onReconnectEnd:aO,onEdgeContextMenu:aP,onEdgeDoubleClick:aQ,onEdgeMouseEnter:aR,onEdgeMouseMove:aS,onEdgeMouseLeave:aT,reconnectRadius:aU,defaultMarkerColor:av,noDragClassName:aX,noWheelClassName:aY,noPanClassName:aZ,rfId:bt,disableKeyboardA11y:a6,nodeExtent:at,viewport:bi,onViewportChange:bj,nodesDraggable:ag}),(0,r.jsx)(b7,{onSelectionChange:J}),aL,(0,r.jsx)(b1,{proOptions:a2,position:a1}),(0,r.jsx)(b$,{rfId:bt,disableKeyboardA11y:a6})]})})});function dR({dimensions:a,lineWidth:b,variant:c,className:d}){return(0,r.jsx)("path",{strokeWidth:b,d:`M${a[0]/2} 0 V${a[1]} M0 ${a[1]/2} H${a[0]}`,className:t(["react-flow__background-pattern",c,d])})}function dS({radius:a,className:b}){return(0,r.jsx)("circle",{cx:a,cy:a,r:a,className:t(["react-flow__background-pattern","dots",b])})}L.error014(),(i=q||(q={})).Lines="lines",i.Dots="dots",i.Cross="cross";let dT={[q.Dots]:1,[q.Lines]:1,[q.Cross]:6},dU=a=>({transform:a.transform,patternId:`pattern-${a.rfId}`});function dV({id:a,variant:b=q.Dots,gap:c=20,size:d,lineWidth:e=1,offset:f=0,color:g,bgColor:h,style:i,className:j,patternClassName:k}){let l=(0,s.useRef)(null),{transform:m,patternId:n}=bR(dU,bN),o=d||dT[b],p=b===q.Dots,u=b===q.Cross,v=Array.isArray(c)?c:[c,c],w=[v[0]*m[2]||1,v[1]*m[2]||1],x=o*m[2],y=Array.isArray(f)?f:[f,f],z=u?[x,x]:w,A=[y[0]*m[2]+z[0]/2,y[1]*m[2]+z[1]/2],B=`${n}${a||""}`;return(0,r.jsxs)("svg",{className:t(["react-flow__background",j]),style:{...i,...cy,"--xy-background-color-props":h,"--xy-background-pattern-color-props":g},ref:l,"data-testid":"rf__background",children:[(0,r.jsx)("pattern",{id:B,x:m[0]%w[0],y:m[1]%w[1],width:w[0],height:w[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${A[0]},-${A[1]})`,children:p?(0,r.jsx)(dS,{radius:x/2,className:k}):(0,r.jsx)(dR,{dimensions:z,lineWidth:e,variant:b,className:k})}),(0,r.jsx)("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${B})`})]})}dV.displayName="Background";let dW=(0,s.memo)(dV);function dX(){return(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:(0,r.jsx)("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function dY(){return(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:(0,r.jsx)("path",{d:"M0 0h32v4.2H0z"})})}function dZ(){return(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:(0,r.jsx)("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function d$(){return(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,r.jsx)("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function d_(){return(0,r.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,r.jsx)("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function d0({children:a,className:b,...c}){return(0,r.jsx)("button",{type:"button",className:t(["react-flow__controls-button",b]),...c,children:a})}let d1=a=>({isInteractive:a.nodesDraggable||a.nodesConnectable||a.elementsSelectable,minZoomReached:a.transform[2]<=a.minZoom,maxZoomReached:a.transform[2]>=a.maxZoom,ariaLabelConfig:a.ariaLabelConfig});function d2({style:a,showZoom:b=!0,showFitView:c=!0,showInteractive:d=!0,fitViewOptions:e,onZoomIn:f,onZoomOut:g,onFitView:h,onInteractiveChange:i,className:j,children:k,position:l="bottom-left",orientation:m="vertical","aria-label":n}){let o=bS(),{isInteractive:p,minZoomReached:q,maxZoomReached:s,ariaLabelConfig:u}=bR(d1,bN),{zoomIn:v,zoomOut:w,fitView:x}=cv();return(0,r.jsxs)(b_,{className:t(["react-flow__controls","horizontal"===m?"horizontal":"vertical",j]),position:l,style:a,"data-testid":"rf__controls","aria-label":n??u["controls.ariaLabel"],children:[b&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(d0,{onClick:()=>{v(),f?.()},className:"react-flow__controls-zoomin",title:u["controls.zoomIn.ariaLabel"],"aria-label":u["controls.zoomIn.ariaLabel"],disabled:s,children:(0,r.jsx)(dX,{})}),(0,r.jsx)(d0,{onClick:()=>{w(),g?.()},className:"react-flow__controls-zoomout",title:u["controls.zoomOut.ariaLabel"],"aria-label":u["controls.zoomOut.ariaLabel"],disabled:q,children:(0,r.jsx)(dY,{})})]}),c&&(0,r.jsx)(d0,{className:"react-flow__controls-fitview",onClick:()=>{x(e),h?.()},title:u["controls.fitView.ariaLabel"],"aria-label":u["controls.fitView.ariaLabel"],children:(0,r.jsx)(dZ,{})}),d&&(0,r.jsx)(d0,{className:"react-flow__controls-interactive",onClick:()=>{o.setState({nodesDraggable:!p,nodesConnectable:!p,elementsSelectable:!p}),i?.(!p)},title:u["controls.interactive.ariaLabel"],"aria-label":u["controls.interactive.ariaLabel"],children:p?(0,r.jsx)(d_,{}):(0,r.jsx)(d$,{})}),k]})}d2.displayName="Controls";let d3=(0,s.memo)(d2),d4=(0,s.memo)(function({id:a,x:b,y:c,width:d,height:e,style:f,color:g,strokeColor:h,strokeWidth:i,className:j,borderRadius:k,shapeRendering:l,selected:m,onClick:n}){let{background:o,backgroundColor:p}=f||{};return(0,r.jsx)("rect",{className:t(["react-flow__minimap-node",{selected:m},j]),x:b,y:c,rx:k,ry:k,width:d,height:e,style:{fill:g||o||p,stroke:h,strokeWidth:i},shapeRendering:l,onClick:n?b=>n(b,a):void 0})}),d5=a=>a.nodes.map(a=>a.id),d6=a=>a instanceof Function?a:()=>a,d7=(0,s.memo)(function({id:a,nodeColorFunc:b,nodeStrokeColorFunc:c,nodeClassNameFunc:d,nodeBorderRadius:e,nodeStrokeWidth:f,shapeRendering:g,NodeComponent:h,onClick:i}){let{node:j,x:k,y:l,width:m,height:n}=bR(b=>{let c=b.nodeLookup.get(a);if(!c)return{node:void 0,x:0,y:0,width:0,height:0};let d=c.internals.userNode,{x:e,y:f}=c.internals.positionAbsolute,{width:g,height:h}=aw(d);return{node:d,x:e,y:f,width:g,height:h}},bN);return j&&!j.hidden&&ax(j)?(0,r.jsx)(h,{x:k,y:l,width:m,height:n,style:j.style,selected:!!j.selected,className:d(j),color:b(j),borderRadius:e,strokeColor:c(j),strokeWidth:f,shapeRendering:g,onClick:i,id:j.id}):null});var d8=(0,s.memo)(function({nodeStrokeColor:a,nodeColor:b,nodeClassName:c="",nodeBorderRadius:d=5,nodeStrokeWidth:e,nodeComponent:f=d4,onClick:g}){let h=bR(d5,bN),i=d6(b),j=d6(a),k=d6(c);return(0,r.jsx)(r.Fragment,{children:h.map(a=>(0,r.jsx)(d7,{id:a,nodeColorFunc:i,nodeStrokeColorFunc:j,nodeClassNameFunc:k,nodeBorderRadius:d,nodeStrokeWidth:e,NodeComponent:f,onClick:g,shapeRendering:"crispEdges"},a))})});let d9=a=>!a.hidden,ea=a=>{let b={x:-a.transform[0]/a.transform[2],y:-a.transform[1]/a.transform[2],width:a.width/a.transform[2],height:a.height/a.transform[2]},c=!1;for(let b of a.nodeLookup.values())if(!b.hidden){c=!0;break}return{viewBB:b,boundingRect:c?aj(W(a.nodeLookup,{filter:d9}),b):b,rfId:a.rfId,panZoom:a.panZoom,translateExtent:a.translateExtent,flowWidth:a.width,flowHeight:a.height,ariaLabelConfig:a.ariaLabelConfig}},eb=(a,b)=>a.x===b.x&&a.y===b.y&&a.width===b.width&&a.height===b.height,ec=(a,b)=>eb(a.viewBB,b.viewBB)&&eb(a.boundingRect,b.boundingRect)&&a.rfId===b.rfId&&a.panZoom===b.panZoom&&a.translateExtent===b.translateExtent&&a.flowWidth===b.flowWidth&&a.flowHeight===b.flowHeight&&a.ariaLabelConfig===b.ariaLabelConfig;function ed({style:a,className:b,nodeStrokeColor:c,nodeColor:d,nodeClassName:e="",nodeBorderRadius:f=5,nodeStrokeWidth:g,nodeComponent:h,bgColor:i,maskColor:j,maskStrokeColor:k,maskStrokeWidth:l,position:m="bottom-right",onClick:n,onNodeClick:o,pannable:p=!1,zoomable:q=!1,ariaLabel:u,inversePan:v,zoomStep:w=1,offsetScale:x=5}){let y=bS(),z=(0,s.useRef)(null),{boundingRect:A,panZoom:B,viewBB:C,rfId:D,translateExtent:E,flowWidth:F,flowHeight:G,ariaLabelConfig:H}=bR(ea,ec),I=a?.width??200,J=a?.height??150,K=Math.max(A.width/I,A.height/J),L=K*I,M=K*J,N=x*K,O=A.x-(L-A.width)/2-N,P=A.y-(M-A.height)/2-N,Q=L+2*N,R=M+2*N,S=`react-flow__minimap-desc-${D}`,T=(0,s.useRef)(0),U=(0,s.useRef)();T.current=K,(0,s.useEffect)(()=>{let a=y.getState().panZoom;if(z.current&&a)return U.current=bq({domNode:z.current,panZoom:a,getTransform:()=>y.getState().transform,getViewScale:()=>T.current}),()=>{U.current?.destroy()}},[B]),(0,s.useEffect)(()=>{U.current?.update({translateExtent:E,width:F,height:G,inversePan:v,pannable:p,zoomStep:w,zoomable:q})},[p,q,v,w,E,F,G]);let V=n?a=>{let[b,c]=U.current?.pointer(a)||[0,0];n(a,{x:b,y:c})}:void 0,W=(0,s.useCallback)((a,b)=>{let c=y.getState().nodeLookup.get(b).internals.userNode;o?.(a,c)},[o]),X=u??H["minimap.ariaLabel"];return(0,r.jsx)(b_,{position:m,style:{...a,"--xy-minimap-background-color-props":"string"==typeof i?i:void 0,"--xy-minimap-mask-background-color-props":"string"==typeof j?j:void 0,"--xy-minimap-mask-stroke-color-props":"string"==typeof k?k:void 0,"--xy-minimap-mask-stroke-width-props":"number"==typeof l?l*K:void 0,"--xy-minimap-node-background-color-props":"string"==typeof d?d:void 0,"--xy-minimap-node-stroke-color-props":"string"==typeof c?c:void 0,"--xy-minimap-node-stroke-width-props":"number"==typeof g?g:void 0},className:t(["react-flow__minimap",b]),"data-testid":"rf__minimap",children:(0,r.jsxs)("svg",{width:I,height:J,viewBox:`${O} ${P} ${Q} ${R}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":S,ref:z,onClick:V,children:[X&&(0,r.jsx)("title",{id:S,children:X}),(0,r.jsx)(d8,{onClick:o?W:void 0,nodeColor:d,nodeStrokeColor:c,nodeBorderRadius:f,nodeClassName:e,nodeStrokeWidth:g,nodeComponent:h}),(0,r.jsx)("path",{className:"react-flow__minimap-mask",d:`M${O-N},${P-N}h${Q+2*N}v${R+2*N}h${-Q-2*N}z
2
+ M${C.x},${C.y}h${C.width}v${C.height}h${-C.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}ed.displayName="MiniMap",(0,s.memo)(ed);let ee={[p.Line]:"right",[p.Handle]:"bottom-right"};(0,s.memo)(function({nodeId:a,position:b,variant:c=p.Handle,className:d,style:e,children:f,color:g,minWidth:h=10,minHeight:i=10,maxWidth:j=Number.MAX_VALUE,maxHeight:k=Number.MAX_VALUE,keepAspectRatio:l=!1,resizeDirection:m,autoScale:n=!0,shouldResize:o,onResizeStart:q,onResize:u,onResizeEnd:v}){let w,x=cL(),y="string"==typeof a?a:x,z=bS(),A=(0,s.useRef)(null),B=c===p.Handle,C=bR((0,s.useCallback)((w=B&&n,a=>w?`${Math.max(1/a.transform[2],1)}`:void 0),[B,n]),bN),D=(0,s.useRef)(null),E=b??ee[c];(0,s.useEffect)(()=>{if(A.current&&y)return D.current||(D.current=bF({domNode:A.current,nodeId:y,getStoreItems:()=>{let{nodeLookup:a,transform:b,snapGrid:c,snapToGrid:d,nodeOrigin:e,domNode:f}=z.getState();return{nodeLookup:a,transform:b,snapGrid:c,snapToGrid:d,nodeOrigin:e,paneDomNode:f}},onChange:(a,b)=>{let{triggerNodeChanges:c,nodeLookup:d,parentLookup:e,nodeOrigin:f}=z.getState(),g=[],h={x:a.x,y:a.y},i=d.get(y);if(i&&i.expandParent&&i.parentId){let b=i.origin??f,c=a.width??i.measured.width??0,j=a.height??i.measured.height??0,k=bd([{id:i.id,parentId:i.parentId,rect:{width:c,height:j,...ay({x:a.x??i.position.x,y:a.y??i.position.y},{width:c,height:j},i.parentId,d,b)}}],d,e,f);g.push(...k),h.x=a.x?Math.max(b[0]*c,a.x):void 0,h.y=a.y?Math.max(b[1]*j,a.y):void 0}if(void 0!==h.x&&void 0!==h.y){let a={id:y,type:"position",position:{...h}};g.push(a)}if(void 0!==a.width&&void 0!==a.height){let b={id:y,type:"dimensions",resizing:!0,setAttributes:!m||("horizontal"===m?"width":"height"),dimensions:{width:a.width,height:a.height}};g.push(b)}for(let a of b){let b={...a,type:"position"};g.push(b)}c(g)},onEnd:({width:a,height:b})=>{z.getState().triggerNodeChanges([{id:y,type:"dimensions",resizing:!1,dimensions:{width:a,height:b}}])}})),D.current.update({controlPosition:E,boundaries:{minWidth:h,minHeight:i,maxWidth:j,maxHeight:k},keepAspectRatio:l,resizeDirection:m,onResizeStart:q,onResize:u,onResizeEnd:v,shouldResize:o}),()=>{D.current?.destroy()}},[E,h,i,j,k,l,q,u,v,o]);let F=E.split("-");return(0,r.jsx)("div",{className:t(["react-flow__resize-control","nodrag",...F,c,d]),ref:A,style:{...e,scale:C,...g&&{[B?"backgroundColor":"borderColor"]:g}},children:f})}),a.s(["Background",0,dW,"BackgroundVariant",0,q,"Controls",0,d3,"Handle",0,cQ,"ReactFlow",0,dQ,"applyNodeChanges",0,cj],365465)},683830,(a,b,c)=>{"use strict";var d=a.r(174897);d.useState,d.useEffect,d.useLayoutEffect,d.useDebugValue,c.useSyncExternalStore=void 0!==d.useSyncExternalStore?d.useSyncExternalStore:function(a,b){return b()}},873305,(a,b,c)=>{"use strict";b.exports=a.r(683830)},305952,(a,b,c)=>{"use strict";var d=a.r(174897),e=a.r(873305),f="function"==typeof Object.is?Object.is:function(a,b){return a===b&&(0!==a||1/a==1/b)||a!=a&&b!=b},g=e.useSyncExternalStore,h=d.useRef,i=d.useEffect,j=d.useMemo,k=d.useDebugValue;c.useSyncExternalStoreWithSelector=function(a,b,c,d,e){var l=h(null);if(null===l.current){var m={hasValue:!1,value:null};l.current=m}else m=l.current;var n=g(a,(l=j(function(){function a(a){if(!i){if(i=!0,g=a,a=d(a),void 0!==e&&m.hasValue){var b=m.value;if(e(b,a))return h=b}return h=a}if(b=h,f(g,a))return b;var c=d(a);return void 0!==e&&e(b,c)?(g=a,b):(g=a,h=c)}var g,h,i=!1,j=void 0===c?null:c;return[function(){return a(b())},null===j?void 0:function(){return a(j())}]},[b,c,d,e]))[0],l[1]);return i(function(){m.hasValue=!0,m.value=n},[n]),k(n),n}},711822,(a,b,c)=>{"use strict";b.exports=a.r(305952)},815122,a=>{"use strict";var b=a.i(662145),c=a.i(795667),d=a.i(108280),e=a.i(368114),f=a.i(685698),g=a.i(598984);let h={running:"Agent working","needs-answer":"Agent needs you",review:"Plan to review"};a.s(["AgentDot",0,function({attach:a}){let c=(0,f.useItemAgent)(a);return c?(0,b.jsx)(g.StatusMarker,{status:c.status,label:h[c.status]}):null},"AgentMark",0,function({attach:a,className:g}){let i=(0,f.useItemAgent)(a),{show:j}=(0,f.useChats)();if(!i)return null;let k=h[i.status];return(0,b.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),j(i.chatId)},title:`${k} \xb7 open chat`,"aria-label":`${k}, open chat`,className:(0,e.cn)("nodrag inline-flex shrink-0 items-center gap-1 rounded-full border px-1.5 py-px font-mono text-[10px] leading-4 animate-fade-in transition-colors duration-(--duration-fast)","running"===i.status&&"border-accent/50 text-accent hover:bg-accent/10","needs-answer"===i.status&&"border-amber/50 text-amber hover:bg-amber/10","review"===i.status&&"border-accent/50 bg-accent/10 text-accent hover:bg-accent/20",g),children:["running"===i.status?(0,b.jsx)(d.Loader2,{className:"size-3 animate-spin","aria-hidden":!0}):(0,b.jsx)(c.Bot,{className:"size-3","aria-hidden":!0}),k]})}])},618940,a=>{"use strict";var b=a.i(662145),c=a.i(365465),d=a.i(152716),e=a.i(340933),f=a.i(425404),g=a.i(368114),h=a.i(581040),i=a.i(453161),j=a.i(815122),k=a.i(685698);let l=[d.Position.Top,d.Position.Right,d.Position.Bottom,d.Position.Left];function m(){return(0,b.jsxs)(b.Fragment,{children:[l.map(a=>(0,b.jsx)(c.Handle,{id:a,type:"source",position:a,isConnectable:!1,className:"opacity-0"},a)),l.map(a=>(0,b.jsx)(c.Handle,{id:`${a}-t`,type:"target",position:a,isConnectable:!1,className:"opacity-0"},`${a}-t`))]})}let n={"in-progress":"Active",paused:"Paused",done:"Done",planned:"Planned"};function o({status:a,className:c}){return(0,b.jsxs)("span",{title:n[a],"aria-label":n[a],className:(0,g.cn)("relative inline-flex h-2 w-2 shrink-0",c),children:["in-progress"===a&&(0,b.jsx)("span",{className:"absolute inset-0 animate-ping rounded-full bg-accent/60"}),(0,b.jsx)("span",{className:(0,g.cn)("relative h-full w-full rounded-full","done"===a&&"bg-teal","in-progress"===a&&"bg-accent","planned"===a&&"border border-muted","paused"===a&&"border-2 border-y-0 border-muted")})]})}let p={done:"bg-teal","in-progress":"bg-amber",review:"bg-accent",blocked:"bg-danger",paused:"bg-muted/60",todo:"bg-border2",cancelled:"bg-border"};function q({statuses:a,className:c}){if(!a?.length)return null;let d=a.filter(a=>"done"===a).length;return(0,b.jsx)("div",{className:(0,g.cn)("flex h-1.5 min-w-0 flex-1 gap-0.5",c),title:`${d}/${a.length} tasks done`,children:a.map((a,c)=>(0,b.jsx)("span",{className:(0,g.cn)("h-full flex-1 rounded-[1px]",p[a])},c))})}function r({value:a,total:c,className:d}){let e=2*Math.PI*14,f=c>0?a/c:0;return(0,b.jsxs)("span",{className:(0,g.cn)("relative inline-flex h-9 w-9 shrink-0 items-center justify-center",d),title:`${a}/${c} tasks done`,children:[(0,b.jsxs)("svg",{viewBox:"0 0 36 36",className:"absolute inset-0 -rotate-90",children:[(0,b.jsx)("circle",{cx:"18",cy:"18",r:14,fill:"none",strokeWidth:"3",className:"stroke-border"}),(0,b.jsx)("circle",{cx:"18",cy:"18",r:14,fill:"none",strokeWidth:"3",stroke:"currentColor",strokeLinecap:"round",strokeDasharray:e,strokeDashoffset:e*(1-f)})]}),(0,b.jsx)("span",{className:"font-mono text-[9px] text-txt",children:Math.round(100*f)})]})}function s({due:a,state:c}){return a?(0,b.jsxs)("span",{className:(0,g.cn)("font-mono text-[10px]","overdue"===c?"text-danger":"soon"===c?"text-amber":"text-muted"),children:["Due ",(0,h.formatDay)(a)]}):null}function t({data:a}){let c=a.taskDue;return c&&c.overdue>0?(0,b.jsxs)("span",{className:"font-mono text-[10px] text-danger",children:[c.overdue," ",1===c.overdue?"task":"tasks"," overdue"]}):a.item.due?(0,b.jsx)(s,{due:a.item.due,state:a.dueState}):c?.next?(0,b.jsxs)("span",{className:(0,g.cn)("font-mono text-[10px]",a.taskDueSoon?"text-amber":"text-muted"),children:["Next due ",(0,h.formatDay)(c.next)]}):null}function u({drift:a}){return a?.length?(0,b.jsx)("span",{title:a.join("\n"),className:"absolute -left-2 -top-2 rounded-full bg-bg p-0.5 text-amber",children:(0,b.jsx)(e.AlertTriangle,{className:"h-3.5 w-3.5"})}):null}a.s(["DueChip",0,s,"STATUS_LABEL",0,n,"SegmentedProgress",0,q,"StatusDot",0,o,"StatusPill",0,function({status:a}){return(0,b.jsxs)("span",{className:(0,g.cn)("inline-flex items-center gap-1.5 rounded-full border px-2 py-0.5 font-mono text-[10px] uppercase tracking-wider","done"===a&&"border-teal/40 text-teal","in-progress"===a&&"border-accent/50 text-accent","planned"===a&&"border-dashed border-border2 text-muted","paused"===a&&"border-border2 text-muted"),children:[(0,b.jsx)(o,{status:a,className:"h-1.5 w-1.5"}),n[a]]})},"TASK_STATUS_BG",0,p,"nodeTypes",0,{horizon:function({data:a,selected:c}){let{item:d,progress:e,epics:f,chapter:h}=a,j=d.status;return(0,b.jsxs)("div",{style:{width:i.HORIZON_W},className:(0,g.cn)("relative flex items-center gap-3 rounded-xl border bg-surface px-3.5 py-3 transition-shadow duration-(--duration-base)","in-progress"===j&&"border-accent/60 shadow-[0_0_0_1px_rgb(var(--rgb-accent)/0.25),0_10px_30px_-12px_rgb(var(--rgb-accent)/0.6)]","done"===j&&"border-teal/40","planned"===j&&"border-dashed border-border2","paused"===j&&"border-border2 opacity-75",c&&"ring-2 ring-accent/60 ring-offset-2 ring-offset-bg"),children:[(0,b.jsx)(m,{}),(0,b.jsx)("span",{className:(0,g.cn)("font-mono text-2xl font-semibold leading-none tabular-nums","in-progress"===j?"text-accent":"done"===j?"text-teal":"text-muted"),children:h?String(h).padStart(2,"0"):"··"}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("p",{className:"text-xs font-semibold uppercase leading-snug tracking-wider text-txt",children:d.title}),(0,b.jsxs)("p",{className:"mt-1 flex flex-wrap items-center gap-x-2 font-mono text-[10px] text-muted",children:[f&&f.total>0&&(0,b.jsxs)("span",{children:[f.done,"/",f.total," epics"]}),(0,b.jsx)(s,{due:d.due,state:a.dueState})]})]}),e&&(0,b.jsx)(r,{value:e.done,total:e.total,className:"done"===j?"text-teal":"text-accent"}),(0,b.jsx)(u,{drift:a.drift})]})},feature:function({data:a,selected:c}){let{item:d,taskStatuses:e,nextTaskId:h}=a,l=(0,k.useItemAgent)({kind:"epic",id:d.id}),n=!!a.drift?.length,p=c&&"ring-2 ring-accent/60 ring-offset-2 ring-offset-bg";if("done"===d.status)return(0,b.jsxs)("div",{style:{width:i.FEATURE_W},className:(0,g.cn)("group relative flex items-center gap-2 rounded-lg border border-border bg-surface/60 px-3 py-2 hover:border-teal/40",p),children:[(0,b.jsx)(m,{}),(0,b.jsx)(f.Check,{className:"h-3.5 w-3.5 shrink-0 text-teal",strokeWidth:3}),(0,b.jsx)("p",{className:"min-w-0 flex-1 truncate text-[13px] text-muted group-hover:text-txt",title:d.title,children:d.title}),l?(0,b.jsx)(j.AgentMark,{attach:{kind:"epic",id:d.id}}):a.progress&&(0,b.jsxs)("span",{className:"font-mono text-[10px] text-muted",children:[a.progress.done,"/",a.progress.total]}),(0,b.jsx)(u,{drift:a.drift})]});let r="in-progress"===d.status;return(0,b.jsxs)("div",{style:{width:i.FEATURE_W},className:(0,g.cn)("relative flex flex-col gap-1.5 rounded-lg border px-3 py-2.5 transition-shadow duration-(--duration-base)",r?"border-accent/50 bg-surface shadow-[0_8px_24px_-10px_rgb(var(--rgb-accent)/0.55)]":"border-dashed border-border2 bg-bg hover:border-muted","paused"===d.status&&"opacity-70",p),children:[(0,b.jsx)(m,{}),r&&(0,b.jsx)("span",{className:(0,g.cn)("absolute -inset-y-px -left-px w-[3px] rounded-l-lg",n?"bg-amber":"bg-accent")}),(0,b.jsxs)("div",{className:"flex items-center justify-between font-mono text-[10px]",children:[(0,b.jsx)("span",{className:"text-muted",children:d.id}),l?(0,b.jsx)(j.AgentMark,{attach:{kind:"epic",id:d.id}}):r?(0,b.jsxs)("span",{className:"flex items-center gap-1.5 uppercase tracking-wider text-accent",children:[(0,b.jsx)(o,{status:"in-progress",className:"h-1.5 w-1.5"}),"Live"]}):(0,b.jsx)("span",{className:"uppercase tracking-wider text-muted",children:d.tasks.length?`${d.tasks.length} tasks`:"No tasks yet"})]}),(0,b.jsx)("p",{className:(0,g.cn)("line-clamp-2 text-[13px] leading-snug",r?"font-medium text-txt":"text-txt/80"),title:d.title,children:d.title}),e&&e.length>0&&(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(q,{statuses:e}),(0,b.jsx)("span",{className:"shrink-0 font-mono text-[10px] text-muted",children:r&&h?(0,b.jsxs)(b.Fragment,{children:["next ",(0,b.jsx)("span",{className:"text-txt",children:h})]}):`${e.filter(a=>"done"===a).length}/${e.length}`})]}),(0,b.jsx)(t,{data:a}),(0,b.jsx)(u,{drift:a.drift})]})}}])},581040,453161,a=>{"use strict";var b=a.i(452696);function c(a){let b=new Set(a.filter(a=>null===a.parent).map(a=>a.id));return a.filter(a=>null===a.parent||!b.has(a.parent)).sort((a,b)=>a.order-b.order)}function d(a,b){return a.filter(a=>a.parent===b).sort((a,b)=>a.order-b.order)}a.s(["FEATURE_W",0,220,"HORIZON_W",0,260,"childrenOf",0,d,"resolvePositions",0,function(a,b){let e={},f=0;for(let g of c(a)){let c=b[g.id]??{x:0,y:f};e[g.id]=c;let h=null===g.parent?d(a,g.id):[],i=Math.ceil(h.length/2)>6?2:1;h.forEach((a,d)=>{let f=d%2==0?1:-1,g=Math.floor(d/2),h=g%i,j=Math.floor(g/i);e[a.id]=b[a.id]??{x:c.x+20+f*(340+260*h),y:c.y+110*j+55*h}}),f+=110*Math.max(1,Math.ceil(Math.ceil(h.length/2)/i))+90}return e},"spineItems",0,c],453161);let e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],f=a=>({y:+a.slice(0,4),m:+a.slice(5,7),day:+a.slice(8,10)});a.s(["LANE_ROW_H",0,44,"buildTimeline",0,function(a,g){let h=a.map(a=>a.due).filter(a=>!!a),i=f([g,...h].sort()[0]),j=f([g,...h].sort().at(-1)??g),k={y:i.y,m:i.m-1},l=Math.max(6,(j.y-i.y)*12+(j.m-i.m)+3),m=Array.from({length:l},(a,b)=>{let c=12*k.y+(k.m-1)+b,d=Math.floor(c/12),f=c%12+1;return{y:d,m:f,label:1===f||0===b?`${e[f-1]} ${d}`:e[f-1],x:160*b}}),n=a=>{let{y:b,m:c,day:d}=f(a);return((b-m[0].y)*12+(c-m[0].m))*160+(d-.5)/new Date(b,c,0).getDate()*160},o=c(a).map(c=>{let e=[c,...null===c.parent?d(a,c.id):[]].filter(a=>a.due),f=[],h=e.map(a=>({item:a,x:n(a.due),horizon:a.id===c.id})).sort((a,b)=>a.x-b.x).map(a=>{let c=f.findIndex(b=>a.x>=b);return -1===c&&(c=f.push(0)-1),f[c]=a.x+180,{...a,row:c,state:(0,b.dueState)(a.item.due,a.item.status,g)}});return{item:c,rows:Math.max(1,f.length),markers:h}});return{months:m.map(({label:a,x:b})=>({label:a,x:b})),width:160*l,todayX:n(g),lanes:o,undated:a.filter(a=>!a.due&&"done"!==a.status)}},"formatDay",0,function(a){let{m:b,day:c}=f(a);return`${c} ${e[b-1]}`}],581040)},452696,a=>{"use strict";function b(a,b,c){let d;return a?"done"===b?"done":a<c?"overdue":7>=Math.round(((d=a=>Date.UTC(+a.slice(0,4),a.slice(5,7)-1,+a.slice(8,10)))(a)-d(c))/864e5)?"soon":"ok":null}function c(a){return a.every(a=>"done"===a)?"done":a.some(a=>"other"!==a)?"in-progress":"planned"}a.s(["dueState",0,b,"localToday",0,function(a=new Date){let b=a=>String(a).padStart(2,"0");return`${a.getFullYear()}-${b(a.getMonth()+1)}-${b(a.getDate())}`},"roadmapHealth",0,function(a,d,e){let f={},g=[];for(let c of a)c.due&&"overdue"===b(c.due,c.status,e)&&g.push({id:c.id,kind:"overdue",message:`${c.id} "${c.title}" is overdue since ${c.due}`});let h=new Set(a.filter(a=>null===a.parent).map(a=>a.id));for(let h of a){if(null===h.parent)continue;let a=h.tasks.filter(a=>!(a in d));a.length&&g.push({id:h.id,kind:"missing-task",message:`${h.id} links unknown task ${a.join(", ")}`});let i=h.tasks.filter(a=>a in d&&"cancelled"!==d[a].status),j="done"===h.status||"paused"===h.status?[]:function(a,c,d,e){let f=[];for(let a of c){let b=d[a];"done"!==b.status&&b.due&&b.due<e&&f.push(`${a} overdue since ${b.due}`),"blocked"===b.status&&f.push(`${a} blocked`)}let g=c.some(a=>["done","in-progress","review"].includes(d[a].status));return a.due&&"soon"===b(a.due,a.status,e)&&!g&&f.push(`due ${a.due}, nothing started`),f}(h,i,d,e);if(j.length&&g.push({id:h.id,kind:"at-risk",message:`${h.id} "${h.title}" at risk: ${j.join("; ")}`}),!i.length)continue;let k=i.map(a=>"done"===d[a].status?"done":"in-progress"===d[a].status||"review"===d[a].status?"in-progress":"other");f[h.id]={done:k.filter(a=>"done"===a).length,total:i.length};let l=c(k);if(l!==h.status&&("paused"!==h.status||"done"===l)){let a=i.filter(a=>"done"!==d[a].status);g.push({id:h.id,kind:"status-mismatch",message:"done"===l?`${h.id} "${h.title}": all tasks done but status is ${h.status}`:`${h.id} "${h.title}" is ${h.status} but tasks ${a.join(", ")} are not done`,suggestedStatus:l})}}for(let b of a){if(!h.has(b.id))continue;let d=a.filter(a=>a.parent===b.id);if(!d.length)continue;let e=d.map(a=>"done"===a.status?"done":"in-progress"===a.status?"in-progress":"other");f[b.id]=d.reduce((a,b)=>{let c=f[b.id]??{done:+("done"===b.status),total:1};return{done:a.done+c.done,total:a.total+c.total}},{done:0,total:0});let i=c(e);i!==b.status&&("paused"!==b.status||"done"===i)&&g.push({id:b.id,kind:"status-mismatch",message:`${b.id} "${b.title}" is ${b.status} but its features say ${i}`,suggestedStatus:i})}return{progress:f,drift:g}},"taskDueSummary",0,function(a,b,c){let d=a.map(a=>b[a]).filter(a=>a&&a.due&&"done"!==a.status&&"cancelled"!==a.status).map(a=>a.due);if(!d.length)return null;let e=d.filter(a=>a>=c).sort();return{overdue:d.length-e.length,next:e[0]??null}}])}];
3
+
4
+ //# sourceMappingURL=_1ftruw6._.js.map