n8n-editor-ui 2.42.1 → 2.42.2
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/dist/assets/{AddDataTableModal-BmklC_cm.js → AddDataTableModal-BzNAfg7z.js} +1 -1
- package/dist/assets/{AgentApprovalSelector-DSrdgSrV.js → AgentApprovalSelector-L7RBiARN.js} +1 -1
- package/dist/assets/{AgentBuilderView-EdMQfEGj.js → AgentBuilderView-D5Qqi4b4.js} +1 -1
- package/dist/assets/{AgentBuilderView-aTgYup0_.js → AgentBuilderView-D8eoe_bB.js} +3 -3
- package/dist/assets/{AgentConfirmationModal-Oi0qHQtG.js → AgentConfirmationModal-DzMRUVMk.js} +1 -1
- package/dist/assets/{AgentDuplicateModal-XMLXMoSD.js → AgentDuplicateModal-Drlk2LO5.js} +1 -1
- package/dist/assets/{AgentEditorModal-LCuODBys.js → AgentEditorModal-DYocuAZS.js} +1 -1
- package/dist/assets/{AgentJsonImportModal-CuUAFL_S.js → AgentJsonImportModal-DglF6EUF.js} +1 -1
- package/dist/assets/{AgentModal-ChRqzJLA.js → AgentModal-Cu547i3f.js} +1 -1
- package/dist/assets/{AgentModalMultiStep-BAbMGlVb.js → AgentModalMultiStep-T6rauy0x.js} +1 -1
- package/dist/assets/{AgentPreviewButton-CD-RGp7h.js → AgentPreviewButton-BbZrPGO2.js} +1 -1
- package/dist/assets/{AgentPreviewDock-DCAK7zHR.js → AgentPreviewDock-BW1Ev1CW.js} +1 -1
- package/dist/assets/{AgentSessionTimelineView-BbkCtnT4.js → AgentSessionTimelineView-DGW9EeTx.js} +1 -1
- package/dist/assets/{AgentSessionsListView-CFOUUrlM.js → AgentSessionsListView--TQFOKAw.js} +1 -1
- package/dist/assets/{AgentSessionsListView-CZSMG8v8.js → AgentSessionsListView-CO_EMy5U.js} +1 -1
- package/dist/assets/{AgentSkillModal-C7Mf6tXR.js → AgentSkillModal-C5BvnRMa.js} +1 -1
- package/dist/assets/{AgentSubAgentsModal-DMBMPZNF.js → AgentSubAgentsModal-BOz0cTWJ.js} +1 -1
- package/dist/assets/{AgentTaskModal-DjSvWZ7j.js → AgentTaskModal-UyY36R8O.js} +1 -1
- package/dist/assets/{AgentToolConfigForm-t9oQsmbN.js → AgentToolConfigForm-BDyXIs_v.js} +1 -1
- package/dist/assets/{AgentToolConfigModal-B1gaSHAp.js → AgentToolConfigModal-DBeBxt_4.js} +1 -1
- package/dist/assets/{AgentToolsConnectionModalWrapper-Bx6moOoc.js → AgentToolsConnectionModalWrapper-DH0dwp1p.js} +1 -1
- package/dist/assets/{AgentVectorStoresModal-cgxOOqr7.js → AgentVectorStoresModal-D9Rf-BbD.js} +1 -1
- package/dist/assets/{AgentView-CXdBnlmO.js → AgentView-8EjS92Sv.js} +1 -1
- package/dist/assets/{AgentsListView-BEtd0J_K.js → AgentsListView-DJ87JTDv.js} +1 -1
- package/dist/assets/{AnimatedSpinner-B0Aw6-ZV.js → AnimatedSpinner-CTvo7f8p.js} +1 -1
- package/dist/assets/{AnnotationTagsDropdown.ee-B25LS1iZ.js → AnnotationTagsDropdown.ee-DC_vLEiM.js} +1 -1
- package/dist/assets/{AppSidebar-B33Swdl-.js → AppSidebar-CP4R7JFy.js} +1 -1
- package/dist/assets/{AuthLayout-C7ANv7X9.js → AuthLayout-DKY7ThiF.js} +1 -1
- package/dist/assets/{AuthView-DL4bT4kE.js → AuthView-B-DTublD.js} +1 -1
- package/dist/assets/{BrowserUseSetupContent-B6rvdriH.js → BrowserUseSetupContent-CWnc9MZU.js} +1 -1
- package/dist/assets/{BrowserUseSetupModal-CjZNAcxU.js → BrowserUseSetupModal-gTa8XcXQ.js} +1 -1
- package/dist/assets/{ChangePasswordModal-BIP63kin.js → ChangePasswordModal-BFgyQQay.js} +1 -1
- package/dist/assets/{ChangePasswordView-CL482Plh.js → ChangePasswordView-BPuR1Ib1.js} +1 -1
- package/dist/assets/{ChatAgentAvatar-D6YZTYgl.js → ChatAgentAvatar-Cr2vOjv8.js} +1 -1
- package/dist/assets/{ChatFile-CsRUSYlm.js → ChatFile-Cryc51uF.js} +1 -1
- package/dist/assets/{ChatGreetings-BEVw-Gg5.js → ChatGreetings-A7U3Q1ru.js} +1 -1
- package/dist/assets/{ChatLayout-fqA8xN67.js → ChatLayout-BTmrgVI9.js} +1 -1
- package/dist/assets/{ChatLayout-ueLnF4v9.js → ChatLayout-B_wkf9IU.js} +1 -1
- package/dist/assets/{ChatMarkdownChunk-DjKKXOlB.js → ChatMarkdownChunk-BvL94wcv.js} +1 -1
- package/dist/assets/{ChatPersonalAgentsView-B_WFitcC.js → ChatPersonalAgentsView-D8cFDhmK.js} +1 -1
- package/dist/assets/{ChatView-DmtJ7Wf4.js → ChatView-B3D7uYeM.js} +1 -1
- package/dist/assets/{ChatWorkflowAgentsView-DkTmhfg6.js → ChatWorkflowAgentsView-kfUHeL0j.js} +1 -1
- package/dist/assets/{CollectionParameter-DgNQ8Auu.js → CollectionParameter-BCzsluYk.js} +1 -1
- package/dist/assets/{CompareCollectionView-CTGsKGGG.js → CompareCollectionView-Cz1B9fJM.js} +1 -1
- package/dist/assets/{ComputerUseSetupContent-hlMG4Cy3.js → ComputerUseSetupContent-CTrbaYgY.js} +1 -1
- package/dist/assets/{ComputerUseSetupModal-GZ9vAar4.js → ComputerUseSetupModal-C0udZp_v.js} +1 -1
- package/dist/assets/{ConfirmEmailChangeView-CU7B2uMl.js → ConfirmEmailChangeView-qdmaVE6f.js} +1 -1
- package/dist/assets/{ConfirmPasswordModal-DMsxaIuN.js → ConfirmPasswordModal-BSNRo3QN.js} +1 -1
- package/dist/assets/{ConnectionTracker-DFLiWBC4.js → ConnectionTracker-CIwdw9XE.js} +1 -1
- package/dist/assets/{CredentialSelectorModal-CATT8CPv.js → CredentialSelectorModal-Ce2hUv71.js} +1 -1
- package/dist/assets/{CredentialsView-Dte7IWGY.js → CredentialsView-B8UMbmf0.js} +1 -1
- package/dist/assets/{DataTableActions-BB_WG1X1.js → DataTableActions-G2jeW5fP.js} +1 -1
- package/dist/assets/{DataTableDetailsView-Bxdegl4c.js → DataTableDetailsView-BWrwQQeH.js} +1 -1
- package/dist/assets/{DataTableTable-X4RntWkT.js → DataTableTable-CZMSstKe.js} +1 -1
- package/dist/assets/{DataTableView-BCHw4cOs.js → DataTableView-C2gPPpYF.js} +1 -1
- package/dist/assets/{DefaultLayout-CLCs3ZQF.js → DefaultLayout-D6bDCePd.js} +1 -1
- package/dist/assets/{DeleteInstanceRoleModal-K5UQSf5H.js → DeleteInstanceRoleModal-Bb9PAXJ1.js} +1 -1
- package/dist/assets/{DemoDiffView-Ddzi8eIZ.js → DemoDiffView-Dc-Zk8pN.js} +1 -1
- package/dist/assets/{DemoLayout-Clrg0dSq.js → DemoLayout-CKBNGDL4.js} +1 -1
- package/dist/assets/{DependencyPill-DOeeA1tB.js → DependencyPill-D437KJuG.js} +1 -1
- package/dist/assets/{EmptySharedSectionActionBox-CNYlMN2O.js → EmptySharedSectionActionBox-B10Ldgv9.js} +1 -1
- package/dist/assets/{EntityNotFound-BaS2LtHV.js → EntityNotFound-Br4Z5eDq.js} +1 -1
- package/dist/assets/{EntityUnAuthorised-a-RlBPmc.js → EntityUnAuthorised-y999jv5H.js} +1 -1
- package/dist/assets/{ErrorView-DT2Xc-Cc.js → ErrorView-TroEkwTd.js} +1 -1
- package/dist/assets/{EvalCollectionsListView-C5mKbtBP.js → EvalCollectionsListView-DX42UzyI.js} +1 -1
- package/dist/assets/{EvaluationsListSwitcher-Dmq7A1xm.js → EvaluationsListSwitcher-Cmr4vVC6.js} +2 -2
- package/dist/assets/{EvaluationsPaywall-DKdQcTVp.js → EvaluationsPaywall-DQyicyLf.js} +1 -1
- package/dist/assets/{EvaluationsRootView-dwIva_EQ.js → EvaluationsRootView-CHaCl4Ia.js} +1 -1
- package/dist/assets/{ExecutionsTime-hx6xoilA.js → ExecutionsTime-D0U9mfE7.js} +1 -1
- package/dist/assets/{ExecutionsView-DWOVOXI2.js → ExecutionsView-DDJwzfzM.js} +1 -1
- package/dist/assets/{ExposeAllWorkflowsToMcpModal-BarsXi8u.js → ExposeAllWorkflowsToMcpModal-DGmhuB37.js} +1 -1
- package/dist/assets/{FixedCollectionParameter-DFq8iDyb.js → FixedCollectionParameter-CRd1OMN5.js} +1 -1
- package/dist/assets/{FolderBreadcrumbs-BcmiLd-R.js → FolderBreadcrumbs-sZzq3XUq.js} +1 -1
- package/dist/assets/{ForgotMyPasswordView-Dc1Ok6yq.js → ForgotMyPasswordView-CY4DiFRe.js} +1 -1
- package/dist/assets/{GroupedMetricChart-C3aPmFBg.js → GroupedMetricChart-DKnnCFmZ.js} +1 -1
- package/dist/assets/{InsightsChartAverageRuntime-z4AmvlXW.js → InsightsChartAverageRuntime-D95FRXle.js} +1 -1
- package/dist/assets/{InsightsChartFailed-DSmQdUL-.js → InsightsChartFailed-CbKy50TE.js} +1 -1
- package/dist/assets/{InsightsChartFailureRate-BCkZ70Za.js → InsightsChartFailureRate-DVg62y8Z.js} +1 -1
- package/dist/assets/{InsightsChartTimeSaved-BxnKK3Dg.js → InsightsChartTimeSaved-C-xc0fU5.js} +1 -1
- package/dist/assets/{InsightsChartTotal-BOMnFr6E.js → InsightsChartTotal-ytKqzs-d.js} +1 -1
- package/dist/assets/{InsightsDashboard-BPbfXzhW.js → InsightsDashboard-CTTkNXXv.js} +2 -2
- package/dist/assets/{InsightsPaywall-CRcRrSny.js → InsightsPaywall-DU5NRugx.js} +1 -1
- package/dist/assets/{InsightsSummary-CQbk0gEv.js → InsightsSummary-Nnuc_edM.js} +1 -1
- package/dist/assets/{InsightsTableWorkflows-C6MS-h_C.js → InsightsTableWorkflows-BG5eAHVs.js} +2 -2
- package/dist/assets/{InstanceAiEmptyView-CnyaQdI8.js → InstanceAiEmptyView-BNNtVuWV.js} +1 -1
- package/dist/assets/{InstanceAiLayout-CFDSkxNK.js → InstanceAiLayout-BOSAosCC.js} +1 -1
- package/dist/assets/{InstanceAiOnboardingWizard-cnhC-gNx.js → InstanceAiOnboardingWizard-Cy9gJP5W.js} +1 -1
- package/dist/assets/{InstanceAiThreadView-CWJoAJ0v.js → InstanceAiThreadView-EnH6W-rr.js} +1 -1
- package/dist/assets/{InstanceAiThreadsView-BypYwE33.js → InstanceAiThreadsView-DOTua7Pl.js} +1 -1
- package/dist/assets/{InstanceAiToolsConnectionModalWrapper-CUKzX9Ax.js → InstanceAiToolsConnectionModalWrapper-AbV2_Epo.js} +1 -1
- package/dist/assets/{InstanceAiView-Ce9aY10N.js → InstanceAiView-P5bXNdTs.js} +1 -1
- package/dist/assets/{InstanceRoleView-VZMlAtS0.js → InstanceRoleView-X5fojl7Q.js} +1 -1
- package/dist/assets/{LogsOverviewRow-DBMviOQa.js → LogsOverviewRow-CmmPGQP8.js} +1 -1
- package/dist/assets/{MCPOnboardingModal-DoMCMDSf.js → MCPOnboardingModal-Bocp40gP.js} +1 -1
- package/dist/assets/{MainHeader-BCczeasG.js → MainHeader-jhUuJZLB.js} +1 -1
- package/dist/assets/{MainSidebarHeader-Ccbs1l7q.js → MainSidebarHeader-DOK6DGos.js} +1 -1
- package/dist/assets/{McpClientLogoCards-CiJ2p0pG.js → McpClientLogoCards-BmM5J9Rx.js} +1 -1
- package/dist/assets/{McpJsonNudgeModal-Bqo0XEsi.js → McpJsonNudgeModal-sYOTMVcG.js} +1 -1
- package/dist/assets/{McpRegistrySuggestionFooter-Bs2oS3IH.js → McpRegistrySuggestionFooter-BXKKdEJs.js} +1 -1
- package/dist/assets/{MfaSetupModal--x-Anmln.js → MfaSetupModal-Chll-YQU.js} +1 -1
- package/dist/assets/{MigrationRuleDetail-C6oN_2WR.js → MigrationRuleDetail-CbeqzML_.js} +1 -1
- package/dist/assets/{MigrationRules-j6zedmLG.js → MigrationRules-JvOkx_GZ.js} +1 -1
- package/dist/assets/{ModelByIdSelectorModal-BcMG1wZy.js → ModelByIdSelectorModal-BH6NVsMz.js} +1 -1
- package/dist/assets/{NodeCreation-Iyjp7x_I.js → NodeCreation-BCtiN2Ss.js} +2 -2
- package/dist/assets/{NodeCreator-CHiYCnnQ.js → NodeCreator-Cf8v-P6M.js} +1 -1
- package/dist/assets/{NodeDetailsView-dxsT2c_o.js → NodeDetailsView-BaVQeJXW.js} +1 -1
- package/dist/assets/{NodeToolSettingsContent-CTszRDXW.js → NodeToolSettingsContent-CYm6ACxZ.js} +1 -1
- package/dist/assets/{NodeView-1iut-db2.js → NodeView-C1KEbbiK.js} +2 -2
- package/dist/assets/{NodeView-Cw9T3NOc.js → NodeView-DgwON1WW.js} +1 -1
- package/dist/assets/{OAuthConsentView-BYKkworR.js → OAuthConsentView-Dk-2c6QJ.js} +1 -1
- package/dist/assets/{PageViewLayout-Dy0Kn6cp.js → PageViewLayout-D9UCadz4.js} +1 -1
- package/dist/assets/{ProjectBreadcrumb-XjjIxZIL.js → ProjectBreadcrumb-DlzouRdK.js} +1 -1
- package/dist/assets/{ProjectFilter-CPj3gCkR.js → ProjectFilter-CSrk-EFJ.js} +1 -1
- package/dist/assets/{ProjectHeader-BZQpypks.js → ProjectHeader-CkcbjQmz.js} +1 -1
- package/dist/assets/{ProjectRoleView-BjicJ69a.js → ProjectRoleView-D53LZv6P.js} +1 -1
- package/dist/assets/{ProjectSettings-Cp1snmUC.js → ProjectSettings-CtcIM_0t.js} +1 -1
- package/dist/assets/{ProjectVariables-6etXPzaz.js → ProjectVariables-BnS33iUZ.js} +1 -1
- package/dist/assets/{PromotionSelectModal-a2ZjWi6x.js → PromotionSelectModal-cIFNoCWd.js} +1 -1
- package/dist/assets/{PromotionsSettingsView-BuFeVB82.js → PromotionsSettingsView-NBP1vwgV.js} +1 -1
- package/dist/assets/{PromptMfaCodeModal-DzldJ7jt.js → PromptMfaCodeModal-BzhMnIz8.js} +1 -1
- package/dist/assets/{ProviderSettingsModal-DX4YeUSt.js → ProviderSettingsModal-BPeGLlJE.js} +1 -1
- package/dist/assets/{PublicationIndicator-BwP55qRp.js → PublicationIndicator-DLfHu8s-.js} +1 -1
- package/dist/assets/{ResolversView-CJbgTJuZ.js → ResolversView-Bo6q-4Sf.js} +1 -1
- package/dist/assets/{ResourceCenterView-CFuNJv5k.js → ResourceCenterView-5vn1_9oL.js} +1 -1
- package/dist/assets/{ResourceFiltersDropdown-_z8gYMfx.js → ResourceFiltersDropdown-pL5NoAqS.js} +1 -1
- package/dist/assets/{ResourcesListEmptyState-CFcV2AWv.js → ResourcesListEmptyState-C5vQ-LI9.js} +1 -1
- package/dist/assets/{ResourcesListLayout-CRT3aihl.js → ResourcesListLayout-K_jbq4UU.js} +1 -1
- package/dist/assets/{RoleSelectDropdown-BlGLQvpV.js → RoleSelectDropdown-DZcidfgO.js} +1 -1
- package/dist/assets/{RolesView-CqUyvhhE.js → RolesView-BPgm8fNY.js} +1 -1
- package/dist/assets/{RunDataHtml-BlyW2-h-.js → RunDataHtml-DZUyMkQ5.js} +1 -1
- package/dist/assets/{RunDataJson-CLLdqm5V.js → RunDataJson-CIChzH0h.js} +2 -2
- package/dist/assets/{RunDataJsonActions-09LK-_Or.js → RunDataJsonActions-BVi0VzZ6.js} +1 -1
- package/dist/assets/{RunDataParsedAiContent-pT8SEnak.js → RunDataParsedAiContent-CVT-B880.js} +1 -1
- package/dist/assets/{RunDataParsedAiContent-Bf2-1S8h.js → RunDataParsedAiContent-Y2ecB_kD.js} +1 -1
- package/dist/assets/{RunDataSearch-BEAn62tb.js → RunDataSearch-DBIbZ0s2.js} +1 -1
- package/dist/assets/{RunDataTable-DzATI_zR.js → RunDataTable-zL2Tuuku.js} +1 -1
- package/dist/assets/{SamlOnboarding-DHyWAr_C.js → SamlOnboarding-CHtvnOAB.js} +1 -1
- package/dist/assets/{SecuritySettings-DI0VjiLS.js → SecuritySettings-BfW6wyei.js} +1 -1
- package/dist/assets/{SettingsAIView-DXnL9lQj.js → SettingsAIView-COSt0wf0.js} +1 -1
- package/dist/assets/{SettingsAiGatewayView-BemIztvk.js → SettingsAiGatewayView-B--xOQeS.js} +1 -1
- package/dist/assets/{SettingsApiView-BK_rH8YM.js → SettingsApiView-BPiPBo5q.js} +1 -1
- package/dist/assets/{SettingsChatHubView-CwvXNnJI.js → SettingsChatHubView-CV4FVKHC.js} +1 -1
- package/dist/assets/{SettingsCommunityNodesView-BQxdpw2e.js → SettingsCommunityNodesView-2OEnRW5g.js} +1 -1
- package/dist/assets/{SettingsContextView-Cxz_8f47.js → SettingsContextView-kPhltK13.js} +1 -1
- package/dist/assets/{SettingsEncryptionKeys-DkbbsI_A.js → SettingsEncryptionKeys-QvzWM4h_.js} +1 -1
- package/dist/assets/{SettingsExternalSecrets-zEQsrndx.js → SettingsExternalSecrets-BaO6hDTH.js} +1 -1
- package/dist/assets/{SettingsInstanceAiView-PTzp84xx.js → SettingsInstanceAiView-BouHR9Di.js} +1 -1
- package/dist/assets/{SettingsLayout-Bwp8Cgkj.js → SettingsLayout-bwvw2BYY.js} +1 -1
- package/dist/assets/{SettingsLdapView-wWwRtkO1.js → SettingsLdapView-BORnqMKs.js} +1 -1
- package/dist/assets/{SettingsLogStreamingView-CZYdsMzp.js → SettingsLogStreamingView-CxbgoxdD.js} +1 -1
- package/dist/assets/{SettingsMCPAgentsView-BEO89K1d.js → SettingsMCPAgentsView-CDFiLNpC.js} +1 -1
- package/dist/assets/{SettingsMCPClientsView-BSkyyyiR.js → SettingsMCPClientsView-B5RNnVAz.js} +1 -1
- package/dist/assets/{SettingsMCPView-CG9afKY5.js → SettingsMCPView-DgtmFBeJ.js} +1 -1
- package/dist/assets/{SettingsMCPWorkflowsView-CS3NJK0O.js → SettingsMCPWorkflowsView-DQz28qol.js} +1 -1
- package/dist/assets/{SettingsOpenTelemetryView-fLK4_oQx.js → SettingsOpenTelemetryView-C7o90Ihu.js} +1 -1
- package/dist/assets/{SettingsPersonalView-B9VoSZc_.js → SettingsPersonalView-CIPIAi9d.js} +1 -1
- package/dist/assets/{SettingsPreferencesView-mvebabfo.js → SettingsPreferencesView-CAdwHSw6.js} +1 -1
- package/dist/assets/{SettingsSecretsProviders.ee-CXHSobj8.js → SettingsSecretsProviders.ee-BJyYqeZ-.js} +1 -1
- package/dist/assets/{SettingsSourceControl-CtdIS4la.js → SettingsSourceControl-CRpWxNbm.js} +1 -1
- package/dist/assets/{SettingsSso-D1Stih94.js → SettingsSso-Cvhnx-ye.js} +1 -1
- package/dist/assets/{SettingsUsageAndPlan-B7yJ5Fgp.js → SettingsUsageAndPlan-CqRMKHfn.js} +1 -1
- package/dist/assets/{SettingsUsersView-D25_E50w.js → SettingsUsersView-DprEq4Ow.js} +1 -1
- package/dist/assets/{SetupView-C4WhT8VO.js → SetupView-cRNRIIkn.js} +1 -1
- package/dist/assets/{SetupWorkflowCredentialsButton-3UQq0pVY.js → SetupWorkflowCredentialsButton-BvTti5_D.js} +1 -1
- package/dist/assets/{SetupWorkflowFromTemplateView-VAzwMKH-.js → SetupWorkflowFromTemplateView-Dc4nldGr.js} +1 -1
- package/dist/assets/{SeverityTag-BT86-Sgv.js → SeverityTag-CXocDPrt.js} +1 -1
- package/dist/assets/{SigninView-BW7Z2tLP.js → SigninView-DrCAuQsL.js} +1 -1
- package/dist/assets/{SignoutView-CFdaaitd.js → SignoutView-CxBXZeCb.js} +1 -1
- package/dist/assets/{SignupView-D3mNfPgc.js → SignupView-IsYZ4KW3.js} +1 -1
- package/dist/assets/{SkeletonAgentCard-BPn1lcBp.js → SkeletonAgentCard-eQdJ7ZJs.js} +1 -1
- package/dist/assets/{TemplateList-lXDaYpnI.js → TemplateList-CXjvLGlY.js} +1 -1
- package/dist/assets/{TemplatesCollectionView-oza-4SpK.js → TemplatesCollectionView-CAXpTr5w.js} +1 -1
- package/dist/assets/{TemplatesSearchView-BpP3COYz.js → TemplatesSearchView-D0EKgskr.js} +1 -1
- package/dist/assets/{TemplatesView-B1-OIAJS.js → TemplatesView-ChHhgL9v.js} +1 -1
- package/dist/assets/{TemplatesWorkflowView-B5CrrVba.js → TemplatesWorkflowView-DCQCEgYa.js} +1 -1
- package/dist/assets/{TestRunDetailView-CqcCDA0r.js → TestRunDetailView-YYqaZeNI.js} +1 -1
- package/dist/assets/{ToolIcon-CN3WBb1s.js → ToolIcon-D0EEyaW5.js} +1 -1
- package/dist/assets/{ToolSettingsModal-BO_ygE-L.js → ToolSettingsModal-BBWfmEP-.js} +1 -1
- package/dist/assets/{ToolsConnectionModal-BIbjC-x5.js → ToolsConnectionModal-DbOOJSyM.js} +1 -1
- package/dist/assets/{ToolsManagerModal-v74sywWR.js → ToolsManagerModal-CiTYEsWY.js} +1 -1
- package/dist/assets/{ToolsSelector-Dxu6cPFo.js → ToolsSelector-D_J2QO4w.js} +1 -1
- package/dist/assets/{TrialIntroModal-Bqjl_NY1.js → TrialIntroModal-BpYqr8XX.js} +1 -1
- package/dist/assets/{VirtualSchema-BbjYEYYY.js → VirtualSchema-CbtNWL-X.js} +1 -1
- package/dist/assets/{WorkerView-D-tVctej.js → WorkerView-BEhEd0Ih.js} +1 -1
- package/dist/assets/{WorkflowBuilderUnavailableNotice-BSZQfekL.js → WorkflowBuilderUnavailableNotice-BwOrfqba.js} +1 -1
- package/dist/assets/{WorkflowExecutionsInfoAccordion-T1-wOd-T.js → WorkflowExecutionsInfoAccordion-gB5nnYyo.js} +1 -1
- package/dist/assets/{WorkflowExecutionsLandingPage-CEWqVTR4.js → WorkflowExecutionsLandingPage-Cv-jHNUv.js} +1 -1
- package/dist/assets/{WorkflowExecutionsPreview-MIknNdCw.js → WorkflowExecutionsPreview-DlrA7X3Q.js} +1 -1
- package/dist/assets/{WorkflowExecutionsView-P_xYO0bU.js → WorkflowExecutionsView-CO0OuFls.js} +1 -1
- package/dist/assets/{WorkflowHistory-C_z-Eg5u.js → WorkflowHistory-BDhQgsdm.js} +1 -1
- package/dist/assets/{WorkflowLayout-Vl7DA0VE.js → WorkflowLayout-B0cdcZAS.js} +1 -1
- package/dist/assets/{WorkflowOnboardingView-C0D57vXi.js → WorkflowOnboardingView-_rZevqyC.js} +1 -1
- package/dist/assets/{WorkflowPreviewHost-BBMQVotO.js → WorkflowPreviewHost-g8a_pMtD.js} +1 -1
- package/dist/assets/{WorkflowReviewRequestsView-HoEdLk1B.js → WorkflowReviewRequestsView-bYFNr5BJ.js} +1 -1
- package/dist/assets/{WorkflowsView-Dq2l3Uh1.js → WorkflowsView-CJBwrCCr.js} +1 -1
- package/dist/assets/{aiTemplatesStarterCollection.store-B_oXIg4a.js → aiTemplatesStarterCollection.store-DWJdUw1p.js} +1 -1
- package/dist/assets/{app-DVNMq1uL.js → app-D5iNDcFq.js} +14 -14
- package/dist/assets/{auth.eventBus-DPRbeEZK.js → auth.eventBus-NvURC3TH.js} +1 -1
- package/dist/assets/{clients.utils-DqijbFuh.js → clients.utils-EntJ7PAu.js} +1 -1
- package/dist/assets/{constants-vqWKfCye.js → constants-CBSK5Fg0.js} +1 -1
- package/dist/assets/{context.store-CPo1JDqB.js → context.store-Y6JMw38V.js} +1 -1
- package/dist/assets/{dist-Y7iUL5pT.js → dist-DHIs7lNH.js} +1 -1
- package/dist/assets/{en-BtnISMkU.js → en-LTNNP_BI.js} +1 -1
- package/dist/assets/{expression-runtime-stub-CEzXQGwI.js → expression-runtime-stub-CWIuUiPS.js} +1 -1
- package/dist/assets/{index-CClxMuo4.js → index-B1ohgJH3.js} +1 -1
- package/dist/assets/{insights.store-5bDCBYwf.js → insights.store-BG6EODoT.js} +1 -1
- package/dist/assets/{insights.store-C57C6rVT.js → insights.store-eVBZMv0v.js} +1 -1
- package/dist/assets/{insights.utils-D1hfWojs.js → insights.utils-CmMRndHT.js} +1 -1
- package/dist/assets/{instanceAi.store-CyOQECDS.js → instanceAi.store-CnehbyHu.js} +1 -1
- package/dist/assets/{instanceAiComputerUse.telemetry-l3PSklHA.js → instanceAiComputerUse.telemetry-CVpMMdju.js} +1 -1
- package/dist/assets/{instanceAiMcp.store-DkHqCPo7.js → instanceAiMcp.store-BCm6p-Ci.js} +1 -1
- package/dist/assets/{instanceAiMcp.store-D3hNroou.js → instanceAiMcp.store-Lji7Lcvg.js} +1 -1
- package/dist/assets/{instanceRoleScopes-DHTI4Kk5.js → instanceRoleScopes-D897OQQF.js} +1 -1
- package/dist/assets/{mcp.store-DBUsU60x.js → mcp.store-C-GDdn5R.js} +1 -1
- package/dist/assets/{postMessageUtils-Do_5spX4.js → postMessageUtils-CRI0Bw-q.js} +1 -1
- package/dist/assets/{projectRoleScopes-CMVTXcv3.js → projectRoleScopes-Div4LfSO.js} +1 -1
- package/dist/assets/{promotions.api-8oLcRMjJ.js → promotions.api-DaY0YinB.js} +1 -1
- package/dist/assets/{promotions.eventBus-Jcp-leEN.js → promotions.eventBus-BuEzB9T1.js} +1 -1
- package/dist/assets/{promotionsSettings.api-Dzr7obq-.js → promotionsSettings.api-D_GnxB_m.js} +1 -1
- package/dist/assets/{pushConnection.store-DM600MZi.js → pushConnection.store-DwKgMZKl.js} +1 -1
- package/dist/assets/{readyToRun.store-UKxYbyuO.js → readyToRun.store-Bd-_vQmA.js} +1 -1
- package/dist/assets/{readyToRunWorkflows.store-Qd2bhBxk.js → readyToRunWorkflows.store-gwznpOEh.js} +1 -1
- package/dist/assets/{resourceCenter.store-Dsxq0jrU.js → resourceCenter.store-CNwR6nUF.js} +1 -1
- package/dist/assets/{src-C5K9p_b1.js → src-BJsGS0qQ.js} +1 -1
- package/dist/assets/{src-BqAC6H6y.js → src-Cs8NRkVY.js} +1 -1
- package/dist/assets/{surfaceMcpToNewCloudUsers.store-C3nfbqlG.js → surfaceMcpToNewCloudUsers.store-BasAA_18.js} +1 -1
- package/dist/assets/{templateActions-Ct8dcNLE.js → templateActions-CUqx8zeK.js} +1 -1
- package/dist/assets/{thread-title-D0P5fwGs.js → thread-title-BAuiF61d.js} +1 -1
- package/dist/assets/{toolIcons-DZAhuVsr.js → toolIcons-pCcdHq7j.js} +1 -1
- package/dist/assets/{useActivityDetection-n09S498G.js → useActivityDetection-CGvbgOFC.js} +1 -1
- package/dist/assets/{useAgentConfirmationModal-DPPWT2nR.js → useAgentConfirmationModal-BnRPm5hJ.js} +1 -1
- package/dist/assets/{useAgentPublish-Cz8ycooW.js → useAgentPublish-DfVc47jk.js} +1 -1
- package/dist/assets/{useBuilderStreamingGuard-l4jWfYtd.js → useBuilderStreamingGuard-BDnIKHsc.js} +1 -1
- package/dist/assets/{useCustomAgent-Dksvxh2O.js → useCustomAgent-DEhxDEtJ.js} +1 -1
- package/dist/assets/{useDependencyMenu-jrOa7EOr.js → useDependencyMenu-BvTTdwr2.js} +1 -1
- package/dist/assets/{useEvalCollectionsFlag-BzQpvVTI.js → useEvalCollectionsFlag-BcXDg5uD.js} +1 -1
- package/dist/assets/{useEvaluationsLicense-CQhNLcSC.js → useEvaluationsLicense-BXGUa9dO.js} +1 -1
- package/dist/assets/{useExecutionData-Cy2NZqk9.js → useExecutionData-DjK1sCOA.js} +1 -1
- package/dist/assets/{useExecutionDebugging-B7rYCCod.js → useExecutionDebugging-Fgb-DIB0.js} +1 -1
- package/dist/assets/{useExposeAllWorkflowsToMcpOffer-Z9nZ9s7e.js → useExposeAllWorkflowsToMcpOffer-bVgKEisx.js} +1 -1
- package/dist/assets/{useExtensionDirectConnect-DY6RARCE.js → useExtensionDirectConnect-BIR9RceL.js} +1 -1
- package/dist/assets/{useFileDrop-DYMBrshR.js → useFileDrop-DWPt37GY.js} +1 -1
- package/dist/assets/{useImportCurlCommand-DYs98poy.js → useImportCurlCommand-DRNFHW4x.js} +1 -1
- package/dist/assets/{useInstanceAiThreadHistory-BL9JZMI8.js → useInstanceAiThreadHistory-CtHT6eCk.js} +1 -1
- package/dist/assets/{useInstancePromotionConnection-D9P6vZjR.js → useInstancePromotionConnection-DzotPtQb.js} +1 -1
- package/dist/assets/{useIsAssistantAtMentionsEnabled-C-inOoT5.js → useIsAssistantAtMentionsEnabled-FtGNvPGE.js} +1 -1
- package/dist/assets/{useLogsTreeExpand-CjQ070he.js → useLogsTreeExpand-DMGFKyvB.js} +1 -1
- package/dist/assets/{useMcpJsonNudgeEligibility-BErkBdsf.js → useMcpJsonNudgeEligibility-sZKBSjKe.js} +1 -1
- package/dist/assets/{useMcpJsonNudgeTrigger-BLadZQdx.js → useMcpJsonNudgeTrigger-CNo-6dP5.js} +1 -1
- package/dist/assets/{useOAuthClientRevoke-CLm4qwSi.js → useOAuthClientRevoke-DK28dTia.js} +1 -1
- package/dist/assets/{usePostMessageHandler-Bq9fo7db.js → usePostMessageHandler-Cw2HRrwC.js} +2 -2
- package/dist/assets/{usePushConnection-yOBZuYdK.js → usePushConnection-CYkBZGUS.js} +1 -1
- package/dist/assets/{usePushConnection-DhRtwDMc.js → usePushConnection-No0fkOJf.js} +1 -1
- package/dist/assets/{useRoleEditorForm-Dvo64W6Y.js → useRoleEditorForm-BxGy9qIa.js} +1 -1
- package/dist/assets/{useSecretsProvidersList.ee-DxqomjmN.js → useSecretsProvidersList.ee-ij71kpmd.js} +1 -1
- package/dist/assets/{useSettingsItems-Heurw80q.js → useSettingsItems-rjZ06Ko6.js} +1 -1
- package/dist/assets/{useSidebarLayout-BZxOA2sf.js → useSidebarLayout-BrBe7TIq.js} +1 -1
- package/dist/assets/{useWorkflowEvaluationState-DAZHBTN4.js → useWorkflowEvaluationState-7cI9tSGE.js} +1 -1
- package/dist/assets/{useWorkflowInitialization-Bf6qzxGp.js → useWorkflowInitialization-BAuBSCQw.js} +1 -1
- package/dist/assets/{useWorkflowsEmptyState-CKp_4nSH.js → useWorkflowsEmptyState-D-9OJ0jv.js} +1 -1
- package/dist/assets/{userRoleProvisioning.store-BTNUdACd.js → userRoleProvisioning.store-zvL6jl_u.js} +1 -1
- package/dist/assets/{vector-stores-DSScmK71.js → vector-stores-Df1YUd3a.js} +1 -1
- package/dist/assets/{workflowReviews.utils-CmT9Nkpv.js → workflowReviews.utils-BeDPhvPz.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/NodeCreation-
|
|
2
|
-
try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`61677f74-7dc0-4654-b8fa-9af54ac01d79`,e._sentryDebugIdIdentifier=`sentry-dbid-61677f74-7dc0-4654-b8fa-9af54ac01d79`)})()}catch{}import{$f as e,$u as t,Ad as n,Af as r,Bd as i,Cd as a,Dd as o,Ed as s,Ef as c,Hd as l,Id as u,Kd as d,Md as f,Nd as p,Od as m,Of as h,Qd as g,Sf as _,Td as v,Vd as y,Wd as b,Xd as x,Yd as S,Yu as C,Zd as w,Zf as T,_f as E,_u as D,as as O,bd as k,bf as A,cd as j,cf as M,hi as N,ho as P,if as F,is as ee,jd as I,md as te,np as L,ns as R,of as ne,pf as re,pi as z,po as B,td as V,uf as H,uu as ie,vd as ae,wd as U,wf as oe,xd as se,y as W,yd as ce,yf as le}from"./vendor-BBKxcFox.js";import{$ as ue,$C as G,$m as de,$o as fe,$s as pe,$y as me,Af as he,Au as ge,Ax as _e,BC as ve,B_ as ye,Bf as be,CC as xe,CS as Se,Cb as Ce,Cd as we,Cl as Te,Cn as Ee,Cu as De,DS as Oe,Df as ke,E_ as Ae,Ed as je,Ef as K,Ei as Me,En as Ne,FC as Pe,Fm as Fe,Fo as Ie,Fu as Le,GC as q,Gf as Re,Gm as ze,Gn as Be,H_ as Ve,Hb as He,Hl as Ue,Hn as We,Hs as Ge,Hu as Ke,IC as qe,I_ as Je,Ib as Ye,Iu as Xe,Jb as Ze,Jf as Qe,Jg as $e,Jn as et,Js as tt,Ju as nt,K as rt,Kn as it,Ko as at,L_ as ot,Ln as st,Lx as ct,Mb as lt,Mf as ut,Mm as dt,Mu as ft,Nf as pt,Nn as mt,Nu as ht,Oc as gt,Of as _t,Og as vt,On as yt,PC as bt,Pn as xt,Pu as J,Q as St,QC as Ct,Qn as wt,Qo as Tt,Qx as Et,R_ as Dt,Ru as Ot,SC as kt,Sc as At,Sd as jt,Sg as Mt,Sp as Nt,TC as Pt,Tb as Ft,Td as It,Tf as Lt,Tn as Rt,To as zt,U_ as Bt,Ub as Vt,Uc as Ht,Uf as Ut,Ul as Wt,Un as Gt,Vn as Kt,W_ as qt,Wc as Jt,Wf as Yt,Wm as Xt,Wn as Zt,Ws as Qt,Wu as $t,X as en,Xc as tn,Xd as nn,Xm as rn,Xs as an,Y as on,YS as sn,Yc as cn,Yh as ln,Yn as un,Ys as dn,Z as fn,ZC as pn,Zc as mn,Zf as hn,Zh as gn,Zn as _n,Zo as vn,_S as Y,_c as yn,_f as bn,ag as xn,at as Sn,ax as Cn,bC as wn,bd as Tn,bn as En,bp as Dn,bu as On,ch as kn,ci as An,cw as X,cx as jn,dd as Z,dh as Mn,di as Nn,eu as Pn,ew as Q,ex as Fn,fC as In,fi as Ln,fu as Rn,gS as zn,hC as Bn,hn as Vn,ic as Hn,id as Un,im as Wn,it as Gn,iw as Kn,ix as qn,jb as Jn,jc as Yn,jf as Xn,jn as Zn,kf as Qn,kn as $n,lf as er,li as tr,mi as nr,mu as rr,nc as ir,nd as ar,nt as or,oc as sr,of as cr,oh as lr,om as ur,ot as dr,pf as fr,ph as pr,q as mr,qC as hr,qS as gr,qf as _r,qn as vr,qo as yr,qs as br,rc as xr,rf as Sr,rl as Cr,rw as $,rx as wr,sc as Tr,sf as Er,st as Dr,td as Or,tf as kr,tl as Ar,tu as jr,tx as Mr,ui as Nr,um as Pr,uu as Fr,vd as Ir,vp as Lr,vu as Rr,wb as zr,wd as Br,wi as Vr,xn as Hr,xy as Ur,yC as Wr,yf as Gr,zu as Kr}from"./app-DVNMq1uL.js";import{t as qr}from"./usePostMessageHandler-Bq9fo7db.js";import{t as Jr}from"./useMcpJsonNudgeTrigger-BLadZQdx.js";import{n as Yr,t as Xr}from"./EvaluationsPaywall-DKdQcTVp.js";import{t as Zr}from"./useExecutionData-Cy2NZqk9.js";import{a as Qr,c as $r,d as ei,i as ti,l as ni,n as ri,o as ii,r as ai,s as oi,t as si,u as ci}from"./evaluation.constants-CoqV6UIR.js";import{t as li}from"./useEvaluationsLicense-CQhNLcSC.js";import{t as ui}from"./useActivityDetection-n09S498G.js";var di=$(p({inheritAttrs:!1,__name:`WorkflowCanvas`,props:{id:{default:`canvas`},fallbackNodes:{default:()=>[]},showFallbackNodes:{type:Boolean,default:!0},eventBus:{default:()=>Wr()},readOnly:{type:Boolean},groupExpansionMode:{default:void 0},canExecute:{type:Boolean},executing:{type:Boolean},suppressInteraction:{type:Boolean,default:!1},stripedBackground:{type:Boolean,default:!0},initialViewport:{}},setup(e,{expose:t}){let n=e,i=ne(`canvas`),s=te(),c=Z(),l=oe(Ut()),u;M(()=>c.value.documentId,e=>{u?.stop(),u=re(!0),u.run(()=>{l.value=Kt(e)})},{immediate:!0}),le(()=>u?.stop());let{onNodesInitialized:d,viewport:f,viewportRef:p,getNodes:m,fitBounds:h}=N(n.id),v=a(()=>n.showFallbackNodes?[...c.value.allNodes,...n.fallbackNodes]:c.value.allNodes),b=a(()=>c.value.connectionsBySourceNode),w=Be({workflowId:()=>c.value.workflowId,getCurrentGroupIds:()=>c.value.allGroups.map(e=>e.id),onNodeGroupsChange:e=>c.value.onNodeGroupsChange(e),getGroupExpansionMode:()=>n.groupExpansionMode}),E=et({workflowId:()=>c.value.workflowId,getCurrentGroups:()=>c.value.allGroups,onNodeGroupsChange:e=>c.value.onNodeGroupsChange(e)});M(()=>c.value.documentId,()=>{w.reinitialize(),V(),E.reinitialize()});let D=a(()=>c.value.allGroups),O=a(()=>n.readOnly??!1),k=a(()=>n.suppressInteraction??!1),A=mn(),j=a(()=>A.isActive(f.value.zoom)),P=Jt(),{nodes:F,connections:ee,nodeDisplaySizeById:L,getNodeExecutionSnapshot:R}=We({nodes:v,connections:b,renderData:l,allGroups:D,nodeGroupView:w,isExperimentalNdvActive:j,getAgentNodeHeight:e=>P.getNodeHeight(n.id,e)}),B=a(()=>{switch(n.groupExpansionMode){case`all`:return D.value.map(e=>e.id);case`errored`:return D.value.filter(e=>tr(e.nodeIds,R)===`error`).map(e=>e.id);default:return[]}});function V(){for(let e of B.value)w.setGroupExpanded(e,!0)}M(B,V,{immediate:!0}),M(a(()=>c.value.allGroups.length===0?[]:it({allGroups:c.value.allGroups,nodes:v.value,getNodeById:e=>c.value.getNodeById(e),getNodeDisplaySize:e=>L.value[e],isGroupCollapsed:e=>w.isGroupCollapsed(e)})),e=>w.syncLayoutComponents(e),{immediate:!0});let H=a(()=>Nr({allGroups:D.value,getNodeById:e=>c.value.getNodeById(e),getNodeDisplaySize:e=>L.value[e],getGroupVisualOffset:e=>w.getVisualOffsetForComponent(e),isGroupCollapsed:e=>w.isGroupCollapsed(e),readOnly:O.value||k.value,getNodeExecutionSnapshot:R})),ie=a(()=>[...F.value,...H.value]);x(Zt,w),x(vr,E),x(Ln,{isGroupCollapsed:e=>w.isGroupCollapsed(e),isDescriptionVisible:e=>E.isVisible(e)});let ae=_(!1),{off:se}=d(()=>{ae.value||(n.initialViewport||n.eventBus.emit(`fitView`),ae.value=!0,se())}),W=C(ie,200),ce=C(ee,200);return t({executeContextMenuAction:(e,t)=>i.value?.executeContextMenuAction(e,t),ensureNodesAreVisible:e=>{let t=p.value;if(!t)return;let r=m.value.filter(t=>e.includes(t.id));if(r.length===0)return;let i=d(()=>{let a=f.value,o=t.clientWidth,s=t.clientHeight,c=z(r),l=c.x*a.zoom+a.x,u=c.y*a.zoom+a.y,d=c.width*a.zoom,p=c.height*a.zoom;if(!(l>=0&&u>=0&&l+d<=o&&u+p<=s)){let e={x:-a.x/a.zoom,y:-a.y/a.zoom,width:o/a.zoom,height:s/a.zoom},t=Math.min(e.x,c.x),n=Math.min(e.y,c.y),r=Math.max(e.x+e.width,c.x+c.width),i=Math.max(e.y+e.height,c.y+c.height);h({x:t,y:n,width:r-t,height:i-n},{padding:.15,duration:100})}n.eventBus.emit(`nodes:select`,{ids:e}),i.off()})}}),(t,n)=>(S(),o(`div`,{class:T(r(s).wrapper),"data-test-id":`canvas-wrapper`},[U(`div`,{id:`canvas`,class:T(r(s).canvas)},[I(Gt,y({id:e.id,ref:`canvas`,nodes:e.executing?r(W):ie.value,connections:e.executing?r(ce):r(ee),"render-data":l.value,"node-display-size-by-id":r(L),"event-bus":e.eventBus,"read-only":e.readOnly,"can-execute":e.canExecute,executing:e.executing,"suppress-interaction":e.suppressInteraction,"striped-background":e.stripedBackground,"initial-viewport":e.initialViewport},t.$attrs),null,16,[`id`,`nodes`,`connections`,`render-data`,`node-display-size-by-id`,`event-bus`,`read-only`,`can-execute`,`executing`,`suppress-interaction`,`striped-background`,`initial-viewport`])],2),g(t.$slots,`default`)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_ainvf_1`,canvas:`_canvas_ainvf_9`}}]]),fi=$(p({__name:`FocusSidebarTabs`,props:{modelValue:{default:`setup`},tabLabels:{default:()=>({})}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=X(),i=De(),s=cn(),c=a(()=>s.isFeatureEnabled),{isFeatureEnabled:l}=Yr(),u=e,d=t,f=a(()=>{let e=[];return c.value&&e.push({label:u.tabLabels?.setup??n.baseText(`setupPanel.tabs.setup`),value:`setup`}),e.push({label:u.tabLabels?.focus??n.baseText(`setupPanel.tabs.focus`),value:`focus`}),l.value&&e.push({label:u.tabLabels?.evaluations??n.baseText(`setupPanel.tabs.evaluations`),value:`evaluations`}),e}),p=e=>{d(`update:modelValue`,e)};return(t,n)=>(S(),o(`div`,{class:T(t.$style.container),"data-test-id":`setup-panel-tabs`},[I(r(zn),{"model-value":e.modelValue,options:f.value,size:`small`,"onUpdate:modelValue":p},null,8,[`model-value`,`options`]),U(`button`,{"data-test-id":`setup-panel-close`,class:T(t.$style[`close-button`]),onClick:n[0]||=e=>r(i).closeFocusPanel()},[I(r(Q),{icon:`x`,size:`small`})],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_2u5bd_1`,"close-button":`_close-button_2u5bd_18`}}]]),pi=[`data-test-id`],mi=[`data-test-id`],hi=p({__name:`SetupCard`,props:i({isComplete:{type:Boolean},loading:{type:Boolean,default:!1},cardTestId:{},title:{},showFooter:{type:Boolean,default:!0},executableNode:{default:null},isTrigger:{type:Boolean,default:!1},isTestingCredential:{type:Boolean,default:!1},highlightNodeIds:{default:()=>[]},telemetryPayload:{default:()=>({})}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:[`update:expanded`],setup(e,{expose:t}){let i=e,c=F(e,`expanded`),l=X(),u=ye(),d=cn(),f=Z(),p=_(!1),m=()=>{p.value=!0},h=()=>{c.value=!c.value},y=()=>{i.highlightNodeIds.length>0&&d.setHighlightedNodes(i.highlightNodeIds)},x=()=>{i.highlightNodeIds.length>0&&d.clearHighlightedNodes()},C=a(()=>i.executableNode??null),{isExecuting:w,isButtonDisabled:E,label:D,buttonIcon:O,tooltipItems:A,execute:N,isInListeningState:P,listeningHint:ee}=St(C),{webhookUrls:te}=fn(C),R=a(()=>i.executableNode?.type===`@n8n/n8n-nodes-langchain.chatTrigger`&&P.value?!1:!!i.executableNode),ne=a(()=>i.isTrigger&&P.value),re=async()=>{await N(),m()};return b(()=>{d.clearHighlightedNodes()}),M(()=>i.isComplete,e=>{e&&p.value&&(u.track(`User completed setup step`,{template_id:f?.value?.meta?.templateId,workflow_id:f?.value?.workflowId,...i.telemetryPayload}),p.value=!1)}),t({markInteracted:m}),(t,i)=>(S(),o(`div`,{"data-test-id":e.cardTestId,class:T([t.$style.card,{[t.$style.collapsed]:!c.value,[t.$style.completed]:e.isComplete,[t.$style[`no-footer`]]:!e.showFooter&&c.value}]),onMouseenter:y,onMouseleave:x},[U(`header`,{"data-test-id":`${e.cardTestId}-header`,class:T(t.$style.header),onClick:h},[!c.value&&e.loading&&!e.isComplete?(S(),v(r(Q),{key:0,"data-test-id":`${e.cardTestId}-loading-icon`,icon:`spinner`,spin:!0,class:T(t.$style[`loading-icon`]),size:`medium`},null,8,[`data-test-id`,`class`])):!c.value&&e.isComplete?(S(),v(r(Q),{key:1,"data-test-id":`${e.cardTestId}-complete-icon`,icon:`check`,class:T(t.$style[`complete-icon`]),size:`medium`},null,8,[`data-test-id`,`class`])):g(t.$slots,`icon`,{key:2},void 0,!0),I(r(q),{class:T(t.$style[`card-title`]),size:`medium`,color:`text-dark`},{default:H(()=>[n(L(e.title),1)]),_:1},8,[`class`]),U(`div`,{class:T(t.$style[`header-extra`])},[g(t.$slots,`header-extra`,{},void 0,!0)],2),I(r(Q),{class:T(t.$style.chevron),icon:c.value?`chevrons-down-up`:`chevrons-up-down`,size:`large`,color:`text-light`},null,8,[`class`,`icon`])],10,mi),c.value?(S(),o(k,{key:0},[g(t.$slots,`card-description`,{},void 0,!0),I(j,{name:`callout-fade`},{default:H(()=>[ne.value?(S(),o(`div`,{key:0,class:T(t.$style[`callout-grid`])},[U(`div`,{class:T(t.$style[`callout-inner`])},[I(r(Pt),{"data-test-id":`trigger-listening-callout`,theme:`secondary`,class:T(t.$style.callout)},{default:H(()=>[n(L(r(ee)),1)]),_:1},8,[`class`])],2)],2)):s(``,!0)]),_:1}),e.isTrigger&&r(P)&&r(te).length>0?(S(),v(dr,{key:0,urls:r(te)},null,8,[`urls`])):s(``,!0),g(t.$slots,`default`,{},void 0,!0),e.showFooter?(S(),o(`footer`,{key:1,class:T(t.$style.footer)},[e.isComplete?(S(),o(`div`,{key:0,class:T(t.$style[`footer-complete-check`])},[I(r(Q),{icon:`check`,class:T(t.$style[`complete-icon`]),size:`large`},null,8,[`class`]),I(r(q),{size:`medium`,color:`success`},{default:H(()=>[n(L(r(l).baseText(`generic.complete`)),1)]),_:1})],2)):s(``,!0),g(t.$slots,`footer-actions`,{},void 0,!0),R.value?(S(),v(Dr,{key:1,label:r(D),icon:r(O),disabled:r(E)||e.isTestingCredential,loading:r(w),"tooltip-items":r(A),onClick:re},null,8,[`label`,`icon`,`disabled`,`loading`,`tooltip-items`])):s(``,!0)],2)):s(``,!0)],64)):s(``,!0)],42,pi))}}),gi=`_card_gqw1c_1`,_i=`_header_gqw1c_14`,vi=`_chevron_gqw1c_25`,yi=`_collapsed_gqw1c_34`,bi=`_footer_gqw1c_59`,xi=`_completed_gqw1c_86`,Si=`_callout_gqw1c_93`,Ci=$(hi,[[`__cssModules`,{$style:{card:gi,"no-footer":`_no-footer_gqw1c_10`,header:_i,"header-extra":`_header-extra_gqw1c_22`,chevron:vi,collapsed:yi,"card-title":`_card-title_gqw1c_38`,"complete-icon":`_complete-icon_gqw1c_43`,"loading-icon":`_loading-icon_gqw1c_52`,footer:bi,"footer-complete-check":`_footer-complete-check_gqw1c_66`,completed:xi,callout:Si,"callout-grid":`_callout-grid_gqw1c_97`,"callout-inner":`_callout-inner_gqw1c_102`}}],[`__scopeId`,`data-v-119aeb94`]]),wi=$(p({__name:`NodeSetupCard`,props:i({state:{},firstTriggerName:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:i([`credentialSelected`,`credentialDeselected`],[`update:expanded`]),setup(e,{emit:t}){let i=e,o=F(e,`expanded`),c=t,l=X(),u=Tn(),d=kr(),f=ge(),p=Z(),h=_(null),g=a(()=>u.getNodeType(i.state.node.type,i.state.node.typeVersion)),y=a(()=>!!i.state.credentialType),b=a(()=>i.state.isTrigger?!i.firstTriggerName||i.state.node.type===`n8n-nodes-base.manualTrigger`?null:i.state.node.name===i.firstTriggerName?i.state.node:null:f.isNodeExecutable(i.state.node,!0,[])?i.state.node:null),x=a(()=>{let e=i.state.selectedCredentialId;return!!e&&d.isCredentialTestPending(e)}),C=a(()=>!y.value||b.value!==null||i.state.isComplete),w=a(()=>Object.keys(i.state.parameterIssues).length>0),E=_([]),D=a(()=>E.value.length>0),O=a(()=>i.state.isTrigger&&!y.value&&!D.value),k=a(()=>y.value&&!D.value&&!O.value),A=a(()=>{let e=[];return O.value&&e.push(`trigger`),y.value&&e.push(`credential`),w.value&&e.push(`param`),{type:e,template_id:p.value.meta?.templateId,workflow_id:p.value.workflowId,node_types:(i.state.allNodesUsingCredential??[i.state.node]).map(e=>e.type),credential_type:i.state.credentialType,has_parameters:w.value,missing_parameters_count:Object.keys(i.state.parameterIssues).length}}),j=()=>{h.value?.markInteracted()},N=_(Object.keys(i.state.parameterIssues).length===0),P=a(()=>N.value||(i.state.additionalParameterNames?.length??0)>0&&Object.keys(i.state.parameterIssues).length===0),ee=_(!i.state.isAutoApplied);M(()=>i.state.isAutoApplied??!1,e=>{e||(ee.value=!0)}),M(o,(e,t)=>{t&&!e&&(Object.keys(i.state.parameterIssues).length===0&&(N.value=!0),i.state.isAutoApplied&&(ee.value=!0))});let te=a(()=>D.value?i.state.isComplete&&P.value&&ee.value:i.state.isComplete&&ee.value),R=a(()=>(i.state.allNodesUsingCredential??[i.state.node]).map(({id:e})=>e));return(t,i)=>(S(),v(Ci,{ref_key:`setupCard`,ref:h,expanded:o.value,"onUpdate:expanded":i[3]||=e=>o.value=e,"is-complete":te.value,loading:x.value,title:e.state.node.name,"show-footer":C.value,"executable-node":b.value,"is-trigger":e.state.isTrigger,"is-testing-credential":x.value,"telemetry-payload":A.value,"highlight-node-ids":R.value,"card-test-id":`node-setup-card`},m({icon:H(()=>[k.value?(S(),v(Yn,{key:0,"credential-type-name":e.state.credentialType,size:16},null,8,[`credential-type-name`])):(S(),v(yn,{key:1,"node-type":g.value,size:16},null,8,[`node-type`]))]),"card-description":H(()=>[e.state.isTrigger&&y.value&&!e.state.selectedCredentialId?(S(),v(r(q),{key:0,size:`medium`,color:`text-base`,class:`pl-xs pr-xs`},{default:H(()=>[n(L(r(l).baseText(`setupPanel.trigger.credential.note`)),1)]),_:1})):D.value?(S(),v(r(q),{key:1,size:`medium`,color:`text-base`,class:`pl-xs pr-xs`},{default:H(()=>[n(L(r(l).baseText(`setupPanel.parameter.description`)),1)]),_:1})):s(``,!0)]),default:H(()=>[O.value?s(``,!0):(S(),v(Sn,{key:0,state:e.state},{default:H(()=>[U(`div`,{class:T(t.$style.content)},[I(ue,{state:e.state,"sticky-parameters":E.value,onCredentialSelected:i[0]||=e=>{j(),c(`credentialSelected`,e)},onCredentialDeselected:i[1]||=e=>{j(),c(`credentialDeselected`,e)},onInteracted:j,onParametersDiscovered:i[2]||=e=>E.value.push(...e)},null,8,[`state`,`sticky-parameters`])],2)]),_:1},8,[`state`]))]),_:2},[O.value?{name:`header-extra`,fn:H(()=>[I(r(hr),null,{content:H(()=>[n(L(r(l).baseText(`nodeCreator.nodeItem.triggerIconTitle`)),1)]),default:H(()=>[I(r(Q),{icon:`zap`,size:`small`,color:`text-light`})]),_:1})]),key:`0`}:void 0]),1032,[`expanded`,`is-complete`,`loading`,`title`,`show-footer`,`executable-node`,`is-trigger`,`is-testing-credential`,`telemetry-payload`,`highlight-node-ids`]))}}),[[`__cssModules`,{$style:{content:`_content_uaete_1`}}]]),Ti=[`onMouseenter`],Ei=[`onClick`],Di=$(p({__name:`NodeGroupSetupCard`,props:i({nodeGroup:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:i([`credentialSelected`,`credentialDeselected`],[`update:expanded`]),setup(e,{emit:t}){let i=e,l=F(e,`expanded`),u=t,d=ge(),f=Z(),p=cn(),m=_(null),{parentNodeType:h,subnodeSections:g,allSections:y,getStickyParameters:b,addStickyParameters:x,expandedSections:C,toggleSection:E,hoveredSection:D,onSectionMouseEnter:O,onSectionMouseLeave:A,getSectionNodeType:j}=en(c(i,`nodeGroup`)),N=a(()=>{let e=i.nodeGroup.parentNode;return d.isNodeExecutable(e,!0,[])?e:null}),P=a(()=>or({nodeGroup:i.nodeGroup})),ee=a(()=>{let e=new Set([i.nodeGroup.parentNode.id]);for(let t of y.value)e.add(t.node.id);return[...e]}),te=a(()=>D.value?(D.value.allNodesUsingCredential??[D.value.node]).map(e=>e.id):ee.value);M(te,e=>{l.value&&p.setHighlightedNodes(e)}),M(l,(e,t)=>{t&&!e&&(D.value=null)});let R=a(()=>y.value.some(on)),ne=a(()=>({type:[`node-group`],template_id:f.value.meta?.templateId,workflow_id:f.value.workflowId,node_types:y.value.map(e=>e.node.type),has_parameters:R.value})),re=a(()=>N.value!==null),z=()=>{m.value?.markInteracted()};return(t,i)=>(S(),v(Ci,{ref_key:`setupCard`,ref:m,expanded:l.value,"onUpdate:expanded":i[8]||=e=>l.value=e,"is-complete":P.value,title:e.nodeGroup.parentNode.name,"show-footer":re.value,"executable-node":N.value,"telemetry-payload":ne.value,"highlight-node-ids":te.value,"card-test-id":`node-group-setup-card`},{icon:H(()=>[I(yn,{"node-type":r(h),size:16},null,8,[`node-type`])]),default:H(()=>[e.nodeGroup.parentState?(S(),o(`div`,{key:0,class:T(t.$style.parentBody),onMouseenter:i[3]||=t=>r(O)(e.nodeGroup.parentState),onMouseleave:i[4]||=(...e)=>r(A)&&r(A)(...e)},[I(Sn,{state:e.nodeGroup.parentState},{default:H(()=>[I(ue,{state:e.nodeGroup.parentState,"sticky-parameters":r(b)(e.nodeGroup.parentState.node.id),onCredentialSelected:i[0]||=e=>{z(),u(`credentialSelected`,e)},onCredentialDeselected:i[1]||=e=>{z(),u(`credentialDeselected`,e)},onInteracted:z,onParametersDiscovered:i[2]||=t=>r(x)(e.nodeGroup.parentState.node.id,t)},null,8,[`state`,`sticky-parameters`])]),_:1},8,[`state`])],34)):s(``,!0),U(`div`,{class:T(t.$style.sections),"data-test-id":`node-group-sections`},[(S(!0),o(k,null,w(r(g),e=>(S(),o(`div`,{key:e.node.id,class:T(t.$style.section),"data-test-id":`node-group-section`,onMouseenter:t=>r(O)(e),onMouseleave:i[7]||=(...e)=>r(A)&&r(A)(...e)},[U(`div`,{class:T(t.$style.sectionHeader),"data-test-id":`node-group-section-header`,onClick:t=>r(E)(e.node.id)},[e.isComplete?(S(),v(r(Q),{key:0,icon:`check`,size:`small`,class:T(t.$style.sectionCheck)},null,8,[`class`])):(S(),v(yn,{key:1,"node-type":r(j)(e),size:14},null,8,[`node-type`])),I(r(q),{class:T(t.$style.sectionTitle),size:`medium`,color:`text-dark`},{default:H(()=>[n(L(e.node.name),1)]),_:2},1032,[`class`]),I(r(Q),{class:T(t.$style.sectionChevron),icon:r(C)[e.node.id]?`chevrons-down-up`:`chevrons-up-down`,size:`large`,color:`text-light`},null,8,[`class`,`icon`])],10,Ei),r(C)[e.node.id]?(S(),o(`div`,{key:0,class:T(t.$style.sectionContent)},[I(Sn,{state:e},{default:H(()=>[I(ue,{state:e,"sticky-parameters":r(b)(e.node.id),onCredentialSelected:i[5]||=e=>{z(),u(`credentialSelected`,e)},onCredentialDeselected:i[6]||=e=>{z(),u(`credentialDeselected`,e)},onInteracted:z,onParametersDiscovered:t=>r(x)(e.node.id,t)},null,8,[`state`,`sticky-parameters`,`onParametersDiscovered`])]),_:2},1032,[`state`])],2)):s(``,!0)],42,Ti))),128))],2)]),_:1},8,[`expanded`,`is-complete`,`title`,`show-footer`,`executable-node`,`telemetry-payload`,`highlight-node-ids`]))}}),[[`__cssModules`,{$style:{parentBody:`_parentBody_xc0ia_1`,sections:`_sections_xc0ia_5`,section:`_section_xc0ia_5`,sectionHeader:`_sectionHeader_xc0ia_16`,sectionChevron:`_sectionChevron_xc0ia_23`,sectionTitle:`_sectionTitle_xc0ia_30`,sectionCheck:`_sectionCheck_xc0ia_35`,sectionContent:`_sectionContent_xc0ia_39`}}]]),Oi=$(p({__name:`SetupPanelCards`,props:{showCompleted:{type:Boolean,default:!0}},setup(e){let t=e,i=X(),c=ye(),l=vn(),u=Z(),{setupCards:d,isAllComplete:f,setCredential:p,unsetCredential:m,firstTriggerName:h}=mr();M(f,e=>{e&&c.track(`User completed all setup steps`,{template_id:u?.value?.meta?.templateId,workflow_id:l.value})});let g=e=>{p(e.credentialType,e.credentialId,e.nodeName)},_=e=>{m(e.credentialType,e.nodeName)},y=a(()=>t.showCompleted?d.value:d.value.filter(e=>!or(e))),b=e=>Gn(e)?`group-${e.nodeGroup.parentNode.id}`:e.state.credentialType?`${e.state.credentialType}-${e.state.node.id}`:`${e.state.node.id}`,x=A({}),C=new Map,E=new Set,D=!1,O=e=>x[e]??!1,j=(e,t)=>e.find((e,n)=>n>t&&!or(e)),N=(e,t)=>{if(x[e]=t,!t){let t=d.value,n=t.findIndex(t=>b(t)===e),r=t[n];if(r&&or(r)&&E.has(e)){let e=j(t,n);e&&(x[b(e)]=!0)}}};return M(d,e=>{for(let t of e){let e=b(t);E.has(e)||(Gn(t)?[...t.nodeGroup.parentState?[t.nodeGroup.parentState]:[],...t.nodeGroup.subnodeCards].some(on)&&E.add(e):on(t.state)&&E.add(e))}if(D){let t=j(e,-1);if(t&&!C.has(b(t))){let n=e.findIndex(e=>x[b(e)]);n>e.indexOf(t)&&(x[b(e[n])]=!1,x[b(t)]=!0)}for(let t=0;t<e.length;t++){let n=e[t],r=b(n),i=C.get(r)??!1,a=or(n),o=Gn(n)?[...n.nodeGroup.parentState?[n.nodeGroup.parentState]:[],...n.nodeGroup.subnodeCards].some(e=>e.isAutoApplied):n.state.isAutoApplied;if(a&&!i&&!E.has(r)){if(x[r]=!1,!o||e.every((e,n)=>n===t||!x[b(e)])){let n=j(e,t);n&&(x[b(n)]=!0)}break}}}else{if(e.length===0)return;let t=j(e,-1);t&&(x[b(t)]=!0),D=!0}C.clear();for(let t of e)C.set(b(t),or(t))},{deep:!0,immediate:!0}),(e,t)=>(S(),o(`div`,{class:T(e.$style.container),"data-test-id":`setup-panel-cards-container`},[r(d).length===0?(S(),o(`div`,{key:0,class:T(e.$style[`empty-state`]),"data-test-id":`setup-cards-empty`},[I(r(Q),{icon:`list-checks`,class:T(e.$style[`empty-icon`]),size:24,color:`text-base`},null,8,[`class`]),U(`div`,{class:T(e.$style[`empty-text`])},[I(r(q),{size:`medium`,color:`text-base`,bold:!0,"data-test-id":`setup-cards-empty-heading`},{default:H(()=>[n(L(r(i).baseText(`setupPanel.empty.heading`)),1)]),_:1}),I(r(q),{size:`medium`,color:`text-light`,"data-test-id":`setup-cards-empty-description`},{default:H(()=>[n(L(r(i).baseText(`setupPanel.empty.description`)),1)]),_:1})],2)],2)):(S(),o(`div`,{key:1,class:T(e.$style[`card-list`]),"data-test-id":`setup-cards-list`},[(S(!0),o(k,null,w(y.value,e=>(S(),o(k,{key:b(e)},[e.nodeGroup?(S(),v(Di,{key:0,"node-group":e.nodeGroup,expanded:O(b(e)),"onUpdate:expanded":t=>N(b(e),t),onCredentialSelected:g,onCredentialDeselected:_},null,8,[`node-group`,`expanded`,`onUpdate:expanded`])):(S(),v(wi,{key:1,state:e.state,"first-trigger-name":r(h),expanded:O(b(e)),"onUpdate:expanded":t=>N(b(e),t),onCredentialSelected:g,onCredentialDeselected:_},null,8,[`state`,`first-trigger-name`,`expanded`,`onUpdate:expanded`]))],64))),128)),r(f)?(S(),o(`div`,{key:0,class:T(e.$style[`complete-message`]),"data-test-id":`setup-cards-complete-message`},[I(r(q),{size:`medium`,color:`text-base`},{default:H(()=>[n(L(r(i).baseText(`setupPanel.everythingConfigured.message`)),1)]),_:1})],2)):s(``,!0)],2))],2))}}),[[`__cssModules`,{$style:{container:`_container_9tg0x_1`,"card-list":`_card-list_9tg0x_2`,"empty-state":`_empty-state_9tg0x_10`,"empty-text":`_empty-text_9tg0x_20`,"complete-message":`_complete-message_9tg0x_26`}}]]),ki=$(p({__name:`SetupPanel`,setup(e){let t=X(),i=_(!0);return(e,a)=>(S(),o(`div`,{class:T(e.$style.container),"data-test-id":`setup-panel-container`},[U(`div`,{class:T(e.$style.content),"data-test-id":`setup-panel-cards`},[I(Oi,{"show-completed":i.value},null,8,[`show-completed`])],2),U(`footer`,{class:T(e.$style.footer),"data-test-id":`setup-panel-footer`},[I(r(q),{class:T(e.$style[`toggle-label`]),tag:`label`,size:`small`},{default:H(()=>[I(r(Y),{modelValue:i.value,"onUpdate:modelValue":a[0]||=e=>i.value=e,size:`small`},null,8,[`modelValue`]),n(` `+L(r(t).baseText(`setupPanel.showCompleted`)),1)]),_:1},8,[`class`])],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_o3lgs_1`,content:`_content_o3lgs_12`,footer:`_footer_o3lgs_22`,"toggle-label":`_toggle-label_o3lgs_32`}}]]),Ai=$(p({__name:`ExperimentalNodeDetailsDrawer`,props:{node:{},nodeIds:{},isReadOnly:{type:Boolean}},emits:[`openNdv`,`contextMenuAction`],setup(e,{emit:t}){let i=t,c=_n(a(()=>e.node)),l=Nn(a(()=>e.nodeIds)),u=er(),d=_(0),f=a(()=>[e.node.id,d.value].join(`|`));return M(()=>u.value.activeNodeName,(e,t)=>{e===null&&t!==null&&(d.value+=1)}),x($e,c),(t,a)=>(S(),o(`div`,{class:T(t.$style.component)},[e.nodeIds.length>1?(S(),v(r(q),{key:0,tag:`div`,color:`text-base`,class:T(t.$style.multipleNodes)},{default:H(()=>[U(`div`,null,L(e.nodeIds.length)+` nodes selected`,1),U(`ul`,{class:T(t.$style.multipleNodesActions)},[(S(!0),o(k,null,w(r(l),a=>(S(),o(`li`,{key:a.id,class:T(t.$style.multipleNodesAction)},[I(r(G),{variant:`subtle`,disabled:a.disabled,onClick:t=>i(`contextMenuAction`,a.id,e.nodeIds)},{default:H(()=>[n(L(a.label)+` `,1),a.shortcut?(S(),v(r(Pe),y({key:0,ref_for:!0},a.shortcut),null,16)):s(``,!0)]),_:2},1032,[`disabled`,`onClick`])],2))),128))],2)]),_:1},8,[`class`])):e.node?(S(),v(wt,{key:f.value,"node-id":e.node.id,"is-read-only":e.isReadOnly},null,8,[`node-id`,`is-read-only`])):s(``,!0)],2))}}),[[`__cssModules`,{$style:{component:`_component_1qt9j_1`,multipleNodes:`_multipleNodes_1qt9j_6`,multipleNodesActions:`_multipleNodesActions_1qt9j_16`,multipleNodesAction:`_multipleNodesAction_1qt9j_16`}}]]),ji=$(p({__name:`ExperimentalFocusPanelHeader`,props:{node:{},parameter:{},isExecutable:{type:Boolean},readOnly:{type:Boolean}},emits:[`execute`,`openNdv`,`clearParameter`,`renameNode`],setup(e,{emit:t}){let i=t,c=Tn(),l=X(),u=a(()=>c.getNodeType(e.node.type,e.node.typeVersion));return(t,a)=>(S(),v(r(q),{tag:`header`,size:`small`,bold:``,class:T(t.$style.component)},{default:H(()=>[I(yn,{"node-type":u.value,size:16},null,8,[`node-type`]),U(`div`,{class:T(t.$style.breadcrumbs)},[e.parameter?(S(),o(k,{key:0},[I(r(q),{size:`small`,color:`text-base`,bold:``},{default:H(()=>[n(L(e.node.name),1)]),_:1}),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[...a[4]||=[n(`/`,-1)]]),_:1}),n(` `+L(e.parameter.displayName),1)],64)):(S(),v(r(Et),{key:1,"model-value":e.node.name,"min-width":0,"max-width":500,placeholder:r(l).baseText(`ndv.title.rename.placeholder`),"read-only":e.readOnly,"onUpdate:modelValue":a[0]||=e=>i(`renameNode`,e)},null,8,[`model-value`,`placeholder`,`read-only`]))],2),e.parameter?(S(),v(r(Ct),{key:0,variant:`ghost`,icon:`x`,size:`small`,onClick:a[1]||=e=>i(`clearParameter`)})):(S(),v(r(Ct),{key:1,variant:`ghost`,icon:`expand`,size:`small`,onClick:a[2]||=e=>i(`openNdv`)})),e.isExecutable?(S(),v(xr,{key:2,"data-test-id":`node-execute-button`,"node-name":e.node.name,tooltip:`Execute ${e.node.name}`,variant:`subtle`,size:`small`,icon:`play`,square:!0,"hide-label":!0,"telemetry-source":`focus`,onExecute:a[3]||=e=>i(`execute`)},null,8,[`node-name`,`tooltip`])):s(``,!0)]),_:1},8,[`class`]))}}),[[`__cssModules`,{$style:{component:`_component_1ijt6_1`,breadcrumbs:`_breadcrumbs_1ijt6_9`}}]]),Mi=$(p({name:`FocusPanel`,__name:`FocusPanel`,props:{isCanvasReadOnly:{type:Boolean}},emits:[`focus`,`saveKeyboardShortcut`,`contextMenuAction`],setup(e,{emit:t}){let i=e,u=t,d=_(),f=X(),p=ge(),m=De(),h=vn(),g=Z(),y=a(()=>ar(g.value.documentId)),b=Tn(),x=cn(),C=ye(),w=fe(),E=fr(),D=mn(),O=er(),A=N(h.value),{renameNode:j}=Ht(),P=a(()=>m.resolvedParameter),F=_(``),ee=ie(async()=>{if(!P.value)return!1;let e=P.value.parameterPath.split(`.`).slice(1,-1).join(`.`);return!!P.value.parameter.disabledOptions&&await w.shouldDisplayNodeParameter(P.value.node.parameters,P.value.node,P.value.parameter,e,`disabledOptions`)},!1),te=ie(async()=>{if(!P.value)return!0;let e=P.value.parameterPath.split(`.`).slice(1,-1).join(`.`);return await w.shouldDisplayNodeParameter(P.value.node.parameters,P.value.node,P.value.parameter,e,`displayOptions`)},!0),R=a(()=>{if(!D.isNdvInFocusPanelEnabled||P.value)return P.value?.node;let e=A.getSelectedNodes.value[0];return e?.data?.render.type===Dn.Default?(g?.value?.allNodes??[]).find(t=>t.id===e.id):void 0}),ne=a(()=>A.getSelectedNodes.value.length>1),re=a(()=>{if(!R.value||!te.value)return!1;let e=p.getForeignCredentialsIfSharingEnabled(R.value.credentials);return p.isNodeExecutable(R.value,!i.isCanvasReadOnly,e)}),{workflowRunData:z}=Zr({node:R}),B=a(()=>{if(!R.value)return!0;let e=g?.value?.getParentNodes(R.value.name,`main`,1)[0];return!!(e&&z.value&&Object.prototype.hasOwnProperty.bind(z.value)(e))});function V(e){return P.value?tt(P.value.parameter,e):void 0}let ae=a(()=>P.value?.node.parameters.mode),oe=a(()=>V(`editor`)??void 0),se=a(()=>oe.value===`json`||P.value?.parameter.type===`json`?`json`:V(`editorLanguage`)??`javaScript`),W=a(()=>V(`rows`)),ce=a(()=>P.value?b.isToolNode(P.value?.node.type):!1),le=a(()=>!!P.value&&P.value.node.type===`n8n-nodes-base.html`),ue=a(()=>P.value&&be(P.value.parameter,P.value.value)),G=a(()=>ue.value?He(P.value)?P.value.value:P.value:``),de=a(()=>P.value?.node.type===Fn),me=a(()=>i.isCanvasReadOnly||ee.value),he=a(()=>({$vars:E.variablesAsObject})),_e=a(()=>{if(P.value)return{nodeName:P.value.node.name,parameterPath:P.value.parameterPath}}),ve=a(()=>y.value.executingNode.isNodeExecuting(R.value?.name??``)),xe=a(()=>A.getSelectedNodes.value.map(e=>e.id)),Se=a(()=>D.isNdvInFocusPanelEnabled?f.baseText(`nodeView.focusPanel.v2.noParameters.title`):f.baseText(`nodeView.focusPanel.noParameters.title`)),Ce=a(()=>D.isNdvInFocusPanelEnabled?f.baseText(`nodeView.focusPanel.v2.noParameters.subtitle`):f.baseText(`nodeView.focusPanel.noParameters.subtitle`)),{resolvedExpression:we}=Ie({expression:G,additionalData:he,stringifyObject:P.value&&P.value.parameter.type!==`multiOptions`});function Te(e){P.value!==void 0&&w.updateNodeParameter(c(P.value.node.parameters),{value:e,name:P.value.parameterPath},e,P.value.node,ce.value)}async function Ee(){await l(),d.value&&(Wn(d.value)?d.value.focusOnInput():ur(d.value)&&d.value.focus()),u(`focus`)}function ke(e){if(P.value)switch(e){case`resetValue`:typeof P.value.parameter.default==`string`&&Te(P.value.parameter.default),Ee();break;case`addExpression`:{let e=br(P.value.value,P.value.parameter.type);Te(typeof e==`string`?e:e.value),Ee();break}case`removeExpression`:{let e=an(P.value.value,we.value,P.value.parameter.type,P.value.parameter.default,(P.value.parameter.options??[]).filter(dn));typeof e==`string`?Te(e):e&&typeof e.value==`string`&&Te(e.value),Ee();break}case`formatHtml`:rr.emit(`format-html`);break}}function Ae(){if((D.isNdvInFocusPanelEnabled||x.isFeatureEnabled)&&P.value){m.unsetParameters(),C.track(`User removed focused param`,{source:`closeIcon`,parameters:m.focusedNodeParametersInTelemetryFormat});return}C.track(`User closed focus panel`,{source:`closeIcon`,parameters:m.focusedNodeParametersInTelemetryFormat}),m.closeFocusPanel()}function je(){C.track(`User executed node from focus panel`,m.focusedNodeParametersInTelemetryFormat[0])}function K(e){F.value=e,Te(e)}function Me(){setTimeout(()=>{Ee()},50)}M([()=>m.lastFocusTimestamp,()=>ue.value],()=>Me()),M(()=>P.value,e=>{if(e){let t=e.value;typeof t==`string`&&t!==F.value&&(F.value=t)}},{immediate:!0});function Ne(){R.value&&O.value.setActiveNodeName(R.value.name,`focus_panel`)}function Pe(e){R.value&&j(R.value.name,e)}return(t,i)=>(S(),o(`div`,{"data-test-id":`focus-panel`,class:T([t.$style.content,{[t.$style.isNdvInFocusPanelEnabled]:r(D).isNdvInFocusPanelEnabled}])},[r(D).isNdvInFocusPanelEnabled&&R.value&&!ne.value?(S(),v(ji,{key:0,node:R.value,parameter:P.value?.parameter,"is-executable":re.value,"read-only":e.isCanvasReadOnly,onExecute:je,onOpenNdv:Ne,onClearParameter:Ae,onRenameNode:Pe},null,8,[`node`,`parameter`,`is-executable`,`read-only`])):s(``,!0),P.value?(S(),o(`div`,{key:1,class:T(t.$style.content),"data-test-id":`focus-parameter`},[r(D).isNdvInFocusPanelEnabled?s(``,!0):(S(),o(`div`,{key:0,class:T(t.$style.tabHeader)},[U(`div`,{class:T(t.$style.tabHeaderText)},[I(r(q),{color:`text-dark`,size:`small`},{default:H(()=>[n(L(P.value.parameter.displayName),1)]),_:1}),I(r(q),{color:`text-base`,size:`xsmall`},{default:H(()=>[n(L(P.value.node.name),1)]),_:1})],2),U(`div`,{class:T(t.$style.buttonWrapper)},[I(xr,{"data-test-id":`node-execute-button`,"node-name":P.value.node.name,tooltip:`Execute ${P.value.node.name}`,disabled:!re.value,size:`small`,icon:`play`,square:!0,"hide-label":!0,"telemetry-source":`focus`,onExecute:je},null,8,[`node-name`,`tooltip`,`disabled`]),I(r(Q),{class:T(t.$style.closeButton),icon:`x`,color:`text-base`,size:`xlarge`,onClick:Ae},null,8,[`class`])],2)],2)),U(`div`,{class:T(t.$style.parameterDetailsWrapper)},[U(`div`,{class:T(t.$style.parameterOptionsWrapper)},[U(`div`,{class:T(t.$style.noExecutionDataTip)},[!B.value&&!ve.value?(S(),v(r(sn),{key:0,class:T(t.$style.delayedShow),bold:!0},{default:H(()=>[n(L(r(f).baseText(`nodeView.focusPanel.noExecutionData`)),1)]),_:1},8,[`class`])):s(``,!0)],2),r(te)?(S(),v(Qt,{key:0,parameter:P.value.parameter,value:P.value.value,"is-read-only":me.value,"onUpdate:modelValue":ke},null,8,[`parameter`,`value`,`is-read-only`])):s(``,!0)],2),typeof P.value.value==`string`?(S(),o(`div`,{key:0,class:T(t.$style.editorContainer)},[r(te)?ue.value?(S(),v(At,{key:1,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":i[0]||=e=>F.value=e,class:T(t.$style.editor),"is-read-only":me.value,path:P.value.parameterPath,"data-test-id":`expression-modal-input`,"target-node-parameter-context":_e.value,onChange:i[1]||=e=>K(e.value)},null,8,[`modelValue`,`class`,`is-read-only`,`path`,`target-node-parameter-context`])):[`json`,`string`].includes(P.value.parameter.type)?(S(),o(k,{key:2},[oe.value===`codeNodeEditor`?(S(),v(gt,{key:0,id:P.value.parameterPath,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[2]||=e=>F.value=e,K],class:T(t.$style.heightFull),mode:ae.value,"default-value":P.value.parameter.default,language:se.value,"is-read-only":me.value,"target-node-parameter-context":_e.value,"fill-parent":``},null,8,[`id`,`modelValue`,`class`,`mode`,`default-value`,`language`,`is-read-only`,`target-node-parameter-context`])):oe.value===`htmlEditor`?(S(),v(Wt,{key:1,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[3]||=e=>F.value=e,K],"is-read-only":me.value,rows:W.value,"disable-expression-coloring":!le.value,"disable-expression-completions":!le.value,fullscreen:``,"target-node-parameter-context":_e.value},null,8,[`modelValue`,`is-read-only`,`rows`,`disable-expression-coloring`,`disable-expression-completions`,`target-node-parameter-context`])):oe.value===`cssEditor`?(S(),v(Tt,{key:2,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[4]||=e=>F.value=e,K],"is-read-only":me.value,rows:W.value,fullscreen:``,"target-node-parameter-context":_e.value},null,8,[`modelValue`,`is-read-only`,`rows`,`target-node-parameter-context`])):oe.value===`sqlEditor`?(S(),v(Ge,{key:3,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[5]||=e=>F.value=e,K],dialect:V(`sqlDialect`),"is-read-only":me.value,rows:W.value,fullscreen:``,"target-node-parameter-context":_e.value},null,8,[`modelValue`,`dialect`,`is-read-only`,`rows`,`target-node-parameter-context`])):oe.value===`jsEditor`?(S(),v(Ue,{key:4,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[6]||=e=>F.value=e,K],"is-read-only":me.value,rows:W.value,"posthog-capture":de.value,"fill-parent":``},null,8,[`modelValue`,`is-read-only`,`rows`,`posthog-capture`])):P.value.parameter.type===`json`?(S(),v(pe,{key:5,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[7]||=e=>F.value=e,K],"is-read-only":me.value,rows:W.value,fullscreen:``,"fill-parent":``},null,8,[`modelValue`,`is-read-only`,`rows`])):(S(),v(r(pn),{key:6,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[8]||=e=>F.value=e,K],class:T(t.$style.editor),readonly:me.value,type:`textarea`,resize:`none`},null,8,[`modelValue`,`class`,`readonly`]))],64)):s(``,!0):(S(),o(`div`,{key:0,class:T([t.$style.content,t.$style.emptyContent])},[U(`div`,{class:T(t.$style.emptyText)},[I(r(q),{color:`text-base`},{default:H(()=>[n(L(r(f).baseText(`nodeView.focusPanel.missingParameter`)),1)]),_:1})],2)],2))],2)):s(``,!0)],2)],2)):R.value&&r(D).isNdvInFocusPanelEnabled?(S(),v(Ai,{key:2,node:R.value,"node-ids":xe.value,"is-read-only":me.value,onOpenNdv:Ne,onContextMenuAction:i[9]||=(e,t)=>u(`contextMenuAction`,e,t)},null,8,[`node`,`node-ids`,`is-read-only`])):(S(),o(`div`,{key:3,class:T([t.$style.content,t.$style.emptyContent])},[U(`div`,{class:T(t.$style.focusParameterWrapper)},[U(`div`,{class:T(t.$style.iconWrapper)},[I(r(Q),{class:T(t.$style.forceHover),icon:`panel-right`,size:`medium`},null,8,[`class`]),I(r(Q),{class:T(t.$style.pointerIcon),icon:`mouse-pointer`,color:`text-dark`,size:`large`},null,8,[`class`])],2),I(r(Q),{icon:`ellipsis-vertical`,size:`small`,color:`text-base`}),I(r(Oe),{size:`small`,"model-value":`expression`,disabled:!0,options:[{label:r(f).baseText(`parameterInput.fixed`),value:`fixed`},{label:r(f).baseText(`parameterInput.expression`),value:`expression`}]},null,8,[`options`])],2),U(`div`,{class:T(t.$style.emptyText)},[I(r(q),{color:`text-base`,size:`medium`,bold:!0},{default:H(()=>[n(L(Se.value),1)]),_:1}),I(r(q),{color:`text-base`,size:`small`},{default:H(()=>[n(L(Ce.value),1)]),_:1})],2)],2))],2))}}),[[`__cssModules`,{$style:{content:`_content_o6210_1`,emptyContent:`_emptyContent_o6210_7`,isNdvInFocusPanelEnabled:`_isNdvInFocusPanelEnabled_o6210_12`,emptyText:`_emptyText_o6210_15`,focusParameterWrapper:`_focusParameterWrapper_o6210_21`,iconWrapper:`_iconWrapper_o6210_28`,pointerIcon:`_pointerIcon_o6210_32`,tabHeader:`_tabHeader_o6210_42`,tabHeaderText:`_tabHeaderText_o6210_49`,buttonWrapper:`_buttonWrapper_o6210_54`,parameterDetailsWrapper:`_parameterDetailsWrapper_o6210_59`,parameterOptionsWrapper:`_parameterOptionsWrapper_o6210_66`,noExecutionDataTip:`_noExecutionDataTip_o6210_70`,editorContainer:`_editorContainer_o6210_73`,editor:`_editor_o6210_73`,delayedShow:`_delayedShow_o6210_93`,triggerShow:`_triggerShow_o6210_1`,closeButton:`_closeButton_o6210_104`,heightFull:`_heightFull_o6210_108`,forceHover:`_forceHover_o6210_112`}}]]),Ni=B(_e.EVALUATIONS_WIZARD_SIDEPANEL,()=>{let e=De(),t=a(()=>e.focusPanelActive&&e.selectedTab===`evaluations`),n=_(0),r=_([...ai]),i=_({}),o=_(``),s=_(!1),c=_(``),l=_(``),u=_({}),d=_({}),f=_([]),p=_([]),m=_([]),h=_(``),g=_(!0),v=_(`list`),y=_(null),b=_(null),x=_(null),S=_(null),C=_([]),w=_(!1),T=_(null),E=_(``),D=a(()=>s.value?l.value||``:o.value||``);function O(){n.value=0,r.value=[...ai],i.value={},o.value=``,s.value=!1,c.value=``,l.value=``,u.value={},d.value={},f.value=[],p.value=[],m.value=[],h.value=``,g.value=!0,v.value=`list`,y.value=null,b.value=null,x.value=null,C.value=[],w.value=!1,T.value=null}function k(t=0){O(),n.value=t,e.setSelectedTab(`evaluations`),e.openFocusPanel()}function A(){e.closeFocusPanel()}function j(){t.value?A():k(n.value)}function M(e){n.value=e}function N(){n.value===0?n.value=1:n.value===1?n.value=2:n.value===2&&(n.value=3)}function P(){n.value===3?n.value=2:n.value===2?n.value=1:n.value===1&&(n.value=0)}function F(e){let t=r.value.indexOf(e);t===-1?r.value=[...r.value,e]:r.value=r.value.filter((e,n)=>n!==t)}function ee(e,t){if(t===void 0){let t={...i.value};delete t[e],i.value=t;return}i.value={...i.value,[e]:t}}function I(e){o.value=e}function te(){s.value||(s.value=!0,!l.value&&o.value&&(l.value=o.value))}function L(){s.value=!1,c.value=``}function R(e,t){u.value={...u.value,[e]:t}}function ne(e,t){d.value={...d.value,[e]:t}}function re(){w.value=!0}function z(){w.value=!1}function B(e){let t=W();C.value=[...C.value,{...e,id:t}]}function V(e){C.value=C.value.filter(t=>t.id!==e)}function H(e,t){C.value=C.value.map(n=>n.id===e?{...n,...t}:n)}function ie(e){T.value=e}function ae(e){E.value=e}function U(){v.value=`list`,x.value=null}function oe(){v.value=`create`,x.value=null}function se(e){if(v.value=`detail`,y.value=e,e===null)b.value=null,h.value=``;else{x.value=null,b.value=null;let t=p.value[e],n=f.value[e];t&&(u.value={...t}),n&&(d.value={...n}),h.value=m.value[e]??``}}function ce(e){h.value=e}function le(e){g.value=e}function ue(e){x.value=e}function G(e){S.value=e}function de(e,t){y.value=e,b.value=t}function fe(e){let t={...e};for(let n of Object.keys(e))n in u.value&&(t[n]=u.value[n]);u.value=t}return{isOpen:t,activeStep:n,selectedMetricKeys:r,judgeSelectionByMetric:i,aiNodeName:o,isSliceMode:s,startNodeName:c,endNodeName:l,inputs:u,expectedValues:d,datasetExpectedByRow:f,datasetInputsByRow:p,datasetNamesByRow:m,caseName:h,prefillInputsFromExecution:g,viewMode:v,activeRowIndex:y,activeRowId:b,seedExecution:x,pendingSeedExecution:S,customChecks:C,isCustomCheckModalOpen:w,activeRunId:T,lastWorkflowId:E,answerNodeName:D,open:k,close:A,toggle:j,reset:O,setStep:M,goNext:N,goBack:P,toggleMetric:F,setJudgeSelection:ee,setAiNodeName:I,enterSliceMode:te,exitSliceMode:L,setInputValue:R,setExpectedValue:ne,seedInputs:fe,openCustomCheckModal:re,closeCustomCheckModal:z,addCustomCheck:B,removeCustomCheck:V,updateCustomCheck:H,setActiveRunId:ie,setLastWorkflowId:ae,openList:U,openCreate:oe,openDetail:se,setCaseName:ce,setPrefillInputsFromExecution:le,setSeedExecution:ue,setPendingSeedExecution:G,setActiveRow:de}});function Pi(e,t){let n=e.filter(e=>!t.has(e));if(n.length===1)return n[0];if(n.length===0&&e.length===1)return e[0]}function Fi(e){let t=Or(),n=Z(),r=Tn(),i=Ni();return a(()=>{let a=n.value?.allNodes??[],o=a.filter(e=>r.isTriggerNode(e.type)),s=Hi(a),c=n.value?.connectionsBySourceNode??{},l=i.isSliceMode?i.startNodeName:i.aiNodeName,u=e=>zi(e,a,c,l),d=Vi([i.seedExecution,t.value.activeExecution,t.value.lastSuccessfulExecution,h(e?.fallbackExecution)])?.data?.resultData?.runData;if(!(d&&Object.keys(d).length>0)||!d)return u({fieldNames:[],values:{},hasExecution:!1});if(!l)return u({fieldNames:[],values:{},hasExecution:!0});let f=o.some(e=>e.name===l)?Wi(d,l,s):Gi(d,c,l,s);if(!f)return u({fieldNames:[],values:{},hasExecution:!0});let p=Object.keys(f),m={};for(let e of p)m[e]=st(f[e]);return u({fieldNames:p,values:m,hasExecution:!0})})}var Ii=`input`,Li=`chatInput`,Ri=new Set([Mr,jn]);function zi(e,t,n,r){if(e.fieldNames.length>0)return e;let i=Bi(t,n,r);return{...e,fieldNames:[i],values:{...e.values,[i]:``}}}function Bi(e,t,n){if(!n)return Ii;let r=[n,...Ft(zr(t),n,`main`)],i=new Map(e.map(e=>[e.name,e]));for(let e of r){let t=i.get(e);if(t&&Ri.has(t.type))return Li}return Ii}function Vi(e){for(let t of e)if(t&&t.mode!==`evaluation`)return t}function Hi(e){return new Map(e.filter(e=>e.type===Cn).map(e=>[e.name,e.parameters?.source===`dataTable`]))}var Ui=[`row_id`,...Ce];function Wi(e,t,n=new Map){let r=(e[t]?.[0])?.data?.main?.[0]?.[0]?.json;if(!r||!n.has(t))return r;let i=n.get(t)===!0?[...qn,...Ui]:qn;return Object.fromEntries(Object.entries(r).filter(([e])=>!i.includes(e)))}function Gi(e,t,n,r=new Map){let i=Ft(zr(t),n,`main`,1),a=Pi(i,r)??i[0];if(a)return Wi(e,a,r)}function Ki(){let e=Z();return a(()=>(e.value?.allNodes??[]).filter(e=>ei(e.type)).map(e=>({name:e.name,type:e.type})))}var qi=[de,lr];function Ji(){let e=O(),t=Z(),n=Tn(),{runEntireWorkflow:r}=Hn({router:e}),i=a(()=>(t.value?.allNodes??[]).filter(e=>e.disabled!==!0&&n.isTriggerNode(e.type)).map(e=>({name:e.name,type:e.type}))),o=a(()=>i.value.some(e=>qi.includes(e.type)));function s(e){if(qi.includes(e.type)){Rn.emit(`openChat`);return}r(`node`,e.name)}function c(){if(o.value){Rn.emit(`openChat`);return}r(`main`)}return{runWorkflow:c,runTriggerNode:s,triggerNodes:i,hasChatTrigger:o}}function Yi(){let e=Z(),t=kr();return a(()=>{let n=e.value?.allNodes??[];for(let e of n){let n=Qr[e.type];if(!n)continue;let r=Xi(e.parameters?.model);if(!r)continue;let i=Zi(e.credentials);if(i&&t.allCredentials.some(e=>e.id===i))return{provider:n,model:r,credentialId:i}}return null})}function Xi(e){if(typeof e==`string`)return e||void 0;if(e&&typeof e==`object`&&`value`in e){let t=e.value;if(typeof t==`string`)return t||void 0}}function Zi(e){if(e){for(let t of Object.values(e))if(t?.id)return t.id}}var Qi=1e3;function $i(){let e=Ni(),t=jt(),n=Z(),r=$t(),i=qt(),a=Ki(),o=Je(),s=X(),c=_(!1),l=null,u;async function d(){let e=n.value?.workflowId;if(l&&u===e){await l;return}u=e,l=f().finally(()=>{u===e&&(l=null,u=void 0)}),await l}async function f(){let e=n.value,t=e?.workflowId,a=e?.homeProject?.id;if(!t||!a||r.isNewWorkflow)return;let l=()=>n.value?.workflowId!==t;c.value=!0;try{let n=await It(i.restApiContext,t);if(l())return;let r=$r(e.name),o=n.find(e=>e.name===r)??n[n.length-1];if(!o)return;if(m(o),o.datasetSource===`data_table`)try{let e=await Xn(i.restApiContext,o.datasetRef.dataTableId,a,{take:Qi});if(l())return;h(e.data)}catch(e){console.warn(`[evaluations wizard] failed to hydrate dataset rows`,e)}if(l())return;await p(t,l)}catch(e){l()||o.showError(e,s.baseText(`evaluations.wizardSidepanel.hydrate.error`))}finally{c.value=!1}}async function p(n,r){if(!(e.activeStep!==0||e.activeRunId))try{if(await t.fetchTestRuns(n),r())return;let i=[...t.testRunsByWorkflowId[n]??[]].sort((e,t)=>new Date(e.createdAt).getTime()-new Date(t.createdAt).getTime()),a=i[i.length-1];if(!a)return;e.setActiveRunId(a.id),e.setStep(3)}catch(e){console.warn(`[evaluations wizard] failed to restore last run`,e)}}function m(t){let n=[],r={},i=[];for(let e of t.metrics){let t=ta(e);if(t){n.push(t.key),t.judge&&(r[t.key]=t.judge);continue}let a=na(e);a&&i.push(a)}e.selectedMetricKeys=n,e.judgeSelectionByMetric=r,e.customChecks=[];for(let t of i)e.addCustomCheck(t);new Set(a.value.map(e=>e.name)).has(t.endNodeName)?(e.aiNodeName=t.endNodeName,e.isSliceMode=!1,e.startNodeName=``,e.endNodeName=``):(e.aiNodeName=``,e.isSliceMode=!0,e.startNodeName=t.startNodeName,e.endNodeName=t.endNodeName)}function h(t){let n=t.map(e=>ea(e));e.datasetExpectedByRow=n.map(e=>e.expected),e.datasetInputsByRow=n.map(e=>e.inputs),e.datasetNamesByRow=n.map(e=>e.name);let r=n[0];r&&(e.inputs=r.inputs,e.expectedValues=r.expected)}return{hydrate:d,isHydrating:c}}function ea(e){let t={},n={},r=``,i=new Set(Object.values(ri).map(e=>e.name));for(let[a,o]of Object.entries(e)){if(a===`id`||a===`createdAt`||a===`updatedAt`)continue;let e=st(o);a===`caseName`?r=e:i.has(a)?n[a]=e:t[a]=e}return{inputs:t,expected:n,name:r}}function ta(e){if(e.type===`llm_judge`){let t=e.config.preset;if(t!==`correctness`&&t!==`helpfulness`)return;let n=Qr[e.config.provider];return n?{key:t,judge:{provider:n,credentialId:e.config.credentialId,model:e.config.model}}:{key:t}}if(e.type===`string_similarity`)return{key:`stringSimilarity`};if(e.type===`categorization`)return{key:`categorization`};if(e.type===`tools_used`)return{key:`toolsUsed`}}function na(e){if(e.type===`expression`)return{name:e.name,expression:e.config.expression}}function ra(e){return e.mode!==`evaluation`&&typeof e.id==`string`}var ia=20;function aa(){let e=Pn(),t=Z();async function n(n){let r=t.value?.workflowId;if(!r)return;let i,a=0;for(let t=0;t<ia;t++){let t=await e.fetchExecutionsPage({status:[`success`],workflowId:r},i),o=t.results;if(o.length===0)return;a+=o.length;let s=n(o.filter(ra));if(s!==void 0)return s;if(!t.count||a>=t.count||!t.nextCursor)return;i=t.nextCursor}}async function r(e){let t=[];return await n(n=>(t.push(...n),e!==void 0&&t.length>=e?!0:void 0)),e===void 0?t:t.slice(0,e)}async function i(){let t=await n(e=>e[0]?.id);return t?await e.fetchExecution(t)??null:null}return{fetchUserExecutionCandidates:r,fetchLatestUserExecution:i}}function oa(){let e=Ni(),t=Pn(),n=Z(),r=ye(),{fetchLatestUserExecution:i}=aa();function a(t){e.inputs={},e.setPrefillInputsFromExecution(!0),e.setSeedExecution(t);let i=e.answerNodeName,a=t.data?.resultData?.runData,o=i&&a?En(Wi(a,i)):``;e.expectedValues=o?{expectedAnswer:o}:{},e.openDetail(null),r.track(`User created evaluation test case`,{workflow_id:n.value?.workflowId??null,source:`execution`,execution_id:t.id??null})}async function o(e){let n=await t.fetchExecution(e);return n?(a(n),!0):!1}async function s(){e.inputs={},e.expectedValues={},e.setPrefillInputsFromExecution(!1),e.setSeedExecution(await c()),e.openDetail(null),r.track(`User created evaluation test case`,{workflow_id:n.value?.workflowId??null,source:`manual`})}async function c(){try{return await i()}catch{return null}}return{createFromExecution:a,createFromExecutionId:o,createManualCase:s}}var sa=[`data-test-id`,`aria-expanded`],ca=[`data-test-id`],la=$(p({__name:`ExecutionRow`,props:{execution:{},alt:{type:Boolean}},emits:[`create`],setup(e,{emit:t}){let i=e,c=t,l=X(),u=Z(),d=Tn(),f=Pn(),p=Ni(),m=_(!1),h=_(!1),g=_(null),y=a(()=>i.execution.mode===`manual`),b=a(()=>{let e=i.execution.startedAt;return e?yt(e,{withSeconds:!0}):i.execution.id});async function x(){if(m.value=!m.value,m.value&&!g.value&&!h.value){h.value=!0;try{g.value=await f.fetchExecution(i.execution.id)??null}catch(e){console.warn(`[ExecutionRow] failed to load execution`,e)}finally{h.value=!1}}}let C=a(()=>{let e=g.value?.data?.resultData?.runData,t=p.aiNodeName;if(!e||!t)return{};let n=u.value?.allNodes??[],r=u.value?.connectionsBySourceNode??{},i=n.some(e=>e.name===t&&d.isTriggerNode(e.type)),a=Hi(n);return{input:i?Wi(e,t,a):Gi(e,r,t,a),output:Wi(e,t)}});function E(e){return e?Object.entries(e).map(([e,t])=>({name:e,value:st(t)})):[]}let D=a(()=>E(C.value.input)),O=a(()=>E(C.value.output));return(t,a)=>(S(),o(`div`,{class:T([t.$style.row,i.alt?t.$style.alt:null])},[U(`div`,{class:T(t.$style.header)},[U(`button`,{type:`button`,class:T(t.$style.chevron),"data-test-id":`tests-execution-toggle-${e.execution.id}`,"aria-expanded":m.value,onClick:x},[I(r(Q),{icon:m.value?`chevron-down`:`chevron-right`,size:`small`,color:`text-base`},null,8,[`icon`])],10,sa),I(r(q),{size:`small`,color:`text-dark`,class:T(t.$style.date)},{default:H(()=>[n(L(b.value),1)]),_:1},8,[`class`]),y.value?(S(),v(r(Q),{key:0,icon:`flask-conical`,size:`small`,color:`text-light`,title:r(l).baseText(`evaluations.tests.executions.manualBadge`),"data-test-id":`tests-execution-manual-${e.execution.id}`},null,8,[`title`,`data-test-id`])):s(``,!0),U(`span`,{class:T(t.$style.spacer)},null,2),I(r(G),{size:`mini`,class:T([t.$style.createButton,m.value?t.$style.createButtonVisible:null]),"data-test-id":`tests-execution-create-${e.execution.id}`,onClick:a[0]||=e=>c(`create`)},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.executions.createCase`)),1)]),_:1},8,[`class`,`data-test-id`])],2),m.value?(S(),o(`div`,{key:0,class:T(t.$style.detail),"data-test-id":`tests-execution-detail-${e.execution.id}`},[h.value?(S(),o(`div`,{key:0,class:T(t.$style.loading)},[I(r(Q),{icon:`spinner`,size:`small`,spin:!0})],2)):(S(),o(k,{key:1},[D.value.length>0?(S(),o(`div`,{key:0,class:T(t.$style.group)},[I(r(q),{size:`xsmall`,bold:``,color:`text-light`,class:T(t.$style.groupLabel)},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.executions.input`)),1)]),_:1},8,[`class`]),(S(!0),o(k,null,w(D.value,e=>(S(),o(`div`,{key:`in-${e.name}`,class:T(t.$style.field)},[I(r(q),{size:`xsmall`,color:`text-light`},{default:H(()=>[n(L(e.name),1)]),_:2},1024),I(r(q),{size:`xsmall`,color:`text-dark`,class:T(t.$style.value)},{default:H(()=>[n(L(e.value),1)]),_:2},1032,[`class`])],2))),128))],2)):s(``,!0),O.value.length>0?(S(),o(`div`,{key:1,class:T(t.$style.group)},[I(r(q),{size:`xsmall`,bold:``,color:`text-light`,class:T(t.$style.groupLabel)},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.executions.output`)),1)]),_:1},8,[`class`]),(S(!0),o(k,null,w(O.value,e=>(S(),o(`div`,{key:`out-${e.name}`,class:T(t.$style.field)},[I(r(q),{size:`xsmall`,color:`text-light`},{default:H(()=>[n(L(e.name),1)]),_:2},1024),I(r(q),{size:`xsmall`,color:`text-dark`,class:T(t.$style.value)},{default:H(()=>[n(L(e.value),1)]),_:2},1032,[`class`])],2))),128))],2)):s(``,!0)],64))],10,ca)):s(``,!0)],2))}}),[[`__cssModules`,{$style:{row:`_row_844tx_1`,alt:`_alt_844tx_4`,header:`_header_844tx_8`,createButton:`_createButton_844tx_15`,chevron:`_chevron_844tx_19`,date:`_date_844tx_36`,spacer:`_spacer_844tx_40`,createButtonVisible:`_createButtonVisible_844tx_50`,detail:`_detail_844tx_54`,loading:`_loading_844tx_61`,group:`_group_844tx_67`,groupLabel:`_groupLabel_844tx_73`,field:`_field_844tx_77`,value:`_value_844tx_83`}}]]),ua={key:0,"data-test-id":`tests-list-executions`},da=20,fa=$(p({__name:`TestCaseList`,setup(e){let t=X(),i=Ni(),a=Je(),{createFromExecutionId:s,createManualCase:c}=oa(),{fetchUserExecutionCandidates:l}=aa(),u=_([]);async function f(){try{u.value=await l(da)}catch(e){console.warn(`[TestCaseList] failed to load execution candidates`,e)}}d(()=>{f()});async function p(e){try{await s(e.id)}catch(e){a.showError(e,t.baseText(`evaluations.tests.seedFromExecution.error`))}}async function m(){try{await c()}catch(e){a.showError(e,t.baseText(`evaluations.tests.seedFromExecution.error`))}}return(e,a)=>(S(),o(`div`,{class:T(e.$style.container),"data-test-id":`tests-list`},[U(`div`,{class:T(e.$style.breadcrumb)},[U(`button`,{type:`button`,class:T(e.$style.breadcrumbRoot),"data-test-id":`tests-list-breadcrumb-root`,onClick:a[0]||=e=>r(i).openList()},[I(r(q),{size:`small`,color:`text-base`},{default:H(()=>[n(L(r(t).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1})],2),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[...a[1]||=[n(`/`,-1)]]),_:1}),I(r(q),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.newCase.title`)),1)]),_:1})],2),U(`div`,{class:T(e.$style.controls)},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.chooseExecution`)),1)]),_:1})],2),u.value.length>0?(S(),o(`div`,ua,[(S(!0),o(k,null,w(u.value,(e,t)=>(S(),v(la,{key:e.id,execution:e,alt:t%2==0,onCreate:t=>p(e)},null,8,[`execution`,`alt`,`onCreate`]))),128))])):(S(),o(`div`,{key:1,class:T(e.$style.empty)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.executions.empty`)),1)]),_:1})],2)),U(`div`,{class:T(e.$style.manual)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.createManually.hint`)),1)]),_:1}),I(r(G),{variant:`outline`,size:`xsmall`,"data-test-id":`tests-list-create-manual`,onClick:m},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.createManually`)),1)]),_:1})],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_1qscc_1`,breadcrumb:`_breadcrumb_1qscc_7`,breadcrumbRoot:`_breadcrumbRoot_1qscc_14`,controls:`_controls_1qscc_24`,empty:`_empty_1qscc_31`,manual:`_manual_1qscc_36`}}]]),pa={};for(let[e,t]of Object.entries(Qr))pa[t]=e;function ma(e){let t=[];for(let n of e.selectedMetrics){let r=si.find(e=>e.key===n);if(!r)continue;let i=ga(n,r.key,e);if(i.kind===`err`)return{ok:!1,reason:i.reason};t.push(i.metric)}for(let n of e.customChecks){let e=_a(n);if(e.kind===`err`)return{ok:!1,reason:e.reason};t.push(e.metric)}return t.length===0?{ok:!1,reason:`No metrics selected`}:{ok:!0,dto:{name:$r(e.workflowName),startNodeName:e.startNodeName,endNodeName:e.endNodeName,metrics:t,datasetSource:`data_table`,datasetRef:{dataTableId:e.dataTableId}}}}function ha(e){return e.replace(/\\/g,`\\\\`).replace(/'/g,`\\'`)}function ga(e,t,n){let r=W(),i=ha(n.upstreamNodeName),a=ha(n.endNodeName),o=e=>`={{ $('${i}').first().json[${JSON.stringify(e)}] }}`,s=`={{ JSON.stringify($('${a}').first().json) }}`,c=`={{ (() => { const j = $('${a}').first().json; if (j === null || j === undefined) return ''; if (typeof j !== 'object') return String(j); const p = j.output ?? j.text ?? j.response; if (p !== undefined && p !== null) return typeof p === 'object' ? JSON.stringify(p) : String(p); const ks = Object.keys(j); if (ks.length === 1) { const o = j[ks[0]]; return typeof o === 'object' && o !== null ? JSON.stringify(o) : String(o); } return JSON.stringify(j); })() }}`;if(ti.has(e)){let i=n.judgeSelectionByMetric[e];if(!i)return{kind:`err`,reason:`Missing model selection for ${t}`};let a=pa[i.provider];if(!a)return{kind:`err`,reason:`Unsupported provider ${i.provider}`};if(e===`correctness`)return{kind:`ok`,metric:{id:r,name:t,type:`llm_judge`,config:{preset:`correctness`,provider:a,credentialId:i.credentialId,model:i.model,outputType:`numeric`,inputs:{actualAnswer:s,expectedAnswer:o(`expectedAnswer`)}}}};if(e===`helpfulness`){let e=n.inputFieldNames[0];return e?{kind:`ok`,metric:{id:r,name:t,type:`llm_judge`,config:{preset:`helpfulness`,provider:a,credentialId:i.credentialId,model:i.model,outputType:`numeric`,inputs:{actualAnswer:s,userQuery:o(e)}}}}:{kind:`err`,reason:`Helpfulness needs at least one input column from the workflow execution to use as the user query`}}}return e===`stringSimilarity`?{kind:`ok`,metric:{id:r,name:t,type:`string_similarity`,config:{inputs:{actualAnswer:c,expectedAnswer:o(`expectedAnswer`)}}}}:e===`categorization`?{kind:`ok`,metric:{id:r,name:t,type:`categorization`,config:{inputs:{actualAnswer:c,expectedAnswer:o(`expectedAnswer`)}}}}:e===`toolsUsed`?{kind:`ok`,metric:{id:r,name:t,type:`tools_used`,config:{inputs:{expectedTools:o(`expectedTools`),intermediateSteps:`={{ $('${a}').first().json.intermediateSteps }}`}}}}:{kind:`err`,reason:`Unsupported metric ${e}`}}function _a(e){return{kind:`ok`,metric:{id:W(),name:e.name,type:`expression`,config:{expression:va(e.expression),outputType:`numeric`}}}}function va(e){let t=e.trim();return t.length===0||t.startsWith(`=`)?t:t.startsWith(`{{`)?`=${t}`:`={{ ${t} }}`}function ya(){let e=Ni(),t=Z(),n=Tn(),r=qt(),i=Je(),a=X();async function o(e,t){let n=(await It(r.restApiContext,e)).find(e=>e.name===t.name);if(!n)return{created:!0,id:(await we(r.restApiContext,e,t)).id};let i=s(n);return{created:!1,id:(await je(r.restApiContext,e,n.id,t)).id,priorPayload:i}}function s(e){let t={name:e.name,startNodeName:e.startNodeName,endNodeName:e.endNodeName,metrics:e.metrics};return e.datasetSource===`data_table`?{...t,datasetSource:`data_table`,datasetRef:e.datasetRef}:{...t,datasetSource:`google_sheets`,datasetRef:e.datasetRef}}async function c(e,t,n){let i=[],a=0;for(let n=0;n<50;n++){let n=await he(r.restApiContext,t,{skip:a,take:100},{name:e,projectId:t});for(let e of n.data)i.push(e);if(n.data.length<100||a+100>=n.count)break;a+=100}let o=i.find(t=>t.name===e);if(o){let e=new Set(o.columns.map(e=>e.name)),i=n.filter(t=>!e.has(t.name)),a=[];for(let e of i){let n=await Lt(r.restApiContext,o.id,t,e);a.push(n.id)}return{id:o.id,created:!1,addedColumnIds:a}}return{id:(await K(r.restApiContext,e,t,n)).id,created:!0,addedColumnIds:[]}}async function l(e,t,n){let i=(e,t)=>{console.error(`[evaluations] rollback ${e} failed`,t)};if(n.createdConfigId)try{await Br(r.restApiContext,t,n.createdConfigId)}catch(e){i(`delete config`,e)}else if(n.priorConfigSnapshot)try{await je(r.restApiContext,t,n.priorConfigSnapshot.id,n.priorConfigSnapshot.payload)}catch(e){i(`restore prior config`,e)}let a=!1;if(n.createdTableId)try{await ke(r.restApiContext,n.createdTableId,e),a=!0}catch(e){i(`delete data table`,e)}if(!a&&n.rowMutation){let t=n.rowMutation;if(t.kind===`insert`&&t.rowId!==void 0)try{await Qn(r.restApiContext,t.tableId,[t.rowId],e)}catch(e){i(`delete data table row`,e)}else if(t.kind===`update`)try{await pt(r.restApiContext,t.tableId,t.rowId,t.priorData,e)}catch(e){i(`restore prior data table row`,e)}}if(!a&&n.addedColumns)for(let t of n.addedColumns.columnIds)try{await _t(r.restApiContext,n.addedColumns.tableId,e,t)}catch(e){i(`delete added data table column`,e)}}function u(){let r=t.value,i=r?.connectionsBySourceNode??{},a=r?.allNodes??[],o=zr(i),s=new Set(a.filter(e=>e.type===Cn).map(e=>e.name));if(!e.isSliceMode){let t=e.aiNodeName;if(!t)return{ok:!1,reason:`Pick an AI node to evaluate`};let r=new Set(a.filter(e=>n.isTriggerNode(e.type)).map(e=>e.name));if(r.size===0)return{ok:!1,reason:`Workflow has no trigger`};let i=[t,...Ft(o,t,`main`)],c,l;for(let e of i){if(r.has(e))continue;let t=Pi(Ft(o,e,`main`,1),s);if(t&&r.has(t)){c=e,l=t;break}}return!c||!l?{ok:!1,reason:`Couldn't trace AI node "${t}" back to a trigger`}:{ok:!0,upstreamNodeName:l,startNodeName:c,endNodeName:t}}let c=e.startNodeName,l=e.endNodeName;if(!c||!l)return{ok:!1,reason:`Pick a start and end node for the slice`};let u=Ft(o,c,`main`,1),d=Pi(u,s);return d?{ok:!0,upstreamNodeName:d,startNodeName:c,endNodeName:l}:{ok:!1,reason:`Start node "${c}" must have exactly one upstream node (found ${u.filter(e=>!s.has(e)).length||u.length})`}}function d(e){i.showError(e,a.baseText(`evaluations.tests.persistError`))}return{ensureConfig:o,ensureDataTable:c,rollback:l,resolveSlice:u,showPersistError:d}}function ba(e){if(typeof e==`number`)return e;if(typeof e==`string`&&/^\d+$/.test(e))return Number(e)}function xa(e){let t=new Set,n=[];for(let r of e)t.has(r)||(t.add(r),n.push({name:r,type:`string`}));return n}function Sa(e){let t={};for(let[n,r]of Object.entries(e))n===`id`||n===`createdAt`||n===`updatedAt`||(t[n]=r);return t}var Ca=Promise.resolve();function wa(){let e=Ni(),t=Z(),n=qt(),r=Je(),i=X(),a=ye(),o=Fi(),s=jt(),{ensureConfig:c,ensureDataTable:l,rollback:u,resolveSlice:d,showPersistError:f}=ya(),p=_(!1),m=0;async function h(e){m+=1,p.value=!0;let t=Ca.then(e),n=t.then(()=>void 0,()=>void 0);return Ca=n,n.then(()=>{--m,m===0&&(p.value=!1)}),await t}async function g(){let r=t.value,i=r?.homeProject?.id,a=r?.workflowId;if(!i||!a)return{ok:!1,error:Error(`Missing project or workflow context`)};let s=d();if(!s.ok)return{ok:!1,error:Error(s.reason)};let f=o.value.fieldNames,p=ci(e.selectedMetricKeys),m=xa([...f,...p.map(e=>e.name),ii]),h=ma({workflowName:r.name??`workflow`,upstreamNodeName:s.upstreamNodeName,startNodeName:s.startNodeName,endNodeName:s.endNodeName,inputFieldNames:f,selectedMetrics:e.selectedMetricKeys,judgeSelectionByMetric:e.judgeSelectionByMetric,customChecks:e.customChecks,dataTableId:`__placeholder__`});if(!h.ok)return{ok:!1,error:Error(h.reason)};let g=$r(r.name),_=g,v,y,b,x,S,C=e.activeRowIndex===null;try{let t=await l(g,i,m);t.created?v=t.id:y={tableId:t.id,columnIds:t.addedColumnIds};let o={};for(let t of f)o[t]=e.inputs[t]??``;for(let t of p)o[t.name]=e.expectedValues[t.name]??``;o[ii]=e.caseName??``;let u;if(C){let e=(await Xn(n.restApiContext,t.id,i,{take:1})).count,r=ba((await ut(n.restApiContext,t.id,o,i))[0]?.id);b={kind:`insert`,tableId:t.id,rowId:r},u=e}else{let r=e.activeRowIndex;if(r===null)throw Error(`Cannot resolve active row index for edit`);let a=await Xn(n.restApiContext,t.id,i,{skip:r,take:1}),s=e.activeRowId??ba(a.data[0]?.id)??null;if(s===null)throw Error(`Could not resolve row id for index ${r}`);let c=Sa(a.data[0]??{});b={kind:`update`,tableId:t.id,rowId:s,priorData:c},await pt(n.restApiContext,t.id,s,o,i),u=r}let d=ma({workflowName:r.name??`workflow`,upstreamNodeName:s.upstreamNodeName,startNodeName:s.startNodeName,endNodeName:s.endNodeName,inputFieldNames:f,selectedMetrics:e.selectedMetricKeys,judgeSelectionByMetric:e.judgeSelectionByMetric,customChecks:e.customChecks,dataTableId:t.id});if(!d.ok)throw Error(d.reason);let h=await c(a,{...d.dto,name:_});return h.created?x=h.id:S={id:h.id,payload:h.priorPayload},b?.kind===`insert`&&e.setActiveRow(u,b.rowId??null),{ok:!0,configId:h.id,resolvedIndex:u,isNewCase:C}}catch(e){return await u(i,a,{createdTableId:v,addedColumns:y,rowMutation:b,createdConfigId:x,priorConfigSnapshot:S}),{ok:!1,error:e}}}async function v(e){let t=await g();return t.ok?!0:(e?.silent||f(t.error),!1)}async function y(n=`initial`){let o=await g();if(!o.ok)return f(o.error),!1;let c=t.value?.workflowId;if(!c)return!1;let{configId:l,resolvedIndex:u,isNewCase:d}=o;try{e.setActiveRunId(null);let t=await s.startTestRun(c,{evaluationConfigId:l,compileFromConfig:!0,rowIndices:[u]});return e.setActiveRunId(t?.testRunId??null),a.track(`User ran evaluation`,{workflow_id:c,run_id:t?.testRunId??null,row_index:u,is_new_case:d,trigger:n,metric_count:e.selectedMetricKeys.length,custom_check_count:e.customChecks.length,slice_mode:e.isSliceMode}),await s.fetchTestRuns(c),!0}catch(e){return r.showError(e,i.baseText(`evaluations.tests.dispatchError`)),!1}}async function b(n){let r=t.value,i=r?.homeProject?.id,a=r?.workflowId;if(!i||!a)return null;let s=d();if(!s.ok)return n?.silent||f(Error(s.reason)),null;let u=o.value.fieldNames,p=ci(e.selectedMetricKeys),m=xa([...u,...p.map(e=>e.name),ii]),h=$r(r.name);try{let t=await l(h,i,m),o=ma({workflowName:r.name??`workflow`,upstreamNodeName:s.upstreamNodeName,startNodeName:s.startNodeName,endNodeName:s.endNodeName,inputFieldNames:u,selectedMetrics:e.selectedMetricKeys,judgeSelectionByMetric:e.judgeSelectionByMetric,customChecks:e.customChecks,dataTableId:t.id});return o.ok?(await c(a,{...o.dto,name:h})).id:(n?.silent||f(Error(o.reason)),null)}catch(e){return n?.silent?console.warn(`[evaluations] silent saveConfig failed`,e):f(e),null}}async function x(){let o=t.value,c=o?.workflowId;if(!c)return f(Error(`Missing workflow context`)),!1;await b({silent:!0});let l;try{let e=await It(n.restApiContext,c),t=$r(o.name),a=e.find(e=>e.name===t)??e[e.length-1];if(!a)return r.showError(Error(`No evaluation config found. Run a single test case first.`),i.baseText(`evaluations.tests.persistError`)),!1;l=a.id}catch(e){return f(e),!1}try{e.setActiveRunId(null);let t=await s.startTestRun(c,{evaluationConfigId:l,compileFromConfig:!0});return e.setActiveRunId(t?.testRunId??null),a.track(`User ran evaluation`,{workflow_id:c,run_id:t?.testRunId??null,trigger:`run_all`}),await s.fetchTestRuns(c),!0}catch(e){return r.showError(e,i.baseText(`evaluations.tests.dispatchError`)),!1}}async function S(){let r=t.value,i=r?.homeProject?.id,o=r?.workflowId,s=e.activeRowIndex;if(!i||!o||s===null)return!1;try{let t=await It(n.restApiContext,o),c=$r(r.name),l=t.find(e=>e.name===c)??t[t.length-1];if(!l||l.datasetSource!==`data_table`)throw Error(`No data table found for this evaluation`);let u=l.datasetRef.dataTableId,d=e.activeRowId;if(d===null&&(d=ba((await Xn(n.restApiContext,u,i,{skip:s,take:1})).data[0]?.id)??null),d===null)throw Error(`Could not resolve row id for index ${s}`);return await Qn(n.restApiContext,u,[d],i),a.track(`User deleted evaluation test case`,{workflow_id:o,row_index:s}),!0}catch(e){return f(e),!1}}async function C(e){return await h(async()=>await v(e))}async function w(e=`initial`){return await h(async()=>await y(e))}async function T(e){return await h(async()=>await b(e))}async function E(){return await h(async()=>await x())}async function D(){return await h(async()=>await S())}return{persistAndRunCase:w,saveCase:C,runAll:E,saveConfig:T,deleteCase:D,isPersisting:p}}var Ta=[`data-test-id`],Ea=[`data-test-id`],Da=[`data-test-id`],Oa=[`data-test-id`],ka=$(p({__name:`TestCaseRunResult`,props:{index:{},runId:{default:null},expanded:{type:Boolean,default:!1},separated:{type:Boolean,default:!1}},setup(e){let t=[`success`,`error`,`warning`,`cancelled`],i={promptTokens:`evaluations.tests.results.metric.promptTokens`,completionTokens:`evaluations.tests.results.metric.completionTokens`,totalTokens:`evaluations.tests.results.metric.totalTokens`,executionTime:`evaluations.tests.results.metric.executionTime`},c=e,l=X(),u=Ni(),d=jt(),f=Pn(),p=Z(),m=a(()=>{let e=p.value?.workflowId;return e?[...d.testRunsByWorkflowId[e]??[]].sort((e,t)=>new Date(e.createdAt).getTime()-new Date(t.createdAt).getTime()):[]}),h=a(()=>c.runId===null?m.value[m.value.length-1]:m.value.find(e=>e.id===c.runId)),g=a(()=>{let e=h.value?.id;return e?m.value.findIndex(t=>t.id===e)+1:0}),y=a(()=>{let e=h.value;return e?yt(e.runAt??e.createdAt):``}),b=a(()=>{let e=h.value?.id;if(e)return Object.values(d.testCaseExecutionsById??{}).find(t=>t.testRunId===e&&(t.runIndex??0)===c.index)}),x=a(()=>{let e=h.value;if(!e||![`new`,`running`].includes(e.status))return!1;let n=b.value?.status;return!n||!t.includes(n)}),C=a(()=>!!(b.value&&t.includes(b.value.status))&&!x.value),E=a(()=>b.value?.status===`success`),D=a(()=>C.value&&!E.value),O=a(()=>{let e=b.value?.metrics;return e?xt(e).map(t=>{let n=e[t],r=si.find(e=>e.key===t),i=r?l.baseText(oi(r)):t,a=Zn(t);return a===`aiBased`?{key:t,label:i,text:Ne(n,{category:a}),passed:n>=3}:{key:t,label:i,text:Rt(n,{category:a}),passed:Vn(n)}}):[]}),A=a(()=>mt(b.value?.metrics).map(({key:e,value:t})=>({key:e,label:i[e]?l.baseText(i[e]):e,text:e===`executionTime`?Ee(t):$n(t,{withUnit:!1})}))),j=a(()=>u.answerNodeName),N=_(null);async function P(e){try{N.value=await f.fetchExecution(e)??null}catch(e){console.warn(`[TestCaseRunResult] failed to load case execution`,e)}}M([()=>c.expanded,D,()=>b.value?.executionId],([e,t,n])=>{!n||!e&&!t||N.value?.id!==n&&P(n)},{immediate:!0});let F=a(()=>Hr(N.value,j.value,b.value?.outputs)),ee=a(()=>{if(!D.value)return``;let e=N.value?.data?.resultData?.error?.message;if(e)return e;let t=ni(b.value?.errorCode);return t&&l.exists(t)?l.baseText(t,{interpolate:{link:``}}).trim():l.baseText(`evaluations.tests.results.runFailed`)});return(t,i)=>x.value?(S(),o(`div`,{key:0,class:T([t.$style.runSection,{[t.$style.separated]:e.separated}]),"data-test-id":`tests-result-running-${e.index}`},[U(`div`,{class:T(t.$style.runLine)},[I(r(Q),{icon:`spinner`,size:`small`,spin:!0,color:`text-light`}),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.results.running`)),1)]),_:1})],2)],10,Ta)):C.value?(S(),o(`div`,{key:1,class:T([t.$style.runSection,{[t.$style.separated]:e.separated}]),"data-test-id":`tests-result-result-${e.index}`},[U(`div`,{class:T(t.$style.runLine)},[I(r(Q),{icon:E.value?`check`:`x`,size:`small`,color:E.value?`success`:`danger`},null,8,[`icon`,`color`]),I(r(q),{size:`small`,color:E.value?`success`:`danger`},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.results.runLabel`,{interpolate:{number:String(g.value),date:y.value}})),1)]),_:1},8,[`color`])],2),D.value&&ee.value?(S(),v(r(q),{key:0,size:`small`,color:`danger`,class:T(t.$style.failureReason),"data-test-id":`tests-result-error-${e.index}`},{default:H(()=>[n(L(ee.value),1)]),_:1},8,[`class`,`data-test-id`])):s(``,!0),e.expanded?(S(),v(r(q),{key:1,size:`small`,color:`text-light`},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.detail.output`)),1)]),_:1})):s(``,!0),U(`div`,{class:T(t.$style.badges)},[(S(!0),o(k,null,w(O.value,r=>(S(),o(`span`,{key:r.key,class:T([t.$style.badge,r.passed?t.$style.badgePass:t.$style.badgeFail]),"data-test-id":`tests-result-badge-${e.index}-${r.key}`},[n(L(r.label)+` `,1),U(`strong`,null,L(r.text),1)],10,Da))),128))],2),e.expanded&&F.value?(S(),v(r(q),{key:2,size:`small`,color:`text-dark`,class:T(t.$style.output)},{default:H(()=>[n(L(F.value),1)]),_:1},8,[`class`])):s(``,!0),e.expanded&&A.value.length>0?(S(),o(`div`,{key:3,class:T(t.$style.operational),"data-test-id":`tests-result-operational-${e.index}`},[(S(!0),o(k,null,w(A.value,e=>(S(),v(r(q),{key:e.key,size:`xsmall`,color:`text-light`},{default:H(()=>[n(L(e.label)+` `+L(e.text),1)]),_:2},1024))),128))],10,Oa)):s(``,!0)],10,Ea)):s(``,!0)}}),[[`__cssModules`,{$style:{runSection:`_runSection_1my91_1`,separated:`_separated_1my91_7`,runLine:`_runLine_1my91_13`,badges:`_badges_1my91_19`,badge:`_badge_1my91_19`,badgePass:`_badgePass_1my91_34`,badgeFail:`_badgeFail_1my91_39`,output:`_output_1my91_44`,failureReason:`_failureReason_1my91_49`,operational:`_operational_1my91_54`}}]]),Aa=[`data-test-id`],ja=[`data-test-id`],Ma=[`data-test-id`,`onClick`],Na=[`data-test-id`],Pa=$(p({__name:`TestCaseDetail`,setup(e){let i={correctness:`evaluations.tests.metric.correctness.sentence`,helpfulness:`evaluations.tests.metric.helpfulness.sentence`,stringSimilarity:`evaluations.tests.metric.stringSimilarity.sentence`,categorization:`evaluations.tests.metric.categorization.sentence`,toolsUsed:`evaluations.tests.metric.toolsUsed.sentence`},c=Ni(),l=jt(),u=Z(),d=X(),f=ct(),{selectedMetricKeys:p,customChecks:m,activeRowIndex:h,activeRunId:g,expectedValues:y,inputs:b,aiNodeName:x,caseName:C}=P(c),{persistAndRunCase:E,saveCase:D,deleteCase:O,isPersisting:A}=wa(),j=Fi(),N=_(!1),F=t(async()=>{N.value&&await D({silent:!0})&&(N.value=!1)},Pr(Ae.API.AUTOSAVE));function ee(e,t){c.setInputValue(e,t),N.value=!0,F()}function te(e,t){c.setExpectedValue(e,t),N.value=!0,F()}function R(e){c.setCaseName(e),N.value=!0,F()}let ne=a(()=>c.datasetInputsByRow.length>0||g.value!==null),re=a(()=>{let e=j.value.fieldNames[0];return(e?b.value[e]:``)||d.baseText(`evaluations.tests.newCase.title`)}),z=a(()=>[{id:`delete`,label:d.baseText(`evaluations.tests.detail.delete`),disabled:h.value===null}]);function B(e){e===`delete`&&oe()}async function V(){await ie(),c.openList()}async function ie(){N.value&&(N.value=!1,await D({silent:!0}))}async function ae(){await ie(),c.openCreate()}async function oe(){await f.confirm(d.baseText(`evaluations.tests.detail.delete.confirm.message`),d.baseText(`evaluations.tests.detail.delete.confirm.title`),{confirmButtonText:d.baseText(`generic.delete`),cancelButtonText:d.baseText(`generic.cancel`)})===`confirm`&&(N.value=!1,await O()&&c.openList())}let se=a(()=>si.filter(e=>p.value.includes(e.key)));function W(e){return d.baseText(i[e])}function ce(e){return ri[e]}let le=a(()=>{let e=x.value;return e?Ft(zr(u.value?.connectionsBySourceNode??{}),e,Vt.AiTool,1):[]}),ue=a(()=>new Set((y.value.expectedTools??``).split(`,`).map(e=>e.trim()).filter(Boolean)));function de(e){let t=new Set(ue.value);t.has(e)?t.delete(e):t.add(e),te(`expectedTools`,Array.from(t).join(`, `))}let fe=_(!0),pe=_(!0),me=a(()=>g.value),he=a(()=>{let e=me.value,t=h.value;return e===null||t===null?!1:Object.values(l.testCaseExecutionsById??{}).some(n=>n.testRunId===e&&(n.runIndex??0)===t)}),ge=a(()=>{let e=me.value;if(e===null)return!1;let t=l.testRunsById[e]?.status;return!!t&&![`new`,`running`].includes(t)}),_e=_(!1);M([he,ge],([e,t])=>{(e||t)&&(_e.value=!1)});let ve=a(()=>h.value!==null&&(he.value||_e.value)),ye=a(()=>h.value);async function be(){_e.value=!0,await E(g.value?`run_again`:`initial`)?(fe.value=!1,pe.value=!0):_e.value=!1}return(e,t)=>(S(),o(`div`,{class:T(e.$style.detail)},[U(`header`,{class:T(e.$style.header)},[U(`div`,{class:T(e.$style.breadcrumb)},[U(`button`,{type:`button`,class:T(e.$style.breadcrumbRoot),"data-test-id":`tests-detail-breadcrumb-root`,onClick:V},[I(r(q),{size:`small`,color:`text-base`},{default:H(()=>[n(L(r(d).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1})],2),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[...t[2]||=[n(`/`,-1)]]),_:1}),I(r(Et),{"model-value":r(C),placeholder:re.value,"max-width":`100%`,class:T(e.$style.caseName),"data-test-id":`tests-detail-name`,"onUpdate:modelValue":R},null,8,[`model-value`,`placeholder`,`class`])],2),I(r(bt),{items:z.value,"activator-icon":`ellipsis-vertical`,"activator-size":`small`,"data-test-id":`tests-detail-menu`,onSelect:B},null,8,[`items`]),ne.value?(S(),v(r(G),{key:0,variant:`outline`,size:`xsmall`,"data-test-id":`tests-detail-create-case`,onClick:ae},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.results.createCase`)),1)]),_:1})):s(``,!0),I(r(G),{variant:`solid`,size:`xsmall`,loading:r(A),"data-test-id":`tests-detail-run`,onClick:be},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.run`)),1)]),_:1},8,[`loading`])],2),U(`div`,{class:T(e.$style.body)},[I(r(wn),{modelValue:fe.value,"onUpdate:modelValue":t[0]||=e=>fe.value=e,title:r(d).baseText(`evaluations.tests.detail.config`)},{default:H(()=>[U(`div`,{class:T(e.$style.paneContent),"data-test-id":`tests-detail-config`},[U(`div`,{class:T(e.$style.block)},[U(`div`,{class:T(e.$style.sentence)},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),I(r(q),{size:`small`,color:`text-dark`,bold:``,"data-test-id":`tests-detail-ai-node`},{default:H(()=>[n(L(r(x)),1)]),_:1}),I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.receivesInput`)),1)]),_:1})],2),U(`div`,{class:T(e.$style.indented)},[(S(!0),o(k,null,w(r(j).fieldNames,t=>(S(),o(`div`,{key:`input-${t}`,class:T(e.$style.field),"data-test-id":`tests-detail-input-${t}`},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(t),1)]),_:2},1024),I(r(pn),{"model-value":r(b)[t]??``,type:`textarea`,rows:2,size:`small`,"onUpdate:modelValue":e=>ee(t,e)},null,8,[`model-value`,`onUpdate:modelValue`])],10,Aa))),128))],2)],2),U(`div`,{class:T(e.$style.block)},[I(r(q),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.output`)),1)]),_:1}),U(`div`,{class:T(e.$style.indented)},[(S(!0),o(k,null,w(se.value,t=>(S(),o(`div`,{key:t.key,class:T(e.$style.metric),"data-test-id":`tests-detail-metric-${t.key}`},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(W(t.key)),1)]),_:2},1024),t.key===`toolsUsed`?(S(),o(`div`,{key:0,class:T(e.$style.tools)},[(S(!0),o(k,null,w(le.value,t=>(S(),o(`button`,{key:t,type:`button`,class:T(e.$style.toolItem),"data-test-id":`tests-detail-tool-${t}`,onClick:e=>de(t)},[U(`span`,{class:T([e.$style.box,ue.value.has(t)?e.$style.boxChecked:null])},[ue.value.has(t)?(S(),v(r(Q),{key:0,icon:`check`,size:`xsmall`})):s(``,!0)],2),I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(t),1)]),_:2},1024)],10,Ma))),128)),le.value.length===0?(S(),v(r(q),{key:0,size:`small`,color:`text-light`},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.tools.empty`)),1)]),_:1})):s(``,!0)],2)):ce(t.key)?(S(),v(r(pn),{key:1,"model-value":r(y)[ce(t.key).name]??``,type:`textarea`,rows:3,size:`small`,"data-test-id":`tests-detail-expected-${ce(t.key).name}`,"onUpdate:modelValue":e=>te(ce(t.key).name,e)},null,8,[`model-value`,`data-test-id`,`onUpdate:modelValue`])):s(``,!0)],10,ja))),128)),(S(!0),o(k,null,w(r(m),t=>(S(),o(`div`,{key:t.id,class:T(e.$style.metric),"data-test-id":`tests-detail-custom-${t.id}`},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.metric.custom.sentence`)),1)]),_:1}),I(r(q),{size:`small`,color:`text-dark`,class:T(e.$style.expression),"data-test-id":`tests-detail-custom-expression-${t.id}`},{default:H(()=>[n(L(t.expression),1)]),_:2},1032,[`class`,`data-test-id`])],10,Na))),128))],2)],2)],2)]),_:1},8,[`modelValue`,`title`]),ve.value&&ye.value!==null?(S(),v(r(wn),{key:0,modelValue:pe.value,"onUpdate:modelValue":t[1]||=e=>pe.value=e,title:r(d).baseText(`evaluations.tests.detail.latestRun`)},{default:H(()=>[U(`div`,{class:T(e.$style.paneContent),"data-test-id":`tests-detail-results`},[I(ka,{index:ye.value,"run-id":me.value,expanded:pe.value},null,8,[`index`,`run-id`,`expanded`])],2)]),_:1},8,[`modelValue`,`title`])):s(``,!0)],2)],2))}}),[[`__cssModules`,{$style:{detail:`_detail_1xzyz_1`,header:`_header_1xzyz_10`,breadcrumb:`_breadcrumb_1xzyz_19`,breadcrumbRoot:`_breadcrumbRoot_1xzyz_27`,caseName:`_caseName_1xzyz_37`,body:`_body_1xzyz_44`,paneContent:`_paneContent_1xzyz_53`,block:`_block_1xzyz_59`,sentence:`_sentence_1xzyz_65`,indented:`_indented_1xzyz_72`,field:`_field_1xzyz_79`,metric:`_metric_1xzyz_85`,expression:`_expression_1xzyz_91`,tools:`_tools_1xzyz_97`,toolItem:`_toolItem_1xzyz_103`,box:`_box_1xzyz_114`,boxChecked:`_boxChecked_1xzyz_126`}}]]),Fa=[`data-test-id`],Ia=$(p({__name:`SuiteConfig`,setup(e){let i=[`correctness`,`stringSimilarity`,`toolsUsed`],s=X(),c=Ni(),l=Ki(),{saveConfig:u}=wa(),{aiNodeName:d,selectedMetricKeys:f,customChecks:p,judgeSelectionByMetric:m}=P(c),h=a(()=>si.filter(e=>f.value.includes(e.key))),g=a(()=>{let e=i.filter(e=>!f.value.includes(e)).map(e=>{let t=si.find(t=>t.key===e);return{id:e,label:t?s.baseText(oi(t)):e}});return e.push({id:`custom`,label:s.baseText(`evaluations.tests.detail.addMetric.custom`)}),e});function _(e){if(e===`custom`){c.addCustomCheck({name:`Custom ${p.value.length+1}`,expression:``});return}c.toggleMetric(e)}function y(e){f.value.includes(e)&&c.toggleMetric(e)}function b(e){c.setAiNodeName(e),c.exitSliceMode()}let x=t(()=>{u({silent:!0})},Pr(Ae.API.AUTOSAVE));return M([d,f,p,m],()=>{x()},{deep:!0}),(e,t)=>(S(),o(`section`,{class:T(e.$style.config),"data-test-id":`tests-suite-config`},[U(`div`,{class:T(e.$style.sentence)},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(s).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),I(r(In),{"model-value":r(d),size:`small`,filterable:``,placeholder:r(s).baseText(`evaluations.tests.chooseAiNode.placeholder`),class:T(e.$style.nodeSelect),"data-test-id":`tests-suite-config-ai-node-select`,"onUpdate:modelValue":b},{default:H(()=>[(S(!0),o(k,null,w(r(l),e=>(S(),v(r(Bn),{key:e.name,label:e.name,value:e.name},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`class`]),I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(s).baseText(`evaluations.tests.suite.receivesInput`)),1)]),_:1})],2),U(`div`,{class:T(e.$style.checks)},[(S(!0),o(k,null,w(h.value,e=>(S(),v(r(G),{key:e.key,variant:`subtle`,size:`small`,icon:`x`,"aria-label":r(s).baseText(`evaluations.tests.detail.removeMetric`),"data-test-id":`tests-suite-config-metric-${e.key}`,onClick:t=>y(e.key)},{default:H(()=>[n(L(r(s).baseText(r(oi)(e))),1)]),_:2},1032,[`aria-label`,`data-test-id`,`onClick`]))),128)),(S(!0),o(k,null,w(r(p),t=>(S(),o(`div`,{key:t.id,class:T(e.$style.customRow),"data-test-id":`tests-suite-config-custom-${t.id}`},[I(r(pn),{"model-value":t.expression,type:`text`,size:`small`,class:T(e.$style.expressionInput),placeholder:r(s).baseText(`evaluations.tests.metric.custom.placeholder`),"onUpdate:modelValue":e=>r(c).updateCustomCheck(t.id,{expression:e})},null,8,[`model-value`,`class`,`placeholder`,`onUpdate:modelValue`]),I(r(G),{variant:`ghost`,size:`small`,"icon-only":``,icon:`x`,"aria-label":r(s).baseText(`evaluations.tests.detail.removeMetric`),"data-test-id":`tests-suite-config-custom-remove-${t.id}`,onClick:e=>r(c).removeCustomCheck(t.id)},null,8,[`aria-label`,`data-test-id`,`onClick`])],10,Fa))),128)),I(r(bt),{items:g.value,placement:`bottom-start`,"data-test-id":`tests-suite-config-add-metric`,onSelect:_},{activator:H(()=>[I(r(G),{variant:`ghost`,size:`small`,icon:`plus`},{default:H(()=>[n(L(r(s).baseText(`evaluations.tests.detail.addMetric`)),1)]),_:1})]),_:1},8,[`items`])],2)],2))}}),[[`__cssModules`,{$style:{config:`_config_1ja9c_1`,sentence:`_sentence_1ja9c_11`,nodeSelect:`_nodeSelect_1ja9c_18`,checks:`_checks_1ja9c_23`,customRow:`_customRow_1ja9c_30`,expressionInput:`_expressionInput_1ja9c_37`}}]]),La=[`data-test-id`],Ra=[`data-test-id`],za=[`aria-expanded`,`data-test-id`],Ba=$(p({__name:`TestCaseResultCard`,props:{index:{}},setup(e){let t=e,i=X(),c=Ni(),l=_(!1),u=a(()=>c.datasetNamesByRow[t.index]||i.baseText(`evaluations.tests.list.caseLabel`,{interpolate:{index:t.index+1}})),d=a(()=>{let e=c.datasetInputsByRow[t.index]??{};return Object.entries(e).map(([e,t])=>({name:e,value:String(t)}))});function f(){l.value=!l.value}function p(){c.openDetail(t.index)}return(t,a)=>(S(),o(`div`,{class:T(t.$style.card),"data-test-id":`tests-result-card-${e.index}`},[U(`div`,{class:T(t.$style.header)},[U(`button`,{type:`button`,class:T(t.$style.title),"data-test-id":`tests-result-edit-${e.index}`,onClick:p},[I(r(q),{size:`medium`,color:`text-dark`,bold:``},{default:H(()=>[n(L(u.value),1)]),_:1})],10,Ra),U(`button`,{type:`button`,class:T(t.$style.chevron),"aria-expanded":l.value,"data-test-id":`tests-result-toggle-${e.index}`,onClick:f},[I(r(Q),{icon:l.value?`chevron-up`:`chevron-down`,size:`small`,color:`text-base`},null,8,[`icon`])],10,za)],2),l.value?(S(),o(`div`,{key:0,class:T(t.$style.definition)},[U(`div`,{class:T(t.$style.sentence)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(i).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),I(r(q),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[n(L(r(c).aiNodeName),1)]),_:1}),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(i).baseText(`evaluations.tests.detail.receivesInput`)),1)]),_:1})],2),U(`div`,{class:T(t.$style.entries)},[(S(!0),o(k,null,w(d.value,e=>(S(),o(`p`,{key:e.name,class:T(t.$style.entry)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(e.name),1)]),_:2},1024),I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(e.value),1)]),_:2},1024)],2))),128))],2)],2)):s(``,!0),I(ka,{index:e.index,expanded:l.value,separated:``},null,8,[`index`,`expanded`])],10,La))}}),[[`__cssModules`,{$style:{card:`_card_9n0ah_1`,header:`_header_9n0ah_11`,title:`_title_9n0ah_18`,chevron:`_chevron_9n0ah_31`,definition:`_definition_9n0ah_48`,sentence:`_sentence_9n0ah_54`,entries:`_entries_9n0ah_61`,entry:`_entry_9n0ah_68`}}]]),Va=$(p({__name:`TestCaseResults`,setup(e){let t=X(),i=Ni(),s=jt(),c=Z(),l=Je(),{runAll:u,isPersisting:f}=wa(),{hydrate:p}=$i(),{datasetInputsByRow:m}=P(i),h=a(()=>m.value.length>0);async function g(){let e=c.value?.workflowId;if(e)try{await s.fetchTestRuns(e);let t=[...s.testRunsByWorkflowId[e]??[]].sort((e,t)=>new Date(e.createdAt).getTime()-new Date(t.createdAt).getTime()),n=t[t.length-1];n&&![`new`,`running`].includes(n.status)&&await s.fetchTestCaseExecutions({workflowId:e,runId:n.id})}catch(e){console.warn(`[TestCaseResults] failed to load results`,e)}}d(async()=>{await p(),g()});let y=_(!1);async function b(){if(!y.value){y.value=!0;try{await u()?await g():l.showError(Error(`Run all failed`),t.baseText(`evaluations.tests.runAll.error`))}catch(e){l.showError(e,t.baseText(`evaluations.tests.runAll.error`))}finally{y.value=!1}}}return(e,a)=>(S(),o(`div`,{class:T(e.$style.container),"data-test-id":`tests-results`},[U(`header`,{class:T(e.$style.header)},[I(r(q),{tag:`h2`,size:`small`,color:`text-dark`,bold:``,class:T(e.$style.title)},{default:H(()=>[n(L(r(t).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1},8,[`class`]),U(`div`,{class:T(e.$style.actions)},[I(r(G),{variant:`outline`,size:`xsmall`,"data-test-id":`tests-results-create-case`,onClick:a[0]||=e=>r(i).openCreate()},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.results.createCase`)),1)]),_:1}),I(r(G),{variant:`solid`,size:`xsmall`,loading:y.value||r(f),disabled:!h.value,"data-test-id":`tests-results-run-all`,onClick:b},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.runAll`)),1)]),_:1},8,[`loading`,`disabled`])],2)],2),U(`div`,{class:T(e.$style.body)},[I(Ia),h.value?(S(),o(`div`,{key:0,class:T(e.$style.cards)},[(S(!0),o(k,null,w(r(m),(e,t)=>(S(),v(Ba,{key:t,index:t},null,8,[`index`]))),128))],2)):(S(),o(`div`,{key:1,class:T(e.$style.empty)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.results.empty`)),1)]),_:1})],2))],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_oyxbw_1`,header:`_header_oyxbw_8`,title:`_title_oyxbw_18`,actions:`_actions_oyxbw_22`,body:`_body_oyxbw_28`,cards:`_cards_oyxbw_37`,empty:`_empty_oyxbw_43`}}]]),Ha=`__EMPTY__`,Ua=$(p({__name:`TestsPanel`,setup(e){let t=Ni(),i=jt(),s=Z(),c=$t(),l=sr(),u=Te(),{fetchLatestUserExecution:f}=aa(),p=X(),{viewMode:m,judgeSelectionByMetric:h}=P(t),g=Ki(),y=Yi(),{runWorkflow:x,runTriggerNode:C,triggerNodes:w}=Ji(),E=a(()=>g.value.length>0),D=a(()=>!E.value),O=a(()=>w.value.length>1),A=a(()=>w.value.map(e=>({id:e.name,label:e.name})));function j(){let e=s.value?.workflowId;e&&(w.value.length===0?u.openNodeCreatorForTriggerNodes(e,ze.ADD_NODE_BUTTON):u.openNodeCreatorForRegularNodes(e,ze.ADD_NODE_BUTTON))}function N(e){let t=w.value.find(t=>t.name===e);t&&C(t)}M([()=>t.isOpen,y,h],([e,n,r])=>{if(!(!e||!n))for(let e of ti)r[e]||t.setJudgeSelection(e,n)},{immediate:!0});let F=_(!1),ee=_(null),te=Fi({fallbackExecution:ee});async function R(){try{await Promise.all([Promise.resolve(c.fetchLastSuccessfulExecution()),re()])}finally{F.value=!0}}M([()=>t.isOpen,g],([e,n])=>{if(!e||(R(),t.aiNodeName))return;let r=n[0];r&&t.setAiNodeName(r.name)},{immediate:!0});let ne=null;d(()=>{ne=l.addEventListener(e=>{if(e.type!==`executionFinished`)return;let t=s.value?.workflowId;!t||e.data.workflowId!==t||(R(),i.fetchTestRuns(t))})}),b(()=>{ne?.(),ne=null});async function re(){try{ee.value=await f()}catch{ee.value=null}}M(te,({values:e,fieldNames:n})=>{n.length!==0&&t.prefillInputsFromExecution&&t.seedInputs(e)},{immediate:!0});let z=a(()=>te.value.hasExecution),B=a(()=>{if(t.datasetInputsByRow.length>0||t.activeRunId!==null)return!0;let e=s.value?.workflowId;return!!(e&&(i.testRunsByWorkflowId[e]?.length??0)>0)}),V=a(()=>F.value&&!z.value&&!B.value),ie=a(()=>!z.value&&!F.value&&!B.value),{hydrate:ae}=$i(),{createFromExecution:U}=oa();return M(()=>[t.isOpen,s.value?.workflowId],async([e])=>{let n=s.value?.workflowId,r=t.lastWorkflowId;if(r&&r!==Ha&&n&&n!==r&&t.reset(),n&&t.setLastWorkflowId(n),!e||!n)return;await ae();let i=t.pendingSeedExecution;i&&(U(i),t.setPendingSeedExecution(null))},{immediate:!0}),(e,t)=>(S(),o(`div`,{class:T(e.$style.panel),"data-test-id":`tests-panel`},[D.value?(S(),o(`div`,{key:0,class:T(e.$style.gate),"data-test-id":`tests-panel-add-node`},[I(r(q),{size:`large`,color:`text-dark`,class:T(e.$style.gateMessage)},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.noNode`)),1)]),_:1},8,[`class`]),I(r(G),{size:`small`,"data-test-id":`tests-panel-add-node-button`,onClick:j},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.noNode.button`)),1)]),_:1})],2)):ie.value?(S(),o(`div`,{key:1,class:T(e.$style.gate),"data-test-id":`tests-panel-probe-loading`},[I(r(Q),{icon:`spinner`,size:`medium`,spin:!0})],2)):V.value?(S(),o(`div`,{key:2,class:T(e.$style.gate),"data-test-id":`tests-panel-gate`},[I(r(q),{size:`large`,color:`text-dark`,class:T(e.$style.gateMessage)},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.noExecutions`)),1)]),_:1},8,[`class`]),O.value?(S(),v(r(bt),{key:0,items:A.value,placement:`bottom`,"data-test-id":`tests-panel-choose-trigger`,onSelect:N},{activator:H(()=>[I(r(G),{size:`small`},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.chooseTrigger`))+` `,1),I(r(Q),{icon:`chevron-down`,size:`small`})]),_:1})]),_:1},8,[`items`])):(S(),v(r(G),{key:1,size:`small`,"data-test-id":`tests-panel-gate-run`,onClick:r(x)},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.execute`)),1)]),_:1},8,[`onClick`]))],2)):(S(),o(k,{key:3},[r(m)===`detail`?(S(),v(Pa,{key:0})):r(m)===`create`?(S(),v(fa,{key:1})):(S(),v(Va,{key:2}))],64))],2))}}),[[`__cssModules`,{$style:{panel:`_panel_16tpu_1`,gate:`_gate_16tpu_10`,gateMessage:`_gateMessage_16tpu_21`}}]]),Wa={key:0},Ga=$(p({name:`FocusSidebar`,__name:`FocusSidebar`,props:{isCanvasReadOnly:{type:Boolean}},emits:[`contextMenuAction`],setup(t,{emit:n}){let i=n,c=ne(`wrapper`),l=vn(),u=De(),f=Z(),p=mn(),m=cn(),h=ye(),g=qe(),_=N(l.value),y=D();ir({view_shown:`focus_panel`});let{selectedTab:x}=P(u),C=a(()=>u.focusPanelActive),w=a(()=>u.focusPanelWidth),O=a(()=>u.resolvedParameter),k=a(()=>m.isFeatureEnabled),{isFeatureEnabled:A}=Yr(),{isLicensed:j,isResolved:F,ensureLicenseLoaded:ee}=li(),te=a(()=>m.isFeatureEnabled&&x.value===`setup`),L=a(()=>A.value&&x.value===`evaluations`&&F.value&&j.value),R=a(()=>A.value&&x.value===`evaluations`&&F.value&&!j.value),re=a(()=>k.value||A.value),z=a(()=>{if(!p.isNdvInFocusPanelEnabled||O.value)return O.value?.node;let e=_.getSelectedNodes.value[0];return e?.data?.render.type===Dn.Default?(f?.value?.allNodes??[]).find(t=>t.id===e.id):void 0}),B=a(()=>{let e=O.value?.parameter.displayName??z.value?.name;return e?{focus:e}:void 0});function ie(e){e.key===`s`&&g.isCtrlKeyPressed(e)&&(e.stopPropagation(),e.preventDefault())}let ae=()=>{document.addEventListener(`keydown`,ie,!0)},oe=()=>{document.removeEventListener(`keydown`,ie,!0)};M(()=>u.focusPanelActive,e=>{e?ae():oe()},{immediate:!0}),M(y,e=>{if(!z.value||!e||!c.value?.contains(e))return;let t=e.closest(`.parameter-input`)?.getAttribute(`data-parameter-path`);t&&h.track(`User focused focus panel`,{node_id:z.value.id,node_type:z.value.type,parameter_path:t})});function se(e){u.updateWidth(e.width)}let W=V(se,10);function le(e,t){i(`contextMenuAction`,e,t)}return d(()=>{ee()}),b(()=>{oe()}),(n,i)=>C.value?(S(),o(`div`,{key:0,ref:`wrapper`,"data-test-id":`focus-sidebar`,class:T([n.$style.wrapper,`ignore-key-press-canvas`,{[n.$style.isNdvInFocusPanelEnabled]:r(p).isNdvInFocusPanelEnabled}]),onKeydown:i[1]||=ce(()=>{},[`stop`])},[I(r(Se),{width:w.value,"supported-directions":[`left`],"min-width":k.value?420:300,"max-width":r(p).isNdvInFocusPanelEnabled?void 0:1e3,"grid-size":8,style:e({width:`${w.value}px`}),onResize:r(W)},{default:H(()=>[U(`div`,{class:T(n.$style.container)},[re.value?(S(),o(`div`,Wa,[I(fi,{modelValue:r(x),"onUpdate:modelValue":i[0]||=e=>E(x)?x.value=e:null,"tab-labels":B.value},null,8,[`modelValue`,`tab-labels`])])):s(``,!0),te.value?(S(),o(`div`,{key:1,class:T(n.$style[`setup-panel-wrapper`])},[I(ki)],2)):L.value?(S(),o(`div`,{key:2,class:T(n.$style[`setup-panel-wrapper`])},[I(Ua)],2)):R.value?(S(),o(`div`,{key:3,class:T([n.$style[`setup-panel-wrapper`],n.$style[`evaluations-paywall-wrapper`]])},[I(Xr)],2)):(S(),v(Mi,{key:4,"is-canvas-read-only":t.isCanvasReadOnly,onContextMenuAction:le},null,8,[`is-canvas-read-only`]))],2)]),_:1},8,[`width`,`min-width`,`max-width`,`style`,`onResize`])],34)):s(``,!0)}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_m5715_1`,container:`_container_m5715_13`,"setup-panel-wrapper":`_setup-panel-wrapper_m5715_19`,"evaluations-paywall-wrapper":`_evaluations-paywall-wrapper_m5715_26`}}]]),Ka=p({__name:`CanvasStopCurrentExecutionButton`,props:{stopping:{type:Boolean},size:{}},setup(e){let t=e,n=X(),i=a(()=>t.stopping?n.baseText(`nodeView.stoppingCurrentExecution`):n.baseText(`nodeView.stopCurrentExecution`));return(t,n)=>(S(),v(r(Ct),{variant:`subtle`,icon:`square`,size:e.size??`large`,class:`stop-execution`,title:i.value,loading:e.stopping,"data-test-id":`stop-execution-button`},null,8,[`size`,`title`,`loading`]))}}),qa=p({__name:`CanvasStopWaitingForWebhookButton`,props:{size:{}},setup(e){let t=e,n=X();return(e,i)=>(S(),v(r(Ct),{variant:`subtle`,class:`stop-execution`,icon:`square`,size:t.size??`large`,title:r(n).baseText(`nodeView.stopWaitingForWebhookCall`),"data-test-id":`stop-execution-waiting-for-webhook-button`},null,8,[`size`,`title`]))}}),Ja={"data-action":`reload`},Ya={href:`https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/`,target:`_blank`},Xa=p({__name:`NodeViewUnfinishedWorkflowMessage`,setup(e){let t=X();return(e,i)=>(S(),o(`div`,null,[U(`a`,Ja,L(r(t).baseText(`nodeView.refresh`)),1),n(` `+L(r(t).baseText(`nodeView.toSeeTheLatestStatus`))+`. `,1),i[0]||=U(`br`,null,null,-1),U(`a`,Ya,L(r(t).baseText(`nodeView.moreInfo`)),1)]))}}),Za=p({__name:`CanvasChatButton`,props:{label:{},variant:{}},setup(e){return(t,n)=>(S(),v(r(G),{label:e.label,size:`large`,icon:`message-circle`,variant:e.variant,"data-test-id":`workflow-chat-button`},null,8,[`label`,`variant`]))}}),Qa=$(p({__name:`CheckHeader`,props:{icon:{},iconBg:{},iconFg:{},title:{},badge:{},badgeIcon:{}},setup(t){return(i,a)=>(S(),o(`div`,{class:T(i.$style.header)},[U(`span`,{class:T([i.$style.icon,!t.iconBg&&!t.iconFg?i.$style.iconNeutral:null]),style:e(t.iconBg||t.iconFg?{backgroundColor:t.iconBg,color:t.iconFg}:null)},[I(r(Q),{icon:t.icon,size:`small`},null,8,[`icon`])],6),U(`div`,{class:T(i.$style.body)},[U(`div`,{class:T(i.$style.titleRow)},[I(r(q),{size:`small`,bold:``,color:`text-dark`},{default:H(()=>[n(L(t.title),1)]),_:1}),t.badge?(S(),v(r(ve),{key:0,class:T(i.$style.judgePill)},{default:H(()=>[t.badgeIcon?(S(),v(r(Q),{key:0,icon:t.badgeIcon,size:`xsmall`,class:T(i.$style.judgePillIcon)},null,8,[`icon`,`class`])):s(``,!0),n(` `+L(t.badge),1)]),_:1},8,[`class`])):s(``,!0)],2),g(i.$slots,`description`)],2)],2))}}),[[`__cssModules`,{$style:{header:`_header_1ffdx_1`,icon:`_icon_1ffdx_9`,iconNeutral:`_iconNeutral_1ffdx_18`,body:`_body_1ffdx_23`,titleRow:`_titleRow_1ffdx_30`,judgePill:`_judgePill_1ffdx_37`,judgePillIcon:`_judgePillIcon_1ffdx_51`}}]]),$a=[`role`,`tabindex`],eo=[`aria-label`,`data-test-id`],to=$(p({__name:`CheckCard`,props:{icon:{},iconBg:{},iconFg:{},title:{},description:{},badge:{},badgeIcon:{},selected:{type:Boolean},readonly:{type:Boolean},removable:{type:Boolean},removeAriaLabel:{},removeTestId:{}},emits:[`toggle`,`remove`],setup(e){return(t,i)=>(S(),o(`div`,{class:T([t.$style.card,e.selected?t.$style.cardSelected:null]),role:e.readonly?void 0:`button`,tabindex:e.readonly?void 0:0,onClick:i[3]||=n=>!e.readonly&&t.$emit(`toggle`),onKeydown:[i[4]||=ae(ce(n=>!e.readonly&&t.$emit(`toggle`),[`self`,`prevent`]),[`enter`]),i[5]||=ae(ce(n=>!e.readonly&&t.$emit(`toggle`),[`self`,`prevent`]),[`space`])]},[I(Qa,{icon:e.icon,"icon-bg":e.iconBg,"icon-fg":e.iconFg,title:e.title,badge:e.badge,"badge-icon":e.badgeIcon},m({_:2},[e.description?{name:`description`,fn:H(()=>[I(r(q),{size:`small`,color:`text-base`,class:T(t.$style.description)},{default:H(()=>[n(L(e.description),1)]),_:1},8,[`class`])]),key:`0`}:void 0]),1032,[`icon`,`icon-bg`,`icon-fg`,`title`,`badge`,`badge-icon`]),e.removable?(S(),o(`button`,{key:0,type:`button`,class:T(t.$style.removeButton),"aria-label":e.removeAriaLabel,"data-test-id":e.removeTestId,onClick:i[0]||=ce(e=>t.$emit(`remove`),[`stop`])},[I(r(Q),{icon:`trash-2`,size:`small`})],10,eo)):e.selected&&!e.readonly?(S(),o(`span`,{key:1,class:T(t.$style.selectedMark),"aria-hidden":`true`},[I(r(Q),{icon:`check`,size:`small`})],2)):s(``,!0),t.$slots.default?(S(),o(`div`,{key:2,class:T(t.$style.slotContainer),onClick:i[1]||=ce(()=>{},[`stop`]),onKeydown:i[2]||=ce(()=>{},[`stop`])},[g(t.$slots,`default`)],34)):s(``,!0)],42,$a))}}),[[`__cssModules`,{$style:{card:`_card_k2mdo_1`,cardSelected:`_cardSelected_k2mdo_18`,description:`_description_k2mdo_25`,selectedMark:`_selectedMark_k2mdo_30`,removeButton:`_removeButton_k2mdo_38`,slotContainer:`_slotContainer_k2mdo_58`}}]]),no=[`aria-label`],ro=$(p({__name:`EvaluationsCanvasInfoCard`,setup(e){let t=a(()=>[...si,...si].map(e=>({...e,isJudge:ti.has(e.key)}))),i=X(),c=ye(),l=Ni(),u=Z(),f=qt(),p=Ki(),{isFeatureEnabled:m}=Yr(),{isLicensed:h,ensureLicenseLoaded:g}=li(),v=_(null),y=null,b=Dt(vt),x=a(()=>{let e=b.value;return e?new Set(e.split(`,`).filter(Boolean)):new Set}),C=a(()=>u.value?.workflowId??``),E=a(()=>u.value?.active??!1),D=a(()=>p.value.length>0),O=a(()=>C.value?x.value.has(C.value):!0),A=a(()=>m.value&&h.value&&E.value&&D.value&&!O.value),j=a(()=>A.value&&v.value===!1&&!l.isOpen);d(()=>{g()});async function N(){let e=C.value;if(e&&y!==e){y=e;try{let t=await It(f.restApiContext,e);if(e!==C.value)return;v.value=t.length>0}catch{if(e!==C.value)return;v.value=!0}finally{y===e&&(y=null)}}}M(A,e=>{if(!e){v.value=null;return}v.value===null&&N()},{immediate:!0}),M(C,()=>{v.value=null,A.value&&N()}),M(()=>l.isOpen,(e,t)=>{t&&!e&&A.value&&N()});function P(){let e=C.value;if(!e)return;let t=new Set(x.value);t.add(e),b.value=[...t].join(`,`)}function F(){c.track(`User opened evaluations wizard`,{workflow_id:C.value,source:`canvas_info_card`}),l.open(0)}return(e,a)=>j.value?(S(),o(`aside`,{key:0,class:T(e.$style.card),role:`complementary`,"data-test-id":`evaluations-canvas-info-card`},[U(`button`,{type:`button`,class:T(e.$style.dismiss),"aria-label":r(i).baseText(`evaluations.canvasInfoCard.dismiss`),"data-test-id":`evaluations-canvas-info-card-dismiss`,onClick:P},[I(r(Q),{icon:`x`,size:`small`})],10,no),U(`div`,{class:T(e.$style.marquee),"aria-hidden":`true`},[U(`ul`,{class:T(e.$style.marqueeTrack)},[(S(!0),o(k,null,w(t.value,(t,n)=>(S(),o(`li`,{key:`${t.key}-${n}`,class:T(e.$style.marqueeItem)},[I(to,{icon:t.icon,"icon-bg":t.tileBg,"icon-fg":t.tileFg,title:r(i).baseText(t.labelKey),description:r(i).baseText(t.descriptionKey),badge:t.isJudge?r(i).baseText(`evaluations.wizardSidepanel.metric.judgeTag`):void 0,readonly:``},null,8,[`icon`,`icon-bg`,`icon-fg`,`title`,`description`,`badge`])],2))),128))],2)],2),U(`div`,{class:T(e.$style.body)},[I(r(q),{size:`small`,bold:``,color:`text-dark`},{default:H(()=>[n(L(r(i).baseText(`evaluations.canvasInfoCard.title`)),1)]),_:1}),I(r(q),{size:`small`,color:`text-base`,class:T(e.$style.description)},{default:H(()=>[n(L(r(i).baseText(`evaluations.canvasInfoCard.description`)),1)]),_:1},8,[`class`])],2),U(`div`,{class:T(e.$style.footer)},[I(r(G),{variant:`solid`,size:`medium`,type:`button`,class:T(e.$style.setupButton),"data-test-id":`evaluations-canvas-info-card-setup`,onClick:F},{default:H(()=>[n(L(r(i).baseText(`evaluations.canvasInfoCard.setup`)),1)]),_:1},8,[`class`])],2)],2)):s(``,!0)}}),[[`__cssModules`,{$style:{card:`_card_fbnw4_1`,dismiss:`_dismiss_fbnw4_15`,marquee:`_marquee_fbnw4_39`,marqueeTrack:`_marqueeTrack_fbnw4_47`,marqueeScroll:`_marqueeScroll_fbnw4_1`,marqueeItem:`_marqueeItem_fbnw4_70`,body:`_body_fbnw4_74`,description:`_description_fbnw4_81`,footer:`_footer_fbnw4_86`,setupButton:`_setupButton_fbnw4_90`}}]]),io=$(p({name:`NodeView`,__name:`NodeView`,setup(e){let t=f(async()=>await Kn(()=>import(`./NodeCreation-Iyjp7x_I.js`),__vite__mapDeps([0,1,2,3,4,5,6]))),i=f(async()=>await Kn(()=>import(`./NodeDetailsView-dxsT2c_o.js`),__vite__mapDeps([7,1,2,3,4,5,8,9,10,11,12,13,14,15,16,17]))),c=f(async()=>await Kn(()=>import(`./SetupWorkflowCredentialsButton-3UQq0pVY.js`),__vite__mapDeps([18,1,2,3,4,5,19,20]))),p=te(),m=O(),h=ee(),{canOpenNDV:g}=qr(),y=X(),x=ye(),C=Le(),w=Je(),E=ct(),D=Un(),A=Rr({router:m,ownsAutoSave:!0,onSaved:e=>{On.emit(`saved:workflow`,{isFirstSave:e})}}),j=ge(),N=jr({onPaste:ei}),P=Tn(),F=Nt(),re=ft(),z=$t(),B=Z(),V=a(()=>ar(B.value.documentId)),ie=Er(),ae=Gr(),oe=Bt(),W=Te(),ce=tn(),le=kr(),ue=fr(),G=Xe(),fe=Kr(),pe=bn(),he=nn(),_e=Ve(),ve=cr(),be=er(),Se=De(),Ce=Ni(),{isFeatureEnabled:we}=Yr(),Ee=Fr(),Oe=Jr(),ke=Tr(),Ae=Cr(),je=mn(),K=at(),Ne=un(),Pe=Sr(),Ie=Ke();ui(K);let{addBeforeUnloadEventBindings:q,removeBeforeUnloadEventBindings:Be}=yr({route:h}),{registerCustomAction:He,unregisterCustomAction:Ue}=nr(),{runWorkflow:We,runEntireWorkflow:Ge,stopCurrentExecution:qe,stopWaitingForWebhook:$e}=Hn({router:m}),{updateNodePosition:et,updateNodesPosition:tt,tidyUp:it,revertUpdateNodePosition:st,renameNode:ut,revertRenameNode:pt,revertReplaceNodeParameters:mt,setNodeActive:gt,setNodeSelected:_t,toggleNodesDisabled:vt,revertToggleNodeDisabled:yt,toggleNodesPinned:bt,setNodeParameters:xt,deleteNode:St,deleteNodes:Ct,copyNodes:wt,cutNodes:Tt,duplicateNodes:Et,revertDeleteNode:Dt,revertAddNode:At,createConnection:jt,revertCreateConnection:Ft,deleteConnection:It,revertDeleteConnection:Lt,revalidateNodeInputConnections:Rt,revalidateNodeOutputConnections:Ut,setNodeActiveByName:Wt,clearNodeActive:Gt,tryToOpenSubworkflowInNewTab:Kt,importWorkflowData:qt,fetchWorkflowDataFromUrl:Jt,resetWorkspace:Zt,initializeWorkspace:Qt,lastClickPosition:en,startChat:an,addNodesAndConnections:on,fitView:sn}=Ht(),{extractWorkflow:cn}=Vr();An({ctrl_alt_o:()=>F.openModal(gn)});let dn=ne(`canvas`),fn=_(!0),pn=_(null),_n=_([]),Y=vn(),yn=a(()=>{let e=h.params.nodeId;return Array.isArray(e)?e[0]:e}),Sn=a(()=>h.query.new===`true`),wn=a(()=>h.query.hideControls===`true`),En=a(()=>h.query.canvasBackground!==`dots`),jn=a(()=>h.name===ot.DEMO),Nn=a(()=>oe.isCanvasOnly&&!jn.value),Pn=a(()=>!!h?.meta?.readOnlyCanvas),Q=a(()=>ae.preferences.branchReadOnly),{readOnly:Fn,expandGroups:In,executionButtonType:Ln}=Ot(),zn=a(()=>jn.value?`secondary`:Ln.value),Bn=a(()=>jn.value||Q.value||K.shouldBeReadOnly||!(qi.value.update??Ji.value.workflow.update)||(B?.value?.isArchived??!1)||Ee.streaming&&!Ee.isHelpStreaming||Fn.value),Vn=a(()=>jn.value?`all`:In.value),Wn=a(()=>Q.value?!1:jn.value?h.query.canExecute===`true`:B?.value?.isArchived||Ee.streaming||Fn?.value?!1:!!(qi.value.execute??Ji.value.workflow.execute)),Gn=a(()=>K.isCurrentUserWriter&&!K.isCurrentTabWriter),qn=a(()=>tr.value.length===0),Yn=a(()=>!be.value.activeNode&&F.activeModals.length===0),Xn=a(()=>Ae.isOpen);function Zn(){h.query.action===`addEvaluationTrigger`?Ta():h.query.action===`addEvaluationNode`?W.openNodeCreatorForActions(Y.value,wr,ze.ADD_EVALUATION_NODE_BUTTON):h.query.action===`executeEvaluation`?Ca.value&&Ge(`node`,Ca.value.name):h.query.action===`openEvaluationsWizard`&&we.value&&(x.track(`User opened evaluations wizard`,{workflow_id:Y.value,source:`empty_state`}),Ce.open(0)),Ce.pendingSeedExecution&&we.value&&(Se.setSelectedTab(`evaluations`),Se.openFocusPanel()),On.off(`saved:workflow`,Ia),h.name===ot.EXECUTION_DEBUG&&On.on(`saved:workflow`,Ia),l(()=>{Qn()})}function Qn(){j.updateNodesInputIssues(),j.updateNodesCredentialsIssues(),j.updateNodesParameterIssues()}M(()=>{let e=B?.value,t=(e?.workflowTriggerNodes??[]).filter(e=>!e.disabled).map(e=>`${e.type}:${JSON.stringify(e.parameters??{})}`).join(`|`);return`${e?.settings?.credentialResolverId??``}#${t}`},()=>{fn.value||j.updateNodesCredentialsIssues()});async function $n(e){Zt(),Ee.streaming?D.setDocumentTitle(e.name,`AI_BUILDING`):D.setDocumentTitle(e.name,`IDLE`),await Qt(e),C.run(`workflow.open`,{workflowId:e.id,workflowName:e.name}),sn()}let tr=a(()=>B?.value?.allNodes.filter(e=>P.isTriggerNode(e.type))??[]),rr=a(()=>tr.value.length>0),ir=a(()=>tr.value.filter(e=>e.disabled).length===tr.value.length),or=a(()=>tr.value.filter(e=>!e.disabled&&!Ar(e))),sr=a(()=>or.value.length>1&&V.value.selectedTriggerNodeName!==void 0);function lr(e,t){it(e,t)}function ur(e){cn(e)}function dr(e){tt(e,{trackHistory:!0})}function mr(e,t){et(e,t,{trackHistory:!0})}function hr({nodeName:e,position:t}){st(e,{x:t[0],y:t[1]})}function vr(e){let t=_n.value.findIndex(t=>t.id===e);t>=0?_n.value.splice(t,1):St(e,{trackHistory:!0})}function br(e,t=[]){Ct(e,{deleteWholeGroupIds:t})}function xr({node:e}){Dt(e)}function $({group:e}){B.value.deleteGroup(e.id)}function Dr({group:e}){B.value.restoreGroup(e)}function Or({group:e}){B.value.restoreGroup(e)}function Mr(e){Na()&&vt([e])}function Nr({nodeName:e}){yt(e)}function Pr(e){Na()&&vt(e)}function zr(e,t){en.value=[t.x,t.y],Ui()}async function Br(e,t){jn.value&&!g.value||(t?.metaKey||t?.ctrlKey)&&await Kt(e)||gt(e,`canvas_default_view`)}function Hr(e){Kt(e)}function Wr(){Gt()}function Xr(e){Ui(),_t(e)}let Zr=!1;function Qr(e){return!Zr&&Y.value===e}async function $r(e){let t=Y.value;await Oe.gate(`copy`,async()=>{Qr(t)&&(await wt(e),w.showMessage({title:y.baseText(`generic.copiedToClipboard`),type:`success`}))})}async function ei(e){if(Bn.value||hn(h)!==ln.WORKFLOW||!Yn.value||!Na())return;let t=null;if(e.match(dt)){if(await E.confirm(y.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.message`,{interpolate:{plainTextData:e}}),y.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.headline`),{type:`warning`,confirmButtonText:y.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.confirmButtonText`),cancelButtonText:y.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.cancelButtonText`)})!==`confirm`)return;t=await Jt(e)}else t=Ze(e,{fallbackValue:null});if(!t)return;let n=Y.value;await Oe.gate(`paste`,async()=>{if(!Qr(n))return;let e=(await qt(t,`paste`,{importTags:!1,viewport:za.value})).nodes?.map(e=>e.id)??[];dn.value?.ensureNodesAreVisible(e)})}async function ti(e,t=[]){Bn.value?await wt(e):await Tt(e,t)}async function ni(e){if(!Na())return;let t=await Et(e,{viewport:za.value});dn.value?.ensureNodesAreVisible(t)}function ri(e,t){Na()&&bt(e,t)}function ii(e,t){dn.value?.executeContextMenuAction(e,t)}function ai(){On.on(`saved:workflow`,fe.showNpsSurveyIfPossible)}function oi(){On.off(`saved:workflow`,fe.showNpsSurveyIfPossible),On.off(`saved:workflow`,Ia)}async function si(){await m.push({name:ot.NEW_WORKFLOW})}async function ci(){await A.saveCurrentWorkflow({})}function li(e){be.value.activeNode?.name&&ut(be.value.activeNode.name,e)}async function fi(e){let t=B?.value?.getNodeById(e)?.name??``,n=document.activeElement;if(!(n&&Re(n))&&!(!Yn.value||document.querySelector(`.rename-prompt`)))try{let e=E.prompt(y.baseText(`nodeView.prompt.newName`)+`:`,y.baseText(`nodeView.prompt.renameNode`)+`: ${t}`,{customClass:`rename-prompt`,confirmButtonText:y.baseText(`nodeView.prompt.rename`),cancelButtonText:y.baseText(`nodeView.prompt.cancel`),inputErrorMessage:y.baseText(`nodeView.prompt.invalidName`),inputValue:t,inputValidator:e=>e.trim()?!0:y.baseText(`nodeView.prompt.invalidName`)});await l();let n=document.querySelector(`.rename-prompt .el-input__inner`);n?.focus(),n?.select();let r=e=>{e.key===` `&&e.stopPropagation()};n?.addEventListener(`keydown`,r);let i=await e;n?.removeEventListener(`keydown`,r),i.action===`confirm`&&await ut(t,i.value,{trackHistory:!0})}catch{}}async function pi({currentName:e,newName:t}){await pt(e,t)}async function mi({nodeId:e,currentProperties:t,newProperties:n}){await mt(e,t,n)}function hi(e,t){xt(e,t)}function gi(e){Rt(e)}function _i(e){Ut(e)}function vi(e,t){W.openNodeCreatorForConnectingNode({workflowId:Y.value,connection:{source:e,sourceHandle:t},eventSource:ze.PLUS_ENDPOINT})}async function yi(){let e;if(Y.value&&!Sn.value)e={workflowId:Y.value};else{let t=(typeof h.query?.projectId==`string`?h.query?.projectId:void 0)??pe.personalProject?.id;if(t===void 0)throw Error(`Could not find projectId in the query nor could I find the personal project in the project store`);e={projectId:t}}await le.fetchUsableCredentials(e)}function bi(e){jt(e,{trackHistory:!0})}function xi({connection:e}){Ft(e)}function Si(e,t,n){(n?.target).classList?.contains(`clickable`)||(F.lastInteractedWithNodeId=e.nodeId,F.lastInteractedWithNodeHandle=e.handleId,F.lastCancelledConnectionPosition=[t.x,t.y],setTimeout(()=>{e.nodeId&&W.openNodeCreatorForConnectingNode({workflowId:Y.value,connection:{source:e.nodeId,sourceHandle:e.handleId},eventSource:ze.NODE_CONNECTION_DROP})}))}function Ci(e){It(e,{trackHistory:!0})}function wi({connection:e}){Lt(e)}async function Ti(e){let t=e.data,n=typeof e.trackEvents==`boolean`?e.trackEvents:void 0,r=typeof e.setStateDirty==`boolean`?e.setStateDirty:void 0;if(await qt(t,`file`,{viewport:za.value,regenerateIds:e.regenerateIds===!0||e.regenerateIds===void 0,trackEvents:n,setStateDirty:r}),await l(),sn(),Va(t.nodes?.map(e=>e.id)??[]),e.tidyUp){let t=e.nodesIdsToTidyUp;setTimeout(async()=>{On.emit(`tidyUp`,{source:`import-workflow-data`,nodeIdsFilter:t,trackEvents:n}),await l(),sn()},0)}}async function Ei(e){let t=await Jt(e.url);if(!t)return;let n=Y.value;await Oe.gate(`import_url`,async()=>{Qr(n)&&(await qt(t,`url`,{viewport:za.value}),dn.value?.ensureNodesAreVisible(t.nodes?.map(e=>e.id)??[]))})}function Di(){Rn.on(`importWorkflowData`,Ti),Rn.on(`importWorkflowUrl`,Ei),Rn.on(`openChat`,xa)}function Oi(){Rn.off(`importWorkflowData`,Ti),Rn.off(`importWorkflowUrl`,Ei),Rn.off(`openChat`,xa)}let ki=_(void 0),Ai=_(!1);function ji(){ki.value=void 0}function Mi(){if(!(W.isCreateNodeActive&&rn(W.openSource))||!F.lastInteractedWithNodeId)return;let{type:e,mode:t}=Yt(F.lastInteractedWithNodeHandle);if(e!==Vt.Main||t!==Lr.Output)return;let n=F.lastInteractedWithNodeId,r=B.value.getGroupForNode(n);if(!r)return;let i=me(r,B.value.allNodes);return i?.id===n?i.id:void 0}async function Pi({nodes:e,connections:t},n=!1,r){if(!Na())return;let i=ki.value??Mi();i!==void 0&&(F.resetLastInteractedWith(),e=e.map(e=>({...e,openDetail:!1})));let{addedNodes:a}=await on(e,t,{dragAndDrop:n,position:r,viewport:za.value,telemetry:!0,replaceNodeId:i});if(a.length>0){let e=a[a.length-1].id;Va([e])}}async function Fi(e=!1){if(!Ie.value||!Na()||Ai.value)return;Ai.value=!0;let t=W.openSource;if(B.value.allNodes.length===0&&Ra.value.width>0&&Ra.value.height>0){let{xMin:e,xMax:t,yMin:n,yMax:r}=za.value;en.value=[(e+t-_r[0])/2,(n+r-_r[1])/2]}let n=re.currentBulkAction===null;n&&re.startRecordingUndo();try{let n=G.selectedGroupId?B.value.getGroupById(G.selectedGroupId):void 0,r=n?me(n,B.value.allNodes):void 0;!e&&r&&(F.resetLastInteractedWith(),F.lastInteractedWithNodeId=r.id);let{addedNodes:i}=await on([{type:kn,name:`No Operation, do nothing`,parameters:{emptyGroupAnchor:!0},placeholder:!0,isAutoAdd:!(e||r!==void 0),openDetail:!1}],[],{viewport:za.value,trackBulk:!1}),a=i[0];if(!a)return;let o=B.value.getNextDefaultName(y.baseText(`canvas.nodeGroup.defaultTitle`)),s=B.value.createGroup([a.id],o);re.pushCommandToUndo(new ht(s,Date.now())),ce.trackGrouped(s,`node-creator`,t),ce.trackInitialEmptyGroupConnection(s),Va([a.id])}finally{n&&re.stopRecordingUndo(),Ai.value=!1}}async function Ii({node:e}){await At(e.name)}function Li(e){let t=B?.value?.getNodeByName(e);t&&(Wt(e,`other`),Va([t.id]))}function Ri(e,t,n=0){W.openSelectiveNodeCreator({workflowId:Y.value,node:e,connectionType:t,connectionIndex:n})}function zi(e){W.setNodeCreatorState({...e,workflowId:Y.value}),e.createNodeActive||(ki.value=void 0,e.hasAddedNodes||F.resetLastInteractedWith())}function Bi(e){zi({createNodeActive:!0,source:e})}function Vi(e){W.openNodeCreatorForTriggerNodes(Y.value,e)}function Hi(){Se.toggleFocusPanel(),x.track(`User ${Se.focusPanelActive?`opened`:`closed`} focus panel`,{source:`canvasKeyboardShortcut`,parameters:Se.focusedNodeParametersInTelemetryFormat,parameterCount:Se.focusedNodeParametersInTelemetryFormat.length})}function Ui(){W.isCreateNodeActive&&=!1}function Wi(){Pi({nodes:[{type:pr}],connections:[]})}function Gi(e){let{type:t,mode:n}=Yt(e.sourceHandle);t===Vt.AiTool&&n===Lr.Output?W.openNodeCreatorForConnectingNode({workflowId:Y.value,connection:e,eventSource:ze.NODE_CONNECTION_ACTION,nodeCreatorView:Xt}):W.openNodeCreatorForConnectingNode({workflowId:Y.value,connection:e,eventSource:ze.NODE_CONNECTION_ACTION})}function Ki(e){let t=B?.value?.getNodeById(e),n=B?.value?.getExpressionHandler();if(!t||!n)return;let r=P.getNodeType(t.type);if(r)if(ki.value=e,W.openingContext=`replacement`,Ye(r))W.openNodeCreatorForTriggerNodes(Y.value,ze.REPLACE_NODE_ACTION);else{let e=Jn({expression:n},t,r).map(e=>typeof e==`string`?e:e.type),i=lt({expression:n},t,r).map(e=>typeof e==`string`?e:e.type);e[0]&&i[0]&&e[0]!==i[0]?W.openNodeCreatorForRegularNodes(Y.value,ze.REPLACE_NODE_ACTION):W.openSelectiveNodeCreator({workflowId:Y.value,connectionType:e[0]??i[0],node:t.name})}}let qi=a(()=>Y.value?Ur(ie.getWorkflowById(Y.value)?.scopes).workflow:{}),Ji=a(()=>Ur((h.query?.projectId?pe.myProjects.find(e=>e.id===h.query.projectId):pe.currentProject??pe.personalProject)?.scopes)),Yi=_(!1),Xi=a(()=>V.value.isWorkflowRunning),Zi=a(()=>V.value.executionWaitingForWebhook),Qi=a(()=>ga.value&&_a.value&&!va.value?!0:!rr.value||ir.value),$i=a(()=>!_a.value||va.value),ea=a(()=>Xi.value&&!Zi.value),ta=a(()=>Xi.value&&Zi.value);async function na(e){let t=B?.value?.getNodeById(e);t&&(Ir(t)&&P.isToolNode(t.type)?F.openModalWithData({name:xn,data:{nodeName:t.name}}):(oa(t),ke.clearAgentRequests(Y.value,t.id),We({destinationNode:{nodeName:t.name,mode:`inclusive`},source:`Node.executeNode`})))}async function ra(e,t){let n=B?.value?.getNodeById(e);if(!n)return;let r=P.getNodeType(n.type,n.typeVersion);if(!r?.webhooks?.length)return;let i=r.webhooks[0],a=await Pe.getWebhookUrl(i,n,t);a&&(N.copy(a),w.showMessage({title:y.baseText(`nodeWebhooks.showMessage.title`),type:`success`}))}async function ia(e){let t=B?.value?.getNodeById(e);if(Mn.includes(t?.type??``)){w.showMessage({title:y.baseText(`nodeWebhooks.showMessage.testWebhookUrl`),type:`warning`});return}ra(e,`test`)}async function aa(e){if(!(B?.value?.active??!1)){w.showMessage({title:y.baseText(`nodeWebhooks.showMessage.not.active`),type:`warning`});return}ra(e,`production`)}function oa(e){let t={node_type:e.type,workflow_id:Y.value,source:`canvas`,push_ref:be.value.pushRef};x.track(`User clicked execute node button`,t),C.run(`nodeView.onRunNode`,t)}function sa(e){if(!e.finished&&e.data?.resultData?.error){let t=!1;if(e.data.resultData.runData){let n=e.data.resultData.runData;errorCheck:for(let e of Object.keys(n))for(let r of n[e])if(r.error){t=!0;break errorCheck}}!t&&(e.data.resultData.error.stack??e.data.resultData.error.message)&&(console.error(`Execution ${e.id} error:`),console.error(e.data.resultData.error.stack),w.showMessage({title:y.baseText(`nodeView.showError.workflowError`),message:e.data.resultData.error.message,type:`error`,duration:0}))}}function ca(e){e.waitTill&&w.showMessage({title:y.baseText(`nodeView.thisExecutionHasntFinishedYet`),message:u(Xa),type:`warning`,duration:0})}function la(){On.on(`open:execution`,sa),On.on(`open:execution`,ca)}function ua(){On.off(`open:execution`,sa),On.off(`open:execution`,ca)}async function da(){Yi.value=!0,await qe(),Yi.value=!1}async function fa(){await $e()}function pa(){Rn.emit(`runWorkflowButton:mouseenter`)}function ma(){Rn.emit(`runWorkflowButton:mouseleave`)}let ha=a(()=>B?.value?.allNodes.find(e=>e.type===de)),ga=a(()=>!Zi.value&&!!B?.value?.allNodes.find(e=>[`@n8n/n8n-nodes-langchain.manualChatTrigger`,`@n8n/n8n-nodes-langchain.chatTrigger`].includes(e.type)&&e.disabled!==!0)),_a=a(()=>tr.value.every(e=>e.disabled||e.type===`@n8n/n8n-nodes-langchain.chatTrigger`)),va=a(()=>ha.value?B?.value?.pinnedDataByNodeName?.[ha.value.name]:null),ya=a(()=>Ne.isFloatingChatEnabled&&ha.value?.parameters?.availableInChat===!0),ba=a(()=>Ne.isOpen);M(ya,e=>{!e&&ba.value&&Ne.close()});function xa(){ya.value?Ne.open():an(`main`)}function Sa(){ya.value?ba.value?Ne.close():Ne.open():Xn.value?Ae.toggleOpen(!1):an(`main`)}let Ca=a(()=>B?.value?.allNodes.find(e=>e.type===Cn)),wa=_(!1);async function Ta(){if(!wa.value){wa.value=!0;try{if(dn.value||await new Promise(e=>{let t=M(dn,n=>{n&&(t(),e())})}),!Na())return;if(Ca.value){Wt(Ca.value.name,`other`),dn.value?.ensureNodesAreVisible([Ca.value.id]);return}let{addedNodes:e}=await on([{type:Cn,openDetail:!0}],[],{viewport:za.value,telemetry:!0});if(e.length>0){let t=e[e.length-1];await l(),dn.value?.ensureNodesAreVisible([t.id])}}finally{try{await m.replace({query:{...h.query,action:void 0}})}finally{wa.value=!1}}}}function Ea(){J.on(`nodeMove`,hr),J.on(`revertAddNode`,Ii),J.on(`revertRemoveNode`,xr),J.on(`revertAddConnection`,xi),J.on(`revertRemoveConnection`,wi),J.on(`revertRenameNode`,pi),J.on(`revertReplaceNodeParameters`,mi),J.on(`enableNodeToggle`,Nr),J.on(`revertAddNodeGroup`,$),J.on(`revertRemoveNodeGroup`,Dr),J.on(`revertUpdateNodeGroup`,Or)}function Da(){J.off(`nodeMove`,hr),J.off(`revertAddNode`,Ii),J.off(`revertRemoveNode`,xr),J.off(`revertAddConnection`,xi),J.off(`revertRemoveConnection`,wi),J.off(`revertRenameNode`,pi),J.off(`revertReplaceNodeParameters`,mi),J.off(`enableNodeToggle`,Nr),J.off(`revertAddNodeGroup`,$),J.off(`revertRemoveNodeGroup`,Dr),J.off(`revertUpdateNodeGroup`,Or)}async function Oa(){try{if(await Promise.all([ue.fetchAllVariables(),ve.fetchAll(),yi(),pe.getAvailableProjects()]),Y.value&&!F.stateIsDirty){let e=await ie.fetchWorkflow(Y.value);e&&await $n(e)}}catch(e){console.error(e)}}function ka(){Me.on(`pull`,Oa)}function Aa(){Me.off(`pull`,Oa)}function ja(){On.on(`create:sticky`,Wi)}function Ma(){On.off(`create:sticky`,Wi)}function Na(){if(!F.nodeViewInitialized)return!0;if(pn.value?.visible||!(qi.value.update??Ji.value.workflow.update)||K.shouldBeReadOnly)return!1;if(Pn.value||Q.value){let e=Pn.value?`executions`:`workflows`;return pn.value=w.showMessage({title:y.baseText(Q.value?`readOnlyEnv.showMessage.${e}.title`:`readOnly.showMessage.executions.title`),message:y.baseText(Q.value?`readOnlyEnv.showMessage.${e}.message`:`readOnly.showMessage.executions.message`),type:`info`}),!1}return!0}function Pa(){K.requestWriteAccessForce()}function Fa(){Q.value&&[ot.NEW_WORKFLOW,ot.TEMPLATE_IMPORT].find(e=>e===h.name)&&l(async()=>{Zt(),F.markStateClean(),await m.replace({name:ot.HOMEPAGE})})}async function Ia(){h.name===ot.EXECUTION_DEBUG&&await m.replace({name:ot.WORKFLOW,params:{workflowId:Y.value}})}let La=_({x:0,y:0,zoom:1}),Ra=_({width:0,height:0}),za=a(()=>Qe(La.value,Ra.value));function Ba(e,t){La.value=e,Ra.value=t,F.nodeViewOffsetPosition=[e.x,e.y]}function Va(e){setTimeout(()=>On.emit(`nodes:select`,{ids:e}))}function Ha(e){en.value=[e.x,e.y],Xr()}function Ua(e){en.value=[e.x,e.y]}async function Wa(e,t){if(!t.dataTransfer)return;let n=Ze(t.dataTransfer.getData(Fe));n&&(await Pi(n,!0,[e.x,e.y]),zi({createNodeActive:!1,hasAddedNodes:!0}))}function Ja(){He({key:`openNodeDetail`,action:({node:e})=>{Wt(e,`other`)}}),He({key:`openSelectiveNodeCreator`,action:({creatorview:e,connectiontype:t,node:n})=>{W.openSelectiveNodeCreator({workflowId:Y.value,node:n,connectionType:t,creatorView:e})}}),He({key:`showNodeCreator`,action:()=>{be.value.unsetActiveNodeName(),l(()=>{Vi(ze.NODE_SHORTCUT)})}})}function Ya(){Ue(`openNodeDetail`),Ue(`openSelectiveNodeCreator`),Ue(`showNodeCreator`)}function Qa(){F.addFirstStepOnLoad&&(Vi(F.addFirstStepOnLoadSource??ze.TRIGGER_PLACEHOLDER_BUTTON),F.addFirstStepOnLoad=!1,F.addFirstStepOnLoadSource=void 0)}function $a(e){let t=B?.value?.findNodeByPartialId(e);t?gt(t.id,`other`):(w.showToast({title:y.baseText(`nodeView.showMessage.ndvUrl.missingNodes.title`),message:y.baseText(`nodeView.showMessage.ndvUrl.missingNodes.content`),type:`warning`}),m.replace({name:h.name,params:{workflowId:Y.value},query:h.query}))}return M([()=>h.name,()=>h.params.workflowId],()=>{Zn()}),M(a(()=>B?.value?.homeProject?.id??pe.currentProject?.id??pe.personalProject?.id),e=>{e&&he.fetchForProject(e)},{immediate:!0}),M(()=>fn.value||Bn.value||(B?.value?.allNodes??[]).length!==0,e=>{if(e){_n.value=[];return}let t={id:Dn.AddNodes,name:Dn.AddNodes,type:Dn.AddNodes,typeVersion:1,position:[0,0],parameters:{}},n={id:Dn.ChoicePrompt,name:Dn.ChoicePrompt,type:Dn.ChoicePrompt,typeVersion:1,position:[0,0],parameters:{},draggable:!1};_n.value=Ee.isAIBuilderEnabled?[n]:[t]}),M(()=>h.params.nodeId,async e=>{typeof e!=`string`||e===``?be.value.unsetActiveNodeName():$a(e)}),M(()=>be.value.activeNode,async e=>{if(![ot.WORKFLOW].includes(String(h.name)))return;let t=e?.id?z.getPartialIdForNode(e?.id):``;t!==h.params.nodeId&&await m.replace({name:h.name,params:{workflowId:Y.value,nodeId:t},query:h.query})}),M(()=>F.dirtyStateSetCount,e=>{if(e>0){if(jn.value)return;K.requestWriteAccess(),Ee.streaming||A.autoSaveWorkflow()}}),M(()=>Ee.streaming,(e,t)=>{t&&!e&&F.stateIsDirty&&!K.shouldBeReadOnly&&A.autoSaveWorkflow()}),M([or,a(()=>{if(Xi.value)return V.value.activeExecution?.triggerNode?V.value.activeExecution.triggerNode:Object.keys(V.value.activeExecution?.data?.resultData.runData??{}).find(e=>B?.value?.workflowTriggerNodes.some(t=>t.name===e))})],([e,t],[n])=>{if(t!==void 0){V.value.setSelectedTriggerNodeName(t);return}if(V.value.selectedTriggerNodeName===void 0||e.every(e=>e.name!==V.value.selectedTriggerNodeName)){V.value.setSelectedTriggerNodeName(nt(or.value,P.getNodeType)?.name);return}let r=e?.find(e=>n?.every(t=>t.name!==e.name));r!==void 0&&V.value.setSelectedTriggerNodeName(r.name)},{immediate:!0}),R(async(e,t,n)=>{if(Se.focusPanelActive&&Se.closeFocusPanel(),Q.value){n();return}let r=hn(e),i=[ot.WORKFLOW,ot.NEW_WORKFLOW].includes(t.name)&&[ot.WORKFLOW,ot.NEW_WORKFLOW].includes(e.name)&&t.params.workflowId!==e.params.workflowId;if((r===ln.EXECUTIONS||r===ln.EVALUATION||t.name===ot.TEMPLATE_IMPORT||r===ln.WORKFLOW&&t.name===ot.EXECUTION_DEBUG)&&!i){n();return}await A.promptSaveUnsavedWorkflowChanges(n,{async confirm(){if(t.name===ot.NEW_WORKFLOW){let t=Y.value;return await m.replace({name:ot.WORKFLOW,params:{workflowId:t}}),await m.push(e),!1}return z.setWorkflowId(``),!0}})}),d(async()=>{K.setRefreshCanvasCallback(async e=>{await Qt(e)});try{Zn(),h.query.settings&&(F.openModal(Mt),m.replace({query:{settings:void 0}}))}finally{fn.value=!1,C.run(`nodeView.mount`).catch(()=>{}),setTimeout(()=>{yn.value&&$a(yn.value)},500)}_e.showPersonalizationSurvey(),Fa(),ka(),ai(),q(),Di(),la(),ja(),Ja(),Ea(),Qa()}),b(()=>{Zr=!0,F.closeModal(Mt),w.clearAllStickyNotifications(),B?.value?.setViewport(La.value),Aa(),oi(),Be(),Oi(),ua(),Ma(),Ya(),Da(),On.off(`saved:workflow`,Ia)}),(e,a)=>(S(),o(`div`,{class:T(r(p).wrapper)},[fn.value?s(``,!0):(S(),v(di,{key:0,id:r(B)?.workflowId,ref:`canvas`,"fallback-nodes":_n.value,"show-fallback-nodes":qn.value,"event-bus":r(On),"read-only":Bn.value,"group-expansion-mode":Vn.value,"can-execute":Wn.value,executing:Xi.value,"key-bindings":Yn.value,"suppress-interaction":r(je).isMapperOpen,"striped-background":En.value,"hide-controls":wn.value,"initial-viewport":r(B)?.viewport,"onUpdate:nodes:position":dr,"onUpdate:node:position":mr,"onUpdate:node:activated":Br,"onUpdate:node:deactivated":Wr,"onUpdate:node:selected":Xr,"onUpdate:node:enabled":Mr,"onUpdate:node:name":fi,"onUpdate:node:parameters":hi,"onUpdate:node:inputs":gi,"onUpdate:node:outputs":_i,"onUpdate:logsOpen":a[1]||=e=>r(Ae).toggleOpen(e),"onUpdate:logs:inputOpen":r(Ae).toggleInputOpen,"onUpdate:logs:outputOpen":r(Ae).toggleOutputOpen,"onUpdate:hasRangeSelection":r(G).setHasRangeSelection,"onUpdate:selectedGroup":r(G).setSelectedGroupId,"onOpen:subWorkflow":Hr,"onClick:node":zr,"onClick:node:add":vi,"onRun:node":na,"onCopy:production:url":aa,"onCopy:test:url":ia,"onDelete:node":vr,"onCreate:connection":bi,"onCreate:connection:cancelled":Si,"onDelete:connection":Ci,"onClick:connection:add":Gi,"onClick:pane":Ha,"onCreate:node":Bi,"onCreate:sticky":Wi,"onDelete:nodes":br,"onUpdate:nodes:enabled":Pr,"onUpdate:nodes:pin":ri,"onDuplicate:nodes":ni,"onCopy:nodes":$r,"onCut:nodes":ti,"onReplace:node":Ki,"onRun:workflow":a[2]||=e=>r(Ge)(`main`),"onSave:workflow":ci,"onCreate:workflow":si,"onViewport:change":Ba,"onSelection:end":Ua,onDragAndDrop:Wa,onTidyUp:lr,"onToggle:focusPanel":Hi,onExtractWorkflow:ur,onStartChat:Sa},{default:H(()=>[U(`div`,{class:T(r(p).canvasTopLeftContainer)},[U(`div`,{class:T(r(p).canvasTopLeft)},[Nn.value?(S(),v(r(gr),{key:0,size:`small`,collapsed:!1,class:T(r(p).canvasOnlyLogo),"aria-hidden":`true`},null,8,[`class`])):s(``,!0),Bn.value?s(``,!0):(S(),v(se,{key:1},{default:H(()=>[I(r(c),{collapsible:Nn.value,class:T(r(p).setupCredentialsButton)},null,8,[`collapsible`,`class`])]),_:1}))],2)],2),Bn.value?s(``,!0):(S(),v(ro,{key:0,class:T(r(p).evaluationsCanvasInfoCardWrapper)},null,8,[`class`])),!Bn.value||Wn.value?(S(),o(`div`,{key:1,class:T(r(p).executionButtons)},[$i.value?(S(),v(rt,{key:0,"waiting-for-webhook":Zi.value,disabled:Qi.value,executing:Xi.value,"trigger-nodes":tr.value,"get-node-type":r(P).getNodeType,"selected-trigger-node-name":V.value.selectedTriggerNodeName,type:zn.value,onMouseenter:pa,onMouseleave:ma,onExecute:a[0]||=e=>r(Ge)(`main`),onSelectTriggerNode:V.value.setSelectedTriggerNodeName},null,8,[`waiting-for-webhook`,`disabled`,`executing`,`trigger-nodes`,`get-node-type`,`selected-trigger-node-name`,`type`,`onSelectTriggerNode`])):s(``,!0),ga.value?(S(),o(k,{key:1},[(ya.value?ba.value:Xn.value)?(S(),v(Za,{key:0,variant:`subtle`,label:r(y).baseText(`chat.hide`),class:T(r(p).chatButton),onClick:Sa},null,8,[`label`,`class`])):(S(),v(zt,{key:1,label:r(y).baseText(`chat.open`),shortcut:{keys:[`c`]}},{default:H(()=>[I(Za,{variant:$i.value?`subtle`:`solid`,label:r(y).baseText(`chat.open`),class:T(r(p).chatButton),onClick:xa},null,8,[`variant`,`label`,`class`])]),_:1},8,[`label`]))],64)):s(``,!0),ea.value?(S(),v(Ka,{key:2,stopping:Yi.value,size:sr.value?`xlarge`:`large`,onClick:da},null,8,[`stopping`,`size`])):s(``,!0),ta.value?(S(),v(qa,{key:3,size:sr.value?`xlarge`:`large`,onClick:fa},null,8,[`size`])):s(``,!0)],2)):s(``,!0),Q.value?(S(),v(r(Pt),{key:2,theme:`warning`,icon:`lock`,class:T(r(p).readOnlyEnvironmentNotification)},{default:H(()=>[n(L(r(y).baseText(`readOnlyEnv.cantEditOrRun`)),1)]),_:1},8,[`class`])):s(``,!0),r(K).currentWriter&&!r(K).isCurrentTabWriter?(S(),v(r(kt),{key:3,class:T(r(p).canvasCenterPill),"is-another-tab":Gn.value,"first-name":r(K).currentWriter.user.firstName,"last-name":r(K).currentWriter.user.lastName,onButtonClick:Pa},null,8,[`class`,`is-another-tab`,`first-name`,`last-name`])):s(``,!0),r(Ee).streaming&&!r(Ee).isHelpStreaming?(S(),v(r(xe),{key:4,class:T(r(p).canvasCenterPill),"show-stop":``,onStop:r(Ee).abortStreaming},null,8,[`class`,`onStop`])):s(``,!0),(S(),v(se,null,{default:H(()=>[Bn.value?s(``,!0):(S(),v(r(t),{key:0,"create-node-active":r(W).isCreateNodeActive,"node-view-scale":La.value.zoom,"focus-panel-active":r(Se).focusPanelActive,onToggleNodeCreator:zi,onAddNodes:Pi,onAddEmptyGroup:Fi,onClose:ji},null,8,[`create-node-active`,`node-view-scale`,`focus-panel-active`]))]),_:1})),(S(),v(se,null,{default:H(()=>[I(r(i),{"read-only":Bn.value,"is-production-execution-preview":r(j).isProductionExecutionPreview.value,onRenameNode:li,onStopExecution:da,onSwitchSelectedNode:Li,onOpenConnectionNodeCreator:Ri,onReplaceNode:Ki},null,8,[`read-only`,`is-production-execution-preview`])]),_:1}))]),_:1},8,[`id`,`fallback-nodes`,`show-fallback-nodes`,`event-bus`,`read-only`,`group-expansion-mode`,`can-execute`,`executing`,`key-bindings`,`suppress-interaction`,`striped-background`,`hide-controls`,`initial-viewport`,`onUpdate:logs:inputOpen`,`onUpdate:logs:outputOpen`,`onUpdate:hasRangeSelection`,`onUpdate:selectedGroup`])),!fn.value&&(!r(je).isNdvInFocusPanelEnabled||!Bn.value)?(S(),v(Ga,{key:1,"is-canvas-read-only":Bn.value,onContextMenuAction:ii},null,8,[`is-canvas-read-only`])):s(``,!0)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_1qr7i_113`,executionButtons:`_executionButtons_1qr7i_118`,chatButton:`_chatButton_1qr7i_136`,canvasTopLeftContainer:`_canvasTopLeftContainer_1qr7i_140`,canvasTopLeft:`_canvasTopLeft_1qr7i_140`,canvasOnlyLogo:`_canvasOnlyLogo_1qr7i_156`,setupCredentialsButton:`_setupCredentialsButton_1qr7i_160`,evaluationsCanvasInfoCardWrapper:`_evaluationsCanvasInfoCardWrapper_1qr7i_164`,readOnlyEnvironmentNotification:`_readOnlyEnvironmentNotification_1qr7i_171`,canvasCenterPill:`_canvasCenterPill_1qr7i_178`}}]]);export{Ni as n,io as t};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/NodeCreation-BCtiN2Ss.js","assets/app-D5iNDcFq.js","assets/rolldown-runtime-BobR2NKB.js","assets/vendor-BBKxcFox.js","assets/vendor-BpMiN8nO.css","assets/app-BmIwtNOy.css","assets/NodeCreation-CpR6ewOx.css","assets/NodeDetailsView-BaVQeJXW.js","assets/LogsOverviewRow-CmmPGQP8.js","assets/AnimatedSpinner-CTvo7f8p.js","assets/AnimatedSpinner-OiUdRqev.css","assets/LogsOverviewRow-DGf07F0R.css","assets/useLogsTreeExpand-DMGFKyvB.js","assets/useLogsTreeExpand-COyoDDNP.css","assets/useExecutionData-DjK1sCOA.js","assets/RunDataParsedAiContent-Y2ecB_kD.js","assets/RunDataParsedAiContent-Cr5GyLhr.css","assets/NodeDetailsView-DEIl7Nig.css","assets/SetupWorkflowCredentialsButton-BvTti5_D.js","assets/readyToRun.store-Bd-_vQmA.js","assets/SetupWorkflowCredentialsButton-DIAgU1S5.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`61677f74-7dc0-4654-b8fa-9af54ac01d79`,e._sentryDebugIdIdentifier=`sentry-dbid-61677f74-7dc0-4654-b8fa-9af54ac01d79`)})()}catch{}import{$f as e,$u as t,Ad as n,Af as r,Bd as i,Cd as a,Dd as o,Ed as s,Ef as c,Hd as l,Id as u,Kd as d,Md as f,Nd as p,Od as m,Of as h,Qd as g,Sf as _,Td as v,Vd as y,Wd as b,Xd as x,Yd as S,Yu as C,Zd as w,Zf as T,_f as E,_u as D,as as O,bd as k,bf as A,cd as j,cf as M,hi as N,ho as P,if as F,is as ee,jd as I,md as te,np as L,ns as R,of as ne,pf as re,pi as z,po as B,td as V,uf as H,uu as ie,vd as ae,wd as U,wf as oe,xd as se,y as W,yd as ce,yf as le}from"./vendor-BBKxcFox.js";import{$ as ue,$C as G,$m as de,$o as fe,$s as pe,$y as me,Af as he,Au as ge,Ax as _e,BC as ve,B_ as ye,Bf as be,CC as xe,CS as Se,Cb as Ce,Cd as we,Cl as Te,Cn as Ee,Cu as De,DS as Oe,Df as ke,E_ as Ae,Ed as je,Ef as K,Ei as Me,En as Ne,FC as Pe,Fm as Fe,Fo as Ie,Fu as Le,GC as q,Gf as Re,Gm as ze,Gn as Be,H_ as Ve,Hb as He,Hl as Ue,Hn as We,Hs as Ge,Hu as Ke,IC as qe,I_ as Je,Ib as Ye,Iu as Xe,Jb as Ze,Jf as Qe,Jg as $e,Jn as et,Js as tt,Ju as nt,K as rt,Kn as it,Ko as at,L_ as ot,Ln as st,Lx as ct,Mb as lt,Mf as ut,Mm as dt,Mu as ft,Nf as pt,Nn as mt,Nu as ht,Oc as gt,Of as _t,Og as vt,On as yt,PC as bt,Pn as xt,Pu as J,Q as St,QC as Ct,Qn as wt,Qo as Tt,Qx as Et,R_ as Dt,Ru as Ot,SC as kt,Sc as At,Sd as jt,Sg as Mt,Sp as Nt,TC as Pt,Tb as Ft,Td as It,Tf as Lt,Tn as Rt,To as zt,U_ as Bt,Ub as Vt,Uc as Ht,Uf as Ut,Ul as Wt,Un as Gt,Vn as Kt,W_ as qt,Wc as Jt,Wf as Yt,Wm as Xt,Wn as Zt,Ws as Qt,Wu as $t,X as en,Xc as tn,Xd as nn,Xm as rn,Xs as an,Y as on,YS as sn,Yc as cn,Yh as ln,Yn as un,Ys as dn,Z as fn,ZC as pn,Zc as mn,Zf as hn,Zh as gn,Zn as _n,Zo as vn,_S as Y,_c as yn,_f as bn,ag as xn,at as Sn,ax as Cn,bC as wn,bd as Tn,bn as En,bp as Dn,bu as On,ch as kn,ci as An,cw as X,cx as jn,dd as Z,dh as Mn,di as Nn,eu as Pn,ew as Q,ex as Fn,fC as In,fi as Ln,fu as Rn,gS as zn,hC as Bn,hn as Vn,ic as Hn,id as Un,im as Wn,it as Gn,iw as Kn,ix as qn,jb as Jn,jc as Yn,jf as Xn,jn as Zn,kf as Qn,kn as $n,lf as er,li as tr,mi as nr,mu as rr,nc as ir,nd as ar,nt as or,oc as sr,of as cr,oh as lr,om as ur,ot as dr,pf as fr,ph as pr,q as mr,qC as hr,qS as gr,qf as _r,qn as vr,qo as yr,qs as br,rc as xr,rf as Sr,rl as Cr,rw as $,rx as wr,sc as Tr,sf as Er,st as Dr,td as Or,tf as kr,tl as Ar,tu as jr,tx as Mr,ui as Nr,um as Pr,uu as Fr,vd as Ir,vp as Lr,vu as Rr,wb as zr,wd as Br,wi as Vr,xn as Hr,xy as Ur,yC as Wr,yf as Gr,zu as Kr}from"./app-D5iNDcFq.js";import{t as qr}from"./usePostMessageHandler-Cw2HRrwC.js";import{t as Jr}from"./useMcpJsonNudgeTrigger-CNo-6dP5.js";import{n as Yr,t as Xr}from"./EvaluationsPaywall-DQyicyLf.js";import{t as Zr}from"./useExecutionData-DjK1sCOA.js";import{a as Qr,c as $r,d as ei,i as ti,l as ni,n as ri,o as ii,r as ai,s as oi,t as si,u as ci}from"./evaluation.constants-CoqV6UIR.js";import{t as li}from"./useEvaluationsLicense-BXGUa9dO.js";import{t as ui}from"./useActivityDetection-CGvbgOFC.js";var di=$(p({inheritAttrs:!1,__name:`WorkflowCanvas`,props:{id:{default:`canvas`},fallbackNodes:{default:()=>[]},showFallbackNodes:{type:Boolean,default:!0},eventBus:{default:()=>Wr()},readOnly:{type:Boolean},groupExpansionMode:{default:void 0},canExecute:{type:Boolean},executing:{type:Boolean},suppressInteraction:{type:Boolean,default:!1},stripedBackground:{type:Boolean,default:!0},initialViewport:{}},setup(e,{expose:t}){let n=e,i=ne(`canvas`),s=te(),c=Z(),l=oe(Ut()),u;M(()=>c.value.documentId,e=>{u?.stop(),u=re(!0),u.run(()=>{l.value=Kt(e)})},{immediate:!0}),le(()=>u?.stop());let{onNodesInitialized:d,viewport:f,viewportRef:p,getNodes:m,fitBounds:h}=N(n.id),v=a(()=>n.showFallbackNodes?[...c.value.allNodes,...n.fallbackNodes]:c.value.allNodes),b=a(()=>c.value.connectionsBySourceNode),w=Be({workflowId:()=>c.value.workflowId,getCurrentGroupIds:()=>c.value.allGroups.map(e=>e.id),onNodeGroupsChange:e=>c.value.onNodeGroupsChange(e),getGroupExpansionMode:()=>n.groupExpansionMode}),E=et({workflowId:()=>c.value.workflowId,getCurrentGroups:()=>c.value.allGroups,onNodeGroupsChange:e=>c.value.onNodeGroupsChange(e)});M(()=>c.value.documentId,()=>{w.reinitialize(),V(),E.reinitialize()});let D=a(()=>c.value.allGroups),O=a(()=>n.readOnly??!1),k=a(()=>n.suppressInteraction??!1),A=mn(),j=a(()=>A.isActive(f.value.zoom)),P=Jt(),{nodes:F,connections:ee,nodeDisplaySizeById:L,getNodeExecutionSnapshot:R}=We({nodes:v,connections:b,renderData:l,allGroups:D,nodeGroupView:w,isExperimentalNdvActive:j,getAgentNodeHeight:e=>P.getNodeHeight(n.id,e)}),B=a(()=>{switch(n.groupExpansionMode){case`all`:return D.value.map(e=>e.id);case`errored`:return D.value.filter(e=>tr(e.nodeIds,R)===`error`).map(e=>e.id);default:return[]}});function V(){for(let e of B.value)w.setGroupExpanded(e,!0)}M(B,V,{immediate:!0}),M(a(()=>c.value.allGroups.length===0?[]:it({allGroups:c.value.allGroups,nodes:v.value,getNodeById:e=>c.value.getNodeById(e),getNodeDisplaySize:e=>L.value[e],isGroupCollapsed:e=>w.isGroupCollapsed(e)})),e=>w.syncLayoutComponents(e),{immediate:!0});let H=a(()=>Nr({allGroups:D.value,getNodeById:e=>c.value.getNodeById(e),getNodeDisplaySize:e=>L.value[e],getGroupVisualOffset:e=>w.getVisualOffsetForComponent(e),isGroupCollapsed:e=>w.isGroupCollapsed(e),readOnly:O.value||k.value,getNodeExecutionSnapshot:R})),ie=a(()=>[...F.value,...H.value]);x(Zt,w),x(vr,E),x(Ln,{isGroupCollapsed:e=>w.isGroupCollapsed(e),isDescriptionVisible:e=>E.isVisible(e)});let ae=_(!1),{off:se}=d(()=>{ae.value||(n.initialViewport||n.eventBus.emit(`fitView`),ae.value=!0,se())}),W=C(ie,200),ce=C(ee,200);return t({executeContextMenuAction:(e,t)=>i.value?.executeContextMenuAction(e,t),ensureNodesAreVisible:e=>{let t=p.value;if(!t)return;let r=m.value.filter(t=>e.includes(t.id));if(r.length===0)return;let i=d(()=>{let a=f.value,o=t.clientWidth,s=t.clientHeight,c=z(r),l=c.x*a.zoom+a.x,u=c.y*a.zoom+a.y,d=c.width*a.zoom,p=c.height*a.zoom;if(!(l>=0&&u>=0&&l+d<=o&&u+p<=s)){let e={x:-a.x/a.zoom,y:-a.y/a.zoom,width:o/a.zoom,height:s/a.zoom},t=Math.min(e.x,c.x),n=Math.min(e.y,c.y),r=Math.max(e.x+e.width,c.x+c.width),i=Math.max(e.y+e.height,c.y+c.height);h({x:t,y:n,width:r-t,height:i-n},{padding:.15,duration:100})}n.eventBus.emit(`nodes:select`,{ids:e}),i.off()})}}),(t,n)=>(S(),o(`div`,{class:T(r(s).wrapper),"data-test-id":`canvas-wrapper`},[U(`div`,{id:`canvas`,class:T(r(s).canvas)},[I(Gt,y({id:e.id,ref:`canvas`,nodes:e.executing?r(W):ie.value,connections:e.executing?r(ce):r(ee),"render-data":l.value,"node-display-size-by-id":r(L),"event-bus":e.eventBus,"read-only":e.readOnly,"can-execute":e.canExecute,executing:e.executing,"suppress-interaction":e.suppressInteraction,"striped-background":e.stripedBackground,"initial-viewport":e.initialViewport},t.$attrs),null,16,[`id`,`nodes`,`connections`,`render-data`,`node-display-size-by-id`,`event-bus`,`read-only`,`can-execute`,`executing`,`suppress-interaction`,`striped-background`,`initial-viewport`])],2),g(t.$slots,`default`)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_ainvf_1`,canvas:`_canvas_ainvf_9`}}]]),fi=$(p({__name:`FocusSidebarTabs`,props:{modelValue:{default:`setup`},tabLabels:{default:()=>({})}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=X(),i=De(),s=cn(),c=a(()=>s.isFeatureEnabled),{isFeatureEnabled:l}=Yr(),u=e,d=t,f=a(()=>{let e=[];return c.value&&e.push({label:u.tabLabels?.setup??n.baseText(`setupPanel.tabs.setup`),value:`setup`}),e.push({label:u.tabLabels?.focus??n.baseText(`setupPanel.tabs.focus`),value:`focus`}),l.value&&e.push({label:u.tabLabels?.evaluations??n.baseText(`setupPanel.tabs.evaluations`),value:`evaluations`}),e}),p=e=>{d(`update:modelValue`,e)};return(t,n)=>(S(),o(`div`,{class:T(t.$style.container),"data-test-id":`setup-panel-tabs`},[I(r(zn),{"model-value":e.modelValue,options:f.value,size:`small`,"onUpdate:modelValue":p},null,8,[`model-value`,`options`]),U(`button`,{"data-test-id":`setup-panel-close`,class:T(t.$style[`close-button`]),onClick:n[0]||=e=>r(i).closeFocusPanel()},[I(r(Q),{icon:`x`,size:`small`})],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_2u5bd_1`,"close-button":`_close-button_2u5bd_18`}}]]),pi=[`data-test-id`],mi=[`data-test-id`],hi=p({__name:`SetupCard`,props:i({isComplete:{type:Boolean},loading:{type:Boolean,default:!1},cardTestId:{},title:{},showFooter:{type:Boolean,default:!0},executableNode:{default:null},isTrigger:{type:Boolean,default:!1},isTestingCredential:{type:Boolean,default:!1},highlightNodeIds:{default:()=>[]},telemetryPayload:{default:()=>({})}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:[`update:expanded`],setup(e,{expose:t}){let i=e,c=F(e,`expanded`),l=X(),u=ye(),d=cn(),f=Z(),p=_(!1),m=()=>{p.value=!0},h=()=>{c.value=!c.value},y=()=>{i.highlightNodeIds.length>0&&d.setHighlightedNodes(i.highlightNodeIds)},x=()=>{i.highlightNodeIds.length>0&&d.clearHighlightedNodes()},C=a(()=>i.executableNode??null),{isExecuting:w,isButtonDisabled:E,label:D,buttonIcon:O,tooltipItems:A,execute:N,isInListeningState:P,listeningHint:ee}=St(C),{webhookUrls:te}=fn(C),R=a(()=>i.executableNode?.type===`@n8n/n8n-nodes-langchain.chatTrigger`&&P.value?!1:!!i.executableNode),ne=a(()=>i.isTrigger&&P.value),re=async()=>{await N(),m()};return b(()=>{d.clearHighlightedNodes()}),M(()=>i.isComplete,e=>{e&&p.value&&(u.track(`User completed setup step`,{template_id:f?.value?.meta?.templateId,workflow_id:f?.value?.workflowId,...i.telemetryPayload}),p.value=!1)}),t({markInteracted:m}),(t,i)=>(S(),o(`div`,{"data-test-id":e.cardTestId,class:T([t.$style.card,{[t.$style.collapsed]:!c.value,[t.$style.completed]:e.isComplete,[t.$style[`no-footer`]]:!e.showFooter&&c.value}]),onMouseenter:y,onMouseleave:x},[U(`header`,{"data-test-id":`${e.cardTestId}-header`,class:T(t.$style.header),onClick:h},[!c.value&&e.loading&&!e.isComplete?(S(),v(r(Q),{key:0,"data-test-id":`${e.cardTestId}-loading-icon`,icon:`spinner`,spin:!0,class:T(t.$style[`loading-icon`]),size:`medium`},null,8,[`data-test-id`,`class`])):!c.value&&e.isComplete?(S(),v(r(Q),{key:1,"data-test-id":`${e.cardTestId}-complete-icon`,icon:`check`,class:T(t.$style[`complete-icon`]),size:`medium`},null,8,[`data-test-id`,`class`])):g(t.$slots,`icon`,{key:2},void 0,!0),I(r(q),{class:T(t.$style[`card-title`]),size:`medium`,color:`text-dark`},{default:H(()=>[n(L(e.title),1)]),_:1},8,[`class`]),U(`div`,{class:T(t.$style[`header-extra`])},[g(t.$slots,`header-extra`,{},void 0,!0)],2),I(r(Q),{class:T(t.$style.chevron),icon:c.value?`chevrons-down-up`:`chevrons-up-down`,size:`large`,color:`text-light`},null,8,[`class`,`icon`])],10,mi),c.value?(S(),o(k,{key:0},[g(t.$slots,`card-description`,{},void 0,!0),I(j,{name:`callout-fade`},{default:H(()=>[ne.value?(S(),o(`div`,{key:0,class:T(t.$style[`callout-grid`])},[U(`div`,{class:T(t.$style[`callout-inner`])},[I(r(Pt),{"data-test-id":`trigger-listening-callout`,theme:`secondary`,class:T(t.$style.callout)},{default:H(()=>[n(L(r(ee)),1)]),_:1},8,[`class`])],2)],2)):s(``,!0)]),_:1}),e.isTrigger&&r(P)&&r(te).length>0?(S(),v(dr,{key:0,urls:r(te)},null,8,[`urls`])):s(``,!0),g(t.$slots,`default`,{},void 0,!0),e.showFooter?(S(),o(`footer`,{key:1,class:T(t.$style.footer)},[e.isComplete?(S(),o(`div`,{key:0,class:T(t.$style[`footer-complete-check`])},[I(r(Q),{icon:`check`,class:T(t.$style[`complete-icon`]),size:`large`},null,8,[`class`]),I(r(q),{size:`medium`,color:`success`},{default:H(()=>[n(L(r(l).baseText(`generic.complete`)),1)]),_:1})],2)):s(``,!0),g(t.$slots,`footer-actions`,{},void 0,!0),R.value?(S(),v(Dr,{key:1,label:r(D),icon:r(O),disabled:r(E)||e.isTestingCredential,loading:r(w),"tooltip-items":r(A),onClick:re},null,8,[`label`,`icon`,`disabled`,`loading`,`tooltip-items`])):s(``,!0)],2)):s(``,!0)],64)):s(``,!0)],42,pi))}}),gi=`_card_gqw1c_1`,_i=`_header_gqw1c_14`,vi=`_chevron_gqw1c_25`,yi=`_collapsed_gqw1c_34`,bi=`_footer_gqw1c_59`,xi=`_completed_gqw1c_86`,Si=`_callout_gqw1c_93`,Ci=$(hi,[[`__cssModules`,{$style:{card:gi,"no-footer":`_no-footer_gqw1c_10`,header:_i,"header-extra":`_header-extra_gqw1c_22`,chevron:vi,collapsed:yi,"card-title":`_card-title_gqw1c_38`,"complete-icon":`_complete-icon_gqw1c_43`,"loading-icon":`_loading-icon_gqw1c_52`,footer:bi,"footer-complete-check":`_footer-complete-check_gqw1c_66`,completed:xi,callout:Si,"callout-grid":`_callout-grid_gqw1c_97`,"callout-inner":`_callout-inner_gqw1c_102`}}],[`__scopeId`,`data-v-119aeb94`]]),wi=$(p({__name:`NodeSetupCard`,props:i({state:{},firstTriggerName:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:i([`credentialSelected`,`credentialDeselected`],[`update:expanded`]),setup(e,{emit:t}){let i=e,o=F(e,`expanded`),c=t,l=X(),u=Tn(),d=kr(),f=ge(),p=Z(),h=_(null),g=a(()=>u.getNodeType(i.state.node.type,i.state.node.typeVersion)),y=a(()=>!!i.state.credentialType),b=a(()=>i.state.isTrigger?!i.firstTriggerName||i.state.node.type===`n8n-nodes-base.manualTrigger`?null:i.state.node.name===i.firstTriggerName?i.state.node:null:f.isNodeExecutable(i.state.node,!0,[])?i.state.node:null),x=a(()=>{let e=i.state.selectedCredentialId;return!!e&&d.isCredentialTestPending(e)}),C=a(()=>!y.value||b.value!==null||i.state.isComplete),w=a(()=>Object.keys(i.state.parameterIssues).length>0),E=_([]),D=a(()=>E.value.length>0),O=a(()=>i.state.isTrigger&&!y.value&&!D.value),k=a(()=>y.value&&!D.value&&!O.value),A=a(()=>{let e=[];return O.value&&e.push(`trigger`),y.value&&e.push(`credential`),w.value&&e.push(`param`),{type:e,template_id:p.value.meta?.templateId,workflow_id:p.value.workflowId,node_types:(i.state.allNodesUsingCredential??[i.state.node]).map(e=>e.type),credential_type:i.state.credentialType,has_parameters:w.value,missing_parameters_count:Object.keys(i.state.parameterIssues).length}}),j=()=>{h.value?.markInteracted()},N=_(Object.keys(i.state.parameterIssues).length===0),P=a(()=>N.value||(i.state.additionalParameterNames?.length??0)>0&&Object.keys(i.state.parameterIssues).length===0),ee=_(!i.state.isAutoApplied);M(()=>i.state.isAutoApplied??!1,e=>{e||(ee.value=!0)}),M(o,(e,t)=>{t&&!e&&(Object.keys(i.state.parameterIssues).length===0&&(N.value=!0),i.state.isAutoApplied&&(ee.value=!0))});let te=a(()=>D.value?i.state.isComplete&&P.value&&ee.value:i.state.isComplete&&ee.value),R=a(()=>(i.state.allNodesUsingCredential??[i.state.node]).map(({id:e})=>e));return(t,i)=>(S(),v(Ci,{ref_key:`setupCard`,ref:h,expanded:o.value,"onUpdate:expanded":i[3]||=e=>o.value=e,"is-complete":te.value,loading:x.value,title:e.state.node.name,"show-footer":C.value,"executable-node":b.value,"is-trigger":e.state.isTrigger,"is-testing-credential":x.value,"telemetry-payload":A.value,"highlight-node-ids":R.value,"card-test-id":`node-setup-card`},m({icon:H(()=>[k.value?(S(),v(Yn,{key:0,"credential-type-name":e.state.credentialType,size:16},null,8,[`credential-type-name`])):(S(),v(yn,{key:1,"node-type":g.value,size:16},null,8,[`node-type`]))]),"card-description":H(()=>[e.state.isTrigger&&y.value&&!e.state.selectedCredentialId?(S(),v(r(q),{key:0,size:`medium`,color:`text-base`,class:`pl-xs pr-xs`},{default:H(()=>[n(L(r(l).baseText(`setupPanel.trigger.credential.note`)),1)]),_:1})):D.value?(S(),v(r(q),{key:1,size:`medium`,color:`text-base`,class:`pl-xs pr-xs`},{default:H(()=>[n(L(r(l).baseText(`setupPanel.parameter.description`)),1)]),_:1})):s(``,!0)]),default:H(()=>[O.value?s(``,!0):(S(),v(Sn,{key:0,state:e.state},{default:H(()=>[U(`div`,{class:T(t.$style.content)},[I(ue,{state:e.state,"sticky-parameters":E.value,onCredentialSelected:i[0]||=e=>{j(),c(`credentialSelected`,e)},onCredentialDeselected:i[1]||=e=>{j(),c(`credentialDeselected`,e)},onInteracted:j,onParametersDiscovered:i[2]||=e=>E.value.push(...e)},null,8,[`state`,`sticky-parameters`])],2)]),_:1},8,[`state`]))]),_:2},[O.value?{name:`header-extra`,fn:H(()=>[I(r(hr),null,{content:H(()=>[n(L(r(l).baseText(`nodeCreator.nodeItem.triggerIconTitle`)),1)]),default:H(()=>[I(r(Q),{icon:`zap`,size:`small`,color:`text-light`})]),_:1})]),key:`0`}:void 0]),1032,[`expanded`,`is-complete`,`loading`,`title`,`show-footer`,`executable-node`,`is-trigger`,`is-testing-credential`,`telemetry-payload`,`highlight-node-ids`]))}}),[[`__cssModules`,{$style:{content:`_content_uaete_1`}}]]),Ti=[`onMouseenter`],Ei=[`onClick`],Di=$(p({__name:`NodeGroupSetupCard`,props:i({nodeGroup:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:i([`credentialSelected`,`credentialDeselected`],[`update:expanded`]),setup(e,{emit:t}){let i=e,l=F(e,`expanded`),u=t,d=ge(),f=Z(),p=cn(),m=_(null),{parentNodeType:h,subnodeSections:g,allSections:y,getStickyParameters:b,addStickyParameters:x,expandedSections:C,toggleSection:E,hoveredSection:D,onSectionMouseEnter:O,onSectionMouseLeave:A,getSectionNodeType:j}=en(c(i,`nodeGroup`)),N=a(()=>{let e=i.nodeGroup.parentNode;return d.isNodeExecutable(e,!0,[])?e:null}),P=a(()=>or({nodeGroup:i.nodeGroup})),ee=a(()=>{let e=new Set([i.nodeGroup.parentNode.id]);for(let t of y.value)e.add(t.node.id);return[...e]}),te=a(()=>D.value?(D.value.allNodesUsingCredential??[D.value.node]).map(e=>e.id):ee.value);M(te,e=>{l.value&&p.setHighlightedNodes(e)}),M(l,(e,t)=>{t&&!e&&(D.value=null)});let R=a(()=>y.value.some(on)),ne=a(()=>({type:[`node-group`],template_id:f.value.meta?.templateId,workflow_id:f.value.workflowId,node_types:y.value.map(e=>e.node.type),has_parameters:R.value})),re=a(()=>N.value!==null),z=()=>{m.value?.markInteracted()};return(t,i)=>(S(),v(Ci,{ref_key:`setupCard`,ref:m,expanded:l.value,"onUpdate:expanded":i[8]||=e=>l.value=e,"is-complete":P.value,title:e.nodeGroup.parentNode.name,"show-footer":re.value,"executable-node":N.value,"telemetry-payload":ne.value,"highlight-node-ids":te.value,"card-test-id":`node-group-setup-card`},{icon:H(()=>[I(yn,{"node-type":r(h),size:16},null,8,[`node-type`])]),default:H(()=>[e.nodeGroup.parentState?(S(),o(`div`,{key:0,class:T(t.$style.parentBody),onMouseenter:i[3]||=t=>r(O)(e.nodeGroup.parentState),onMouseleave:i[4]||=(...e)=>r(A)&&r(A)(...e)},[I(Sn,{state:e.nodeGroup.parentState},{default:H(()=>[I(ue,{state:e.nodeGroup.parentState,"sticky-parameters":r(b)(e.nodeGroup.parentState.node.id),onCredentialSelected:i[0]||=e=>{z(),u(`credentialSelected`,e)},onCredentialDeselected:i[1]||=e=>{z(),u(`credentialDeselected`,e)},onInteracted:z,onParametersDiscovered:i[2]||=t=>r(x)(e.nodeGroup.parentState.node.id,t)},null,8,[`state`,`sticky-parameters`])]),_:1},8,[`state`])],34)):s(``,!0),U(`div`,{class:T(t.$style.sections),"data-test-id":`node-group-sections`},[(S(!0),o(k,null,w(r(g),e=>(S(),o(`div`,{key:e.node.id,class:T(t.$style.section),"data-test-id":`node-group-section`,onMouseenter:t=>r(O)(e),onMouseleave:i[7]||=(...e)=>r(A)&&r(A)(...e)},[U(`div`,{class:T(t.$style.sectionHeader),"data-test-id":`node-group-section-header`,onClick:t=>r(E)(e.node.id)},[e.isComplete?(S(),v(r(Q),{key:0,icon:`check`,size:`small`,class:T(t.$style.sectionCheck)},null,8,[`class`])):(S(),v(yn,{key:1,"node-type":r(j)(e),size:14},null,8,[`node-type`])),I(r(q),{class:T(t.$style.sectionTitle),size:`medium`,color:`text-dark`},{default:H(()=>[n(L(e.node.name),1)]),_:2},1032,[`class`]),I(r(Q),{class:T(t.$style.sectionChevron),icon:r(C)[e.node.id]?`chevrons-down-up`:`chevrons-up-down`,size:`large`,color:`text-light`},null,8,[`class`,`icon`])],10,Ei),r(C)[e.node.id]?(S(),o(`div`,{key:0,class:T(t.$style.sectionContent)},[I(Sn,{state:e},{default:H(()=>[I(ue,{state:e,"sticky-parameters":r(b)(e.node.id),onCredentialSelected:i[5]||=e=>{z(),u(`credentialSelected`,e)},onCredentialDeselected:i[6]||=e=>{z(),u(`credentialDeselected`,e)},onInteracted:z,onParametersDiscovered:t=>r(x)(e.node.id,t)},null,8,[`state`,`sticky-parameters`,`onParametersDiscovered`])]),_:2},1032,[`state`])],2)):s(``,!0)],42,Ti))),128))],2)]),_:1},8,[`expanded`,`is-complete`,`title`,`show-footer`,`executable-node`,`telemetry-payload`,`highlight-node-ids`]))}}),[[`__cssModules`,{$style:{parentBody:`_parentBody_xc0ia_1`,sections:`_sections_xc0ia_5`,section:`_section_xc0ia_5`,sectionHeader:`_sectionHeader_xc0ia_16`,sectionChevron:`_sectionChevron_xc0ia_23`,sectionTitle:`_sectionTitle_xc0ia_30`,sectionCheck:`_sectionCheck_xc0ia_35`,sectionContent:`_sectionContent_xc0ia_39`}}]]),Oi=$(p({__name:`SetupPanelCards`,props:{showCompleted:{type:Boolean,default:!0}},setup(e){let t=e,i=X(),c=ye(),l=vn(),u=Z(),{setupCards:d,isAllComplete:f,setCredential:p,unsetCredential:m,firstTriggerName:h}=mr();M(f,e=>{e&&c.track(`User completed all setup steps`,{template_id:u?.value?.meta?.templateId,workflow_id:l.value})});let g=e=>{p(e.credentialType,e.credentialId,e.nodeName)},_=e=>{m(e.credentialType,e.nodeName)},y=a(()=>t.showCompleted?d.value:d.value.filter(e=>!or(e))),b=e=>Gn(e)?`group-${e.nodeGroup.parentNode.id}`:e.state.credentialType?`${e.state.credentialType}-${e.state.node.id}`:`${e.state.node.id}`,x=A({}),C=new Map,E=new Set,D=!1,O=e=>x[e]??!1,j=(e,t)=>e.find((e,n)=>n>t&&!or(e)),N=(e,t)=>{if(x[e]=t,!t){let t=d.value,n=t.findIndex(t=>b(t)===e),r=t[n];if(r&&or(r)&&E.has(e)){let e=j(t,n);e&&(x[b(e)]=!0)}}};return M(d,e=>{for(let t of e){let e=b(t);E.has(e)||(Gn(t)?[...t.nodeGroup.parentState?[t.nodeGroup.parentState]:[],...t.nodeGroup.subnodeCards].some(on)&&E.add(e):on(t.state)&&E.add(e))}if(D){let t=j(e,-1);if(t&&!C.has(b(t))){let n=e.findIndex(e=>x[b(e)]);n>e.indexOf(t)&&(x[b(e[n])]=!1,x[b(t)]=!0)}for(let t=0;t<e.length;t++){let n=e[t],r=b(n),i=C.get(r)??!1,a=or(n),o=Gn(n)?[...n.nodeGroup.parentState?[n.nodeGroup.parentState]:[],...n.nodeGroup.subnodeCards].some(e=>e.isAutoApplied):n.state.isAutoApplied;if(a&&!i&&!E.has(r)){if(x[r]=!1,!o||e.every((e,n)=>n===t||!x[b(e)])){let n=j(e,t);n&&(x[b(n)]=!0)}break}}}else{if(e.length===0)return;let t=j(e,-1);t&&(x[b(t)]=!0),D=!0}C.clear();for(let t of e)C.set(b(t),or(t))},{deep:!0,immediate:!0}),(e,t)=>(S(),o(`div`,{class:T(e.$style.container),"data-test-id":`setup-panel-cards-container`},[r(d).length===0?(S(),o(`div`,{key:0,class:T(e.$style[`empty-state`]),"data-test-id":`setup-cards-empty`},[I(r(Q),{icon:`list-checks`,class:T(e.$style[`empty-icon`]),size:24,color:`text-base`},null,8,[`class`]),U(`div`,{class:T(e.$style[`empty-text`])},[I(r(q),{size:`medium`,color:`text-base`,bold:!0,"data-test-id":`setup-cards-empty-heading`},{default:H(()=>[n(L(r(i).baseText(`setupPanel.empty.heading`)),1)]),_:1}),I(r(q),{size:`medium`,color:`text-light`,"data-test-id":`setup-cards-empty-description`},{default:H(()=>[n(L(r(i).baseText(`setupPanel.empty.description`)),1)]),_:1})],2)],2)):(S(),o(`div`,{key:1,class:T(e.$style[`card-list`]),"data-test-id":`setup-cards-list`},[(S(!0),o(k,null,w(y.value,e=>(S(),o(k,{key:b(e)},[e.nodeGroup?(S(),v(Di,{key:0,"node-group":e.nodeGroup,expanded:O(b(e)),"onUpdate:expanded":t=>N(b(e),t),onCredentialSelected:g,onCredentialDeselected:_},null,8,[`node-group`,`expanded`,`onUpdate:expanded`])):(S(),v(wi,{key:1,state:e.state,"first-trigger-name":r(h),expanded:O(b(e)),"onUpdate:expanded":t=>N(b(e),t),onCredentialSelected:g,onCredentialDeselected:_},null,8,[`state`,`first-trigger-name`,`expanded`,`onUpdate:expanded`]))],64))),128)),r(f)?(S(),o(`div`,{key:0,class:T(e.$style[`complete-message`]),"data-test-id":`setup-cards-complete-message`},[I(r(q),{size:`medium`,color:`text-base`},{default:H(()=>[n(L(r(i).baseText(`setupPanel.everythingConfigured.message`)),1)]),_:1})],2)):s(``,!0)],2))],2))}}),[[`__cssModules`,{$style:{container:`_container_9tg0x_1`,"card-list":`_card-list_9tg0x_2`,"empty-state":`_empty-state_9tg0x_10`,"empty-text":`_empty-text_9tg0x_20`,"complete-message":`_complete-message_9tg0x_26`}}]]),ki=$(p({__name:`SetupPanel`,setup(e){let t=X(),i=_(!0);return(e,a)=>(S(),o(`div`,{class:T(e.$style.container),"data-test-id":`setup-panel-container`},[U(`div`,{class:T(e.$style.content),"data-test-id":`setup-panel-cards`},[I(Oi,{"show-completed":i.value},null,8,[`show-completed`])],2),U(`footer`,{class:T(e.$style.footer),"data-test-id":`setup-panel-footer`},[I(r(q),{class:T(e.$style[`toggle-label`]),tag:`label`,size:`small`},{default:H(()=>[I(r(Y),{modelValue:i.value,"onUpdate:modelValue":a[0]||=e=>i.value=e,size:`small`},null,8,[`modelValue`]),n(` `+L(r(t).baseText(`setupPanel.showCompleted`)),1)]),_:1},8,[`class`])],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_o3lgs_1`,content:`_content_o3lgs_12`,footer:`_footer_o3lgs_22`,"toggle-label":`_toggle-label_o3lgs_32`}}]]),Ai=$(p({__name:`ExperimentalNodeDetailsDrawer`,props:{node:{},nodeIds:{},isReadOnly:{type:Boolean}},emits:[`openNdv`,`contextMenuAction`],setup(e,{emit:t}){let i=t,c=_n(a(()=>e.node)),l=Nn(a(()=>e.nodeIds)),u=er(),d=_(0),f=a(()=>[e.node.id,d.value].join(`|`));return M(()=>u.value.activeNodeName,(e,t)=>{e===null&&t!==null&&(d.value+=1)}),x($e,c),(t,a)=>(S(),o(`div`,{class:T(t.$style.component)},[e.nodeIds.length>1?(S(),v(r(q),{key:0,tag:`div`,color:`text-base`,class:T(t.$style.multipleNodes)},{default:H(()=>[U(`div`,null,L(e.nodeIds.length)+` nodes selected`,1),U(`ul`,{class:T(t.$style.multipleNodesActions)},[(S(!0),o(k,null,w(r(l),a=>(S(),o(`li`,{key:a.id,class:T(t.$style.multipleNodesAction)},[I(r(G),{variant:`subtle`,disabled:a.disabled,onClick:t=>i(`contextMenuAction`,a.id,e.nodeIds)},{default:H(()=>[n(L(a.label)+` `,1),a.shortcut?(S(),v(r(Pe),y({key:0,ref_for:!0},a.shortcut),null,16)):s(``,!0)]),_:2},1032,[`disabled`,`onClick`])],2))),128))],2)]),_:1},8,[`class`])):e.node?(S(),v(wt,{key:f.value,"node-id":e.node.id,"is-read-only":e.isReadOnly},null,8,[`node-id`,`is-read-only`])):s(``,!0)],2))}}),[[`__cssModules`,{$style:{component:`_component_1qt9j_1`,multipleNodes:`_multipleNodes_1qt9j_6`,multipleNodesActions:`_multipleNodesActions_1qt9j_16`,multipleNodesAction:`_multipleNodesAction_1qt9j_16`}}]]),ji=$(p({__name:`ExperimentalFocusPanelHeader`,props:{node:{},parameter:{},isExecutable:{type:Boolean},readOnly:{type:Boolean}},emits:[`execute`,`openNdv`,`clearParameter`,`renameNode`],setup(e,{emit:t}){let i=t,c=Tn(),l=X(),u=a(()=>c.getNodeType(e.node.type,e.node.typeVersion));return(t,a)=>(S(),v(r(q),{tag:`header`,size:`small`,bold:``,class:T(t.$style.component)},{default:H(()=>[I(yn,{"node-type":u.value,size:16},null,8,[`node-type`]),U(`div`,{class:T(t.$style.breadcrumbs)},[e.parameter?(S(),o(k,{key:0},[I(r(q),{size:`small`,color:`text-base`,bold:``},{default:H(()=>[n(L(e.node.name),1)]),_:1}),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[...a[4]||=[n(`/`,-1)]]),_:1}),n(` `+L(e.parameter.displayName),1)],64)):(S(),v(r(Et),{key:1,"model-value":e.node.name,"min-width":0,"max-width":500,placeholder:r(l).baseText(`ndv.title.rename.placeholder`),"read-only":e.readOnly,"onUpdate:modelValue":a[0]||=e=>i(`renameNode`,e)},null,8,[`model-value`,`placeholder`,`read-only`]))],2),e.parameter?(S(),v(r(Ct),{key:0,variant:`ghost`,icon:`x`,size:`small`,onClick:a[1]||=e=>i(`clearParameter`)})):(S(),v(r(Ct),{key:1,variant:`ghost`,icon:`expand`,size:`small`,onClick:a[2]||=e=>i(`openNdv`)})),e.isExecutable?(S(),v(xr,{key:2,"data-test-id":`node-execute-button`,"node-name":e.node.name,tooltip:`Execute ${e.node.name}`,variant:`subtle`,size:`small`,icon:`play`,square:!0,"hide-label":!0,"telemetry-source":`focus`,onExecute:a[3]||=e=>i(`execute`)},null,8,[`node-name`,`tooltip`])):s(``,!0)]),_:1},8,[`class`]))}}),[[`__cssModules`,{$style:{component:`_component_1ijt6_1`,breadcrumbs:`_breadcrumbs_1ijt6_9`}}]]),Mi=$(p({name:`FocusPanel`,__name:`FocusPanel`,props:{isCanvasReadOnly:{type:Boolean}},emits:[`focus`,`saveKeyboardShortcut`,`contextMenuAction`],setup(e,{emit:t}){let i=e,u=t,d=_(),f=X(),p=ge(),m=De(),h=vn(),g=Z(),y=a(()=>ar(g.value.documentId)),b=Tn(),x=cn(),C=ye(),w=fe(),E=fr(),D=mn(),O=er(),A=N(h.value),{renameNode:j}=Ht(),P=a(()=>m.resolvedParameter),F=_(``),ee=ie(async()=>{if(!P.value)return!1;let e=P.value.parameterPath.split(`.`).slice(1,-1).join(`.`);return!!P.value.parameter.disabledOptions&&await w.shouldDisplayNodeParameter(P.value.node.parameters,P.value.node,P.value.parameter,e,`disabledOptions`)},!1),te=ie(async()=>{if(!P.value)return!0;let e=P.value.parameterPath.split(`.`).slice(1,-1).join(`.`);return await w.shouldDisplayNodeParameter(P.value.node.parameters,P.value.node,P.value.parameter,e,`displayOptions`)},!0),R=a(()=>{if(!D.isNdvInFocusPanelEnabled||P.value)return P.value?.node;let e=A.getSelectedNodes.value[0];return e?.data?.render.type===Dn.Default?(g?.value?.allNodes??[]).find(t=>t.id===e.id):void 0}),ne=a(()=>A.getSelectedNodes.value.length>1),re=a(()=>{if(!R.value||!te.value)return!1;let e=p.getForeignCredentialsIfSharingEnabled(R.value.credentials);return p.isNodeExecutable(R.value,!i.isCanvasReadOnly,e)}),{workflowRunData:z}=Zr({node:R}),B=a(()=>{if(!R.value)return!0;let e=g?.value?.getParentNodes(R.value.name,`main`,1)[0];return!!(e&&z.value&&Object.prototype.hasOwnProperty.bind(z.value)(e))});function V(e){return P.value?tt(P.value.parameter,e):void 0}let ae=a(()=>P.value?.node.parameters.mode),oe=a(()=>V(`editor`)??void 0),se=a(()=>oe.value===`json`||P.value?.parameter.type===`json`?`json`:V(`editorLanguage`)??`javaScript`),W=a(()=>V(`rows`)),ce=a(()=>P.value?b.isToolNode(P.value?.node.type):!1),le=a(()=>!!P.value&&P.value.node.type===`n8n-nodes-base.html`),ue=a(()=>P.value&&be(P.value.parameter,P.value.value)),G=a(()=>ue.value?He(P.value)?P.value.value:P.value:``),de=a(()=>P.value?.node.type===Fn),me=a(()=>i.isCanvasReadOnly||ee.value),he=a(()=>({$vars:E.variablesAsObject})),_e=a(()=>{if(P.value)return{nodeName:P.value.node.name,parameterPath:P.value.parameterPath}}),ve=a(()=>y.value.executingNode.isNodeExecuting(R.value?.name??``)),xe=a(()=>A.getSelectedNodes.value.map(e=>e.id)),Se=a(()=>D.isNdvInFocusPanelEnabled?f.baseText(`nodeView.focusPanel.v2.noParameters.title`):f.baseText(`nodeView.focusPanel.noParameters.title`)),Ce=a(()=>D.isNdvInFocusPanelEnabled?f.baseText(`nodeView.focusPanel.v2.noParameters.subtitle`):f.baseText(`nodeView.focusPanel.noParameters.subtitle`)),{resolvedExpression:we}=Ie({expression:G,additionalData:he,stringifyObject:P.value&&P.value.parameter.type!==`multiOptions`});function Te(e){P.value!==void 0&&w.updateNodeParameter(c(P.value.node.parameters),{value:e,name:P.value.parameterPath},e,P.value.node,ce.value)}async function Ee(){await l(),d.value&&(Wn(d.value)?d.value.focusOnInput():ur(d.value)&&d.value.focus()),u(`focus`)}function ke(e){if(P.value)switch(e){case`resetValue`:typeof P.value.parameter.default==`string`&&Te(P.value.parameter.default),Ee();break;case`addExpression`:{let e=br(P.value.value,P.value.parameter.type);Te(typeof e==`string`?e:e.value),Ee();break}case`removeExpression`:{let e=an(P.value.value,we.value,P.value.parameter.type,P.value.parameter.default,(P.value.parameter.options??[]).filter(dn));typeof e==`string`?Te(e):e&&typeof e.value==`string`&&Te(e.value),Ee();break}case`formatHtml`:rr.emit(`format-html`);break}}function Ae(){if((D.isNdvInFocusPanelEnabled||x.isFeatureEnabled)&&P.value){m.unsetParameters(),C.track(`User removed focused param`,{source:`closeIcon`,parameters:m.focusedNodeParametersInTelemetryFormat});return}C.track(`User closed focus panel`,{source:`closeIcon`,parameters:m.focusedNodeParametersInTelemetryFormat}),m.closeFocusPanel()}function je(){C.track(`User executed node from focus panel`,m.focusedNodeParametersInTelemetryFormat[0])}function K(e){F.value=e,Te(e)}function Me(){setTimeout(()=>{Ee()},50)}M([()=>m.lastFocusTimestamp,()=>ue.value],()=>Me()),M(()=>P.value,e=>{if(e){let t=e.value;typeof t==`string`&&t!==F.value&&(F.value=t)}},{immediate:!0});function Ne(){R.value&&O.value.setActiveNodeName(R.value.name,`focus_panel`)}function Pe(e){R.value&&j(R.value.name,e)}return(t,i)=>(S(),o(`div`,{"data-test-id":`focus-panel`,class:T([t.$style.content,{[t.$style.isNdvInFocusPanelEnabled]:r(D).isNdvInFocusPanelEnabled}])},[r(D).isNdvInFocusPanelEnabled&&R.value&&!ne.value?(S(),v(ji,{key:0,node:R.value,parameter:P.value?.parameter,"is-executable":re.value,"read-only":e.isCanvasReadOnly,onExecute:je,onOpenNdv:Ne,onClearParameter:Ae,onRenameNode:Pe},null,8,[`node`,`parameter`,`is-executable`,`read-only`])):s(``,!0),P.value?(S(),o(`div`,{key:1,class:T(t.$style.content),"data-test-id":`focus-parameter`},[r(D).isNdvInFocusPanelEnabled?s(``,!0):(S(),o(`div`,{key:0,class:T(t.$style.tabHeader)},[U(`div`,{class:T(t.$style.tabHeaderText)},[I(r(q),{color:`text-dark`,size:`small`},{default:H(()=>[n(L(P.value.parameter.displayName),1)]),_:1}),I(r(q),{color:`text-base`,size:`xsmall`},{default:H(()=>[n(L(P.value.node.name),1)]),_:1})],2),U(`div`,{class:T(t.$style.buttonWrapper)},[I(xr,{"data-test-id":`node-execute-button`,"node-name":P.value.node.name,tooltip:`Execute ${P.value.node.name}`,disabled:!re.value,size:`small`,icon:`play`,square:!0,"hide-label":!0,"telemetry-source":`focus`,onExecute:je},null,8,[`node-name`,`tooltip`,`disabled`]),I(r(Q),{class:T(t.$style.closeButton),icon:`x`,color:`text-base`,size:`xlarge`,onClick:Ae},null,8,[`class`])],2)],2)),U(`div`,{class:T(t.$style.parameterDetailsWrapper)},[U(`div`,{class:T(t.$style.parameterOptionsWrapper)},[U(`div`,{class:T(t.$style.noExecutionDataTip)},[!B.value&&!ve.value?(S(),v(r(sn),{key:0,class:T(t.$style.delayedShow),bold:!0},{default:H(()=>[n(L(r(f).baseText(`nodeView.focusPanel.noExecutionData`)),1)]),_:1},8,[`class`])):s(``,!0)],2),r(te)?(S(),v(Qt,{key:0,parameter:P.value.parameter,value:P.value.value,"is-read-only":me.value,"onUpdate:modelValue":ke},null,8,[`parameter`,`value`,`is-read-only`])):s(``,!0)],2),typeof P.value.value==`string`?(S(),o(`div`,{key:0,class:T(t.$style.editorContainer)},[r(te)?ue.value?(S(),v(At,{key:1,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":i[0]||=e=>F.value=e,class:T(t.$style.editor),"is-read-only":me.value,path:P.value.parameterPath,"data-test-id":`expression-modal-input`,"target-node-parameter-context":_e.value,onChange:i[1]||=e=>K(e.value)},null,8,[`modelValue`,`class`,`is-read-only`,`path`,`target-node-parameter-context`])):[`json`,`string`].includes(P.value.parameter.type)?(S(),o(k,{key:2},[oe.value===`codeNodeEditor`?(S(),v(gt,{key:0,id:P.value.parameterPath,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[2]||=e=>F.value=e,K],class:T(t.$style.heightFull),mode:ae.value,"default-value":P.value.parameter.default,language:se.value,"is-read-only":me.value,"target-node-parameter-context":_e.value,"fill-parent":``},null,8,[`id`,`modelValue`,`class`,`mode`,`default-value`,`language`,`is-read-only`,`target-node-parameter-context`])):oe.value===`htmlEditor`?(S(),v(Wt,{key:1,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[3]||=e=>F.value=e,K],"is-read-only":me.value,rows:W.value,"disable-expression-coloring":!le.value,"disable-expression-completions":!le.value,fullscreen:``,"target-node-parameter-context":_e.value},null,8,[`modelValue`,`is-read-only`,`rows`,`disable-expression-coloring`,`disable-expression-completions`,`target-node-parameter-context`])):oe.value===`cssEditor`?(S(),v(Tt,{key:2,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[4]||=e=>F.value=e,K],"is-read-only":me.value,rows:W.value,fullscreen:``,"target-node-parameter-context":_e.value},null,8,[`modelValue`,`is-read-only`,`rows`,`target-node-parameter-context`])):oe.value===`sqlEditor`?(S(),v(Ge,{key:3,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[5]||=e=>F.value=e,K],dialect:V(`sqlDialect`),"is-read-only":me.value,rows:W.value,fullscreen:``,"target-node-parameter-context":_e.value},null,8,[`modelValue`,`dialect`,`is-read-only`,`rows`,`target-node-parameter-context`])):oe.value===`jsEditor`?(S(),v(Ue,{key:4,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[6]||=e=>F.value=e,K],"is-read-only":me.value,rows:W.value,"posthog-capture":de.value,"fill-parent":``},null,8,[`modelValue`,`is-read-only`,`rows`,`posthog-capture`])):P.value.parameter.type===`json`?(S(),v(pe,{key:5,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[7]||=e=>F.value=e,K],"is-read-only":me.value,rows:W.value,fullscreen:``,"fill-parent":``},null,8,[`modelValue`,`is-read-only`,`rows`])):(S(),v(r(pn),{key:6,ref_key:`inputField`,ref:d,modelValue:F.value,"onUpdate:modelValue":[i[8]||=e=>F.value=e,K],class:T(t.$style.editor),readonly:me.value,type:`textarea`,resize:`none`},null,8,[`modelValue`,`class`,`readonly`]))],64)):s(``,!0):(S(),o(`div`,{key:0,class:T([t.$style.content,t.$style.emptyContent])},[U(`div`,{class:T(t.$style.emptyText)},[I(r(q),{color:`text-base`},{default:H(()=>[n(L(r(f).baseText(`nodeView.focusPanel.missingParameter`)),1)]),_:1})],2)],2))],2)):s(``,!0)],2)],2)):R.value&&r(D).isNdvInFocusPanelEnabled?(S(),v(Ai,{key:2,node:R.value,"node-ids":xe.value,"is-read-only":me.value,onOpenNdv:Ne,onContextMenuAction:i[9]||=(e,t)=>u(`contextMenuAction`,e,t)},null,8,[`node`,`node-ids`,`is-read-only`])):(S(),o(`div`,{key:3,class:T([t.$style.content,t.$style.emptyContent])},[U(`div`,{class:T(t.$style.focusParameterWrapper)},[U(`div`,{class:T(t.$style.iconWrapper)},[I(r(Q),{class:T(t.$style.forceHover),icon:`panel-right`,size:`medium`},null,8,[`class`]),I(r(Q),{class:T(t.$style.pointerIcon),icon:`mouse-pointer`,color:`text-dark`,size:`large`},null,8,[`class`])],2),I(r(Q),{icon:`ellipsis-vertical`,size:`small`,color:`text-base`}),I(r(Oe),{size:`small`,"model-value":`expression`,disabled:!0,options:[{label:r(f).baseText(`parameterInput.fixed`),value:`fixed`},{label:r(f).baseText(`parameterInput.expression`),value:`expression`}]},null,8,[`options`])],2),U(`div`,{class:T(t.$style.emptyText)},[I(r(q),{color:`text-base`,size:`medium`,bold:!0},{default:H(()=>[n(L(Se.value),1)]),_:1}),I(r(q),{color:`text-base`,size:`small`},{default:H(()=>[n(L(Ce.value),1)]),_:1})],2)],2))],2))}}),[[`__cssModules`,{$style:{content:`_content_o6210_1`,emptyContent:`_emptyContent_o6210_7`,isNdvInFocusPanelEnabled:`_isNdvInFocusPanelEnabled_o6210_12`,emptyText:`_emptyText_o6210_15`,focusParameterWrapper:`_focusParameterWrapper_o6210_21`,iconWrapper:`_iconWrapper_o6210_28`,pointerIcon:`_pointerIcon_o6210_32`,tabHeader:`_tabHeader_o6210_42`,tabHeaderText:`_tabHeaderText_o6210_49`,buttonWrapper:`_buttonWrapper_o6210_54`,parameterDetailsWrapper:`_parameterDetailsWrapper_o6210_59`,parameterOptionsWrapper:`_parameterOptionsWrapper_o6210_66`,noExecutionDataTip:`_noExecutionDataTip_o6210_70`,editorContainer:`_editorContainer_o6210_73`,editor:`_editor_o6210_73`,delayedShow:`_delayedShow_o6210_93`,triggerShow:`_triggerShow_o6210_1`,closeButton:`_closeButton_o6210_104`,heightFull:`_heightFull_o6210_108`,forceHover:`_forceHover_o6210_112`}}]]),Ni=B(_e.EVALUATIONS_WIZARD_SIDEPANEL,()=>{let e=De(),t=a(()=>e.focusPanelActive&&e.selectedTab===`evaluations`),n=_(0),r=_([...ai]),i=_({}),o=_(``),s=_(!1),c=_(``),l=_(``),u=_({}),d=_({}),f=_([]),p=_([]),m=_([]),h=_(``),g=_(!0),v=_(`list`),y=_(null),b=_(null),x=_(null),S=_(null),C=_([]),w=_(!1),T=_(null),E=_(``),D=a(()=>s.value?l.value||``:o.value||``);function O(){n.value=0,r.value=[...ai],i.value={},o.value=``,s.value=!1,c.value=``,l.value=``,u.value={},d.value={},f.value=[],p.value=[],m.value=[],h.value=``,g.value=!0,v.value=`list`,y.value=null,b.value=null,x.value=null,C.value=[],w.value=!1,T.value=null}function k(t=0){O(),n.value=t,e.setSelectedTab(`evaluations`),e.openFocusPanel()}function A(){e.closeFocusPanel()}function j(){t.value?A():k(n.value)}function M(e){n.value=e}function N(){n.value===0?n.value=1:n.value===1?n.value=2:n.value===2&&(n.value=3)}function P(){n.value===3?n.value=2:n.value===2?n.value=1:n.value===1&&(n.value=0)}function F(e){let t=r.value.indexOf(e);t===-1?r.value=[...r.value,e]:r.value=r.value.filter((e,n)=>n!==t)}function ee(e,t){if(t===void 0){let t={...i.value};delete t[e],i.value=t;return}i.value={...i.value,[e]:t}}function I(e){o.value=e}function te(){s.value||(s.value=!0,!l.value&&o.value&&(l.value=o.value))}function L(){s.value=!1,c.value=``}function R(e,t){u.value={...u.value,[e]:t}}function ne(e,t){d.value={...d.value,[e]:t}}function re(){w.value=!0}function z(){w.value=!1}function B(e){let t=W();C.value=[...C.value,{...e,id:t}]}function V(e){C.value=C.value.filter(t=>t.id!==e)}function H(e,t){C.value=C.value.map(n=>n.id===e?{...n,...t}:n)}function ie(e){T.value=e}function ae(e){E.value=e}function U(){v.value=`list`,x.value=null}function oe(){v.value=`create`,x.value=null}function se(e){if(v.value=`detail`,y.value=e,e===null)b.value=null,h.value=``;else{x.value=null,b.value=null;let t=p.value[e],n=f.value[e];t&&(u.value={...t}),n&&(d.value={...n}),h.value=m.value[e]??``}}function ce(e){h.value=e}function le(e){g.value=e}function ue(e){x.value=e}function G(e){S.value=e}function de(e,t){y.value=e,b.value=t}function fe(e){let t={...e};for(let n of Object.keys(e))n in u.value&&(t[n]=u.value[n]);u.value=t}return{isOpen:t,activeStep:n,selectedMetricKeys:r,judgeSelectionByMetric:i,aiNodeName:o,isSliceMode:s,startNodeName:c,endNodeName:l,inputs:u,expectedValues:d,datasetExpectedByRow:f,datasetInputsByRow:p,datasetNamesByRow:m,caseName:h,prefillInputsFromExecution:g,viewMode:v,activeRowIndex:y,activeRowId:b,seedExecution:x,pendingSeedExecution:S,customChecks:C,isCustomCheckModalOpen:w,activeRunId:T,lastWorkflowId:E,answerNodeName:D,open:k,close:A,toggle:j,reset:O,setStep:M,goNext:N,goBack:P,toggleMetric:F,setJudgeSelection:ee,setAiNodeName:I,enterSliceMode:te,exitSliceMode:L,setInputValue:R,setExpectedValue:ne,seedInputs:fe,openCustomCheckModal:re,closeCustomCheckModal:z,addCustomCheck:B,removeCustomCheck:V,updateCustomCheck:H,setActiveRunId:ie,setLastWorkflowId:ae,openList:U,openCreate:oe,openDetail:se,setCaseName:ce,setPrefillInputsFromExecution:le,setSeedExecution:ue,setPendingSeedExecution:G,setActiveRow:de}});function Pi(e,t){let n=e.filter(e=>!t.has(e));if(n.length===1)return n[0];if(n.length===0&&e.length===1)return e[0]}function Fi(e){let t=Or(),n=Z(),r=Tn(),i=Ni();return a(()=>{let a=n.value?.allNodes??[],o=a.filter(e=>r.isTriggerNode(e.type)),s=Hi(a),c=n.value?.connectionsBySourceNode??{},l=i.isSliceMode?i.startNodeName:i.aiNodeName,u=e=>zi(e,a,c,l),d=Vi([i.seedExecution,t.value.activeExecution,t.value.lastSuccessfulExecution,h(e?.fallbackExecution)])?.data?.resultData?.runData;if(!(d&&Object.keys(d).length>0)||!d)return u({fieldNames:[],values:{},hasExecution:!1});if(!l)return u({fieldNames:[],values:{},hasExecution:!0});let f=o.some(e=>e.name===l)?Wi(d,l,s):Gi(d,c,l,s);if(!f)return u({fieldNames:[],values:{},hasExecution:!0});let p=Object.keys(f),m={};for(let e of p)m[e]=st(f[e]);return u({fieldNames:p,values:m,hasExecution:!0})})}var Ii=`input`,Li=`chatInput`,Ri=new Set([Mr,jn]);function zi(e,t,n,r){if(e.fieldNames.length>0)return e;let i=Bi(t,n,r);return{...e,fieldNames:[i],values:{...e.values,[i]:``}}}function Bi(e,t,n){if(!n)return Ii;let r=[n,...Ft(zr(t),n,`main`)],i=new Map(e.map(e=>[e.name,e]));for(let e of r){let t=i.get(e);if(t&&Ri.has(t.type))return Li}return Ii}function Vi(e){for(let t of e)if(t&&t.mode!==`evaluation`)return t}function Hi(e){return new Map(e.filter(e=>e.type===Cn).map(e=>[e.name,e.parameters?.source===`dataTable`]))}var Ui=[`row_id`,...Ce];function Wi(e,t,n=new Map){let r=(e[t]?.[0])?.data?.main?.[0]?.[0]?.json;if(!r||!n.has(t))return r;let i=n.get(t)===!0?[...qn,...Ui]:qn;return Object.fromEntries(Object.entries(r).filter(([e])=>!i.includes(e)))}function Gi(e,t,n,r=new Map){let i=Ft(zr(t),n,`main`,1),a=Pi(i,r)??i[0];if(a)return Wi(e,a,r)}function Ki(){let e=Z();return a(()=>(e.value?.allNodes??[]).filter(e=>ei(e.type)).map(e=>({name:e.name,type:e.type})))}var qi=[de,lr];function Ji(){let e=O(),t=Z(),n=Tn(),{runEntireWorkflow:r}=Hn({router:e}),i=a(()=>(t.value?.allNodes??[]).filter(e=>e.disabled!==!0&&n.isTriggerNode(e.type)).map(e=>({name:e.name,type:e.type}))),o=a(()=>i.value.some(e=>qi.includes(e.type)));function s(e){if(qi.includes(e.type)){Rn.emit(`openChat`);return}r(`node`,e.name)}function c(){if(o.value){Rn.emit(`openChat`);return}r(`main`)}return{runWorkflow:c,runTriggerNode:s,triggerNodes:i,hasChatTrigger:o}}function Yi(){let e=Z(),t=kr();return a(()=>{let n=e.value?.allNodes??[];for(let e of n){let n=Qr[e.type];if(!n)continue;let r=Xi(e.parameters?.model);if(!r)continue;let i=Zi(e.credentials);if(i&&t.allCredentials.some(e=>e.id===i))return{provider:n,model:r,credentialId:i}}return null})}function Xi(e){if(typeof e==`string`)return e||void 0;if(e&&typeof e==`object`&&`value`in e){let t=e.value;if(typeof t==`string`)return t||void 0}}function Zi(e){if(e){for(let t of Object.values(e))if(t?.id)return t.id}}var Qi=1e3;function $i(){let e=Ni(),t=jt(),n=Z(),r=$t(),i=qt(),a=Ki(),o=Je(),s=X(),c=_(!1),l=null,u;async function d(){let e=n.value?.workflowId;if(l&&u===e){await l;return}u=e,l=f().finally(()=>{u===e&&(l=null,u=void 0)}),await l}async function f(){let e=n.value,t=e?.workflowId,a=e?.homeProject?.id;if(!t||!a||r.isNewWorkflow)return;let l=()=>n.value?.workflowId!==t;c.value=!0;try{let n=await It(i.restApiContext,t);if(l())return;let r=$r(e.name),o=n.find(e=>e.name===r)??n[n.length-1];if(!o)return;if(m(o),o.datasetSource===`data_table`)try{let e=await Xn(i.restApiContext,o.datasetRef.dataTableId,a,{take:Qi});if(l())return;h(e.data)}catch(e){console.warn(`[evaluations wizard] failed to hydrate dataset rows`,e)}if(l())return;await p(t,l)}catch(e){l()||o.showError(e,s.baseText(`evaluations.wizardSidepanel.hydrate.error`))}finally{c.value=!1}}async function p(n,r){if(!(e.activeStep!==0||e.activeRunId))try{if(await t.fetchTestRuns(n),r())return;let i=[...t.testRunsByWorkflowId[n]??[]].sort((e,t)=>new Date(e.createdAt).getTime()-new Date(t.createdAt).getTime()),a=i[i.length-1];if(!a)return;e.setActiveRunId(a.id),e.setStep(3)}catch(e){console.warn(`[evaluations wizard] failed to restore last run`,e)}}function m(t){let n=[],r={},i=[];for(let e of t.metrics){let t=ta(e);if(t){n.push(t.key),t.judge&&(r[t.key]=t.judge);continue}let a=na(e);a&&i.push(a)}e.selectedMetricKeys=n,e.judgeSelectionByMetric=r,e.customChecks=[];for(let t of i)e.addCustomCheck(t);new Set(a.value.map(e=>e.name)).has(t.endNodeName)?(e.aiNodeName=t.endNodeName,e.isSliceMode=!1,e.startNodeName=``,e.endNodeName=``):(e.aiNodeName=``,e.isSliceMode=!0,e.startNodeName=t.startNodeName,e.endNodeName=t.endNodeName)}function h(t){let n=t.map(e=>ea(e));e.datasetExpectedByRow=n.map(e=>e.expected),e.datasetInputsByRow=n.map(e=>e.inputs),e.datasetNamesByRow=n.map(e=>e.name);let r=n[0];r&&(e.inputs=r.inputs,e.expectedValues=r.expected)}return{hydrate:d,isHydrating:c}}function ea(e){let t={},n={},r=``,i=new Set(Object.values(ri).map(e=>e.name));for(let[a,o]of Object.entries(e)){if(a===`id`||a===`createdAt`||a===`updatedAt`)continue;let e=st(o);a===`caseName`?r=e:i.has(a)?n[a]=e:t[a]=e}return{inputs:t,expected:n,name:r}}function ta(e){if(e.type===`llm_judge`){let t=e.config.preset;if(t!==`correctness`&&t!==`helpfulness`)return;let n=Qr[e.config.provider];return n?{key:t,judge:{provider:n,credentialId:e.config.credentialId,model:e.config.model}}:{key:t}}if(e.type===`string_similarity`)return{key:`stringSimilarity`};if(e.type===`categorization`)return{key:`categorization`};if(e.type===`tools_used`)return{key:`toolsUsed`}}function na(e){if(e.type===`expression`)return{name:e.name,expression:e.config.expression}}function ra(e){return e.mode!==`evaluation`&&typeof e.id==`string`}var ia=20;function aa(){let e=Pn(),t=Z();async function n(n){let r=t.value?.workflowId;if(!r)return;let i,a=0;for(let t=0;t<ia;t++){let t=await e.fetchExecutionsPage({status:[`success`],workflowId:r},i),o=t.results;if(o.length===0)return;a+=o.length;let s=n(o.filter(ra));if(s!==void 0)return s;if(!t.count||a>=t.count||!t.nextCursor)return;i=t.nextCursor}}async function r(e){let t=[];return await n(n=>(t.push(...n),e!==void 0&&t.length>=e?!0:void 0)),e===void 0?t:t.slice(0,e)}async function i(){let t=await n(e=>e[0]?.id);return t?await e.fetchExecution(t)??null:null}return{fetchUserExecutionCandidates:r,fetchLatestUserExecution:i}}function oa(){let e=Ni(),t=Pn(),n=Z(),r=ye(),{fetchLatestUserExecution:i}=aa();function a(t){e.inputs={},e.setPrefillInputsFromExecution(!0),e.setSeedExecution(t);let i=e.answerNodeName,a=t.data?.resultData?.runData,o=i&&a?En(Wi(a,i)):``;e.expectedValues=o?{expectedAnswer:o}:{},e.openDetail(null),r.track(`User created evaluation test case`,{workflow_id:n.value?.workflowId??null,source:`execution`,execution_id:t.id??null})}async function o(e){let n=await t.fetchExecution(e);return n?(a(n),!0):!1}async function s(){e.inputs={},e.expectedValues={},e.setPrefillInputsFromExecution(!1),e.setSeedExecution(await c()),e.openDetail(null),r.track(`User created evaluation test case`,{workflow_id:n.value?.workflowId??null,source:`manual`})}async function c(){try{return await i()}catch{return null}}return{createFromExecution:a,createFromExecutionId:o,createManualCase:s}}var sa=[`data-test-id`,`aria-expanded`],ca=[`data-test-id`],la=$(p({__name:`ExecutionRow`,props:{execution:{},alt:{type:Boolean}},emits:[`create`],setup(e,{emit:t}){let i=e,c=t,l=X(),u=Z(),d=Tn(),f=Pn(),p=Ni(),m=_(!1),h=_(!1),g=_(null),y=a(()=>i.execution.mode===`manual`),b=a(()=>{let e=i.execution.startedAt;return e?yt(e,{withSeconds:!0}):i.execution.id});async function x(){if(m.value=!m.value,m.value&&!g.value&&!h.value){h.value=!0;try{g.value=await f.fetchExecution(i.execution.id)??null}catch(e){console.warn(`[ExecutionRow] failed to load execution`,e)}finally{h.value=!1}}}let C=a(()=>{let e=g.value?.data?.resultData?.runData,t=p.aiNodeName;if(!e||!t)return{};let n=u.value?.allNodes??[],r=u.value?.connectionsBySourceNode??{},i=n.some(e=>e.name===t&&d.isTriggerNode(e.type)),a=Hi(n);return{input:i?Wi(e,t,a):Gi(e,r,t,a),output:Wi(e,t)}});function E(e){return e?Object.entries(e).map(([e,t])=>({name:e,value:st(t)})):[]}let D=a(()=>E(C.value.input)),O=a(()=>E(C.value.output));return(t,a)=>(S(),o(`div`,{class:T([t.$style.row,i.alt?t.$style.alt:null])},[U(`div`,{class:T(t.$style.header)},[U(`button`,{type:`button`,class:T(t.$style.chevron),"data-test-id":`tests-execution-toggle-${e.execution.id}`,"aria-expanded":m.value,onClick:x},[I(r(Q),{icon:m.value?`chevron-down`:`chevron-right`,size:`small`,color:`text-base`},null,8,[`icon`])],10,sa),I(r(q),{size:`small`,color:`text-dark`,class:T(t.$style.date)},{default:H(()=>[n(L(b.value),1)]),_:1},8,[`class`]),y.value?(S(),v(r(Q),{key:0,icon:`flask-conical`,size:`small`,color:`text-light`,title:r(l).baseText(`evaluations.tests.executions.manualBadge`),"data-test-id":`tests-execution-manual-${e.execution.id}`},null,8,[`title`,`data-test-id`])):s(``,!0),U(`span`,{class:T(t.$style.spacer)},null,2),I(r(G),{size:`mini`,class:T([t.$style.createButton,m.value?t.$style.createButtonVisible:null]),"data-test-id":`tests-execution-create-${e.execution.id}`,onClick:a[0]||=e=>c(`create`)},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.executions.createCase`)),1)]),_:1},8,[`class`,`data-test-id`])],2),m.value?(S(),o(`div`,{key:0,class:T(t.$style.detail),"data-test-id":`tests-execution-detail-${e.execution.id}`},[h.value?(S(),o(`div`,{key:0,class:T(t.$style.loading)},[I(r(Q),{icon:`spinner`,size:`small`,spin:!0})],2)):(S(),o(k,{key:1},[D.value.length>0?(S(),o(`div`,{key:0,class:T(t.$style.group)},[I(r(q),{size:`xsmall`,bold:``,color:`text-light`,class:T(t.$style.groupLabel)},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.executions.input`)),1)]),_:1},8,[`class`]),(S(!0),o(k,null,w(D.value,e=>(S(),o(`div`,{key:`in-${e.name}`,class:T(t.$style.field)},[I(r(q),{size:`xsmall`,color:`text-light`},{default:H(()=>[n(L(e.name),1)]),_:2},1024),I(r(q),{size:`xsmall`,color:`text-dark`,class:T(t.$style.value)},{default:H(()=>[n(L(e.value),1)]),_:2},1032,[`class`])],2))),128))],2)):s(``,!0),O.value.length>0?(S(),o(`div`,{key:1,class:T(t.$style.group)},[I(r(q),{size:`xsmall`,bold:``,color:`text-light`,class:T(t.$style.groupLabel)},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.executions.output`)),1)]),_:1},8,[`class`]),(S(!0),o(k,null,w(O.value,e=>(S(),o(`div`,{key:`out-${e.name}`,class:T(t.$style.field)},[I(r(q),{size:`xsmall`,color:`text-light`},{default:H(()=>[n(L(e.name),1)]),_:2},1024),I(r(q),{size:`xsmall`,color:`text-dark`,class:T(t.$style.value)},{default:H(()=>[n(L(e.value),1)]),_:2},1032,[`class`])],2))),128))],2)):s(``,!0)],64))],10,ca)):s(``,!0)],2))}}),[[`__cssModules`,{$style:{row:`_row_844tx_1`,alt:`_alt_844tx_4`,header:`_header_844tx_8`,createButton:`_createButton_844tx_15`,chevron:`_chevron_844tx_19`,date:`_date_844tx_36`,spacer:`_spacer_844tx_40`,createButtonVisible:`_createButtonVisible_844tx_50`,detail:`_detail_844tx_54`,loading:`_loading_844tx_61`,group:`_group_844tx_67`,groupLabel:`_groupLabel_844tx_73`,field:`_field_844tx_77`,value:`_value_844tx_83`}}]]),ua={key:0,"data-test-id":`tests-list-executions`},da=20,fa=$(p({__name:`TestCaseList`,setup(e){let t=X(),i=Ni(),a=Je(),{createFromExecutionId:s,createManualCase:c}=oa(),{fetchUserExecutionCandidates:l}=aa(),u=_([]);async function f(){try{u.value=await l(da)}catch(e){console.warn(`[TestCaseList] failed to load execution candidates`,e)}}d(()=>{f()});async function p(e){try{await s(e.id)}catch(e){a.showError(e,t.baseText(`evaluations.tests.seedFromExecution.error`))}}async function m(){try{await c()}catch(e){a.showError(e,t.baseText(`evaluations.tests.seedFromExecution.error`))}}return(e,a)=>(S(),o(`div`,{class:T(e.$style.container),"data-test-id":`tests-list`},[U(`div`,{class:T(e.$style.breadcrumb)},[U(`button`,{type:`button`,class:T(e.$style.breadcrumbRoot),"data-test-id":`tests-list-breadcrumb-root`,onClick:a[0]||=e=>r(i).openList()},[I(r(q),{size:`small`,color:`text-base`},{default:H(()=>[n(L(r(t).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1})],2),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[...a[1]||=[n(`/`,-1)]]),_:1}),I(r(q),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.newCase.title`)),1)]),_:1})],2),U(`div`,{class:T(e.$style.controls)},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.chooseExecution`)),1)]),_:1})],2),u.value.length>0?(S(),o(`div`,ua,[(S(!0),o(k,null,w(u.value,(e,t)=>(S(),v(la,{key:e.id,execution:e,alt:t%2==0,onCreate:t=>p(e)},null,8,[`execution`,`alt`,`onCreate`]))),128))])):(S(),o(`div`,{key:1,class:T(e.$style.empty)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.executions.empty`)),1)]),_:1})],2)),U(`div`,{class:T(e.$style.manual)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.createManually.hint`)),1)]),_:1}),I(r(G),{variant:`outline`,size:`xsmall`,"data-test-id":`tests-list-create-manual`,onClick:m},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.createManually`)),1)]),_:1})],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_1qscc_1`,breadcrumb:`_breadcrumb_1qscc_7`,breadcrumbRoot:`_breadcrumbRoot_1qscc_14`,controls:`_controls_1qscc_24`,empty:`_empty_1qscc_31`,manual:`_manual_1qscc_36`}}]]),pa={};for(let[e,t]of Object.entries(Qr))pa[t]=e;function ma(e){let t=[];for(let n of e.selectedMetrics){let r=si.find(e=>e.key===n);if(!r)continue;let i=ga(n,r.key,e);if(i.kind===`err`)return{ok:!1,reason:i.reason};t.push(i.metric)}for(let n of e.customChecks){let e=_a(n);if(e.kind===`err`)return{ok:!1,reason:e.reason};t.push(e.metric)}return t.length===0?{ok:!1,reason:`No metrics selected`}:{ok:!0,dto:{name:$r(e.workflowName),startNodeName:e.startNodeName,endNodeName:e.endNodeName,metrics:t,datasetSource:`data_table`,datasetRef:{dataTableId:e.dataTableId}}}}function ha(e){return e.replace(/\\/g,`\\\\`).replace(/'/g,`\\'`)}function ga(e,t,n){let r=W(),i=ha(n.upstreamNodeName),a=ha(n.endNodeName),o=e=>`={{ $('${i}').first().json[${JSON.stringify(e)}] }}`,s=`={{ JSON.stringify($('${a}').first().json) }}`,c=`={{ (() => { const j = $('${a}').first().json; if (j === null || j === undefined) return ''; if (typeof j !== 'object') return String(j); const p = j.output ?? j.text ?? j.response; if (p !== undefined && p !== null) return typeof p === 'object' ? JSON.stringify(p) : String(p); const ks = Object.keys(j); if (ks.length === 1) { const o = j[ks[0]]; return typeof o === 'object' && o !== null ? JSON.stringify(o) : String(o); } return JSON.stringify(j); })() }}`;if(ti.has(e)){let i=n.judgeSelectionByMetric[e];if(!i)return{kind:`err`,reason:`Missing model selection for ${t}`};let a=pa[i.provider];if(!a)return{kind:`err`,reason:`Unsupported provider ${i.provider}`};if(e===`correctness`)return{kind:`ok`,metric:{id:r,name:t,type:`llm_judge`,config:{preset:`correctness`,provider:a,credentialId:i.credentialId,model:i.model,outputType:`numeric`,inputs:{actualAnswer:s,expectedAnswer:o(`expectedAnswer`)}}}};if(e===`helpfulness`){let e=n.inputFieldNames[0];return e?{kind:`ok`,metric:{id:r,name:t,type:`llm_judge`,config:{preset:`helpfulness`,provider:a,credentialId:i.credentialId,model:i.model,outputType:`numeric`,inputs:{actualAnswer:s,userQuery:o(e)}}}}:{kind:`err`,reason:`Helpfulness needs at least one input column from the workflow execution to use as the user query`}}}return e===`stringSimilarity`?{kind:`ok`,metric:{id:r,name:t,type:`string_similarity`,config:{inputs:{actualAnswer:c,expectedAnswer:o(`expectedAnswer`)}}}}:e===`categorization`?{kind:`ok`,metric:{id:r,name:t,type:`categorization`,config:{inputs:{actualAnswer:c,expectedAnswer:o(`expectedAnswer`)}}}}:e===`toolsUsed`?{kind:`ok`,metric:{id:r,name:t,type:`tools_used`,config:{inputs:{expectedTools:o(`expectedTools`),intermediateSteps:`={{ $('${a}').first().json.intermediateSteps }}`}}}}:{kind:`err`,reason:`Unsupported metric ${e}`}}function _a(e){return{kind:`ok`,metric:{id:W(),name:e.name,type:`expression`,config:{expression:va(e.expression),outputType:`numeric`}}}}function va(e){let t=e.trim();return t.length===0||t.startsWith(`=`)?t:t.startsWith(`{{`)?`=${t}`:`={{ ${t} }}`}function ya(){let e=Ni(),t=Z(),n=Tn(),r=qt(),i=Je(),a=X();async function o(e,t){let n=(await It(r.restApiContext,e)).find(e=>e.name===t.name);if(!n)return{created:!0,id:(await we(r.restApiContext,e,t)).id};let i=s(n);return{created:!1,id:(await je(r.restApiContext,e,n.id,t)).id,priorPayload:i}}function s(e){let t={name:e.name,startNodeName:e.startNodeName,endNodeName:e.endNodeName,metrics:e.metrics};return e.datasetSource===`data_table`?{...t,datasetSource:`data_table`,datasetRef:e.datasetRef}:{...t,datasetSource:`google_sheets`,datasetRef:e.datasetRef}}async function c(e,t,n){let i=[],a=0;for(let n=0;n<50;n++){let n=await he(r.restApiContext,t,{skip:a,take:100},{name:e,projectId:t});for(let e of n.data)i.push(e);if(n.data.length<100||a+100>=n.count)break;a+=100}let o=i.find(t=>t.name===e);if(o){let e=new Set(o.columns.map(e=>e.name)),i=n.filter(t=>!e.has(t.name)),a=[];for(let e of i){let n=await Lt(r.restApiContext,o.id,t,e);a.push(n.id)}return{id:o.id,created:!1,addedColumnIds:a}}return{id:(await K(r.restApiContext,e,t,n)).id,created:!0,addedColumnIds:[]}}async function l(e,t,n){let i=(e,t)=>{console.error(`[evaluations] rollback ${e} failed`,t)};if(n.createdConfigId)try{await Br(r.restApiContext,t,n.createdConfigId)}catch(e){i(`delete config`,e)}else if(n.priorConfigSnapshot)try{await je(r.restApiContext,t,n.priorConfigSnapshot.id,n.priorConfigSnapshot.payload)}catch(e){i(`restore prior config`,e)}let a=!1;if(n.createdTableId)try{await ke(r.restApiContext,n.createdTableId,e),a=!0}catch(e){i(`delete data table`,e)}if(!a&&n.rowMutation){let t=n.rowMutation;if(t.kind===`insert`&&t.rowId!==void 0)try{await Qn(r.restApiContext,t.tableId,[t.rowId],e)}catch(e){i(`delete data table row`,e)}else if(t.kind===`update`)try{await pt(r.restApiContext,t.tableId,t.rowId,t.priorData,e)}catch(e){i(`restore prior data table row`,e)}}if(!a&&n.addedColumns)for(let t of n.addedColumns.columnIds)try{await _t(r.restApiContext,n.addedColumns.tableId,e,t)}catch(e){i(`delete added data table column`,e)}}function u(){let r=t.value,i=r?.connectionsBySourceNode??{},a=r?.allNodes??[],o=zr(i),s=new Set(a.filter(e=>e.type===Cn).map(e=>e.name));if(!e.isSliceMode){let t=e.aiNodeName;if(!t)return{ok:!1,reason:`Pick an AI node to evaluate`};let r=new Set(a.filter(e=>n.isTriggerNode(e.type)).map(e=>e.name));if(r.size===0)return{ok:!1,reason:`Workflow has no trigger`};let i=[t,...Ft(o,t,`main`)],c,l;for(let e of i){if(r.has(e))continue;let t=Pi(Ft(o,e,`main`,1),s);if(t&&r.has(t)){c=e,l=t;break}}return!c||!l?{ok:!1,reason:`Couldn't trace AI node "${t}" back to a trigger`}:{ok:!0,upstreamNodeName:l,startNodeName:c,endNodeName:t}}let c=e.startNodeName,l=e.endNodeName;if(!c||!l)return{ok:!1,reason:`Pick a start and end node for the slice`};let u=Ft(o,c,`main`,1),d=Pi(u,s);return d?{ok:!0,upstreamNodeName:d,startNodeName:c,endNodeName:l}:{ok:!1,reason:`Start node "${c}" must have exactly one upstream node (found ${u.filter(e=>!s.has(e)).length||u.length})`}}function d(e){i.showError(e,a.baseText(`evaluations.tests.persistError`))}return{ensureConfig:o,ensureDataTable:c,rollback:l,resolveSlice:u,showPersistError:d}}function ba(e){if(typeof e==`number`)return e;if(typeof e==`string`&&/^\d+$/.test(e))return Number(e)}function xa(e){let t=new Set,n=[];for(let r of e)t.has(r)||(t.add(r),n.push({name:r,type:`string`}));return n}function Sa(e){let t={};for(let[n,r]of Object.entries(e))n===`id`||n===`createdAt`||n===`updatedAt`||(t[n]=r);return t}var Ca=Promise.resolve();function wa(){let e=Ni(),t=Z(),n=qt(),r=Je(),i=X(),a=ye(),o=Fi(),s=jt(),{ensureConfig:c,ensureDataTable:l,rollback:u,resolveSlice:d,showPersistError:f}=ya(),p=_(!1),m=0;async function h(e){m+=1,p.value=!0;let t=Ca.then(e),n=t.then(()=>void 0,()=>void 0);return Ca=n,n.then(()=>{--m,m===0&&(p.value=!1)}),await t}async function g(){let r=t.value,i=r?.homeProject?.id,a=r?.workflowId;if(!i||!a)return{ok:!1,error:Error(`Missing project or workflow context`)};let s=d();if(!s.ok)return{ok:!1,error:Error(s.reason)};let f=o.value.fieldNames,p=ci(e.selectedMetricKeys),m=xa([...f,...p.map(e=>e.name),ii]),h=ma({workflowName:r.name??`workflow`,upstreamNodeName:s.upstreamNodeName,startNodeName:s.startNodeName,endNodeName:s.endNodeName,inputFieldNames:f,selectedMetrics:e.selectedMetricKeys,judgeSelectionByMetric:e.judgeSelectionByMetric,customChecks:e.customChecks,dataTableId:`__placeholder__`});if(!h.ok)return{ok:!1,error:Error(h.reason)};let g=$r(r.name),_=g,v,y,b,x,S,C=e.activeRowIndex===null;try{let t=await l(g,i,m);t.created?v=t.id:y={tableId:t.id,columnIds:t.addedColumnIds};let o={};for(let t of f)o[t]=e.inputs[t]??``;for(let t of p)o[t.name]=e.expectedValues[t.name]??``;o[ii]=e.caseName??``;let u;if(C){let e=(await Xn(n.restApiContext,t.id,i,{take:1})).count,r=ba((await ut(n.restApiContext,t.id,o,i))[0]?.id);b={kind:`insert`,tableId:t.id,rowId:r},u=e}else{let r=e.activeRowIndex;if(r===null)throw Error(`Cannot resolve active row index for edit`);let a=await Xn(n.restApiContext,t.id,i,{skip:r,take:1}),s=e.activeRowId??ba(a.data[0]?.id)??null;if(s===null)throw Error(`Could not resolve row id for index ${r}`);let c=Sa(a.data[0]??{});b={kind:`update`,tableId:t.id,rowId:s,priorData:c},await pt(n.restApiContext,t.id,s,o,i),u=r}let d=ma({workflowName:r.name??`workflow`,upstreamNodeName:s.upstreamNodeName,startNodeName:s.startNodeName,endNodeName:s.endNodeName,inputFieldNames:f,selectedMetrics:e.selectedMetricKeys,judgeSelectionByMetric:e.judgeSelectionByMetric,customChecks:e.customChecks,dataTableId:t.id});if(!d.ok)throw Error(d.reason);let h=await c(a,{...d.dto,name:_});return h.created?x=h.id:S={id:h.id,payload:h.priorPayload},b?.kind===`insert`&&e.setActiveRow(u,b.rowId??null),{ok:!0,configId:h.id,resolvedIndex:u,isNewCase:C}}catch(e){return await u(i,a,{createdTableId:v,addedColumns:y,rowMutation:b,createdConfigId:x,priorConfigSnapshot:S}),{ok:!1,error:e}}}async function v(e){let t=await g();return t.ok?!0:(e?.silent||f(t.error),!1)}async function y(n=`initial`){let o=await g();if(!o.ok)return f(o.error),!1;let c=t.value?.workflowId;if(!c)return!1;let{configId:l,resolvedIndex:u,isNewCase:d}=o;try{e.setActiveRunId(null);let t=await s.startTestRun(c,{evaluationConfigId:l,compileFromConfig:!0,rowIndices:[u]});return e.setActiveRunId(t?.testRunId??null),a.track(`User ran evaluation`,{workflow_id:c,run_id:t?.testRunId??null,row_index:u,is_new_case:d,trigger:n,metric_count:e.selectedMetricKeys.length,custom_check_count:e.customChecks.length,slice_mode:e.isSliceMode}),await s.fetchTestRuns(c),!0}catch(e){return r.showError(e,i.baseText(`evaluations.tests.dispatchError`)),!1}}async function b(n){let r=t.value,i=r?.homeProject?.id,a=r?.workflowId;if(!i||!a)return null;let s=d();if(!s.ok)return n?.silent||f(Error(s.reason)),null;let u=o.value.fieldNames,p=ci(e.selectedMetricKeys),m=xa([...u,...p.map(e=>e.name),ii]),h=$r(r.name);try{let t=await l(h,i,m),o=ma({workflowName:r.name??`workflow`,upstreamNodeName:s.upstreamNodeName,startNodeName:s.startNodeName,endNodeName:s.endNodeName,inputFieldNames:u,selectedMetrics:e.selectedMetricKeys,judgeSelectionByMetric:e.judgeSelectionByMetric,customChecks:e.customChecks,dataTableId:t.id});return o.ok?(await c(a,{...o.dto,name:h})).id:(n?.silent||f(Error(o.reason)),null)}catch(e){return n?.silent?console.warn(`[evaluations] silent saveConfig failed`,e):f(e),null}}async function x(){let o=t.value,c=o?.workflowId;if(!c)return f(Error(`Missing workflow context`)),!1;await b({silent:!0});let l;try{let e=await It(n.restApiContext,c),t=$r(o.name),a=e.find(e=>e.name===t)??e[e.length-1];if(!a)return r.showError(Error(`No evaluation config found. Run a single test case first.`),i.baseText(`evaluations.tests.persistError`)),!1;l=a.id}catch(e){return f(e),!1}try{e.setActiveRunId(null);let t=await s.startTestRun(c,{evaluationConfigId:l,compileFromConfig:!0});return e.setActiveRunId(t?.testRunId??null),a.track(`User ran evaluation`,{workflow_id:c,run_id:t?.testRunId??null,trigger:`run_all`}),await s.fetchTestRuns(c),!0}catch(e){return r.showError(e,i.baseText(`evaluations.tests.dispatchError`)),!1}}async function S(){let r=t.value,i=r?.homeProject?.id,o=r?.workflowId,s=e.activeRowIndex;if(!i||!o||s===null)return!1;try{let t=await It(n.restApiContext,o),c=$r(r.name),l=t.find(e=>e.name===c)??t[t.length-1];if(!l||l.datasetSource!==`data_table`)throw Error(`No data table found for this evaluation`);let u=l.datasetRef.dataTableId,d=e.activeRowId;if(d===null&&(d=ba((await Xn(n.restApiContext,u,i,{skip:s,take:1})).data[0]?.id)??null),d===null)throw Error(`Could not resolve row id for index ${s}`);return await Qn(n.restApiContext,u,[d],i),a.track(`User deleted evaluation test case`,{workflow_id:o,row_index:s}),!0}catch(e){return f(e),!1}}async function C(e){return await h(async()=>await v(e))}async function w(e=`initial`){return await h(async()=>await y(e))}async function T(e){return await h(async()=>await b(e))}async function E(){return await h(async()=>await x())}async function D(){return await h(async()=>await S())}return{persistAndRunCase:w,saveCase:C,runAll:E,saveConfig:T,deleteCase:D,isPersisting:p}}var Ta=[`data-test-id`],Ea=[`data-test-id`],Da=[`data-test-id`],Oa=[`data-test-id`],ka=$(p({__name:`TestCaseRunResult`,props:{index:{},runId:{default:null},expanded:{type:Boolean,default:!1},separated:{type:Boolean,default:!1}},setup(e){let t=[`success`,`error`,`warning`,`cancelled`],i={promptTokens:`evaluations.tests.results.metric.promptTokens`,completionTokens:`evaluations.tests.results.metric.completionTokens`,totalTokens:`evaluations.tests.results.metric.totalTokens`,executionTime:`evaluations.tests.results.metric.executionTime`},c=e,l=X(),u=Ni(),d=jt(),f=Pn(),p=Z(),m=a(()=>{let e=p.value?.workflowId;return e?[...d.testRunsByWorkflowId[e]??[]].sort((e,t)=>new Date(e.createdAt).getTime()-new Date(t.createdAt).getTime()):[]}),h=a(()=>c.runId===null?m.value[m.value.length-1]:m.value.find(e=>e.id===c.runId)),g=a(()=>{let e=h.value?.id;return e?m.value.findIndex(t=>t.id===e)+1:0}),y=a(()=>{let e=h.value;return e?yt(e.runAt??e.createdAt):``}),b=a(()=>{let e=h.value?.id;if(e)return Object.values(d.testCaseExecutionsById??{}).find(t=>t.testRunId===e&&(t.runIndex??0)===c.index)}),x=a(()=>{let e=h.value;if(!e||![`new`,`running`].includes(e.status))return!1;let n=b.value?.status;return!n||!t.includes(n)}),C=a(()=>!!(b.value&&t.includes(b.value.status))&&!x.value),E=a(()=>b.value?.status===`success`),D=a(()=>C.value&&!E.value),O=a(()=>{let e=b.value?.metrics;return e?xt(e).map(t=>{let n=e[t],r=si.find(e=>e.key===t),i=r?l.baseText(oi(r)):t,a=Zn(t);return a===`aiBased`?{key:t,label:i,text:Ne(n,{category:a}),passed:n>=3}:{key:t,label:i,text:Rt(n,{category:a}),passed:Vn(n)}}):[]}),A=a(()=>mt(b.value?.metrics).map(({key:e,value:t})=>({key:e,label:i[e]?l.baseText(i[e]):e,text:e===`executionTime`?Ee(t):$n(t,{withUnit:!1})}))),j=a(()=>u.answerNodeName),N=_(null);async function P(e){try{N.value=await f.fetchExecution(e)??null}catch(e){console.warn(`[TestCaseRunResult] failed to load case execution`,e)}}M([()=>c.expanded,D,()=>b.value?.executionId],([e,t,n])=>{!n||!e&&!t||N.value?.id!==n&&P(n)},{immediate:!0});let F=a(()=>Hr(N.value,j.value,b.value?.outputs)),ee=a(()=>{if(!D.value)return``;let e=N.value?.data?.resultData?.error?.message;if(e)return e;let t=ni(b.value?.errorCode);return t&&l.exists(t)?l.baseText(t,{interpolate:{link:``}}).trim():l.baseText(`evaluations.tests.results.runFailed`)});return(t,i)=>x.value?(S(),o(`div`,{key:0,class:T([t.$style.runSection,{[t.$style.separated]:e.separated}]),"data-test-id":`tests-result-running-${e.index}`},[U(`div`,{class:T(t.$style.runLine)},[I(r(Q),{icon:`spinner`,size:`small`,spin:!0,color:`text-light`}),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.results.running`)),1)]),_:1})],2)],10,Ta)):C.value?(S(),o(`div`,{key:1,class:T([t.$style.runSection,{[t.$style.separated]:e.separated}]),"data-test-id":`tests-result-result-${e.index}`},[U(`div`,{class:T(t.$style.runLine)},[I(r(Q),{icon:E.value?`check`:`x`,size:`small`,color:E.value?`success`:`danger`},null,8,[`icon`,`color`]),I(r(q),{size:`small`,color:E.value?`success`:`danger`},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.results.runLabel`,{interpolate:{number:String(g.value),date:y.value}})),1)]),_:1},8,[`color`])],2),D.value&&ee.value?(S(),v(r(q),{key:0,size:`small`,color:`danger`,class:T(t.$style.failureReason),"data-test-id":`tests-result-error-${e.index}`},{default:H(()=>[n(L(ee.value),1)]),_:1},8,[`class`,`data-test-id`])):s(``,!0),e.expanded?(S(),v(r(q),{key:1,size:`small`,color:`text-light`},{default:H(()=>[n(L(r(l).baseText(`evaluations.tests.detail.output`)),1)]),_:1})):s(``,!0),U(`div`,{class:T(t.$style.badges)},[(S(!0),o(k,null,w(O.value,r=>(S(),o(`span`,{key:r.key,class:T([t.$style.badge,r.passed?t.$style.badgePass:t.$style.badgeFail]),"data-test-id":`tests-result-badge-${e.index}-${r.key}`},[n(L(r.label)+` `,1),U(`strong`,null,L(r.text),1)],10,Da))),128))],2),e.expanded&&F.value?(S(),v(r(q),{key:2,size:`small`,color:`text-dark`,class:T(t.$style.output)},{default:H(()=>[n(L(F.value),1)]),_:1},8,[`class`])):s(``,!0),e.expanded&&A.value.length>0?(S(),o(`div`,{key:3,class:T(t.$style.operational),"data-test-id":`tests-result-operational-${e.index}`},[(S(!0),o(k,null,w(A.value,e=>(S(),v(r(q),{key:e.key,size:`xsmall`,color:`text-light`},{default:H(()=>[n(L(e.label)+` `+L(e.text),1)]),_:2},1024))),128))],10,Oa)):s(``,!0)],10,Ea)):s(``,!0)}}),[[`__cssModules`,{$style:{runSection:`_runSection_1my91_1`,separated:`_separated_1my91_7`,runLine:`_runLine_1my91_13`,badges:`_badges_1my91_19`,badge:`_badge_1my91_19`,badgePass:`_badgePass_1my91_34`,badgeFail:`_badgeFail_1my91_39`,output:`_output_1my91_44`,failureReason:`_failureReason_1my91_49`,operational:`_operational_1my91_54`}}]]),Aa=[`data-test-id`],ja=[`data-test-id`],Ma=[`data-test-id`,`onClick`],Na=[`data-test-id`],Pa=$(p({__name:`TestCaseDetail`,setup(e){let i={correctness:`evaluations.tests.metric.correctness.sentence`,helpfulness:`evaluations.tests.metric.helpfulness.sentence`,stringSimilarity:`evaluations.tests.metric.stringSimilarity.sentence`,categorization:`evaluations.tests.metric.categorization.sentence`,toolsUsed:`evaluations.tests.metric.toolsUsed.sentence`},c=Ni(),l=jt(),u=Z(),d=X(),f=ct(),{selectedMetricKeys:p,customChecks:m,activeRowIndex:h,activeRunId:g,expectedValues:y,inputs:b,aiNodeName:x,caseName:C}=P(c),{persistAndRunCase:E,saveCase:D,deleteCase:O,isPersisting:A}=wa(),j=Fi(),N=_(!1),F=t(async()=>{N.value&&await D({silent:!0})&&(N.value=!1)},Pr(Ae.API.AUTOSAVE));function ee(e,t){c.setInputValue(e,t),N.value=!0,F()}function te(e,t){c.setExpectedValue(e,t),N.value=!0,F()}function R(e){c.setCaseName(e),N.value=!0,F()}let ne=a(()=>c.datasetInputsByRow.length>0||g.value!==null),re=a(()=>{let e=j.value.fieldNames[0];return(e?b.value[e]:``)||d.baseText(`evaluations.tests.newCase.title`)}),z=a(()=>[{id:`delete`,label:d.baseText(`evaluations.tests.detail.delete`),disabled:h.value===null}]);function B(e){e===`delete`&&oe()}async function V(){await ie(),c.openList()}async function ie(){N.value&&(N.value=!1,await D({silent:!0}))}async function ae(){await ie(),c.openCreate()}async function oe(){await f.confirm(d.baseText(`evaluations.tests.detail.delete.confirm.message`),d.baseText(`evaluations.tests.detail.delete.confirm.title`),{confirmButtonText:d.baseText(`generic.delete`),cancelButtonText:d.baseText(`generic.cancel`)})===`confirm`&&(N.value=!1,await O()&&c.openList())}let se=a(()=>si.filter(e=>p.value.includes(e.key)));function W(e){return d.baseText(i[e])}function ce(e){return ri[e]}let le=a(()=>{let e=x.value;return e?Ft(zr(u.value?.connectionsBySourceNode??{}),e,Vt.AiTool,1):[]}),ue=a(()=>new Set((y.value.expectedTools??``).split(`,`).map(e=>e.trim()).filter(Boolean)));function de(e){let t=new Set(ue.value);t.has(e)?t.delete(e):t.add(e),te(`expectedTools`,Array.from(t).join(`, `))}let fe=_(!0),pe=_(!0),me=a(()=>g.value),he=a(()=>{let e=me.value,t=h.value;return e===null||t===null?!1:Object.values(l.testCaseExecutionsById??{}).some(n=>n.testRunId===e&&(n.runIndex??0)===t)}),ge=a(()=>{let e=me.value;if(e===null)return!1;let t=l.testRunsById[e]?.status;return!!t&&![`new`,`running`].includes(t)}),_e=_(!1);M([he,ge],([e,t])=>{(e||t)&&(_e.value=!1)});let ve=a(()=>h.value!==null&&(he.value||_e.value)),ye=a(()=>h.value);async function be(){_e.value=!0,await E(g.value?`run_again`:`initial`)?(fe.value=!1,pe.value=!0):_e.value=!1}return(e,t)=>(S(),o(`div`,{class:T(e.$style.detail)},[U(`header`,{class:T(e.$style.header)},[U(`div`,{class:T(e.$style.breadcrumb)},[U(`button`,{type:`button`,class:T(e.$style.breadcrumbRoot),"data-test-id":`tests-detail-breadcrumb-root`,onClick:V},[I(r(q),{size:`small`,color:`text-base`},{default:H(()=>[n(L(r(d).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1})],2),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[...t[2]||=[n(`/`,-1)]]),_:1}),I(r(Et),{"model-value":r(C),placeholder:re.value,"max-width":`100%`,class:T(e.$style.caseName),"data-test-id":`tests-detail-name`,"onUpdate:modelValue":R},null,8,[`model-value`,`placeholder`,`class`])],2),I(r(bt),{items:z.value,"activator-icon":`ellipsis-vertical`,"activator-size":`small`,"data-test-id":`tests-detail-menu`,onSelect:B},null,8,[`items`]),ne.value?(S(),v(r(G),{key:0,variant:`outline`,size:`xsmall`,"data-test-id":`tests-detail-create-case`,onClick:ae},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.results.createCase`)),1)]),_:1})):s(``,!0),I(r(G),{variant:`solid`,size:`xsmall`,loading:r(A),"data-test-id":`tests-detail-run`,onClick:be},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.run`)),1)]),_:1},8,[`loading`])],2),U(`div`,{class:T(e.$style.body)},[I(r(wn),{modelValue:fe.value,"onUpdate:modelValue":t[0]||=e=>fe.value=e,title:r(d).baseText(`evaluations.tests.detail.config`)},{default:H(()=>[U(`div`,{class:T(e.$style.paneContent),"data-test-id":`tests-detail-config`},[U(`div`,{class:T(e.$style.block)},[U(`div`,{class:T(e.$style.sentence)},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),I(r(q),{size:`small`,color:`text-dark`,bold:``,"data-test-id":`tests-detail-ai-node`},{default:H(()=>[n(L(r(x)),1)]),_:1}),I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.receivesInput`)),1)]),_:1})],2),U(`div`,{class:T(e.$style.indented)},[(S(!0),o(k,null,w(r(j).fieldNames,t=>(S(),o(`div`,{key:`input-${t}`,class:T(e.$style.field),"data-test-id":`tests-detail-input-${t}`},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(t),1)]),_:2},1024),I(r(pn),{"model-value":r(b)[t]??``,type:`textarea`,rows:2,size:`small`,"onUpdate:modelValue":e=>ee(t,e)},null,8,[`model-value`,`onUpdate:modelValue`])],10,Aa))),128))],2)],2),U(`div`,{class:T(e.$style.block)},[I(r(q),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.output`)),1)]),_:1}),U(`div`,{class:T(e.$style.indented)},[(S(!0),o(k,null,w(se.value,t=>(S(),o(`div`,{key:t.key,class:T(e.$style.metric),"data-test-id":`tests-detail-metric-${t.key}`},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(W(t.key)),1)]),_:2},1024),t.key===`toolsUsed`?(S(),o(`div`,{key:0,class:T(e.$style.tools)},[(S(!0),o(k,null,w(le.value,t=>(S(),o(`button`,{key:t,type:`button`,class:T(e.$style.toolItem),"data-test-id":`tests-detail-tool-${t}`,onClick:e=>de(t)},[U(`span`,{class:T([e.$style.box,ue.value.has(t)?e.$style.boxChecked:null])},[ue.value.has(t)?(S(),v(r(Q),{key:0,icon:`check`,size:`xsmall`})):s(``,!0)],2),I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(t),1)]),_:2},1024)],10,Ma))),128)),le.value.length===0?(S(),v(r(q),{key:0,size:`small`,color:`text-light`},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.detail.tools.empty`)),1)]),_:1})):s(``,!0)],2)):ce(t.key)?(S(),v(r(pn),{key:1,"model-value":r(y)[ce(t.key).name]??``,type:`textarea`,rows:3,size:`small`,"data-test-id":`tests-detail-expected-${ce(t.key).name}`,"onUpdate:modelValue":e=>te(ce(t.key).name,e)},null,8,[`model-value`,`data-test-id`,`onUpdate:modelValue`])):s(``,!0)],10,ja))),128)),(S(!0),o(k,null,w(r(m),t=>(S(),o(`div`,{key:t.id,class:T(e.$style.metric),"data-test-id":`tests-detail-custom-${t.id}`},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(d).baseText(`evaluations.tests.metric.custom.sentence`)),1)]),_:1}),I(r(q),{size:`small`,color:`text-dark`,class:T(e.$style.expression),"data-test-id":`tests-detail-custom-expression-${t.id}`},{default:H(()=>[n(L(t.expression),1)]),_:2},1032,[`class`,`data-test-id`])],10,Na))),128))],2)],2)],2)]),_:1},8,[`modelValue`,`title`]),ve.value&&ye.value!==null?(S(),v(r(wn),{key:0,modelValue:pe.value,"onUpdate:modelValue":t[1]||=e=>pe.value=e,title:r(d).baseText(`evaluations.tests.detail.latestRun`)},{default:H(()=>[U(`div`,{class:T(e.$style.paneContent),"data-test-id":`tests-detail-results`},[I(ka,{index:ye.value,"run-id":me.value,expanded:pe.value},null,8,[`index`,`run-id`,`expanded`])],2)]),_:1},8,[`modelValue`,`title`])):s(``,!0)],2)],2))}}),[[`__cssModules`,{$style:{detail:`_detail_1xzyz_1`,header:`_header_1xzyz_10`,breadcrumb:`_breadcrumb_1xzyz_19`,breadcrumbRoot:`_breadcrumbRoot_1xzyz_27`,caseName:`_caseName_1xzyz_37`,body:`_body_1xzyz_44`,paneContent:`_paneContent_1xzyz_53`,block:`_block_1xzyz_59`,sentence:`_sentence_1xzyz_65`,indented:`_indented_1xzyz_72`,field:`_field_1xzyz_79`,metric:`_metric_1xzyz_85`,expression:`_expression_1xzyz_91`,tools:`_tools_1xzyz_97`,toolItem:`_toolItem_1xzyz_103`,box:`_box_1xzyz_114`,boxChecked:`_boxChecked_1xzyz_126`}}]]),Fa=[`data-test-id`],Ia=$(p({__name:`SuiteConfig`,setup(e){let i=[`correctness`,`stringSimilarity`,`toolsUsed`],s=X(),c=Ni(),l=Ki(),{saveConfig:u}=wa(),{aiNodeName:d,selectedMetricKeys:f,customChecks:p,judgeSelectionByMetric:m}=P(c),h=a(()=>si.filter(e=>f.value.includes(e.key))),g=a(()=>{let e=i.filter(e=>!f.value.includes(e)).map(e=>{let t=si.find(t=>t.key===e);return{id:e,label:t?s.baseText(oi(t)):e}});return e.push({id:`custom`,label:s.baseText(`evaluations.tests.detail.addMetric.custom`)}),e});function _(e){if(e===`custom`){c.addCustomCheck({name:`Custom ${p.value.length+1}`,expression:``});return}c.toggleMetric(e)}function y(e){f.value.includes(e)&&c.toggleMetric(e)}function b(e){c.setAiNodeName(e),c.exitSliceMode()}let x=t(()=>{u({silent:!0})},Pr(Ae.API.AUTOSAVE));return M([d,f,p,m],()=>{x()},{deep:!0}),(e,t)=>(S(),o(`section`,{class:T(e.$style.config),"data-test-id":`tests-suite-config`},[U(`div`,{class:T(e.$style.sentence)},[I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(s).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),I(r(In),{"model-value":r(d),size:`small`,filterable:``,placeholder:r(s).baseText(`evaluations.tests.chooseAiNode.placeholder`),class:T(e.$style.nodeSelect),"data-test-id":`tests-suite-config-ai-node-select`,"onUpdate:modelValue":b},{default:H(()=>[(S(!0),o(k,null,w(r(l),e=>(S(),v(r(Bn),{key:e.name,label:e.name,value:e.name},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`class`]),I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(r(s).baseText(`evaluations.tests.suite.receivesInput`)),1)]),_:1})],2),U(`div`,{class:T(e.$style.checks)},[(S(!0),o(k,null,w(h.value,e=>(S(),v(r(G),{key:e.key,variant:`subtle`,size:`small`,icon:`x`,"aria-label":r(s).baseText(`evaluations.tests.detail.removeMetric`),"data-test-id":`tests-suite-config-metric-${e.key}`,onClick:t=>y(e.key)},{default:H(()=>[n(L(r(s).baseText(r(oi)(e))),1)]),_:2},1032,[`aria-label`,`data-test-id`,`onClick`]))),128)),(S(!0),o(k,null,w(r(p),t=>(S(),o(`div`,{key:t.id,class:T(e.$style.customRow),"data-test-id":`tests-suite-config-custom-${t.id}`},[I(r(pn),{"model-value":t.expression,type:`text`,size:`small`,class:T(e.$style.expressionInput),placeholder:r(s).baseText(`evaluations.tests.metric.custom.placeholder`),"onUpdate:modelValue":e=>r(c).updateCustomCheck(t.id,{expression:e})},null,8,[`model-value`,`class`,`placeholder`,`onUpdate:modelValue`]),I(r(G),{variant:`ghost`,size:`small`,"icon-only":``,icon:`x`,"aria-label":r(s).baseText(`evaluations.tests.detail.removeMetric`),"data-test-id":`tests-suite-config-custom-remove-${t.id}`,onClick:e=>r(c).removeCustomCheck(t.id)},null,8,[`aria-label`,`data-test-id`,`onClick`])],10,Fa))),128)),I(r(bt),{items:g.value,placement:`bottom-start`,"data-test-id":`tests-suite-config-add-metric`,onSelect:_},{activator:H(()=>[I(r(G),{variant:`ghost`,size:`small`,icon:`plus`},{default:H(()=>[n(L(r(s).baseText(`evaluations.tests.detail.addMetric`)),1)]),_:1})]),_:1},8,[`items`])],2)],2))}}),[[`__cssModules`,{$style:{config:`_config_1ja9c_1`,sentence:`_sentence_1ja9c_11`,nodeSelect:`_nodeSelect_1ja9c_18`,checks:`_checks_1ja9c_23`,customRow:`_customRow_1ja9c_30`,expressionInput:`_expressionInput_1ja9c_37`}}]]),La=[`data-test-id`],Ra=[`data-test-id`],za=[`aria-expanded`,`data-test-id`],Ba=$(p({__name:`TestCaseResultCard`,props:{index:{}},setup(e){let t=e,i=X(),c=Ni(),l=_(!1),u=a(()=>c.datasetNamesByRow[t.index]||i.baseText(`evaluations.tests.list.caseLabel`,{interpolate:{index:t.index+1}})),d=a(()=>{let e=c.datasetInputsByRow[t.index]??{};return Object.entries(e).map(([e,t])=>({name:e,value:String(t)}))});function f(){l.value=!l.value}function p(){c.openDetail(t.index)}return(t,a)=>(S(),o(`div`,{class:T(t.$style.card),"data-test-id":`tests-result-card-${e.index}`},[U(`div`,{class:T(t.$style.header)},[U(`button`,{type:`button`,class:T(t.$style.title),"data-test-id":`tests-result-edit-${e.index}`,onClick:p},[I(r(q),{size:`medium`,color:`text-dark`,bold:``},{default:H(()=>[n(L(u.value),1)]),_:1})],10,Ra),U(`button`,{type:`button`,class:T(t.$style.chevron),"aria-expanded":l.value,"data-test-id":`tests-result-toggle-${e.index}`,onClick:f},[I(r(Q),{icon:l.value?`chevron-up`:`chevron-down`,size:`small`,color:`text-base`},null,8,[`icon`])],10,za)],2),l.value?(S(),o(`div`,{key:0,class:T(t.$style.definition)},[U(`div`,{class:T(t.$style.sentence)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(i).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),I(r(q),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[n(L(r(c).aiNodeName),1)]),_:1}),I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(i).baseText(`evaluations.tests.detail.receivesInput`)),1)]),_:1})],2),U(`div`,{class:T(t.$style.entries)},[(S(!0),o(k,null,w(d.value,e=>(S(),o(`p`,{key:e.name,class:T(t.$style.entry)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(e.name),1)]),_:2},1024),I(r(q),{size:`small`,color:`text-dark`},{default:H(()=>[n(L(e.value),1)]),_:2},1024)],2))),128))],2)],2)):s(``,!0),I(ka,{index:e.index,expanded:l.value,separated:``},null,8,[`index`,`expanded`])],10,La))}}),[[`__cssModules`,{$style:{card:`_card_9n0ah_1`,header:`_header_9n0ah_11`,title:`_title_9n0ah_18`,chevron:`_chevron_9n0ah_31`,definition:`_definition_9n0ah_48`,sentence:`_sentence_9n0ah_54`,entries:`_entries_9n0ah_61`,entry:`_entry_9n0ah_68`}}]]),Va=$(p({__name:`TestCaseResults`,setup(e){let t=X(),i=Ni(),s=jt(),c=Z(),l=Je(),{runAll:u,isPersisting:f}=wa(),{hydrate:p}=$i(),{datasetInputsByRow:m}=P(i),h=a(()=>m.value.length>0);async function g(){let e=c.value?.workflowId;if(e)try{await s.fetchTestRuns(e);let t=[...s.testRunsByWorkflowId[e]??[]].sort((e,t)=>new Date(e.createdAt).getTime()-new Date(t.createdAt).getTime()),n=t[t.length-1];n&&![`new`,`running`].includes(n.status)&&await s.fetchTestCaseExecutions({workflowId:e,runId:n.id})}catch(e){console.warn(`[TestCaseResults] failed to load results`,e)}}d(async()=>{await p(),g()});let y=_(!1);async function b(){if(!y.value){y.value=!0;try{await u()?await g():l.showError(Error(`Run all failed`),t.baseText(`evaluations.tests.runAll.error`))}catch(e){l.showError(e,t.baseText(`evaluations.tests.runAll.error`))}finally{y.value=!1}}}return(e,a)=>(S(),o(`div`,{class:T(e.$style.container),"data-test-id":`tests-results`},[U(`header`,{class:T(e.$style.header)},[I(r(q),{tag:`h2`,size:`small`,color:`text-dark`,bold:``,class:T(e.$style.title)},{default:H(()=>[n(L(r(t).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1},8,[`class`]),U(`div`,{class:T(e.$style.actions)},[I(r(G),{variant:`outline`,size:`xsmall`,"data-test-id":`tests-results-create-case`,onClick:a[0]||=e=>r(i).openCreate()},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.results.createCase`)),1)]),_:1}),I(r(G),{variant:`solid`,size:`xsmall`,loading:y.value||r(f),disabled:!h.value,"data-test-id":`tests-results-run-all`,onClick:b},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.runAll`)),1)]),_:1},8,[`loading`,`disabled`])],2)],2),U(`div`,{class:T(e.$style.body)},[I(Ia),h.value?(S(),o(`div`,{key:0,class:T(e.$style.cards)},[(S(!0),o(k,null,w(r(m),(e,t)=>(S(),v(Ba,{key:t,index:t},null,8,[`index`]))),128))],2)):(S(),o(`div`,{key:1,class:T(e.$style.empty)},[I(r(q),{size:`small`,color:`text-light`},{default:H(()=>[n(L(r(t).baseText(`evaluations.tests.results.empty`)),1)]),_:1})],2))],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_oyxbw_1`,header:`_header_oyxbw_8`,title:`_title_oyxbw_18`,actions:`_actions_oyxbw_22`,body:`_body_oyxbw_28`,cards:`_cards_oyxbw_37`,empty:`_empty_oyxbw_43`}}]]),Ha=`__EMPTY__`,Ua=$(p({__name:`TestsPanel`,setup(e){let t=Ni(),i=jt(),s=Z(),c=$t(),l=sr(),u=Te(),{fetchLatestUserExecution:f}=aa(),p=X(),{viewMode:m,judgeSelectionByMetric:h}=P(t),g=Ki(),y=Yi(),{runWorkflow:x,runTriggerNode:C,triggerNodes:w}=Ji(),E=a(()=>g.value.length>0),D=a(()=>!E.value),O=a(()=>w.value.length>1),A=a(()=>w.value.map(e=>({id:e.name,label:e.name})));function j(){let e=s.value?.workflowId;e&&(w.value.length===0?u.openNodeCreatorForTriggerNodes(e,ze.ADD_NODE_BUTTON):u.openNodeCreatorForRegularNodes(e,ze.ADD_NODE_BUTTON))}function N(e){let t=w.value.find(t=>t.name===e);t&&C(t)}M([()=>t.isOpen,y,h],([e,n,r])=>{if(!(!e||!n))for(let e of ti)r[e]||t.setJudgeSelection(e,n)},{immediate:!0});let F=_(!1),ee=_(null),te=Fi({fallbackExecution:ee});async function R(){try{await Promise.all([Promise.resolve(c.fetchLastSuccessfulExecution()),re()])}finally{F.value=!0}}M([()=>t.isOpen,g],([e,n])=>{if(!e||(R(),t.aiNodeName))return;let r=n[0];r&&t.setAiNodeName(r.name)},{immediate:!0});let ne=null;d(()=>{ne=l.addEventListener(e=>{if(e.type!==`executionFinished`)return;let t=s.value?.workflowId;!t||e.data.workflowId!==t||(R(),i.fetchTestRuns(t))})}),b(()=>{ne?.(),ne=null});async function re(){try{ee.value=await f()}catch{ee.value=null}}M(te,({values:e,fieldNames:n})=>{n.length!==0&&t.prefillInputsFromExecution&&t.seedInputs(e)},{immediate:!0});let z=a(()=>te.value.hasExecution),B=a(()=>{if(t.datasetInputsByRow.length>0||t.activeRunId!==null)return!0;let e=s.value?.workflowId;return!!(e&&(i.testRunsByWorkflowId[e]?.length??0)>0)}),V=a(()=>F.value&&!z.value&&!B.value),ie=a(()=>!z.value&&!F.value&&!B.value),{hydrate:ae}=$i(),{createFromExecution:U}=oa();return M(()=>[t.isOpen,s.value?.workflowId],async([e])=>{let n=s.value?.workflowId,r=t.lastWorkflowId;if(r&&r!==Ha&&n&&n!==r&&t.reset(),n&&t.setLastWorkflowId(n),!e||!n)return;await ae();let i=t.pendingSeedExecution;i&&(U(i),t.setPendingSeedExecution(null))},{immediate:!0}),(e,t)=>(S(),o(`div`,{class:T(e.$style.panel),"data-test-id":`tests-panel`},[D.value?(S(),o(`div`,{key:0,class:T(e.$style.gate),"data-test-id":`tests-panel-add-node`},[I(r(q),{size:`large`,color:`text-dark`,class:T(e.$style.gateMessage)},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.noNode`)),1)]),_:1},8,[`class`]),I(r(G),{size:`small`,"data-test-id":`tests-panel-add-node-button`,onClick:j},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.noNode.button`)),1)]),_:1})],2)):ie.value?(S(),o(`div`,{key:1,class:T(e.$style.gate),"data-test-id":`tests-panel-probe-loading`},[I(r(Q),{icon:`spinner`,size:`medium`,spin:!0})],2)):V.value?(S(),o(`div`,{key:2,class:T(e.$style.gate),"data-test-id":`tests-panel-gate`},[I(r(q),{size:`large`,color:`text-dark`,class:T(e.$style.gateMessage)},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.noExecutions`)),1)]),_:1},8,[`class`]),O.value?(S(),v(r(bt),{key:0,items:A.value,placement:`bottom`,"data-test-id":`tests-panel-choose-trigger`,onSelect:N},{activator:H(()=>[I(r(G),{size:`small`},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.chooseTrigger`))+` `,1),I(r(Q),{icon:`chevron-down`,size:`small`})]),_:1})]),_:1},8,[`items`])):(S(),v(r(G),{key:1,size:`small`,"data-test-id":`tests-panel-gate-run`,onClick:r(x)},{default:H(()=>[n(L(r(p).baseText(`evaluations.tests.empty.execute`)),1)]),_:1},8,[`onClick`]))],2)):(S(),o(k,{key:3},[r(m)===`detail`?(S(),v(Pa,{key:0})):r(m)===`create`?(S(),v(fa,{key:1})):(S(),v(Va,{key:2}))],64))],2))}}),[[`__cssModules`,{$style:{panel:`_panel_16tpu_1`,gate:`_gate_16tpu_10`,gateMessage:`_gateMessage_16tpu_21`}}]]),Wa={key:0},Ga=$(p({name:`FocusSidebar`,__name:`FocusSidebar`,props:{isCanvasReadOnly:{type:Boolean}},emits:[`contextMenuAction`],setup(t,{emit:n}){let i=n,c=ne(`wrapper`),l=vn(),u=De(),f=Z(),p=mn(),m=cn(),h=ye(),g=qe(),_=N(l.value),y=D();ir({view_shown:`focus_panel`});let{selectedTab:x}=P(u),C=a(()=>u.focusPanelActive),w=a(()=>u.focusPanelWidth),O=a(()=>u.resolvedParameter),k=a(()=>m.isFeatureEnabled),{isFeatureEnabled:A}=Yr(),{isLicensed:j,isResolved:F,ensureLicenseLoaded:ee}=li(),te=a(()=>m.isFeatureEnabled&&x.value===`setup`),L=a(()=>A.value&&x.value===`evaluations`&&F.value&&j.value),R=a(()=>A.value&&x.value===`evaluations`&&F.value&&!j.value),re=a(()=>k.value||A.value),z=a(()=>{if(!p.isNdvInFocusPanelEnabled||O.value)return O.value?.node;let e=_.getSelectedNodes.value[0];return e?.data?.render.type===Dn.Default?(f?.value?.allNodes??[]).find(t=>t.id===e.id):void 0}),B=a(()=>{let e=O.value?.parameter.displayName??z.value?.name;return e?{focus:e}:void 0});function ie(e){e.key===`s`&&g.isCtrlKeyPressed(e)&&(e.stopPropagation(),e.preventDefault())}let ae=()=>{document.addEventListener(`keydown`,ie,!0)},oe=()=>{document.removeEventListener(`keydown`,ie,!0)};M(()=>u.focusPanelActive,e=>{e?ae():oe()},{immediate:!0}),M(y,e=>{if(!z.value||!e||!c.value?.contains(e))return;let t=e.closest(`.parameter-input`)?.getAttribute(`data-parameter-path`);t&&h.track(`User focused focus panel`,{node_id:z.value.id,node_type:z.value.type,parameter_path:t})});function se(e){u.updateWidth(e.width)}let W=V(se,10);function le(e,t){i(`contextMenuAction`,e,t)}return d(()=>{ee()}),b(()=>{oe()}),(n,i)=>C.value?(S(),o(`div`,{key:0,ref:`wrapper`,"data-test-id":`focus-sidebar`,class:T([n.$style.wrapper,`ignore-key-press-canvas`,{[n.$style.isNdvInFocusPanelEnabled]:r(p).isNdvInFocusPanelEnabled}]),onKeydown:i[1]||=ce(()=>{},[`stop`])},[I(r(Se),{width:w.value,"supported-directions":[`left`],"min-width":k.value?420:300,"max-width":r(p).isNdvInFocusPanelEnabled?void 0:1e3,"grid-size":8,style:e({width:`${w.value}px`}),onResize:r(W)},{default:H(()=>[U(`div`,{class:T(n.$style.container)},[re.value?(S(),o(`div`,Wa,[I(fi,{modelValue:r(x),"onUpdate:modelValue":i[0]||=e=>E(x)?x.value=e:null,"tab-labels":B.value},null,8,[`modelValue`,`tab-labels`])])):s(``,!0),te.value?(S(),o(`div`,{key:1,class:T(n.$style[`setup-panel-wrapper`])},[I(ki)],2)):L.value?(S(),o(`div`,{key:2,class:T(n.$style[`setup-panel-wrapper`])},[I(Ua)],2)):R.value?(S(),o(`div`,{key:3,class:T([n.$style[`setup-panel-wrapper`],n.$style[`evaluations-paywall-wrapper`]])},[I(Xr)],2)):(S(),v(Mi,{key:4,"is-canvas-read-only":t.isCanvasReadOnly,onContextMenuAction:le},null,8,[`is-canvas-read-only`]))],2)]),_:1},8,[`width`,`min-width`,`max-width`,`style`,`onResize`])],34)):s(``,!0)}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_m5715_1`,container:`_container_m5715_13`,"setup-panel-wrapper":`_setup-panel-wrapper_m5715_19`,"evaluations-paywall-wrapper":`_evaluations-paywall-wrapper_m5715_26`}}]]),Ka=p({__name:`CanvasStopCurrentExecutionButton`,props:{stopping:{type:Boolean},size:{}},setup(e){let t=e,n=X(),i=a(()=>t.stopping?n.baseText(`nodeView.stoppingCurrentExecution`):n.baseText(`nodeView.stopCurrentExecution`));return(t,n)=>(S(),v(r(Ct),{variant:`subtle`,icon:`square`,size:e.size??`large`,class:`stop-execution`,title:i.value,loading:e.stopping,"data-test-id":`stop-execution-button`},null,8,[`size`,`title`,`loading`]))}}),qa=p({__name:`CanvasStopWaitingForWebhookButton`,props:{size:{}},setup(e){let t=e,n=X();return(e,i)=>(S(),v(r(Ct),{variant:`subtle`,class:`stop-execution`,icon:`square`,size:t.size??`large`,title:r(n).baseText(`nodeView.stopWaitingForWebhookCall`),"data-test-id":`stop-execution-waiting-for-webhook-button`},null,8,[`size`,`title`]))}}),Ja={"data-action":`reload`},Ya={href:`https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/`,target:`_blank`},Xa=p({__name:`NodeViewUnfinishedWorkflowMessage`,setup(e){let t=X();return(e,i)=>(S(),o(`div`,null,[U(`a`,Ja,L(r(t).baseText(`nodeView.refresh`)),1),n(` `+L(r(t).baseText(`nodeView.toSeeTheLatestStatus`))+`. `,1),i[0]||=U(`br`,null,null,-1),U(`a`,Ya,L(r(t).baseText(`nodeView.moreInfo`)),1)]))}}),Za=p({__name:`CanvasChatButton`,props:{label:{},variant:{}},setup(e){return(t,n)=>(S(),v(r(G),{label:e.label,size:`large`,icon:`message-circle`,variant:e.variant,"data-test-id":`workflow-chat-button`},null,8,[`label`,`variant`]))}}),Qa=$(p({__name:`CheckHeader`,props:{icon:{},iconBg:{},iconFg:{},title:{},badge:{},badgeIcon:{}},setup(t){return(i,a)=>(S(),o(`div`,{class:T(i.$style.header)},[U(`span`,{class:T([i.$style.icon,!t.iconBg&&!t.iconFg?i.$style.iconNeutral:null]),style:e(t.iconBg||t.iconFg?{backgroundColor:t.iconBg,color:t.iconFg}:null)},[I(r(Q),{icon:t.icon,size:`small`},null,8,[`icon`])],6),U(`div`,{class:T(i.$style.body)},[U(`div`,{class:T(i.$style.titleRow)},[I(r(q),{size:`small`,bold:``,color:`text-dark`},{default:H(()=>[n(L(t.title),1)]),_:1}),t.badge?(S(),v(r(ve),{key:0,class:T(i.$style.judgePill)},{default:H(()=>[t.badgeIcon?(S(),v(r(Q),{key:0,icon:t.badgeIcon,size:`xsmall`,class:T(i.$style.judgePillIcon)},null,8,[`icon`,`class`])):s(``,!0),n(` `+L(t.badge),1)]),_:1},8,[`class`])):s(``,!0)],2),g(i.$slots,`description`)],2)],2))}}),[[`__cssModules`,{$style:{header:`_header_1ffdx_1`,icon:`_icon_1ffdx_9`,iconNeutral:`_iconNeutral_1ffdx_18`,body:`_body_1ffdx_23`,titleRow:`_titleRow_1ffdx_30`,judgePill:`_judgePill_1ffdx_37`,judgePillIcon:`_judgePillIcon_1ffdx_51`}}]]),$a=[`role`,`tabindex`],eo=[`aria-label`,`data-test-id`],to=$(p({__name:`CheckCard`,props:{icon:{},iconBg:{},iconFg:{},title:{},description:{},badge:{},badgeIcon:{},selected:{type:Boolean},readonly:{type:Boolean},removable:{type:Boolean},removeAriaLabel:{},removeTestId:{}},emits:[`toggle`,`remove`],setup(e){return(t,i)=>(S(),o(`div`,{class:T([t.$style.card,e.selected?t.$style.cardSelected:null]),role:e.readonly?void 0:`button`,tabindex:e.readonly?void 0:0,onClick:i[3]||=n=>!e.readonly&&t.$emit(`toggle`),onKeydown:[i[4]||=ae(ce(n=>!e.readonly&&t.$emit(`toggle`),[`self`,`prevent`]),[`enter`]),i[5]||=ae(ce(n=>!e.readonly&&t.$emit(`toggle`),[`self`,`prevent`]),[`space`])]},[I(Qa,{icon:e.icon,"icon-bg":e.iconBg,"icon-fg":e.iconFg,title:e.title,badge:e.badge,"badge-icon":e.badgeIcon},m({_:2},[e.description?{name:`description`,fn:H(()=>[I(r(q),{size:`small`,color:`text-base`,class:T(t.$style.description)},{default:H(()=>[n(L(e.description),1)]),_:1},8,[`class`])]),key:`0`}:void 0]),1032,[`icon`,`icon-bg`,`icon-fg`,`title`,`badge`,`badge-icon`]),e.removable?(S(),o(`button`,{key:0,type:`button`,class:T(t.$style.removeButton),"aria-label":e.removeAriaLabel,"data-test-id":e.removeTestId,onClick:i[0]||=ce(e=>t.$emit(`remove`),[`stop`])},[I(r(Q),{icon:`trash-2`,size:`small`})],10,eo)):e.selected&&!e.readonly?(S(),o(`span`,{key:1,class:T(t.$style.selectedMark),"aria-hidden":`true`},[I(r(Q),{icon:`check`,size:`small`})],2)):s(``,!0),t.$slots.default?(S(),o(`div`,{key:2,class:T(t.$style.slotContainer),onClick:i[1]||=ce(()=>{},[`stop`]),onKeydown:i[2]||=ce(()=>{},[`stop`])},[g(t.$slots,`default`)],34)):s(``,!0)],42,$a))}}),[[`__cssModules`,{$style:{card:`_card_k2mdo_1`,cardSelected:`_cardSelected_k2mdo_18`,description:`_description_k2mdo_25`,selectedMark:`_selectedMark_k2mdo_30`,removeButton:`_removeButton_k2mdo_38`,slotContainer:`_slotContainer_k2mdo_58`}}]]),no=[`aria-label`],ro=$(p({__name:`EvaluationsCanvasInfoCard`,setup(e){let t=a(()=>[...si,...si].map(e=>({...e,isJudge:ti.has(e.key)}))),i=X(),c=ye(),l=Ni(),u=Z(),f=qt(),p=Ki(),{isFeatureEnabled:m}=Yr(),{isLicensed:h,ensureLicenseLoaded:g}=li(),v=_(null),y=null,b=Dt(vt),x=a(()=>{let e=b.value;return e?new Set(e.split(`,`).filter(Boolean)):new Set}),C=a(()=>u.value?.workflowId??``),E=a(()=>u.value?.active??!1),D=a(()=>p.value.length>0),O=a(()=>C.value?x.value.has(C.value):!0),A=a(()=>m.value&&h.value&&E.value&&D.value&&!O.value),j=a(()=>A.value&&v.value===!1&&!l.isOpen);d(()=>{g()});async function N(){let e=C.value;if(e&&y!==e){y=e;try{let t=await It(f.restApiContext,e);if(e!==C.value)return;v.value=t.length>0}catch{if(e!==C.value)return;v.value=!0}finally{y===e&&(y=null)}}}M(A,e=>{if(!e){v.value=null;return}v.value===null&&N()},{immediate:!0}),M(C,()=>{v.value=null,A.value&&N()}),M(()=>l.isOpen,(e,t)=>{t&&!e&&A.value&&N()});function P(){let e=C.value;if(!e)return;let t=new Set(x.value);t.add(e),b.value=[...t].join(`,`)}function F(){c.track(`User opened evaluations wizard`,{workflow_id:C.value,source:`canvas_info_card`}),l.open(0)}return(e,a)=>j.value?(S(),o(`aside`,{key:0,class:T(e.$style.card),role:`complementary`,"data-test-id":`evaluations-canvas-info-card`},[U(`button`,{type:`button`,class:T(e.$style.dismiss),"aria-label":r(i).baseText(`evaluations.canvasInfoCard.dismiss`),"data-test-id":`evaluations-canvas-info-card-dismiss`,onClick:P},[I(r(Q),{icon:`x`,size:`small`})],10,no),U(`div`,{class:T(e.$style.marquee),"aria-hidden":`true`},[U(`ul`,{class:T(e.$style.marqueeTrack)},[(S(!0),o(k,null,w(t.value,(t,n)=>(S(),o(`li`,{key:`${t.key}-${n}`,class:T(e.$style.marqueeItem)},[I(to,{icon:t.icon,"icon-bg":t.tileBg,"icon-fg":t.tileFg,title:r(i).baseText(t.labelKey),description:r(i).baseText(t.descriptionKey),badge:t.isJudge?r(i).baseText(`evaluations.wizardSidepanel.metric.judgeTag`):void 0,readonly:``},null,8,[`icon`,`icon-bg`,`icon-fg`,`title`,`description`,`badge`])],2))),128))],2)],2),U(`div`,{class:T(e.$style.body)},[I(r(q),{size:`small`,bold:``,color:`text-dark`},{default:H(()=>[n(L(r(i).baseText(`evaluations.canvasInfoCard.title`)),1)]),_:1}),I(r(q),{size:`small`,color:`text-base`,class:T(e.$style.description)},{default:H(()=>[n(L(r(i).baseText(`evaluations.canvasInfoCard.description`)),1)]),_:1},8,[`class`])],2),U(`div`,{class:T(e.$style.footer)},[I(r(G),{variant:`solid`,size:`medium`,type:`button`,class:T(e.$style.setupButton),"data-test-id":`evaluations-canvas-info-card-setup`,onClick:F},{default:H(()=>[n(L(r(i).baseText(`evaluations.canvasInfoCard.setup`)),1)]),_:1},8,[`class`])],2)],2)):s(``,!0)}}),[[`__cssModules`,{$style:{card:`_card_fbnw4_1`,dismiss:`_dismiss_fbnw4_15`,marquee:`_marquee_fbnw4_39`,marqueeTrack:`_marqueeTrack_fbnw4_47`,marqueeScroll:`_marqueeScroll_fbnw4_1`,marqueeItem:`_marqueeItem_fbnw4_70`,body:`_body_fbnw4_74`,description:`_description_fbnw4_81`,footer:`_footer_fbnw4_86`,setupButton:`_setupButton_fbnw4_90`}}]]),io=$(p({name:`NodeView`,__name:`NodeView`,setup(e){let t=f(async()=>await Kn(()=>import(`./NodeCreation-BCtiN2Ss.js`),__vite__mapDeps([0,1,2,3,4,5,6]))),i=f(async()=>await Kn(()=>import(`./NodeDetailsView-BaVQeJXW.js`),__vite__mapDeps([7,1,2,3,4,5,8,9,10,11,12,13,14,15,16,17]))),c=f(async()=>await Kn(()=>import(`./SetupWorkflowCredentialsButton-BvTti5_D.js`),__vite__mapDeps([18,1,2,3,4,5,19,20]))),p=te(),m=O(),h=ee(),{canOpenNDV:g}=qr(),y=X(),x=ye(),C=Le(),w=Je(),E=ct(),D=Un(),A=Rr({router:m,ownsAutoSave:!0,onSaved:e=>{On.emit(`saved:workflow`,{isFirstSave:e})}}),j=ge(),N=jr({onPaste:ei}),P=Tn(),F=Nt(),re=ft(),z=$t(),B=Z(),V=a(()=>ar(B.value.documentId)),ie=Er(),ae=Gr(),oe=Bt(),W=Te(),ce=tn(),le=kr(),ue=fr(),G=Xe(),fe=Kr(),pe=bn(),he=nn(),_e=Ve(),ve=cr(),be=er(),Se=De(),Ce=Ni(),{isFeatureEnabled:we}=Yr(),Ee=Fr(),Oe=Jr(),ke=Tr(),Ae=Cr(),je=mn(),K=at(),Ne=un(),Pe=Sr(),Ie=Ke();ui(K);let{addBeforeUnloadEventBindings:q,removeBeforeUnloadEventBindings:Be}=yr({route:h}),{registerCustomAction:He,unregisterCustomAction:Ue}=nr(),{runWorkflow:We,runEntireWorkflow:Ge,stopCurrentExecution:qe,stopWaitingForWebhook:$e}=Hn({router:m}),{updateNodePosition:et,updateNodesPosition:tt,tidyUp:it,revertUpdateNodePosition:st,renameNode:ut,revertRenameNode:pt,revertReplaceNodeParameters:mt,setNodeActive:gt,setNodeSelected:_t,toggleNodesDisabled:vt,revertToggleNodeDisabled:yt,toggleNodesPinned:bt,setNodeParameters:xt,deleteNode:St,deleteNodes:Ct,copyNodes:wt,cutNodes:Tt,duplicateNodes:Et,revertDeleteNode:Dt,revertAddNode:At,createConnection:jt,revertCreateConnection:Ft,deleteConnection:It,revertDeleteConnection:Lt,revalidateNodeInputConnections:Rt,revalidateNodeOutputConnections:Ut,setNodeActiveByName:Wt,clearNodeActive:Gt,tryToOpenSubworkflowInNewTab:Kt,importWorkflowData:qt,fetchWorkflowDataFromUrl:Jt,resetWorkspace:Zt,initializeWorkspace:Qt,lastClickPosition:en,startChat:an,addNodesAndConnections:on,fitView:sn}=Ht(),{extractWorkflow:cn}=Vr();An({ctrl_alt_o:()=>F.openModal(gn)});let dn=ne(`canvas`),fn=_(!0),pn=_(null),_n=_([]),Y=vn(),yn=a(()=>{let e=h.params.nodeId;return Array.isArray(e)?e[0]:e}),Sn=a(()=>h.query.new===`true`),wn=a(()=>h.query.hideControls===`true`),En=a(()=>h.query.canvasBackground!==`dots`),jn=a(()=>h.name===ot.DEMO),Nn=a(()=>oe.isCanvasOnly&&!jn.value),Pn=a(()=>!!h?.meta?.readOnlyCanvas),Q=a(()=>ae.preferences.branchReadOnly),{readOnly:Fn,expandGroups:In,executionButtonType:Ln}=Ot(),zn=a(()=>jn.value?`secondary`:Ln.value),Bn=a(()=>jn.value||Q.value||K.shouldBeReadOnly||!(qi.value.update??Ji.value.workflow.update)||(B?.value?.isArchived??!1)||Ee.streaming&&!Ee.isHelpStreaming||Fn.value),Vn=a(()=>jn.value?`all`:In.value),Wn=a(()=>Q.value?!1:jn.value?h.query.canExecute===`true`:B?.value?.isArchived||Ee.streaming||Fn?.value?!1:!!(qi.value.execute??Ji.value.workflow.execute)),Gn=a(()=>K.isCurrentUserWriter&&!K.isCurrentTabWriter),qn=a(()=>tr.value.length===0),Yn=a(()=>!be.value.activeNode&&F.activeModals.length===0),Xn=a(()=>Ae.isOpen);function Zn(){h.query.action===`addEvaluationTrigger`?Ta():h.query.action===`addEvaluationNode`?W.openNodeCreatorForActions(Y.value,wr,ze.ADD_EVALUATION_NODE_BUTTON):h.query.action===`executeEvaluation`?Ca.value&&Ge(`node`,Ca.value.name):h.query.action===`openEvaluationsWizard`&&we.value&&(x.track(`User opened evaluations wizard`,{workflow_id:Y.value,source:`empty_state`}),Ce.open(0)),Ce.pendingSeedExecution&&we.value&&(Se.setSelectedTab(`evaluations`),Se.openFocusPanel()),On.off(`saved:workflow`,Ia),h.name===ot.EXECUTION_DEBUG&&On.on(`saved:workflow`,Ia),l(()=>{Qn()})}function Qn(){j.updateNodesInputIssues(),j.updateNodesCredentialsIssues(),j.updateNodesParameterIssues()}M(()=>{let e=B?.value,t=(e?.workflowTriggerNodes??[]).filter(e=>!e.disabled).map(e=>`${e.type}:${JSON.stringify(e.parameters??{})}`).join(`|`);return`${e?.settings?.credentialResolverId??``}#${t}`},()=>{fn.value||j.updateNodesCredentialsIssues()});async function $n(e){Zt(),Ee.streaming?D.setDocumentTitle(e.name,`AI_BUILDING`):D.setDocumentTitle(e.name,`IDLE`),await Qt(e),C.run(`workflow.open`,{workflowId:e.id,workflowName:e.name}),sn()}let tr=a(()=>B?.value?.allNodes.filter(e=>P.isTriggerNode(e.type))??[]),rr=a(()=>tr.value.length>0),ir=a(()=>tr.value.filter(e=>e.disabled).length===tr.value.length),or=a(()=>tr.value.filter(e=>!e.disabled&&!Ar(e))),sr=a(()=>or.value.length>1&&V.value.selectedTriggerNodeName!==void 0);function lr(e,t){it(e,t)}function ur(e){cn(e)}function dr(e){tt(e,{trackHistory:!0})}function mr(e,t){et(e,t,{trackHistory:!0})}function hr({nodeName:e,position:t}){st(e,{x:t[0],y:t[1]})}function vr(e){let t=_n.value.findIndex(t=>t.id===e);t>=0?_n.value.splice(t,1):St(e,{trackHistory:!0})}function br(e,t=[]){Ct(e,{deleteWholeGroupIds:t})}function xr({node:e}){Dt(e)}function $({group:e}){B.value.deleteGroup(e.id)}function Dr({group:e}){B.value.restoreGroup(e)}function Or({group:e}){B.value.restoreGroup(e)}function Mr(e){Na()&&vt([e])}function Nr({nodeName:e}){yt(e)}function Pr(e){Na()&&vt(e)}function zr(e,t){en.value=[t.x,t.y],Ui()}async function Br(e,t){jn.value&&!g.value||(t?.metaKey||t?.ctrlKey)&&await Kt(e)||gt(e,`canvas_default_view`)}function Hr(e){Kt(e)}function Wr(){Gt()}function Xr(e){Ui(),_t(e)}let Zr=!1;function Qr(e){return!Zr&&Y.value===e}async function $r(e){let t=Y.value;await Oe.gate(`copy`,async()=>{Qr(t)&&(await wt(e),w.showMessage({title:y.baseText(`generic.copiedToClipboard`),type:`success`}))})}async function ei(e){if(Bn.value||hn(h)!==ln.WORKFLOW||!Yn.value||!Na())return;let t=null;if(e.match(dt)){if(await E.confirm(y.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.message`,{interpolate:{plainTextData:e}}),y.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.headline`),{type:`warning`,confirmButtonText:y.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.confirmButtonText`),cancelButtonText:y.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.cancelButtonText`)})!==`confirm`)return;t=await Jt(e)}else t=Ze(e,{fallbackValue:null});if(!t)return;let n=Y.value;await Oe.gate(`paste`,async()=>{if(!Qr(n))return;let e=(await qt(t,`paste`,{importTags:!1,viewport:za.value})).nodes?.map(e=>e.id)??[];dn.value?.ensureNodesAreVisible(e)})}async function ti(e,t=[]){Bn.value?await wt(e):await Tt(e,t)}async function ni(e){if(!Na())return;let t=await Et(e,{viewport:za.value});dn.value?.ensureNodesAreVisible(t)}function ri(e,t){Na()&&bt(e,t)}function ii(e,t){dn.value?.executeContextMenuAction(e,t)}function ai(){On.on(`saved:workflow`,fe.showNpsSurveyIfPossible)}function oi(){On.off(`saved:workflow`,fe.showNpsSurveyIfPossible),On.off(`saved:workflow`,Ia)}async function si(){await m.push({name:ot.NEW_WORKFLOW})}async function ci(){await A.saveCurrentWorkflow({})}function li(e){be.value.activeNode?.name&&ut(be.value.activeNode.name,e)}async function fi(e){let t=B?.value?.getNodeById(e)?.name??``,n=document.activeElement;if(!(n&&Re(n))&&!(!Yn.value||document.querySelector(`.rename-prompt`)))try{let e=E.prompt(y.baseText(`nodeView.prompt.newName`)+`:`,y.baseText(`nodeView.prompt.renameNode`)+`: ${t}`,{customClass:`rename-prompt`,confirmButtonText:y.baseText(`nodeView.prompt.rename`),cancelButtonText:y.baseText(`nodeView.prompt.cancel`),inputErrorMessage:y.baseText(`nodeView.prompt.invalidName`),inputValue:t,inputValidator:e=>e.trim()?!0:y.baseText(`nodeView.prompt.invalidName`)});await l();let n=document.querySelector(`.rename-prompt .el-input__inner`);n?.focus(),n?.select();let r=e=>{e.key===` `&&e.stopPropagation()};n?.addEventListener(`keydown`,r);let i=await e;n?.removeEventListener(`keydown`,r),i.action===`confirm`&&await ut(t,i.value,{trackHistory:!0})}catch{}}async function pi({currentName:e,newName:t}){await pt(e,t)}async function mi({nodeId:e,currentProperties:t,newProperties:n}){await mt(e,t,n)}function hi(e,t){xt(e,t)}function gi(e){Rt(e)}function _i(e){Ut(e)}function vi(e,t){W.openNodeCreatorForConnectingNode({workflowId:Y.value,connection:{source:e,sourceHandle:t},eventSource:ze.PLUS_ENDPOINT})}async function yi(){let e;if(Y.value&&!Sn.value)e={workflowId:Y.value};else{let t=(typeof h.query?.projectId==`string`?h.query?.projectId:void 0)??pe.personalProject?.id;if(t===void 0)throw Error(`Could not find projectId in the query nor could I find the personal project in the project store`);e={projectId:t}}await le.fetchUsableCredentials(e)}function bi(e){jt(e,{trackHistory:!0})}function xi({connection:e}){Ft(e)}function Si(e,t,n){(n?.target).classList?.contains(`clickable`)||(F.lastInteractedWithNodeId=e.nodeId,F.lastInteractedWithNodeHandle=e.handleId,F.lastCancelledConnectionPosition=[t.x,t.y],setTimeout(()=>{e.nodeId&&W.openNodeCreatorForConnectingNode({workflowId:Y.value,connection:{source:e.nodeId,sourceHandle:e.handleId},eventSource:ze.NODE_CONNECTION_DROP})}))}function Ci(e){It(e,{trackHistory:!0})}function wi({connection:e}){Lt(e)}async function Ti(e){let t=e.data,n=typeof e.trackEvents==`boolean`?e.trackEvents:void 0,r=typeof e.setStateDirty==`boolean`?e.setStateDirty:void 0;if(await qt(t,`file`,{viewport:za.value,regenerateIds:e.regenerateIds===!0||e.regenerateIds===void 0,trackEvents:n,setStateDirty:r}),await l(),sn(),Va(t.nodes?.map(e=>e.id)??[]),e.tidyUp){let t=e.nodesIdsToTidyUp;setTimeout(async()=>{On.emit(`tidyUp`,{source:`import-workflow-data`,nodeIdsFilter:t,trackEvents:n}),await l(),sn()},0)}}async function Ei(e){let t=await Jt(e.url);if(!t)return;let n=Y.value;await Oe.gate(`import_url`,async()=>{Qr(n)&&(await qt(t,`url`,{viewport:za.value}),dn.value?.ensureNodesAreVisible(t.nodes?.map(e=>e.id)??[]))})}function Di(){Rn.on(`importWorkflowData`,Ti),Rn.on(`importWorkflowUrl`,Ei),Rn.on(`openChat`,xa)}function Oi(){Rn.off(`importWorkflowData`,Ti),Rn.off(`importWorkflowUrl`,Ei),Rn.off(`openChat`,xa)}let ki=_(void 0),Ai=_(!1);function ji(){ki.value=void 0}function Mi(){if(!(W.isCreateNodeActive&&rn(W.openSource))||!F.lastInteractedWithNodeId)return;let{type:e,mode:t}=Yt(F.lastInteractedWithNodeHandle);if(e!==Vt.Main||t!==Lr.Output)return;let n=F.lastInteractedWithNodeId,r=B.value.getGroupForNode(n);if(!r)return;let i=me(r,B.value.allNodes);return i?.id===n?i.id:void 0}async function Pi({nodes:e,connections:t},n=!1,r){if(!Na())return;let i=ki.value??Mi();i!==void 0&&(F.resetLastInteractedWith(),e=e.map(e=>({...e,openDetail:!1})));let{addedNodes:a}=await on(e,t,{dragAndDrop:n,position:r,viewport:za.value,telemetry:!0,replaceNodeId:i});if(a.length>0){let e=a[a.length-1].id;Va([e])}}async function Fi(e=!1){if(!Ie.value||!Na()||Ai.value)return;Ai.value=!0;let t=W.openSource;if(B.value.allNodes.length===0&&Ra.value.width>0&&Ra.value.height>0){let{xMin:e,xMax:t,yMin:n,yMax:r}=za.value;en.value=[(e+t-_r[0])/2,(n+r-_r[1])/2]}let n=re.currentBulkAction===null;n&&re.startRecordingUndo();try{let n=G.selectedGroupId?B.value.getGroupById(G.selectedGroupId):void 0,r=n?me(n,B.value.allNodes):void 0;!e&&r&&(F.resetLastInteractedWith(),F.lastInteractedWithNodeId=r.id);let{addedNodes:i}=await on([{type:kn,name:`No Operation, do nothing`,parameters:{emptyGroupAnchor:!0},placeholder:!0,isAutoAdd:!(e||r!==void 0),openDetail:!1}],[],{viewport:za.value,trackBulk:!1}),a=i[0];if(!a)return;let o=B.value.getNextDefaultName(y.baseText(`canvas.nodeGroup.defaultTitle`)),s=B.value.createGroup([a.id],o);re.pushCommandToUndo(new ht(s,Date.now())),ce.trackGrouped(s,`node-creator`,t),ce.trackInitialEmptyGroupConnection(s),Va([a.id])}finally{n&&re.stopRecordingUndo(),Ai.value=!1}}async function Ii({node:e}){await At(e.name)}function Li(e){let t=B?.value?.getNodeByName(e);t&&(Wt(e,`other`),Va([t.id]))}function Ri(e,t,n=0){W.openSelectiveNodeCreator({workflowId:Y.value,node:e,connectionType:t,connectionIndex:n})}function zi(e){W.setNodeCreatorState({...e,workflowId:Y.value}),e.createNodeActive||(ki.value=void 0,e.hasAddedNodes||F.resetLastInteractedWith())}function Bi(e){zi({createNodeActive:!0,source:e})}function Vi(e){W.openNodeCreatorForTriggerNodes(Y.value,e)}function Hi(){Se.toggleFocusPanel(),x.track(`User ${Se.focusPanelActive?`opened`:`closed`} focus panel`,{source:`canvasKeyboardShortcut`,parameters:Se.focusedNodeParametersInTelemetryFormat,parameterCount:Se.focusedNodeParametersInTelemetryFormat.length})}function Ui(){W.isCreateNodeActive&&=!1}function Wi(){Pi({nodes:[{type:pr}],connections:[]})}function Gi(e){let{type:t,mode:n}=Yt(e.sourceHandle);t===Vt.AiTool&&n===Lr.Output?W.openNodeCreatorForConnectingNode({workflowId:Y.value,connection:e,eventSource:ze.NODE_CONNECTION_ACTION,nodeCreatorView:Xt}):W.openNodeCreatorForConnectingNode({workflowId:Y.value,connection:e,eventSource:ze.NODE_CONNECTION_ACTION})}function Ki(e){let t=B?.value?.getNodeById(e),n=B?.value?.getExpressionHandler();if(!t||!n)return;let r=P.getNodeType(t.type);if(r)if(ki.value=e,W.openingContext=`replacement`,Ye(r))W.openNodeCreatorForTriggerNodes(Y.value,ze.REPLACE_NODE_ACTION);else{let e=Jn({expression:n},t,r).map(e=>typeof e==`string`?e:e.type),i=lt({expression:n},t,r).map(e=>typeof e==`string`?e:e.type);e[0]&&i[0]&&e[0]!==i[0]?W.openNodeCreatorForRegularNodes(Y.value,ze.REPLACE_NODE_ACTION):W.openSelectiveNodeCreator({workflowId:Y.value,connectionType:e[0]??i[0],node:t.name})}}let qi=a(()=>Y.value?Ur(ie.getWorkflowById(Y.value)?.scopes).workflow:{}),Ji=a(()=>Ur((h.query?.projectId?pe.myProjects.find(e=>e.id===h.query.projectId):pe.currentProject??pe.personalProject)?.scopes)),Yi=_(!1),Xi=a(()=>V.value.isWorkflowRunning),Zi=a(()=>V.value.executionWaitingForWebhook),Qi=a(()=>ga.value&&_a.value&&!va.value?!0:!rr.value||ir.value),$i=a(()=>!_a.value||va.value),ea=a(()=>Xi.value&&!Zi.value),ta=a(()=>Xi.value&&Zi.value);async function na(e){let t=B?.value?.getNodeById(e);t&&(Ir(t)&&P.isToolNode(t.type)?F.openModalWithData({name:xn,data:{nodeName:t.name}}):(oa(t),ke.clearAgentRequests(Y.value,t.id),We({destinationNode:{nodeName:t.name,mode:`inclusive`},source:`Node.executeNode`})))}async function ra(e,t){let n=B?.value?.getNodeById(e);if(!n)return;let r=P.getNodeType(n.type,n.typeVersion);if(!r?.webhooks?.length)return;let i=r.webhooks[0],a=await Pe.getWebhookUrl(i,n,t);a&&(N.copy(a),w.showMessage({title:y.baseText(`nodeWebhooks.showMessage.title`),type:`success`}))}async function ia(e){let t=B?.value?.getNodeById(e);if(Mn.includes(t?.type??``)){w.showMessage({title:y.baseText(`nodeWebhooks.showMessage.testWebhookUrl`),type:`warning`});return}ra(e,`test`)}async function aa(e){if(!(B?.value?.active??!1)){w.showMessage({title:y.baseText(`nodeWebhooks.showMessage.not.active`),type:`warning`});return}ra(e,`production`)}function oa(e){let t={node_type:e.type,workflow_id:Y.value,source:`canvas`,push_ref:be.value.pushRef};x.track(`User clicked execute node button`,t),C.run(`nodeView.onRunNode`,t)}function sa(e){if(!e.finished&&e.data?.resultData?.error){let t=!1;if(e.data.resultData.runData){let n=e.data.resultData.runData;errorCheck:for(let e of Object.keys(n))for(let r of n[e])if(r.error){t=!0;break errorCheck}}!t&&(e.data.resultData.error.stack??e.data.resultData.error.message)&&(console.error(`Execution ${e.id} error:`),console.error(e.data.resultData.error.stack),w.showMessage({title:y.baseText(`nodeView.showError.workflowError`),message:e.data.resultData.error.message,type:`error`,duration:0}))}}function ca(e){e.waitTill&&w.showMessage({title:y.baseText(`nodeView.thisExecutionHasntFinishedYet`),message:u(Xa),type:`warning`,duration:0})}function la(){On.on(`open:execution`,sa),On.on(`open:execution`,ca)}function ua(){On.off(`open:execution`,sa),On.off(`open:execution`,ca)}async function da(){Yi.value=!0,await qe(),Yi.value=!1}async function fa(){await $e()}function pa(){Rn.emit(`runWorkflowButton:mouseenter`)}function ma(){Rn.emit(`runWorkflowButton:mouseleave`)}let ha=a(()=>B?.value?.allNodes.find(e=>e.type===de)),ga=a(()=>!Zi.value&&!!B?.value?.allNodes.find(e=>[`@n8n/n8n-nodes-langchain.manualChatTrigger`,`@n8n/n8n-nodes-langchain.chatTrigger`].includes(e.type)&&e.disabled!==!0)),_a=a(()=>tr.value.every(e=>e.disabled||e.type===`@n8n/n8n-nodes-langchain.chatTrigger`)),va=a(()=>ha.value?B?.value?.pinnedDataByNodeName?.[ha.value.name]:null),ya=a(()=>Ne.isFloatingChatEnabled&&ha.value?.parameters?.availableInChat===!0),ba=a(()=>Ne.isOpen);M(ya,e=>{!e&&ba.value&&Ne.close()});function xa(){ya.value?Ne.open():an(`main`)}function Sa(){ya.value?ba.value?Ne.close():Ne.open():Xn.value?Ae.toggleOpen(!1):an(`main`)}let Ca=a(()=>B?.value?.allNodes.find(e=>e.type===Cn)),wa=_(!1);async function Ta(){if(!wa.value){wa.value=!0;try{if(dn.value||await new Promise(e=>{let t=M(dn,n=>{n&&(t(),e())})}),!Na())return;if(Ca.value){Wt(Ca.value.name,`other`),dn.value?.ensureNodesAreVisible([Ca.value.id]);return}let{addedNodes:e}=await on([{type:Cn,openDetail:!0}],[],{viewport:za.value,telemetry:!0});if(e.length>0){let t=e[e.length-1];await l(),dn.value?.ensureNodesAreVisible([t.id])}}finally{try{await m.replace({query:{...h.query,action:void 0}})}finally{wa.value=!1}}}}function Ea(){J.on(`nodeMove`,hr),J.on(`revertAddNode`,Ii),J.on(`revertRemoveNode`,xr),J.on(`revertAddConnection`,xi),J.on(`revertRemoveConnection`,wi),J.on(`revertRenameNode`,pi),J.on(`revertReplaceNodeParameters`,mi),J.on(`enableNodeToggle`,Nr),J.on(`revertAddNodeGroup`,$),J.on(`revertRemoveNodeGroup`,Dr),J.on(`revertUpdateNodeGroup`,Or)}function Da(){J.off(`nodeMove`,hr),J.off(`revertAddNode`,Ii),J.off(`revertRemoveNode`,xr),J.off(`revertAddConnection`,xi),J.off(`revertRemoveConnection`,wi),J.off(`revertRenameNode`,pi),J.off(`revertReplaceNodeParameters`,mi),J.off(`enableNodeToggle`,Nr),J.off(`revertAddNodeGroup`,$),J.off(`revertRemoveNodeGroup`,Dr),J.off(`revertUpdateNodeGroup`,Or)}async function Oa(){try{if(await Promise.all([ue.fetchAllVariables(),ve.fetchAll(),yi(),pe.getAvailableProjects()]),Y.value&&!F.stateIsDirty){let e=await ie.fetchWorkflow(Y.value);e&&await $n(e)}}catch(e){console.error(e)}}function ka(){Me.on(`pull`,Oa)}function Aa(){Me.off(`pull`,Oa)}function ja(){On.on(`create:sticky`,Wi)}function Ma(){On.off(`create:sticky`,Wi)}function Na(){if(!F.nodeViewInitialized)return!0;if(pn.value?.visible||!(qi.value.update??Ji.value.workflow.update)||K.shouldBeReadOnly)return!1;if(Pn.value||Q.value){let e=Pn.value?`executions`:`workflows`;return pn.value=w.showMessage({title:y.baseText(Q.value?`readOnlyEnv.showMessage.${e}.title`:`readOnly.showMessage.executions.title`),message:y.baseText(Q.value?`readOnlyEnv.showMessage.${e}.message`:`readOnly.showMessage.executions.message`),type:`info`}),!1}return!0}function Pa(){K.requestWriteAccessForce()}function Fa(){Q.value&&[ot.NEW_WORKFLOW,ot.TEMPLATE_IMPORT].find(e=>e===h.name)&&l(async()=>{Zt(),F.markStateClean(),await m.replace({name:ot.HOMEPAGE})})}async function Ia(){h.name===ot.EXECUTION_DEBUG&&await m.replace({name:ot.WORKFLOW,params:{workflowId:Y.value}})}let La=_({x:0,y:0,zoom:1}),Ra=_({width:0,height:0}),za=a(()=>Qe(La.value,Ra.value));function Ba(e,t){La.value=e,Ra.value=t,F.nodeViewOffsetPosition=[e.x,e.y]}function Va(e){setTimeout(()=>On.emit(`nodes:select`,{ids:e}))}function Ha(e){en.value=[e.x,e.y],Xr()}function Ua(e){en.value=[e.x,e.y]}async function Wa(e,t){if(!t.dataTransfer)return;let n=Ze(t.dataTransfer.getData(Fe));n&&(await Pi(n,!0,[e.x,e.y]),zi({createNodeActive:!1,hasAddedNodes:!0}))}function Ja(){He({key:`openNodeDetail`,action:({node:e})=>{Wt(e,`other`)}}),He({key:`openSelectiveNodeCreator`,action:({creatorview:e,connectiontype:t,node:n})=>{W.openSelectiveNodeCreator({workflowId:Y.value,node:n,connectionType:t,creatorView:e})}}),He({key:`showNodeCreator`,action:()=>{be.value.unsetActiveNodeName(),l(()=>{Vi(ze.NODE_SHORTCUT)})}})}function Ya(){Ue(`openNodeDetail`),Ue(`openSelectiveNodeCreator`),Ue(`showNodeCreator`)}function Qa(){F.addFirstStepOnLoad&&(Vi(F.addFirstStepOnLoadSource??ze.TRIGGER_PLACEHOLDER_BUTTON),F.addFirstStepOnLoad=!1,F.addFirstStepOnLoadSource=void 0)}function $a(e){let t=B?.value?.findNodeByPartialId(e);t?gt(t.id,`other`):(w.showToast({title:y.baseText(`nodeView.showMessage.ndvUrl.missingNodes.title`),message:y.baseText(`nodeView.showMessage.ndvUrl.missingNodes.content`),type:`warning`}),m.replace({name:h.name,params:{workflowId:Y.value},query:h.query}))}return M([()=>h.name,()=>h.params.workflowId],()=>{Zn()}),M(a(()=>B?.value?.homeProject?.id??pe.currentProject?.id??pe.personalProject?.id),e=>{e&&he.fetchForProject(e)},{immediate:!0}),M(()=>fn.value||Bn.value||(B?.value?.allNodes??[]).length!==0,e=>{if(e){_n.value=[];return}let t={id:Dn.AddNodes,name:Dn.AddNodes,type:Dn.AddNodes,typeVersion:1,position:[0,0],parameters:{}},n={id:Dn.ChoicePrompt,name:Dn.ChoicePrompt,type:Dn.ChoicePrompt,typeVersion:1,position:[0,0],parameters:{},draggable:!1};_n.value=Ee.isAIBuilderEnabled?[n]:[t]}),M(()=>h.params.nodeId,async e=>{typeof e!=`string`||e===``?be.value.unsetActiveNodeName():$a(e)}),M(()=>be.value.activeNode,async e=>{if(![ot.WORKFLOW].includes(String(h.name)))return;let t=e?.id?z.getPartialIdForNode(e?.id):``;t!==h.params.nodeId&&await m.replace({name:h.name,params:{workflowId:Y.value,nodeId:t},query:h.query})}),M(()=>F.dirtyStateSetCount,e=>{if(e>0){if(jn.value)return;K.requestWriteAccess(),Ee.streaming||A.autoSaveWorkflow()}}),M(()=>Ee.streaming,(e,t)=>{t&&!e&&F.stateIsDirty&&!K.shouldBeReadOnly&&A.autoSaveWorkflow()}),M([or,a(()=>{if(Xi.value)return V.value.activeExecution?.triggerNode?V.value.activeExecution.triggerNode:Object.keys(V.value.activeExecution?.data?.resultData.runData??{}).find(e=>B?.value?.workflowTriggerNodes.some(t=>t.name===e))})],([e,t],[n])=>{if(t!==void 0){V.value.setSelectedTriggerNodeName(t);return}if(V.value.selectedTriggerNodeName===void 0||e.every(e=>e.name!==V.value.selectedTriggerNodeName)){V.value.setSelectedTriggerNodeName(nt(or.value,P.getNodeType)?.name);return}let r=e?.find(e=>n?.every(t=>t.name!==e.name));r!==void 0&&V.value.setSelectedTriggerNodeName(r.name)},{immediate:!0}),R(async(e,t,n)=>{if(Se.focusPanelActive&&Se.closeFocusPanel(),Q.value){n();return}let r=hn(e),i=[ot.WORKFLOW,ot.NEW_WORKFLOW].includes(t.name)&&[ot.WORKFLOW,ot.NEW_WORKFLOW].includes(e.name)&&t.params.workflowId!==e.params.workflowId;if((r===ln.EXECUTIONS||r===ln.EVALUATION||t.name===ot.TEMPLATE_IMPORT||r===ln.WORKFLOW&&t.name===ot.EXECUTION_DEBUG)&&!i){n();return}await A.promptSaveUnsavedWorkflowChanges(n,{async confirm(){if(t.name===ot.NEW_WORKFLOW){let t=Y.value;return await m.replace({name:ot.WORKFLOW,params:{workflowId:t}}),await m.push(e),!1}return z.setWorkflowId(``),!0}})}),d(async()=>{K.setRefreshCanvasCallback(async e=>{await Qt(e)});try{Zn(),h.query.settings&&(F.openModal(Mt),m.replace({query:{settings:void 0}}))}finally{fn.value=!1,C.run(`nodeView.mount`).catch(()=>{}),setTimeout(()=>{yn.value&&$a(yn.value)},500)}_e.showPersonalizationSurvey(),Fa(),ka(),ai(),q(),Di(),la(),ja(),Ja(),Ea(),Qa()}),b(()=>{Zr=!0,F.closeModal(Mt),w.clearAllStickyNotifications(),B?.value?.setViewport(La.value),Aa(),oi(),Be(),Oi(),ua(),Ma(),Ya(),Da(),On.off(`saved:workflow`,Ia)}),(e,a)=>(S(),o(`div`,{class:T(r(p).wrapper)},[fn.value?s(``,!0):(S(),v(di,{key:0,id:r(B)?.workflowId,ref:`canvas`,"fallback-nodes":_n.value,"show-fallback-nodes":qn.value,"event-bus":r(On),"read-only":Bn.value,"group-expansion-mode":Vn.value,"can-execute":Wn.value,executing:Xi.value,"key-bindings":Yn.value,"suppress-interaction":r(je).isMapperOpen,"striped-background":En.value,"hide-controls":wn.value,"initial-viewport":r(B)?.viewport,"onUpdate:nodes:position":dr,"onUpdate:node:position":mr,"onUpdate:node:activated":Br,"onUpdate:node:deactivated":Wr,"onUpdate:node:selected":Xr,"onUpdate:node:enabled":Mr,"onUpdate:node:name":fi,"onUpdate:node:parameters":hi,"onUpdate:node:inputs":gi,"onUpdate:node:outputs":_i,"onUpdate:logsOpen":a[1]||=e=>r(Ae).toggleOpen(e),"onUpdate:logs:inputOpen":r(Ae).toggleInputOpen,"onUpdate:logs:outputOpen":r(Ae).toggleOutputOpen,"onUpdate:hasRangeSelection":r(G).setHasRangeSelection,"onUpdate:selectedGroup":r(G).setSelectedGroupId,"onOpen:subWorkflow":Hr,"onClick:node":zr,"onClick:node:add":vi,"onRun:node":na,"onCopy:production:url":aa,"onCopy:test:url":ia,"onDelete:node":vr,"onCreate:connection":bi,"onCreate:connection:cancelled":Si,"onDelete:connection":Ci,"onClick:connection:add":Gi,"onClick:pane":Ha,"onCreate:node":Bi,"onCreate:sticky":Wi,"onDelete:nodes":br,"onUpdate:nodes:enabled":Pr,"onUpdate:nodes:pin":ri,"onDuplicate:nodes":ni,"onCopy:nodes":$r,"onCut:nodes":ti,"onReplace:node":Ki,"onRun:workflow":a[2]||=e=>r(Ge)(`main`),"onSave:workflow":ci,"onCreate:workflow":si,"onViewport:change":Ba,"onSelection:end":Ua,onDragAndDrop:Wa,onTidyUp:lr,"onToggle:focusPanel":Hi,onExtractWorkflow:ur,onStartChat:Sa},{default:H(()=>[U(`div`,{class:T(r(p).canvasTopLeftContainer)},[U(`div`,{class:T(r(p).canvasTopLeft)},[Nn.value?(S(),v(r(gr),{key:0,size:`small`,collapsed:!1,class:T(r(p).canvasOnlyLogo),"aria-hidden":`true`},null,8,[`class`])):s(``,!0),Bn.value?s(``,!0):(S(),v(se,{key:1},{default:H(()=>[I(r(c),{collapsible:Nn.value,class:T(r(p).setupCredentialsButton)},null,8,[`collapsible`,`class`])]),_:1}))],2)],2),Bn.value?s(``,!0):(S(),v(ro,{key:0,class:T(r(p).evaluationsCanvasInfoCardWrapper)},null,8,[`class`])),!Bn.value||Wn.value?(S(),o(`div`,{key:1,class:T(r(p).executionButtons)},[$i.value?(S(),v(rt,{key:0,"waiting-for-webhook":Zi.value,disabled:Qi.value,executing:Xi.value,"trigger-nodes":tr.value,"get-node-type":r(P).getNodeType,"selected-trigger-node-name":V.value.selectedTriggerNodeName,type:zn.value,onMouseenter:pa,onMouseleave:ma,onExecute:a[0]||=e=>r(Ge)(`main`),onSelectTriggerNode:V.value.setSelectedTriggerNodeName},null,8,[`waiting-for-webhook`,`disabled`,`executing`,`trigger-nodes`,`get-node-type`,`selected-trigger-node-name`,`type`,`onSelectTriggerNode`])):s(``,!0),ga.value?(S(),o(k,{key:1},[(ya.value?ba.value:Xn.value)?(S(),v(Za,{key:0,variant:`subtle`,label:r(y).baseText(`chat.hide`),class:T(r(p).chatButton),onClick:Sa},null,8,[`label`,`class`])):(S(),v(zt,{key:1,label:r(y).baseText(`chat.open`),shortcut:{keys:[`c`]}},{default:H(()=>[I(Za,{variant:$i.value?`subtle`:`solid`,label:r(y).baseText(`chat.open`),class:T(r(p).chatButton),onClick:xa},null,8,[`variant`,`label`,`class`])]),_:1},8,[`label`]))],64)):s(``,!0),ea.value?(S(),v(Ka,{key:2,stopping:Yi.value,size:sr.value?`xlarge`:`large`,onClick:da},null,8,[`stopping`,`size`])):s(``,!0),ta.value?(S(),v(qa,{key:3,size:sr.value?`xlarge`:`large`,onClick:fa},null,8,[`size`])):s(``,!0)],2)):s(``,!0),Q.value?(S(),v(r(Pt),{key:2,theme:`warning`,icon:`lock`,class:T(r(p).readOnlyEnvironmentNotification)},{default:H(()=>[n(L(r(y).baseText(`readOnlyEnv.cantEditOrRun`)),1)]),_:1},8,[`class`])):s(``,!0),r(K).currentWriter&&!r(K).isCurrentTabWriter?(S(),v(r(kt),{key:3,class:T(r(p).canvasCenterPill),"is-another-tab":Gn.value,"first-name":r(K).currentWriter.user.firstName,"last-name":r(K).currentWriter.user.lastName,onButtonClick:Pa},null,8,[`class`,`is-another-tab`,`first-name`,`last-name`])):s(``,!0),r(Ee).streaming&&!r(Ee).isHelpStreaming?(S(),v(r(xe),{key:4,class:T(r(p).canvasCenterPill),"show-stop":``,onStop:r(Ee).abortStreaming},null,8,[`class`,`onStop`])):s(``,!0),(S(),v(se,null,{default:H(()=>[Bn.value?s(``,!0):(S(),v(r(t),{key:0,"create-node-active":r(W).isCreateNodeActive,"node-view-scale":La.value.zoom,"focus-panel-active":r(Se).focusPanelActive,onToggleNodeCreator:zi,onAddNodes:Pi,onAddEmptyGroup:Fi,onClose:ji},null,8,[`create-node-active`,`node-view-scale`,`focus-panel-active`]))]),_:1})),(S(),v(se,null,{default:H(()=>[I(r(i),{"read-only":Bn.value,"is-production-execution-preview":r(j).isProductionExecutionPreview.value,onRenameNode:li,onStopExecution:da,onSwitchSelectedNode:Li,onOpenConnectionNodeCreator:Ri,onReplaceNode:Ki},null,8,[`read-only`,`is-production-execution-preview`])]),_:1}))]),_:1},8,[`id`,`fallback-nodes`,`show-fallback-nodes`,`event-bus`,`read-only`,`group-expansion-mode`,`can-execute`,`executing`,`key-bindings`,`suppress-interaction`,`striped-background`,`hide-controls`,`initial-viewport`,`onUpdate:logs:inputOpen`,`onUpdate:logs:outputOpen`,`onUpdate:hasRangeSelection`,`onUpdate:selectedGroup`])),!fn.value&&(!r(je).isNdvInFocusPanelEnabled||!Bn.value)?(S(),v(Ga,{key:1,"is-canvas-read-only":Bn.value,onContextMenuAction:ii},null,8,[`is-canvas-read-only`])):s(``,!0)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_1qr7i_113`,executionButtons:`_executionButtons_1qr7i_118`,chatButton:`_chatButton_1qr7i_136`,canvasTopLeftContainer:`_canvasTopLeftContainer_1qr7i_140`,canvasTopLeft:`_canvasTopLeft_1qr7i_140`,canvasOnlyLogo:`_canvasOnlyLogo_1qr7i_156`,setupCredentialsButton:`_setupCredentialsButton_1qr7i_160`,evaluationsCanvasInfoCardWrapper:`_evaluationsCanvasInfoCardWrapper_1qr7i_164`,readOnlyEnvironmentNotification:`_readOnlyEnvironmentNotification_1qr7i_171`,canvasCenterPill:`_canvasCenterPill_1qr7i_178`}}]]);export{Ni as n,io as t};
|