flujo-ai 3.24.0 → 3.26.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.
- package/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +233 -217
- package/.next/app-path-routes-manifest.json +8 -8
- package/.next/build-manifest.json +5 -5
- package/.next/react-loadable-manifest.json +25 -20
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +3 -3
- package/.next/server/app/api/approvals/[id]/route.js +1 -1
- package/.next/server/app/api/approvals/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/approvals/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/approvals/route.js.nft.json +1 -1
- package/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/backup/route.js +1 -1
- package/.next/server/app/api/backup/route.js.nft.json +1 -1
- package/.next/server/app/api/backup/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/browse/route.js +1 -1
- package/.next/server/app/api/browse/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/bugs/enhance/route.js +1 -1
- package/.next/server/app/api/bugs/enhance/route.js.nft.json +1 -1
- package/.next/server/app/api/bugs/enhance/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/cwd/route.js +1 -1
- package/.next/server/app/api/cwd/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/encryption/secure/route.js +1 -1
- package/.next/server/app/api/encryption/secure/route.js.nft.json +1 -1
- package/.next/server/app/api/encryption/secure/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/env/route.js +1 -1
- package/.next/server/app/api/env/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/flow/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/compile/route.js.nft.json +1 -1
- package/.next/server/app/api/flow/compile/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/generate/route.js.nft.json +1 -1
- package/.next/server/app/api/flow/generate/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/improve/route.js.nft.json +1 -1
- package/.next/server/app/api/flow/improve/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/prompt-renderer/route.js.nft.json +1 -1
- package/.next/server/app/api/flow/prompt-renderer/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/quick-chat/route.js.nft.json +1 -1
- package/.next/server/app/api/flow/quick-chat/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/repair/route.js.nft.json +1 -1
- package/.next/server/app/api/flow/repair/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/route.js.nft.json +1 -1
- package/.next/server/app/api/flow/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/git/route.js +1 -1
- package/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/init/route.js.nft.json +1 -1
- package/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/local-models/capability/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/local-models/pull/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/local-models/suggest/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/cancel/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/[name]/prompts/get/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/prompts/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/[name]/prompts/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/[name]/resources/read/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/resources/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/[name]/resources/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/route.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/[name]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/status/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/[name]/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/[name]/tools/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/[name]/tools/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/servers/route.js +1 -1
- package/.next/server/app/api/mcp/servers/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/servers/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/test-connection/route.js +1 -1
- package/.next/server/app/api/mcp/test-connection/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/test-connection/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/test-connection/stream/route.js +1 -1
- package/.next/server/app/api/mcp/test-connection/stream/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/test-connection/stream/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp-registry/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp-registry/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp-registry/spotlight/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/model/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/model/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/model/provider/route.js.nft.json +1 -1
- package/.next/server/app/api/model/provider/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/model/route.js.nft.json +1 -1
- package/.next/server/app/api/model/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/model/test/route.js.nft.json +1 -1
- package/.next/server/app/api/model/test/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/initiate/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/reset/route.js.nft.json +1 -1
- package/.next/server/app/api/oauth/reset/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/planned-executions/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/[id]/run/route.js.nft.json +1 -1
- package/.next/server/app/api/planned-executions/[id]/run/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/[id]/runs/route.js.nft.json +1 -1
- package/.next/server/app/api/planned-executions/[id]/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/preview-schedule/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/reconcile/route.js.nft.json +1 -1
- package/.next/server/app/api/planned-executions/reconcile/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/route.js.nft.json +1 -1
- package/.next/server/app/api/planned-executions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/restore/route.js +1 -1
- package/.next/server/app/api/restore/route.js.nft.json +1 -1
- package/.next/server/app/api/restore/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/runs/active/route.js.nft.json +1 -1
- package/.next/server/app/api/runs/active/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/storage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/update/route.js +1 -1
- package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/waves/route.js +1 -1
- package/.next/server/app/api/waves/route.js.nft.json +1 -1
- package/.next/server/app/api/waves/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/webhooks/[id]/route.js +1 -1
- package/.next/server/app/api/webhooks/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/webhooks/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/chat/page.js +9 -9
- package/.next/server/app/chat/page.js.nft.json +1 -1
- package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
- package/.next/server/app/chat.html +1 -1
- package/.next/server/app/chat.rsc +4 -4
- package/.next/server/app/docs/page.js +11 -8
- package/.next/server/app/docs/page.js.nft.json +1 -1
- package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/docs.html +1 -1
- package/.next/server/app/docs.rsc +4 -4
- package/.next/server/app/executions/page.js +3 -3
- package/.next/server/app/executions/page.js.nft.json +1 -1
- package/.next/server/app/executions/page_client-reference-manifest.js +1 -1
- package/.next/server/app/executions.html +1 -1
- package/.next/server/app/executions.rsc +4 -4
- package/.next/server/app/flows/page.js +3 -3
- package/.next/server/app/flows/page.js.nft.json +1 -1
- package/.next/server/app/flows/page_client-reference-manifest.js +1 -1
- package/.next/server/app/flows.html +1 -1
- package/.next/server/app/flows.rsc +4 -4
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +4 -4
- package/.next/server/app/mcp/page.js +5 -5
- package/.next/server/app/mcp/page.js.nft.json +1 -1
- package/.next/server/app/mcp/page_client-reference-manifest.js +1 -1
- package/.next/server/app/mcp-flows/route.js +1 -1
- package/.next/server/app/mcp-flows/route.js.nft.json +1 -1
- package/.next/server/app/mcp-flows/route_client-reference-manifest.js +1 -1
- package/.next/server/app/mcp-proxy/[server]/route.js +1 -1
- package/.next/server/app/mcp-proxy/[server]/route.js.nft.json +1 -1
- package/.next/server/app/mcp-proxy/[server]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/mcp.html +1 -1
- package/.next/server/app/mcp.rsc +4 -4
- package/.next/server/app/models/page.js +2 -2
- package/.next/server/app/models/page.js.nft.json +1 -1
- package/.next/server/app/models/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +2 -2
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page.js +2 -57
- package/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +4 -4
- package/.next/server/app/v1/chat/completions/route.js +1 -1
- package/.next/server/app/v1/chat/completions/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/completions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/events/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/resources/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/route.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/route.js +1 -1
- package/.next/server/app/v1/chat/conversations/route.js.nft.json +1 -1
- package/.next/server/app/v1/chat/conversations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/models/route.js.nft.json +1 -1
- package/.next/server/app/v1/models/route_client-reference-manifest.js +1 -1
- package/.next/server/app/waves/page.js +3 -3
- package/.next/server/app/waves/page.js.nft.json +1 -1
- package/.next/server/app/waves/page_client-reference-manifest.js +1 -1
- package/.next/server/app/waves.html +1 -1
- package/.next/server/app/waves.rsc +4 -4
- package/.next/server/app-paths-manifest.json +8 -8
- package/.next/server/chunks/1083.js +1 -1
- package/.next/server/chunks/1114.js +1 -0
- package/.next/server/chunks/1197.js +2 -2
- package/.next/server/chunks/1226.js +1 -1
- package/.next/server/chunks/166.js +5 -0
- package/.next/server/chunks/2373.js +1 -0
- package/.next/server/chunks/2859.js +1 -3
- package/.next/server/chunks/289.js +1 -1
- package/.next/server/chunks/3030.js +1 -1
- package/.next/server/chunks/3298.js +2 -0
- package/.next/server/chunks/3312.js +1 -0
- package/.next/server/chunks/3774.js +1 -1
- package/.next/server/chunks/3823.js +7 -7
- package/.next/server/chunks/3855.js +1 -0
- package/.next/server/chunks/3924.js +52 -0
- package/.next/server/chunks/4545.js +6 -2
- package/.next/server/chunks/4561.js +7 -7
- package/.next/server/chunks/4578.js +1 -0
- package/.next/server/chunks/4671.js +1 -1
- package/.next/server/chunks/4677.js +37 -0
- package/.next/server/chunks/4771.js +2 -2
- package/.next/server/chunks/4793.js +2 -0
- package/.next/server/chunks/4836.js +1 -0
- package/.next/server/chunks/5311.js +1 -1
- package/.next/server/chunks/5463.js +1 -0
- package/.next/server/chunks/5544.js +5 -0
- package/.next/server/chunks/5708.js +11 -8
- package/.next/server/chunks/584.js +1 -0
- package/.next/server/chunks/62.js +1 -1
- package/.next/server/chunks/6240.js +1 -0
- package/.next/server/chunks/6306.js +1 -0
- package/.next/server/chunks/{3928.js → 6745.js} +1 -1
- package/.next/server/chunks/6908.js +2 -2
- package/.next/server/chunks/701.js +1 -1
- package/.next/server/chunks/7214.js +6 -0
- package/.next/server/chunks/7362.js +9 -5
- package/.next/server/chunks/7463.js +6 -0
- package/.next/server/chunks/7506.js +1 -1
- package/.next/server/chunks/7579.js +82 -0
- package/.next/server/chunks/8216.js +1 -0
- package/.next/server/chunks/8387.js +1 -0
- package/.next/server/chunks/856.js +5 -0
- package/.next/server/chunks/8739.js +2 -2
- package/.next/server/chunks/9165.js +1 -0
- package/.next/server/chunks/94.js +1 -0
- package/.next/server/chunks/9427.js +1 -0
- package/.next/server/functions-config-manifest.json +2 -2
- package/.next/server/instrumentation.js.nft.json +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-manifest.json +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/server/src/middleware.js +2 -2
- package/.next/server/src/middleware.js.map +1 -1
- package/.next/static/chunks/1675-773454288de4309d.js +1 -0
- package/.next/static/chunks/1731-6e45fb529f9044a3.js +1 -0
- package/.next/static/chunks/1871-14c3e63ca865d85e.js +1 -0
- package/.next/static/chunks/2003-7710c23acaef11c9.js +1 -0
- package/.next/static/chunks/2318-76fcb6c769b1a569.js +1 -0
- package/.next/static/chunks/2566-6e2b9d9349814789.js +1 -0
- package/.next/static/chunks/2734-59fbe2f62a59df86.js +1 -0
- package/.next/static/chunks/3089.6b4e21e1faa304e2.js +1 -0
- package/.next/static/chunks/3109-11bdec9bdfd996c3.js +1 -0
- package/.next/static/chunks/3217.f728df99ab5da33c.js +1 -0
- package/.next/static/chunks/333-5f3c5be57c80c48c.js +1 -0
- package/.next/static/chunks/3333-b7b3e5758a568013.js +1 -0
- package/.next/static/chunks/3556-3b6f7c99b015b752.js +1 -0
- package/.next/static/chunks/{6257-ee5d8d88050d7705.js → 4003-3b3768446ae333df.js} +1 -1
- package/.next/static/chunks/4523-a540747aa2ed34e8.js +1 -0
- package/.next/static/chunks/4635-0fe310d3be64e71e.js +1 -0
- package/.next/static/chunks/4690-ec7d397cfacedac3.js +1 -0
- package/.next/static/chunks/4775-cb9c0be621363a08.js +8 -0
- package/.next/static/chunks/5336-81da1080de29ebfc.js +1 -0
- package/.next/static/chunks/5512.d01d565f73109a1a.js +1 -0
- package/.next/static/chunks/6691-117567b2b40cd9f4.js +1 -0
- package/.next/static/chunks/7274-1184563607f2b5f5.js +1 -0
- package/.next/static/chunks/8166-e75acdc559b34fcd.js +1 -0
- package/.next/static/chunks/8345.fbc0af16acce7256.js +1 -0
- package/.next/static/chunks/8405.e728bc83a7c9fed6.js +1 -0
- package/.next/static/chunks/8470-72cf748472d4d501.js +1 -0
- package/.next/static/chunks/8607-5787e42775fc3acb.js +1 -0
- package/.next/static/chunks/8610-660d5088bc1dd7a7.js +1 -0
- package/.next/static/chunks/8834-faf121e257b517d5.js +1 -0
- package/.next/static/chunks/8989-401559d9f3bc80a0.js +1 -0
- package/.next/static/chunks/{9164-d9f1abba780231e0.js → 9164-829ab5b085ec06d6.js} +1 -1
- package/.next/static/chunks/9240-d0a51f4d504f34b1.js +1 -0
- package/.next/static/chunks/9562-b7922ceb400ec536.js +1 -0
- package/.next/static/chunks/9704-6b7415964d7c042a.js +1 -0
- package/.next/static/chunks/app/chat/page-04ad1fad78048afb.js +1 -0
- package/.next/static/chunks/app/docs/page-5475c616764dbb18.js +1 -0
- package/.next/static/chunks/app/executions/page-c18708ed96d228ec.js +1 -0
- package/.next/static/chunks/app/flows/page-f7e44aa545bcc56e.js +1 -0
- package/.next/static/chunks/app/layout-e6fbae80e0f456a6.js +1 -0
- package/.next/static/chunks/app/mcp/page-3638fbee04a3a6ea.js +1 -0
- package/.next/static/chunks/app/models/error-5732fbb053e182c5.js +1 -0
- package/.next/static/chunks/app/models/page-e690a986047b1e62.js +1 -0
- package/.next/static/chunks/app/{page-a859e4dbd180df98.js → page-0a95c40a65dbd2eb.js} +1 -1
- package/.next/static/chunks/app/settings/page-3ef9b95187e18a5a.js +1 -0
- package/.next/static/chunks/app/waves/page-c9a307e2236423a4.js +1 -0
- package/.next/static/chunks/webpack-a6844e1074885c2f.js +1 -0
- package/.next/static/css/40f9bef305b11bf5.css +1 -0
- package/.next/trace +10 -8
- package/README.md +31 -1
- package/package.json +1 -1
- package/.next/server/chunks/1119.js +0 -1
- package/.next/server/chunks/1439.js +0 -1
- package/.next/server/chunks/1910.js +0 -37
- package/.next/server/chunks/1999.js +0 -1
- package/.next/server/chunks/2246.js +0 -1
- package/.next/server/chunks/2823.js +0 -6
- package/.next/server/chunks/2998.js +0 -52
- package/.next/server/chunks/3286.js +0 -6
- package/.next/server/chunks/3291.js +0 -1
- package/.next/server/chunks/4637.js +0 -81
- package/.next/server/chunks/6644.js +0 -1
- package/.next/server/chunks/7427.js +0 -1
- package/.next/server/chunks/7723.js +0 -1
- package/.next/server/chunks/7769.js +0 -6
- package/.next/server/chunks/8518.js +0 -2
- package/.next/static/chunks/1620-0d8ecd877f123f7b.js +0 -1
- package/.next/static/chunks/1871-dd8c10ed9d37100b.js +0 -1
- package/.next/static/chunks/1983-242862b3dc022a26.js +0 -1
- package/.next/static/chunks/2003-460f30484998c05d.js +0 -1
- package/.next/static/chunks/2619-04bc32f026a0d946.js +0 -1
- package/.next/static/chunks/3217.058098140ec3f563.js +0 -1
- package/.next/static/chunks/3454-a8db9caba457e5fa.js +0 -1
- package/.next/static/chunks/3730-149f2f058529f75f.js +0 -1
- package/.next/static/chunks/3736-5e2b3f6cda1bb923.js +0 -1
- package/.next/static/chunks/4207-41abb9622eb4b4f8.js +0 -1
- package/.next/static/chunks/4749-f8796d16ff604d54.js +0 -1
- package/.next/static/chunks/4812-4a9aceb49632a973.js +0 -1
- package/.next/static/chunks/5501-f5b093c8dfd74196.js +0 -1
- package/.next/static/chunks/6016.8201fa15ab6aa90e.js +0 -1
- package/.next/static/chunks/6288-a285bbbd701e0dbf.js +0 -1
- package/.next/static/chunks/6731-c230e88cf0032609.js +0 -1
- package/.next/static/chunks/7430-6e78aaeac66988a9.js +0 -1
- package/.next/static/chunks/7583.7af90b94e3c263f2.js +0 -1
- package/.next/static/chunks/7687-7edf1a6e1f063b08.js +0 -1
- package/.next/static/chunks/8083.16fda2c7f6d10d0c.js +0 -1
- package/.next/static/chunks/8480-229fd353b68b570f.js +0 -1
- package/.next/static/chunks/8548-8e4a95334064e8b2.js +0 -1
- package/.next/static/chunks/8611-f6d51119761d52ff.js +0 -8
- package/.next/static/chunks/8834-bda798efab40c60a.js +0 -1
- package/.next/static/chunks/9356-99ba407b60b9dfe9.js +0 -1
- package/.next/static/chunks/9451-680fa09f81f18806.js +0 -1
- package/.next/static/chunks/9659-a279e3aaba407251.js +0 -1
- package/.next/static/chunks/app/chat/page-6a5b5f9ea2542fb3.js +0 -1
- package/.next/static/chunks/app/docs/page-935b0386917b91bb.js +0 -1
- package/.next/static/chunks/app/executions/page-d72027b0179e8fa2.js +0 -1
- package/.next/static/chunks/app/flows/page-fbce5abe34500f28.js +0 -1
- package/.next/static/chunks/app/layout-2ebf01d97702a18a.js +0 -1
- package/.next/static/chunks/app/mcp/page-8666173926cabf31.js +0 -1
- package/.next/static/chunks/app/models/error-a3183f168e8a9b04.js +0 -1
- package/.next/static/chunks/app/models/page-18dbd8e01cf87e98.js +0 -1
- package/.next/static/chunks/app/settings/page-7a68583660508ffd.js +0 -1
- package/.next/static/chunks/app/waves/page-ec33cf79f6103a9e.js +0 -1
- package/.next/static/chunks/webpack-f4a471ab560eb19e.js +0 -1
- package/.next/static/css/39393a79f7cb0dee.css +0 -1
- /package/.next/static/{eUM7C1boixGI469h5wtIk → Il6IDWxf3CN0dv-P6QQrp}/_buildManifest.js +0 -0
- /package/.next/static/{eUM7C1boixGI469h5wtIk → Il6IDWxf3CN0dv-P6QQrp}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(()=>{var a={};a.id=1488,a.ids=[1488],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},2117:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(55511);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length,h=[];for(let a=0;a<256;++a)h.push((a+256).toString(16).slice(1));let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();let i=(a=a||{}).random??a.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(i.length<16)throw Error("Random bytes length must be >= 16");if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=i[a];return b}return function(a,b=0){return(h[a[b+0]]+h[a[b+1]]+h[a[b+2]]+h[a[b+3]]+"-"+h[a[b+4]]+h[a[b+5]]+"-"+h[a[b+6]]+h[a[b+7]]+"-"+h[a[b+8]]+h[a[b+9]]+"-"+h[a[b+10]]+h[a[b+11]]+h[a[b+12]]+h[a[b+13]]+h[a[b+14]]+h[a[b+15]]).toLowerCase()}(i)}},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10013:(a,b,c)=>{Promise.resolve().then(c.bind(c,44930))},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},15059:(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:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2m6.93 6h-2.95c-.32-1.25-.78-2.45-1.38-3.56 1.84.63 3.37 1.91 4.33 3.56M12 4.04c.83 1.2 1.48 2.53 1.91 3.96h-3.82c.43-1.43 1.08-2.76 1.91-3.96M4.26 14C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2s.06 1.34.14 2zm.82 2h2.95c.32 1.25.78 2.45 1.38 3.56-1.84-.63-3.37-1.9-4.33-3.56m2.95-8H5.08c.96-1.66 2.49-2.93 4.33-3.56C8.81 5.55 8.35 6.75 8.03 8M12 19.96c-.83-1.2-1.48-2.53-1.91-3.96h3.82c-.43 1.43-1.08 2.76-1.91 3.96M14.34 14H9.66c-.09-.66-.16-1.32-.16-2s.07-1.35.16-2h4.68c.09.65.16 1.32.16 2s-.07 1.34-.16 2m.25 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95c-.96 1.65-2.49 2.93-4.33 3.56M16.36 14c.08-.66.14-1.32.14-2s-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1.36-.26 2z"}),"Language")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31411:(a,b,c)=>{"use strict";c.d(b,{A:()=>o});var d=c(21124),e=c(38301),f=c(79515),g=c(81637),h=c(95587),i=c(67191),j=c(82605),k=c(98256),l=c(7675),m=c(94367),n=c(37674);let o=({schema:a,values:b,onChange:c,size:o="small"})=>{let[p,q]=(0,e.useState)({}),r=a?.properties??{},s=Array.isArray(a?.required)?a.required:[],t=Object.keys(r);if(0===t.length)return(0,d.jsx)(f.default,{variant:"body2",color:"text.secondary",children:"This tool takes no parameters."});let u=(a,d)=>{let e={...b};void 0===d?delete e[a]:e[a]=d,c(e)};return(0,d.jsx)(g.default,{sx:{display:"flex",flexDirection:"column",gap:2},children:t.map(a=>{let c=r[a]??{},e=s.includes(a)?`${a} *`:a,t="string"==typeof c.description?c.description:"";if("boolean"===c.type)return(0,d.jsx)(h.A,{control:(0,d.jsx)(i.A,{size:o,checked:!0===b[a],onChange:b=>u(a,b.target.checked)}),label:(0,d.jsxs)(g.default,{children:[(0,d.jsx)(f.default,{variant:"body2",children:e}),t&&(0,d.jsx)(f.default,{variant:"caption",color:"text.secondary",children:t})]})},a);if(Array.isArray(c.enum)&&c.enum.length>0){let g=b[a];return(0,d.jsxs)(j.A,{size:o,fullWidth:!0,children:[(0,d.jsx)(k.A,{id:`schema-param-${a}`,children:e}),(0,d.jsx)(l.A,{labelId:`schema-param-${a}`,label:e,value:c.enum.includes(g)?g:"",onChange:b=>u(a,b.target.value),children:c.enum.map(a=>(0,d.jsx)(m.A,{value:a,children:String(a)},String(a)))}),t&&(0,d.jsx)(f.default,{variant:"caption",color:"text.secondary",sx:{mt:.5,mx:1.75},children:t})]},a)}if("number"===c.type||"integer"===c.type)return(0,d.jsx)(n.A,{fullWidth:!0,size:o,type:"number",label:e,value:void 0!==b[a]?String(b[a]):"",onChange:b=>{let d=b.target.value;if(""===d)return void u(a,void 0);let e="integer"===c.type?parseInt(d,10):parseFloat(d);u(a,Number.isNaN(e)?void 0:e)},helperText:t},a);if("object"===c.type||"array"===c.type){let f=p[a]??(void 0!==b[a]?JSON.stringify(b[a],null,2):""),g=null;if(f.trim())try{JSON.parse(f)}catch{g="Not valid JSON yet"}return(0,d.jsx)(n.A,{fullWidth:!0,size:o,multiline:!0,minRows:2,label:`${e} (JSON ${c.type})`,value:f,error:!!g,helperText:g??t,onChange:b=>{let c=b.target.value;if(q(b=>({...b,[a]:c})),!c.trim())return void u(a,void 0);try{u(a,JSON.parse(c))}catch{}},slotProps:{input:{sx:{fontFamily:"monospace",fontSize:13}}}},a)}return(0,d.jsx)(n.A,{fullWidth:!0,size:o,label:e,value:void 0!==b[a]?String(b[a]):"",onChange:b=>u(a,""===b.target.value?void 0:b.target.value),helperText:t},a)})})}},33873:a=>{"use strict";a.exports=require("path")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},42389:(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\\\\executions\\\\page.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\\executions\\page.tsx","default")},44930:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>aP});var d=c(21124),e=c(81637),f=c(38301),g=c(79515),h=c(95587),i=c(67191),j=c(68730),k=c(88745),l=c(30873),m=c(40512),n=c(83899),o=c(52327),p=c(19925),q=c(47902),r=c(53222),s=c(43312),t=c(44079),u=c(19815);let v=(0,u.h)("frontend/services/plannedExecutions");class w{async list(){try{let a=await fetch("/api/planned-executions");if(!a.ok)throw Error(`HTTP ${a.status}`);return await a.json()}catch(a){return v.warn("Failed to list planned executions",a),{paused:!1,executions:[]}}}async create(a){try{let b=await fetch("/api/planned-executions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),c=await b.json();if(!b.ok)return{success:!1,error:c?.error||`HTTP ${b.status}`};return{success:!0,execution:c.execution}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async update(a,b){try{let c=await fetch(`/api/planned-executions/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),d=await c.json();if(!c.ok)return{success:!1,error:d?.error||`HTTP ${c.status}`};return{success:!0,execution:d.execution}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async delete(a){try{let b=await fetch(`/api/planned-executions/${a}`,{method:"DELETE"});if(!b.ok){let a=await b.json().catch(()=>null);return{success:!1,error:a?.error||`HTTP ${b.status}`}}return{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async setPaused(a){try{let b=await fetch("/api/planned-executions",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({paused:a})});if(!b.ok){let a=await b.json().catch(()=>null);return{success:!1,error:a?.error||`HTTP ${b.status}`}}return{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async runNow(a){try{let b=await fetch(`/api/planned-executions/${a}/run`,{method:"POST"}),c=await b.json();if(!b.ok)return{success:!1,error:c?.error||`HTTP ${b.status}`};return{success:!0,record:c.record}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async loadRuns(a){try{let b=await fetch(`/api/planned-executions/${a}/runs`);if(!b.ok)throw Error(`HTTP ${b.status}`);let c=await b.json();return Array.isArray(c?.runs)?c.runs:[]}catch(b){return v.warn(`Failed to load runs for ${a}`,b),[]}}async previewSchedule(a,b){try{let c=await fetch("/api/planned-executions/preview-schedule",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cron:a,timezone:b})});if(!c.ok)throw Error(`HTTP ${c.status}`);return await c.json()}catch(a){return{valid:!1,error:a instanceof Error?a.message:"Preview failed",nextRuns:[]}}}}let x=new w;var y=c(54573),z=c(41893),A=c(8521),B=c(99561),C=c(49066),D=c(12033),E=c(91034),F=c(17332),G=c(63908),H=c(27080);let I=(0,H.A)((0,d.jsx)("path",{d:"M21 11V3h-8l3.29 3.29-10 10L3 13v8h8l-3.29-3.29 10-10z"}),"OpenInFull"),J=a=>String(a).padStart(2,"0"),K=a=>{switch(a){case"completed":return"success.main";case"error":return"error.main";case"skipped":return"warning.main";default:return"transparent"}},L=a=>a?new Date(a).toLocaleDateString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}):"",M=a=>{if(!a.finishedAt)return"";let b=new Date(a.finishedAt).getTime()-new Date(a.firedAt).getTime();return b<1e3?"<1s":b<6e4?`${Math.round(b/1e3)}s`:`${Math.round(b/6e4)}min`},N=({entry:a,paused:b,onEdit:c,onDelete:h,onToggleEnabled:k,onRanNow:l})=>{let{execution:q,status:r,lastRun:u}=a,[v,w]=(0,f.useState)(!1),[H,N]=(0,f.useState)(null),[O,P]=(0,f.useState)(!1),[Q,R]=(0,f.useState)(!1),[S,T]=(0,f.useState)(null),[U,V]=(0,f.useState)(10),W=(0,f.useCallback)(async()=>{P(!0),N([...await x.loadRuns(q.id)].reverse()),V(10),P(!1)},[q.id]);(0,f.useEffect)(()=>{v&&W()},[v,W,u?.runId]);let X=async()=>{R(!0),await x.runNow(q.id),R(!1),v&&W(),l()};return(0,d.jsxs)(y.A,{variant:"outlined",sx:{p:2},children:[(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1.5,flexWrap:"wrap"},children:[(0,d.jsxs)(e.default,{sx:{flexGrow:1,minWidth:220},children:[(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1,flexWrap:"wrap"},children:[(0,d.jsx)(g.default,{variant:"subtitle1",sx:{fontWeight:600},children:q.name}),(0,d.jsx)(z.A,{size:"small",label:function(a){switch(a.type){case"schedule":var b;let c;return b=a.cron,((c=/^\*\/(\d+) \* \* \* \* \*$/.exec(b))?`Every ${c[1]}s`:(c=/^\*\/(\d+) \* \* \* \*$/.exec(b))?`Every ${c[1]} min`:(c=/^0 \*\/(\d+) \* \* \*$/.exec(b))?1===Number(c[1])?"Every hour":`Every ${c[1]} hours`:(c=/^(\d+) (\d+) \* \* \*$/.exec(b))?`Daily at ${J(Number(c[2]))}:${J(Number(c[1]))}`:(c=/^(\d+) (\d+) \* \* 1-5$/.exec(b))?`Weekdays at ${J(Number(c[2]))}:${J(Number(c[1]))}`:null)??`Schedule: ${a.cron}`;case"webhook":return"Webhook";case"file-watch":return`Watching ${a.path}`;case"mcp-poll":return`Watching ${a.serverName} › ${a.toolName}`;case"url-watch":try{return`Watching ${new URL(a.url).hostname}`}catch{return"Watching a URL"}case"flow-event":{if(a.source?.topic)return`On signal “${a.source.topic}”`;let b=(a.on??[]).join("/")||"terminal";return`When a flow is ${b}`}default:return"Trigger"}}(q.trigger)}),!q.enabled&&(0,d.jsx)(z.A,{size:"small",label:"Off",variant:"outlined"})]}),r.running?(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:.75,mt:.5},children:[(0,d.jsx)(A.default,{size:12,thickness:6}),(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",children:["Running…",r.runningSince?` — started ${L(r.runningSince)}`:""]})]}):(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:[(a=>{let{execution:b,status:c}=a;if(!b.enabled)return"";if(c.nextRun)return`Next run: ${L(c.nextRun)}`;if("paused"===c.notArmedReason)return"Paused (global)";if(c.armed)switch(b.trigger.type){case"webhook":return"Listening for webhook";case"file-watch":return`Watching ${b.trigger.path}`;case"mcp-poll":case"url-watch":return"Watching for changes";case"flow-event":return"Waiting for flow event";default:return"Armed"}return"Not armed"})(a),r.lastTriggerError?` — trigger error: ${r.lastTriggerError}`:""]}),u&&(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:.75,mt:.5},children:[(0,d.jsx)(s.A,{title:u.status,children:(0,d.jsx)(e.default,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:K(u.status),flexShrink:0}})}),(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",children:["Last run ",L(u.firedAt),"error"===u.status&&u.error?` — ${u.error}`:""]})]})]}),(0,d.jsx)(s.A,{title:"Run now",children:(0,d.jsx)("span",{children:(0,d.jsx)(t.A,{onClick:X,disabled:Q,color:"primary",children:Q?(0,d.jsx)(A.default,{size:20}):(0,d.jsx)(C.A,{})})})}),(0,d.jsx)(s.A,{title:b?"Scheduler is paused globally — switch it to Active (top right) to arm triggers":q.enabled?"Turn off":"Turn on",children:(0,d.jsx)(i.A,{checked:q.enabled,onChange:a=>k(a.target.checked)})}),(0,d.jsx)(s.A,{title:"Edit",children:(0,d.jsx)(t.A,{onClick:c,children:(0,d.jsx)(D.A,{})})}),(0,d.jsx)(s.A,{title:"Delete",children:(0,d.jsx)(t.A,{onClick:h,children:(0,d.jsx)(E.A,{})})}),(0,d.jsx)(s.A,{title:v?"Hide run history":"Show run history",children:(0,d.jsx)(t.A,{onClick:()=>w(a=>!a),children:v?(0,d.jsx)(G.A,{}):(0,d.jsx)(F.A,{})})})]}),(0,d.jsx)(B.A,{in:v,timeout:"auto",unmountOnExit:!0,children:(0,d.jsxs)(e.default,{sx:{mt:2,borderTop:1,borderColor:"divider",pt:1.5},children:[O&&!H&&(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"Loading runs…"}),H&&0===H.length&&(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"No runs yet. Use the play button to try it now."}),H?.slice(0,U).map(a=>(0,d.jsxs)(e.default,{sx:{display:"flex",gap:1,py:.75,alignItems:"flex-start","&:hover .run-detail-button":{opacity:1}},children:[(0,d.jsx)(e.default,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:K(a.status),mt:"5px",flexShrink:0}}),(0,d.jsxs)(e.default,{sx:{minWidth:0,flexGrow:1},children:[(0,d.jsxs)(g.default,{variant:"body2",children:[L(a.firedAt),M(a)?` \xb7 ${M(a)}`:""," \xb7 ",a.triggerSummary,a.usage?.totalTokens?` \xb7 ${a.usage.totalTokens.toLocaleString()} tokens`:""]}),a.error&&(0,d.jsx)(g.default,{variant:"body2",color:"error",children:a.error}),a.outputText&&(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",sx:{whiteSpace:"pre-wrap",display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",overflow:"hidden"},children:a.outputText})]}),(0,d.jsx)(s.A,{title:"Show full output",children:(0,d.jsx)(t.A,{className:"run-detail-button",size:"small",onClick:()=>T(a),sx:{opacity:{xs:1,md:.35},transition:"opacity 120ms",flexShrink:0},children:(0,d.jsx)(I,{fontSize:"inherit"})})})]},a.runId)),H&&H.length>U&&(0,d.jsxs)(j.A,{size:"small",onClick:()=>V(a=>a+10),sx:{mt:1},children:["Load more (",H.length-U," older)"]})]})}),(0,d.jsxs)(m.A,{open:null!==S,onClose:()=>T(null),maxWidth:"md",fullWidth:!0,children:[(0,d.jsx)(n.A,{component:"div",children:(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,d.jsx)(e.default,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:S?K(S.status):"transparent",flexShrink:0}}),(0,d.jsxs)(g.default,{variant:"h6",children:[q.name," — ",S?L(S.firedAt):""]})]})}),(0,d.jsx)(o.A,{dividers:!0,children:S&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mb:1.5},children:[S.status,M(S)?` \xb7 ${M(S)}`:""," \xb7 ",S.triggerSummary,S.usage?.totalTokens?` \xb7 ${S.usage.totalTokens.toLocaleString()} tokens (${S.usage.promptTokens.toLocaleString()} in / ${S.usage.completionTokens.toLocaleString()} out)`:""]}),S.error&&(0,d.jsx)(g.default,{variant:"body2",color:"error",sx:{mb:1.5,whiteSpace:"pre-wrap"},children:S.error}),S.outputText?(0,d.jsx)(e.default,{sx:{whiteSpace:"pre-wrap",wordBreak:"break-word",bgcolor:"action.hover",borderRadius:1,p:2,fontSize:14,maxHeight:"55vh",overflow:"auto"},children:S.outputText}):!S.error&&(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"This run produced no output text."})]})}),(0,d.jsx)(p.A,{children:(0,d.jsx)(j.A,{onClick:()=>T(null),children:"Close"})})]})]})};var O=c(91059),P=c(37674),Q=c(82605),R=c(98256),S=c(7675),T=c(94367),U=c(38233),V=c(30137);let W=(0,H.A)([(0,d.jsx)("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2M12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"},"0"),(0,d.jsx)("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"},"1")],"Schedule"),X=(0,H.A)((0,d.jsx)("path",{d:"M10 15h5.88c.27-.31.67-.5 1.12-.5.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5c-.44 0-.84-.19-1.12-.5H11.9c-.46 2.28-2.48 4-4.9 4-2.76 0-5-2.24-5-5 0-2.42 1.72-4.44 4-4.9v2.07c-1.16.41-2 1.53-2 2.83 0 1.65 1.35 3 3 3s3-1.35 3-3zm2.5-11c1.65 0 3 1.35 3 3h2c0-2.76-2.24-5-5-5s-5 2.24-5 5c0 1.43.6 2.71 1.55 3.62l-2.35 3.9c-.68.14-1.2.75-1.2 1.48 0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5c0-.16-.02-.31-.07-.45l3.38-5.63C10.49 9.61 9.5 8.42 9.5 7c0-1.65 1.35-3 3-3m4.5 9c-.64 0-1.23.2-1.72.54l-3.05-5.07C11.53 8.35 11 7.74 11 7c0-.83.67-1.5 1.5-1.5S14 6.17 14 7c0 .15-.02.29-.06.43l2.19 3.65c.28-.05.57-.08.87-.08 2.76 0 5 2.24 5 5s-2.24 5-5 5c-1.85 0-3.47-1.01-4.33-2.5h2.67c.48.32 1.05.5 1.66.5 1.65 0 3-1.35 3-3s-1.35-3-3-3"}),"Webhook");var Y=c(46410);let Z=(0,H.A)((0,d.jsx)("path",{d:"M19.3 16.9c.4-.7.7-1.5.7-2.4 0-2.5-2-4.5-4.5-4.5S11 12 11 14.5s2 4.5 4.5 4.5c.9 0 1.7-.3 2.4-.7l3.2 3.2 1.4-1.4zm-3.8.1c-1.4 0-2.5-1.1-2.5-2.5s1.1-2.5 2.5-2.5 2.5 1.1 2.5 2.5-1.1 2.5-2.5 2.5M12 20v2C6.48 22 2 17.52 2 12S6.48 2 12 2c4.84 0 8.87 3.44 9.8 8h-2.07c-.64-2.46-2.4-4.47-4.73-5.41V5c0 1.1-.9 2-2 2h-2v2c0 .55-.45 1-1 1H8v2h2v3H9l-4.79-4.79C4.08 10.79 4 11.38 4 12c0 4.41 3.59 8 8 8"}),"TravelExplore");var $=c(15059);let _=(0,H.A)((0,d.jsx)("path",{d:"m9.78 11.16-1.42 1.42c-.68-.69-1.34-1.58-1.79-2.94l1.94-.49c.32.89.77 1.5 1.27 2.01M11 6 7 2 3 6h3.02c.02.81.08 1.54.19 2.17l1.94-.49C8.08 7.2 8.03 6.63 8.02 6zm10 0-4-4-4 4h2.99c-.1 3.68-1.28 4.75-2.54 5.88-.5.44-1.01.92-1.45 1.55-.34-.49-.73-.88-1.13-1.24L9.46 13.6c.93.85 1.54 1.54 1.54 3.4v5h2v-5c0-2.02.71-2.66 1.79-3.63 1.38-1.24 3.08-2.78 3.2-7.37z"}),"AltRoute");var aa=c(63281),ab=c(8165);let ac=({selected:a,icon:b,title:c,description:f,onClick:h})=>(0,d.jsxs)(e.default,{role:"radio","aria-checked":a,tabIndex:0,onClick:h,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),h())},sx:{flex:1,minWidth:200,position:"relative",p:2,borderRadius:2,border:2,borderColor:a?"primary.main":"divider",bgcolor:a?"action.selected":"background.paper",cursor:"pointer",transition:"border-color 120ms, background-color 120ms","&:hover":{borderColor:a?"primary.main":"text.disabled"},outline:"none","&:focus-visible":{boxShadow:a=>`0 0 0 3px ${a.palette.primary.light}`}},children:[a&&(0,d.jsx)(ab.A,{color:"primary",fontSize:"small",sx:{position:"absolute",top:8,right:8}}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:.5,color:a?"primary.main":"text.secondary"},children:[b,(0,d.jsx)(g.default,{variant:"subtitle1",sx:{fontWeight:600,color:"text.primary"},children:c})]}),(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:f})]});var ad=c(77028),ae=c(61628),af=c(19787),ag=c(95803);let ah=a=>String(a).padStart(2,"0"),ai=({cron:a,timezone:b,onChange:c,verb:i="Runs",catchUp:j,onCatchUpChange:l})=>{let m=(0,f.useMemo)(()=>(function(a){let b=/^\*\/(\d+) \* \* \* \* \*$/.exec(a);return b?{mode:"seconds",n:Number(b[1]),time:"09:00"}:(b=/^\*\/(\d+) \* \* \* \*$/.exec(a))?{mode:"minutes",n:Number(b[1]),time:"09:00"}:(b=/^0 \*\/(\d+) \* \* \*$/.exec(a))?{mode:"hours",n:Number(b[1]),time:"09:00"}:(b=/^(\d+) (\d+) \* \* \*$/.exec(a))?{mode:"daily",n:1,time:`${ah(Number(b[2]))}:${ah(Number(b[1]))}`}:(b=/^(\d+) (\d+) \* \* 1-5$/.exec(a))?{mode:"weekdays",n:1,time:`${ah(Number(b[2]))}:${ah(Number(b[1]))}`}:{mode:"custom",n:15,time:"09:00"}})(a),[]),[n,o]=(0,f.useState)(m.mode),[p,q]=(0,f.useState)(m.n),[r,s]=(0,f.useState)(m.time),[t,u]=(0,f.useState)(a),[v,w]=(0,f.useState)(null),y=function(a,b,c,d){let[e,f]=c.split(":").map(Number);switch(a){case"seconds":return`*/${Math.max(1,Math.min(59,Math.floor(b)||1))} * * * * *`;case"minutes":return`*/${Math.max(1,Math.min(59,Math.floor(b)||1))} * * * *`;case"hours":return`0 */${Math.max(1,Math.min(23,Math.floor(b)||1))} * * *`;case"daily":return`${f||0} ${e||0} * * *`;case"weekdays":return`${f||0} ${e||0} * * 1-5`;default:return d}}(n,p,r,t);return(0,f.useEffect)(()=>{y!==a&&c({cron:y,timezone:b})},[y]),(0,f.useEffect)(()=>{let a=!1,c=setTimeout(()=>{x.previewSchedule(y,b).then(b=>{a||w(b)})},300);return()=>{a=!0,clearTimeout(c)}},[y,b]),(0,d.jsxs)(e.default,{children:[(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,flexWrap:"wrap",alignItems:"center",mt:1},children:[(0,d.jsxs)(Q.A,{sx:{minWidth:180},children:[(0,d.jsx)(R.A,{id:"schedule-preset-label",children:i}),(0,d.jsxs)(S.A,{labelId:"schedule-preset-label",label:i,value:n,onChange:a=>o(a.target.value),children:[(0,d.jsx)(T.A,{value:"seconds",children:"Every N seconds"}),(0,d.jsx)(T.A,{value:"minutes",children:"Every N minutes"}),(0,d.jsx)(T.A,{value:"hours",children:"Every N hours"}),(0,d.jsx)(T.A,{value:"daily",children:"Daily at a time"}),(0,d.jsx)(T.A,{value:"weekdays",children:"Weekdays at a time"}),(0,d.jsx)(T.A,{value:"custom",children:"Custom (cron)"})]})]}),("seconds"===n||"minutes"===n||"hours"===n)&&(0,d.jsx)(P.A,{label:"seconds"===n?"Seconds":"minutes"===n?"Minutes":"Hours",type:"number",value:p,onChange:a=>q(Number(a.target.value)),inputProps:{min:1,max:"hours"===n?23:59},sx:{width:120}}),("daily"===n||"weekdays"===n)&&(0,d.jsx)(P.A,{label:"Time",type:"time",value:r,onChange:a=>s(a.target.value),sx:{width:150},InputLabelProps:{shrink:!0}}),"custom"===n&&(0,d.jsx)(P.A,{label:"Cron pattern",value:t,onChange:a=>u(a.target.value),sx:{minWidth:220},placeholder:"*/15 * * * *"})]}),v&&!v.valid&&(0,d.jsx)(k.A,{severity:"error",sx:{mt:2},children:v.error||"This schedule is not valid."}),v&&v.valid&&v.nextRuns.length>0&&(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mt:2},children:["Next: ",v.nextRuns.map(a=>new Date(a).toLocaleString()).join(" \xb7 ")]}),l&&(0,d.jsx)(h.A,{sx:{mt:1,display:"flex"},control:(0,d.jsx)(ad.A,{checked:!0===j,onChange:a=>l(a.target.checked)}),label:"If FLUJO was closed at a scheduled time, run once on startup"}),(0,d.jsxs)(ae.A,{disableGutters:!0,elevation:0,sx:{mt:1,"&:before":{display:"none"}},children:[(0,d.jsx)(af.A,{expandIcon:(0,d.jsx)(F.A,{}),sx:{px:0},children:(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"Advanced"})}),(0,d.jsx)(ag.A,{sx:{px:0},children:(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[(0,d.jsx)(P.A,{label:"Timezone (optional)",value:b||"",onChange:a=>c({cron:y,timezone:a.target.value||void 0}),placeholder:"e.g. Europe/Berlin",helperText:"IANA timezone name. Empty = this computer's timezone.",sx:{minWidth:260}}),(0,d.jsx)(P.A,{label:"Generated cron pattern",value:y,InputProps:{readOnly:"custom"!==n},onChange:a=>{o("custom"),u(a.target.value)},helperText:"Editing switches to Custom mode.",sx:{minWidth:220}})]})})]})]})};var aj=c(38941),ak=c(36698);let al=({config:a,onChange:b,executionId:c,saved:i})=>{let[l,m]=(0,f.useState)(null),n=`/api/webhooks/${c}`,o=async(a,b)=>{try{await navigator.clipboard.writeText(b),m(a),setTimeout(()=>m(null),1500)}catch{}};return(0,d.jsxs)(e.default,{sx:{mt:1},children:[!i&&(0,d.jsx)(k.A,{severity:"info",sx:{mb:2},children:"This URL and token are ready to copy now — they become active when you save."}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"Webhook URL",value:n,InputProps:{readOnly:!0},size:"small"}),(0,d.jsx)(s.A,{title:"Copy URL",children:(0,d.jsx)(t.A,{onClick:()=>o("url",n),children:"url"===l?(0,d.jsx)(ak.A,{color:"success"}):(0,d.jsx)(aj.A,{})})})]}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1,mt:2},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"Secret token",value:a.token,InputProps:{readOnly:!0},size:"small",type:"password"}),(0,d.jsx)(s.A,{title:"Copy token",children:(0,d.jsx)(t.A,{onClick:()=>o("token",a.token),disabled:!a.token,children:"token"===l?(0,d.jsx)(ak.A,{color:"success"}):(0,d.jsx)(aj.A,{})})}),(0,d.jsx)(j.A,{size:"small",onClick:()=>b({...a,token:crypto.randomUUID()}),sx:{whiteSpace:"nowrap"},children:"New token"})]}),(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",children:i?"A new token takes effect when you save — callers using the old one are cut off.":""}),(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mt:1.5},children:["Callers send a POST with the token in the ",(0,d.jsx)("code",{children:"X-Flujo-Token"})," ","header (or ",(0,d.jsx)("code",{children:"?token=…"}),"). The request body becomes part of the flow's input — treat it as untrusted data in your prompt."]}),(0,d.jsx)(h.A,{sx:{mt:1,display:"flex"},control:(0,d.jsx)(ad.A,{checked:!0===a.allowExternal,onChange:c=>b({...a,allowExternal:c.target.checked})}),label:"Allow calls from other machines (default: this computer only)"}),a.allowExternal&&(0,d.jsx)(k.A,{severity:"warning",children:"FLUJO assumes a single user on this machine. If you expose it beyond localhost (port forwarding, tunnels), securing that access is your responsibility — anyone with the URL and token can run this flow."})]})};var am=c(67101),an=c(73520),ao=c(30717),ap=c(32720);let aq=[{value:"add",label:"A file appears"},{value:"change",label:"A file changes"},{value:"unlink",label:"A file is deleted"}],ar=({config:a,onChange:b})=>{let[c,i]=(0,f.useState)(!1);return(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"Folder (or file) to watch",value:a.path,onChange:c=>b({...a,path:c.target.value}),placeholder:"e.g. C:\\Users\\me\\Documents\\inbox",margin:"normal",InputProps:{endAdornment:(0,d.jsx)(am.A,{position:"end",children:(0,d.jsx)(s.A,{title:"Browse folders (on the FLUJO machine)",children:(0,d.jsx)(t.A,{edge:"end",onClick:()=>i(!0),children:(0,d.jsx)(ao.A,{})})})})}}),(0,d.jsx)(ap.A,{open:c,title:"Choose what to watch",selectFiles:!0,initialPath:a.path||void 0,onClose:()=>i(!1),onSelect:c=>b({...a,path:c})}),(0,d.jsx)(P.A,{fullWidth:!0,label:"Only files matching (optional)",value:a.glob||"",onChange:c=>b({...a,glob:c.target.value||void 0}),placeholder:"e.g. *.pdf or reports/**/*.csv",helperText:"Simple patterns: * matches within a folder, ** across folders, ? one character.",margin:"normal"}),(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:1},children:"Run when…"}),(0,d.jsx)(an.A,{row:!0,children:aq.map(c=>(0,d.jsx)(h.A,{control:(0,d.jsx)(ad.A,{checked:a.events.includes(c.value),onChange:d=>((c,d)=>{let e=d?[...a.events,c]:a.events.filter(a=>a!==c);b({...a,events:e})})(c.value,d.target.checked)}),label:c.label},c.value))}),(0,d.jsx)(k.A,{severity:"info",sx:{mt:1},children:"Bursts are batched: many files changing at once produce one run with all changes listed. If this flow writes into the watched folder, it will trigger itself in a loop — point its output somewhere else."}),(0,d.jsxs)(ae.A,{disableGutters:!0,elevation:0,sx:{mt:1,"&:before":{display:"none"}},children:[(0,d.jsx)(af.A,{expandIcon:(0,d.jsx)(F.A,{}),sx:{px:0},children:(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"Advanced"})}),(0,d.jsx)(ag.A,{sx:{px:0},children:(0,d.jsx)(P.A,{label:"Quiet window (ms)",type:"number",value:a.debounceMs??2e3,onChange:c=>b({...a,debounceMs:Math.max(0,Number(c.target.value)||0)}),helperText:"How long to wait after the last change before running.",inputProps:{min:0,step:500},sx:{width:220}})})]})]})},as=(0,H.A)((0,d.jsx)("path",{d:"M18 23H4c-1.1 0-2-.9-2-2V7h2v14h14zM15 1H8c-1.1 0-1.99.9-1.99 2L6 17c0 1.1.89 2 1.99 2H19c1.1 0 2-.9 2-2V7zm1.5 14h-6v-2h6zm0-6h-2v2h-2V9h-2V7h2V5h2v2h2z"}),"Difference"),at=(0,H.A)([(0,d.jsx)("path",{d:"M13 8.57c-.79 0-1.43.64-1.43 1.43s.64 1.43 1.43 1.43 1.43-.64 1.43-1.43-.64-1.43-1.43-1.43"},"0"),(0,d.jsx)("path",{d:"M13 3C9.25 3 6.2 5.94 6.02 9.64L4.1 12.2c-.25.33-.01.8.4.8H6v3c0 1.1.9 2 2 2h1v3h7v-4.68c2.36-1.12 4-3.53 4-6.32 0-3.87-3.13-7-7-7m3 7c0 .13-.01.26-.02.39l.83.66c.08.06.1.16.05.25l-.8 1.39c-.05.09-.16.12-.24.09l-.99-.4c-.21.16-.43.29-.67.39L14 13.83c-.01.1-.1.17-.2.17h-1.6c-.1 0-.18-.07-.2-.17l-.15-1.06c-.25-.1-.47-.23-.68-.39l-.99.4c-.09.03-.2 0-.25-.09l-.8-1.39c-.05-.08-.03-.19.05-.25l.84-.66c-.01-.13-.02-.26-.02-.39s.02-.27.04-.39l-.85-.66c-.08-.06-.1-.16-.05-.26l.8-1.38c.05-.09.15-.12.24-.09l1 .4c.2-.15.43-.29.67-.39L12 6.17c.02-.1.1-.17.2-.17h1.6c.1 0 .18.07.2.17l.15 1.06c.24.1.46.23.67.39l1-.4c.09-.03.2 0 .24.09l.8 1.38c.05.09.03.2-.05.26l-.85.66c.03.12.04.25.04.39"},"1")],"Psychology");var au=c(28055),av=c(83434),aw=c(31411),ax=c(21570),ay=c(46393),az=c(45231);let aA=(0,u.h)("frontend/components/PlannedExecutions/WatchToolPanel"),aB=({config:a,onChange:b})=>{let[c,h]=(0,f.useState)([]),[i,l]=(0,f.useState)(!1),[m,n]=(0,f.useState)([]),[o,p]=(0,f.useState)(!1),[q,r]=(0,f.useState)(Object.keys(a.args||{}).length>0?JSON.stringify(a.args,null,2):""),[s,t]=(0,f.useState)(null),[u,v]=(0,f.useState)(!1),[w,x]=(0,f.useState)(null),[y,z]=(0,f.useState)(null),[B,C]=(0,f.useState)([]),[D,E]=(0,f.useState)([]);(0,f.useEffect)(()=>{let a=!1;return au.S.loadServerConfigs().then(b=>{a||(Array.isArray(b)?h(b.filter(a=>!a.disabled)):(aA.warn("Failed to load MCP servers for watch-tool panel",b),h([])))}),()=>{a=!0}},[]),(0,f.useEffect)(()=>{if(!a.serverName)return void n([]);let b=!1;return p(!0),au.S.listServerTools(a.serverName).then(({tools:a})=>{b||n(a||[])}).finally(()=>{b||p(!1)}),()=>{b=!0}},[a.serverName]),(0,f.useEffect)(()=>{let a=!1;return av.N.loadModels().then(b=>{a||C(Array.isArray(b)?b:[])}).catch(()=>{a||C([])}),aa.g.loadFlows().then(b=>{a||E(b||[])}).catch(()=>{a||E([])}),()=>{a=!0}},[]);let F=async()=>{v(!0),x(null),z(null);try{let b=await au.S.callTool(a.serverName,a.toolName,a.args||{});if(b?.error)z("string"==typeof b.error?b.error:"Tool call failed");else{let a=b?.data??b,c=JSON.stringify(a,null,2)??"";x(c.length>6e3?`${c.slice(0,6e3)}
|
|
2
|
-
… (truncated)`:c)}}catch(a){z(a instanceof Error?a.message:"Tool call failed")}finally{v(!1)}},G=a.evaluate,H=m.find(b=>b.name===a.toolName),I=(0,az.E)("mcp",c),J=c=>({key:c.name,content:(c=>(0,d.jsx)(ay.A,{name:c.name,status:c.status||"disconnected",path:c.rootPath||"",enabled:!c.disabled,transport:c.transport||"stdio",pickerMode:!0,selected:a.serverName===c.name,onClick:()=>{var d;return d=c.name,void(b({...a,serverName:d,toolName:""}),l(!1))}}))(c)}),K=I.items.map(J),L=I.groups?I.groups.map(a=>({...a,items:a.items.map(J)})):null;return(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[(0,d.jsxs)(e.default,{sx:{minWidth:220,flex:1,mt:2,mb:1},children:[(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.5},children:"Server"}),(0,d.jsx)(j.A,{variant:"outlined",fullWidth:!0,onClick:()=>l(!0),sx:{justifyContent:"flex-start",textTransform:"none"},children:a.serverName?`${a.serverName} — change`:"Choose an MCP server…"}),(0,d.jsx)(ax.A,{open:i,onClose:()=>l(!1),title:"Choose an MCP server",description:"Pick the server whose tool you want to watch.",emptyMessage:"No MCP servers configured.",searchable:!0,searchPlaceholder:"Search servers…",searchTerm:I.searchTerm,onSearchChange:I.setSearchTerm,columns:{xs:12,sm:6},items:K,groups:L,collapsedKeys:I.collapsedKeys,onToggleGroup:I.toggleGroup})]}),(0,d.jsxs)(Q.A,{sx:{minWidth:220,flex:1},margin:"normal",disabled:!a.serverName,children:[(0,d.jsx)(R.A,{id:"watch-tool-label",children:"Tool"}),(0,d.jsxs)(S.A,{labelId:"watch-tool-label",label:"Tool",value:m.some(b=>b.name===a.toolName)?a.toolName:"",onChange:c=>b({...a,toolName:c.target.value,args:{}}),children:[0===m.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:o?"Loading tools…":"Pick a server first"}),m.map(a=>(0,d.jsx)(T.A,{value:a.name,children:a.name},a.name))]})]})]}),(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:1},children:"How often to check"}),(0,d.jsx)(ai,{verb:"Check",cron:a.cron??function(a){let b=Math.max(5,Math.round((a??6e4)/1e3));if(b<60)return`*/${b} * * * * *`;let c=Math.max(1,Math.round(b/60));if(c<60)return`*/${c} * * * *`;let d=Math.max(1,Math.min(23,Math.round(c/60)));return`0 */${d} * * *`}(a.intervalMs),timezone:a.timezone,onChange:({cron:c,timezone:d})=>b({...a,cron:c,timezone:d})}),H?(0,d.jsxs)(e.default,{sx:{my:1.5},children:[(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mb:1.5},children:"Tool parameters — sent on every check"}),(0,d.jsx)(aw.A,{schema:H.inputSchema,values:a.args||{},onChange:c=>b({...a,args:c})})]}):(0,d.jsx)(P.A,{fullWidth:!0,label:"Tool arguments (JSON, optional)",value:q,onChange:c=>(c=>{if(r(c),!c.trim()){t(null),b({...a,args:{}});return}try{let d=JSON.parse(c);if(null===d||"object"!=typeof d||Array.isArray(d))return void t('Arguments must be a JSON object, e.g. { "query": "…" }');t(null),b({...a,args:d})}catch{t("Not valid JSON yet")}})(c.target.value),margin:"normal",multiline:!0,minRows:2,placeholder:'{ "query": "is:unread" }',error:!!s,helperText:s??"Sent to the tool on every check.",slotProps:{input:{sx:{fontFamily:"monospace",fontSize:14}}}}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:2,mb:1},children:[(0,d.jsx)(j.A,{variant:"outlined",size:"small",onClick:F,disabled:!a.serverName||!a.toolName||u||!!s,startIcon:u?(0,d.jsx)(A.default,{size:16}):void 0,children:"Test: call the tool now"}),(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",children:"See what the result looks like — useful for the settings below."})]}),y&&(0,d.jsx)(k.A,{severity:"error",sx:{mb:1},children:y}),w&&(0,d.jsx)(e.default,{component:"pre",sx:{maxHeight:240,overflow:"auto",bgcolor:"action.hover",borderRadius:1,p:1.5,fontSize:12,m:0,mb:1},children:w}),(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:2,mb:1},children:"Run the flow when…"}),(0,d.jsxs)(e.default,{role:"radiogroup","aria-label":"Poll condition",sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[(0,d.jsx)(ac,{selected:"on-change"===G.mode,onClick:()=>b({...a,evaluate:{mode:"on-change"}}),icon:(0,d.jsx)(as,{}),title:"The result changes",description:"Any difference from the last check runs the flow. Simplest — no setup."}),(0,d.jsx)(ac,{selected:"llm-gate"===G.mode||"flow-gate"===G.mode,onClick:()=>{"llm-gate"!==G.mode&&"flow-gate"!==G.mode&&b({...a,evaluate:{mode:"llm-gate",condition:"",modelId:""}})},icon:(0,d.jsx)(at,{}),title:"AI decides",description:"Describe the condition in plain language; a model — or one of your flows — checks the result whenever it changes."})]}),("llm-gate"===G.mode||"flow-gate"===G.mode)&&(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"Run the flow if…",value:G.condition,onChange:c=>b({...a,evaluate:{...G,condition:c.target.value}}),multiline:!0,minRows:2,margin:"normal",placeholder:"e.g. any email mentions an invoice or a payment reminder"}),(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,flexWrap:"wrap",alignItems:"flex-start"},children:[(0,d.jsxs)(Q.A,{sx:{minWidth:170},children:[(0,d.jsx)(R.A,{id:"gate-checker-label",children:"Checked by"}),(0,d.jsxs)(S.A,{labelId:"gate-checker-label",label:"Checked by",value:G.mode,onChange:c=>{let d=c.target.value;if(d===G.mode)return;let e={condition:G.condition,maxCallsPerDay:G.maxCallsPerDay};b({...a,evaluate:"llm-gate"===d?{mode:d,...e,modelId:""}:{mode:d,...e,flowId:""}})},children:[(0,d.jsx)(T.A,{value:"llm-gate",children:"A model"}),(0,d.jsx)(T.A,{value:"flow-gate",children:"One of my flows"})]})]}),"llm-gate"===G.mode&&(0,d.jsxs)(Q.A,{sx:{minWidth:240,flex:1},children:[(0,d.jsx)(R.A,{id:"gate-model-label",children:"Model that checks"}),(0,d.jsxs)(S.A,{labelId:"gate-model-label",label:"Model that checks",value:B.some(a=>a.id===G.modelId)?G.modelId:"",onChange:c=>b({...a,evaluate:{...G,modelId:c.target.value}}),children:[0===B.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:"No models configured"}),B.map(a=>(0,d.jsx)(T.A,{value:a.id,children:a.displayName||a.name},a.id))]})]}),"flow-gate"===G.mode&&(0,d.jsxs)(Q.A,{sx:{minWidth:240,flex:1},children:[(0,d.jsx)(R.A,{id:"gate-flow-label",children:"Flow that checks"}),(0,d.jsxs)(S.A,{labelId:"gate-flow-label",label:"Flow that checks",value:D.some(a=>a.id===G.flowId)?G.flowId:"",onChange:c=>b({...a,evaluate:{...G,flowId:c.target.value}}),children:[0===D.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:"No flows available"}),D.map(a=>(0,d.jsx)(T.A,{value:a.id,children:a.name},a.id))]})]}),(0,d.jsx)(P.A,{label:"Max checks per day",type:"number",value:G.maxCallsPerDay??500,onChange:c=>b({...a,evaluate:{...G,maxCallsPerDay:Math.max(1,Number(c.target.value)||1)}}),inputProps:{min:1},helperText:"Cost guard per check.",sx:{width:180}})]}),(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",sx:{display:"block",mt:.5},children:"flow-gate"===G.mode?'The checker flow runs invisibly (never in the chat), gets the condition + tool result, and must answer with {"fire": true/false, "reason": "…"} — it can use its own tools to verify before deciding.':"The model is only asked when the result actually changed since the last check — an idle feed costs nothing. Pick a small, cheap model."})]}),(0,d.jsx)(k.A,{severity:"info",sx:{mt:2},children:"The first check only takes a snapshot — the flow runs from the second check onwards, when something actually changed. FLUJO must be running for checks to happen."})]})},aC=({config:a,onChange:b})=>(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"URL to watch",value:a.url,onChange:c=>b({...a,url:c.target.value}),placeholder:"https://example.com/status or an API/feed URL",margin:"normal",type:"url"}),(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:1},children:"How often to check"}),(0,d.jsx)(ai,{verb:"Check",cron:a.cron,timezone:a.timezone,onChange:({cron:c,timezone:d})=>b({...a,cron:c,timezone:d})}),(0,d.jsx)(k.A,{severity:"info",sx:{mt:1},children:"The first check only takes a snapshot; the flow runs when a later check finds different content, and the fetched content is handed to the flow. Pages that embed ever-changing bits (timestamps, session tokens) look “changed” on every check — plain APIs, feeds, and raw files work best."})]}),aD=(0,u.h)("frontend/components/PlannedExecutions/FlowEventPanel"),aE=({config:a,onChange:b,flows:c,currentExecutionId:i})=>{let[j,l]=(0,f.useState)([]),[m,n]=(0,f.useState)(void 0!==a.maxChainDepth||void 0!==a.minIntervalMs),o=a.source?.topic!==void 0?"topic":a.source?.executionId!==void 0?"execution":"flow",p="topic"===o;(0,f.useEffect)(()=>{let a=!1;return x.list().then(b=>{a||l(b.executions||[])}).catch(b=>{aD.warn("Failed to load planned executions for source picker",b),a||l([])}),()=>{a=!0}},[]);let q=(c,d)=>{let e=new Set(a.on??[]);d?e.add(c):e.delete(c),b({...a,on:Array.from(e)})};return(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:1},children:"React to"}),(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,mt:1},children:[(0,d.jsxs)(Q.A,{sx:{minWidth:180},children:[(0,d.jsx)(R.A,{id:"flow-event-source-kind",children:"Source"}),(0,d.jsxs)(S.A,{labelId:"flow-event-source-kind",label:"Source",value:o,onChange:c=>(c=>{b({...a,source:"flow"===c?{flowId:""}:"execution"===c?{executionId:""}:{topic:""}})})(c.target.value),children:[(0,d.jsx)(T.A,{value:"flow",children:"A flow (any run)"}),(0,d.jsx)(T.A,{value:"execution",children:"A planned execution"}),(0,d.jsx)(T.A,{value:"topic",children:"A signal topic"})]})]}),"topic"===o?(0,d.jsx)(Q.A,{fullWidth:!0,children:(0,d.jsx)(P.A,{label:"Signal topic",value:a.source?.topic??"",onChange:c=>b({...a,source:{topic:c.target.value}}),placeholder:"e.g. review-blocked",helperText:"React when a signal node in any flow emits this topic."})}):"flow"===o?(0,d.jsxs)(Q.A,{fullWidth:!0,children:[(0,d.jsx)(R.A,{id:"flow-event-flow",children:"Flow to watch"}),(0,d.jsxs)(S.A,{labelId:"flow-event-flow",label:"Flow to watch",value:a.source?.flowId??"",onChange:c=>b({...a,source:{flowId:c.target.value}}),displayEmpty:!0,children:[0===c.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:"No flows available"}),c.map(a=>(0,d.jsx)(T.A,{value:a.id,children:a.name},a.id))]})]}):(0,d.jsxs)(Q.A,{fullWidth:!0,children:[(0,d.jsx)(R.A,{id:"flow-event-execution",children:"Planned execution to watch"}),(0,d.jsxs)(S.A,{labelId:"flow-event-execution",label:"Planned execution to watch",value:a.source?.executionId??"",onChange:c=>b({...a,source:{executionId:c.target.value}}),displayEmpty:!0,children:[0===j.filter(a=>a.execution.id!==i).length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:"No other planned executions"}),j.filter(a=>a.execution.id!==i).map(a=>(0,d.jsx)(T.A,{value:a.execution.id,children:a.execution.name},a.execution.id))]})]})]}),!p&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:2},children:"When it…"}),(0,d.jsxs)(an.A,{row:!0,children:[(0,d.jsx)(h.A,{control:(0,d.jsx)(ad.A,{checked:(a.on??[]).includes("completed"),onChange:a=>q("completed",a.target.checked)}),label:"completes"}),(0,d.jsx)(h.A,{control:(0,d.jsx)(ad.A,{checked:(a.on??[]).includes("error"),onChange:a=>q("error",a.target.checked)}),label:"errors"})]})]}),(0,d.jsx)(P.A,{fullWidth:!0,label:p?"Only when the payload contains (optional)":"Only when the output contains (optional)",value:a.outputMatch?.contains??"",onChange:c=>{let d=c.target.value,e={...a.outputMatch,contains:d||void 0},f=e.contains||e.regex?e:void 0;b({...a,outputMatch:f})},margin:"normal",placeholder:"e.g. FAILED, or leave empty to react to every matching run"}),(0,d.jsx)(h.A,{sx:{mt:1},control:(0,d.jsx)(ad.A,{checked:m,onChange:a=>n(a.target.checked)}),label:"Advanced (loop safety)"}),m&&(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,mt:1},children:[(0,d.jsx)(P.A,{label:"Max chain depth",type:"number",value:a.maxChainDepth??"",onChange:c=>b({...a,maxChainDepth:""===c.target.value?void 0:Number(c.target.value)}),helperText:"Stop after this many hops (default 5)",inputProps:{min:1}}),(0,d.jsx)(P.A,{label:"Cooldown (ms)",type:"number",value:a.minIntervalMs??"",onChange:c=>b({...a,minIntervalMs:""===c.target.value?void 0:Number(c.target.value)}),helperText:"Minimum gap between fires",inputProps:{min:0}})]}),(0,d.jsx)(O.A,{sx:{mt:2}}),(0,d.jsx)(k.A,{severity:"info",sx:{mt:2},children:p?"The signal’s payload is handed to this flow. Emit a signal from a signal node in any flow to fire this one — fire-and-forget. To avoid runaway loops, a chain of fires stops at the max depth above, and the overlap-skip prevents a single execution from re-triggering itself while it’s still running.":"The upstream run’s output is handed to this flow, so it can build on what the other flow produced. To avoid runaway loops, a chain of flow-event fires stops at the max depth above, and the existing overlap-skip prevents a single execution from re-triggering itself while it’s still running."})]})},aF=(0,u.h)("frontend/components/PlannedExecutions/ExecutionModal"),aG={type:"schedule",cron:"0 9 * * *"},aH={type:"file-watch",path:"",events:["add","change"]},aI={type:"mcp-poll",serverName:"",toolName:"",args:{},cron:"*/5 * * * *",evaluate:{mode:"on-change"}},aJ={type:"url-watch",url:"",cron:"*/15 * * * *"},aK={type:"flow-event",source:{flowId:""},on:["completed"]},aL=({open:a,execution:b,onClose:c,onSaved:l})=>{let[q,r]=(0,f.useState)(""),[s,u]=(0,f.useState)(""),[v,w]=(0,f.useState)(""),[y,z]=(0,f.useState)(!1),[A,B]=(0,f.useState)("skip"),[C,D]=(0,f.useState)(aG),[E,F]=(0,f.useState)(""),[G,H]=(0,f.useState)([]),[I,J]=(0,f.useState)(!1),[K,L]=(0,f.useState)(!1),[M,N]=(0,f.useState)(null);(0,f.useEffect)(()=>{a&&(N(null),r(b?.name??""),u(b?.flowId??""),w(b?.prompt??""),z(b?.saveConversations===!0),B(b?.overlapStrategy??"skip"),D(b?.trigger??aG),F(b?"":crypto.randomUUID()))},[a,b]),(0,f.useEffect)(()=>{if(!a)return;let b=!1;return J(!0),aa.g.loadFlows().then(a=>{b||H(a||[])}).catch(a=>{aF.warn("Failed to load flows for execution picker",a),b||H([])}).finally(()=>{b||J(!1)}),()=>{b=!0}},[a]);let ab=!!s&&!I&&G.length>0&&!G.some(a=>a.id===s),ad=async()=>{L(!0),N(null);let a={name:q,flowId:s,prompt:v,saveConversations:y,overlapStrategy:A,trigger:C,enabled:b?.enabled??!0,...b?{}:{id:E}},d=b?await x.update(b.id,a):await x.create(a);if(L(!1),!d.success)return void N(d.error||"Failed to save");l(),c()};return(0,d.jsxs)(m.A,{open:a,onClose:c,maxWidth:"md",fullWidth:!0,PaperProps:{sx:{borderTop:5,borderColor:"primary.main",maxWidth:"95vw",maxHeight:"90vh"}},children:[(0,d.jsx)(n.A,{component:"div",children:(0,d.jsxs)(e.default,{display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,d.jsx)(g.default,{variant:"h6",children:b?"Edit planned execution":"New planned execution"}),(0,d.jsx)(t.A,{edge:"end",color:"inherit",onClick:c,"aria-label":"close",children:(0,d.jsx)(V.A,{})})]})}),(0,d.jsx)(O.A,{}),(0,d.jsxs)(o.A,{sx:{p:3},children:[(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"A planned execution runs one of your flows automatically — on a schedule or when something happens — without anyone sitting in the chat. Results show up in its run history on the Executions page."}),(0,d.jsx)(P.A,{fullWidth:!0,label:"Name",value:q,onChange:a=>r(a.target.value),margin:"normal",placeholder:"e.g. Morning news digest"}),(0,d.jsx)(g.default,{variant:"subtitle1",sx:{mt:3,mb:1,fontWeight:600},children:"1 \xb7 When should it run?"}),(0,d.jsxs)(e.default,{role:"radiogroup","aria-label":"Trigger type",sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[(0,d.jsx)(ac,{selected:"schedule"===C.type,onClick:()=>{"schedule"!==C.type&&D(b?.trigger.type==="schedule"?b.trigger:aG)},icon:(0,d.jsx)(W,{}),title:"On a schedule",description:"Run at fixed times — every few minutes, daily, on weekdays, or a custom rhythm."}),(0,d.jsx)(ac,{selected:"webhook"===C.type,onClick:()=>{"webhook"!==C.type&&D(b?.trigger.type==="webhook"?b.trigger:{type:"webhook",token:crypto.randomUUID()})},icon:(0,d.jsx)(X,{}),title:"When called (webhook)",description:"Other apps run this flow by calling a URL — GitHub, Stripe, Slack and most services can send webhooks."}),(0,d.jsx)(ac,{selected:"file-watch"===C.type,onClick:()=>{"file-watch"!==C.type&&D(b?.trigger.type==="file-watch"?b.trigger:aH)},icon:(0,d.jsx)(Y.A,{}),title:"When files change",description:"Watch a folder on this computer and run when files appear, change, or disappear."}),(0,d.jsx)(ac,{selected:"mcp-poll"===C.type,onClick:()=>{"mcp-poll"!==C.type&&D(b?.trigger.type==="mcp-poll"?b.trigger:aI)},icon:(0,d.jsx)(Z,{}),title:"Watch a tool",description:"Check one of your MCP tools regularly — run when its result changes, or let AI decide."}),(0,d.jsx)(ac,{selected:"url-watch"===C.type,onClick:()=>{"url-watch"!==C.type&&D(b?.trigger.type==="url-watch"?b.trigger:aJ)},icon:(0,d.jsx)($.A,{}),title:"When a website changes",description:"Check a URL regularly and run when its content is different from the last check."}),(0,d.jsx)(ac,{selected:"flow-event"===C.type,onClick:()=>{"flow-event"!==C.type&&D(b?.trigger.type==="flow-event"?b.trigger:aK)},icon:(0,d.jsx)(_,{}),title:"When another flow finishes",description:"React to another flow completing or erroring — chain flows together or run triage when something fails."})]}),"schedule"===C.type&&(0,d.jsx)(ai,{cron:C.cron,timezone:C.timezone,onChange:({cron:a,timezone:b})=>D({...C,cron:a,timezone:b}),catchUp:!0===C.catchUp,onCatchUpChange:a=>D({...C,catchUp:a})}),"webhook"===C.type&&(0,d.jsx)(al,{config:C,onChange:D,executionId:b?.id??E,saved:null!==b}),"file-watch"===C.type&&(0,d.jsx)(ar,{config:C,onChange:D}),"mcp-poll"===C.type&&(0,d.jsx)(aB,{config:C,onChange:D}),"url-watch"===C.type&&(0,d.jsx)(aC,{config:C,onChange:D}),"flow-event"===C.type&&(0,d.jsx)(aE,{config:C,onChange:D,flows:G,currentExecutionId:b?.id??E}),(0,d.jsxs)(Q.A,{fullWidth:!0,margin:"normal",children:[(0,d.jsx)(R.A,{id:"overlap-strategy-label",children:"If it's already running…"}),(0,d.jsxs)(S.A,{labelId:"overlap-strategy-label",label:"If it's already running…",value:A,onChange:a=>B(a.target.value),children:[(0,d.jsx)(T.A,{value:"skip",children:"Skip the new run (default)"}),(0,d.jsx)(T.A,{value:"queue",children:"Queue it — run after the current one finishes"}),(0,d.jsx)(T.A,{value:"parallel",children:"Run in parallel — allow concurrent runs"}),(0,d.jsx)(T.A,{value:"error",children:"Reject it — record an error (webhook gets 409)"})]}),(0,d.jsx)(U.A,{children:"parallel"===A&&("url-watch"===C.type||"mcp-poll"===C.type)?"Heads up: parallel runs of a change-watching trigger can race each other — skip or queue is usually safer here.":"queue"===A?"Queued fires run one at a time, in order. A burst is capped so it can’t grow without limit.":"What happens when this trigger fires while a previous run of it is still going."})]}),(0,d.jsx)(O.A,{sx:{mt:3}}),(0,d.jsx)(g.default,{variant:"subtitle1",sx:{mt:2,mb:0,fontWeight:600},children:"2 \xb7 What should it run?"}),(0,d.jsxs)(Q.A,{fullWidth:!0,margin:"normal",children:[(0,d.jsx)(R.A,{id:"execution-flow-label",children:"Flow to run"}),(0,d.jsxs)(S.A,{labelId:"execution-flow-label",label:"Flow to run",value:ab?"":s,onChange:a=>u(a.target.value),displayEmpty:!0,children:[0===G.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:I?"Loading flows…":"No flows available"}),G.map(a=>(0,d.jsx)(T.A,{value:a.id,children:a.name},a.id))]})]}),ab&&(0,d.jsx)(k.A,{severity:"warning",sx:{mt:1},children:"The previously selected flow no longer exists. Please choose another."}),(0,d.jsx)(P.A,{fullWidth:!0,label:"What should the flow do?",value:v,onChange:a=>w(a.target.value),margin:"normal",multiline:!0,rows:3,helperText:"Sent to the flow as the user message each time this runs. Run details are attached automatically: current time, what triggered it, the previous run, the next planned run, and any trigger data."}),(0,d.jsx)(h.A,{sx:{mt:1},control:(0,d.jsx)(i.A,{checked:y,onChange:a=>z(a.target.checked)}),label:"Save full conversations (each run appears in the chat sidebar — useful for debugging)"}),M&&(0,d.jsx)(k.A,{severity:"error",sx:{mt:2},children:M})]}),(0,d.jsxs)(p.A,{children:[(0,d.jsx)(j.A,{onClick:c,children:"Cancel"}),(0,d.jsx)(j.A,{onClick:ad,variant:"contained",color:"primary",disabled:K||!q.trim()||!s,children:K?"Saving…":"Save"})]})]})},aM=(0,u.h)("frontend/components/PlannedExecutions"),aN=()=>{let[a,b]=(0,f.useState)([]),[c,u]=(0,f.useState)(!1),[v,w]=(0,f.useState)(!1),[y,z]=(0,f.useState)(!1),[A,B]=(0,f.useState)(null),[C,D]=(0,f.useState)(null),[E,F]=(0,f.useState)(null),G=(0,f.useCallback)(async()=>{let a=await x.list();b(a.executions),u(a.paused),w(!0)},[]);(0,f.useEffect)(()=>{G()},[G]);let H=a.some(a=>a.status.running);(0,f.useEffect)(()=>{let a=setInterval(()=>{document.hidden||G()},H?3e3:1e4);return()=>clearInterval(a)},[G,H]);let I=async a=>{u(a);let b=await x.setPaused(a);b.success||aM.warn("Failed to toggle pause",b.error),G()},J=async(a,b)=>{let c=await x.update(a.id,{enabled:b});if(!c.success){let a=c.error||"Failed to update the planned execution.";aM.warn("Failed to toggle enabled",a),F(a)}G()},K=async()=>{C&&(await x.delete(C.id),D(null),G())};return(0,d.jsxs)(e.default,{sx:{p:3,maxWidth:1100,mx:"auto",width:"100%"},children:[(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",flexWrap:"wrap",gap:2,mb:1},children:[(0,d.jsx)(g.default,{variant:"h5",children:"Planned Executions"}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:2},children:[(0,d.jsx)(s.A,{title:"Refresh",children:(0,d.jsx)(t.A,{onClick:()=>void G(),children:(0,d.jsx)(r.A,{})})}),(0,d.jsx)(h.A,{control:(0,d.jsx)(i.A,{checked:!c,onChange:a=>I(!a.target.checked)}),label:c?"Paused":"Active"}),(0,d.jsx)(j.A,{variant:"contained",startIcon:(0,d.jsx)(q.A,{}),onClick:()=>{B(null),z(!0)},"data-tour":"add-execution",children:"Add"})]})]}),(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mb:3},children:["Run your flows automatically — on a schedule or when something happens — without opening the chat. FLUJO must be running for triggers to fire. The Active/Paused switch above gates ",(0,d.jsx)("em",{children:"all"})," triggers globally."]}),c&&a.length>0&&(0,d.jsx)(k.A,{severity:"info",sx:{mb:3},children:"The scheduler is paused — no triggers will fire, so every execution below shows “Paused (global)”. Switch it to Active (top right) to arm them."}),v&&0===a.length&&(0,d.jsxs)(e.default,{sx:{border:1,borderColor:"divider",borderRadius:2,borderStyle:"dashed",p:6,textAlign:"center"},children:[(0,d.jsx)(g.default,{variant:"h6",sx:{mb:1},children:"Nothing planned yet"}),(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Create your first planned execution to run a flow on a schedule."}),(0,d.jsx)(j.A,{variant:"contained",startIcon:(0,d.jsx)(q.A,{}),onClick:()=>{B(null),z(!0)},children:"New planned execution"})]}),(0,d.jsx)(e.default,{sx:{display:"flex",flexDirection:"column",gap:2},children:a.map(a=>(0,d.jsx)(N,{entry:a,onEdit:()=>{B(a.execution),z(!0)},onDelete:()=>D(a.execution),onToggleEnabled:b=>J(a.execution,b),onRanNow:()=>void G(),paused:c},a.execution.id))}),(0,d.jsx)(aL,{open:y,execution:A,onClose:()=>z(!1),onSaved:()=>void G()}),(0,d.jsx)(l.A,{open:null!==E,autoHideDuration:6e3,onClose:()=>F(null),anchorOrigin:{vertical:"bottom",horizontal:"center"},children:(0,d.jsx)(k.A,{severity:"error",onClose:()=>F(null),sx:{width:"100%"},children:E})}),(0,d.jsxs)(m.A,{open:null!==C,onClose:()=>D(null),children:[(0,d.jsxs)(n.A,{children:["Delete “",C?.name,"”?"]}),(0,d.jsx)(o.A,{children:(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"This removes the planned execution and its run history. The flow itself is not affected."})}),(0,d.jsxs)(p.A,{children:[(0,d.jsx)(j.A,{onClick:()=>D(null),children:"Cancel"}),(0,d.jsx)(j.A,{color:"error",variant:"contained",onClick:K,children:"Delete"})]})]})]})},aO=(0,u.h)("app/executions/page");function aP(){return aO.debug("Rendering ExecutionsPage"),(0,d.jsx)(e.default,{sx:{height:"100%",display:"flex",flexDirection:"column"},children:(0,d.jsx)(aN,{})})}},49066:(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:"M8 5v14l11-7z"}),"PlayArrow")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66045:(a,b,c)=>{Promise.resolve().then(c.bind(c,42389))},71804:(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:["executions",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,42389)),"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\executions\\page.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\\executions\\page.tsx"],K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/executions/page",pathname:"/executions",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:I},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var D;let H="/executions/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}}},73520:(a,b,c)=>{"use strict";c.d(b,{A:()=>p});var d=c(38301),e=c(43249),f=c(2783),g=c(18168),h=c(6636),i=c(29565),j=c(33105);function k(a){return(0,j.Ay)("MuiFormGroup",a)}(0,i.A)("MuiFormGroup",["root","row","error"]);var l=c(49628),m=c(83738),n=c(21124);let o=(0,g.Ay)("div",{name:"MuiFormGroup",slot:"Root",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.root,c.row&&b.row]}})({display:"flex",flexDirection:"column",flexWrap:"wrap",variants:[{props:{row:!0},style:{flexDirection:"row"}}]}),p=d.forwardRef(function(a,b){let c=(0,h.b)({props:a,name:"MuiFormGroup"}),{className:d,row:g=!1,...i}=c,j=(0,l.A)(),p=(0,m.A)({props:c,muiFormControl:j,states:["error"]}),q={...c,row:g,error:p.error},r=(a=>{let{classes:b,row:c,error:d}=a;return(0,f.A)({root:["root",c&&"row",d&&"error"]},k,b)})(q);return(0,n.jsx)(o,{className:(0,e.A)(r.root,d),ownerState:q,ref:b,...i})})},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,3648,3984,8445,8745,
|
|
1
|
+
(()=>{var a={};a.id=1488,a.ids=[1488],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10013:(a,b,c)=>{Promise.resolve().then(c.bind(c,61767))},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},15059:(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:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2m6.93 6h-2.95c-.32-1.25-.78-2.45-1.38-3.56 1.84.63 3.37 1.91 4.33 3.56M12 4.04c.83 1.2 1.48 2.53 1.91 3.96h-3.82c.43-1.43 1.08-2.76 1.91-3.96M4.26 14C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2s.06 1.34.14 2zm.82 2h2.95c.32 1.25.78 2.45 1.38 3.56-1.84-.63-3.37-1.9-4.33-3.56m2.95-8H5.08c.96-1.66 2.49-2.93 4.33-3.56C8.81 5.55 8.35 6.75 8.03 8M12 19.96c-.83-1.2-1.48-2.53-1.91-3.96h3.82c-.43 1.43-1.08 2.76-1.91 3.96M14.34 14H9.66c-.09-.66-.16-1.32-.16-2s.07-1.35.16-2h4.68c.09.65.16 1.32.16 2s-.07 1.34-.16 2m.25 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95c-.96 1.65-2.49 2.93-4.33 3.56M16.36 14c.08-.66.14-1.32.14-2s-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1.36-.26 2z"}),"Language")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31411:(a,b,c)=>{"use strict";c.d(b,{A:()=>o});var d=c(21124),e=c(38301),f=c(79515),g=c(81637),h=c(95587),i=c(67191),j=c(82605),k=c(98256),l=c(7675),m=c(94367),n=c(37674);let o=({schema:a,values:b,onChange:c,size:o="small"})=>{let[p,q]=(0,e.useState)({}),r=a?.properties??{},s=Array.isArray(a?.required)?a.required:[],t=Object.keys(r);if(0===t.length)return(0,d.jsx)(f.default,{variant:"body2",color:"text.secondary",children:"This tool takes no parameters."});let u=(a,d)=>{let e={...b};void 0===d?delete e[a]:e[a]=d,c(e)};return(0,d.jsx)(g.default,{sx:{display:"flex",flexDirection:"column",gap:2},children:t.map(a=>{let c=r[a]??{},e=s.includes(a)?`${a} *`:a,t="string"==typeof c.description?c.description:"";if("boolean"===c.type)return(0,d.jsx)(h.A,{control:(0,d.jsx)(i.A,{size:o,checked:!0===b[a],onChange:b=>u(a,b.target.checked)}),label:(0,d.jsxs)(g.default,{children:[(0,d.jsx)(f.default,{variant:"body2",children:e}),t&&(0,d.jsx)(f.default,{variant:"caption",color:"text.secondary",children:t})]})},a);if(Array.isArray(c.enum)&&c.enum.length>0){let g=b[a];return(0,d.jsxs)(j.A,{size:o,fullWidth:!0,children:[(0,d.jsx)(k.A,{id:`schema-param-${a}`,children:e}),(0,d.jsx)(l.A,{labelId:`schema-param-${a}`,label:e,value:c.enum.includes(g)?g:"",onChange:b=>u(a,b.target.value),children:c.enum.map(a=>(0,d.jsx)(m.A,{value:a,children:String(a)},String(a)))}),t&&(0,d.jsx)(f.default,{variant:"caption",color:"text.secondary",sx:{mt:.5,mx:1.75},children:t})]},a)}if("number"===c.type||"integer"===c.type)return(0,d.jsx)(n.A,{fullWidth:!0,size:o,type:"number",label:e,value:void 0!==b[a]?String(b[a]):"",onChange:b=>{let d=b.target.value;if(""===d)return void u(a,void 0);let e="integer"===c.type?parseInt(d,10):parseFloat(d);u(a,Number.isNaN(e)?void 0:e)},helperText:t},a);if("object"===c.type||"array"===c.type){let f=p[a]??(void 0!==b[a]?JSON.stringify(b[a],null,2):""),g=null;if(f.trim())try{JSON.parse(f)}catch{g="Not valid JSON yet"}return(0,d.jsx)(n.A,{fullWidth:!0,size:o,multiline:!0,minRows:2,label:`${e} (JSON ${c.type})`,value:f,error:!!g,helperText:g??t,onChange:b=>{let c=b.target.value;if(q(b=>({...b,[a]:c})),!c.trim())return void u(a,void 0);try{u(a,JSON.parse(c))}catch{}},slotProps:{input:{sx:{fontFamily:"monospace",fontSize:13}}}},a)}return(0,d.jsx)(n.A,{fullWidth:!0,size:o,label:e,value:void 0!==b[a]?String(b[a]):"",onChange:b=>u(a,""===b.target.value?void 0:b.target.value),helperText:t},a)})})}},33873:a=>{"use strict";a.exports=require("path")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},42389:(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\\\\executions\\\\page.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\\executions\\page.tsx","default")},49066:(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:"M8 5v14l11-7z"}),"PlayArrow")},55511:a=>{"use strict";a.exports=require("crypto")},61698:(a,b,c)=>{"use strict";c.d(b,{A:()=>o});var d=c(21124),e=c(38301),f=c(81637),g=c(79515),h=c(8521),i=c(68730),j=c(40216),k=c(63281),l=c(21570),m=c(39438),n=c(45231);let o=({selectedFlowId:a,onSelectFlow:b,disabled:c=!1,hideLabel:o=!1})=>{let[p,q]=(0,e.useState)([]),[r,s]=(0,e.useState)(!0),[t,u]=(0,e.useState)(null),[v,w]=(0,e.useState)(!1);(0,e.useEffect)(()=>{(async()=>{s(!0),u(null);try{let a=await k.g.loadFlows();q(a)}catch(a){console.error("Error loading flows:",a),u("Failed to load flows")}finally{s(!1)}})()},[]);let x=a=>{b(a),w(!1)},y=async a=>{let b=p.find(b=>b.id===a);if(!b)return;let c=!b.favorite,d={...b,favorite:c||void 0};try{(await k.g.updateFlow(d)).success&&q(b=>b.map(b=>b.id===a?d:b))}catch(a){console.error("Error toggling flow favorite:",a)}},z=(0,n.E)("flows",p),A=b=>({key:b.id,content:(b=>(0,d.jsx)(m.A,{flow:b,selected:b.id===a,onSelect:x,onToggleFavorite:y,pickerMode:!0}))(b)}),B=z.items.map(A),C=z.groups?z.groups.map(a=>({...a,items:a.items.map(A)})):null,D=(()=>{if(!a)return"";let b=p.find(b=>b.id===a);return b?b.name:""})();return(0,d.jsxs)(f.default,{children:[!o&&(0,d.jsx)(g.default,{variant:"subtitle1",gutterBottom:!0,children:"Select Flow"}),r?(0,d.jsxs)(f.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,d.jsx)(h.default,{size:20}),(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"Loading flows..."})]}):t?(0,d.jsx)(g.default,{color:"error",variant:"body2",children:t}):0===p.length?(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"No flows available. Create some flows in the Flow Builder first."}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i.A,{variant:"outlined",startIcon:(0,d.jsx)(j.A,{}),onClick:()=>w(!0),disabled:c,sx:{textTransform:"none",maxWidth:"100%"},children:(0,d.jsx)(f.default,{component:"span",sx:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a&&D||"Select a flow"})}),(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",display:"block",sx:{mt:.5},children:a?`Using "${D}" flow for this conversation`:"Select a flow to use for this conversation"}),(0,d.jsx)(l.A,{open:v,onClose:()=>w(!1),title:"Select a flow",description:"Pick the flow this conversation will run.",skeleton:(0,d.jsx)(m.o,{}),emptyMessage:"No flows available. Create some flows in the Flow Builder first.",searchable:!0,searchPlaceholder:"Search flows…",searchTerm:z.searchTerm,onSearchChange:z.setSearchTerm,items:B,groups:C,collapsedKeys:z.collapsedKeys,onToggleGroup:z.toggleGroup})]})]})}},61767:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>aS});var d=c(21124),e=c(81637),f=c(38301),g=c(79515),h=c(95587),i=c(67191),j=c(68730),k=c(88745),l=c(30873),m=c(40512),n=c(83899),o=c(52327),p=c(19925),q=c(47902),r=c(53222),s=c(43312),t=c(44079),u=c(19815);let v=(0,u.h)("frontend/services/plannedExecutions");class w{async list(){try{let a=await fetch("/api/planned-executions");if(!a.ok)throw Error(`HTTP ${a.status}`);return await a.json()}catch(a){return v.warn("Failed to list planned executions",a),{paused:!1,executions:[]}}}async create(a){try{let b=await fetch("/api/planned-executions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),c=await b.json();if(!b.ok)return{success:!1,error:c?.error||`HTTP ${b.status}`};return{success:!0,execution:c.execution}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async update(a,b){try{let c=await fetch(`/api/planned-executions/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),d=await c.json();if(!c.ok)return{success:!1,error:d?.error||`HTTP ${c.status}`};return{success:!0,execution:d.execution}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async delete(a){try{let b=await fetch(`/api/planned-executions/${a}`,{method:"DELETE"});if(!b.ok){let a=await b.json().catch(()=>null);return{success:!1,error:a?.error||`HTTP ${b.status}`}}return{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async setPaused(a){try{let b=await fetch("/api/planned-executions",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({paused:a})});if(!b.ok){let a=await b.json().catch(()=>null);return{success:!1,error:a?.error||`HTTP ${b.status}`}}return{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async runNow(a){try{let b=await fetch(`/api/planned-executions/${a}/run`,{method:"POST"}),c=await b.json();if(!b.ok)return{success:!1,error:c?.error||`HTTP ${b.status}`};return{success:!0,record:c.record}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Request failed"}}}async loadRuns(a){try{let b=await fetch(`/api/planned-executions/${a}/runs`);if(!b.ok)throw Error(`HTTP ${b.status}`);let c=await b.json();return Array.isArray(c?.runs)?c.runs:[]}catch(b){return v.warn(`Failed to load runs for ${a}`,b),[]}}async previewSchedule(a,b){try{let c=await fetch("/api/planned-executions/preview-schedule",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cron:a,timezone:b})});if(!c.ok)throw Error(`HTTP ${c.status}`);return await c.json()}catch(a){return{valid:!1,error:a instanceof Error?a.message:"Preview failed",nextRuns:[]}}}}let x=new w;var y=c(54573),z=c(41893),A=c(8521),B=c(99561),C=c(49066),D=c(12033),E=c(91034),F=c(17332),G=c(63908),H=c(27080);let I=(0,H.A)((0,d.jsx)("path",{d:"M21 11V3h-8l3.29 3.29-10 10L3 13v8h8l-3.29-3.29 10-10z"}),"OpenInFull"),J=a=>String(a).padStart(2,"0"),K=a=>{switch(a){case"completed":return"success.main";case"error":return"error.main";case"skipped":return"warning.main";default:return"transparent"}},L=a=>a?new Date(a).toLocaleDateString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}):"",M=a=>{if(!a.finishedAt)return"";let b=new Date(a.finishedAt).getTime()-new Date(a.firedAt).getTime();return b<1e3?"<1s":b<6e4?`${Math.round(b/1e3)}s`:`${Math.round(b/6e4)}min`},N=({entry:a,paused:b,onEdit:c,onDelete:h,onToggleEnabled:k,onRanNow:l})=>{let{execution:q,status:r,lastRun:u}=a,[v,w]=(0,f.useState)(!1),[H,N]=(0,f.useState)(null),[O,P]=(0,f.useState)(!1),[Q,R]=(0,f.useState)(!1),[S,T]=(0,f.useState)(null),[U,V]=(0,f.useState)(10),W=(0,f.useCallback)(async()=>{P(!0),N([...await x.loadRuns(q.id)].reverse()),V(10),P(!1)},[q.id]);(0,f.useEffect)(()=>{v&&W()},[v,W,u?.runId]);let X=async()=>{R(!0),await x.runNow(q.id),R(!1),v&&W(),l()};return(0,d.jsxs)(y.A,{variant:"outlined",sx:{p:2},children:[(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1.5,flexWrap:"wrap"},children:[(0,d.jsxs)(e.default,{sx:{flexGrow:1,minWidth:220},children:[(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1,flexWrap:"wrap"},children:[(0,d.jsx)(g.default,{variant:"subtitle1",sx:{fontWeight:600},children:q.name}),(0,d.jsx)(z.A,{size:"small",label:function(a){switch(a.type){case"schedule":var b;let c;return b=a.cron,((c=/^\*\/(\d+) \* \* \* \* \*$/.exec(b))?`Every ${c[1]}s`:(c=/^\*\/(\d+) \* \* \* \*$/.exec(b))?`Every ${c[1]} min`:(c=/^0 \*\/(\d+) \* \* \*$/.exec(b))?1===Number(c[1])?"Every hour":`Every ${c[1]} hours`:(c=/^(\d+) (\d+) \* \* \*$/.exec(b))?`Daily at ${J(Number(c[2]))}:${J(Number(c[1]))}`:(c=/^(\d+) (\d+) \* \* 1-5$/.exec(b))?`Weekdays at ${J(Number(c[2]))}:${J(Number(c[1]))}`:null)??`Schedule: ${a.cron}`;case"webhook":return"Webhook";case"file-watch":return`Watching ${a.path}`;case"mcp-poll":return`Watching ${a.serverName} › ${a.toolName}`;case"url-watch":try{return`Watching ${new URL(a.url).hostname}`}catch{return"Watching a URL"}case"flow-event":{if(a.source?.topic)return`On signal “${a.source.topic}”`;let b=(a.on??[]).join("/")||"terminal";return`When a flow is ${b}`}default:return"Trigger"}}(q.trigger)}),q.exclusive&&(0,d.jsx)(s.A,{title:"Only runs when the scheduler is idle; blocks other runs while active",children:(0,d.jsx)(z.A,{size:"small",color:"secondary",label:"Exclusive"})}),!q.enabled&&(0,d.jsx)(z.A,{size:"small",label:"Off",variant:"outlined"})]}),r.running?(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:.75,mt:.5},children:[(0,d.jsx)(A.default,{size:12,thickness:6}),(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",children:["Running…",r.runningSince?` — started ${L(r.runningSince)}`:""]})]}):r.blockedByExclusive?(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:["Blocked — an exclusive execution holds the scheduler",r.lastTriggerError?` — trigger error: ${r.lastTriggerError}`:""]}):(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:[(a=>{let{execution:b,status:c}=a;if(!b.enabled)return"";if(c.nextRun)return`Next run: ${L(c.nextRun)}`;if("paused"===c.notArmedReason)return"Paused (global)";if(c.armed)switch(b.trigger.type){case"webhook":return"Listening for webhook";case"file-watch":return`Watching ${b.trigger.path}`;case"mcp-poll":case"url-watch":return"Watching for changes";case"flow-event":return"Waiting for flow event";default:return"Armed"}return"Not armed"})(a),r.lastTriggerError?` — trigger error: ${r.lastTriggerError}`:""]}),u&&(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:.75,mt:.5},children:[(0,d.jsx)(s.A,{title:u.status,children:(0,d.jsx)(e.default,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:K(u.status),flexShrink:0}})}),(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",children:["Last run ",L(u.firedAt),"error"===u.status&&u.error?` — ${u.error}`:""]})]})]}),(0,d.jsx)(s.A,{title:"Run now",children:(0,d.jsx)("span",{children:(0,d.jsx)(t.A,{onClick:X,disabled:Q,color:"primary",children:Q?(0,d.jsx)(A.default,{size:20}):(0,d.jsx)(C.A,{})})})}),(0,d.jsx)(s.A,{title:b?"Scheduler is paused globally — switch it to Active (top right) to arm triggers":q.enabled?"Turn off":"Turn on",children:(0,d.jsx)(i.A,{checked:q.enabled,onChange:a=>k(a.target.checked)})}),(0,d.jsx)(s.A,{title:"Edit",children:(0,d.jsx)(t.A,{onClick:c,children:(0,d.jsx)(D.A,{})})}),(0,d.jsx)(s.A,{title:"Delete",children:(0,d.jsx)(t.A,{onClick:h,children:(0,d.jsx)(E.A,{})})}),(0,d.jsx)(s.A,{title:v?"Hide run history":"Show run history",children:(0,d.jsx)(t.A,{onClick:()=>w(a=>!a),children:v?(0,d.jsx)(G.A,{}):(0,d.jsx)(F.A,{})})})]}),(0,d.jsx)(B.A,{in:v,timeout:"auto",unmountOnExit:!0,children:(0,d.jsxs)(e.default,{sx:{mt:2,borderTop:1,borderColor:"divider",pt:1.5},children:[O&&!H&&(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"Loading runs…"}),H&&0===H.length&&(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"No runs yet. Use the play button to try it now."}),H?.slice(0,U).map(a=>(0,d.jsxs)(e.default,{sx:{display:"flex",gap:1,py:.75,alignItems:"flex-start","&:hover .run-detail-button":{opacity:1}},children:[(0,d.jsx)(e.default,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:K(a.status),mt:"5px",flexShrink:0}}),(0,d.jsxs)(e.default,{sx:{minWidth:0,flexGrow:1},children:[(0,d.jsxs)(g.default,{variant:"body2",children:[L(a.firedAt),M(a)?` \xb7 ${M(a)}`:""," \xb7 ",a.triggerSummary,a.usage?.totalTokens?` \xb7 ${a.usage.totalTokens.toLocaleString()} tokens`:""]}),a.error&&(0,d.jsx)(g.default,{variant:"body2",color:"error",children:a.error}),a.outputText&&(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",sx:{whiteSpace:"pre-wrap",display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",overflow:"hidden"},children:a.outputText})]}),(0,d.jsx)(s.A,{title:"Show full output",children:(0,d.jsx)(t.A,{className:"run-detail-button",size:"small",onClick:()=>T(a),sx:{opacity:{xs:1,md:.35},transition:"opacity 120ms",flexShrink:0},children:(0,d.jsx)(I,{fontSize:"inherit"})})})]},a.runId)),H&&H.length>U&&(0,d.jsxs)(j.A,{size:"small",onClick:()=>V(a=>a+10),sx:{mt:1},children:["Load more (",H.length-U," older)"]})]})}),(0,d.jsxs)(m.A,{open:null!==S,onClose:()=>T(null),maxWidth:"md",fullWidth:!0,children:[(0,d.jsx)(n.A,{component:"div",children:(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,d.jsx)(e.default,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:S?K(S.status):"transparent",flexShrink:0}}),(0,d.jsxs)(g.default,{variant:"h6",children:[q.name," — ",S?L(S.firedAt):""]})]})}),(0,d.jsx)(o.A,{dividers:!0,children:S&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mb:1.5},children:[S.status,M(S)?` \xb7 ${M(S)}`:""," \xb7 ",S.triggerSummary,S.usage?.totalTokens?` \xb7 ${S.usage.totalTokens.toLocaleString()} tokens (${S.usage.promptTokens.toLocaleString()} in / ${S.usage.completionTokens.toLocaleString()} out)`:""]}),S.error&&(0,d.jsx)(g.default,{variant:"body2",color:"error",sx:{mb:1.5,whiteSpace:"pre-wrap"},children:S.error}),S.outputText?(0,d.jsx)(e.default,{sx:{whiteSpace:"pre-wrap",wordBreak:"break-word",bgcolor:"action.hover",borderRadius:1,p:2,fontSize:14,maxHeight:"55vh",overflow:"auto"},children:S.outputText}):!S.error&&(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"This run produced no output text."})]})}),(0,d.jsx)(p.A,{children:(0,d.jsx)(j.A,{onClick:()=>T(null),children:"Close"})})]})]})};var O=c(91059),P=c(37674),Q=c(82605),R=c(98256),S=c(7675),T=c(94367),U=c(38233),V=c(30137);let W=(0,H.A)([(0,d.jsx)("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2M12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"},"0"),(0,d.jsx)("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"},"1")],"Schedule"),X=(0,H.A)((0,d.jsx)("path",{d:"M10 15h5.88c.27-.31.67-.5 1.12-.5.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5c-.44 0-.84-.19-1.12-.5H11.9c-.46 2.28-2.48 4-4.9 4-2.76 0-5-2.24-5-5 0-2.42 1.72-4.44 4-4.9v2.07c-1.16.41-2 1.53-2 2.83 0 1.65 1.35 3 3 3s3-1.35 3-3zm2.5-11c1.65 0 3 1.35 3 3h2c0-2.76-2.24-5-5-5s-5 2.24-5 5c0 1.43.6 2.71 1.55 3.62l-2.35 3.9c-.68.14-1.2.75-1.2 1.48 0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5c0-.16-.02-.31-.07-.45l3.38-5.63C10.49 9.61 9.5 8.42 9.5 7c0-1.65 1.35-3 3-3m4.5 9c-.64 0-1.23.2-1.72.54l-3.05-5.07C11.53 8.35 11 7.74 11 7c0-.83.67-1.5 1.5-1.5S14 6.17 14 7c0 .15-.02.29-.06.43l2.19 3.65c.28-.05.57-.08.87-.08 2.76 0 5 2.24 5 5s-2.24 5-5 5c-1.85 0-3.47-1.01-4.33-2.5h2.67c.48.32 1.05.5 1.66.5 1.65 0 3-1.35 3-3s-1.35-3-3-3"}),"Webhook");var Y=c(46410);let Z=(0,H.A)((0,d.jsx)("path",{d:"M19.3 16.9c.4-.7.7-1.5.7-2.4 0-2.5-2-4.5-4.5-4.5S11 12 11 14.5s2 4.5 4.5 4.5c.9 0 1.7-.3 2.4-.7l3.2 3.2 1.4-1.4zm-3.8.1c-1.4 0-2.5-1.1-2.5-2.5s1.1-2.5 2.5-2.5 2.5 1.1 2.5 2.5-1.1 2.5-2.5 2.5M12 20v2C6.48 22 2 17.52 2 12S6.48 2 12 2c4.84 0 8.87 3.44 9.8 8h-2.07c-.64-2.46-2.4-4.47-4.73-5.41V5c0 1.1-.9 2-2 2h-2v2c0 .55-.45 1-1 1H8v2h2v3H9l-4.79-4.79C4.08 10.79 4 11.38 4 12c0 4.41 3.59 8 8 8"}),"TravelExplore");var $=c(15059);let _=(0,H.A)((0,d.jsx)("path",{d:"m9.78 11.16-1.42 1.42c-.68-.69-1.34-1.58-1.79-2.94l1.94-.49c.32.89.77 1.5 1.27 2.01M11 6 7 2 3 6h3.02c.02.81.08 1.54.19 2.17l1.94-.49C8.08 7.2 8.03 6.63 8.02 6zm10 0-4-4-4 4h2.99c-.1 3.68-1.28 4.75-2.54 5.88-.5.44-1.01.92-1.45 1.55-.34-.49-.73-.88-1.13-1.24L9.46 13.6c.93.85 1.54 1.54 1.54 3.4v5h2v-5c0-2.02.71-2.66 1.79-3.63 1.38-1.24 3.08-2.78 3.2-7.37z"}),"AltRoute");var aa=c(63281),ab=c(8165);let ac=({selected:a,icon:b,title:c,description:f,onClick:h})=>(0,d.jsxs)(e.default,{role:"radio","aria-checked":a,tabIndex:0,onClick:h,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),h())},sx:{flex:1,minWidth:200,position:"relative",p:2,borderRadius:2,border:2,borderColor:a?"primary.main":"divider",bgcolor:a?"action.selected":"background.paper",cursor:"pointer",transition:"border-color 120ms, background-color 120ms","&:hover":{borderColor:a?"primary.main":"text.disabled"},outline:"none","&:focus-visible":{boxShadow:a=>`0 0 0 3px ${a.palette.primary.light}`}},children:[a&&(0,d.jsx)(ab.A,{color:"primary",fontSize:"small",sx:{position:"absolute",top:8,right:8}}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:.5,color:a?"primary.main":"text.secondary"},children:[b,(0,d.jsx)(g.default,{variant:"subtitle1",sx:{fontWeight:600,color:"text.primary"},children:c})]}),(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:f})]});var ad=c(77028),ae=c(61628),af=c(19787),ag=c(95803);let ah=a=>String(a).padStart(2,"0"),ai=({cron:a,timezone:b,onChange:c,verb:i="Runs",catchUp:j,onCatchUpChange:l})=>{let m=(0,f.useMemo)(()=>(function(a){let b=/^\*\/(\d+) \* \* \* \* \*$/.exec(a);return b?{mode:"seconds",n:Number(b[1]),time:"09:00"}:(b=/^\*\/(\d+) \* \* \* \*$/.exec(a))?{mode:"minutes",n:Number(b[1]),time:"09:00"}:(b=/^0 \*\/(\d+) \* \* \*$/.exec(a))?{mode:"hours",n:Number(b[1]),time:"09:00"}:(b=/^(\d+) (\d+) \* \* \*$/.exec(a))?{mode:"daily",n:1,time:`${ah(Number(b[2]))}:${ah(Number(b[1]))}`}:(b=/^(\d+) (\d+) \* \* 1-5$/.exec(a))?{mode:"weekdays",n:1,time:`${ah(Number(b[2]))}:${ah(Number(b[1]))}`}:{mode:"custom",n:15,time:"09:00"}})(a),[]),[n,o]=(0,f.useState)(m.mode),[p,q]=(0,f.useState)(m.n),[r,s]=(0,f.useState)(m.time),[t,u]=(0,f.useState)(a),[v,w]=(0,f.useState)(null),y=function(a,b,c,d){let[e,f]=c.split(":").map(Number);switch(a){case"seconds":return`*/${Math.max(1,Math.min(59,Math.floor(b)||1))} * * * * *`;case"minutes":return`*/${Math.max(1,Math.min(59,Math.floor(b)||1))} * * * *`;case"hours":return`0 */${Math.max(1,Math.min(23,Math.floor(b)||1))} * * *`;case"daily":return`${f||0} ${e||0} * * *`;case"weekdays":return`${f||0} ${e||0} * * 1-5`;default:return d}}(n,p,r,t);return(0,f.useEffect)(()=>{y!==a&&c({cron:y,timezone:b})},[y]),(0,f.useEffect)(()=>{let a=!1,c=setTimeout(()=>{x.previewSchedule(y,b).then(b=>{a||w(b)})},300);return()=>{a=!0,clearTimeout(c)}},[y,b]),(0,d.jsxs)(e.default,{children:[(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,flexWrap:"wrap",alignItems:"center",mt:1},children:[(0,d.jsxs)(Q.A,{sx:{minWidth:180},children:[(0,d.jsx)(R.A,{id:"schedule-preset-label",children:i}),(0,d.jsxs)(S.A,{labelId:"schedule-preset-label",label:i,value:n,onChange:a=>o(a.target.value),children:[(0,d.jsx)(T.A,{value:"seconds",children:"Every N seconds"}),(0,d.jsx)(T.A,{value:"minutes",children:"Every N minutes"}),(0,d.jsx)(T.A,{value:"hours",children:"Every N hours"}),(0,d.jsx)(T.A,{value:"daily",children:"Daily at a time"}),(0,d.jsx)(T.A,{value:"weekdays",children:"Weekdays at a time"}),(0,d.jsx)(T.A,{value:"custom",children:"Custom (cron)"})]})]}),("seconds"===n||"minutes"===n||"hours"===n)&&(0,d.jsx)(P.A,{label:"seconds"===n?"Seconds":"minutes"===n?"Minutes":"Hours",type:"number",value:p,onChange:a=>q(Number(a.target.value)),inputProps:{min:1,max:"hours"===n?23:59},sx:{width:120}}),("daily"===n||"weekdays"===n)&&(0,d.jsx)(P.A,{label:"Time",type:"time",value:r,onChange:a=>s(a.target.value),sx:{width:150},InputLabelProps:{shrink:!0}}),"custom"===n&&(0,d.jsx)(P.A,{label:"Cron pattern",value:t,onChange:a=>u(a.target.value),sx:{minWidth:220},placeholder:"*/15 * * * *"})]}),v&&!v.valid&&(0,d.jsx)(k.A,{severity:"error",sx:{mt:2},children:v.error||"This schedule is not valid."}),v&&v.valid&&v.nextRuns.length>0&&(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mt:2},children:["Next: ",v.nextRuns.map(a=>new Date(a).toLocaleString()).join(" \xb7 ")]}),l&&(0,d.jsx)(h.A,{sx:{mt:1,display:"flex"},control:(0,d.jsx)(ad.A,{checked:!0===j,onChange:a=>l(a.target.checked)}),label:"If FLUJO was closed at a scheduled time, run once on startup"}),(0,d.jsxs)(ae.A,{disableGutters:!0,elevation:0,sx:{mt:1,"&:before":{display:"none"}},children:[(0,d.jsx)(af.A,{expandIcon:(0,d.jsx)(F.A,{}),sx:{px:0},children:(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"Advanced"})}),(0,d.jsx)(ag.A,{sx:{px:0},children:(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[(0,d.jsx)(P.A,{label:"Timezone (optional)",value:b||"",onChange:a=>c({cron:y,timezone:a.target.value||void 0}),placeholder:"e.g. Europe/Berlin",helperText:"IANA timezone name. Empty = this computer's timezone.",sx:{minWidth:260}}),(0,d.jsx)(P.A,{label:"Generated cron pattern",value:y,InputProps:{readOnly:"custom"!==n},onChange:a=>{o("custom"),u(a.target.value)},helperText:"Editing switches to Custom mode.",sx:{minWidth:220}})]})})]})]})};var aj=c(38941),ak=c(36698);let al=({config:a,onChange:b,executionId:c,saved:i})=>{let[l,m]=(0,f.useState)(null),n=`/api/webhooks/${c}`,o=async(a,b)=>{try{await navigator.clipboard.writeText(b),m(a),setTimeout(()=>m(null),1500)}catch{}};return(0,d.jsxs)(e.default,{sx:{mt:1},children:[!i&&(0,d.jsx)(k.A,{severity:"info",sx:{mb:2},children:"This URL and token are ready to copy now — they become active when you save."}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"Webhook URL",value:n,InputProps:{readOnly:!0},size:"small"}),(0,d.jsx)(s.A,{title:"Copy URL",children:(0,d.jsx)(t.A,{onClick:()=>o("url",n),children:"url"===l?(0,d.jsx)(ak.A,{color:"success"}):(0,d.jsx)(aj.A,{})})})]}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:1,mt:2},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"Secret token",value:a.token,InputProps:{readOnly:!0},size:"small",type:"password"}),(0,d.jsx)(s.A,{title:"Copy token",children:(0,d.jsx)(t.A,{onClick:()=>o("token",a.token),disabled:!a.token,children:"token"===l?(0,d.jsx)(ak.A,{color:"success"}):(0,d.jsx)(aj.A,{})})}),(0,d.jsx)(j.A,{size:"small",onClick:()=>b({...a,token:crypto.randomUUID()}),sx:{whiteSpace:"nowrap"},children:"New token"})]}),(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",children:i?"A new token takes effect when you save — callers using the old one are cut off.":""}),(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mt:1.5},children:["Callers send a POST with the token in the ",(0,d.jsx)("code",{children:"X-Flujo-Token"})," ","header (or ",(0,d.jsx)("code",{children:"?token=…"}),"). The request body becomes part of the flow's input — treat it as untrusted data in your prompt."]}),(0,d.jsx)(h.A,{sx:{mt:1,display:"flex"},control:(0,d.jsx)(ad.A,{checked:!0===a.allowExternal,onChange:c=>b({...a,allowExternal:c.target.checked})}),label:"Allow calls from other machines (default: this computer only)"}),a.allowExternal&&(0,d.jsx)(k.A,{severity:"warning",children:"FLUJO assumes a single user on this machine. If you expose it beyond localhost (port forwarding, tunnels), securing that access is your responsibility — anyone with the URL and token can run this flow."})]})};var am=c(67101),an=c(73520),ao=c(30717),ap=c(32720);let aq=[{value:"add",label:"A file appears"},{value:"change",label:"A file changes"},{value:"unlink",label:"A file is deleted"}],ar=({config:a,onChange:b})=>{let[c,i]=(0,f.useState)(!1);return(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"Folder (or file) to watch",value:a.path,onChange:c=>b({...a,path:c.target.value}),placeholder:"e.g. C:\\Users\\me\\Documents\\inbox",margin:"normal",InputProps:{endAdornment:(0,d.jsx)(am.A,{position:"end",children:(0,d.jsx)(s.A,{title:"Browse folders (on the FLUJO machine)",children:(0,d.jsx)(t.A,{edge:"end",onClick:()=>i(!0),children:(0,d.jsx)(ao.A,{})})})})}}),(0,d.jsx)(ap.A,{open:c,title:"Choose what to watch",selectFiles:!0,initialPath:a.path||void 0,onClose:()=>i(!1),onSelect:c=>b({...a,path:c})}),(0,d.jsx)(P.A,{fullWidth:!0,label:"Only files matching (optional)",value:a.glob||"",onChange:c=>b({...a,glob:c.target.value||void 0}),placeholder:"e.g. *.pdf or reports/**/*.csv",helperText:"Simple patterns: * matches within a folder, ** across folders, ? one character.",margin:"normal"}),(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:1},children:"Run when…"}),(0,d.jsx)(an.A,{row:!0,children:aq.map(c=>(0,d.jsx)(h.A,{control:(0,d.jsx)(ad.A,{checked:a.events.includes(c.value),onChange:d=>((c,d)=>{let e=d?[...a.events,c]:a.events.filter(a=>a!==c);b({...a,events:e})})(c.value,d.target.checked)}),label:c.label},c.value))}),(0,d.jsx)(k.A,{severity:"info",sx:{mt:1},children:"Bursts are batched: many files changing at once produce one run with all changes listed. If this flow writes into the watched folder, it will trigger itself in a loop — point its output somewhere else."}),(0,d.jsxs)(ae.A,{disableGutters:!0,elevation:0,sx:{mt:1,"&:before":{display:"none"}},children:[(0,d.jsx)(af.A,{expandIcon:(0,d.jsx)(F.A,{}),sx:{px:0},children:(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"Advanced"})}),(0,d.jsx)(ag.A,{sx:{px:0},children:(0,d.jsx)(P.A,{label:"Quiet window (ms)",type:"number",value:a.debounceMs??2e3,onChange:c=>b({...a,debounceMs:Math.max(0,Number(c.target.value)||0)}),helperText:"How long to wait after the last change before running.",inputProps:{min:0,step:500},sx:{width:220}})})]})]})},as=(0,H.A)((0,d.jsx)("path",{d:"M18 23H4c-1.1 0-2-.9-2-2V7h2v14h14zM15 1H8c-1.1 0-1.99.9-1.99 2L6 17c0 1.1.89 2 1.99 2H19c1.1 0 2-.9 2-2V7zm1.5 14h-6v-2h6zm0-6h-2v2h-2V9h-2V7h2V5h2v2h2z"}),"Difference"),at=(0,H.A)([(0,d.jsx)("path",{d:"M13 8.57c-.79 0-1.43.64-1.43 1.43s.64 1.43 1.43 1.43 1.43-.64 1.43-1.43-.64-1.43-1.43-1.43"},"0"),(0,d.jsx)("path",{d:"M13 3C9.25 3 6.2 5.94 6.02 9.64L4.1 12.2c-.25.33-.01.8.4.8H6v3c0 1.1.9 2 2 2h1v3h7v-4.68c2.36-1.12 4-3.53 4-6.32 0-3.87-3.13-7-7-7m3 7c0 .13-.01.26-.02.39l.83.66c.08.06.1.16.05.25l-.8 1.39c-.05.09-.16.12-.24.09l-.99-.4c-.21.16-.43.29-.67.39L14 13.83c-.01.1-.1.17-.2.17h-1.6c-.1 0-.18-.07-.2-.17l-.15-1.06c-.25-.1-.47-.23-.68-.39l-.99.4c-.09.03-.2 0-.25-.09l-.8-1.39c-.05-.08-.03-.19.05-.25l.84-.66c-.01-.13-.02-.26-.02-.39s.02-.27.04-.39l-.85-.66c-.08-.06-.1-.16-.05-.26l.8-1.38c.05-.09.15-.12.24-.09l1 .4c.2-.15.43-.29.67-.39L12 6.17c.02-.1.1-.17.2-.17h1.6c.1 0 .18.07.2.17l.15 1.06c.24.1.46.23.67.39l1-.4c.09-.03.2 0 .24.09l.8 1.38c.05.09.03.2-.05.26l-.85.66c.03.12.04.25.04.39"},"1")],"Psychology");var au=c(28055),av=c(83434),aw=c(31411),ax=c(21570),ay=c(35070),az=c(45231);let aA=(0,u.h)("frontend/components/PlannedExecutions/WatchToolPanel"),aB=({config:a,onChange:b})=>{let[c,h]=(0,f.useState)([]),[i,l]=(0,f.useState)(!1),[m,n]=(0,f.useState)([]),[o,p]=(0,f.useState)(!1),[q,r]=(0,f.useState)(Object.keys(a.args||{}).length>0?JSON.stringify(a.args,null,2):""),[s,t]=(0,f.useState)(null),[u,v]=(0,f.useState)(!1),[w,x]=(0,f.useState)(null),[y,z]=(0,f.useState)(null),[B,C]=(0,f.useState)([]),[D,E]=(0,f.useState)([]);(0,f.useEffect)(()=>{let a=!1;return au.S.loadServerConfigs().then(b=>{a||(Array.isArray(b)?h(b.filter(a=>!a.disabled)):(aA.warn("Failed to load MCP servers for watch-tool panel",b),h([])))}),()=>{a=!0}},[]),(0,f.useEffect)(()=>{if(!a.serverName)return void n([]);let b=!1;return p(!0),au.S.listServerTools(a.serverName).then(({tools:a})=>{b||n(a||[])}).finally(()=>{b||p(!1)}),()=>{b=!0}},[a.serverName]),(0,f.useEffect)(()=>{let a=!1;return av.N.loadModels().then(b=>{a||C(Array.isArray(b)?b:[])}).catch(()=>{a||C([])}),aa.g.loadFlows().then(b=>{a||E(b||[])}).catch(()=>{a||E([])}),()=>{a=!0}},[]);let F=async()=>{v(!0),x(null),z(null);try{let b=await au.S.callTool(a.serverName,a.toolName,a.args||{});if(b?.error)z("string"==typeof b.error?b.error:"Tool call failed");else{let a=b?.data??b,c=JSON.stringify(a,null,2)??"";x(c.length>6e3?`${c.slice(0,6e3)}
|
|
2
|
+
… (truncated)`:c)}}catch(a){z(a instanceof Error?a.message:"Tool call failed")}finally{v(!1)}},G=a.evaluate,H=m.find(b=>b.name===a.toolName),I=(0,az.E)("mcp",c),J=c=>({key:c.name,content:(c=>(0,d.jsx)(ay.A,{name:c.name,status:c.status||"disconnected",path:c.rootPath||"",enabled:!c.disabled,transport:c.transport||"stdio",pickerMode:!0,selected:a.serverName===c.name,onClick:()=>{var d;return d=c.name,void(b({...a,serverName:d,toolName:""}),l(!1))}}))(c)}),K=I.items.map(J),L=I.groups?I.groups.map(a=>({...a,items:a.items.map(J)})):null;return(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[(0,d.jsxs)(e.default,{sx:{minWidth:220,flex:1,mt:2,mb:1},children:[(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.5},children:"Server"}),(0,d.jsx)(j.A,{variant:"outlined",fullWidth:!0,onClick:()=>l(!0),sx:{justifyContent:"flex-start",textTransform:"none"},children:a.serverName?`${a.serverName} — change`:"Choose an MCP server…"}),(0,d.jsx)(ax.A,{open:i,onClose:()=>l(!1),title:"Choose an MCP server",description:"Pick the server whose tool you want to watch.",emptyMessage:"No MCP servers configured.",searchable:!0,searchPlaceholder:"Search servers…",searchTerm:I.searchTerm,onSearchChange:I.setSearchTerm,columns:{xs:12,sm:6},items:K,groups:L,collapsedKeys:I.collapsedKeys,onToggleGroup:I.toggleGroup})]}),(0,d.jsxs)(Q.A,{sx:{minWidth:220,flex:1},margin:"normal",disabled:!a.serverName,children:[(0,d.jsx)(R.A,{id:"watch-tool-label",children:"Tool"}),(0,d.jsxs)(S.A,{labelId:"watch-tool-label",label:"Tool",value:m.some(b=>b.name===a.toolName)?a.toolName:"",onChange:c=>b({...a,toolName:c.target.value,args:{}}),children:[0===m.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:o?"Loading tools…":"Pick a server first"}),m.map(a=>(0,d.jsx)(T.A,{value:a.name,children:a.name},a.name))]})]})]}),(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:1},children:"How often to check"}),(0,d.jsx)(ai,{verb:"Check",cron:a.cron??function(a){let b=Math.max(5,Math.round((a??6e4)/1e3));if(b<60)return`*/${b} * * * * *`;let c=Math.max(1,Math.round(b/60));if(c<60)return`*/${c} * * * *`;let d=Math.max(1,Math.min(23,Math.round(c/60)));return`0 */${d} * * *`}(a.intervalMs),timezone:a.timezone,onChange:({cron:c,timezone:d})=>b({...a,cron:c,timezone:d})}),H?(0,d.jsxs)(e.default,{sx:{my:1.5},children:[(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mb:1.5},children:"Tool parameters — sent on every check"}),(0,d.jsx)(aw.A,{schema:H.inputSchema,values:a.args||{},onChange:c=>b({...a,args:c})})]}):(0,d.jsx)(P.A,{fullWidth:!0,label:"Tool arguments (JSON, optional)",value:q,onChange:c=>(c=>{if(r(c),!c.trim()){t(null),b({...a,args:{}});return}try{let d=JSON.parse(c);if(null===d||"object"!=typeof d||Array.isArray(d))return void t('Arguments must be a JSON object, e.g. { "query": "…" }');t(null),b({...a,args:d})}catch{t("Not valid JSON yet")}})(c.target.value),margin:"normal",multiline:!0,minRows:2,placeholder:'{ "query": "is:unread" }',error:!!s,helperText:s??"Sent to the tool on every check.",slotProps:{input:{sx:{fontFamily:"monospace",fontSize:14}}}}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:2,mb:1},children:[(0,d.jsx)(j.A,{variant:"outlined",size:"small",onClick:F,disabled:!a.serverName||!a.toolName||u||!!s,startIcon:u?(0,d.jsx)(A.default,{size:16}):void 0,children:"Test: call the tool now"}),(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",children:"See what the result looks like — useful for the settings below."})]}),y&&(0,d.jsx)(k.A,{severity:"error",sx:{mb:1},children:y}),w&&(0,d.jsx)(e.default,{component:"pre",sx:{maxHeight:240,overflow:"auto",bgcolor:"action.hover",borderRadius:1,p:1.5,fontSize:12,m:0,mb:1},children:w}),(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:2,mb:1},children:"Run the flow when…"}),(0,d.jsxs)(e.default,{role:"radiogroup","aria-label":"Poll condition",sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[(0,d.jsx)(ac,{selected:"on-change"===G.mode,onClick:()=>b({...a,evaluate:{mode:"on-change"}}),icon:(0,d.jsx)(as,{}),title:"The result changes",description:"Any difference from the last check runs the flow. Simplest — no setup."}),(0,d.jsx)(ac,{selected:"llm-gate"===G.mode||"flow-gate"===G.mode,onClick:()=>{"llm-gate"!==G.mode&&"flow-gate"!==G.mode&&b({...a,evaluate:{mode:"llm-gate",condition:"",modelId:""}})},icon:(0,d.jsx)(at,{}),title:"AI decides",description:"Describe the condition in plain language; a model — or one of your flows — checks the result whenever it changes."})]}),("llm-gate"===G.mode||"flow-gate"===G.mode)&&(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"Run the flow if…",value:G.condition,onChange:c=>b({...a,evaluate:{...G,condition:c.target.value}}),multiline:!0,minRows:2,margin:"normal",placeholder:"e.g. any email mentions an invoice or a payment reminder"}),(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,flexWrap:"wrap",alignItems:"flex-start"},children:[(0,d.jsxs)(Q.A,{sx:{minWidth:170},children:[(0,d.jsx)(R.A,{id:"gate-checker-label",children:"Checked by"}),(0,d.jsxs)(S.A,{labelId:"gate-checker-label",label:"Checked by",value:G.mode,onChange:c=>{let d=c.target.value;if(d===G.mode)return;let e={condition:G.condition,maxCallsPerDay:G.maxCallsPerDay};b({...a,evaluate:"llm-gate"===d?{mode:d,...e,modelId:""}:{mode:d,...e,flowId:""}})},children:[(0,d.jsx)(T.A,{value:"llm-gate",children:"A model"}),(0,d.jsx)(T.A,{value:"flow-gate",children:"One of my flows"})]})]}),"llm-gate"===G.mode&&(0,d.jsxs)(Q.A,{sx:{minWidth:240,flex:1},children:[(0,d.jsx)(R.A,{id:"gate-model-label",children:"Model that checks"}),(0,d.jsxs)(S.A,{labelId:"gate-model-label",label:"Model that checks",value:B.some(a=>a.id===G.modelId)?G.modelId:"",onChange:c=>b({...a,evaluate:{...G,modelId:c.target.value}}),children:[0===B.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:"No models configured"}),B.map(a=>(0,d.jsx)(T.A,{value:a.id,children:a.displayName||a.name},a.id))]})]}),"flow-gate"===G.mode&&(0,d.jsxs)(Q.A,{sx:{minWidth:240,flex:1},children:[(0,d.jsx)(R.A,{id:"gate-flow-label",children:"Flow that checks"}),(0,d.jsxs)(S.A,{labelId:"gate-flow-label",label:"Flow that checks",value:D.some(a=>a.id===G.flowId)?G.flowId:"",onChange:c=>b({...a,evaluate:{...G,flowId:c.target.value}}),children:[0===D.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:"No flows available"}),D.map(a=>(0,d.jsx)(T.A,{value:a.id,children:a.name},a.id))]})]}),(0,d.jsx)(P.A,{label:"Max checks per day",type:"number",value:G.maxCallsPerDay??500,onChange:c=>b({...a,evaluate:{...G,maxCallsPerDay:Math.max(1,Number(c.target.value)||1)}}),inputProps:{min:1},helperText:"Cost guard per check.",sx:{width:180}})]}),(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",sx:{display:"block",mt:.5},children:"flow-gate"===G.mode?'The checker flow runs invisibly (never in the chat), gets the condition + tool result, and must answer with {"fire": true/false, "reason": "…"} — it can use its own tools to verify before deciding.':"The model is only asked when the result actually changed since the last check — an idle feed costs nothing. Pick a small, cheap model."})]}),(0,d.jsx)(k.A,{severity:"info",sx:{mt:2},children:"The first check only takes a snapshot — the flow runs from the second check onwards, when something actually changed. FLUJO must be running for checks to happen."})]})},aC=({config:a,onChange:b})=>(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsx)(P.A,{fullWidth:!0,label:"URL to watch",value:a.url,onChange:c=>b({...a,url:c.target.value}),placeholder:"https://example.com/status or an API/feed URL",margin:"normal",type:"url"}),(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:1},children:"How often to check"}),(0,d.jsx)(ai,{verb:"Check",cron:a.cron,timezone:a.timezone,onChange:({cron:c,timezone:d})=>b({...a,cron:c,timezone:d})}),(0,d.jsx)(k.A,{severity:"info",sx:{mt:1},children:"The first check only takes a snapshot; the flow runs when a later check finds different content, and the fetched content is handed to the flow. Pages that embed ever-changing bits (timestamps, session tokens) look “changed” on every check — plain APIs, feeds, and raw files work best."})]});var aD=c(19427);function aE(a){if(!a||!Array.isArray(a.nodes))return[];let b=[];for(let c of a.nodes){if(c?.data?.type!=="signal")continue;let a=c.data.properties?.topic;"string"==typeof a&&a.trim()&&b.push(a.trim())}return b}let aF=(0,u.h)("frontend/components/PlannedExecutions/FlowEventPanel"),aG=({config:a,onChange:b,flows:c,currentExecutionId:i})=>{let[j,l]=(0,f.useState)([]),[m,n]=(0,f.useState)(void 0!==a.maxChainDepth||void 0!==a.minIntervalMs),o=a.source?.topic!==void 0?"topic":a.source?.executionId!==void 0?"execution":"flow",p="topic"===o,q=(0,f.useMemo)(()=>(function(a,b=10){let c=new Map;for(let b of a)b&&"string"==typeof b.id&&c.set(b.id,b);let d=new Map,e=(a,b)=>{d.has(a)||d.set(a,[]),d.get(a).push(b)};for(let d of a){if(!d||"string"!=typeof d.id)continue;let a=new Map;for(let b of aE(d))a.set(b,(a.get(b)??0)+1);for(let[b,c]of a)e(b,{flowId:d.id,flowName:d.name,signalNodeCount:c,viaSubflow:!1});for(let f of function(a,b,c=10){let d=new Set,e=new Set,f=(a,g)=>{if(e.has(a)||g>c)return;e.add(a);let h=b.get(a);for(let a of aE(h))d.add(a);for(let a of function(a){if(!a||!Array.isArray(a.nodes))return[];let b=[];for(let c of a.nodes){if(c?.data?.type!=="subflow")continue;let a=c.data.properties??{};if("string"==typeof a.subflowId&&a.subflowId.trim()&&b.push(a.subflowId.trim()),Array.isArray(a.parallelSubflowIds))for(let c of a.parallelSubflowIds)"string"==typeof c&&c.trim()&&b.push(c.trim())}return Array.from(new Set(b))}(h))f(a,g+1)};return f(a,0),d}(d.id,c,b))a.has(f)||e(f,{flowId:d.id,flowName:d.name,signalNodeCount:0,viaSubflow:!0})}return d})(c),[c]),r=(0,f.useMemo)(()=>{let a=new Map;for(let b of c)b?.id&&a.set(b.id,b.name);return a},[c]),s=(0,f.useMemo)(()=>{let a=new Map;for(let b of j){let c=b.execution;if(c.id===i||c.trigger?.type!=="flow-event")continue;let d=c.trigger.source?.topic;if("string"!=typeof d||!d.trim())continue;let e=d.trim();a.has(e)||a.set(e,[]),a.get(e).push({executionId:c.id,executionName:c.name,flowId:c.flowId,flowName:r.get(c.flowId)})}return a},[j,i,r]),t=(0,f.useMemo)(()=>Array.from(new Set([...q.keys(),...s.keys()])).sort((a,b)=>a.localeCompare(b)),[q,s]),u=a=>{let b=q.get(a);if(!b||0===b.length)return null;let c=Array.from(new Set(b.map(a=>(a.flowName||a.flowId)+(a.viaSubflow?" (via subflow)":""))));return`Emitted in: ${c.join(", ")}`},v=(a.source?.topic??"").trim(),w=!v||q.has(v);(0,f.useEffect)(()=>{let a=!1;return x.list().then(b=>{a||l(b.executions||[])}).catch(b=>{aF.warn("Failed to load planned executions for source picker",b),a||l([])}),()=>{a=!0}},[]);let y=(c,d)=>{let e=new Set(a.on??[]);d?e.add(c):e.delete(c),b({...a,on:Array.from(e)})};return(0,d.jsxs)(e.default,{sx:{mt:1},children:[(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:1},children:"React to"}),(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,mt:1},children:[(0,d.jsxs)(Q.A,{sx:{minWidth:180},children:[(0,d.jsx)(R.A,{id:"flow-event-source-kind",children:"Source"}),(0,d.jsxs)(S.A,{labelId:"flow-event-source-kind",label:"Source",value:o,onChange:c=>(c=>{b({...a,source:"flow"===c?{flowId:""}:"execution"===c?{executionId:""}:{topic:""}})})(c.target.value),children:[(0,d.jsx)(T.A,{value:"flow",children:"A flow (any run)"}),(0,d.jsx)(T.A,{value:"execution",children:"A planned execution"}),(0,d.jsx)(T.A,{value:"topic",children:"A signal topic"})]})]}),"topic"===o?(0,d.jsx)(Q.A,{fullWidth:!0,children:(0,d.jsx)(aD.A,{freeSolo:!0,autoHighlight:!0,options:t,value:a.source?.topic??"",inputValue:a.source?.topic??"",onInputChange:(c,d)=>b({...a,source:{topic:d}}),renderOption:(a,b)=>{let c=u(b),h=(a=>{let b=s.get(a);if(!b||0===b.length)return null;let c=Array.from(new Set(b.map(a=>a.flowName||a.flowId)));return`Used by ${b.length} trigger${1===b.length?"":"s"} → starts ${c.join(", ")}`})(b);return(0,f.createElement)(e.default,{component:"li",...a,key:b},(0,d.jsxs)(e.default,{sx:{display:"flex",flexDirection:"column",py:.25},children:[(0,d.jsx)(g.default,{variant:"body2",sx:{fontWeight:600},children:b}),c&&(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",children:c}),h&&(0,d.jsx)(g.default,{variant:"caption",color:"text.secondary",children:h}),!c&&(0,d.jsx)(g.default,{variant:"caption",color:"warning.main",children:"No flow currently emits this signal"})]}))},renderInput:a=>(0,d.jsx)(P.A,{...a,label:"Signal topic",placeholder:"e.g. review-blocked",helperText:v?w?u(v)??"React when this signal is emitted.":"No flow currently emits this signal — the trigger will stay idle until one does.":"React when a signal node in any flow emits this topic. Suggestions come from your existing flows."})})}):"flow"===o?(0,d.jsxs)(Q.A,{fullWidth:!0,children:[(0,d.jsx)(R.A,{id:"flow-event-flow",children:"Flow to watch"}),(0,d.jsxs)(S.A,{labelId:"flow-event-flow",label:"Flow to watch",value:a.source?.flowId??"",onChange:c=>b({...a,source:{flowId:c.target.value}}),displayEmpty:!0,children:[0===c.length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:"No flows available"}),c.map(a=>(0,d.jsx)(T.A,{value:a.id,children:a.name},a.id))]})]}):(0,d.jsxs)(Q.A,{fullWidth:!0,children:[(0,d.jsx)(R.A,{id:"flow-event-execution",children:"Planned execution to watch"}),(0,d.jsxs)(S.A,{labelId:"flow-event-execution",label:"Planned execution to watch",value:a.source?.executionId??"",onChange:c=>b({...a,source:{executionId:c.target.value}}),displayEmpty:!0,children:[0===j.filter(a=>a.execution.id!==i).length&&(0,d.jsx)(T.A,{value:"",disabled:!0,children:"No other planned executions"}),j.filter(a=>a.execution.id!==i).map(a=>(0,d.jsx)(T.A,{value:a.execution.id,children:a.execution.name},a.execution.id))]})]})]}),!p&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.default,{variant:"subtitle2",sx:{mt:2},children:"When it…"}),(0,d.jsxs)(an.A,{row:!0,children:[(0,d.jsx)(h.A,{control:(0,d.jsx)(ad.A,{checked:(a.on??[]).includes("completed"),onChange:a=>y("completed",a.target.checked)}),label:"completes"}),(0,d.jsx)(h.A,{control:(0,d.jsx)(ad.A,{checked:(a.on??[]).includes("error"),onChange:a=>y("error",a.target.checked)}),label:"errors"})]})]}),(0,d.jsx)(P.A,{fullWidth:!0,label:p?"Only when the payload contains (optional)":"Only when the output contains (optional)",value:a.outputMatch?.contains??"",onChange:c=>{let d=c.target.value,e={...a.outputMatch,contains:d||void 0},f=e.contains||e.regex?e:void 0;b({...a,outputMatch:f})},margin:"normal",placeholder:"e.g. FAILED, or leave empty to react to every matching run"}),(0,d.jsx)(h.A,{sx:{mt:1},control:(0,d.jsx)(ad.A,{checked:m,onChange:a=>n(a.target.checked)}),label:"Advanced (loop safety)"}),m&&(0,d.jsxs)(e.default,{sx:{display:"flex",gap:2,mt:1},children:[(0,d.jsx)(P.A,{label:"Max chain depth",type:"number",value:a.maxChainDepth??"",onChange:c=>b({...a,maxChainDepth:""===c.target.value?void 0:Number(c.target.value)}),helperText:"Stop after this many hops (default 5)",inputProps:{min:1}}),(0,d.jsx)(P.A,{label:"Cooldown (ms)",type:"number",value:a.minIntervalMs??"",onChange:c=>b({...a,minIntervalMs:""===c.target.value?void 0:Number(c.target.value)}),helperText:"Minimum gap between fires",inputProps:{min:0}})]}),(0,d.jsx)(O.A,{sx:{mt:2}}),(0,d.jsx)(k.A,{severity:"info",sx:{mt:2},children:p?"The signal’s payload is handed to this flow. Emit a signal from a signal node in any flow to fire this one — fire-and-forget. To avoid runaway loops, a chain of fires stops at the max depth above, and the overlap-skip prevents a single execution from re-triggering itself while it’s still running.":"The upstream run’s output is handed to this flow, so it can build on what the other flow produced. To avoid runaway loops, a chain of flow-event fires stops at the max depth above, and the existing overlap-skip prevents a single execution from re-triggering itself while it’s still running."})]})};var aH=c(61698);let aI=(0,u.h)("frontend/components/PlannedExecutions/ExecutionModal"),aJ={type:"schedule",cron:"0 9 * * *"},aK={type:"file-watch",path:"",events:["add","change"]},aL={type:"mcp-poll",serverName:"",toolName:"",args:{},cron:"*/5 * * * *",evaluate:{mode:"on-change"}},aM={type:"url-watch",url:"",cron:"*/15 * * * *"},aN={type:"flow-event",source:{flowId:""},on:["completed"]},aO=({open:a,execution:b,onClose:c,onSaved:l})=>{let[q,r]=(0,f.useState)(""),[s,u]=(0,f.useState)(""),[v,w]=(0,f.useState)(""),[y,z]=(0,f.useState)(!1),[A,B]=(0,f.useState)("skip"),[C,D]=(0,f.useState)(!1),[E,F]=(0,f.useState)("queue"),[G,H]=(0,f.useState)(aJ),[I,J]=(0,f.useState)(""),[K,L]=(0,f.useState)([]),[M,N]=(0,f.useState)(!1),[ab,ad]=(0,f.useState)(!1),[ae,af]=(0,f.useState)(null);(0,f.useEffect)(()=>{a&&(af(null),r(b?.name??""),u(b?.flowId??""),w(b?.prompt??""),z(b?.saveConversations===!0),B(b?.overlapStrategy??"skip"),D(b?.exclusive===!0),F(b?.nonExclusiveBehavior??"queue"),H(b?.trigger??aJ),J(b?"":crypto.randomUUID()))},[a,b]),(0,f.useEffect)(()=>{if(!a)return;let b=!1;return N(!0),aa.g.loadFlows().then(a=>{b||L(a||[])}).catch(a=>{aI.warn("Failed to load flows for execution picker",a),b||L([])}).finally(()=>{b||N(!1)}),()=>{b=!0}},[a]);let ag=!!s&&!M&&K.length>0&&!K.some(a=>a.id===s),ah=async()=>{ad(!0),af(null);let a={name:q,flowId:s,prompt:v,saveConversations:y,overlapStrategy:A,exclusive:C,nonExclusiveBehavior:E,trigger:G,enabled:b?.enabled??!0,...b?{}:{id:I}},d=b?await x.update(b.id,a):await x.create(a);if(ad(!1),!d.success)return void af(d.error||"Failed to save");l(),c()};return(0,d.jsxs)(m.A,{open:a,onClose:c,maxWidth:"md",fullWidth:!0,PaperProps:{sx:{borderTop:5,borderColor:"primary.main",maxWidth:"95vw",maxHeight:"90vh"}},children:[(0,d.jsx)(n.A,{component:"div",children:(0,d.jsxs)(e.default,{display:"flex",alignItems:"center",justifyContent:"space-between",children:[(0,d.jsx)(g.default,{variant:"h6",children:b?"Edit planned execution":"New planned execution"}),(0,d.jsx)(t.A,{edge:"end",color:"inherit",onClick:c,"aria-label":"close",children:(0,d.jsx)(V.A,{})})]})}),(0,d.jsx)(O.A,{}),(0,d.jsxs)(o.A,{sx:{p:3},children:[(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"A planned execution runs one of your flows automatically — on a schedule or when something happens — without anyone sitting in the chat. Results show up in its run history on the Executions page."}),(0,d.jsx)(P.A,{fullWidth:!0,label:"Name",value:q,onChange:a=>r(a.target.value),margin:"normal",placeholder:"e.g. Morning news digest"}),(0,d.jsx)(g.default,{variant:"subtitle1",sx:{mt:3,mb:1,fontWeight:600},children:"1 \xb7 When should it run?"}),(0,d.jsxs)(e.default,{role:"radiogroup","aria-label":"Trigger type",sx:{display:"flex",gap:2,flexWrap:"wrap"},children:[(0,d.jsx)(ac,{selected:"schedule"===G.type,onClick:()=>{"schedule"!==G.type&&H(b?.trigger.type==="schedule"?b.trigger:aJ)},icon:(0,d.jsx)(W,{}),title:"On a schedule",description:"Run at fixed times — every few minutes, daily, on weekdays, or a custom rhythm."}),(0,d.jsx)(ac,{selected:"webhook"===G.type,onClick:()=>{"webhook"!==G.type&&H(b?.trigger.type==="webhook"?b.trigger:{type:"webhook",token:crypto.randomUUID()})},icon:(0,d.jsx)(X,{}),title:"When called (webhook)",description:"Other apps run this flow by calling a URL — GitHub, Stripe, Slack and most services can send webhooks."}),(0,d.jsx)(ac,{selected:"file-watch"===G.type,onClick:()=>{"file-watch"!==G.type&&H(b?.trigger.type==="file-watch"?b.trigger:aK)},icon:(0,d.jsx)(Y.A,{}),title:"When files change",description:"Watch a folder on this computer and run when files appear, change, or disappear."}),(0,d.jsx)(ac,{selected:"mcp-poll"===G.type,onClick:()=>{"mcp-poll"!==G.type&&H(b?.trigger.type==="mcp-poll"?b.trigger:aL)},icon:(0,d.jsx)(Z,{}),title:"Watch a tool",description:"Check one of your MCP tools regularly — run when its result changes, or let AI decide."}),(0,d.jsx)(ac,{selected:"url-watch"===G.type,onClick:()=>{"url-watch"!==G.type&&H(b?.trigger.type==="url-watch"?b.trigger:aM)},icon:(0,d.jsx)($.A,{}),title:"When a website changes",description:"Check a URL regularly and run when its content is different from the last check."}),(0,d.jsx)(ac,{selected:"flow-event"===G.type,onClick:()=>{"flow-event"!==G.type&&H(b?.trigger.type==="flow-event"?b.trigger:aN)},icon:(0,d.jsx)(_,{}),title:"When another flow finishes",description:"React to another flow completing or erroring — chain flows together or run triage when something fails."})]}),"schedule"===G.type&&(0,d.jsx)(ai,{cron:G.cron,timezone:G.timezone,onChange:({cron:a,timezone:b})=>H({...G,cron:a,timezone:b}),catchUp:!0===G.catchUp,onCatchUpChange:a=>H({...G,catchUp:a})}),"webhook"===G.type&&(0,d.jsx)(al,{config:G,onChange:H,executionId:b?.id??I,saved:null!==b}),"file-watch"===G.type&&(0,d.jsx)(ar,{config:G,onChange:H}),"mcp-poll"===G.type&&(0,d.jsx)(aB,{config:G,onChange:H}),"url-watch"===G.type&&(0,d.jsx)(aC,{config:G,onChange:H}),"flow-event"===G.type&&(0,d.jsx)(aG,{config:G,onChange:H,flows:K,currentExecutionId:b?.id??I}),(0,d.jsxs)(Q.A,{fullWidth:!0,margin:"normal",children:[(0,d.jsx)(R.A,{id:"overlap-strategy-label",children:"If it's already running…"}),(0,d.jsxs)(S.A,{labelId:"overlap-strategy-label",label:"If it's already running…",value:A,onChange:a=>B(a.target.value),children:[(0,d.jsx)(T.A,{value:"skip",children:"Skip the new run (default)"}),(0,d.jsx)(T.A,{value:"queue",children:"Queue it — run after the current one finishes"}),(0,d.jsx)(T.A,{value:"parallel",children:"Run in parallel — allow concurrent runs"}),(0,d.jsx)(T.A,{value:"error",children:"Reject it — record an error (webhook gets 409)"})]}),(0,d.jsx)(U.A,{children:"parallel"===A&&("url-watch"===G.type||"mcp-poll"===G.type)?"Heads up: parallel runs of a change-watching trigger can race each other — skip or queue is usually safer here.":"queue"===A?"Queued fires run one at a time, in order. A burst is capped so it can’t grow without limit.":"What happens when this trigger fires while a previous run of it is still going."})]}),(0,d.jsx)(h.A,{sx:{mt:1},control:(0,d.jsx)(i.A,{checked:C,onChange:a=>D(a.target.checked)}),label:"Exclusive — only run when nothing else is running, and block other runs while it does"}),C&&(0,d.jsxs)(Q.A,{fullWidth:!0,margin:"normal",children:[(0,d.jsx)(R.A,{id:"non-exclusive-behavior-label",children:"While this runs, other triggers…"}),(0,d.jsxs)(S.A,{labelId:"non-exclusive-behavior-label",label:"While this runs, other triggers…",value:E,onChange:a=>F(a.target.value),children:[(0,d.jsx)(T.A,{value:"queue",children:"Queue — run them after this finishes (default)"}),(0,d.jsx)(T.A,{value:"skip",children:"Skip — drop them"}),(0,d.jsx)(T.A,{value:"error",children:"Fail — reject them (webhook gets 423)"})]}),(0,d.jsx)(U.A,{children:"An exclusive run waits until the scheduler is idle, then holds a global lock so no other planned execution can start until it finishes."})]}),(0,d.jsx)(O.A,{sx:{mt:3}}),(0,d.jsx)(g.default,{variant:"subtitle1",sx:{mt:2,mb:0,fontWeight:600},children:"2 \xb7 What should it run?"}),(0,d.jsx)(e.default,{sx:{mt:2},children:(0,d.jsx)(aH.A,{selectedFlowId:s||null,onSelectFlow:u,disabled:ab,hideLabel:!0})}),ag&&(0,d.jsx)(k.A,{severity:"warning",sx:{mt:1},children:"The previously selected flow no longer exists. Please choose another."}),(0,d.jsx)(P.A,{fullWidth:!0,label:"What should the flow do?",value:v,onChange:a=>w(a.target.value),margin:"normal",multiline:!0,rows:3,helperText:"Sent to the flow as the user message each time this runs. Run details are attached automatically: current time, what triggered it, the previous run, the next planned run, and any trigger data."}),(0,d.jsx)(h.A,{sx:{mt:1},control:(0,d.jsx)(i.A,{checked:y,onChange:a=>z(a.target.checked)}),label:"Save full conversations (each run appears in the chat sidebar — useful for debugging)"}),ae&&(0,d.jsx)(k.A,{severity:"error",sx:{mt:2},children:ae})]}),(0,d.jsxs)(p.A,{children:[(0,d.jsx)(j.A,{onClick:c,children:"Cancel"}),(0,d.jsx)(j.A,{onClick:ah,variant:"contained",color:"primary",disabled:ab||!q.trim()||!s,children:ab?"Saving…":"Save"})]})]})},aP=(0,u.h)("frontend/components/PlannedExecutions"),aQ=()=>{let[a,b]=(0,f.useState)([]),[c,u]=(0,f.useState)(!1),[v,w]=(0,f.useState)(!1),[y,z]=(0,f.useState)(!1),[A,B]=(0,f.useState)(null),[C,D]=(0,f.useState)(null),[E,F]=(0,f.useState)(null),G=(0,f.useCallback)(async()=>{let a=await x.list();b(a.executions),u(a.paused),w(!0)},[]);(0,f.useEffect)(()=>{G()},[G]);let H=a.some(a=>a.status.running);(0,f.useEffect)(()=>{let a=setInterval(()=>{document.hidden||G()},H?3e3:1e4);return()=>clearInterval(a)},[G,H]);let I=async a=>{u(a);let b=await x.setPaused(a);b.success||aP.warn("Failed to toggle pause",b.error),G()},J=async(a,b)=>{let c=await x.update(a.id,{enabled:b});if(!c.success){let a=c.error||"Failed to update the planned execution.";aP.warn("Failed to toggle enabled",a),F(a)}G()},K=async()=>{C&&(await x.delete(C.id),D(null),G())};return(0,d.jsxs)(e.default,{sx:{p:3,maxWidth:1100,mx:"auto",width:"100%"},children:[(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",flexWrap:"wrap",gap:2,mb:1},children:[(0,d.jsx)(g.default,{variant:"h5",children:"Planned Executions"}),(0,d.jsxs)(e.default,{sx:{display:"flex",alignItems:"center",gap:2},children:[(0,d.jsx)(s.A,{title:"Refresh",children:(0,d.jsx)(t.A,{onClick:()=>void G(),children:(0,d.jsx)(r.A,{})})}),(0,d.jsx)(h.A,{control:(0,d.jsx)(i.A,{checked:!c,onChange:a=>I(!a.target.checked)}),label:c?"Paused":"Active"}),(0,d.jsx)(j.A,{variant:"contained",startIcon:(0,d.jsx)(q.A,{}),onClick:()=>{B(null),z(!0)},"data-tour":"add-execution",children:"Add"})]})]}),(0,d.jsxs)(g.default,{variant:"body2",color:"text.secondary",sx:{mb:3},children:["Run your flows automatically — on a schedule or when something happens — without opening the chat. FLUJO must be running for triggers to fire. The Active/Paused switch above gates ",(0,d.jsx)("em",{children:"all"})," triggers globally."]}),c&&a.length>0&&(0,d.jsx)(k.A,{severity:"info",sx:{mb:3},children:"The scheduler is paused — no triggers will fire, so every execution below shows “Paused (global)”. Switch it to Active (top right) to arm them."}),v&&0===a.length&&(0,d.jsxs)(e.default,{sx:{border:1,borderColor:"divider",borderRadius:2,borderStyle:"dashed",p:6,textAlign:"center"},children:[(0,d.jsx)(g.default,{variant:"h6",sx:{mb:1},children:"Nothing planned yet"}),(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Create your first planned execution to run a flow on a schedule."}),(0,d.jsx)(j.A,{variant:"contained",startIcon:(0,d.jsx)(q.A,{}),onClick:()=>{B(null),z(!0)},children:"New planned execution"})]}),(0,d.jsx)(e.default,{sx:{display:"flex",flexDirection:"column",gap:2},children:a.map(a=>(0,d.jsx)(N,{entry:a,onEdit:()=>{B(a.execution),z(!0)},onDelete:()=>D(a.execution),onToggleEnabled:b=>J(a.execution,b),onRanNow:()=>void G(),paused:c},a.execution.id))}),(0,d.jsx)(aO,{open:y,execution:A,onClose:()=>z(!1),onSaved:()=>void G()}),(0,d.jsx)(l.A,{open:null!==E,autoHideDuration:6e3,onClose:()=>F(null),anchorOrigin:{vertical:"bottom",horizontal:"center"},children:(0,d.jsx)(k.A,{severity:"error",onClose:()=>F(null),sx:{width:"100%"},children:E})}),(0,d.jsxs)(m.A,{open:null!==C,onClose:()=>D(null),children:[(0,d.jsxs)(n.A,{children:["Delete “",C?.name,"”?"]}),(0,d.jsx)(o.A,{children:(0,d.jsx)(g.default,{variant:"body2",color:"text.secondary",children:"This removes the planned execution and its run history. The flow itself is not affected."})}),(0,d.jsxs)(p.A,{children:[(0,d.jsx)(j.A,{onClick:()=>D(null),children:"Cancel"}),(0,d.jsx)(j.A,{color:"error",variant:"contained",onClick:K,children:"Delete"})]})]})]})},aR=(0,u.h)("app/executions/page");function aS(){return aR.debug("Rendering ExecutionsPage"),(0,d.jsx)(e.default,{sx:{height:"100%",display:"flex",flexDirection:"column"},children:(0,d.jsx)(aQ,{})})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66045:(a,b,c)=>{Promise.resolve().then(c.bind(c,42389))},66335:(a,b,c)=>{"use strict";c.d(b,{A:()=>e});var d=c(38301);let e=a=>{let b=d.useRef({});return d.useEffect(()=>{b.current=a}),b.current}},71804:(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:["executions",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,42389)),"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\executions\\page.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\\executions\\page.tsx"],K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/executions/page",pathname:"/executions",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:I},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var D;let H="/executions/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}}},73520:(a,b,c)=>{"use strict";c.d(b,{A:()=>p});var d=c(38301),e=c(43249),f=c(2783),g=c(18168),h=c(6636),i=c(29565),j=c(33105);function k(a){return(0,j.Ay)("MuiFormGroup",a)}(0,i.A)("MuiFormGroup",["root","row","error"]);var l=c(49628),m=c(83738),n=c(21124);let o=(0,g.Ay)("div",{name:"MuiFormGroup",slot:"Root",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.root,c.row&&b.row]}})({display:"flex",flexDirection:"column",flexWrap:"wrap",variants:[{props:{row:!0},style:{flexDirection:"row"}}]}),p=d.forwardRef(function(a,b){let c=(0,h.b)({props:a,name:"MuiFormGroup"}),{className:d,row:g=!1,...i}=c,j=(0,l.A)(),p=(0,m.A)({props:c,muiFormControl:j,states:["error"]}),q={...c,row:g,error:p.error},r=(a=>{let{classes:b,row:c,error:d}=a;return(0,f.A)({root:["root",c&&"row",d&&"error"]},k,b)})(q);return(0,n.jsx)(o,{className:(0,e.A)(r.root,d),ownerState:q,ref:b,...i})})},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[5873,3648,3984,8445,4578,8745,3030,3489,3312,4836,5148,8216,3298,6306,8572,6745,4677,9427,1083,472,4793,856,9165],()=>b(b.s=71804));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","../../chunks/1083.js","../../chunks/
|
|
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","../../chunks/1083.js","../../chunks/3030.js","../../chunks/3298.js","../../chunks/3312.js","../../chunks/3489.js","../../chunks/3648.js","../../chunks/3984.js","../../chunks/4578.js","../../chunks/4677.js","../../chunks/472.js","../../chunks/4793.js","../../chunks/4836.js","../../chunks/5148.js","../../chunks/558.js","../../chunks/5873.js","../../chunks/6306.js","../../chunks/6745.js","../../chunks/8216.js","../../chunks/8445.js","../../chunks/856.js","../../chunks/8572.js","../../chunks/8745.js","../../chunks/9165.js","../../chunks/9427.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/executions/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"4474":{"*":{"id":"8521","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}},"15278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"17989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"24431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"24437":{"*":{"id":"24207","name":"*","chunks":[],"async":false}},"25635":{"*":{"id":"79515","name":"*","chunks":[],"async":false}},"26756":{"*":{"id":"29039","name":"*","chunks":[],"async":false}},"27879":{"*":{"id":"92093","name":"*","chunks":[],"async":false}},"31932":{"*":{"id":"44930","name":"*","chunks":[],"async":false}},"36552":{"*":{"id":"52402","name":"*","chunks":[],"async":false}},"43856":{"*":{"id":"84608","name":"*","chunks":[],"async":false}},"52759":{"*":{"id":"76841","name":"*","chunks":[],"async":false}},"57150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"58812":{"*":{"id":"78354","name":"*","chunks":[],"async":false}},"62560":{"*":{"id":"76448","name":"*","chunks":[],"async":false}},"63886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"71113":{"*":{"id":"63904","name":"*","chunks":[],"async":false}},"72403":{"*":{"id":"49428","name":"*","chunks":[],"async":false}},"80622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"81959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"89547":{"*":{"id":"71779","name":"*","chunks":[],"async":false}},"94049":{"*":{"id":"81637","name":"*","chunks":[],"async":false}},"94929":{"*":{"id":"61615","name":"*","chunks":[],"async":false}},"95791":{"*":{"id":"96369","name":"*","chunks":[],"async":false}},"98924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\builtin\\global-error.js":{"id":57150,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\builtin\\global-error.js":{"id":57150,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\client-page.js":{"id":81959,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\client-page.js":{"id":81959,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\client-segment.js":{"id":17989,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\client-segment.js":{"id":17989,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\http-access-fallback\\error-boundary.js":{"id":63886,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\http-access-fallback\\error-boundary.js":{"id":63886,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\metadata\\async-metadata.js":{"id":15278,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\metadata\\async-metadata.js":{"id":15278,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js":{"id":98924,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\render-from-template-context.js":{"id":98924,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\lib\\framework\\boundary-components.js":{"id":24431,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\lib\\framework\\boundary-components.js":{"id":24431,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\lib\\metadata\\generate\\icon-mark.js":{"id":80622,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\lib\\metadata\\generate\\icon-mark.js":{"id":80622,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\font\\google\\target.css?{\"path\":\"src\\\\app\\\\layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":59742,"name":"*","chunks":["7177","static/chunks/app/layout-2ebf01d97702a18a.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\font\\google\\target.css?{\"path\":\"src\\\\app\\\\layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":3946,"name":"*","chunks":["7177","static/chunks/app/layout-2ebf01d97702a18a.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\globals.css":{"id":13673,"name":"*","chunks":["7177","static/chunks/app/layout-2ebf01d97702a18a.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\frontend\\components\\AppWrapper.tsx":{"id":72403,"name":"*","chunks":["7177","static/chunks/app/layout-2ebf01d97702a18a.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\chat\\page.tsx":{"id":62560,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\docs\\page.tsx":{"id":71113,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\executions\\page.tsx":{"id":31932,"name":"*","chunks":["2678","static/chunks/2678-c88052addfb0478a.js","4754","static/chunks/4754-5c62bb61142f82d1.js","9244","static/chunks/9244-3281f7fd02003a2c.js","8548","static/chunks/8548-8e4a95334064e8b2.js","1983","static/chunks/1983-242862b3dc022a26.js","1871","static/chunks/1871-dd8c10ed9d37100b.js","2003","static/chunks/2003-460f30484998c05d.js","5501","static/chunks/5501-f5b093c8dfd74196.js","488","static/chunks/488-623d07c3fbc21e28.js","3272","static/chunks/3272-fd8d59523f61da96.js","3077","static/chunks/3077-565833c67440a7fa.js","8598","static/chunks/8598-1b627b3d682b364a.js","9659","static/chunks/9659-a279e3aaba407251.js","9451","static/chunks/9451-680fa09f81f18806.js","2403","static/chunks/2403-5c26e0abd76095b1.js","7687","static/chunks/7687-7edf1a6e1f063b08.js","9554","static/chunks/9554-cb5bd72cb40e8dbe.js","6731","static/chunks/6731-c230e88cf0032609.js","812","static/chunks/812-624e93f4c0f671c7.js","7430","static/chunks/7430-6e78aaeac66988a9.js","1488","static/chunks/app/executions/page-d72027b0179e8fa2.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\flows\\page.tsx":{"id":52759,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\mcp\\page.tsx":{"id":95791,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\page.tsx":{"id":89547,"name":"*","chunks":["2678","static/chunks/2678-c88052addfb0478a.js","4754","static/chunks/4754-5c62bb61142f82d1.js","9244","static/chunks/9244-3281f7fd02003a2c.js","8548","static/chunks/8548-8e4a95334064e8b2.js","1983","static/chunks/1983-242862b3dc022a26.js","1871","static/chunks/1871-dd8c10ed9d37100b.js","2003","static/chunks/2003-460f30484998c05d.js","3077","static/chunks/3077-565833c67440a7fa.js","2619","static/chunks/2619-04bc32f026a0d946.js","8834","static/chunks/8834-bda798efab40c60a.js","9164","static/chunks/9164-d9f1abba780231e0.js","8974","static/chunks/app/page-a859e4dbd180df98.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\settings\\page.tsx":{"id":58812,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\waves\\page.tsx":{"id":26756,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\error.tsx":{"id":27879,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Box\\Box.js":{"id":94049,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\CircularProgress\\CircularProgress.js":{"id":4474,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Typography\\Typography.js":{"id":25635,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\shared\\lib\\lazy-dynamic\\dynamic-bailout-to-csr.js":{"id":24437,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\shared\\lib\\lazy-dynamic\\dynamic-bailout-to-csr.js":{"id":24437,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\shared\\lib\\lazy-dynamic\\preload-chunks.js":{"id":36552,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\shared\\lib\\lazy-dynamic\\preload-chunks.js":{"id":36552,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\ModelClient.tsx":{"id":43856,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\frontend\\components\\shared\\Spinner.tsx":{"id":94929,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\":[],"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\layout":[{"inlined":false,"path":"static/css/b496025c9cd768cc.css"},{"inlined":false,"path":"static/css/599369d853c61df7.css"},{"inlined":false,"path":"static/css/39393a79f7cb0dee.css"}],"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\page":[],"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\executions\\page":[]},"rscModuleMapping":{"4474":{"*":{"id":"65251","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}},"13673":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"15278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"17989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"24431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"24437":{"*":{"id":"69389","name":"*","chunks":[],"async":false}},"25635":{"*":{"id":"16825","name":"*","chunks":[],"async":false}},"26756":{"*":{"id":"71494","name":"*","chunks":[],"async":false}},"27879":{"*":{"id":"14867","name":"*","chunks":[],"async":false}},"31932":{"*":{"id":"42389","name":"*","chunks":[],"async":false}},"36552":{"*":{"id":"63112","name":"*","chunks":[],"async":false}},"43856":{"*":{"id":"2671","name":"*","chunks":[],"async":false}},"52759":{"*":{"id":"10057","name":"*","chunks":[],"async":false}},"57150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"58812":{"*":{"id":"85431","name":"*","chunks":[],"async":false}},"62560":{"*":{"id":"22516","name":"*","chunks":[],"async":false}},"63886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"71113":{"*":{"id":"65793","name":"*","chunks":[],"async":false}},"72403":{"*":{"id":"41306","name":"*","chunks":[],"async":false}},"80622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"81959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"89547":{"*":{"id":"60967","name":"*","chunks":[],"async":false}},"94049":{"*":{"id":"73737","name":"*","chunks":[],"async":false}},"94929":{"*":{"id":"37997","name":"*","chunks":[],"async":false}},"95791":{"*":{"id":"51016","name":"*","chunks":[],"async":false}},"98924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/executions/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"4474":{"*":{"id":"8521","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}},"15278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"17989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"24431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"24437":{"*":{"id":"24207","name":"*","chunks":[],"async":false}},"25635":{"*":{"id":"79515","name":"*","chunks":[],"async":false}},"27879":{"*":{"id":"92093","name":"*","chunks":[],"async":false}},"32533":{"*":{"id":"96014","name":"*","chunks":[],"async":false}},"36552":{"*":{"id":"52402","name":"*","chunks":[],"async":false}},"46487":{"*":{"id":"56146","name":"*","chunks":[],"async":false}},"47743":{"*":{"id":"69038","name":"*","chunks":[],"async":false}},"57150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"63886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"68190":{"*":{"id":"96489","name":"*","chunks":[],"async":false}},"68324":{"*":{"id":"61767","name":"*","chunks":[],"async":false}},"71113":{"*":{"id":"63904","name":"*","chunks":[],"async":false}},"72403":{"*":{"id":"49428","name":"*","chunks":[],"async":false}},"80622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"81959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"89547":{"*":{"id":"71779","name":"*","chunks":[],"async":false}},"94049":{"*":{"id":"81637","name":"*","chunks":[],"async":false}},"94929":{"*":{"id":"61615","name":"*","chunks":[],"async":false}},"95791":{"*":{"id":"73927","name":"*","chunks":[],"async":false}},"96255":{"*":{"id":"32148","name":"*","chunks":[],"async":false}},"98924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\builtin\\global-error.js":{"id":57150,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\builtin\\global-error.js":{"id":57150,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\client-page.js":{"id":81959,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\client-page.js":{"id":81959,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\client-segment.js":{"id":17989,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\client-segment.js":{"id":17989,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\http-access-fallback\\error-boundary.js":{"id":63886,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\http-access-fallback\\error-boundary.js":{"id":63886,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\metadata\\async-metadata.js":{"id":15278,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\metadata\\async-metadata.js":{"id":15278,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\client\\components\\render-from-template-context.js":{"id":98924,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\client\\components\\render-from-template-context.js":{"id":98924,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\lib\\framework\\boundary-components.js":{"id":24431,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\lib\\framework\\boundary-components.js":{"id":24431,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\lib\\metadata\\generate\\icon-mark.js":{"id":80622,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\lib\\metadata\\generate\\icon-mark.js":{"id":80622,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\font\\google\\target.css?{\"path\":\"src\\\\app\\\\layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":59742,"name":"*","chunks":["7177","static/chunks/app/layout-e6fbae80e0f456a6.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\font\\google\\target.css?{\"path\":\"src\\\\app\\\\layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":3946,"name":"*","chunks":["7177","static/chunks/app/layout-e6fbae80e0f456a6.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\globals.css":{"id":13673,"name":"*","chunks":["7177","static/chunks/app/layout-e6fbae80e0f456a6.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\frontend\\components\\AppWrapper.tsx":{"id":72403,"name":"*","chunks":["7177","static/chunks/app/layout-e6fbae80e0f456a6.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\chat\\page.tsx":{"id":96255,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\docs\\page.tsx":{"id":71113,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\executions\\page.tsx":{"id":68324,"name":"*","chunks":["3862","static/chunks/1a258343-bcffff1604e3797c.js","2678","static/chunks/2678-c88052addfb0478a.js","4754","static/chunks/4754-5c62bb61142f82d1.js","9244","static/chunks/9244-3281f7fd02003a2c.js","7274","static/chunks/7274-1184563607f2b5f5.js","1871","static/chunks/1871-14c3e63ca865d85e.js","9704","static/chunks/9704-6b7415964d7c042a.js","2003","static/chunks/2003-7710c23acaef11c9.js","9562","static/chunks/9562-b7922ceb400ec536.js","488","static/chunks/488-623d07c3fbc21e28.js","3272","static/chunks/3272-fd8d59523f61da96.js","8470","static/chunks/8470-72cf748472d4d501.js","3077","static/chunks/3077-565833c67440a7fa.js","8598","static/chunks/8598-1b627b3d682b364a.js","9240","static/chunks/9240-d0a51f4d504f34b1.js","2403","static/chunks/2403-5c26e0abd76095b1.js","3333","static/chunks/3333-b7b3e5758a568013.js","3556","static/chunks/3556-3b6f7c99b015b752.js","1731","static/chunks/1731-6e45fb529f9044a3.js","9554","static/chunks/9554-cb5bd72cb40e8dbe.js","4690","static/chunks/4690-ec7d397cfacedac3.js","8607","static/chunks/8607-5787e42775fc3acb.js","3109","static/chunks/3109-11bdec9bdfd996c3.js","812","static/chunks/812-624e93f4c0f671c7.js","2566","static/chunks/2566-6e2b9d9349814789.js","5336","static/chunks/5336-81da1080de29ebfc.js","1488","static/chunks/app/executions/page-c18708ed96d228ec.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\flows\\page.tsx":{"id":47743,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\mcp\\page.tsx":{"id":95791,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\page.tsx":{"id":89547,"name":"*","chunks":["2678","static/chunks/2678-c88052addfb0478a.js","4754","static/chunks/4754-5c62bb61142f82d1.js","9244","static/chunks/9244-3281f7fd02003a2c.js","7274","static/chunks/7274-1184563607f2b5f5.js","1871","static/chunks/1871-14c3e63ca865d85e.js","2003","static/chunks/2003-7710c23acaef11c9.js","3077","static/chunks/3077-565833c67440a7fa.js","4523","static/chunks/4523-a540747aa2ed34e8.js","8834","static/chunks/8834-faf121e257b517d5.js","9164","static/chunks/9164-829ab5b085ec06d6.js","8974","static/chunks/app/page-0a95c40a65dbd2eb.js"],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\settings\\page.tsx":{"id":46487,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\waves\\page.tsx":{"id":68190,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\error.tsx":{"id":27879,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Box\\Box.js":{"id":94049,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\CircularProgress\\CircularProgress.js":{"id":4474,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\@mui\\material\\Typography\\Typography.js":{"id":25635,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\shared\\lib\\lazy-dynamic\\dynamic-bailout-to-csr.js":{"id":24437,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\shared\\lib\\lazy-dynamic\\dynamic-bailout-to-csr.js":{"id":24437,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\shared\\lib\\lazy-dynamic\\preload-chunks.js":{"id":36552,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\node_modules\\next\\dist\\esm\\shared\\lib\\lazy-dynamic\\preload-chunks.js":{"id":36552,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\models\\ModelClient.tsx":{"id":32533,"name":"*","chunks":[],"async":false},"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\frontend\\components\\shared\\Spinner.tsx":{"id":94929,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\":[],"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\layout":[{"inlined":false,"path":"static/css/b496025c9cd768cc.css"},{"inlined":false,"path":"static/css/599369d853c61df7.css"},{"inlined":false,"path":"static/css/40f9bef305b11bf5.css"}],"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\page":[],"C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\app\\executions\\page":[]},"rscModuleMapping":{"4474":{"*":{"id":"65251","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}},"13673":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"15278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"17989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"24431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"24437":{"*":{"id":"69389","name":"*","chunks":[],"async":false}},"25635":{"*":{"id":"16825","name":"*","chunks":[],"async":false}},"27879":{"*":{"id":"14867","name":"*","chunks":[],"async":false}},"32533":{"*":{"id":"2671","name":"*","chunks":[],"async":false}},"36552":{"*":{"id":"63112","name":"*","chunks":[],"async":false}},"46487":{"*":{"id":"85431","name":"*","chunks":[],"async":false}},"47743":{"*":{"id":"10057","name":"*","chunks":[],"async":false}},"57150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"63886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"68190":{"*":{"id":"71494","name":"*","chunks":[],"async":false}},"68324":{"*":{"id":"42389","name":"*","chunks":[],"async":false}},"71113":{"*":{"id":"65793","name":"*","chunks":[],"async":false}},"72403":{"*":{"id":"41306","name":"*","chunks":[],"async":false}},"80622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"81959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"89547":{"*":{"id":"60967","name":"*","chunks":[],"async":false}},"94049":{"*":{"id":"73737","name":"*","chunks":[],"async":false}},"94929":{"*":{"id":"37997","name":"*","chunks":[],"async":false}},"95791":{"*":{"id":"51016","name":"*","chunks":[],"async":false}},"96255":{"*":{"id":"22516","name":"*","chunks":[],"async":false}},"98924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|