flujo-ai 3.20.0 → 3.22.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 (553) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +312 -242
  3. package/.next/app-path-routes-manifest.json +19 -12
  4. package/.next/build-manifest.json +5 -5
  5. package/.next/prerender-manifest.json +39 -15
  6. package/.next/react-loadable-manifest.json +15 -13
  7. package/.next/routes-manifest.json +14 -0
  8. package/.next/server/app/_not-found/page.js +2 -2
  9. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  10. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/_not-found.html +1 -1
  12. package/.next/server/app/_not-found.rsc +5 -3
  13. package/.next/server/app/api/approvals/[id]/route.js +1 -0
  14. package/.next/server/app/api/approvals/[id]/route.js.nft.json +1 -0
  15. package/.next/server/app/api/approvals/[id]/route_client-reference-manifest.js +1 -0
  16. package/.next/server/app/api/approvals/route.js +2 -0
  17. package/.next/server/app/api/approvals/route.js.nft.json +1 -0
  18. package/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -0
  19. package/.next/server/app/api/backup/route.js +1 -1
  20. package/.next/server/app/api/backup/route.js.nft.json +1 -1
  21. package/.next/server/app/api/backup/route_client-reference-manifest.js +1 -1
  22. package/.next/server/app/api/browse/route.js +1 -1
  23. package/.next/server/app/api/browse/route.js.nft.json +1 -1
  24. package/.next/server/app/api/browse/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/bugs/enhance/route.js +14 -0
  26. package/.next/server/app/api/bugs/enhance/route.js.nft.json +1 -0
  27. package/.next/server/app/api/bugs/enhance/route_client-reference-manifest.js +1 -0
  28. package/.next/server/app/api/cwd/route.js +1 -1
  29. package/.next/server/app/api/cwd/route.js.nft.json +1 -1
  30. package/.next/server/app/api/cwd/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/encryption/secure/route.js +1 -1
  32. package/.next/server/app/api/encryption/secure/route.js.nft.json +1 -1
  33. package/.next/server/app/api/encryption/secure/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/env/route.js +1 -1
  35. package/.next/server/app/api/env/route.js.nft.json +1 -1
  36. package/.next/server/app/api/env/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/flow/[id]/route.js +1 -1
  38. package/.next/server/app/api/flow/[id]/route.js.nft.json +1 -1
  39. package/.next/server/app/api/flow/[id]/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/flow/compile/route.js +1 -1
  41. package/.next/server/app/api/flow/compile/route.js.nft.json +1 -1
  42. package/.next/server/app/api/flow/compile/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/api/flow/generate/route.js +1 -1
  44. package/.next/server/app/api/flow/generate/route.js.nft.json +1 -1
  45. package/.next/server/app/api/flow/generate/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/flow/improve/route.js +1 -1
  47. package/.next/server/app/api/flow/improve/route.js.nft.json +1 -1
  48. package/.next/server/app/api/flow/improve/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/flow/prompt-renderer/route.js +2 -2
  50. package/.next/server/app/api/flow/prompt-renderer/route.js.nft.json +1 -1
  51. package/.next/server/app/api/flow/prompt-renderer/route_client-reference-manifest.js +1 -1
  52. package/.next/server/app/api/flow/quick-chat/route.js +1 -1
  53. package/.next/server/app/api/flow/quick-chat/route.js.nft.json +1 -1
  54. package/.next/server/app/api/flow/quick-chat/route_client-reference-manifest.js +1 -1
  55. package/.next/server/app/api/flow/repair/route.js +1 -1
  56. package/.next/server/app/api/flow/repair/route.js.nft.json +1 -1
  57. package/.next/server/app/api/flow/repair/route_client-reference-manifest.js +1 -1
  58. package/.next/server/app/api/flow/route.js +1 -1
  59. package/.next/server/app/api/flow/route.js.nft.json +1 -1
  60. package/.next/server/app/api/flow/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/git/route.js +6 -4
  62. package/.next/server/app/api/git/route.js.nft.json +1 -1
  63. package/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
  64. package/.next/server/app/api/init/route.js +1 -1
  65. package/.next/server/app/api/init/route.js.nft.json +1 -1
  66. package/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  67. package/.next/server/app/api/local-models/capability/route_client-reference-manifest.js +1 -1
  68. package/.next/server/app/api/local-models/pull/route_client-reference-manifest.js +1 -1
  69. package/.next/server/app/api/local-models/suggest/route_client-reference-manifest.js +1 -1
  70. package/.next/server/app/api/mcp/cancel/route.js +2 -2
  71. package/.next/server/app/api/mcp/cancel/route.js.nft.json +1 -1
  72. package/.next/server/app/api/mcp/cancel/route_client-reference-manifest.js +1 -1
  73. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js +1 -1
  74. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js.nft.json +1 -1
  75. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route_client-reference-manifest.js +1 -1
  76. package/.next/server/app/api/mcp/servers/[name]/prompts/route.js +1 -1
  77. package/.next/server/app/api/mcp/servers/[name]/prompts/route.js.nft.json +1 -1
  78. package/.next/server/app/api/mcp/servers/[name]/prompts/route_client-reference-manifest.js +1 -1
  79. package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js +1 -1
  80. package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js.nft.json +1 -1
  81. package/.next/server/app/api/mcp/servers/[name]/resources/read/route_client-reference-manifest.js +1 -1
  82. package/.next/server/app/api/mcp/servers/[name]/resources/route.js +1 -1
  83. package/.next/server/app/api/mcp/servers/[name]/resources/route.js.nft.json +1 -1
  84. package/.next/server/app/api/mcp/servers/[name]/resources/route_client-reference-manifest.js +1 -1
  85. package/.next/server/app/api/mcp/servers/[name]/route.js +1 -1
  86. package/.next/server/app/api/mcp/servers/[name]/route.js.nft.json +1 -1
  87. package/.next/server/app/api/mcp/servers/[name]/route_client-reference-manifest.js +1 -1
  88. package/.next/server/app/api/mcp/servers/[name]/status/route.js +1 -1
  89. package/.next/server/app/api/mcp/servers/[name]/status/route.js.nft.json +1 -1
  90. package/.next/server/app/api/mcp/servers/[name]/status/route_client-reference-manifest.js +1 -1
  91. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js +1 -1
  92. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js.nft.json +1 -1
  93. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route_client-reference-manifest.js +1 -1
  94. package/.next/server/app/api/mcp/servers/[name]/tools/route.js +1 -1
  95. package/.next/server/app/api/mcp/servers/[name]/tools/route.js.nft.json +1 -1
  96. package/.next/server/app/api/mcp/servers/[name]/tools/route_client-reference-manifest.js +1 -1
  97. package/.next/server/app/api/mcp/servers/route.js +1 -1
  98. package/.next/server/app/api/mcp/servers/route.js.nft.json +1 -1
  99. package/.next/server/app/api/mcp/servers/route_client-reference-manifest.js +1 -1
  100. package/.next/server/app/api/mcp/test-connection/route.js +1 -1
  101. package/.next/server/app/api/mcp/test-connection/route.js.nft.json +1 -1
  102. package/.next/server/app/api/mcp/test-connection/route_client-reference-manifest.js +1 -1
  103. package/.next/server/app/api/mcp/test-connection/stream/route.js +1 -1
  104. package/.next/server/app/api/mcp/test-connection/stream/route.js.nft.json +1 -1
  105. package/.next/server/app/api/mcp/test-connection/stream/route_client-reference-manifest.js +1 -1
  106. package/.next/server/app/api/mcp-registry/route.js +1 -1
  107. package/.next/server/app/api/mcp-registry/route.js.nft.json +1 -1
  108. package/.next/server/app/api/mcp-registry/route_client-reference-manifest.js +1 -1
  109. package/.next/server/app/api/mcp-registry/spotlight/route.js +1 -1
  110. package/.next/server/app/api/mcp-registry/spotlight/route.js.nft.json +1 -1
  111. package/.next/server/app/api/mcp-registry/spotlight/route_client-reference-manifest.js +1 -1
  112. package/.next/server/app/api/model/[id]/route.js +1 -1
  113. package/.next/server/app/api/model/[id]/route.js.nft.json +1 -1
  114. package/.next/server/app/api/model/[id]/route_client-reference-manifest.js +1 -1
  115. package/.next/server/app/api/model/provider/route.js +1 -1
  116. package/.next/server/app/api/model/provider/route.js.nft.json +1 -1
  117. package/.next/server/app/api/model/provider/route_client-reference-manifest.js +1 -1
  118. package/.next/server/app/api/model/route.js +1 -1
  119. package/.next/server/app/api/model/route.js.nft.json +1 -1
  120. package/.next/server/app/api/model/route_client-reference-manifest.js +1 -1
  121. package/.next/server/app/api/model/test/route.js +1 -1
  122. package/.next/server/app/api/model/test/route.js.nft.json +1 -1
  123. package/.next/server/app/api/model/test/route_client-reference-manifest.js +1 -1
  124. package/.next/server/app/api/oauth/callback/route.js +2 -2
  125. package/.next/server/app/api/oauth/callback/route.js.nft.json +1 -1
  126. package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
  127. package/.next/server/app/api/oauth/initiate/route.js +2 -2
  128. package/.next/server/app/api/oauth/initiate/route.js.nft.json +1 -1
  129. package/.next/server/app/api/oauth/initiate/route_client-reference-manifest.js +1 -1
  130. package/.next/server/app/api/oauth/reset/route.js +1 -1
  131. package/.next/server/app/api/oauth/reset/route.js.nft.json +1 -1
  132. package/.next/server/app/api/oauth/reset/route_client-reference-manifest.js +1 -1
  133. package/.next/server/app/api/planned-executions/[id]/route.js +1 -1
  134. package/.next/server/app/api/planned-executions/[id]/route.js.nft.json +1 -1
  135. package/.next/server/app/api/planned-executions/[id]/route_client-reference-manifest.js +1 -1
  136. package/.next/server/app/api/planned-executions/[id]/run/route.js +1 -1
  137. package/.next/server/app/api/planned-executions/[id]/run/route.js.nft.json +1 -1
  138. package/.next/server/app/api/planned-executions/[id]/run/route_client-reference-manifest.js +1 -1
  139. package/.next/server/app/api/planned-executions/[id]/runs/route.js +1 -1
  140. package/.next/server/app/api/planned-executions/[id]/runs/route.js.nft.json +1 -1
  141. package/.next/server/app/api/planned-executions/[id]/runs/route_client-reference-manifest.js +1 -1
  142. package/.next/server/app/api/planned-executions/preview-schedule/route.js +1 -1
  143. package/.next/server/app/api/planned-executions/preview-schedule/route.js.nft.json +1 -1
  144. package/.next/server/app/api/planned-executions/preview-schedule/route_client-reference-manifest.js +1 -1
  145. package/.next/server/app/api/planned-executions/reconcile/route.js +1 -0
  146. package/.next/server/app/api/planned-executions/reconcile/route.js.nft.json +1 -0
  147. package/.next/server/app/api/planned-executions/reconcile/route_client-reference-manifest.js +1 -0
  148. package/.next/server/app/api/planned-executions/route.js +1 -1
  149. package/.next/server/app/api/planned-executions/route.js.nft.json +1 -1
  150. package/.next/server/app/api/planned-executions/route_client-reference-manifest.js +1 -1
  151. package/.next/server/app/api/restore/route.js +1 -1
  152. package/.next/server/app/api/restore/route.js.nft.json +1 -1
  153. package/.next/server/app/api/restore/route_client-reference-manifest.js +1 -1
  154. package/.next/server/app/api/runs/active/route.js +2 -0
  155. package/.next/server/app/api/runs/active/route.js.nft.json +1 -0
  156. package/.next/server/app/api/runs/active/route_client-reference-manifest.js +1 -0
  157. package/.next/server/app/api/storage/route.js +1 -1
  158. package/.next/server/app/api/storage/route.js.nft.json +1 -1
  159. package/.next/server/app/api/storage/route_client-reference-manifest.js +1 -1
  160. package/.next/server/app/api/update/route.js +1 -1
  161. package/.next/server/app/api/update/route.js.nft.json +1 -1
  162. package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  163. package/.next/server/app/api/waves/route.js +1 -0
  164. package/.next/server/app/api/waves/route.js.nft.json +1 -0
  165. package/.next/server/app/api/waves/route_client-reference-manifest.js +1 -0
  166. package/.next/server/app/api/webhooks/[id]/route.js +1 -1
  167. package/.next/server/app/api/webhooks/[id]/route.js.nft.json +1 -1
  168. package/.next/server/app/api/webhooks/[id]/route_client-reference-manifest.js +1 -1
  169. package/.next/server/app/chat/page.js +10 -10
  170. package/.next/server/app/chat/page.js.nft.json +1 -1
  171. package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
  172. package/.next/server/app/chat.html +1 -1
  173. package/.next/server/app/chat.rsc +6 -4
  174. package/.next/server/app/docs/page.js +9 -4
  175. package/.next/server/app/docs/page.js.nft.json +1 -1
  176. package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  177. package/.next/server/app/docs.html +1 -1
  178. package/.next/server/app/docs.rsc +6 -4
  179. package/.next/server/app/executions/page.js +3 -3
  180. package/.next/server/app/executions/page.js.nft.json +1 -1
  181. package/.next/server/app/executions/page_client-reference-manifest.js +1 -1
  182. package/.next/server/app/executions.html +1 -1
  183. package/.next/server/app/executions.rsc +6 -4
  184. package/.next/server/app/flows/page.js +3 -3
  185. package/.next/server/app/flows/page.js.nft.json +1 -1
  186. package/.next/server/app/flows/page_client-reference-manifest.js +1 -1
  187. package/.next/server/app/flows.html +1 -1
  188. package/.next/server/app/flows.rsc +6 -4
  189. package/.next/server/app/index.html +1 -1
  190. package/.next/server/app/index.rsc +6 -4
  191. package/.next/server/app/mcp/page.js +5 -5
  192. package/.next/server/app/mcp/page.js.nft.json +1 -1
  193. package/.next/server/app/mcp/page_client-reference-manifest.js +1 -1
  194. package/.next/server/app/mcp-flows/route.js +1 -1
  195. package/.next/server/app/mcp-flows/route.js.nft.json +1 -1
  196. package/.next/server/app/mcp-flows/route_client-reference-manifest.js +1 -1
  197. package/.next/server/app/mcp-proxy/[server]/route.js +1 -1
  198. package/.next/server/app/mcp-proxy/[server]/route.js.nft.json +1 -1
  199. package/.next/server/app/mcp-proxy/[server]/route_client-reference-manifest.js +1 -1
  200. package/.next/server/app/mcp.html +1 -1
  201. package/.next/server/app/mcp.rsc +6 -4
  202. package/.next/server/app/models/page.js +2 -2
  203. package/.next/server/app/models/page.js.nft.json +1 -1
  204. package/.next/server/app/models/page_client-reference-manifest.js +1 -1
  205. package/.next/server/app/page.js +2 -2
  206. package/.next/server/app/page.js.nft.json +1 -1
  207. package/.next/server/app/page_client-reference-manifest.js +1 -1
  208. package/.next/server/app/settings/page.js +14 -4
  209. package/.next/server/app/settings/page.js.nft.json +1 -1
  210. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  211. package/.next/server/app/settings.html +1 -1
  212. package/.next/server/app/settings.rsc +6 -4
  213. package/.next/server/app/v1/chat/completions/route.js +1 -1
  214. package/.next/server/app/v1/chat/completions/route.js.nft.json +1 -1
  215. package/.next/server/app/v1/chat/completions/route_client-reference-manifest.js +1 -1
  216. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js +2 -2
  217. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js.nft.json +1 -1
  218. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route_client-reference-manifest.js +1 -1
  219. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js +2 -2
  220. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js.nft.json +1 -1
  221. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route_client-reference-manifest.js +1 -1
  222. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js +1 -1
  223. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js.nft.json +1 -1
  224. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route_client-reference-manifest.js +1 -1
  225. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js +1 -1
  226. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js.nft.json +1 -1
  227. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route_client-reference-manifest.js +1 -1
  228. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js +2 -2
  229. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js.nft.json +1 -1
  230. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route_client-reference-manifest.js +1 -1
  231. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js +2 -2
  232. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js.nft.json +1 -1
  233. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route_client-reference-manifest.js +1 -1
  234. package/.next/server/app/v1/chat/conversations/[conversationId]/resources/route.js +1 -1
  235. package/.next/server/app/v1/chat/conversations/[conversationId]/resources/route.js.nft.json +1 -1
  236. package/.next/server/app/v1/chat/conversations/[conversationId]/resources/route_client-reference-manifest.js +1 -1
  237. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js +1 -1
  238. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js.nft.json +1 -1
  239. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route_client-reference-manifest.js +1 -1
  240. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js +2 -2
  241. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js.nft.json +1 -1
  242. package/.next/server/app/v1/chat/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  243. package/.next/server/app/v1/chat/conversations/route.js +2 -2
  244. package/.next/server/app/v1/chat/conversations/route.js.nft.json +1 -1
  245. package/.next/server/app/v1/chat/conversations/route_client-reference-manifest.js +1 -1
  246. package/.next/server/app/v1/models/route.js +1 -1
  247. package/.next/server/app/v1/models/route.js.nft.json +1 -1
  248. package/.next/server/app/v1/models/route_client-reference-manifest.js +1 -1
  249. package/.next/server/app/waves/page.js +4 -0
  250. package/.next/server/app/waves/page.js.nft.json +1 -0
  251. package/.next/server/app/waves/page_client-reference-manifest.js +1 -0
  252. package/.next/server/app/waves.html +1 -0
  253. package/.next/server/app/waves.meta +7 -0
  254. package/.next/server/app/waves.rsc +22 -0
  255. package/.next/server/app-paths-manifest.json +19 -12
  256. package/.next/server/chunks/1083.js +1 -1
  257. package/.next/server/chunks/1152.js +1 -1
  258. package/.next/server/chunks/1197.js +1 -1
  259. package/.next/server/chunks/1226.js +1 -0
  260. package/.next/server/chunks/1373.js +1 -1
  261. package/.next/server/chunks/1377.js +1 -0
  262. package/.next/server/chunks/1439.js +1 -0
  263. package/.next/server/chunks/1556.js +52 -0
  264. package/.next/server/chunks/1659.js +1 -0
  265. package/.next/server/chunks/1910.js +37 -0
  266. package/.next/server/chunks/{4949.js → 1999.js} +1 -1
  267. package/.next/server/chunks/264.js +1 -1
  268. package/.next/server/chunks/2859.js +3 -3
  269. package/.next/server/chunks/289.js +1 -1
  270. package/.next/server/chunks/{6772.js → 3030.js} +1 -1
  271. package/.next/server/chunks/3286.js +6 -0
  272. package/.next/server/chunks/3489.js +1 -0
  273. package/.next/server/chunks/3648.js +1 -0
  274. package/.next/server/chunks/3774.js +6 -0
  275. package/.next/server/chunks/3823.js +40 -0
  276. package/.next/server/chunks/{3511.js → 3928.js} +1 -1
  277. package/.next/server/chunks/4239.js +1 -0
  278. package/.next/server/chunks/4265.js +1 -1
  279. package/.next/server/chunks/4372.js +1 -0
  280. package/.next/server/chunks/4456.js +1 -1
  281. package/.next/server/chunks/4561.js +64 -0
  282. package/.next/server/chunks/4637.js +13 -8
  283. package/.next/server/chunks/4671.js +1 -1
  284. package/.next/server/chunks/472.js +1 -0
  285. package/.next/server/chunks/4771.js +6 -0
  286. package/.next/server/chunks/5148.js +1 -0
  287. package/.next/server/chunks/5311.js +1 -0
  288. package/.next/server/chunks/5662.js +1 -1
  289. package/.next/server/chunks/5708.js +8 -3
  290. package/.next/server/chunks/5734.js +4 -4
  291. package/.next/server/chunks/6537.js +1 -0
  292. package/.next/server/chunks/6644.js +1 -0
  293. package/.next/server/chunks/6793.js +1 -0
  294. package/.next/server/chunks/6908.js +3 -3
  295. package/.next/server/chunks/701.js +1 -1
  296. package/.next/server/chunks/7032.js +1 -0
  297. package/.next/server/chunks/7214.js +4 -4
  298. package/.next/server/chunks/724.js +1 -1
  299. package/.next/server/chunks/7362.js +18 -18
  300. package/.next/server/chunks/7427.js +1 -0
  301. package/.next/server/chunks/7463.js +4 -4
  302. package/.next/server/chunks/7506.js +1 -1
  303. package/.next/server/chunks/7821.js +1 -1
  304. package/.next/server/chunks/8357.js +1 -0
  305. package/.next/server/chunks/8518.js +2 -0
  306. package/.next/server/chunks/{3778.js → 8652.js} +2 -2
  307. package/.next/server/chunks/8739.js +2 -2
  308. package/.next/server/chunks/8745.js +28 -0
  309. package/.next/server/chunks/9285.js +1 -0
  310. package/.next/server/chunks/9343.js +1 -1
  311. package/.next/server/functions-config-manifest.json +1 -1
  312. package/.next/server/instrumentation.js.nft.json +1 -1
  313. package/.next/server/middleware-build-manifest.js +1 -1
  314. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  315. package/.next/server/pages/404.html +1 -1
  316. package/.next/server/pages/500.html +1 -1
  317. package/.next/server/server-reference-manifest.js +1 -1
  318. package/.next/server/server-reference-manifest.json +1 -1
  319. package/.next/static/MMmWHUQ3UAJBdRB7G1zGj/_buildManifest.js +1 -0
  320. package/.next/static/chunks/1871-dd8c10ed9d37100b.js +1 -0
  321. package/.next/static/chunks/1983-242862b3dc022a26.js +1 -0
  322. package/.next/static/chunks/2003-460f30484998c05d.js +1 -0
  323. package/.next/static/chunks/4207-41abb9622eb4b4f8.js +1 -0
  324. package/.next/static/chunks/4812-4a9aceb49632a973.js +1 -0
  325. package/.next/static/chunks/5501-f5b093c8dfd74196.js +1 -0
  326. package/.next/static/chunks/5545-2ab6e5d749e103cd.js +1 -0
  327. package/.next/static/chunks/6016.a157e5bde2faa652.js +1 -0
  328. package/.next/static/chunks/6288-a285bbbd701e0dbf.js +1 -0
  329. package/.next/static/chunks/{3648-733cf7ca4a5d1f19.js → 6730-c330b55cd0fe4f47.js} +1 -1
  330. package/.next/static/chunks/6731-c230e88cf0032609.js +1 -0
  331. package/.next/static/chunks/7430-6e78aaeac66988a9.js +1 -0
  332. package/.next/static/chunks/{7583.26a8c1f6e6823daf.js → 7583.7cb88044a5212b29.js} +1 -1
  333. package/.next/static/chunks/8083.16fda2c7f6d10d0c.js +1 -0
  334. package/.next/static/chunks/812-181496bc32cd0cd3.js +1 -0
  335. package/.next/static/chunks/8480-229fd353b68b570f.js +1 -0
  336. package/.next/static/chunks/8834-bda798efab40c60a.js +1 -0
  337. package/.next/static/chunks/{9164-f54d3531ca1df5f7.js → 9164-3d34bf7eab100ac7.js} +1 -1
  338. package/.next/static/chunks/9181-8d8ecd3f641b7209.js +8 -0
  339. package/.next/static/chunks/9356-99ba407b60b9dfe9.js +1 -0
  340. package/.next/static/chunks/9451-680fa09f81f18806.js +1 -0
  341. package/.next/static/chunks/9659-a279e3aaba407251.js +1 -0
  342. package/.next/static/chunks/app/api/approvals/[id]/route-6b442f97c5062f2c.js +1 -0
  343. package/.next/static/chunks/app/api/approvals/route-6b442f97c5062f2c.js +1 -0
  344. package/.next/static/chunks/app/api/backup/route-6b442f97c5062f2c.js +1 -0
  345. package/.next/static/chunks/app/api/browse/route-6b442f97c5062f2c.js +1 -0
  346. package/.next/static/chunks/app/api/bugs/enhance/route-6b442f97c5062f2c.js +1 -0
  347. package/.next/static/chunks/app/api/cwd/route-6b442f97c5062f2c.js +1 -0
  348. package/.next/static/chunks/app/api/encryption/secure/route-6b442f97c5062f2c.js +1 -0
  349. package/.next/static/chunks/app/api/env/route-6b442f97c5062f2c.js +1 -0
  350. package/.next/static/chunks/app/api/flow/[id]/route-6b442f97c5062f2c.js +1 -0
  351. package/.next/static/chunks/app/api/flow/compile/route-6b442f97c5062f2c.js +1 -0
  352. package/.next/static/chunks/app/api/flow/generate/route-6b442f97c5062f2c.js +1 -0
  353. package/.next/static/chunks/app/api/flow/improve/route-6b442f97c5062f2c.js +1 -0
  354. package/.next/static/chunks/app/api/flow/prompt-renderer/route-6b442f97c5062f2c.js +1 -0
  355. package/.next/static/chunks/app/api/flow/quick-chat/route-6b442f97c5062f2c.js +1 -0
  356. package/.next/static/chunks/app/api/flow/repair/route-6b442f97c5062f2c.js +1 -0
  357. package/.next/static/chunks/app/api/flow/route-6b442f97c5062f2c.js +1 -0
  358. package/.next/static/chunks/app/api/git/route-6b442f97c5062f2c.js +1 -0
  359. package/.next/static/chunks/app/api/init/route-6b442f97c5062f2c.js +1 -0
  360. package/.next/static/chunks/app/api/local-models/capability/route-6b442f97c5062f2c.js +1 -0
  361. package/.next/static/chunks/app/api/local-models/pull/route-6b442f97c5062f2c.js +1 -0
  362. package/.next/static/chunks/app/api/local-models/suggest/route-6b442f97c5062f2c.js +1 -0
  363. package/.next/static/chunks/app/api/mcp/cancel/route-6b442f97c5062f2c.js +1 -0
  364. package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/get/route-6b442f97c5062f2c.js +1 -0
  365. package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/route-6b442f97c5062f2c.js +1 -0
  366. package/.next/static/chunks/app/api/mcp/servers/[name]/resources/read/route-6b442f97c5062f2c.js +1 -0
  367. package/.next/static/chunks/app/api/mcp/servers/[name]/resources/route-6b442f97c5062f2c.js +1 -0
  368. package/.next/static/chunks/app/api/mcp/servers/[name]/route-6b442f97c5062f2c.js +1 -0
  369. package/.next/static/chunks/app/api/mcp/servers/[name]/status/route-6b442f97c5062f2c.js +1 -0
  370. package/.next/static/chunks/app/api/mcp/servers/[name]/tools/[toolName]/route-6b442f97c5062f2c.js +1 -0
  371. package/.next/static/chunks/app/api/mcp/servers/[name]/tools/route-6b442f97c5062f2c.js +1 -0
  372. package/.next/static/chunks/app/api/mcp/servers/route-6b442f97c5062f2c.js +1 -0
  373. package/.next/static/chunks/app/api/mcp/test-connection/route-6b442f97c5062f2c.js +1 -0
  374. package/.next/static/chunks/app/api/mcp/test-connection/stream/route-6b442f97c5062f2c.js +1 -0
  375. package/.next/static/chunks/app/api/mcp-registry/route-6b442f97c5062f2c.js +1 -0
  376. package/.next/static/chunks/app/api/mcp-registry/spotlight/route-6b442f97c5062f2c.js +1 -0
  377. package/.next/static/chunks/app/api/model/[id]/route-6b442f97c5062f2c.js +1 -0
  378. package/.next/static/chunks/app/api/model/provider/route-6b442f97c5062f2c.js +1 -0
  379. package/.next/static/chunks/app/api/model/route-6b442f97c5062f2c.js +1 -0
  380. package/.next/static/chunks/app/api/model/test/route-6b442f97c5062f2c.js +1 -0
  381. package/.next/static/chunks/app/api/oauth/callback/route-6b442f97c5062f2c.js +1 -0
  382. package/.next/static/chunks/app/api/oauth/initiate/route-6b442f97c5062f2c.js +1 -0
  383. package/.next/static/chunks/app/api/oauth/reset/route-6b442f97c5062f2c.js +1 -0
  384. package/.next/static/chunks/app/api/planned-executions/[id]/route-6b442f97c5062f2c.js +1 -0
  385. package/.next/static/chunks/app/api/planned-executions/[id]/run/route-6b442f97c5062f2c.js +1 -0
  386. package/.next/static/chunks/app/api/planned-executions/[id]/runs/route-6b442f97c5062f2c.js +1 -0
  387. package/.next/static/chunks/app/api/planned-executions/preview-schedule/route-6b442f97c5062f2c.js +1 -0
  388. package/.next/static/chunks/app/api/planned-executions/reconcile/route-6b442f97c5062f2c.js +1 -0
  389. package/.next/static/chunks/app/api/planned-executions/route-6b442f97c5062f2c.js +1 -0
  390. package/.next/static/chunks/app/api/restore/route-6b442f97c5062f2c.js +1 -0
  391. package/.next/static/chunks/app/api/runs/active/route-6b442f97c5062f2c.js +1 -0
  392. package/.next/static/chunks/app/api/storage/route-6b442f97c5062f2c.js +1 -0
  393. package/.next/static/chunks/app/api/update/route-6b442f97c5062f2c.js +1 -0
  394. package/.next/static/chunks/app/api/waves/route-6b442f97c5062f2c.js +1 -0
  395. package/.next/static/chunks/app/api/webhooks/[id]/route-6b442f97c5062f2c.js +1 -0
  396. package/.next/static/chunks/app/chat/page-3a3efba25b59a747.js +1 -0
  397. package/.next/static/chunks/app/docs/page-84a92c3d5d8d5e13.js +1 -0
  398. package/.next/static/chunks/app/executions/page-445afbf37819e3ce.js +1 -0
  399. package/.next/static/chunks/app/flows/page-74ebca19957cc6db.js +1 -0
  400. package/.next/static/chunks/app/layout-2ebf01d97702a18a.js +1 -0
  401. package/.next/static/chunks/app/mcp/page-770a870b3d40766b.js +1 -0
  402. package/.next/static/chunks/app/mcp-flows/route-6b442f97c5062f2c.js +1 -0
  403. package/.next/static/chunks/app/mcp-proxy/[server]/route-6b442f97c5062f2c.js +1 -0
  404. package/.next/static/chunks/app/models/error-a3183f168e8a9b04.js +1 -0
  405. package/.next/static/chunks/app/models/page-5a13ea6ff5ac1b9c.js +1 -0
  406. package/.next/static/chunks/app/{page-77e1ba238b0ee1d0.js → page-a859e4dbd180df98.js} +1 -1
  407. package/.next/static/chunks/app/settings/page-7a68583660508ffd.js +1 -0
  408. package/.next/static/chunks/app/v1/chat/completions/route-6b442f97c5062f2c.js +1 -0
  409. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/breakpoints/route-6b442f97c5062f2c.js +1 -0
  410. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/cancel/route-6b442f97c5062f2c.js +1 -0
  411. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/continue/route-6b442f97c5062f2c.js +1 -0
  412. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/step/route-6b442f97c5062f2c.js +1 -0
  413. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/edit-state/route-6b442f97c5062f2c.js +1 -0
  414. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/events/route-6b442f97c5062f2c.js +1 -0
  415. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/resources/route-6b442f97c5062f2c.js +1 -0
  416. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/respond/route-6b442f97c5062f2c.js +1 -0
  417. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/route-6b442f97c5062f2c.js +1 -0
  418. package/.next/static/chunks/app/v1/chat/conversations/route-6b442f97c5062f2c.js +1 -0
  419. package/.next/static/chunks/app/v1/models/route-6b442f97c5062f2c.js +1 -0
  420. package/.next/static/chunks/app/waves/page-ec33cf79f6103a9e.js +1 -0
  421. package/.next/static/chunks/webpack-dded92b3d7b33173.js +1 -0
  422. package/.next/static/css/39393a79f7cb0dee.css +1 -0
  423. package/.next/static/css/599369d853c61df7.css +31 -0
  424. package/.next/static/css/b496025c9cd768cc.css +1 -0
  425. package/.next/trace +9 -9
  426. package/.next/types/app/api/approvals/[id]/route.ts +347 -0
  427. package/.next/types/app/api/approvals/route.ts +347 -0
  428. package/.next/types/app/api/bugs/enhance/route.ts +347 -0
  429. package/.next/types/app/api/planned-executions/reconcile/route.ts +347 -0
  430. package/.next/types/app/api/runs/active/route.ts +347 -0
  431. package/.next/types/app/api/waves/route.ts +347 -0
  432. package/.next/types/app/waves/page.ts +84 -0
  433. package/.next/types/routes.d.ts +9 -2
  434. package/.next/types/validator.ts +63 -0
  435. package/README.md +1 -1
  436. package/package.json +1 -1
  437. package/.next/server/chunks/1491.js +0 -1
  438. package/.next/server/chunks/1690.js +0 -1
  439. package/.next/server/chunks/1746.js +0 -1
  440. package/.next/server/chunks/1991.js +0 -1
  441. package/.next/server/chunks/2261.js +0 -1
  442. package/.next/server/chunks/2350.js +0 -1
  443. package/.next/server/chunks/2430.js +0 -1
  444. package/.next/server/chunks/3574.js +0 -6
  445. package/.next/server/chunks/3953.js +0 -1
  446. package/.next/server/chunks/4028.js +0 -1
  447. package/.next/server/chunks/4045.js +0 -1
  448. package/.next/server/chunks/4322.js +0 -1
  449. package/.next/server/chunks/4498.js +0 -40
  450. package/.next/server/chunks/4690.js +0 -38
  451. package/.next/server/chunks/5625.js +0 -28
  452. package/.next/server/chunks/6532.js +0 -52
  453. package/.next/server/chunks/6901.js +0 -6
  454. package/.next/server/chunks/6981.js +0 -1
  455. package/.next/server/chunks/7101.js +0 -64
  456. package/.next/server/chunks/7635.js +0 -6
  457. package/.next/server/chunks/8298.js +0 -1
  458. package/.next/server/chunks/9957.js +0 -1
  459. package/.next/static/chunks/1161-970b105d0ab11425.js +0 -1
  460. package/.next/static/chunks/1871-14c3e63ca865d85e.js +0 -1
  461. package/.next/static/chunks/1892-5c1e38d89e0a5a9c.js +0 -1
  462. package/.next/static/chunks/2003-7710c23acaef11c9.js +0 -1
  463. package/.next/static/chunks/2720-2a926505ec98a6de.js +0 -1
  464. package/.next/static/chunks/3381-5fd2417957ca0881.js +0 -1
  465. package/.next/static/chunks/3930-cc8d73c953811b97.js +0 -1
  466. package/.next/static/chunks/422-268783d9ad5897e1.js +0 -1
  467. package/.next/static/chunks/4365-5d0e3d01c1bc0fdc.js +0 -1
  468. package/.next/static/chunks/5134-e21bd33daaf14ecf.js +0 -1
  469. package/.next/static/chunks/5501-c400aaeaf57e6297.js +0 -1
  470. package/.next/static/chunks/5619-82fc5c3133837739.js +0 -1
  471. package/.next/static/chunks/6013-cb423bc438256acb.js +0 -1
  472. package/.next/static/chunks/7258-e27017c1b98f43f9.js +0 -1
  473. package/.next/static/chunks/7539.41f0448cf9783388.js +0 -1
  474. package/.next/static/chunks/8066-c202a83aef15143a.js +0 -1
  475. package/.next/static/chunks/8187.fd653767df53db87.js +0 -1
  476. package/.next/static/chunks/8345.76f420453fc0dee7.js +0 -1
  477. package/.next/static/chunks/8755-9f375ec8740fecac.js +0 -1
  478. package/.next/static/chunks/9587-706bfd1a692c4660.js +0 -8
  479. package/.next/static/chunks/app/api/backup/route-b296683a5faf800a.js +0 -1
  480. package/.next/static/chunks/app/api/browse/route-b296683a5faf800a.js +0 -1
  481. package/.next/static/chunks/app/api/cwd/route-b296683a5faf800a.js +0 -1
  482. package/.next/static/chunks/app/api/encryption/secure/route-b296683a5faf800a.js +0 -1
  483. package/.next/static/chunks/app/api/env/route-b296683a5faf800a.js +0 -1
  484. package/.next/static/chunks/app/api/flow/[id]/route-b296683a5faf800a.js +0 -1
  485. package/.next/static/chunks/app/api/flow/compile/route-b296683a5faf800a.js +0 -1
  486. package/.next/static/chunks/app/api/flow/generate/route-b296683a5faf800a.js +0 -1
  487. package/.next/static/chunks/app/api/flow/improve/route-b296683a5faf800a.js +0 -1
  488. package/.next/static/chunks/app/api/flow/prompt-renderer/route-b296683a5faf800a.js +0 -1
  489. package/.next/static/chunks/app/api/flow/quick-chat/route-b296683a5faf800a.js +0 -1
  490. package/.next/static/chunks/app/api/flow/repair/route-b296683a5faf800a.js +0 -1
  491. package/.next/static/chunks/app/api/flow/route-b296683a5faf800a.js +0 -1
  492. package/.next/static/chunks/app/api/git/route-b296683a5faf800a.js +0 -1
  493. package/.next/static/chunks/app/api/init/route-b296683a5faf800a.js +0 -1
  494. package/.next/static/chunks/app/api/local-models/capability/route-b296683a5faf800a.js +0 -1
  495. package/.next/static/chunks/app/api/local-models/pull/route-b296683a5faf800a.js +0 -1
  496. package/.next/static/chunks/app/api/local-models/suggest/route-b296683a5faf800a.js +0 -1
  497. package/.next/static/chunks/app/api/mcp/cancel/route-b296683a5faf800a.js +0 -1
  498. package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/get/route-b296683a5faf800a.js +0 -1
  499. package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/route-b296683a5faf800a.js +0 -1
  500. package/.next/static/chunks/app/api/mcp/servers/[name]/resources/read/route-b296683a5faf800a.js +0 -1
  501. package/.next/static/chunks/app/api/mcp/servers/[name]/resources/route-b296683a5faf800a.js +0 -1
  502. package/.next/static/chunks/app/api/mcp/servers/[name]/route-b296683a5faf800a.js +0 -1
  503. package/.next/static/chunks/app/api/mcp/servers/[name]/status/route-b296683a5faf800a.js +0 -1
  504. package/.next/static/chunks/app/api/mcp/servers/[name]/tools/[toolName]/route-b296683a5faf800a.js +0 -1
  505. package/.next/static/chunks/app/api/mcp/servers/[name]/tools/route-b296683a5faf800a.js +0 -1
  506. package/.next/static/chunks/app/api/mcp/servers/route-b296683a5faf800a.js +0 -1
  507. package/.next/static/chunks/app/api/mcp/test-connection/route-b296683a5faf800a.js +0 -1
  508. package/.next/static/chunks/app/api/mcp/test-connection/stream/route-b296683a5faf800a.js +0 -1
  509. package/.next/static/chunks/app/api/mcp-registry/route-b296683a5faf800a.js +0 -1
  510. package/.next/static/chunks/app/api/mcp-registry/spotlight/route-b296683a5faf800a.js +0 -1
  511. package/.next/static/chunks/app/api/model/[id]/route-b296683a5faf800a.js +0 -1
  512. package/.next/static/chunks/app/api/model/provider/route-b296683a5faf800a.js +0 -1
  513. package/.next/static/chunks/app/api/model/route-b296683a5faf800a.js +0 -1
  514. package/.next/static/chunks/app/api/model/test/route-b296683a5faf800a.js +0 -1
  515. package/.next/static/chunks/app/api/oauth/callback/route-b296683a5faf800a.js +0 -1
  516. package/.next/static/chunks/app/api/oauth/initiate/route-b296683a5faf800a.js +0 -1
  517. package/.next/static/chunks/app/api/oauth/reset/route-b296683a5faf800a.js +0 -1
  518. package/.next/static/chunks/app/api/planned-executions/[id]/route-b296683a5faf800a.js +0 -1
  519. package/.next/static/chunks/app/api/planned-executions/[id]/run/route-b296683a5faf800a.js +0 -1
  520. package/.next/static/chunks/app/api/planned-executions/[id]/runs/route-b296683a5faf800a.js +0 -1
  521. package/.next/static/chunks/app/api/planned-executions/preview-schedule/route-b296683a5faf800a.js +0 -1
  522. package/.next/static/chunks/app/api/planned-executions/route-b296683a5faf800a.js +0 -1
  523. package/.next/static/chunks/app/api/restore/route-b296683a5faf800a.js +0 -1
  524. package/.next/static/chunks/app/api/storage/route-b296683a5faf800a.js +0 -1
  525. package/.next/static/chunks/app/api/update/route-b296683a5faf800a.js +0 -1
  526. package/.next/static/chunks/app/api/webhooks/[id]/route-b296683a5faf800a.js +0 -1
  527. package/.next/static/chunks/app/chat/page-a67ad3683443e7ad.js +0 -1
  528. package/.next/static/chunks/app/docs/page-097827ec4dae1d30.js +0 -1
  529. package/.next/static/chunks/app/executions/page-cb0dcc66d84c9bf8.js +0 -1
  530. package/.next/static/chunks/app/flows/page-abdd0642e378c5da.js +0 -1
  531. package/.next/static/chunks/app/layout-64fc0ae7efe81e3c.js +0 -1
  532. package/.next/static/chunks/app/mcp/page-7d3a269dce68b529.js +0 -1
  533. package/.next/static/chunks/app/mcp-flows/route-b296683a5faf800a.js +0 -1
  534. package/.next/static/chunks/app/mcp-proxy/[server]/route-b296683a5faf800a.js +0 -1
  535. package/.next/static/chunks/app/models/error-5732fbb053e182c5.js +0 -1
  536. package/.next/static/chunks/app/models/page-616950f93a1e0027.js +0 -1
  537. package/.next/static/chunks/app/settings/page-199d0ffae9ec7263.js +0 -1
  538. package/.next/static/chunks/app/v1/chat/completions/route-b296683a5faf800a.js +0 -1
  539. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/breakpoints/route-b296683a5faf800a.js +0 -1
  540. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/cancel/route-b296683a5faf800a.js +0 -1
  541. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/continue/route-b296683a5faf800a.js +0 -1
  542. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/step/route-b296683a5faf800a.js +0 -1
  543. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/edit-state/route-b296683a5faf800a.js +0 -1
  544. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/events/route-b296683a5faf800a.js +0 -1
  545. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/resources/route-b296683a5faf800a.js +0 -1
  546. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/respond/route-b296683a5faf800a.js +0 -1
  547. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/route-b296683a5faf800a.js +0 -1
  548. package/.next/static/chunks/app/v1/chat/conversations/route-b296683a5faf800a.js +0 -1
  549. package/.next/static/chunks/app/v1/models/route-b296683a5faf800a.js +0 -1
  550. package/.next/static/chunks/webpack-ef5b2cef70829f42.js +0 -1
  551. package/.next/static/css/d1484588c616b291.css +0 -31
  552. package/.next/static/dvSaKx6-EfRNi7Xj-cSv_/_buildManifest.js +0 -1
  553. /package/.next/static/{dvSaKx6-EfRNi7Xj-cSv_ → MMmWHUQ3UAJBdRB7G1zGj}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6731],{4543:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)([(0,o.jsx)("circle",{cx:"20",cy:"12",r:"2"},"0"),(0,o.jsx)("circle",{cx:"4",cy:"12",r:"2"},"1"),(0,o.jsx)("circle",{cx:"12",cy:"20",r:"2"},"2"),(0,o.jsx)("path",{d:"M10.05 8.59 6.03 4.55h-.01l-.31-.32-1.42 1.41 4.02 4.05.01-.01.31.32zm3.893.027 4.405-4.392L19.76 5.64l-4.405 4.393zM10.01 15.36l-1.42-1.41-4.03 4.01-.32.33 1.41 1.41 4.03-4.02zm9.75 2.94-3.99-4.01-.36-.35L14 15.35l3.99 4.01.35.35z"},"3"),(0,o.jsx)("circle",{cx:"12",cy:"4",r:"2"},"4")],"Stream")},8415:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M4.5 11h-2V9H1v6h1.5v-2.5h2V15H6V9H4.5zm2.5-.5h1.5V15H10v-4.5h1.5V9H7zm5.5 0H14V15h1.5v-4.5H17V9h-4.5zm9-1.5H18v6h1.5v-2h2c.8 0 1.5-.7 1.5-1.5v-1c0-.8-.7-1.5-1.5-1.5m0 2.5h-2v-1h2z"}),"Http")},11414:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39"}),"Public")},12857:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2m5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12z"}),"Cancel")},13548:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M11 7 9.6 8.4l2.6 2.6H2v2h10.2l-2.6 2.6L11 17l5-5zm9 12h-8v2h8c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-8v2h8z"}),"Login")},16186:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonUnchecked")},20099:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M16.91 14.09 17 14l2 2 4-4.04L21 10h-8.17zM3.98 6.81C2.2 7.85 1 9.79 1 12c0 3.31 2.69 6 6 6 2.21 0 4.15-1.2 5.18-2.99l7.59 7.59 1.41-1.41L2.81 2.81 1.39 4.22zm5.93 5.93C9.58 14.03 8.4 15 7 15c-1.65 0-3-1.35-3-3 0-1.4.97-2.58 2.26-2.91z"}),"KeyOff")},36944:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"}),"Home")},40171:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"m4 12 1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8z"}),"ArrowUpward")},48563:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-2h2zm0-4h-2V7h2z"}),"Error")},59652:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M4 7v2c0 .55-.45 1-1 1H2v4h1c.55 0 1 .45 1 1v2c0 1.65 1.35 3 3 3h3v-2H7c-.55 0-1-.45-1-1v-2c0-1.3-.84-2.42-2-2.83v-.34C5.16 11.42 6 10.3 6 9V7c0-.55.45-1 1-1h3V4H7C5.35 4 4 5.35 4 7m17 3c-.55 0-1-.45-1-1V7c0-1.65-1.35-3-3-3h-3v2h3c.55 0 1 .45 1 1v2c0 1.3.84 2.42 2 2.83v.34c-1.16.41-2 1.52-2 2.83v2c0 .55-.45 1-1 1h-3v2h3c1.65 0 3-1.35 3-3v-2c0-.55.45-1 1-1h1v-4z"}),"DataObject")},74482:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8zM6 20V4h7v5h5v11z"}),"InsertDriveFileOutlined")},79299:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2m0 12H4V8h16z"}),"FolderOpen")},80007:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8z"}),"Folder")},80412:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2m-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2m3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1z"}),"Lock")},80422:(e,t,n)=>{n.d(t,{A:()=>R});var r=n(12115),o=n(57001),a=n(47079),l=n(57421),c=n(11065);let i=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{autoHideDuration:t=null,disableWindowBlurListener:n=!1,onClose:o,open:i,resumeHideDuration:s}=e,u=(0,a.A)();r.useEffect(()=>{if(i)return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)};function e(e){e.defaultPrevented||"Escape"!==e.key||null==o||o(e,"escapeKeyDown")}},[i,o]);let h=(0,l.A)((e,t)=>{null==o||o(e,t)}),d=(0,l.A)(e=>{o&&null!=e&&u.start(e,()=>{h(null,"timeout")})});r.useEffect(()=>(i&&d(t),u.clear),[i,t,d,u]);let v=u.clear,p=r.useCallback(()=>{null!=t&&d(null!=s?s:.5*t)},[t,s,d]);return r.useEffect(()=>{if(!n&&i)return window.addEventListener("focus",p),window.addEventListener("blur",v),()=>{window.removeEventListener("focus",p),window.removeEventListener("blur",v)}},[n,i,p,v]),{getRootProps:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n={...(0,c.A)(e),...(0,c.A)(t)};return{role:"presentation",...t,...n,onBlur:e=>{let t=n.onBlur;null==t||t(e),p()},onFocus:e=>{let t=n.onFocus;null==t||t(e),v()},onMouseEnter:e=>{let t=n.onMouseEnter;null==t||t(e),v()},onMouseLeave:e=>{let t=n.onMouseLeave;null==t||t(e),p()}}},onClickAway:e=>{null==o||o(e,"clickaway")}}};var s=n(30365),u=n(12699),h=n(12549);function d(e){return e.substring(2).toLowerCase()}function v(e){let{children:t,disableReactTree:n=!1,mouseEvent:o="onClick",onClickAway:a,touchEvent:c="onTouchEnd"}=e,i=r.useRef(!1),v=r.useRef(null),p=r.useRef(!1),m=r.useRef(!1);r.useEffect(()=>(setTimeout(()=>{p.current=!0},0),()=>{p.current=!1}),[]);let A=(0,s.A)((0,h.A)(t),v),f=(0,l.A)(e=>{let t=m.current;m.current=!1;let r=(0,u.A)(v.current);if(!(!p.current||!v.current||"clientX"in e&&(r.documentElement.clientWidth<e.clientX||r.documentElement.clientHeight<e.clientY))){if(i.current){i.current=!1;return}(e.composedPath?e.composedPath().includes(v.current):!r.documentElement.contains(e.target)||v.current.contains(e.target))||!n&&t||a(e)}}),g=e=>n=>{m.current=!0;let r=t.props[e];r&&r(n)},x={ref:A};return!1!==c&&(x[c]=g(c)),r.useEffect(()=>{if(!1!==c){let e=d(c),t=(0,u.A)(v.current),n=()=>{i.current=!0};return t.addEventListener(e,f),t.addEventListener("touchmove",n),()=>{t.removeEventListener(e,f),t.removeEventListener("touchmove",n)}}},[f,c]),!1!==o&&(x[o]=g(o)),r.useEffect(()=>{if(!1!==o){let e=d(o),t=(0,u.A)(v.current);return t.addEventListener(e,f),()=>{t.removeEventListener(e,f)}}},[f,o]),r.cloneElement(t,x)}var p=n(48116),m=n(33567),A=n(66964),f=n(16625),g=n(81852),x=n(22379),y=n(2821),k=n(8532),C=n(2300),L=n(85795),b=n(95195);function w(e){return(0,b.Ay)("MuiSnackbarContent",e)}(0,L.A)("MuiSnackbarContent",["root","message","action"]);var z=n(95155);let E=(0,p.Ay)(C.A,{name:"MuiSnackbarContent",slot:"Root",overridesResolver:(e,t)=>t.root})((0,A.A)(e=>{let{theme:t}=e,n="light"===t.palette.mode?.8:.98,r=(0,k.tL)(t.palette.background.default,n);return{...t.typography.body2,color:t.vars?t.vars.palette.SnackbarContent.color:t.palette.getContrastText(r),backgroundColor:t.vars?t.vars.palette.SnackbarContent.bg:r,display:"flex",alignItems:"center",flexWrap:"wrap",padding:"6px 16px",borderRadius:(t.vars||t).shape.borderRadius,flexGrow:1,[t.breakpoints.up("sm")]:{flexGrow:"initial",minWidth:288}}})),j=(0,p.Ay)("div",{name:"MuiSnackbarContent",slot:"Message",overridesResolver:(e,t)=>t.message})({padding:"8px 0"}),M=(0,p.Ay)("div",{name:"MuiSnackbarContent",slot:"Action",overridesResolver:(e,t)=>t.action})({display:"flex",alignItems:"center",marginLeft:"auto",paddingLeft:16,marginRight:-8}),S=r.forwardRef(function(e,t){let n=(0,f.b)({props:e,name:"MuiSnackbarContent"}),{action:r,className:a,message:l,role:c="alert",...i}=n,s=(e=>{let{classes:t}=e;return(0,o.A)({root:["root"],action:["action"],message:["message"]},w,t)})(n);return(0,z.jsxs)(E,{role:c,square:!0,elevation:6,className:(0,y.A)(s.root,a),ownerState:n,ref:t,...i,children:[(0,z.jsx)(j,{className:s.message,ownerState:n,children:l}),r?(0,z.jsx)(M,{className:s.action,ownerState:n,children:r}):null]})});function H(e){return(0,b.Ay)("MuiSnackbar",e)}(0,L.A)("MuiSnackbar",["root","anchorOriginTopCenter","anchorOriginBottomCenter","anchorOriginTopRight","anchorOriginBottomRight","anchorOriginTopLeft","anchorOriginBottomLeft"]);var V=n(77765);let O=(0,p.Ay)("div",{name:"MuiSnackbar",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t["anchorOrigin".concat((0,g.A)(n.anchorOrigin.vertical)).concat((0,g.A)(n.anchorOrigin.horizontal))]]}})((0,A.A)(e=>{let{theme:t}=e;return{zIndex:(t.vars||t).zIndex.snackbar,position:"fixed",display:"flex",left:8,right:8,justifyContent:"center",alignItems:"center",variants:[{props:e=>{let{ownerState:t}=e;return"top"===t.anchorOrigin.vertical},style:{top:8,[t.breakpoints.up("sm")]:{top:24}}},{props:e=>{let{ownerState:t}=e;return"top"!==t.anchorOrigin.vertical},style:{bottom:8,[t.breakpoints.up("sm")]:{bottom:24}}},{props:e=>{let{ownerState:t}=e;return"left"===t.anchorOrigin.horizontal},style:{justifyContent:"flex-start",[t.breakpoints.up("sm")]:{left:24,right:"auto"}}},{props:e=>{let{ownerState:t}=e;return"right"===t.anchorOrigin.horizontal},style:{justifyContent:"flex-end",[t.breakpoints.up("sm")]:{right:24,left:"auto"}}},{props:e=>{let{ownerState:t}=e;return"center"===t.anchorOrigin.horizontal},style:{[t.breakpoints.up("sm")]:{left:"50%",right:"auto",transform:"translateX(-50%)"}}}]}})),R=r.forwardRef(function(e,t){let n=(0,f.b)({props:e,name:"MuiSnackbar"}),a=(0,m.A)(),l={enter:a.transitions.duration.enteringScreen,exit:a.transitions.duration.leavingScreen},{action:c,anchorOrigin:{vertical:s,horizontal:u}={vertical:"bottom",horizontal:"left"},autoHideDuration:h=null,children:d,className:p,ClickAwayListenerProps:A,ContentProps:y,disableWindowBlurListener:k=!1,message:C,onBlur:L,onClose:b,onFocus:w,onMouseEnter:E,onMouseLeave:j,open:M,resumeHideDuration:R,slots:P={},slotProps:T={},TransitionComponent:F,transitionDuration:B=l,TransitionProps:{onEnter:I,onExited:N,...W}={},..._}=n,D={...n,anchorOrigin:{vertical:s,horizontal:u},autoHideDuration:h,disableWindowBlurListener:k,TransitionComponent:F,transitionDuration:B},U=(e=>{let{classes:t,anchorOrigin:n}=e,r={root:["root","anchorOrigin".concat((0,g.A)(n.vertical)).concat((0,g.A)(n.horizontal))]};return(0,o.A)(r,H,t)})(D),{getRootProps:X,onClickAway:G}=i({...D}),[K,q]=r.useState(!0),Y={slots:{transition:F,...P},slotProps:{content:y,clickAwayListener:A,transition:W,...T}},[J,Q]=(0,V.A)("root",{ref:t,className:[U.root,p],elementType:O,getSlotProps:X,externalForwardedProps:{...Y,..._},ownerState:D}),[Z,{ownerState:$,...ee}]=(0,V.A)("clickAwayListener",{elementType:v,externalForwardedProps:Y,getSlotProps:e=>({onClickAway:function(){for(var t,n=arguments.length,r=Array(n),o=0;o<n;o++)r[o]=arguments[o];null==(t=e.onClickAway)||t.call(e,...r),G(...r)}}),ownerState:D}),[et,en]=(0,V.A)("content",{elementType:S,shouldForwardComponentProp:!0,externalForwardedProps:Y,additionalProps:{message:C,action:c},ownerState:D}),[er,eo]=(0,V.A)("transition",{elementType:x.A,externalForwardedProps:Y,getSlotProps:e=>({onEnter:function(){for(var t,n=arguments.length,r=Array(n),o=0;o<n;o++)r[o]=arguments[o];null==(t=e.onEnter)||t.call(e,...r),((e,t)=>{q(!1),I&&I(e,t)})(...r)},onExited:function(){for(var t,n=arguments.length,r=Array(n),o=0;o<n;o++)r[o]=arguments[o];null==(t=e.onExited)||t.call(e,...r),(e=>{q(!0),N&&N(e)})(...r)}}),additionalProps:{appear:!0,in:M,timeout:B,direction:"top"===s?"down":"up"},ownerState:D});return!M&&K?null:(0,z.jsx)(Z,{...ee,...P.clickAwayListener&&{ownerState:$},children:(0,z.jsx)(J,{...Q,children:(0,z.jsx)(er,{...eo,children:d||(0,z.jsx)(et,{...en})})})})})},84318:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9m8 8 3 3 3-3c-1.65-1.66-4.34-1.66-6 0m-4-4 2 2c2.76-2.76 7.24-2.76 10 0l2-2C15.14 9.14 8.87 9.14 5 13"}),"Wifi")},97714:(e,t,n)=>{n.d(t,{A:()=>a});var r=n(36697),o=n(95155);let a=(0,r.A)((0,o.jsx)("path",{d:"m12 16.5 4-4h-3v-9h-2v9H8zm9-13h-6v1.99h6v14.03H3V5.49h6V3.5H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2v-14c0-1.1-.9-2-2-2"}),"SystemUpdateAlt")}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7430],{9352:(e,t,r)=>{r.d(t,{Ic:()=>n,kY:()=>o});var a=r(26796);let s=(0,r(87021).h)("frontend/utils/theme"),o={light:{background:"#FFFFFF",foreground:"#2C3E50",paperBackground:"#F5F6FA",textSecondary:"#7F8C8D",border:"#e5e7eb",heading:"#111",text:"#333",secondaryText:"#666",error:{background:"#fef2f2",border:"#fecaca",text:"#dc2626"}},dark:{background:"#1a1a1a",foreground:"#f0f0f0",paperBackground:"#2a2a2a",textSecondary:"#aaaaaa",border:"#3a3a3a",heading:"#f8f8f8",text:"#f0f0f0",secondaryText:"#aaa",error:{background:"#3a2222",border:"#5a3333",text:"#f87171"}}};function n(){let{isDarkMode:e}=(0,a.useTheme)();return s.debug("useThemeUtils called with isDarkMode: ".concat(e)),{getThemeValue:(t,r)=>e?r:t,getThemeColor:t=>{let r=t.split("."),a=o[e?"dark":"light"];for(let e of r)if(!a||"object"!=typeof a||!(e in a))return s.warn("Theme color path not found: ".concat(t)),"";else a=a[e];return a},colors:e?o.dark:o.light,isDarkMode:e}}},26796:(e,t,r)=>{r.r(t),r.d(t,{ThemeProvider:()=>h,useTheme:()=>m});var a=r(95155),s=r(12115),o=r(87021),n=r(7160),l=r(29197),i=r(9352),c=r(84563),d=r(29692);let u=(0,o.h)("frontend/contexts/ThemeContext"),p=(0,s.createContext)(void 0),h=e=>{let{children:t}=e,[r,o]=(0,s.useState)(!1),[h,m]=(0,s.useState)(!1);(0,s.useEffect)(()=>{(async()=>{u.debug("Loading theme preference from storage");let e=await (0,d.YM)(d.Zg.THEME,"light");u.info("Theme loaded from storage: ".concat(e));let t="dark"===e;m(t),t?document.documentElement.classList.add("dark-theme"):document.documentElement.classList.remove("dark-theme"),o(!0)})()},[]);let f=(0,s.useMemo)(()=>(function(e){let t="dark"===e?i.kY.dark:i.kY.light;return(0,l.A)({palette:{mode:e,primary:{main:"#007bff"},secondary:{main:"#6c757d"},error:{main:"dark"===e?"#f87171":"#dc2626",light:"dark"===e?"#5a3333":"#fecaca",dark:"dark"===e?"#3a2222":"#b91c1c"},warning:{main:"#f59e0b"},info:{main:"#3b82f6"},success:{main:"dark"===e?"#4ade80":"#16a34a"},background:{default:t.background,paper:t.paperBackground},text:{primary:t.foreground,secondary:t.textSecondary}},typography:{fontFamily:"var(--font-geist-sans), Arial, sans-serif",h1:{fontWeight:700},h2:{fontWeight:700},h3:{fontWeight:600},h4:{fontWeight:600},h5:{fontWeight:600},h6:{fontWeight:600}},components:{MuiButton:{styleOverrides:{root:{textTransform:"none",borderRadius:"0.375rem"}}},MuiPaper:{styleOverrides:{root:{borderRadius:"0.5rem"}}},MuiTextField:{styleOverrides:{root:{"& .MuiOutlinedInput-root":{borderRadius:"0.375rem"}}}},MuiCard:{styleOverrides:{root:{borderRadius:"0.5rem",boxShadow:"dark"===e?"0 4px 6px -1px rgba(0, 0, 0, 0.2), 0 2px 4px -1px rgba(0, 0, 0, 0.1)":"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)"}}}}})})(h?"dark":"light"),[h]);return u.debug("Rendering ThemeProvider with isDarkMode: ".concat(h)),(0,a.jsx)(p.Provider,{value:{toggleTheme:()=>{m(e=>{let t=!e,r=t?"dark":"light";return u.info("Toggling theme to: ".concat(r)),t?document.documentElement.classList.add("dark-theme"):document.documentElement.classList.remove("dark-theme"),(0,d.VH)(d.Zg.THEME,r),t})},isDarkMode:h},children:(0,a.jsxs)(n.A,{theme:f,children:[(0,a.jsx)(c.Ay,{}),t]})})},m=()=>{let e=(0,s.useContext)(p);if(!e)throw u.error("useTheme hook used outside of ThemeProvider"),Error("useTheme must be used within a ThemeProvider");return u.debug("useTheme hook accessed"),e}},62640:(e,t,r)=>{r.d(t,{A:()=>O});var a=r(95155),s=r(12115),o=r(2778),n=r(52363),l=r(65036),i=r(94049),c=r(78470),d=r(41983),u=r(9562),p=r(28548),h=r(22003),m=r(4474),f=r(25635),x=r(41602),b=r(73707),g=r(49501),y=r(17681),v=r(75912),j=r(91871),k=r(80007),w=r(74482),A=r(40171),S=r(36944);let C=(0,r(87021).h)("frontend/components/shared/FolderPickerDialog"),O=e=>{let{open:t,title:r="Choose a folder",selectFiles:O=!1,initialPath:z,onClose:T,onSelect:P}=e,[E,U]=(0,s.useState)(null),[F,R]=(0,s.useState)(""),[W,M]=(0,s.useState)(!1),[I,N]=(0,s.useState)(null),D=(0,s.useCallback)(async e=>{M(!0),N(null);try{let t=e?"?path=".concat(encodeURIComponent(e)):"",r=await fetch("/api/browse".concat(t)),a=await r.json();if(!r.ok||a.error)return void N(a.error||"HTTP ".concat(r.status));U(a),R(a.path)}catch(e){C.warn("Browse failed",e),N("Could not reach the backend to browse folders.")}finally{M(!1)}},[]);(0,s.useEffect)(()=>{t?D(z||void 0):(U(null),N(null))},[t,z,D]);let B=e=>{P(e),T()};return(0,a.jsxs)(o.A,{open:t,onClose:T,maxWidth:"sm",fullWidth:!0,children:[(0,a.jsx)(n.A,{children:r}),(0,a.jsxs)(l.A,{dividers:!0,sx:{display:"flex",flexDirection:"column",gap:1.5},children:[(0,a.jsxs)(i.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,a.jsx)(c.A,{title:"Up one folder",children:(0,a.jsx)("span",{children:(0,a.jsx)(d.A,{size:"small",disabled:!(null==E?void 0:E.parent)||W,onClick:()=>(null==E?void 0:E.parent)&&void D(E.parent),children:(0,a.jsx)(A.A,{fontSize:"small"})})})}),(0,a.jsx)(c.A,{title:"Home folder",children:(0,a.jsx)("span",{children:(0,a.jsx)(d.A,{size:"small",disabled:W,onClick:()=>void D(),children:(0,a.jsx)(S.A,{fontSize:"small"})})})}),(0,a.jsx)(u.A,{fullWidth:!0,size:"small",value:F,onChange:e=>R(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),D(F))},placeholder:"Type a path and press Enter"})]}),E&&E.drives.length>0&&(0,a.jsx)(i.default,{sx:{display:"flex",gap:.75,flexWrap:"wrap"},children:E.drives.map(e=>(0,a.jsx)(p.A,{label:e,size:"small",variant:E.path.toLowerCase().startsWith(e.toLowerCase())?"filled":"outlined",onClick:()=>void D(e)},e))}),I&&(0,a.jsx)(h.A,{severity:"error",children:I}),(0,a.jsxs)(i.default,{sx:{minHeight:240,maxHeight:"45vh",overflow:"auto",border:1,borderColor:"divider",borderRadius:1},children:[W&&(0,a.jsx)(i.default,{sx:{display:"flex",justifyContent:"center",py:4},children:(0,a.jsx)(m.default,{size:24})}),!W&&E&&0===E.entries.length&&(0,a.jsx)(f.default,{variant:"body2",color:"text.secondary",sx:{p:2},children:"This folder is empty."}),!W&&(0,a.jsx)(x.A,{dense:!0,disablePadding:!0,children:null==E?void 0:E.entries.map(e=>(0,a.jsxs)(b.A,{disabled:!e.isDirectory&&!O,onClick:()=>e.isDirectory?void D(e.path):B(e.path),children:[(0,a.jsx)(g.A,{sx:{minWidth:34},children:e.isDirectory?(0,a.jsx)(k.A,{fontSize:"small",color:"primary"}):(0,a.jsx)(w.A,{fontSize:"small"})}),(0,a.jsx)(y.A,{primary:e.name,primaryTypographyProps:{noWrap:!0}})]},e.path))})]})]}),(0,a.jsxs)(v.A,{children:[(0,a.jsx)(j.A,{onClick:T,children:"Cancel"}),(0,a.jsx)(j.A,{variant:"contained",disabled:!E||W,onClick:()=>E&&B(E.path),children:"Select this folder"})]})]})}},65818:(e,t,r)=>{r.d(t,{mO:()=>o,rI:()=>n});var a=r(38459);let s=["stdio","websocket","sse","streamable"];function o(e,t){switch(t){case"name-asc":case"name-desc":return(0,a.po)(e.name);case"status-connected":case"status-disconnected":{let t=e.status;if("connected"===t)return{key:"status:connected",label:"Connected"};if("error"===t)return{key:"status:error",label:"Error"};if("requires_authentication"===t)return{key:"status:auth",label:"Requires authentication"};return{key:"status:disconnected",label:"Disconnected"}}case"transport":{let t=e.transport||"unknown";return{key:"transport:".concat(t),label:({stdio:"Stdio",websocket:"WebSocket",sse:"SSE",streamable:"Streamable HTTP"})[t]||t}}default:return{key:"all",label:"All servers"}}}function n(e,t){return[...e].sort((e,r)=>{switch(t){case"name-asc":return e.name.localeCompare(r.name);case"name-desc":return r.name.localeCompare(e.name);case"status-connected":if("connected"===e.status&&"connected"!==r.status)return -1;if("connected"!==e.status&&"connected"===r.status)return 1;return e.name.localeCompare(r.name);case"status-disconnected":if("disconnected"===e.status&&"disconnected"!==r.status)return -1;if("disconnected"!==e.status&&"disconnected"===r.status)return 1;return e.name.localeCompare(r.name);case"transport":{var a,o;let t=s.indexOf(null!=(a=e.transport)?a:""),n=s.indexOf(null!=(o=r.transport)?o:"");if(t!==n)return t-n;return e.name.localeCompare(r.name)}default:return 0}})}},70272:(e,t,r)=>{function a(e){let t={};if(!e)return t;for(let[r,a]of Object.entries(e))t[r]=a&&"object"==typeof a&&"value"in a?a.value:"string"==typeof a?a:"";return t}function s(e){let t,r=[],a=[];if("string"==typeof e)try{t=JSON.parse(e)}catch(e){return{servers:a,errors:["Invalid JSON: ".concat(e.message)]}}else t=e;if(!t||"object"!=typeof t)return{servers:a,errors:["Expected a JSON object."]};let s=t,o=s.mcpServers&&"object"==typeof s.mcpServers?s.mcpServers:s;if(0===Object.keys(o).length)return{servers:a,errors:['No servers found. Expected an "mcpServers" object.']};for(let[e,t]of Object.entries(o)){var n;if(!t||"object"!=typeof t){r.push('"'.concat(e,'": entry is not an object.'));continue}let s=function(e){let t=(e.transport||e.type||"").toString().toLowerCase().trim();if(!t)return"stdio";switch(t){case"stdio":return"stdio";case"http":case"streamable-http":case"streamable":case"streamablehttp":return"streamable";case"sse":return"sse";case"ws":case"websocket":return"websocket";default:return null}}(t);if(!s){r.push('"'.concat(e,'": unknown transport type "').concat(t.type||t.transport,'".'));continue}let o={};if(t.env&&"object"==typeof t.env)for(let[e,r]of Object.entries(t.env))o[e]="string"==typeof r?r:String(null!=r?r:"");let l={name:e,env:o,disabled:null!=(n=t.disabled)&&n,autoApprove:Array.isArray(t.autoApprove)?t.autoApprove:[],rootPath:"",_buildCommand:"",_installCommand:""};if("stdio"===s){if(!t.command||"string"!=typeof t.command){r.push('"'.concat(e,'": stdio server is missing a "command".'));continue}a.push({...l,transport:"stdio",command:t.command,args:Array.isArray(t.args)?t.args:[]})}else if("websocket"===s){let s=t.url||t.websocketUrl;if(!s){r.push('"'.concat(e,'": websocket server is missing a "url".'));continue}a.push({...l,transport:"websocket",websocketUrl:s})}else{let o=t.url||t.serverUrl;if(!o){r.push('"'.concat(e,'": ').concat(s,' server is missing a "url".'));continue}let n=t.headers&&"object"==typeof t.headers?t.headers:void 0;a.push({...l,transport:s,serverUrl:o,...n?{headers:n}:{}})}}return{servers:a,errors:r}}r.d(t,{_i:()=>o,CZ:()=>l,Kt:()=>n});let o=[{id:"claude",label:"Claude",fileName:"mcp_config.json",export:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=(t.proxyBaseUrl||"").replace(/\/$/,""),s={};for(let t of e){if(t.exposeAsMcpServer){s[t.name]={type:"http",url:"".concat(r,"/mcp-proxy/").concat(t.name)};continue}let e={},o=a(t.env);switch(t.transport){case"stdio":e.command=t.command,e.args=t.args||[],Object.keys(o).length>0&&(e.env=o);break;case"streamable":e.type="http",e.url=t.serverUrl,t.headers&&Object.keys(t.headers).length>0&&(e.headers=a(t.headers)),Object.keys(o).length>0&&(e.env=o);break;case"sse":e.type="sse",e.url=t.serverUrl,t.headers&&Object.keys(t.headers).length>0&&(e.headers=a(t.headers)),Object.keys(o).length>0&&(e.env=o);break;case"websocket":e.type="ws",e.url=t.websocketUrl,Object.keys(o).length>0&&(e.env=o);break;default:Object.keys(o).length>0&&(e.env=o)}s[t.name]=e}return{mcpServers:s}},import:s},{id:"cline",label:"Cline",fileName:"cline_mcp_settings.json",export:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=(t.proxyBaseUrl||"").replace(/\/$/,""),s={};for(let t of e){var o,n;let e={disabled:null!=(o=t.disabled)&&o,autoApprove:null!=(n=t.autoApprove)?n:[],timeout:60};if(t.exposeAsMcpServer){s[t.name]={...e,type:"streamableHttp",url:"".concat(r,"/mcp-proxy/").concat(t.name)};continue}let l=a(t.env),i={...e};switch(t.transport){case"stdio":i.command=t.command,i.args=t.args||[],Object.keys(l).length>0&&(i.env=l);break;case"streamable":i.type="streamableHttp",i.url=t.serverUrl,t.headers&&Object.keys(t.headers).length>0&&(i.headers=a(t.headers));break;case"sse":i.type="sse",i.url=t.serverUrl,t.headers&&Object.keys(t.headers).length>0&&(i.headers=a(t.headers));break;case"websocket":i.type="ws",i.url=t.websocketUrl;break;default:Object.keys(l).length>0&&(i.env=l)}s[t.name]=i}return{mcpServers:s}},import:function(e){return s(e)}}];function n(e){var t;return null!=(t=o.find(t=>t.id===e))?t:o[0]}function l(e,t,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"claude",s=(r||"").replace(/\/$/,"");return JSON.stringify(t?n(a).export([t],{proxyBaseUrl:s}):{mcpServers:{[e]:{type:"http",url:"".concat(s,"/mcp-proxy/").concat(e)}}},null,2)}},80411:(e,t,r)=>{r.d(t,{Fu:()=>i,M8:()=>o,Qv:()=>n,Qz:()=>l});let a=(0,r(87021).h)("frontend/components/mcp/MCPServerManager/utils/serverUpdates"),s=new Map;async function o(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=Date.now(),o={},n=[];for(let a of new Set(e.filter(Boolean))){let e=s.get(a);!t&&e&&r-e.at<6e5?o[a]=e.info:n.push(a)}if(n.length>0)try{let e=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"checkUpdatesBatch",paths:n})}),t=await e.json();if(e.ok&&t.results)for(let[e,a]of Object.entries(t.results))s.set(e,{at:r,info:a}),o[e]=a;else a.warn("Batch update check failed",t.error)}catch(e){a.warn("Batch update check request failed",e)}return o}async function n(e){try{let t=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"pullUpdates",savePath:e})}),r=await t.json();if(!t.ok)return{success:!1,error:r.error||"Failed to pull updates"};return{success:!0,oldSha:r.oldSha,newSha:r.newSha,updated:r.updated}}catch(e){return{success:!1,error:e.message||"Failed to pull updates"}}}async function l(e,t,r){let s=e.match(/github\.com[:/]([^/]+)\/([^/]+?)(?:\.git)?\/?$/i);if(!s)return null;try{let e=await fetch("https://api.github.com/repos/".concat(s[1],"/").concat(s[2],"/compare/").concat(t,"...").concat(r));if(!e.ok)return null;let a=await e.json(),o=Array.isArray(a.commits)?a.commits:[];return{behindBy:"number"==typeof a.total_commits?a.total_commits:null,commits:o.slice(-10).reverse().map(e=>{var t;return{sha:(e.sha||"").slice(0,7),message:((null==(t=e.commit)?void 0:t.message)||"").split("\n")[0]}})}}catch(e){return a.debug("GitHub compare preview failed (non-fatal)",e),null}}function i(e){return e?e.slice(0,7):""}},86631:(e,t,r)=>{r.d(t,{b:()=>o,c:()=>n});var a=r(56290);async function s(e,t){try{let r=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!r.ok||!r.body)return null;let s=null;return await (0,a.z)(r,e=>{if("stdout"===e.type||"stderr"===e.type)t(e.data);else if("result"===e.type){var r;s={success:e.success,output:null!=(r=e.commandOutput)?r:""}}}),s}catch(e){return console.error("Error streaming git command:",e),null}}let o=async(e,t,r)=>{if(r){let a=await s({action:"installStream",savePath:e,installCommand:t},r);if(a)return{success:a.success,message:a.success?{type:"success",text:"Dependencies installed successfully. You can now build the server."}:{type:"error",text:"Error installing dependencies. You can still try to build the server."},output:a.output||"No output was returned from the installation process."}}try{let r=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"install",savePath:e,installCommand:t})}),a=await r.json();if(!r.ok)throw Error(a.error||"Failed to install dependencies");return{success:!0,message:{type:"success",text:"Dependencies installed successfully. You can now build the server."},output:a.commandOutput||"No output was returned from the installation process."}}catch(e){return console.error("Error installing dependencies:",e),{success:!1,message:{type:"error",text:"Error installing dependencies: ".concat(e.message||"Unknown error",". You can still try to build the server.")},output:e instanceof Response?await e.text():(null==e?void 0:e.message)||"Unknown error"}}},n=async(e,t,r)=>{if(r){let a=await s({action:"buildStream",savePath:e,buildCommand:t},r);if(a)return{success:a.success,message:a.success?{type:"success",text:"Server built successfully."}:{type:"error",text:"Error building server."},output:a.output||"No output was returned from the build process."}}try{let r=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"build",savePath:e,buildCommand:t})}),a=await r.json();if(!r.ok)throw Error(a.error||"Failed to build repository");return{success:!0,message:{type:"success",text:"Server built successfully."},output:a.commandOutput||"No output was returned from the build process."}}catch(e){return console.error("Error building server:",e),{success:!1,message:{type:"error",text:"Error building server: ".concat(e.message||"Unknown error",".")},output:e instanceof Response?await e.text():(null==e?void 0:e.message)||"Unknown error"}}}},95906:(e,t,r)=>{r.d(t,{A:()=>en});var a=r(95155),s=r(12115),o=r(87021),n=r(9352),l=r(36741),i=r(12857),c=r(48563),d=r(76530),u=r(14915),p=r(4484),h=r(80412),m=r(13548),f=r(20099),x=r(11414),b=r(26188),g=r(52277),y=r(59652),v=r(89296),j=r(97714),k=r(94929),w=r(81956),A=r(17897),S=r(70272),C=r(28548),O=r(67891),z=r(84318),T=r(4543),P=r(8415);let E=e=>{let{transport:t,size:r="small"}=e,s=(()=>{switch(t){case"stdio":return{label:"STDIO",icon:(0,a.jsx)(O.A,{fontSize:"small"}),color:"#1976d2",bgColor:"#e3f2fd"};case"websocket":return{label:"WebSocket",icon:(0,a.jsx)(z.A,{fontSize:"small"}),color:"#2e7d32",bgColor:"#e8f5e8"};case"sse":return{label:"SSE",icon:(0,a.jsx)(T.A,{fontSize:"small"}),color:"#f57c00",bgColor:"#fff3e0"};case"streamable":return{label:"HTTP Stream",icon:(0,a.jsx)(P.A,{fontSize:"small"}),color:"#00796b",bgColor:"#e0f2f1"};default:return{label:"UNKNOWN",icon:(0,a.jsx)(O.A,{fontSize:"small"}),color:"#757575",bgColor:"#f5f5f5"}}})();return(0,a.jsx)(C.A,{icon:s.icon,label:s.label,size:r,sx:{backgroundColor:s.bgColor,color:s.color,fontWeight:500,fontSize:"small"===r?"0.75rem":"0.875rem",height:"small"===r?24:32,"& .MuiChip-icon":{color:s.color}}})};var U=r(2778),F=r(52363),R=r(65036),W=r(75912),M=r(91871),I=r(94049),N=r(25635),D=r(22003),B=r(99944),H=r(22822),L=r(41602),J=r(23820),_=r(49501),q=r(17681),Y=r(16186),$=r(80411),Q=r(86631);let V=(0,o.h)("frontend/components/mcp/MCPServerManager/ServerUpdateDialog"),Z=e=>{let{open:t,onClose:r,serverName:o,rootPath:n,installCommand:i,buildCommand:d,enabled:u,updateInfo:p,onToggle:h,onUpdated:m}=e,[f,x]=(0,s.useState)(null),[b,g]=(0,s.useState)(!1),[y,v]=(0,s.useState)(!1),[w,A]=(0,s.useState)(!1),[S,O]=(0,s.useState)(null),[z,T]=(0,s.useState)({}),[P,E]=(0,s.useState)(""),Z=!!(i&&i.trim()),K=!!(d&&d.trim()),G=[{key:"stop",label:"Stop server",active:u},{key:"pull",label:"Pull latest changes",active:!0},{key:"install",label:"Install dependencies (".concat(i,")"),active:Z},{key:"build",label:"Build (".concat(d,")"),active:K},{key:"restart",label:"Restart server",active:u}];(0,s.useEffect)(()=>{t&&(g(!1),v(!1),A(!1),O(null),T({}),E(""))},[t,o]),(0,s.useEffect)(()=>{if(t&&p.remoteUrl&&p.localSha&&p.remoteSha){let e=!1;return(0,$.Qz)(p.remoteUrl,p.localSha,p.remoteSha).then(t=>{e||x(t)}),()=>{e=!0}}x(null)},[t,p.remoteUrl,p.localSha,p.remoteSha]);let X=(0,s.useCallback)((e,t)=>{T(r=>({...r,[e]:t}))},[]),ee=(0,s.useCallback)((e,t)=>{E(r=>r+(r?"\n":"")+"--- ".concat(e," ---\n")+(t||"").trim()+"\n")},[]),et=async()=>{v(!0),O(null),V.info("Starting update for server ".concat(o));let e=(e,t)=>{X(e,"error"),O(t),v(!1)};try{u&&(X("stop","running"),await Promise.resolve(h(!1)),X("stop","done")),X("pull","running");let t=await (0,$.Qv)(n);if(!t.success)return void e("pull",t.error||"Failed to pull updates");if(ee("Pull","Updated ".concat((0,$.Fu)(t.oldSha)," -> ").concat((0,$.Fu)(t.newSha))),X("pull","done"),Z){X("install","running");let t=await (0,Q.b)(n,i.trim());if(ee("Install",t.output),!t.success)return void e("install",t.message.text);X("install","done")}if(K){X("build","running");let t=await (0,Q.c)(n,d.trim());if(ee("Build",t.output),!t.success)return void e("build",t.message.text);X("build","done")}u&&(X("restart","running"),await Promise.resolve(h(!0)),X("restart","done")),V.info("Update completed for server ".concat(o)),A(!0),v(!1),null==m||m()}catch(e){V.error("Update failed for server ".concat(o),e),O(e.message||"Update failed"),v(!1)}},er=y||w||Object.keys(z).length>0,ea=p.hasLocalChanges&&!b;return(0,a.jsxs)(U.A,{open:t,onClose:y?void 0:r,maxWidth:"sm",fullWidth:!0,onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)(F.A,{component:"div",sx:{display:"flex",alignItems:"center",gap:1},children:[(0,a.jsx)(j.A,{color:"primary"}),"Update ",o]}),(0,a.jsxs)(R.A,{children:[(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:1,flexWrap:"wrap"},children:[(0,a.jsx)(C.A,{size:"small",label:(0,$.Fu)(p.localSha),sx:{fontFamily:"monospace"}}),(0,a.jsx)(N.default,{variant:"body2",color:"text.secondary",children:"→"}),(0,a.jsx)(C.A,{size:"small",color:"primary",label:(0,$.Fu)(p.remoteSha),sx:{fontFamily:"monospace"}}),p.branch&&"HEAD"!==p.branch&&(0,a.jsxs)(N.default,{variant:"body2",color:"text.secondary",children:["on ",(0,a.jsx)("code",{children:p.branch})]}),(null==f?void 0:f.behindBy)!=null&&(0,a.jsxs)(N.default,{variant:"body2",color:"text.secondary",children:["(",f.behindBy," commit",1===f.behindBy?"":"s"," behind)"]})]}),p.repoRoot&&p.repoRoot.replace(/\\/g,"/").replace(/\/+$/,"").toLowerCase()!==n.replace(/\\/g,"/").replace(/\/+$/,"").toLowerCase()&&(0,a.jsxs)(N.default,{variant:"body2",color:"text.secondary",sx:{mb:1},children:["This server lives inside a larger repository — the update pulls"," ",(0,a.jsx)("code",{children:p.repoRoot})," as a whole (other servers from the same repository are updated along with it)."]}),f&&f.commits.length>0&&!er&&(0,a.jsx)(I.default,{sx:{mb:2,p:1,borderRadius:1,border:"1px solid",borderColor:"divider",maxHeight:160,overflow:"auto"},children:f.commits.map(e=>(0,a.jsxs)(N.default,{variant:"body2",sx:{fontSize:"0.8rem"},noWrap:!0,title:e.message,children:[(0,a.jsx)("code",{children:e.sha})," ",e.message]},e.sha))}),p.hasLocalChanges&&!er&&(0,a.jsxs)(D.A,{severity:"warning",sx:{mb:2},children:[(0,a.jsxs)(N.default,{variant:"body2",sx:{mb:1},children:["This repository has local changes to tracked files. Updating will ",(0,a.jsx)("strong",{children:"discard"})," them. Untracked files (e.g. a ",(0,a.jsx)("code",{children:".env"})," you created) and all FLUJO settings for this server are kept."]}),(0,a.jsx)(I.default,{component:"ul",sx:{m:0,pl:3,maxHeight:100,overflow:"auto"},children:p.dirtyFiles.map(e=>(0,a.jsx)("li",{children:(0,a.jsx)(N.default,{variant:"body2",component:"span",sx:{fontFamily:"monospace",fontSize:"0.8rem"},children:e})},e))}),(0,a.jsx)(B.A,{sx:{mt:1},control:(0,a.jsx)(H.A,{size:"small",checked:b,onChange:e=>g(e.target.checked)}),label:(0,a.jsx)(N.default,{variant:"body2",children:"Discard my local changes and update"})})]}),(0,a.jsx)(L.A,{dense:!0,disablePadding:!0,children:G.filter(e=>e.active).map(e=>(0,a.jsxs)(J.Ay,{disableGutters:!0,sx:{py:.25},children:[(0,a.jsx)(_.A,{sx:{minWidth:32},children:(e=>{switch(e){case"running":return(0,a.jsx)(k.default,{size:"small",color:"primary"});case"done":return(0,a.jsx)(l.A,{color:"success",fontSize:"small"});case"error":return(0,a.jsx)(c.A,{color:"error",fontSize:"small"});default:return(0,a.jsx)(Y.A,{color:"disabled",fontSize:"small"})}})(z[e.key])}),(0,a.jsx)(q.A,{primary:e.label,primaryTypographyProps:{variant:"body2",noWrap:!0,title:e.label}})]},e.key))}),S&&(0,a.jsxs)(D.A,{severity:"error",sx:{mt:2,whiteSpace:"pre-wrap"},children:[S,u&&(0,a.jsx)(N.default,{variant:"body2",sx:{mt:1},children:"The server was left stopped. Adjust the install/build commands via Edit, then re-enable it."})]}),w&&(0,a.jsxs)(D.A,{severity:"success",sx:{mt:2},children:["Server updated successfully",u?" and restarted":"","."]}),P&&(0,a.jsx)(I.default,{sx:{mt:2,p:1,borderRadius:1,bgcolor:"background.paper",border:"1px solid",borderColor:"divider",fontFamily:"monospace",fontSize:"0.75rem",whiteSpace:"pre-wrap",overflow:"auto",maxHeight:200},children:P})]}),(0,a.jsxs)(W.A,{children:[(0,a.jsx)(M.A,{onClick:r,disabled:y,children:w?"Close":"Cancel"}),!w&&(0,a.jsx)(M.A,{variant:"contained",color:"primary",startIcon:(0,a.jsx)(j.A,{}),onClick:et,disabled:y||ea,children:y?"Updating…":S?"Retry Update":"Update"})]})]})};var K=r(80422),G=r(33567),X=r(29767),ee=r(84578),et=r(78470),er=r(41983),ea=r(9957),es=r(1702);let eo=(0,o.h)("frontend/components/mcp/MCPServerManager/ServerCard"),en=e=>{let{name:t,status:o,path:O,enabled:z,transport:T,onToggle:P=()=>{},onRetry:B=()=>{},onDelete:L=()=>{},onClick:J,onEdit:_=()=>{},onAuthenticate:q,pickerMode:Y=!1,error:Q,stderrOutput:V,authorizationUrl:en,selected:el=!1,onSelect:ei,selectionMode:ec=!1,hasOAuthTokens:ed=!1,exposeAsMcpServer:eu=!1,enableMcpApps:ep=!1,updateInfo:eh,installCommand:em,buildCommand:ef,onUpdated:ex,folder:eb,folders:eg=[],onSetFolder:ey,builtIn:ev=!1,serverConfig:ej}=e,[ek,ew]=(0,s.useState)(!1),[eA,eS]=(0,s.useState)(null),[eC,eO]=(0,s.useState)(!1),[ez,eT]=(0,s.useState)(!1),[eP,eE]=(0,s.useState)(""),[eU,eF]=(0,s.useState)("success"),[eR,eW]=(0,s.useState)(!1),[eM,eI]=(0,s.useState)(!1),[eN,eD]=(0,s.useState)(eu),[eB,eH]=(0,s.useState)(ep);(0,G.A)(),(0,s.useEffect)(()=>{eD(eu)},[eu]),(0,s.useEffect)(()=>{eH(ep)},[ep]);let eL="".concat(window.location.origin,"/mcp-proxy/").concat(encodeURIComponent(t)),eJ=async e=>{eD(e);let r=await A.S.updateServerConfig(t,{exposeAsMcpServer:e});"success"in r&&r.success?(eE(e?"Server is now exposed to external apps.":"Server is no longer exposed."),eF("success")):(eD(!e),eE("Failed to update exposure setting."),eF("error")),eT(!0)},e_=async e=>{eH(e);let r=await A.S.updateServerConfig(t,{enableMcpApps:e});"success"in r&&r.success?(eE(e?"This server may now render interactive apps in chat (sandboxed).":"Interactive apps disabled for this server."),eF("success")):(eH(!e),eE("Failed to update the MCP Apps setting."),eF("error")),eT(!0)},eq=()=>{navigator.clipboard.writeText(eL),eE("Endpoint URL copied to clipboard."),eF("success"),eT(!0)},eY=()=>{let e=window.location.origin;navigator.clipboard.writeText((0,S.CZ)(t,ej,e)),eE("Server JSON copied to clipboard."),eF("success"),eT(!0)},e$={connected:"success.main",disconnected:"text.secondary",error:"error.main",connecting:"info.main",initialization:"info.main",requires_authentication:"warning.main"}[o];(0,s.useEffect)(()=>{if(("connecting"===o||"initialization"===o)&&z&&!Y){eW(!0);let e=setTimeout(()=>{eo.debug("Polling status for server: ".concat(t)),B()},2e3);return()=>{clearTimeout(e),eW(!1)}}"connecting"!==o&&"initialization"!==o&&eW(!1)},[o,z,t,B]);let[eQ,eV]=(0,s.useState)(null);(0,s.useEffect)(()=>()=>{eQ&&clearTimeout(eQ)},[eQ]);let eZ=async e=>{e.stopPropagation(),eo.debug("Reset OAuth tokens button clicked for server: ".concat(t)),eI(!0);try{let e=await fetch("/api/oauth/reset",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({serverName:t})});if(!e.ok){let t=await e.json();throw Error(t.error||"Failed to reset OAuth tokens")}let r=await e.json();eo.info("OAuth tokens reset successfully for ".concat(t),r),eE("OAuth tokens reset successfully. Server will require re-authentication."),eF("success"),eT(!0),setTimeout(()=>{B()},500)}catch(e){eo.error("Failed to reset OAuth tokens for ".concat(t),e),eE("Failed to reset OAuth tokens: ".concat(e instanceof Error?e.message:"Unknown error")),eF("error"),eT(!0)}finally{eI(!1)}},{getThemeValue:eK,getThemeColor:eG,colors:eX}=(0,n.Ic)(),e0=()=>{eo.debug("Server restart initiated for: ".concat(t)),P(!1),setTimeout(()=>{P(!0),eo.info("Server ".concat(t," restarted"))},1e3)};return(0,a.jsxs)(X.A,{role:Y?"button":void 0,"aria-pressed":Y?el:void 0,sx:{cursor:"pointer",height:Y?"100%":void 0,transition:"box-shadow 0.3s ease, border-color 0.12s ease",border:e=>Y&&el?"2px solid ".concat(e.palette.primary.main):"2px solid transparent","&:hover":{boxShadow:3}},onClick:()=>{eo.debug("Server card clicked: ".concat(t)),J()},children:[(0,a.jsxs)(ee.A,{sx:{pb:1},children:[(0,a.jsxs)(I.default,{sx:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",mb:1},children:[(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center",flex:1},children:[ec&&ei&&(0,a.jsx)(H.A,{checked:el,onClick:e=>e.stopPropagation(),onChange:e=>ei(e.target.checked),size:"small",sx:{mr:1,p:.5}}),(0,a.jsx)(N.default,{variant:"h6",component:"h3",sx:{flex:1},children:t})]}),(0,a.jsxs)(I.default,{sx:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:.5},children:[(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(null==eh?void 0:eh.updateAvailable)&&(0,a.jsx)(et.A,{title:"Update available: ".concat((0,$.Fu)(eh.localSha)," → ").concat((0,$.Fu)(eh.remoteSha),". Click to update."),children:(0,a.jsx)(C.A,{icon:(0,a.jsx)(j.A,{}),label:"Update",color:"warning",size:"small",onClick:e=>{e.stopPropagation(),eo.debug("Update badge clicked for server: ".concat(t)),eO(!0)}})}),ev?(0,a.jsx)(et.A,{title:"FLUJO's built-in server — always available, cannot be edited or removed.",children:(0,a.jsx)(C.A,{label:"Built-in",color:"primary",size:"small"})}):(0,a.jsx)(E,{transport:T,size:"small"})]}),(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center"},children:["connected"===o&&(0,a.jsx)(l.A,{color:"success",sx:{mr:.5},fontSize:"small"}),"disconnected"===o&&(0,a.jsx)(i.A,{color:"action",sx:{mr:.5},fontSize:"small"}),"error"===o&&(0,a.jsx)(c.A,{color:"error",sx:{mr:.5},fontSize:"small"}),"requires_authentication"===o&&(0,a.jsx)(h.A,{color:"warning",sx:{mr:.5},fontSize:"small"}),("connecting"===o||"initialization"===o)&&(0,a.jsx)(k.default,{size:"small",color:"primary",sx:{mr:.5}}),(0,a.jsx)(N.default,{variant:"body2",color:e$,children:"requires_authentication"===o?"Requires Authentication":o})]})]})]}),(0,a.jsx)(N.default,{variant:"body2",color:"text.secondary",sx:{mb:1,fontSize:"0.875rem"},noWrap:!0,title:ev?void 0:O,children:ev?"FLUJO's own backend API — flow authoring, execution and server management as MCP tools.":O}),ev&&!Y&&(0,a.jsxs)(I.default,{sx:{mt:1,mb:1,p:1,borderRadius:1,border:"1px solid",borderColor:"divider"},onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center"},children:[(0,a.jsx)(x.A,{fontSize:"small",sx:{mr:.5,color:"primary.main"}}),(0,a.jsx)(et.A,{title:"External MCP clients (Claude Code, Claude Desktop, Cursor, …) can drive FLUJO through this local endpoint.",children:(0,a.jsx)(N.default,{variant:"body2",sx:{fontWeight:500},children:"Exposed to external apps"})})]}),(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center",mt:.5},children:[(0,a.jsx)(N.default,{variant:"caption",sx:{flex:1,fontFamily:"monospace",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:eL,children:eL}),(0,a.jsx)(et.A,{title:"Copy endpoint URL",children:(0,a.jsx)(er.A,{size:"small",onClick:eq,children:(0,a.jsx)(g.A,{fontSize:"small"})})}),(0,a.jsx)(et.A,{title:"Copy MCP server JSON",children:(0,a.jsx)(er.A,{size:"small",onClick:eY,children:(0,a.jsx)(y.A,{fontSize:"small"})})})]})]}),!ev&&!Y&&(0,a.jsxs)(I.default,{sx:{mt:1,mb:1,p:1,borderRadius:1,border:"1px solid",borderColor:"divider"},onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center"},children:[(0,a.jsx)(x.A,{fontSize:"small",sx:{mr:.5,color:eN?"primary.main":"text.disabled"}}),(0,a.jsx)(ea.A,{checked:eN,onChange:e=>eJ(e.target.checked),size:"small"}),(0,a.jsx)(et.A,{title:"Re-expose this server's tools to external MCP clients (Claude Desktop, Cursor, …) at a local URL.",children:(0,a.jsx)(N.default,{variant:"body2",sx:{fontWeight:500},children:"Expose to external apps"})})]}),eN&&(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center",mt:.5},children:[(0,a.jsx)(N.default,{variant:"caption",sx:{flex:1,fontFamily:"monospace",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:eL,children:eL}),(0,a.jsx)(et.A,{title:"Copy endpoint URL",children:(0,a.jsx)(er.A,{size:"small",onClick:eq,children:(0,a.jsx)(g.A,{fontSize:"small"})})}),(0,a.jsx)(et.A,{title:"Copy MCP server JSON",children:(0,a.jsx)(er.A,{size:"small",onClick:eY,children:(0,a.jsx)(y.A,{fontSize:"small"})})})]})]}),!ev&&!Y&&(0,a.jsx)(I.default,{sx:{mt:1,mb:1,p:1,borderRadius:1,border:"1px solid",borderColor:"divider"},onClick:e=>e.stopPropagation(),children:(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center"},children:[(0,a.jsx)(b.A,{fontSize:"small",sx:{mr:.5,color:eB?"primary.main":"text.disabled"}}),(0,a.jsx)(ea.A,{checked:eB,onChange:e=>e_(e.target.checked),size:"small"}),(0,a.jsx)(et.A,{title:"Allow this server's tools to render interactive apps (MCP Apps / ui:// resources) in chat. Rendered read-only in a strict sandbox. Only enable for servers you trust.",children:(0,a.jsx)(N.default,{variant:"body2",sx:{fontWeight:500},children:"Render interactive apps"})})]})}),"error"===o&&(0,a.jsxs)(I.default,{sx:{mt:1,mb:1},children:[(0,a.jsxs)(I.default,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:.5},children:[(0,a.jsx)(N.default,{variant:"body2",fontWeight:"medium",color:"error",children:"Error:"}),(0,a.jsx)(M.A,{size:"small",color:"primary",onClick:e=>{e.stopPropagation(),eo.debug("View full error clicked for server: ".concat(t)),ew(!0)},children:"View Full Error"})]}),(0,a.jsx)(I.default,{sx:{maxHeight:"80px",overflow:"auto",p:1,borderRadius:1,bgcolor:e=>eG("error.background"),color:e=>eG("error.text"),border:"1px solid",borderColor:e=>eG("error.border"),fontSize:"0.75rem",fontWeight:500,whiteSpace:"pre-wrap"},children:Q||"Unknown error"})]}),"requires_authentication"===o&&!Y&&(0,a.jsxs)(I.default,{sx:{mt:1,mb:1},children:[(0,a.jsx)(I.default,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:1},children:(0,a.jsx)(N.default,{variant:"body2",fontWeight:"medium",color:"warning.main",children:"Authentication Required"})}),(0,a.jsxs)(M.A,{variant:"contained",color:"warning",size:"small",startIcon:(0,a.jsx)(m.A,{}),onClick:async e=>{if(e.stopPropagation(),eo.debug("Authenticate button clicked for server: ".concat(t)),q)q();else try{let e=await fetch("/api/oauth/initiate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({serverName:t})});if(!e.ok){let t=await e.json();throw Error(t.error||"Failed to initiate OAuth")}let{authorizationUrl:a,alreadyAuthorized:s}=await e.json();if(s||!a){eo.info("Server ".concat(t," already authorized, no popup needed")),e0();return}let{openOAuthPopup:o}=await r.e(8198).then(r.bind(r,68198));await o({url:a,windowName:"oauth_".concat(t),onSuccess:e=>{eo.info("OAuth authentication successful for ".concat(t),e),eo.info("Automatically restarting server ".concat(t," after OAuth completion")),e0()},onError:e=>{eo.error("OAuth authentication failed for ".concat(t),e),eE("OAuth authentication failed"),eF("error"),eT(!0)}})}catch(e){eo.error("Failed to start OAuth authentication for ".concat(t),e),eE("Failed to start OAuth authentication"),eF("error"),eT(!0)}},sx:{width:"100%"},children:["Authenticate with ",t]})]})]}),!ev&&!Y&&(0,a.jsxs)(es.A,{sx:{justifyContent:"space-between",px:2,py:1},children:[(0,a.jsxs)(I.default,{sx:{display:"flex",alignItems:"center"},children:[(0,a.jsx)(ea.A,{checked:z,onClick:e=>e.stopPropagation(),onChange:e=>{eo.debug("Server ".concat(t," toggle changed to: ").concat(e.target.checked)),P(e.target.checked)},color:"primary",size:"small"}),(0,a.jsx)(N.default,{variant:"body2",sx:{ml:.5,fontWeight:500,color:z?"primary.main":"text.secondary"},children:z?"Enabled":"Disabled"}),z&&(0,a.jsx)(et.A,{title:"Restart server",children:(0,a.jsx)(er.A,{size:"small",onClick:e=>{e.stopPropagation(),eo.debug("Restart button clicked for server: ".concat(t)),e0()},sx:{ml:1},children:(0,a.jsx)(d.A,{fontSize:"small"})})})]}),(0,a.jsxs)(I.default,{children:[(0,a.jsx)(et.A,{title:"Retry connection",children:(0,a.jsx)(er.A,{color:"primary",onClick:e=>{e.stopPropagation(),eo.debug("Retry button clicked for server: ".concat(t)),eQ&&clearTimeout(eQ),eW(!0),B();let r=setTimeout(()=>{"connecting"!==o&&"initialization"!==o&&eW(!1),eV(null)},1e4);eV(r)},disabled:eR,size:"small",children:eR?(0,a.jsx)(k.default,{size:"small",color:"primary"}):(0,a.jsx)(d.A,{})})}),"streamable"===T&&ed&&(0,a.jsx)(et.A,{title:"Reset OAuth tokens",children:(0,a.jsx)(er.A,{color:"warning",onClick:eZ,disabled:eM,size:"small",children:eM?(0,a.jsx)(k.default,{size:"small",color:"primary"}):(0,a.jsx)(f.A,{})})}),ey&&(0,a.jsx)(et.A,{title:eb?"Folder: ".concat(eb):"Move to folder",children:(0,a.jsx)(er.A,{color:eb?"primary":"default",onClick:e=>{e.stopPropagation(),eS(e.currentTarget)},size:"small",children:(0,a.jsx)(v.A,{})})}),(0,a.jsx)(et.A,{title:"Edit server",children:(0,a.jsx)(er.A,{color:"primary",onClick:e=>{e.stopPropagation(),_()},size:"small",children:(0,a.jsx)(u.A,{})})}),(0,a.jsx)(et.A,{title:"Delete server",children:(0,a.jsx)(er.A,{color:"error",onClick:e=>{e.stopPropagation(),L()},size:"small",children:(0,a.jsx)(p.A,{})})})]})]}),ey&&(0,a.jsx)(w.A,{anchorEl:eA,open:!!eA,currentFolder:eb,folders:eg,onClose:()=>eS(null),onAssign:e=>ey(e)}),(0,a.jsxs)(U.A,{open:ek,onClose:()=>{eo.debug("Error modal closed for server: ".concat(t)),ew(!1)},maxWidth:"md",fullWidth:!0,onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)(F.A,{component:"div",children:["Error Details for ",t]}),(0,a.jsxs)(R.A,{children:[(0,a.jsx)(I.default,{sx:{p:2,borderRadius:1,bgcolor:e=>eG("error.background"),color:e=>eG("error.text"),border:"1px solid",borderColor:e=>eG("error.border"),fontFamily:"monospace",fontSize:"0.875rem",fontWeight:500,whiteSpace:"pre-wrap",overflow:"auto",maxHeight:"300px",mb:2},children:Q||"Unknown error"}),V&&(0,a.jsxs)(I.default,{sx:{mt:2},children:[(0,a.jsx)(N.default,{variant:"h6",gutterBottom:!0,children:"Stderr Output:"}),(0,a.jsx)(I.default,{sx:{p:2,borderRadius:1,bgcolor:"background.paper",border:"1px solid",borderColor:"divider",fontFamily:"monospace",fontSize:"0.875rem",whiteSpace:"pre-wrap",overflow:"auto",maxHeight:"300px"},children:V})]})]}),(0,a.jsxs)(W.A,{children:[(0,a.jsx)(M.A,{onClick:()=>ew(!1),children:"Close"}),(0,a.jsx)(M.A,{onClick:()=>{let e=[Q||"Unknown error",V?"\n\nStderr Output:\n".concat(V):""].join("");navigator.clipboard.writeText(e),eo.debug("Error copied to clipboard for server: ".concat(t)),eE("Error message copied to clipboard"),eF("success"),eT(!0)},color:"primary",children:"Copy to Clipboard"})]})]}),eh&&(0,a.jsx)(Z,{open:eC,onClose:()=>eO(!1),serverName:t,rootPath:O,installCommand:em,buildCommand:ef,enabled:z,updateInfo:eh,onToggle:P,onUpdated:ex}),(0,a.jsx)(K.A,{open:ez,autoHideDuration:3e3,onClose:()=>eT(!1),anchorOrigin:{vertical:"bottom",horizontal:"center"},children:(0,a.jsx)(D.A,{onClose:()=>eT(!1),severity:eU,sx:{width:"100%"},children:eP||"Error message copied to clipboard"})})]})}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7583],{2226:(e,t,r)=>{r.d(t,{Dp:()=>c,Dg:()=>u}),r(12115);var o=r(33065),a=r(95695),n=r(50361),s=r(46892),i=r(95155);let d=function(e){return(0,i.jsx)(a.A,{...e,defaultTheme:n.A,themeId:s.A})};function c(e){return function(t){return(0,i.jsx)(d,{styles:"function"==typeof e?r=>e({theme:r,...t}):e})}}function u(){return o.A}},9352:(e,t,r)=>{r.d(t,{Ic:()=>s,kY:()=>n});var o=r(26796);let a=(0,r(87021).h)("frontend/utils/theme"),n={light:{background:"#FFFFFF",foreground:"#2C3E50",paperBackground:"#F5F6FA",textSecondary:"#7F8C8D",border:"#e5e7eb",heading:"#111",text:"#333",secondaryText:"#666",error:{background:"#fef2f2",border:"#fecaca",text:"#dc2626"}},dark:{background:"#1a1a1a",foreground:"#f0f0f0",paperBackground:"#2a2a2a",textSecondary:"#aaaaaa",border:"#3a3a3a",heading:"#f8f8f8",text:"#f0f0f0",secondaryText:"#aaa",error:{background:"#3a2222",border:"#5a3333",text:"#f87171"}}};function s(){let{isDarkMode:e}=(0,o.useTheme)();return a.debug("useThemeUtils called with isDarkMode: ".concat(e)),{getThemeValue:(t,r)=>e?r:t,getThemeColor:t=>{let r=t.split("."),o=n[e?"dark":"light"];for(let e of r)if(!o||"object"!=typeof o||!(e in o))return a.warn("Theme color path not found: ".concat(t)),"";else o=o[e];return o},colors:e?n.dark:n.light,isDarkMode:e}}},26796:(e,t,r)=>{r.r(t),r.d(t,{ThemeProvider:()=>h,useTheme:()=>m});var o=r(95155),a=r(12115),n=r(87021),s=r(7160),i=r(29197),d=r(9352),c=r(84563),u=r(29692);let l=(0,n.h)("frontend/contexts/ThemeContext"),f=(0,a.createContext)(void 0),h=e=>{let{children:t}=e,[r,n]=(0,a.useState)(!1),[h,m]=(0,a.useState)(!1);(0,a.useEffect)(()=>{(async()=>{l.debug("Loading theme preference from storage");let e=await (0,u.YM)(u.Zg.THEME,"light");l.info("Theme loaded from storage: ".concat(e));let t="dark"===e;m(t),t?document.documentElement.classList.add("dark-theme"):document.documentElement.classList.remove("dark-theme"),n(!0)})()},[]);let g=(0,a.useMemo)(()=>(function(e){let t="dark"===e?d.kY.dark:d.kY.light;return(0,i.A)({palette:{mode:e,primary:{main:"#007bff"},secondary:{main:"#6c757d"},error:{main:"dark"===e?"#f87171":"#dc2626",light:"dark"===e?"#5a3333":"#fecaca",dark:"dark"===e?"#3a2222":"#b91c1c"},warning:{main:"#f59e0b"},info:{main:"#3b82f6"},success:{main:"dark"===e?"#4ade80":"#16a34a"},background:{default:t.background,paper:t.paperBackground},text:{primary:t.foreground,secondary:t.textSecondary}},typography:{fontFamily:"var(--font-geist-sans), Arial, sans-serif",h1:{fontWeight:700},h2:{fontWeight:700},h3:{fontWeight:600},h4:{fontWeight:600},h5:{fontWeight:600},h6:{fontWeight:600}},components:{MuiButton:{styleOverrides:{root:{textTransform:"none",borderRadius:"0.375rem"}}},MuiPaper:{styleOverrides:{root:{borderRadius:"0.5rem"}}},MuiTextField:{styleOverrides:{root:{"& .MuiOutlinedInput-root":{borderRadius:"0.375rem"}}}},MuiCard:{styleOverrides:{root:{borderRadius:"0.5rem",boxShadow:"dark"===e?"0 4px 6px -1px rgba(0, 0, 0, 0.2), 0 2px 4px -1px rgba(0, 0, 0, 0.1)":"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)"}}}}})})(h?"dark":"light"),[h]);return l.debug("Rendering ThemeProvider with isDarkMode: ".concat(h)),(0,o.jsx)(f.Provider,{value:{toggleTheme:()=>{m(e=>{let t=!e,r=t?"dark":"light";return l.info("Toggling theme to: ".concat(r)),t?document.documentElement.classList.add("dark-theme"):document.documentElement.classList.remove("dark-theme"),(0,u.VH)(u.Zg.THEME,r),t})},isDarkMode:h},children:(0,o.jsxs)(s.A,{theme:g,children:[(0,o.jsx)(c.Ay,{}),t]})})},m=()=>{let e=(0,a.useContext)(f);if(!e)throw l.error("useTheme hook used outside of ThemeProvider"),Error("useTheme must be used within a ThemeProvider");return l.debug("useTheme hook accessed"),e}},27156:(e,t,r)=>{r.d(t,{Z:()=>o});var o=function(e){return e.MODELS="models",e.FLOWS="flows",e.CHAT_HISTORY="history",e.THEME="theme",e.ENCRYPTION_KEY="encryption_key",e.MCP_SERVERS="mcp_servers",e.GLOBAL_ENV_VARS="global_env_vars",e.CURRENT_CONVERSATION_ID="current_conversation_id",e.SELECTED_FLOW_ID="selected_flow_id",e.SPEECH_SETTINGS="speech_settings",e.SPOTLIGHT_SERVERS="spotlight_servers",e.PLANNED_EXECUTIONS="planned_executions",e.MCP_AUTO_INSTALL_SETTINGS="mcp_auto_install_settings",e.MCP_QUALITY_SETTINGS="mcp_quality_settings",e.RUN_RESOURCE_SETTINGS="run_resource_settings",e}({})},29692:(e,t,r)=>{r.d(t,{Zg:()=>o.Z,YM:()=>d,VH:()=>i,Mj:()=>s});var o=r(27156),a=r(12115);let n=(0,r(87021).h)("utils/storage/frontend.ts");function s(e,t){n.verbose("useLocalStorage: Entering method");let[r,o]=(0,a.useState)(t),[s,i]=(0,a.useState)(!0),d=(0,a.useRef)(r);return(0,a.useEffect)(()=>{d.current=r},[r]),(0,a.useEffect)(()=>{(async()=>{n.verbose("loadValue: Entering method");try{let r=await fetch("/api/storage?key=".concat(encodeURIComponent(e),"&defaultValue=").concat(encodeURIComponent(JSON.stringify(t)))),a=await r.json();r.ok&&o(a.value)}catch(t){n.warn('Error reading storage key "'.concat(e,'":'),t)}finally{i(!1)}})()},[e]),[r,(0,a.useCallback)(async t=>{n.verbose("setValue: Entering method");try{let r=t instanceof Function?t(d.current):t;if(o(r),!(await fetch("/api/storage",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:e,value:r})})).ok)throw Error("Failed to save value")}catch(t){n.warn('Error setting storage key "'.concat(e,'":'),t)}},[e]),s]}let i=async(e,t)=>{n.verbose("saveItem: Entering method");try{if(!(await fetch("/api/storage",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:e,value:t})})).ok)throw Error("Failed to save item")}catch(e){throw n.error("Error saving to storage:",e),e}},d=async(e,t)=>{n.verbose("loadItem: Entering method");try{let r=await fetch("/api/storage?key=".concat(encodeURIComponent(e),"&defaultValue=").concat(encodeURIComponent(JSON.stringify(t))));if(!r.ok)throw Error("Failed to load item");return(await r.json()).value}catch(e){return n.error("Error loading from storage:",e),t}}},44102:(e,t,r)=>{r.d(t,{A:()=>n}),r(12115);var o=r(10225),a=r(95155);function n(e){let{styles:t,defaultTheme:r={}}=e,n="function"==typeof t?e=>t(null==e||0===Object.keys(e).length?r:e):t;return(0,a.jsx)(o.mL,{styles:n})}},46320:(e,t,r)=>{r.d(t,{A:()=>i,I:()=>s});var o=r(12115),a=r(95155);let n=o.createContext(),s=()=>{let e=o.useContext(n);return null!=e&&e},i=function(e){let{value:t,...r}=e;return(0,a.jsx)(n.Provider,{value:null==t||t,...r})}},89255:(e,t,r)=>{r.d(t,{A:()=>a});var o=r(12115);let a="undefined"!=typeof window?o.useLayoutEffect:o.useEffect},95695:(e,t,r)=>{r.d(t,{A:()=>d}),r(12115);var o=r(54211),a=r(44102),n=r(89505),s=r(95155);function i(e){let t=(0,o.tT)(e);return e!==t&&t.styles?(t.styles.match(/^@layer\s+[^{]*$/)||(t.styles="@layer global{".concat(t.styles,"}")),t):e}let d=function(e){let{styles:t,themeId:r,defaultTheme:o={}}=e,d=(0,n.A)(o),c=r&&d[r]||d,u="function"==typeof t?t(c):t;return c.modularCssLayers&&(u=Array.isArray(u)?u.map(e=>"function"==typeof e?i(e(c)):i(e)):i(u)),(0,s.jsx)(a.A,{styles:u})}},99347:(e,t,r)=>{r.d(t,{A:()=>i});var o,a=r(12115);let n=0,s={...o||(o=r.t(a,2))}.useId;function i(e){if(void 0!==s){let t=s();return null!=e?e:t}let[t,r]=a.useState(e),o=e||t;return a.useEffect(()=>{null==t&&(n+=1,r("mui-".concat(n)))},[t]),o}}}]);
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7583],{2226:(e,t,r)=>{r.d(t,{Dp:()=>c,Dg:()=>u}),r(12115);var o=r(33065),a=r(95695),n=r(50361),s=r(46892),i=r(95155);let d=function(e){return(0,i.jsx)(a.A,{...e,defaultTheme:n.A,themeId:s.A})};function c(e){return function(t){return(0,i.jsx)(d,{styles:"function"==typeof e?r=>e({theme:r,...t}):e})}}function u(){return o.A}},9352:(e,t,r)=>{r.d(t,{Ic:()=>s,kY:()=>n});var o=r(26796);let a=(0,r(87021).h)("frontend/utils/theme"),n={light:{background:"#FFFFFF",foreground:"#2C3E50",paperBackground:"#F5F6FA",textSecondary:"#7F8C8D",border:"#e5e7eb",heading:"#111",text:"#333",secondaryText:"#666",error:{background:"#fef2f2",border:"#fecaca",text:"#dc2626"}},dark:{background:"#1a1a1a",foreground:"#f0f0f0",paperBackground:"#2a2a2a",textSecondary:"#aaaaaa",border:"#3a3a3a",heading:"#f8f8f8",text:"#f0f0f0",secondaryText:"#aaa",error:{background:"#3a2222",border:"#5a3333",text:"#f87171"}}};function s(){let{isDarkMode:e}=(0,o.useTheme)();return a.debug("useThemeUtils called with isDarkMode: ".concat(e)),{getThemeValue:(t,r)=>e?r:t,getThemeColor:t=>{let r=t.split("."),o=n[e?"dark":"light"];for(let e of r)if(!o||"object"!=typeof o||!(e in o))return a.warn("Theme color path not found: ".concat(t)),"";else o=o[e];return o},colors:e?n.dark:n.light,isDarkMode:e}}},26796:(e,t,r)=>{r.r(t),r.d(t,{ThemeProvider:()=>h,useTheme:()=>g});var o=r(95155),a=r(12115),n=r(87021),s=r(7160),i=r(29197),d=r(9352),c=r(84563),u=r(29692);let l=(0,n.h)("frontend/contexts/ThemeContext"),f=(0,a.createContext)(void 0),h=e=>{let{children:t}=e,[r,n]=(0,a.useState)(!1),[h,g]=(0,a.useState)(!1);(0,a.useEffect)(()=>{(async()=>{l.debug("Loading theme preference from storage");let e=await (0,u.YM)(u.Zg.THEME,"light");l.info("Theme loaded from storage: ".concat(e));let t="dark"===e;g(t),t?document.documentElement.classList.add("dark-theme"):document.documentElement.classList.remove("dark-theme"),n(!0)})()},[]);let m=(0,a.useMemo)(()=>(function(e){let t="dark"===e?d.kY.dark:d.kY.light;return(0,i.A)({palette:{mode:e,primary:{main:"#007bff"},secondary:{main:"#6c757d"},error:{main:"dark"===e?"#f87171":"#dc2626",light:"dark"===e?"#5a3333":"#fecaca",dark:"dark"===e?"#3a2222":"#b91c1c"},warning:{main:"#f59e0b"},info:{main:"#3b82f6"},success:{main:"dark"===e?"#4ade80":"#16a34a"},background:{default:t.background,paper:t.paperBackground},text:{primary:t.foreground,secondary:t.textSecondary}},typography:{fontFamily:"var(--font-geist-sans), Arial, sans-serif",h1:{fontWeight:700},h2:{fontWeight:700},h3:{fontWeight:600},h4:{fontWeight:600},h5:{fontWeight:600},h6:{fontWeight:600}},components:{MuiButton:{styleOverrides:{root:{textTransform:"none",borderRadius:"0.375rem"}}},MuiPaper:{styleOverrides:{root:{borderRadius:"0.5rem"}}},MuiTextField:{styleOverrides:{root:{"& .MuiOutlinedInput-root":{borderRadius:"0.375rem"}}}},MuiCard:{styleOverrides:{root:{borderRadius:"0.5rem",boxShadow:"dark"===e?"0 4px 6px -1px rgba(0, 0, 0, 0.2), 0 2px 4px -1px rgba(0, 0, 0, 0.1)":"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)"}}}}})})(h?"dark":"light"),[h]);return l.debug("Rendering ThemeProvider with isDarkMode: ".concat(h)),(0,o.jsx)(f.Provider,{value:{toggleTheme:()=>{g(e=>{let t=!e,r=t?"dark":"light";return l.info("Toggling theme to: ".concat(r)),t?document.documentElement.classList.add("dark-theme"):document.documentElement.classList.remove("dark-theme"),(0,u.VH)(u.Zg.THEME,r),t})},isDarkMode:h},children:(0,o.jsxs)(s.A,{theme:m,children:[(0,o.jsx)(c.Ay,{}),t]})})},g=()=>{let e=(0,a.useContext)(f);if(!e)throw l.error("useTheme hook used outside of ThemeProvider"),Error("useTheme must be used within a ThemeProvider");return l.debug("useTheme hook accessed"),e}},27156:(e,t,r)=>{r.d(t,{Z:()=>o});var o=function(e){return e.MODELS="models",e.FLOWS="flows",e.CHAT_HISTORY="history",e.THEME="theme",e.ENCRYPTION_KEY="encryption_key",e.MCP_SERVERS="mcp_servers",e.GLOBAL_ENV_VARS="global_env_vars",e.CURRENT_CONVERSATION_ID="current_conversation_id",e.SELECTED_FLOW_ID="selected_flow_id",e.SPEECH_SETTINGS="speech_settings",e.SPOTLIGHT_SERVERS="spotlight_servers",e.PLANNED_EXECUTIONS="planned_executions",e.MCP_AUTO_INSTALL_SETTINGS="mcp_auto_install_settings",e.MCP_QUALITY_SETTINGS="mcp_quality_settings",e.RUN_RESOURCE_SETTINGS="run_resource_settings",e.KV_STORE_SETTINGS="kv_store_settings",e.PENDING_APPROVALS="pending_approvals",e}({})},29692:(e,t,r)=>{r.d(t,{Zg:()=>o.Z,YM:()=>d,VH:()=>i,Mj:()=>s});var o=r(27156),a=r(12115);let n=(0,r(87021).h)("utils/storage/frontend.ts");function s(e,t){n.verbose("useLocalStorage: Entering method");let[r,o]=(0,a.useState)(t),[s,i]=(0,a.useState)(!0),d=(0,a.useRef)(r);return(0,a.useEffect)(()=>{d.current=r},[r]),(0,a.useEffect)(()=>{(async()=>{n.verbose("loadValue: Entering method");try{let r=await fetch("/api/storage?key=".concat(encodeURIComponent(e),"&defaultValue=").concat(encodeURIComponent(JSON.stringify(t)))),a=await r.json();r.ok&&o(a.value)}catch(t){n.warn('Error reading storage key "'.concat(e,'":'),t)}finally{i(!1)}})()},[e]),[r,(0,a.useCallback)(async t=>{n.verbose("setValue: Entering method");try{let r=t instanceof Function?t(d.current):t;if(o(r),!(await fetch("/api/storage",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:e,value:r})})).ok)throw Error("Failed to save value")}catch(t){n.warn('Error setting storage key "'.concat(e,'":'),t)}},[e]),s]}let i=async(e,t)=>{n.verbose("saveItem: Entering method");try{if(!(await fetch("/api/storage",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:e,value:t})})).ok)throw Error("Failed to save item")}catch(e){throw n.error("Error saving to storage:",e),e}},d=async(e,t)=>{n.verbose("loadItem: Entering method");try{let r=await fetch("/api/storage?key=".concat(encodeURIComponent(e),"&defaultValue=").concat(encodeURIComponent(JSON.stringify(t))));if(!r.ok)throw Error("Failed to load item");return(await r.json()).value}catch(e){return n.error("Error loading from storage:",e),t}}},44102:(e,t,r)=>{r.d(t,{A:()=>n}),r(12115);var o=r(10225),a=r(95155);function n(e){let{styles:t,defaultTheme:r={}}=e,n="function"==typeof t?e=>t(null==e||0===Object.keys(e).length?r:e):t;return(0,a.jsx)(o.mL,{styles:n})}},46320:(e,t,r)=>{r.d(t,{A:()=>i,I:()=>s});var o=r(12115),a=r(95155);let n=o.createContext(),s=()=>{let e=o.useContext(n);return null!=e&&e},i=function(e){let{value:t,...r}=e;return(0,a.jsx)(n.Provider,{value:null==t||t,...r})}},89255:(e,t,r)=>{r.d(t,{A:()=>a});var o=r(12115);let a="undefined"!=typeof window?o.useLayoutEffect:o.useEffect},95695:(e,t,r)=>{r.d(t,{A:()=>d}),r(12115);var o=r(54211),a=r(44102),n=r(89505),s=r(95155);function i(e){let t=(0,o.tT)(e);return e!==t&&t.styles?(t.styles.match(/^@layer\s+[^{]*$/)||(t.styles="@layer global{".concat(t.styles,"}")),t):e}let d=function(e){let{styles:t,themeId:r,defaultTheme:o={}}=e,d=(0,n.A)(o),c=r&&d[r]||d,u="function"==typeof t?t(c):t;return c.modularCssLayers&&(u=Array.isArray(u)?u.map(e=>"function"==typeof e?i(e(c)):i(e)):i(u)),(0,s.jsx)(a.A,{styles:u})}},99347:(e,t,r)=>{r.d(t,{A:()=>i});var o,a=r(12115);let n=0,s={...o||(o=r.t(a,2))}.useId;function i(e){if(void 0!==s){let t=s();return null!=e?e:t}let[t,r]=a.useState(e),o=e||t;return a.useEffect(()=>{null==t&&(n+=1,r("mui-".concat(n)))},[t]),o}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8083],{2411:(e,t,o)=>{o.d(t,{A:()=>P});var r=o(12115),s=o(2821),n=o(57001),l=o(2300),i=o(81852),a=o(52005),d=o(48116),p=o(66964),u=o(16625),c=o(5356),v=o(85795),m=o(95195);function A(e){return(0,m.Ay)("MuiMobileStepper",e)}(0,v.A)("MuiMobileStepper",["root","positionBottom","positionTop","positionStatic","dots","dot","dotActive","progress"]);var f=o(77765),y=o(95155);let h=(0,d.Ay)(l.A,{name:"MuiMobileStepper",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:o}=e;return[t.root,t["position".concat((0,i.A)(o.position))]]}})((0,p.A)(e=>{let{theme:t}=e;return{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",background:(t.vars||t).palette.background.default,padding:8,variants:[{props:e=>{let{position:t}=e;return"top"===t||"bottom"===t},style:{position:"fixed",left:0,right:0,zIndex:(t.vars||t).zIndex.mobileStepper}},{props:{position:"top"},style:{top:0}},{props:{position:"bottom"},style:{bottom:0}}]}})),g=(0,d.Ay)("div",{name:"MuiMobileStepper",slot:"Dots",overridesResolver:(e,t)=>t.dots})({variants:[{props:{variant:"dots"},style:{display:"flex",flexDirection:"row"}}]}),b=(0,d.Ay)("div",{name:"MuiMobileStepper",slot:"Dot",shouldForwardProp:e=>(0,c.A)(e)&&"dotActive"!==e,overridesResolver:(e,t)=>{let{dotActive:o}=e;return[t.dot,o&&t.dotActive]}})((0,p.A)(e=>{let{theme:t}=e;return{variants:[{props:{variant:"dots"},style:{transition:t.transitions.create("background-color",{duration:t.transitions.duration.shortest}),backgroundColor:(t.vars||t).palette.action.disabled,borderRadius:"50%",width:8,height:8,margin:"0 2px"}},{props:{variant:"dots",dotActive:!0},style:{backgroundColor:(t.vars||t).palette.primary.main}}]}})),x=(0,d.Ay)(a.A,{name:"MuiMobileStepper",slot:"Progress",overridesResolver:(e,t)=>t.progress})({variants:[{props:{variant:"progress"},style:{width:"50%"}}]}),P=r.forwardRef(function(e,t){let o,l=(0,u.b)({props:e,name:"MuiMobileStepper"}),{activeStep:a=0,backButton:d,className:p,LinearProgressProps:c,nextButton:v,position:m="bottom",steps:P,variant:M="dots",slots:N={},slotProps:w={},...S}=l,k={...l,activeStep:a,position:m,variant:M};"progress"===M&&(o=1===P?100:Math.ceil(a/(P-1)*100));let j=(e=>{let{classes:t,position:o}=e,r={root:["root","position".concat((0,i.A)(o))],dots:["dots"],dot:["dot"],dotActive:["dotActive"],progress:["progress"]};return(0,n.A)(r,A,t)})(k),R={slots:N,slotProps:{progress:c,...w}},[C,F]=(0,f.A)("root",{ref:t,elementType:h,shouldForwardComponentProp:!0,className:(0,s.A)(j.root,p),externalForwardedProps:{...R,...S},ownerState:k,additionalProps:{square:!0,elevation:0}}),[T,D]=(0,f.A)("dots",{className:j.dots,elementType:g,externalForwardedProps:R,ownerState:k}),[E,I]=(0,f.A)("dot",{elementType:b,externalForwardedProps:R,ownerState:k}),[O,_]=(0,f.A)("progress",{className:j.progress,elementType:x,shouldForwardComponentProp:!0,externalForwardedProps:R,ownerState:k,additionalProps:{value:o,variant:"determinate"}});return(0,y.jsxs)(C,{...F,children:[d,"text"===M&&(0,y.jsxs)(r.Fragment,{children:[a+1," / ",P]}),"dots"===M&&(0,y.jsx)(T,{...D,children:[...Array(P)].map((e,t)=>(0,y.jsx)(E,{...I,className:(0,s.A)(j.dot,I.className,t===a&&j.dotActive),dotActive:t===a},t))}),"progress"===M&&(0,y.jsx)(O,{..._}),v]})})},11065:(e,t,o)=>{o.d(t,{A:()=>r});let r=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(void 0===e)return{};let o={};return Object.keys(e).filter(o=>o.match(/^on[A-Z]/)&&"function"==typeof e[o]&&!t.includes(o)).forEach(t=>{o[t]=e[t]}),o}},20063:(e,t,o)=>{var r=o(47260);o.o(r,"usePathname")&&o.d(t,{usePathname:function(){return r.usePathname}}),o.o(r,"useRouter")&&o.d(t,{useRouter:function(){return r.useRouter}}),o.o(r,"useSearchParams")&&o.d(t,{useSearchParams:function(){return r.useSearchParams}})},25217:(e,t,o)=>{o.d(t,{A:()=>l});var r=o(2821),s=o(11065);let n=function(e){if(void 0===e)return{};let t={};return Object.keys(e).filter(t=>!(t.match(/^on[A-Z]/)&&"function"==typeof e[t])).forEach(o=>{t[o]=e[o]}),t},l=function(e){let{getSlotProps:t,additionalProps:o,externalSlotProps:l,externalForwardedProps:i,className:a}=e;if(!t){let e=(0,r.A)(null==o?void 0:o.className,a,null==i?void 0:i.className,null==l?void 0:l.className),t={...null==o?void 0:o.style,...null==i?void 0:i.style,...null==l?void 0:l.style},s={...o,...i,...l};return e.length>0&&(s.className=e),Object.keys(t).length>0&&(s.style=t),{props:s,internalRef:void 0}}let d=(0,s.A)({...i,...l}),p=n(l),u=n(i),c=t(d),v=(0,r.A)(null==c?void 0:c.className,null==o?void 0:o.className,a,null==i?void 0:i.className,null==l?void 0:l.className),m={...null==c?void 0:c.style,...null==o?void 0:o.style,...null==i?void 0:i.style,...null==l?void 0:l.style},A={...c,...o,...u,...p};return v.length>0&&(A.className=v),Object.keys(m).length>0&&(A.style=m),{props:A,internalRef:c.ref}}},32979:(e,t,o)=>{o.d(t,{A:()=>r});let r=function(e,t,o){return"function"==typeof e?e(t,o):e}},46320:(e,t,o)=>{o.d(t,{A:()=>i,I:()=>l});var r=o(12115),s=o(95155);let n=r.createContext(),l=()=>{let e=r.useContext(n);return null!=e&&e},i=function(e){let{value:t,...o}=e;return(0,s.jsx)(n.Provider,{value:null==t||t,...o})}},49808:(e,t,o)=>{o.d(t,{A:()=>r});let r=function(e,t,o){return void 0===e||"string"==typeof e?t:{...t,ownerState:{...t.ownerState,...o}}}},77073:(e,t,o)=>{o.d(t,{A:()=>n});var r=o(36697),s=o(95155);let n=(0,r.A)((0,s.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close")},77765:(e,t,o)=>{o.d(t,{A:()=>i});var r=o(30365),s=o(49808),n=o(32979),l=o(25217);function i(e,t){let{className:o,elementType:i,ownerState:a,externalForwardedProps:d,internalForwardedProps:p,shouldForwardComponentProp:u=!1,...c}=t,{component:v,slots:m={[e]:void 0},slotProps:A={[e]:void 0},...f}=d,y=m[e]||i,h=(0,n.A)(A[e],a),{props:{component:g,...b},internalRef:x}=(0,l.A)({className:o,...c,externalForwardedProps:"root"===e?f:void 0,externalSlotProps:h}),P=(0,r.A)(x,null==h?void 0:h.ref,t.ref),M="root"===e?g||v:g,N=(0,s.A)(y,{..."root"===e&&!v&&!m[e]&&p,..."root"!==e&&!m[e]&&p,...b,...M&&!u&&{as:M},...M&&u&&{component:M},ref:P},a);return[y,N]}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[812],{17897:(e,r,t)=>{t.d(r,{S:()=>n});var o=t(56290);let a=(0,t(87021).h)("frontend/services/mcp/index");class s{async loadServerConfigs(){try{let e=await fetch("/api/mcp/servers"),r=await e.json();if(!e.ok||r&&r.error){let e=r&&r.error||"Failed to load server configs";return a.warn("Failed to load server configs:",e),{error:e}}return r}catch(e){return a.warn("Failed to load server configs:",e),{error:"Failed to load server configs"}}}async listServerTools(e){try{let r=this.toolsCache.get(e),t=Date.now();if(r&&t-r.timestamp<this.CACHE_TTL)return a.debug("Using cached tools for server ".concat(e)),{tools:r.tools};let o=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e),"/tools")),s=await o.json();if(s.error)return a.warn("Error listing tools for server ".concat(e,":"),s.error),{tools:[],error:s.error};let n=Array.isArray(s.tools)?s.tools:[];return this.toolsCache.set(e,{tools:n,timestamp:t}),{tools:n}}catch(r){return a.warn("Failed to list tools for server ".concat(e,":"),r),{tools:[],error:"Failed to list tools: ".concat(r instanceof Error?r.message:"Unknown error")}}}clearToolsCache(e){e?(this.toolsCache.delete(e),a.debug("Cleared tools cache for server ".concat(e))):(this.toolsCache.clear(),a.debug("Cleared all tools cache"))}async listServerResources(e){try{let r=this.resourcesCache.get(e),t=Date.now();if(r&&t-r.timestamp<this.CACHE_TTL)return a.debug("Using cached resources for server ".concat(e)),r.data;let o=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e),"/resources")),s=await o.json(),n={resources:Array.isArray(s.resources)?s.resources:[],resourceTemplates:Array.isArray(s.resourceTemplates)?s.resourceTemplates:[],error:s.error};return n.error||this.resourcesCache.set(e,{data:n,timestamp:t}),n}catch(r){return a.warn("Failed to list resources for server ".concat(e,":"),r),{resources:[],resourceTemplates:[],error:"Failed to list resources: ".concat(r instanceof Error?r.message:"Unknown error")}}}async readResource(e,r){try{let t=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e),"/resources/read?uri=").concat(encodeURIComponent(r)));return await t.json()}catch(t){return a.warn("Failed to read resource ".concat(r," on server ").concat(e,":"),t),{success:!1,error:"Failed to read resource"}}}async listServerPrompts(e){try{let r=this.promptsCache.get(e),t=Date.now();if(r&&t-r.timestamp<this.CACHE_TTL)return a.debug("Using cached prompts for server ".concat(e)),{prompts:r.prompts};let o=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e),"/prompts")),s=await o.json();if(s.error)return a.warn("Error listing prompts for server ".concat(e,":"),s.error),{prompts:[],error:s.error};let n=Array.isArray(s.prompts)?s.prompts:[];return this.promptsCache.set(e,{prompts:n,timestamp:t}),{prompts:n}}catch(r){return a.warn("Failed to list prompts for server ".concat(e,":"),r),{prompts:[],error:"Failed to list prompts: ".concat(r instanceof Error?r.message:"Unknown error")}}}async getPrompt(e,r,t){try{let o=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e),"/prompts/get"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:r,arguments:t})});return await o.json()}catch(t){return a.warn("Failed to get prompt ".concat(r," on server ").concat(e,":"),t),{success:!1,error:"Failed to get prompt"}}}clearCapabilitiesCache(e){e?(this.resourcesCache.delete(e),this.promptsCache.delete(e)):(this.resourcesCache.clear(),this.promptsCache.clear())}async callTool(e,r,t,o){try{let a=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e),"/tools/").concat(encodeURIComponent(r)),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({args:t,timeout:o})});return await a.json()}catch(t){return a.warn("Failed to call tool ".concat(r," on server ").concat(e,":"),t),{error:"Failed to call tool"}}}async updateServerConfig(e,r){try{let t=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e)),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)}),o=await t.json();if(t.ok)return a.info("Successfully updated server config for ".concat(e)),{success:!0,data:o};if(void 0!==r.disabled)return a.info("Config update for ".concat(e," treated as success for toggle operation")),{success:!0,data:{...r,name:e},_originalError:o.error};return a.warn("Failed to update server config for ".concat(e,":"),o.error),{success:!1,error:o.error}}catch(r){return a.warn("Failed to update server config for ".concat(e,":"),r),{error:"Failed to update server config"}}}async testConnection(e){try{let r=await fetch("/api/mcp/test-connection",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});return await r.json()}catch(r){return a.warn("Failed to test connection for ".concat(e.name,":"),r),{success:!1,error:"Failed to reach the FLUJO backend to run the connection test: ".concat(r instanceof Error?r.message:"Unknown error")}}}async testConnectionStreaming(e,r){try{let t=await fetch("/api/mcp/test-connection/stream",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok||!t.body)return a.warn("Streaming test-connection unavailable (status ".concat(t.status,"); falling back")),this.testConnection(e);let s=null;if(await (0,o.z)(t,e=>{r(e),"result"===e.type&&(s={success:e.success,error:e.error,requiresAuthentication:e.requiresAuthentication,data:e.data})}),s)return s;return a.warn("Streaming test-connection ended without a result event"),{success:!1,error:"The connection test stream ended unexpectedly without a result."}}catch(r){return a.warn("Streaming test connection failed for ".concat(e.name,"; falling back to non-streaming:"),r),this.testConnection(e)}}async getServerStatus(e){try{let r=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e),"/status"),{headers:{Accept:"application/json"}}),t=await r.json();if(t.error)return a.warn("Error getting status for server ".concat(e,":"),t.error),{status:"error",message:t.error};return t}catch(r){return a.warn("Failed to get status for server ".concat(e,":"),r),{status:"error",message:"Failed to get server status: ".concat(r instanceof Error?r.message:"Unknown error")}}}async deleteServerConfig(e){try{let r=await fetch("/api/mcp/servers/".concat(encodeURIComponent(e)),{method:"DELETE"});return await r.json()}catch(r){return a.warn("Failed to delete server config for ".concat(e,":"),r),{error:"Failed to delete server config"}}}async retryServer(e){return a.debug("Retrying server status for: ".concat(e)),this.getServerStatus(e)}async restartServer(e){a.debug("Restarting server: ".concat(e));try{let r=await this.updateServerConfig(e,{disabled:!0});if(r.error)return a.warn("Failed to disable server ".concat(e," during restart:"),r.error),{error:"Failed to restart server: ".concat(r.error)};await new Promise(e=>setTimeout(e,1e3));let t=await this.updateServerConfig(e,{disabled:!1});if(t.error)return a.warn("Failed to enable server ".concat(e," during restart:"),t.error),{error:"Failed to restart server: ".concat(t.error)};return a.info("Successfully restarted server ".concat(e)),{success:!0}}catch(r){return a.warn("Failed to restart server ".concat(e,":"),r),{error:"Failed to restart server: ".concat(r instanceof Error?r.message:"Unknown error")}}}constructor(){this.toolsCache=new Map,this.resourcesCache=new Map,this.promptsCache=new Map,this.CACHE_TTL=6e4}}let n=new s},22573:(e,r,t)=>{t.d(r,{A:()=>p});var o=t(95155);t(12115);var a=t(33567),s=t(94049),n=t(41983),c=t(25635),i=t(28548),l=t(50430),d=t(63186),u=t(91665);let p=e=>{let{label:r,count:t,expanded:p,onToggle:m,showFolderIcon:h=!1,children:f}=e,y=(0,a.A)();return(0,o.jsxs)(s.default,{sx:{mb:1.5},children:[(0,o.jsxs)(s.default,{role:"button",tabIndex:0,"aria-expanded":p,onClick:m,onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),m())},sx:{display:"flex",alignItems:"center",gap:1,px:1,py:.75,borderRadius:1,cursor:"pointer",userSelect:"none",backgroundColor:y.palette.background.default,border:"1px solid ".concat(y.palette.divider),"&:hover":{backgroundColor:y.palette.action.hover}},children:[(0,o.jsx)(n.A,{size:"small","aria-label":p?"Collapse section":"Expand section",onClick:e=>{e.stopPropagation(),m()},sx:{transition:"transform 0.2s",transform:p?"rotate(0deg)":"rotate(-90deg)"},children:(0,o.jsx)(d.A,{fontSize:"small"})}),h&&(0,o.jsx)(u.A,{fontSize:"small",sx:{color:"text.secondary"}}),(0,o.jsx)(c.default,{variant:"subtitle2",sx:{fontWeight:600},children:r}),(0,o.jsx)(i.A,{label:t,size:"small",sx:{height:20,fontSize:"0.7rem"}})]}),(0,o.jsx)(l.A,{in:p,unmountOnExit:!0,children:(0,o.jsx)(s.default,{sx:{pt:1.5},children:f})})]})}},38459:(e,r,t)=>{function o(e,r){let t=[],o=new Map;for(let a of e){let{key:e,label:s}=r(a),n=o.get(e);n||(n={key:e,label:s,items:[]},o.set(e,n),t.push(n)),n.items.push(a)}return t}function a(e){let r=(null!=e?e:"").trim().charAt(0).toUpperCase();return r>="A"&&r<="Z"?{key:"letter:".concat(r),label:r}:{key:"letter:#",label:"#"}}function s(e,r){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Ungrouped",o=new Map,a=[];for(let t of e){var s;let e=null==(s=r(t))?void 0:s.trim();if(e){let r=o.get(e);r?r.push(t):o.set(e,[t])}else a.push(t)}let n=Array.from(o.keys()).sort((e,r)=>e.localeCompare(r)).map(e=>({key:"folder:".concat(e),label:e,items:o.get(e)}));return a.length>0&&n.push({key:"folder:__ungrouped__",label:t,items:a}),n}function n(e,r){let t=new Set;for(let a of e){var o;let e=null==(o=r(a))?void 0:o.trim();e&&t.add(e)}return Array.from(t).sort((e,r)=>e.localeCompare(r))}t.d(r,{Az:()=>o,Je:()=>s,po:()=>a,yF:()=>n})},43076:(e,r,t)=>{t.d(r,{N:()=>c,X:()=>n});let o=(0,t(87021).h)("frontend/services/model");class a{async fetchWithErrorHandling(e,r){try{o.debug("Making API request",{url:e,method:(null==r?void 0:r.method)||"GET"});let t=await fetch(e,r),a=null;try{if(204!==t.status){let r=t.headers.get("content-type");if(r&&r.includes("application/json"))a=await t.json();else{let s=await t.text();o.warn("Received non-JSON response",{url:e,contentType:r,text:s.substring(0,200)}),a=s}}}catch(r){throw o.error("Failed to parse response",{url:e,status:t.status,contentType:t.headers.get("content-type"),parseError:r}),Error("Invalid response format")}if(!t.ok){let s;throw s="object"==typeof a&&null!==a?a.error||a.message||a.errorMessage||JSON.stringify(a):a||"HTTP error! status: ".concat(t.status),o.error("Request failed",{url:e,method:(null==r?void 0:r.method)||"GET",status:t.status,error:s,data:a}),Error(s)}return o.debug("API request successful",{url:e,method:(null==r?void 0:r.method)||"GET",status:t.status}),a}catch(t){if(t instanceof TypeError&&"Failed to fetch"===t.message)throw o.error("Network error",{url:e,method:(null==r?void 0:r.method)||"GET",error:t}),Error("Unable to connect to the server. Please check your internet connection.");if(t instanceof Error)throw t;throw o.error("API request failed",{url:e,method:(null==r?void 0:r.method)||"GET",error:t}),Error("Failed to complete request")}}async tryLoadModels(){try{let e=await this.fetchWithErrorHandling("/api/model");return Array.isArray(e)?e:null}catch(e){return o.error("Failed to load models",e),null}}async loadModels(){var e;return null!=(e=await this.tryLoadModels())?e:[]}async getModel(e){try{return await this.fetchWithErrorHandling("/api/model/".concat(encodeURIComponent(e)))}catch(r){return o.error("Failed to get model",{id:e,error:r}),null}}async addModel(e){try{if(!e.provider)return{success:!1,error:"Provider is required"};o.debug("Attempting to add model",{displayName:e.displayName,provider:e.provider});let r=await this.fetchWithErrorHandling("/api/model",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});return o.debug("Model added successfully",{modelId:r.id,displayName:r.displayName}),{success:!0,model:r}}catch(t){o.error("Failed to add model",{displayName:e.displayName,provider:e.provider,error:t instanceof Error?t.message:t});let r=t instanceof Error?t.message:"Failed to add model";if(r.includes("display name already exists"))return{success:!1,error:'The display name "'.concat(e.displayName,'" is already in use. Please choose a different name.')};if(r.includes("technical name already exists"))return{success:!1,error:'A model with the name "'.concat(e.name,'" already exists. Please choose a different name.')};return{success:!1,error:r}}}async updateModel(e){try{if(!e.id)return{success:!1,error:"Model ID is required"};o.debug("Attempting to update model",{modelId:e.id,displayName:e.displayName});let r=await this.fetchWithErrorHandling("/api/model/".concat(encodeURIComponent(e.id)),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});return o.debug("Model updated successfully",{modelId:e.id,displayName:e.displayName}),{success:!0,model:r}}catch(t){o.error("Failed to update model",{modelId:e.id,displayName:e.displayName,error:t instanceof Error?t.message:t});let r=t instanceof Error?t.message:"Failed to update model";return r.includes("display name")&&r.includes("already exists"),{success:!1,error:r}}}async deleteModel(e){try{if(!e)return{success:!1,error:"Model ID is required"};let r=await this.getModel(e);if(!r)return{success:!1,error:"Model not found"};return o.debug("Attempting to delete model",{modelId:e,displayName:r.displayName}),await this.fetchWithErrorHandling("/api/model/".concat(encodeURIComponent(e)),{method:"DELETE"}),o.debug("Model deleted successfully",{modelId:e,displayName:r.displayName}),{success:!0}}catch(a){let r;try{let t=await this.getModel(e);r=null==t?void 0:t.displayName}catch(e){}o.error("Failed to delete model",{modelId:e,displayName:r,error:a instanceof Error?a.message:a});let t=a instanceof Error?a.message:"Failed to delete model";if(t.includes("not found"))return{success:!1,error:"The model no longer exists or has already been deleted"};return{success:!1,error:t}}}async updateModelApiKey(e,r){try{let t=await this.getModel(e);if(!t)return{success:!1,error:"Model not found"};return await this.updateModel({...t,ApiKey:r})}catch(r){return o.error("Failed to update model API key",{modelId:e,error:r}),{success:!1,error:r instanceof Error?r.message:"Failed to update API key"}}}async testModel(e){return o.debug("Testing model",{modelId:e.modelId,name:e.name}),await this.fetchWithErrorHandling("/api/model/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async fetchProviderModels(e,r,t,a){try{var s;o.debug("Fetching provider models",{baseUrl:e,modelId:r,searchTerm:t?'"'.concat(t,'"'):"none",apiKey:a?"provided":"not provided"});let n=await this.fetchWithErrorHandling("/api/model/provider",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({baseUrl:e,modelId:r,searchTerm:t,apiKey:a})});return o.debug("Provider models fetched successfully",{baseUrl:e,modelCount:(null==(s=n.models)?void 0:s.length)||0,searchTerm:t?'"'.concat(t,'"'):"none"}),n.models||[]}catch(r){return o.error("Failed to fetch provider models",{baseUrl:e,searchTerm:t,error:r}),[]}}}let s=null,n=()=>(s||(s=new a),s),c=new Proxy({},{get(e,r){let t=n(),o=t[r];return"function"==typeof o?o.bind(t):o}})},56290:(e,r,t)=>{t.d(r,{z:()=>o});async function o(e,r){if(!e.body||"function"!=typeof e.body.getReader)throw Error("Response has no readable body to stream");let t=e.body.getReader(),o=new TextDecoder,a=function(){let e="",r=(e,r)=>{let t=e.trim();if(t)try{r.push(JSON.parse(t))}catch(e){}};return{push(t){let o;e+=t;let a=[];for(;(o=e.indexOf("\n"))>=0;)r(e.slice(0,o),a),e=e.slice(o+1);return a},flush(){let t=[];return r(e,t),e="",t}}}();try{for(;;){let{value:e,done:s}=await t.read();if(s)break;for(let t of a.push(o.decode(e,{stream:!0})))r(t)}let e=o.decode();if(e)for(let t of a.push(e))r(t);for(let e of a.flush())r(e)}finally{try{t.releaseLock()}catch(e){}}}},81956:(e,r,t)=>{t.d(r,{A:()=>b});var o=t(95155),a=t(12115),s=t(36314),n=t(86973),c=t(49501),i=t(17681),l=t(21067),d=t(2778),u=t(52363),p=t(65036),m=t(9562),h=t(75912),f=t(91871),y=t(9693),g=t(91665),w=t(7517),v=t(8190);let b=e=>{let{anchorEl:r,open:t,currentFolder:b,folders:C,onClose:E,onAssign:x}=e,[A,S]=(0,a.useState)(!1),[j,F]=(0,a.useState)(""),k=e=>{x(e),E()},T=()=>{let e=j.trim();e&&(S(!1),k(e))};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(s.A,{anchorEl:r,open:t,onClose:E,children:[C.length>0&&C.map(e=>(0,o.jsxs)(n.A,{onClick:()=>k(e),selected:e===b,children:[(0,o.jsx)(c.A,{children:e===b?(0,o.jsx)(y.A,{fontSize:"small"}):(0,o.jsx)(g.A,{fontSize:"small"})}),(0,o.jsx)(i.A,{primary:e})]},e)),C.length>0&&(0,o.jsx)(l.A,{}),(0,o.jsxs)(n.A,{onClick:()=>{F(""),S(!0)},children:[(0,o.jsx)(c.A,{children:(0,o.jsx)(w.A,{fontSize:"small"})}),(0,o.jsx)(i.A,{primary:"New folder…"})]}),b&&(0,o.jsxs)(n.A,{onClick:()=>k(void 0),children:[(0,o.jsx)(c.A,{children:(0,o.jsx)(v.A,{fontSize:"small"})}),(0,o.jsx)(i.A,{primary:"Remove from folder"})]})]}),(0,o.jsxs)(d.A,{open:A,onClose:()=>S(!1),maxWidth:"xs",fullWidth:!0,children:[(0,o.jsx)(u.A,{children:"New folder"}),(0,o.jsx)(p.A,{children:(0,o.jsx)(m.A,{autoFocus:!0,margin:"dense",label:"Folder name",fullWidth:!0,value:j,onChange:e=>F(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),T())}})}),(0,o.jsxs)(h.A,{children:[(0,o.jsx)(f.A,{onClick:()=>S(!1),children:"Cancel"}),(0,o.jsx)(f.A,{variant:"contained",disabled:!j.trim(),onClick:T,children:"Create"})]})]})]})}},87021:(e,r,t)=>{t.d(r,{h:()=>i});let o={LOG_LEVEL:3},a={VERBOSE:-1,DEBUG:0,INFO:1,WARN:2,ERROR:3},s="number"==typeof o.LOG_LEVEL?o.LOG_LEVEL:a.ERROR;function n(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(r>6)return String(e);if(!(e instanceof Error))return e;let t={name:e.name,message:e.message};for(let o of Object.getOwnPropertyNames(e)){if("name"===o||"message"===o)continue;let a=e[o];"function"!=typeof a&&("stack"===o?t.stack=a:"cause"===o?t.cause=n(a,r+1):"errors"===o&&Array.isArray(a)?t.errors=a.map(e=>n(e,r+1)):t[o]=a)}return t}function c(e,r,t,o,c){if(e>=("number"==typeof c?c:s)){if("function"==typeof o)try{o=o()}catch(e){o="[lazy log data threw]"}let s=new Date().toISOString(),c="[".concat(s,"] [").concat(r,"]"),i="".concat(c," ").concat(t);if(void 0!==o)if(o instanceof Error||"object"==typeof o)try{let e=o instanceof Error?n(o):o,r=JSON.stringify(e,(e,r)=>r instanceof Error?n(r):r,2);i+=":\n".concat(r)}catch(e){i+=": [Object cannot be stringified]"}else i+=": ".concat(o);switch(e){case a.VERBOSE:console.debug("[VERBOSE] ".concat(i));break;case a.DEBUG:console.debug(i);break;case a.INFO:console.info(i);break;case a.WARN:console.warn(i);break;case a.ERROR:console.error(i);break;default:console.log(i)}}}function i(e,r){let t,o=((t=e.replace(/^src\//,"")).startsWith("/")&&(t=t.substring(1)),t);return{verbose:(e,t)=>{c(a.VERBOSE,o,e,t,r)},debug:(e,t)=>{c(a.DEBUG,o,e,t,r)},info:(e,t)=>{c(a.INFO,o,e,t,r)},warn:(e,t)=>{c(a.WARN,o,e,t,r)},error:(e,t)=>{c(a.ERROR,o,e,t,r)}}}},94929:(e,r,t)=>{t.d(r,{default:()=>n});var o=t(95155);t(12115);var a=t(94049),s=t(4474);let n=e=>{let{size:r="medium",color:t="primary",className:n="",sx:c={}}=e,i="white"===t?{color:"#fff",...c}:c;return(0,o.jsxs)(a.default,{component:"span",sx:{display:"inline-block",lineHeight:0,...i},className:n,role:"status",children:[(0,o.jsx)(s.default,{size:{small:16,medium:24,large:36}[r],color:"white"===t?"inherit":t,"aria-hidden":"true"}),(0,o.jsx)(a.default,{component:"span",sx:{position:"absolute",width:"1px",height:"1px",padding:0,margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:0},children:"Loading..."})]})}},97104:(e,r,t)=>{t.d(r,{Xk:()=>a});var o=t(12115);function a(e,r){let[t,a]=(0,o.useState)(()=>(function(e,r){try{let t=window.localStorage.getItem(e);if(null===t)return r;return JSON.parse(t)}catch(e){return r}})(e,r));return[t,(0,o.useCallback)(r=>{a(t=>{let o="function"==typeof r?r(t):r;try{window.localStorage.setItem(e,JSON.stringify(o))}catch(e){}return o})},[e])]}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8480],{8828:(t,e,n)=>{t.exports=n(83654)},11947:(t,e,n)=>{n.d(e,{A:()=>o});var r=n(19868),i=n(89505);function o(t){let{props:e,name:n,defaultTheme:o,themeId:a}=t,u=(0,i.A)(o);return a&&(u=u[a]||u),(0,r.A)({theme:u,name:n,props:e})}},14806:(t,e,n)=>{t.exports=n(30125)},19868:(t,e,n)=>{n.d(e,{A:()=>i});var r=n(37821);function i(t){let{theme:e,name:n,props:i}=t;return e&&e.components&&e.components[n]&&e.components[n].defaultProps?(0,r.A)(e.components[n].defaultProps,i):i}},23718:(t,e,n)=>{n.d(e,{h:()=>f,n:()=>s});var r=n(12115),i=n(8828);let o=t=>{let e,n=new Set,r=(t,r)=>{let i="function"==typeof t?t(e):t;if(!Object.is(i,e)){let t=e;e=(null!=r?r:"object"!=typeof i||null===i)?i:Object.assign({},e,i),n.forEach(n=>n(e,t))}},i=()=>e,o={setState:r,getState:i,getInitialState:()=>a,subscribe:t=>(n.add(t),()=>n.delete(t)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},a=e=t(r,i,o);return o},{useDebugValue:a}=r,{useSyncExternalStoreWithSelector:u}=i,l=t=>t;function s(t,e=l,n){let r=u(t.subscribe,t.getState,t.getServerState||t.getInitialState,e,n);return a(r),r}let c=(t,e)=>{let n=(t=>t?o(t):o)(t),r=(t,r=e)=>s(n,t,r);return Object.assign(r,n),r},f=(t,e)=>t?c(t,e):c},30125:(t,e,n)=>{var r=n(12115),i="function"==typeof Object.is?Object.is:function(t,e){return t===e&&(0!==t||1/t==1/e)||t!=t&&e!=e},o=r.useState,a=r.useEffect,u=r.useLayoutEffect,l=r.useDebugValue;function s(t){var e=t.getSnapshot;t=t.value;try{var n=e();return!i(t,n)}catch(t){return!0}}var c="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(t,e){return e()}:function(t,e){var n=e(),r=o({inst:{value:n,getSnapshot:e}}),i=r[0].inst,c=r[1];return u(function(){i.value=n,i.getSnapshot=e,s(i)&&c({inst:i})},[t,n,e]),a(function(){return s(i)&&c({inst:i}),t(function(){s(i)&&c({inst:i})})},[t]),l(n),n};e.useSyncExternalStore=void 0!==r.useSyncExternalStore?r.useSyncExternalStore:c},43621:(t,e,n)=>{n.d(e,{A:()=>function t(e){if("string"==typeof e||"number"==typeof e)return""+e;let n="";if(Array.isArray(e))for(let r=0,i;r<e.length;r++)""!==(i=t(e[r]))&&(n+=(n&&" ")+i);else for(let t in e)e[t]&&(n+=(n&&" ")+t);return n}})},55930:(t,e,n)=>{n.d(e,{A:()=>o});var r=n(36697),i=n(95155);let o=(0,r.A)((0,i.jsx)("path",{d:"M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"}),"AccountTree")},57459:(t,e,n)=>{n.d(e,{x:()=>r});function r(t,e){if(Object.is(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(let[n,r]of t)if(!Object.is(r,e.get(n)))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(let n of t)if(!e.has(n))return!1;return!0}let n=Object.keys(t);if(n.length!==Object.keys(e).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(e,r)||!Object.is(t[r],e[r]))return!1;return!0}},76122:(t,e,n)=>{n.d(e,{Do:()=>u,WZ:()=>i,TG:()=>l,ny:()=>o,yX:()=>s,xN:()=>c,Qc:()=>a,I$:()=>rl,aQ:()=>rd,di:()=>rp,kO:()=>rb,rN:()=>nY,bi:()=>n9,_s:()=>n$,aE:()=>nt,Hm:()=>n5,tM:()=>eG,KE:()=>nm,tn:()=>eQ,xc:()=>eU,us:()=>nA,IO:()=>e7,e_:()=>nC,Fp:()=>nR,Mi:()=>nh,HF:()=>e1,Eo:()=>nT,b5:()=>nG,Tq:()=>ne,qX:()=>nj,q1:()=>nL,oj:()=>nP,aZ:()=>e6,aW:()=>n2,uD:()=>nE,Jo:()=>e4,U$:()=>e9,X6:()=>nd,oN:()=>nZ,ah:()=>nF,R4:()=>n_,r8:()=>re,ZO:()=>eZ,bK:()=>eJ,b$:()=>e2,uj:()=>nq,v5:()=>nI,Ue:()=>nb,Er:()=>nB,oB:()=>e5,kf:()=>ny,mW:()=>np,Q6:()=>nS,QE:()=>nk,kM:()=>nc,No:()=>rr,Ff:()=>nv,zj:()=>nx,s_:()=>ng,vS:()=>n6,qn:()=>ro,uL:()=>rn,YN:()=>nz});var r,i,o,a,u,l,s,c,f={value:()=>{}};function h(){for(var t,e=0,n=arguments.length,r={};e<n;++e){if(!(t=arguments[e]+"")||t in r||/[\s.]/.test(t))throw Error("illegal type: "+t);r[t]=[]}return new d(r)}function d(t){this._=t}function p(t,e,n){for(var r=0,i=t.length;r<i;++r)if(t[r].name===e){t[r]=f,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=n&&t.push({name:e,value:n}),t}function y(){}function m(t){return null==t?y:function(){return this.querySelector(t)}}function g(){return[]}function v(t){return null==t?g:function(){return this.querySelectorAll(t)}}function x(t){return function(){return this.matches(t)}}function w(t){return function(e){return e.matches(t)}}d.prototype=h.prototype={constructor:d,on:function(t,e){var n,r=this._,i=(t+"").trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");if(n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!r.hasOwnProperty(t))throw Error("unknown type: "+t);return{type:t,name:e}}),o=-1,a=i.length;if(arguments.length<2){for(;++o<a;)if((n=(t=i[o]).type)&&(n=function(t,e){for(var n,r=0,i=t.length;r<i;++r)if((n=t[r]).name===e)return n.value}(r[n],t.name)))return n;return}if(null!=e&&"function"!=typeof e)throw Error("invalid callback: "+e);for(;++o<a;)if(n=(t=i[o]).type)r[n]=p(r[n],t.name,e);else if(null==e)for(n in r)r[n]=p(r[n],t.name,null);return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new d(t)},call:function(t,e){if((n=arguments.length-2)>0)for(var n,r,i=Array(n),o=0;o<n;++o)i[o]=arguments[o+2];if(!this._.hasOwnProperty(t))throw Error("unknown type: "+t);for(r=this._[t],o=0,n=r.length;o<n;++o)r[o].value.apply(e,i)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw Error("unknown type: "+t);for(var r=this._[t],i=0,o=r.length;i<o;++i)r[i].value.apply(e,n)}};var _=Array.prototype.find;function b(){return this.firstElementChild}var M=Array.prototype.filter;function E(){return Array.from(this.children)}function k(t){return Array(t.length)}function A(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function $(t,e,n,r,i,o){for(var a,u=0,l=e.length,s=o.length;u<s;++u)(a=e[u])?(a.__data__=o[u],r[u]=a):n[u]=new A(t,o[u]);for(;u<l;++u)(a=e[u])&&(i[u]=a)}function z(t,e,n,r,i,o,a){var u,l,s,c=new Map,f=e.length,h=o.length,d=Array(f);for(u=0;u<f;++u)(l=e[u])&&(d[u]=s=a.call(l,l.__data__,u,e)+"",c.has(s)?i[u]=l:c.set(s,l));for(u=0;u<h;++u)s=a.call(t,o[u],u,o)+"",(l=c.get(s))?(r[u]=l,l.__data__=o[u],c.delete(s)):n[u]=new A(t,o[u]);for(u=0;u<f;++u)(l=e[u])&&c.get(d[u])===l&&(i[u]=l)}function S(t){return t.__data__}function N(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}A.prototype={constructor:A,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var T="http://www.w3.org/1999/xhtml";let P={svg:"http://www.w3.org/2000/svg",xhtml:T,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function H(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),P.hasOwnProperty(e)?{space:P[e],local:t}:t}function I(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function B(t,e){return t.style.getPropertyValue(e)||I(t).getComputedStyle(t,null).getPropertyValue(e)}function L(t){return t.trim().split(/^|\s+/)}function O(t){return t.classList||new C(t)}function C(t){this._node=t,this._names=L(t.getAttribute("class")||"")}function V(t,e){for(var n=O(t),r=-1,i=e.length;++r<i;)n.add(e[r])}function D(t,e){for(var n=O(t),r=-1,i=e.length;++r<i;)n.remove(e[r])}function R(){this.textContent=""}function X(){this.innerHTML=""}function j(){this.nextSibling&&this.parentNode.appendChild(this)}function q(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Y(t){var e=H(t);return(e.local?function(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}:function(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===T&&e.documentElement.namespaceURI===T?e.createElement(t):e.createElementNS(n,t)}})(e)}function F(){return null}function K(){var t=this.parentNode;t&&t.removeChild(this)}function W(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function U(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function Z(t){return function(){var e=this.__on;if(e){for(var n,r=0,i=-1,o=e.length;r<o;++r)(n=e[r],t.type&&n.type!==t.type||n.name!==t.name)?e[++i]=n:this.removeEventListener(n.type,n.listener,n.options);++i?e.length=i:delete this.__on}}}function Q(t,e,n){return function(){var r,i=this.__on,o=function(t){e.call(this,t,this.__data__)};if(i){for(var a=0,u=i.length;a<u;++a)if((r=i[a]).type===t.type&&r.name===t.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=o,r.options=n),r.value=e;return}}this.addEventListener(t.type,o,n),r={type:t.type,name:t.name,value:e,listener:o,options:n},i?i.push(r):this.__on=[r]}}function G(t,e,n){var r=I(t),i=r.CustomEvent;"function"==typeof i?i=new i(e,n):(i=r.document.createEvent("Event"),n?(i.initEvent(e,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}C.prototype={add:function(t){0>this._names.indexOf(t)&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var J=[null];function tt(t,e){this._groups=t,this._parents=e}function te(){return new tt([[document.documentElement]],J)}function tn(t){return"string"==typeof t?new tt([[document.querySelector(t)]],[document.documentElement]):new tt([[t]],J)}function tr(t,e){if(t=function(t){let e;for(;e=t.sourceEvent;)t=e;return t}(t),void 0===e&&(e=t.currentTarget),e){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,[(r=r.matrixTransform(e.getScreenCTM().inverse())).x,r.y]}if(e.getBoundingClientRect){var i=e.getBoundingClientRect();return[t.clientX-i.left-e.clientLeft,t.clientY-i.top-e.clientTop]}}return[t.pageX,t.pageY]}tt.prototype=te.prototype={constructor:tt,select:function(t){"function"!=typeof t&&(t=m(t));for(var e=this._groups,n=e.length,r=Array(n),i=0;i<n;++i)for(var o,a,u=e[i],l=u.length,s=r[i]=Array(l),c=0;c<l;++c)(o=u[c])&&(a=t.call(o,o.__data__,c,u))&&("__data__"in o&&(a.__data__=o.__data__),s[c]=a);return new tt(r,this._parents)},selectAll:function(t){if("function"==typeof t){var e;e=t,t=function(){var t;return t=e.apply(this,arguments),null==t?[]:Array.isArray(t)?t:Array.from(t)}}else t=v(t);for(var n=this._groups,r=n.length,i=[],o=[],a=0;a<r;++a)for(var u,l=n[a],s=l.length,c=0;c<s;++c)(u=l[c])&&(i.push(t.call(u,u.__data__,c,l)),o.push(u));return new tt(i,o)},selectChild:function(t){var e;return this.select(null==t?b:(e="function"==typeof t?t:w(t),function(){return _.call(this.children,e)}))},selectChildren:function(t){var e;return this.selectAll(null==t?E:(e="function"==typeof t?t:w(t),function(){return M.call(this.children,e)}))},filter:function(t){"function"!=typeof t&&(t=x(t));for(var e=this._groups,n=e.length,r=Array(n),i=0;i<n;++i)for(var o,a=e[i],u=a.length,l=r[i]=[],s=0;s<u;++s)(o=a[s])&&t.call(o,o.__data__,s,a)&&l.push(o);return new tt(r,this._parents)},data:function(t,e){if(!arguments.length)return Array.from(this,S);var n=e?z:$,r=this._parents,i=this._groups;"function"!=typeof t&&(v=t,t=function(){return v});for(var o=i.length,a=Array(o),u=Array(o),l=Array(o),s=0;s<o;++s){var c=r[s],f=i[s],h=f.length,d="object"==typeof(g=t.call(c,c&&c.__data__,s,r))&&"length"in g?g:Array.from(g),p=d.length,y=u[s]=Array(p),m=a[s]=Array(p);n(c,f,y,m,l[s]=Array(h),d,e);for(var g,v,x,w,_=0,b=0;_<p;++_)if(x=y[_]){for(_>=b&&(b=_+1);!(w=m[b])&&++b<p;);x._next=w||null}}return(a=new tt(a,r))._enter=u,a._exit=l,a},enter:function(){return new tt(this._enter||this._groups.map(k),this._parents)},exit:function(){return new tt(this._exit||this._groups.map(k),this._parents)},join:function(t,e,n){var r=this.enter(),i=this,o=this.exit();return"function"==typeof t?(r=t(r))&&(r=r.selection()):r=r.append(t+""),null!=e&&(i=e(i))&&(i=i.selection()),null==n?o.remove():n(o),r&&i?r.merge(i).order():i},merge:function(t){for(var e=t.selection?t.selection():t,n=this._groups,r=e._groups,i=n.length,o=r.length,a=Math.min(i,o),u=Array(i),l=0;l<a;++l)for(var s,c=n[l],f=r[l],h=c.length,d=u[l]=Array(h),p=0;p<h;++p)(s=c[p]||f[p])&&(d[p]=s);for(;l<i;++l)u[l]=n[l];return new tt(u,this._parents)},selection:function(){return this},order:function(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var r,i=t[e],o=i.length-1,a=i[o];--o>=0;)(r=i[o])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=N);for(var n=this._groups,r=n.length,i=Array(r),o=0;o<r;++o){for(var a,u=n[o],l=u.length,s=i[o]=Array(l),c=0;c<l;++c)(a=u[c])&&(s[c]=a);s.sort(e)}return new tt(i,this._parents).order()},call:function(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r=t[e],i=0,o=r.length;i<o;++i){var a=r[i];if(a)return a}return null},size:function(){let t=0;for(let e of this)++t;return t},empty:function(){return!this.node()},each:function(t){for(var e=this._groups,n=0,r=e.length;n<r;++n)for(var i,o=e[n],a=0,u=o.length;a<u;++a)(i=o[a])&&t.call(i,i.__data__,a,o);return this},attr:function(t,e){var n=H(t);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((null==e?n.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}}:"function"==typeof e?n.local?function(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}:function(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}:n.local?function(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}:function(t,e){return function(){this.setAttribute(t,e)}})(n,e))},style:function(t,e,n){return arguments.length>1?this.each((null==e?function(t){return function(){this.style.removeProperty(t)}}:"function"==typeof e?function(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}:function(t,e,n){return function(){this.style.setProperty(t,e,n)}})(t,e,null==n?"":n)):B(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?function(t){return function(){delete this[t]}}:"function"==typeof e?function(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}:function(t,e){return function(){this[t]=e}})(t,e)):this.node()[t]},classed:function(t,e){var n=L(t+"");if(arguments.length<2){for(var r=O(this.node()),i=-1,o=n.length;++i<o;)if(!r.contains(n[i]))return!1;return!0}return this.each(("function"==typeof e?function(t,e){return function(){(e.apply(this,arguments)?V:D)(this,t)}}:e?function(t){return function(){V(this,t)}}:function(t){return function(){D(this,t)}})(n,e))},text:function(t){return arguments.length?this.each(null==t?R:("function"==typeof t?function(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}:function(t){return function(){this.textContent=t}})(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?X:("function"==typeof t?function(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}:function(t){return function(){this.innerHTML=t}})(t)):this.node().innerHTML},raise:function(){return this.each(j)},lower:function(){return this.each(q)},append:function(t){var e="function"==typeof t?t:Y(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})},insert:function(t,e){var n="function"==typeof t?t:Y(t),r=null==e?F:"function"==typeof e?e:m(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})},remove:function(){return this.each(K)},clone:function(t){return this.select(t?U:W)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,e,n){var r,i,o=(t+"").trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");return n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}}),a=o.length;if(arguments.length<2){var u=this.node().__on;if(u){for(var l,s=0,c=u.length;s<c;++s)for(r=0,l=u[s];r<a;++r)if((i=o[r]).type===l.type&&i.name===l.name)return l.value}return}for(r=0,u=e?Q:Z;r<a;++r)this.each(u(o[r],e,n));return this},dispatch:function(t,e){return this.each(("function"==typeof e?function(t,e){return function(){return G(this,t,e.apply(this,arguments))}}:function(t,e){return function(){return G(this,t,e)}})(t,e))},[Symbol.iterator]:function*(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r,i=t[e],o=0,a=i.length;o<a;++o)(r=i[o])&&(yield r)}};let ti={passive:!1},to={capture:!0,passive:!1};function ta(t){t.stopImmediatePropagation()}function tu(t){t.preventDefault(),t.stopImmediatePropagation()}function tl(t){var e=t.document.documentElement,n=tn(t).on("dragstart.drag",tu,to);"onselectstart"in e?n.on("selectstart.drag",tu,to):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function ts(t,e){var n=t.document.documentElement,r=tn(t).on("dragstart.drag",null);e&&(r.on("click.drag",tu,to),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}let tc=t=>()=>t;function tf(t,{sourceEvent:e,subject:n,target:r,identifier:i,active:o,x:a,y:u,dx:l,dy:s,dispatch:c}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:u,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:s,enumerable:!0,configurable:!0},_:{value:c}})}function th(t){return!t.ctrlKey&&!t.button}function td(){return this.parentNode}function tp(t,e){return null==e?{x:t.x,y:t.y}:e}function ty(){return navigator.maxTouchPoints||"ontouchstart"in this}function tm(t){return((t=Math.exp(t))+1/t)/2}tf.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};let tg=function t(e,n,r){function i(t,i){var o,a,u=t[0],l=t[1],s=t[2],c=i[0],f=i[1],h=i[2],d=c-u,p=f-l,y=d*d+p*p;if(y<1e-12)a=Math.log(h/s)/e,o=function(t){return[u+t*d,l+t*p,s*Math.exp(e*t*a)]};else{var m=Math.sqrt(y),g=(h*h-s*s+r*y)/(2*s*n*m),v=(h*h-s*s-r*y)/(2*h*n*m),x=Math.log(Math.sqrt(g*g+1)-g);a=(Math.log(Math.sqrt(v*v+1)-v)-x)/e,o=function(t){var r,i,o=t*a,c=tm(x),f=s/(n*m)*(c*(((r=Math.exp(2*(r=e*o+x)))-1)/(r+1))-((i=Math.exp(i=x))-1/i)/2);return[u+f*d,l+f*p,s*c/tm(e*o+x)]}}return o.duration=1e3*a*e/Math.SQRT2,o}return i.rho=function(e){var n=Math.max(.001,+e),r=n*n;return t(n,r,r*r)},i}(Math.SQRT2,2,4);var tv,tx,tw=0,t_=0,tb=0,tM=0,tE=0,tk=0,tA="object"==typeof performance&&performance.now?performance:Date,t$="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function tz(){return tE||(t$(tS),tE=tA.now()+tk)}function tS(){tE=0}function tN(){this._call=this._time=this._next=null}function tT(t,e,n){var r=new tN;return r.restart(t,e,n),r}function tP(){tE=(tM=tA.now())+tk,tw=t_=0;try{tz(),++tw;for(var t,e=tv;e;)(t=tE-e._time)>=0&&e._call.call(void 0,t),e=e._next;--tw}finally{tw=0,function(){for(var t,e,n=tv,r=1/0;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:tv=e);tx=t,tI(r)}(),tE=0}}function tH(){var t=tA.now(),e=t-tM;e>1e3&&(tk-=e,tM=t)}function tI(t){!tw&&(t_&&(t_=clearTimeout(t_)),t-tE>24?(t<1/0&&(t_=setTimeout(tP,t-tA.now()-tk)),tb&&(tb=clearInterval(tb))):(tb||(tM=tA.now(),tb=setInterval(tH,1e3)),tw=1,t$(tP)))}function tB(t,e,n){var r=new tN;return e=null==e?0:+e,r.restart(n=>{r.stop(),t(n+e)},e,n),r}tN.prototype=tT.prototype={constructor:tN,restart:function(t,e,n){if("function"!=typeof t)throw TypeError("callback is not a function");n=(null==n?tz():+n)+(null==e?0:+e),this._next||tx===this||(tx?tx._next=this:tv=this,tx=this),this._call=t,this._time=n,tI()},stop:function(){this._call&&(this._call=null,this._time=1/0,tI())}};var tL=h("start","end","cancel","interrupt"),tO=[];function tC(t,e,n,r,i,o){var a=t.__transition;if(a){if(n in a)return}else t.__transition={};!function(t,e,n){var r,i=t.__transition;function o(l){var s,c,f,h;if(1!==n.state)return u();for(s in i)if((h=i[s]).name===n.name){if(3===h.state)return tB(o);4===h.state?(h.state=6,h.timer.stop(),h.on.call("interrupt",t,t.__data__,h.index,h.group),delete i[s]):+s<e&&(h.state=6,h.timer.stop(),h.on.call("cancel",t,t.__data__,h.index,h.group),delete i[s])}if(tB(function(){3===n.state&&(n.state=4,n.timer.restart(a,n.delay,n.time),a(l))}),n.state=2,n.on.call("start",t,t.__data__,n.index,n.group),2===n.state){for(s=0,n.state=3,r=Array(f=n.tween.length),c=-1;s<f;++s)(h=n.tween[s].value.call(t,t.__data__,n.index,n.group))&&(r[++c]=h);r.length=c+1}}function a(e){for(var i=e<n.duration?n.ease.call(null,e/n.duration):(n.timer.restart(u),n.state=5,1),o=-1,a=r.length;++o<a;)r[o].call(t,i);5===n.state&&(n.on.call("end",t,t.__data__,n.index,n.group),u())}function u(){for(var r in n.state=6,n.timer.stop(),delete i[e],i)return;delete t.__transition}i[e]=n,n.timer=tT(function(t){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=t&&o(t-n.delay)},0,n.time)}(t,n,{name:e,index:r,group:i,on:tL,tween:tO,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:0})}function tV(t,e){var n=tR(t,e);if(n.state>0)throw Error("too late; already scheduled");return n}function tD(t,e){var n=tR(t,e);if(n.state>3)throw Error("too late; already running");return n}function tR(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw Error("transition not found");return n}function tX(t,e){var n,r,i,o=t.__transition,a=!0;if(o){for(i in e=null==e?null:e+"",o){if((n=o[i]).name!==e){a=!1;continue}r=n.state>2&&n.state<5,n.state=6,n.timer.stop(),n.on.call(r?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete o[i]}a&&delete t.__transition}}function tj(t,e){return t*=1,e*=1,function(n){return t*(1-n)+e*n}}var tq=180/Math.PI,tY={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function tF(t,e,n,r,i,o){var a,u,l;return(a=Math.sqrt(t*t+e*e))&&(t/=a,e/=a),(l=t*n+e*r)&&(n-=t*l,r-=e*l),(u=Math.sqrt(n*n+r*r))&&(n/=u,r/=u,l/=u),t*r<e*n&&(t=-t,e=-e,l=-l,a=-a),{translateX:i,translateY:o,rotate:Math.atan2(e,t)*tq,skewX:Math.atan(l)*tq,scaleX:a,scaleY:u}}function tK(t,e,n,r){function i(t){return t.length?t.pop()+" ":""}return function(o,a){var u,l,s,c,f=[],h=[];return o=t(o),a=t(a),!function(t,r,i,o,a,u){if(t!==i||r!==o){var l=a.push("translate(",null,e,null,n);u.push({i:l-4,x:tj(t,i)},{i:l-2,x:tj(r,o)})}else(i||o)&&a.push("translate("+i+e+o+n)}(o.translateX,o.translateY,a.translateX,a.translateY,f,h),u=o.rotate,l=a.rotate,u!==l?(u-l>180?l+=360:l-u>180&&(u+=360),h.push({i:f.push(i(f)+"rotate(",null,r)-2,x:tj(u,l)})):l&&f.push(i(f)+"rotate("+l+r),s=o.skewX,c=a.skewX,s!==c?h.push({i:f.push(i(f)+"skewX(",null,r)-2,x:tj(s,c)}):c&&f.push(i(f)+"skewX("+c+r),!function(t,e,n,r,o,a){if(t!==n||e!==r){var u=o.push(i(o)+"scale(",null,",",null,")");a.push({i:u-4,x:tj(t,n)},{i:u-2,x:tj(e,r)})}else(1!==n||1!==r)&&o.push(i(o)+"scale("+n+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,f,h),o=a=null,function(t){for(var e,n=-1,r=h.length;++n<r;)f[(e=h[n]).i]=e.x(t);return f.join("")}}}var tW=tK(function(t){let e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?tY:tF(e.a,e.b,e.c,e.d,e.e,e.f)},"px, ","px)","deg)"),tU=tK(function(t){return null==t?tY:(r||(r=document.createElementNS("http://www.w3.org/2000/svg","g")),r.setAttribute("transform",t),t=r.transform.baseVal.consolidate())?tF((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):tY},", ",")",")");function tZ(t,e,n){var r=t._id;return t.each(function(){var t=tD(this,r);(t.value||(t.value={}))[e]=n.apply(this,arguments)}),function(t){return tR(t,r).value[e]}}function tQ(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function tG(t,e){var n=Object.create(t.prototype);for(var r in e)n[r]=e[r];return n}function tJ(){}var t0="\\s*([+-]?\\d+)\\s*",t1="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",t2="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",t5=/^#([0-9a-f]{3,8})$/,t8=RegExp(`^rgb\\(${t0},${t0},${t0}\\)$`),t3=RegExp(`^rgb\\(${t2},${t2},${t2}\\)$`),t4=RegExp(`^rgba\\(${t0},${t0},${t0},${t1}\\)$`),t6=RegExp(`^rgba\\(${t2},${t2},${t2},${t1}\\)$`),t9=RegExp(`^hsl\\(${t1},${t2},${t2}\\)$`),t7=RegExp(`^hsla\\(${t1},${t2},${t2},${t1}\\)$`),et={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32};function ee(){return this.rgb().formatHex()}function en(){return this.rgb().formatRgb()}function er(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=t5.exec(t))?(n=e[1].length,e=parseInt(e[1],16),6===n?ei(e):3===n?new eu(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?eo(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?eo(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=t8.exec(t))?new eu(e[1],e[2],e[3],1):(e=t3.exec(t))?new eu(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=t4.exec(t))?eo(e[1],e[2],e[3],e[4]):(e=t6.exec(t))?eo(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=t9.exec(t))?ed(e[1],e[2]/100,e[3]/100,1):(e=t7.exec(t))?ed(e[1],e[2]/100,e[3]/100,e[4]):et.hasOwnProperty(t)?ei(et[t]):"transparent"===t?new eu(NaN,NaN,NaN,0):null}function ei(t){return new eu(t>>16&255,t>>8&255,255&t,1)}function eo(t,e,n,r){return r<=0&&(t=e=n=NaN),new eu(t,e,n,r)}function ea(t,e,n,r){var i;return 1==arguments.length?((i=t)instanceof tJ||(i=er(i)),i)?new eu((i=i.rgb()).r,i.g,i.b,i.opacity):new eu:new eu(t,e,n,null==r?1:r)}function eu(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function el(){return`#${eh(this.r)}${eh(this.g)}${eh(this.b)}`}function es(){let t=ec(this.opacity);return`${1===t?"rgb(":"rgba("}${ef(this.r)}, ${ef(this.g)}, ${ef(this.b)}${1===t?")":`, ${t})`}`}function ec(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function ef(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function eh(t){return((t=ef(t))<16?"0":"")+t.toString(16)}function ed(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new ey(t,e,n,r)}function ep(t){if(t instanceof ey)return new ey(t.h,t.s,t.l,t.opacity);if(t instanceof tJ||(t=er(t)),!t)return new ey;if(t instanceof ey)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),o=Math.max(e,n,r),a=NaN,u=o-i,l=(o+i)/2;return u?(a=e===o?(n-r)/u+(n<r)*6:n===o?(r-e)/u+2:(e-n)/u+4,u/=l<.5?o+i:2-o-i,a*=60):u=l>0&&l<1?0:a,new ey(a,u,l,t.opacity)}function ey(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function em(t){return(t=(t||0)%360)<0?t+360:t}function eg(t){return Math.max(0,Math.min(1,t||0))}function ev(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}function ex(t,e,n,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*e+(4-6*o+3*a)*n+(1+3*t+3*o-3*a)*r+a*i)/6}tQ(tJ,er,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:ee,formatHex:ee,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return ep(this).formatHsl()},formatRgb:en,toString:en}),tQ(eu,ea,tG(tJ,{brighter(t){return t=null==t?1.4285714285714286:Math.pow(1.4285714285714286,t),new eu(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?.7:Math.pow(.7,t),new eu(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new eu(ef(this.r),ef(this.g),ef(this.b),ec(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:el,formatHex:el,formatHex8:function(){return`#${eh(this.r)}${eh(this.g)}${eh(this.b)}${eh((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:es,toString:es})),tQ(ey,function(t,e,n,r){return 1==arguments.length?ep(t):new ey(t,e,n,null==r?1:r)},tG(tJ,{brighter(t){return t=null==t?1.4285714285714286:Math.pow(1.4285714285714286,t),new ey(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?.7:Math.pow(.7,t),new ey(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new eu(ev(t>=240?t-240:t+120,i,r),ev(t,i,r),ev(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new ey(em(this.h),eg(this.s),eg(this.l),ec(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=ec(this.opacity);return`${1===t?"hsl(":"hsla("}${em(this.h)}, ${100*eg(this.s)}%, ${100*eg(this.l)}%${1===t?")":`, ${t})`}`}}));let ew=t=>()=>t;function e_(t,e){var n=e-t;return n?function(e){return t+e*n}:ew(isNaN(t)?e:t)}let eb=function t(e){var n,r=1==(n=+e)?e_:function(t,e){var r,i,o;return e-t?(r=t,i=e,r=Math.pow(r,o=n),i=Math.pow(i,o)-r,o=1/o,function(t){return Math.pow(r+t*i,o)}):ew(isNaN(t)?e:t)};function i(t,e){var n=r((t=ea(t)).r,(e=ea(e)).r),i=r(t.g,e.g),o=r(t.b,e.b),a=e_(t.opacity,e.opacity);return function(e){return t.r=n(e),t.g=i(e),t.b=o(e),t.opacity=a(e),t+""}}return i.gamma=t,i}(1);function eM(t){return function(e){var n,r,i=e.length,o=Array(i),a=Array(i),u=Array(i);for(n=0;n<i;++n)r=ea(e[n]),o[n]=r.r||0,a[n]=r.g||0,u[n]=r.b||0;return o=t(o),a=t(a),u=t(u),r.opacity=1,function(t){return r.r=o(t),r.g=a(t),r.b=u(t),r+""}}}eM(function(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,u=r<e-1?t[r+2]:2*o-i;return ex((n-r/e)*e,a,i,o,u)}}),eM(function(t){var e=t.length;return function(n){var r=Math.floor(((n%=1)<0?++n:n)*e),i=t[(r+e-1)%e],o=t[r%e],a=t[(r+1)%e],u=t[(r+2)%e];return ex((n-r/e)*e,i,o,a,u)}});var eE=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,ek=RegExp(eE.source,"g");function eA(t,e){var n,r,i,o,a,u=eE.lastIndex=ek.lastIndex=0,l=-1,s=[],c=[];for(t+="",e+="";(i=eE.exec(t))&&(o=ek.exec(e));)(a=o.index)>u&&(a=e.slice(u,a),s[l]?s[l]+=a:s[++l]=a),(i=i[0])===(o=o[0])?s[l]?s[l]+=o:s[++l]=o:(s[++l]=null,c.push({i:l,x:tj(i,o)})),u=ek.lastIndex;return u<e.length&&(a=e.slice(u),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?(n=c[0].x,function(t){return n(t)+""}):(r=e,function(){return r}):(e=c.length,function(t){for(var n,r=0;r<e;++r)s[(n=c[r]).i]=n.x(t);return s.join("")})}function e$(t,e){var n;return("number"==typeof e?tj:e instanceof er?eb:(n=er(e))?(e=n,eb):eA)(t,e)}var ez=te.prototype.constructor;function eS(t){return function(){this.style.removeProperty(t)}}var eN=0;function eT(t,e,n,r){this._groups=t,this._parents=e,this._name=n,this._id=r}var eP=te.prototype;eT.prototype=(function(t){return te().transition(t)}).prototype={constructor:eT,select:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=m(t));for(var r=this._groups,i=r.length,o=Array(i),a=0;a<i;++a)for(var u,l,s=r[a],c=s.length,f=o[a]=Array(c),h=0;h<c;++h)(u=s[h])&&(l=t.call(u,u.__data__,h,s))&&("__data__"in u&&(l.__data__=u.__data__),f[h]=l,tC(f[h],e,n,h,f,tR(u,n)));return new eT(o,this._parents,e,n)},selectAll:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=v(t));for(var r=this._groups,i=r.length,o=[],a=[],u=0;u<i;++u)for(var l,s=r[u],c=s.length,f=0;f<c;++f)if(l=s[f]){for(var h,d=t.call(l,l.__data__,f,s),p=tR(l,n),y=0,m=d.length;y<m;++y)(h=d[y])&&tC(h,e,n,y,d,p);o.push(d),a.push(l)}return new eT(o,a,e,n)},selectChild:eP.selectChild,selectChildren:eP.selectChildren,filter:function(t){"function"!=typeof t&&(t=x(t));for(var e=this._groups,n=e.length,r=Array(n),i=0;i<n;++i)for(var o,a=e[i],u=a.length,l=r[i]=[],s=0;s<u;++s)(o=a[s])&&t.call(o,o.__data__,s,a)&&l.push(o);return new eT(r,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw Error();for(var e=this._groups,n=t._groups,r=e.length,i=n.length,o=Math.min(r,i),a=Array(r),u=0;u<o;++u)for(var l,s=e[u],c=n[u],f=s.length,h=a[u]=Array(f),d=0;d<f;++d)(l=s[d]||c[d])&&(h[d]=l);for(;u<r;++u)a[u]=e[u];return new eT(a,this._parents,this._name,this._id)},selection:function(){return new ez(this._groups,this._parents)},transition:function(){for(var t=this._name,e=this._id,n=++eN,r=this._groups,i=r.length,o=0;o<i;++o)for(var a,u=r[o],l=u.length,s=0;s<l;++s)if(a=u[s]){var c=tR(a,e);tC(a,t,n,s,u,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}return new eT(r,this._parents,t,n)},call:eP.call,nodes:eP.nodes,node:eP.node,size:eP.size,empty:eP.empty,each:eP.each,on:function(t,e){var n,r,i,o,a,u,l=this._id;return arguments.length<2?tR(this.node(),l).on.on(t):this.each((n=l,r=t,i=e,u=(r+"").trim().split(/^|\s+/).every(function(t){var e=t.indexOf(".");return e>=0&&(t=t.slice(0,e)),!t||"start"===t})?tV:tD,function(){var t=u(this,n),e=t.on;e!==o&&(a=(o=e).copy()).on(r,i),t.on=a}))},attr:function(t,e){var n=H(t),r="transform"===n?tU:e$;return this.attrTween(t,"function"==typeof e?(n.local?function(t,e,n){var r,i,o;return function(){var a,u,l=n(this);return null==l?void this.removeAttributeNS(t.space,t.local):(a=this.getAttributeNS(t.space,t.local))===(u=l+"")?null:a===r&&u===i?o:(i=u,o=e(r=a,l))}}:function(t,e,n){var r,i,o;return function(){var a,u,l=n(this);return null==l?void this.removeAttribute(t):(a=this.getAttribute(t))===(u=l+"")?null:a===r&&u===i?o:(i=u,o=e(r=a,l))}})(n,r,tZ(this,"attr."+t,e)):null==e?(n.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}})(n):(n.local?function(t,e,n){var r,i,o=n+"";return function(){var a=this.getAttributeNS(t.space,t.local);return a===o?null:a===r?i:i=e(r=a,n)}}:function(t,e,n){var r,i,o=n+"";return function(){var a=this.getAttribute(t);return a===o?null:a===r?i:i=e(r=a,n)}})(n,r,e))},attrTween:function(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==e)return this.tween(n,null);if("function"!=typeof e)throw Error();var r=H(t);return this.tween(n,(r.local?function(t,e){var n,r;function i(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&function(e){this.setAttributeNS(t.space,t.local,i.call(this,e))}),n}return i._value=e,i}:function(t,e){var n,r;function i(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&function(e){this.setAttribute(t,i.call(this,e))}),n}return i._value=e,i})(r,e))},style:function(t,e,n){var r,i,o,a,u,l,s,c,f,h,d,p,y,m,g,v,x,w,_,b,M,E="transform"==(t+="")?tW:e$;return null==e?this.styleTween(t,(r=t,function(){var t=B(this,r),e=(this.style.removeProperty(r),B(this,r));return t===e?null:t===i&&e===o?a:a=E(i=t,o=e)})).on("end.style."+t,eS(t)):"function"==typeof e?this.styleTween(t,(u=t,l=tZ(this,"style."+t,e),function(){var t=B(this,u),e=l(this),n=e+"";return null==e&&(this.style.removeProperty(u),n=e=B(this,u)),t===n?null:t===s&&n===c?f:(c=n,f=E(s=t,e))})).each((h=this._id,x="end."+(v="style."+(d=t)),function(){var t=tD(this,h),e=t.on,n=null==t.value[v]?g||(g=eS(d)):void 0;(e!==p||m!==n)&&(y=(p=e).copy()).on(x,m=n),t.on=y})):this.styleTween(t,(w=t,M=e+"",function(){var t=B(this,w);return t===M?null:t===_?b:b=E(_=t,e)}),n).on("end.style."+t,null)},styleTween:function(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw Error();return this.tween(r,function(t,e,n){var r,i;function o(){var o=e.apply(this,arguments);return o!==i&&(r=(i=o)&&function(e){this.style.setProperty(t,o.call(this,e),n)}),r}return o._value=e,o}(t,e,null==n?"":n))},text:function(t){var e,n;return this.tween("text","function"==typeof t?(e=tZ(this,"text",t),function(){var t=e(this);this.textContent=null==t?"":t}):(n=null==t?"":t+"",function(){this.textContent=n}))},textTween:function(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw Error();return this.tween(e,function(t){var e,n;function r(){var r=t.apply(this,arguments);return r!==n&&(e=(n=r)&&function(t){this.textContent=r.call(this,t)}),e}return r._value=t,r}(t))},remove:function(){var t;return this.on("end.remove",(t=this._id,function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}))},tween:function(t,e){var n=this._id;if(t+="",arguments.length<2){for(var r,i=tR(this.node(),n).tween,o=0,a=i.length;o<a;++o)if((r=i[o]).name===t)return r.value;return null}return this.each((null==e?function(t,e){var n,r;return function(){var i=tD(this,t),o=i.tween;if(o!==n){r=n=o;for(var a=0,u=r.length;a<u;++a)if(r[a].name===e){(r=r.slice()).splice(a,1);break}}i.tween=r}}:function(t,e,n){var r,i;if("function"!=typeof n)throw Error();return function(){var o=tD(this,t),a=o.tween;if(a!==r){i=(r=a).slice();for(var u={name:e,value:n},l=0,s=i.length;l<s;++l)if(i[l].name===e){i[l]=u;break}l===s&&i.push(u)}o.tween=i}})(n,t,e))},delay:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?function(t,e){return function(){tV(this,t).delay=+e.apply(this,arguments)}}:function(t,e){return e*=1,function(){tV(this,t).delay=e}})(e,t)):tR(this.node(),e).delay},duration:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?function(t,e){return function(){tD(this,t).duration=+e.apply(this,arguments)}}:function(t,e){return e*=1,function(){tD(this,t).duration=e}})(e,t)):tR(this.node(),e).duration},ease:function(t){var e=this._id;return arguments.length?this.each(function(t,e){if("function"!=typeof e)throw Error();return function(){tD(this,t).ease=e}}(e,t)):tR(this.node(),e).ease},easeVarying:function(t){var e;if("function"!=typeof t)throw Error();return this.each((e=this._id,function(){var n=t.apply(this,arguments);if("function"!=typeof n)throw Error();tD(this,e).ease=n}))},end:function(){var t,e,n=this,r=n._id,i=n.size();return new Promise(function(o,a){var u={value:a},l={value:function(){0==--i&&o()}};n.each(function(){var n=tD(this,r),i=n.on;i!==t&&((e=(t=i).copy())._.cancel.push(u),e._.interrupt.push(u),e._.end.push(l)),n.on=e}),0===i&&o()})},[Symbol.iterator]:eP[Symbol.iterator]};var eH={time:null,delay:0,duration:250,ease:function(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}};te.prototype.interrupt=function(t){return this.each(function(){tX(this,t)})},te.prototype.transition=function(t){var e,n;t instanceof eT?(e=t._id,t=t._name):(e=++eN,(n=eH).time=tz(),t=null==t?null:t+"");for(var r=this._groups,i=r.length,o=0;o<i;++o)for(var a,u=r[o],l=u.length,s=0;s<l;++s)(a=u[s])&&tC(a,t,e,s,u,n||function(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw Error(`transition ${e} not found`);return n}(a,e));return new eT(r,this._parents,t,e)};let eI=t=>()=>t;function eB(t,{sourceEvent:e,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function eL(t,e,n){this.k=t,this.x=e,this.y=n}eL.prototype={constructor:eL,scale:function(t){return 1===t?this:new eL(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new eL(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var eO=new eL(1,0,0);function eC(t){for(;!t.__zoom;)if(!(t=t.parentNode))return eO;return t.__zoom}function eV(t){t.stopImmediatePropagation()}function eD(t){t.preventDefault(),t.stopImmediatePropagation()}function eR(t){return(!t.ctrlKey||"wheel"===t.type)&&!t.button}function eX(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t).hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]:[[0,0],[t.clientWidth,t.clientHeight]]}function ej(){return this.__zoom||eO}function eq(t){return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function eY(){return navigator.maxTouchPoints||"ontouchstart"in this}function eF(t,e,n){var r=t.invertX(e[0][0])-n[0][0],i=t.invertX(e[1][0])-n[1][0],o=t.invertY(e[0][1])-n[0][1],a=t.invertY(e[1][1])-n[1][1];return t.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),a>o?(o+a)/2:Math.min(0,o)||Math.max(0,a))}function eK(){var t,e,n,r=eR,i=eX,o=eF,a=eq,u=eY,l=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],c=250,f=tg,d=h("start","zoom","end"),p=0,y=10;function m(t){t.property("__zoom",ej).on("wheel.zoom",M,{passive:!1}).on("mousedown.zoom",E).on("dblclick.zoom",k).filter(u).on("touchstart.zoom",A).on("touchmove.zoom",$).on("touchend.zoom touchcancel.zoom",z).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(t,e){return(e=Math.max(l[0],Math.min(l[1],e)))===t.k?t:new eL(e,t.x,t.y)}function v(t,e,n){var r=e[0]-n[0]*t.k,i=e[1]-n[1]*t.k;return r===t.x&&i===t.y?t:new eL(t.k,r,i)}function x(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function w(t,e,n,r){t.on("start.zoom",function(){_(this,arguments).event(r).start()}).on("interrupt.zoom end.zoom",function(){_(this,arguments).event(r).end()}).tween("zoom",function(){var t=arguments,o=_(this,t).event(r),a=i.apply(this,t),u=null==n?x(a):"function"==typeof n?n.apply(this,t):n,l=Math.max(a[1][0]-a[0][0],a[1][1]-a[0][1]),s=this.__zoom,c="function"==typeof e?e.apply(this,t):e,h=f(s.invert(u).concat(l/s.k),c.invert(u).concat(l/c.k));return function(t){if(1===t)t=c;else{var e=h(t),n=l/e[2];t=new eL(n,u[0]-e[0]*n,u[1]-e[1]*n)}o.zoom(null,t)}})}function _(t,e,n){return!n&&t.__zooming||new b(t,e)}function b(t,e){this.that=t,this.args=e,this.active=0,this.sourceEvent=null,this.extent=i.apply(t,e),this.taps=0}function M(t,...e){if(r.apply(this,arguments)){var n=_(this,e).event(t),i=this.__zoom,u=Math.max(l[0],Math.min(l[1],i.k*Math.pow(2,a.apply(this,arguments)))),c=tr(t);if(n.wheel)(n.mouse[0][0]!==c[0]||n.mouse[0][1]!==c[1])&&(n.mouse[1]=i.invert(n.mouse[0]=c)),clearTimeout(n.wheel);else{if(i.k===u)return;n.mouse=[c,i.invert(c)],tX(this),n.start()}eD(t),n.wheel=setTimeout(function(){n.wheel=null,n.end()},150),n.zoom("mouse",o(v(g(i,u),n.mouse[0],n.mouse[1]),n.extent,s))}}function E(t,...e){if(!n&&r.apply(this,arguments)){var i=t.currentTarget,a=_(this,e,!0).event(t),u=tn(t.view).on("mousemove.zoom",function(t){if(eD(t),!a.moved){var e=t.clientX-c,n=t.clientY-f;a.moved=e*e+n*n>p}a.event(t).zoom("mouse",o(v(a.that.__zoom,a.mouse[0]=tr(t,i),a.mouse[1]),a.extent,s))},!0).on("mouseup.zoom",function(t){u.on("mousemove.zoom mouseup.zoom",null),ts(t.view,a.moved),eD(t),a.event(t).end()},!0),l=tr(t,i),c=t.clientX,f=t.clientY;tl(t.view),eV(t),a.mouse=[l,this.__zoom.invert(l)],tX(this),a.start()}}function k(t,...e){if(r.apply(this,arguments)){var n=this.__zoom,a=tr(t.changedTouches?t.changedTouches[0]:t,this),u=n.invert(a),l=n.k*(t.shiftKey?.5:2),f=o(v(g(n,l),a,u),i.apply(this,e),s);eD(t),c>0?tn(this).transition().duration(c).call(w,f,a,t):tn(this).call(m.transform,f,a,t)}}function A(n,...i){if(r.apply(this,arguments)){var o,a,u,l,s=n.touches,c=s.length,f=_(this,i,n.changedTouches.length===c).event(n);for(eV(n),a=0;a<c;++a)l=[l=tr(u=s[a],this),this.__zoom.invert(l),u.identifier],f.touch0?f.touch1||f.touch0[2]===l[2]||(f.touch1=l,f.taps=0):(f.touch0=l,o=!0,f.taps=1+!!t);t&&(t=clearTimeout(t)),o&&(f.taps<2&&(e=l[0],t=setTimeout(function(){t=null},500)),tX(this),f.start())}}function $(t,...e){if(this.__zooming){var n,r,i,a,u=_(this,e).event(t),l=t.changedTouches,c=l.length;for(eD(t),n=0;n<c;++n)i=tr(r=l[n],this),u.touch0&&u.touch0[2]===r.identifier?u.touch0[0]=i:u.touch1&&u.touch1[2]===r.identifier&&(u.touch1[0]=i);if(r=u.that.__zoom,u.touch1){var f=u.touch0[0],h=u.touch0[1],d=u.touch1[0],p=u.touch1[1],y=(y=d[0]-f[0])*y+(y=d[1]-f[1])*y,m=(m=p[0]-h[0])*m+(m=p[1]-h[1])*m;r=g(r,Math.sqrt(y/m)),i=[(f[0]+d[0])/2,(f[1]+d[1])/2],a=[(h[0]+p[0])/2,(h[1]+p[1])/2]}else{if(!u.touch0)return;i=u.touch0[0],a=u.touch0[1]}u.zoom("touch",o(v(r,i,a),u.extent,s))}}function z(t,...r){if(this.__zooming){var i,o,a=_(this,r).event(t),u=t.changedTouches,l=u.length;for(eV(t),n&&clearTimeout(n),n=setTimeout(function(){n=null},500),i=0;i<l;++i)o=u[i],a.touch0&&a.touch0[2]===o.identifier?delete a.touch0:a.touch1&&a.touch1[2]===o.identifier&&delete a.touch1;if(a.touch1&&!a.touch0&&(a.touch0=a.touch1,delete a.touch1),a.touch0)a.touch0[1]=this.__zoom.invert(a.touch0[0]);else if(a.end(),2===a.taps&&(o=tr(o,this),Math.hypot(e[0]-o[0],e[1]-o[1])<y)){var s=tn(this).on("dblclick.zoom");s&&s.apply(this,arguments)}}}return m.transform=function(t,e,n,r){var i=t.selection?t.selection():t;i.property("__zoom",ej),t!==i?w(t,e,n,r):i.interrupt().each(function(){_(this,arguments).event(r).start().zoom(null,"function"==typeof e?e.apply(this,arguments):e).end()})},m.scaleBy=function(t,e,n,r){m.scaleTo(t,function(){var t=this.__zoom.k,n="function"==typeof e?e.apply(this,arguments):e;return t*n},n,r)},m.scaleTo=function(t,e,n,r){m.transform(t,function(){var t=i.apply(this,arguments),r=this.__zoom,a=null==n?x(t):"function"==typeof n?n.apply(this,arguments):n,u=r.invert(a),l="function"==typeof e?e.apply(this,arguments):e;return o(v(g(r,l),a,u),t,s)},n,r)},m.translateBy=function(t,e,n,r){m.transform(t,function(){return o(this.__zoom.translate("function"==typeof e?e.apply(this,arguments):e,"function"==typeof n?n.apply(this,arguments):n),i.apply(this,arguments),s)},null,r)},m.translateTo=function(t,e,n,r,a){m.transform(t,function(){var t=i.apply(this,arguments),a=this.__zoom,u=null==r?x(t):"function"==typeof r?r.apply(this,arguments):r;return o(eO.translate(u[0],u[1]).scale(a.k).translate("function"==typeof e?-e.apply(this,arguments):-e,"function"==typeof n?-n.apply(this,arguments):-n),t,s)},r,a)},b.prototype={event:function(t){return t&&(this.sourceEvent=t),this},start:function(){return 1==++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(t,e){return this.mouse&&"mouse"!==t&&(this.mouse[1]=e.invert(this.mouse[0])),this.touch0&&"touch"!==t&&(this.touch0[1]=e.invert(this.touch0[0])),this.touch1&&"touch"!==t&&(this.touch1[1]=e.invert(this.touch1[0])),this.that.__zoom=e,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(t){var e=tn(this.that).datum();d.call(t,this.that,new eB(t,{sourceEvent:this.sourceEvent,target:m,type:t,transform:this.that.__zoom,dispatch:d}),e)}},m.wheelDelta=function(t){return arguments.length?(a="function"==typeof t?t:eI(+t),m):a},m.filter=function(t){return arguments.length?(r="function"==typeof t?t:eI(!!t),m):r},m.touchable=function(t){return arguments.length?(u="function"==typeof t?t:eI(!!t),m):u},m.extent=function(t){return arguments.length?(i="function"==typeof t?t:eI([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),m):i},m.scaleExtent=function(t){return arguments.length?(l[0]=+t[0],l[1]=+t[1],m):[l[0],l[1]]},m.translateExtent=function(t){return arguments.length?(s[0][0]=+t[0][0],s[1][0]=+t[1][0],s[0][1]=+t[0][1],s[1][1]=+t[1][1],m):[[s[0][0],s[0][1]],[s[1][0],s[1][1]]]},m.constrain=function(t){return arguments.length?(o=t,m):o},m.duration=function(t){return arguments.length?(c=+t,m):c},m.interpolate=function(t){return arguments.length?(f=t,m):f},m.on=function(){var t=d.on.apply(d,arguments);return t===d?m:t},m.clickDistance=function(t){return arguments.length?(p=(t*=1)*t,m):Math.sqrt(p)},m.tapDistance=function(t){return arguments.length?(y=+t,m):y},m}function eW(t,e){var n,r,i=typeof e;return null==e||"boolean"===i?ew(e):("number"===i?tj:"string"===i?(r=er(e))?(e=r,eb):eA:e instanceof er?eb:e instanceof Date?function(t,e){var n=new Date;return t*=1,e*=1,function(r){return n.setTime(t*(1-r)+e*r),n}}:!ArrayBuffer.isView(n=e)||n instanceof DataView?Array.isArray(e)?function(t,e){var n,r=e?e.length:0,i=t?Math.min(r,t.length):0,o=Array(i),a=Array(r);for(n=0;n<i;++n)o[n]=eW(t[n],e[n]);for(;n<r;++n)a[n]=e[n];return function(t){for(n=0;n<i;++n)a[n]=o[n](t);return a}}:"function"!=typeof e.valueOf&&"function"!=typeof e.toString||isNaN(e)?function(t,e){var n,r={},i={};for(n in(null===t||"object"!=typeof t)&&(t={}),(null===e||"object"!=typeof e)&&(e={}),e)n in t?r[n]=eW(t[n],e[n]):i[n]=e[n];return function(t){for(n in r)i[n]=r[n](t);return i}}:tj:function(t,e){e||(e=[]);var n,r=t?Math.min(e.length,t.length):0,i=e.slice();return function(o){for(n=0;n<r;++n)i[n]=t[n]*(1-o)+e[n]*o;return i}})(t,e)}eC.prototype=eL.prototype;let eU={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.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:t=>`Node type "${t}" not found. Using fallback type "default".`,error004:()=>"The React Flow 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:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,{id:e,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${t} handle id: "${"source"===t?n:r}", edge id: ${e}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(t="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${t}/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."},eZ=[[-1/0,-1/0],[1/0,1/0]],eQ=["Enter"," ","Escape"],eG={"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:t,x:e,y:n})=>`Moved selected node ${t}. New position, x: ${e}, y: ${n}`,"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"};!function(t){t.Strict="strict",t.Loose="loose"}(i||(i={})),function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"}(o||(o={})),function(t){t.Partial="partial",t.Full="full"}(a||(a={}));let eJ={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null};!function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"}(u||(u={})),function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"}(l||(l={})),function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"}(s||(s={}));let e0={[s.Left]:s.Right,[s.Right]:s.Left,[s.Top]:s.Bottom,[s.Bottom]:s.Top};function e1(t){return null===t?null:t?"valid":"invalid"}let e2=t=>"id"in t&&"source"in t&&"target"in t,e5=t=>"id"in t&&"position"in t&&!("source"in t)&&!("target"in t),e8=t=>"id"in t&&"internals"in t&&!("source"in t)&&!("target"in t),e3=(t,e=[0,0])=>{let{width:n,height:r}=nE(t),i=t.origin??e,o=n*i[0],a=r*i[1];return{x:t.position.x-o,y:t.position.y-a}},e4=(t,e={nodeOrigin:[0,0]})=>0===t.length?{x:0,y:0,width:0,height:0}:ns(t.reduce((t,n)=>{let r="string"==typeof n,i=e.nodeLookup||r?void 0:n;return e.nodeLookup&&(i=r?e.nodeLookup.get(n):e8(n)?n:e.nodeLookup.get(n.id)),nu(t,i?nf(i,e.nodeOrigin):{x:0,y:0,x2:0,y2:0})},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),e6=(t,e={})=>{if(0===t.size)return{x:0,y:0,width:0,height:0};let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0};return t.forEach(t=>{if(void 0===e.filter||e.filter(t)){let e=nf(t);n=nu(n,e)}}),ns(n)},e9=(t,e,[n,r,i]=[0,0,1],o=!1,a=!1)=>{let u={...nv(e,[n,r,i]),width:e.width/i,height:e.height/i},l=[];for(let e of t.values()){let{measured:t,selectable:n=!0,hidden:r=!1}=e;if(a&&!n||r)continue;let i=t.width??e.width??e.initialWidth??null,s=t.height??e.height??e.initialHeight??null,c=nd(u,nc(e)),f=(i??0)*(s??0),h=o&&c>0;(!e.internals.handleBounds||h||c>=f||e.dragging)&&l.push(e)}return l};async function e7({nodes:t,width:e,height:n,panZoom:r,minZoom:i,maxZoom:o},a){if(0===t.size)return Promise.resolve(!0);let u=n_(e6(function(t,e){let n=new Map,r=e?.nodes?new Set(e.nodes.map(t=>t.id)):null;return t.forEach(t=>{t.measured.width&&t.measured.height&&(e?.includeHiddenNodes||!t.hidden)&&(!r||r.has(t.id))&&n.set(t.id,t)}),n}(t,a)),e,n,a?.minZoom??i,a?.maxZoom??o,a?.padding??.1);return await r.setViewport(u,{duration:a?.duration,ease:a?.ease,interpolate:a?.interpolate}),Promise.resolve(!0)}function nt({nodeId:t,nextPosition:e,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:i,onError:o}){let a=n.get(t),u=a.parentId?n.get(a.parentId):void 0,{x:l,y:s}=u?u.internals.positionAbsolute:{x:0,y:0},c=a.origin??r,f=a.extent||i;if("parent"!==a.extent||a.expandParent)u&&nM(a.extent)&&(f=[[a.extent[0][0]+l,a.extent[0][1]+s],[a.extent[1][0]+l,a.extent[1][1]+s]]);else if(u){let t=u.measured.width,e=u.measured.height;t&&e&&(f=[[l,s],[l+t,s+e]])}else o?.("005",eU.error005());let h=nM(f)?nr(e,f,a.measured):e;return(void 0===a.measured.width||void 0===a.measured.height)&&o?.("015",eU.error015()),{position:{x:h.x-l+(a.measured.width??0)*c[0],y:h.y-s+(a.measured.height??0)*c[1]},positionAbsolute:h}}async function ne({nodesToRemove:t=[],edgesToRemove:e=[],nodes:n,edges:r,onBeforeDelete:i}){let o=new Set(t.map(t=>t.id)),a=[];for(let t of n){if(!1===t.deletable)continue;let e=o.has(t.id),n=!e&&t.parentId&&a.find(e=>e.id===t.parentId);(e||n)&&a.push(t)}let u=new Set(e.map(t=>t.id)),l=r.filter(t=>!1!==t.deletable),s=((t,e)=>{let n=new Set;return t.forEach(t=>{n.add(t.id)}),e.filter(t=>n.has(t.source)||n.has(t.target))})(a,l);for(let t of l)u.has(t.id)&&!s.find(e=>e.id===t.id)&&s.push(t);if(!i)return{edges:s,nodes:a};let c=await i({nodes:a,edges:s});return"boolean"==typeof c?c?{edges:s,nodes:a}:{edges:[],nodes:[]}:c}let nn=(t,e=0,n=1)=>Math.min(Math.max(t,e),n),nr=(t={x:0,y:0},e,n)=>({x:nn(t.x,e[0][0],e[1][0]-(n?.width??0)),y:nn(t.y,e[0][1],e[1][1]-(n?.height??0))});function ni(t,e,n){let{width:r,height:i}=nE(n),{x:o,y:a}=n.internals.positionAbsolute;return nr(t,[[o,a],[o+r,a+i]],e)}let no=(t,e,n)=>t<e?nn(Math.abs(t-e),1,e)/e:t>n?-nn(Math.abs(t-n),1,e)/e:0,na=(t,e,n=15,r=40)=>[no(t.x,r,e.width-r)*n,no(t.y,r,e.height-r)*n],nu=(t,e)=>({x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x2,e.x2),y2:Math.max(t.y2,e.y2)}),nl=({x:t,y:e,width:n,height:r})=>({x:t,y:e,x2:t+n,y2:e+r}),ns=({x:t,y:e,x2:n,y2:r})=>({x:t,y:e,width:n-t,height:r-e}),nc=(t,e=[0,0])=>{let{x:n,y:r}=e8(t)?t.internals.positionAbsolute:e3(t,e);return{x:n,y:r,width:t.measured?.width??t.width??t.initialWidth??0,height:t.measured?.height??t.height??t.initialHeight??0}},nf=(t,e=[0,0])=>{let{x:n,y:r}=e8(t)?t.internals.positionAbsolute:e3(t,e);return{x:n,y:r,x2:n+(t.measured?.width??t.width??t.initialWidth??0),y2:r+(t.measured?.height??t.height??t.initialHeight??0)}},nh=(t,e)=>ns(nu(nl(t),nl(e))),nd=(t,e)=>Math.ceil(Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x))*Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y))),np=t=>ny(t.width)&&ny(t.height)&&ny(t.x)&&ny(t.y),ny=t=>!isNaN(t)&&isFinite(t),nm=(t,e)=>{},ng=(t,e=[1,1])=>({x:e[0]*Math.round(t.x/e[0]),y:e[1]*Math.round(t.y/e[1])}),nv=({x:t,y:e},[n,r,i],o=!1,a=[1,1])=>{let u={x:(t-n)/i,y:(e-r)/i};return o?ng(u,a):u},nx=({x:t,y:e},[n,r,i])=>({x:t*i+n,y:e*i+r});function nw(t,e){if("number"==typeof t)return Math.floor((e-e/(1+t))*.5);if("string"==typeof t&&t.endsWith("px")){let e=parseFloat(t);if(!Number.isNaN(e))return Math.floor(e)}if("string"==typeof t&&t.endsWith("%")){let n=parseFloat(t);if(!Number.isNaN(n))return Math.floor(e*n*.01)}return console.error(`[React Flow] The padding value "${t}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}let n_=(t,e,n,r,i,o)=>{let a=function(t,e,n){if("string"==typeof t||"number"==typeof t){let r=nw(t,n),i=nw(t,e);return{top:r,right:i,bottom:r,left:i,x:2*i,y:2*r}}if("object"==typeof t){let r=nw(t.top??t.y??0,n),i=nw(t.bottom??t.y??0,n),o=nw(t.left??t.x??0,e),a=nw(t.right??t.x??0,e);return{top:r,right:a,bottom:i,left:o,x:o+a,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}(o,e,n),u=nn(Math.min((e-a.x)/t.width,(n-a.y)/t.height),r,i),l=t.x+t.width/2,s=t.y+t.height/2,c=e/2-l*u,f=n/2-s*u,h=function(t,e,n,r,i,o){let{x:a,y:u}=nx(t,[e,n,r]),{x:l,y:s}=nx({x:t.x+t.width,y:t.y+t.height},[e,n,r]);return{left:Math.floor(a),top:Math.floor(u),right:Math.floor(i-l),bottom:Math.floor(o-s)}}(t,c,f,u,e,n),d={left:Math.min(h.left-a.left,0),top:Math.min(h.top-a.top,0),right:Math.min(h.right-a.right,0),bottom:Math.min(h.bottom-a.bottom,0)};return{x:c-d.left+d.right,y:f-d.top+d.bottom,zoom:u}},nb=()=>"undefined"!=typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0;function nM(t){return null!=t&&"parent"!==t}function nE(t){return{width:t.measured?.width??t.width??t.initialWidth??0,height:t.measured?.height??t.height??t.initialHeight??0}}function nk(t){return(t.measured?.width??t.width??t.initialWidth)!==void 0&&(t.measured?.height??t.height??t.initialHeight)!==void 0}function nA(t,e={width:0,height:0},n,r,i){let o={...t},a=r.get(n);if(a){let t=a.origin||i;o.x+=a.internals.positionAbsolute.x-(e.width??0)*t[0],o.y+=a.internals.positionAbsolute.y-(e.height??0)*t[1]}return o}function n$(t,e){if(t.size!==e.size)return!1;for(let n of t)if(!e.has(n))return!1;return!0}function nz(){let t,e;return{promise:new Promise((n,r)=>{t=n,e=r}),resolve:t,reject:e}}function nS(t){return{...eG,...t||{}}}function nN(t,{snapGrid:e=[0,0],snapToGrid:n=!1,transform:r,containerBounds:i}){let{x:o,y:a}=nL(t),u=nv({x:o-(i?.left??0),y:a-(i?.top??0)},r),{x:l,y:s}=n?ng(u,e):u;return{xSnapped:l,ySnapped:s,...u}}let nT=t=>({width:t.offsetWidth,height:t.offsetHeight}),nP=t=>t?.getRootNode?.()||window?.document,nH=["INPUT","SELECT","TEXTAREA"];function nI(t){let e=t.composedPath?.()?.[0]||t.target;return e?.nodeType===1&&(nH.includes(e.nodeName)||e.hasAttribute("contenteditable")||!!e.closest(".nokey"))}let nB=t=>"clientX"in t,nL=(t,e)=>{let n=nB(t),r=n?t.clientX:t.touches?.[0].clientX,i=n?t.clientY:t.touches?.[0].clientY;return{x:r-(e?.left??0),y:i-(e?.top??0)}},nO=(t,e,n,r,i)=>{let o=e.querySelectorAll(`.${t}`);return o&&o.length?Array.from(o).map(e=>{let o=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),type:t,nodeId:i,position:e.getAttribute("data-handlepos"),x:(o.left-n.left)/r,y:(o.top-n.top)/r,...nT(e)}}):null};function nC({sourceX:t,sourceY:e,targetX:n,targetY:r,sourceControlX:i,sourceControlY:o,targetControlX:a,targetControlY:u}){let l=.125*t+.375*i+.375*a+.125*n,s=.125*e+.375*o+.375*u+.125*r,c=Math.abs(l-t),f=Math.abs(s-e);return[l,s,c,f]}function nV(t,e){return t>=0?.5*t:25*e*Math.sqrt(-t)}function nD({pos:t,x1:e,y1:n,x2:r,y2:i,c:o}){switch(t){case s.Left:return[e-nV(e-r,o),n];case s.Right:return[e+nV(r-e,o),n];case s.Top:return[e,n-nV(n-i,o)];case s.Bottom:return[e,n+nV(i-n,o)]}}function nR({sourceX:t,sourceY:e,sourcePosition:n=s.Bottom,targetX:r,targetY:i,targetPosition:o=s.Top,curvature:a=.25}){let[u,l]=nD({pos:n,x1:t,y1:e,x2:r,y2:i,c:a}),[c,f]=nD({pos:o,x1:r,y1:i,x2:t,y2:e,c:a}),[h,d,p,y]=nC({sourceX:t,sourceY:e,targetX:r,targetY:i,sourceControlX:u,sourceControlY:l,targetControlX:c,targetControlY:f});return[`M${t},${e} C${u},${l} ${c},${f} ${r},${i}`,h,d,p,y]}function nX({sourceX:t,sourceY:e,targetX:n,targetY:r}){let i=Math.abs(n-t)/2,o=Math.abs(r-e)/2;return[n<t?n+i:n-i,r<e?r+o:r-o,i,o]}function nj({sourceNode:t,targetNode:e,selected:n=!1,zIndex:r,elevateOnSelect:i=!1}){return void 0!==r?r:(i&&n?1e3:0)+Math.max(t.parentId?t.internals.z:0,e.parentId?e.internals.z:0)}function nq({sourceNode:t,targetNode:e,width:n,height:r,transform:i}){let o=nu(nf(t),nf(e));return o.x===o.x2&&(o.x2+=1),o.y===o.y2&&(o.y2+=1),nd({x:-i[0]/i[2],y:-i[1]/i[2],width:n/i[2],height:r/i[2]},ns(o))>0}let nY=(t,e)=>{let n;return t.source&&t.target?((t,e)=>e.some(e=>e.source===t.source&&e.target===t.target&&(e.sourceHandle===t.sourceHandle||!e.sourceHandle&&!t.sourceHandle)&&(e.targetHandle===t.targetHandle||!e.targetHandle&&!t.targetHandle)))(n=e2(t)?{...t}:{...t,id:(({source:t,sourceHandle:e,target:n,targetHandle:r})=>`xy-edge__${t}${e||""}-${n}${r||""}`)(t)},e)?e:(null===n.sourceHandle&&delete n.sourceHandle,null===n.targetHandle&&delete n.targetHandle,e.concat(n)):(nm("006",eU.error006()),e)};function nF({sourceX:t,sourceY:e,targetX:n,targetY:r}){let[i,o,a,u]=nX({sourceX:t,sourceY:e,targetX:n,targetY:r});return[`M ${t},${e}L ${n},${r}`,i,o,a,u]}let nK={[s.Left]:{x:-1,y:0},[s.Right]:{x:1,y:0},[s.Top]:{x:0,y:-1},[s.Bottom]:{x:0,y:1}},nW=({source:t,sourcePosition:e=s.Bottom,target:n})=>e===s.Left||e===s.Right?t.x<n.x?{x:1,y:0}:{x:-1,y:0}:t.y<n.y?{x:0,y:1}:{x:0,y:-1},nU=(t,e)=>Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2));function nZ({sourceX:t,sourceY:e,sourcePosition:n=s.Bottom,targetX:r,targetY:i,targetPosition:o=s.Top,borderRadius:a=5,centerX:u,centerY:l,offset:c=20,stepPosition:f=.5}){let[h,d,p,y,m]=function({source:t,sourcePosition:e=s.Bottom,target:n,targetPosition:r=s.Top,center:i,offset:o,stepPosition:a}){let u,l,c=nK[e],f=nK[r],h={x:t.x+c.x*o,y:t.y+c.y*o},d={x:n.x+f.x*o,y:n.y+f.y*o},p=nW({source:h,sourcePosition:e,target:d}),y=0!==p.x?"x":"y",m=p[y],g=[],v={x:0,y:0},x={x:0,y:0},[,,w,_]=nX({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(c[y]*f[y]==-1){"x"===y?(u=i.x??h.x+(d.x-h.x)*a,l=i.y??(h.y+d.y)/2):(u=i.x??(h.x+d.x)/2,l=i.y??h.y+(d.y-h.y)*a);let t=[{x:u,y:h.y},{x:u,y:d.y}],e=[{x:h.x,y:l},{x:d.x,y:l}];g=c[y]===m?"x"===y?t:e:"x"===y?e:t}else{let i=[{x:h.x,y:d.y}],a=[{x:d.x,y:h.y}];if(g="x"===y?c.x===m?a:i:c.y===m?i:a,e===r){let e=Math.abs(t[y]-n[y]);if(e<=o){let r=Math.min(o-1,o-e);c[y]===m?v[y]=(h[y]>t[y]?-1:1)*r:x[y]=(d[y]>n[y]?-1:1)*r}}if(e!==r){let t="x"===y?"y":"x",e=c[y]===f[t],n=h[t]>d[t],r=h[t]<d[t];(1===c[y]&&(!e&&n||e&&r)||1!==c[y]&&(!e&&r||e&&n))&&(g="x"===y?i:a)}let s={x:h.x+v.x,y:h.y+v.y},p={x:d.x+x.x,y:d.y+x.y};Math.max(Math.abs(s.x-g[0].x),Math.abs(p.x-g[0].x))>=Math.max(Math.abs(s.y-g[0].y),Math.abs(p.y-g[0].y))?(u=(s.x+p.x)/2,l=g[0].y):(u=g[0].x,l=(s.y+p.y)/2)}return[[t,{x:h.x+v.x,y:h.y+v.y},...g,{x:d.x+x.x,y:d.y+x.y},n],u,l,w,_]}({source:{x:t,y:e},sourcePosition:n,target:{x:r,y:i},targetPosition:o,center:{x:u,y:l},offset:c,stepPosition:f});return[h.reduce((t,e,n)=>t+(n>0&&n<h.length-1?function(t,e,n,r){let i=Math.min(nU(t,e)/2,nU(e,n)/2,r),{x:o,y:a}=e;if(t.x===o&&o===n.x||t.y===a&&a===n.y)return`L${o} ${a}`;if(t.y===a){let e=t.x<n.x?-1:1,r=t.y<n.y?1:-1;return`L ${o+i*e},${a}Q ${o},${a} ${o},${a+i*r}`}let u=t.x<n.x?1:-1,l=t.y<n.y?-1:1;return`L ${o},${a+i*l}Q ${o},${a} ${o+i*u},${a}`}(h[n-1],e,h[n+1],a):`${0===n?"M":"L"}${e.x} ${e.y}`),""),d,p,y,m]}function nQ(t){return t&&!!(t.internals.handleBounds||t.handles?.length)&&!!(t.measured.width||t.width||t.initialWidth)}function nG(t){let{sourceNode:e,targetNode:n}=t;if(!nQ(e)||!nQ(n))return null;let r=e.internals.handleBounds||nJ(e.handles),o=n.internals.handleBounds||nJ(n.handles),a=n1(r?.source??[],t.sourceHandle),u=n1(t.connectionMode===i.Strict?o?.target??[]:(o?.target??[]).concat(o?.source??[]),t.targetHandle);if(!a||!u)return t.onError?.("008",eU.error008(!a?"source":"target",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;let l=a?.position||s.Bottom,c=u?.position||s.Top,f=n0(e,a,l),h=n0(n,u,c);return{sourceX:f.x,sourceY:f.y,targetX:h.x,targetY:h.y,sourcePosition:l,targetPosition:c}}function nJ(t){if(!t)return null;let e=[],n=[];for(let r of t)r.width=r.width??1,r.height=r.height??1,"source"===r.type?e.push(r):"target"===r.type&&n.push(r);return{source:e,target:n}}function n0(t,e,n=s.Left,r=!1){let i=(e?.x??0)+t.internals.positionAbsolute.x,o=(e?.y??0)+t.internals.positionAbsolute.y,{width:a,height:u}=e??nE(t);if(r)return{x:i+a/2,y:o+u/2};switch(e?.position??n){case s.Top:return{x:i+a/2,y:o};case s.Right:return{x:i+a,y:o+u/2};case s.Bottom:return{x:i+a/2,y:o+u};case s.Left:return{x:i,y:o+u/2}}}function n1(t,e){return t&&(e?t.find(t=>t.id===e):t[0])||null}function n2(t,e){if(!t)return"";if("string"==typeof t)return t;let n=e?`${e}__`:"";return`${n}${Object.keys(t).sort().map(e=>`${e}=${t[e]}`).join("&")}`}function n5(t,{id:e,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:i}){let o=new Set;return t.reduce((t,a)=>([a.markerStart||r,a.markerEnd||i].forEach(r=>{if(r&&"object"==typeof r){let i=n2(r,e);o.has(i)||(t.push({id:i,color:r.color||n,...r}),o.add(i))}}),t),[]).sort((t,e)=>t.id.localeCompare(e.id))}let n8={nodeOrigin:[0,0],nodeExtent:eZ,elevateNodesOnSelect:!0,defaults:{}},n3={...n8,checkEquality:!0};function n4(t,e){let n={...t};for(let t in e)void 0!==e[t]&&(n[t]=e[t]);return n}function n6(t,e,n){let r=n4(n8,n);for(let n of t.values())if(n.parentId)n7(n,t,e,r);else{let t=nr(e3(n,r.nodeOrigin),nM(n.extent)?n.extent:r.nodeExtent,nE(n));n.internals.positionAbsolute=t}}function n9(t,e,n,r){let i=n4(n3,r),o=t.length>0,a=new Map(e),u=1e3*!!i?.elevateNodesOnSelect;for(let l of(e.clear(),n.clear(),t)){let t=a.get(l.id);if(i.checkEquality&&l===t?.internals.userNode)e.set(l.id,t);else{let n=nr(e3(l,i.nodeOrigin),nM(l.extent)?l.extent:i.nodeExtent,nE(l));t={...i.defaults,...l,measured:{width:l.measured?.width,height:l.measured?.height},internals:{positionAbsolute:n,handleBounds:l.measured?t?.internals.handleBounds:void 0,z:rt(l,u),userNode:l}},e.set(l.id,t)}void 0!==t.measured&&void 0!==t.measured.width&&void 0!==t.measured.height||t.hidden||(o=!1),l.parentId&&n7(t,e,n,r)}return o}function n7(t,e,n,r){let{elevateNodesOnSelect:i,nodeOrigin:o,nodeExtent:a}=n4(n8,r),u=t.parentId,l=e.get(u);if(!l)return void console.warn(`Parent node ${u} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);!function(t,e){if(!t.parentId)return;let n=e.get(t.parentId);n?n.set(t.id,t):e.set(t.parentId,new Map([[t.id,t]]))}(t,n);let{x:s,y:c,z:f}=function(t,e,n,r,i){let{x:o,y:a}=e.internals.positionAbsolute,u=nE(t),l=e3(t,n),s=nM(t.extent)?nr(l,t.extent,u):l,c=nr({x:o+s.x,y:a+s.y},r,u);"parent"===t.extent&&(c=ni(c,u,e));let f=rt(t,i),h=e.internals.z??0;return{x:c.x,y:c.y,z:h>=f?h+1:f}}(t,l,o,a,1e3*!!i),{positionAbsolute:h}=t.internals,d=s!==h.x||c!==h.y;(d||f!==t.internals.z)&&e.set(t.id,{...t,internals:{...t.internals,positionAbsolute:d?{x:s,y:c}:h,z:f}})}function rt(t,e){return(ny(t.zIndex)?t.zIndex:0)+(t.selected?e:0)}function re(t,e,n,r=[0,0]){let i=[],o=new Map;for(let n of t){let t=e.get(n.parentId);if(!t)continue;let r=nh(o.get(n.parentId)?.expandedRect??nc(t),n.rect);o.set(n.parentId,{expandedRect:r,parent:t})}return o.size>0&&o.forEach(({expandedRect:e,parent:o},a)=>{let u=o.internals.positionAbsolute,l=nE(o),s=o.origin??r,c=e.x<u.x?Math.round(Math.abs(u.x-e.x)):0,f=e.y<u.y?Math.round(Math.abs(u.y-e.y)):0,h=Math.max(l.width,Math.round(e.width)),d=Math.max(l.height,Math.round(e.height)),p=(h-l.width)*s[0],y=(d-l.height)*s[1];(c>0||f>0||p||y)&&(i.push({id:a,type:"position",position:{x:o.position.x-c+p,y:o.position.y-f+y}}),n.get(a)?.forEach(e=>{t.some(t=>t.id===e.id)||i.push({id:e.id,type:"position",position:{x:e.position.x+c,y:e.position.y+f}})})),(l.width<e.width||l.height<e.height||c||f)&&i.push({id:a,type:"dimensions",setAttributes:!0,dimensions:{width:h+(c?s[0]*c-p:0),height:d+(f?s[1]*f-y:0)}})}),i}function rn(t,e,n,r,i,o){let a=r?.querySelector(".xyflow__viewport"),u=!1;if(!a)return{changes:[],updatedInternals:u};let l=[],s=window.getComputedStyle(a),{m22:c}=new window.DOMMatrixReadOnly(s.transform),f=[];for(let r of t.values()){let t=e.get(r.id);if(!t)continue;if(t.hidden){e.set(t.id,{...t,internals:{...t.internals,handleBounds:void 0}}),u=!0;continue}let a=nT(r.nodeElement),s=t.measured.width!==a.width||t.measured.height!==a.height;if(a.width&&a.height&&(s||!t.internals.handleBounds||r.force)){let h=r.nodeElement.getBoundingClientRect(),d=nM(t.extent)?t.extent:o,{positionAbsolute:p}=t.internals;t.parentId&&"parent"===t.extent?p=ni(p,a,e.get(t.parentId)):d&&(p=nr(p,d,a));let y={...t,measured:a,internals:{...t.internals,positionAbsolute:p,handleBounds:{source:nO("source",r.nodeElement,h,c,t.id),target:nO("target",r.nodeElement,h,c,t.id)}}};e.set(t.id,y),t.parentId&&n7(y,e,n,{nodeOrigin:i}),u=!0,s&&(l.push({id:t.id,type:"dimensions",dimensions:a}),t.expandParent&&t.parentId&&f.push({id:t.id,parentId:t.parentId,rect:nc(y,i)}))}}if(f.length>0){let t=re(f,e,n,i);l.push(...t)}return{changes:l,updatedInternals:u}}async function rr({delta:t,panZoom:e,transform:n,translateExtent:r,width:i,height:o}){if(!e||!t.x&&!t.y)return Promise.resolve(!1);let a=await e.setViewportConstrained({x:n[0]+t.x,y:n[1]+t.y,zoom:n[2]},[[0,0],[i,o]],r);return Promise.resolve(!!a&&(a.x!==n[0]||a.y!==n[1]||a.k!==n[2]))}function ri(t,e,n,r,i,o){let a=i,u=r.get(a)||new Map;r.set(a,u.set(n,e)),a=`${i}-${t}`;let l=r.get(a)||new Map;if(r.set(a,l.set(n,e)),o){a=`${i}-${t}-${o}`;let u=r.get(a)||new Map;r.set(a,u.set(n,e))}}function ro(t,e,n){for(let r of(t.clear(),e.clear(),n)){let{source:n,target:i,sourceHandle:o=null,targetHandle:a=null}=r,u={edgeId:r.id,source:n,target:i,sourceHandle:o,targetHandle:a},l=`${n}-${o}--${i}-${a}`;ri("source",u,`${i}-${a}--${n}-${o}`,t,n,o),ri("target",u,l,t,i,a),e.set(r.id,r)}}function ra(t,e,n){let r=t;do{if(r?.matches?.(e))return!0;if(r===n)break;r=r?.parentElement}while(r);return!1}function ru({nodeId:t,dragItems:e,nodeLookup:n,dragging:r=!0}){let i=[];for(let[t,o]of e){let e=n.get(t)?.internals.userNode;e&&i.push({...e,position:o.position,dragging:r})}if(!t)return[i[0],i];let o=n.get(t)?.internals.userNode;return[o?{...o,position:e.get(t)?.position||o.position,dragging:r}:i[0],i]}function rl({onNodeMouseDown:t,getStoreItems:e,onDragStart:n,onDrag:r,onDragStop:i}){let o={x:null,y:null},a=0,u=new Map,l=!1,s={x:0,y:0},c=null,f=!1,d=null,p=!1,y=!1,m=null;return{update:function({noDragClassName:g,handleSelector:v,domNode:x,isSelectable:w,nodeId:_,nodeClickDistance:b=0}){function M({x:t,y:n}){let{nodeLookup:i,nodeExtent:a,snapGrid:l,snapToGrid:s,nodeOrigin:c,onNodeDrag:f,onSelectionDrag:h,onError:d,updateNodePositions:p}=e();o={x:t,y:n};let g=!1,v=u.size>1,x=v&&a?nl(e6(u)):null,w=v&&s?function({dragItems:t,snapGrid:e,x:n,y:r}){let i=t.values().next().value;if(!i)return null;let o={x:n-i.distance.x,y:r-i.distance.y},a=ng(o,e);return{x:a.x-o.x,y:a.y-o.y}}({dragItems:u,snapGrid:l,x:t,y:n}):null;for(let[e,r]of u){if(!i.has(e))continue;let o={x:t-r.distance.x,y:n-r.distance.y};s&&(o=w?{x:Math.round(o.x+w.x),y:Math.round(o.y+w.y)}:ng(o,l));let u=null;if(v&&a&&!r.extent&&x){let{positionAbsolute:t}=r.internals,e=t.x-x.x+a[0][0],n=t.x+r.measured.width-x.x2+a[1][0];u=[[e,t.y-x.y+a[0][1]],[n,t.y+r.measured.height-x.y2+a[1][1]]]}let{position:f,positionAbsolute:h}=nt({nodeId:e,nextPosition:o,nodeLookup:i,nodeExtent:u||a,nodeOrigin:c,onError:d});g=g||r.position.x!==f.x||r.position.y!==f.y,r.position=f,r.internals.positionAbsolute=h}if(y=y||g,g&&(p(u,!0),m&&(r||f||!_&&h))){let[t,e]=ru({nodeId:_,dragItems:u,nodeLookup:i});r?.(m,u,t,e),f?.(m,t,e),_||h?.(m,e)}}async function E(){if(!c)return;let{transform:t,panBy:n,autoPanSpeed:r,autoPanOnNodeDrag:i}=e();if(!i){l=!1,cancelAnimationFrame(a);return}let[u,f]=na(s,c,r);(0!==u||0!==f)&&(o.x=(o.x??0)-u/t[2],o.y=(o.y??0)-f/t[2],await n({x:u,y:f})&&M(o)),a=requestAnimationFrame(E)}function k(r){let{nodeLookup:i,multiSelectionActive:a,nodesDraggable:l,transform:s,snapGrid:h,snapToGrid:d,selectNodesOnDrag:p,onNodeDragStart:y,onSelectionDragStart:m,unselectNodesAndEdges:g}=e();f=!0,p&&w||a||!_||i.get(_)?.selected||g(),w&&p&&_&&t?.(_);let v=nN(r.sourceEvent,{transform:s,snapGrid:h,snapToGrid:d,containerBounds:c});if(o=v,(u=function(t,e,n,r){let i=new Map;for(let[o,a]of t)if((a.selected||a.id===r)&&(!a.parentId||!function t(e,n){if(!e.parentId)return!1;let r=n.get(e.parentId);return!!r&&(!!r.selected||t(r,n))}(a,t))&&(a.draggable||e&&void 0===a.draggable)){let e=t.get(o);e&&i.set(o,{id:o,position:e.position||{x:0,y:0},distance:{x:n.x-e.internals.positionAbsolute.x,y:n.y-e.internals.positionAbsolute.y},extent:e.extent,parentId:e.parentId,origin:e.origin,expandParent:e.expandParent,internals:{positionAbsolute:e.internals.positionAbsolute||{x:0,y:0}},measured:{width:e.measured.width??0,height:e.measured.height??0}})}return i}(i,l,v,_)).size>0&&(n||y||!_&&m)){let[t,e]=ru({nodeId:_,dragItems:u,nodeLookup:i});n?.(r.sourceEvent,u,t,e),y?.(r.sourceEvent,t,e),_||m?.(r.sourceEvent,e)}}d=tn(x);let A=(function(){var t,e,n,r,i=th,o=td,a=tp,u=ty,l={},s=h("start","drag","end"),c=0,f=0;function d(t){t.on("mousedown.drag",p).filter(u).on("touchstart.drag",g).on("touchmove.drag",v,ti).on("touchend.drag touchcancel.drag",x).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function p(a,u){if(!r&&i.call(this,a,u)){var l=w(this,o.call(this,a,u),a,u,"mouse");l&&(tn(a.view).on("mousemove.drag",y,to).on("mouseup.drag",m,to),tl(a.view),ta(a),n=!1,t=a.clientX,e=a.clientY,l("start",a))}}function y(r){if(tu(r),!n){var i=r.clientX-t,o=r.clientY-e;n=i*i+o*o>f}l.mouse("drag",r)}function m(t){tn(t.view).on("mousemove.drag mouseup.drag",null),ts(t.view,n),tu(t),l.mouse("end",t)}function g(t,e){if(i.call(this,t,e)){var n,r,a=t.changedTouches,u=o.call(this,t,e),l=a.length;for(n=0;n<l;++n)(r=w(this,u,t,e,a[n].identifier,a[n]))&&(ta(t),r("start",t,a[n]))}}function v(t){var e,n,r=t.changedTouches,i=r.length;for(e=0;e<i;++e)(n=l[r[e].identifier])&&(tu(t),n("drag",t,r[e]))}function x(t){var e,n,i=t.changedTouches,o=i.length;for(r&&clearTimeout(r),r=setTimeout(function(){r=null},500),e=0;e<o;++e)(n=l[i[e].identifier])&&(ta(t),n("end",t,i[e]))}function w(t,e,n,r,i,o){var u,f,h,p=s.copy(),y=tr(o||n,e);if(null!=(h=a.call(t,new tf("beforestart",{sourceEvent:n,target:d,identifier:i,active:c,x:y[0],y:y[1],dx:0,dy:0,dispatch:p}),r)))return u=h.x-y[0]||0,f=h.y-y[1]||0,function n(o,a,s){var m,g=y;switch(o){case"start":l[i]=n,m=c++;break;case"end":delete l[i],--c;case"drag":y=tr(s||a,e),m=c}p.call(o,t,new tf(o,{sourceEvent:a,subject:h,target:d,identifier:i,active:m,x:y[0]+u,y:y[1]+f,dx:y[0]-g[0],dy:y[1]-g[1],dispatch:p}),r)}}return d.filter=function(t){return arguments.length?(i="function"==typeof t?t:tc(!!t),d):i},d.container=function(t){return arguments.length?(o="function"==typeof t?t:tc(t),d):o},d.subject=function(t){return arguments.length?(a="function"==typeof t?t:tc(t),d):a},d.touchable=function(t){return arguments.length?(u="function"==typeof t?t:tc(!!t),d):u},d.on=function(){var t=s.on.apply(s,arguments);return t===s?d:t},d.clickDistance=function(t){return arguments.length?(f=(t*=1)*t,d):Math.sqrt(f)},d})().clickDistance(b).on("start",t=>{let{domNode:n,nodeDragThreshold:r,transform:i,snapGrid:a,snapToGrid:u}=e();c=n?.getBoundingClientRect()||null,p=!1,y=!1,m=t.sourceEvent,0===r&&k(t),o=nN(t.sourceEvent,{transform:i,snapGrid:a,snapToGrid:u,containerBounds:c}),s=nL(t.sourceEvent,c)}).on("drag",t=>{let{autoPanOnNodeDrag:n,transform:r,snapGrid:i,snapToGrid:a,nodeDragThreshold:h,nodeLookup:d}=e(),y=nN(t.sourceEvent,{transform:r,snapGrid:i,snapToGrid:a,containerBounds:c});if(m=t.sourceEvent,("touchmove"===t.sourceEvent.type&&t.sourceEvent.touches.length>1||_&&!d.has(_))&&(p=!0),!p){if(!l&&n&&f&&(l=!0,E()),!f){let e=y.xSnapped-(o.x??0),n=y.ySnapped-(o.y??0);Math.sqrt(e*e+n*n)>h&&k(t)}(o.x!==y.xSnapped||o.y!==y.ySnapped)&&u&&f&&(s=nL(t.sourceEvent,c),M(y))}}).on("end",t=>{if(f&&!p&&(l=!1,f=!1,cancelAnimationFrame(a),u.size>0)){let{nodeLookup:n,updateNodePositions:r,onNodeDragStop:o,onSelectionDragStop:a}=e();if(y&&(r(u,!1),y=!1),i||o||!_&&a){let[e,r]=ru({nodeId:_,dragItems:u,nodeLookup:n,dragging:!1});i?.(t.sourceEvent,u,e,r),o?.(t.sourceEvent,e,r),_||a?.(t.sourceEvent,r)}}}).filter(t=>{let e=t.target;return!t.button&&(!g||!ra(e,`.${g}`,x))&&(!v||ra(e,v,x))});d.call(A)},destroy:function(){d?.on(".drag",null)}}}function rs(t,e,n,r,i,o=!1){let a=r.get(t);if(!a)return null;let u="strict"===i?a.internals.handleBounds?.[e]:[...a.internals.handleBounds?.source??[],...a.internals.handleBounds?.target??[]],l=(n?u?.find(t=>t.id===n):u?.[0])??null;return l&&o?{...l,...n0(a,l,l.position,!0)}:l}function rc(t,e){return t?t:e?.classList.contains("target")?"target":e?.classList.contains("source")?"source":null}let rf=()=>!0;function rh(t,{handle:e,connectionMode:n,fromNodeId:r,fromHandleId:o,fromType:a,doc:u,lib:l,flowId:s,isValidConnection:c=rf,nodeLookup:f}){let h="target"===a,d=e?u.querySelector(`.${l}-flow__handle[data-id="${s}-${e?.nodeId}-${e?.id}-${e?.type}"]`):null,{x:p,y}=nL(t),m=u.elementFromPoint(p,y),g=m?.classList.contains(`${l}-flow__handle`)?m:d,v={handleDomNode:g,isValid:!1,connection:null,toHandle:null};if(g){let t=rc(void 0,g),e=g.getAttribute("data-nodeid"),a=g.getAttribute("data-handleid"),u=g.classList.contains("connectable"),l=g.classList.contains("connectableend");if(!e||!t)return v;let s={source:h?e:r,sourceHandle:h?a:o,target:h?r:e,targetHandle:h?o:a};v.connection=s,v.isValid=u&&l&&(n===i.Strict?h&&"source"===t||!h&&"target"===t:e!==r||a!==o)&&c(s),v.toHandle=rs(e,t,a,f,n,!0)}return v}let rd={onPointerDown:function(t,{connectionMode:e,connectionRadius:n,handleId:r,nodeId:i,edgeUpdaterType:o,isTarget:a,domNode:u,nodeLookup:l,lib:c,autoPanOnConnect:f,flowId:h,panBy:d,cancelConnection:p,onConnectStart:y,onConnect:m,onConnectEnd:g,isValidConnection:v=rf,onReconnectEnd:x,updateConnection:w,getTransform:_,getFromHandle:b,autoPanSpeed:M,dragThreshold:E=1,handleDomNode:k}){let A,$=nP(t.target),z=0,{x:S,y:N}=nL(t),T=rc(o,k),P=u?.getBoundingClientRect(),H=!1;if(!P||!T)return;let I=rs(i,T,r,l,e);if(!I)return;let B=nL(t,P),L=!1,O=null,C=!1,V=null,D={...I,nodeId:i,type:T,position:I.position},R=l.get(i),X={inProgress:!0,isValid:null,from:n0(R,D,s.Left,!0),fromHandle:D,fromPosition:D.position,fromNode:R,to:B,toHandle:null,toPosition:e0[D.position],toNode:null};function j(){H=!0,w(X),y?.(t,{nodeId:i,handleId:r,handleType:T})}function q(t){var o,u;let s;if(!H){let{x:e,y:n}=nL(t),r=e-S,i=n-N;if(!(r*r+i*i>E*E))return;j()}if(!b()||!D)return void Y(t);let p=_();A=function(t,e,n,r){let i=[],o=1/0;for(let a of function(t,e,n){let r=[],i={x:t.x-n,y:t.y-n,width:2*n,height:2*n};for(let t of e.values())nd(i,nc(t))>0&&r.push(t);return r}(t,n,e+250))for(let n of[...a.internals.handleBounds?.source??[],...a.internals.handleBounds?.target??[]]){if(r.nodeId===n.nodeId&&r.type===n.type&&r.id===n.id)continue;let{x:u,y:l}=n0(a,n,n.position,!0),s=Math.sqrt(Math.pow(u-t.x,2)+Math.pow(l-t.y,2));s>e||(s<o?(i=[{...n,x:u,y:l}],o=s):s===o&&i.push({...n,x:u,y:l}))}if(!i.length)return null;if(i.length>1){let t="source"===r.type?"target":"source";return i.find(e=>e.type===t)??i[0]}return i[0]}(nv(B=nL(t,P),p,!1,[1,1]),n,l,D),L||(!function t(){if(!f||!P)return;let[e,n]=na(B,P,M);d({x:e,y:n}),z=requestAnimationFrame(t)}(),L=!0);let y=rh(t,{handle:A,connectionMode:e,fromNodeId:i,fromHandleId:r,fromType:a?"target":"source",isValidConnection:v,doc:$,lib:c,flowId:h,nodeLookup:l});V=y.handleDomNode,O=y.connection,o=!!A,u=y.isValid,s=null,u?s=!0:o&&!u&&(s=!1),C=s;let m={...X,isValid:C,to:y.toHandle&&C?nx({x:y.toHandle.x,y:y.toHandle.y},p):B,toHandle:y.toHandle,toPosition:C&&y.toHandle?y.toHandle.position:e0[D.position],toNode:y.toHandle?l.get(y.toHandle.nodeId):null};C&&A&&X.toHandle&&m.toHandle&&X.toHandle.type===m.toHandle.type&&X.toHandle.nodeId===m.toHandle.nodeId&&X.toHandle.id===m.toHandle.id&&X.to.x===m.to.x&&X.to.y===m.to.y||(w(m),X=m)}function Y(t){if(H){(A||V)&&O&&C&&m?.(O);let{inProgress:e,...n}=X,r={...n,toPosition:X.toHandle?X.toPosition:null};g?.(t,r),o&&x?.(t,r)}p(),cancelAnimationFrame(z),L=!1,C=!1,O=null,V=null,$.removeEventListener("mousemove",q),$.removeEventListener("mouseup",Y),$.removeEventListener("touchmove",q),$.removeEventListener("touchend",Y)}0===E&&j(),$.addEventListener("mousemove",q),$.addEventListener("mouseup",Y),$.addEventListener("touchmove",q),$.addEventListener("touchend",Y)},isValid:rh};function rp({domNode:t,panZoom:e,getTransform:n,getViewScale:r}){let i=tn(t);return{update:function({translateExtent:t,width:o,height:a,zoomStep:u=1,pannable:l=!0,zoomable:s=!0,inversePan:c=!1}){let f=[0,0],h=eK().on("start",t=>{("mousedown"===t.sourceEvent.type||"touchstart"===t.sourceEvent.type)&&(f=[t.sourceEvent.clientX??t.sourceEvent.touches[0].clientX,t.sourceEvent.clientY??t.sourceEvent.touches[0].clientY])}).on("zoom",l?i=>{let u=n();if("mousemove"!==i.sourceEvent.type&&"touchmove"!==i.sourceEvent.type||!e)return;let l=[i.sourceEvent.clientX??i.sourceEvent.touches[0].clientX,i.sourceEvent.clientY??i.sourceEvent.touches[0].clientY],s=[l[0]-f[0],l[1]-f[1]];f=l;let h=r()*Math.max(u[2],Math.log(u[2]))*(c?-1:1),d={x:u[0]-s[0]*h,y:u[1]-s[1]*h};e.setViewportConstrained({x:d.x,y:d.y,zoom:u[2]},[[0,0],[o,a]],t)}:null).on("zoom.wheel",s?t=>{if("wheel"!==t.sourceEvent.type||!e)return;let r=n(),i=t.sourceEvent.ctrlKey&&nb()?10:1,o=-t.sourceEvent.deltaY*(1===t.sourceEvent.deltaMode?.05:t.sourceEvent.deltaMode?1:.002)*u,a=r[2]*Math.pow(2,o*i);e.scaleTo(a)}:null);i.call(h,{})},destroy:function(){i.on("zoom",null)},pointer:tr}}let ry=t=>({x:t.x,y:t.y,zoom:t.k}),rm=({x:t,y:e,zoom:n})=>eO.translate(t,e).scale(n),rg=(t,e)=>t.target.closest(`.${e}`),rv=(t,e)=>2===e&&Array.isArray(t)&&t.includes(2),rx=t=>((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2,rw=(t,e=0,n=rx,r=()=>{})=>{let i="number"==typeof e&&e>0;return i||r(),i?t.transition().duration(e).ease(n).on("end",r):t},r_=t=>{let e=t.ctrlKey&&nb()?10:1;return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*e};function rb({domNode:t,minZoom:e,maxZoom:n,paneClickDistance:r,translateExtent:i,viewport:a,onPanZoom:u,onPanZoomStart:l,onPanZoomEnd:s,onDraggingChange:c}){let f={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{x:0,y:0,zoom:0},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},h=t.getBoundingClientRect(),d=eK().clickDistance(!ny(r)||r<0?0:r).scaleExtent([e,n]).translateExtent(i),p=tn(t).call(d);x({x:a.x,y:a.y,zoom:nn(a.zoom,e,n)},[[0,0],[h.width,h.height]],i);let y=p.on("wheel.zoom"),m=p.on("dblclick.zoom");function g(t,e){return p?new Promise(n=>{d?.interpolate(e?.interpolate==="linear"?eW:tg).transform(rw(p,e?.duration,e?.ease,()=>n(!0)),t)}):Promise.resolve(!1)}function v(){d.on("zoom",null)}async function x(t,e,n){let r=rm(t),i=d?.constrain()(r,e,n);return i&&await g(i),new Promise(t=>t(i))}return d.wheelDelta(r_),{update:function({noWheelClassName:t,noPanClassName:e,onPaneContextMenu:n,userSelectionActive:r,panOnScroll:i,panOnDrag:a,panOnScrollMode:h,panOnScrollSpeed:g,preventScrolling:x,zoomOnPinch:w,zoomOnScroll:_,zoomOnDoubleClick:b,zoomActivationKeyPressed:M,lib:E,onTransformChange:k}){r&&!f.isZoomingOrPanning&&v();let A=!i||M||r?function({noWheelClassName:t,preventScrolling:e,d3ZoomHandler:n}){return function(r,i){let o="wheel"===r.type,a=!e&&o&&!r.ctrlKey,u=rg(r,t);if(r.ctrlKey&&o&&u&&r.preventDefault(),a||u)return null;r.preventDefault(),n.call(this,r,i)}}({noWheelClassName:t,preventScrolling:x,d3ZoomHandler:y}):function({zoomPanValues:t,noWheelClassName:e,d3Selection:n,d3Zoom:r,panOnScrollMode:i,panOnScrollSpeed:a,zoomOnPinch:u,onPanZoomStart:l,onPanZoom:s,onPanZoomEnd:c}){return f=>{if(rg(f,e))return!1;f.preventDefault(),f.stopImmediatePropagation();let h=n.property("__zoom").k||1;if(f.ctrlKey&&u){let t=tr(f),e=h*Math.pow(2,r_(f));r.scaleTo(n,e,t,f);return}let d=1===f.deltaMode?20:1,p=i===o.Vertical?0:f.deltaX*d,y=i===o.Horizontal?0:f.deltaY*d;!nb()&&f.shiftKey&&i!==o.Vertical&&(p=f.deltaY*d,y=0),r.translateBy(n,-(p/h)*a,-(y/h)*a,{internal:!0});let m=ry(n.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling||(t.isPanScrolling=!0,l?.(f,m)),t.isPanScrolling&&(s?.(f,m),t.panScrollTimeout=setTimeout(()=>{c?.(f,m),t.isPanScrolling=!1},150))}}({zoomPanValues:f,noWheelClassName:t,d3Selection:p,d3Zoom:d,panOnScrollMode:h,panOnScrollSpeed:g,zoomOnPinch:w,onPanZoomStart:l,onPanZoom:u,onPanZoomEnd:s});if(p.on("wheel.zoom",A,{passive:!1}),!r){let t=function({zoomPanValues:t,onDraggingChange:e,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;let i=ry(r.transform);t.mouseButton=r.sourceEvent?.button||0,t.isZoomingOrPanning=!0,t.prevViewport=i,r.sourceEvent?.type==="mousedown"&&e(!0),n&&n?.(r.sourceEvent,i)}}({zoomPanValues:f,onDraggingChange:c,onPanZoomStart:l});d.on("start",t);let e=function({zoomPanValues:t,panOnDrag:e,onPaneContextMenu:n,onTransformChange:r,onPanZoom:i}){return o=>{t.usedRightMouseButton=!!(n&&rv(e,t.mouseButton??0)),o.sourceEvent?.sync||r([o.transform.x,o.transform.y,o.transform.k]),i&&!o.sourceEvent?.internal&&i?.(o.sourceEvent,ry(o.transform))}}({zoomPanValues:f,panOnDrag:a,onPaneContextMenu:!!n,onPanZoom:u,onTransformChange:k});d.on("zoom",e);let r=function({zoomPanValues:t,panOnDrag:e,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:i,onPaneContextMenu:o}){return a=>{if(!a.sourceEvent?.internal){let u,l;if(t.isZoomingOrPanning=!1,o&&rv(e,t.mouseButton??0)&&!t.usedRightMouseButton&&a.sourceEvent&&o(a.sourceEvent),t.usedRightMouseButton=!1,r(!1),i&&(u=t.prevViewport,l=a.transform,u.x!==l.x||u.y!==l.y||u.zoom!==l.k)){let e=ry(a.transform);t.prevViewport=e,clearTimeout(t.timerId),t.timerId=setTimeout(()=>{i?.(a.sourceEvent,e)},150*!!n)}}}}({zoomPanValues:f,panOnDrag:a,panOnScroll:i,onPaneContextMenu:n,onPanZoomEnd:s,onDraggingChange:c});d.on("end",r)}let $=function({zoomActivationKeyPressed:t,zoomOnScroll:e,zoomOnPinch:n,panOnDrag:r,panOnScroll:i,zoomOnDoubleClick:o,userSelectionActive:a,noWheelClassName:u,noPanClassName:l,lib:s}){return c=>{let f=t||e,h=n&&c.ctrlKey;if(1===c.button&&"mousedown"===c.type&&(rg(c,`${s}-flow__node`)||rg(c,`${s}-flow__edge`)))return!0;if(!r&&!f&&!i&&!o&&!n||a||rg(c,u)&&"wheel"===c.type||rg(c,l)&&("wheel"!==c.type||i&&"wheel"===c.type&&!t)||!n&&c.ctrlKey&&"wheel"===c.type)return!1;if(!n&&"touchstart"===c.type&&c.touches?.length>1)return c.preventDefault(),!1;if(!f&&!i&&!h&&"wheel"===c.type||!r&&("mousedown"===c.type||"touchstart"===c.type)||Array.isArray(r)&&!r.includes(c.button)&&"mousedown"===c.type)return!1;let d=Array.isArray(r)&&r.includes(c.button)||!c.button||c.button<=1;return(!c.ctrlKey||"wheel"===c.type)&&d}}({zoomActivationKeyPressed:M,panOnDrag:a,zoomOnScroll:_,panOnScroll:i,zoomOnDoubleClick:b,zoomOnPinch:w,userSelectionActive:r,noPanClassName:e,noWheelClassName:t,lib:E});d.filter($),b?p.on("dblclick.zoom",m):p.on("dblclick.zoom",null)},destroy:v,setViewport:async function t(t,e){let n=rm(t);return await g(n,e),new Promise(t=>t(n))},setViewportConstrained:x,getViewport:function(){let t=p?eC(p.node()):{x:0,y:0,k:1};return{x:t.x,y:t.y,zoom:t.k}},scaleTo:function(t,e){return p?new Promise(n=>{d?.interpolate(e?.interpolate==="linear"?eW:tg).scaleTo(rw(p,e?.duration,e?.ease,()=>n(!0)),t)}):Promise.resolve(!1)},scaleBy:function(t,e){return p?new Promise(n=>{d?.interpolate(e?.interpolate==="linear"?eW:tg).scaleBy(rw(p,e?.duration,e?.ease,()=>n(!0)),t)}):Promise.resolve(!1)},setScaleExtent:function(t){d?.scaleExtent(t)},setTranslateExtent:function(t){d?.translateExtent(t)},syncViewport:function(t){if(p){let e=rm(t),n=p.property("__zoom");(n.k!==t.zoom||n.x!==t.x||n.y!==t.y)&&d?.transform(p,e,null,{sync:!0})}},setClickDistance:function(t){let e=!ny(t)||t<0?0:t;d?.clickDistance(e)}}}!function(t){t.Line="line",t.Handle="handle"}(c||(c={}))},78831:(t,e,n)=>{n.d(e,{A:()=>r});let r=(0,n(80271).Ay)()},83654:(t,e,n)=>{var r=n(12115),i=n(14806),o="function"==typeof Object.is?Object.is:function(t,e){return t===e&&(0!==t||1/t==1/e)||t!=t&&e!=e},a=i.useSyncExternalStore,u=r.useRef,l=r.useEffect,s=r.useMemo,c=r.useDebugValue;e.useSyncExternalStoreWithSelector=function(t,e,n,r,i){var f=u(null);if(null===f.current){var h={hasValue:!1,value:null};f.current=h}else h=f.current;var d=a(t,(f=s(function(){function t(t){if(!l){if(l=!0,a=t,t=r(t),void 0!==i&&h.hasValue){var e=h.value;if(i(e,t))return u=e}return u=t}if(e=u,o(a,t))return e;var n=r(t);return void 0!==i&&i(e,n)?(a=t,e):(a=t,u=n)}var a,u,l=!1,s=void 0===n?null:n;return[function(){return t(e())},null===s?void 0:function(){return t(s())}]},[e,n,r,i]))[0],f[1]);return l(function(){h.hasValue=!0,h.value=d},[d]),c(d),d}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8834],{1262:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return a}});let n=r(12115),i=n.useLayoutEffect,o=n.useEffect;function a(e){let{headManager:t,reduceComponentsToState:r}=e;function a(){if(t&&t.mountedInstances){let i=n.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(i,e))}}return i(()=>{var r;return null==t||null==(r=t.mountedInstances)||r.add(e.children),()=>{var r;null==t||null==(r=t.mountedInstances)||r.delete(e.children)}}),i(()=>(t&&(t._pendingUpdate=a),()=>{t&&(t._pendingUpdate=a)})),o(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},11947:(e,t,r)=>{r.d(t,{A:()=>o});var n=r(19868),i=r(89505);function o(e){let{props:t,name:r,defaultTheme:o,themeId:a}=e,l=(0,i.A)(o);return a&&(l=l[a]||l),(0,n.A)({theme:l,name:r,props:t})}},14105:(e,t)=>{function r(e){let{widthInt:t,heightInt:r,blurWidth:n,blurHeight:i,blurDataURL:o,objectFit:a}=e,l=n?40*n:t,s=i?40*i:r,u=l&&s?"viewBox='0 0 "+l+" "+s+"'":"";return"%3Csvg xmlns='http://www.w3.org/2000/svg' "+u+"%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='"+(u?"none":"contain"===a?"xMidYMid":"cover"===a?"xMidYMid slice":"none")+"' style='filter: url(%23b);' href='"+o+"'/%3E%3C/svg%3E"}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getImageBlurSvg",{enumerable:!0,get:function(){return r}})},15239:(e,t,r)=>{r.d(t,{default:()=>i.a});var n=r(54652),i=r.n(n)},19868:(e,t,r)=>{r.d(t,{A:()=>i});var n=r(37821);function i(e){let{theme:t,name:r,props:i}=e;return t&&t.components&&t.components[r]&&t.components[r].defaultProps?(0,n.A)(t.components[r].defaultProps,i):i}},20821:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{VALID_LOADERS:function(){return r},imageConfigDefault:function(){return n}});let r=["default","imgix","cloudinary","akamai","custom"],n={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:60,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumResponseBody:5e7,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:void 0,unoptimized:!1}},33455:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ImageConfigContext",{enumerable:!0,get:function(){return o}});let n=r(28140)._(r(12115)),i=r(20821),o=n.default.createContext(i.imageConfigDefault)},54652:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{default:function(){return s},getImageProps:function(){return l}});let n=r(28140),i=r(75040),o=r(81356),a=n._(r(71124));function l(e){let{props:t}=(0,i.getImgProps)(e,{defaultLoader:a.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let s=o.Image},60861:(e,t)=>{function r(e){let{ampFirst:t=!1,hybrid:r=!1,hasQuery:n=!1}=void 0===e?{}:e;return t||r&&n}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isInAmpMode",{enumerable:!0,get:function(){return r}})},71124:(e,t)=>{function r(e){var t;let{config:r,src:n,width:i,quality:o}=e,a=o||(null==(t=r.qualities)?void 0:t.reduce((e,t)=>Math.abs(t-75)<Math.abs(e-75)?t:e))||75;return r.path+"?url="+encodeURIComponent(n)+"&w="+i+"&q="+a+(n.startsWith("/_next/static/media/"),"")}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n}}),r.__next_img_default=!0;let n=r},74841:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{default:function(){return g},defaultHead:function(){return c}});let n=r(28140),i=r(49417),o=r(95155),a=i._(r(12115)),l=n._(r(1262)),s=r(90737),u=r(82073),d=r(60861);function c(e){void 0===e&&(e=!1);let t=[(0,o.jsx)("meta",{charSet:"utf-8"},"charset")];return e||t.push((0,o.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")),t}function f(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===a.default.Fragment?e.concat(a.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}r(94781);let p=["name","httpEquiv","charSet","itemProp"];function m(e,t){let{inAmpMode:r}=t;return e.reduce(f,[]).reverse().concat(c(r).reverse()).filter(function(){let e=new Set,t=new Set,r=new Set,n={};return i=>{let o=!0,a=!1;if(i.key&&"number"!=typeof i.key&&i.key.indexOf("$")>0){a=!0;let t=i.key.slice(i.key.indexOf("$")+1);e.has(t)?o=!1:e.add(t)}switch(i.type){case"title":case"base":t.has(i.type)?o=!1:t.add(i.type);break;case"meta":for(let e=0,t=p.length;e<t;e++){let t=p[e];if(i.props.hasOwnProperty(t))if("charSet"===t)r.has(t)?o=!1:r.add(t);else{let e=i.props[t],r=n[t]||new Set;("name"!==t||!a)&&r.has(e)?o=!1:(r.add(e),n[t]=r)}}}return o}}()).reverse().map((e,t)=>{let r=e.key||t;return a.default.cloneElement(e,{key:r})})}let g=function(e){let{children:t}=e,r=(0,a.useContext)(s.AmpStateContext),n=(0,a.useContext)(u.HeadManagerContext);return(0,o.jsx)(l.default,{reduceComponentsToState:m,headManager:n,inAmpMode:(0,d.isInAmpMode)(r),children:t})};("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},75040:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getImgProps",{enumerable:!0,get:function(){return s}}),r(94781);let n=r(14105),i=r(20821),o=["-moz-initial","fill","none","scale-down",void 0];function a(e){return void 0!==e.default}function l(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function s(e,t){var r,s;let u,d,c,{src:f,sizes:p,unoptimized:m=!1,priority:g=!1,loading:h,className:b,quality:v,width:y,height:_,fill:x=!1,style:w,overrideSrc:j,onLoad:S,onLoadingComplete:C,placeholder:P="empty",blurDataURL:O,fetchPriority:E,decoding:R="async",layout:M,objectFit:A,objectPosition:z,lazyBoundary:k,lazyRoot:I,...D}=e,{imgConf:W,showAltText:N,blurComplete:G,defaultLoader:L}=t,T=W||i.imageConfigDefault;if("allSizes"in T)u=T;else{let e=[...T.deviceSizes,...T.imageSizes].sort((e,t)=>e-t),t=T.deviceSizes.sort((e,t)=>e-t),n=null==(r=T.qualities)?void 0:r.sort((e,t)=>e-t);u={...T,allSizes:e,deviceSizes:t,qualities:n}}if(void 0===L)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let F=D.loader||L;delete D.loader,delete D.srcSet;let U="__next_img_default"in F;if(U){if("custom"===u.loader)throw Object.defineProperty(Error('Image with src "'+f+'" is missing "loader" prop.\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader'),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=F;F=t=>{let{config:r,...n}=t;return e(n)}}if(M){"fill"===M&&(x=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[M];e&&(w={...w,...e});let t={responsive:"100vw",fill:"100vw"}[M];t&&!p&&(p=t)}let B="",q=l(y),V=l(_);if((s=f)&&"object"==typeof s&&(a(s)||void 0!==s.src)){let e=a(f)?f.default:f;if(!e.src)throw Object.defineProperty(Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received "+JSON.stringify(e)),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!e.height||!e.width)throw Object.defineProperty(Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received "+JSON.stringify(e)),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(d=e.blurWidth,c=e.blurHeight,O=O||e.blurDataURL,B=e.src,!x)if(q||V){if(q&&!V){let t=q/e.width;V=Math.round(e.height*t)}else if(!q&&V){let t=V/e.height;q=Math.round(e.width*t)}}else q=e.width,V=e.height}let H=!g&&("lazy"===h||void 0===h);(!(f="string"==typeof f?f:B)||f.startsWith("data:")||f.startsWith("blob:"))&&(m=!0,H=!1),u.unoptimized&&(m=!0),U&&!u.dangerouslyAllowSVG&&f.split("?",1)[0].endsWith(".svg")&&(m=!0);let X=l(v),$=Object.assign(x?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:A,objectPosition:z}:{},N?{}:{color:"transparent"},w),J=G||"empty"===P?null:"blur"===P?'url("data:image/svg+xml;charset=utf-8,'+(0,n.getImageBlurSvg)({widthInt:q,heightInt:V,blurWidth:d,blurHeight:c,blurDataURL:O||"",objectFit:$.objectFit})+'")':'url("'+P+'")',Y=o.includes($.objectFit)?"fill"===$.objectFit?"100% 100%":"cover":$.objectFit,K=J?{backgroundSize:Y,backgroundPosition:$.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:J}:{},Q=function(e){let{config:t,src:r,unoptimized:n,width:i,quality:o,sizes:a,loader:l}=e;if(n)return{src:r,srcSet:void 0,sizes:void 0};let{widths:s,kind:u}=function(e,t,r){let{deviceSizes:n,allSizes:i}=e;if(r){let e=/(^|\s)(1?\d?\d)vw/g,t=[];for(let n;n=e.exec(r);)t.push(parseInt(n[2]));if(t.length){let e=.01*Math.min(...t);return{widths:i.filter(t=>t>=n[0]*e),kind:"w"}}return{widths:i,kind:"w"}}return"number"!=typeof t?{widths:n,kind:"w"}:{widths:[...new Set([t,2*t].map(e=>i.find(t=>t>=e)||i[i.length-1]))],kind:"x"}}(t,i,a),d=s.length-1;return{sizes:a||"w"!==u?a:"100vw",srcSet:s.map((e,n)=>l({config:t,src:r,quality:o,width:e})+" "+("w"===u?e:n+1)+u).join(", "),src:l({config:t,src:r,quality:o,width:s[d]})}}({config:u,src:f,unoptimized:m,width:q,quality:X,sizes:p,loader:F});return{props:{...D,loading:H?"lazy":h,fetchPriority:E,width:q,height:V,decoding:R,className:b,style:{...$,...K},sizes:Q.sizes,srcSet:Q.srcSet,src:j||Q.src},meta:{unoptimized:m,priority:g,placeholder:P,fill:x}}}},78831:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(80271).Ay)()},79862:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"RouterContext",{enumerable:!0,get:function(){return n}});let n=r(28140)._(r(12115)).default.createContext(null)},81356:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Image",{enumerable:!0,get:function(){return _}});let n=r(28140),i=r(49417),o=r(95155),a=i._(r(12115)),l=n._(r(47650)),s=n._(r(74841)),u=r(75040),d=r(20821),c=r(33455);r(94781);let f=r(79862),p=n._(r(71124)),m=r(83011),g={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function h(e,t,r,n,i,o,a){let l=null==e?void 0:e.src;e&&e["data-loaded-src"]!==l&&(e["data-loaded-src"]=l,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&i(!0),null==r?void 0:r.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let n=!1,i=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>n,isPropagationStopped:()=>i,persist:()=>{},preventDefault:()=>{n=!0,t.preventDefault()},stopPropagation:()=>{i=!0,t.stopPropagation()}})}(null==n?void 0:n.current)&&n.current(e)}}))}function b(e){return a.use?{fetchPriority:e}:{fetchpriority:e}}let v=(0,a.forwardRef)((e,t)=>{let{src:r,srcSet:n,sizes:i,height:l,width:s,decoding:u,className:d,style:c,fetchPriority:f,placeholder:p,loading:g,unoptimized:v,fill:y,onLoadRef:_,onLoadingCompleteRef:x,setBlurComplete:w,setShowAltText:j,sizesInput:S,onLoad:C,onError:P,...O}=e,E=(0,a.useCallback)(e=>{e&&(P&&(e.src=e.src),e.complete&&h(e,p,_,x,w,v,S))},[r,p,_,x,w,P,v,S]),R=(0,m.useMergedRef)(t,E);return(0,o.jsx)("img",{...O,...b(f),loading:g,width:s,height:l,decoding:u,"data-nimg":y?"fill":"1",className:d,style:c,sizes:i,srcSet:n,src:r,ref:R,onLoad:e=>{h(e.currentTarget,p,_,x,w,v,S)},onError:e=>{j(!0),"empty"!==p&&w(!0),P&&P(e)}})});function y(e){let{isAppRouter:t,imgAttributes:r}=e,n={as:"image",imageSrcSet:r.srcSet,imageSizes:r.sizes,crossOrigin:r.crossOrigin,referrerPolicy:r.referrerPolicy,...b(r.fetchPriority)};return t&&l.default.preload?(l.default.preload(r.src,n),null):(0,o.jsx)(s.default,{children:(0,o.jsx)("link",{rel:"preload",href:r.srcSet?void 0:r.src,...n},"__nimg-"+r.src+r.srcSet+r.sizes)})}let _=(0,a.forwardRef)((e,t)=>{let r=(0,a.useContext)(f.RouterContext),n=(0,a.useContext)(c.ImageConfigContext),i=(0,a.useMemo)(()=>{var e;let t=g||n||d.imageConfigDefault,r=[...t.deviceSizes,...t.imageSizes].sort((e,t)=>e-t),i=t.deviceSizes.sort((e,t)=>e-t),o=null==(e=t.qualities)?void 0:e.sort((e,t)=>e-t);return{...t,allSizes:r,deviceSizes:i,qualities:o}},[n]),{onLoad:l,onLoadingComplete:s}=e,m=(0,a.useRef)(l);(0,a.useEffect)(()=>{m.current=l},[l]);let h=(0,a.useRef)(s);(0,a.useEffect)(()=>{h.current=s},[s]);let[b,_]=(0,a.useState)(!1),[x,w]=(0,a.useState)(!1),{props:j,meta:S}=(0,u.getImgProps)(e,{defaultLoader:p.default,imgConf:i,blurComplete:b,showAltText:x});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(v,{...j,unoptimized:S.unoptimized,placeholder:S.placeholder,fill:S.fill,onLoadRef:m,onLoadingCompleteRef:h,setBlurComplete:_,setShowAltText:w,sizesInput:e.sizes,ref:t}),S.priority?(0,o.jsx)(y,{isAppRouter:!r,imgAttributes:j}):null]})});("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},90737:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AmpStateContext",{enumerable:!0,get:function(){return n}});let n=r(28140)._(r(12115)).default.createContext({})},97322:(e,t,r)=>{r.d(t,{A:()=>v});var n=r(12115),i=r(2821),o=r(95195),a=r(57001),l=r(88133),s=r(11947),u=r(78831),d=r(41934),c=r(95155);let f=(0,d.A)(),p=(0,u.A)("div",{name:"MuiContainer",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.root,t["maxWidth".concat((0,l.A)(String(r.maxWidth)))],r.fixed&&t.fixed,r.disableGutters&&t.disableGutters]}}),m=e=>(0,s.A)({props:e,name:"MuiContainer",defaultTheme:f});var g=r(81852),h=r(48116),b=r(16625);let v=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{createStyledComponent:t=p,useThemeProps:r=m,componentName:s="MuiContainer"}=e,u=t(e=>{let{theme:t,ownerState:r}=e;return{width:"100%",marginLeft:"auto",boxSizing:"border-box",marginRight:"auto",...!r.disableGutters&&{paddingLeft:t.spacing(2),paddingRight:t.spacing(2),[t.breakpoints.up("sm")]:{paddingLeft:t.spacing(3),paddingRight:t.spacing(3)}}}},e=>{let{theme:t,ownerState:r}=e;return r.fixed&&Object.keys(t.breakpoints.values).reduce((e,r)=>{let n=t.breakpoints.values[r];return 0!==n&&(e[t.breakpoints.up(r)]={maxWidth:"".concat(n).concat(t.breakpoints.unit)}),e},{})},e=>{let{theme:t,ownerState:r}=e;return{..."xs"===r.maxWidth&&{[t.breakpoints.up("xs")]:{maxWidth:Math.max(t.breakpoints.values.xs,444)}},...r.maxWidth&&"xs"!==r.maxWidth&&{[t.breakpoints.up(r.maxWidth)]:{maxWidth:"".concat(t.breakpoints.values[r.maxWidth]).concat(t.breakpoints.unit)}}}});return n.forwardRef(function(e,t){let n=r(e),{className:d,component:f="div",disableGutters:p=!1,fixed:m=!1,maxWidth:g="lg",classes:h,...b}=n,v={...n,component:f,disableGutters:p,fixed:m,maxWidth:g},y=((e,t)=>{let{classes:r,fixed:n,disableGutters:i,maxWidth:s}=e,u={root:["root",s&&"maxWidth".concat((0,l.A)(String(s))),n&&"fixed",i&&"disableGutters"]};return(0,a.A)(u,e=>(0,o.Ay)(t,e),r)})(v,s);return(0,c.jsx)(u,{as:f,ownerState:v,className:(0,i.A)(y.root,d),ref:t,...b})})}({createStyledComponent:(0,h.Ay)("div",{name:"MuiContainer",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.root,t["maxWidth".concat((0,g.A)(String(r.maxWidth)))],r.fixed&&t.fixed,r.disableGutters&&t.disableGutters]}}),useThemeProps:e=>(0,b.b)({props:e,name:"MuiContainer"})})}}]);