flujo-ai 3.9.0 → 3.10.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 (356) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +124 -117
  3. package/.next/app-path-routes-manifest.json +7 -6
  4. package/.next/build-manifest.json +2 -2
  5. package/.next/required-server-files.json +2 -2
  6. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  7. package/.next/server/app/_not-found.html +1 -1
  8. package/.next/server/app/_not-found.rsc +1 -1
  9. package/.next/server/app/api/backup/route.js +1 -2
  10. package/.next/server/app/api/backup/route.js.nft.json +1 -1
  11. package/.next/server/app/api/backup/route_client-reference-manifest.js +1 -1
  12. package/.next/server/app/api/browse/route_client-reference-manifest.js +1 -1
  13. package/.next/server/app/api/cwd/route_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/encryption/secure/route.js +1 -1
  15. package/.next/server/app/api/encryption/secure/route.js.nft.json +1 -1
  16. package/.next/server/app/api/encryption/secure/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/env/route.js +1 -1
  18. package/.next/server/app/api/env/route.js.nft.json +1 -1
  19. package/.next/server/app/api/env/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/flow/[id]/route.js +1 -1
  21. package/.next/server/app/api/flow/[id]/route.js.nft.json +1 -1
  22. package/.next/server/app/api/flow/[id]/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/flow/prompt-renderer/route.js +2 -2
  24. package/.next/server/app/api/flow/prompt-renderer/route.js.nft.json +1 -1
  25. package/.next/server/app/api/flow/prompt-renderer/route_client-reference-manifest.js +1 -1
  26. package/.next/server/app/api/flow/route.js +1 -1
  27. package/.next/server/app/api/flow/route.js.nft.json +1 -1
  28. package/.next/server/app/api/flow/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/git/route.js +5 -3
  30. package/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/init/route.js +1 -1
  32. package/.next/server/app/api/init/route.js.nft.json +1 -1
  33. package/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/mcp/cancel/route.js +1 -1
  35. package/.next/server/app/api/mcp/cancel/route.js.nft.json +1 -1
  36. package/.next/server/app/api/mcp/cancel/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js +1 -1
  38. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js.nft.json +1 -1
  39. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/mcp/servers/[name]/prompts/route.js +1 -1
  41. package/.next/server/app/api/mcp/servers/[name]/prompts/route.js.nft.json +1 -1
  42. package/.next/server/app/api/mcp/servers/[name]/prompts/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js +1 -1
  44. package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js.nft.json +1 -1
  45. package/.next/server/app/api/mcp/servers/[name]/resources/read/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/mcp/servers/[name]/resources/route.js +1 -1
  47. package/.next/server/app/api/mcp/servers/[name]/resources/route.js.nft.json +1 -1
  48. package/.next/server/app/api/mcp/servers/[name]/resources/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/mcp/servers/[name]/route.js +1 -1
  50. package/.next/server/app/api/mcp/servers/[name]/route.js.nft.json +1 -1
  51. package/.next/server/app/api/mcp/servers/[name]/route_client-reference-manifest.js +1 -1
  52. package/.next/server/app/api/mcp/servers/[name]/status/route.js +1 -1
  53. package/.next/server/app/api/mcp/servers/[name]/status/route.js.nft.json +1 -1
  54. package/.next/server/app/api/mcp/servers/[name]/status/route_client-reference-manifest.js +1 -1
  55. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js +1 -1
  56. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js.nft.json +1 -1
  57. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route_client-reference-manifest.js +1 -1
  58. package/.next/server/app/api/mcp/servers/[name]/tools/route.js +1 -1
  59. package/.next/server/app/api/mcp/servers/[name]/tools/route.js.nft.json +1 -1
  60. package/.next/server/app/api/mcp/servers/[name]/tools/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/mcp/servers/route.js +1 -1
  62. package/.next/server/app/api/mcp/servers/route.js.nft.json +1 -1
  63. package/.next/server/app/api/mcp/servers/route_client-reference-manifest.js +1 -1
  64. package/.next/server/app/api/mcp/test-connection/route.js +1 -1
  65. package/.next/server/app/api/mcp/test-connection/route.js.nft.json +1 -1
  66. package/.next/server/app/api/mcp/test-connection/route_client-reference-manifest.js +1 -1
  67. package/.next/server/app/api/mcp/test-connection/stream/route.js +1 -0
  68. package/.next/server/app/api/mcp/test-connection/stream/route.js.nft.json +1 -0
  69. package/.next/server/app/api/mcp/test-connection/stream/route_client-reference-manifest.js +1 -0
  70. package/.next/server/app/api/mcp-registry/route_client-reference-manifest.js +1 -1
  71. package/.next/server/app/api/mcp-registry/spotlight/route.js +1 -2
  72. package/.next/server/app/api/mcp-registry/spotlight/route.js.nft.json +1 -1
  73. package/.next/server/app/api/mcp-registry/spotlight/route_client-reference-manifest.js +1 -1
  74. package/.next/server/app/api/model/[id]/route.js +1 -1
  75. package/.next/server/app/api/model/[id]/route.js.nft.json +1 -1
  76. package/.next/server/app/api/model/[id]/route_client-reference-manifest.js +1 -1
  77. package/.next/server/app/api/model/provider/route.js +1 -1
  78. package/.next/server/app/api/model/provider/route.js.nft.json +1 -1
  79. package/.next/server/app/api/model/provider/route_client-reference-manifest.js +1 -1
  80. package/.next/server/app/api/model/route.js +1 -1
  81. package/.next/server/app/api/model/route.js.nft.json +1 -1
  82. package/.next/server/app/api/model/route_client-reference-manifest.js +1 -1
  83. package/.next/server/app/api/model/test/route.js +1 -1
  84. package/.next/server/app/api/model/test/route.js.nft.json +1 -1
  85. package/.next/server/app/api/model/test/route_client-reference-manifest.js +1 -1
  86. package/.next/server/app/api/oauth/callback/route.js +1 -1
  87. package/.next/server/app/api/oauth/callback/route.js.nft.json +1 -1
  88. package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
  89. package/.next/server/app/api/oauth/initiate/route.js +1 -1
  90. package/.next/server/app/api/oauth/initiate/route.js.nft.json +1 -1
  91. package/.next/server/app/api/oauth/initiate/route_client-reference-manifest.js +1 -1
  92. package/.next/server/app/api/oauth/reset/route.js +1 -1
  93. package/.next/server/app/api/oauth/reset/route.js.nft.json +1 -1
  94. package/.next/server/app/api/oauth/reset/route_client-reference-manifest.js +1 -1
  95. package/.next/server/app/api/planned-executions/[id]/route.js +1 -1
  96. package/.next/server/app/api/planned-executions/[id]/route.js.nft.json +1 -1
  97. package/.next/server/app/api/planned-executions/[id]/route_client-reference-manifest.js +1 -1
  98. package/.next/server/app/api/planned-executions/[id]/run/route.js +1 -1
  99. package/.next/server/app/api/planned-executions/[id]/run/route.js.nft.json +1 -1
  100. package/.next/server/app/api/planned-executions/[id]/run/route_client-reference-manifest.js +1 -1
  101. package/.next/server/app/api/planned-executions/[id]/runs/route.js +1 -1
  102. package/.next/server/app/api/planned-executions/[id]/runs/route.js.nft.json +1 -1
  103. package/.next/server/app/api/planned-executions/[id]/runs/route_client-reference-manifest.js +1 -1
  104. package/.next/server/app/api/planned-executions/preview-schedule/route_client-reference-manifest.js +1 -1
  105. package/.next/server/app/api/planned-executions/route.js +1 -1
  106. package/.next/server/app/api/planned-executions/route.js.nft.json +1 -1
  107. package/.next/server/app/api/planned-executions/route_client-reference-manifest.js +1 -1
  108. package/.next/server/app/api/restore/route.js +1 -2
  109. package/.next/server/app/api/restore/route.js.nft.json +1 -1
  110. package/.next/server/app/api/restore/route_client-reference-manifest.js +1 -1
  111. package/.next/server/app/api/storage/route.js +1 -2
  112. package/.next/server/app/api/storage/route.js.nft.json +1 -1
  113. package/.next/server/app/api/storage/route_client-reference-manifest.js +1 -1
  114. package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  115. package/.next/server/app/api/webhooks/[id]/route.js +1 -1
  116. package/.next/server/app/api/webhooks/[id]/route.js.nft.json +1 -1
  117. package/.next/server/app/api/webhooks/[id]/route_client-reference-manifest.js +1 -1
  118. package/.next/server/app/chat/page.js +8 -8
  119. package/.next/server/app/chat/page.js.nft.json +1 -1
  120. package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
  121. package/.next/server/app/chat.html +1 -1
  122. package/.next/server/app/chat.rsc +2 -2
  123. package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  124. package/.next/server/app/docs.html +1 -1
  125. package/.next/server/app/docs.rsc +1 -1
  126. package/.next/server/app/executions/page.js +2 -2
  127. package/.next/server/app/executions/page.js.nft.json +1 -1
  128. package/.next/server/app/executions/page_client-reference-manifest.js +1 -1
  129. package/.next/server/app/executions.html +1 -1
  130. package/.next/server/app/executions.rsc +2 -2
  131. package/.next/server/app/flows/page.js +10 -10
  132. package/.next/server/app/flows/page.js.nft.json +1 -1
  133. package/.next/server/app/flows/page_client-reference-manifest.js +1 -1
  134. package/.next/server/app/flows.html +1 -1
  135. package/.next/server/app/flows.rsc +2 -2
  136. package/.next/server/app/index.html +1 -1
  137. package/.next/server/app/index.rsc +1 -1
  138. package/.next/server/app/mcp/page.js +13 -13
  139. package/.next/server/app/mcp/page.js.nft.json +1 -1
  140. package/.next/server/app/mcp/page_client-reference-manifest.js +1 -1
  141. package/.next/server/app/mcp-flows/route.js +1 -1
  142. package/.next/server/app/mcp-flows/route.js.nft.json +1 -1
  143. package/.next/server/app/mcp-flows/route_client-reference-manifest.js +1 -1
  144. package/.next/server/app/mcp-proxy/[server]/route.js +1 -1
  145. package/.next/server/app/mcp-proxy/[server]/route.js.nft.json +1 -1
  146. package/.next/server/app/mcp-proxy/[server]/route_client-reference-manifest.js +1 -1
  147. package/.next/server/app/mcp.html +1 -1
  148. package/.next/server/app/mcp.rsc +2 -2
  149. package/.next/server/app/models/page.js +2 -2
  150. package/.next/server/app/models/page.js.nft.json +1 -1
  151. package/.next/server/app/models/page_client-reference-manifest.js +1 -1
  152. package/.next/server/app/page_client-reference-manifest.js +1 -1
  153. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  154. package/.next/server/app/settings.html +1 -1
  155. package/.next/server/app/settings.rsc +1 -1
  156. package/.next/server/app/v1/chat/completions/route.js +2 -2
  157. package/.next/server/app/v1/chat/completions/route.js.nft.json +1 -1
  158. package/.next/server/app/v1/chat/completions/route_client-reference-manifest.js +1 -1
  159. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js +1 -1
  160. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js.nft.json +1 -1
  161. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route_client-reference-manifest.js +1 -1
  162. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js +2 -2
  163. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js.nft.json +1 -1
  164. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route_client-reference-manifest.js +1 -1
  165. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js +1 -1
  166. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js.nft.json +1 -1
  167. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route_client-reference-manifest.js +1 -1
  168. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js +1 -1
  169. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js.nft.json +1 -1
  170. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route_client-reference-manifest.js +1 -1
  171. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js +1 -1
  172. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js.nft.json +1 -1
  173. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route_client-reference-manifest.js +1 -1
  174. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js +2 -2
  175. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js.nft.json +1 -1
  176. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route_client-reference-manifest.js +1 -1
  177. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js +1 -1
  178. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js.nft.json +1 -1
  179. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route_client-reference-manifest.js +1 -1
  180. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js +2 -2
  181. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js.nft.json +1 -1
  182. package/.next/server/app/v1/chat/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  183. package/.next/server/app/v1/chat/conversations/route.js +2 -2
  184. package/.next/server/app/v1/chat/conversations/route.js.nft.json +1 -1
  185. package/.next/server/app/v1/chat/conversations/route_client-reference-manifest.js +1 -1
  186. package/.next/server/app/v1/models/route.js +1 -1
  187. package/.next/server/app/v1/models/route.js.nft.json +1 -1
  188. package/.next/server/app/v1/models/route_client-reference-manifest.js +1 -1
  189. package/.next/server/app-paths-manifest.json +7 -6
  190. package/.next/server/chunks/117.js +1 -0
  191. package/.next/server/chunks/1373.js +1 -1
  192. package/.next/server/chunks/1403.js +1 -1
  193. package/.next/server/chunks/2181.js +6 -6
  194. package/.next/server/chunks/2372.js +2 -0
  195. package/.next/server/chunks/3426.js +1 -0
  196. package/.next/server/chunks/3984.js +2 -2
  197. package/.next/server/chunks/4323.js +1 -0
  198. package/.next/server/chunks/4379.js +1 -0
  199. package/.next/server/chunks/4706.js +1 -1
  200. package/.next/server/chunks/4729.js +2 -2
  201. package/.next/server/chunks/5389.js +11 -11
  202. package/.next/server/chunks/5547.js +2 -2
  203. package/.next/server/chunks/6637.js +2 -2
  204. package/.next/server/chunks/6936.js +13 -13
  205. package/.next/server/chunks/724.js +12 -12
  206. package/.next/server/chunks/8460.js +1 -1
  207. package/.next/server/chunks/8739.js +1 -2
  208. package/.next/server/chunks/9188.js +1 -1
  209. package/.next/server/chunks/9509.js +2 -0
  210. package/.next/server/chunks/9989.js +1 -1
  211. package/.next/server/functions-config-manifest.json +3 -2
  212. package/.next/server/pages/404.html +1 -1
  213. package/.next/server/pages/500.html +1 -1
  214. package/.next/server/server-reference-manifest.js +1 -1
  215. package/.next/server/server-reference-manifest.json +1 -1
  216. package/.next/static/chunks/1811-8ee01cf37161913c.js +1 -0
  217. package/.next/static/chunks/2380-5696e0dc0469f6a5.js +1 -0
  218. package/.next/static/chunks/4205-b9e33afc7e96ecb9.js +1 -0
  219. package/.next/static/chunks/5781-4328d17aad13f908.js +8 -0
  220. package/.next/static/chunks/687-98ba5f5043866f48.js +1 -0
  221. package/.next/static/chunks/7458-4445e76668151564.js +1 -0
  222. package/.next/static/chunks/{9718-12d33c1a26bb002d.js → 8215-a966f4c36f1ca174.js} +1 -1
  223. package/.next/static/chunks/8862-8f17ef601bb1fbd0.js +1 -0
  224. package/.next/static/chunks/8890-a7a8c6f1dc3cd343.js +1 -0
  225. package/.next/static/chunks/app/api/backup/{route-acd5b6e731d45f1a.js → route-3291f6991ce3f52c.js} +1 -1
  226. package/.next/static/chunks/app/api/browse/{route-acd5b6e731d45f1a.js → route-3291f6991ce3f52c.js} +1 -1
  227. package/.next/static/chunks/app/api/cwd/{route-acd5b6e731d45f1a.js → route-3291f6991ce3f52c.js} +1 -1
  228. package/.next/static/chunks/app/api/encryption/secure/{route-acd5b6e731d45f1a.js → route-3291f6991ce3f52c.js} +1 -1
  229. package/.next/static/chunks/app/api/env/route-3291f6991ce3f52c.js +1 -0
  230. package/.next/static/chunks/app/api/flow/[id]/route-3291f6991ce3f52c.js +1 -0
  231. package/.next/static/chunks/app/api/flow/prompt-renderer/route-3291f6991ce3f52c.js +1 -0
  232. package/.next/static/chunks/app/api/flow/route-3291f6991ce3f52c.js +1 -0
  233. package/.next/static/chunks/app/api/git/route-3291f6991ce3f52c.js +1 -0
  234. package/.next/static/chunks/app/api/init/route-3291f6991ce3f52c.js +1 -0
  235. package/.next/static/chunks/app/api/mcp/cancel/route-3291f6991ce3f52c.js +1 -0
  236. package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/get/route-3291f6991ce3f52c.js +1 -0
  237. package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/route-3291f6991ce3f52c.js +1 -0
  238. package/.next/static/chunks/app/api/mcp/servers/[name]/resources/read/route-3291f6991ce3f52c.js +1 -0
  239. package/.next/static/chunks/app/api/mcp/servers/[name]/resources/route-3291f6991ce3f52c.js +1 -0
  240. package/.next/static/chunks/app/api/mcp/servers/[name]/route-3291f6991ce3f52c.js +1 -0
  241. package/.next/static/chunks/app/api/mcp/servers/[name]/status/route-3291f6991ce3f52c.js +1 -0
  242. package/.next/static/chunks/app/api/mcp/servers/[name]/tools/[toolName]/route-3291f6991ce3f52c.js +1 -0
  243. package/.next/static/chunks/app/api/mcp/servers/[name]/tools/route-3291f6991ce3f52c.js +1 -0
  244. package/.next/static/chunks/app/api/mcp/servers/route-3291f6991ce3f52c.js +1 -0
  245. package/.next/static/chunks/app/api/mcp/test-connection/route-3291f6991ce3f52c.js +1 -0
  246. package/.next/static/chunks/app/api/mcp/test-connection/stream/route-3291f6991ce3f52c.js +1 -0
  247. package/.next/static/chunks/app/api/mcp-registry/route-3291f6991ce3f52c.js +1 -0
  248. package/.next/static/chunks/app/api/mcp-registry/spotlight/route-3291f6991ce3f52c.js +1 -0
  249. package/.next/static/chunks/app/api/model/[id]/route-3291f6991ce3f52c.js +1 -0
  250. package/.next/static/chunks/app/api/model/provider/route-3291f6991ce3f52c.js +1 -0
  251. package/.next/static/chunks/app/api/model/route-3291f6991ce3f52c.js +1 -0
  252. package/.next/static/chunks/app/api/model/test/route-3291f6991ce3f52c.js +1 -0
  253. package/.next/static/chunks/app/api/oauth/callback/route-3291f6991ce3f52c.js +1 -0
  254. package/.next/static/chunks/app/api/oauth/initiate/route-3291f6991ce3f52c.js +1 -0
  255. package/.next/static/chunks/app/api/oauth/reset/route-3291f6991ce3f52c.js +1 -0
  256. package/.next/static/chunks/app/api/planned-executions/[id]/route-3291f6991ce3f52c.js +1 -0
  257. package/.next/static/chunks/app/api/planned-executions/[id]/run/route-3291f6991ce3f52c.js +1 -0
  258. package/.next/static/chunks/app/api/planned-executions/[id]/runs/route-3291f6991ce3f52c.js +1 -0
  259. package/.next/static/chunks/app/api/planned-executions/preview-schedule/route-3291f6991ce3f52c.js +1 -0
  260. package/.next/static/chunks/app/api/planned-executions/route-3291f6991ce3f52c.js +1 -0
  261. package/.next/static/chunks/app/api/restore/route-3291f6991ce3f52c.js +1 -0
  262. package/.next/static/chunks/app/api/storage/route-3291f6991ce3f52c.js +1 -0
  263. package/.next/static/chunks/app/api/update/route-3291f6991ce3f52c.js +1 -0
  264. package/.next/static/chunks/app/api/webhooks/[id]/route-3291f6991ce3f52c.js +1 -0
  265. package/.next/static/chunks/app/chat/page-aea8c8cbfa461e7f.js +1 -0
  266. package/.next/static/chunks/app/executions/{page-b46744c507a6e810.js → page-95fec57bf97ee809.js} +1 -1
  267. package/.next/static/chunks/app/flows/page-7fe295069ccdb5fe.js +1 -0
  268. package/.next/static/chunks/app/mcp/page-0f923960004aa437.js +1 -0
  269. package/.next/static/chunks/app/mcp-flows/route-3291f6991ce3f52c.js +1 -0
  270. package/.next/static/chunks/app/mcp-proxy/[server]/route-3291f6991ce3f52c.js +1 -0
  271. package/.next/static/chunks/app/models/page-f43476ea07d5b501.js +1 -0
  272. package/.next/static/chunks/app/v1/chat/completions/route-3291f6991ce3f52c.js +1 -0
  273. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/breakpoints/route-3291f6991ce3f52c.js +1 -0
  274. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/cancel/route-3291f6991ce3f52c.js +1 -0
  275. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/continue/route-3291f6991ce3f52c.js +1 -0
  276. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/step/route-3291f6991ce3f52c.js +1 -0
  277. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/edit-state/route-3291f6991ce3f52c.js +1 -0
  278. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/events/route-3291f6991ce3f52c.js +1 -0
  279. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/respond/route-3291f6991ce3f52c.js +1 -0
  280. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/route-3291f6991ce3f52c.js +1 -0
  281. package/.next/static/chunks/app/v1/chat/conversations/route-3291f6991ce3f52c.js +1 -0
  282. package/.next/static/chunks/app/v1/models/route-3291f6991ce3f52c.js +1 -0
  283. package/.next/static/geAgl8xNIf0s1v2mfu4tE/_buildManifest.js +1 -0
  284. package/.next/trace +7 -7
  285. package/.next/types/app/api/mcp/test-connection/stream/route.ts +347 -0
  286. package/.next/types/routes.d.ts +2 -1
  287. package/.next/types/validator.ts +9 -0
  288. package/README.md +37 -7
  289. package/{next.config.ts → next.config.mjs} +105 -99
  290. package/package.json +2 -3
  291. package/.next/server/chunks/1986.js +0 -1
  292. package/.next/server/chunks/5486.js +0 -1
  293. package/.next/server/chunks/62.js +0 -1
  294. package/.next/server/chunks/6542.js +0 -1
  295. package/.next/static/GbXXL_8DLT2oVwT-JdpbM/_buildManifest.js +0 -1
  296. package/.next/static/chunks/2380-2a7acfa037ec8e80.js +0 -1
  297. package/.next/static/chunks/3235-dfcb73b8d483f8cd.js +0 -1
  298. package/.next/static/chunks/3750-38474d67566af4c3.js +0 -1
  299. package/.next/static/chunks/3810-cee95063d5535307.js +0 -1
  300. package/.next/static/chunks/39-1732a0b689c7b641.js +0 -1
  301. package/.next/static/chunks/6134-758747aabd77289d.js +0 -8
  302. package/.next/static/chunks/7488-b58bc701d0deda00.js +0 -1
  303. package/.next/static/chunks/8862-1314a13b011c4817.js +0 -1
  304. package/.next/static/chunks/app/api/env/route-acd5b6e731d45f1a.js +0 -1
  305. package/.next/static/chunks/app/api/flow/[id]/route-acd5b6e731d45f1a.js +0 -1
  306. package/.next/static/chunks/app/api/flow/prompt-renderer/route-acd5b6e731d45f1a.js +0 -1
  307. package/.next/static/chunks/app/api/flow/route-acd5b6e731d45f1a.js +0 -1
  308. package/.next/static/chunks/app/api/git/route-acd5b6e731d45f1a.js +0 -1
  309. package/.next/static/chunks/app/api/init/route-acd5b6e731d45f1a.js +0 -1
  310. package/.next/static/chunks/app/api/mcp/cancel/route-acd5b6e731d45f1a.js +0 -1
  311. package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/get/route-acd5b6e731d45f1a.js +0 -1
  312. package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/route-acd5b6e731d45f1a.js +0 -1
  313. package/.next/static/chunks/app/api/mcp/servers/[name]/resources/read/route-acd5b6e731d45f1a.js +0 -1
  314. package/.next/static/chunks/app/api/mcp/servers/[name]/resources/route-acd5b6e731d45f1a.js +0 -1
  315. package/.next/static/chunks/app/api/mcp/servers/[name]/route-acd5b6e731d45f1a.js +0 -1
  316. package/.next/static/chunks/app/api/mcp/servers/[name]/status/route-acd5b6e731d45f1a.js +0 -1
  317. package/.next/static/chunks/app/api/mcp/servers/[name]/tools/[toolName]/route-acd5b6e731d45f1a.js +0 -1
  318. package/.next/static/chunks/app/api/mcp/servers/[name]/tools/route-acd5b6e731d45f1a.js +0 -1
  319. package/.next/static/chunks/app/api/mcp/servers/route-acd5b6e731d45f1a.js +0 -1
  320. package/.next/static/chunks/app/api/mcp/test-connection/route-acd5b6e731d45f1a.js +0 -1
  321. package/.next/static/chunks/app/api/mcp-registry/route-acd5b6e731d45f1a.js +0 -1
  322. package/.next/static/chunks/app/api/mcp-registry/spotlight/route-acd5b6e731d45f1a.js +0 -1
  323. package/.next/static/chunks/app/api/model/[id]/route-acd5b6e731d45f1a.js +0 -1
  324. package/.next/static/chunks/app/api/model/provider/route-acd5b6e731d45f1a.js +0 -1
  325. package/.next/static/chunks/app/api/model/route-acd5b6e731d45f1a.js +0 -1
  326. package/.next/static/chunks/app/api/model/test/route-acd5b6e731d45f1a.js +0 -1
  327. package/.next/static/chunks/app/api/oauth/callback/route-acd5b6e731d45f1a.js +0 -1
  328. package/.next/static/chunks/app/api/oauth/initiate/route-acd5b6e731d45f1a.js +0 -1
  329. package/.next/static/chunks/app/api/oauth/reset/route-acd5b6e731d45f1a.js +0 -1
  330. package/.next/static/chunks/app/api/planned-executions/[id]/route-acd5b6e731d45f1a.js +0 -1
  331. package/.next/static/chunks/app/api/planned-executions/[id]/run/route-acd5b6e731d45f1a.js +0 -1
  332. package/.next/static/chunks/app/api/planned-executions/[id]/runs/route-acd5b6e731d45f1a.js +0 -1
  333. package/.next/static/chunks/app/api/planned-executions/preview-schedule/route-acd5b6e731d45f1a.js +0 -1
  334. package/.next/static/chunks/app/api/planned-executions/route-acd5b6e731d45f1a.js +0 -1
  335. package/.next/static/chunks/app/api/restore/route-acd5b6e731d45f1a.js +0 -1
  336. package/.next/static/chunks/app/api/storage/route-acd5b6e731d45f1a.js +0 -1
  337. package/.next/static/chunks/app/api/update/route-acd5b6e731d45f1a.js +0 -1
  338. package/.next/static/chunks/app/api/webhooks/[id]/route-acd5b6e731d45f1a.js +0 -1
  339. package/.next/static/chunks/app/chat/page-019d2b836f34f40d.js +0 -1
  340. package/.next/static/chunks/app/flows/page-7b5c0e06951398ac.js +0 -1
  341. package/.next/static/chunks/app/mcp/page-1ca55f88a3045b5d.js +0 -1
  342. package/.next/static/chunks/app/mcp-flows/route-acd5b6e731d45f1a.js +0 -1
  343. package/.next/static/chunks/app/mcp-proxy/[server]/route-acd5b6e731d45f1a.js +0 -1
  344. package/.next/static/chunks/app/models/page-a20e6c4e1a5a0c9a.js +0 -1
  345. package/.next/static/chunks/app/v1/chat/completions/route-acd5b6e731d45f1a.js +0 -1
  346. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/breakpoints/route-acd5b6e731d45f1a.js +0 -1
  347. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/cancel/route-acd5b6e731d45f1a.js +0 -1
  348. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/continue/route-acd5b6e731d45f1a.js +0 -1
  349. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/step/route-acd5b6e731d45f1a.js +0 -1
  350. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/edit-state/route-acd5b6e731d45f1a.js +0 -1
  351. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/events/route-acd5b6e731d45f1a.js +0 -1
  352. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/respond/route-acd5b6e731d45f1a.js +0 -1
  353. package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/route-acd5b6e731d45f1a.js +0 -1
  354. package/.next/static/chunks/app/v1/chat/conversations/route-acd5b6e731d45f1a.js +0 -1
  355. package/.next/static/chunks/app/v1/models/route-acd5b6e731d45f1a.js +0 -1
  356. /package/.next/static/{GbXXL_8DLT2oVwT-JdpbM → geAgl8xNIf0s1v2mfu4tE}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- <!DOCTYPE html><!--GbXXL_8DLT2oVwT_JdpbM--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/d1484588c616b291.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-6f17a022ac16e8bd.js"/><script src="/_next/static/chunks/4bd1b696-182b6b13bdad92e3.js" async=""></script><script src="/_next/static/chunks/1255-13d973e0759ea6d6.js" async=""></script><script src="/_next/static/chunks/main-app-faff38c77cb00119.js" async=""></script><script src="/_next/static/chunks/app/layout-2878f13d7e253503.js" async=""></script><script src="/_next/static/chunks/2678-c88052addfb0478a.js" async=""></script><script src="/_next/static/chunks/4754-5c62bb61142f82d1.js" async=""></script><script src="/_next/static/chunks/9244-3281f7fd02003a2c.js" async=""></script><script src="/_next/static/chunks/8548-8e4a95334064e8b2.js" async=""></script><script src="/_next/static/chunks/690-391bc0f482a9f67c.js" async=""></script><script src="/_next/static/chunks/9562-93cc45aef3630781.js" async=""></script><script src="/_next/static/chunks/2003-7710c23acaef11c9.js" async=""></script><script src="/_next/static/chunks/488-623d07c3fbc21e28.js" async=""></script><script src="/_next/static/chunks/3272-fd8d59523f61da96.js" async=""></script><script src="/_next/static/chunks/5648-2c6caf3d55f95e11.js" async=""></script><script src="/_next/static/chunks/7396-807a034f58b57712.js" async=""></script><script src="/_next/static/chunks/3077-565833c67440a7fa.js" async=""></script><script src="/_next/static/chunks/8598-1b627b3d682b364a.js" async=""></script><script src="/_next/static/chunks/7329-78f54f68ea2d37e2.js" async=""></script><script src="/_next/static/chunks/3750-38474d67566af4c3.js" async=""></script><script src="/_next/static/chunks/1424-01898260211a09d0.js" async=""></script><script src="/_next/static/chunks/2005-f9d38c39f10c321f.js" async=""></script><script src="/_next/static/chunks/7126-2bafddf1b09cacac.js" async=""></script><script src="/_next/static/chunks/7488-b58bc701d0deda00.js" async=""></script><script src="/_next/static/chunks/1374-e084b3c40554288a.js" async=""></script><script src="/_next/static/chunks/2160-4d9f132965bc2a89.js" async=""></script><script src="/_next/static/chunks/9164-81ca1a1bccdc5ed2.js" async=""></script><script src="/_next/static/chunks/2380-2a7acfa037ec8e80.js" async=""></script><script src="/_next/static/chunks/3810-cee95063d5535307.js" async=""></script><script src="/_next/static/chunks/app/mcp/page-1ca55f88a3045b5d.js" async=""></script><title>FLUJO</title><meta name="description" content="A browser-based application for managing models, MCP servers, flows and chat interactions"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_246ccd __variable_c29908 antialiased"><div hidden=""><!--$--><!--/$--></div><!--$--><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div>Loading theme...</div><!--/$--><!--/$--><script src="/_next/static/chunks/webpack-6f17a022ac16e8bd.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[72403,[\"7177\",\"static/chunks/app/layout-2878f13d7e253503.js\"],\"default\"]\n3:I[9766,[],\"\"]\n4:I[98924,[],\"\"]\n5:I[81959,[],\"ClientPageRoot\"]\n"])</script><script>self.__next_f.push([1,"6:I[31742,[\"2678\",\"static/chunks/2678-c88052addfb0478a.js\",\"4754\",\"static/chunks/4754-5c62bb61142f82d1.js\",\"9244\",\"static/chunks/9244-3281f7fd02003a2c.js\",\"8548\",\"static/chunks/8548-8e4a95334064e8b2.js\",\"690\",\"static/chunks/690-391bc0f482a9f67c.js\",\"9562\",\"static/chunks/9562-93cc45aef3630781.js\",\"2003\",\"static/chunks/2003-7710c23acaef11c9.js\",\"488\",\"static/chunks/488-623d07c3fbc21e28.js\",\"3272\",\"static/chunks/3272-fd8d59523f61da96.js\",\"5648\",\"static/chunks/5648-2c6caf3d55f95e11.js\",\"7396\",\"static/chunks/7396-807a034f58b57712.js\",\"3077\",\"static/chunks/3077-565833c67440a7fa.js\",\"8598\",\"static/chunks/8598-1b627b3d682b364a.js\",\"7329\",\"static/chunks/7329-78f54f68ea2d37e2.js\",\"3750\",\"static/chunks/3750-38474d67566af4c3.js\",\"1424\",\"static/chunks/1424-01898260211a09d0.js\",\"2005\",\"static/chunks/2005-f9d38c39f10c321f.js\",\"7126\",\"static/chunks/7126-2bafddf1b09cacac.js\",\"7488\",\"static/chunks/7488-b58bc701d0deda00.js\",\"1374\",\"static/chunks/1374-e084b3c40554288a.js\",\"2160\",\"static/chunks/2160-4d9f132965bc2a89.js\",\"9164\",\"static/chunks/9164-81ca1a1bccdc5ed2.js\",\"2380\",\"static/chunks/2380-2a7acfa037ec8e80.js\",\"3810\",\"static/chunks/3810-cee95063d5535307.js\",\"313\",\"static/chunks/app/mcp/page-1ca55f88a3045b5d.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"9:I[24431,[],\"OutletBoundary\"]\nb:I[15278,[],\"AsyncMetadataOutlet\"]\nd:I[24431,[],\"ViewportBoundary\"]\nf:I[24431,[],\"MetadataBoundary\"]\n10:\"$Sreact.suspense\"\n12:I[57150,[],\"\"]\n:HL[\"/_next/static/css/d1484588c616b291.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"GbXXL_8DLT2oVwT-JdpbM\",\"p\":\"\",\"c\":[\"\",\"mcp\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"mcp\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/d1484588c616b291.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_246ccd __variable_c29908 antialiased\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"mcp\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L5\",null,{\"Component\":\"$6\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@7\",\"$@8\"]}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",[\"$\",\"$Lb\",null,{\"promise\":\"$@c\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null],[\"$\",\"$Lf\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$10\",null,{\"fallback\":null,\"children\":\"$L11\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$12\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"7:{}\n8:\"$0:f:0:1:2:children:2:children:1:props:children:0:props:params\"\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"c:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"FLUJO\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"A browser-based application for managing models, MCP servers, flows and chat interactions\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:\"$c:metadata\"\n"])</script></body></html>
1
+ <!DOCTYPE html><!--geAgl8xNIf0s1v2mfu4tE--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/d1484588c616b291.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-6f17a022ac16e8bd.js"/><script src="/_next/static/chunks/4bd1b696-182b6b13bdad92e3.js" async=""></script><script src="/_next/static/chunks/1255-13d973e0759ea6d6.js" async=""></script><script src="/_next/static/chunks/main-app-faff38c77cb00119.js" async=""></script><script src="/_next/static/chunks/app/layout-2878f13d7e253503.js" async=""></script><script src="/_next/static/chunks/2678-c88052addfb0478a.js" async=""></script><script src="/_next/static/chunks/4754-5c62bb61142f82d1.js" async=""></script><script src="/_next/static/chunks/9244-3281f7fd02003a2c.js" async=""></script><script src="/_next/static/chunks/8548-8e4a95334064e8b2.js" async=""></script><script src="/_next/static/chunks/690-391bc0f482a9f67c.js" async=""></script><script src="/_next/static/chunks/9562-93cc45aef3630781.js" async=""></script><script src="/_next/static/chunks/2003-7710c23acaef11c9.js" async=""></script><script src="/_next/static/chunks/488-623d07c3fbc21e28.js" async=""></script><script src="/_next/static/chunks/3272-fd8d59523f61da96.js" async=""></script><script src="/_next/static/chunks/5648-2c6caf3d55f95e11.js" async=""></script><script src="/_next/static/chunks/7396-807a034f58b57712.js" async=""></script><script src="/_next/static/chunks/3077-565833c67440a7fa.js" async=""></script><script src="/_next/static/chunks/8598-1b627b3d682b364a.js" async=""></script><script src="/_next/static/chunks/7329-78f54f68ea2d37e2.js" async=""></script><script src="/_next/static/chunks/7458-4445e76668151564.js" async=""></script><script src="/_next/static/chunks/1424-01898260211a09d0.js" async=""></script><script src="/_next/static/chunks/2005-f9d38c39f10c321f.js" async=""></script><script src="/_next/static/chunks/7126-2bafddf1b09cacac.js" async=""></script><script src="/_next/static/chunks/4205-b9e33afc7e96ecb9.js" async=""></script><script src="/_next/static/chunks/1374-e084b3c40554288a.js" async=""></script><script src="/_next/static/chunks/2160-4d9f132965bc2a89.js" async=""></script><script src="/_next/static/chunks/9164-81ca1a1bccdc5ed2.js" async=""></script><script src="/_next/static/chunks/2380-5696e0dc0469f6a5.js" async=""></script><script src="/_next/static/chunks/687-98ba5f5043866f48.js" async=""></script><script src="/_next/static/chunks/app/mcp/page-0f923960004aa437.js" async=""></script><title>FLUJO</title><meta name="description" content="A browser-based application for managing models, MCP servers, flows and chat interactions"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_246ccd __variable_c29908 antialiased"><div hidden=""><!--$--><!--/$--></div><!--$--><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div>Loading theme...</div><!--/$--><!--/$--><script src="/_next/static/chunks/webpack-6f17a022ac16e8bd.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[72403,[\"7177\",\"static/chunks/app/layout-2878f13d7e253503.js\"],\"default\"]\n3:I[9766,[],\"\"]\n4:I[98924,[],\"\"]\n5:I[81959,[],\"ClientPageRoot\"]\n"])</script><script>self.__next_f.push([1,"6:I[31742,[\"2678\",\"static/chunks/2678-c88052addfb0478a.js\",\"4754\",\"static/chunks/4754-5c62bb61142f82d1.js\",\"9244\",\"static/chunks/9244-3281f7fd02003a2c.js\",\"8548\",\"static/chunks/8548-8e4a95334064e8b2.js\",\"690\",\"static/chunks/690-391bc0f482a9f67c.js\",\"9562\",\"static/chunks/9562-93cc45aef3630781.js\",\"2003\",\"static/chunks/2003-7710c23acaef11c9.js\",\"488\",\"static/chunks/488-623d07c3fbc21e28.js\",\"3272\",\"static/chunks/3272-fd8d59523f61da96.js\",\"5648\",\"static/chunks/5648-2c6caf3d55f95e11.js\",\"7396\",\"static/chunks/7396-807a034f58b57712.js\",\"3077\",\"static/chunks/3077-565833c67440a7fa.js\",\"8598\",\"static/chunks/8598-1b627b3d682b364a.js\",\"7329\",\"static/chunks/7329-78f54f68ea2d37e2.js\",\"7458\",\"static/chunks/7458-4445e76668151564.js\",\"1424\",\"static/chunks/1424-01898260211a09d0.js\",\"2005\",\"static/chunks/2005-f9d38c39f10c321f.js\",\"7126\",\"static/chunks/7126-2bafddf1b09cacac.js\",\"4205\",\"static/chunks/4205-b9e33afc7e96ecb9.js\",\"1374\",\"static/chunks/1374-e084b3c40554288a.js\",\"2160\",\"static/chunks/2160-4d9f132965bc2a89.js\",\"9164\",\"static/chunks/9164-81ca1a1bccdc5ed2.js\",\"2380\",\"static/chunks/2380-5696e0dc0469f6a5.js\",\"687\",\"static/chunks/687-98ba5f5043866f48.js\",\"313\",\"static/chunks/app/mcp/page-0f923960004aa437.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"9:I[24431,[],\"OutletBoundary\"]\nb:I[15278,[],\"AsyncMetadataOutlet\"]\nd:I[24431,[],\"ViewportBoundary\"]\nf:I[24431,[],\"MetadataBoundary\"]\n10:\"$Sreact.suspense\"\n12:I[57150,[],\"\"]\n:HL[\"/_next/static/css/d1484588c616b291.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"geAgl8xNIf0s1v2mfu4tE\",\"p\":\"\",\"c\":[\"\",\"mcp\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"mcp\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/d1484588c616b291.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_246ccd __variable_c29908 antialiased\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"mcp\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L5\",null,{\"Component\":\"$6\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@7\",\"$@8\"]}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",[\"$\",\"$Lb\",null,{\"promise\":\"$@c\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],null],[\"$\",\"$Lf\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$10\",null,{\"fallback\":null,\"children\":\"$L11\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$12\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"7:{}\n8:\"$0:f:0:1:2:children:2:children:1:props:children:0:props:params\"\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"c:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"FLUJO\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"A browser-based application for managing models, MCP servers, flows and chat interactions\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:\"$c:metadata\"\n"])</script></body></html>
@@ -3,7 +3,7 @@
3
3
  3:I[9766,[],""]
4
4
  4:I[98924,[],""]
5
5
  5:I[81959,[],"ClientPageRoot"]
6
- 6:I[31742,["2678","static/chunks/2678-c88052addfb0478a.js","4754","static/chunks/4754-5c62bb61142f82d1.js","9244","static/chunks/9244-3281f7fd02003a2c.js","8548","static/chunks/8548-8e4a95334064e8b2.js","690","static/chunks/690-391bc0f482a9f67c.js","9562","static/chunks/9562-93cc45aef3630781.js","2003","static/chunks/2003-7710c23acaef11c9.js","488","static/chunks/488-623d07c3fbc21e28.js","3272","static/chunks/3272-fd8d59523f61da96.js","5648","static/chunks/5648-2c6caf3d55f95e11.js","7396","static/chunks/7396-807a034f58b57712.js","3077","static/chunks/3077-565833c67440a7fa.js","8598","static/chunks/8598-1b627b3d682b364a.js","7329","static/chunks/7329-78f54f68ea2d37e2.js","3750","static/chunks/3750-38474d67566af4c3.js","1424","static/chunks/1424-01898260211a09d0.js","2005","static/chunks/2005-f9d38c39f10c321f.js","7126","static/chunks/7126-2bafddf1b09cacac.js","7488","static/chunks/7488-b58bc701d0deda00.js","1374","static/chunks/1374-e084b3c40554288a.js","2160","static/chunks/2160-4d9f132965bc2a89.js","9164","static/chunks/9164-81ca1a1bccdc5ed2.js","2380","static/chunks/2380-2a7acfa037ec8e80.js","3810","static/chunks/3810-cee95063d5535307.js","313","static/chunks/app/mcp/page-1ca55f88a3045b5d.js"],"default"]
6
+ 6:I[31742,["2678","static/chunks/2678-c88052addfb0478a.js","4754","static/chunks/4754-5c62bb61142f82d1.js","9244","static/chunks/9244-3281f7fd02003a2c.js","8548","static/chunks/8548-8e4a95334064e8b2.js","690","static/chunks/690-391bc0f482a9f67c.js","9562","static/chunks/9562-93cc45aef3630781.js","2003","static/chunks/2003-7710c23acaef11c9.js","488","static/chunks/488-623d07c3fbc21e28.js","3272","static/chunks/3272-fd8d59523f61da96.js","5648","static/chunks/5648-2c6caf3d55f95e11.js","7396","static/chunks/7396-807a034f58b57712.js","3077","static/chunks/3077-565833c67440a7fa.js","8598","static/chunks/8598-1b627b3d682b364a.js","7329","static/chunks/7329-78f54f68ea2d37e2.js","7458","static/chunks/7458-4445e76668151564.js","1424","static/chunks/1424-01898260211a09d0.js","2005","static/chunks/2005-f9d38c39f10c321f.js","7126","static/chunks/7126-2bafddf1b09cacac.js","4205","static/chunks/4205-b9e33afc7e96ecb9.js","1374","static/chunks/1374-e084b3c40554288a.js","2160","static/chunks/2160-4d9f132965bc2a89.js","9164","static/chunks/9164-81ca1a1bccdc5ed2.js","2380","static/chunks/2380-5696e0dc0469f6a5.js","687","static/chunks/687-98ba5f5043866f48.js","313","static/chunks/app/mcp/page-0f923960004aa437.js"],"default"]
7
7
  9:I[24431,[],"OutletBoundary"]
8
8
  b:I[15278,[],"AsyncMetadataOutlet"]
9
9
  d:I[24431,[],"ViewportBoundary"]
@@ -11,7 +11,7 @@ f:I[24431,[],"MetadataBoundary"]
11
11
  10:"$Sreact.suspense"
12
12
  12:I[57150,[],""]
13
13
  :HL["/_next/static/css/d1484588c616b291.css","style"]
14
- 0:{"P":null,"b":"GbXXL_8DLT2oVwT-JdpbM","p":"","c":["","mcp"],"i":false,"f":[[["",{"children":["mcp",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/d1484588c616b291.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__variable_246ccd __variable_c29908 antialiased","children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}],{"children":["mcp",["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L5",null,{"Component":"$6","searchParams":{},"params":{},"promises":["$@7","$@8"]}],null,["$","$L9",null,{"children":["$La",["$","$Lb",null,{"promise":"$@c"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Ld",null,{"children":"$Le"}],null],["$","$Lf",null,{"children":["$","div",null,{"hidden":true,"children":["$","$10",null,{"fallback":null,"children":"$L11"}]}]}]]}],false]],"m":"$undefined","G":["$12",[]],"s":false,"S":true}
14
+ 0:{"P":null,"b":"geAgl8xNIf0s1v2mfu4tE","p":"","c":["","mcp"],"i":false,"f":[[["",{"children":["mcp",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/d1484588c616b291.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"className":"__variable_246ccd __variable_c29908 antialiased","children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}],{"children":["mcp",["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L5",null,{"Component":"$6","searchParams":{},"params":{},"promises":["$@7","$@8"]}],null,["$","$L9",null,{"children":["$La",["$","$Lb",null,{"promise":"$@c"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Ld",null,{"children":"$Le"}],null],["$","$Lf",null,{"children":["$","div",null,{"hidden":true,"children":["$","$10",null,{"fallback":null,"children":"$L11"}]}]}]]}],false]],"m":"$undefined","G":["$12",[]],"s":false,"S":true}
15
15
  7:{}
16
16
  8:"$0:f:0:1:2:children:2:children:1:props:children:0:props:params"
17
17
  e:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
@@ -1,3 +1,3 @@
1
- (()=>{var a={};a.id=8329,a.ids=[8329],a.modules={94:(a,b,c)=>{Promise.resolve().then(c.bind(c,81637)),Promise.resolve().then(c.bind(c,79515)),Promise.resolve().then(c.bind(c,24207)),Promise.resolve().then(c.bind(c,52402)),Promise.resolve().then(c.bind(c,78763)),Promise.resolve().then(c.bind(c,61615))},261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1039:(a,b,c)=>{Promise.resolve().then(c.bind(c,14867))},1708:a=>{"use strict";a.exports=require("node:process")},2671:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\app\\\\models\\\\ModelClient.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\ModelClient.tsx","default")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4573:a=>{"use strict";a.exports=require("node:buffer")},4822:(a,b,c)=>{Promise.resolve().then(c.bind(c,73737)),Promise.resolve().then(c.bind(c,16825)),Promise.resolve().then(c.t.bind(c,69389,23)),Promise.resolve().then(c.t.bind(c,63112,23)),Promise.resolve().then(c.bind(c,2671)),Promise.resolve().then(c.bind(c,37997))},4984:a=>{"use strict";a.exports=require("readline")},8086:a=>{"use strict";a.exports=require("module")},9287:(a,b,c)=>{Promise.resolve().then(c.bind(c,92093))},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11525:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81170,23)),Promise.resolve().then(c.t.bind(c,23597,23)),Promise.resolve().then(c.t.bind(c,36893,23)),Promise.resolve().then(c.t.bind(c,89748,23)),Promise.resolve().then(c.t.bind(c,6060,23)),Promise.resolve().then(c.t.bind(c,7184,23)),Promise.resolve().then(c.t.bind(c,69576,23)),Promise.resolve().then(c.t.bind(c,73041,23)),Promise.resolve().then(c.t.bind(c,51384,23))},11723:a=>{"use strict";a.exports=require("querystring")},11962:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return j}});let d=c(75338),e=c(74515),f=c(69389),g=c(63112);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},11997:a=>{"use strict";a.exports=require("punycode")},12412:a=>{"use strict";a.exports=require("assert")},14867:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\app\\\\models\\\\error.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\error.tsx","default")},16825:(a,b,c)=>{"use strict";c.d(b,{default:()=>e});var d=c(97954);(0,d.registerClientReference)(function(){throw Error("Attempted to call TypographyRoot() from the server but TypographyRoot is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Typography\\Typography.js","TypographyRoot");let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\node_modules\\\\@mui\\\\material\\\\Typography\\\\Typography.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Typography\\Typography.js","default")},18830:(a,b,c)=>{"use strict";function d(a){return a&&a.__esModule?a:{default:a}}c.r(b),c.d(b,{_:()=>d})},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},19771:a=>{"use strict";a.exports=require("process")},19815:(a,b,c)=>{"use strict";c.d(b,{h:()=>i});let d={LOG_LEVEL:3},e={VERBOSE:-1,DEBUG:0,INFO:1,WARN:2,ERROR:3},f="number"==typeof d.LOG_LEVEL?d.LOG_LEVEL:e.ERROR;function g(a,b=0){if(b>6)return String(a);if(!(a instanceof Error))return a;let c={name:a.name,message:a.message};for(let d of Object.getOwnPropertyNames(a)){if("name"===d||"message"===d)continue;let e=a[d];"function"!=typeof e&&("stack"===d?c.stack=e:"cause"===d?c.cause=g(e,b+1):"errors"===d&&Array.isArray(e)?c.errors=e.map(a=>g(a,b+1)):c[d]=e)}return c}function h(a,b,c,d,h){if(a>=("number"==typeof h?h:f)){if("function"==typeof d)try{d=d()}catch{d="[lazy log data threw]"}let f=new Date().toISOString(),h=`[${f}] [${b}]`,i=`${h} ${c}`;if(void 0!==d)if(d instanceof Error||"object"==typeof d)try{let a=d instanceof Error?g(d):d,b=JSON.stringify(a,(a,b)=>b instanceof Error?g(b):b,2);i+=`:
1
+ (()=>{var a={};a.id=8329,a.ids=[8329],a.modules={94:(a,b,c)=>{Promise.resolve().then(c.bind(c,81637)),Promise.resolve().then(c.bind(c,79515)),Promise.resolve().then(c.bind(c,24207)),Promise.resolve().then(c.bind(c,52402)),Promise.resolve().then(c.bind(c,7904)),Promise.resolve().then(c.bind(c,61615))},261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1039:(a,b,c)=>{Promise.resolve().then(c.bind(c,14867))},1708:a=>{"use strict";a.exports=require("node:process")},2671:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\app\\\\models\\\\ModelClient.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\ModelClient.tsx","default")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4573:a=>{"use strict";a.exports=require("node:buffer")},4822:(a,b,c)=>{Promise.resolve().then(c.bind(c,73737)),Promise.resolve().then(c.bind(c,16825)),Promise.resolve().then(c.t.bind(c,69389,23)),Promise.resolve().then(c.t.bind(c,63112,23)),Promise.resolve().then(c.bind(c,2671)),Promise.resolve().then(c.bind(c,37997))},4984:a=>{"use strict";a.exports=require("readline")},7904:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>aX});var d,e,f=c(21124),g=c(38301),h=c(68949),i=c(54573),j=c(81637),k=c(37674),l=c(67101),m=c(20830),n=c(88745),o=c(47902),p=c(40973);c(2117);var q=c(8521),r=c(82666),s=c(30818),t=c(27114),u=c(79515),v=c(43312),w=c(98463),x=c(44079),y=c(12033),z=c(91034);let A=(0,c(27080).A)((0,f.jsx)("path",{d:"M19.8 18.4 14 10.67V6.5l1.35-1.69c.26-.33.03-.81-.39-.81H9.04c-.42 0-.65.48-.39.81L10 6.5v4.17L4.2 18.4c-.49.66-.02 1.6.8 1.6h14c.82 0 1.29-.94.8-1.6"}),"Science"),B=[{id:"openai",label:"OpenAI",provider:"openai",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.openai.com/v1",showBaseUrl:!0},{id:"openrouter",label:"OpenRouter",provider:"openrouter",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://openrouter.ai/api/v1",showBaseUrl:!0},{id:"xai",label:"X.ai",provider:"xai",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.x.ai/v1",showBaseUrl:!0},{id:"ollama",label:"Ollama",provider:"ollama",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"http://localhost:11434/v1",showBaseUrl:!0},{id:"gemini-openai",label:"Gemini (OpenAI Format)",provider:"gemini",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://generativelanguage.googleapis.com/v1beta/openai/",showBaseUrl:!0},{id:"gemini-native",label:"Gemini (Native)",provider:"gemini",adapter:"gemini",sdkLabel:"GenAI SDK",baseUrl:"",showBaseUrl:!1,defaultModels:["gemini-2.5-pro","gemini-2.5-flash","gemini-2.5-flash-lite","gemini-2.0-flash"]},{id:"anthropic-openai",label:"Anthropic (OpenAI Format)",provider:"anthropic",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.anthropic.com/v1/",showBaseUrl:!0},{id:"anthropic-native",label:"Anthropic (Native)",provider:"anthropic",adapter:"anthropic",sdkLabel:"Anthropic SDK",baseUrl:"",showBaseUrl:!1,defaultModels:["claude-opus-4-8","claude-sonnet-4-6","claude-haiku-4-5-20251001","claude-fable-5"]},{id:"claude-subscription",label:"Claude Subscription",provider:"claude-subscription",adapter:"claude-cli",sdkLabel:"Claude CLI",baseUrl:"",showBaseUrl:!1,defaultModels:["opus","sonnet","haiku","fable"]}];function C(a,b){let c=a||"openai",d=b||"openai";return B.find(a=>a.provider===c&&a.adapter===d)||B.find(a=>a.provider===c)||B[0]}var D=c(83434),E=c(19815),F=c(41893),G=c(40512),H=c(83899),I=c(52327),J=c(91059),K=c(19925),L=c(8165),M=c(65343);let N=({title:a,attempt:b})=>(0,f.jsxs)(j.default,{sx:{mb:2},children:[(0,f.jsxs)(j.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:.5},children:[b.ok?(0,f.jsx)(L.A,{color:"success",fontSize:"small"}):(0,f.jsx)(M.A,{color:"error",fontSize:"small"}),(0,f.jsx)(u.default,{variant:"subtitle2",children:a}),"number"==typeof b.status&&(0,f.jsx)(F.A,{size:"small",label:`HTTP ${b.status}`}),(0,f.jsx)(F.A,{size:"small",variant:"outlined",label:`${b.durationMs} ms`})]}),b.ok?(0,f.jsxs)(u.default,{variant:"body2",color:"text.secondary",sx:{pl:3},children:["Response: ",b.content?`"${b.content}"`:"(empty)"]}):(0,f.jsxs)(j.default,{sx:{pl:3},children:[(0,f.jsx)(u.default,{variant:"body2",color:"error.main",children:b.error?.message}),(b.error?.code||b.error?.type)&&(0,f.jsxs)(u.default,{variant:"caption",color:"text.secondary",display:"block",children:[b.error?.type?`type: ${b.error.type}`:"",b.error?.type&&b.error?.code?" \xb7 ":"",b.error?.code?`code: ${b.error.code}`:""]}),b.error?.retryAfter&&(0,f.jsxs)(u.default,{variant:"caption",color:"text.secondary",display:"block",children:["retry-after: ",b.error.retryAfter,"s"]}),b.error?.body!==void 0&&(0,f.jsx)(j.default,{component:"pre",sx:{mt:.5,p:1,bgcolor:"action.hover",borderRadius:1,fontSize:"0.7rem",overflowX:"auto",maxHeight:160},children:JSON.stringify(b.error.body,null,2)})]})]}),O=({open:a,modelLabel:b,loading:c,result:d,error:e,onClose:g,onRetry:h})=>(0,f.jsxs)(G.A,{open:a,onClose:g,maxWidth:"sm",fullWidth:!0,children:[(0,f.jsxs)(H.A,{children:["Test model: ",b]}),(0,f.jsx)(I.A,{dividers:!0,children:c?(0,f.jsxs)(j.default,{sx:{display:"flex",alignItems:"center",gap:2,py:3},children:[(0,f.jsx)(q.default,{size:24}),(0,f.jsx)(u.default,{variant:"body2",children:"Sending a direct test request (SDK + axios)…"})]}):e?(0,f.jsx)(n.A,{severity:"error",children:e}):d?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(n.A,{severity:d.ok?"success":"warning",sx:{mb:2},children:d.diagnosis}),(0,f.jsxs)(u.default,{variant:"caption",color:"text.secondary",display:"block",sx:{mb:2},children:["model: ",d.model,d.baseUrl?` \xb7 ${d.baseUrl}`:"",d.provider?` \xb7 ${d.provider}`:""]}),(0,f.jsx)(J.A,{sx:{mb:2}}),(0,f.jsx)(N,{title:"OpenAI SDK (used by flows)",attempt:d.sdk}),(0,f.jsx)(N,{title:"axios (independent cross-check)",attempt:d.axios})]}):null}),(0,f.jsxs)(K.A,{children:[(0,f.jsx)(m.A,{onClick:h,disabled:c,children:"Run again"}),(0,f.jsx)(m.A,{onClick:g,variant:"contained",children:"Close"})]})]}),P=(0,E.h)("frontend/components/models/list/ModelCard"),Q=({model:a,onEdit:b,onDelete:c})=>{let[d,e]=(0,g.useState)(!1),[h,i]=(0,g.useState)(!1),[k,l]=(0,g.useState)(null),[m,n]=(0,g.useState)(null),o=async()=>{i(!0),n(null),l(null);try{let b=await (0,D.X)().testModel({modelId:a.id});l(b)}catch(b){P.error("Model test failed",{modelId:a.id,error:b}),n(b instanceof Error?b.message:"Failed to run test")}finally{i(!1)}};return(0,f.jsxs)(s.A,{elevation:2,sx:{height:"100%",display:"flex",flexDirection:"column"},children:[(0,f.jsxs)(t.A,{sx:{flexGrow:1},children:[(0,f.jsx)(u.default,{variant:"h6",gutterBottom:!0,children:a.displayName||a.name}),(0,f.jsx)(u.default,{variant:"body2",color:"text.secondary",sx:{mb:2},style:{display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",overflow:"hidden",textOverflow:"ellipsis"},children:a.description}),(0,f.jsxs)(j.default,{sx:{mb:1},children:[(0,f.jsxs)(u.default,{variant:"body2",color:"text.secondary",children:["Provider: ",C(a.provider,a.adapter).label]}),a.displayName&&(0,f.jsxs)(u.default,{variant:"body2",color:"text.secondary",noWrap:!0,children:["Model: ",a.name]}),"number"==typeof a.contextWindow&&(0,f.jsxs)(u.default,{variant:"body2",color:"text.secondary",children:["Context: ",a.contextWindow.toLocaleString()," tokens"]})]}),a.baseUrl&&(0,f.jsx)(v.A,{title:a.baseUrl,arrow:!0,placement:"top",children:(0,f.jsxs)(u.default,{variant:"body2",color:"text.secondary",noWrap:!0,children:["Base URL: ",a.baseUrl]})})]}),(0,f.jsxs)(w.A,{disableSpacing:!0,children:[(0,f.jsx)(v.A,{title:"Test model (direct SDK call, no flow)",arrow:!0,children:(0,f.jsx)(x.A,{"aria-label":"test",onClick:()=>{e(!0),o()},children:(0,f.jsx)(A,{})})}),(0,f.jsx)(x.A,{"aria-label":"edit",onClick:b,children:(0,f.jsx)(y.A,{})}),(0,f.jsx)(x.A,{"aria-label":"delete",onClick:c,children:(0,f.jsx)(z.A,{})})]}),(0,f.jsx)(O,{open:d,modelLabel:a.displayName||a.name,loading:h,result:k,error:m,onClose:()=>e(!1),onRetry:o})]})},R=(0,E.h)("frontend/components/models/list/ModelList"),S=({models:a,isLoading:b,onAdd:c,onUpdate:d,onDelete:e})=>{if(b)return(0,f.jsx)(j.default,{display:"flex",justifyContent:"center",py:4,children:(0,f.jsx)(q.default,{})});let g=async a=>{let b=await d(a);b.success||R.error("Failed to update model in ModelList",b.error)};return(0,f.jsx)(r.Ay,{container:!0,spacing:2,children:a&&0!==a.length?a.map(a=>(0,f.jsx)(r.Ay,{item:!0,xs:12,sm:6,md:4,children:(0,f.jsx)(Q,{model:a,onEdit:()=>g(a),onDelete:()=>e(a.id)})},a.id)):(0,f.jsx)(r.Ay,{item:!0,xs:12,children:(0,f.jsx)(j.default,{textAlign:"center",py:4,children:"No models found"})})})};var T=c(82605),U=c(98256),V=c(7675),W=c(94367),X=c(43249),Y=c(2783),Z=c(37489),$=c(92869),_=c(55973),aa=c(66335),ab=c(62383),ac=c(10005);function ad(a){return a.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}let ae=function(a={}){let{ignoreAccents:b=!0,ignoreCase:c=!0,limit:d,matchFrom:e="any",stringify:f,trim:g=!1}=a;return(a,{inputValue:h,getOptionLabel:i})=>{let j=g?h.trim():h;c&&(j=j.toLowerCase()),b&&(j=ad(j));let k=j?a.filter(a=>{let d=(f||i)(a);return c&&(d=d.toLowerCase()),b&&(d=ad(d)),"start"===e?d.startsWith(j):d.includes(j)}):a;return"number"==typeof d?k.slice(0,d):k}}(),af=a=>null!==a.current&&a.current.parentElement?.contains(document.activeElement),ag=[];function ah(a,b,c){if(b||null==a)return"";let d=c(a);return"string"==typeof d?d:""}let ai=function(a){let{unstable_isActiveElementInListbox:b=af,unstable_classNamePrefix:c="Mui",autoComplete:d=!1,autoHighlight:e=!1,autoSelect:f=!1,blurOnSelect:h=!1,clearOnBlur:i=!a.freeSolo,clearOnEscape:j=!1,componentName:k="useAutocomplete",defaultValue:l=a.multiple?ag:null,disableClearable:m=!1,disableCloseOnSelect:n=!1,disabled:o,disabledItemsFocusable:p=!1,disableListWrap:q=!1,filterOptions:r=ae,filterSelectedOptions:s=!1,freeSolo:t=!1,getOptionDisabled:u,getOptionKey:v,getOptionLabel:w=a=>a.label??a,groupBy:x,handleHomeEndKeys:y=!a.freeSolo,id:z,includeInputInList:A=!1,inputValue:B,isOptionEqualToValue:C=(a,b)=>a===b,multiple:D=!1,onChange:E,onClose:F,onHighlightChange:G,onInputChange:H,onOpen:I,open:J,openOnFocus:K=!1,options:L,readOnly:M=!1,selectOnFocus:N=!a.freeSolo,value:O}=a,P=(0,$.A)(z),Q=w;Q=a=>{let b=w(a);return"string"!=typeof b?String(b):b};let R=g.useRef(!1),S=g.useRef(!0),T=g.useRef(null),U=g.useRef(null),[V,W]=g.useState(null),[X,Y]=g.useState(-1),Z=e?0:-1,ad=g.useRef(Z),ai=g.useRef(ah(l??O,D,Q)).current,[aj,ak]=(0,_.A)({controlled:O,default:l,name:k}),[al,am]=(0,_.A)({controlled:B,default:ai,name:k,state:"inputValue"}),[an,ao]=g.useState(!1),ap=g.useCallback((a,b,c)=>{if(!(D?aj.length<b.length:null!==b)&&!i)return;let d=ah(b,D,Q);al!==d&&(am(d),H&&H(a,d,c))},[Q,al,D,H,am,i,aj]),[aq,ar]=(0,_.A)({controlled:J,default:!1,name:k,state:"open"}),[as,at]=g.useState(!0),au=!D&&null!=aj&&al===Q(aj),av=aq&&!M,aw=av?r(L.filter(a=>!(s&&(D?aj:[aj]).some(b=>null!==b&&C(a,b)))),{inputValue:au&&as?"":al,getOptionLabel:Q}):[],ax=(0,aa.A)({filteredOptions:aw,value:aj,inputValue:al});g.useEffect(()=>{let a=aj!==ax.value;(!an||a)&&(!t||a)&&ap(null,aj,"reset")},[aj,ap,an,ax.value,t]);let ay=aq&&aw.length>0&&!M,az=(0,ab.A)(a=>{-1===a?T.current.focus():V.querySelector(`[data-tag-index="${a}"]`).focus()});g.useEffect(()=>{D&&X>aj.length-1&&(Y(-1),az(-1))},[aj,D,X,az]);let aA=(0,ab.A)(({event:a,index:b,reason:d})=>{if(ad.current=b,-1===b?T.current.removeAttribute("aria-activedescendant"):T.current.setAttribute("aria-activedescendant",`${P}-option-${b}`),G&&["mouse","keyboard","touch"].includes(d)&&G(a,-1===b?null:aw[b],d),!U.current)return;let e=U.current.querySelector(`[role="option"].${c}-focused`);e&&(e.classList.remove(`${c}-focused`),e.classList.remove(`${c}-focusVisible`));let f=U.current;if("listbox"!==U.current.getAttribute("role")&&(f=U.current.parentElement.querySelector('[role="listbox"]')),!f)return;if(-1===b){f.scrollTop=0;return}let g=U.current.querySelector(`[data-option-index="${b}"]`);if(g&&(g.classList.add(`${c}-focused`),"keyboard"===d&&g.classList.add(`${c}-focusVisible`),f.scrollHeight>f.clientHeight&&"mouse"!==d&&"touch"!==d)){let a=f.clientHeight+f.scrollTop,b=g.offsetTop+g.offsetHeight;b>a?f.scrollTop=b-f.clientHeight:g.offsetTop-g.offsetHeight*(1.3*!!x)<f.scrollTop&&(f.scrollTop=g.offsetTop-g.offsetHeight*(1.3*!!x))}}),aB=(0,ab.A)(({event:a,diff:b,direction:c="next",reason:e})=>{if(!av)return;let f=function(a,b){if(!U.current||a<0||a>=aw.length)return -1;let c=a;for(;;){let d=U.current.querySelector(`[data-option-index="${c}"]`),e=!p&&(!d||d.disabled||"true"===d.getAttribute("aria-disabled"));if(d&&d.hasAttribute("tabindex")&&!e)return c;if((c="next"===b?(c+1)%aw.length:(c-1+aw.length)%aw.length)===a)return -1}}((()=>{let a=aw.length-1;if("reset"===b)return Z;if("start"===b)return 0;if("end"===b)return a;let c=ad.current+b;return c<0?-1===c&&A?-1:q&&-1!==ad.current||Math.abs(b)>1?0:a:c>a?c===a+1&&A?-1:q||Math.abs(b)>1?a:0:c})(),c);if(aA({index:f,reason:e,event:a}),d&&"reset"!==b)if(-1===f)T.current.value=al;else{let a=Q(aw[f]);T.current.value=a,0===a.toLowerCase().indexOf(al.toLowerCase())&&al.length>0&&T.current.setSelectionRange(al.length,a.length)}}),aC=g.useCallback(()=>{if(!av)return;let a=(()=>{var a,b;if(-1!==ad.current&&ax.filteredOptions&&ax.filteredOptions.length!==aw.length&&ax.inputValue===al&&(D?aj.length===ax.value.length&&ax.value.every((a,b)=>Q(aj[b])===Q(a)):(a=ax.value,b=aj,(a?Q(a):"")===(b?Q(b):"")))){let a=ax.filteredOptions[ad.current];if(a)return aw.findIndex(b=>Q(b)===Q(a))}return -1})();if(-1!==a){ad.current=a;return}let b=D?aj[0]:aj;if(0===aw.length||null==b)return void aB({diff:"reset"});if(U.current){if(null!=b){let a=aw[ad.current];if(D&&a&&-1!==aj.findIndex(b=>C(a,b)))return;let c=aw.findIndex(a=>C(a,b));-1===c?aB({diff:"reset"}):aA({index:c});return}if(ad.current>=aw.length-1)return void aA({index:aw.length-1});aA({index:ad.current})}},[aw.length,!D&&aj,s,aB,aA,av,al,D]),aD=(0,ab.A)(a=>{(0,ac.A)(U,a),a&&aC()});g.useEffect(()=>{aC()},[aC]);let aE=a=>{!aq&&(ar(!0),at(!0),I&&I(a))},aF=(a,b)=>{aq&&(ar(!1),F&&F(a,b))},aG=(a,b,c,d)=>{if(D){if(aj.length===b.length&&aj.every((a,c)=>a===b[c]))return}else if(aj===b)return;E&&E(a,b,c,d),ak(b)},aH=g.useRef(!1),aI=(a,b,c="selectOption",d="options")=>{let e=c,f=b;if(D){let a=(f=Array.isArray(aj)?aj.slice():[]).findIndex(a=>C(b,a));-1===a?f.push(b):"freeSolo"!==d&&(f.splice(a,1),e="removeOption")}ap(a,f,e),aG(a,f,e,{option:b}),n||a&&(a.ctrlKey||a.metaKey)||aF(a,e),(!0===h||"touch"===h&&aH.current||"mouse"===h&&!aH.current)&&T.current.blur()},aJ=(a,b)=>{if(!D)return;""===al&&aF(a,"toggleInput");let c=X;-1===X?""===al&&"previous"===b&&(c=aj.length-1):((c+="next"===b?1:-1)<0&&(c=0),c===aj.length&&(c=-1)),Y(c=function(a,b){if(-1===a)return -1;let c=a;for(;;){if("next"===b&&c===aj.length||"previous"===b&&-1===c)return -1;let a=V.querySelector(`[data-tag-index="${c}"]`);if(a&&a.hasAttribute("tabindex")&&!a.disabled&&"true"!==a.getAttribute("aria-disabled"))return c;c+="next"===b?1:-1}}(c,b)),az(c)},aK=a=>{R.current=!0,am(""),H&&H(a,"","clear"),aG(a,D?[]:null,"clear")},aL=a=>{ao(!0),K&&!R.current&&aE(a)},aM=a=>{if(b(U))return void T.current.focus();ao(!1),S.current=!0,R.current=!1,f&&-1!==ad.current&&av?aI(a,aw[ad.current],"blur"):f&&t&&""!==al?aI(a,al,"blur","freeSolo"):i&&ap(a,aj,"blur"),aF(a,"blur")},aN=a=>{let b=a.target.value;al!==b&&(am(b),at(!1),H&&H(a,b,"input")),""===b?m||D||aG(a,null,"clear"):aE(a)},aO=a=>{let b=Number(a.currentTarget.getAttribute("data-option-index"));ad.current!==b&&aA({event:a,index:b,reason:"mouse"})},aP=a=>{aA({event:a,index:Number(a.currentTarget.getAttribute("data-option-index")),reason:"touch"}),aH.current=!0},aQ=a=>{let b=Number(a.currentTarget.getAttribute("data-option-index"));aI(a,aw[b],"selectOption"),aH.current=!1},aR=a=>{aq?aF(a,"toggleInput"):aE(a)},aS=a=>{a.currentTarget.contains(a.target)&&a.target.getAttribute("id")!==P&&a.preventDefault()},aT=a=>{a.currentTarget.contains(a.target)&&(T.current.focus(),N&&S.current&&T.current.selectionEnd-T.current.selectionStart==0&&T.current.select(),S.current=!1)},aU=a=>{o||""!==al&&aq||aR(a)},aV=t&&al.length>0;aV=aV||(D?aj.length>0:null!==aj);let aW=aw;return x&&(aW=aw.reduce((a,b,c)=>{let d=x(b);return a.length>0&&a[a.length-1].group===d?a[a.length-1].options.push(b):a.push({key:c,index:c,group:d,options:[b]}),a},[])),o&&an&&aM(),{getRootProps:(a={})=>({...a,onKeyDown:b=>{if(a.onKeyDown&&a.onKeyDown(b),!b.defaultMuiPrevented&&(-1===X||["ArrowLeft","ArrowRight"].includes(b.key)||(Y(-1),az(-1)),229!==b.which))switch(b.key){case"Home":av&&y&&(b.preventDefault(),aB({diff:"start",direction:"next",reason:"keyboard",event:b}));break;case"End":av&&y&&(b.preventDefault(),aB({diff:"end",direction:"previous",reason:"keyboard",event:b}));break;case"PageUp":b.preventDefault(),aB({diff:-5,direction:"previous",reason:"keyboard",event:b}),aE(b);break;case"PageDown":b.preventDefault(),aB({diff:5,direction:"next",reason:"keyboard",event:b}),aE(b);break;case"ArrowDown":b.preventDefault(),aB({diff:1,direction:"next",reason:"keyboard",event:b}),aE(b);break;case"ArrowUp":b.preventDefault(),aB({diff:-1,direction:"previous",reason:"keyboard",event:b}),aE(b);break;case"ArrowLeft":aJ(b,"previous");break;case"ArrowRight":aJ(b,"next");break;case"Enter":if(-1!==ad.current&&av){let a=aw[ad.current],c=!!u&&u(a);if(b.preventDefault(),c)return;aI(b,a,"selectOption"),d&&T.current.setSelectionRange(T.current.value.length,T.current.value.length)}else t&&""!==al&&!1===au&&(D&&b.preventDefault(),aI(b,al,"createOption","freeSolo"));break;case"Escape":av?(b.preventDefault(),b.stopPropagation(),aF(b,"escape")):j&&(""!==al||D&&aj.length>0)&&(b.preventDefault(),b.stopPropagation(),aK(b));break;case"Backspace":if(D&&!M&&""===al&&aj.length>0){let a=-1===X?aj.length-1:X,c=aj.slice();c.splice(a,1),aG(b,c,"removeOption",{option:aj[a]})}break;case"Delete":if(D&&!M&&""===al&&aj.length>0&&-1!==X){let a=aj.slice();a.splice(X,1),aG(b,a,"removeOption",{option:aj[X]})}}},onMouseDown:aS,onClick:aT}),getInputLabelProps:()=>({id:`${P}-label`,htmlFor:P}),getInputProps:()=>({id:P,value:al,onBlur:aM,onFocus:aL,onChange:aN,onMouseDown:aU,"aria-activedescendant":av?"":null,"aria-autocomplete":d?"both":"list","aria-controls":ay?`${P}-listbox`:void 0,"aria-expanded":ay,autoComplete:"off",ref:T,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:o}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:aK}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:aR}),getTagProps:({index:a})=>({key:a,"data-tag-index":a,tabIndex:-1,...!M&&{onDelete:b=>{let c=aj.slice();c.splice(a,1),aG(b,c,"removeOption",{option:aj[a]})}}}),getListboxProps:()=>({role:"listbox",id:`${P}-listbox`,"aria-labelledby":`${P}-label`,ref:aD,onMouseDown:a=>{a.preventDefault()}}),getOptionProps:({index:a,option:b})=>{let c=(D?aj:[aj]).some(a=>null!=a&&C(b,a)),d=!!u&&u(b);return{key:v?.(b)??Q(b),tabIndex:-1,role:"option",id:`${P}-option-${a}`,onMouseMove:aO,onClick:aQ,onTouchStart:aP,"data-option-index":a,"aria-disabled":d,"aria-selected":c}},id:P,inputValue:al,value:aj,dirty:aV,expanded:av&&V,popupOpen:av,focused:an||-1!==X,anchorEl:V,setAnchorEl:W,focusedTag:X,groupedOptions:aW}};var aj=c(31605),ak=c(18168),al=c(68333),am=c(6636),an=c(6638),ao=c(29565),ap=c(33105);function aq(a){return(0,ap.Ay)("MuiListSubheader",a)}(0,ao.A)("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);let ar=(0,ak.Ay)("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.root,"default"!==c.color&&b[`color${(0,an.A)(c.color)}`],!c.disableGutters&&b.gutters,c.inset&&b.inset,!c.disableSticky&&b.sticky]}})((0,al.A)(({theme:a})=>({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(a.vars||a).palette.text.secondary,fontFamily:a.typography.fontFamily,fontWeight:a.typography.fontWeightMedium,fontSize:a.typography.pxToRem(14),variants:[{props:{color:"primary"},style:{color:(a.vars||a).palette.primary.main}},{props:{color:"inherit"},style:{color:"inherit"}},{props:({ownerState:a})=>!a.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:a})=>a.inset,style:{paddingLeft:72}},{props:({ownerState:a})=>!a.disableSticky,style:{position:"sticky",top:0,zIndex:1,backgroundColor:(a.vars||a).palette.background.paper}}]}))),as=g.forwardRef(function(a,b){let c=(0,am.b)({props:a,name:"MuiListSubheader"}),{className:d,color:e="default",component:g="li",disableGutters:h=!1,disableSticky:i=!1,inset:j=!1,...k}=c,l={...c,color:e,component:g,disableGutters:h,disableSticky:i,inset:j},m=(a=>{let{classes:b,color:c,disableGutters:d,inset:e,disableSticky:f}=a,g={root:["root","default"!==c&&`color${(0,an.A)(c)}`,!d&&"gutters",e&&"inset",!f&&"sticky"]};return(0,Y.A)(g,aq,b)})(l);return(0,f.jsx)(ar,{as:g,className:(0,X.A)(m.root,d),ref:b,ownerState:l,...k})});as&&(as.muiSkipListHighlight=!0);var at=c(88679),au=c(13763),av=c(91003),aw=c(37659),ax=c(88570),ay=c(41606);function az(a){return(0,ap.Ay)("MuiAutocomplete",a)}let aA=(0,ao.A)("MuiAutocomplete",["root","expanded","fullWidth","focused","focusVisible","tag","tagSizeSmall","tagSizeMedium","hasPopupIcon","hasClearIcon","inputRoot","input","inputFocused","endAdornment","clearIndicator","popupIndicator","popupIndicatorOpen","popper","popperDisablePortal","paper","listbox","loading","noOptions","option","groupLabel","groupUl"]);var aB=c(20385);let aC=(0,ak.Ay)("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:(a,b)=>{let{ownerState:c}=a,{fullWidth:d,hasClearIcon:e,hasPopupIcon:f,inputFocused:g,size:h}=c;return[{[`& .${aA.tag}`]:b.tag},{[`& .${aA.tag}`]:b[`tagSize${(0,an.A)(h)}`]},{[`& .${aA.inputRoot}`]:b.inputRoot},{[`& .${aA.input}`]:b.input},{[`& .${aA.input}`]:g&&b.inputFocused},b.root,d&&b.fullWidth,f&&b.hasPopupIcon,e&&b.hasClearIcon]}})({[`&.${aA.focused} .${aA.clearIndicator}`]:{visibility:"visible"},"@media (pointer: fine)":{[`&:hover .${aA.clearIndicator}`]:{visibility:"visible"}},[`& .${aA.tag}`]:{margin:3,maxWidth:"calc(100% - 6px)"},[`& .${aA.inputRoot}`]:{[`.${aA.hasPopupIcon}&, .${aA.hasClearIcon}&`]:{paddingRight:30},[`.${aA.hasPopupIcon}.${aA.hasClearIcon}&`]:{paddingRight:56},[`& .${aA.input}`]:{width:0,minWidth:30}},[`& .${at.A.root}`]:{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}},[`& .${at.A.root}.${au.A.sizeSmall}`]:{[`& .${at.A.input}`]:{padding:"2px 4px 3px 0"}},[`& .${av.A.root}`]:{padding:9,[`.${aA.hasPopupIcon}&, .${aA.hasClearIcon}&`]:{paddingRight:39},[`.${aA.hasPopupIcon}.${aA.hasClearIcon}&`]:{paddingRight:65},[`& .${aA.input}`]:{padding:"7.5px 4px 7.5px 5px"},[`& .${aA.endAdornment}`]:{right:9}},[`& .${av.A.root}.${au.A.sizeSmall}`]:{paddingTop:6,paddingBottom:6,paddingLeft:6,[`& .${aA.input}`]:{padding:"2.5px 4px 2.5px 8px"}},[`& .${aw.A.root}`]:{paddingTop:19,paddingLeft:8,[`.${aA.hasPopupIcon}&, .${aA.hasClearIcon}&`]:{paddingRight:39},[`.${aA.hasPopupIcon}.${aA.hasClearIcon}&`]:{paddingRight:65},[`& .${aw.A.input}`]:{padding:"7px 4px"},[`& .${aA.endAdornment}`]:{right:9}},[`& .${aw.A.root}.${au.A.sizeSmall}`]:{paddingBottom:1,[`& .${aw.A.input}`]:{padding:"2.5px 4px"}},[`& .${au.A.hiddenLabel}`]:{paddingTop:8},[`& .${aw.A.root}.${au.A.hiddenLabel}`]:{paddingTop:0,paddingBottom:0,[`& .${aA.input}`]:{paddingTop:16,paddingBottom:17}},[`& .${aw.A.root}.${au.A.hiddenLabel}.${au.A.sizeSmall}`]:{[`& .${aA.input}`]:{paddingTop:8,paddingBottom:9}},[`& .${aA.input}`]:{flexGrow:1,textOverflow:"ellipsis",opacity:0},variants:[{props:{fullWidth:!0},style:{width:"100%"}},{props:{size:"small"},style:{[`& .${aA.tag}`]:{margin:2,maxWidth:"calc(100% - 4px)"}}},{props:{inputFocused:!0},style:{[`& .${aA.input}`]:{opacity:1}}},{props:{multiple:!0},style:{[`& .${aA.inputRoot}`]:{flexWrap:"wrap"}}}]}),aD=(0,ak.Ay)("div",{name:"MuiAutocomplete",slot:"EndAdornment",overridesResolver:(a,b)=>b.endAdornment})({position:"absolute",right:0,top:"50%",transform:"translate(0, -50%)"}),aE=(0,ak.Ay)(x.A,{name:"MuiAutocomplete",slot:"ClearIndicator",overridesResolver:(a,b)=>b.clearIndicator})({marginRight:-2,padding:4,visibility:"hidden"}),aF=(0,ak.Ay)(x.A,{name:"MuiAutocomplete",slot:"PopupIndicator",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.popupIndicator,c.popupOpen&&b.popupIndicatorOpen]}})({padding:2,marginRight:-2,variants:[{props:{popupOpen:!0},style:{transform:"rotate(180deg)"}}]}),aG=(0,ak.Ay)(aj.A,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[{[`& .${aA.option}`]:b.option},b.popper,c.disablePortal&&b.popperDisablePortal]}})((0,al.A)(({theme:a})=>({zIndex:(a.vars||a).zIndex.modal,variants:[{props:{disablePortal:!0},style:{position:"absolute"}}]}))),aH=(0,ak.Ay)(i.A,{name:"MuiAutocomplete",slot:"Paper",overridesResolver:(a,b)=>b.paper})((0,al.A)(({theme:a})=>({...a.typography.body1,overflow:"auto"}))),aI=(0,ak.Ay)("div",{name:"MuiAutocomplete",slot:"Loading",overridesResolver:(a,b)=>b.loading})((0,al.A)(({theme:a})=>({color:(a.vars||a).palette.text.secondary,padding:"14px 16px"}))),aJ=(0,ak.Ay)("div",{name:"MuiAutocomplete",slot:"NoOptions",overridesResolver:(a,b)=>b.noOptions})((0,al.A)(({theme:a})=>({color:(a.vars||a).palette.text.secondary,padding:"14px 16px"}))),aK=(0,ak.Ay)("ul",{name:"MuiAutocomplete",slot:"Listbox",overridesResolver:(a,b)=>b.listbox})((0,al.A)(({theme:a})=>({listStyle:"none",margin:0,padding:"8px 0",maxHeight:"40vh",overflow:"auto",position:"relative",[`& .${aA.option}`]:{minHeight:48,display:"flex",overflow:"hidden",justifyContent:"flex-start",alignItems:"center",cursor:"pointer",paddingTop:6,boxSizing:"border-box",outline:"0",WebkitTapHighlightColor:"transparent",paddingBottom:6,paddingLeft:16,paddingRight:16,[a.breakpoints.up("sm")]:{minHeight:"auto"},[`&.${aA.focused}`]:{backgroundColor:(a.vars||a).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},'&[aria-disabled="true"]':{opacity:(a.vars||a).palette.action.disabledOpacity,pointerEvents:"none"},[`&.${aA.focusVisible}`]:{backgroundColor:(a.vars||a).palette.action.focus},'&[aria-selected="true"]':{backgroundColor:a.vars?`rgba(${a.vars.palette.primary.mainChannel} / ${a.vars.palette.action.selectedOpacity})`:(0,Z.X4)(a.palette.primary.main,a.palette.action.selectedOpacity),[`&.${aA.focused}`]:{backgroundColor:a.vars?`rgba(${a.vars.palette.primary.mainChannel} / calc(${a.vars.palette.action.selectedOpacity} + ${a.vars.palette.action.hoverOpacity}))`:(0,Z.X4)(a.palette.primary.main,a.palette.action.selectedOpacity+a.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(a.vars||a).palette.action.selected}},[`&.${aA.focusVisible}`]:{backgroundColor:a.vars?`rgba(${a.vars.palette.primary.mainChannel} / calc(${a.vars.palette.action.selectedOpacity} + ${a.vars.palette.action.focusOpacity}))`:(0,Z.X4)(a.palette.primary.main,a.palette.action.selectedOpacity+a.palette.action.focusOpacity)}}}}))),aL=(0,ak.Ay)(as,{name:"MuiAutocomplete",slot:"GroupLabel",overridesResolver:(a,b)=>b.groupLabel})((0,al.A)(({theme:a})=>({backgroundColor:(a.vars||a).palette.background.paper,top:-8}))),aM=(0,ak.Ay)("ul",{name:"MuiAutocomplete",slot:"GroupUl",overridesResolver:(a,b)=>b.groupUl})({padding:0,[`& .${aA.option}`]:{paddingLeft:24}}),aN=g.forwardRef(function(a,b){let c,h=(0,am.b)({props:a,name:"MuiAutocomplete"}),{autoComplete:j=!1,autoHighlight:k=!1,autoSelect:l=!1,blurOnSelect:m=!1,ChipProps:n,className:o,clearIcon:p=d||(d=(0,f.jsx)(ax.A,{fontSize:"small"})),clearOnBlur:q=!h.freeSolo,clearOnEscape:r=!1,clearText:s="Clear",closeText:t="Close",componentsProps:u,defaultValue:v=h.multiple?[]:null,disableClearable:w=!1,disableCloseOnSelect:x=!1,disabled:y=!1,disabledItemsFocusable:z=!1,disableListWrap:A=!1,disablePortal:B=!1,filterOptions:C,filterSelectedOptions:D=!1,forcePopupIcon:E="auto",freeSolo:G=!1,fullWidth:H=!1,getLimitTagsText:I=a=>`+${a}`,getOptionDisabled:J,getOptionKey:K,getOptionLabel:L,isOptionEqualToValue:M,groupBy:N,handleHomeEndKeys:O=!h.freeSolo,id:P,includeInputInList:Q=!1,inputValue:R,limitTags:S=-1,ListboxComponent:T,ListboxProps:U,loading:V=!1,loadingText:W="Loading…",multiple:Z=!1,noOptionsText:$="No options",onChange:_,onClose:aa,onHighlightChange:ab,onInputChange:ac,onOpen:ad,open:ae,openOnFocus:af=!1,openText:ag="Open",options:ah,PaperComponent:ak,PopperComponent:al,popupIcon:ao=e||(e=(0,f.jsx)(ay.A,{})),readOnly:ap=!1,renderGroup:aq,renderInput:ar,renderOption:as,renderTags:at,selectOnFocus:au=!h.freeSolo,size:av="medium",slots:aw={},slotProps:aA={},value:aN,...aO}=h,{getRootProps:aP,getInputProps:aQ,getInputLabelProps:aR,getPopupIndicatorProps:aS,getClearProps:aT,getTagProps:aU,getListboxProps:aV,getOptionProps:aW,value:aX,dirty:aY,expanded:aZ,id:a$,popupOpen:a_,focused:a0,focusedTag:a1,anchorEl:a2,setAnchorEl:a3,inputValue:a4,groupedOptions:a5}=ai({...h,componentName:"Autocomplete"}),a6=!w&&!y&&aY&&!ap,a7=(!G||!0===E)&&!1!==E,{onMouseDown:a8}=aQ(),{ref:a9,...ba}=aV(),bb=L||(a=>a.label??a),bc={...h,disablePortal:B,expanded:aZ,focused:a0,fullWidth:H,getOptionLabel:bb,hasClearIcon:a6,hasPopupIcon:a7,inputFocused:-1===a1,popupOpen:a_,size:av},bd=(a=>{let{classes:b,disablePortal:c,expanded:d,focused:e,fullWidth:f,hasClearIcon:g,hasPopupIcon:h,inputFocused:i,popupOpen:j,size:k}=a,l={root:["root",d&&"expanded",e&&"focused",f&&"fullWidth",g&&"hasClearIcon",h&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",i&&"inputFocused"],tag:["tag",`tagSize${(0,an.A)(k)}`],endAdornment:["endAdornment"],clearIndicator:["clearIndicator"],popupIndicator:["popupIndicator",j&&"popupIndicatorOpen"],popper:["popper",c&&"popperDisablePortal"],paper:["paper"],listbox:["listbox"],loading:["loading"],noOptions:["noOptions"],option:["option"],groupLabel:["groupLabel"],groupUl:["groupUl"]};return(0,Y.A)(l,az,b)})(bc),be={slots:{paper:ak,popper:al,...aw},slotProps:{chip:n,listbox:U,...u,...aA}},[bf,bg]=(0,aB.A)("listbox",{elementType:aK,externalForwardedProps:be,ownerState:bc,className:bd.listbox,additionalProps:ba,ref:a9}),[bh,bi]=(0,aB.A)("paper",{elementType:i.A,externalForwardedProps:be,ownerState:bc,className:bd.paper}),[bj,bk]=(0,aB.A)("popper",{elementType:aj.A,externalForwardedProps:be,ownerState:bc,className:bd.popper,additionalProps:{disablePortal:B,style:{width:a2?a2.clientWidth:null},role:"presentation",anchorEl:a2,open:a_}});if(Z&&aX.length>0){let a=a=>({className:bd.tag,disabled:y,...aU(a)});c=at?at(aX,a,bc):aX.map((b,c)=>{let{key:d,...e}=a({index:c});return(0,f.jsx)(F.A,{label:bb(b),size:av,...e,...be.slotProps.chip},d)})}if(S>-1&&Array.isArray(c)){let a=c.length-S;!a0&&a>0&&(c=c.splice(0,S)).push((0,f.jsx)("span",{className:bd.tag,children:I(a)},c.length))}let bl=aq||(a=>(0,f.jsxs)("li",{children:[(0,f.jsx)(aL,{className:bd.groupLabel,ownerState:bc,component:"div",children:a.group}),(0,f.jsx)(aM,{className:bd.groupUl,ownerState:bc,children:a.children})]},a.key)),bm=as||((a,b)=>{let{key:c,...d}=a;return(0,f.jsx)("li",{...d,children:bb(b)},c)}),bn=(a,b)=>{let c=aW({option:a,index:b});return bm({...c,className:bd.option},a,{selected:c["aria-selected"],index:b,inputValue:a4},bc)},bo=be.slotProps.clearIndicator,bp=be.slotProps.popupIndicator;return(0,f.jsxs)(g.Fragment,{children:[(0,f.jsx)(aC,{ref:b,className:(0,X.A)(bd.root,o),ownerState:bc,...aP(aO),children:ar({id:a$,disabled:y,fullWidth:!0,size:"small"===av?"small":void 0,InputLabelProps:aR(),InputProps:{ref:a3,className:bd.inputRoot,startAdornment:c,onMouseDown:a=>{a.target===a.currentTarget&&a8(a)},...(a6||a7)&&{endAdornment:(0,f.jsxs)(aD,{className:bd.endAdornment,ownerState:bc,children:[a6?(0,f.jsx)(aE,{...aT(),"aria-label":s,title:s,ownerState:bc,...bo,className:(0,X.A)(bd.clearIndicator,bo?.className),children:p}):null,a7?(0,f.jsx)(aF,{...aS(),disabled:y,"aria-label":a_?t:ag,title:a_?t:ag,ownerState:bc,...bp,className:(0,X.A)(bd.popupIndicator,bp?.className),children:ao}):null]})}},inputProps:{className:bd.input,disabled:y,readOnly:ap,...aQ()}})}),a2?(0,f.jsx)(aG,{as:bj,...bk,children:(0,f.jsxs)(aH,{as:bh,...bi,children:[V&&0===a5.length?(0,f.jsx)(aI,{className:bd.loading,ownerState:bc,children:W}):null,0!==a5.length||G||V?null:(0,f.jsx)(aJ,{className:bd.noOptions,ownerState:bc,role:"presentation",onMouseDown:a=>{a.preventDefault()},children:$}),a5.length>0?(0,f.jsx)(bf,{as:T,...bg,children:a5.map((a,b)=>N?bl({key:a.key,group:a.group,children:a.options.map((b,c)=>bn(b,a.index+c))}):bn(a,b))}):null]})}):null]})});var aO=c(93083),aP=c(85557),aQ=c(49938),aR=c(85838),aS=c(92173);let aT=(0,E.h)("frontend/components/models/modal"),aU=({open:a,model:b,onSave:c,onClose:d})=>{let e=(0,h.useRouter)(),{globalEnvVars:i}=(0,aQ.rX)(),[l,o]=(0,g.useState)({}),[p,s]=(0,g.useState)({}),[t,v]=(0,g.useState)(null),[w,y]=(0,g.useState)(!1),[z,A]=(0,g.useState)(null),[E,F]=(0,g.useState)(!1),[J,L]=(0,g.useState)([]),[M,N]=(0,g.useState)(!1),O=(0,g.useRef)(null),P=(0,g.useRef)(null);(0,g.useEffect)(()=>{a&&L([])},[a]),(0,g.useEffect)(()=>{l.baseUrl&&(aT.debug("Base URL or API Key changed",{baseUrl:l.baseUrl}),L([]))},[l.baseUrl,l.ApiKey]),(0,g.useEffect)(()=>(P.current&&clearTimeout(P.current),l.baseUrl&&(P.current=setTimeout(()=>{aT.debug("Debounced fetchModels triggered",{name:l.name,baseUrl:l.baseUrl,searchTerm:l.name?`"${l.name}"`:"none"}),Q(l.baseUrl,l.name)},100)),()=>{P.current&&clearTimeout(P.current)}),[l.name,l.baseUrl]),(0,g.useEffect)(()=>()=>{P.current&&clearTimeout(P.current)},[]);let Q=async(a,c)=>{aT.debug("fetchModels called",{baseUrl:a,searchTerm:c?`"${c}"`:"none",apiKey:l.ApiKey?"present":"not present",isApiKeyBound:w}),N(!0),s({});try{let d=w&&z?`\${global:${z}}`:l.ApiKey&&l.ApiKey!==aS.RJ?l.ApiKey:void 0,e=await D.N.fetchProviderModels(a,b.id,c,d);aT.debug("Models fetched successfully",{count:e?.length,searchTerm:c?`"${c}"`:"none"}),Array.isArray(e)?(L(e),aT.info("Models set in state",{count:e.length,searchTerm:c?`"${c}"`:"none"})):(aT.warn("Unexpected API response format",{models:e}),L([]))}catch(b){aT.warn("Error fetching models",{baseUrl:a,searchTerm:c,error:b}),L([])}finally{N(!1)}};(0,g.useEffect)(()=>{if(a){o({...b,displayName:b.displayName||b.name});let a=(b.ApiKey||"").match(/\$\{global:([^}]+)\}/);a?(y(!0),A(a[1])):(y(!1),A(null),o(a=>({...a,ApiKey:b.name?aS.RJ:""})))}else o({name:"",displayName:"",description:"",ApiKey:"",baseUrl:"https://api.openai.com/v1",provider:"openai",adapter:"openai",promptTemplate:"",temperature:"0.0"}),y(!1),A(null);s({}),v(null)},[a,b]);let R=C(l.provider,l.adapter),S=(a,b)=>{o(c=>({...c,[a]:b})),s(b=>({...b,[a]:""}))},X=async a=>{a.preventDefault();let d={};if(l.name?.trim()||(d.name="Name is required"),l.displayName?.trim()||(d.displayName="Display Name is required"),w||l.ApiKey?.trim()||(d.ApiKey="API key is required"),Object.keys(d).length>0)return void s(d);try{let a=await c({id:b.id,name:l.name,displayName:l.displayName,description:l.description,ApiKey:l.ApiKey,baseUrl:l.baseUrl,provider:l.provider,adapter:l.adapter||"openai",promptTemplate:l.promptTemplate,temperature:l.temperature,contextWindow:l.contextWindow,maxTurns:l.maxTurns});a.success?e.refresh():s({submit:a.error||"Failed to save model"})}catch(a){aT.error("Failed to save model",{error:a}),s({submit:a?.message||"Failed to save model"})}};return(0,f.jsx)(G.A,{open:a,onClose:d,maxWidth:"xl",fullWidth:!0,PaperProps:{sx:{width:"95vw",height:"90vh",maxWidth:"95vw",maxHeight:"90vh"}},children:(0,f.jsxs)("form",{onSubmit:X,children:[(0,f.jsx)(H.A,{children:b?"Edit Model":"Add Model"}),(0,f.jsxs)(I.A,{sx:{display:"flex",flexDirection:"column",height:"calc(90vh - 130px)"},children:[p.submit&&(0,f.jsx)(n.A,{severity:"error",sx:{mb:2},children:p.submit}),t&&(0,f.jsx)(n.A,{severity:"info",sx:{mb:2},children:t}),(0,f.jsxs)(r.Ay,{container:!0,spacing:2,sx:{flexGrow:1},children:[(0,f.jsx)(r.Ay,{item:!0,xs:6,sx:{height:"100%"},children:(0,f.jsxs)(j.default,{sx:{display:"flex",flexDirection:"column",height:"100%",pr:2},children:[(0,f.jsx)(u.default,{variant:"h6",gutterBottom:!0,children:"Model Configuration"}),(0,f.jsx)(k.A,{autoFocus:!0,margin:"dense",label:"Display Name",fullWidth:!0,required:!0,value:l.displayName||"",onChange:a=>S("displayName",a.target.value),error:!!p.displayName,helperText:p.displayName||"The name shown in the UI"}),(0,f.jsxs)(T.A,{fullWidth:!0,margin:"dense",children:[(0,f.jsx)(U.A,{id:"provider-profile-label",children:"Provider"}),(0,f.jsx)(V.A,{labelId:"provider-profile-label",label:"Provider",value:R.id,onChange:a=>(a=>{let b=B.find(b=>b.id===a);b&&(o(a=>({...a,provider:b.provider,adapter:b.adapter,baseUrl:b.baseUrl})),s(a=>({...a,baseUrl:""})))})(a.target.value),children:B.map(a=>(0,f.jsx)(W.A,{value:a.id,children:a.label},a.id))})]}),(0,f.jsxs)(u.default,{variant:"caption",color:"text.secondary",sx:{mt:.5,mb:1,display:"block"},children:["Uses the ",(0,f.jsx)("strong",{children:R.sdkLabel}),"claude-cli"===R.adapter?". Paste an OAuth token from `claude setup-token` into the API Key field.":""]}),R.showBaseUrl&&(0,f.jsx)(k.A,{margin:"dense",label:"Base URL",fullWidth:!0,value:l.baseUrl||"",onChange:a=>S("baseUrl",a.target.value),helperText:"Endpoint for the OpenAI-compatible API."}),(0,f.jsx)(j.default,{sx:{position:"relative",mt:1,mb:1},children:(0,f.jsx)(k.A,{margin:"dense",label:"API Key",fullWidth:!0,required:!w,type:w?"text":"password",value:l.ApiKey||"",onChange:a=>S("ApiKey",a.target.value),error:!!p.ApiKey,helperText:p.ApiKey||"API key is required for this provider",InputProps:{readOnly:w,endAdornment:(0,f.jsx)(j.default,{sx:{display:"flex",alignItems:"center"},children:w?(0,f.jsx)(x.A,{onClick:()=>{y(!1),A(null),o(a=>({...a,ApiKey:""}))},size:"small",title:"Unbind from global variable",children:(0,f.jsx)(aO.A,{})}):(0,f.jsx)(x.A,{onClick:()=>{F(!0)},size:"small",title:"Bind to global variable",children:(0,f.jsx)(aP.A,{})})})}})}),(0,f.jsx)(aN,{freeSolo:!0,loading:M,options:R.showBaseUrl?J.map(a=>a.id):R.defaultModels??[],value:l.name||"",onChange:(a,b)=>{S("name",b||"")},onInputChange:(a,b)=>{S("name",b)},filterOptions:(a,b)=>{let c=b.inputValue.toLowerCase();return c?a.filter(a=>{let b=a.toLowerCase();if(b.includes(c))return!0;let d=0,e=0;for(;d<b.length&&e<c.length;)b[d]===c[e]&&e++,d++;return e===c.length}):a},ListboxProps:{style:{maxHeight:"300px",overflow:"auto"}},renderInput:a=>(0,f.jsx)(k.A,{...a,margin:"dense",label:"Technical Name",required:!0,error:!!p.name,helperText:p.name||"Used for API calls to the LLM. Type to search available models.",InputProps:{...a.InputProps,endAdornment:(0,f.jsxs)(f.Fragment,{children:[M?(0,f.jsx)(q.default,{color:"inherit",size:20}):null,a.InputProps.endAdornment]})}}),renderOption:(a,b)=>{let c=J.find(a=>a.id===b),{key:d,...e}=a;return(0,f.jsx)("li",{...e,style:{borderBottom:"1px solid rgba(0,0,0,0.1)",padding:"8px 16px"},children:(0,f.jsxs)(j.default,{children:[(0,f.jsx)(u.default,{variant:"body1",fontWeight:"bold",children:b}),c?.description&&(0,f.jsx)(u.default,{variant:"body2",color:"text.secondary",sx:{fontSize:"0.75rem"},children:c.description})]})},d)},noOptionsText:"No matching models found",loadingText:"Loading models..."}),(0,f.jsx)(k.A,{margin:"dense",label:"Description",fullWidth:!0,multiline:!0,rows:3,value:l.description||"",onChange:a=>S("description",a.target.value)}),(0,f.jsx)(k.A,{margin:"dense",label:"Context Window (tokens)",fullWidth:!0,type:"number",value:l.contextWindow??"",onChange:a=>{let b=a.target.value,c=""===b?void 0:Number(b);o(a=>({...a,contextWindow:void 0!==c&&Number.isFinite(c)&&c>0?Math.floor(c):void 0}))},helperText:"Optional. Enables the context-usage meter in chat (e.g. 200000 for Claude, 128000 for GPT-4o)."}),(0,f.jsx)(k.A,{margin:"dense",label:"Max Turns",fullWidth:!0,type:"number",value:l.maxTurns??"",onChange:a=>{let b=a.target.value,c=""===b?void 0:Number(b);o(a=>({...a,maxTurns:void 0!==c&&Number.isFinite(c)&&c>0?Math.floor(c):void 0}))},inputProps:{min:1},helperText:"Max agentic turns before a run stops (default 50). Process nodes can override this per-node."})]})}),(0,f.jsx)(r.Ay,{item:!0,xs:6,sx:{height:"100%"},children:(0,f.jsxs)(j.default,{sx:{display:"flex",flexDirection:"column",height:"100%",pl:2},children:[(0,f.jsx)(u.default,{variant:"h6",gutterBottom:!0,children:"Prompt Template"}),(0,f.jsx)(j.default,{sx:{flexGrow:1,display:"flex",flexDirection:"column",height:"calc(100% - 32px)"},children:(0,f.jsx)(aR.A,{ref:O,value:l.promptTemplate||"",onChange:a=>S("promptTemplate",a),label:"",height:"100%"})})]})})]}),E&&(0,f.jsxs)(j.default,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:400,bgcolor:"background.paper",boxShadow:24,p:4,borderRadius:1,zIndex:9999},children:[(0,f.jsx)(u.default,{variant:"h6",component:"h2",sx:{mb:2},children:"Bind to Global Variable"}),0===Object.keys(i).length?(0,f.jsx)(u.default,{sx:{mb:2},children:"No global variables available. Add some in Settings first."}):(0,f.jsx)(j.default,{sx:{maxHeight:300,overflow:"auto",mb:2},children:Object.entries(i).map(([a,b])=>(0,f.jsx)(m.A,{onClick:()=>(a=>{y(!0),A(a),o(b=>({...b,ApiKey:`\${global:${a}}`})),F(!1)})(a),fullWidth:!0,sx:{justifyContent:"flex-start",textAlign:"left",mb:1,p:1,"&:hover":{bgcolor:"action.hover"}},children:(0,f.jsxs)(j.default,{sx:{display:"flex",justifyContent:"space-between",width:"100%"},children:[(0,f.jsx)(u.default,{children:a}),(0,f.jsx)(u.default,{variant:"body2",color:"text.secondary",children:a.toLowerCase().includes("key")||a.toLowerCase().includes("secret")||a.toLowerCase().includes("token")||a.toLowerCase().includes("password")?"********":"object"==typeof b&&null!==b&&"value"in b?b.value:b})]})},a))}),(0,f.jsx)(j.default,{sx:{display:"flex",justifyContent:"flex-end"},children:(0,f.jsx)(m.A,{onClick:()=>F(!1),children:"Cancel"})})]})]}),(0,f.jsxs)(K.A,{children:[(0,f.jsx)(m.A,{onClick:d,children:"Cancel"}),(0,f.jsx)(m.A,{type:"submit",variant:"contained",color:"primary",children:"Save"})]})]})})};var aV=c(61615);let aW=(0,E.h)("app/models/ModelClient");function aX({initialModels:a}){let b=(0,h.useRouter)(),c=(0,h.useSearchParams)(),[d,e]=(0,g.useState)(a),[q,r]=(0,g.useState)(""),[s,t]=(0,g.useState)(null),[u,v]=(0,g.useState)(!1),[w,x]=(0,g.useState)(!1),[y,z]=(0,g.useState)(null),A="1"===c.get("add");if(!w)return aW.debug("Waiting for model service to be ready..."),(0,f.jsx)(aV.default,{});let B=c.get("edit"),C=A?y:B?d.find(a=>a.id===B)??null:null,E=A?!!y:!!B,F=async a=>{aW.info("Saving model",{modelId:a.id,modelName:a.name,mode:A?"add":"update"}),v(!0);try{let c=(0,D.X)(),d=A?await c.addModel(a):await c.updateModel(a);if(!d.success)return t(d.error||"Failed to save model."),{success:!1,error:d.error};{let a=await c.loadModels();return e(a),z(null),b.push("/models"),{success:!0,model:d.model}}}catch(a){return aW.error("Failed to save model",a),t(a?.message||"Failed to save model. Please try again."),{success:!1,error:a?.message||"Failed to save model"}}finally{v(!1)}},G=async a=>(aW.info("Editing model",{modelId:a.id,modelName:a.name}),b.push(`/models?edit=${a.id}`),{success:!0}),H=async()=>{aW.info("Opening add-model modal"),b.push("/models?add=1")},I=async a=>{aW.info("Deleting model",{modelId:a}),v(!0);try{let b=(0,D.X)();await b.deleteModel(a);let c=await b.loadModels();e(c)}catch(a){aW.error("Failed to delete model",a),t("Failed to delete model. Please try again.")}finally{v(!1)}},J=async()=>{z(null),b.push("/models")},K=q.trim()?d.filter(a=>{let b=q.toLowerCase();return(a.displayName||"").toLowerCase().includes(b)||(a.name||"").toLowerCase().includes(b)}):d;return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(i.A,{elevation:1,sx:{mb:2,p:1},children:(0,f.jsxs)(j.default,{sx:{display:"flex",flexDirection:{xs:"column",sm:"row"},gap:1,alignItems:{xs:"stretch",sm:"center"},justifyContent:"space-between"},children:[(0,f.jsx)(k.A,{placeholder:"Search models...",variant:"outlined",size:"small",value:q,onChange:a=>r(a.target.value),InputProps:{startAdornment:(0,f.jsx)(l.A,{position:"start",children:(0,f.jsx)(p.A,{fontSize:"small"})})},sx:{maxWidth:{sm:300},width:"100%"}}),(0,f.jsx)(m.A,{variant:"contained",color:"primary",startIcon:(0,f.jsx)(o.A,{}),onClick:H,"data-tour":"add-model",children:"Add Model"})]})}),s&&(0,f.jsx)(j.default,{sx:{mb:2},children:(0,f.jsx)(n.A,{severity:"error",onClose:()=>t(null),children:s})}),(0,f.jsx)(S,{models:K,isLoading:u,onAdd:H,onUpdate:G,onDelete:I}),E&&C?(0,f.jsx)(aU,{open:E,model:C,onSave:F,onClose:J}):null]})}},8086:a=>{"use strict";a.exports=require("module")},9287:(a,b,c)=>{Promise.resolve().then(c.bind(c,92093))},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11525:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81170,23)),Promise.resolve().then(c.t.bind(c,23597,23)),Promise.resolve().then(c.t.bind(c,36893,23)),Promise.resolve().then(c.t.bind(c,89748,23)),Promise.resolve().then(c.t.bind(c,6060,23)),Promise.resolve().then(c.t.bind(c,7184,23)),Promise.resolve().then(c.t.bind(c,69576,23)),Promise.resolve().then(c.t.bind(c,73041,23)),Promise.resolve().then(c.t.bind(c,51384,23))},11723:a=>{"use strict";a.exports=require("querystring")},11962:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return j}});let d=c(75338),e=c(74515),f=c(69389),g=c(63112);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},11997:a=>{"use strict";a.exports=require("punycode")},12412:a=>{"use strict";a.exports=require("assert")},14867:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\app\\\\models\\\\error.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\error.tsx","default")},16825:(a,b,c)=>{"use strict";c.d(b,{default:()=>e});var d=c(97954);(0,d.registerClientReference)(function(){throw Error("Attempted to call TypographyRoot() from the server but TypographyRoot is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Typography\\Typography.js","TypographyRoot");let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\node_modules\\\\@mui\\\\material\\\\Typography\\\\Typography.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Typography\\Typography.js","default")},18830:(a,b,c)=>{"use strict";function d(a){return a&&a.__esModule?a:{default:a}}c.r(b),c.d(b,{_:()=>d})},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},19771:a=>{"use strict";a.exports=require("process")},19815:(a,b,c)=>{"use strict";c.d(b,{h:()=>i});let d={LOG_LEVEL:3},e={VERBOSE:-1,DEBUG:0,INFO:1,WARN:2,ERROR:3},f="number"==typeof d.LOG_LEVEL?d.LOG_LEVEL:e.ERROR;function g(a,b=0){if(b>6)return String(a);if(!(a instanceof Error))return a;let c={name:a.name,message:a.message};for(let d of Object.getOwnPropertyNames(a)){if("name"===d||"message"===d)continue;let e=a[d];"function"!=typeof e&&("stack"===d?c.stack=e:"cause"===d?c.cause=g(e,b+1):"errors"===d&&Array.isArray(e)?c.errors=e.map(a=>g(a,b+1)):c[d]=e)}return c}function h(a,b,c,d,h){if(a>=("number"==typeof h?h:f)){if("function"==typeof d)try{d=d()}catch{d="[lazy log data threw]"}let f=new Date().toISOString(),h=`[${f}] [${b}]`,i=`${h} ${c}`;if(void 0!==d)if(d instanceof Error||"object"==typeof d)try{let a=d instanceof Error?g(d):d,b=JSON.stringify(a,(a,b)=>b instanceof Error?g(b):b,2);i+=`:
2
2
  ${b}`}catch(a){i+=": [Object cannot be stringified]"}else i+=`: ${d}`;switch(a){case e.VERBOSE:console.debug(`[VERBOSE] ${i}`);break;case e.DEBUG:console.debug(i);break;case e.INFO:console.info(i);break;case e.WARN:console.warn(i);break;case e.ERROR:console.error(i);break;default:console.log(i)}}}function i(a,b){let c,d=((c=a.replace(/^src\//,"")).startsWith("/")&&(c=c.substring(1)),c);return{verbose:(a,c)=>{h(e.VERBOSE,d,a,c,b)},debug:(a,c)=>{h(e.DEBUG,d,a,c,b)},info:(a,c)=>{h(e.INFO,d,a,c,b)},warn:(a,c)=>{h(e.WARN,d,a,c,b)},error:(a,c)=>{h(e.ERROR,d,a,c,b)}}}},20349:(a,b,c)=>{Promise.resolve().then(c.bind(c,73737)),Promise.resolve().then(c.bind(c,65251))},21820:a=>{"use strict";a.exports=require("os")},24677:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,54160,23)),Promise.resolve().then(c.t.bind(c,31603,23)),Promise.resolve().then(c.t.bind(c,68495,23)),Promise.resolve().then(c.t.bind(c,75170,23)),Promise.resolve().then(c.t.bind(c,55145,23)),Promise.resolve().then(c.t.bind(c,78922,23)),Promise.resolve().then(c.t.bind(c,29234,23)),Promise.resolve().then(c.t.bind(c,34644,23)),Promise.resolve().then(c.bind(c,82146))},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},30301:(a,b,c)=>{Promise.resolve().then(c.bind(c,41306))},31421:a=>{"use strict";a.exports=require("node:child_process")},33873:a=>{"use strict";a.exports=require("path")},34631:a=>{"use strict";a.exports=require("tls")},37067:a=>{"use strict";a.exports=require("node:http")},37830:a=>{"use strict";a.exports=require("node:stream/web")},37997:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\frontend\\\\components\\\\shared\\\\Spinner.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\frontend\\components\\shared\\Spinner.tsx","default")},38108:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>r,dynamic:()=>q});var d=c(75338),e=c(74515),f=c(44618),g=c.n(f),h=c(73737),i=c(16825),j=c(50846),k=c(92675);let l=(0,j.h)("app/api/model/backed-model-adapter");async function m(){l.debug("loadModels: Delegating to model adapter");let a=await k.Zl();return a.success&&a.models?a.models:(l.warn("loadModels: Failed to load models",{error:a.error}),[])}var n=c(37997);let o=g()(()=>Promise.resolve().then(c.bind(c,2671)),{loadableGenerated:{modules:["app\\models\\page.tsx -> ./ModelClient"]},loading:()=>(0,d.jsx)(n.default,{})}),p=(0,j.h)("app/models/page"),q="force-dynamic",r=async function(){p.debug("Rendering ModelsPage");try{let a=await m();return p.debug("Models loaded successfully",{count:a.length}),(0,d.jsxs)(h.default,{sx:{height:"100%",display:"flex",flexDirection:"column"},children:[(0,d.jsx)(h.default,{sx:{p:2,display:"flex",justifyContent:"space-between",alignItems:"center",borderBottom:1,borderColor:"divider"},children:(0,d.jsx)(i.default,{variant:"h5",children:"Models"})}),(0,d.jsx)(h.default,{sx:{p:2,flex:1,overflow:"auto"},children:(0,d.jsx)(e.Suspense,{fallback:(0,d.jsx)(n.default,{}),children:(0,d.jsx)(o,{initialModels:a})})})]})}catch(a){throw p.error("Error loading models:",a),a}}},38522:a=>{"use strict";a.exports=require("node:zlib")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},41306:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\frontend\\\\components\\\\AppWrapper.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\frontend\\components\\AppWrapper.tsx","default")},41917:(a,b,c)=>{Promise.resolve().then(c.bind(c,49428))},43108:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>E.a,__next_app__:()=>K,handler:()=>M,pages:()=>J,routeModule:()=>L,tree:()=>I});var d=c(49754),e=c(9117),f=c(46595),g=c(32324),h=c(39326),i=c(38928),j=c(20175),k=c(12),l=c(54290),m=c(12696),n=c(52574),o=c(82802),p=c(77533),q=c(45229),r=c(32822),s=c(261),t=c(26453),u=c(52474),v=c(26713),w=c(51356),x=c(62685),y=c(36225),z=c(63446),A=c(2762),B=c(45742),C=c(86439),D=c(81170),E=c.n(D),F=c(62506),G=c(91203),H={};for(let a in F)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(H[a]=()=>F[a]);c.d(b,H);let I={children:["",{children:["models",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,38108)),"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\page.tsx"]}]},{error:[()=>Promise.resolve().then(c.bind(c,14867)),"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\error.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,50573)),"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\loading.tsx"]}]},{layout:[()=>Promise.resolve().then(c.bind(c,51472)),"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,81170,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,87028,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,90461,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,32768,23)),"next/dist/client/components/builtin/unauthorized.js"]}]}.children,J=["C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\page.tsx"],K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/models/page",pathname:"/models",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:I},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var D;let H="/models/page";"/index"===H&&(H="/");let N=(0,h.getRequestMeta)(a,"postponed"),O=(0,h.getRequestMeta)(a,"minimalMode"),P=await L.prepare(a,b,{srcPage:H,multiZoneDraftMode:!1});if(!P)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:Q,query:R,params:S,parsedUrl:T,pageIsDynamic:U,buildManifest:V,nextFontManifest:W,reactLoadableManifest:X,serverActionsManifest:Y,clientReferenceManifest:Z,subresourceIntegrityManifest:$,prerenderManifest:_,isDraftMode:aa,resolvedPathname:ab,revalidateOnlyGenerated:ac,routerServerContext:ad,nextConfig:ae,interceptionRoutePatterns:af}=P,ag=T.pathname||"/",ah=(0,s.normalizeAppPath)(H),{isOnDemandRevalidate:ai}=P,aj=L.match(ag,_),ak=!!_.routes[ab],al=!!(aj||ak||_.routes[ah]),am=a.headers["user-agent"]||"",an=(0,v.getBotType)(am),ao=(0,q.isHtmlBotRequest)(a),ap=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[u.NEXT_ROUTER_PREFETCH_HEADER],aq=(0,h.getRequestMeta)(a,"isRSCRequest")??(0,n.f)(a.headers[u.RSC_HEADER]),ar=(0,t.getIsPossibleServerAction)(a),as=(0,m.checkIsAppPPREnabled)(ae.experimental.ppr)&&(null==(D=_.routes[ah]??_.dynamicRoutes[ah])?void 0:D.renderingMode)==="PARTIALLY_STATIC",at=!1,au=!1,av=as?N:void 0,aw=as&&aq&&!ap,ax=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ay=!am||(0,q.shouldServeStreamingMetadata)(am,ae.htmlLimitedBots);ao&&as&&(al=!1,ay=!1);let az=!0===L.isDev||!al||"string"==typeof N||aw,aA=ao&&as,aB=null;aa||!al||az||ar||av||aw||(aB=ab);let aC=aB;!aC&&L.isDev&&(aC=ab),L.isDev||aa||!al||!aq||aw||(0,k.d)(a.headers);let aD={...F,tree:I,pages:J,GlobalError:E(),handler:M,routeModule:L,__next_app__:K};Y&&Z&&(0,p.setReferenceManifestsSingleton)({page:H,clientReferenceManifest:Z,serverActionsManifest:Y,serverModuleMap:(0,r.createServerModuleMap)({serverActionsManifest:Y})});let aE=a.method||"GET",aF=(0,g.getTracer)(),aG=aF.getActiveScopeSpan();try{let f=L.getVaryHeader(ab,af);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return L.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aF.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aE} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aE} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:R,params:S,page:ah,sharedContext:{buildId:Q},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aD,Component:(0,j.T)(aD),params:S,routeModule:L,page:H,postponed:f,shouldWaitOnAllReady:aA,serveStreamingMetadata:ay,supportsDynamicResponse:"string"==typeof f||az,buildManifest:V,nextFontManifest:W,reactLoadableManifest:X,subresourceIntegrityManifest:$,serverActionsManifest:Y,clientReferenceManifest:Z,setIsrStatus:null==ad?void 0:ad.setIsrStatus,dir:c(33873).join(process.cwd(),L.relativeProjectDir),isDraftMode:aa,isRevalidate:al&&!f&&!aw,botType:an,isOnDemandRevalidate:ai,isPossibleServerAction:ar,assetPrefix:ae.assetPrefix,nextConfigOutput:ae.output,crossOrigin:ae.crossOrigin,trailingSlash:ae.trailingSlash,previewProps:_.preview,deploymentId:ae.deploymentId,enableTainting:ae.experimental.taint,htmlLimitedBots:ae.htmlLimitedBots,devtoolSegmentExplorer:ae.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ae.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ae.experimental.cacheLife,basePath:ae.basePath,serverActions:ae.experimental.serverActions,...at?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:at}:{},experimental:{isRoutePPREnabled:as,expireTime:ae.expireTime,staleTimes:ae.experimental.staleTimes,cacheComponents:!!ae.experimental.cacheComponents,clientSegmentCache:!!ae.experimental.clientSegmentCache,clientParamParsing:!!ae.experimental.clientParamParsing,dynamicOnHover:!!ae.experimental.dynamicOnHover,inlineCss:!!ae.experimental.inlineCss,authInterrupts:!!ae.experimental.authInterrupts,clientTraceMetadata:ae.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>L.onRequestError(a,b,d,ad),err:(0,h.getRequestMeta)(a,"invokeError"),dev:L.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[z.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,al&&(null==n?void 0:n.revalidate)===0&&!L.isDev&&!as){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ab}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
3
- see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:w.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},n=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===L.isDev,l=c||b.writableEnded;if(ai&&ac&&!f&&!O)return(null==ad?void 0:ad.render404)?await ad.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(aj&&(j=(0,x.parseFallbackField)(aj.fallback)),j===x.FallbackMode.PRERENDER&&(0,v.isBot)(am)&&(!as||ao)&&(j=x.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ai=!0),ai&&(j!==x.FallbackMode.NOT_FOUND||f)&&(j=x.FallbackMode.BLOCKING_STATIC_RENDER),!O&&j!==x.FallbackMode.BLOCKING_STATIC_RENDER&&aC&&!l&&!aa&&U&&(k||!ak)){let b;if((k||aj)&&j===x.FallbackMode.NOT_FOUND)throw new C.NoFallbackError;if(as&&!aq){let c="string"==typeof(null==aj?void 0:aj.fallback)?aj.fallback:k?ah:null;if(b=await L.handleResponse({cacheKey:c,req:a,nextConfig:ae,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:_,isRoutePPREnabled:as,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||au?(0,o.u)(ah):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let n=ai||g||!av?void 0:av;if(at&&void 0!==n)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:w.CachedRouteKind.PAGES,html:y.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=U&&as&&((0,h.getRequestMeta)(a,"renderFallbackShell")||au)?(0,o.u)(ag):null;return m({span:i,postponed:n,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,o=await L.handleResponse({cacheKey:aB,responseGenerator:a=>n({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ai,isRoutePPREnabled:as,req:a,nextConfig:ae,prerenderManifest:_,waitUntil:d.waitUntil});if(aa&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),L.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!o){if(aB)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=o.value)?void 0:f.kind)!==w.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=o.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof o.value.postponed;al&&!aw&&(!p||ap)&&(O||b.setHeader("x-nextjs-cache",ai?"REVALIDATED":o.isMiss?"MISS":o.isStale?"STALE":"HIT"),b.setHeader(u.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=o;if(av)l={revalidate:0,expire:void 0};else if(O&&aq&&!ap&&as)l={revalidate:0,expire:void 0};else if(!L.isDev)if(aa)l={revalidate:0,expire:void 0};else if(al){if(o.cacheControl)if("number"==typeof o.cacheControl.revalidate){if(o.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${o.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:o.cacheControl.revalidate,expire:(null==(j=o.cacheControl)?void 0:j.expire)??ae.expireTime}}else l={revalidate:z.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(o.cacheControl=l,"string"==typeof ax&&(null==q?void 0:q.kind)===w.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(u.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[z.NEXT_CACHE_TAGS_HEADER];O&&al&&c&&"string"==typeof c&&b.setHeader(z.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(ax);return void 0!==d?(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.fromStatic(d,u.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl}):(b.statusCode=204,(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.EMPTY,cacheControl:o.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...o,value:{...o.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&av)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(O&&al||delete a[z.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[z.NEXT_CACHE_TAGS_HEADER];if(O&&al&&s&&"string"==typeof s&&b.setHeader(z.NEXT_CACHE_TAGS_HEADER,s),!q.status||aq&&as||(b.statusCode=q.status),!O&&q.status&&G.RedirectStatusCode[q.status]&&aq&&(b.statusCode=200),p&&b.setHeader(u.NEXT_DID_POSTPONE_HEADER,"1"),aq&&!aa){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:q.html,cacheControl:aw?{revalidate:0,expire:void 0}:o.cacheControl})}return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.fromStatic(q.rscData,u.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl})}let t=q.html;if(!p||O||aq)return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:o.cacheControl});if(at)return t.push(new ReadableStream({start(a){a.enqueue(A.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}});let v=new TransformStream;return t.push(v.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==w.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(v.writable)}).catch(a=>{v.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}})};if(!aG)return await aF.withPropagatedContext(a.headers,()=>aF.trace(i.BaseServerSpan.handleRequest,{spanName:`${aE} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aE,"http.target":a.url}},p));await p(aG)}catch(b){throw b instanceof C.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:al,isOnDemandRevalidate:ai})},ad),b}}},44618:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return e}});let d=c(18830)._(c(11962));function e(a,b){var c;let e={};"function"==typeof a&&(e.loader=a);let f={...e,...b};return(0,d.default)({...f,modules:null==(c=f.loadableGenerated)?void 0:c.modules})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},44708:a=>{"use strict";a.exports=require("node:https")},46466:a=>{"use strict";a.exports=require("node:stream/promises")},48161:a=>{"use strict";a.exports=require("node:os")},49428:(a,b,c)=>{"use strict";c.d(b,{default:()=>p});var d=c(21124),e=c(38301),f=c.n(e),g=c(13973);let h=(0,c(19815).h)("frontend/components/AppWrapper"),i=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ../contexts/ThemeContext"]},ssr:!1,loading:()=>(0,d.jsx)("div",{children:"Loading theme..."})}),j=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ../contexts/StorageContext"]},ssr:!1,loading:()=>(0,d.jsx)("div",{children:"Loading storage..."})}),k=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ./Navigation"]},ssr:!1,loading:()=>(0,d.jsx)("div",{children:"Loading navigation..."})}),l=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ./EncryptionAuthDialog"]},ssr:!1,loading:()=>null}),m=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ../contexts/TourContext"]},ssr:!1,loading:()=>null}),n=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ./Tour/TourOverlay"]},ssr:!1,loading:()=>null});class o extends f().Component{constructor(a){super(a),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(a){h.error("AppWrapper error boundary caught an error:",a)}render(){return this.state.hasError?(0,d.jsxs)("div",{style:{padding:"20px",textAlign:"center"},children:[(0,d.jsx)("h2",{children:"Something went wrong loading the application."}),(0,d.jsx)("p",{children:"Please try refreshing the page."}),(0,d.jsx)("button",{onClick:()=>window.location.reload(),style:{padding:"8px 16px",background:"#3498DB",color:"white",border:"none",borderRadius:"4px",cursor:"pointer",marginTop:"10px"},children:"Refresh"})]}):this.props.children}}function p({children:a}){return h.debug("Rendering AppWrapper"),(0,d.jsx)(o,{children:(0,d.jsx)(e.Suspense,{fallback:(0,d.jsx)("div",{children:"Loading application..."}),children:(0,d.jsx)(i,{children:(0,d.jsx)(j,{children:(0,d.jsxs)(m,{children:[(0,d.jsxs)(e.Suspense,{fallback:(0,d.jsx)("div",{children:"Loading navigation..."}),children:[(0,d.jsx)(k,{}),(0,d.jsx)(l,{})]}),(0,d.jsx)("main",{children:a}),(0,d.jsx)(n,{})]})})})})})}},50573:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g});var d=c(75338),e=c(73737),f=c(65251);function g(){return(0,d.jsx)(e.default,{display:"flex",justifyContent:"center",alignItems:"center",height:"100%",p:4,children:(0,d.jsx)(f.default,{size:40})})}},51455:a=>{"use strict";a.exports=require("node:fs/promises")},51472:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>m,metadata:()=>l});var d=c(75338),e=c(94294),f=c.n(e),g=c(81464),h=c.n(g);c(61135);var i=c(50846),j=c(41306);let k=(0,i.h)("app/layout"),l={title:"FLUJO",description:"A browser-based application for managing models, MCP servers, flows and chat interactions"};function m({children:a}){return k.debug("Rendering RootLayout"),(0,d.jsx)("html",{lang:"en",children:(0,d.jsx)("body",{className:`${f().variable} ${h().variable} antialiased`,children:(0,d.jsx)(j.default,{children:a})})})}},55511:a=>{"use strict";a.exports=require("crypto")},55591:a=>{"use strict";a.exports=require("https")},57075:a=>{"use strict";a.exports=require("node:stream")},57975:a=>{"use strict";a.exports=require("node:util")},61135:()=>{},61615:(a,b,c)=>{"use strict";c.d(b,{default:()=>g});var d=c(21124);c(38301);var e=c(81637),f=c(8521);let g=({size:a="medium",color:b="primary",className:c="",sx:g={}})=>{let h="white"===b?{color:"#fff",...g}:g;return(0,d.jsxs)(e.default,{component:"span",sx:{display:"inline-block",lineHeight:0,...h},className:c,role:"status",children:[(0,d.jsx)(f.default,{size:{small:16,medium:24,large:36}[a],color:"white"===b?"inherit":b,"aria-hidden":"true"}),(0,d.jsx)(e.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..."})]})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},63112:(a,b,c)=>{let{createProxy:d}=c(39893);a.exports=d("C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\shared\\lib\\lazy-dynamic\\preload-chunks.js")},64317:(a,b,c)=>{Promise.resolve().then(c.bind(c,81637)),Promise.resolve().then(c.bind(c,8521))},65251:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\node_modules\\\\@mui\\\\material\\\\CircularProgress\\\\CircularProgress.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\CircularProgress\\CircularProgress.js","default")},65343:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});var d=c(27080),e=c(21124);let f=(0,d.A)((0,e.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")},69389:(a,b,c)=>{let{createProxy:d}=c(39893);a.exports=d("C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\shared\\lib\\lazy-dynamic\\dynamic-bailout-to-csr.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73496:a=>{"use strict";a.exports=require("http2")},73566:a=>{"use strict";a.exports=require("worker_threads")},73737:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\node_modules\\\\@mui\\\\material\\\\Box\\\\Box.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Box\\Box.js","default")},74075:a=>{"use strict";a.exports=require("zlib")},76760:a=>{"use strict";a.exports=require("node:path")},77030:a=>{"use strict";a.exports=require("node:net")},77598:a=>{"use strict";a.exports=require("node:crypto")},78763:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>aY});var d,e,f=c(21124),g=c(38301),h=c(68949),i=c(54573),j=c(81637),k=c(37674),l=c(67101),m=c(20830),n=c(88745),o=c(47902),p=c(40973);c(2117);var q=c(8521),r=c(82666),s=c(30818),t=c(27114),u=c(79515),v=c(43312),w=c(98463),x=c(44079),y=c(12033),z=c(91034),A=c(27080);let B=(0,A.A)((0,f.jsx)("path",{d:"M21 10h-8.35C11.83 7.67 9.61 6 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6c2.61 0 4.83-1.67 5.65-4H13l2 2 2-2 2 2 4-4.04zM7 15c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3"}),"Key"),C=(0,A.A)((0,f.jsx)("path",{d:"M19.8 18.4 14 10.67V6.5l1.35-1.69c.26-.33.03-.81-.39-.81H9.04c-.42 0-.65.48-.39.81L10 6.5v4.17L4.2 18.4c-.49.66-.02 1.6.8 1.6h14c.82 0 1.29-.94.8-1.6"}),"Science");var D=c(83434),E=c(19815),F=c(41893),G=c(40512),H=c(83899),I=c(52327),J=c(91059),K=c(19925),L=c(8165),M=c(65343);let N=({title:a,attempt:b})=>(0,f.jsxs)(j.default,{sx:{mb:2},children:[(0,f.jsxs)(j.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:.5},children:[b.ok?(0,f.jsx)(L.A,{color:"success",fontSize:"small"}):(0,f.jsx)(M.A,{color:"error",fontSize:"small"}),(0,f.jsx)(u.default,{variant:"subtitle2",children:a}),"number"==typeof b.status&&(0,f.jsx)(F.A,{size:"small",label:`HTTP ${b.status}`}),(0,f.jsx)(F.A,{size:"small",variant:"outlined",label:`${b.durationMs} ms`})]}),b.ok?(0,f.jsxs)(u.default,{variant:"body2",color:"text.secondary",sx:{pl:3},children:["Response: ",b.content?`"${b.content}"`:"(empty)"]}):(0,f.jsxs)(j.default,{sx:{pl:3},children:[(0,f.jsx)(u.default,{variant:"body2",color:"error.main",children:b.error?.message}),(b.error?.code||b.error?.type)&&(0,f.jsxs)(u.default,{variant:"caption",color:"text.secondary",display:"block",children:[b.error?.type?`type: ${b.error.type}`:"",b.error?.type&&b.error?.code?" \xb7 ":"",b.error?.code?`code: ${b.error.code}`:""]}),b.error?.retryAfter&&(0,f.jsxs)(u.default,{variant:"caption",color:"text.secondary",display:"block",children:["retry-after: ",b.error.retryAfter,"s"]}),b.error?.body!==void 0&&(0,f.jsx)(j.default,{component:"pre",sx:{mt:.5,p:1,bgcolor:"action.hover",borderRadius:1,fontSize:"0.7rem",overflowX:"auto",maxHeight:160},children:JSON.stringify(b.error.body,null,2)})]})]}),O=({open:a,modelLabel:b,loading:c,result:d,error:e,onClose:g,onRetry:h})=>(0,f.jsxs)(G.A,{open:a,onClose:g,maxWidth:"sm",fullWidth:!0,children:[(0,f.jsxs)(H.A,{children:["Test model: ",b]}),(0,f.jsx)(I.A,{dividers:!0,children:c?(0,f.jsxs)(j.default,{sx:{display:"flex",alignItems:"center",gap:2,py:3},children:[(0,f.jsx)(q.default,{size:24}),(0,f.jsx)(u.default,{variant:"body2",children:"Sending a direct test request (SDK + axios)…"})]}):e?(0,f.jsx)(n.A,{severity:"error",children:e}):d?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(n.A,{severity:d.ok?"success":"warning",sx:{mb:2},children:d.diagnosis}),(0,f.jsxs)(u.default,{variant:"caption",color:"text.secondary",display:"block",sx:{mb:2},children:["model: ",d.model,d.baseUrl?` \xb7 ${d.baseUrl}`:"",d.provider?` \xb7 ${d.provider}`:""]}),(0,f.jsx)(J.A,{sx:{mb:2}}),(0,f.jsx)(N,{title:"OpenAI SDK (used by flows)",attempt:d.sdk}),(0,f.jsx)(N,{title:"axios (independent cross-check)",attempt:d.axios})]}):null}),(0,f.jsxs)(K.A,{children:[(0,f.jsx)(m.A,{onClick:h,disabled:c,children:"Run again"}),(0,f.jsx)(m.A,{onClick:g,variant:"contained",children:"Close"})]})]}),P=(0,E.h)("frontend/components/models/list/ModelCard"),Q=({model:a,onEdit:b,onDelete:c})=>{let[d,e]=(0,g.useState)(!1),[h,i]=(0,g.useState)(!1),[k,l]=(0,g.useState)(null),[m,n]=(0,g.useState)(null),o=async()=>{i(!0),n(null),l(null);try{let b=await (0,D.X)().testModel({modelId:a.id});l(b)}catch(b){P.error("Model test failed",{modelId:a.id,error:b}),n(b instanceof Error?b.message:"Failed to run test")}finally{i(!1)}};return(0,f.jsxs)(s.A,{elevation:2,sx:{height:"100%",display:"flex",flexDirection:"column"},children:[(0,f.jsxs)(t.A,{sx:{flexGrow:1},children:[(0,f.jsx)(u.default,{variant:"h6",gutterBottom:!0,children:a.displayName||a.name}),(0,f.jsx)(u.default,{variant:"body2",color:"text.secondary",sx:{mb:2},style:{display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",overflow:"hidden",textOverflow:"ellipsis"},children:a.description}),(0,f.jsxs)(j.default,{sx:{mb:1,display:"flex",alignItems:"center",gap:1},children:[(0,f.jsx)(B,{fontSize:"small",color:"action"}),(0,f.jsx)(u.default,{variant:"body2",color:"text.secondary",children:"API Key: ••••••••"})]}),a.baseUrl&&(0,f.jsx)(v.A,{title:a.baseUrl,arrow:!0,placement:"top",children:(0,f.jsxs)(u.default,{variant:"body2",color:"text.secondary",noWrap:!0,children:["Base URL: ",a.baseUrl]})})]}),(0,f.jsxs)(w.A,{disableSpacing:!0,children:[(0,f.jsx)(v.A,{title:"Test model (direct SDK call, no flow)",arrow:!0,children:(0,f.jsx)(x.A,{"aria-label":"test",onClick:()=>{e(!0),o()},children:(0,f.jsx)(C,{})})}),(0,f.jsx)(x.A,{"aria-label":"edit",onClick:b,children:(0,f.jsx)(y.A,{})}),(0,f.jsx)(x.A,{"aria-label":"delete",onClick:c,children:(0,f.jsx)(z.A,{})})]}),(0,f.jsx)(O,{open:d,modelLabel:a.displayName||a.name,loading:h,result:k,error:m,onClose:()=>e(!1),onRetry:o})]})},R=(0,E.h)("frontend/components/models/list/ModelList"),S=({models:a,isLoading:b,onAdd:c,onUpdate:d,onDelete:e})=>{if(b)return(0,f.jsx)(j.default,{display:"flex",justifyContent:"center",py:4,children:(0,f.jsx)(q.default,{})});let g=async a=>{let b=await d(a);b.success||R.error("Failed to update model in ModelList",b.error)};return(0,f.jsx)(r.Ay,{container:!0,spacing:2,children:a&&0!==a.length?a.map(a=>(0,f.jsx)(r.Ay,{item:!0,xs:12,sm:6,md:4,children:(0,f.jsx)(Q,{model:a,onEdit:()=>g(a),onDelete:()=>e(a.id)})},a.id)):(0,f.jsx)(r.Ay,{item:!0,xs:12,children:(0,f.jsx)(j.default,{textAlign:"center",py:4,children:"No models found"})})})};var T=c(82605),U=c(98256),V=c(7675),W=c(94367),X=c(43249),Y=c(2783),Z=c(37489),$=c(92869),_=c(55973),aa=c(66335),ab=c(62383),ac=c(10005);function ad(a){return a.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}let ae=function(a={}){let{ignoreAccents:b=!0,ignoreCase:c=!0,limit:d,matchFrom:e="any",stringify:f,trim:g=!1}=a;return(a,{inputValue:h,getOptionLabel:i})=>{let j=g?h.trim():h;c&&(j=j.toLowerCase()),b&&(j=ad(j));let k=j?a.filter(a=>{let d=(f||i)(a);return c&&(d=d.toLowerCase()),b&&(d=ad(d)),"start"===e?d.startsWith(j):d.includes(j)}):a;return"number"==typeof d?k.slice(0,d):k}}(),af=a=>null!==a.current&&a.current.parentElement?.contains(document.activeElement),ag=[];function ah(a,b,c){if(b||null==a)return"";let d=c(a);return"string"==typeof d?d:""}let ai=function(a){let{unstable_isActiveElementInListbox:b=af,unstable_classNamePrefix:c="Mui",autoComplete:d=!1,autoHighlight:e=!1,autoSelect:f=!1,blurOnSelect:h=!1,clearOnBlur:i=!a.freeSolo,clearOnEscape:j=!1,componentName:k="useAutocomplete",defaultValue:l=a.multiple?ag:null,disableClearable:m=!1,disableCloseOnSelect:n=!1,disabled:o,disabledItemsFocusable:p=!1,disableListWrap:q=!1,filterOptions:r=ae,filterSelectedOptions:s=!1,freeSolo:t=!1,getOptionDisabled:u,getOptionKey:v,getOptionLabel:w=a=>a.label??a,groupBy:x,handleHomeEndKeys:y=!a.freeSolo,id:z,includeInputInList:A=!1,inputValue:B,isOptionEqualToValue:C=(a,b)=>a===b,multiple:D=!1,onChange:E,onClose:F,onHighlightChange:G,onInputChange:H,onOpen:I,open:J,openOnFocus:K=!1,options:L,readOnly:M=!1,selectOnFocus:N=!a.freeSolo,value:O}=a,P=(0,$.A)(z),Q=w;Q=a=>{let b=w(a);return"string"!=typeof b?String(b):b};let R=g.useRef(!1),S=g.useRef(!0),T=g.useRef(null),U=g.useRef(null),[V,W]=g.useState(null),[X,Y]=g.useState(-1),Z=e?0:-1,ad=g.useRef(Z),ai=g.useRef(ah(l??O,D,Q)).current,[aj,ak]=(0,_.A)({controlled:O,default:l,name:k}),[al,am]=(0,_.A)({controlled:B,default:ai,name:k,state:"inputValue"}),[an,ao]=g.useState(!1),ap=g.useCallback((a,b,c)=>{if(!(D?aj.length<b.length:null!==b)&&!i)return;let d=ah(b,D,Q);al!==d&&(am(d),H&&H(a,d,c))},[Q,al,D,H,am,i,aj]),[aq,ar]=(0,_.A)({controlled:J,default:!1,name:k,state:"open"}),[as,at]=g.useState(!0),au=!D&&null!=aj&&al===Q(aj),av=aq&&!M,aw=av?r(L.filter(a=>!(s&&(D?aj:[aj]).some(b=>null!==b&&C(a,b)))),{inputValue:au&&as?"":al,getOptionLabel:Q}):[],ax=(0,aa.A)({filteredOptions:aw,value:aj,inputValue:al});g.useEffect(()=>{let a=aj!==ax.value;(!an||a)&&(!t||a)&&ap(null,aj,"reset")},[aj,ap,an,ax.value,t]);let ay=aq&&aw.length>0&&!M,az=(0,ab.A)(a=>{-1===a?T.current.focus():V.querySelector(`[data-tag-index="${a}"]`).focus()});g.useEffect(()=>{D&&X>aj.length-1&&(Y(-1),az(-1))},[aj,D,X,az]);let aA=(0,ab.A)(({event:a,index:b,reason:d})=>{if(ad.current=b,-1===b?T.current.removeAttribute("aria-activedescendant"):T.current.setAttribute("aria-activedescendant",`${P}-option-${b}`),G&&["mouse","keyboard","touch"].includes(d)&&G(a,-1===b?null:aw[b],d),!U.current)return;let e=U.current.querySelector(`[role="option"].${c}-focused`);e&&(e.classList.remove(`${c}-focused`),e.classList.remove(`${c}-focusVisible`));let f=U.current;if("listbox"!==U.current.getAttribute("role")&&(f=U.current.parentElement.querySelector('[role="listbox"]')),!f)return;if(-1===b){f.scrollTop=0;return}let g=U.current.querySelector(`[data-option-index="${b}"]`);if(g&&(g.classList.add(`${c}-focused`),"keyboard"===d&&g.classList.add(`${c}-focusVisible`),f.scrollHeight>f.clientHeight&&"mouse"!==d&&"touch"!==d)){let a=f.clientHeight+f.scrollTop,b=g.offsetTop+g.offsetHeight;b>a?f.scrollTop=b-f.clientHeight:g.offsetTop-g.offsetHeight*(1.3*!!x)<f.scrollTop&&(f.scrollTop=g.offsetTop-g.offsetHeight*(1.3*!!x))}}),aB=(0,ab.A)(({event:a,diff:b,direction:c="next",reason:e})=>{if(!av)return;let f=function(a,b){if(!U.current||a<0||a>=aw.length)return -1;let c=a;for(;;){let d=U.current.querySelector(`[data-option-index="${c}"]`),e=!p&&(!d||d.disabled||"true"===d.getAttribute("aria-disabled"));if(d&&d.hasAttribute("tabindex")&&!e)return c;if((c="next"===b?(c+1)%aw.length:(c-1+aw.length)%aw.length)===a)return -1}}((()=>{let a=aw.length-1;if("reset"===b)return Z;if("start"===b)return 0;if("end"===b)return a;let c=ad.current+b;return c<0?-1===c&&A?-1:q&&-1!==ad.current||Math.abs(b)>1?0:a:c>a?c===a+1&&A?-1:q||Math.abs(b)>1?a:0:c})(),c);if(aA({index:f,reason:e,event:a}),d&&"reset"!==b)if(-1===f)T.current.value=al;else{let a=Q(aw[f]);T.current.value=a,0===a.toLowerCase().indexOf(al.toLowerCase())&&al.length>0&&T.current.setSelectionRange(al.length,a.length)}}),aC=g.useCallback(()=>{if(!av)return;let a=(()=>{var a,b;if(-1!==ad.current&&ax.filteredOptions&&ax.filteredOptions.length!==aw.length&&ax.inputValue===al&&(D?aj.length===ax.value.length&&ax.value.every((a,b)=>Q(aj[b])===Q(a)):(a=ax.value,b=aj,(a?Q(a):"")===(b?Q(b):"")))){let a=ax.filteredOptions[ad.current];if(a)return aw.findIndex(b=>Q(b)===Q(a))}return -1})();if(-1!==a){ad.current=a;return}let b=D?aj[0]:aj;if(0===aw.length||null==b)return void aB({diff:"reset"});if(U.current){if(null!=b){let a=aw[ad.current];if(D&&a&&-1!==aj.findIndex(b=>C(a,b)))return;let c=aw.findIndex(a=>C(a,b));-1===c?aB({diff:"reset"}):aA({index:c});return}if(ad.current>=aw.length-1)return void aA({index:aw.length-1});aA({index:ad.current})}},[aw.length,!D&&aj,s,aB,aA,av,al,D]),aD=(0,ab.A)(a=>{(0,ac.A)(U,a),a&&aC()});g.useEffect(()=>{aC()},[aC]);let aE=a=>{!aq&&(ar(!0),at(!0),I&&I(a))},aF=(a,b)=>{aq&&(ar(!1),F&&F(a,b))},aG=(a,b,c,d)=>{if(D){if(aj.length===b.length&&aj.every((a,c)=>a===b[c]))return}else if(aj===b)return;E&&E(a,b,c,d),ak(b)},aH=g.useRef(!1),aI=(a,b,c="selectOption",d="options")=>{let e=c,f=b;if(D){let a=(f=Array.isArray(aj)?aj.slice():[]).findIndex(a=>C(b,a));-1===a?f.push(b):"freeSolo"!==d&&(f.splice(a,1),e="removeOption")}ap(a,f,e),aG(a,f,e,{option:b}),n||a&&(a.ctrlKey||a.metaKey)||aF(a,e),(!0===h||"touch"===h&&aH.current||"mouse"===h&&!aH.current)&&T.current.blur()},aJ=(a,b)=>{if(!D)return;""===al&&aF(a,"toggleInput");let c=X;-1===X?""===al&&"previous"===b&&(c=aj.length-1):((c+="next"===b?1:-1)<0&&(c=0),c===aj.length&&(c=-1)),Y(c=function(a,b){if(-1===a)return -1;let c=a;for(;;){if("next"===b&&c===aj.length||"previous"===b&&-1===c)return -1;let a=V.querySelector(`[data-tag-index="${c}"]`);if(a&&a.hasAttribute("tabindex")&&!a.disabled&&"true"!==a.getAttribute("aria-disabled"))return c;c+="next"===b?1:-1}}(c,b)),az(c)},aK=a=>{R.current=!0,am(""),H&&H(a,"","clear"),aG(a,D?[]:null,"clear")},aL=a=>{ao(!0),K&&!R.current&&aE(a)},aM=a=>{if(b(U))return void T.current.focus();ao(!1),S.current=!0,R.current=!1,f&&-1!==ad.current&&av?aI(a,aw[ad.current],"blur"):f&&t&&""!==al?aI(a,al,"blur","freeSolo"):i&&ap(a,aj,"blur"),aF(a,"blur")},aN=a=>{let b=a.target.value;al!==b&&(am(b),at(!1),H&&H(a,b,"input")),""===b?m||D||aG(a,null,"clear"):aE(a)},aO=a=>{let b=Number(a.currentTarget.getAttribute("data-option-index"));ad.current!==b&&aA({event:a,index:b,reason:"mouse"})},aP=a=>{aA({event:a,index:Number(a.currentTarget.getAttribute("data-option-index")),reason:"touch"}),aH.current=!0},aQ=a=>{let b=Number(a.currentTarget.getAttribute("data-option-index"));aI(a,aw[b],"selectOption"),aH.current=!1},aR=a=>{aq?aF(a,"toggleInput"):aE(a)},aS=a=>{a.currentTarget.contains(a.target)&&a.target.getAttribute("id")!==P&&a.preventDefault()},aT=a=>{a.currentTarget.contains(a.target)&&(T.current.focus(),N&&S.current&&T.current.selectionEnd-T.current.selectionStart==0&&T.current.select(),S.current=!1)},aU=a=>{o||""!==al&&aq||aR(a)},aV=t&&al.length>0;aV=aV||(D?aj.length>0:null!==aj);let aW=aw;return x&&(aW=aw.reduce((a,b,c)=>{let d=x(b);return a.length>0&&a[a.length-1].group===d?a[a.length-1].options.push(b):a.push({key:c,index:c,group:d,options:[b]}),a},[])),o&&an&&aM(),{getRootProps:(a={})=>({...a,onKeyDown:b=>{if(a.onKeyDown&&a.onKeyDown(b),!b.defaultMuiPrevented&&(-1===X||["ArrowLeft","ArrowRight"].includes(b.key)||(Y(-1),az(-1)),229!==b.which))switch(b.key){case"Home":av&&y&&(b.preventDefault(),aB({diff:"start",direction:"next",reason:"keyboard",event:b}));break;case"End":av&&y&&(b.preventDefault(),aB({diff:"end",direction:"previous",reason:"keyboard",event:b}));break;case"PageUp":b.preventDefault(),aB({diff:-5,direction:"previous",reason:"keyboard",event:b}),aE(b);break;case"PageDown":b.preventDefault(),aB({diff:5,direction:"next",reason:"keyboard",event:b}),aE(b);break;case"ArrowDown":b.preventDefault(),aB({diff:1,direction:"next",reason:"keyboard",event:b}),aE(b);break;case"ArrowUp":b.preventDefault(),aB({diff:-1,direction:"previous",reason:"keyboard",event:b}),aE(b);break;case"ArrowLeft":aJ(b,"previous");break;case"ArrowRight":aJ(b,"next");break;case"Enter":if(-1!==ad.current&&av){let a=aw[ad.current],c=!!u&&u(a);if(b.preventDefault(),c)return;aI(b,a,"selectOption"),d&&T.current.setSelectionRange(T.current.value.length,T.current.value.length)}else t&&""!==al&&!1===au&&(D&&b.preventDefault(),aI(b,al,"createOption","freeSolo"));break;case"Escape":av?(b.preventDefault(),b.stopPropagation(),aF(b,"escape")):j&&(""!==al||D&&aj.length>0)&&(b.preventDefault(),b.stopPropagation(),aK(b));break;case"Backspace":if(D&&!M&&""===al&&aj.length>0){let a=-1===X?aj.length-1:X,c=aj.slice();c.splice(a,1),aG(b,c,"removeOption",{option:aj[a]})}break;case"Delete":if(D&&!M&&""===al&&aj.length>0&&-1!==X){let a=aj.slice();a.splice(X,1),aG(b,a,"removeOption",{option:aj[X]})}}},onMouseDown:aS,onClick:aT}),getInputLabelProps:()=>({id:`${P}-label`,htmlFor:P}),getInputProps:()=>({id:P,value:al,onBlur:aM,onFocus:aL,onChange:aN,onMouseDown:aU,"aria-activedescendant":av?"":null,"aria-autocomplete":d?"both":"list","aria-controls":ay?`${P}-listbox`:void 0,"aria-expanded":ay,autoComplete:"off",ref:T,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:o}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:aK}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:aR}),getTagProps:({index:a})=>({key:a,"data-tag-index":a,tabIndex:-1,...!M&&{onDelete:b=>{let c=aj.slice();c.splice(a,1),aG(b,c,"removeOption",{option:aj[a]})}}}),getListboxProps:()=>({role:"listbox",id:`${P}-listbox`,"aria-labelledby":`${P}-label`,ref:aD,onMouseDown:a=>{a.preventDefault()}}),getOptionProps:({index:a,option:b})=>{let c=(D?aj:[aj]).some(a=>null!=a&&C(b,a)),d=!!u&&u(b);return{key:v?.(b)??Q(b),tabIndex:-1,role:"option",id:`${P}-option-${a}`,onMouseMove:aO,onClick:aQ,onTouchStart:aP,"data-option-index":a,"aria-disabled":d,"aria-selected":c}},id:P,inputValue:al,value:aj,dirty:aV,expanded:av&&V,popupOpen:av,focused:an||-1!==X,anchorEl:V,setAnchorEl:W,focusedTag:X,groupedOptions:aW}};var aj=c(31605),ak=c(18168),al=c(68333),am=c(6636),an=c(6638),ao=c(29565),ap=c(33105);function aq(a){return(0,ap.Ay)("MuiListSubheader",a)}(0,ao.A)("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);let ar=(0,ak.Ay)("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.root,"default"!==c.color&&b[`color${(0,an.A)(c.color)}`],!c.disableGutters&&b.gutters,c.inset&&b.inset,!c.disableSticky&&b.sticky]}})((0,al.A)(({theme:a})=>({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(a.vars||a).palette.text.secondary,fontFamily:a.typography.fontFamily,fontWeight:a.typography.fontWeightMedium,fontSize:a.typography.pxToRem(14),variants:[{props:{color:"primary"},style:{color:(a.vars||a).palette.primary.main}},{props:{color:"inherit"},style:{color:"inherit"}},{props:({ownerState:a})=>!a.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:a})=>a.inset,style:{paddingLeft:72}},{props:({ownerState:a})=>!a.disableSticky,style:{position:"sticky",top:0,zIndex:1,backgroundColor:(a.vars||a).palette.background.paper}}]}))),as=g.forwardRef(function(a,b){let c=(0,am.b)({props:a,name:"MuiListSubheader"}),{className:d,color:e="default",component:g="li",disableGutters:h=!1,disableSticky:i=!1,inset:j=!1,...k}=c,l={...c,color:e,component:g,disableGutters:h,disableSticky:i,inset:j},m=(a=>{let{classes:b,color:c,disableGutters:d,inset:e,disableSticky:f}=a,g={root:["root","default"!==c&&`color${(0,an.A)(c)}`,!d&&"gutters",e&&"inset",!f&&"sticky"]};return(0,Y.A)(g,aq,b)})(l);return(0,f.jsx)(ar,{as:g,className:(0,X.A)(m.root,d),ref:b,ownerState:l,...k})});as&&(as.muiSkipListHighlight=!0);var at=c(88679),au=c(13763),av=c(91003),aw=c(37659),ax=c(88570),ay=c(41606);function az(a){return(0,ap.Ay)("MuiAutocomplete",a)}let aA=(0,ao.A)("MuiAutocomplete",["root","expanded","fullWidth","focused","focusVisible","tag","tagSizeSmall","tagSizeMedium","hasPopupIcon","hasClearIcon","inputRoot","input","inputFocused","endAdornment","clearIndicator","popupIndicator","popupIndicatorOpen","popper","popperDisablePortal","paper","listbox","loading","noOptions","option","groupLabel","groupUl"]);var aB=c(20385);let aC=(0,ak.Ay)("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:(a,b)=>{let{ownerState:c}=a,{fullWidth:d,hasClearIcon:e,hasPopupIcon:f,inputFocused:g,size:h}=c;return[{[`& .${aA.tag}`]:b.tag},{[`& .${aA.tag}`]:b[`tagSize${(0,an.A)(h)}`]},{[`& .${aA.inputRoot}`]:b.inputRoot},{[`& .${aA.input}`]:b.input},{[`& .${aA.input}`]:g&&b.inputFocused},b.root,d&&b.fullWidth,f&&b.hasPopupIcon,e&&b.hasClearIcon]}})({[`&.${aA.focused} .${aA.clearIndicator}`]:{visibility:"visible"},"@media (pointer: fine)":{[`&:hover .${aA.clearIndicator}`]:{visibility:"visible"}},[`& .${aA.tag}`]:{margin:3,maxWidth:"calc(100% - 6px)"},[`& .${aA.inputRoot}`]:{[`.${aA.hasPopupIcon}&, .${aA.hasClearIcon}&`]:{paddingRight:30},[`.${aA.hasPopupIcon}.${aA.hasClearIcon}&`]:{paddingRight:56},[`& .${aA.input}`]:{width:0,minWidth:30}},[`& .${at.A.root}`]:{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}},[`& .${at.A.root}.${au.A.sizeSmall}`]:{[`& .${at.A.input}`]:{padding:"2px 4px 3px 0"}},[`& .${av.A.root}`]:{padding:9,[`.${aA.hasPopupIcon}&, .${aA.hasClearIcon}&`]:{paddingRight:39},[`.${aA.hasPopupIcon}.${aA.hasClearIcon}&`]:{paddingRight:65},[`& .${aA.input}`]:{padding:"7.5px 4px 7.5px 5px"},[`& .${aA.endAdornment}`]:{right:9}},[`& .${av.A.root}.${au.A.sizeSmall}`]:{paddingTop:6,paddingBottom:6,paddingLeft:6,[`& .${aA.input}`]:{padding:"2.5px 4px 2.5px 8px"}},[`& .${aw.A.root}`]:{paddingTop:19,paddingLeft:8,[`.${aA.hasPopupIcon}&, .${aA.hasClearIcon}&`]:{paddingRight:39},[`.${aA.hasPopupIcon}.${aA.hasClearIcon}&`]:{paddingRight:65},[`& .${aw.A.input}`]:{padding:"7px 4px"},[`& .${aA.endAdornment}`]:{right:9}},[`& .${aw.A.root}.${au.A.sizeSmall}`]:{paddingBottom:1,[`& .${aw.A.input}`]:{padding:"2.5px 4px"}},[`& .${au.A.hiddenLabel}`]:{paddingTop:8},[`& .${aw.A.root}.${au.A.hiddenLabel}`]:{paddingTop:0,paddingBottom:0,[`& .${aA.input}`]:{paddingTop:16,paddingBottom:17}},[`& .${aw.A.root}.${au.A.hiddenLabel}.${au.A.sizeSmall}`]:{[`& .${aA.input}`]:{paddingTop:8,paddingBottom:9}},[`& .${aA.input}`]:{flexGrow:1,textOverflow:"ellipsis",opacity:0},variants:[{props:{fullWidth:!0},style:{width:"100%"}},{props:{size:"small"},style:{[`& .${aA.tag}`]:{margin:2,maxWidth:"calc(100% - 4px)"}}},{props:{inputFocused:!0},style:{[`& .${aA.input}`]:{opacity:1}}},{props:{multiple:!0},style:{[`& .${aA.inputRoot}`]:{flexWrap:"wrap"}}}]}),aD=(0,ak.Ay)("div",{name:"MuiAutocomplete",slot:"EndAdornment",overridesResolver:(a,b)=>b.endAdornment})({position:"absolute",right:0,top:"50%",transform:"translate(0, -50%)"}),aE=(0,ak.Ay)(x.A,{name:"MuiAutocomplete",slot:"ClearIndicator",overridesResolver:(a,b)=>b.clearIndicator})({marginRight:-2,padding:4,visibility:"hidden"}),aF=(0,ak.Ay)(x.A,{name:"MuiAutocomplete",slot:"PopupIndicator",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.popupIndicator,c.popupOpen&&b.popupIndicatorOpen]}})({padding:2,marginRight:-2,variants:[{props:{popupOpen:!0},style:{transform:"rotate(180deg)"}}]}),aG=(0,ak.Ay)(aj.A,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[{[`& .${aA.option}`]:b.option},b.popper,c.disablePortal&&b.popperDisablePortal]}})((0,al.A)(({theme:a})=>({zIndex:(a.vars||a).zIndex.modal,variants:[{props:{disablePortal:!0},style:{position:"absolute"}}]}))),aH=(0,ak.Ay)(i.A,{name:"MuiAutocomplete",slot:"Paper",overridesResolver:(a,b)=>b.paper})((0,al.A)(({theme:a})=>({...a.typography.body1,overflow:"auto"}))),aI=(0,ak.Ay)("div",{name:"MuiAutocomplete",slot:"Loading",overridesResolver:(a,b)=>b.loading})((0,al.A)(({theme:a})=>({color:(a.vars||a).palette.text.secondary,padding:"14px 16px"}))),aJ=(0,ak.Ay)("div",{name:"MuiAutocomplete",slot:"NoOptions",overridesResolver:(a,b)=>b.noOptions})((0,al.A)(({theme:a})=>({color:(a.vars||a).palette.text.secondary,padding:"14px 16px"}))),aK=(0,ak.Ay)("ul",{name:"MuiAutocomplete",slot:"Listbox",overridesResolver:(a,b)=>b.listbox})((0,al.A)(({theme:a})=>({listStyle:"none",margin:0,padding:"8px 0",maxHeight:"40vh",overflow:"auto",position:"relative",[`& .${aA.option}`]:{minHeight:48,display:"flex",overflow:"hidden",justifyContent:"flex-start",alignItems:"center",cursor:"pointer",paddingTop:6,boxSizing:"border-box",outline:"0",WebkitTapHighlightColor:"transparent",paddingBottom:6,paddingLeft:16,paddingRight:16,[a.breakpoints.up("sm")]:{minHeight:"auto"},[`&.${aA.focused}`]:{backgroundColor:(a.vars||a).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},'&[aria-disabled="true"]':{opacity:(a.vars||a).palette.action.disabledOpacity,pointerEvents:"none"},[`&.${aA.focusVisible}`]:{backgroundColor:(a.vars||a).palette.action.focus},'&[aria-selected="true"]':{backgroundColor:a.vars?`rgba(${a.vars.palette.primary.mainChannel} / ${a.vars.palette.action.selectedOpacity})`:(0,Z.X4)(a.palette.primary.main,a.palette.action.selectedOpacity),[`&.${aA.focused}`]:{backgroundColor:a.vars?`rgba(${a.vars.palette.primary.mainChannel} / calc(${a.vars.palette.action.selectedOpacity} + ${a.vars.palette.action.hoverOpacity}))`:(0,Z.X4)(a.palette.primary.main,a.palette.action.selectedOpacity+a.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(a.vars||a).palette.action.selected}},[`&.${aA.focusVisible}`]:{backgroundColor:a.vars?`rgba(${a.vars.palette.primary.mainChannel} / calc(${a.vars.palette.action.selectedOpacity} + ${a.vars.palette.action.focusOpacity}))`:(0,Z.X4)(a.palette.primary.main,a.palette.action.selectedOpacity+a.palette.action.focusOpacity)}}}}))),aL=(0,ak.Ay)(as,{name:"MuiAutocomplete",slot:"GroupLabel",overridesResolver:(a,b)=>b.groupLabel})((0,al.A)(({theme:a})=>({backgroundColor:(a.vars||a).palette.background.paper,top:-8}))),aM=(0,ak.Ay)("ul",{name:"MuiAutocomplete",slot:"GroupUl",overridesResolver:(a,b)=>b.groupUl})({padding:0,[`& .${aA.option}`]:{paddingLeft:24}}),aN=g.forwardRef(function(a,b){let c,h=(0,am.b)({props:a,name:"MuiAutocomplete"}),{autoComplete:j=!1,autoHighlight:k=!1,autoSelect:l=!1,blurOnSelect:m=!1,ChipProps:n,className:o,clearIcon:p=d||(d=(0,f.jsx)(ax.A,{fontSize:"small"})),clearOnBlur:q=!h.freeSolo,clearOnEscape:r=!1,clearText:s="Clear",closeText:t="Close",componentsProps:u,defaultValue:v=h.multiple?[]:null,disableClearable:w=!1,disableCloseOnSelect:x=!1,disabled:y=!1,disabledItemsFocusable:z=!1,disableListWrap:A=!1,disablePortal:B=!1,filterOptions:C,filterSelectedOptions:D=!1,forcePopupIcon:E="auto",freeSolo:G=!1,fullWidth:H=!1,getLimitTagsText:I=a=>`+${a}`,getOptionDisabled:J,getOptionKey:K,getOptionLabel:L,isOptionEqualToValue:M,groupBy:N,handleHomeEndKeys:O=!h.freeSolo,id:P,includeInputInList:Q=!1,inputValue:R,limitTags:S=-1,ListboxComponent:T,ListboxProps:U,loading:V=!1,loadingText:W="Loading…",multiple:Z=!1,noOptionsText:$="No options",onChange:_,onClose:aa,onHighlightChange:ab,onInputChange:ac,onOpen:ad,open:ae,openOnFocus:af=!1,openText:ag="Open",options:ah,PaperComponent:ak,PopperComponent:al,popupIcon:ao=e||(e=(0,f.jsx)(ay.A,{})),readOnly:ap=!1,renderGroup:aq,renderInput:ar,renderOption:as,renderTags:at,selectOnFocus:au=!h.freeSolo,size:av="medium",slots:aw={},slotProps:aA={},value:aN,...aO}=h,{getRootProps:aP,getInputProps:aQ,getInputLabelProps:aR,getPopupIndicatorProps:aS,getClearProps:aT,getTagProps:aU,getListboxProps:aV,getOptionProps:aW,value:aX,dirty:aY,expanded:aZ,id:a$,popupOpen:a_,focused:a0,focusedTag:a1,anchorEl:a2,setAnchorEl:a3,inputValue:a4,groupedOptions:a5}=ai({...h,componentName:"Autocomplete"}),a6=!w&&!y&&aY&&!ap,a7=(!G||!0===E)&&!1!==E,{onMouseDown:a8}=aQ(),{ref:a9,...ba}=aV(),bb=L||(a=>a.label??a),bc={...h,disablePortal:B,expanded:aZ,focused:a0,fullWidth:H,getOptionLabel:bb,hasClearIcon:a6,hasPopupIcon:a7,inputFocused:-1===a1,popupOpen:a_,size:av},bd=(a=>{let{classes:b,disablePortal:c,expanded:d,focused:e,fullWidth:f,hasClearIcon:g,hasPopupIcon:h,inputFocused:i,popupOpen:j,size:k}=a,l={root:["root",d&&"expanded",e&&"focused",f&&"fullWidth",g&&"hasClearIcon",h&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",i&&"inputFocused"],tag:["tag",`tagSize${(0,an.A)(k)}`],endAdornment:["endAdornment"],clearIndicator:["clearIndicator"],popupIndicator:["popupIndicator",j&&"popupIndicatorOpen"],popper:["popper",c&&"popperDisablePortal"],paper:["paper"],listbox:["listbox"],loading:["loading"],noOptions:["noOptions"],option:["option"],groupLabel:["groupLabel"],groupUl:["groupUl"]};return(0,Y.A)(l,az,b)})(bc),be={slots:{paper:ak,popper:al,...aw},slotProps:{chip:n,listbox:U,...u,...aA}},[bf,bg]=(0,aB.A)("listbox",{elementType:aK,externalForwardedProps:be,ownerState:bc,className:bd.listbox,additionalProps:ba,ref:a9}),[bh,bi]=(0,aB.A)("paper",{elementType:i.A,externalForwardedProps:be,ownerState:bc,className:bd.paper}),[bj,bk]=(0,aB.A)("popper",{elementType:aj.A,externalForwardedProps:be,ownerState:bc,className:bd.popper,additionalProps:{disablePortal:B,style:{width:a2?a2.clientWidth:null},role:"presentation",anchorEl:a2,open:a_}});if(Z&&aX.length>0){let a=a=>({className:bd.tag,disabled:y,...aU(a)});c=at?at(aX,a,bc):aX.map((b,c)=>{let{key:d,...e}=a({index:c});return(0,f.jsx)(F.A,{label:bb(b),size:av,...e,...be.slotProps.chip},d)})}if(S>-1&&Array.isArray(c)){let a=c.length-S;!a0&&a>0&&(c=c.splice(0,S)).push((0,f.jsx)("span",{className:bd.tag,children:I(a)},c.length))}let bl=aq||(a=>(0,f.jsxs)("li",{children:[(0,f.jsx)(aL,{className:bd.groupLabel,ownerState:bc,component:"div",children:a.group}),(0,f.jsx)(aM,{className:bd.groupUl,ownerState:bc,children:a.children})]},a.key)),bm=as||((a,b)=>{let{key:c,...d}=a;return(0,f.jsx)("li",{...d,children:bb(b)},c)}),bn=(a,b)=>{let c=aW({option:a,index:b});return bm({...c,className:bd.option},a,{selected:c["aria-selected"],index:b,inputValue:a4},bc)},bo=be.slotProps.clearIndicator,bp=be.slotProps.popupIndicator;return(0,f.jsxs)(g.Fragment,{children:[(0,f.jsx)(aC,{ref:b,className:(0,X.A)(bd.root,o),ownerState:bc,...aP(aO),children:ar({id:a$,disabled:y,fullWidth:!0,size:"small"===av?"small":void 0,InputLabelProps:aR(),InputProps:{ref:a3,className:bd.inputRoot,startAdornment:c,onMouseDown:a=>{a.target===a.currentTarget&&a8(a)},...(a6||a7)&&{endAdornment:(0,f.jsxs)(aD,{className:bd.endAdornment,ownerState:bc,children:[a6?(0,f.jsx)(aE,{...aT(),"aria-label":s,title:s,ownerState:bc,...bo,className:(0,X.A)(bd.clearIndicator,bo?.className),children:p}):null,a7?(0,f.jsx)(aF,{...aS(),disabled:y,"aria-label":a_?t:ag,title:a_?t:ag,ownerState:bc,...bp,className:(0,X.A)(bd.popupIndicator,bp?.className),children:ao}):null]})}},inputProps:{className:bd.input,disabled:y,readOnly:ap,...aQ()}})}),a2?(0,f.jsx)(aG,{as:bj,...bk,children:(0,f.jsxs)(aH,{as:bh,...bi,children:[V&&0===a5.length?(0,f.jsx)(aI,{className:bd.loading,ownerState:bc,children:W}):null,0!==a5.length||G||V?null:(0,f.jsx)(aJ,{className:bd.noOptions,ownerState:bc,role:"presentation",onMouseDown:a=>{a.preventDefault()},children:$}),a5.length>0?(0,f.jsx)(bf,{as:T,...bg,children:a5.map((a,b)=>N?bl({key:a.key,group:a.group,children:a.options.map((b,c)=>bn(b,a.index+c))}):bn(a,b))}):null]})}):null]})});var aO=c(93083),aP=c(85557),aQ=c(49938),aR=c(85838);let aS=[{id:"openai",label:"OpenAI",provider:"openai",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.openai.com/v1",showBaseUrl:!0},{id:"openrouter",label:"OpenRouter",provider:"openrouter",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://openrouter.ai/api/v1",showBaseUrl:!0},{id:"xai",label:"X.ai",provider:"xai",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.x.ai/v1",showBaseUrl:!0},{id:"ollama",label:"Ollama",provider:"ollama",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"http://localhost:11434/v1",showBaseUrl:!0},{id:"gemini-openai",label:"Gemini (OpenAI Format)",provider:"gemini",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://generativelanguage.googleapis.com/v1beta/openai/",showBaseUrl:!0},{id:"gemini-native",label:"Gemini (Native)",provider:"gemini",adapter:"gemini",sdkLabel:"GenAI SDK",baseUrl:"",showBaseUrl:!1,defaultModels:["gemini-2.5-pro","gemini-2.5-flash","gemini-2.5-flash-lite","gemini-2.0-flash"]},{id:"anthropic-openai",label:"Anthropic (OpenAI Format)",provider:"anthropic",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.anthropic.com/v1/",showBaseUrl:!0},{id:"anthropic-native",label:"Anthropic (Native)",provider:"anthropic",adapter:"anthropic",sdkLabel:"Anthropic SDK",baseUrl:"",showBaseUrl:!1,defaultModels:["claude-opus-4-8","claude-sonnet-4-6","claude-haiku-4-5-20251001","claude-fable-5"]},{id:"claude-subscription",label:"Claude Subscription",provider:"claude-subscription",adapter:"claude-cli",sdkLabel:"Claude CLI",baseUrl:"",showBaseUrl:!1,defaultModels:["opus","sonnet","haiku","fable"]}];var aT=c(92173);let aU=(0,E.h)("frontend/components/models/modal"),aV=({open:a,model:b,onSave:c,onClose:d})=>{let e=(0,h.useRouter)(),{globalEnvVars:i}=(0,aQ.rX)(),[l,o]=(0,g.useState)({}),[p,s]=(0,g.useState)({}),[t,v]=(0,g.useState)(null),[w,y]=(0,g.useState)(!1),[z,A]=(0,g.useState)(null),[B,C]=(0,g.useState)(!1),[E,F]=(0,g.useState)([]),[J,L]=(0,g.useState)(!1),M=(0,g.useRef)(null),N=(0,g.useRef)(null);(0,g.useEffect)(()=>{a&&F([])},[a]),(0,g.useEffect)(()=>{l.baseUrl&&(aU.debug("Base URL or API Key changed",{baseUrl:l.baseUrl}),F([]))},[l.baseUrl,l.ApiKey]),(0,g.useEffect)(()=>(N.current&&clearTimeout(N.current),l.baseUrl&&(N.current=setTimeout(()=>{aU.debug("Debounced fetchModels triggered",{name:l.name,baseUrl:l.baseUrl,searchTerm:l.name?`"${l.name}"`:"none"}),O(l.baseUrl,l.name)},100)),()=>{N.current&&clearTimeout(N.current)}),[l.name,l.baseUrl]),(0,g.useEffect)(()=>()=>{N.current&&clearTimeout(N.current)},[]);let O=async(a,c)=>{aU.debug("fetchModels called",{baseUrl:a,searchTerm:c?`"${c}"`:"none",apiKey:l.ApiKey?"present":"not present",isApiKeyBound:w}),L(!0),s({});try{let d=w&&z?`\${global:${z}}`:l.ApiKey&&l.ApiKey!==aT.RJ?l.ApiKey:void 0,e=await D.N.fetchProviderModels(a,b.id,c,d);aU.debug("Models fetched successfully",{count:e?.length,searchTerm:c?`"${c}"`:"none"}),Array.isArray(e)?(F(e),aU.info("Models set in state",{count:e.length,searchTerm:c?`"${c}"`:"none"})):(aU.warn("Unexpected API response format",{models:e}),F([]))}catch(b){aU.warn("Error fetching models",{baseUrl:a,searchTerm:c,error:b}),F([])}finally{L(!1)}};(0,g.useEffect)(()=>{if(a){o({...b,displayName:b.displayName||b.name});let a=(b.ApiKey||"").match(/\$\{global:([^}]+)\}/);a?(y(!0),A(a[1])):(y(!1),A(null),o(a=>({...a,ApiKey:b.name?aT.RJ:""})))}else o({name:"",displayName:"",description:"",ApiKey:"",baseUrl:"https://api.openai.com/v1",provider:"openai",adapter:"openai",promptTemplate:"",temperature:"0.0"}),y(!1),A(null);s({}),v(null)},[a,b]);let P=function(a,b){let c=a||"openai",d=b||"openai";return aS.find(a=>a.provider===c&&a.adapter===d)||aS.find(a=>a.provider===c)||aS[0]}(l.provider,l.adapter),Q=(a,b)=>{o(c=>({...c,[a]:b})),s(b=>({...b,[a]:""}))},R=async a=>{a.preventDefault();let d={};if(l.name?.trim()||(d.name="Name is required"),l.displayName?.trim()||(d.displayName="Display Name is required"),w||l.ApiKey?.trim()||(d.ApiKey="API key is required"),Object.keys(d).length>0)return void s(d);try{let a=await c({id:b.id,name:l.name,displayName:l.displayName,description:l.description,ApiKey:l.ApiKey,baseUrl:l.baseUrl,provider:l.provider,adapter:l.adapter||"openai",promptTemplate:l.promptTemplate,temperature:l.temperature,contextWindow:l.contextWindow,maxTurns:l.maxTurns});a.success?e.refresh():s({submit:a.error||"Failed to save model"})}catch(a){aU.error("Failed to save model",{error:a}),s({submit:a?.message||"Failed to save model"})}};return(0,f.jsx)(G.A,{open:a,onClose:d,maxWidth:"xl",fullWidth:!0,PaperProps:{sx:{width:"95vw",height:"90vh",maxWidth:"95vw",maxHeight:"90vh"}},children:(0,f.jsxs)("form",{onSubmit:R,children:[(0,f.jsx)(H.A,{children:b?"Edit Model":"Add Model"}),(0,f.jsxs)(I.A,{sx:{display:"flex",flexDirection:"column",height:"calc(90vh - 130px)"},children:[p.submit&&(0,f.jsx)(n.A,{severity:"error",sx:{mb:2},children:p.submit}),t&&(0,f.jsx)(n.A,{severity:"info",sx:{mb:2},children:t}),(0,f.jsxs)(r.Ay,{container:!0,spacing:2,sx:{flexGrow:1},children:[(0,f.jsx)(r.Ay,{item:!0,xs:6,sx:{height:"100%"},children:(0,f.jsxs)(j.default,{sx:{display:"flex",flexDirection:"column",height:"100%",pr:2},children:[(0,f.jsx)(u.default,{variant:"h6",gutterBottom:!0,children:"Model Configuration"}),(0,f.jsx)(k.A,{autoFocus:!0,margin:"dense",label:"Display Name",fullWidth:!0,required:!0,value:l.displayName||"",onChange:a=>Q("displayName",a.target.value),error:!!p.displayName,helperText:p.displayName||"The name shown in the UI"}),(0,f.jsxs)(T.A,{fullWidth:!0,margin:"dense",children:[(0,f.jsx)(U.A,{id:"provider-profile-label",children:"Provider"}),(0,f.jsx)(V.A,{labelId:"provider-profile-label",label:"Provider",value:P.id,onChange:a=>(a=>{let b=aS.find(b=>b.id===a);b&&(o(a=>({...a,provider:b.provider,adapter:b.adapter,baseUrl:b.baseUrl})),s(a=>({...a,baseUrl:""})))})(a.target.value),children:aS.map(a=>(0,f.jsx)(W.A,{value:a.id,children:a.label},a.id))})]}),(0,f.jsxs)(u.default,{variant:"caption",color:"text.secondary",sx:{mt:.5,mb:1,display:"block"},children:["Uses the ",(0,f.jsx)("strong",{children:P.sdkLabel}),"claude-cli"===P.adapter?". Paste an OAuth token from `claude setup-token` into the API Key field.":""]}),P.showBaseUrl&&(0,f.jsx)(k.A,{margin:"dense",label:"Base URL",fullWidth:!0,value:l.baseUrl||"",onChange:a=>Q("baseUrl",a.target.value),helperText:"Endpoint for the OpenAI-compatible API."}),(0,f.jsx)(j.default,{sx:{position:"relative",mt:1,mb:1},children:(0,f.jsx)(k.A,{margin:"dense",label:"API Key",fullWidth:!0,required:!w,type:w?"text":"password",value:l.ApiKey||"",onChange:a=>Q("ApiKey",a.target.value),error:!!p.ApiKey,helperText:p.ApiKey||"API key is required for this provider",InputProps:{readOnly:w,endAdornment:(0,f.jsx)(j.default,{sx:{display:"flex",alignItems:"center"},children:w?(0,f.jsx)(x.A,{onClick:()=>{y(!1),A(null),o(a=>({...a,ApiKey:""}))},size:"small",title:"Unbind from global variable",children:(0,f.jsx)(aO.A,{})}):(0,f.jsx)(x.A,{onClick:()=>{C(!0)},size:"small",title:"Bind to global variable",children:(0,f.jsx)(aP.A,{})})})}})}),(0,f.jsx)(aN,{freeSolo:!0,loading:J,options:P.showBaseUrl?E.map(a=>a.id):P.defaultModels??[],value:l.name||"",onChange:(a,b)=>{Q("name",b||"")},onInputChange:(a,b)=>{Q("name",b)},filterOptions:(a,b)=>{let c=b.inputValue.toLowerCase();return c?a.filter(a=>{let b=a.toLowerCase();if(b.includes(c))return!0;let d=0,e=0;for(;d<b.length&&e<c.length;)b[d]===c[e]&&e++,d++;return e===c.length}):a},ListboxProps:{style:{maxHeight:"300px",overflow:"auto"}},renderInput:a=>(0,f.jsx)(k.A,{...a,margin:"dense",label:"Technical Name",required:!0,error:!!p.name,helperText:p.name||"Used for API calls to the LLM. Type to search available models.",InputProps:{...a.InputProps,endAdornment:(0,f.jsxs)(f.Fragment,{children:[J?(0,f.jsx)(q.default,{color:"inherit",size:20}):null,a.InputProps.endAdornment]})}}),renderOption:(a,b)=>{let c=E.find(a=>a.id===b),{key:d,...e}=a;return(0,f.jsx)("li",{...e,style:{borderBottom:"1px solid rgba(0,0,0,0.1)",padding:"8px 16px"},children:(0,f.jsxs)(j.default,{children:[(0,f.jsx)(u.default,{variant:"body1",fontWeight:"bold",children:b}),c?.description&&(0,f.jsx)(u.default,{variant:"body2",color:"text.secondary",sx:{fontSize:"0.75rem"},children:c.description})]})},d)},noOptionsText:"No matching models found",loadingText:"Loading models..."}),(0,f.jsx)(k.A,{margin:"dense",label:"Description",fullWidth:!0,multiline:!0,rows:3,value:l.description||"",onChange:a=>Q("description",a.target.value)}),(0,f.jsx)(k.A,{margin:"dense",label:"Context Window (tokens)",fullWidth:!0,type:"number",value:l.contextWindow??"",onChange:a=>{let b=a.target.value,c=""===b?void 0:Number(b);o(a=>({...a,contextWindow:void 0!==c&&Number.isFinite(c)&&c>0?Math.floor(c):void 0}))},helperText:"Optional. Enables the context-usage meter in chat (e.g. 200000 for Claude, 128000 for GPT-4o)."}),(0,f.jsx)(k.A,{margin:"dense",label:"Max Turns",fullWidth:!0,type:"number",value:l.maxTurns??"",onChange:a=>{let b=a.target.value,c=""===b?void 0:Number(b);o(a=>({...a,maxTurns:void 0!==c&&Number.isFinite(c)&&c>0?Math.floor(c):void 0}))},inputProps:{min:1},helperText:"Max agentic turns before a run stops (default 50). Process nodes can override this per-node."})]})}),(0,f.jsx)(r.Ay,{item:!0,xs:6,sx:{height:"100%"},children:(0,f.jsxs)(j.default,{sx:{display:"flex",flexDirection:"column",height:"100%",pl:2},children:[(0,f.jsx)(u.default,{variant:"h6",gutterBottom:!0,children:"Prompt Template"}),(0,f.jsx)(j.default,{sx:{flexGrow:1,display:"flex",flexDirection:"column",height:"calc(100% - 32px)"},children:(0,f.jsx)(aR.A,{ref:M,value:l.promptTemplate||"",onChange:a=>Q("promptTemplate",a),label:"",height:"100%"})})]})})]}),B&&(0,f.jsxs)(j.default,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:400,bgcolor:"background.paper",boxShadow:24,p:4,borderRadius:1,zIndex:9999},children:[(0,f.jsx)(u.default,{variant:"h6",component:"h2",sx:{mb:2},children:"Bind to Global Variable"}),0===Object.keys(i).length?(0,f.jsx)(u.default,{sx:{mb:2},children:"No global variables available. Add some in Settings first."}):(0,f.jsx)(j.default,{sx:{maxHeight:300,overflow:"auto",mb:2},children:Object.entries(i).map(([a,b])=>(0,f.jsx)(m.A,{onClick:()=>(a=>{y(!0),A(a),o(b=>({...b,ApiKey:`\${global:${a}}`})),C(!1)})(a),fullWidth:!0,sx:{justifyContent:"flex-start",textAlign:"left",mb:1,p:1,"&:hover":{bgcolor:"action.hover"}},children:(0,f.jsxs)(j.default,{sx:{display:"flex",justifyContent:"space-between",width:"100%"},children:[(0,f.jsx)(u.default,{children:a}),(0,f.jsx)(u.default,{variant:"body2",color:"text.secondary",children:a.toLowerCase().includes("key")||a.toLowerCase().includes("secret")||a.toLowerCase().includes("token")||a.toLowerCase().includes("password")?"********":"object"==typeof b&&null!==b&&"value"in b?b.value:b})]})},a))}),(0,f.jsx)(j.default,{sx:{display:"flex",justifyContent:"flex-end"},children:(0,f.jsx)(m.A,{onClick:()=>C(!1),children:"Cancel"})})]})]}),(0,f.jsxs)(K.A,{children:[(0,f.jsx)(m.A,{onClick:d,children:"Cancel"}),(0,f.jsx)(m.A,{type:"submit",variant:"contained",color:"primary",children:"Save"})]})]})})};var aW=c(61615);let aX=(0,E.h)("app/models/ModelClient");function aY({initialModels:a}){let b=(0,h.useRouter)(),c=(0,h.useSearchParams)(),[d,e]=(0,g.useState)(a),[q,r]=(0,g.useState)(""),[s,t]=(0,g.useState)(null),[u,v]=(0,g.useState)(!1),[w,x]=(0,g.useState)(!1),[y,z]=(0,g.useState)(null),A="1"===c.get("add");if(!w)return aX.debug("Waiting for model service to be ready..."),(0,f.jsx)(aW.default,{});let B=c.get("edit"),C=A?y:B?d.find(a=>a.id===B)??null:null,E=A?!!y:!!B,F=async a=>{aX.info("Saving model",{modelId:a.id,modelName:a.name,mode:A?"add":"update"}),v(!0);try{let c=(0,D.X)(),d=A?await c.addModel(a):await c.updateModel(a);if(!d.success)return t(d.error||"Failed to save model."),{success:!1,error:d.error};{let a=await c.loadModels();return e(a),z(null),b.push("/models"),{success:!0,model:d.model}}}catch(a){return aX.error("Failed to save model",a),t(a?.message||"Failed to save model. Please try again."),{success:!1,error:a?.message||"Failed to save model"}}finally{v(!1)}},G=async a=>(aX.info("Editing model",{modelId:a.id,modelName:a.name}),b.push(`/models?edit=${a.id}`),{success:!0}),H=async()=>{aX.info("Opening add-model modal"),b.push("/models?add=1")},I=async a=>{aX.info("Deleting model",{modelId:a}),v(!0);try{let b=(0,D.X)();await b.deleteModel(a);let c=await b.loadModels();e(c)}catch(a){aX.error("Failed to delete model",a),t("Failed to delete model. Please try again.")}finally{v(!1)}},J=async()=>{z(null),b.push("/models")},K=q.trim()?d.filter(a=>{let b=q.toLowerCase();return(a.displayName||"").toLowerCase().includes(b)||(a.name||"").toLowerCase().includes(b)}):d;return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(i.A,{elevation:1,sx:{mb:2,p:1},children:(0,f.jsxs)(j.default,{sx:{display:"flex",flexDirection:{xs:"column",sm:"row"},gap:1,alignItems:{xs:"stretch",sm:"center"},justifyContent:"space-between"},children:[(0,f.jsx)(k.A,{placeholder:"Search models...",variant:"outlined",size:"small",value:q,onChange:a=>r(a.target.value),InputProps:{startAdornment:(0,f.jsx)(l.A,{position:"start",children:(0,f.jsx)(p.A,{fontSize:"small"})})},sx:{maxWidth:{sm:300},width:"100%"}}),(0,f.jsx)(m.A,{variant:"contained",color:"primary",startIcon:(0,f.jsx)(o.A,{}),onClick:H,"data-tour":"add-model",children:"Add Model"})]})}),s&&(0,f.jsx)(j.default,{sx:{mb:2},children:(0,f.jsx)(n.A,{severity:"error",onClose:()=>t(null),children:s})}),(0,f.jsx)(S,{models:K,isLoading:u,onAdd:H,onUpdate:G,onDelete:I}),E&&C?(0,f.jsx)(aV,{open:E,model:C,onSave:F,onClose:J}):null]})}},79428:a=>{"use strict";a.exports=require("buffer")},79551:a=>{"use strict";a.exports=require("url")},79646:a=>{"use strict";a.exports=require("child_process")},79748:a=>{"use strict";a.exports=require("fs/promises")},80481:a=>{"use strict";a.exports=require("node:readline")},81630:a=>{"use strict";a.exports=require("http")},83997:a=>{"use strict";a.exports=require("tty")},84297:a=>{"use strict";a.exports=require("async_hooks")},85557:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});var d=c(27080),e=c(21124);let f=(0,d.A)((0,e.jsx)("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1M8 13h8v-2H8zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5"}),"Link")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91645:a=>{"use strict";a.exports=require("net")},92093:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h});var d=c(21124),e=c(81637),f=c(79515),g=c(20830);function h({error:a,reset:b}){return(0,d.jsxs)(e.default,{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",p:4,children:[(0,d.jsx)(f.default,{variant:"h6",color:"error",gutterBottom:!0,children:"Error loading models"}),(0,d.jsx)(f.default,{color:"text.secondary",sx:{mb:2},children:a.message||"Something went wrong while loading the models."}),(0,d.jsx)(e.default,{sx:{display:"flex",gap:2},children:(0,d.jsx)(g.A,{variant:"contained",onClick:b,children:"Try again"})})]})}c(38301),(0,c(19815).h)("app/models/error")},92173:(a,b,c)=>{"use strict";c.d(b,{RJ:()=>e,gF:()=>d});let d="masked:********",e="********"},94735:a=>{"use strict";a.exports=require("events")},98995:a=>{"use strict";a.exports=require("node:module")}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,8298,4239,6996,1223,5734,3984,8445,6760,6390,1381,598,2666,1555,8739,2181,9938,8460,805,5838],()=>b(b.s=43108));module.exports=c})();
3
+ see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:w.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},n=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===L.isDev,l=c||b.writableEnded;if(ai&&ac&&!f&&!O)return(null==ad?void 0:ad.render404)?await ad.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(aj&&(j=(0,x.parseFallbackField)(aj.fallback)),j===x.FallbackMode.PRERENDER&&(0,v.isBot)(am)&&(!as||ao)&&(j=x.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ai=!0),ai&&(j!==x.FallbackMode.NOT_FOUND||f)&&(j=x.FallbackMode.BLOCKING_STATIC_RENDER),!O&&j!==x.FallbackMode.BLOCKING_STATIC_RENDER&&aC&&!l&&!aa&&U&&(k||!ak)){let b;if((k||aj)&&j===x.FallbackMode.NOT_FOUND)throw new C.NoFallbackError;if(as&&!aq){let c="string"==typeof(null==aj?void 0:aj.fallback)?aj.fallback:k?ah:null;if(b=await L.handleResponse({cacheKey:c,req:a,nextConfig:ae,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:_,isRoutePPREnabled:as,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||au?(0,o.u)(ah):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let n=ai||g||!av?void 0:av;if(at&&void 0!==n)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:w.CachedRouteKind.PAGES,html:y.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=U&&as&&((0,h.getRequestMeta)(a,"renderFallbackShell")||au)?(0,o.u)(ag):null;return m({span:i,postponed:n,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,o=await L.handleResponse({cacheKey:aB,responseGenerator:a=>n({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ai,isRoutePPREnabled:as,req:a,nextConfig:ae,prerenderManifest:_,waitUntil:d.waitUntil});if(aa&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),L.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!o){if(aB)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=o.value)?void 0:f.kind)!==w.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=o.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof o.value.postponed;al&&!aw&&(!p||ap)&&(O||b.setHeader("x-nextjs-cache",ai?"REVALIDATED":o.isMiss?"MISS":o.isStale?"STALE":"HIT"),b.setHeader(u.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=o;if(av)l={revalidate:0,expire:void 0};else if(O&&aq&&!ap&&as)l={revalidate:0,expire:void 0};else if(!L.isDev)if(aa)l={revalidate:0,expire:void 0};else if(al){if(o.cacheControl)if("number"==typeof o.cacheControl.revalidate){if(o.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${o.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:o.cacheControl.revalidate,expire:(null==(j=o.cacheControl)?void 0:j.expire)??ae.expireTime}}else l={revalidate:z.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(o.cacheControl=l,"string"==typeof ax&&(null==q?void 0:q.kind)===w.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(u.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[z.NEXT_CACHE_TAGS_HEADER];O&&al&&c&&"string"==typeof c&&b.setHeader(z.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(ax);return void 0!==d?(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.fromStatic(d,u.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl}):(b.statusCode=204,(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.EMPTY,cacheControl:o.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...o,value:{...o.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&av)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(O&&al||delete a[z.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[z.NEXT_CACHE_TAGS_HEADER];if(O&&al&&s&&"string"==typeof s&&b.setHeader(z.NEXT_CACHE_TAGS_HEADER,s),!q.status||aq&&as||(b.statusCode=q.status),!O&&q.status&&G.RedirectStatusCode[q.status]&&aq&&(b.statusCode=200),p&&b.setHeader(u.NEXT_DID_POSTPONE_HEADER,"1"),aq&&!aa){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:q.html,cacheControl:aw?{revalidate:0,expire:void 0}:o.cacheControl})}return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:y.default.fromStatic(q.rscData,u.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl})}let t=q.html;if(!p||O||aq)return(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:o.cacheControl});if(at)return t.push(new ReadableStream({start(a){a.enqueue(A.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}});let v=new TransformStream;return t.push(v.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==w.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(v.writable)}).catch(a=>{v.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,B.sendRenderResult)({req:a,res:b,generateEtags:ae.generateEtags,poweredByHeader:ae.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}})};if(!aG)return await aF.withPropagatedContext(a.headers,()=>aF.trace(i.BaseServerSpan.handleRequest,{spanName:`${aE} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aE,"http.target":a.url}},p));await p(aG)}catch(b){throw b instanceof C.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:al,isOnDemandRevalidate:ai})},ad),b}}},44618:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return e}});let d=c(18830)._(c(11962));function e(a,b){var c;let e={};"function"==typeof a&&(e.loader=a);let f={...e,...b};return(0,d.default)({...f,modules:null==(c=f.loadableGenerated)?void 0:c.modules})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},44708:a=>{"use strict";a.exports=require("node:https")},46466:a=>{"use strict";a.exports=require("node:stream/promises")},48161:a=>{"use strict";a.exports=require("node:os")},49428:(a,b,c)=>{"use strict";c.d(b,{default:()=>p});var d=c(21124),e=c(38301),f=c.n(e),g=c(13973);let h=(0,c(19815).h)("frontend/components/AppWrapper"),i=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ../contexts/ThemeContext"]},ssr:!1,loading:()=>(0,d.jsx)("div",{children:"Loading theme..."})}),j=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ../contexts/StorageContext"]},ssr:!1,loading:()=>(0,d.jsx)("div",{children:"Loading storage..."})}),k=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ./Navigation"]},ssr:!1,loading:()=>(0,d.jsx)("div",{children:"Loading navigation..."})}),l=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ./EncryptionAuthDialog"]},ssr:!1,loading:()=>null}),m=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ../contexts/TourContext"]},ssr:!1,loading:()=>null}),n=(0,g.default)(async()=>{},{loadableGenerated:{modules:["frontend\\components\\AppWrapper.tsx -> ./Tour/TourOverlay"]},ssr:!1,loading:()=>null});class o extends f().Component{constructor(a){super(a),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(a){h.error("AppWrapper error boundary caught an error:",a)}render(){return this.state.hasError?(0,d.jsxs)("div",{style:{padding:"20px",textAlign:"center"},children:[(0,d.jsx)("h2",{children:"Something went wrong loading the application."}),(0,d.jsx)("p",{children:"Please try refreshing the page."}),(0,d.jsx)("button",{onClick:()=>window.location.reload(),style:{padding:"8px 16px",background:"#3498DB",color:"white",border:"none",borderRadius:"4px",cursor:"pointer",marginTop:"10px"},children:"Refresh"})]}):this.props.children}}function p({children:a}){return h.debug("Rendering AppWrapper"),(0,d.jsx)(o,{children:(0,d.jsx)(e.Suspense,{fallback:(0,d.jsx)("div",{children:"Loading application..."}),children:(0,d.jsx)(i,{children:(0,d.jsx)(j,{children:(0,d.jsxs)(m,{children:[(0,d.jsxs)(e.Suspense,{fallback:(0,d.jsx)("div",{children:"Loading navigation..."}),children:[(0,d.jsx)(k,{}),(0,d.jsx)(l,{})]}),(0,d.jsx)("main",{children:a}),(0,d.jsx)(n,{})]})})})})})}},50573:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g});var d=c(75338),e=c(73737),f=c(65251);function g(){return(0,d.jsx)(e.default,{display:"flex",justifyContent:"center",alignItems:"center",height:"100%",p:4,children:(0,d.jsx)(f.default,{size:40})})}},51455:a=>{"use strict";a.exports=require("node:fs/promises")},51472:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>m,metadata:()=>l});var d=c(75338),e=c(94294),f=c.n(e),g=c(81464),h=c.n(g);c(61135);var i=c(50846),j=c(41306);let k=(0,i.h)("app/layout"),l={title:"FLUJO",description:"A browser-based application for managing models, MCP servers, flows and chat interactions"};function m({children:a}){return k.debug("Rendering RootLayout"),(0,d.jsx)("html",{lang:"en",children:(0,d.jsx)("body",{className:`${f().variable} ${h().variable} antialiased`,children:(0,d.jsx)(j.default,{children:a})})})}},55511:a=>{"use strict";a.exports=require("crypto")},55591:a=>{"use strict";a.exports=require("https")},57075:a=>{"use strict";a.exports=require("node:stream")},57975:a=>{"use strict";a.exports=require("node:util")},61135:()=>{},61615:(a,b,c)=>{"use strict";c.d(b,{default:()=>g});var d=c(21124);c(38301);var e=c(81637),f=c(8521);let g=({size:a="medium",color:b="primary",className:c="",sx:g={}})=>{let h="white"===b?{color:"#fff",...g}:g;return(0,d.jsxs)(e.default,{component:"span",sx:{display:"inline-block",lineHeight:0,...h},className:c,role:"status",children:[(0,d.jsx)(f.default,{size:{small:16,medium:24,large:36}[a],color:"white"===b?"inherit":b,"aria-hidden":"true"}),(0,d.jsx)(e.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..."})]})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},63112:(a,b,c)=>{let{createProxy:d}=c(39893);a.exports=d("C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\shared\\lib\\lazy-dynamic\\preload-chunks.js")},64317:(a,b,c)=>{Promise.resolve().then(c.bind(c,81637)),Promise.resolve().then(c.bind(c,8521))},65251:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\node_modules\\\\@mui\\\\material\\\\CircularProgress\\\\CircularProgress.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\CircularProgress\\CircularProgress.js","default")},65343:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});var d=c(27080),e=c(21124);let f=(0,d.A)((0,e.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")},69389:(a,b,c)=>{let{createProxy:d}=c(39893);a.exports=d("C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\shared\\lib\\lazy-dynamic\\dynamic-bailout-to-csr.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73496:a=>{"use strict";a.exports=require("http2")},73566:a=>{"use strict";a.exports=require("worker_threads")},73737:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call the default export of \"C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\node_modules\\\\@mui\\\\material\\\\Box\\\\Box.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Box\\Box.js","default")},74075:a=>{"use strict";a.exports=require("zlib")},76760:a=>{"use strict";a.exports=require("node:path")},77030:a=>{"use strict";a.exports=require("node:net")},77598:a=>{"use strict";a.exports=require("node:crypto")},79428:a=>{"use strict";a.exports=require("buffer")},79551:a=>{"use strict";a.exports=require("url")},79646:a=>{"use strict";a.exports=require("child_process")},79748:a=>{"use strict";a.exports=require("fs/promises")},80481:a=>{"use strict";a.exports=require("node:readline")},81630:a=>{"use strict";a.exports=require("http")},83997:a=>{"use strict";a.exports=require("tty")},84297:a=>{"use strict";a.exports=require("async_hooks")},85557:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});var d=c(27080),e=c(21124);let f=(0,d.A)((0,e.jsx)("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1M8 13h8v-2H8zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5"}),"Link")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91645:a=>{"use strict";a.exports=require("net")},92093:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h});var d=c(21124),e=c(81637),f=c(79515),g=c(20830);function h({error:a,reset:b}){return(0,d.jsxs)(e.default,{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",p:4,children:[(0,d.jsx)(f.default,{variant:"h6",color:"error",gutterBottom:!0,children:"Error loading models"}),(0,d.jsx)(f.default,{color:"text.secondary",sx:{mb:2},children:a.message||"Something went wrong while loading the models."}),(0,d.jsx)(e.default,{sx:{display:"flex",gap:2},children:(0,d.jsx)(g.A,{variant:"contained",onClick:b,children:"Try again"})})]})}c(38301),(0,c(19815).h)("app/models/error")},92173:(a,b,c)=>{"use strict";c.d(b,{RJ:()=>e,gF:()=>d});let d="masked:********",e="********"},94735:a=>{"use strict";a.exports=require("events")},98995:a=>{"use strict";a.exports=require("node:module")}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,8298,4239,6996,1223,5734,3984,8445,6760,6390,1381,598,2666,1555,2372,8739,2181,9938,8460,805,5838],()=>b(b.s=43108));module.exports=c})();
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../node_modules/next/dist/shared/lib/segment.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../../../package.json","../../../../src/app/models/ModelClient.tsx","../../../package.json","../../chunks/1223.js","../../chunks/1381.js","../../chunks/1555.js","../../chunks/2181.js","../../chunks/22.js","../../chunks/2471.js","../../chunks/2666.js","../../chunks/2695.js","../../chunks/3984.js","../../chunks/4239.js","../../chunks/4753.js","../../chunks/5734.js","../../chunks/5838.js","../../chunks/5873.js","../../chunks/598.js","../../chunks/6390.js","../../chunks/6760.js","../../chunks/6996.js","../../chunks/805.js","../../chunks/8298.js","../../chunks/8445.js","../../chunks/8460.js","../../chunks/8693.js","../../chunks/8739.js","../../chunks/9343.js","../../chunks/9938.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../node_modules/next/dist/shared/lib/segment.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../../../package.json","../../../../src/app/models/ModelClient.tsx","../../../package.json","../../chunks/1223.js","../../chunks/1381.js","../../chunks/1555.js","../../chunks/2181.js","../../chunks/22.js","../../chunks/2372.js","../../chunks/2471.js","../../chunks/2666.js","../../chunks/2695.js","../../chunks/3984.js","../../chunks/4239.js","../../chunks/4753.js","../../chunks/5734.js","../../chunks/5838.js","../../chunks/5873.js","../../chunks/598.js","../../chunks/6390.js","../../chunks/6760.js","../../chunks/6996.js","../../chunks/805.js","../../chunks/8298.js","../../chunks/8445.js","../../chunks/8460.js","../../chunks/8693.js","../../chunks/8739.js","../../chunks/9343.js","../../chunks/9938.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}