flujo-ai 3.10.0 → 3.11.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 +110 -110
- package/.next/app-path-routes-manifest.json +5 -5
- package/.next/build-manifest.json +5 -5
- package/.next/prerender-manifest.json +15 -15
- package/.next/react-loadable-manifest.json +7 -7
- package/.next/server/app/_not-found/page.js +1 -1
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- 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 +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 -2
- package/.next/server/app/api/browse/route.js.nft.json +1 -1
- package/.next/server/app/api/browse/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/cwd/route.js +1 -2
- package/.next/server/app/api/cwd/route.js.nft.json +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 +2 -2
- package/.next/server/app/api/env/route.js.nft.json +1 -1
- package/.next/server/app/api/env/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/[id]/route.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/prompt-renderer/route.js +2 -2
- 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/route.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 +4 -5
- package/.next/server/app/api/git/route.js.nft.json +1 -1
- package/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/init/route.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/mcp/cancel/route.js +2 -2
- 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 +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 +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 +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 +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 +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 +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 +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 +1 -2
- 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.js +1 -1
- package/.next/server/app/api/mcp-registry/spotlight/route.js.nft.json +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 +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 +2 -2
- 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 +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 +2 -2
- 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.js +2 -2
- package/.next/server/app/api/oauth/callback/route.js.nft.json +1 -1
- package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/initiate/route.js +2 -2
- package/.next/server/app/api/oauth/initiate/route.js.nft.json +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 +2 -2
- 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 +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 +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 +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.js +1 -2
- package/.next/server/app/api/planned-executions/preview-schedule/route.js.nft.json +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/route.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/storage/route.js +1 -1
- package/.next/server/app/api/storage/route.js.nft.json +1 -1
- package/.next/server/app/api/storage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/update/route.js +1 -2
- package/.next/server/app/api/update/route.js.nft.json +1 -1
- package/.next/server/app/api/update/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 +1 -1
- 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 +2 -2
- package/.next/server/app/docs/page.js +1 -1
- 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 +1 -1
- package/.next/server/app/executions/page.js +1 -1
- 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 +1 -1
- package/.next/server/app/flows/page.js +1 -1
- 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 +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +2 -2
- package/.next/server/app/mcp/page.js +1 -1
- 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 +2 -2
- 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 +1 -1
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page.js +2 -2
- 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 +2 -2
- package/.next/server/app/v1/chat/completions/route.js +2 -2
- 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 +2 -2
- 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 +6 -6
- 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]/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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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-paths-manifest.json +5 -5
- package/.next/server/chunks/{5873.js → 1331.js} +3 -3
- package/.next/server/chunks/1403.js +2 -2
- package/.next/server/chunks/1692.js +1 -1
- package/.next/server/chunks/1905.js +2 -2
- package/.next/server/chunks/{5547.js → 2287.js} +2 -2
- package/.next/server/chunks/3984.js +2 -2
- package/.next/server/chunks/4706.js +1 -1
- package/.next/server/chunks/4729.js +2 -2
- package/.next/server/chunks/5389.js +4 -4
- package/.next/server/chunks/5504.js +17 -0
- package/.next/server/chunks/5734.js +2 -2
- package/.next/server/chunks/7214.js +1 -1
- package/.next/server/chunks/724.js +1 -1
- package/.next/server/chunks/7506.js +1 -1
- package/.next/server/chunks/{473.js → 7731.js} +2 -2
- package/.next/server/chunks/{4323.js → 8126.js} +1 -1
- package/.next/server/chunks/8739.js +2 -1
- package/.next/server/chunks/9343.js +1 -1
- package/.next/server/chunks/{120.js → 9387.js} +2 -2
- package/.next/server/chunks/{6637.js → 9688.js} +2 -2
- package/.next/server/chunks/9938.js +1 -1
- package/.next/server/chunks/9989.js +1 -1
- package/.next/server/functions-config-manifest.json +2 -2
- package/.next/server/middleware-build-manifest.js +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/static/chunks/3217.1a7e24fd70294370.js +1 -0
- package/.next/static/chunks/3545.d3a512315a9fce3e.js +1 -0
- package/.next/static/chunks/9164-d15e4dab0a1bf282.js +1 -0
- package/.next/static/chunks/9195.294887f083b1a11b.js +1 -0
- package/.next/static/chunks/app/models/page-d81d2b1fe2f1d063.js +1 -0
- package/.next/static/chunks/app/page-6e18a8cd78b2050e.js +1 -0
- package/.next/static/chunks/app/settings/page-d03a168f6efbf7fd.js +1 -0
- package/.next/static/chunks/{webpack-6f17a022ac16e8bd.js → webpack-63a4c59e84967e90.js} +1 -1
- package/.next/trace +7 -7
- package/README.md +1 -1
- package/package.json +1 -1
- package/.next/server/chunks/2181.js +0 -17
- package/.next/server/chunks/2372.js +0 -2
- package/.next/static/chunks/3217.79ca74c918fc772c.js +0 -1
- package/.next/static/chunks/3545.c3fbe14528517a75.js +0 -1
- package/.next/static/chunks/9164-81ca1a1bccdc5ed2.js +0 -1
- package/.next/static/chunks/9195.01a57af6d6cdf1a5.js +0 -1
- package/.next/static/chunks/app/models/page-f43476ea07d5b501.js +0 -1
- package/.next/static/chunks/app/page-471879d3918aeeb6.js +0 -1
- package/.next/static/chunks/app/settings/page-88f7e1b65a6681ec.js +0 -1
- /package/.next/static/{geAgl8xNIf0s1v2mfu4tE → 9Pzu8N65j3JuRQ7zVUtwD}/_buildManifest.js +0 -0
- /package/.next/static/{geAgl8xNIf0s1v2mfu4tE → 9Pzu8N65j3JuRQ7zVUtwD}/_ssgManifest.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
exports.id=
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(b,"D",{enumerable:!0,get:function(){return c}})},68633:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{decryptActionBoundArgs:function(){return s},encryptActionBoundArgs:function(){return r}}),c(77925);let d=c(97954),e=c(27825),f=c(47686),g=c(77533),h=c(63033),i=c(26906),j=function(a){return a&&a.__esModule?a:{default:a}}(c(74515)),k=new TextEncoder,l=new TextDecoder,m=void 0,n=void 0;async function o(a,b){let c=await (0,g.getActionEncryptionKey)();if(void 0===c)throw Object.defineProperty(Error("Missing encryption key for Server Action. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E65",enumerable:!1,configurable:!0});let d=atob(b),e=d.slice(0,16),f=d.slice(16),h=l.decode(await (0,g.decrypt)(c,(0,g.stringToUint8Array)(e),(0,g.stringToUint8Array)(f)));if(!h.startsWith(a))throw Object.defineProperty(Error("Invalid Server Action payload: failed to decrypt."),"__NEXT_ERROR_CODE",{value:"E191",enumerable:!1,configurable:!0});return h.slice(a.length)}async function p(a,b){let c=await (0,g.getActionEncryptionKey)();if(void 0===c)throw Object.defineProperty(Error("Missing encryption key for Server Action. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E65",enumerable:!1,configurable:!0});let d=new Uint8Array(16);h.workUnitAsyncStorage.exit(()=>crypto.getRandomValues(d));let e=(0,g.arrayBufferToString)(d.buffer),f=await (0,g.encrypt)(c,d,k.encode(a+b));return btoa(e+(0,g.arrayBufferToString)(f))}var q=function(a){return a[a.Ready=0]="Ready",a[a.Pending=1]="Pending",a[a.Complete=2]="Complete",a}(q||{});let r=j.default.cache(async function a(b,...c){let e=h.workUnitAsyncStorage.getStore(),j=e?(0,h.getCacheSignal)(e):void 0,{clientModules:k}=(0,g.getClientReferenceManifestForRsc)(),l=Error();Error.captureStackTrace(l,a);let n=!1,o=e?(0,i.createHangingInputAbortSignal)(e):void 0,q=0;function r(){0===q&&(q=1,null==j||j.beginRead())}function s(){1===q&&(null==j||j.endRead()),q=2}o&&j&&o.addEventListener("abort",r,{once:!0});let t=await (0,f.streamToString)((0,d.renderToReadableStream)(c,k,{filterStackFrame:m,signal:o,onError(a){(null==o||!o.aborted)&&(n||(n=!0,l.message=a instanceof Error?a.message:String(a)))}}),o);if(n)throw s(),l;if(!e)return p(b,t);r();let u=(0,h.getPrerenderResumeDataCache)(e),v=(0,h.getRenderResumeDataCache)(e),w=b+t,x=(null==u?void 0:u.encryptedBoundArgs.get(w))??(null==v?void 0:v.encryptedBoundArgs.get(w));if(x)return x;let y=await p(b,t);return s(),null==u||u.encryptedBoundArgs.set(w,y),y});async function s(a,b){let c,d=await b,f=h.workUnitAsyncStorage.getStore();if(f){let b=(0,h.getCacheSignal)(f),e=(0,h.getPrerenderResumeDataCache)(f),g=(0,h.getRenderResumeDataCache)(f);(c=(null==e?void 0:e.decryptedBoundArgs.get(d))??(null==g?void 0:g.decryptedBoundArgs.get(d)))||(null==b||b.beginRead(),c=await o(a,d),null==b||b.endRead(),null==e||e.decryptedBoundArgs.set(d,c))}else c=await o(a,d);let{edgeRscModuleMapping:i,rscModuleMapping:j}=(0,g.getClientReferenceManifestForRsc)();return await (0,e.createFromReadableStream)(new ReadableStream({start(a){switch(a.enqueue(k.encode(c)),null==f?void 0:f.type){case"prerender":case"prerender-runtime":f.renderSignal.aborted?a.close():f.renderSignal.addEventListener("abort",()=>a.close(),{once:!0});break;case"prerender-client":case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"private-cache":case"unstable-cache":case void 0:return a.close()}}}),{findSourceMapURL:n,serverConsumerManifest:{moduleLoading:null,moduleMap:j,serverModuleMap:(0,g.getServerModuleMap)()}})}},73456:(a,b,c)=>{"use strict";c.d(b,{G:()=>l,c:()=>k});var d=c(75879);c(68633);var e=c(50846),f=c(92372),g=c(46480),h=c(58739),i=c(51669);let j=(0,e.h)("backend/utils/resolveGlobalVars");async function k(a){j.debug("Entering resolveGlobalVars method");let b=await (0,f.YM)(g.Z.GLOBAL_ENV_VARS,{}),c=function(a){if(!a||"object"!=typeof a)return!1;let b=Object.keys(a);if(0===b.length)return!0;let c=a[b[0]];return c&&"object"==typeof c&&"value"in c&&"metadata"in c&&"object"==typeof c.metadata&&"isSecret"in c.metadata}(b);j.debug(`Loaded ${Object.keys(b).length} global environment variables (${c?"new":"old"} format)`);let d={};if(c)for(let[a,c]of Object.entries(b))d[a]=c.value;else d={...b};let e=async a=>{let b=a.match(/\$\{global:([^}]+)\}/g);if(!b)return a;let c=a;for(let a of b){let b=a.substring(9,a.length-1);if(void 0!==d[b]){let e=d[b];if(e.startsWith("encrypted:")){j.debug(`Decrypting encrypted global variable: ${b}`);try{let a=e.substring(10),c=await (0,h.decryptWithPassword)(a);if(c)e=c,j.debug(`Successfully decrypted global variable: ${b}`);else{j.warn(`Failed to decrypt global variable: ${b}`);continue}}catch(a){j.error(`Error decrypting global variable: ${b}`,a);continue}}else if(e.startsWith("encrypted_failed:")){j.warn(`Skipping failed encrypted global variable: ${b}`);continue}j.debug(`Resolved global variable: ${b}`),c=c.replace(a,e)}else j.warn(`Global variable not found: ${b}`)}return c},i=async a=>{if("string"==typeof a)return await e(a);if(Array.isArray(a))return await Promise.all(a.map(a=>i(a)));if(null!==a&&"object"==typeof a){let b={};for(let[c,d]of Object.entries(a))b[c]=await i(d);return b}return a},k=await i(a);return"object"==typeof a&&null!==a&&j.debug("Resolved global variables result:",JSON.stringify(k,null,2)),j.debug("Completed global variable resolution"),k}async function l(a,b=0){if(j.debug(`Entering resolveAndDecryptApiKey method (depth: ${b})`),!a)return j.warn("Empty value provided"),null;if(b>=10)return j.warn(`Maximum resolution depth reached (10) for value: ${a}`),a;let c=a;if(c.startsWith("encrypted:")){j.debug(`Decrypting encrypted value at depth ${b}`);try{let a=c.substring(10),d=await (0,h.decryptWithPassword)(a);if(!d)return j.warn(`Failed to decrypt value at depth ${b}`),null;j.debug(`Successfully decrypted value at depth ${b}`),j.verbose(d),c=d}catch(a){return j.error(`Error decrypting value at depth ${b}:`,a),null}}else c.startsWith("encrypted_failed:")&&(j.warn(`Skipping failed encrypted value at depth ${b}`),c=c.substring(17));if(c.includes("${global:")){j.debug(`Resolving global variables at depth ${b}`);try{let a=await k(c);if(j.verbose(a),a!==c)return j.debug(`Value changed after resolving globals at depth ${b}, processing recursively`),l(a,b+1);c=a}catch(a){return j.error(`Error resolving global variables at depth ${b}:`,a),null}}return j.debug(`Completed resolveAndDecryptApiKey at depth ${b}`),c}(0,i.D)([k,l]),(0,d.A)(k,"40520b537d1d43f510acbccd60e3e7d42ce215c157",null),(0,d.A)(l,"60de87c4c5950c080550cb766970e88ae9c9a0ca25",null)},75879:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(97954)},78335:()=>{},79989:(a,b,c)=>{"use strict";c.d(b,{flowService:()=>k});var d=c(32524),e=c(92372),f=c(46480);let g=(0,c(50846).h)("backend/services/flow/index"),h=f.Z.FLOWS;async function i(){return global.__flujo_flowsMigration||(global.__flujo_flowsMigration=(async()=>{try{await (0,e.w5)(f.Z.FLOWS,h,a=>a.id)}catch(a){g.error("Flow storage migration failed",a),global.__flujo_flowsMigration=void 0}})()),global.__flujo_flowsMigration}class j{get flowsCache(){return global.__flujo_flowsCache??null}set flowsCache(a){global.__flujo_flowsCache=a}async loadFlows(){try{if(this.flowsCache)return g.debug("Using cached flows"),this.flowsCache;g.debug("Loading flows from storage"),await i();let a=await (0,e.pL)(h);return this.flowsCache=a,g.info("Loaded flows from storage",{count:a.length}),a}catch(a){return g.error("Failed to load flows",a),[]}}async getFlow(a){try{g.debug(`Getting flow by ID: ${a}`);let b=this.flowsCache?.find(b=>b.id===a)||null;if(b)return g.debug(`Flow ${a} found in cache`),b;await i();let c=null;try{c=await (0,e.EI)(h,a,null)}catch(b){g.debug(`getFlow: could not load flow ${a}`,b),c=null}if(c&&this.flowsCache){let a=this.flowsCache,b=a.findIndex(a=>a.id===c.id);b>=0?a[b]=c:a.push(c),this.flowsCache=a}return g.debug(`Flow ${a} ${c?"found":"not found"}`),c}catch(b){return g.error(`Failed to get flow ${a}`,b),null}}async invalidateExecutionCache(a){try{let{FlowExecutor:b}=await Promise.all([c.e(6996),c.e(1223),c.e(5734),c.e(1373),c.e(2181),c.e(724),c.e(1403)]).then(c.bind(c,91403));b.clearFlowCache(a),g.debug("Invalidated execution flow cache",{flowId:a??"all"})}catch(a){g.warn("Failed to invalidate execution flow cache",a)}}async saveFlow(a){try{g.debug(`Saving flow: ${a.id}`,{name:a.name}),(0,e.ln)(a.id),await i(),await (0,e.Vt)(h,a.id,a);let b=this.flowsCache;if(b){let c=b.findIndex(b=>b.id===a.id);c>=0?b[c]=a:b.push(a),this.flowsCache=b}return await this.invalidateExecutionCache(a.id),g.info(`Flow ${a.id} saved successfully`),{success:!0}}catch(a){return g.error("Failed to save flow",a),{success:!1,error:a instanceof Error?a.message:"Failed to save flow"}}}async deleteFlow(a){try{g.debug(`Deleting flow: ${a}`),await i(),await (0,e.bB)(h,a);let b=this.flowsCache;return b&&(this.flowsCache=b.filter(b=>b.id!==a)),await this.invalidateExecutionCache(a),g.info(`Flow ${a} deleted successfully`),{success:!0}}catch(b){return g.error(`Failed to delete flow: ${a}`,b),{success:!1,error:b instanceof Error?b.message:"Failed to delete flow"}}}createNode(a,b){g.debug(`Creating new node of type: ${a}`,{position:b});let c={id:(0,d.A)(),type:a,position:b,data:{label:`${"mcp"===a?"MCP":a.charAt(0).toUpperCase()+a.slice(1)} Node`,type:a,properties:{}}};return g.debug(`Node created with ID: ${c.id}`),c}createNewFlow(a="NewFlow"){g.debug(`Creating new flow: ${a}`);let b={id:(0,d.A)(),type:"start",position:{x:250,y:150},data:{label:"Start Node",type:"start",properties:{promptTemplate:""}}},c={id:(0,d.A)(),name:a,nodes:[b],edges:[]};return g.info(`New flow created with ID: ${c.id}`,{name:a}),c}createHistoryEntry(a,b){return g.debug("Creating history entry",{nodeCount:a.length,edgeCount:b.length}),{nodes:[...a],edges:[...b]}}generateSampleFlow(a="Sample Flow"){g.debug(`Generating sample flow: ${a}`);let b={id:(0,d.A)(),name:a,nodes:[{id:"1",type:"start",position:{x:250,y:50},data:{label:"Start Node",type:"start",properties:{prompt:"Enter your query here",systemMessage:"You are a helpful assistant",temperature:0}}},{id:"2",type:"process",position:{x:250,y:200},data:{label:"Process Node",type:"process",properties:{operation:"transform",enabled:!0}}},{id:"3",type:"finish",position:{x:250,y:350},data:{label:"Finish Node",type:"finish",properties:{format:"json",template:'{ "result": {{data}} }'}}},{id:"4",type:"mcp",position:{x:450,y:200},data:{label:"MCP Node",type:"mcp",properties:{channels:2,mode:"parallel"}}}],edges:[{id:"e1-2",source:"1",target:"2",type:"custom"},{id:"e2-3",source:"2",target:"3",type:"custom"}]};return g.info(`Sample flow generated with ID: ${b.id}`,{name:a}),b}async listFlows(){g.debug("listFlows: Entering method");try{let a=await this.loadFlows();return{success:!0,flows:a}}catch(a){return g.warn("listFlows: Failed to list flows:",a),{success:!1,error:a instanceof Error?a.message:"Failed to list flows"}}}}let k=new j},96487:()=>{}};
|
|
1
|
+
exports.id=9688,exports.ids=[8126,9688,9989],exports.modules={947:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"40520b537d1d43f510acbccd60e3e7d42ce215c157":()=>d.c,"60de87c4c5950c080550cb766970e88ae9c9a0ca25":()=>d.G});var d=c(73456)},3676:(a,b,c)=>{"use strict";c.d(b,{Wj:()=>h,ln:()=>g});var d=c(10641),e=c(58739);let f="encryption_locked";async function g(){return(0,e.isEncryptionLocked)()}async function h(a){return await g()?a?.openai?d.NextResponse.json({error:{message:"Encryption is locked. Unlock FLUJO to continue.",type:f,code:f,param:null}},{status:423}):d.NextResponse.json({error:f},{status:423}):null}},29715:(a,b,c)=>{"use strict";c.d(b,{N:()=>h});var d=c(91403),e=c(92372),f=c(60184);let g=(0,c(50846).h)("backend/execution/flow/loadConversationState");async function h(a){if(d.FlowExecutor.conversationStates.has(a))return g.debug("Loaded state from memory",{conversationId:a}),d.FlowExecutor.conversationStates.get(a);let b=`conversations/${a}`;try{let c=await (0,e.YM)(b,void 0);if(c)return g.debug("Loaded state from storage",{conversationId:a}),await (0,f.jM)(c),d.FlowExecutor.conversationStates.set(a,c),c}catch(b){g.warn("Error loading conversation state from storage",{conversationId:a,error:b})}}},51669:(a,b)=>{"use strict";function c(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(b,"D",{enumerable:!0,get:function(){return c}})},68633:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{decryptActionBoundArgs:function(){return s},encryptActionBoundArgs:function(){return r}}),c(77925);let d=c(97954),e=c(27825),f=c(47686),g=c(77533),h=c(63033),i=c(26906),j=function(a){return a&&a.__esModule?a:{default:a}}(c(74515)),k=new TextEncoder,l=new TextDecoder,m=void 0,n=void 0;async function o(a,b){let c=await (0,g.getActionEncryptionKey)();if(void 0===c)throw Object.defineProperty(Error("Missing encryption key for Server Action. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E65",enumerable:!1,configurable:!0});let d=atob(b),e=d.slice(0,16),f=d.slice(16),h=l.decode(await (0,g.decrypt)(c,(0,g.stringToUint8Array)(e),(0,g.stringToUint8Array)(f)));if(!h.startsWith(a))throw Object.defineProperty(Error("Invalid Server Action payload: failed to decrypt."),"__NEXT_ERROR_CODE",{value:"E191",enumerable:!1,configurable:!0});return h.slice(a.length)}async function p(a,b){let c=await (0,g.getActionEncryptionKey)();if(void 0===c)throw Object.defineProperty(Error("Missing encryption key for Server Action. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E65",enumerable:!1,configurable:!0});let d=new Uint8Array(16);h.workUnitAsyncStorage.exit(()=>crypto.getRandomValues(d));let e=(0,g.arrayBufferToString)(d.buffer),f=await (0,g.encrypt)(c,d,k.encode(a+b));return btoa(e+(0,g.arrayBufferToString)(f))}var q=function(a){return a[a.Ready=0]="Ready",a[a.Pending=1]="Pending",a[a.Complete=2]="Complete",a}(q||{});let r=j.default.cache(async function a(b,...c){let e=h.workUnitAsyncStorage.getStore(),j=e?(0,h.getCacheSignal)(e):void 0,{clientModules:k}=(0,g.getClientReferenceManifestForRsc)(),l=Error();Error.captureStackTrace(l,a);let n=!1,o=e?(0,i.createHangingInputAbortSignal)(e):void 0,q=0;function r(){0===q&&(q=1,null==j||j.beginRead())}function s(){1===q&&(null==j||j.endRead()),q=2}o&&j&&o.addEventListener("abort",r,{once:!0});let t=await (0,f.streamToString)((0,d.renderToReadableStream)(c,k,{filterStackFrame:m,signal:o,onError(a){(null==o||!o.aborted)&&(n||(n=!0,l.message=a instanceof Error?a.message:String(a)))}}),o);if(n)throw s(),l;if(!e)return p(b,t);r();let u=(0,h.getPrerenderResumeDataCache)(e),v=(0,h.getRenderResumeDataCache)(e),w=b+t,x=(null==u?void 0:u.encryptedBoundArgs.get(w))??(null==v?void 0:v.encryptedBoundArgs.get(w));if(x)return x;let y=await p(b,t);return s(),null==u||u.encryptedBoundArgs.set(w,y),y});async function s(a,b){let c,d=await b,f=h.workUnitAsyncStorage.getStore();if(f){let b=(0,h.getCacheSignal)(f),e=(0,h.getPrerenderResumeDataCache)(f),g=(0,h.getRenderResumeDataCache)(f);(c=(null==e?void 0:e.decryptedBoundArgs.get(d))??(null==g?void 0:g.decryptedBoundArgs.get(d)))||(null==b||b.beginRead(),c=await o(a,d),null==b||b.endRead(),null==e||e.decryptedBoundArgs.set(d,c))}else c=await o(a,d);let{edgeRscModuleMapping:i,rscModuleMapping:j}=(0,g.getClientReferenceManifestForRsc)();return await (0,e.createFromReadableStream)(new ReadableStream({start(a){switch(a.enqueue(k.encode(c)),null==f?void 0:f.type){case"prerender":case"prerender-runtime":f.renderSignal.aborted?a.close():f.renderSignal.addEventListener("abort",()=>a.close(),{once:!0});break;case"prerender-client":case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"private-cache":case"unstable-cache":case void 0:return a.close()}}}),{findSourceMapURL:n,serverConsumerManifest:{moduleLoading:null,moduleMap:j,serverModuleMap:(0,g.getServerModuleMap)()}})}},73456:(a,b,c)=>{"use strict";c.d(b,{G:()=>l,c:()=>k});var d=c(75879);c(68633);var e=c(50846),f=c(92372),g=c(46480),h=c(58739),i=c(51669);let j=(0,e.h)("backend/utils/resolveGlobalVars");async function k(a){j.debug("Entering resolveGlobalVars method");let b=await (0,f.YM)(g.Z.GLOBAL_ENV_VARS,{}),c=function(a){if(!a||"object"!=typeof a)return!1;let b=Object.keys(a);if(0===b.length)return!0;let c=a[b[0]];return c&&"object"==typeof c&&"value"in c&&"metadata"in c&&"object"==typeof c.metadata&&"isSecret"in c.metadata}(b);j.debug(`Loaded ${Object.keys(b).length} global environment variables (${c?"new":"old"} format)`);let d={};if(c)for(let[a,c]of Object.entries(b))d[a]=c.value;else d={...b};let e=async a=>{let b=a.match(/\$\{global:([^}]+)\}/g);if(!b)return a;let c=a;for(let a of b){let b=a.substring(9,a.length-1);if(void 0!==d[b]){let e=d[b];if(e.startsWith("encrypted:")){j.debug(`Decrypting encrypted global variable: ${b}`);try{let a=e.substring(10),c=await (0,h.decryptWithPassword)(a);if(c)e=c,j.debug(`Successfully decrypted global variable: ${b}`);else{j.warn(`Failed to decrypt global variable: ${b}`);continue}}catch(a){j.error(`Error decrypting global variable: ${b}`,a);continue}}else if(e.startsWith("encrypted_failed:")){j.warn(`Skipping failed encrypted global variable: ${b}`);continue}j.debug(`Resolved global variable: ${b}`),c=c.replace(a,e)}else j.warn(`Global variable not found: ${b}`)}return c},i=async a=>{if("string"==typeof a)return await e(a);if(Array.isArray(a))return await Promise.all(a.map(a=>i(a)));if(null!==a&&"object"==typeof a){let b={};for(let[c,d]of Object.entries(a))b[c]=await i(d);return b}return a},k=await i(a);return"object"==typeof a&&null!==a&&j.debug("Resolved global variables result:",JSON.stringify(k,null,2)),j.debug("Completed global variable resolution"),k}async function l(a,b=0){if(j.debug(`Entering resolveAndDecryptApiKey method (depth: ${b})`),!a)return j.warn("Empty value provided"),null;if(b>=10)return j.warn(`Maximum resolution depth reached (10) for value: ${a}`),a;let c=a;if(c.startsWith("encrypted:")){j.debug(`Decrypting encrypted value at depth ${b}`);try{let a=c.substring(10),d=await (0,h.decryptWithPassword)(a);if(!d)return j.warn(`Failed to decrypt value at depth ${b}`),null;j.debug(`Successfully decrypted value at depth ${b}`),j.verbose(d),c=d}catch(a){return j.error(`Error decrypting value at depth ${b}:`,a),null}}else c.startsWith("encrypted_failed:")&&(j.warn(`Skipping failed encrypted value at depth ${b}`),c=c.substring(17));if(c.includes("${global:")){j.debug(`Resolving global variables at depth ${b}`);try{let a=await k(c);if(j.verbose(a),a!==c)return j.debug(`Value changed after resolving globals at depth ${b}, processing recursively`),l(a,b+1);c=a}catch(a){return j.error(`Error resolving global variables at depth ${b}:`,a),null}}return j.debug(`Completed resolveAndDecryptApiKey at depth ${b}`),c}(0,i.D)([k,l]),(0,d.A)(k,"40520b537d1d43f510acbccd60e3e7d42ce215c157",null),(0,d.A)(l,"60de87c4c5950c080550cb766970e88ae9c9a0ca25",null)},75879:(a,b,c)=>{"use strict";Object.defineProperty(b,"A",{enumerable:!0,get:function(){return d.registerServerReference}});let d=c(97954)},78335:()=>{},79989:(a,b,c)=>{"use strict";c.d(b,{flowService:()=>k});var d=c(32524),e=c(92372),f=c(46480);let g=(0,c(50846).h)("backend/services/flow/index"),h=f.Z.FLOWS;async function i(){return global.__flujo_flowsMigration||(global.__flujo_flowsMigration=(async()=>{try{await (0,e.w5)(f.Z.FLOWS,h,a=>a.id)}catch(a){g.error("Flow storage migration failed",a),global.__flujo_flowsMigration=void 0}})()),global.__flujo_flowsMigration}class j{get flowsCache(){return global.__flujo_flowsCache??null}set flowsCache(a){global.__flujo_flowsCache=a}async loadFlows(){try{if(this.flowsCache)return g.debug("Using cached flows"),this.flowsCache;g.debug("Loading flows from storage"),await i();let a=await (0,e.pL)(h);return this.flowsCache=a,g.info("Loaded flows from storage",{count:a.length}),a}catch(a){return g.error("Failed to load flows",a),[]}}async getFlow(a){try{g.debug(`Getting flow by ID: ${a}`);let b=this.flowsCache?.find(b=>b.id===a)||null;if(b)return g.debug(`Flow ${a} found in cache`),b;await i();let c=null;try{c=await (0,e.EI)(h,a,null)}catch(b){g.debug(`getFlow: could not load flow ${a}`,b),c=null}if(c&&this.flowsCache){let a=this.flowsCache,b=a.findIndex(a=>a.id===c.id);b>=0?a[b]=c:a.push(c),this.flowsCache=a}return g.debug(`Flow ${a} ${c?"found":"not found"}`),c}catch(b){return g.error(`Failed to get flow ${a}`,b),null}}async invalidateExecutionCache(a){try{let{FlowExecutor:b}=await Promise.all([c.e(6996),c.e(1223),c.e(5734),c.e(1373),c.e(5504),c.e(724),c.e(1403)]).then(c.bind(c,91403));b.clearFlowCache(a),g.debug("Invalidated execution flow cache",{flowId:a??"all"})}catch(a){g.warn("Failed to invalidate execution flow cache",a)}}async saveFlow(a){try{g.debug(`Saving flow: ${a.id}`,{name:a.name}),(0,e.ln)(a.id),await i(),await (0,e.Vt)(h,a.id,a);let b=this.flowsCache;if(b){let c=b.findIndex(b=>b.id===a.id);c>=0?b[c]=a:b.push(a),this.flowsCache=b}return await this.invalidateExecutionCache(a.id),g.info(`Flow ${a.id} saved successfully`),{success:!0}}catch(a){return g.error("Failed to save flow",a),{success:!1,error:a instanceof Error?a.message:"Failed to save flow"}}}async deleteFlow(a){try{g.debug(`Deleting flow: ${a}`),await i(),await (0,e.bB)(h,a);let b=this.flowsCache;return b&&(this.flowsCache=b.filter(b=>b.id!==a)),await this.invalidateExecutionCache(a),g.info(`Flow ${a} deleted successfully`),{success:!0}}catch(b){return g.error(`Failed to delete flow: ${a}`,b),{success:!1,error:b instanceof Error?b.message:"Failed to delete flow"}}}createNode(a,b){g.debug(`Creating new node of type: ${a}`,{position:b});let c={id:(0,d.A)(),type:a,position:b,data:{label:`${"mcp"===a?"MCP":a.charAt(0).toUpperCase()+a.slice(1)} Node`,type:a,properties:{}}};return g.debug(`Node created with ID: ${c.id}`),c}createNewFlow(a="NewFlow"){g.debug(`Creating new flow: ${a}`);let b={id:(0,d.A)(),type:"start",position:{x:250,y:150},data:{label:"Start Node",type:"start",properties:{promptTemplate:""}}},c={id:(0,d.A)(),name:a,nodes:[b],edges:[]};return g.info(`New flow created with ID: ${c.id}`,{name:a}),c}createHistoryEntry(a,b){return g.debug("Creating history entry",{nodeCount:a.length,edgeCount:b.length}),{nodes:[...a],edges:[...b]}}generateSampleFlow(a="Sample Flow"){g.debug(`Generating sample flow: ${a}`);let b={id:(0,d.A)(),name:a,nodes:[{id:"1",type:"start",position:{x:250,y:50},data:{label:"Start Node",type:"start",properties:{prompt:"Enter your query here",systemMessage:"You are a helpful assistant",temperature:0}}},{id:"2",type:"process",position:{x:250,y:200},data:{label:"Process Node",type:"process",properties:{operation:"transform",enabled:!0}}},{id:"3",type:"finish",position:{x:250,y:350},data:{label:"Finish Node",type:"finish",properties:{format:"json",template:'{ "result": {{data}} }'}}},{id:"4",type:"mcp",position:{x:450,y:200},data:{label:"MCP Node",type:"mcp",properties:{channels:2,mode:"parallel"}}}],edges:[{id:"e1-2",source:"1",target:"2",type:"custom"},{id:"e2-3",source:"2",target:"3",type:"custom"}]};return g.info(`Sample flow generated with ID: ${b.id}`,{name:a}),b}async listFlows(){g.debug("listFlows: Entering method");try{let a=await this.loadFlows();return{success:!0,flows:a}}catch(a){return g.warn("listFlows: Failed to list flows:",a),{success:!1,error:a instanceof Error?a.message:"Failed to list flows"}}}}let k=new j},96487:()=>{}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=9938,exports.ids=[9938],exports.modules={9718:(a,b,c)=>{c.d(b,{Zg:()=>d.Z,Mj:()=>g});var d=c(60418),e=c(38301);let f=(0,c(19815).h)("utils/storage/frontend.ts");function g(a,b){f.verbose("useLocalStorage: Entering method");let[c,d]=(0,e.useState)(b),[g,h]=(0,e.useState)(!0),i=(0,e.useRef)(c);return[c,(0,e.useCallback)(async b=>{f.verbose("setValue: Entering method");try{let c=b instanceof Function?b(i.current):b;if(d(c),!(await fetch("/api/storage",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:a,value:c})})).ok)throw Error("Failed to save value")}catch(b){f.warn(`Error setting storage key "${a}":`,b)}},[a]),g]}},49938:(a,b,c)=>{c.d(b,{rX:()=>f}),c(21124);var d=c(38301);c(9718),(0,c(19815).h)("frontend/contexts/StorageContext");let e=(0,d.createContext)({setKey:async()=>{},changeKey:async()=>!1,verifyKey:async()=>!1,isEncryptionInitialized:async()=>!1,globalEnvVars:{},setGlobalEnvVars:async()=>{},deleteGlobalEnvVar:async()=>{},encryptValue:async()=>null,decryptValue:async()=>null,isUserEncryptionEnabled:async()=>!1,isLoading:!0,settings:{speech:{enabled:!0},update:{checkOnStartup:!1}},updateSettings:async()=>{}}),f=()=>(0,d.useContext)(e)},60418:(a,b,c)=>{c.d(b,{Z:()=>d});var d=function(a){return a.MODELS="models",a.FLOWS="flows",a.CHAT_HISTORY="history",a.THEME="theme",a.ENCRYPTION_KEY="encryption_key",a.MCP_SERVERS="mcp_servers",a.GLOBAL_ENV_VARS="global_env_vars",a.CURRENT_CONVERSATION_ID="current_conversation_id",a.SELECTED_FLOW_ID="selected_flow_id",a.SPEECH_SETTINGS="speech_settings",a.SPOTLIGHT_SERVERS="spotlight_servers",a.PLANNED_EXECUTIONS="planned_executions",a}({})}};
|
|
1
|
+
"use strict";exports.id=9938,exports.ids=[9938],exports.modules={9718:(a,b,c)=>{c.d(b,{Zg:()=>d.Z,Mj:()=>g});var d=c(60418),e=c(38301);let f=(0,c(19815).h)("utils/storage/frontend.ts");function g(a,b){f.verbose("useLocalStorage: Entering method");let[c,d]=(0,e.useState)(b),[g,h]=(0,e.useState)(!0),i=(0,e.useRef)(c);return[c,(0,e.useCallback)(async b=>{f.verbose("setValue: Entering method");try{let c=b instanceof Function?b(i.current):b;if(d(c),!(await fetch("/api/storage",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:a,value:c})})).ok)throw Error("Failed to save value")}catch(b){f.warn(`Error setting storage key "${a}":`,b)}},[a]),g]}},49938:(a,b,c)=>{c.d(b,{rX:()=>f}),c(21124);var d=c(38301);c(9718),(0,c(19815).h)("frontend/contexts/StorageContext");let e=(0,d.createContext)({setKey:async()=>{},changeKey:async()=>!1,verifyKey:async()=>!1,isEncryptionInitialized:async()=>!1,globalEnvVars:{},setGlobalEnvVars:async()=>{},deleteGlobalEnvVar:async()=>{},encryptValue:async()=>null,decryptValue:async()=>null,isUserEncryptionEnabled:async()=>!1,isLoading:!0,settings:{speech:{enabled:!0},update:{checkOnStartup:!1}},settingsHydrated:!1,updateSettings:async()=>{}}),f=()=>(0,d.useContext)(e)},60418:(a,b,c)=>{c.d(b,{Z:()=>d});var d=function(a){return a.MODELS="models",a.FLOWS="flows",a.CHAT_HISTORY="history",a.THEME="theme",a.ENCRYPTION_KEY="encryption_key",a.MCP_SERVERS="mcp_servers",a.GLOBAL_ENV_VARS="global_env_vars",a.CURRENT_CONVERSATION_ID="current_conversation_id",a.SELECTED_FLOW_ID="selected_flow_id",a.SPEECH_SETTINGS="speech_settings",a.SPOTLIGHT_SERVERS="spotlight_servers",a.PLANNED_EXECUTIONS="planned_executions",a}({})}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=9989,exports.ids=[9989],exports.modules={79989:(a,b,c)=>{c.d(b,{flowService:()=>k});var d=c(32524),e=c(92372),f=c(46480);let g=(0,c(50846).h)("backend/services/flow/index"),h=f.Z.FLOWS;async function i(){return global.__flujo_flowsMigration||(global.__flujo_flowsMigration=(async()=>{try{await (0,e.w5)(f.Z.FLOWS,h,a=>a.id)}catch(a){g.error("Flow storage migration failed",a),global.__flujo_flowsMigration=void 0}})()),global.__flujo_flowsMigration}class j{get flowsCache(){return global.__flujo_flowsCache??null}set flowsCache(a){global.__flujo_flowsCache=a}async loadFlows(){try{if(this.flowsCache)return g.debug("Using cached flows"),this.flowsCache;g.debug("Loading flows from storage"),await i();let a=await (0,e.pL)(h);return this.flowsCache=a,g.info("Loaded flows from storage",{count:a.length}),a}catch(a){return g.error("Failed to load flows",a),[]}}async getFlow(a){try{g.debug(`Getting flow by ID: ${a}`);let b=this.flowsCache?.find(b=>b.id===a)||null;if(b)return g.debug(`Flow ${a} found in cache`),b;await i();let c=null;try{c=await (0,e.EI)(h,a,null)}catch(b){g.debug(`getFlow: could not load flow ${a}`,b),c=null}if(c&&this.flowsCache){let a=this.flowsCache,b=a.findIndex(a=>a.id===c.id);b>=0?a[b]=c:a.push(c),this.flowsCache=a}return g.debug(`Flow ${a} ${c?"found":"not found"}`),c}catch(b){return g.error(`Failed to get flow ${a}`,b),null}}async invalidateExecutionCache(a){try{let{FlowExecutor:b}=await Promise.all([c.e(6996),c.e(1223),c.e(5734),c.e(1373),c.e(
|
|
1
|
+
"use strict";exports.id=9989,exports.ids=[9989],exports.modules={79989:(a,b,c)=>{c.d(b,{flowService:()=>k});var d=c(32524),e=c(92372),f=c(46480);let g=(0,c(50846).h)("backend/services/flow/index"),h=f.Z.FLOWS;async function i(){return global.__flujo_flowsMigration||(global.__flujo_flowsMigration=(async()=>{try{await (0,e.w5)(f.Z.FLOWS,h,a=>a.id)}catch(a){g.error("Flow storage migration failed",a),global.__flujo_flowsMigration=void 0}})()),global.__flujo_flowsMigration}class j{get flowsCache(){return global.__flujo_flowsCache??null}set flowsCache(a){global.__flujo_flowsCache=a}async loadFlows(){try{if(this.flowsCache)return g.debug("Using cached flows"),this.flowsCache;g.debug("Loading flows from storage"),await i();let a=await (0,e.pL)(h);return this.flowsCache=a,g.info("Loaded flows from storage",{count:a.length}),a}catch(a){return g.error("Failed to load flows",a),[]}}async getFlow(a){try{g.debug(`Getting flow by ID: ${a}`);let b=this.flowsCache?.find(b=>b.id===a)||null;if(b)return g.debug(`Flow ${a} found in cache`),b;await i();let c=null;try{c=await (0,e.EI)(h,a,null)}catch(b){g.debug(`getFlow: could not load flow ${a}`,b),c=null}if(c&&this.flowsCache){let a=this.flowsCache,b=a.findIndex(a=>a.id===c.id);b>=0?a[b]=c:a.push(c),this.flowsCache=a}return g.debug(`Flow ${a} ${c?"found":"not found"}`),c}catch(b){return g.error(`Failed to get flow ${a}`,b),null}}async invalidateExecutionCache(a){try{let{FlowExecutor:b}=await Promise.all([c.e(6996),c.e(1223),c.e(5734),c.e(1373),c.e(5504),c.e(724),c.e(1403)]).then(c.bind(c,91403));b.clearFlowCache(a),g.debug("Invalidated execution flow cache",{flowId:a??"all"})}catch(a){g.warn("Failed to invalidate execution flow cache",a)}}async saveFlow(a){try{g.debug(`Saving flow: ${a.id}`,{name:a.name}),(0,e.ln)(a.id),await i(),await (0,e.Vt)(h,a.id,a);let b=this.flowsCache;if(b){let c=b.findIndex(b=>b.id===a.id);c>=0?b[c]=a:b.push(a),this.flowsCache=b}return await this.invalidateExecutionCache(a.id),g.info(`Flow ${a.id} saved successfully`),{success:!0}}catch(a){return g.error("Failed to save flow",a),{success:!1,error:a instanceof Error?a.message:"Failed to save flow"}}}async deleteFlow(a){try{g.debug(`Deleting flow: ${a}`),await i(),await (0,e.bB)(h,a);let b=this.flowsCache;return b&&(this.flowsCache=b.filter(b=>b.id!==a)),await this.invalidateExecutionCache(a),g.info(`Flow ${a} deleted successfully`),{success:!0}}catch(b){return g.error(`Failed to delete flow: ${a}`,b),{success:!1,error:b instanceof Error?b.message:"Failed to delete flow"}}}createNode(a,b){g.debug(`Creating new node of type: ${a}`,{position:b});let c={id:(0,d.A)(),type:a,position:b,data:{label:`${"mcp"===a?"MCP":a.charAt(0).toUpperCase()+a.slice(1)} Node`,type:a,properties:{}}};return g.debug(`Node created with ID: ${c.id}`),c}createNewFlow(a="NewFlow"){g.debug(`Creating new flow: ${a}`);let b={id:(0,d.A)(),type:"start",position:{x:250,y:150},data:{label:"Start Node",type:"start",properties:{promptTemplate:""}}},c={id:(0,d.A)(),name:a,nodes:[b],edges:[]};return g.info(`New flow created with ID: ${c.id}`,{name:a}),c}createHistoryEntry(a,b){return g.debug("Creating history entry",{nodeCount:a.length,edgeCount:b.length}),{nodes:[...a],edges:[...b]}}generateSampleFlow(a="Sample Flow"){g.debug(`Generating sample flow: ${a}`);let b={id:(0,d.A)(),name:a,nodes:[{id:"1",type:"start",position:{x:250,y:50},data:{label:"Start Node",type:"start",properties:{prompt:"Enter your query here",systemMessage:"You are a helpful assistant",temperature:0}}},{id:"2",type:"process",position:{x:250,y:200},data:{label:"Process Node",type:"process",properties:{operation:"transform",enabled:!0}}},{id:"3",type:"finish",position:{x:250,y:350},data:{label:"Finish Node",type:"finish",properties:{format:"json",template:'{ "result": {{data}} }'}}},{id:"4",type:"mcp",position:{x:450,y:200},data:{label:"MCP Node",type:"mcp",properties:{channels:2,mode:"parallel"}}}],edges:[{id:"e1-2",source:"1",target:"2",type:"custom"},{id:"e2-3",source:"2",target:"3",type:"custom"}]};return g.info(`Sample flow generated with ID: ${b.id}`,{name:a}),b}async listFlows(){g.debug("listFlows: Entering method");try{let a=await this.loadFlows();return{success:!0,flows:a}}catch(a){return g.warn("listFlows: Failed to list flows:",a),{success:!1,error:a instanceof Error?a.message:"Failed to list flows"}}}}let k=new j}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:[],rootMainFiles:["static/chunks/webpack-
|
|
1
|
+
globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:[],rootMainFiles:["static/chunks/webpack-63a4c59e84967e90.js","static/chunks/4bd1b696-182b6b13bdad92e3.js","static/chunks/1255-13d973e0759ea6d6.js","static/chunks/main-app-faff38c77cb00119.js"],rootMainFilesTree:{},pages:{"/_app":["static/chunks/webpack-63a4c59e84967e90.js","static/chunks/framework-1548034a53843b9f.js","static/chunks/main-be8e823624954fab.js","static/chunks/pages/_app-e8b861c87f6f033c.js"],"/_error":["static/chunks/webpack-63a4c59e84967e90.js","static/chunks/framework-1548034a53843b9f.js","static/chunks/main-be8e823624954fab.js","static/chunks/pages/_error-c8f84f7bd11d43d4.js"]},ampFirstPages:[]},globalThis.__BUILD_MANIFEST.lowPriorityFiles=["/static/"+process.env.__NEXT_BUILD_ID+"/_buildManifest.js",,"/static/"+process.env.__NEXT_BUILD_ID+"/_ssgManifest.js"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__REACT_LOADABLE_MANIFEST='{"..\\\\node_modules\\\\next\\\\dist\\\\client\\\\index.js -> ../pages/_app":{"id":45139,"files":["static/chunks/5139.e4ff9cc3669129ed.js"]},"..\\\\node_modules\\\\next\\\\dist\\\\client\\\\index.js -> ../pages/_error":{"id":31646,"files":["static/chunks/1646.a93085a0445ba909.js"]},"frontend\\\\components\\\\AppWrapper.tsx -> ../contexts/StorageContext":{"id":9164,"files":["static/chunks/9164-
|
|
1
|
+
self.__REACT_LOADABLE_MANIFEST='{"..\\\\node_modules\\\\next\\\\dist\\\\client\\\\index.js -> ../pages/_app":{"id":45139,"files":["static/chunks/5139.e4ff9cc3669129ed.js"]},"..\\\\node_modules\\\\next\\\\dist\\\\client\\\\index.js -> ../pages/_error":{"id":31646,"files":["static/chunks/1646.a93085a0445ba909.js"]},"frontend\\\\components\\\\AppWrapper.tsx -> ../contexts/StorageContext":{"id":9164,"files":["static/chunks/9164-d15e4dab0a1bf282.js"]},"frontend\\\\components\\\\AppWrapper.tsx -> ../contexts/ThemeContext":{"id":26796,"files":["static/chunks/2678-c88052addfb0478a.js","static/chunks/8598-1b627b3d682b364a.js","static/chunks/7583.8a518353bd072db9.js"]},"frontend\\\\components\\\\AppWrapper.tsx -> ../contexts/TourContext":{"id":69195,"files":["static/chunks/9164-d15e4dab0a1bf282.js","static/chunks/9195.294887f083b1a11b.js"]},"frontend\\\\components\\\\AppWrapper.tsx -> ./EncryptionAuthDialog":{"id":23217,"files":["static/chunks/2678-c88052addfb0478a.js","static/chunks/4754-5c62bb61142f82d1.js","static/chunks/9244-3281f7fd02003a2c.js","static/chunks/8548-8e4a95334064e8b2.js","static/chunks/690-391bc0f482a9f67c.js","static/chunks/9562-93cc45aef3630781.js","static/chunks/2003-7710c23acaef11c9.js","static/chunks/3272-fd8d59523f61da96.js","static/chunks/9164-d15e4dab0a1bf282.js","static/chunks/3217.1a7e24fd70294370.js"]},"frontend\\\\components\\\\AppWrapper.tsx -> ./Navigation":{"id":48187,"files":["static/chunks/2678-c88052addfb0478a.js","static/chunks/4754-5c62bb61142f82d1.js","static/chunks/9244-3281f7fd02003a2c.js","static/chunks/8548-8e4a95334064e8b2.js","static/chunks/8598-1b627b3d682b364a.js","static/chunks/2619-04bc32f026a0d946.js","static/chunks/7539.41f0448cf9783388.js","static/chunks/8187.5d6523f30e705998.js"]},"frontend\\\\components\\\\AppWrapper.tsx -> ./Tour/TourOverlay":{"id":83545,"files":["static/chunks/2678-c88052addfb0478a.js","static/chunks/4754-5c62bb61142f82d1.js","static/chunks/9244-3281f7fd02003a2c.js","static/chunks/8548-8e4a95334064e8b2.js","static/chunks/690-391bc0f482a9f67c.js","static/chunks/2005-f9d38c39f10c321f.js","static/chunks/8345.76f420453fc0dee7.js","static/chunks/9164-d15e4dab0a1bf282.js","static/chunks/3545.d3a512315a9fce3e.js"]},"frontend\\\\components\\\\mcp\\\\MCPServerManager\\\\ServerCard.tsx -> @/frontend/utils/oauth":{"id":68198,"files":["static/chunks/8198.cd0d3f8429c02862.js"]}}';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
1
|
+
<!DOCTYPE html><!--9Pzu8N65j3JuRQ7zVUtwD--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/d1484588c616b291.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-63a4c59e84967e90.js"/><script src="/_next/static/chunks/4bd1b696-182b6b13bdad92e3.js" async=""></script><script src="/_next/static/chunks/1255-13d973e0759ea6d6.js" async=""></script><script src="/_next/static/chunks/main-app-faff38c77cb00119.js" async=""></script><script src="/_next/static/chunks/app/layout-2878f13d7e253503.js" async=""></script><meta name="robots" content="noindex"/><title>FLUJO</title><meta name="description" content="A browser-based application for managing models, MCP servers, flows and chat interactions"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_246ccd __variable_c29908 antialiased"><div hidden=""><!--$--><!--/$--></div><!--$--><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div>Loading theme...</div><!--/$--><!--/$--><script src="/_next/static/chunks/webpack-63a4c59e84967e90.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[72403,[\"7177\",\"static/chunks/app/layout-2878f13d7e253503.js\"],\"default\"]\n3:I[9766,[],\"\"]\n4:I[98924,[],\"\"]\n5:I[24431,[],\"OutletBoundary\"]\n7:I[15278,[],\"AsyncMetadataOutlet\"]\n9:I[24431,[],\"ViewportBoundary\"]\nb:I[24431,[],\"MetadataBoundary\"]\nc:\"$Sreact.suspense\"\ne:I[57150,[],\"\"]\n:HL[\"/_next/static/css/d1484588c616b291.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"9Pzu8N65j3JuRQ7zVUtwD\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/d1484588c616b291.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_246ccd __variable_c29908 antialiased\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$L6\",[\"$\",\"$L7\",null,{\"promise\":\"$@8\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[[\"$\",\"$L9\",null,{\"children\":\"$La\"}],null],[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$c\",null,{\"fallback\":null,\"children\":\"$Ld\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6:null\n"])</script><script>self.__next_f.push([1,"8:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"FLUJO\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"A browser-based application for managing models, MCP servers, flows and chat interactions\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:\"$8:metadata\"\n"])</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-63a4c59e84967e90.js" defer=""></script><script src="/_next/static/chunks/framework-1548034a53843b9f.js" defer=""></script><script src="/_next/static/chunks/main-be8e823624954fab.js" defer=""></script><script src="/_next/static/chunks/pages/_app-e8b861c87f6f033c.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c8f84f7bd11d43d4.js" defer=""></script><script src="/_next/static/9Pzu8N65j3JuRQ7zVUtwD/_buildManifest.js" defer=""></script><script src="/_next/static/9Pzu8N65j3JuRQ7zVUtwD/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"9Pzu8N65j3JuRQ7zVUtwD","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__RSC_SERVER_MANIFEST="{\"node\":{\"40520b537d1d43f510acbccd60e3e7d42ce215c157\":{\"workers\":{\"app/api/env/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/prompt-renderer/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/init/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/cancel/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/prompts/get/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/prompts/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/resources/read/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/resources/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/status/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/tools/[toolName]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/tools/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/test-connection/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/provider/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/test/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/callback/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/initiate/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/reset/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/run/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/runs/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/restore/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/webhooks/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/completions/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/breakpoints/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/cancel/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/debug/continue/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/debug/step/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/edit-state/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/respond/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/models/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/backup/route\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp-flows/route\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp-proxy/[server]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/events/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/test-connection/stream/route\":{\"moduleId\":\"947\",\"async\":false},\"app/models/page\":{\"moduleId\":\"947\",\"async\":false},\"app/settings/page\":{\"moduleId\":\"9047\",\"async\":false},\"app/mcp/page\":{\"moduleId\":\"9047\",\"async\":false}},\"layer\":{\"app/api/env/route\":\"rsc\",\"app/api/flow/[id]/route\":\"rsc\",\"app/api/flow/prompt-renderer/route\":\"rsc\",\"app/api/flow/route\":\"rsc\",\"app/api/init/route\":\"rsc\",\"app/api/mcp/cancel/route\":\"rsc\",\"app/api/mcp/servers/[name]/prompts/get/route\":\"rsc\",\"app/api/mcp/servers/[name]/prompts/route\":\"rsc\",\"app/api/mcp/servers/[name]/resources/read/route\":\"rsc\",\"app/api/mcp/servers/[name]/resources/route\":\"rsc\",\"app/api/mcp/servers/[name]/route\":\"rsc\",\"app/api/mcp/servers/[name]/status/route\":\"rsc\",\"app/api/mcp/servers/[name]/tools/[toolName]/route\":\"rsc\",\"app/api/mcp/servers/[name]/tools/route\":\"rsc\",\"app/api/mcp/servers/route\":\"rsc\",\"app/api/mcp/test-connection/route\":\"rsc\",\"app/api/model/[id]/route\":\"rsc\",\"app/api/model/provider/route\":\"rsc\",\"app/api/model/route\":\"rsc\",\"app/api/model/test/route\":\"rsc\",\"app/api/oauth/callback/route\":\"rsc\",\"app/api/oauth/initiate/route\":\"rsc\",\"app/api/oauth/reset/route\":\"rsc\",\"app/api/planned-executions/[id]/route\":\"rsc\",\"app/api/planned-executions/[id]/run/route\":\"rsc\",\"app/api/planned-executions/[id]/runs/route\":\"rsc\",\"app/api/planned-executions/route\":\"rsc\",\"app/api/restore/route\":\"rsc\",\"app/api/webhooks/[id]/route\":\"rsc\",\"app/v1/chat/completions/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/breakpoints/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/cancel/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/debug/continue/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/debug/step/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/edit-state/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/respond/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/route\":\"rsc\",\"app/v1/chat/conversations/route\":\"rsc\",\"app/v1/models/route\":\"rsc\",\"app/api/backup/route\":\"rsc\",\"app/mcp-flows/route\":\"rsc\",\"app/mcp-proxy/[server]/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/events/route\":\"rsc\",\"app/api/mcp/test-connection/stream/route\":\"rsc\",\"app/models/page\":\"rsc\",\"app/settings/page\":\"action-browser\",\"app/mcp/page\":\"action-browser\"},\"filename\":\"../C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\backend\\\\utils\\\\resolveGlobalVars.ts\",\"exportedName\":\"resolveGlobalVars\"},\"60de87c4c5950c080550cb766970e88ae9c9a0ca25\":{\"workers\":{\"app/api/env/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/prompt-renderer/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/init/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/cancel/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/prompts/get/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/prompts/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/resources/read/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/resources/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/status/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/tools/[toolName]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/tools/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/test-connection/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/provider/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/test/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/callback/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/initiate/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/reset/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/run/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/runs/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/restore/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/webhooks/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/completions/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/breakpoints/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/cancel/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/debug/continue/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/debug/step/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/edit-state/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/respond/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/models/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/backup/route\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp-flows/route\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp-proxy/[server]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/events/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/test-connection/stream/route\":{\"moduleId\":\"947\",\"async\":false},\"app/models/page\":{\"moduleId\":\"947\",\"async\":false},\"app/settings/page\":{\"moduleId\":\"9047\",\"async\":false},\"app/mcp/page\":{\"moduleId\":\"9047\",\"async\":false}},\"layer\":{\"app/api/env/route\":\"rsc\",\"app/api/flow/[id]/route\":\"rsc\",\"app/api/flow/prompt-renderer/route\":\"rsc\",\"app/api/flow/route\":\"rsc\",\"app/api/init/route\":\"rsc\",\"app/api/mcp/cancel/route\":\"rsc\",\"app/api/mcp/servers/[name]/prompts/get/route\":\"rsc\",\"app/api/mcp/servers/[name]/prompts/route\":\"rsc\",\"app/api/mcp/servers/[name]/resources/read/route\":\"rsc\",\"app/api/mcp/servers/[name]/resources/route\":\"rsc\",\"app/api/mcp/servers/[name]/route\":\"rsc\",\"app/api/mcp/servers/[name]/status/route\":\"rsc\",\"app/api/mcp/servers/[name]/tools/[toolName]/route\":\"rsc\",\"app/api/mcp/servers/[name]/tools/route\":\"rsc\",\"app/api/mcp/servers/route\":\"rsc\",\"app/api/mcp/test-connection/route\":\"rsc\",\"app/api/model/[id]/route\":\"rsc\",\"app/api/model/provider/route\":\"rsc\",\"app/api/model/route\":\"rsc\",\"app/api/model/test/route\":\"rsc\",\"app/api/oauth/callback/route\":\"rsc\",\"app/api/oauth/initiate/route\":\"rsc\",\"app/api/oauth/reset/route\":\"rsc\",\"app/api/planned-executions/[id]/route\":\"rsc\",\"app/api/planned-executions/[id]/run/route\":\"rsc\",\"app/api/planned-executions/[id]/runs/route\":\"rsc\",\"app/api/planned-executions/route\":\"rsc\",\"app/api/restore/route\":\"rsc\",\"app/api/webhooks/[id]/route\":\"rsc\",\"app/v1/chat/completions/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/breakpoints/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/cancel/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/debug/continue/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/debug/step/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/edit-state/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/respond/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/route\":\"rsc\",\"app/v1/chat/conversations/route\":\"rsc\",\"app/v1/models/route\":\"rsc\",\"app/api/backup/route\":\"rsc\",\"app/mcp-flows/route\":\"rsc\",\"app/mcp-proxy/[server]/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/events/route\":\"rsc\",\"app/api/mcp/test-connection/stream/route\":\"rsc\",\"app/models/page\":\"rsc\",\"app/settings/page\":\"action-browser\",\"app/mcp/page\":\"action-browser\"},\"filename\":\"../C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\backend\\\\utils\\\\resolveGlobalVars.ts\",\"exportedName\":\"resolveAndDecryptApiKey\"}},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
|
|
1
|
+
self.__RSC_SERVER_MANIFEST="{\"node\":{\"40520b537d1d43f510acbccd60e3e7d42ce215c157\":{\"workers\":{\"app/api/backup/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/encryption/secure/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/env/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/prompt-renderer/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/init/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/cancel/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/prompts/get/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/prompts/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/resources/read/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/resources/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/status/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/tools/[toolName]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/tools/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/test-connection/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/provider/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/test/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/callback/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/initiate/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/reset/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/run/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/runs/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/restore/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/webhooks/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/completions/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/breakpoints/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/cancel/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/debug/continue/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/debug/step/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/edit-state/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/respond/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/models/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/test-connection/stream/route\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp-flows/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/events/route\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp-proxy/[server]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/models/page\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp/page\":{\"moduleId\":\"9047\",\"async\":false},\"app/settings/page\":{\"moduleId\":\"9047\",\"async\":false}},\"layer\":{\"app/api/backup/route\":\"rsc\",\"app/api/encryption/secure/route\":\"rsc\",\"app/api/env/route\":\"rsc\",\"app/api/flow/[id]/route\":\"rsc\",\"app/api/flow/prompt-renderer/route\":\"rsc\",\"app/api/flow/route\":\"rsc\",\"app/api/init/route\":\"rsc\",\"app/api/mcp/cancel/route\":\"rsc\",\"app/api/mcp/servers/[name]/prompts/get/route\":\"rsc\",\"app/api/mcp/servers/[name]/prompts/route\":\"rsc\",\"app/api/mcp/servers/[name]/resources/read/route\":\"rsc\",\"app/api/mcp/servers/[name]/resources/route\":\"rsc\",\"app/api/mcp/servers/[name]/route\":\"rsc\",\"app/api/mcp/servers/[name]/status/route\":\"rsc\",\"app/api/mcp/servers/[name]/tools/[toolName]/route\":\"rsc\",\"app/api/mcp/servers/[name]/tools/route\":\"rsc\",\"app/api/mcp/servers/route\":\"rsc\",\"app/api/mcp/test-connection/route\":\"rsc\",\"app/api/model/[id]/route\":\"rsc\",\"app/api/model/provider/route\":\"rsc\",\"app/api/model/route\":\"rsc\",\"app/api/model/test/route\":\"rsc\",\"app/api/oauth/callback/route\":\"rsc\",\"app/api/oauth/initiate/route\":\"rsc\",\"app/api/oauth/reset/route\":\"rsc\",\"app/api/planned-executions/[id]/route\":\"rsc\",\"app/api/planned-executions/[id]/run/route\":\"rsc\",\"app/api/planned-executions/[id]/runs/route\":\"rsc\",\"app/api/planned-executions/route\":\"rsc\",\"app/api/restore/route\":\"rsc\",\"app/api/webhooks/[id]/route\":\"rsc\",\"app/v1/chat/completions/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/breakpoints/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/cancel/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/debug/continue/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/debug/step/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/edit-state/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/respond/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/route\":\"rsc\",\"app/v1/chat/conversations/route\":\"rsc\",\"app/v1/models/route\":\"rsc\",\"app/api/mcp/test-connection/stream/route\":\"rsc\",\"app/mcp-flows/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/events/route\":\"rsc\",\"app/mcp-proxy/[server]/route\":\"rsc\",\"app/models/page\":\"rsc\",\"app/mcp/page\":\"action-browser\",\"app/settings/page\":\"action-browser\"},\"filename\":\"../C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\backend\\\\utils\\\\resolveGlobalVars.ts\",\"exportedName\":\"resolveGlobalVars\"},\"60de87c4c5950c080550cb766970e88ae9c9a0ca25\":{\"workers\":{\"app/api/backup/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/encryption/secure/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/env/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/prompt-renderer/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/flow/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/init/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/cancel/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/prompts/get/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/prompts/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/resources/read/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/resources/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/status/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/tools/[toolName]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/[name]/tools/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/servers/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/test-connection/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/provider/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/model/test/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/callback/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/initiate/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/oauth/reset/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/run/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/[id]/runs/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/planned-executions/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/restore/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/webhooks/[id]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/completions/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/breakpoints/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/cancel/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/debug/continue/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/debug/step/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/edit-state/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/respond/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/models/route\":{\"moduleId\":\"947\",\"async\":false},\"app/api/mcp/test-connection/stream/route\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp-flows/route\":{\"moduleId\":\"947\",\"async\":false},\"app/v1/chat/conversations/[conversationId]/events/route\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp-proxy/[server]/route\":{\"moduleId\":\"947\",\"async\":false},\"app/models/page\":{\"moduleId\":\"947\",\"async\":false},\"app/mcp/page\":{\"moduleId\":\"9047\",\"async\":false},\"app/settings/page\":{\"moduleId\":\"9047\",\"async\":false}},\"layer\":{\"app/api/backup/route\":\"rsc\",\"app/api/encryption/secure/route\":\"rsc\",\"app/api/env/route\":\"rsc\",\"app/api/flow/[id]/route\":\"rsc\",\"app/api/flow/prompt-renderer/route\":\"rsc\",\"app/api/flow/route\":\"rsc\",\"app/api/init/route\":\"rsc\",\"app/api/mcp/cancel/route\":\"rsc\",\"app/api/mcp/servers/[name]/prompts/get/route\":\"rsc\",\"app/api/mcp/servers/[name]/prompts/route\":\"rsc\",\"app/api/mcp/servers/[name]/resources/read/route\":\"rsc\",\"app/api/mcp/servers/[name]/resources/route\":\"rsc\",\"app/api/mcp/servers/[name]/route\":\"rsc\",\"app/api/mcp/servers/[name]/status/route\":\"rsc\",\"app/api/mcp/servers/[name]/tools/[toolName]/route\":\"rsc\",\"app/api/mcp/servers/[name]/tools/route\":\"rsc\",\"app/api/mcp/servers/route\":\"rsc\",\"app/api/mcp/test-connection/route\":\"rsc\",\"app/api/model/[id]/route\":\"rsc\",\"app/api/model/provider/route\":\"rsc\",\"app/api/model/route\":\"rsc\",\"app/api/model/test/route\":\"rsc\",\"app/api/oauth/callback/route\":\"rsc\",\"app/api/oauth/initiate/route\":\"rsc\",\"app/api/oauth/reset/route\":\"rsc\",\"app/api/planned-executions/[id]/route\":\"rsc\",\"app/api/planned-executions/[id]/run/route\":\"rsc\",\"app/api/planned-executions/[id]/runs/route\":\"rsc\",\"app/api/planned-executions/route\":\"rsc\",\"app/api/restore/route\":\"rsc\",\"app/api/webhooks/[id]/route\":\"rsc\",\"app/v1/chat/completions/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/breakpoints/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/cancel/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/debug/continue/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/debug/step/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/edit-state/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/respond/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/route\":\"rsc\",\"app/v1/chat/conversations/route\":\"rsc\",\"app/v1/models/route\":\"rsc\",\"app/api/mcp/test-connection/stream/route\":\"rsc\",\"app/mcp-flows/route\":\"rsc\",\"app/v1/chat/conversations/[conversationId]/events/route\":\"rsc\",\"app/mcp-proxy/[server]/route\":\"rsc\",\"app/models/page\":\"rsc\",\"app/mcp/page\":\"action-browser\",\"app/settings/page\":\"action-browser\"},\"filename\":\"../C:\\\\Users\\\\MarioAndreschak\\\\Documents\\\\GitHub\\\\FLUJO\\\\src\\\\backend\\\\utils\\\\resolveGlobalVars.ts\",\"exportedName\":\"resolveAndDecryptApiKey\"}},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"node":{"40520b537d1d43f510acbccd60e3e7d42ce215c157":{"workers":{"app/api/env/route":{"moduleId":"947","async":false},"app/api/flow/[id]/route":{"moduleId":"947","async":false},"app/api/flow/prompt-renderer/route":{"moduleId":"947","async":false},"app/api/flow/route":{"moduleId":"947","async":false},"app/api/init/route":{"moduleId":"947","async":false},"app/api/mcp/cancel/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/prompts/get/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/prompts/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/resources/read/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/resources/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/status/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/tools/[toolName]/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/tools/route":{"moduleId":"947","async":false},"app/api/mcp/servers/route":{"moduleId":"947","async":false},"app/api/mcp/test-connection/route":{"moduleId":"947","async":false},"app/api/model/[id]/route":{"moduleId":"947","async":false},"app/api/model/provider/route":{"moduleId":"947","async":false},"app/api/model/route":{"moduleId":"947","async":false},"app/api/model/test/route":{"moduleId":"947","async":false},"app/api/oauth/callback/route":{"moduleId":"947","async":false},"app/api/oauth/initiate/route":{"moduleId":"947","async":false},"app/api/oauth/reset/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/run/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/runs/route":{"moduleId":"947","async":false},"app/api/planned-executions/route":{"moduleId":"947","async":false},"app/api/restore/route":{"moduleId":"947","async":false},"app/api/webhooks/[id]/route":{"moduleId":"947","async":false},"app/v1/chat/completions/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/breakpoints/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/cancel/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/debug/continue/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/debug/step/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/edit-state/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/respond/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/route":{"moduleId":"947","async":false},"app/v1/models/route":{"moduleId":"947","async":false},"app/api/backup/route":{"moduleId":"947","async":false},"app/mcp-flows/route":{"moduleId":"947","async":false},"app/mcp-proxy/[server]/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/events/route":{"moduleId":"947","async":false},"app/api/mcp/test-connection/stream/route":{"moduleId":"947","async":false},"app/models/page":{"moduleId":"947","async":false},"app/settings/page":{"moduleId":"9047","async":false},"app/mcp/page":{"moduleId":"9047","async":false}},"layer":{"app/api/env/route":"rsc","app/api/flow/[id]/route":"rsc","app/api/flow/prompt-renderer/route":"rsc","app/api/flow/route":"rsc","app/api/init/route":"rsc","app/api/mcp/cancel/route":"rsc","app/api/mcp/servers/[name]/prompts/get/route":"rsc","app/api/mcp/servers/[name]/prompts/route":"rsc","app/api/mcp/servers/[name]/resources/read/route":"rsc","app/api/mcp/servers/[name]/resources/route":"rsc","app/api/mcp/servers/[name]/route":"rsc","app/api/mcp/servers/[name]/status/route":"rsc","app/api/mcp/servers/[name]/tools/[toolName]/route":"rsc","app/api/mcp/servers/[name]/tools/route":"rsc","app/api/mcp/servers/route":"rsc","app/api/mcp/test-connection/route":"rsc","app/api/model/[id]/route":"rsc","app/api/model/provider/route":"rsc","app/api/model/route":"rsc","app/api/model/test/route":"rsc","app/api/oauth/callback/route":"rsc","app/api/oauth/initiate/route":"rsc","app/api/oauth/reset/route":"rsc","app/api/planned-executions/[id]/route":"rsc","app/api/planned-executions/[id]/run/route":"rsc","app/api/planned-executions/[id]/runs/route":"rsc","app/api/planned-executions/route":"rsc","app/api/restore/route":"rsc","app/api/webhooks/[id]/route":"rsc","app/v1/chat/completions/route":"rsc","app/v1/chat/conversations/[conversationId]/breakpoints/route":"rsc","app/v1/chat/conversations/[conversationId]/cancel/route":"rsc","app/v1/chat/conversations/[conversationId]/debug/continue/route":"rsc","app/v1/chat/conversations/[conversationId]/debug/step/route":"rsc","app/v1/chat/conversations/[conversationId]/edit-state/route":"rsc","app/v1/chat/conversations/[conversationId]/respond/route":"rsc","app/v1/chat/conversations/[conversationId]/route":"rsc","app/v1/chat/conversations/route":"rsc","app/v1/models/route":"rsc","app/api/backup/route":"rsc","app/mcp-flows/route":"rsc","app/mcp-proxy/[server]/route":"rsc","app/v1/chat/conversations/[conversationId]/events/route":"rsc","app/api/mcp/test-connection/stream/route":"rsc","app/models/page":"rsc","app/settings/page":"action-browser","app/mcp/page":"action-browser"},"filename":"../C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\backend\\utils\\resolveGlobalVars.ts","exportedName":"resolveGlobalVars"},"60de87c4c5950c080550cb766970e88ae9c9a0ca25":{"workers":{"app/api/env/route":{"moduleId":"947","async":false},"app/api/flow/[id]/route":{"moduleId":"947","async":false},"app/api/flow/prompt-renderer/route":{"moduleId":"947","async":false},"app/api/flow/route":{"moduleId":"947","async":false},"app/api/init/route":{"moduleId":"947","async":false},"app/api/mcp/cancel/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/prompts/get/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/prompts/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/resources/read/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/resources/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/status/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/tools/[toolName]/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/tools/route":{"moduleId":"947","async":false},"app/api/mcp/servers/route":{"moduleId":"947","async":false},"app/api/mcp/test-connection/route":{"moduleId":"947","async":false},"app/api/model/[id]/route":{"moduleId":"947","async":false},"app/api/model/provider/route":{"moduleId":"947","async":false},"app/api/model/route":{"moduleId":"947","async":false},"app/api/model/test/route":{"moduleId":"947","async":false},"app/api/oauth/callback/route":{"moduleId":"947","async":false},"app/api/oauth/initiate/route":{"moduleId":"947","async":false},"app/api/oauth/reset/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/run/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/runs/route":{"moduleId":"947","async":false},"app/api/planned-executions/route":{"moduleId":"947","async":false},"app/api/restore/route":{"moduleId":"947","async":false},"app/api/webhooks/[id]/route":{"moduleId":"947","async":false},"app/v1/chat/completions/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/breakpoints/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/cancel/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/debug/continue/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/debug/step/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/edit-state/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/respond/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/route":{"moduleId":"947","async":false},"app/v1/models/route":{"moduleId":"947","async":false},"app/api/backup/route":{"moduleId":"947","async":false},"app/mcp-flows/route":{"moduleId":"947","async":false},"app/mcp-proxy/[server]/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/events/route":{"moduleId":"947","async":false},"app/api/mcp/test-connection/stream/route":{"moduleId":"947","async":false},"app/models/page":{"moduleId":"947","async":false},"app/settings/page":{"moduleId":"9047","async":false},"app/mcp/page":{"moduleId":"9047","async":false}},"layer":{"app/api/env/route":"rsc","app/api/flow/[id]/route":"rsc","app/api/flow/prompt-renderer/route":"rsc","app/api/flow/route":"rsc","app/api/init/route":"rsc","app/api/mcp/cancel/route":"rsc","app/api/mcp/servers/[name]/prompts/get/route":"rsc","app/api/mcp/servers/[name]/prompts/route":"rsc","app/api/mcp/servers/[name]/resources/read/route":"rsc","app/api/mcp/servers/[name]/resources/route":"rsc","app/api/mcp/servers/[name]/route":"rsc","app/api/mcp/servers/[name]/status/route":"rsc","app/api/mcp/servers/[name]/tools/[toolName]/route":"rsc","app/api/mcp/servers/[name]/tools/route":"rsc","app/api/mcp/servers/route":"rsc","app/api/mcp/test-connection/route":"rsc","app/api/model/[id]/route":"rsc","app/api/model/provider/route":"rsc","app/api/model/route":"rsc","app/api/model/test/route":"rsc","app/api/oauth/callback/route":"rsc","app/api/oauth/initiate/route":"rsc","app/api/oauth/reset/route":"rsc","app/api/planned-executions/[id]/route":"rsc","app/api/planned-executions/[id]/run/route":"rsc","app/api/planned-executions/[id]/runs/route":"rsc","app/api/planned-executions/route":"rsc","app/api/restore/route":"rsc","app/api/webhooks/[id]/route":"rsc","app/v1/chat/completions/route":"rsc","app/v1/chat/conversations/[conversationId]/breakpoints/route":"rsc","app/v1/chat/conversations/[conversationId]/cancel/route":"rsc","app/v1/chat/conversations/[conversationId]/debug/continue/route":"rsc","app/v1/chat/conversations/[conversationId]/debug/step/route":"rsc","app/v1/chat/conversations/[conversationId]/edit-state/route":"rsc","app/v1/chat/conversations/[conversationId]/respond/route":"rsc","app/v1/chat/conversations/[conversationId]/route":"rsc","app/v1/chat/conversations/route":"rsc","app/v1/models/route":"rsc","app/api/backup/route":"rsc","app/mcp-flows/route":"rsc","app/mcp-proxy/[server]/route":"rsc","app/v1/chat/conversations/[conversationId]/events/route":"rsc","app/api/mcp/test-connection/stream/route":"rsc","app/models/page":"rsc","app/settings/page":"action-browser","app/mcp/page":"action-browser"},"filename":"../C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\backend\\utils\\resolveGlobalVars.ts","exportedName":"resolveAndDecryptApiKey"}},"edge":{},"encryptionKey":"d34suOUYcHmh7KN6f1Lco7DLyXwlel7jYb4XH/DNEks="}
|
|
1
|
+
{"node":{"40520b537d1d43f510acbccd60e3e7d42ce215c157":{"workers":{"app/api/backup/route":{"moduleId":"947","async":false},"app/api/encryption/secure/route":{"moduleId":"947","async":false},"app/api/env/route":{"moduleId":"947","async":false},"app/api/flow/[id]/route":{"moduleId":"947","async":false},"app/api/flow/prompt-renderer/route":{"moduleId":"947","async":false},"app/api/flow/route":{"moduleId":"947","async":false},"app/api/init/route":{"moduleId":"947","async":false},"app/api/mcp/cancel/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/prompts/get/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/prompts/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/resources/read/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/resources/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/status/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/tools/[toolName]/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/tools/route":{"moduleId":"947","async":false},"app/api/mcp/servers/route":{"moduleId":"947","async":false},"app/api/mcp/test-connection/route":{"moduleId":"947","async":false},"app/api/model/[id]/route":{"moduleId":"947","async":false},"app/api/model/provider/route":{"moduleId":"947","async":false},"app/api/model/route":{"moduleId":"947","async":false},"app/api/model/test/route":{"moduleId":"947","async":false},"app/api/oauth/callback/route":{"moduleId":"947","async":false},"app/api/oauth/initiate/route":{"moduleId":"947","async":false},"app/api/oauth/reset/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/run/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/runs/route":{"moduleId":"947","async":false},"app/api/planned-executions/route":{"moduleId":"947","async":false},"app/api/restore/route":{"moduleId":"947","async":false},"app/api/webhooks/[id]/route":{"moduleId":"947","async":false},"app/v1/chat/completions/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/breakpoints/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/cancel/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/debug/continue/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/debug/step/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/edit-state/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/respond/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/route":{"moduleId":"947","async":false},"app/v1/models/route":{"moduleId":"947","async":false},"app/api/mcp/test-connection/stream/route":{"moduleId":"947","async":false},"app/mcp-flows/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/events/route":{"moduleId":"947","async":false},"app/mcp-proxy/[server]/route":{"moduleId":"947","async":false},"app/models/page":{"moduleId":"947","async":false},"app/mcp/page":{"moduleId":"9047","async":false},"app/settings/page":{"moduleId":"9047","async":false}},"layer":{"app/api/backup/route":"rsc","app/api/encryption/secure/route":"rsc","app/api/env/route":"rsc","app/api/flow/[id]/route":"rsc","app/api/flow/prompt-renderer/route":"rsc","app/api/flow/route":"rsc","app/api/init/route":"rsc","app/api/mcp/cancel/route":"rsc","app/api/mcp/servers/[name]/prompts/get/route":"rsc","app/api/mcp/servers/[name]/prompts/route":"rsc","app/api/mcp/servers/[name]/resources/read/route":"rsc","app/api/mcp/servers/[name]/resources/route":"rsc","app/api/mcp/servers/[name]/route":"rsc","app/api/mcp/servers/[name]/status/route":"rsc","app/api/mcp/servers/[name]/tools/[toolName]/route":"rsc","app/api/mcp/servers/[name]/tools/route":"rsc","app/api/mcp/servers/route":"rsc","app/api/mcp/test-connection/route":"rsc","app/api/model/[id]/route":"rsc","app/api/model/provider/route":"rsc","app/api/model/route":"rsc","app/api/model/test/route":"rsc","app/api/oauth/callback/route":"rsc","app/api/oauth/initiate/route":"rsc","app/api/oauth/reset/route":"rsc","app/api/planned-executions/[id]/route":"rsc","app/api/planned-executions/[id]/run/route":"rsc","app/api/planned-executions/[id]/runs/route":"rsc","app/api/planned-executions/route":"rsc","app/api/restore/route":"rsc","app/api/webhooks/[id]/route":"rsc","app/v1/chat/completions/route":"rsc","app/v1/chat/conversations/[conversationId]/breakpoints/route":"rsc","app/v1/chat/conversations/[conversationId]/cancel/route":"rsc","app/v1/chat/conversations/[conversationId]/debug/continue/route":"rsc","app/v1/chat/conversations/[conversationId]/debug/step/route":"rsc","app/v1/chat/conversations/[conversationId]/edit-state/route":"rsc","app/v1/chat/conversations/[conversationId]/respond/route":"rsc","app/v1/chat/conversations/[conversationId]/route":"rsc","app/v1/chat/conversations/route":"rsc","app/v1/models/route":"rsc","app/api/mcp/test-connection/stream/route":"rsc","app/mcp-flows/route":"rsc","app/v1/chat/conversations/[conversationId]/events/route":"rsc","app/mcp-proxy/[server]/route":"rsc","app/models/page":"rsc","app/mcp/page":"action-browser","app/settings/page":"action-browser"},"filename":"../C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\backend\\utils\\resolveGlobalVars.ts","exportedName":"resolveGlobalVars"},"60de87c4c5950c080550cb766970e88ae9c9a0ca25":{"workers":{"app/api/backup/route":{"moduleId":"947","async":false},"app/api/encryption/secure/route":{"moduleId":"947","async":false},"app/api/env/route":{"moduleId":"947","async":false},"app/api/flow/[id]/route":{"moduleId":"947","async":false},"app/api/flow/prompt-renderer/route":{"moduleId":"947","async":false},"app/api/flow/route":{"moduleId":"947","async":false},"app/api/init/route":{"moduleId":"947","async":false},"app/api/mcp/cancel/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/prompts/get/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/prompts/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/resources/read/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/resources/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/status/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/tools/[toolName]/route":{"moduleId":"947","async":false},"app/api/mcp/servers/[name]/tools/route":{"moduleId":"947","async":false},"app/api/mcp/servers/route":{"moduleId":"947","async":false},"app/api/mcp/test-connection/route":{"moduleId":"947","async":false},"app/api/model/[id]/route":{"moduleId":"947","async":false},"app/api/model/provider/route":{"moduleId":"947","async":false},"app/api/model/route":{"moduleId":"947","async":false},"app/api/model/test/route":{"moduleId":"947","async":false},"app/api/oauth/callback/route":{"moduleId":"947","async":false},"app/api/oauth/initiate/route":{"moduleId":"947","async":false},"app/api/oauth/reset/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/run/route":{"moduleId":"947","async":false},"app/api/planned-executions/[id]/runs/route":{"moduleId":"947","async":false},"app/api/planned-executions/route":{"moduleId":"947","async":false},"app/api/restore/route":{"moduleId":"947","async":false},"app/api/webhooks/[id]/route":{"moduleId":"947","async":false},"app/v1/chat/completions/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/breakpoints/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/cancel/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/debug/continue/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/debug/step/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/edit-state/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/respond/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/route":{"moduleId":"947","async":false},"app/v1/models/route":{"moduleId":"947","async":false},"app/api/mcp/test-connection/stream/route":{"moduleId":"947","async":false},"app/mcp-flows/route":{"moduleId":"947","async":false},"app/v1/chat/conversations/[conversationId]/events/route":{"moduleId":"947","async":false},"app/mcp-proxy/[server]/route":{"moduleId":"947","async":false},"app/models/page":{"moduleId":"947","async":false},"app/mcp/page":{"moduleId":"9047","async":false},"app/settings/page":{"moduleId":"9047","async":false}},"layer":{"app/api/backup/route":"rsc","app/api/encryption/secure/route":"rsc","app/api/env/route":"rsc","app/api/flow/[id]/route":"rsc","app/api/flow/prompt-renderer/route":"rsc","app/api/flow/route":"rsc","app/api/init/route":"rsc","app/api/mcp/cancel/route":"rsc","app/api/mcp/servers/[name]/prompts/get/route":"rsc","app/api/mcp/servers/[name]/prompts/route":"rsc","app/api/mcp/servers/[name]/resources/read/route":"rsc","app/api/mcp/servers/[name]/resources/route":"rsc","app/api/mcp/servers/[name]/route":"rsc","app/api/mcp/servers/[name]/status/route":"rsc","app/api/mcp/servers/[name]/tools/[toolName]/route":"rsc","app/api/mcp/servers/[name]/tools/route":"rsc","app/api/mcp/servers/route":"rsc","app/api/mcp/test-connection/route":"rsc","app/api/model/[id]/route":"rsc","app/api/model/provider/route":"rsc","app/api/model/route":"rsc","app/api/model/test/route":"rsc","app/api/oauth/callback/route":"rsc","app/api/oauth/initiate/route":"rsc","app/api/oauth/reset/route":"rsc","app/api/planned-executions/[id]/route":"rsc","app/api/planned-executions/[id]/run/route":"rsc","app/api/planned-executions/[id]/runs/route":"rsc","app/api/planned-executions/route":"rsc","app/api/restore/route":"rsc","app/api/webhooks/[id]/route":"rsc","app/v1/chat/completions/route":"rsc","app/v1/chat/conversations/[conversationId]/breakpoints/route":"rsc","app/v1/chat/conversations/[conversationId]/cancel/route":"rsc","app/v1/chat/conversations/[conversationId]/debug/continue/route":"rsc","app/v1/chat/conversations/[conversationId]/debug/step/route":"rsc","app/v1/chat/conversations/[conversationId]/edit-state/route":"rsc","app/v1/chat/conversations/[conversationId]/respond/route":"rsc","app/v1/chat/conversations/[conversationId]/route":"rsc","app/v1/chat/conversations/route":"rsc","app/v1/models/route":"rsc","app/api/mcp/test-connection/stream/route":"rsc","app/mcp-flows/route":"rsc","app/v1/chat/conversations/[conversationId]/events/route":"rsc","app/mcp-proxy/[server]/route":"rsc","app/models/page":"rsc","app/mcp/page":"action-browser","app/settings/page":"action-browser"},"filename":"../C:\\Users\\MarioAndreschak\\Documents\\GitHub\\FLUJO\\src\\backend\\utils\\resolveGlobalVars.ts","exportedName":"resolveAndDecryptApiKey"}},"edge":{},"encryptionKey":"d34suOUYcHmh7KN6f1Lco7DLyXwlel7jYb4XH/DNEks="}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3217],{21422:(e,t,n)=>{n.d(t,{A:()=>a});var i=n(36697),r=n(95155);let a=(0,i.A)((0,r.jsx)("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2M9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9zm9 14H6V10h12zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2"}),"LockOutlined")},23217:(e,t,n)=>{n.r(t),n.d(t,{default:()=>E});var i=n(95155),r=n(12115),a=n(87021),s=n(2778),o=n(52363),l=n(94049),d=n(25635),c=n(65036),u=n(22003),p=n(9562),h=n(56422),v=n(41983),y=n(75912),f=n(70690),A=n(4474),m=n(21422),w=n(68212),g=n(42063),x=n(9164),b=n(31373);let j=(0,a.h)("frontend/components/EncryptionAuthDialog");function E(){let{verifyKey:e,isEncryptionInitialized:t,isUserEncryptionEnabled:n}=(0,x.useStorage)(),[a,E]=(0,r.useState)(""),[S,k]=(0,r.useState)(!1),[P,z]=(0,r.useState)(null),[C,I]=(0,r.useState)(!1),[M,L]=(0,r.useState)(!1),[V,N]=(0,r.useState)(!1),[R,U]=(0,r.useState)(!0);(0,r.useEffect)(()=>{(async()=>{j.debug("Checking encryption status");try{U(!0);let e=await t();if(j.debug("Encryption initialized: ".concat(e)),!e){j.info("No encryption initialized, skipping authentication"),N(!0),L(!1),U(!1);return}let i=await n();if(j.debug("User encryption enabled: ".concat(i)),!i){j.info("Default encryption in use, skipping authentication"),N(!0),L(!1),U(!1);return}let r=sessionStorage.getItem("encryption_authenticated");if(j.debug("Session authentication status: ".concat(r)),"true"===r){j.info("Already authenticated in this session"),N(!0),L(!1),U(!1);return}j.info("User encryption enabled and not authenticated, showing dialog"),L(!0),U(!1)}catch(e){j.error("Failed to check encryption status:",e),U(!1),N(!0)}})()},[t,n]),(0,r.useEffect)(()=>{(0,b.bx)();let e=()=>{j.info("Encryption locked signal received; showing lock screen"),N(!1),U(!1),L(!0)};return window.addEventListener(b.UJ,e),()=>window.removeEventListener(b.UJ,e)},[]);let _=async()=>{if(!a.trim()){j.warn("Empty password submitted"),z("Password is required");return}j.debug("Verifying encryption password"),I(!0),z(null);try{let t=await e(a);j.debug("Password verification result: ".concat(t)),t?(j.info("Authentication successful"),N(!0),L(!1),window.dispatchEvent(new CustomEvent(b.ZB))):(j.warn("Invalid password provided"),z("Invalid password"))}catch(e){j.error("Failed to verify password:",e),z("An error occurred while verifying the password")}finally{I(!1)}};return R||V?null:(0,i.jsxs)(s.A,{open:M,maxWidth:"sm",fullWidth:!0,disableEscapeKeyDown:!0,onClose:()=>{},children:[(0,i.jsx)(o.A,{component:"div",children:(0,i.jsxs)(l.default,{display:"flex",alignItems:"center",children:[(0,i.jsx)(m.A,{sx:{mr:1}}),(0,i.jsx)(d.default,{variant:"h6",children:"Encryption Password Required"})]})}),(0,i.jsxs)(c.A,{children:[P&&(0,i.jsx)(u.A,{severity:"error",sx:{mb:2},children:P}),(0,i.jsx)(d.default,{variant:"body1",paragraph:!0,children:"This application is configured with custom encryption. Please enter your encryption password to access your encrypted data."}),(0,i.jsx)(p.A,{autoFocus:!0,fullWidth:!0,label:"Encryption Password",variant:"outlined",type:S?"text":"password",value:a,onChange:e=>E(e.target.value),onKeyDown:e=>{"Enter"===e.key&&_()},InputProps:{endAdornment:(0,i.jsx)(h.A,{position:"end",children:(0,i.jsx)(v.A,{"aria-label":"toggle password visibility",onClick:()=>k(!S),edge:"end",children:S?(0,i.jsx)(w.A,{}):(0,i.jsx)(g.A,{})})})},sx:{mt:2}})]}),(0,i.jsx)(y.A,{children:(0,i.jsx)(f.A,{variant:"contained",color:"primary",onClick:_,disabled:C,startIcon:C?(0,i.jsx)(A.default,{size:20}):null,children:C?"Verifying...":"Unlock"})})]})}},42063:(e,t,n)=>{n.d(t,{A:()=>a});var i=n(36697),r=n(95155);let a=(0,i.A)((0,r.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5M12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5m0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3"}),"Visibility")},56422:(e,t,n)=>{n.d(t,{A:()=>g});var i,r=n(12115),a=n(2821),s=n(57001),o=n(81852),l=n(25635),d=n(45222),c=n(45918),u=n(48116),p=n(66964),h=n(16625),v=n(85795),y=n(95195);function f(e){return(0,y.Ay)("MuiInputAdornment",e)}let A=(0,v.A)("MuiInputAdornment",["root","filled","standard","outlined","positionStart","positionEnd","disablePointerEvents","hiddenLabel","sizeSmall"]);var m=n(95155);let w=(0,u.Ay)("div",{name:"MuiInputAdornment",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t["position".concat((0,o.A)(n.position))],!0===n.disablePointerEvents&&t.disablePointerEvents,t[n.variant]]}})((0,p.A)(e=>{let{theme:t}=e;return{display:"flex",maxHeight:"2em",alignItems:"center",whiteSpace:"nowrap",color:(t.vars||t).palette.action.active,variants:[{props:{variant:"filled"},style:{["&.".concat(A.positionStart,"&:not(.").concat(A.hiddenLabel,")")]:{marginTop:16}}},{props:{position:"start"},style:{marginRight:8}},{props:{position:"end"},style:{marginLeft:8}},{props:{disablePointerEvents:!0},style:{pointerEvents:"none"}}]}})),g=r.forwardRef(function(e,t){let n=(0,h.b)({props:e,name:"MuiInputAdornment"}),{children:u,className:p,component:v="div",disablePointerEvents:y=!1,disableTypography:A=!1,position:g,variant:x,...b}=n,j=(0,c.A)()||{},E=x;x&&j.variant,j&&!E&&(E=j.variant);let S={...n,hiddenLabel:j.hiddenLabel,size:j.size,disablePointerEvents:y,position:g,variant:E},k=(e=>{let{classes:t,disablePointerEvents:n,hiddenLabel:i,position:r,size:a,variant:l}=e,d={root:["root",n&&"disablePointerEvents",r&&"position".concat((0,o.A)(r)),l,i&&"hiddenLabel",a&&"size".concat((0,o.A)(a))]};return(0,s.A)(d,f,t)})(S);return(0,m.jsx)(d.A.Provider,{value:null,children:(0,m.jsx)(w,{as:v,ownerState:S,className:(0,a.A)(k.root,p),ref:t,...b,children:"string"!=typeof u||A?(0,m.jsxs)(r.Fragment,{children:["start"===g?i||(i=(0,m.jsx)("span",{className:"notranslate","aria-hidden":!0,children:""})):null,u]}):(0,m.jsx)(l.default,{color:"textSecondary",children:u})})})})},68212:(e,t,n)=>{n.d(t,{A:()=>a});var i=n(36697),r=n(95155);let a=(0,i.A)((0,r.jsx)("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7M2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2m4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3z"}),"VisibilityOff")}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3545,9195],{69195:(e,t,o)=>{o.r(t),o.d(t,{TourProvider:()=>u,useTour:()=>d});var n=o(95155),a=o(12115),l=o(9164),r=o(77326);let i=(0,o(87021).h)("frontend/contexts/TourContext"),s=(0,a.createContext)({isActive:!1,stepIndex:0,startTour:()=>{},next:()=>{},back:()=>{},endTour:()=>{}}),d=()=>(0,a.useContext)(s),u=e=>{var t;let{children:o}=e,{settings:d,updateSettings:u,isLoading:c,settingsHydrated:h}=(0,l.useStorage)(),[p,m]=(0,a.useState)(!1),[f,g]=(0,a.useState)(0),b=(0,a.useRef)(!1),w=(0,a.useCallback)(()=>{var e;u({...d,onboarding:{...null!=(e=d.onboarding)?e:{},completed:!0}}).catch(e=>i.warn("Failed to persist onboarding completion",e))},[d,u]),x=(0,a.useCallback)(()=>{i.info("Starting guided tour"),g(0),m(!0)},[]),v=(0,a.useCallback)(()=>{i.info("Ending guided tour"),m(!1),w()},[w]),y=(0,a.useCallback)(()=>{g(e=>e>=r.$.length-1?(m(!1),w(),e):e+1)},[w]),k=(0,a.useCallback)(()=>{g(e=>Math.max(0,e-1))},[]);return(0,a.useEffect)(()=>{var e;c||!h||b.current||(b.current=!0,(null==(e=d.onboarding)?void 0:e.completed)!==!0&&(i.info("First run detected — auto-starting guided tour"),x()))},[c,h,null==(t=d.onboarding)?void 0:t.completed,x]),(0,n.jsx)(s.Provider,{value:{isActive:p,stepIndex:f,startTour:x,next:y,back:k,endTour:v},children:o})}},77326:(e,t,o)=>{o.d(t,{$:()=>n});let n=[{id:"welcome",path:"/",placement:"center",title:"Welcome to FLUJO \uD83D\uDC4B",body:"This quick tour walks you through going from zero to a running AI flow.\n\nYou'll add a model, connect a tool server, build a flow, and run it in chat. It takes about a minute — you can skip any time."},{id:"add-model",path:"/models",target:'[data-tour="add-model"]',placement:"bottom",title:"1. Add a model",body:'FLUJO needs at least one AI model to think with. Click "Add Model" to configure one.\n\nTip: an OpenRouter API key gives you access to several free models — paste the key, name the model, pick a free one, and add a custom instruction.'},{id:"add-mcp-server",path:"/mcp",target:'[data-tour="add-mcp-server"]',placement:"bottom",title:"2. Connect a tool server (MCP)",body:'MCP servers give your model real tools — file access, image generation, web search, and more.\n\nClick "Add Server" and install the "Everything" reference server to try the full range of capabilities while you learn.'},{id:"new-flow",path:"/flows",target:'[data-tour="new-flow"]',placement:"bottom",title:"3. Build a flow",body:'A flow wires everything together. Click "New Flow" to open the builder.\n\nConnect Start → Process → Finish, attach your model to the Process node, and bind the Everything MCP server so the model can use its tools.'},{id:"chat-input",path:"/chat",target:'[data-tour="chat-input"]',placement:"top",title:"4. Run it in chat",body:"Pick your flow from the selector, then send a message here.\n\nTry asking it to generate an image with the MCP server and tell you a joke — you'll see the flow execute live, step by step."},{id:"docs",path:"/chat",target:'[data-tour="nav-docs"]',placement:"bottom",title:"Need the API?",body:"FLUJO exposes an OpenAI-compatible API and a full REST surface. The Docs page lists every endpoint with its method, parameters, and response shape.\n\nYou can re-run this tour any time from Settings → Onboarding."},{id:"finish",path:"/chat",placement:"center",title:"You're all set \uD83C\uDF89",body:"That's the whole loop: models, tools, flows, and chat.\n\nExplore at your own pace — and remember the Docs page and Settings are there when you need them."}]},83545:(e,t,o)=>{o.r(t),o.d(t,{default:()=>g});var n=o(95155),a=o(12115),l=o(94049),r=o(2300),i=o(25635),s=o(2411),d=o(70690),u=o(77073),c=o(41983),h=o(20063),p=o(69195),m=o(77326);function f(e){let{top:t,left:o,vw:n,transform:a}=e,l=o;return(a.includes("-50%, -100%")||a.includes("-50%, 0"))&&(l=Math.min(Math.max(o,188),n-180-8)),{top:t,left:l,transform:a}}function g(){let{isActive:e,stepIndex:t,next:o,back:g,endTour:b}=(0,p.useTour)(),w=(0,h.usePathname)(),x=(0,h.useRouter)(),[v,y]=(0,a.useState)(null),k=e?m.$[t]:void 0;if((0,a.useEffect)(()=>{k&&w!==k.path&&x.push(k.path)},[k,w,x]),(0,a.useLayoutEffect)(()=>{if(!k||w!==k.path)return void y(null);let e=0,t=!1,o=()=>{if(k.target){let e=document.querySelector(k.target);if(e){t||(e.scrollIntoView({block:"center",behavior:"smooth"}),t=!0);let o=e.getBoundingClientRect();y({top:o.top,left:o.left,width:o.width,height:o.height})}else y(null)}else y(null);e=window.setTimeout(o,200)};return o(),()=>window.clearTimeout(e)},[k,w,t]),!e||!k)return null;let C=w===k.path&&null!==v,A=function(e,t){let o,n=window.innerWidth,a=window.innerHeight;if(!e||"center"===t)return{top:"50%",left:"50%",transform:"translate(-50%, -50%)"};switch(t){case"top":return f({top:o=e.top-16,left:e.left+e.width/2,vw:n,vh:a,transform:"translate(-50%, -100%)"});case"left":return f({top:o=e.top+e.height/2,left:e.left-16,vw:n,vh:a,transform:"translate(-100%, -50%)"});case"right":return f({top:o=e.top+e.height/2,left:e.left+e.width+16,vw:n,vh:a,transform:"translate(0, -50%)"});default:return f({top:o=e.top+e.height+16,left:e.left+e.width/2,vw:n,vh:a,transform:"translate(-50%, 0)"})}}(C?v:null,k.placement),j=0===t,S=t===m.$.length-1;return(0,n.jsxs)(l.default,{sx:{position:"fixed",inset:0,zIndex:e=>e.zIndex.modal+200,pointerEvents:"none"},children:[!C&&(0,n.jsx)(l.default,{sx:{position:"absolute",inset:0,backgroundColor:"rgba(0,0,0,0.55)",pointerEvents:"auto"}}),C&&v&&(0,n.jsx)(l.default,{sx:{position:"absolute",top:v.top-8,left:v.left-8,width:v.width+16,height:v.height+16,borderRadius:1.5,boxShadow:"0 0 0 9999px rgba(0,0,0,0.55)",outline:e=>"2px solid ".concat(e.palette.primary.main),transition:"all 0.2s ease",pointerEvents:"none"}}),(0,n.jsxs)(r.A,{elevation:8,sx:{position:"absolute",width:360,maxWidth:"calc(100vw - 32px)",p:2.5,pointerEvents:"auto",...A},children:[(0,n.jsx)(c.A,{"aria-label":"Close tour",size:"small",onClick:b,sx:{position:"absolute",top:6,right:6},children:(0,n.jsx)(u.A,{fontSize:"small"})}),(0,n.jsx)(i.default,{variant:"h6",gutterBottom:!0,sx:{pr:3},children:k.title}),k.body.split("\n\n").map((e,t)=>(0,n.jsx)(i.default,{variant:"body2",color:"text.secondary",sx:{mb:1.5},children:e},t)),(0,n.jsx)(s.A,{variant:"dots",steps:m.$.length,position:"static",activeStep:t,sx:{background:"transparent",px:0,mt:1},nextButton:(0,n.jsx)(d.A,{size:"small",variant:"contained",onClick:o,children:S?"Finish":"Next"}),backButton:(0,n.jsx)(d.A,{size:"small",onClick:g,disabled:j,children:"Back"})}),(0,n.jsx)(l.default,{sx:{display:"flex",justifyContent:"center",mt:.5},children:!S&&(0,n.jsx)(d.A,{size:"small",color:"inherit",onClick:b,sx:{opacity:.7},children:"Skip tour"})})]})]})}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9164],{1877:(e,t,n)=>{n.d(t,{xc:()=>r,yo:()=>o});let a=["key","secret","token","password"],r=e=>a.some(t=>e.toLowerCase().includes(t)),o=e=>{if(!e)return e;if(e.includes("_-_-_")){let t=e.split("_-_-_");return 3===t.length?t[2]:e}let t=/^mcp_(.+)_[0-9a-z]+$/.exec(e);if(t&&t[1])return t[1];let n=e.indexOf("__");return n>0&&n+2<e.length?e.slice(n+2):e}},9164:(e,t,n)=>{n.r(t),n.d(t,{StorageProvider:()=>u,default:()=>p,useStorage:()=>y});var a=n(95155),r=n(12115),o=n(29692),i=n(1877),s=n(87021),c=n(31373);let l=(0,s.h)("frontend/contexts/StorageContext"),d=(0,r.createContext)({setKey:async()=>{},changeKey:async()=>!1,verifyKey:async()=>!1,isEncryptionInitialized:async()=>!1,globalEnvVars:{},setGlobalEnvVars:async()=>{},deleteGlobalEnvVar:async()=>{},encryptValue:async()=>null,decryptValue:async()=>null,isUserEncryptionEnabled:async()=>!1,isLoading:!0,settings:{speech:{enabled:!0},update:{checkOnStartup:!1}},settingsHydrated:!1,updateSettings:async()=>{}}),y=()=>(0,r.useContext)(d),u=e=>{let{children:t}=e,[n,s]=(0,r.useState)(!1),[y,u]=(0,r.useState)(!1),[p,g]=(0,r.useState)({}),[h,f]=(0,r.useState)({speech:{enabled:!0},update:{checkOnStartup:!1}}),E=(0,r.useCallback)(async()=>{l.debug("isEncryptionInitialized: Entering method");try{let e=await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"check_initialized"})});if(!e.ok)throw Error("Failed to check encryption status");let t=await e.json();return!0===t.initialized}catch(e){return l.warn("isEncryptionInitialized: Failed to check encryption status:",e),!1}},[]),w=(0,r.useCallback)(async e=>{l.debug("setKey: Entering method");try{if(!(await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"initialize",password:e})})).ok)throw Error("Failed to set encryption key")}catch(e){l.warn("setKey: Failed to set encryption key:",e)}},[]),S=(0,r.useCallback)(async(e,t)=>{l.debug("changeKey: Entering method");try{let n=await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"change_password",oldPassword:e,newPassword:t})});if(!n.ok)throw Error("Failed to change encryption key");let a=await n.json();if(a.success&&sessionStorage.getItem("encryption_token")){let e=await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"authenticate",password:t})});if(e.ok){let t=await e.json();t.success&&t.token&&(sessionStorage.setItem("encryption_token",t.token),sessionStorage.setItem("encryption_authenticated","true"),sessionStorage.removeItem("encryption_key"))}}return!0===a.success}catch(e){return l.warn("changeKey: Failed to change encryption key:",e),!1}},[]),v=(0,r.useCallback)(async e=>{l.debug("verifyKey: Entering method");try{let t=await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"verify_password",password:e})});if(!t.ok)throw Error("Failed to verify encryption key");let n=await t.json();return n.valid&&n.token&&(sessionStorage.setItem("encryption_token",n.token),sessionStorage.setItem("encryption_authenticated","true"),sessionStorage.removeItem("encryption_key")),!0===n.valid}catch(e){return l.warn("verifyKey: Failed to verify encryption key:",e),!1}},[]),b=(0,r.useCallback)(async()=>{let e={speech:{enabled:!0},update:{checkOnStartup:!1}};try{var t;let n=await fetch("/api/storage?key=".concat(encodeURIComponent(o.Zg.SPEECH_SETTINGS),"&defaultValue=").concat(encodeURIComponent(JSON.stringify(e))));if(!n.ok)return void l.debug("loadSettings: settings read not ok, keeping defaults",{status:n.status});let a=await n.json();l.debug("Loaded settings from storage",{settings:a.value}),f(null!=(t=a.value)?t:e),u(!0)}catch(e){l.warn("loadSettings: failed to load settings:",e)}},[]);(0,r.useEffect)(()=>{let e=()=>{l.info("Encryption unlocked signal received; reloading settings"),b()};return window.addEventListener(c.ZB,e),()=>window.removeEventListener(c.ZB,e)},[b]),(0,r.useEffect)(()=>{(async()=>{l.debug("loadData: Entering method");try{l.info("Calling initialization API to verify storage");let e=await fetch("/api/init");if(e.ok)l.info("Storage initialization completed successfully");else{let t=await e.json();l.warn("Storage initialization warning:",t.error)}await E()||await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"initialize_default"})});let t=await fetch("/api/env?includeSecrets=false");if(t.ok){let e=await t.json();l.debug("Loaded environment variables",{count:Object.keys(e.variables||{}).length}),g(e.variables||{})}else l.error("loadData: Failed to load environment variables"),g({});await b(),s(!0)}catch(e){l.error("loadData: Error loading data:",e),s(!0)}})()},[E,b]);let k=(0,r.useCallback)(async(e,t)=>{l.debug("encryptValue: Entering method");try{let n=sessionStorage.getItem("encryption_token"),a=sessionStorage.getItem("encryption_key"),r={action:"encrypt",data:e};n?r.token=n:t?r.password=t:a&&(r.password=a);let o=await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});if(!o.ok)throw Error("Failed to encrypt value");return(await o.json()).result}catch(e){return l.warn("encryptValue: Failed to encrypt value:",e),null}},[]),m=(0,r.useCallback)(async(e,t)=>(l.debug("decryptValue: Entering method - THIS METHOD IS DEPRECATED"),l.warn("decryptValue: Frontend decryption is deprecated for security reasons"),null),[]),_=(0,r.useCallback)(async()=>{l.debug("isUserEncryptionEnabled: Entering method");try{let e=await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"check_user_encryption"})});if(!e.ok)throw Error("Failed to check user encryption status");let t=await e.json();return!0===t.userEncryption}catch(e){return l.warn("isUserEncryptionEnabled: Failed to check user encryption status:",e),!1}},[]),C=(0,r.useCallback)(async e=>{l.debug("setGlobalEnvVars: Entering method");try{await E()||await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"initialize_default"})});let t=await fetch("/api/env",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"setAll",variables:e})});if(!t.ok){let e=await t.json();l.error("setGlobalEnvVars: Failed to set environment variables:",e.error);return}let n={};for(let[t,a]of Object.entries(e)){let e="object"==typeof a&&null!==a&&"value"in a?a.value:a,r="object"==typeof a&&null!==a&&"metadata"in a?a.metadata:{isSecret:(0,i.xc)(t)};r.isSecret?n[t]={value:"********",metadata:r}:n[t]={value:e,metadata:r}}g(n)}catch(e){l.error("setGlobalEnvVars: Error setting environment variables:",e)}},[E]),O=(0,r.useCallback)(async e=>{l.debug("deleteGlobalEnvVar: Deleting environment variable: ".concat(e));try{let t=await fetch("/api/env",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"delete",key:e})});if(!t.ok){let e=await t.json();l.error("deleteGlobalEnvVar: Failed to delete environment variable:",e.error);return}g(t=>{let n={...t};return delete n[e],n})}catch(e){l.error("deleteGlobalEnvVar: Error deleting environment variable:",e)}},[]),T=(0,r.useCallback)(async e=>{l.debug("updateSettings: Updating settings",{newSettings:e});try{await (0,o.VH)(o.Zg.SPEECH_SETTINGS,e),f(e)}catch(e){l.error("updateSettings: Error updating settings:",e)}},[]);return(0,a.jsx)(d.Provider,{value:{setKey:w,changeKey:S,verifyKey:v,isEncryptionInitialized:E,globalEnvVars:p,setGlobalEnvVars:C,deleteGlobalEnvVar:O,encryptValue:k,decryptValue:m,isUserEncryptionEnabled:_,isLoading:!n,settings:h,settingsHydrated:y,updateSettings:T},children:t})},p=d},27156:(e,t,n)=>{n.d(t,{Z:()=>a});var a=function(e){return e.MODELS="models",e.FLOWS="flows",e.CHAT_HISTORY="history",e.THEME="theme",e.ENCRYPTION_KEY="encryption_key",e.MCP_SERVERS="mcp_servers",e.GLOBAL_ENV_VARS="global_env_vars",e.CURRENT_CONVERSATION_ID="current_conversation_id",e.SELECTED_FLOW_ID="selected_flow_id",e.SPEECH_SETTINGS="speech_settings",e.SPOTLIGHT_SERVERS="spotlight_servers",e.PLANNED_EXECUTIONS="planned_executions",e}({})},29692:(e,t,n)=>{n.d(t,{Zg:()=>a.Z,YM:()=>c,VH:()=>s,Mj:()=>i});var a=n(27156),r=n(12115);let o=(0,n(87021).h)("utils/storage/frontend.ts");function i(e,t){o.verbose("useLocalStorage: Entering method");let[n,a]=(0,r.useState)(t),[i,s]=(0,r.useState)(!0),c=(0,r.useRef)(n);return(0,r.useEffect)(()=>{c.current=n},[n]),(0,r.useEffect)(()=>{(async()=>{o.verbose("loadValue: Entering method");try{let n=await fetch("/api/storage?key=".concat(encodeURIComponent(e),"&defaultValue=").concat(encodeURIComponent(JSON.stringify(t)))),r=await n.json();n.ok&&a(r.value)}catch(t){o.warn('Error reading storage key "'.concat(e,'":'),t)}finally{s(!1)}})()},[e]),[n,(0,r.useCallback)(async t=>{o.verbose("setValue: Entering method");try{let n=t instanceof Function?t(c.current):t;if(a(n),!(await fetch("/api/storage",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:e,value:n})})).ok)throw Error("Failed to save value")}catch(t){o.warn('Error setting storage key "'.concat(e,'":'),t)}},[e]),i]}let s=async(e,t)=>{o.verbose("saveItem: Entering method");try{if(!(await fetch("/api/storage",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:e,value:t})})).ok)throw Error("Failed to save item")}catch(e){throw o.error("Error saving to storage:",e),e}},c=async(e,t)=>{o.verbose("loadItem: Entering method");try{let n=await fetch("/api/storage?key=".concat(encodeURIComponent(e),"&defaultValue=").concat(encodeURIComponent(JSON.stringify(t))));if(!n.ok)throw Error("Failed to load item");return(await n.json()).value}catch(e){return o.error("Error loading from storage:",e),t}}},31373:(e,t,n)=>{n.d(t,{UJ:()=>a,ZB:()=>r,bx:()=>i});let a="flujo:encryption-locked",r="flujo:encryption-unlocked",o=!1;function i(){if(o||"function"!=typeof window.fetch)return;o=!0;let e=window.fetch.bind(window);window.fetch=async function(){for(var t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];let o=await e(...n);return 423===o.status&&function(){try{sessionStorage.removeItem("encryption_authenticated"),sessionStorage.removeItem("encryption_token")}catch(e){}window.dispatchEvent(new CustomEvent(a))}(),o}}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9195],{69195:(e,t,o)=>{o.r(t),o.d(t,{TourProvider:()=>c,useTour:()=>s});var a=o(95155),n=o(12115),r=o(9164),l=o(77326);let d=(0,o(87021).h)("frontend/contexts/TourContext"),i=(0,n.createContext)({isActive:!1,stepIndex:0,startTour:()=>{},next:()=>{},back:()=>{},endTour:()=>{}}),s=()=>(0,n.useContext)(i),c=e=>{var t;let{children:o}=e,{settings:s,updateSettings:c,isLoading:u,settingsHydrated:h}=(0,r.useStorage)(),[m,p]=(0,n.useState)(!1),[g,b]=(0,n.useState)(0),f=(0,n.useRef)(!1),y=(0,n.useCallback)(()=>{var e;c({...s,onboarding:{...null!=(e=s.onboarding)?e:{},completed:!0}}).catch(e=>d.warn("Failed to persist onboarding completion",e))},[s,c]),v=(0,n.useCallback)(()=>{d.info("Starting guided tour"),b(0),p(!0)},[]),w=(0,n.useCallback)(()=>{d.info("Ending guided tour"),p(!1),y()},[y]),k=(0,n.useCallback)(()=>{b(e=>e>=l.$.length-1?(p(!1),y(),e):e+1)},[y]),C=(0,n.useCallback)(()=>{b(e=>Math.max(0,e-1))},[]);return(0,n.useEffect)(()=>{var e;u||!h||f.current||(f.current=!0,(null==(e=s.onboarding)?void 0:e.completed)!==!0&&(d.info("First run detected — auto-starting guided tour"),v()))},[u,h,null==(t=s.onboarding)?void 0:t.completed,v]),(0,a.jsx)(i.Provider,{value:{isActive:m,stepIndex:g,startTour:v,next:k,back:C,endTour:w},children:o})}},77326:(e,t,o)=>{o.d(t,{$:()=>a});let a=[{id:"welcome",path:"/",placement:"center",title:"Welcome to FLUJO \uD83D\uDC4B",body:"This quick tour walks you through going from zero to a running AI flow.\n\nYou'll add a model, connect a tool server, build a flow, and run it in chat. It takes about a minute — you can skip any time."},{id:"add-model",path:"/models",target:'[data-tour="add-model"]',placement:"bottom",title:"1. Add a model",body:'FLUJO needs at least one AI model to think with. Click "Add Model" to configure one.\n\nTip: an OpenRouter API key gives you access to several free models — paste the key, name the model, pick a free one, and add a custom instruction.'},{id:"add-mcp-server",path:"/mcp",target:'[data-tour="add-mcp-server"]',placement:"bottom",title:"2. Connect a tool server (MCP)",body:'MCP servers give your model real tools — file access, image generation, web search, and more.\n\nClick "Add Server" and install the "Everything" reference server to try the full range of capabilities while you learn.'},{id:"new-flow",path:"/flows",target:'[data-tour="new-flow"]',placement:"bottom",title:"3. Build a flow",body:'A flow wires everything together. Click "New Flow" to open the builder.\n\nConnect Start → Process → Finish, attach your model to the Process node, and bind the Everything MCP server so the model can use its tools.'},{id:"chat-input",path:"/chat",target:'[data-tour="chat-input"]',placement:"top",title:"4. Run it in chat",body:"Pick your flow from the selector, then send a message here.\n\nTry asking it to generate an image with the MCP server and tell you a joke — you'll see the flow execute live, step by step."},{id:"docs",path:"/chat",target:'[data-tour="nav-docs"]',placement:"bottom",title:"Need the API?",body:"FLUJO exposes an OpenAI-compatible API and a full REST surface. The Docs page lists every endpoint with its method, parameters, and response shape.\n\nYou can re-run this tour any time from Settings → Onboarding."},{id:"finish",path:"/chat",placement:"center",title:"You're all set \uD83C\uDF89",body:"That's the whole loop: models, tools, flows, and chat.\n\nExplore at your own pace — and remember the Docs page and Settings are there when you need them."}]}}]);
|