flujo-ai 3.40.0 → 3.41.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 +400 -384
- package/.next/app-path-routes-manifest.json +53 -53
- package/.next/build-manifest.json +5 -5
- package/.next/prerender-manifest.json +33 -33
- package/.next/react-loadable-manifest.json +9 -9
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +3 -3
- package/.next/server/app/api/approvals/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/backup/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/browse/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/bugs/enhance/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/cwd/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/encryption/secure/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/env/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/[id]/convert-process-to-subflow/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/[id]/versions/[versionId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/[id]/versions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/assist/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/compile/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/generate/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/generator/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/improve/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/prompt-renderer/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/quick-chat/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/repair/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/flow/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/local-models/capability/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/local-models/pull/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/local-models/suggest/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/app-sandbox/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/flujo/authoring/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/flujo/automation/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/flujo/flows/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/flujo/resources/read/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/flujo/resources/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/flujo/servers/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/flujo/state/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/flujo/tools/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp/oauth-capability/route_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +1 -1
- package/.next/server/app/api/mcp-registry/spotlight/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/model/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/model/provider/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/model/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/model/test/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/initiate/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/reset/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/build/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/derive-secrets/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/install/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/install/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/installed/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/resolve/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/scan-targets/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/search/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/packages/uninstall/route_client-reference-manifest.js +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_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/[id]/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/preview-schedule/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/reconcile/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/planned-executions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/auth/resend/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/auth/reset/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/auth/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/feedback/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/oauth/callback/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/oauth/initiate/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/packages/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/publish/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/registry/settings/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/restore/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/runs/active/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/setup/ai-cli/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/statistics/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/storage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/telemetry/daily-active/route.js +1 -1
- package/.next/server/app/api/telemetry/daily-active/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/waves/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/webhooks/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/automation/triggers/page.js +1 -1
- package/.next/server/app/automation/triggers/page.js.nft.json +1 -1
- package/.next/server/app/automation/triggers/page_client-reference-manifest.js +1 -1
- package/.next/server/app/automation/triggers.html +1 -1
- package/.next/server/app/automation/triggers.rsc +4 -4
- package/.next/server/app/automation/waves/page_client-reference-manifest.js +1 -1
- package/.next/server/app/automation/waves.html +1 -1
- package/.next/server/app/automation/waves.rsc +4 -4
- package/.next/server/app/chat/page.js +2 -2
- package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
- package/.next/server/app/chat.html +1 -1
- package/.next/server/app/chat.rsc +4 -4
- package/.next/server/app/docs/page.js +3 -3
- package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/docs.html +1 -1
- package/.next/server/app/docs.rsc +4 -4
- package/.next/server/app/executions/page.js +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 +4 -4
- package/.next/server/app/flows/page.js +5 -3
- package/.next/server/app/flows/page.js.nft.json +1 -1
- package/.next/server/app/flows/page_client-reference-manifest.js +1 -1
- package/.next/server/app/flows.html +1 -1
- package/.next/server/app/flows.rsc +4 -4
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +4 -4
- package/.next/server/app/mcp/page.js +73 -44
- 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_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_client-reference-manifest.js +1 -1
- package/.next/server/app/mcp.html +1 -1
- package/.next/server/app/mcp.rsc +4 -4
- package/.next/server/app/models/page.js +7 -7
- package/.next/server/app/models/page_client-reference-manifest.js +1 -1
- package/.next/server/app/packages/page.js +1 -1
- package/.next/server/app/packages/page_client-reference-manifest.js +1 -1
- package/.next/server/app/packages.html +1 -1
- package/.next/server/app/packages.rsc +4 -4
- package/.next/server/app/page.js +2 -2
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page.js +2 -2
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +4 -4
- package/.next/server/app/statistics/page.js +2 -2
- package/.next/server/app/statistics/page_client-reference-manifest.js +1 -1
- package/.next/server/app/statistics.html +1 -1
- package/.next/server/app/statistics.rsc +4 -4
- package/.next/server/app/v1/chat/completions/route_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/inject/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/resources/[resourceId]/content/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/resources/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/conversations/[conversationId]/revert/route_client-reference-manifest.js +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_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/chat/events/route_client-reference-manifest.js +1 -1
- package/.next/server/app/v1/models/route_client-reference-manifest.js +1 -1
- package/.next/server/app/waves/page_client-reference-manifest.js +1 -1
- package/.next/server/app/waves.html +1 -1
- package/.next/server/app/waves.rsc +4 -4
- package/.next/server/app-paths-manifest.json +53 -53
- package/.next/server/chunks/1227.js +1 -1
- package/.next/server/chunks/1403.js +2 -2
- package/.next/server/chunks/1539.js +1 -1
- package/.next/server/chunks/2069.js +1 -1
- package/.next/server/chunks/2372.js +1 -1
- package/.next/server/chunks/2828.js +2 -2
- package/.next/server/chunks/3422.js +1 -0
- package/.next/server/chunks/3945.js +3 -3
- package/.next/server/chunks/519.js +2 -2
- package/.next/server/chunks/5444.js +2 -2
- package/.next/server/chunks/5750.js +1 -1
- package/.next/server/chunks/5918.js +10 -10
- package/.next/server/chunks/6226.js +2 -2
- package/.next/server/chunks/9088.js +2 -2
- package/.next/server/chunks/9490.js +5 -0
- package/.next/server/chunks/9543.js +3 -3
- package/.next/server/chunks/9624.js +8 -8
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-manifest.json +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/{1161-19176c3e7c655121.js → 1161-563a8028f59f00de.js} +1 -1
- package/.next/static/chunks/1521-9ad145dcb8e3abfc.js +1 -0
- package/.next/static/chunks/1576.06797b29a19fa26c.js +1 -0
- package/.next/static/chunks/{4386-e9621d3c94969a68.js → 2005-f9d38c39f10c321f.js} +1 -1
- package/.next/static/chunks/2493-da85c47ef972c066.js +1 -0
- package/.next/static/chunks/361.c88d43436e974006.js +1 -0
- package/.next/static/chunks/3731-c18f48522b159d7f.js +1 -0
- package/.next/static/chunks/3781.5086bce03aa281f7.js +1 -0
- package/.next/static/chunks/3969-15a32253b112652c.js +1 -0
- package/.next/static/chunks/4167.2ce97ca450815df1.js +1 -0
- package/.next/static/chunks/4814-52b7254ab573a455.js +1 -0
- package/.next/static/chunks/4965.d401547984d71b7a.js +1 -0
- package/.next/static/chunks/5148-9174ba300221fd1b.js +1 -0
- package/.next/static/chunks/5417-fb7d3760cc288ab1.js +1 -0
- package/.next/static/chunks/5967-34735763d1b03ccc.js +1 -0
- package/.next/static/chunks/7260-743e4b0cc4211dcb.js +1 -0
- package/.next/static/chunks/7711-7323dabe7dc02311.js +1 -0
- package/.next/static/chunks/8124-f99060fe1dfc119e.js +1 -0
- package/.next/static/chunks/8135-7fe07a34a8c49967.js +1 -0
- package/.next/static/chunks/8529.6187e01de8e9a692.js +1 -0
- package/.next/static/chunks/9136-e9ee57cc581ddd50.js +1 -0
- package/.next/static/chunks/9140.9180b569c4b26168.js +1 -0
- package/.next/static/chunks/9195-6a18a5867bb76c64.js +1 -0
- package/.next/static/chunks/app/automation/triggers/{page-594a6294c58344bf.js → page-34b9a8a2e6f28c2f.js} +1 -1
- package/.next/static/chunks/app/automation/waves/{page-ce2fef4996cad8e6.js → page-fd4929ea308183b2.js} +1 -1
- package/.next/static/chunks/app/chat/page-fb8a33db7628ecd0.js +1 -0
- package/.next/static/chunks/app/docs/page-3e21583b1cd5d7ca.js +1 -0
- package/.next/static/chunks/app/executions/{page-fcc848de86714386.js → page-56ecca56c17c05d7.js} +1 -1
- package/.next/static/chunks/app/flows/page-8c1a656197b15894.js +1 -0
- package/.next/static/chunks/app/layout-6e2756704ddc9f39.js +1 -0
- package/.next/static/chunks/app/mcp/page-4c4390354fdd94c8.js +1 -0
- package/.next/static/chunks/app/models/error-ea477f0ad52f4dcb.js +1 -0
- package/.next/static/chunks/app/models/page-e237ac64a0f62c3d.js +1 -0
- package/.next/static/chunks/app/packages/page-8680e4bea6b7ea45.js +1 -0
- package/.next/static/chunks/app/page-6dca06b6b7667181.js +1 -0
- package/.next/static/chunks/app/settings/page-a5f7fedcbf9e3a7f.js +1 -0
- package/.next/static/chunks/app/statistics/page-f9f9627d1c1ff963.js +1 -0
- package/.next/static/chunks/app/waves/{page-5b53af3eb9409414.js → page-7529febc48eb473d.js} +1 -1
- package/.next/static/chunks/{webpack-9fbd3587b9ef4dca.js → webpack-f3df493faa0bd612.js} +1 -1
- package/.next/static/css/{400b1b927c3ffaf6.css → 9f9b7f1374ac2d01.css} +1 -1
- package/.next/trace +11 -11
- package/README.md +1 -1
- package/mcp-servers/bash/package.json +1 -1
- package/mcp-servers/browser/package.json +1 -1
- package/mcp-servers/filesystem/package.json +1 -1
- package/mcp-servers/flujo/package.json +1 -1
- package/package.json +5 -5
- package/.next/server/chunks/7508.js +0 -5
- package/.next/server/chunks/8598.js +0 -1
- package/.next/static/chunks/1521-1c98c9a56726e053.js +0 -1
- package/.next/static/chunks/1576.bc6ae6c9e6d939d8.js +0 -1
- package/.next/static/chunks/2005.300528b5119c2d38.js +0 -1
- package/.next/static/chunks/2499-92cd97ce4993999f.js +0 -1
- package/.next/static/chunks/361.51d642c530c84295.js +0 -1
- package/.next/static/chunks/3731-64070760ae44448f.js +0 -1
- package/.next/static/chunks/4814-31eb5f3b10c651c1.js +0 -1
- package/.next/static/chunks/4965.39e24b54c3c6ca58.js +0 -1
- package/.next/static/chunks/5967-59fde8c214c9ca9f.js +0 -1
- package/.next/static/chunks/6417.70056fe81ca21682.js +0 -1
- package/.next/static/chunks/7711-4b017720ec49c96d.js +0 -1
- package/.next/static/chunks/8124-94140ee1dd8ed87c.js +0 -1
- package/.next/static/chunks/8135-5b975b9014f8920b.js +0 -1
- package/.next/static/chunks/8529.b5a43e728bb5bb8a.js +0 -1
- package/.next/static/chunks/9001-4c27a608feddb878.js +0 -1
- package/.next/static/chunks/9136-9c415453ec02519c.js +0 -1
- package/.next/static/chunks/9140.6502327a2c098d33.js +0 -1
- package/.next/static/chunks/9195-3c9c4300e7505d9e.js +0 -1
- package/.next/static/chunks/9524-b9d2c7e4426edd07.js +0 -1
- package/.next/static/chunks/app/chat/page-203cb7bf21638ada.js +0 -1
- package/.next/static/chunks/app/docs/page-c466a58caf5e3336.js +0 -1
- package/.next/static/chunks/app/flows/page-172c759ca81ba02f.js +0 -1
- package/.next/static/chunks/app/layout-a6ca531683a518a7.js +0 -1
- package/.next/static/chunks/app/mcp/page-0a96e6b30e45b1e6.js +0 -1
- package/.next/static/chunks/app/models/error-1964203c5c6e7d0e.js +0 -1
- package/.next/static/chunks/app/models/page-ad1cbea6d3324966.js +0 -1
- package/.next/static/chunks/app/packages/page-dda48425be9fc137.js +0 -1
- package/.next/static/chunks/app/page-04189aa1b1318c2d.js +0 -1
- package/.next/static/chunks/app/settings/page-906c229c87011ead.js +0 -1
- package/.next/static/chunks/app/statistics/page-9b13a95549f438c0.js +0 -1
- /package/.next/static/{b1aMk0634gkkiunttd1SQ → utOrEUSzguWncIosxgCeR}/_buildManifest.js +0 -0
- /package/.next/static/{b1aMk0634gkkiunttd1SQ → utOrEUSzguWncIosxgCeR}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8329],{11433:(e,r,t)=>{"use strict";t.d(r,{Ay:()=>b});var l=t(95155),o=t(12115),i=t(94049),a=t(2300),n=t(25635),s=t(63941),d=t(80372),c=t(29985),m=t(90880);t(32098);var u=t(36773);function p(e,r){let t=r.toLocaleLowerCase(),l=new Set;return e.filter(e=>{var r;return!l.has(e.value)&&(l.add(e.value),"".concat(e.label," ").concat(e.name," ").concat(e.server," ").concat(null!=(r=e.description)?r:"").toLocaleLowerCase().includes(t))}).sort((e,r)=>{let t={tool:0,resource:1,global:2,runres:3};return t[e.kind]-t[r.kind]||e.label.localeCompare(r.label)})}function x(e){let r=e.split("\n").map(e=>({type:"paragraph",children:(e=>{let r=(0,m.sE)(e);if(0===r.length)return[{text:e}];let t=[],l=0;for(let o of r)o.index>l&&t.push({text:e.slice(l,o.index)}),t.push({type:"binding-reference",kind:o.kind,server:o.server,name:o.name,children:[{text:""}]}),l=o.index+o.fullMatch.length;return l<e.length&&t.push({text:e.slice(l)}),t})(e)}));return r.length>0?r:[{type:"paragraph",children:[{text:""}]}]}function h(e){return e.map(e=>(e.children||[]).map(e=>s.EY.isText(e)?e.text:(0,m.Pj)(e.kind,e.server,e.name)).join("")).join("\n")}let f=(e,r)=>{e.selection||s.gB.select(e,s.KE.end(e,[])),s.gB.insertNodes(e,(e=>({type:"binding-reference",kind:e.kind,server:e.server,name:e.name,children:[{text:""}]}))(r)),s.gB.move(e)},v=e=>{let{element:r,disabled:t,invalid:o}=e,i=(0,c.Zi)(),{t:a}=(0,u.s9)(),n="tool"===r.kind&&"handoff"===r.server,d="global"===r.kind?"global":"runres"===r.kind?"runres":"resource"===r.kind?"resource":n?"handoff":"",p=()=>{t||(s.gB.removeNodes(i,{at:c.rL.findPath(i,r)}),c.rL.focus(i))};return(0,l.jsxs)("span",{contentEditable:!1,className:"tool-reference-container ".concat(d).concat(o?" invalid":""),title:o?a("references.invalid"):void 0,"aria-invalid":o||void 0,children:[(0,l.jsx)("span",{className:"tool-reference ".concat(d).concat(o?" invalid":""),children:(0,m.CN)(r)}),!t&&(0,l.jsx)("span",{className:"tool-reference-delete ".concat(d),role:"button","aria-label":a("references.remove",{name:(0,m.CN)(r)}),tabIndex:0,onClick:e=>{e.preventDefault(),e.stopPropagation(),p()},onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),e.stopPropagation(),p())},children:"\xd7"})]})},g=(0,o.forwardRef)((e,r)=>{let{value:t,onChange:g,globalNames:b=[],suggestions:y,placeholder:j,disabled:w=!1,multiline:A=!0,minRows:k=1,maxRows:C,autoFocus:z=!1,bare:S=!1,ariaLabel:T,dataTour:N,containerSx:M,onKeyDown:F,onPaste:L}=e,{t:I}=(0,u.s9)(),U=(0,o.useMemo)(()=>(0,d.$k)((e=>{let{isInline:r,isVoid:t,insertData:l,insertText:o}=e;return e.isInline=e=>"binding-reference"===e.type||r(e),e.isVoid=e=>"binding-reference"===e.type||t(e),e.insertText=r=>{o(r),r.includes("}")&&(e=>{if(!e.selection||!s.Q6.isCollapsed(e.selection))return;let r=e.selection.anchor,t=s.bP.get(e,r.path);if(!s.EY.isText(t))return;let l=t.text.slice(0,r.offset).match(/\$\{global:([^}\r\n]+)\}$/);if(!l||void 0===l.index)return;let o=(0,m.y4)(l[0]);o&&(s.gB.select(e,{anchor:{path:r.path,offset:l.index},focus:r}),s.gB.delete(e),f(e,o))})(e)},e.insertData=r=>{let t=r.getData("text/plain");if(t&&(0,m.sE)(t).length>0)return void s.gB.insertFragment(e,x(t));l(r)},e})((0,c.o$)((0,s.ie)()))),[]),E=(0,o.useMemo)(()=>x(t||""),[]),[W,O]=(0,o.useState)(null),[R,D]=(0,o.useState)(0),[P,B]=(0,o.useState)(0),q=(0,o.useRef)(!1),K=(0,o.useMemo)(()=>p([...null!=y?y:[],...b.map(e=>(0,m.Ub)({kind:"global",server:"",name:e},e))],""),[b,y]),X=(0,o.useMemo)(()=>y?new Set(K.map(e=>e.value)):null,[K,y]),_=(0,o.useCallback)(()=>{if(!U.selection||!s.Q6.isCollapsed(U.selection))return void O(null);let e=U.selection.anchor,r=s.bP.get(U,e.path);if(!s.EY.isText(r))return void O(null);let t=function(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.length,t=e.slice(0,r).match(/(?:^|\s)@([^\s@{}]*)$/);if(!t||void 0===t.index)return null;let l=t.index+ +!t[0].startsWith("@");return{query:t[1],start:l,end:r}}(r.text,e.offset),l=function(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.length,t=e.slice(0,r).match(/\$\{global:([^{}\r\n]*)$/);return t&&void 0!==t.index?{query:t[1],start:t.index,end:r}:null}(r.text,e.offset),o=null!=t?t:l;if(!o)return void O(null);let i=t?"at":"global",a=p("at"===i?K:K.filter(e=>"global"===e.kind),o.query);D(0),O({...o,mode:i,items:a,range:{anchor:{path:e.path,offset:o.start},focus:e}})},[U,K]),H=(0,o.useCallback)(e=>{if(!W)return;s.gB.select(U,W.range),s.gB.delete(U);let r=(0,m.y4)(e.value);r&&f(U,r),O(null),c.rL.focus(U)},[W,U]);(0,o.useImperativeHandle)(r,()=>({insertText:e=>{let r=(0,m.y4)(e);r?f(U,r):U.insertText(e),g(h(U.children)),c.rL.focus(U)},focus:()=>c.rL.focus(U)}),[U,g]),(0,o.useEffect)(()=>{h(U.children)!==h(x(t||""))&&(q.current=!0,U.children=x(t||""),U.selection=null,U.onChange(),B(e=>e+1))},[U,t]);let $=(0,o.useCallback)(e=>{if(q.current){q.current=!1;return}g(h(e)),_()},[g,_]),G=(0,o.useCallback)(e=>{let{attributes:r,children:t,element:o}=e;if("binding-reference"===o.type){let e=(0,m.Pj)(o.kind,o.server,o.name);return(0,l.jsxs)("span",{...r,className:"tool-reference-wrapper",children:[(0,l.jsx)(v,{element:o,disabled:w,invalid:null!==X&&!X.has(e)}),t]})}return(0,l.jsx)("p",{...r,children:t})},[w,X]),Y="".concat(1.5*Math.max(1,k),"em"),J=C?"".concat(1.5*Math.max(k,C),"em"):void 0;return(0,l.jsxs)(i.default,{sx:{position:"relative",width:"100%",...M},"data-revision":P,children:[(0,l.jsx)(i.default,{className:S?"global-reference-editor bare":"global-reference-editor",sx:{border:S?"none":"1px solid",borderColor:"rgba(0, 0, 0, 0.23)",borderRadius:+!S,px:1.75*!S,py:+!S,bgcolor:w?"action.disabledBackground":"background.paper","&:focus-within":S?{}:{borderColor:"primary.main",borderWidth:2,px:"13px",py:"7px"}},children:(0,l.jsx)(c.A,{editor:U,initialValue:E,onChange:$,children:(0,l.jsx)(c.Fo,{className:"slate-editor global-reference-editable",renderElement:G,placeholder:j,readOnly:w,autoFocus:z,"aria-label":T,"data-tour":N,role:"textbox","aria-multiline":A,onKeyDown:e=>{if(W){if("ArrowDown"===e.key&&W.items.length>0){e.preventDefault(),D(e=>(e+1)%W.items.length);return}if("ArrowUp"===e.key&&W.items.length>0){e.preventDefault(),D(e=>(e-1+W.items.length)%W.items.length);return}if(("Enter"===e.key||"Tab"===e.key)&&W.items[R]){e.preventDefault(),H(W.items[R]);return}if("Escape"===e.key){e.preventDefault(),e.stopPropagation(),O(null);return}}if(!A&&"Enter"===e.key)return void e.preventDefault();null==F||F(e)},onPaste:L,style:{minHeight:Y,maxHeight:J,overflowY:J?"auto":void 0,whiteSpace:A?"pre-wrap":"nowrap"}})})}),W&&(0,l.jsx)(a.A,{elevation:8,role:"listbox","aria-label":"at"===W.mode?I("references.available"):I("references.globals"),sx:{position:"absolute",zIndex:1500,top:"100%",left:0,right:0,mt:.5,maxHeight:240,overflowY:"auto"},children:0===W.items.length?(0,l.jsx)(i.default,{sx:{px:1.5,py:1.25},children:(0,l.jsx)(n.A,{variant:"body2",color:"text.secondary",children:I("references.none")})}):W.items.map((e,r)=>{var t;let a=null==(t=W.items[r-1])?void 0:t.kind,s="tool"===e.kind?I("references.tools"):"resource"===e.kind?I("references.resources"):"global"===e.kind?I("references.globals"):I("references.temporaryData");return(0,l.jsxs)(o.Fragment,{children:[e.kind!==a&&(0,l.jsx)(n.A,{component:"div",variant:"overline",sx:{px:1.5,pt:0===r?.75:1.25,color:"text.secondary"},children:s}),(0,l.jsxs)(i.default,{role:"option","aria-selected":r===R,onMouseDown:r=>{r.preventDefault(),H(e)},sx:{px:1.5,py:1,cursor:"pointer",bgcolor:r===R?"action.selected":"background.paper","&:hover":{bgcolor:"action.hover"}},children:[(0,l.jsx)(n.A,{component:"div",sx:{fontFamily:"monospace",fontSize:14},children:e.label}),(0,l.jsx)(n.A,{variant:"caption",color:"text.secondary",sx:{wordBreak:"break-all"},children:e.description||e.value})]})]},e.value)})})]})});g.displayName="GlobalReferenceEditor";let b=g},22573:(e,r,t)=>{"use strict";t.d(r,{A:()=>p});var l=t(95155);t(12115);var o=t(33567),i=t(94049),a=t(41983),n=t(25635),s=t(28548),d=t(50430),c=t(63186),m=t(91665),u=t(36773);let p=e=>{let{label:r,count:t,expanded:p,onToggle:x,showFolderIcon:h=!1,children:f}=e,v=(0,o.A)(),{t:g}=(0,u.s9)();return(0,l.jsxs)(i.default,{sx:{mb:1.5},children:[(0,l.jsxs)(i.default,{role:"button",tabIndex:0,"aria-expanded":p,onClick:x,onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),x())},sx:{display:"flex",alignItems:"center",gap:1,px:1,py:.75,borderRadius:1,cursor:"pointer",userSelect:"none",backgroundColor:v.palette.background.default,border:"1px solid ".concat(v.palette.divider),"&:hover":{backgroundColor:v.palette.action.hover}},children:[(0,l.jsx)(a.A,{size:"small","aria-label":g(p?"common.collapseSection":"common.expandSection"),onClick:e=>{e.stopPropagation(),x()},sx:{transition:"transform 0.2s",transform:p?"rotate(0deg)":"rotate(-90deg)"},children:(0,l.jsx)(c.A,{fontSize:"small"})}),h&&(0,l.jsx)(m.A,{fontSize:"small",sx:{color:"text.secondary"}}),(0,l.jsx)(n.A,{variant:"subtitle2",sx:{fontWeight:600},children:r}),(0,l.jsx)(s.A,{label:t,size:"small",sx:{height:20,fontSize:"0.7rem"}})]}),(0,l.jsx)(d.A,{in:p,unmountOnExit:!0,children:(0,l.jsx)(i.default,{sx:{pt:1.5},children:f})})]})}},23201:(e,r,t)=>{"use strict";t.d(r,{A:()=>s});var l=t(95155);t(12115);var o=t(5421),i=t(67895),a=t(97430),n=t(36773);function s(e){let{show:r,onClick:t,sx:s}=e,{t:d}=(0,n.s9)();return(0,l.jsx)(o.A,{in:r,unmountOnExit:!0,children:(0,l.jsx)(i.A,{size:"small",color:"primary","aria-label":d("backToTop.action"),onClick:t,sx:{position:"fixed",bottom:24,right:24,zIndex:1200,...s},children:(0,l.jsx)(a.A,{})})})}},32098:()=>{},36982:(e,r,t)=>{"use strict";t.d(r,{default:()=>n});var l=t(95155);t(12115);var o=t(94049),i=t(64598),a=t(23201);function n(e){let{storageKey:r,sx:t,threshold:n,deps:s,children:d}=e,{ref:c,showBackToTop:m,scrollToTop:u}=(0,i.R)(r,{threshold:n,deps:s});return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(o.default,{ref:c,sx:{...t,overflow:"auto"},children:d}),(0,l.jsx)(a.A,{show:m,onClick:u})]})}},38459:(e,r,t)=>{"use strict";t.d(r,{Az:()=>o,FM:()=>l,Je:()=>a,po:()=>i,yF:()=>n});let l="folder";function o(e,r){let t=[],l=new Map;for(let o of e){let{key:e,label:i}=r(o),a=l.get(e);a||(a={key:e,label:i,items:[]},l.set(e,a),t.push(a)),a.items.push(o)}return t}function i(e){let r=(null!=e?e:"").trim().charAt(0).toUpperCase();return r>="A"&&r<="Z"?{key:"letter:".concat(r),label:r}:{key:"letter:#",label:"#"}}function a(e,r){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Ungrouped",l=new Map,o=[];for(let t of e){var i;let e=null==(i=r(t))?void 0:i.trim();if(e){let r=l.get(e);r?r.push(t):l.set(e,[t])}else o.push(t)}let a=Array.from(l.keys()).sort((e,r)=>e.localeCompare(r)).map(e=>({key:"folder:".concat(e),label:e,items:l.get(e)}));return o.length>0&&a.push({key:"folder:__ungrouped__",label:t,items:o}),a}function n(e,r){let t=new Set;for(let o of e){var l;let e=null==(l=r(o))?void 0:l.trim();e&&t.add(e)}return Array.from(t).sort((e,r)=>e.localeCompare(r))}},48072:(e,r,t)=>{"use strict";t.d(r,{CR:()=>s,Lg:()=>i,eZ:()=>n});var l=t(88107),o=t(38459);let i=e=>e.displayName||e.name||"",a=e=>(0,l.T_)(e.provider,e.adapter).label;function n(e,r){switch(r){case"provider":{let r=a(e);return{key:"provider:".concat(r),label:r}}case"context-asc":case"context-desc":var t;return"number"!=typeof(t=e.contextWindow)||Number.isNaN(t)?{key:"ctx:unknown",label:"Unknown context"}:t<=8e3?{key:"ctx:<=8k",label:"≤ 8K tokens"}:t<=32e3?{key:"ctx:8k-32k",label:"8K–32K tokens"}:t<=128e3?{key:"ctx:32k-128k",label:"32K–128K tokens"}:t<=1e6?{key:"ctx:128k-1m",label:"128K–1M tokens"}:{key:"ctx:>1m",label:"> 1M tokens"};default:return(0,o.po)(i(e))}}function s(e,r){let t=(e,t)=>{switch(r){case"name-asc":return i(e).localeCompare(i(t));case"name-desc":return i(t).localeCompare(i(e));case"provider":return a(e).localeCompare(a(t))||i(e).localeCompare(i(t));case"context-desc":case"context-asc":{let l="number"!=typeof e.contextWindow||Number.isNaN(e.contextWindow)?void 0:e.contextWindow,o="number"!=typeof t.contextWindow||Number.isNaN(t.contextWindow)?void 0:t.contextWindow;if(void 0===l&&void 0===o)return i(e).localeCompare(i(t));if(void 0===l)return 1;if(void 0===o)return -1;let a="context-desc"===r?o-l:l-o;return 0!==a?a:i(e).localeCompare(i(t))}default:return 0}};return[...e].sort((e,r)=>{let l=Number(!!r.favorite)-Number(!!e.favorite);return 0!==l?l:t(e,r)})}},52397:(e,r,t)=>{"use strict";t.d(r,{RJ:()=>o,gF:()=>l});let l="masked:********",o="********"},58971:(e,r,t)=>{"use strict";t.r(r),t.d(r,{default:()=>eZ});var l=t(95155),o=t(12115),i=t(20063),a=t(2300),n=t(94049),s=t(9562),d=t(56422),c=t(27845),m=t(91871),u=t(36314),p=t(86973),x=t(49501),h=t(17681),f=t(22003),v=t(86946),g=t(30989),b=t(60700),y=t(51611),j=t(25766),w=t(74879),A=t(33567),k=t(4474),C=t(33077),z=t(25635),S=t(41983),T=t(21067),N=t(64419),M=t(28466),F=t(45587),L=t(81952),I=t(94885),U=t(15686),E=t(91665),W=t(61267),O=t(22573),R=t(38459),D=t(97104),P=t(48072),B=t(73288),q=t(36773);let K=(0,B.h)("frontend/components/models/list/ModelList"),X=e=>{let{models:r,isLoading:t,onAdd:i,onUpdate:s,onDelete:d,folders:c=[],onSetFolder:m,onToggleFavorite:f}=e,{t:v,tp:g}=(0,q.s9)(),b=(0,A.A)(),[y,j]=(0,D.Xk)("flujo-ui:models:sort","name-asc"),[w,B]=(0,D.Xk)("flujo-ui:models:group",R.FM),[X,_]=(0,o.useState)(null),[H,$]=(0,o.useState)(null),[G,Y]=(0,D.Xk)("flujo-ui:models:collapsed",[]),J=(0,o.useMemo)(()=>new Set(G),[G]),V=e=>{j(e),_(null)},Z=e=>{B(e),$(null)},Q=async e=>{let r=await s(e);r.success||K.error("Failed to update model in ModelList",r.error)},ee=(0,o.useMemo)(()=>(0,P.CR)(r,y),[r,y]),er=(0,o.useMemo)(()=>"folder"===w?(0,R.Je)(ee,e=>e.folder,v("models.group.ungrouped")):"sort"===w?(0,R.Az)(ee,e=>{let r=(0,P.eZ)(e,y),t={"ctx:unknown":"models.group.unknownContext","ctx:<=8k":"models.group.context8k","ctx:8k-32k":"models.group.context32k","ctx:32k-128k":"models.group.context128k","ctx:128k-1m":"models.group.context1m","ctx:>1m":"models.group.contextOver1m"};return t[r.key]?{...r,label:v(t[r.key])}:r}):[],[w,ee,y,v]);if(t)return(0,l.jsx)(n.default,{display:"flex",justifyContent:"center",py:4,children:(0,l.jsx)(k.default,{})});let et=e=>(0,l.jsx)(C.Ay,{container:!0,spacing:2.5,children:e.map(e=>(0,l.jsx)(C.Ay,{item:!0,xs:12,sm:6,md:4,children:(0,l.jsx)(W.A,{model:e,onEdit:()=>Q(e),onDelete:()=>d(e.id),folder:e.folder,folders:c,onSetFolder:m?r=>m(e.id,r):void 0,onToggleFavorite:f})},e.id))});return(0,l.jsxs)(n.default,{children:[(0,l.jsx)(a.A,{elevation:0,variant:"outlined",sx:{mb:2.5,p:1.1,borderRadius:3,bgcolor:"transparent"},children:(0,l.jsxs)(n.default,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[(0,l.jsxs)(z.A,{variant:"body2",color:"textSecondary",children:[g("models.connectionCount",r.length),(0,l.jsx)(n.default,{component:"span",sx:{mx:1,opacity:.5},children:"\xb7"}),v("models.sortedBy",{sort:v({"name-asc":"models.sort.nameAsc","name-desc":"models.sort.nameDesc",provider:"models.sort.provider","context-desc":"models.sort.contextLargest","context-asc":"models.sort.contextSmallest"}[y])})]}),(0,l.jsxs)(n.default,{sx:{display:"flex",gap:1,alignItems:"center"},children:[(0,l.jsx)(S.A,{size:"small",onClick:e=>$(e.currentTarget),color:"none"!==w?"primary":"default",sx:{border:"1px solid ".concat(b.palette.divider),backgroundColor:b.palette.background.default},title:v("models.groupCards"),children:(0,l.jsx)(I.A,{fontSize:"small"})}),(0,l.jsx)(S.A,{size:"small",onClick:e=>_(e.currentTarget),sx:{border:"1px solid ".concat(b.palette.divider),backgroundColor:b.palette.background.default},title:v("models.sortModels"),children:(0,l.jsx)(N.A,{fontSize:"small"})})]})]})}),r&&0!==r.length?"none"===w?et(ee):er.map(e=>(0,l.jsx)(O.A,{label:e.label,count:e.items.length,expanded:!J.has(e.key),onToggle:()=>(e=>{Y(r=>r.includes(e)?r.filter(r=>r!==e):[...r,e])})(e.key),showFolderIcon:"folder"===w,children:et(e.items)},e.key)):(0,l.jsx)(a.A,{variant:"outlined",sx:{display:"grid",minHeight:240,p:4,placeItems:"center",textAlign:"center",borderStyle:"dashed",bgcolor:"transparent"},children:(0,l.jsxs)(n.default,{children:[(0,l.jsx)(L.A,{sx:{mb:1.5,fontSize:38,color:"primary.light"}}),(0,l.jsx)(z.A,{variant:"h6",children:v("models.emptyTitle")}),(0,l.jsx)(z.A,{variant:"body2",color:"text.secondary",sx:{mt:.7,mb:2},children:v("models.emptyDescription")}),(0,l.jsx)(n.default,{children:(0,l.jsx)(S.A,{color:"primary",onClick:i,title:v("models.connectAi"),children:(0,l.jsx)(L.A,{})})})]})}),(0,l.jsxs)(u.A,{anchorEl:H,open:!!H,onClose:()=>$(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:[(0,l.jsxs)(p.A,{selected:"none"===w,onClick:()=>Z("none"),children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(U.A,{fontSize:"small"})}),(0,l.jsx)(h.A,{primary:v("models.group.none")})]}),(0,l.jsxs)(p.A,{selected:"folder"===w,onClick:()=>Z("folder"),children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(E.A,{fontSize:"small"})}),(0,l.jsx)(h.A,{primary:v("models.group.folder")})]}),(0,l.jsxs)(p.A,{selected:"sort"===w,onClick:()=>Z("sort"),children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(I.A,{fontSize:"small"})}),(0,l.jsx)(h.A,{primary:v("models.group.sort")})]})]}),(0,l.jsxs)(u.A,{anchorEl:X,open:!!X,onClose:()=>_(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:[(0,l.jsxs)(p.A,{selected:"name-asc"===y,onClick:()=>V("name-asc"),children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(M.A,{fontSize:"small"})}),(0,l.jsx)(h.A,{primary:v("models.sort.nameAsc")})]}),(0,l.jsxs)(p.A,{selected:"name-desc"===y,onClick:()=>V("name-desc"),children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(M.A,{fontSize:"small",sx:{transform:"scaleX(-1)"}})}),(0,l.jsx)(h.A,{primary:v("models.sort.nameDesc")})]}),(0,l.jsx)(T.A,{}),(0,l.jsxs)(p.A,{selected:"provider"===y,onClick:()=>V("provider"),children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(F.A,{fontSize:"small"})}),(0,l.jsx)(h.A,{primary:v("models.sort.provider")})]}),(0,l.jsx)(T.A,{}),(0,l.jsxs)(p.A,{selected:"context-desc"===y,onClick:()=>V("context-desc"),children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(L.A,{fontSize:"small"})}),(0,l.jsx)(h.A,{primary:v("models.sort.contextLargest")})]}),(0,l.jsxs)(p.A,{selected:"context-asc"===y,onClick:()=>V("context-asc"),children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(L.A,{fontSize:"small",sx:{transform:"scaleY(-1)"}})}),(0,l.jsx)(h.A,{primary:v("models.sort.contextSmallest")})]})]})]})};var _=t(2778),H=t(52363),$=t(65036),G=t(52641),Y=t(95436),J=t(55606),V=t(98286),Z=t(75912),Q=t(12857),ee=t(48363),er=t(9164),et=t(95480),el=t(88107),eo=t(52397),ei=t(43076);let ea=(0,B.h)("frontend/components/models/modal"),en=e=>({...void 0!==e.contextWindow?{contextWindow:e.contextWindow}:{},...void 0!==e.maxTokens?{maxTokens:e.maxTokens}:{},...void 0!==e.supportsTools?{supportsTools:e.supportsTools}:{},...void 0!==e.supportedParameters?{supportedParameters:e.supportedParameters}:{},...void 0!==e.inputModalities?{inputModalities:e.inputModalities}:{},...void 0!==e.outputModalities?{outputModalities:e.outputModalities}:{},...void 0!==e.visionInputCapability?{visionInputCapability:e.visionInputCapability}:{}}),es=e=>{var r,t,a,d,c,u,x;let{open:h,model:v,onSave:g,onClose:b}=e,{t:y}=(0,q.s9)(),j=(0,i.useRouter)(),{globalEnvVars:w,settings:A}=(0,er.useStorage)(),[T,N]=(0,o.useState)({}),[M,F]=(0,o.useState)({}),[L,I]=(0,o.useState)(null),[U,E]=(0,o.useState)(!1),[W,O]=(0,o.useState)(null),[R,D]=(0,o.useState)(!1),[P,B]=(0,o.useState)([]),[K,X]=(0,o.useState)(!1),es=(0,o.useRef)(null),ed=(0,o.useRef)(null);(0,o.useEffect)(()=>{h&&B([])},[h]),(0,o.useEffect)(()=>{T.baseUrl&&(ea.debug("Base URL or API Key changed",{baseUrl:T.baseUrl}),B([]))},[T.baseUrl,T.ApiKey]),(0,o.useEffect)(()=>(ed.current&&clearTimeout(ed.current),T.baseUrl&&(ed.current=setTimeout(()=>{ea.debug("Debounced fetchModels triggered",{name:T.name,baseUrl:T.baseUrl,searchTerm:T.name?'"'.concat(T.name,'"'):"none"}),ec(T.baseUrl,T.name)},100)),()=>{ed.current&&clearTimeout(ed.current)}),[T.name,T.baseUrl]),(0,o.useEffect)(()=>()=>{ed.current&&clearTimeout(ed.current)},[]);let ec=async(e,r)=>{ea.debug("fetchModels called",{baseUrl:e,searchTerm:r?'"'.concat(r,'"'):"none",apiKey:T.ApiKey?"present":"not present",isApiKeyBound:U}),X(!0),F({});try{let t=U&&W?"${global:".concat(W,"}"):T.ApiKey&&T.ApiKey!==eo.RJ?T.ApiKey:void 0,l=await ei.N.fetchProviderModels(e,v.id,r,t);if(ea.debug("Models fetched successfully",{count:null==l?void 0:l.length,searchTerm:r?'"'.concat(r,'"'):"none"}),Array.isArray(l)){B(l);let e=l.find(e=>e.id===T.name);e&&N(r=>r.name===e.id?{...r,...en(e)}:r),ea.info("Models set in state",{count:l.length,searchTerm:r?'"'.concat(r,'"'):"none"})}else ea.warn("Unexpected API response format",{models:l}),B([])}catch(t){ea.warn("Error fetching models",{baseUrl:e,searchTerm:r,error:t}),B([])}finally{X(!1)}};(0,o.useEffect)(()=>{if(h){N({...v,displayName:v.displayName||v.name});let e=(v.ApiKey||"").match(/\$\{global:([^}]+)\}/);e?(E(!0),O(e[1])):(E(!1),O(null),N(e=>({...e,ApiKey:v.name?eo.RJ:""})))}else N({name:"",displayName:"",description:"",ApiKey:"",baseUrl:"https://api.openai.com/v1",provider:"openai",adapter:"openai",promptTemplate:"",temperature:"0.0"}),E(!1),O(null);F({}),I(null)},[h,v]);let em=(0,el.T_)(T.provider,T.adapter),eu=(0,el.g3)(T.provider,T.adapter,T.name),ep=(0,o.useMemo)(()=>{var e;return(null==A||null==(e=A.experimental)?void 0:e.showModelsWithoutToolCapabilities)?P:P.filter(e=>!1!==e.supportsTools)},[P,null==A||null==(r=A.experimental)?void 0:r.showModelsWithoutToolCapabilities]),ex=(e,r)=>{N(t=>({...t,[e]:r})),F(r=>({...r,[e]:""}))},eh=async e=>{var r,t,l,o,i,a,n;e.preventDefault();let s={};if((null==(r=T.name)?void 0:r.trim())||(s.name=y("models.modal.nameRequired")),(null==(t=T.displayName)?void 0:t.trim())||(s.displayName=y("models.modal.displayNameRequired")),eu.creativity&&(null==(l=T.temperature)?void 0:l.trim())){let e=Number(T.temperature);(!Number.isFinite(e)||e<eu.creativity.min||e>eu.creativity.max)&&(s.temperature=y("models.modal.creativityRange",{min:eu.creativity.min,max:eu.creativity.max}))}if(U||(null==(o=T.ApiKey)?void 0:o.trim())||"codex-cli"===em.adapter||(s.ApiKey=y("models.modal.apiKeyRequired")),Object.keys(s).length>0)return void F(s);try{let e=await g({id:v.id,name:T.name,displayName:T.displayName,description:T.description,ApiKey:T.ApiKey,baseUrl:T.baseUrl,provider:T.provider,adapter:T.adapter||"openai",promptTemplate:T.promptTemplate,temperature:eu.creativity?T.temperature:void 0,reasoningEffort:(null==(i=eu.effortLevels)?void 0:i.includes(T.reasoningEffort))?T.reasoningEffort:void 0,thinkingLevel:(null==(a=eu.thinkingLevels)?void 0:a.includes(T.thinkingLevel))?T.thinkingLevel:void 0,thinkingBudget:eu.thinkingBudget?T.thinkingBudget:void 0,serviceTier:eu.priority?T.serviceTier||"default":void 0,contextWindow:T.contextWindow,supportsTools:T.supportsTools,supportedParameters:T.supportedParameters,inputModalities:T.inputModalities,outputModalities:T.outputModalities,visionInputCapability:null!=(n=T.visionInputCapability)?n:Array.isArray(T.inputModalities)?T.inputModalities.some(e=>/^(?:image|vision)$/i.test(e))?"supported":"unsupported":"unknown",maxTurns:T.maxTurns,maxTokens:eu.maxOutputTokens?T.maxTokens:void 0});e.success?j.refresh():F({submit:e.error||y("models.saveFailed")})}catch(e){ea.error("Failed to save model",{error:e}),F({submit:(null==e?void 0:e.message)||y("models.saveFailed")})}},ef={minimal:"models.modal.level.minimal",low:"models.modal.level.low",medium:"models.modal.level.medium",high:"models.modal.level.high",xhigh:"models.modal.level.xhigh",max:"models.modal.level.max"},ev=e=>ef[e]?y(ef[e]):e;return(0,l.jsx)(_.A,{open:h,onClose:b,maxWidth:"xl",fullWidth:!0,PaperProps:{sx:{width:"95vw",height:"90vh",maxWidth:"95vw",maxHeight:"90vh"}},children:(0,l.jsxs)("form",{onSubmit:eh,children:[(0,l.jsx)(H.A,{children:v.name?y("models.modal.editTitle"):y("models.modal.createTitle")}),(0,l.jsxs)($.A,{sx:{display:"flex",flexDirection:"column",height:"calc(90vh - 130px)"},children:[M.submit&&(0,l.jsx)(f.A,{severity:"error",sx:{mb:2},children:M.submit}),L&&(0,l.jsx)(f.A,{severity:"info",sx:{mb:2},children:L}),(0,l.jsxs)(C.Ay,{container:!0,spacing:2,sx:{flexGrow:1},children:[(0,l.jsx)(C.Ay,{item:!0,xs:6,sx:{height:"100%"},children:(0,l.jsxs)(n.default,{sx:{display:"flex",flexDirection:"column",height:"100%",pr:2,overflowY:"auto"},children:[(0,l.jsx)(z.A,{variant:"h6",gutterBottom:!0,children:y("models.modal.connectionDetails")}),(0,l.jsx)(s.A,{autoFocus:!0,margin:"dense",label:y("models.modal.displayName"),fullWidth:!0,required:!0,value:T.displayName||"",onChange:e=>ex("displayName",e.target.value),error:!!M.displayName,helperText:M.displayName||y("models.modal.displayNameHelp")}),(0,l.jsxs)(G.A,{fullWidth:!0,margin:"dense",children:[(0,l.jsx)(Y.A,{id:"provider-profile-label",children:y("models.modal.provider")}),(0,l.jsx)(J.A,{labelId:"provider-profile-label",label:y("models.modal.provider"),value:em.id,onChange:e=>(e=>{let r=el.xx.find(r=>r.id===e);r&&(N(e=>({...e,provider:r.provider,adapter:r.adapter,baseUrl:r.baseUrl})),F(e=>({...e,baseUrl:""})))})(e.target.value),children:el.xx.map(e=>(0,l.jsx)(p.A,{value:e.id,children:e.label},e.id))})]}),(0,l.jsxs)(z.A,{variant:"caption",color:"text.secondary",sx:{mt:.5,mb:1,display:"block"},children:[y("models.modal.usesSdk",{sdk:em.sdkLabel}),"claude-cli"===em.adapter?" ".concat(y("models.modal.claudeAuthHelp")):"codex-cli"===em.adapter?" ".concat(y("models.modal.codexAuthHelp")):""]}),em.showBaseUrl&&(0,l.jsx)(s.A,{margin:"dense",label:y("models.card.baseUrl"),fullWidth:!0,value:T.baseUrl||"",onChange:e=>ex("baseUrl",e.target.value),helperText:y("models.modal.baseUrlHelp")}),(0,l.jsx)(n.default,{sx:{position:"relative",mt:1,mb:1},children:(0,l.jsx)(s.A,{margin:"dense",label:y("models.modal.apiKey"),fullWidth:!0,required:!U&&"codex-cli"!==em.adapter,type:U?"text":"password",value:T.ApiKey||"",onChange:e=>ex("ApiKey",e.target.value),error:!!M.ApiKey,helperText:M.ApiKey||("codex-cli"===em.adapter?y("models.modal.apiKeyOptionalCodex"):y("models.modal.apiKeyRequiredProvider")),InputProps:{readOnly:U,endAdornment:(0,l.jsx)(n.default,{sx:{display:"flex",alignItems:"center"},children:U?(0,l.jsx)(S.A,{onClick:()=>{E(!1),O(null),N(e=>({...e,ApiKey:""}))},size:"small",title:y("models.modal.unbindGlobal"),children:(0,l.jsx)(Q.A,{})}):(0,l.jsx)(S.A,{onClick:()=>{D(!0)},size:"small",title:y("models.modal.bindGlobal"),children:(0,l.jsx)(ee.A,{})})})}})}),(0,l.jsx)(V.A,{freeSolo:!0,loading:K,options:em.showBaseUrl?ep.map(e=>e.id):null!=(t=em.defaultModels)?t:[],value:T.name||"",onChange:(e,r)=>{let t=P.find(e=>e.id===r);N(e=>{var l;return{...e,name:r||"",...t?{description:null!=(l=t.description)?l:e.description,...en(t)}:{}}}),F(e=>({...e,name:""}))},onInputChange:(e,r)=>{ex("name",r)},filterOptions:(e,r)=>{let t=r.inputValue.toLowerCase();return t?e.filter(e=>{let r=e.toLowerCase();if(r.includes(t))return!0;let l=0,o=0;for(;l<r.length&&o<t.length;)r[l]===t[o]&&o++,l++;return o===t.length}):e},ListboxProps:{style:{maxHeight:"300px",overflow:"auto"}},renderInput:e=>(0,l.jsx)(s.A,{...e,margin:"dense",label:y("models.modal.technicalName"),required:!0,error:!!M.name,helperText:M.name||y("models.modal.technicalNameHelp"),InputProps:{...e.InputProps,endAdornment:(0,l.jsxs)(l.Fragment,{children:[K?(0,l.jsx)(k.default,{color:"inherit",size:20}):null,e.InputProps.endAdornment]})}}),renderOption:(e,r)=>{let t=P.find(e=>e.id===r),{key:o,...i}=e;return(0,l.jsx)("li",{...i,style:{borderBottom:"1px solid rgba(0,0,0,0.1)",padding:"8px 16px"},children:(0,l.jsxs)(n.default,{children:[(0,l.jsx)(z.A,{variant:"body1",fontWeight:"bold",children:r}),(null==t?void 0:t.description)&&(0,l.jsx)(z.A,{variant:"body2",color:"text.secondary",sx:{fontSize:"0.75rem"},children:t.description})]})},o)},noOptionsText:y("models.modal.noMatches"),loadingText:y("models.modal.loadingModels")}),(0,l.jsx)(s.A,{margin:"dense",label:y("models.modal.description"),fullWidth:!0,multiline:!0,rows:3,value:T.description||"",onChange:e=>ex("description",e.target.value)}),eu.creativity&&(0,l.jsx)(s.A,{margin:"dense",label:y("models.modal.creativity"),fullWidth:!0,type:"number",value:null!=(a=T.temperature)?a:"",onChange:e=>ex("temperature",e.target.value),error:!!M.temperature,inputProps:eu.creativity,helperText:M.temperature||y("models.modal.creativityHelp",{min:eu.creativity.min,max:eu.creativity.max})}),eu.effortLevels&&(0,l.jsxs)(G.A,{fullWidth:!0,margin:"dense",children:[(0,l.jsx)(Y.A,{id:"reasoning-effort-label",children:y("models.modal.effort")}),(0,l.jsxs)(J.A,{labelId:"reasoning-effort-label",label:y("models.modal.effort"),value:T.reasoningEffort||"",onChange:e=>N(r=>({...r,reasoningEffort:e.target.value?e.target.value:void 0})),children:[(0,l.jsx)(p.A,{value:"",children:(0,l.jsx)("em",{children:y("models.modal.providerDefault")})}),eu.effortLevels.map(e=>(0,l.jsx)(p.A,{value:e,children:ev(e)},e))]}),(0,l.jsx)(z.A,{variant:"caption",color:"text.secondary",sx:{mt:.5,ml:1.75},children:y("models.modal.effortHelp")})]}),eu.thinkingLevels&&(0,l.jsxs)(G.A,{fullWidth:!0,margin:"dense",children:[(0,l.jsx)(Y.A,{id:"thinking-level-label",children:y("models.modal.thinkingLevel")}),(0,l.jsxs)(J.A,{labelId:"thinking-level-label",label:y("models.modal.thinkingLevel"),value:T.thinkingLevel||"",onChange:e=>N(r=>({...r,thinkingLevel:e.target.value?e.target.value:void 0})),children:[(0,l.jsx)(p.A,{value:"",children:(0,l.jsx)("em",{children:y("models.modal.providerDefault")})}),eu.thinkingLevels.map(e=>(0,l.jsx)(p.A,{value:e,children:ev(e)},e))]})]}),eu.thinkingBudget&&(0,l.jsx)(s.A,{margin:"dense",label:y("models.modal.thinkingBudget"),fullWidth:!0,type:"number",value:null!=(d=T.thinkingBudget)?d:"",onChange:e=>{let r=e.target.value,t=""===r?void 0:Number(r);N(e=>({...e,thinkingBudget:void 0!==t&&Number.isFinite(t)&&t>=-1?Math.floor(t):void 0}))},inputProps:{min:-1,step:1},helperText:y("models.modal.thinkingBudgetHelp")}),eu.priority&&(0,l.jsxs)(G.A,{fullWidth:!0,margin:"dense",children:[(0,l.jsx)(Y.A,{id:"service-tier-label",children:y("models.modal.priority")}),(0,l.jsxs)(J.A,{labelId:"service-tier-label",label:y("models.modal.priority"),value:T.serviceTier||"default",onChange:e=>N(r=>({...r,serviceTier:e.target.value})),children:[(0,l.jsx)(p.A,{value:"default",children:y("models.modal.standard")}),(0,l.jsx)(p.A,{value:"priority",children:y("models.modal.priorityFaster")})]}),(0,l.jsx)(z.A,{variant:"caption",color:"text.secondary",sx:{mt:.5,ml:1.75},children:y("models.modal.priorityHelp")})]}),(0,l.jsx)(s.A,{margin:"dense",label:y("models.modal.contextWindow"),fullWidth:!0,type:"number",value:null!=(c=T.contextWindow)?c:"",onChange:e=>{let r=e.target.value,t=""===r?void 0:Number(r);N(e=>({...e,contextWindow:void 0!==t&&Number.isFinite(t)&&t>0?Math.floor(t):void 0}))},helperText:y("models.modal.contextWindowHelp")}),(0,l.jsx)(s.A,{margin:"dense",label:y("models.modal.maxTurns"),fullWidth:!0,type:"number",value:null!=(u=T.maxTurns)?u:"",onChange:e=>{let r=e.target.value,t=""===r?void 0:Number(r);N(e=>({...e,maxTurns:void 0!==t&&Number.isFinite(t)&&t>0?Math.floor(t):void 0}))},inputProps:{min:1},helperText:y("models.modal.maxTurnsHelp")}),eu.maxOutputTokens&&(0,l.jsx)(s.A,{margin:"dense",label:y("models.modal.maxOutputTokens"),fullWidth:!0,type:"number",value:null!=(x=T.maxTokens)?x:"",onChange:e=>{let r=e.target.value,t=""===r?void 0:Number(r);N(e=>({...e,maxTokens:void 0!==t&&Number.isFinite(t)&&t>0?Math.floor(t):void 0}))},inputProps:{min:1},helperText:y("models.modal.maxOutputTokensHelp")})]})}),(0,l.jsx)(C.Ay,{item:!0,xs:6,sx:{height:"100%"},children:(0,l.jsxs)(n.default,{sx:{display:"flex",flexDirection:"column",height:"100%",pl:2},children:[(0,l.jsx)(z.A,{variant:"h6",gutterBottom:!0,children:y("models.modal.promptTemplate")}),(0,l.jsx)(n.default,{sx:{flexGrow:1,display:"flex",flexDirection:"column",height:"calc(100% - 32px)"},children:(0,l.jsx)(et.A,{ref:es,value:T.promptTemplate||"",onChange:e=>ex("promptTemplate",e),label:"",height:"100%"})})]})})]}),R&&(0,l.jsxs)(n.default,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:400,bgcolor:"background.paper",boxShadow:24,p:4,borderRadius:1,zIndex:9999},children:[(0,l.jsx)(z.A,{variant:"h6",component:"h2",sx:{mb:2},children:y("models.modal.bindTitle")}),0===Object.keys(w).length?(0,l.jsx)(z.A,{sx:{mb:2},children:y("models.modal.noGlobals")}):(0,l.jsx)(n.default,{sx:{maxHeight:300,overflow:"auto",mb:2},children:Object.entries(w).map(e=>{let[r,t]=e;return(0,l.jsx)(m.A,{onClick:()=>(e=>{E(!0),O(e),N(r=>({...r,ApiKey:"${global:".concat(e,"}")})),D(!1)})(r),fullWidth:!0,sx:{justifyContent:"flex-start",textAlign:"left",mb:1,p:1,"&:hover":{bgcolor:"action.hover"}},children:(0,l.jsxs)(n.default,{sx:{display:"flex",justifyContent:"space-between",width:"100%"},children:[(0,l.jsx)(z.A,{children:r}),(0,l.jsx)(z.A,{variant:"body2",color:"text.secondary",children:r.toLowerCase().includes("key")||r.toLowerCase().includes("secret")||r.toLowerCase().includes("token")||r.toLowerCase().includes("password")?"********":"object"==typeof t&&null!==t&&"value"in t?t.value:t})]})},r)})}),(0,l.jsx)(n.default,{sx:{display:"flex",justifyContent:"flex-end"},children:(0,l.jsx)(m.A,{onClick:()=>D(!1),children:y("common.cancel")})})]})]}),(0,l.jsxs)(Z.A,{children:[(0,l.jsx)(m.A,{onClick:b,children:y("common.cancel")}),(0,l.jsx)(m.A,{type:"submit",variant:"contained",color:"primary",children:y("models.modal.save")})]})]})})};var ed=t(3648),ec=t(28548),em=t(78470),eu=t(80777),ep=t(52005),ex=t(99944),eh=t(22822),ef=t(10225),ev=t(8532),eg=t(88500),eb=t(92437),ey=t(14418),ej=t(83478),ew=t(93896),eA=t(42675),ek=t(36866),eC=t(825),ez=t(99352),eS=t(73703),eT=t(30351),eN=t(40463),eM=t(81685),eF=t(90123),eL=t(62984),eI=t(80345),eU=t(7072),eE=t(38786),eW=t(56290);let eO={"openrouter-free":[{name:"openrouter/free",displayName:"OpenRouter Free",description:"Automatically routes each request to an available free OpenRouter model.",provider:"openrouter",adapter:"openai",baseUrl:"https://openrouter.ai/api/v1",supportsTools:!0}],"requesty-free":[{name:"openrouter/free",displayName:"Requesty Free Router",description:"Routes to OpenRouter’s free-model router through your Requesty account.",provider:"requesty",adapter:"openai",baseUrl:"https://router.requesty.ai/v1",supportsTools:!0}],"openrouter-paid":[{name:"openrouter/auto",displayName:"OpenRouter Auto",description:"A balanced automatic router for everyday work.",provider:"openrouter",adapter:"openai",baseUrl:"https://openrouter.ai/api/v1",supportsTools:!0},{name:"deepseek/deepseek-v3.2",displayName:"DeepSeek V3.2",description:"A cost-conscious model for fast general-purpose work.",provider:"openrouter",adapter:"openai",baseUrl:"https://openrouter.ai/api/v1",supportsTools:!0},{name:"openai/gpt-5.6-sol",displayName:"GPT-5.6 Sol via OpenRouter",description:"A high-capability model for demanding agentic work.",provider:"openrouter",adapter:"openai",baseUrl:"https://openrouter.ai/api/v1",reasoningEffort:"medium",supportsTools:!0}],"requesty-paid":[{name:"deepseek/deepseek-v3.2",displayName:"DeepSeek V3.2 via Requesty",description:"A cost-conscious default routed through Requesty.",provider:"requesty",adapter:"openai",baseUrl:"https://router.requesty.ai/v1",supportsTools:!0},{name:"anthropic/claude-sonnet-4-6",displayName:"Claude Sonnet via Requesty",description:"A balanced model for planning, writing, and tool use.",provider:"requesty",adapter:"openai",baseUrl:"https://router.requesty.ai/v1",supportsTools:!0},{name:"openai/gpt-5.6-sol",displayName:"GPT-5.6 Sol via Requesty",description:"A high-capability model for demanding agentic work.",provider:"requesty",adapter:"openai",baseUrl:"https://router.requesty.ai/v1",reasoningEffort:"medium",supportsTools:!0}],"claude-subscription":[{name:"haiku",displayName:"Claude Haiku",description:"Fast and light for small tasks through your Claude subscription.",provider:"claude-subscription",adapter:"claude-cli",supportsTools:!0},{name:"sonnet",displayName:"Claude Sonnet",description:"The balanced everyday choice through your Claude subscription.",provider:"claude-subscription",adapter:"claude-cli",reasoningEffort:"medium",supportsTools:!0},{name:"opus",displayName:"Claude Opus",description:"The strongest Claude option for complex work.",provider:"claude-subscription",adapter:"claude-cli",reasoningEffort:"high",supportsTools:!0},{name:"fable",displayName:"Claude Fable",description:"An additional Claude subscription model for flexible routing.",provider:"claude-subscription",adapter:"claude-cli",reasoningEffort:"medium",supportsTools:!0}],"codex-subscription":[{name:"gpt-5.6-terra",displayName:"Codex Terra",description:"A balanced Codex model for everyday agent work.",provider:"codex",adapter:"codex-cli",reasoningEffort:"medium",supportsTools:!0},{name:"gpt-5.6-sol",displayName:"Codex Sol",description:"The high-capability Codex model for difficult work.",provider:"codex",adapter:"codex-cli",reasoningEffort:"high",supportsTools:!0},{name:"gpt-5.4-mini",displayName:"Codex Mini",description:"A quick, efficient Codex option for smaller tasks.",provider:"codex",adapter:"codex-cli",reasoningEffort:"medium",supportsTools:!0}],"gemini-native":[{name:"gemini-2.5-flash-lite",displayName:"Gemini Flash Lite",description:"A quick and economical native Gemini model.",provider:"gemini",adapter:"gemini",supportsTools:!0},{name:"gemini-2.5-flash",displayName:"Gemini Flash",description:"A balanced native Gemini model for everyday work.",provider:"gemini",adapter:"gemini",supportsTools:!0},{name:"gemini-2.5-pro",displayName:"Gemini Pro",description:"A stronger native Gemini model for complex work.",provider:"gemini",adapter:"gemini",supportsTools:!0}]};function eR(e){var r,t,l,o;let i=null!=(o=null==(r=e.apiKey)?void 0:r.trim())?o:"";return("ollama"===e.kind?[{name:(null==(t=e.ollamaModel)?void 0:t.trim())||"llama3.2:3b",displayName:"Local ".concat((null==(l=e.ollamaModel)?void 0:l.trim())||"Llama 3.2"),description:"Runs privately on this machine through Ollama.",provider:"ollama",adapter:"openai",baseUrl:"".concat((e.ollamaUrl||"http://localhost:11434").replace(/\/+$/,""),"/v1"),supportsTools:!0}]:eO[e.kind]).map(r=>({id:(0,w.A)(),name:r.name,displayName:r.displayName,description:r.description,ApiKey:"ollama"===e.kind?"ollama":i,baseUrl:r.baseUrl||"",provider:r.provider,adapter:r.adapter,promptTemplate:"",temperature:"openai"===r.adapter||"gemini"===r.adapter?"0.0":void 0,reasoningEffort:r.reasoningEffort,supportsTools:r.supportsTools}))}function eD(){let e=(0,ed._)(["\n 0%, 100% { transform: translate3d(0, 0, 0) rotate(0deg); }\n 50% { transform: translate3d(0, -9px, 0) rotate(5deg); }\n"]);return eD=function(){return e},e}function eP(){let e=(0,ed._)(["\n from { opacity: 0; transform: translate3d(18px, 0, 0) scale(.985); }\n to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }\n"]);return eP=function(){return e},e}function eB(){let e=(0,ed._)(["\n 0% { transform: scale(.6) rotate(-12deg); opacity: 0; }\n 70% { transform: scale(1.08) rotate(3deg); opacity: 1; }\n 100% { transform: scale(1) rotate(0); opacity: 1; }\n"]);return eB=function(){return e},e}let eq=(0,ef.i7)(eD()),eK=(0,ef.i7)(eP()),eX=(0,ef.i7)(eB()),e_={"openrouter-free":{eyebrow:"models.wizard.copy.freeOnline",title:"models.wizard.openrouterFree.title",summary:"models.wizard.openrouterFree.summary",accountUrl:"https://openrouter.ai/settings/keys",accountLabel:"models.wizard.openrouterFree.account",keyLabel:"models.wizard.openrouterKey",note:"models.wizard.openrouterFree.note"},"requesty-free":{eyebrow:"models.wizard.copy.freeOnline",title:"models.wizard.requestyFree.title",summary:"models.wizard.requestyFree.summary",accountUrl:"https://app.requesty.ai/api-keys",accountLabel:"models.wizard.requestyFree.account",keyLabel:"models.wizard.requestyKey",note:"models.wizard.requestyFree.note"},"openrouter-paid":{eyebrow:"models.wizard.copy.paygOnline",title:"models.wizard.openrouterPaid.title",summary:"models.wizard.openrouterPaid.summary",accountUrl:"https://openrouter.ai/settings/keys",accountLabel:"models.wizard.openrouterPaid.account",keyLabel:"models.wizard.openrouterKey",note:"models.wizard.openrouterPaid.note"},"requesty-paid":{eyebrow:"models.wizard.copy.paygOnline",title:"models.wizard.requestyPaid.title",summary:"models.wizard.requestyPaid.summary",accountUrl:"https://app.requesty.ai/api-keys",accountLabel:"models.wizard.requestyPaid.account",keyLabel:"models.wizard.requestyKey",note:"models.wizard.requestyPaid.note"},"claude-subscription":{eyebrow:"models.wizard.copy.claudeSubscription",title:"models.wizard.claude.title",summary:"models.wizard.claude.summary",keyLabel:"models.wizard.claude.key",note:"models.wizard.claude.note"},"codex-subscription":{eyebrow:"models.wizard.copy.chatgptSubscription",title:"models.wizard.codex.title",summary:"models.wizard.codex.summary",note:"models.wizard.codex.note"},"gemini-native":{eyebrow:"models.wizard.copy.googleNative",title:"models.wizard.gemini.title",summary:"models.wizard.gemini.summary",accountUrl:"https://aistudio.google.com/app/apikey",accountLabel:"models.wizard.gemini.account",keyLabel:"models.wizard.gemini.key",note:"models.wizard.gemini.note"}};function eH(e){let{icon:r,title:t,description:o,badge:i,onClick:s}=e,d=(0,A.A)();return(0,l.jsxs)(a.A,{component:"button",type:"button",variant:"outlined",onClick:s,sx:{position:"relative",width:"100%",minHeight:132,p:2.2,borderRadius:3,color:"text.primary",textAlign:"left",cursor:"pointer",font:"inherit",background:"linear-gradient(145deg, ".concat((0,ev.X4)(d.palette.primary.main,.08),", ").concat((0,ev.X4)(d.palette.background.paper,.72)," 55%)"),transition:"transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease","&:hover":{transform:"translateY(-3px) rotate(-.2deg)",borderColor:(0,ev.X4)(d.palette.primary.main,.7),boxShadow:"0 16px 38px ".concat((0,ev.X4)(d.palette.primary.main,.16))},"&:focus-visible":{outline:"3px solid ".concat((0,ev.X4)(d.palette.primary.main,.3)),outlineOffset:3}},children:[i?(0,l.jsx)(ec.A,{label:i,size:"small",color:"primary",sx:{position:"absolute",top:12,right:12}}):null,(0,l.jsx)(n.default,{sx:{width:43,height:43,display:"grid",placeItems:"center",mb:1.3,borderRadius:2.4,color:"primary.main",bgcolor:(0,ev.X4)(d.palette.primary.main,.12)},children:(0,l.jsx)(r,{})}),(0,l.jsx)(z.A,{variant:"subtitle1",sx:{fontWeight:720,pr:7*!!i},children:t}),(0,l.jsx)(z.A,{variant:"body2",color:"text.secondary",sx:{mt:.45},children:o})]})}function e$(e){let{children:r}=e;return(0,l.jsx)(n.default,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(3, minmax(0, 1fr))"},gap:1.5},children:r})}function eG(e){let{command:r,copied:t,onCopy:o}=e,i=(0,A.A)(),{t:a}=(0,q.s9)();return(0,l.jsxs)(n.default,{sx:{display:"flex",alignItems:"center",gap:1,px:1.5,py:1,borderRadius:2,bgcolor:(0,ev.X4)(i.palette.common.black,"dark"===i.palette.mode?.26:.055)},children:[(0,l.jsx)(eU.A,{fontSize:"small",color:"action"}),(0,l.jsx)(z.A,{component:"code",variant:"body2",sx:{flex:1,overflowWrap:"anywhere",fontFamily:"var(--font-geist-mono), ui-monospace, monospace"},children:r}),(0,l.jsx)(em.A,{title:a(t?"models.wizard.copied":"models.wizard.copyCommand"),children:(0,l.jsx)(S.A,{size:"small",onClick:o,"aria-label":a("models.wizard.copyCommandAria",{command:r}),children:t?(0,l.jsx)(ey.A,{color:"success",fontSize:"small"}):(0,l.jsx)(ek.A,{fontSize:"small"})})})]})}function eY(e){var r;let{open:t,onClose:i,onManualCreation:d,onCreateModels:c}=e,u=(0,A.A)(),{t:p,tp:x}=(0,q.s9)(),[h,v]=(0,o.useState)("welcome"),[g,y]=(0,o.useState)([]),[w,C]=(0,o.useState)("beginner"),[T,N]=(0,o.useState)(null),[M,F]=(0,o.useState)(""),[L,I]=(0,o.useState)(!1),[U,E]=(0,o.useState)(!1),[W,O]=(0,o.useState)(null),[R,D]=(0,o.useState)([]),[P,B]=(0,o.useState)([]),[K,X]=(0,o.useState)(null),[H,G]=(0,o.useState)(null),[Y,J]=(0,o.useState)([]),[V,Z]=(0,o.useState)("idle"),[Q,ee]=(0,o.useState)(null),[er,et]=(0,o.useState)(!1),[el,eo]=(0,o.useState)(!1),[ei,ea]=(0,o.useState)(!1),[en,es]=(0,o.useState)([]);(0,o.useEffect)(()=>{t&&(v("welcome"),y([]),C("beginner"),N(null),F(""),I(!1),E(!1),O(null),D([]),B([]),X(null),G(null),J([]),Z("idle"),ee(null),eo(!1),es([]))},[t]);let ed=e=>{y(e=>[...e,h]),v(e),O(null)},em=e=>{N(e),ed("setup")},ef=async e=>{try{await navigator.clipboard.writeText(e),X(e),window.setTimeout(()=>X(r=>r===e?null:r),1600)}catch(e){O(p("models.wizard.copyFailed"))}},ek=(0,o.useCallback)(async()=>{et(!0),O(null);try{let e=await fetch("/api/local-models/capability",{cache:"no-store"});if(!e.ok)throw Error(p("models.wizard.inspectFailed"));ee(await e.json())}catch(e){O(e instanceof Error?e.message:p("models.wizard.inspectFailed"))}finally{eo(!0),et(!1)}},[p]);(0,o.useEffect)(()=>{!t||"setup"!==h||"ollama"!==T||el||er||ek()},[T,ek,el,er,t,h]);let eO=async e=>{G(e),Z("idle"),J([]),O(null);try{let r=await fetch("/api/setup/ai-cli",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tool:e})});if(!r.ok){let e=await r.json().catch(()=>({}));throw Error(e.error||p("models.wizard.installerStartFailed"))}let t=!1,l="";if(await (0,eW.z)(r,e=>{("stdout"===e.type||"stderr"===e.type)&&J(r=>[...r,e.data].slice(-8)),"status"===e.type&&e.message&&J(r=>[...r,e.message].slice(-8)),"result"===e.type&&(t=e.success,l=e.error||"")}),!t)throw Error(l||p("models.wizard.wingetFailed"));Z("success"),"ollama"===e&&window.setTimeout(()=>void ek(),1200)}catch(e){Z("error"),O(e instanceof Error?e.message:p("models.wizard.installFailed"))}finally{G(null)}},eD=async e=>{E(!0),O(null);try{let r=await c(e);if(!r.success)throw Error(r.error||p("models.wizard.createFailed"));D(r.created),B(r.existing),ed("success")}catch(e){O(e instanceof Error?e.message:p("models.wizard.createFailed"))}finally{E(!1)}},eP=async()=>T&&"ollama"!==T?"codex-subscription"===T||M.trim()?"codex-subscription"!==T||L?void await eD(eR({kind:T,apiKey:M})):void O(p("models.wizard.confirmCodexLogin")):void O("claude-subscription"===T?p("models.wizard.pasteClaudeToken"):p("models.wizard.pasteApiKey")):void 0,eB=async()=>{var e;let r=(null==Q?void 0:Q.suggestedModel)||"llama3.2:3b",t=null==Q||null==(e=Q.installedModels)?void 0:e.some(e=>e===r);if(!(null==Q?void 0:Q.ollamaReachable))return void O(p("models.wizard.startOllama"));if(!t){ea(!0),es([]),O(null);try{let e=await fetch("/api/local-models/pull",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:r})});if(!e.ok)throw Error(p("models.wizard.ollamaDownloadStartFailed"));let t=!1,l="";if(await (0,eW.z)(e,e=>{("stdout"===e.type||"stderr"===e.type)&&es(r=>[...r,e.data].slice(-6)),"result"===e.type&&(t=e.success,l=e.error||"")}),!t)throw Error(l||p("models.wizard.modelDownloadFailed",{model:r}))}catch(e){O(e instanceof Error?e.message:p("models.wizard.downloadFailed")),ea(!1);return}ea(!1)}await eD(eR({kind:"ollama",ollamaModel:r,ollamaUrl:null==Q?void 0:Q.ollamaUrl}))},eY="beginner"===w,eJ=Math.min(96,"welcome"===h?8:"success"===h?100:22+15*g.length),eV=T&&"ollama"!==T?e_[T]:null,eZ=(0,o.useMemo)(()=>T?eR({kind:T}).map(e=>e.displayName||e.name):[],[T]),eQ=(null==Q?void 0:Q.suggestedModel)||"llama3.2:3b",e0=!!(null==Q||null==(r=Q.installedModels)?void 0:r.includes(eQ)),e1=(e,r,t)=>(0,l.jsxs)(eu.A,{spacing:1.1,children:[(0,l.jsx)(eG,{command:r,copied:K===r,onCopy:()=>void ef(r)}),(0,l.jsx)(m.A,{variant:"outlined",startIcon:H===e?(0,l.jsx)(k.default,{size:17}):(0,l.jsx)(ez.A,{}),disabled:!!H,onClick:()=>void eO(e),sx:{alignSelf:"flex-start"},children:H===e?p("models.wizard.installing"):p("models.wizard.installWinget")}),t?(0,l.jsx)(eG,{command:t,copied:K===t,onCopy:()=>void ef(t)}):null,"success"===V?(0,l.jsx)(f.A,{severity:"success",children:p("models.wizard.installedContinue")}):null,Y.length?(0,l.jsx)(n.default,{component:"pre",sx:{m:0,p:1.4,maxHeight:110,overflow:"auto",borderRadius:2,bgcolor:(0,ev.X4)(u.palette.common.black,"dark"===u.palette.mode?.3:.06),color:"text.secondary",whiteSpace:"pre-wrap",fontSize:11},children:Y.join("\n")}):null]});return(0,l.jsx)(_.A,{open:t,onClose:U||ei||H?void 0:i,fullWidth:!0,maxWidth:"md","aria-label":p("models.wizard.aria"),children:(0,l.jsxs)($.A,{sx:{position:"relative",minHeight:{xs:560,sm:590},p:{xs:2.2,sm:4},overflowX:"hidden",overflowY:"auto"},children:[(0,l.jsx)(n.default,{"aria-hidden":!0,sx:{position:"absolute",width:220,height:220,borderRadius:"50%",top:-120,right:-70,bgcolor:(0,ev.X4)(u.palette.secondary.main,.12),filter:"blur(1px)",animation:"".concat(eq," 6s ease-in-out infinite")}}),(0,l.jsx)(n.default,{"aria-hidden":!0,sx:{position:"absolute",width:150,height:150,borderRadius:5,bottom:-100,left:-70,bgcolor:(0,ev.X4)(u.palette.primary.main,.1),transform:"rotate(24deg)",animation:"".concat(eq," 7s ease-in-out -2s infinite")}}),(0,l.jsxs)(n.default,{sx:{position:"relative",zIndex:1},children:[(0,l.jsxs)(n.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:2},children:[g.length&&"success"!==h?(0,l.jsx)(S.A,{onClick:()=>{let e=g[g.length-1];e&&(y(e=>e.slice(0,-1)),v(e),O(null))},"aria-label":p("models.wizard.backAria"),children:(0,l.jsx)(eg.A,{})}):(0,l.jsx)(n.default,{sx:{width:40}}),(0,l.jsx)(n.default,{sx:{flex:1},children:(0,l.jsx)(ep.A,{variant:"determinate",value:eJ,"aria-label":p("models.wizard.progressAria")})}),(0,l.jsx)(S.A,{onClick:i,"aria-label":p("models.wizard.closeAria"),disabled:U||ei||!!H,children:(0,l.jsx)(ej.A,{})})]}),W?(0,l.jsx)(f.A,{severity:"error",onClose:()=>O(null),sx:{mb:2},children:W}):null,(0,l.jsx)(n.default,{sx:{animation:"".concat(eK," 260ms ease-out both"),"@media (prefers-reduced-motion: reduce)":{animation:"none"}},children:(()=>{if("welcome"===h)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(ec.A,{icon:(0,l.jsx)(b.A,{}),label:p("models.wizard.twoMinuteSetup"),color:"primary",variant:"outlined",sx:{mb:2}}),(0,l.jsx)(z.A,{variant:"h4",children:p("models.wizard.welcomeTitle")}),(0,l.jsx)(z.A,{variant:"body1",color:"text.secondary",sx:{mt:1,mb:3,maxWidth:680},children:p("models.wizard.welcomeQuestion")}),(0,l.jsxs)(e$,{children:[(0,l.jsx)(eH,{icon:eL.A,title:p("models.wizard.noIdea"),description:p("models.wizard.noIdeaDescription"),badge:p("models.wizard.gentleGuide"),onClick:()=>{C("beginner"),ed("budget")}}),(0,l.jsx)(eH,{icon:eb.A,title:p("models.wizard.knowABit"),description:p("models.wizard.knowABitDescription"),onClick:()=>{C("familiar"),ed("budget")}}),(0,l.jsx)(eH,{icon:j.A,title:p("models.wizard.expert"),description:p("models.wizard.expertDescription"),onClick:d})]})]});if("budget"===h)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(z.A,{variant:"overline",color:"primary.main",children:p("models.wizard.firstThings")}),(0,l.jsx)(z.A,{variant:"h4",children:p("models.wizard.budgetTitle")}),eY?(0,l.jsx)(z.A,{variant:"body1",color:"text.secondary",sx:{mt:1,mb:3,maxWidth:700},children:p("models.wizard.budgetVerbose")}):(0,l.jsx)(z.A,{color:"text.secondary",sx:{mt:1,mb:3},children:p("models.wizard.budgetBrief")}),(0,l.jsxs)(e$,{children:[(0,l.jsx)(eH,{icon:eF.A,title:p("models.wizard.startFree"),description:p("models.wizard.startFreeDescription"),badge:p("models.wizard.startHere"),onClick:()=>ed("location")}),(0,l.jsx)(eH,{icon:eE.A,title:p("models.wizard.alreadySubscribe"),description:p("models.wizard.alreadySubscribeDescription"),onClick:()=>ed("subscription-provider")}),(0,l.jsx)(eH,{icon:eC.A,title:p("models.wizard.payNoSubscription"),description:p("models.wizard.payNoSubscriptionDescription"),onClick:()=>ed("paid-provider")})]})]});if("location"===h)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(z.A,{variant:"overline",color:"primary.main",children:p("models.wizard.freeRoute")}),(0,l.jsx)(z.A,{variant:"h4",children:p("models.wizard.locationTitle")}),(0,l.jsx)(z.A,{color:"text.secondary",sx:{mt:1,mb:3},children:eY?p("models.wizard.locationVerbose"):p("models.wizard.locationBrief")}),(0,l.jsxs)(n.default,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"1fr 1fr"},gap:1.5},children:[(0,l.jsx)(eH,{icon:ew.A,title:p("models.wizard.online"),description:p("models.wizard.onlineDescription"),badge:p("models.wizard.easy"),onClick:()=>ed("free-provider")}),(0,l.jsx)(eH,{icon:eA.A,title:p("models.wizard.offline"),description:p("models.wizard.offlineDescription"),badge:p("models.wizard.private"),onClick:()=>em("ollama")})]})]});if("free-provider"===h)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(z.A,{variant:"overline",color:"primary.main",children:p("models.wizard.copy.freeOnline")}),(0,l.jsx)(z.A,{variant:"h4",children:p("models.wizard.chooseGateway")}),(0,l.jsx)(z.A,{color:"text.secondary",sx:{mt:1,mb:3},children:eY?p("models.wizard.freeGatewayVerbose"):p("models.wizard.freeGatewayBrief")}),(0,l.jsxs)(n.default,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"1fr 1fr"},gap:1.5},children:[(0,l.jsx)(eH,{icon:eM.A,title:"OpenRouter",description:p("models.wizard.openrouterFreeDescription"),badge:p("models.wizard.recommended"),onClick:()=>em("openrouter-free")}),(0,l.jsx)(eH,{icon:ew.A,title:"Requesty",description:p("models.wizard.requestyFreeDescription"),onClick:()=>em("requesty-free")})]})]});if("subscription-provider"===h)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(z.A,{variant:"overline",color:"primary.main",children:p("models.wizard.useExisting")}),(0,l.jsx)(z.A,{variant:"h4",children:p("models.wizard.whichService")}),(0,l.jsx)(z.A,{color:"text.secondary",sx:{mt:1,mb:3},children:eY?p("models.wizard.subscriptionVerbose"):p("models.wizard.subscriptionBrief")}),(0,l.jsxs)(e$,{children:[(0,l.jsx)(eH,{icon:eI.A,title:"Claude",description:p("models.wizard.claudeDescription"),onClick:()=>em("claude-subscription")}),(0,l.jsx)(eH,{icon:eU.A,title:"ChatGPT / Codex",description:p("models.wizard.codexDescription"),badge:p("models.wizard.noKeyPaste"),onClick:()=>em("codex-subscription")}),(0,l.jsx)(eH,{icon:b.A,title:p("models.wizard.geminiNative"),description:p("models.wizard.geminiDescription"),onClick:()=>em("gemini-native")})]})]});if("paid-provider"===h)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(z.A,{variant:"overline",color:"primary.main",children:p("models.wizard.payUsage")}),(0,l.jsx)(z.A,{variant:"h4",children:p("models.wizard.chooseModelGateway")}),(0,l.jsx)(z.A,{color:"text.secondary",sx:{mt:1,mb:3},children:eY?p("models.wizard.paidVerbose"):p("models.wizard.paidBrief")}),(0,l.jsxs)(n.default,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"1fr 1fr"},gap:1.5},children:[(0,l.jsx)(eH,{icon:eM.A,title:"OpenRouter",description:p("models.wizard.openrouterPaidDescription"),badge:p("models.wizard.recommended"),onClick:()=>em("openrouter-paid")}),(0,l.jsx)(eH,{icon:ew.A,title:"Requesty",description:p("models.wizard.requestyPaidDescription"),onClick:()=>em("requesty-paid")})]})]});if("setup"===h&&"ollama"===T)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(z.A,{variant:"overline",color:"primary.main",children:p("models.wizard.freeOffline")}),(0,l.jsx)(z.A,{variant:"h4",children:p("models.wizard.ollamaTitle")}),(0,l.jsx)(z.A,{color:"text.secondary",sx:{mt:1,mb:2.5},children:p("models.wizard.ollamaDescription")}),er?(0,l.jsxs)(n.default,{sx:{display:"flex",alignItems:"center",gap:1.5,py:3},children:[(0,l.jsx)(k.default,{size:22}),(0,l.jsx)(z.A,{children:p("models.wizard.checkingOllama")})]}):null,!er&&Q?(0,l.jsx)(a.A,{variant:"outlined",sx:{p:2,mb:2,borderRadius:3},children:(0,l.jsxs)(eu.A,{direction:{xs:"column",sm:"row"},justifyContent:"space-between",spacing:1.5,children:[(0,l.jsxs)(n.default,{children:[(0,l.jsx)(z.A,{variant:"subtitle1",sx:{fontWeight:720},children:p("models.wizard.recommendedModel",{model:eQ})}),(0,l.jsx)(z.A,{variant:"body2",color:"text.secondary",children:Q.ollamaReachable?e0?p("models.wizard.ollamaInstalled"):p("models.wizard.ollamaCanDownload"):p("models.wizard.ollamaNotRunningHelp")})]}),(0,l.jsx)(ec.A,{color:Q.ollamaReachable?"success":"warning",label:Q.ollamaReachable?p("models.wizard.ollamaReady"):p("models.wizard.notRunning")})]})}):null,er||(null==Q?void 0:Q.ollamaReachable)?null:(0,l.jsxs)(n.default,{sx:{mb:2},children:[e1("ollama","winget install --id Ollama.Ollama -e --source winget"),(0,l.jsx)(m.A,{startIcon:(0,l.jsx)(eN.A,{}),onClick:()=>void ek(),disabled:er||!!H,sx:{mt:1},children:p("models.wizard.checkAgain")})]}),ei?(0,l.jsxs)(n.default,{sx:{my:2},children:[(0,l.jsx)(ep.A,{}),(0,l.jsx)(z.A,{variant:"body2",sx:{mt:1},children:p("models.wizard.downloading",{model:eQ})}),en.length?(0,l.jsx)(z.A,{component:"pre",variant:"caption",color:"text.secondary",sx:{whiteSpace:"pre-wrap"},children:en.join("\n")}):null]}):null,(0,l.jsx)(m.A,{variant:"contained",size:"large",startIcon:U||ei?(0,l.jsx)(k.default,{size:18,color:"inherit"}):(0,l.jsx)(ez.A,{}),onClick:()=>void eB(),disabled:!(null==Q?void 0:Q.ollamaReachable)||U||ei,children:e0?p("models.wizard.connectModel",{model:eQ}):p("models.wizard.downloadConnect",{model:eQ})})]});if("setup"===h&&T&&eV){let e="claude-subscription"===T,r="codex-subscription"===T;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(z.A,{variant:"overline",color:"primary.main",children:p(eV.eyebrow)}),(0,l.jsx)(z.A,{variant:"h4",children:p(eV.title)}),(0,l.jsx)(z.A,{color:"text.secondary",sx:{mt:1,mb:2.2,maxWidth:720},children:p(eV.summary)}),e?(0,l.jsxs)(n.default,{sx:{mb:2},children:[(0,l.jsx)(z.A,{variant:"subtitle2",sx:{mb:1},children:p("models.wizard.installClaude")}),e1("claude","winget install --id Anthropic.ClaudeCode -e --source winget","claude setup-token")]}):null,r?(0,l.jsxs)(n.default,{sx:{mb:2},children:[(0,l.jsx)(z.A,{variant:"subtitle2",sx:{mb:1},children:p("models.wizard.installCodex")}),e1("codex","winget install --id OpenAI.Codex -e --source winget","codex login"),(0,l.jsx)(ex.A,{sx:{mt:1},control:(0,l.jsx)(eh.A,{checked:L,onChange:e=>I(e.target.checked)}),label:p("models.wizard.codexLoginComplete")})]}):null,eV.accountUrl?(0,l.jsx)(m.A,{href:eV.accountUrl,target:"_blank",rel:"noreferrer",variant:"outlined",startIcon:(0,l.jsx)(eT.A,{}),sx:{mb:2},children:eV.accountLabel?p(eV.accountLabel):null}):null,r?null:(0,l.jsx)(s.A,{fullWidth:!0,type:"password",autoComplete:"off",label:"".concat(e?"2. ":"").concat(eV.keyLabel?p(eV.keyLabel):""),value:M,onChange:e=>{F(e.target.value),O(null)},InputProps:{startAdornment:(0,l.jsx)(eS.A,{color:"action",sx:{mr:1}})},helperText:p("models.wizard.keyStorageHelp"),sx:{mb:2}}),(0,l.jsx)(f.A,{severity:"info",sx:{mb:2},children:p(eV.note)}),(0,l.jsx)(z.A,{variant:"subtitle2",sx:{mb:1},children:p("models.wizard.willAdd")}),(0,l.jsx)(eu.A,{direction:"row",gap:.8,flexWrap:"wrap",sx:{mb:2.5},children:eZ.map(e=>(0,l.jsx)(ec.A,{label:e,variant:"outlined"},e))}),(0,l.jsx)(m.A,{variant:"contained",size:"large",startIcon:U?(0,l.jsx)(k.default,{size:18,color:"inherit"}):(0,l.jsx)(b.A,{}),onClick:()=>void eP(),disabled:U||!!H,children:x("models.wizard.createModels",eZ.length)})]})}if("success"===h){let e=[...R,...P].map(e=>e.displayName||e.name);return(0,l.jsxs)(n.default,{sx:{textAlign:"center",py:2},children:[(0,l.jsx)(n.default,{sx:{width:78,height:78,mx:"auto",mb:2,display:"grid",placeItems:"center",borderRadius:"50%",color:"success.main",bgcolor:(0,ev.X4)(u.palette.success.main,.13),animation:"".concat(eX," 520ms cubic-bezier(.2,.8,.2,1) both")},children:(0,l.jsx)(ey.A,{sx:{fontSize:47}})}),(0,l.jsx)(z.A,{variant:"h4",children:p("models.wizard.successTitle")}),(0,l.jsxs)(z.A,{color:"text.secondary",sx:{mt:1,mb:2.2},children:[R.length?x("models.wizard.created",R.length):p("models.wizard.alreadyMatched"),P.length?" ".concat(x("models.wizard.kept",P.length)):""]}),(0,l.jsx)(eu.A,{direction:"row",gap:.8,justifyContent:"center",flexWrap:"wrap",sx:{mb:3},children:e.map(e=>(0,l.jsx)(ec.A,{icon:(0,l.jsx)(eI.A,{}),label:e,color:"primary",variant:"outlined"},e))}),(0,l.jsx)(m.A,{variant:"contained",size:"large",onClick:i,children:p("models.wizard.seeModels")})]})}return null})()},h)]})]})})}var eJ=t(94929);let eV=(0,B.h)("app/models/ModelClient");function eZ(e){var r;let{initialModels:t}=e,{t:A}=(0,q.s9)(),k=(0,i.useRouter)(),C=(0,i.useSearchParams)(),[z,S]=(0,o.useState)(t),[T,N]=(0,o.useState)(""),[M,F]=(0,o.useState)(null),[L,I]=(0,o.useState)(!1),[U,E]=(0,o.useState)(!1),[W,O]=(0,o.useState)(null),[D,P]=(0,o.useState)(null),B=C.get("add"),K="manual"===B;if((0,o.useEffect)(()=>{K?P(e=>null!=e?e:{id:(0,w.A)(),name:"",displayName:"",description:"",ApiKey:"",baseUrl:"",provider:"openai",promptTemplate:"",temperature:"0.0"}):P(null)},[K]),(0,o.useEffect)(()=>{try{let e=(0,ei.X)();e&&"function"==typeof e.loadModels&&(E(!0),eV.debug("Model service is ready"))}catch(r){eV.warn("Model service not ready, retrying...",r);let e=setTimeout(()=>{try{let e=(0,ei.X)();e&&"function"==typeof e.loadModels&&(E(!0),eV.debug("Model service is now ready"))}catch(e){eV.warn("Model service still not ready",e)}},100);return()=>clearTimeout(e)}},[]),!U)return eV.debug("Waiting for model service to be ready..."),(0,l.jsx)(eJ.default,{});let _=C.get("edit"),H=K?D:_&&null!=(r=z.find(e=>e.id===_))?r:null,$=K?!!D:!!_,G=async e=>{eV.info("Saving model",{modelId:e.id,modelName:e.name,mode:K?"add":"update"}),I(!0);try{let r=(0,ei.X)(),t=K?await r.addModel(e):await r.updateModel(e);if(!t.success)return F(t.error||A("models.saveFailed")),{success:!1,error:t.error};{let e=await r.loadModels();return S(e),P(null),k.push("/models"),{success:!0,model:t.model}}}catch(e){return eV.error("Failed to save model",e),F((null==e?void 0:e.message)||A("models.saveFailedRetry")),{success:!1,error:(null==e?void 0:e.message)||A("models.saveFailed")}}finally{I(!1)}},Y=async e=>(eV.info("Editing model",{modelId:e.id,modelName:e.name}),k.push("/models?edit=".concat(e.id)),{success:!0}),J=async()=>{eV.info("Opening guided model connection wizard"),O(null),k.push("/models?add=1")},V=()=>{eV.info("Opening manual add-model modal"),O(null),k.push("/models?add=manual")},Z=async e=>{eV.info("Creating guided model bundle",{count:e.length}),I(!0),F(null);let r=[],t=[];try{let l=(0,ei.X)(),o=[...await l.loadModels()];for(let i of e){let e=o.find(e=>e.provider===i.provider&&(e.adapter||"openai")===(i.adapter||"openai")&&e.name.trim().toLowerCase()===i.name.trim().toLowerCase());if(e){t.push(e);continue}let a=i.displayName||i.name,n=a,s=2;for(;o.some(e=>{var r;return(null==(r=e.displayName)?void 0:r.trim().toLowerCase())===n.trim().toLowerCase()});)n="".concat(a," (").concat(s,")"),s+=1;let d=await l.addModel({...i,displayName:n});if(!d.success||!d.model){let e=await l.loadModels();return S(e),{success:!1,created:r,existing:t,error:d.error||A("models.createNamedFailed",{name:n})}}r.push(d.model),o.push(d.model)}let i=await l.loadModels();return S(i),k.refresh(),{success:!0,created:r,existing:t}}catch(l){eV.error("Failed to create guided model bundle",l);let e=(null==l?void 0:l.message)||A("models.guidedBundleFailed");return F(e),{success:!1,created:r,existing:t,error:e}}finally{I(!1)}},Q=async e=>{eV.info("Deleting model",{modelId:e}),I(!0);try{let r=(0,ei.X)();await r.deleteModel(e);let t=await r.loadModels();S(t)}catch(e){eV.error("Failed to delete model",e),F(A("models.deleteFailed"))}finally{I(!1)}},ee=async(e,r)=>{eV.info("Setting model folder",{modelId:e,folder:r}),I(!0);try{let t=(0,ei.X)(),l=await t.getModel(e);if(!l)return void F(A("models.notFound"));let o=await t.updateModel({...l,folder:r});if(!o.success)return void F(o.error||A("models.moveFailed"));let i=await t.loadModels();S(i)}catch(e){eV.error("Failed to set model folder",e),F((null==e?void 0:e.message)||A("models.moveFailedRetry"))}finally{I(!1)}},er=async e=>{eV.info("Toggling model favorite",{modelId:e}),I(!0);try{let r=(0,ei.X)(),t=await r.getModel(e);if(!t)return void F(A("models.notFound"));let l=!t.favorite,o=await r.updateModel({...t,favorite:l||void 0});if(!o.success)return void F(o.error||A("models.favoriteFailed"));let i=await r.loadModels();S(i)}catch(e){eV.error("Failed to toggle model favorite",e),F((null==e?void 0:e.message)||A("models.favoriteFailedRetry"))}finally{I(!1)}},et=async()=>{P(null),k.push("/models")},el=T.trim()?z.filter(e=>{let r=T.toLowerCase();return(e.displayName||"").toLowerCase().includes(r)||(e.name||"").toLowerCase().includes(r)}):z;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(a.A,{elevation:0,variant:"outlined",sx:{mb:2.5,p:1.2,borderRadius:3},children:(0,l.jsxs)(n.default,{sx:{display:"flex",flexDirection:{xs:"column",sm:"row"},gap:1,alignItems:{xs:"stretch",sm:"center"},justifyContent:"space-between"},children:[(0,l.jsx)(s.A,{placeholder:A("models.searchPlaceholder"),variant:"outlined",size:"small",value:T,onChange:e=>N(e.target.value),InputProps:{startAdornment:(0,l.jsx)(d.A,{position:"start",children:(0,l.jsx)(y.A,{fontSize:"small"})})},sx:{maxWidth:{sm:300},width:"100%"}}),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(c.A,{variant:"contained",color:"primary","aria-label":A("models.connectionOptionsAria"),children:[(0,l.jsx)(m.A,{startIcon:(0,l.jsx)(v.A,{}),onClick:J,"data-tour":"add-model",children:A("models.connectAi")}),(0,l.jsx)(m.A,{size:"small","aria-label":A("models.moreOptionsAria"),"aria-controls":W?"add-model-menu":void 0,"aria-haspopup":"menu","aria-expanded":W?"true":void 0,onClick:e=>O(e.currentTarget),sx:{px:.8,minWidth:40},children:(0,l.jsx)(g.A,{})})]}),(0,l.jsxs)(u.A,{id:"add-model-menu",anchorEl:W,open:!!W,onClose:()=>O(null),children:[(0,l.jsxs)(p.A,{onClick:J,children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(b.A,{fontSize:"small"})}),(0,l.jsx)(h.A,{primary:A("models.guidedConnection"),secondary:A("models.guidedConnectionDescription")})]}),(0,l.jsxs)(p.A,{onClick:V,children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(j.A,{fontSize:"small"})}),(0,l.jsx)(h.A,{primary:A("models.manualCreation"),secondary:A("models.manualCreationDescription")})]})]})]})]})}),M&&(0,l.jsx)(n.default,{sx:{mb:2},children:(0,l.jsx)(f.A,{severity:"error",onClose:()=>F(null),children:M})}),(0,l.jsx)(X,{models:el,isLoading:L,onAdd:J,onUpdate:Y,onDelete:Q,folders:(0,R.yF)(z,e=>e.folder),onSetFolder:ee,onToggleFavorite:er}),(0,l.jsx)(eY,{open:"1"===B,onClose:et,onManualCreation:V,onCreateModels:Z}),$&&H?(0,l.jsx)(es,{open:$,model:H,onSave:G,onClose:et}):null]})}},61033:(e,r,t)=>{"use strict";t.d(r,{A$:()=>c,X8:()=>n,YP:()=>m,js:()=>d});let l="_-_-_",o=/^(tool|resource):(.+)$/,i=/\$\{((?:tool|resource):[^}]+|_-_-_[^}]+)\}/g;function a(e,r){return"".concat(e,"__").concat(r)}function n(e,r,t){return"${".concat(e,":").concat(a(r,t),"}")}function s(e){let r=o.exec(e);if(r){let e=r[1],t=function(e){let r=e.indexOf("__");if(r<=0)return null;let t=e.slice(r+2);return t?{server:e.slice(0,r),name:t}:null}(r[2]);return t?{kind:e,server:t.server,name:t.name}:null}if(e.startsWith(l)){let r=e.split(l);if(3===r.length&&r[1]&&r[2])return{kind:"tool",server:r[1],name:r[2]}}return null}function d(e){return e.startsWith("${")&&e.endsWith("}")?s(e.slice(2,-1)):null}function c(e){let r,t=[];for(i.lastIndex=0;null!==(r=i.exec(e));){let e=s(r[1]);e&&t.push({...e,fullMatch:r[0],index:r.index})}return t}function m(e){return"tool"===e.kind&&"handoff"===e.server?"handoff:".concat(e.name):"".concat(e.kind,":").concat(a(e.server,e.name))}},61267:(e,r,t)=>{"use strict";t.d(r,{A:()=>B});var l=t(95155),o=t(12115),i=t(33567),a=t(78470),n=t(41983),s=t(8532),d=t(84578),c=t(94049),m=t(25635),u=t(28548),p=t(29767),x=t(53062),h=t(1702),f=t(14915),v=t(4484),g=t(89623),b=t(11665),y=t(91665),j=t(62291),w=t(47529),A=t(88107),k=t(43076),C=t(73288),z=t(2778),S=t(52363),T=t(65036),N=t(4474),M=t(22003),F=t(21067),L=t(75912),I=t(91871),U=t(36741),E=t(48563),W=t(36773);let O=e=>{var r,t,o,i,a,n,s,d,p;let{title:x,attempt:h}=e,{t:f,formatNumber:v}=(0,W.s9)();return(0,l.jsxs)(c.default,{sx:{mb:2},children:[(0,l.jsxs)(c.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:.5},children:[h.ok?(0,l.jsx)(U.A,{color:"success",fontSize:"small"}):(0,l.jsx)(E.A,{color:"error",fontSize:"small"}),(0,l.jsx)(m.A,{variant:"subtitle2",children:x}),"number"==typeof h.status&&(0,l.jsx)(u.A,{size:"small",label:"HTTP ".concat(h.status)}),(0,l.jsx)(u.A,{size:"small",variant:"outlined",label:"".concat(v(h.durationMs)," ms")})]}),h.ok?(0,l.jsx)(m.A,{variant:"body2",color:"text.secondary",sx:{pl:3},children:f("models.test.response",{response:h.content?'"'.concat(h.content,'"'):f("models.test.empty")})}):(0,l.jsxs)(c.default,{sx:{pl:3},children:[(0,l.jsx)(m.A,{variant:"body2",color:"error.main",children:null==(r=h.error)?void 0:r.message}),((null==(t=h.error)?void 0:t.code)||(null==(o=h.error)?void 0:o.type))&&(0,l.jsxs)(m.A,{variant:"caption",color:"text.secondary",display:"block",children:[(null==(i=h.error)?void 0:i.type)?"type: ".concat(h.error.type):"",(null==(a=h.error)?void 0:a.type)&&(null==(n=h.error)?void 0:n.code)?" \xb7 ":"",(null==(s=h.error)?void 0:s.code)?"code: ".concat(h.error.code):""]}),(null==(d=h.error)?void 0:d.retryAfter)&&(0,l.jsxs)(m.A,{variant:"caption",color:"text.secondary",display:"block",children:["retry-after: ",h.error.retryAfter,"s"]}),(null==(p=h.error)?void 0:p.body)!==void 0&&(0,l.jsx)(c.default,{component:"pre",sx:{mt:.5,p:1,bgcolor:"action.hover",borderRadius:1,fontSize:"0.7rem",overflowX:"auto",maxHeight:160},children:JSON.stringify(h.error.body,null,2)})]})]})},R=e=>{let{open:r,modelLabel:t,loading:o,result:i,error:a,onClose:n,onRetry:s}=e,{t:d}=(0,W.s9)(),u=d((null==i?void 0:i.provider)==="codex"?"models.test.codexSdk":"models.test.openaiSdk");return(0,l.jsxs)(z.A,{open:r,onClose:n,maxWidth:"sm",fullWidth:!0,children:[(0,l.jsx)(S.A,{children:d("models.test.title",{model:t})}),(0,l.jsx)(T.A,{dividers:!0,children:o?(0,l.jsxs)(c.default,{sx:{display:"flex",alignItems:"center",gap:2,py:3},children:[(0,l.jsx)(N.default,{size:24}),(0,l.jsx)(m.A,{variant:"body2",children:d("models.test.sending")})]}):a?(0,l.jsx)(M.A,{severity:"error",children:a}):i?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(M.A,{severity:i.ok?"success":"warning",sx:{mb:2},children:i.diagnosis}),(0,l.jsxs)(m.A,{variant:"caption",color:"text.secondary",display:"block",sx:{mb:2},children:[d("models.test.modelLabel",{model:i.model}),i.baseUrl?" \xb7 ".concat(i.baseUrl):"",i.provider?" \xb7 ".concat(i.provider):""]}),(0,l.jsx)(F.A,{sx:{mb:2}}),(0,l.jsx)(O,{title:u,attempt:i.sdk}),(0,l.jsx)(O,{title:d("models.test.axios"),attempt:i.axios})]}):null}),(0,l.jsxs)(L.A,{children:[(0,l.jsx)(I.A,{onClick:s,disabled:o,children:d("models.test.runAgain")}),(0,l.jsx)(I.A,{onClick:n,variant:"contained",children:d("common.close")})]})]})};var D=t(81956);let P=(0,C.h)("frontend/components/models/list/ModelCard"),B=e=>{let{model:r,onEdit:t,onDelete:C,folder:z,folders:S=[],onSetFolder:T,selectable:N=!1,selected:M=!1,onSelect:F,onToggleFavorite:L}=e,{t:I,formatNumber:U}=(0,W.s9)(),E=(0,i.A)(),[O,B]=(0,o.useState)(!1),[q,K]=(0,o.useState)(!1),[X,_]=(0,o.useState)(null),[H,$]=(0,o.useState)(null),[G,Y]=(0,o.useState)(null),J=async()=>{K(!0),$(null),_(null);try{let e=await (0,k.X)().testModel({modelId:r.id});_(e)}catch(e){P.error("Model test failed",{modelId:r.id,error:e}),$(e instanceof Error?e.message:I("models.test.failed"))}finally{K(!1)}},V=L?(0,l.jsx)(a.A,{title:r.favorite?I("models.favorite.remove"):I("models.favorite.add"),arrow:!0,placement:"top",children:(0,l.jsx)(n.A,{size:"small","aria-label":r.favorite?I("models.favorite.remove"):I("models.favorite.add"),onClick:e=>{e.stopPropagation(),null==L||L(r.id)},sx:{position:"absolute",top:4,left:4,zIndex:2,color:r.favorite?E.palette.warning.main:E.palette.text.secondary,backgroundColor:(0,s.X4)(E.palette.background.paper,.6),"&:hover":{backgroundColor:(0,s.X4)(E.palette.background.paper,.9)}},children:r.favorite?(0,l.jsx)(j.A,{fontSize:"small"}):(0,l.jsx)(w.A,{fontSize:"small"})})}):null,Z=(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)(d.A,{sx:{flexGrow:1,p:2.25},children:[(0,l.jsxs)(c.default,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1,mb:1.2},children:[(0,l.jsx)(m.A,{variant:"h6",sx:{pr:1},children:r.displayName||r.name}),(0,l.jsx)(u.A,{label:(0,A.T_)(r.provider,r.adapter).label,size:"small",sx:{flexShrink:0,color:"primary.light",bgcolor:(0,s.X4)(E.palette.primary.main,.09),border:"1px solid ".concat((0,s.X4)(E.palette.primary.main,.16))}})]}),(0,l.jsx)(m.A,{variant:"body2",color:"text.secondary",sx:{mb:2,minHeight:42},style:{display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",overflow:"hidden",textOverflow:"ellipsis"},children:r.description}),(0,l.jsxs)(c.default,{sx:{mb:1,p:1.25,border:1,borderColor:"divider",borderRadius:2.5,bgcolor:(0,s.X4)(E.palette.background.default,.44)},children:[r.displayName&&(0,l.jsxs)(m.A,{variant:"body2",color:"text.secondary",noWrap:!0,children:[(0,l.jsx)(c.default,{component:"span",sx:{color:"text.primary",fontWeight:650},children:I("models.card.model")})," \xb7 ",r.name]}),"number"==typeof r.contextWindow&&(0,l.jsxs)(m.A,{variant:"body2",color:"text.secondary",children:[(0,l.jsx)(c.default,{component:"span",sx:{color:"text.primary",fontWeight:650},children:I("models.card.context")})," \xb7 ",U(r.contextWindow)," ",I("models.card.tokens")]})]}),r.baseUrl&&(0,l.jsx)(a.A,{title:r.baseUrl,arrow:!0,placement:"top",children:(0,l.jsxs)(m.A,{variant:"body2",color:"text.secondary",noWrap:!0,children:[I("models.card.baseUrl"),": ",r.baseUrl]})}),z&&(0,l.jsx)(u.A,{icon:(0,l.jsx)(y.A,{}),label:z,size:"small",variant:"outlined",sx:{mt:1,maxWidth:"100%"}})]})});return N?(0,l.jsxs)(p.A,{elevation:0,role:"radio","aria-checked":M,sx:{height:"100%",display:"flex",flexDirection:"column",position:"relative",border:e=>"1px solid ".concat(M?e.palette.primary.main:e.palette.divider),boxShadow:M?"0 0 0 3px ".concat((0,s.X4)(E.palette.primary.main,.13)):void 0,transition:"transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease","&:hover":{borderColor:(0,s.X4)(E.palette.primary.main,.42),transform:"translateY(-3px)"}},children:[V,(0,l.jsx)(x.A,{onClick:()=>null==F?void 0:F(r.id),sx:{height:"100%",display:"flex",flexDirection:"column",alignItems:"stretch"},children:Z})]}):(0,l.jsxs)(p.A,{elevation:0,sx:{height:"100%",display:"flex",flexDirection:"column",position:"relative",transition:"transform 200ms ease, border-color 200ms ease, box-shadow 200ms ease","&:hover":{borderColor:(0,s.X4)(E.palette.primary.main,.38),boxShadow:"0 22px 60px ".concat((0,s.X4)(E.palette.primary.main,.12)),transform:"translateY(-4px)"}},children:[V,Z,(0,l.jsxs)(h.A,{disableSpacing:!0,sx:{px:1.5,pb:1.4,borderTop:1,borderColor:"divider"},children:[(0,l.jsx)(a.A,{title:I("models.card.testTooltip"),arrow:!0,children:(0,l.jsx)(n.A,{"aria-label":I("models.card.testAria"),onClick:()=>{B(!0),J()},children:(0,l.jsx)(g.A,{})})}),(0,l.jsx)(n.A,{"aria-label":I("models.card.editAria"),onClick:t,children:(0,l.jsx)(f.A,{})}),(0,l.jsx)(n.A,{"aria-label":I("models.card.deleteAria"),onClick:C,children:(0,l.jsx)(v.A,{})}),T&&(0,l.jsx)(a.A,{title:I("models.card.moveTooltip"),arrow:!0,children:(0,l.jsx)(n.A,{"aria-label":I("models.card.moveAria"),onClick:e=>Y(e.currentTarget),sx:{ml:"auto"},children:(0,l.jsx)(b.A,{})})})]}),T&&(0,l.jsx)(D.A,{anchorEl:G,open:!!G,currentFolder:z,folders:S,onClose:()=>Y(null),onAssign:T}),(0,l.jsx)(R,{open:O,modelLabel:r.displayName||r.name,loading:q,result:X,error:H,onClose:()=>B(!1),onRetry:J})]})}},64598:(e,r,t)=>{"use strict";t.d(r,{R:()=>i});var l=t(12115),o=t(97104);function i(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{threshold:t=200,deps:i=[]}=r,a=(0,l.useRef)(null),[n,s]=(0,l.useState)(!1),d=(0,l.useRef)(!1),c=(0,l.useCallback)(()=>{let e=a.current;return e&&e.scrollHeight>e.clientHeight+1?e:null},[]),m=(0,l.useCallback)(()=>{let e=c();return e?e.scrollTop:window.scrollY||document.documentElement.scrollTop||0},[c]),u=(0,l.useCallback)(e=>{let r=c();r?r.scrollTop=e:window.scrollTo(0,e)},[c]);return(0,l.useEffect)(()=>{let r=a.current,l=0,i="function"==typeof window.requestAnimationFrame?window.requestAnimationFrame.bind(window):e=>window.setTimeout(()=>e(0),16),n="function"==typeof window.cancelAnimationFrame?window.cancelAnimationFrame.bind(window):e=>window.clearTimeout(e),d=()=>{let r=m();s(r>t),l&&n(l),l=i(()=>(0,o.vi)(e,r))};return null==r||r.addEventListener("scroll",d,{passive:!0}),window.addEventListener("scroll",d,{passive:!0}),()=>{l&&n(l),null==r||r.removeEventListener("scroll",d),window.removeEventListener("scroll",d)}},[e,t,m]),(0,l.useEffect)(()=>{if(d.current)return;let r=(0,o.Aq)(e,0);if(r<=0){d.current=!0;return}u(r);let l=m();l>0&&(d.current=!0,s(l>t))},i),{ref:a,showBackToTop:n,scrollToTop:(0,l.useCallback)(()=>{let e=c();e?e.scrollTo({top:0,behavior:"smooth"}):window.scrollTo({top:0,behavior:"smooth"}),s(!1)},[c])}}},69586:(e,r,t)=>{Promise.resolve().then(t.bind(t,96429)),Promise.resolve().then(t.bind(t,94049)),Promise.resolve().then(t.bind(t,24437)),Promise.resolve().then(t.bind(t,36552)),Promise.resolve().then(t.bind(t,58971)),Promise.resolve().then(t.bind(t,79508)),Promise.resolve().then(t.bind(t,36982)),Promise.resolve().then(t.bind(t,94929))},79508:(e,r,t)=>{"use strict";t.d(r,{default:()=>c});var l=t(95155),o=t(33567),i=t(94049),a=t(80777),n=t(25635),s=t(8532),d=t(36773);function c(e){let{title:r,titleKey:t,description:c,descriptionKey:m,eyebrow:u,eyebrowKey:p,icon:x,leading:h,badge:f,actions:v,compact:g=!1,maxWidth:b=1440}=e,y=(0,o.A)(),{t:j}=(0,d.s9)(),w=t?j(t):r,A=m?j(m):c,k=p?j(p):u;return(0,l.jsx)(i.default,{component:"header",sx:{position:"relative",overflow:"hidden",borderBottom:1,borderColor:"divider",background:"linear-gradient(110deg, ".concat((0,s.X4)(y.palette.primary.main,"dark"===y.palette.mode?.09:.055),", transparent 38%, ").concat((0,s.X4)(y.palette.secondary.main,.045),")"),"&::after":{position:"absolute",top:-90,right:"8%",width:220,height:160,borderRadius:"50%",content:'""',pointerEvents:"none",background:"radial-gradient(circle, ".concat((0,s.X4)(y.palette.primary.main,.16),", transparent 68%)"),filter:"blur(20px)"}},children:(0,l.jsxs)(i.default,{sx:{position:"relative",zIndex:1,display:"flex",width:"100%",maxWidth:b,mx:"auto",px:{xs:2,sm:3,lg:4},py:g?{xs:1.8,sm:2}:{xs:2.2,sm:2.8},alignItems:{xs:"flex-start",md:"center"},justifyContent:"space-between",flexDirection:{xs:"column",md:"row"},gap:2},children:[(0,l.jsxs)(a.A,{direction:"row",spacing:1.5,alignItems:"center",sx:{minWidth:0},children:[h,x&&(0,l.jsx)(i.default,{"aria-hidden":"true",sx:{display:"grid",width:g?40:46,height:g?40:46,flexShrink:0,placeItems:"center",border:"1px solid ".concat((0,s.X4)(y.palette.primary.main,.24)),borderRadius:g?2.8:3.2,color:"primary.light",bgcolor:(0,s.X4)(y.palette.primary.main,.1),boxShadow:"inset 0 1px 0 ".concat((0,s.X4)(y.palette.common.white,.08),", 0 10px 30px ").concat((0,s.X4)(y.palette.primary.main,.12))},children:(0,l.jsx)(x,{sx:{fontSize:g?21:24}})}),(0,l.jsxs)(i.default,{sx:{minWidth:0},children:[(u||f)&&(0,l.jsxs)(a.A,{direction:"row",spacing:1,alignItems:"center",sx:{mb:.35},children:[k&&(0,l.jsx)(n.A,{sx:{color:"primary.light",fontSize:"0.67rem",fontWeight:780,letterSpacing:"0.13em",textTransform:"uppercase"},children:k}),f]}),(0,l.jsx)(n.A,{component:"h1",variant:"h5",sx:{overflow:"hidden",textOverflow:"ellipsis",fontSize:g?"1.2rem":void 0,whiteSpace:{xs:"normal",sm:"nowrap"}},children:w}),A&&(0,l.jsx)(n.A,{variant:"body2",color:"text.secondary",sx:{mt:.45,maxWidth:720,textWrap:"balance"},children:A})]})]}),v&&(0,l.jsx)(i.default,{sx:{display:"flex",width:{xs:"100%",md:"auto"},flexShrink:0,flexWrap:"wrap",alignItems:"center",gap:1,"& > .MuiButton-root":{flex:{xs:"1 1 auto",sm:"0 0 auto"}}},children:v})]})})}},81956:(e,r,t)=>{"use strict";t.d(r,{A:()=>j});var l=t(95155),o=t(12115),i=t(36314),a=t(86973),n=t(49501),s=t(17681),d=t(21067),c=t(2778),m=t(52363),u=t(65036),p=t(9562),x=t(75912),h=t(91871),f=t(9693),v=t(91665),g=t(7517),b=t(8190),y=t(36773);let j=e=>{let{anchorEl:r,open:t,currentFolder:j,folders:w,onClose:A,onAssign:k}=e,{t:C}=(0,y.s9)(),[z,S]=(0,o.useState)(!1),[T,N]=(0,o.useState)(""),M=e=>{k(e),A()},F=()=>{let e=T.trim();e&&(S(!1),M(e))};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(i.A,{anchorEl:r,open:t,onClose:A,onClick:e=>e.stopPropagation(),children:[w.length>0&&w.map(e=>(0,l.jsxs)(a.A,{onClick:()=>M(e),selected:e===j,children:[(0,l.jsx)(n.A,{children:e===j?(0,l.jsx)(f.A,{fontSize:"small"}):(0,l.jsx)(v.A,{fontSize:"small"})}),(0,l.jsx)(s.A,{primary:e})]},e)),w.length>0&&(0,l.jsx)(d.A,{}),(0,l.jsxs)(a.A,{onClick:()=>{N(""),S(!0)},children:[(0,l.jsx)(n.A,{children:(0,l.jsx)(g.A,{fontSize:"small"})}),(0,l.jsx)(s.A,{primary:C("folderAssign.newAction")})]}),j&&(0,l.jsxs)(a.A,{onClick:()=>M(void 0),children:[(0,l.jsx)(n.A,{children:(0,l.jsx)(b.A,{fontSize:"small"})}),(0,l.jsx)(s.A,{primary:C("folderAssign.remove")})]})]}),(0,l.jsxs)(c.A,{open:z,onClose:()=>S(!1),maxWidth:"xs",fullWidth:!0,onClick:e=>e.stopPropagation(),children:[(0,l.jsx)(m.A,{children:C("folderAssign.newTitle")}),(0,l.jsx)(u.A,{children:(0,l.jsx)(p.A,{autoFocus:!0,margin:"dense",label:C("folderAssign.name"),fullWidth:!0,value:T,onChange:e=>N(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),F())}})}),(0,l.jsxs)(x.A,{children:[(0,l.jsx)(h.A,{onClick:()=>S(!1),children:C("common.cancel")}),(0,l.jsx)(h.A,{variant:"contained",disabled:!T.trim(),onClick:F,children:C("common.create")})]})]})]})}},88107:(e,r,t)=>{"use strict";t.d(r,{T_:()=>s,g3:()=>a,xx:()=>n});let l=/(^|[/_-])(o[1-9]|gpt-5)(?:[./_-]|$)/i,o=/claude-(?:fable|mythos)-5|claude-opus-4-(?:[7-9]|\d{2,})|claude-sonnet-5/i,i=/^(?:opus|sonnet|fable)$|claude-(?:fable|mythos)-5|claude-opus-4-(?:[6-9]|\d{2,})|claude-sonnet-4-6/i;function a(e,r){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",a=r||"openai",n=t.trim();if("codex-cli"===a)return{effortLevels:/^gpt-5\.6-(?:sol|terra)$/i.test(n)?["low","medium","high","xhigh","max","ultra"]:/^gpt-5\.6-/i.test(n)?["low","medium","high","xhigh","max"]:["low","medium","high","xhigh"],priority:!/(?:mini|spark|review)/i.test(n),maxOutputTokens:!1};if("claude-cli"===a)return{...i.test(n)?{effortLevels:["low","medium","high","xhigh","max"]}:{},maxOutputTokens:!1};if("anthropic"===a)return{...!o.test(n)?{creativity:{min:0,max:1,step:.1}}:{},...i.test(n)?{effortLevels:["low","medium","high","xhigh","max"]}:{},maxOutputTokens:!0};if("gemini"===a)return{creativity:{min:0,max:2,step:.1},.../^gemini-2\.5/i.test(n)?{thinkingBudget:!0}:!/^gemini-2\.0/i.test(n)?{thinkingLevels:["minimal","low","medium","high"]}:{},maxOutputTokens:!0};let s="openai"===(e||"openai")&&l.test(n);return{...!s?{creativity:{min:0,max:2,step:.1}}:{},...s?{effortLevels:["low","medium","high"]}:{},maxOutputTokens:!0}}let n=[{id:"openai",label:"OpenAI",provider:"openai",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.openai.com/v1",showBaseUrl:!0},{id:"openai-responses",label:"OpenAI (Responses API)",provider:"openai",adapter:"openai-responses",sdkLabel:"OpenAI SDK (Responses)",baseUrl:"https://api.openai.com/v1",showBaseUrl:!0,defaultModels:["gpt-5","gpt-5-mini","o4-mini","o3"]},{id:"openrouter",label:"OpenRouter",provider:"openrouter",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://openrouter.ai/api/v1",showBaseUrl:!0},{id:"requesty",label:"Requesty",provider:"requesty",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://router.requesty.ai/v1",showBaseUrl:!0},{id:"xai",label:"X.ai",provider:"xai",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.x.ai/v1",showBaseUrl:!0},{id:"ollama",label:"Ollama",provider:"ollama",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"http://localhost:11434/v1",showBaseUrl:!0},{id:"litellm",label:"LiteLLM",provider:"litellm",adapter:"openai",sdkLabel:"OpenAI SDK (via LiteLLM Proxy)",baseUrl:"http://localhost:4000/v1",showBaseUrl:!0},{id:"gemini-openai",label:"Gemini (OpenAI Format)",provider:"gemini",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://generativelanguage.googleapis.com/v1beta/openai/",showBaseUrl:!0},{id:"gemini-native",label:"Gemini (Native)",provider:"gemini",adapter:"gemini",sdkLabel:"GenAI SDK",baseUrl:"",showBaseUrl:!1,defaultModels:["gemini-2.5-pro","gemini-2.5-flash","gemini-2.5-flash-lite","gemini-2.0-flash"]},{id:"anthropic-openai",label:"Anthropic (OpenAI Format)",provider:"anthropic",adapter:"openai",sdkLabel:"OpenAI SDK",baseUrl:"https://api.anthropic.com/v1/",showBaseUrl:!0},{id:"anthropic-native",label:"Anthropic (Native)",provider:"anthropic",adapter:"anthropic",sdkLabel:"Anthropic SDK",baseUrl:"",showBaseUrl:!1,defaultModels:["claude-opus-4-8","claude-sonnet-4-6","claude-haiku-4-5-20251001","claude-fable-5"]},{id:"claude-subscription",label:"Claude Subscription",provider:"claude-subscription",adapter:"claude-cli",sdkLabel:"Claude CLI",baseUrl:"",showBaseUrl:!1,defaultModels:["opus","sonnet","haiku","fable"]},{id:"codex",label:"Codex (OpenAI)",provider:"codex",adapter:"codex-cli",sdkLabel:"Codex SDK",baseUrl:"",showBaseUrl:!1,defaultModels:["gpt-5.6-sol","gpt-5.6-terra","gpt-5.6-luna","gpt-5.5","gpt-5.4","gpt-5.4-mini"]}];function s(e,r){let t=e||"openai",l=r||"openai";return n.find(e=>e.provider===t&&e.adapter===l)||n.find(e=>e.provider===t)||n[0]}},90880:(e,r,t)=>{"use strict";t.d(r,{CN:()=>c,Pj:()=>s,Ub:()=>d,jX:()=>m,sE:()=>a,y4:()=>n});var l=t(61033);let o=/\$\{res:([^}]+)\}/g,i=/\$\{global:([^}]+)\}/g;function a(e){let r,t=(0,l.A$)(e).map(e=>({kind:e.kind,server:e.server,name:e.name,fullMatch:e.fullMatch,index:e.index}));for(o.lastIndex=0;null!==(r=o.exec(e));)t.push({kind:"runres",server:"",name:r[1],fullMatch:r[0],index:r.index});for(i.lastIndex=0;null!==(r=i.exec(e));)t.push({kind:"global",server:"",name:r[1],fullMatch:r[0],index:r.index});return t.sort((e,r)=>e.index-r.index)}function n(e){if(e.startsWith("${res:")&&e.endsWith("}")){let r=e.slice(6,-1);return r?{kind:"runres",server:"",name:r}:null}if(e.startsWith("${global:")&&e.endsWith("}")){let r=e.slice(9,-1);return r?{kind:"global",server:"",name:r}:null}let r=(0,l.js)(e);return r?{kind:r.kind,server:r.server,name:r.name}:null}function s(e,r,t){return"runres"===e?"${res:".concat(t,"}"):"global"===e?"${global:".concat(t,"}"):(0,l.X8)(e,r,t)}function d(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.name,t=arguments.length>2?arguments[2]:void 0;return{...e,label:r,value:s(e.kind,e.server,e.name),description:t}}function c(e){return"runres"===e.kind?"res:".concat(e.name):"global"===e.kind?"global:".concat(e.name):(0,l.YP)({kind:e.kind,server:e.server,name:e.name})}function m(e){let r=new Set;for(let t of e){let e;if("string"==typeof t&&0!==t.length)for(o.lastIndex=0;null!==(e=o.exec(t));){let t=e[1].trim();t&&r.add(t)}}return[...r].sort((e,r)=>e.localeCompare(r))}},95480:(e,r,t)=>{"use strict";t.d(r,{A:()=>z});var l=t(95155),o=t(12115),i=t(94049),a=t(25635),n=t(14913),s=t(57883),d=t(2300),c=t(89218),m=t(42063),u=t(17897),p=t(9164),x=t(73288),h=t(90880),f=t(11433);t(32098);var v=t(36773);let g=(0,x.h)("frontend/components/shared/PromptBuilder"),b=e=>{let{server:r,name:t}=e,{t:i}=(0,v.s9)(),a="handoff"===r,[n,s]=(0,o.useState)(null),[d,c]=(0,o.useState)(!0);return((0,o.useEffect)(()=>{let e=!1;return(async()=>{try{var l;c(!0);let o=null==(l=(await u.S.listServerTools(r)).tools)?void 0:l.find(e=>e.name===t);e||s(o||null)}catch(e){g.error("Failed to fetch tool info for ".concat(r,":").concat(t),e)}finally{e||c(!1)}})(),()=>{e=!0}},[r,t]),d)?(0,l.jsx)("span",{className:"tool-reference-preview loading ".concat(a?"handoff":""),children:"tool:".concat(r,"__").concat(t)}):n?(0,l.jsx)("span",{className:"tool-reference-preview ".concat(a?"handoff":""),children:i("promptBuilder.toolPreview",{kind:i(a?"promptBuilder.kind.handoff":"promptBuilder.kind.tool"),reference:"tool:".concat(r,"__").concat(t),description:n.description||i("promptBuilder.noDescription")})}):(0,l.jsx)("span",{className:"tool-reference-preview not-found ".concat(a?"handoff":""),children:i("promptBuilder.notFound",{reference:"tool:".concat(r,"__").concat(t)})})},y=e=>{let{server:r,name:t}=e,{t:i}=(0,v.s9)(),[a,n]=(0,o.useState)(null),[s,d]=(0,o.useState)(!0);return((0,o.useEffect)(()=>{let e=!1;return(async()=>{try{d(!0);let l=await u.S.listServerResources(r),o=[...l.resources||[],...l.resourceTemplates||[]].find(e=>e.uri===t||e.uriTemplate===t);e||n((null==o?void 0:o.description)||(null==o?void 0:o.name)||null)}catch(e){g.error("Failed to fetch resource info for ".concat(r,":").concat(t),e)}finally{e||d(!1)}})(),()=>{e=!0}},[r,t]),s)?(0,l.jsx)("span",{className:"tool-reference-preview loading resource",children:"resource:".concat(r,"__").concat(t)}):(0,l.jsx)("span",{className:"tool-reference-preview resource",children:i("promptBuilder.resourcePreview",{name:t,server:r,description:a?" (".concat(a,")"):""})})},j=e=>{let{name:r}=e,{t}=(0,v.s9)();return(0,l.jsx)("span",{className:"tool-reference-preview runres",children:t("promptBuilder.tempPreview",{name:r})})},w=e=>{let{name:r}=e,{t}=(0,v.s9)();return(0,l.jsx)("span",{className:"tool-reference-preview global",children:t("promptBuilder.globalPreview",{reference:"${global:".concat(r,"}")})})},A=e=>{let{binding:r}=e;return"global"===r.kind?(0,l.jsx)(w,{name:r.name}):"runres"===r.kind?(0,l.jsx)(j,{name:r.name}):"resource"===r.kind?(0,l.jsx)(y,{server:r.server,name:r.name}):(0,l.jsx)(b,{server:r.server,name:r.name})},k=e=>{let{value:r}=e,t=[],o=0;for(let e of(0,h.sE)(r))e.index>o&&t.push({type:"text",value:r.slice(o,e.index)}),t.push({type:"binding",binding:e,key:e.index}),o=e.index+e.fullMatch.length;o<r.length&&t.push({type:"text",value:r.slice(o)});let i=[],a=[],n=()=>{i.push((0,l.jsx)("p",{children:a},"p-".concat(i.length))),a=[]};for(let e of t)if("text"===e.type){let r=e.value.split("\n");for(let e=0;e<r.length;e++)a.push(r[e]),e<r.length-1&&n()}else a.push((0,l.jsx)(A,{binding:e.binding},"binding-".concat(e.key)));return(a.length>0||0===i.length)&&n(),(0,l.jsx)("div",{className:"preview-content",children:i})},C=(0,o.forwardRef)((e,r)=>{let{value:t,onChange:u,label:x,height:g=300,onModeChange:b,customPreviewRenderer:y,suggestions:j=[]}=e,{t:w}=(0,v.s9)(),A=null!=x?x:w("promptBuilder.title"),{globalEnvVars:C}=(0,p.useStorage)(),z=(0,o.useMemo)(()=>Object.entries(C).filter(e=>{var r;let[,t]=e;return!(null==(r=t.metadata)?void 0:r.isSecret)}).map(e=>{let[r]=e;return r}).sort((e,r)=>e.localeCompare(r)),[C]),S=(0,o.useMemo)(()=>[...j,...z.map(e=>(0,h.Ub)({kind:"global",server:"",name:e},e))],[z,j]),T=(0,o.useRef)(null),[N,M]=(0,o.useState)("raw");return(0,o.useImperativeHandle)(r,()=>({insertText:e=>{var r;return null==(r=T.current)?void 0:r.insertText(e)},getMode:()=>N}),[N]),(0,l.jsxs)(i.default,{sx:{width:"100%",height:"100%",display:"flex",flexDirection:"column"},children:[A&&(0,l.jsx)(a.A,{variant:"subtitle1",gutterBottom:!0,sx:{fontWeight:"medium",mb:1},children:A}),(0,l.jsx)(i.default,{sx:{mb:1},children:(0,l.jsxs)(n.A,{value:N,exclusive:!0,onChange:(e,r)=>{r&&(M(r),null==b||b(r))},size:"small",children:[(0,l.jsxs)(s.A,{value:"raw",children:[(0,l.jsx)(c.A,{fontSize:"small",sx:{mr:.5}}),w("promptBuilder.raw")]}),(0,l.jsxs)(s.A,{value:"preview",children:[(0,l.jsx)(m.A,{fontSize:"small",sx:{mr:.5}}),w("promptBuilder.preview")]})]})}),(0,l.jsx)(d.A,{elevation:0,sx:{border:"1px solid rgba(0, 0, 0, 0.12)",borderRadius:1,overflow:"visible",flexGrow:1,display:"flex",flexDirection:"column"},children:"raw"===N?(0,l.jsx)(i.default,{className:"slate-editor-container",sx:{height:"number"==typeof g?g:"100%",overflow:"visible",p:2},children:(0,l.jsx)(f.Ay,{ref:T,value:t,onChange:u,suggestions:S,placeholder:w("promptBuilder.placeholder"),bare:!0,minRows:4,containerSx:{height:"100%"},ariaLabel:A||w("promptBuilder.editorAria")})}):y?(0,l.jsx)(i.default,{className:"custom-preview-container",sx:{height:"number"==typeof g?g:"100%",overflow:"auto"},children:y()}):(0,l.jsx)(i.default,{className:"preview-container",sx:{height:"number"==typeof g?g:"100%",overflow:"auto",p:2},children:(0,l.jsx)(k,{value:t})})})]})});C.displayName="PromptBuilder";let z=C},97104:(e,r,t)=>{"use strict";t.d(r,{Aq:()=>o,Xk:()=>a,vi:()=>i});var l=t(12115);function o(e,r){try{let t=window.localStorage.getItem(e);if(null===t)return r;return JSON.parse(t)}catch(e){return r}}function i(e,r){try{window.localStorage.setItem(e,JSON.stringify(r))}catch(e){}}function a(e,r){let[t,a]=(0,l.useState)(()=>o(e,r));return[t,(0,l.useCallback)(r=>{a(t=>{let l="function"==typeof r?r(t):r;return i(e,l),l})},[e])]}}},e=>{e.O(0,[1137,7926,4754,7758,3392,2678,981,1983,1871,5954,9562,3816,3272,155,4123,3303,1675,2005,8326,889,5148,1161,8441,1255,7358],()=>e(e.s=69586)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7262],{8964:(e,a,t)=>{"use strict";t.d(a,{A:()=>l});var s=t(95155),n=t(12115),r=t(36773);function l(e){let{message:a,values:t={}}=e,{t:l}=(0,r.s9)();return l(a,Object.fromEntries(Object.keys(t).map(e=>[e,"{".concat(e,"}")]))).split(/(\{[a-zA-Z0-9_]+\})/g).map((e,a)=>{var r;let l=/^\{([a-zA-Z0-9_]+)\}$/.exec(e);return l?(0,s.jsx)(n.Fragment,{children:null!=(r=t[l[1]])?r:e},"".concat(l[1],"-").concat(a)):(0,s.jsx)(n.Fragment,{children:e},a)})}},70479:(e,a,t)=>{"use strict";t.r(a),t.d(a,{default:()=>e4});var s=t(95155),n=t(12115),r=t(94049),l=t(20063),i=t(28548),o=t(91871),c=t(2300),d=t(25635),u=t(86946),p=t(40047),g=t(33567),h=t(15712),m=t(9562),x=t(56422),f=t(41602),j=t(23820),v=t(73707),y=t(49501),k=t(22822),w=t(17681),A=t(4474),b=t(80777),S=t(22003),z=t(41275),C=t(21067),T=t(55606),E=t(86973),I=t(99944),W=t(9957),P=t(2778),N=t(52363),O=t(65036),R=t(95844),H=t(71908),F=t(64246),M=t(75912),_=t(51611),G=t(66087),L=t(57813),q=t(26466),J=t(73288);let D=(0,J.h)("frontend/services/registry");async function U(e){return await e.json().catch(()=>({}))}class ${async getStatus(){let e=await fetch("/api/registry/auth",{method:"GET"});if(!e.ok)throw Error("HTTP ".concat(e.status));return U(e)}async auth(e,a,t,s){let n=await fetch("/api/registry/auth",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:e,email:a,password:t,...s?{handle:s}:{}})}),r=await U(n);if(!n.ok&&(null==r?void 0:r.status)===void 0)throw Error((null==r?void 0:r.error)||"HTTP ".concat(n.status));return r}signup(e,a,t){return this.auth("signup",e,a,t)}login(e,a){return this.auth("login",e,a)}async logout(){let e=await fetch("/api/registry/auth",{method:"DELETE"});if(!e.ok)throw Error("HTTP ".concat(e.status))}async beginOAuth(e){let a=await fetch("/api/registry/oauth/initiate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:e})}),t=await U(a);if(!a.ok||!(null==t?void 0:t.authorizationUrl))throw Error((null==t?void 0:t.error)||"HTTP ".concat(a.status));return{authorizationUrl:t.authorizationUrl}}async resendConfirmation(e){return U(await fetch("/api/registry/auth/resend",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e?{email:e}:{})}))}async requestPasswordReset(e){return U(await fetch("/api/registry/auth/reset",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:e})}))}async getSettings(){let e=await fetch("/api/registry/settings",{method:"GET"});if(!e.ok)throw Error("HTTP ".concat(e.status));return U(e)}async saveSettings(e){return U(await fetch("/api/registry/settings",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({baseUrl:e})}))}async publish(e){let a=await fetch("/api/registry/publish",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({manifest:e})}),t=await U(a);return(null==t?void 0:t.ok)===void 0?(D.warn("Unexpected publish response shape",{status:a.status}),{ok:!1,code:"error",error:"HTTP ".concat(a.status)}):t}async deletePackage(e){let a=await fetch("/api/registry/packages",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({packageId:e})}),t=await U(a);return(null==t?void 0:t.ok)===void 0?(D.warn("Unexpected package deletion response shape",{status:a.status}),{ok:!1,code:"error",error:(null==t?void 0:t.error)||"HTTP ".concat(a.status)}):t}}let Z=null,B=()=>(Z||(Z=new $),Z),K=new Proxy({},{get(e,a){let t=B(),s=t[a];return"function"==typeof s?s.bind(t):s}});var V=t(36773),X=t(8964);let Y=(0,J.h)("frontend/components/Packages/RegistryAccountSettings");function Q(){let{t:e}=(0,V.s9)(),[a,t]=(0,n.useState)(null),[l,c]=(0,n.useState)(!0),[u,p]=(0,n.useState)(!1),[g,h]=(0,n.useState)(null),[x,f]=(0,n.useState)("login"),[j,v]=(0,n.useState)(""),[y,k]=(0,n.useState)(""),[w,z]=(0,n.useState)(""),[T,E]=(0,n.useState)(""),[I,W]=(0,n.useState)(""),P=(0,n.useCallback)(async()=>{try{let[e,a]=await Promise.all([K.getStatus(),K.getSettings()]);t(e),W(a.defaultUrl),E(a.usingDefault?"":a.baseUrl)}catch(e){Y.warn("Failed to load registry account status",e)}finally{c(!1)}},[]);(0,n.useEffect)(()=>{P()},[P]),(0,n.useEffect)(()=>{let a=new URLSearchParams(window.location.search),t=a.get("registry_oauth");if(!t)return;h("success"===t?{type:"success",text:e("packages.account.signedIn")}:{type:"error",text:e("packages.account.oauthFailed")}),P(),a.delete("registry_oauth");let s=a.toString();window.history.replaceState({},"",window.location.pathname+(s?"?".concat(s):""))},[P,e]);let N=async()=>{p(!0),h(null);try{let a="signup"===x?await K.signup(j.trim(),y,w.trim()):await K.login(j.trim(),y);"authenticated"===a.status?(h({type:"success",text:e("packages.account.signedIn")}),k("")):"confirmation_required"===a.status?(h({type:"info",text:a.message||e("packages.account.checkInbox")}),k("")):h({type:"error",text:a.message||e("packages.account.authFailed")}),a.account?t(a.account):await P()}catch(a){h({type:"error",text:a instanceof Error?a.message:e("packages.account.authFailed")})}finally{p(!1)}},O=async()=>{p(!0),h(null);try{await K.logout(),await P(),h({type:"success",text:e("packages.account.loggedOut")})}catch(a){h({type:"error",text:a instanceof Error?a.message:e("packages.account.logoutFailed")})}finally{p(!1)}},R=async a=>{p(!0),h(null);try{let{authorizationUrl:e}=await K.beginOAuth(a);window.location.assign(e)}catch(a){h({type:"error",text:a instanceof Error?a.message:e("packages.account.oauthStartFailed")}),p(!1)}},H=async()=>{p(!0),h(null);try{let a=await K.resendConfirmation();h(a.success?{type:"success",text:e("packages.account.confirmationSent")}:{type:"error",text:a.message||e("packages.account.resendFailed")})}finally{p(!1)}},F=async()=>{let a=j.trim();if(!a)return void h({type:"info",text:e("packages.account.enterEmail")});p(!0),h(null);try{await K.requestPasswordReset(a),h({type:"info",text:e("packages.account.resetSent")})}catch(a){h({type:"error",text:a instanceof Error?a.message:e("packages.account.resetFailed")})}finally{p(!1)}},M=async()=>{p(!0),h(null);try{let a=await K.saveSettings(T.trim());h(a.success?{type:"success",text:e("packages.account.urlSaved")}:{type:"error",text:a.message||e("packages.account.invalidUrl")})}finally{p(!1)}};if(l)return(0,s.jsx)(r.default,{sx:{display:"flex",justifyContent:"center",p:3},children:(0,s.jsx)(A.default,{size:28})});let _=!!(null==a?void 0:a.signedIn),G=!!((null==a?void 0:a.email)&&!_&&a&&!a.isConfirmed);return(0,s.jsxs)(r.default,{sx:{width:"100%"},children:[(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",sx:{mb:2},children:e("packages.account.intro")}),g&&(0,s.jsx)(S.A,{severity:g.type,sx:{mb:2},onClose:()=>h(null),children:g.text}),_?(0,s.jsxs)(b.A,{spacing:2,children:[(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsx)(d.A,{variant:"subtitle1",children:null==a?void 0:a.email}),(null==a?void 0:a.publisherHandle)&&(0,s.jsx)(i.A,{size:"small",label:"@".concat(a.publisherHandle)}),(null==a?void 0:a.isConfirmed)?(0,s.jsx)(i.A,{size:"small",color:"success",label:e("packages.account.confirmed")}):(0,s.jsx)(i.A,{size:"small",color:"warning",label:e("packages.account.unconfirmed")})]}),(0,s.jsx)(r.default,{children:(0,s.jsx)(o.A,{variant:"outlined",onClick:O,disabled:u,children:e("packages.account.logout")})})]}):G?(0,s.jsxs)(b.A,{spacing:2,children:[(0,s.jsx)(S.A,{severity:"info",children:(0,s.jsx)(X.A,{message:"packages.account.confirmationHelp",values:{email:(0,s.jsx)("strong",{children:null==a?void 0:a.email})}})}),(0,s.jsxs)(b.A,{direction:"row",spacing:1,children:[(0,s.jsx)(o.A,{variant:"outlined",onClick:H,disabled:u,children:e("packages.account.resend")}),(0,s.jsx)(o.A,{onClick:O,disabled:u,children:e("packages.account.different")})]})]}):(0,s.jsxs)(b.A,{spacing:2,children:[(0,s.jsxs)(L.A,{value:x,onChange:(e,a)=>f(a),children:[(0,s.jsx)(q.A,{value:"login",label:e("packages.account.login")}),(0,s.jsx)(q.A,{value:"signup",label:e("packages.account.signup")})]}),(0,s.jsx)(m.A,{label:e("packages.account.email"),type:"email",value:j,onChange:e=>v(e.target.value),fullWidth:!0,autoComplete:"username"}),(0,s.jsx)(m.A,{label:e("packages.account.password"),type:"password",value:y,onChange:e=>k(e.target.value),fullWidth:!0,autoComplete:"signup"===x?"new-password":"current-password"}),"signup"===x&&(0,s.jsx)(m.A,{label:e("packages.account.handle"),value:w,onChange:e=>z(e.target.value),fullWidth:!0,autoComplete:"username",helperText:e("packages.account.handleHelp")}),(0,s.jsx)(r.default,{children:(0,s.jsx)(o.A,{variant:"contained",onClick:N,disabled:u||!j.trim()||!y||"signup"===x&&!w.trim(),children:"signup"===x?e("packages.account.signup"):e("packages.account.login")})}),"login"===x&&(0,s.jsx)(r.default,{children:(0,s.jsx)(o.A,{variant:"text",size:"small",onClick:F,disabled:u,sx:{textTransform:"none",px:0},children:e("packages.account.forgot")})}),(0,s.jsx)(C.A,{children:e("packages.account.or")}),(0,s.jsx)(b.A,{direction:"row",spacing:1,flexWrap:"wrap",useFlexGap:!0,children:(0,s.jsx)(o.A,{variant:"outlined",onClick:()=>R("github"),disabled:u,children:e("packages.account.github")})})]}),(0,s.jsx)(C.A,{sx:{my:3}}),(0,s.jsx)(d.A,{variant:"subtitle2",gutterBottom:!0,children:e("packages.account.registryUrl")}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",sx:{mb:1},children:e("packages.account.defaultUrl",{url:I})}),(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsx)(m.A,{size:"small",placeholder:I,value:T,onChange:e=>E(e.target.value),sx:{minWidth:320}}),(0,s.jsx)(o.A,{variant:"outlined",onClick:M,disabled:u,children:e("packages.account.save")})]})]})}var ee=t(90057),ea=t(43076),et=t(17897),es=t(93632);let en=(0,J.h)("frontend/services/packages");class er{async resolve(e){let a=await fetch("/api/packages/resolve",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),t=await a.json();if(!a.ok)throw Error((null==t?void 0:t.error)||"HTTP ".concat(a.status));return t}async deriveSecrets(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=await fetch("/api/packages/derive-secrets",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({selection:e,modelIdentifier:a.modelIdentifier,enableEntropy:a.enableEntropy,enableRepoSlug:a.enableRepoSlug})}),s=await t.json();if(!t.ok)throw Error((null==s?void 0:s.error)||"HTTP ".concat(t.status));return s}async scanTargets(e){var a;let t=await fetch("/api/packages/scan-targets",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({selection:e})}),s=await t.json();if(!t.ok)throw Error((null==s?void 0:s.error)||"HTTP ".concat(t.status));return null!=(a=null==s?void 0:s.candidates)?a:[]}async searchRegistry(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=new URLSearchParams;e.q&&a.set("q",e.q),e.tag&&a.set("tag",e.tag),e.page&&a.set("page",String(e.page)),e.pageSize&&a.set("pageSize",String(e.pageSize));let t=await fetch("/api/packages/search".concat(a.toString()?"?".concat(a.toString()):"")),s=await t.json();if(!t.ok&&!(null==s?void 0:s.items))throw Error((null==s?void 0:s.error)||"HTTP ".concat(t.status));return s}async installFromRegistry(e){let a=await fetch("/api/packages/install",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({source:"registry",...e})}),t=await a.json();if(!a.ok&&(null==t?void 0:t.ok)===void 0)throw Error((null==t?void 0:t.error)||"HTTP ".concat(a.status));return t}async build(e,a){var t;let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],l=await fetch("/api/packages/build",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({selection:e,metadata:a,acceptedSecrets:s,globals:n,excludedSecrets:r})}),i=null!=(t=l.headers.get("content-type"))?t:"";if(!i.includes("application/json")){let e=await l.text();throw en.error("Package build returned a non-JSON response",{status:l.status,contentType:i,preview:e.slice(0,200)}),Error("Package build failed: HTTP ".concat(l.status," returned a non-JSON response"))}let o=await l.json();if(!l.ok&&(null==o?void 0:o.ok)===void 0)throw Error((null==o?void 0:o.error)||"HTTP ".concat(l.status));return o}}let el=null,ei=()=>(el||(el=new er),el),eo=new Proxy({},{get(e,a){let t=ei(),s=t[a];return"function"==typeof s?s.bind(t):s}}),ec=/\{\{secret\.([A-Za-z0-9_.-]+)\}\}/g,ed="encrypted:",eu=/^[A-Za-z0-9_.-]+$/,ep=["path","repo","token","email","url-cred","name","other"];function eg(e){let a=new Set,t=e=>{if("string"==typeof e){for(let t of function(e){let a;if("string"!=typeof e)return[];let t=[],s=RegExp(ec.source,"g");for(;null!==(a=s.exec(e));)t.includes(a[1])||t.push(a[1]);return t}(e))a.add(t);return}if(Array.isArray(e)){for(let a of e)t(a);return}if(e&&"object"==typeof e)for(let a of Object.values(e))t(a)};return t(e),Array.from(a)}var eh=t(2750);let em=eh.object({name:eh.string().min(1).regex(eu,"invalid secret name"),description:eh.string().optional(),required:eh.boolean(),default:eh.string().optional()}).strict(),ex=eh.object({name:eh.string().min(1).regex(eu,"invalid global variable name"),description:eh.string().optional(),required:eh.boolean(),isSecret:eh.boolean().optional()}).strict(),ef=eh.discriminatedUnion("kind",[eh.object({kind:eh.literal("secret"),secret:eh.string().min(1)}).strict(),eh.object({kind:eh.literal("global"),var:eh.string().min(1)}).strict(),eh.object({kind:eh.literal("none")}).strict()]),ej=eh.object({id:eh.string().min(1),name:eh.string().min(1),displayName:eh.string().optional(),description:eh.string().optional(),baseUrl:eh.string().optional(),provider:eh.string().optional(),adapter:eh.string().optional(),promptTemplate:eh.string().optional(),reasoningSchema:eh.string().optional(),temperature:eh.string().optional(),reasoningEffort:eh.enum(["minimal","low","medium","high","xhigh","max","ultra"]).optional(),thinkingLevel:eh.enum(["minimal","low","medium","high"]).optional(),thinkingBudget:eh.number().int().min(-1).optional(),serviceTier:eh.enum(["default","priority"]).optional(),functionCallingSchema:eh.string().optional(),contextWindow:eh.number().optional(),maxTurns:eh.number().optional(),maxTokens:eh.number().optional(),folder:eh.string().optional(),favorite:eh.boolean().optional(),apiKeyRef:ef}).strict(),ev=eh.object({sourceType:eh.enum(["github","registry","marketplace","remote"]),ref:eh.string().optional(),gitRef:eh.string().min(1).optional(),subdirectory:eh.string().min(1).optional(),installCommand:eh.string().min(1).max(4096).optional(),buildCommand:eh.string().min(1).max(4096).optional(),url:eh.string().optional(),name:eh.string().optional()}).strict().superRefine((e,a)=>{"remote"!==e.sourceType||e.url||a.addIssue({code:"custom",message:"installOrigin 'remote' requires a url"}),"github"!==e.sourceType&&"registry"!==e.sourceType||e.ref||a.addIssue({code:"custom",message:"installOrigin '".concat(e.sourceType,"' requires a ref")})}),ey=eh.object({name:eh.string().min(1),isSecret:eh.boolean(),secretRef:eh.string().optional(),globalVar:eh.string().optional(),globalTemplate:eh.string().optional()}).strict().superRefine((e,a)=>{void 0===e.globalTemplate||/\$\{global:[A-Za-z0-9_.-]+\}/.test(e.globalTemplate)||a.addIssue({code:"custom",path:["globalTemplate"],message:"globalTemplate must contain at least one ${global:NAME} reference"})}),ek=eh.object({index:eh.number().int().nonnegative(),value:eh.string().min(1)}).strict().superRefine((e,a)=>{/\$\{global:[A-Za-z0-9_.-]+\}/.test(e.value)||a.addIssue({code:"custom",path:["value"],message:"argument template must contain at least one ${global:NAME} reference"})}),ew=eh.object({name:eh.string().min(1),transport:eh.enum(["stdio","sse","streamable","websocket"]),disabled:eh.boolean().optional(),autoApprove:eh.array(eh.string()).optional(),folder:eh.string().optional(),installOrigin:ev,envDeclarations:eh.array(ey),headerDeclarations:eh.array(ey).optional(),argTemplates:eh.array(ek).optional()}).strict(),eA=eh.object({flow:eh.object({id:eh.string().min(1),name:eh.string().min(1),nodes:eh.array(eh.any()),edges:eh.array(eh.any())}).catchall(eh.unknown()),references:eh.object({flowIds:eh.array(eh.string()).optional(),modelIds:eh.array(eh.string()).optional(),mcpServerNames:eh.array(eh.string()).optional()}).optional()}),eb=eh.object({id:eh.string().min(1),name:eh.string().min(1),enabled:eh.boolean(),flowId:eh.string().min(1),prompt:eh.string(),trigger:eh.any()}).catchall(eh.unknown()),eS=eh.object({schemaVersion:eh.literal(1),id:eh.string().min(1),name:eh.string().min(1),description:eh.string().optional(),version:eh.string().regex(/^\d+\.\d+\.\d+(?:-[0-9A-Za-z-.]+)?(?:\+[0-9A-Za-z-.]+)?$/,"version must be valid semver"),author:eh.string().optional(),publisher:eh.string().optional(),tags:eh.array(eh.string()).optional(),requiredGlobals:eh.array(eh.string()).optional(),globals:eh.array(ex).optional(),secrets:eh.array(em),models:eh.array(ej),mcpServers:eh.array(ew),flows:eh.array(eA),plannedExecutions:eh.array(eb)}).superRefine((e,a)=>{(function e(a){return"string"==typeof a?a.startsWith(ed):Array.isArray(a)?a.some(e):!!a&&"object"==typeof a&&Object.values(a).some(e)})(e)&&a.addIssue({code:"custom",message:"package contains an '".concat(ed,"' value; secret material must never be serialized")});let t=new Set(e.secrets.map(e=>e.name)),s=new Set(eg(e));for(let a of e.models)"secret"===a.apiKeyRef.kind&&s.add(a.apiKeyRef.secret);for(let a of e.mcpServers){var n;for(let e of[...a.envDeclarations,...null!=(n=a.headerDeclarations)?n:[]])e.secretRef&&s.add(e.secretRef)}for(let e of s)t.has(e)||a.addIssue({code:"custom",message:'secret "'.concat(e,'" is referenced but not declared in secrets[]')});let r=new Set(e.flows.map(e=>e.flow.id));e.plannedExecutions.forEach((e,t)=>{r.has(e.flowId)||a.addIssue({code:"custom",path:["plannedExecutions",t,"flowId"],message:'plannedExecution "'.concat(e.name,'" references unknown flow id "').concat(e.flowId,'"')})}),e.flows.forEach((e,t)=>{var s,n;for(let l of null!=(n=null==(s=e.references)?void 0:s.flowIds)?n:[])r.has(l)||a.addIssue({code:"custom",path:["flows",t,"references","flowIds"],message:'flow "'.concat(e.flow.name,'" references unknown subflow id "').concat(l,'"')})})}),ez=(0,J.h)("frontend/components/Packages/PackageWizard"),eC=/^\d+\.\d+\.\d+(?:-[0-9A-Za-z-.]+)?(?:\+[0-9A-Za-z-.]+)?$/,eT=["packages.wizard.step.select","packages.wizard.step.resolve","packages.wizard.step.secrets","packages.wizard.step.metadata","packages.wizard.step.export"];function eE(e){return e.replace(/^SECRET_/,"")}function eI(e){let{open:a,onClose:t}=e,l=(0,g.A)(),{t:c,tp:u,formatNumber:p,formatList:L}=(0,V.s9)(),q=(0,h.A)(l.breakpoints.down("sm")),[J,D]=(0,n.useState)(0),[U,$]=(0,n.useState)({flows:[],models:[],mcpServers:[],plannedExecutions:[]}),[Z,K]=(0,n.useState)(!0),[Y,en]=(0,n.useState)(new Set),[er,el]=(0,n.useState)(new Set),[eo,ec]=(0,n.useState)(new Set),[ed,eh]=(0,n.useState)(new Set),[em,ex]=(0,n.useState)(""),[ef,ej]=(0,n.useState)(""),[ev,ey]=(0,n.useState)(""),[ek,ew]=(0,n.useState)(""),[eA,eb]=(0,n.useState)(null),[eI,eW]=(0,n.useState)([]),[eP,eN]=(0,n.useState)(!1),[eO,eR]=(0,n.useState)(null),[eH,eF]=(0,n.useState)(null),[eM,e_]=(0,n.useState)({}),[eG,eL]=(0,n.useState)(new Set),[eq,eJ]=(0,n.useState)([]),[eD,eU]=(0,n.useState)(!1),[e$,eZ]=(0,n.useState)(!1),[eB,eK]=(0,n.useState)(null),[eV,eX]=(0,n.useState)([]),[eY,eQ]=(0,n.useState)(""),[e0,e1]=(0,n.useState)(""),[e2,e5]=(0,n.useState)(!1),[e4,e3]=(0,n.useState)(!1),[e6,e7]=(0,n.useState)(""),[e9,e8]=(0,n.useState)(""),[ae,aa]=(0,n.useState)("other"),[at,as]=(0,n.useState)(null),[an,ar]=(0,n.useState)(!1),[al,ai]=(0,n.useState)(!1),[ao,ac]=(0,n.useState)(null),[ad,au]=(0,n.useState)([]),[ap,ag]=(0,n.useState)(""),[ah,am]=(0,n.useState)(!1),[ax,af]=(0,n.useState)(""),[aj,av]=(0,n.useState)("1.0.0"),[ay,ak]=(0,n.useState)(""),[aw,aA]=(0,n.useState)(""),[ab,aS]=(0,n.useState)(!1),[az,aC]=(0,n.useState)(null),[aT,aE]=(0,n.useState)(null),[aI,aW]=(0,n.useState)(!1),[aP,aN]=(0,n.useState)(null);(0,n.useEffect)(()=>{if(!a)return;let e=!1;return(async()=>{K(!0);try{var a;let[t,s,n,r]=await Promise.all([ee.g.loadFlows(),ea.N.loadModels(),et.S.loadServerConfigs(),es.P.list()]);if(e)return;let l=Array.isArray(n)?n:[];$({flows:(null!=t?t:[]).map(e=>({id:e.id,label:e.name||e.id})),models:(null!=s?s:[]).map(e=>({id:e.id,label:e.displayName||e.name||e.id})),mcpServers:l.map(e=>({id:e.name,label:e.name})),plannedExecutions:(null!=(a=null==r?void 0:r.executions)?a:[]).map(e=>({id:e.execution.id,label:e.execution.name||e.execution.id}))})}catch(e){ez.warn("Failed to load packageable entities",e)}finally{e||K(!1)}})(),()=>{e=!0}},[a]);let aO=(0,n.useMemo)(()=>({flowIds:Array.from(Y),modelIds:Array.from(er),mcpServerNames:Array.from(eo),plannedExecutionIds:Array.from(ed)}),[Y,er,eo,ed]),aR=0===Y.size&&0===er.size&&0===eo.size&&0===ed.size,aH=e=>a=>{e(e=>{let t=new Set(e);return t.has(a)?t.delete(a):t.add(a),t})},aF=(0,n.useCallback)(async e=>{let a;eW([]);try{a=await e.text()}catch(e){eW([e instanceof Error?e.message:c("packages.wizard.readFailed")]);return}let t=function(e){let a;try{a=JSON.parse(e)}catch(e){return{ok:!1,errors:["Not valid JSON: ".concat(e instanceof Error?e.message:String(e))]}}let t=function(e){let a=eS.safeParse(e);if(!a.success)return{success:!1,errors:a.error.issues.map(e=>{let a=e.path.join(".");return a?"".concat(a,": ").concat(e.message):e.message})};let t=a.data;return{success:!0,data:t,warnings:function(e){let a=new Set(eg(e));for(let t of e.models)"secret"===t.apiKeyRef.kind&&a.add(t.apiKeyRef.secret);for(let s of e.mcpServers){var t;for(let e of[...s.envDeclarations,...null!=(t=s.headerDeclarations)?t:[]])e.secretRef&&a.add(e.secretRef)}return e.secrets.filter(e=>!a.has(e.name)).map(e=>'secret "'.concat(e.name,'" is declared but never referenced'))}(t)}}(a);if(!t.success||!t.data){var s;return{ok:!1,errors:null!=(s=t.errors)?s:["Not a valid FLUJO package manifest"]}}return{ok:!0,package:t.data}}(a);if(!t.ok){eb(null),eW(t.errors.slice(0,8));return}let s=function(e,a){var t,s,n,r,l,i,o,c,d,u;let p=new Set(a.flowIds),g=new Set(a.modelIds),h=new Set(a.mcpServerNames),m=new Set(a.plannedExecutionIds),x=[],f={flowIds:[],modelIds:[],mcpServerNames:[],plannedExecutionIds:[]};for(let a of null!=(t=e.flows)?t:[]){let e=null==a||null==(s=a.flow)?void 0:s.id;e&&(p.has(e)?f.flowIds.push(e):x.push({type:"flow",label:(null==(n=a.flow)?void 0:n.name)?"".concat(a.flow.name," (").concat(e,")"):e}))}for(let a of null!=(r=e.models)?r:[])(null==a?void 0:a.id)&&(g.has(a.id)?f.modelIds.push(a.id):x.push({type:"model",label:a.displayName||a.name||a.id}));for(let a of null!=(l=e.mcpServers)?l:[])(null==a?void 0:a.name)&&(h.has(a.name)?f.mcpServerNames.push(a.name):x.push({type:"mcpServer",label:a.name}));for(let a of null!=(i=e.plannedExecutions)?i:[]){let e=null==a?void 0:a.id;e&&(m.has(e)?f.plannedExecutionIds.push(e):x.push({type:"plannedExecution",label:a.name||e}))}return{selection:f,metadata:{name:null!=(o=e.name)?o:"",version:null!=(c=e.version)?c:"",description:null!=(d=e.description)?d:"",tags:e.tags?[...e.tags]:[]},secretNames:(null!=(u=e.secrets)?u:[]).map(e=>e.name).filter(Boolean),missing:x}}(t.package,{flowIds:U.flows.map(e=>e.id),modelIds:U.models.map(e=>e.id),mcpServerNames:U.mcpServers.map(e=>e.id),plannedExecutionIds:U.plannedExecutions.map(e=>e.id)});en(new Set(s.selection.flowIds)),el(new Set(s.selection.modelIds)),ec(new Set(s.selection.mcpServerNames)),eh(new Set(s.selection.plannedExecutionIds)),af(s.metadata.name),av(s.metadata.version),ak(s.metadata.description),aA(s.metadata.tags.join(", ")),eR(null),eF(null),e_({}),eL(new Set),eJ([]),eZ(!1),eK(null),eX([]),aC(null),aE(null),aN(null),eb(s),ez.info("Imported package manifest into the wizard",{name:s.metadata.name,version:s.metadata.version,missing:s.missing.length})},[U,c]),aM=(0,n.useCallback)(async()=>{eN(!0),eF(null),eR(null),e_({}),eL(new Set),eJ([]),eZ(!1),eK(null),eX([]);try{var e;let a=await ei().resolve(aO);eR(a),e_(Object.fromEntries((null!=(e=a.globals)?e:[]).map(e=>{var a;return[e.name,null!=(a=e.description)?a:""]})))}catch(e){eF(e instanceof Error?e.message:c("packages.wizard.resolveFailed"))}finally{eN(!1)}},[aO,c]),a_=(0,n.useMemo)(()=>eA?new Set(eA.secretNames):null,[eA]),aG=(0,n.useCallback)(async e=>{eU(!0),eK(null);try{var a;let t=await ei().deriveSecrets(aO,{modelIdentifier:e,enableEntropy:e2,enableRepoSlug:e4});eJ(e=>{let a=new Map(e.map(e=>[e.id,e.accepted])),s=new Map(e.map(e=>[e.id,e.suggestedSecretName])),n=e.filter(e=>"manual"===e.source),r=t.proposals.map(e=>{var t;return{...e,accepted:a.has(e.id)?a.get(e.id):a_?a_.has(e.suggestedSecretName):"low"!==e.confidence,suggestedSecretName:null!=(t=s.get(e.id))?t:e.suggestedSecretName}}),l=new Set(r.map(e=>e.id));return[...r,...n.filter(e=>!l.has(e.id))]}),eX(null!=(a=t.warnings)?a:[])}catch(e){eK(e instanceof Error?e.message:c("packages.wizard.deriveFailed"))}finally{eU(!1),eZ(!0)}},[aO,e2,e4,a_,c]),aL=e=>eJ(a=>a.map(a=>({...a,accepted:e}))),aq=()=>{as(null);let e=function(e){var a,t,s,n,r;let l=(null!=(t=e.excerpt)?t:"").trim();if(!l||l.length>2e3)return null;let i=(null!=(s=e.secretName)?s:"").trim();if(i.length>128)return null;let o=null!=(n=e.kind)?n:"other",c=eu.test(i)?i.toUpperCase():function(e,a){let t="".concat(e,"_").concat(a).toUpperCase().replace(/[^A-Z0-9_.-]+/g,"_").replace(/^[_.-]+|[_.-]+$/g,"")||"".concat(e,"_SECRET");return eu.test(t)?t:"".concat(e,"_SECRET")}("SECRET",i||l.slice(0,16)),d=(null!=(r=e.location)?r:"manual").trim()||"manual";return{id:"sp_".concat(function(e){let a=5381;for(let t=0;t<e.length;t++)a=(a<<5)+a^e.charCodeAt(t);return(a>>>0).toString(16).padStart(8,"0")}("".concat(d,"\0").concat(l))),location:d,excerpt:l,kind:o,source:"manual",confidence:"high",suggestedSecretName:c,suggestedDescription:(null==(a=e.description)?void 0:a.trim())||void 0,rationale:"Added manually",accepted:!0}}({excerpt:e6,secretName:e9,kind:ae});if(!e)return void as(c("packages.wizard.manualInvalid"));eJ(a=>a.some(a=>a.id===e.id)?a:[e,...a]),e7(""),e8(""),aa("other")},aJ=(0,n.useCallback)(async()=>{ar(!0),ac(null),ag(""),ai(!0);try{let e=await ei().scanTargets(aO);au(e)}catch(e){ac(e instanceof Error?e.message:c("packages.wizard.candidatesFailed")),au([])}finally{ai(!1)}},[aO,c]),aD=(0,n.useMemo)(()=>{let e=ap.trim().toLowerCase();return e?ad.filter(a=>"".concat(a.text," ").concat(a.location," ").concat(a.source).toLowerCase().includes(e)):ad},[ad,ap]),aU=(0,n.useMemo)(()=>{let e=new Map;for(let a of eq){let t="".concat(a.kind,"::").concat(a.excerpt),s=e.get(t);s?(s.ids.push(a.id),s.locations.push(a.location)):e.set(t,{key:t,ids:[a.id],locations:[a.location],kind:a.kind,source:a.source,confidence:a.confidence,excerpt:a.excerpt,suggestedSecretName:a.suggestedSecretName,rationale:a.rationale,accepted:a.accepted})}return Array.from(e.values())},[eq]),a$=(0,n.useMemo)(()=>{let e=e0.trim().toLowerCase();return e?aU.filter(a=>"".concat(a.excerpt," ").concat(a.locations.join(" ")," ").concat(a.kind," ").concat(a.suggestedSecretName).toLowerCase().includes(e)):aU},[aU,e0]),aZ=(0,n.useMemo)(()=>{var e;if(!eA||!e$)return[];let a=new Set([...(null!=(e=null==eO?void 0:eO.secrets)?e:[]).map(e=>e.name),...eq.map(e=>e.suggestedSecretName)]);return eA.secretNames.filter(e=>!a.has(e))},[eA,e$,eO,eq]),aB=(0,n.useMemo)(()=>{var e;let a=new Map;for(let t of aU)a.set(t.kind,(null!=(e=a.get(t.kind))?e:0)+1);return Array.from(a.entries()).sort((e,a)=>a[1]-e[1])},[aU]);(0,n.useEffect)(()=>{2!==J||!eO||e$||eD||aG()},[J,eO,e$,eD,aG]);let aK=(0,n.useCallback)(async()=>{aS(!0),aE(null),aC(null);try{var e;let a=aw.split(",").map(e=>e.trim()).filter(Boolean),t=await ei().build(aO,{id:"pkg-".concat(Date.now()),name:ax.trim(),version:aj.trim(),description:ay.trim()||void 0,tags:a.length?a:void 0},eq.filter(e=>e.accepted),(null!=(e=null==eO?void 0:eO.globals)?e:[]).map(e=>{var a;return{...e,description:(null==(a=eM[e.name])?void 0:a.trim())||e.description}}),Array.from(eG));aC(t),t.ok||aE(t.errors&&t.errors[0]||c("packages.wizard.buildFailed"))}catch(e){aE(e instanceof Error?e.message:c("packages.wizard.buildRequestFailed"))}finally{aS(!1)}},[aO,ax,aj,ay,aw,eq,eO,eM,eG,c]),aV=(0,n.useCallback)(async()=>{if(null==az?void 0:az.json){aW(!0),aN(null);try{let e=JSON.parse(az.json),a=await B().publish(e);aN(a)}catch(e){aN({ok:!1,code:"error",error:e instanceof Error?e.message:c("packages.wizard.publishFailed")})}finally{aW(!1)}}},[az,c]),aX=()=>{if(!(null==az?void 0:az.json))return;let e=new Blob([az.json],{type:"application/json"}),a=URL.createObjectURL(e),t=document.createElement("a");t.href=a;let s=ax.trim().replace(/[^A-Za-z0-9_.-]+/g,"-").replace(/^-+|-+$/g,"")||"package";t.download="".concat(s,"-").concat(aj.trim(),".flujo-package.json"),document.body.appendChild(t),t.click(),t.remove(),URL.revokeObjectURL(a)},aY=async()=>{if(0===J){await aM(),D(1);return}if(3===J){D(4),await aK();return}D(e=>Math.min(e+1,eT.length-1))},aQ=eC.test(aj.trim()),a0=ax.trim().length>0&&aQ,a1=!!(eO&&!eO.mcp.ok),a2=e=>{switch(e){case"flow":return c("packages.wizard.entity.flow");case"model":return c("packages.wizard.entity.model");case"mcpServer":return c("packages.wizard.entity.mcpServer");case"plannedExecution":return c("packages.wizard.entity.plannedExecution");default:return e}},a5=0===J?aR||eP:1===J?eP||!!eH||a1:3===J?!a0:4===J,a4=(e,a,t,n,l,o)=>{let u=l.trim().toLowerCase(),p=u?a.filter(e=>e.label.toLowerCase().includes(u)):a;return(0,s.jsxs)(r.default,{sx:{flex:1,minWidth:240},children:[(0,s.jsxs)(d.A,{variant:"subtitle2",gutterBottom:!0,children:[e," ",t.size>0&&(0,s.jsx)(i.A,{label:t.size,size:"small"})]}),(0,s.jsx)(m.A,{size:"small",fullWidth:!0,placeholder:c("packages.wizard.search",{category:e.toLocaleLowerCase()}),value:l,onChange:e=>o(e.target.value),InputProps:{startAdornment:(0,s.jsx)(x.A,{position:"start",children:(0,s.jsx)(_.A,{fontSize:"small"})})},sx:{mb:1}}),0===a.length?(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:c("packages.wizard.noneAvailable")}):0===p.length?(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:c("packages.wizard.noMatches",{search:l})}):(0,s.jsx)(f.A,{dense:!0,sx:{maxHeight:{xs:240,md:"45vh"},overflow:"auto",border:1,borderColor:"divider",borderRadius:1},children:p.map(e=>(0,s.jsx)(j.Ay,{disablePadding:!0,children:(0,s.jsxs)(v.A,{onClick:()=>n(e.id),dense:!0,children:[(0,s.jsx)(y.A,{sx:{minWidth:36},children:(0,s.jsx)(k.A,{edge:"start",checked:t.has(e.id),tabIndex:-1,disableRipple:!0})}),(0,s.jsx)(w.A,{primary:e.label})]})},e.id))})]})};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(P.A,{open:a,onClose:t,maxWidth:"lg",fullWidth:!0,fullScreen:q,PaperProps:{sx:{height:q?"100%":"90vh",maxHeight:q?"100%":"90vh"}},children:[(0,s.jsx)(N.A,{children:c("packages.wizard.title")}),(0,s.jsxs)(O.A,{dividers:!0,sx:{overflow:"auto"},children:[(0,s.jsx)(R.A,{activeStep:J,sx:{mb:3},children:eT.map(e=>(0,s.jsx)(H.A,{children:(0,s.jsx)(F.A,{children:c(e)})},e))}),(()=>{switch(J){case 0:return Z?(0,s.jsx)(r.default,{sx:{display:"flex",justifyContent:"center",p:4},children:(0,s.jsx)(A.default,{})}):(0,s.jsxs)(b.A,{spacing:2,children:[(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:c("packages.wizard.selectHelp")}),(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsxs)(o.A,{component:"label",variant:"outlined",startIcon:(0,s.jsx)(G.A,{}),children:[c("packages.wizard.import"),(0,s.jsx)("input",{type:"file",accept:"application/json,.json",hidden:!0,onChange:e=>{var a;let t=null==(a=e.target.files)?void 0:a[0];e.target.value="",t&&aF(t)}})]}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",children:c("packages.wizard.importHelp")})]}),eI.length>0&&(0,s.jsxs)(S.A,{severity:"error",onClose:()=>eW([]),children:[(0,s.jsx)(z.A,{children:c("packages.wizard.importErrorTitle")}),eI.map((e,a)=>(0,s.jsx)("div",{children:e},a))]}),eA&&(0,s.jsxs)(S.A,{severity:eA.missing.length>0?"warning":"success",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.importedTitle",{name:eA.metadata.name,version:eA.metadata.version})}),c("packages.wizard.importedSummary",{flows:u("packages.installed.flows",eA.selection.flowIds.length),models:u("packages.installed.models",eA.selection.modelIds.length),servers:u("packages.installed.servers",eA.selection.mcpServerNames.length),planned:u("packages.installed.planned",eA.selection.plannedExecutionIds.length),secrets:u("packages.wizard.secretNames",eA.secretNames.length)}),eA.missing.length>0&&(0,s.jsxs)(r.default,{sx:{mt:1},children:[c("packages.wizard.missingHost"),eA.missing.map((e,a)=>(0,s.jsxs)("div",{children:[a2(e.type),": ",e.label]},a))]})]}),(0,s.jsxs)(b.A,{direction:"row",spacing:2,flexWrap:"wrap",useFlexGap:!0,children:[a4(c("packages.wizard.flows"),U.flows,Y,aH(en),em,ex),a4(c("packages.wizard.models"),U.models,er,aH(el),ef,ej),a4(c("packages.wizard.servers"),U.mcpServers,eo,aH(ec),ev,ey),a4(c("packages.wizard.planned"),U.plannedExecutions,ed,aH(eh),ek,ew)]})]});case 1:if(eP)return(0,s.jsx)(r.default,{sx:{display:"flex",justifyContent:"center",p:4},children:(0,s.jsx)(A.default,{})});if(eH)return(0,s.jsx)(S.A,{severity:"error",children:eH});if(!eO)return null;return(0,s.jsxs)(b.A,{spacing:2,children:[a1&&(0,s.jsxs)(S.A,{severity:"error",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.localMcpTitle")}),eO.mcp.errors.map((e,a)=>(0,s.jsx)("div",{children:e},a))]}),eO.resolved.autoAdded.length>0&&(0,s.jsxs)(S.A,{severity:"info",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.autoDependencies")}),eO.resolved.autoAdded.map((e,a)=>(0,s.jsxs)("div",{children:[a2(e.type),": ",(0,s.jsx)("code",{children:e.id})," — ",(e=>{let a=/^used by planned execution "(.+)"$/.exec(e);if(a)return c("packages.wizard.reason.planned",{name:a[1]});let t=/^subflow of "(.+)"$/.exec(e);if(t)return c("packages.wizard.reason.subflow",{name:t[1]});let s=/^used by flow "(.+)"$/.exec(e);return s?c("packages.wizard.reason.flow",{name:s[1]}):e})(e.reason)]},a))]}),eO.resolved.warnings.length>0&&(0,s.jsxs)(S.A,{severity:"warning",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.warnings")}),eO.resolved.warnings.map((e,a)=>(0,s.jsx)("div",{children:e},a))]}),(0,s.jsx)(C.A,{}),(0,s.jsx)(d.A,{variant:"body2",children:c("packages.wizard.resolved",{flows:u("packages.installed.flows",eO.resolved.flowIds.length),models:u("packages.installed.models",eO.resolved.modelIds.length),servers:u("packages.installed.servers",eO.resolved.mcpServerNames.length),planned:u("packages.installed.planned",eO.resolved.plannedExecutionIds.length)})}),eO.mcp.servers.length>0&&(0,s.jsx)(b.A,{direction:"row",spacing:1,flexWrap:"wrap",useFlexGap:!0,children:eO.mcp.servers.map(e=>(0,s.jsx)(i.A,{label:"".concat(e.name," \xb7 ").concat(e.sourceType),size:"small",color:"success",variant:"outlined"},e.name))})]});case 2:var e;return(0,s.jsxs)(b.A,{spacing:2,children:[(0,s.jsx)(d.A,{variant:"subtitle2",children:c("packages.wizard.globals")}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:c("packages.wizard.globalsHelp")}),eO&&0!==(null!=(e=eO.globals)?e:[]).length?(0,s.jsx)(b.A,{spacing:1.5,children:eO.globals.map(e=>{var a;return(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"flex-start",children:[(0,s.jsx)(m.A,{size:"small",label:e.name,value:null!=(a=eM[e.name])?a:"",onChange:a=>e_(t=>({...t,[e.name]:a.target.value})),helperText:e.isSecret?c("packages.wizard.secretGlobalHelp"):c("packages.wizard.descriptionHelp"),fullWidth:!0}),e.isSecret&&(0,s.jsx)(i.A,{label:c("packages.wizard.secretGlobal"),size:"small",color:"warning",variant:"outlined"})]},e.name)})}):(0,s.jsx)(S.A,{severity:"success",children:c("packages.wizard.noGlobals")}),(0,s.jsx)(C.A,{}),(0,s.jsx)(d.A,{variant:"subtitle2",children:c("packages.wizard.entitySecrets")}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:c("packages.wizard.entitySecretsHelp")}),eO&&0!==eO.secrets.length?(0,s.jsx)(f.A,{dense:!0,children:eO.secrets.map(e=>(0,s.jsxs)(j.Ay,{children:[(0,s.jsx)(k.A,{edge:"start",checked:!eG.has(e.name),onChange:a=>eL(t=>{let s=new Set(t);return a.target.checked?s.delete(e.name):s.add(e.name),s}),inputProps:{"aria-label":c("packages.wizard.includeSecretAria",{name:e.name})}}),(0,s.jsx)(w.A,{primary:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("code",{children:eE(e.name)})," ",e.required&&(0,s.jsx)(i.A,{label:c("packages.wizard.required"),size:"small",color:"warning"})]}),secondary:eG.has(e.name)?c("packages.wizard.excluded"):e.description})]},e.name))}):(0,s.jsx)(S.A,{severity:"success",children:c("packages.wizard.noEntitySecrets")}),(0,s.jsx)(C.A,{}),(0,s.jsx)(d.A,{variant:"subtitle2",children:c("packages.wizard.detectedSecrets")}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:(0,s.jsx)(X.A,{message:"packages.wizard.detectedHelp",values:{placeholder:(0,s.jsx)("code",{children:"{{secret.NAME}}"})}})}),eD&&(0,s.jsx)(r.default,{sx:{display:"flex",justifyContent:"center",p:2},children:(0,s.jsx)(A.default,{size:28})}),eB&&(0,s.jsx)(S.A,{severity:"error",children:eB}),!eD&&e$&&0===eq.length&&(0,s.jsx)(S.A,{severity:"success",children:c("packages.wizard.noDetected")}),eq.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(b.A,{direction:"row",spacing:.5,flexWrap:"wrap",useFlexGap:!0,children:aB.map(e=>{let[a,t]=e;return(0,s.jsx)(i.A,{size:"small",variant:"outlined",label:"".concat(c("packages.wizard.kind.".concat(a)),": ").concat(p(t))},a)})}),(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsx)(o.A,{size:"small",onClick:()=>aL(!0),children:c("packages.wizard.acceptAll")}),(0,s.jsx)(o.A,{size:"small",onClick:()=>aL(!1),children:c("packages.wizard.rejectAll")}),(0,s.jsx)(m.A,{size:"small",placeholder:c("packages.wizard.filterSecrets"),value:e0,onChange:e=>e1(e.target.value),sx:{minWidth:200,flex:1}}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",sx:{alignSelf:"center"},children:c("packages.wizard.accepted",{accepted:p(aU.filter(e=>e.accepted).length),total:p(aU.length)})})]}),(0,s.jsxs)(f.A,{dense:!0,sx:{border:1,borderColor:"divider",borderRadius:1,maxHeight:280,overflow:"auto"},children:[0===a$.length&&(0,s.jsx)(j.Ay,{children:(0,s.jsx)(w.A,{primary:(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:c("packages.wizard.noRows",{search:e0})})})}),a$.map(e=>(0,s.jsxs)(j.Ay,{alignItems:"flex-start",divider:!0,children:[(0,s.jsx)(y.A,{sx:{minWidth:36,mt:1},children:(0,s.jsx)(k.A,{edge:"start",checked:!!e.accepted,onChange:()=>{let a;return a=e.ids,eJ(e=>{var t;let s=new Set(a),n=!(null==(t=e.find(e=>s.has(e.id)))?void 0:t.accepted);return e.map(e=>s.has(e.id)?{...e,accepted:n}:e)})},tabIndex:-1,disableRipple:!0})}),(0,s.jsx)(w.A,{primary:(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsx)(i.A,{label:c("packages.wizard.kind.".concat(e.kind)),size:"small"}),(0,s.jsx)(i.A,{label:c("packages.wizard.source.".concat(e.source)),size:"small",variant:"outlined",color:"model"===e.source?"secondary":"manual"===e.source?"primary":"default"}),e.confidence&&(0,s.jsx)(i.A,{label:c("packages.wizard.confidence.".concat(e.confidence)),size:"small",variant:"outlined",color:"high"===e.confidence?"success":"low"===e.confidence?"warning":"default"}),e.locations.length>1&&(0,s.jsx)(i.A,{label:"".concat(e.locations.length,"\xd7"),size:"small",variant:"outlined"}),(0,s.jsx)(r.default,{component:"code",sx:{wordBreak:"break-all"},children:e.excerpt.length>80?"".concat(e.excerpt.slice(0,80),"…"):e.excerpt})]}),secondary:(0,s.jsxs)(b.A,{spacing:.5,sx:{mt:.5},children:[(0,s.jsxs)(d.A,{variant:"caption",color:"text.secondary",children:[e.locations.length>1?u("packages.wizard.locations",e.locations.length,{locations:"".concat(e.locations.slice(0,3).join(", ")).concat(e.locations.length>3?", …":"")}):e.locations[0],e.rationale?" — ".concat(e.rationale):""]}),(0,s.jsx)(m.A,{size:"small",label:c("packages.wizard.secretName"),value:eE(e.suggestedSecretName),onChange:a=>{var t,s;let n,r;return n=e.ids,t=e.suggestedSecretName,s=a.target.value,r=t.startsWith("SECRET_")?"SECRET_".concat(s.replace(/^SECRET_/,"")):s,eJ(e=>{let a=new Set(n);return e.map(e=>a.has(e.id)?{...e,suggestedSecretName:r}:e)})},disabled:!e.accepted,sx:{maxWidth:320}})]}),primaryTypographyProps:{component:"div"},secondaryTypographyProps:{component:"div"}})]},e.key))]})]}),aZ.length>0&&(0,s.jsxs)(S.A,{severity:"warning",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.unrecoveredTitle")}),c("packages.wizard.unrecoveredHelp",{names:L(aZ.map(eE))})]}),eV.length>0&&(0,s.jsxs)(S.A,{severity:"warning",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.notes")}),eV.map((e,a)=>(0,s.jsx)("div",{children:e},a))]}),(0,s.jsx)(C.A,{}),(0,s.jsx)(d.A,{variant:"subtitle2",children:c("packages.wizard.manualTitle")}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:(0,s.jsx)(X.A,{message:"packages.wizard.manualHelp",values:{placeholder:(0,s.jsx)("code",{children:"{{secret.NAME}}"})}})}),at&&(0,s.jsx)(S.A,{severity:"error",children:at}),(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"flex-start",flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsx)(m.A,{size:"small",label:c("packages.wizard.valueRedact"),value:e6,onChange:e=>e7(e.target.value),sx:{minWidth:240,flex:1}}),(0,s.jsx)(m.A,{size:"small",label:c("packages.wizard.secretName"),value:e9,onChange:e=>e8(e.target.value),sx:{minWidth:180}}),(0,s.jsx)(T.A,{size:"small",value:ae,onChange:e=>aa(e.target.value),sx:{minWidth:120},children:ep.map(e=>(0,s.jsx)(E.A,{value:e,children:c("packages.wizard.kind.".concat(e))},e))}),(0,s.jsx)(o.A,{variant:"outlined",onClick:aq,disabled:!e6.trim(),children:c("packages.wizard.add")}),(0,s.jsx)(o.A,{variant:"text",startIcon:(0,s.jsx)(_.A,{}),onClick:()=>void aJ(),disabled:aR,children:c("packages.wizard.pickApp")})]}),(0,s.jsx)(C.A,{}),(0,s.jsx)(d.A,{variant:"subtitle2",children:c("packages.wizard.advancedScan")}),(0,s.jsxs)(b.A,{direction:"row",spacing:2,flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsx)(I.A,{control:(0,s.jsx)(W.A,{checked:e2,onChange:e=>{e5(e.target.checked),eZ(!1)}}),label:c("packages.wizard.entropy")}),(0,s.jsx)(I.A,{control:(0,s.jsx)(W.A,{checked:e4,onChange:e=>{e3(e.target.checked),eZ(!1)}}),label:c("packages.wizard.repoSlug")}),(0,s.jsx)(o.A,{size:"small",variant:"text",onClick:()=>void aG(),disabled:eD,children:c("packages.wizard.rescan")})]}),(0,s.jsx)(C.A,{}),(0,s.jsx)(d.A,{variant:"subtitle2",children:c("packages.wizard.modelScan")}),(0,s.jsx)(S.A,{severity:"info",children:c("packages.wizard.modelScanHelp")}),(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsxs)(T.A,{size:"small",displayEmpty:!0,value:eY,onChange:e=>eQ(e.target.value),sx:{minWidth:220},children:[(0,s.jsx)(E.A,{value:"",children:(0,s.jsx)("em",{children:c("packages.wizard.selectModel")})}),U.models.map(e=>(0,s.jsx)(E.A,{value:e.id,children:e.label},e.id))]}),(0,s.jsx)(o.A,{variant:"outlined",disabled:!eY||eD,onClick:()=>void aG(eY),children:c("packages.wizard.scanModel")})]})]});case 3:return(0,s.jsxs)(b.A,{spacing:2,children:[(0,s.jsx)(m.A,{label:c("packages.wizard.packageName"),value:ax,onChange:e=>af(e.target.value),required:!0,fullWidth:!0,error:ax.length>0&&0===ax.trim().length}),(0,s.jsx)(m.A,{label:c("packages.wizard.version"),value:aj,onChange:e=>av(e.target.value),required:!0,fullWidth:!0,error:aj.length>0&&!aQ,helperText:aj.length>0&&!aQ?c("packages.wizard.semverHelp"):" "}),(0,s.jsx)(m.A,{label:c("packages.wizard.description"),value:ay,onChange:e=>ak(e.target.value),fullWidth:!0,multiline:!0,minRows:2}),(0,s.jsx)(m.A,{label:c("packages.wizard.tags"),value:aw,onChange:e=>aA(e.target.value),fullWidth:!0})]});case 4:if(ab)return(0,s.jsx)(r.default,{sx:{display:"flex",justifyContent:"center",p:4},children:(0,s.jsx)(A.default,{})});if(aT)return(0,s.jsx)(S.A,{severity:"error",children:aT});if(null==az?void 0:az.ok)return(0,s.jsxs)(b.A,{spacing:2,children:[(0,s.jsxs)(S.A,{severity:"success",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.builtTitle")}),c("packages.wizard.builtHelp",{name:ax.trim(),version:aj.trim()})]}),az.warnings.length>0&&(0,s.jsxs)(S.A,{severity:"warning",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.warnings")}),az.warnings.map((e,a)=>(0,s.jsx)("div",{children:e},a))]}),(0,s.jsx)(o.A,{variant:"contained",onClick:aX,children:c("packages.wizard.download")}),(0,s.jsx)(C.A,{}),(0,s.jsx)(d.A,{variant:"subtitle2",children:c("packages.wizard.publishTitle")}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:c("packages.wizard.publishHelp")}),(null==aP?void 0:aP.ok)?(0,s.jsxs)(S.A,{severity:"success",children:[(0,s.jsx)(z.A,{children:c("packages.wizard.published")}),c("packages.wizard.live",{name:aP.name||ax.trim(),version:aP.version||aj.trim()}),aP.url&&(0,s.jsx)("div",{children:(0,s.jsx)("a",{href:aP.url,target:"_blank",rel:"noreferrer",children:aP.url})})]}):(0,s.jsxs)(s.Fragment,{children:[aP&&!aP.ok&&(0,s.jsx)(S.A,{severity:"unconfirmed"===aP.code||"not_authenticated"===aP.code?"warning":"error",children:aP.error||c("packages.wizard.publishFailed")}),(0,s.jsxs)(b.A,{direction:"row",spacing:1,flexWrap:"wrap",useFlexGap:!0,children:[(0,s.jsx)(o.A,{variant:"outlined",onClick:()=>void aV(),disabled:aI,children:aI?c("packages.wizard.publishing"):c("packages.wizard.publish")}),aP&&!aP.ok&&("not_authenticated"===aP.code||"unconfirmed"===aP.code)&&(0,s.jsx)(o.A,{variant:"contained",onClick:()=>am(!0),disabled:aI,children:c("packages.wizard.loginRegistry")})]})]})]});return null;default:return null}})()]}),(0,s.jsxs)(M.A,{children:[(0,s.jsx)(o.A,{onClick:t,children:(null==az?void 0:az.ok)?c("packages.wizard.close"):c("packages.wizard.cancel")}),(0,s.jsx)(r.default,{sx:{flex:1}}),(0,s.jsx)(o.A,{onClick:()=>D(e=>Math.max(e-1,0)),disabled:0===J||ab||eP,children:c("packages.wizard.back")}),J<4&&(0,s.jsx)(o.A,{variant:"contained",onClick:aY,disabled:a5,children:3===J?c("packages.wizard.build"):c("packages.wizard.next")})]})]}),(0,s.jsxs)(P.A,{open:ah,onClose:()=>am(!1),maxWidth:"sm",fullWidth:!0,children:[(0,s.jsx)(N.A,{children:c("packages.wizard.loginTitle")}),(0,s.jsx)(O.A,{dividers:!0,children:(0,s.jsx)(Q,{})}),(0,s.jsxs)(M.A,{children:[(0,s.jsx)(o.A,{onClick:()=>am(!1),children:c("packages.wizard.done")}),(0,s.jsx)(o.A,{variant:"contained",onClick:()=>{am(!1),aV()},disabled:aI,children:c("packages.wizard.retryPublish")})]})]}),(0,s.jsxs)(P.A,{open:an,onClose:()=>ar(!1),maxWidth:"md",fullWidth:!0,children:[(0,s.jsx)(N.A,{children:c("packages.wizard.pickerTitle")}),(0,s.jsxs)(O.A,{dividers:!0,children:[(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",sx:{mb:2},children:c("packages.wizard.pickerHelp")}),(0,s.jsx)(m.A,{size:"small",fullWidth:!0,placeholder:c("packages.wizard.searchValues"),value:ap,onChange:e=>ag(e.target.value),InputProps:{startAdornment:(0,s.jsx)(x.A,{position:"start",children:(0,s.jsx)(_.A,{fontSize:"small"})})},sx:{mb:2}}),al?(0,s.jsx)(r.default,{sx:{display:"flex",justifyContent:"center",p:4},children:(0,s.jsx)(A.default,{})}):ao?(0,s.jsx)(S.A,{severity:"error",children:ao}):0===ad.length?(0,s.jsx)(S.A,{severity:"info",children:c("packages.wizard.noCandidates")}):0===aD.length?(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:c("packages.wizard.noValueMatches",{search:ap})}):(0,s.jsx)(f.A,{dense:!0,sx:{border:1,borderColor:"divider",borderRadius:1,maxHeight:"50vh",overflow:"auto"},children:aD.map((e,a)=>(0,s.jsx)(j.Ay,{disablePadding:!0,divider:!0,children:(0,s.jsx)(v.A,{onClick:()=>{e7(e.text),as(null),ar(!1)},alignItems:"flex-start",children:(0,s.jsx)(w.A,{primary:(0,s.jsx)(r.default,{component:"code",sx:{wordBreak:"break-all"},children:e.text.length>120?"".concat(e.text.slice(0,120),"…"):e.text}),secondary:(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",flexWrap:"wrap",useFlexGap:!0,sx:{mt:.5},children:[(0,s.jsx)(i.A,{label:a2(e.source),size:"small",variant:"outlined"}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",children:e.location})]}),primaryTypographyProps:{component:"div"},secondaryTypographyProps:{component:"div"}})})},"".concat(e.location,"-").concat(a)))})]}),(0,s.jsx)(M.A,{children:(0,s.jsx)(o.A,{onClick:()=>ar(!1),children:c("packages.wizard.close")})})]})]})}var eW=t(50001),eP=t(51314),eN=t(76530);let eO=(0,J.h)("frontend/components/Packages/InstalledPackagesList");function eR(){var e;let{t:a,tp:t,formatDate:l,formatNumber:u}=(0,V.s9)(),[p,g]=(0,n.useState)([]),[h,f]=(0,n.useState)(!0),[j,v]=(0,n.useState)(null),[y,k]=(0,n.useState)(null),[w,z]=(0,n.useState)(!1),[C,T]=(0,n.useState)(null),[E,I]=(0,n.useState)(""),W=(0,n.useCallback)(async()=>{f(!0),v(null);try{var e;let t=await fetch("/api/packages/installed");if(!t.ok)throw Error(a("packages.installed.loadFailed",{status:t.status}));let s=await t.json();g(null!=(e=s.packages)?e:[])}catch(e){eO.warn("Failed to load installed packages",e),v(e instanceof Error?e.message:String(e))}finally{f(!1)}},[a]);(0,n.useEffect)(()=>{W()},[W]);let R=(0,n.useCallback)(async e=>{z(!0),T(null);try{let s=await fetch("/api/packages/uninstall",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({packageName:e.packageName})}),n=await s.json();if(!s.ok){var t;throw Error(null!=(t=n.error)?t:a("packages.installed.uninstallFailed",{status:s.status}))}T(n),await W()}catch(e){eO.warn("Uninstall failed",e),v(e instanceof Error?e.message:String(e))}finally{z(!1),k(null)}},[W,a]),H=(0,n.useMemo)(()=>{let e=E.trim().toLowerCase();return e?p.filter(a=>"".concat(a.packageName," ").concat(a.version).toLowerCase().includes(e)):p},[p,E]);return(0,s.jsxs)(r.default,{sx:{maxWidth:{xs:"100%",md:1100},mx:"auto",mt:3},children:[(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",sx:{mb:1},children:[(0,s.jsx)(d.A,{variant:"h6",children:a("packages.installed.title")}),(0,s.jsx)(o.A,{size:"small",startIcon:(0,s.jsx)(eN.A,{}),onClick:()=>void W(),disabled:h,children:a("packages.installed.refresh")})]}),p.length>0&&(0,s.jsx)(m.A,{size:"small",fullWidth:!0,placeholder:a("packages.installed.search"),value:E,onChange:e=>I(e.target.value),InputProps:{startAdornment:(0,s.jsx)(x.A,{position:"start",children:(0,s.jsx)(_.A,{fontSize:"small"})})},sx:{mb:2}}),j&&(0,s.jsx)(S.A,{severity:"error",sx:{mb:2},onClose:()=>v(null),children:j}),C&&(0,s.jsx)(S.A,{severity:C.hasErrors?"warning":"success",sx:{mb:2},onClose:()=>T(null),children:a("packages.installed.result",{name:C.packageName,removed:t("packages.installed.removed",C.removed.length),skipped:t("packages.installed.skipped",C.skipped.length),errors:C.hasErrors?t("packages.installed.errors",C.errors.length):""})}),h?(0,s.jsx)(r.default,{sx:{display:"flex",justifyContent:"center",p:3},children:(0,s.jsx)(A.default,{size:24})}):0===p.length?(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:a("packages.installed.empty")}):0===H.length?(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:a("packages.installed.noMatches",{search:E})}):(0,s.jsx)(b.A,{spacing:1,children:H.map(e=>(0,s.jsxs)(c.A,{variant:"outlined",sx:{p:2,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,s.jsxs)(r.default,{children:[(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",children:[(0,s.jsx)(d.A,{variant:"subtitle1",children:e.packageName}),(0,s.jsx)(i.A,{label:"v".concat(e.version),size:"small",variant:"outlined"})]}),(0,s.jsxs)(d.A,{variant:"caption",color:"text.secondary",children:[t("packages.installed.flows",e.entityCounts.flows,{count:u(e.entityCounts.flows)})," \xb7 ",t("packages.installed.models",e.entityCounts.models,{count:u(e.entityCounts.models)})," \xb7 ",t("packages.installed.servers",e.entityCounts.servers,{count:u(e.entityCounts.servers)})," \xb7 ",t("packages.installed.planned",e.entityCounts.plannedExecutions,{count:u(e.entityCounts.plannedExecutions)})," \xb7 ",a("packages.installed.installedAt",{date:l(e.installedAt,{dateStyle:"medium",timeStyle:"short"})})]})]}),(0,s.jsx)(o.A,{color:"error",size:"small",startIcon:(0,s.jsx)(eP.A,{}),onClick:()=>k(e),disabled:w,children:a("packages.installed.uninstall")})]},e.packageName))}),(0,s.jsxs)(P.A,{open:null!==y,onClose:()=>w?void 0:k(null),children:[(0,s.jsx)(N.A,{children:a("packages.installed.confirmTitle",{name:null!=(e=null==y?void 0:y.packageName)?e:""})}),(0,s.jsx)(O.A,{children:(0,s.jsx)(eW.A,{children:(0,s.jsx)(X.A,{message:"packages.installed.confirmHelp",values:{created:(0,s.jsx)("strong",{children:a("packages.installed.created")})}})})}),(0,s.jsxs)(M.A,{children:[(0,s.jsx)(o.A,{onClick:()=>k(null),disabled:w,children:a("packages.installed.cancel")}),(0,s.jsx)(o.A,{color:"error",variant:"contained",onClick:()=>y&&void R(y),disabled:w,startIcon:w?(0,s.jsx)(A.default,{size:16}):(0,s.jsx)(eP.A,{}),children:a("packages.installed.uninstall")})]})]})]})}var eH=t(33077),eF=t(29767),eM=t(53062),e_=t(84578),eG=t(1702),eL=t(41983),eq=t(23789),eJ=t(17438),eD=t(14418),eU=t(52550),e$=t(12402),eZ=t(61563),eB=t(42063),eK=t(68212);let eV=(0,J.h)("frontend/components/Packages/InstallPackageCard");function eX(e){var a,t,l,c,u,p,g;let{onInstalled:h}=e,{t:f,tp:j,formatNumber:v,formatList:y}=(0,V.s9)(),[k,w]=(0,n.useState)(""),[z,T]=(0,n.useState)([]),[E,I]=(0,n.useState)(!1),[W,G]=(0,n.useState)(null),[L,q]=(0,n.useState)(!1),[J,D]=(0,n.useState)(null),[U,$]=(0,n.useState)(null),[Z,B]=(0,n.useState)(!1),[Y,Q]=(0,n.useState)(null),[ee,ea]=(0,n.useState)(null),[et,es]=(0,n.useState)(!1),[en,er]=(0,n.useState)(null),[el,ei]=(0,n.useState)(null),[ec,ed]=(0,n.useState)({}),[eu,ep]=(0,n.useState)({}),[eg,eh]=(0,n.useState)({}),[em,ex]=(0,n.useState)(null),[ef,ej]=(0,n.useState)(!1),[ev,ey]=(0,n.useState)(0),[ek,ew]=(0,n.useState)(null),[eA,eb]=(0,n.useState)({}),eS=(0,n.useCallback)(async e=>{I(!0),G(null);try{var a;let t=await eo.searchRegistry({q:e.trim()||void 0,pageSize:24});T(null!=(a=t.items)?a:[]),q(!0)}catch(e){eV.warn("Failed to search package registry",e),G(e instanceof Error?e.message:String(e)),T([])}finally{I(!1)}},[]);(0,n.useEffect)(()=>{eS(""),K.getStatus().then(e=>D(e.signedIn?e.publisherHandle:null)).catch(e=>eV.debug("Registry account status unavailable",e))},[eS]);let ez=(0,n.useCallback)(async()=>{if(U){B(!0),Q(null);try{let e=await K.deletePackage(U.id);if(!e.ok)return void Q(e.error||f("packages.browse.deleteFailed"));T(e=>e.filter(e=>e.id!==U.id)),$(null),await eS(k)}catch(e){eV.warn("Package deletion failed",e),Q(e instanceof Error?e.message:String(e))}finally{B(!1)}}},[U,k,eS,f]),eC=(0,n.useCallback)(async e=>{ea(e),ei(null),ew(null),ed({}),ep({}),eh({}),ex(null),ej(!1),ey(0),eb({}),er(null),es(!0);try{var a,t,s;let n=await eo.installFromRegistry({packageId:e.id,version:e.latestVersion,consentGranted:!1});if(!n.ok)return void er((null==(t=n.errors)?void 0:t[0])||f("packages.browse.previewFailed"));ei(n);let r=null==(a=n.preview)?void 0:a.models[0];ex(null!=(s=null==r?void 0:r.id)?s:null),ey(+!r)}catch(e){eV.warn("Failed to fetch package preview",e),er(e instanceof Error?e.message:String(e))}finally{es(!1)}},[f]),eT=(0,n.useCallback)(async()=>{if(ee&&el){es(!0),er(null);try{var e,a;let t=Object.fromEntries((null!=(a=null==(e=el.preview)?void 0:e.globals)?a:[]).map(e=>{var a,t;return[e.name,{value:null!=(t=null==(a=eu[e.name])?void 0:a.trim())?t:"",metadata:{isSecret:!0===e.isSecret}}]}).filter(e=>{let[,a]=e;return a.value.length>0}));if(Object.keys(t).length>0){let e=await fetch("/api/env",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"setAll",variables:t})});if(!e.ok){let a=await e.json().catch(()=>({}));throw Error((null==a?void 0:a.error)||f("packages.browse.globalsFailed",{status:e.status}))}}let s=await eo.installFromRegistry({packageId:ee.id,version:ee.latestVersion,secrets:ec,modelMappings:Object.fromEntries(Object.entries(eg).filter(e=>{let[,a]=e;return""!==a})),consentGranted:!0});ew(s),ei(null),s.ok&&(null==h||h())}catch(e){eV.warn("Install failed",e),er(e instanceof Error?e.message:String(e))}finally{es(!1)}}},[ee,el,ec,eu,eg,h,f]),eE=(0,n.useCallback)(()=>{ea(null),ei(null),ew(null),ed({}),ep({}),eh({}),ex(null),ej(!1),ey(0),eb({}),er(null)},[]),eI=null==el?void 0:el.preview,eW=null!=(t=null==eI?void 0:eI.models.find(e=>e.id===em))?t:null==eI?void 0:eI.models[0],eN=null!=(l=null==eI?void 0:eI.models.filter(e=>Object.prototype.hasOwnProperty.call(eg,e.id)).length)?l:0,eO=null==(c=null==eI?void 0:eI.models.every(e=>Object.prototype.hasOwnProperty.call(eg,e.id)))||c,eR=(0,n.useCallback)(e=>{ex(e),ej(!!eg[e])},[eg]),eX=(0,n.useCallback)(e=>{eh(a=>({...a,[e]:""})),ej(!1)},[]),eY=(0,n.useCallback)((e,a)=>{eh(t=>({...t,[e]:a}))},[]);return(0,s.jsxs)(r.default,{sx:{maxWidth:{xs:"100%",md:1100},mx:"auto",mt:3},children:[(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",sx:{mb:1},children:[(0,s.jsx)(e$.A,{color:"action"}),(0,s.jsx)(d.A,{variant:"h6",children:f("packages.browse.title")})]}),(0,s.jsx)(m.A,{size:"small",fullWidth:!0,placeholder:f("packages.browse.search"),value:k,onChange:e=>w(e.target.value),onKeyDown:e=>{"Enter"===e.key&&eS(k)},InputProps:{startAdornment:(0,s.jsx)(x.A,{position:"start",children:(0,s.jsx)(_.A,{fontSize:"small"})}),endAdornment:E?(0,s.jsx)(x.A,{position:"end",children:(0,s.jsx)(A.default,{size:16})}):void 0},sx:{mb:2}}),W&&(0,s.jsx)(S.A,{severity:"error",sx:{mb:2},onClose:()=>G(null),children:W}),L&&!E&&0===z.length&&!W&&(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:f("packages.browse.noMatches",{search:k})}),(0,s.jsx)(eH.Ay,{container:!0,spacing:2,children:z.map(e=>(0,s.jsx)(eH.Ay,{item:!0,xs:12,sm:6,md:4,children:(0,s.jsxs)(eF.A,{variant:"outlined",sx:{height:"100%",display:"flex",flexDirection:"column"},children:[(0,s.jsx)(eM.A,{onClick:()=>void eC(e),sx:{flex:1},children:(0,s.jsxs)(e_.A,{children:[(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"baseline",justifyContent:"space-between",children:[(0,s.jsx)(d.A,{variant:"subtitle1",noWrap:!0,children:e.name}),(0,s.jsx)(i.A,{size:"small",variant:"outlined",label:"v".concat(e.latestVersion)})]}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",display:"block",children:e.handle}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",sx:{mt:.5,minHeight:"2.5em"},children:e.description||f("packages.browse.noDescription")}),(0,s.jsx)(b.A,{direction:"row",spacing:.5,sx:{mt:1,flexWrap:"wrap",gap:.5},children:e.tags.map(e=>(0,s.jsx)(i.A,{size:"small",label:e},e))}),(0,s.jsxs)(b.A,{direction:"row",spacing:.5,alignItems:"center",sx:{mt:1},children:[(0,s.jsx)(eZ.A,{fontSize:"inherit",color:"disabled"}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",children:v(e.downloads)})]})]})}),function(e,a){var t;let s=null==a?void 0:a.trim().replace(/^@/,"").toLocaleLowerCase();if(!s)return!1;let n=null==(t=e.handle)?void 0:t.trim().replace(/^@/,"");if(n)return n.split("/")[0].toLocaleLowerCase()===s;let r=e.id.trim().replace(/^@/,"");return r.includes("/")&&r.split("/")[0].toLocaleLowerCase()===s}(e,J)&&(0,s.jsx)(eG.A,{sx:{justifyContent:"flex-end",pt:0},children:(0,s.jsx)(eL.A,{size:"small",color:"error","aria-label":f("packages.browse.deleteAria",{name:e.name}),onClick:()=>{Q(null),$(e)},children:(0,s.jsx)(eP.A,{fontSize:"small"})})})]})},e.id))}),(0,s.jsxs)(P.A,{open:null!==U,onClose:Z?void 0:()=>$(null),maxWidth:"xs",fullWidth:!0,children:[(0,s.jsx)(N.A,{children:f("packages.browse.deleteTitle")}),(0,s.jsxs)(O.A,{children:[Y&&(0,s.jsx)(S.A,{severity:"error",sx:{mb:2},children:Y}),(0,s.jsx)(d.A,{variant:"body2",children:(0,s.jsx)(X.A,{message:"packages.browse.deleteHelp",values:{name:(0,s.jsx)("strong",{children:null==U?void 0:U.name})}})})]}),(0,s.jsxs)(M.A,{children:[(0,s.jsx)(o.A,{onClick:()=>$(null),disabled:Z,children:f("packages.browse.cancel")}),(0,s.jsx)(o.A,{color:"error",variant:"contained",onClick:()=>void ez(),disabled:Z,startIcon:Z?(0,s.jsx)(A.default,{size:16,color:"inherit"}):(0,s.jsx)(eP.A,{}),children:f("packages.browse.delete")})]})]}),(0,s.jsxs)(P.A,{open:null!==ee,onClose:et?void 0:eE,maxWidth:!1,fullWidth:!0,PaperProps:{sx:{width:"min(1400px, calc(100vw - 32px))",maxWidth:"none",minHeight:{xs:"calc(100vh - 32px)",md:760},maxHeight:"calc(100vh - 32px)",borderRadius:{xs:2,md:3}}},children:[(0,s.jsxs)(N.A,{sx:{px:{xs:2,md:4},pt:{xs:2,md:3},pb:1},children:[(0,s.jsx)(d.A,{component:"span",variant:"h5",fontWeight:700,children:f("packages.install.title",{name:null!=(u=null==ee?void 0:ee.name)?u:""})}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:f("packages.install.subtitle")})]}),(0,s.jsxs)(O.A,{sx:{px:{xs:2,md:4},pb:3},children:[en&&(0,s.jsx)(S.A,{severity:"error",sx:{mb:2},onClose:()=>er(null),children:en}),et&&!el&&!ek&&(0,s.jsx)(r.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:420},children:(0,s.jsx)(A.default,{size:24})}),eI&&(null==el?void 0:el.package)&&(0,s.jsxs)(r.default,{children:[(0,s.jsxs)(b.A,{direction:{xs:"column",sm:"row"},spacing:1,alignItems:{sm:"center"},justifyContent:"space-between",sx:{mb:2.5},children:[(0,s.jsxs)(b.A,{direction:"row",spacing:1,alignItems:"center",children:[(0,s.jsx)(i.A,{size:"small",variant:"outlined",label:"v".concat(el.package.version)}),el.package.publisher&&(0,s.jsx)(i.A,{size:"small",variant:"outlined",label:el.package.publisher}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",children:f("packages.install.summary",{servers:j("packages.installed.servers",eI.servers.length),models:j("packages.installed.models",eI.models.length),flows:j("packages.installed.flows",eI.flows.length),planned:j("packages.installed.planned",eI.plannedExecutions.length)})})]}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",children:f("packages.install.step",{current:v(ev+1),total:v(2)})})]}),(0,s.jsxs)(R.A,{activeStep:ev,sx:{maxWidth:720,mx:"auto",mb:3},children:[(0,s.jsx)(H.A,{children:(0,s.jsx)(F.A,{children:f("packages.install.matchModels")})}),(0,s.jsx)(H.A,{children:(0,s.jsx)(F.A,{children:f("packages.install.reviewInstall")})})]}),0===ev&&eI.models.length>0&&eW&&(0,s.jsxs)(r.default,{children:[(0,s.jsxs)(r.default,{sx:{textAlign:"center",maxWidth:820,mx:"auto",mb:3},children:[(0,s.jsx)(d.A,{variant:"h4",fontWeight:750,sx:{mb:1},children:f("packages.install.modelsMissing")}),(0,s.jsx)(d.A,{variant:"h6",color:"text.secondary",fontWeight:400,children:f("packages.install.replaceModels")})]}),(0,s.jsxs)(r.default,{sx:{display:"grid",gridTemplateColumns:{xs:"minmax(0, 1fr)",md:"minmax(260px, 0.85fr) 88px minmax(420px, 1.35fr)"},gap:{xs:2,md:2.5},alignItems:"stretch"},children:[(0,s.jsxs)(r.default,{children:[(0,s.jsxs)(b.A,{direction:"row",alignItems:"center",justifyContent:"space-between",sx:{mb:1.25},children:[(0,s.jsx)(d.A,{variant:"overline",color:"text.secondary",fontWeight:700,children:f("packages.install.packageModels")}),(0,s.jsx)(i.A,{size:"small",color:eO?"success":"default",label:f("packages.install.ready",{resolved:v(eN),total:v(eI.models.length)})})]}),(0,s.jsx)(b.A,{spacing:1.25,children:eI.models.map(e=>{let a=e.id===eW.id,t=Object.prototype.hasOwnProperty.call(eg,e.id),n=eI.installedModels.find(a=>a.id===eg[e.id]);return(0,s.jsx)(eF.A,{variant:"outlined",sx:{borderWidth:a?2:1,borderColor:a?"primary.main":"divider",bgcolor:a?"action.selected":"background.paper",transition:"border-color 120ms ease, background-color 120ms ease"},children:(0,s.jsx)(eM.A,{onClick:()=>eR(e.id),"aria-label":f("packages.install.configureAria",{name:e.displayName}),sx:{minHeight:104,p:2},children:(0,s.jsxs)(b.A,{direction:"row",spacing:1.5,alignItems:"center",children:[(0,s.jsx)(r.default,{sx:{width:44,height:44,borderRadius:2,display:"grid",placeItems:"center",bgcolor:a?"primary.main":"action.hover",color:a?"primary.contrastText":"text.secondary",flex:"0 0 auto"},children:(0,s.jsx)(eU.A,{})}),(0,s.jsxs)(r.default,{sx:{minWidth:0,flex:1},children:[(0,s.jsx)(d.A,{variant:"subtitle1",fontWeight:700,noWrap:!0,children:e.displayName}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",display:"block",children:f("packages.install.packageModel")}),t&&(0,s.jsxs)(b.A,{direction:"row",spacing:.5,alignItems:"center",sx:{mt:.5},children:[(0,s.jsx)(eD.A,{color:"success",sx:{fontSize:16}}),(0,s.jsx)(d.A,{variant:"caption",color:"success.main",noWrap:!0,children:n?f("packages.install.usingModel",{name:n.displayName}):f("packages.install.willCreate")})]})]})]})})},e.id)})})]}),(0,s.jsx)(r.default,{"aria-hidden":!0,sx:{display:"grid",placeItems:"center",minHeight:{xs:64,md:360}},children:(0,s.jsx)(r.default,{sx:{width:64,height:64,borderRadius:"50%",display:"grid",placeItems:"center",bgcolor:"primary.main",color:"primary.contrastText",boxShadow:3,transform:{xs:"rotate(90deg)",md:"none"}},children:(0,s.jsx)(eJ.A,{sx:{fontSize:38}})})}),(0,s.jsxs)(eF.A,{variant:"outlined",sx:{p:{xs:2,md:3},minHeight:{md:420},bgcolor:"background.default"},children:[(0,s.jsx)(d.A,{variant:"overline",color:"text.secondary",fontWeight:700,children:f("packages.install.replace",{name:eW.displayName})}),(0,s.jsx)(d.A,{variant:"h5",fontWeight:700,sx:{mt:.25,mb:2.5},children:f("packages.install.whatDo")}),(0,s.jsxs)(eH.Ay,{container:!0,spacing:2,children:[(0,s.jsx)(eH.Ay,{item:!0,xs:12,sm:6,children:(0,s.jsx)(o.A,{fullWidth:!0,"aria-label":f("packages.install.createNew"),variant:Object.prototype.hasOwnProperty.call(eg,eW.id)&&""===eg[eW.id]?"contained":"outlined",onClick:()=>eX(eW.id),sx:{minHeight:154,p:2.5,textTransform:"none",alignItems:"stretch",justifyContent:"flex-start",textAlign:"left"},children:(0,s.jsxs)(b.A,{spacing:1,alignItems:"flex-start",children:[(0,s.jsx)(eq.A,{sx:{fontSize:36}}),(0,s.jsx)(d.A,{variant:"h6",fontWeight:700,children:f("packages.install.createNew")}),(0,s.jsx)(d.A,{variant:"body2",color:Object.prototype.hasOwnProperty.call(eg,eW.id)&&""===eg[eW.id]?"inherit":"text.secondary",children:f("packages.install.createNewHelp")})]})})}),(0,s.jsx)(eH.Ay,{item:!0,xs:12,sm:6,children:(0,s.jsx)(o.A,{fullWidth:!0,"aria-label":f("packages.install.useYours"),variant:eg[eW.id]?"contained":"outlined",onClick:()=>ej(!0),sx:{minHeight:154,p:2.5,textTransform:"none",alignItems:"stretch",justifyContent:"flex-start",textAlign:"left"},children:(0,s.jsxs)(b.A,{spacing:1,alignItems:"flex-start",children:[(0,s.jsx)(eU.A,{sx:{fontSize:36}}),(0,s.jsx)(d.A,{variant:"h6",fontWeight:700,children:f("packages.install.useYours")}),(0,s.jsx)(d.A,{variant:"body2",color:eg[eW.id]?"inherit":"text.secondary",children:f("packages.install.useYoursHelp")})]})})})]}),ef&&(0,s.jsxs)(r.default,{sx:{mt:2.5},children:[(0,s.jsx)(C.A,{sx:{mb:2}}),(0,s.jsx)(d.A,{variant:"subtitle1",fontWeight:700,sx:{mb:1},children:f("packages.install.chooseInstalled")}),eI.installedModels.length>0?(0,s.jsx)(eH.Ay,{container:!0,spacing:1.25,children:eI.installedModels.map(e=>{let a=eg[eW.id]===e.id;return(0,s.jsx)(eH.Ay,{item:!0,xs:12,sm:6,children:(0,s.jsx)(eF.A,{variant:"outlined",sx:{height:"100%",borderWidth:a?2:1,borderColor:a?"primary.main":"divider",bgcolor:a?"action.selected":"background.paper"},children:(0,s.jsx)(eM.A,{onClick:()=>eY(eW.id,e.id),"aria-label":f("packages.install.useAria",{name:e.displayName}),sx:{minHeight:76,p:1.5},children:(0,s.jsxs)(b.A,{direction:"row",spacing:1.25,alignItems:"center",children:[(0,s.jsx)(eU.A,{color:a?"primary":"action"}),(0,s.jsxs)(r.default,{sx:{minWidth:0},children:[(0,s.jsx)(d.A,{variant:"subtitle2",fontWeight:700,noWrap:!0,children:e.displayName}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",noWrap:!0,display:"block",children:e.name})]}),a&&(0,s.jsx)(eD.A,{color:"primary",sx:{ml:"auto !important",flex:"0 0 auto"}})]})})})},e.id)})}):(0,s.jsx)(S.A,{severity:"info",children:f("packages.install.noInstalledModels")})]})]})]}),(0,s.jsx)(C.A,{sx:{my:3}}),(0,s.jsxs)(b.A,{direction:"row",spacing:1.5,justifyContent:"space-between",alignItems:"center",children:[(0,s.jsx)(o.A,{onClick:eE,children:f("packages.install.cancel")}),(0,s.jsxs)(b.A,{direction:"row",spacing:1.5,alignItems:"center",children:[!eO&&(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:f("packages.install.resolveAll")}),(0,s.jsx)(o.A,{variant:"contained",size:"large",disabled:!eO,endIcon:(0,s.jsx)(eJ.A,{}),onClick:()=>ey(1),children:f("packages.install.continueReview")})]})]})]}),1===ev&&(0,s.jsxs)(r.default,{sx:{maxWidth:980,mx:"auto"},children:[(0,s.jsxs)(b.A,{direction:{xs:"column",sm:"row"},spacing:1,alignItems:{sm:"center"},justifyContent:"space-between",sx:{mb:2},children:[(0,s.jsxs)(r.default,{children:[(0,s.jsx)(d.A,{variant:"h4",fontWeight:750,children:f("packages.install.reviewTitle")}),(0,s.jsx)(d.A,{variant:"body1",color:"text.secondary",children:f("packages.install.reviewHelp")})]}),eI.models.length>0&&(0,s.jsx)(o.A,{onClick:()=>{var e,a;ey(0),ex(null!=(a=null==(e=eI.models.find(e=>!Object.prototype.hasOwnProperty.call(eg,e.id)))?void 0:e.id)?a:eI.models[0].id),ej(!1)},children:f("packages.install.changeModels")})]}),eI.models.length>0&&(0,s.jsxs)(r.default,{sx:{mb:2.5},children:[(0,s.jsx)(d.A,{variant:"subtitle2",sx:{mb:1},children:f("packages.install.modelPlan")}),(0,s.jsx)(eH.Ay,{container:!0,spacing:1.5,children:eI.models.map(e=>{var a;let t=eI.installedModels.find(a=>a.id===eg[e.id]);return(0,s.jsx)(eH.Ay,{item:!0,xs:12,sm:6,children:(0,s.jsx)(eF.A,{variant:"outlined",sx:{p:1.75,height:"100%"},children:(0,s.jsxs)(b.A,{direction:"row",spacing:1.25,alignItems:"center",children:[(0,s.jsxs)(r.default,{sx:{minWidth:0,flex:1},children:[(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",children:f("packages.install.packageModel")}),(0,s.jsx)(d.A,{variant:"subtitle2",noWrap:!0,children:e.displayName})]}),(0,s.jsx)(eJ.A,{color:"action"}),(0,s.jsxs)(r.default,{sx:{minWidth:0,flex:1},children:[(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",children:t?f("packages.install.yourModel"):f("packages.install.newModel")}),(0,s.jsx)(d.A,{variant:"subtitle2",noWrap:!0,children:null!=(a=null==t?void 0:t.displayName)?a:e.displayName})]})]})})},e.id)})})]}),eI.servers.some(e=>e.requiredEnvMissing.length>0)&&(0,s.jsx)(S.A,{severity:"warning",sx:{mb:1.5},children:f("packages.install.envWarning")}),eI.servers.some(e=>e.installCommand||e.buildCommand)&&(0,s.jsxs)(r.default,{sx:{mb:2.5},children:[(0,s.jsx)(S.A,{severity:"warning",sx:{mb:1.5},children:f("packages.install.commandWarning")}),(0,s.jsx)(b.A,{spacing:1.5,children:eI.servers.filter(e=>e.installCommand||e.buildCommand).map(e=>(0,s.jsxs)(eF.A,{variant:"outlined",sx:{p:1.75},children:[(0,s.jsx)(d.A,{variant:"subtitle2",children:e.localName}),(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",sx:{overflowWrap:"anywhere"},children:e.source}),e.installCommand&&(0,s.jsxs)(r.default,{sx:{mt:1.25},children:[(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",display:"block",children:f("packages.install.installCommand")}),(0,s.jsx)(r.default,{component:"code",sx:{display:"block",mt:.5,p:1,bgcolor:"action.hover",overflowWrap:"anywhere"},children:e.installCommand})]}),e.buildCommand&&(0,s.jsxs)(r.default,{sx:{mt:1.25},children:[(0,s.jsx)(d.A,{variant:"caption",color:"text.secondary",display:"block",children:f("packages.install.buildCommand")}),(0,s.jsx)(r.default,{component:"code",sx:{display:"block",mt:.5,p:1,bgcolor:"action.hover",overflowWrap:"anywhere"},children:e.buildCommand})]})]},"".concat(e.localName,":").concat(e.source)))})]}),eI.globals.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(d.A,{variant:"subtitle2",sx:{mb:1},children:f("packages.install.globalsTitle")}),(0,s.jsx)(b.A,{spacing:1.5,sx:{mb:2.5},children:eI.globals.map(e=>{var a,t;return(0,s.jsx)(m.A,{size:"small",type:e.isSecret&&!eA["global:".concat(e.name)]?"password":"text",label:e.name,helperText:f(eI.missingGlobals.includes(e.name)?"packages.install.notSet":"packages.install.keepCurrent",{description:null!=(a=e.description)?a:e.required?f("packages.install.required"):f("packages.install.optional")}),value:null!=(t=eu[e.name])?t:"",onChange:a=>ep(t=>({...t,[e.name]:a.target.value})),fullWidth:!0,InputProps:e.isSecret?{endAdornment:(0,s.jsx)(x.A,{position:"end",children:(0,s.jsx)(eL.A,{size:"small",tabIndex:-1,"aria-label":eA["global:".concat(e.name)]?f("packages.install.hideGlobal"):f("packages.install.showGlobal"),onClick:()=>eb(a=>({...a,["global:".concat(e.name)]:!a["global:".concat(e.name)]})),children:eA["global:".concat(e.name)]?(0,s.jsx)(eK.A,{fontSize:"small"}):(0,s.jsx)(eB.A,{fontSize:"small"})})})}:void 0},e.name)})})]}),(0,s.jsx)(C.A,{sx:{my:2.5}}),eI.secrets.length>0?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(d.A,{variant:"subtitle2",sx:{mb:1},children:f("packages.install.secretsTitle")}),(0,s.jsx)(b.A,{spacing:1.5,sx:{mb:2.5},children:eI.secrets.map(e=>{var a;return(0,s.jsx)(m.A,{size:"small",type:eA[e.key]?"text":"password",label:e.label||e.key,helperText:e.required?f("packages.install.requiredSecret"):f("packages.install.optional"),value:null!=(a=ec[e.key])?a:"",onChange:a=>ed(t=>({...t,[e.key]:a.target.value})),fullWidth:!0,InputProps:{endAdornment:(0,s.jsx)(x.A,{position:"end",children:(0,s.jsx)(eL.A,{size:"small",tabIndex:-1,"aria-label":eA[e.key]?f("packages.install.hideSecret"):f("packages.install.showSecret"),onClick:()=>eb(a=>({...a,[e.key]:!a[e.key]})),children:eA[e.key]?(0,s.jsx)(eK.A,{fontSize:"small"}):(0,s.jsx)(eB.A,{fontSize:"small"})})})}},e.key)})})]}):(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",sx:{mb:2.5},children:f("packages.install.noSecrets")}),(0,s.jsxs)(b.A,{direction:"row",spacing:1,justifyContent:"space-between",children:[(0,s.jsx)(o.A,{onClick:eI.models.length>0?()=>ey(0):eE,disabled:et,children:eI.models.length>0?f("packages.install.back"):f("packages.install.cancel")}),(0,s.jsx)(o.A,{variant:"contained",color:"primary",size:"large",onClick:()=>void eT(),disabled:et,startIcon:et?(0,s.jsx)(A.default,{size:16}):(0,s.jsx)(e$.A,{}),children:f("packages.install.action")})]})]})]}),ek&&(0,s.jsxs)(r.default,{children:[(0,s.jsx)(S.A,{severity:ek.ok?"success":"error",sx:{mb:1},children:ek.ok?f("packages.install.success",{name:null!=(p=null==(a=ek.package)?void 0:a.name)?p:"",created:j("packages.install.created",ek.created.length),updated:j("packages.install.updated",ek.updated.length),disabled:j("packages.install.disabled",ek.disabled.length)}):f("packages.install.failed",{error:null!=(g=ek.errors[0])?g:f("packages.install.unknownError")})}),ek.missingGlobals.length>0&&(0,s.jsx)(S.A,{severity:"warning",sx:{mb:1},children:f("packages.install.missingGlobals",{names:y(ek.missingGlobals)})}),(0,s.jsx)(o.A,{size:"small",onClick:eE,children:f("packages.install.close")})]})]})]})]})}var eY=t(79508);let eQ=(0,J.h)("frontend/components/Packages");function e0(){let{t:e}=(0,V.s9)(),[a,t]=(0,n.useState)(!1),[l,g]=(0,n.useState)(0);return eQ.debug("Rendering PackagesManager",{wizardOpen:a}),(0,s.jsxs)(r.default,{sx:{height:"100%",display:"flex",flexDirection:"column"},children:[(0,s.jsx)(eY.default,{eyebrowKey:"packages.page.eyebrow",titleKey:"packages.page.title",descriptionKey:"packages.page.description",icon:p.A,badge:(0,s.jsx)(i.A,{label:e("packages.page.experimental"),size:"small",color:"warning",variant:"outlined"}),actions:(0,s.jsx)(o.A,{variant:"contained",startIcon:(0,s.jsx)(u.A,{}),onClick:()=>t(!0),"data-tour":"packages-create",children:e("packages.page.create")})}),(0,s.jsxs)(r.default,{sx:{flex:1,overflow:"auto",p:3},children:[(0,s.jsxs)(c.A,{variant:"outlined",sx:{p:4,display:"flex",flexDirection:"column",alignItems:"center",textAlign:"center",gap:2,maxWidth:{xs:"100%",md:1100},mx:"auto"},children:[(0,s.jsx)(p.A,{sx:{fontSize:48,color:"text.secondary"}}),(0,s.jsx)(d.A,{variant:"h6",children:e("packages.page.hero")}),(0,s.jsx)(d.A,{variant:"body2",color:"text.secondary",children:e("packages.page.heroHelp")}),(0,s.jsx)(o.A,{variant:"contained",startIcon:(0,s.jsx)(u.A,{}),onClick:()=>t(!0),children:e("packages.page.create")})]}),(0,s.jsxs)(c.A,{variant:"outlined",sx:{p:3,mt:3,maxWidth:{xs:"100%",md:1100},mx:"auto"},children:[(0,s.jsx)(d.A,{variant:"h6",gutterBottom:!0,children:e("packages.page.account")}),(0,s.jsx)(Q,{})]}),(0,s.jsx)(eX,{onInstalled:()=>g(e=>e+1)}),(0,s.jsx)(eR,{},l)]}),a&&(0,s.jsx)(eI,{open:a,onClose:()=>t(!1)})]})}var e1=t(9164),e2=t(94929);let e5=(0,J.h)("app/packages/page");function e4(){var e,a;let t=(0,l.useRouter)(),{settings:i,settingsHydrated:o}=(0,e1.useStorage)(),c=o&&null!=(a=null==i||null==(e=i.experimental)?void 0:e.enabled)&&a;return((0,n.useEffect)(()=>{o&&!c&&(e5.debug("Experimental features disabled — redirecting away from /packages"),t.replace("/settings"))},[o,c,t]),o&&c)?(0,s.jsx)(r.default,{sx:{height:"100%",display:"flex",flexDirection:"column"},children:(0,s.jsx)(e0,{})}):(0,s.jsx)(e2.default,{})}},79508:(e,a,t)=>{"use strict";t.d(a,{default:()=>d});var s=t(95155),n=t(33567),r=t(94049),l=t(80777),i=t(25635),o=t(8532),c=t(36773);function d(e){let{title:a,titleKey:t,description:d,descriptionKey:u,eyebrow:p,eyebrowKey:g,icon:h,leading:m,badge:x,actions:f,compact:j=!1,maxWidth:v=1440}=e,y=(0,n.A)(),{t:k}=(0,c.s9)(),w=t?k(t):a,A=u?k(u):d,b=g?k(g):p;return(0,s.jsx)(r.default,{component:"header",sx:{position:"relative",overflow:"hidden",borderBottom:1,borderColor:"divider",background:"linear-gradient(110deg, ".concat((0,o.X4)(y.palette.primary.main,"dark"===y.palette.mode?.09:.055),", transparent 38%, ").concat((0,o.X4)(y.palette.secondary.main,.045),")"),"&::after":{position:"absolute",top:-90,right:"8%",width:220,height:160,borderRadius:"50%",content:'""',pointerEvents:"none",background:"radial-gradient(circle, ".concat((0,o.X4)(y.palette.primary.main,.16),", transparent 68%)"),filter:"blur(20px)"}},children:(0,s.jsxs)(r.default,{sx:{position:"relative",zIndex:1,display:"flex",width:"100%",maxWidth:v,mx:"auto",px:{xs:2,sm:3,lg:4},py:j?{xs:1.8,sm:2}:{xs:2.2,sm:2.8},alignItems:{xs:"flex-start",md:"center"},justifyContent:"space-between",flexDirection:{xs:"column",md:"row"},gap:2},children:[(0,s.jsxs)(l.A,{direction:"row",spacing:1.5,alignItems:"center",sx:{minWidth:0},children:[m,h&&(0,s.jsx)(r.default,{"aria-hidden":"true",sx:{display:"grid",width:j?40:46,height:j?40:46,flexShrink:0,placeItems:"center",border:"1px solid ".concat((0,o.X4)(y.palette.primary.main,.24)),borderRadius:j?2.8:3.2,color:"primary.light",bgcolor:(0,o.X4)(y.palette.primary.main,.1),boxShadow:"inset 0 1px 0 ".concat((0,o.X4)(y.palette.common.white,.08),", 0 10px 30px ").concat((0,o.X4)(y.palette.primary.main,.12))},children:(0,s.jsx)(h,{sx:{fontSize:j?21:24}})}),(0,s.jsxs)(r.default,{sx:{minWidth:0},children:[(p||x)&&(0,s.jsxs)(l.A,{direction:"row",spacing:1,alignItems:"center",sx:{mb:.35},children:[b&&(0,s.jsx)(i.A,{sx:{color:"primary.light",fontSize:"0.67rem",fontWeight:780,letterSpacing:"0.13em",textTransform:"uppercase"},children:b}),x]}),(0,s.jsx)(i.A,{component:"h1",variant:"h5",sx:{overflow:"hidden",textOverflow:"ellipsis",fontSize:j?"1.2rem":void 0,whiteSpace:{xs:"normal",sm:"nowrap"}},children:w}),A&&(0,s.jsx)(i.A,{variant:"body2",color:"text.secondary",sx:{mt:.45,maxWidth:720,textWrap:"balance"},children:A})]})]}),f&&(0,s.jsx)(r.default,{sx:{display:"flex",width:{xs:"100%",md:"auto"},flexShrink:0,flexWrap:"wrap",alignItems:"center",gap:1,"& > .MuiButton-root":{flex:{xs:"1 1 auto",sm:"0 0 auto"}}},children:f})]})})}},93632:(e,a,t)=>{"use strict";t.d(a,{P:()=>r});let s=(0,t(73288).h)("frontend/services/plannedExecutions");class n{async list(){try{let e=await fetch("/api/planned-executions");if(!e.ok)throw Error("HTTP ".concat(e.status));return await e.json()}catch(e){return s.warn("Failed to list planned executions",e),{paused:!1,executions:[]}}}async create(e){try{let a=await fetch("/api/planned-executions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),t=await a.json();if(!a.ok)return{success:!1,error:(null==t?void 0:t.error)||"HTTP ".concat(a.status)};return{success:!0,execution:t.execution}}catch(e){return{success:!1,error:e instanceof Error?e.message:"Request failed"}}}async update(e,a){try{let t=await fetch("/api/planned-executions/".concat(e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),s=await t.json();if(!t.ok)return{success:!1,error:(null==s?void 0:s.error)||"HTTP ".concat(t.status)};return{success:!0,execution:s.execution}}catch(e){return{success:!1,error:e instanceof Error?e.message:"Request failed"}}}async delete(e){try{let a=await fetch("/api/planned-executions/".concat(e),{method:"DELETE"});if(!a.ok){let e=await a.json().catch(()=>null);return{success:!1,error:(null==e?void 0:e.error)||"HTTP ".concat(a.status)}}return{success:!0}}catch(e){return{success:!1,error:e instanceof Error?e.message:"Request failed"}}}async setPaused(e){try{let a=await fetch("/api/planned-executions",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({paused:e})});if(!a.ok){let e=await a.json().catch(()=>null);return{success:!1,error:(null==e?void 0:e.error)||"HTTP ".concat(a.status)}}return{success:!0}}catch(e){return{success:!1,error:e instanceof Error?e.message:"Request failed"}}}async runNow(e){try{let a=await fetch("/api/planned-executions/".concat(e,"/run"),{method:"POST"}),t=await a.json();if(!a.ok)return{success:!1,error:(null==t?void 0:t.error)||"HTTP ".concat(a.status)};return{success:!0,record:t.record}}catch(e){return{success:!1,error:e instanceof Error?e.message:"Request failed"}}}async loadRuns(e){try{let a=await fetch("/api/planned-executions/".concat(e,"/runs"));if(!a.ok)throw Error("HTTP ".concat(a.status));let t=await a.json();return Array.isArray(null==t?void 0:t.runs)?t.runs:[]}catch(a){return s.warn("Failed to load runs for ".concat(e),a),[]}}async previewSchedule(e,a){try{let t=await fetch("/api/planned-executions/preview-schedule",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cron:e,timezone:a})});if(!t.ok)throw Error("HTTP ".concat(t.status));return await t.json()}catch(e){return{valid:!1,error:e instanceof Error?e.message:"Preview failed",nextRuns:[]}}}}let r=new n},94460:(e,a,t)=>{Promise.resolve().then(t.bind(t,70479))}},e=>{e.O(0,[4754,7758,3392,2678,981,1983,1871,5954,9562,3272,155,4123,9611,6547,4122,8620,4156,5148,1161,57,8441,1255,7358],()=>e(e.s=94460)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8974],{3195:(e,t,a)=>{Promise.resolve().then(a.bind(a,4969))},4969:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>J});var i=a(95155),n=a(33567),s=a(97322),r=a(94049),o=a(80777),l=a(22003),c=a(91871),d=a(4474),h=a(25635),m=a(2300),p=a(28548),u=a(8532),x=a(96429),f=a(60700),b=a(96968),g=a(44971),y=a(33009),j=a(14418),A=a(17438),v=a(91287),k=a(38343),w=a(52619),S=a.n(w),C=a(12115),O=a(14913),T=a(57883),I=a(9562),N=a(98142),W=a(37553),z=a(33411),R=a(36773);function X(){let{t:e}=(0,R.s9)(),[t,a]=(0,C.useState)(null),[n,s]=(0,C.useState)(""),[o,d]=(0,C.useState)(!1),[p,u]=(0,C.useState)(!1),[x,f]=(0,C.useState)(null),[b,g]=(0,C.useState)(!1),y=Array.from(n).length,j=Array.from(n.trim()).length,A=null!==t&&j>=1&&j<=255,v=async()=>{if(t&&A){d(!0),f(null),g(!1);try{let a=await fetch("/api/registry/feedback",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({notice:n.trim(),rating:"happy"===t?5:1})}),i=await a.json().catch(()=>({}));if(!a.ok){f("string"==typeof i.error?i.error:e("feedback.submitFailed")),g(a.status>=500);return}u(!0)}catch(t){f(e("feedback.unavailable")),g(!0)}finally{d(!1)}}};return p?(0,i.jsx)(l.A,{severity:"success",sx:{mb:4},children:e("feedback.thanks")}):(0,i.jsxs)(m.A,{component:"section","aria-labelledby":"feedback-banner-title",variant:"outlined",sx:{mb:4,p:{xs:2,sm:2.5}},children:[(0,i.jsxs)(r.default,{sx:{display:"flex",flexDirection:{xs:"column",md:"row"},alignItems:{xs:"stretch",md:"center"},gap:2},children:[(0,i.jsxs)(r.default,{sx:{flex:"0 0 auto"},children:[(0,i.jsx)(h.A,{id:"feedback-banner-title",variant:"subtitle1",fontWeight:600,children:e("feedback.title")}),(0,i.jsx)(h.A,{variant:"body2",color:"text.secondary",children:e("feedback.description")})]}),(0,i.jsxs)(O.A,{exclusive:!0,value:t,onChange:(e,t)=>{t&&a(t)},"aria-label":e("feedback.title"),size:"small",children:[(0,i.jsxs)(T.A,{value:"happy","aria-label":e("feedback.yesAria"),children:[(0,i.jsx)(W.A,{sx:{mr:.75}}),e("feedback.yes")]}),(0,i.jsxs)(T.A,{value:"unhappy","aria-label":e("feedback.noAria"),children:[(0,i.jsx)(N.A,{sx:{mr:.75}}),e("feedback.no")]})]}),(0,i.jsx)(I.A,{value:n,onChange:e=>s(e.target.value),placeholder:e("feedback.placeholder"),size:"small",multiline:!0,maxRows:3,inputProps:{maxLength:255,"aria-label":e("feedback.inputAria")},helperText:"".concat(y,"/255"),sx:{flex:"1 1 280px"}}),(0,i.jsx)(c.A,{variant:"contained",onClick:v,disabled:!A||o,sx:{alignSelf:{xs:"stretch",md:"flex-start"},minWidth:96},children:o?e("feedback.sending"):e("feedback.send")})]}),x&&(0,i.jsxs)(l.A,{severity:"error",sx:{mt:2},onClose:()=>{f(null),g(!1)},action:b?(0,i.jsx)(c.A,{color:"inherit",size:"small",onClick:()=>{t&&(0,z.tr)({title:"FLUJO feedback",body:"Sentiment: ".concat("happy"===t?"Happy":"Not really","\n\n").concat(n.trim())})},children:e("feedback.openGitHub")}):void 0,children:[x,b&&" ".concat(e("feedback.githubFallback"))]})]})}var _=a(9164),E=a(69195),F=a(90057),P=a(43076);let H=(0,a(73288).h)("app/page");function J(){var e;let t=(0,n.A)(),{t:a,tp:w}=(0,R.s9)(),{settings:O}=(0,_.useStorage)(),{startTour:T}=(0,E.useTour)(),[I,N]=(0,C.useState)(!0),[W,z]=(0,C.useState)(!1),[J,B]=(0,C.useState)(null),[D,G]=(0,C.useState)(!1),[L,U]=(0,C.useState)(null),[q,M]=(0,C.useState)({models:null,assistants:0,loading:!0}),Y=(0,C.useRef)(!1);(0,C.useEffect)(()=>{let e=!0;return Promise.allSettled([P.N.tryLoadModels(),F.g.loadFlows()]).then(t=>{let[a,i]=t;e&&M({models:"fulfilled"===a.status&&null!==a.value?a.value.length:null,assistants:"fulfilled"===i.status?i.value.length:0,loading:!1})}),()=>{e=!1}},[]),(0,C.useEffect)(()=>{var e;(null==O||null==(e=O.update)?void 0:e.checkOnStartup)&&!Y.current&&(Y.current=!0,fetch("/api/update").then(async e=>e.ok?e.json():null).then(e=>{(null==e?void 0:e.updateAvailable)&&B({behindBy:e.behindBy,branch:e.branch})}).catch(e=>H.warn("Update check failed",e)))},[null==O||null==(e=O.update)?void 0:e.checkOnStartup]),(0,C.useEffect)(()=>{(async()=>{try{let e=await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"check_initialized"})});if(!e.ok)return void N(!1);let t=await e.json(),a=!0===t.initialized;if(N(a),!a)return;let i=await fetch("/api/encryption/secure",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"check_user_encryption"})});if(i.ok){let e=await i.json();z(!0===e.userEncryption)}}catch(e){H.error("Error checking encryption status",e),N(!1)}})()},[]);let K=async()=>{G(!0),U(null);try{let e=await fetch("/api/update",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"apply"})}),t=await e.json();if(!e.ok||!1===t.success){U(t.error||a("home.updateFailed")),G(!1);return}if(t.restarting){let e=!1,t=async()=>{try{if((await fetch("/api/cwd",{cache:"no-store"})).ok&&e)return void window.location.reload()}catch(t){e=!0}setTimeout(t,3e3)};setTimeout(t,5e3)}else G(!1),B(null)}catch(e){H.error("Update failed",e),U(a("home.updateFailed")),G(!1)}},Q=null!==q.models&&q.models>0,V=!q.loading&&null===q.models,Z=q.assistants>0,$=[{id:"ai",number:1,title:a("home.connectAi.title"),description:a("home.connectAi.description"),icon:x.default,complete:Q,available:!0,status:q.loading?a("home.checking"):Q?a("home.connected"):V?a("home.openToCheck"):a("home.required"),href:Q||V?"/models":"/models?add=1",action:Q?a("home.connectAi.manage"):V?a("home.connectAi.open"):a("home.connectAi.action")},{id:"assistant",number:2,title:a("home.agent.title"),description:a("home.agent.description"),icon:f.A,complete:Z,available:Q,status:Z?w("home.readyCount",q.assistants):Q?a("home.next"):a("home.afterAi"),href:Q?"/flows?create=assistant":void 0,action:Z?a("home.agent.another"):Q?a("home.agent.openBuilder"):a("home.agent.connectFirst")},{id:"talk",number:3,title:a("home.talk.title"),description:a("home.talk.description"),icon:b.A,complete:!1,available:Q&&Z,status:Q?Z?a("home.ready"):a("home.afterAgent"):a("home.afterAi"),href:Q&&Z?"/chat":void 0,action:Q?Z?a("home.talk.start"):a("home.talk.createFirst"):a("home.talk.finishAi")}];return(0,i.jsx)(s.A,{maxWidth:!1,disableGutters:!0,children:(0,i.jsxs)(r.default,{sx:{width:"min(100%, 1320px)",mx:"auto",px:{xs:2,sm:3,lg:5},pb:{xs:7,md:10}},children:[(0,i.jsxs)(o.A,{spacing:1.2,sx:{pt:{xs:2,md:3}},children:[J&&(0,i.jsx)(l.A,{severity:"info",action:(0,i.jsx)(c.A,{color:"inherit",size:"small",onClick:K,disabled:D,startIcon:D?(0,i.jsx)(d.default,{size:16,color:"inherit"}):void 0,children:D?a("home.updating"):a("home.updateNow")}),children:D?a("home.updateProgress"):w("home.updateReady",J.behindBy,{branch:J.branch})}),L&&(0,i.jsx)(l.A,{severity:"error",onClose:()=>U(null),children:L}),I?W?null:(0,i.jsxs)(l.A,{severity:"info",icon:(0,i.jsx)(y.A,{}),children:[a("home.passwordOptional")," ",(0,i.jsx)(S(),{href:"/settings",style:{fontWeight:700},children:a("common.settings")}),"."]}):(0,i.jsxs)(l.A,{severity:"warning",icon:(0,i.jsx)(g.A,{}),children:[a("home.passwordRequired")," ",(0,i.jsx)(S(),{href:"/settings",style:{fontWeight:700},children:a("common.settings")}),"."]})]}),(0,i.jsx)(r.default,{component:"section",sx:{pt:{xs:5,md:7},pb:{xs:4,md:5}},children:(0,i.jsxs)(o.A,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"flex-start",md:"flex-end"},spacing:2.5,children:[(0,i.jsxs)(r.default,{sx:{maxWidth:760},children:[(0,i.jsx)(h.A,{className:"premium-eyebrow",children:a("home.eyebrow")}),(0,i.jsx)(h.A,{variant:"h2",sx:{mt:1,maxWidth:720},children:a("home.heading")}),(0,i.jsx)(h.A,{variant:"h6",color:"text.secondary",sx:{mt:1.5,maxWidth:700,fontWeight:450,lineHeight:1.55},children:a("home.intro")})]}),(0,i.jsx)(c.A,{variant:"outlined",onClick:T,startIcon:(0,i.jsx)(f.A,{}),children:a("home.openGuide")})]})}),(0,i.jsx)(r.default,{component:"section","aria-label":a("home.gettingStarted"),sx:{display:"grid",gridTemplateColumns:{xs:"1fr",lg:"repeat(3, minmax(0, 1fr))"},gap:2},children:$.map(e=>{let n=e.icon,s=e.available&&!e.complete;return(0,i.jsxs)(m.A,{component:"article",className:"stagger-in",elevation:0,"aria-current":s?"step":void 0,sx:{position:"relative",display:"flex",minHeight:{xs:250,lg:310},p:{xs:2.5,sm:3},overflow:"hidden",flexDirection:"column",border:1,borderColor:e.complete?(0,u.X4)(t.palette.success.main,.45):s?(0,u.X4)(t.palette.primary.main,.48):"divider",borderRadius:4,bgcolor:(0,u.X4)(t.palette.background.paper,e.available?.78:.5),opacity:e.available?1:.7,boxShadow:s?"0 22px 70px ".concat((0,u.X4)(t.palette.primary.main,.13)):"none",transition:"transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease","&:hover":e.available?{transform:"translateY(-4px)",boxShadow:"0 26px 74px ".concat((0,u.X4)(t.palette.primary.main,.16))}:void 0,"&::before":{position:"absolute",top:-80,right:-70,width:190,height:190,borderRadius:"50%",content:'""',background:"radial-gradient(circle, ".concat((0,u.X4)(e.complete?t.palette.success.main:t.palette.primary.main,e.available?.18:.07),", transparent 68%)")}},children:[(0,i.jsxs)(o.A,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:1,children:[(0,i.jsx)(r.default,{sx:{display:"grid",width:46,height:46,placeItems:"center",borderRadius:3,color:e.complete?"success.main":e.available?"primary.main":"text.disabled",bgcolor:(0,u.X4)(e.complete?t.palette.success.main:t.palette.primary.main,.1)},children:e.complete?(0,i.jsx)(j.A,{}):(0,i.jsx)(n,{})}),(0,i.jsx)(p.A,{size:"small",color:e.complete?"success":s?"primary":"default",variant:"outlined",label:e.status})]}),(0,i.jsx)(h.A,{variant:"overline",color:"text.secondary",sx:{mt:3},children:a("home.step",{number:e.number})}),(0,i.jsx)(h.A,{variant:"h5",sx:{mt:.3},children:e.title}),(0,i.jsx)(h.A,{variant:"body2",color:"text.secondary",sx:{mt:1,lineHeight:1.65},children:e.description}),(0,i.jsx)(r.default,{sx:{mt:"auto",pt:3},children:e.href?(0,i.jsx)(c.A,{component:S(),href:e.href,variant:s?"contained":"outlined",endIcon:(0,i.jsx)(A.A,{}),fullWidth:!0,children:e.action}):(0,i.jsx)(c.A,{variant:"outlined",disabled:!0,fullWidth:!0,children:e.action})})]},e.id)})}),(0,i.jsxs)(m.A,{component:"section",elevation:0,sx:{mt:2,p:{xs:2.2,sm:2.5},display:"flex",flexDirection:{xs:"column",sm:"row"},alignItems:{xs:"flex-start",sm:"center"},gap:2,border:1,borderColor:"divider",borderRadius:4,bgcolor:(0,u.X4)(t.palette.background.paper,.62)},children:[(0,i.jsx)(r.default,{sx:{display:"grid",width:44,height:44,flexShrink:0,placeItems:"center",borderRadius:3,color:"secondary.main",bgcolor:(0,u.X4)(t.palette.secondary.main,.1)},children:(0,i.jsx)(v.A,{})}),(0,i.jsxs)(r.default,{sx:{flex:1},children:[(0,i.jsx)(h.A,{variant:"subtitle1",fontWeight:760,children:a("home.apps.title")}),(0,i.jsx)(h.A,{variant:"body2",color:"text.secondary",children:a("home.apps.description")})]}),(0,i.jsx)(c.A,{component:S(),href:"/mcp",variant:"text",endIcon:(0,i.jsx)(A.A,{}),children:a("nav.connectedApps")})]}),(0,i.jsxs)(o.A,{direction:{xs:"column",sm:"row"},spacing:{xs:1,sm:3},sx:{mt:3.5,color:"text.secondary"},children:[(0,i.jsxs)(o.A,{direction:"row",spacing:.8,alignItems:"center",children:[(0,i.jsx)(y.A,{sx:{fontSize:17,color:"primary.main"}}),(0,i.jsx)(h.A,{variant:"caption",children:a("home.trait.private")})]}),(0,i.jsxs)(o.A,{direction:"row",spacing:.8,alignItems:"center",children:[(0,i.jsx)(k.A,{sx:{fontSize:17,color:"primary.main"}}),(0,i.jsx)(h.A,{variant:"caption",children:a("home.trait.simple")})]}),(0,i.jsxs)(o.A,{direction:"row",spacing:.8,alignItems:"center",children:[(0,i.jsx)(g.A,{sx:{fontSize:17,color:"primary.main"}}),(0,i.jsx)(h.A,{variant:"caption",children:a("home.trait.expert")})]})]}),(0,i.jsx)(r.default,{sx:{mt:{xs:5,md:7}},children:(0,i.jsx)(X,{})})]})})}}},e=>{e.O(0,[4754,7758,3392,2678,981,1983,1871,5954,9562,1675,5962,7203,684,5148,9195,57,760,8441,1255,7358],()=>e(e.s=3195)),_N_E=e.O()}]);
|