n8n-editor-ui 2.44.0 → 2.44.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (386) hide show
  1. package/dist/assets/AddDataTableModal-DkZJPjXL.js +1 -0
  2. package/dist/assets/{AgentApprovalSelector-B8SQBYdU.js → AgentApprovalSelector-4x1uYC1S.js} +1 -1
  3. package/dist/assets/{AgentBuilderView-Da6qTdaD.js → AgentBuilderView-B6-PK15o.js} +1 -1
  4. package/dist/assets/AgentBuilderView-DX5NyIbN.js +13 -0
  5. package/dist/assets/AgentChatPanel-CAcdBPjt.js +16 -0
  6. package/dist/assets/AgentConfirmationModal-BEKKI5Wv.js +1 -0
  7. package/dist/assets/{AgentDescriptionModal-CKgZEGuG.js → AgentDescriptionModal-7xEGUdAm.js} +1 -1
  8. package/dist/assets/{AgentDuplicateModal-Bg8-6-El.js → AgentDuplicateModal-DuQVsxR4.js} +1 -1
  9. package/dist/assets/AgentEditorModal-BiqYfHWq.js +1 -0
  10. package/dist/assets/{AgentJsonImportModal-Cm-0tpF3.js → AgentJsonImportModal-CNfsOrPY.js} +1 -1
  11. package/dist/assets/{AgentModal-YufhIMwF.js → AgentModal-DMpTq9im.js} +1 -1
  12. package/dist/assets/{AgentModalMultiStep-ClhgWQd7.js → AgentModalMultiStep-Bios2t6g.js} +1 -1
  13. package/dist/assets/AgentN8nChatView-CuNBP7ea.js +1 -0
  14. package/dist/assets/AgentPreviewButton-DTvTX51W.js +3 -0
  15. package/dist/assets/AgentPreviewDock-D0A_9p2-.js +1 -0
  16. package/dist/assets/AgentSessionTimelineView-auHKxIu0.js +1 -0
  17. package/dist/assets/{AgentSessionsListView-Db2-xqIb.js → AgentSessionsListView-BvXJJRNh.js} +1 -1
  18. package/dist/assets/AgentSessionsListView-Ce3ECZGI.js +1 -0
  19. package/dist/assets/AgentSkillModal-h471-5rD.js +109 -0
  20. package/dist/assets/{AgentSubAgentsModal-BfQB7NKK.js → AgentSubAgentsModal-F8v4Z4P6.js} +1 -1
  21. package/dist/assets/AgentTaskModal-DyWhFUox.js +1 -0
  22. package/dist/assets/{AgentTemplateList-DmIhUTW8.js → AgentTemplateList-Ci1JJQDM.js} +1 -1
  23. package/dist/assets/AgentToolConfigForm-DUJq0XOX.js +1 -0
  24. package/dist/assets/{AgentToolConfigModal-NygECPPD.js → AgentToolConfigModal-CfuN_m6s.js} +1 -1
  25. package/dist/assets/{AgentToolsConnectionModalWrapper-aMA1oXxu.js → AgentToolsConnectionModalWrapper-Bvixk0oc.js} +1 -1
  26. package/dist/assets/AgentVectorStoresModal-D67lLRXe.js +1 -0
  27. package/dist/assets/{AgentView-BzQbz6EM.js → AgentView-Ctul432H.js} +1 -1
  28. package/dist/assets/AgentsListView-rwsriQQB.js +1 -0
  29. package/dist/assets/{AnimatedSpinner-Dw-MNajy.js → AnimatedSpinner-DysiHK1D.js} +1 -1
  30. package/dist/assets/{AnnotationTagsDropdown.ee-DqnLAja8.js → AnnotationTagsDropdown.ee-CkqDofTO.js} +1 -1
  31. package/dist/assets/AppSidebar-t8-qYdBV.js +1 -0
  32. package/dist/assets/AuthLayout-BR-eBgIn.js +1 -0
  33. package/dist/assets/{AuthView-XKcD8dQn.js → AuthView-DhcpoJhE.js} +1 -1
  34. package/dist/assets/{BrowserUseSetupContent-Q2XehS-o.js → BrowserUseSetupContent-Dstz1Wj8.js} +1 -1
  35. package/dist/assets/{BrowserUseSetupModal-C41LoL7V.js → BrowserUseSetupModal-CfN05-Wz.js} +1 -1
  36. package/dist/assets/{ChangePasswordModal-DdQgFpD1.js → ChangePasswordModal-BS6wOYCJ.js} +1 -1
  37. package/dist/assets/{ChangePasswordView-Bc38OL3D.js → ChangePasswordView-BDuDn0Kt.js} +1 -1
  38. package/dist/assets/{ChatAgentAvatar-RbpxKoY_.js → ChatAgentAvatar-DcbjpjP2.js} +1 -1
  39. package/dist/assets/{ChatAgentSearchSort-DyUlbfGj.js → ChatAgentSearchSort-zB5iesWx.js} +1 -1
  40. package/dist/assets/{ChatFile-Dpepv5QX.js → ChatFile-DymVzyKy.js} +1 -1
  41. package/dist/assets/ChatGreetings-DRLZeFZp.js +3 -0
  42. package/dist/assets/ChatHistoryDropdownTrigger-DfBNY3-M.js +1 -0
  43. package/dist/assets/{ChatLayout-Bpak728I.js → ChatLayout-C1s8X4-T.js} +1 -1
  44. package/dist/assets/{ChatLayout-CMU23D1c.js → ChatLayout-ztH6XdiL.js} +1 -1
  45. package/dist/assets/{ChatMarkdownChunk-QaZWORIt.js → ChatMarkdownChunk-DHu2lgnL.js} +2 -2
  46. package/dist/assets/{ChatPersonalAgentsView-qZFenSYR.js → ChatPersonalAgentsView-Dn5NTdHb.js} +1 -1
  47. package/dist/assets/ChatView-D_SzmRoP.js +1 -0
  48. package/dist/assets/{ChatWorkflowAgentsView-KYIaou_-.js → ChatWorkflowAgentsView-BR5q0qVP.js} +1 -1
  49. package/dist/assets/{CollectionParameter-CJM5wPT-.js → CollectionParameter-3cQtfeXK.js} +1 -1
  50. package/dist/assets/CompareCollectionView-CrRwL5Hk.js +1 -0
  51. package/dist/assets/{ComputerUseSetupContent-BJQoXzGd.js → ComputerUseSetupContent-CZh-FqZH.js} +1 -1
  52. package/dist/assets/{ComputerUseSetupModal-DfwZZ1cU.js → ComputerUseSetupModal-ChLPIx5Z.js} +1 -1
  53. package/dist/assets/{ConfirmEmailChangeView-Cx-pmeWN.js → ConfirmEmailChangeView-D36PoYKY.js} +1 -1
  54. package/dist/assets/{ConfirmPasswordModal-DK-J-lFJ.js → ConfirmPasswordModal-B3as49rr.js} +1 -1
  55. package/dist/assets/{ConnectionTracker-C3EC7auW.js → ConnectionTracker-DjRgdYtW.js} +1 -1
  56. package/dist/assets/{CredentialSelectorModal-DkZ2cUxT.js → CredentialSelectorModal-DiB2eh77.js} +1 -1
  57. package/dist/assets/CredentialsView-cXSodUuO.js +1 -0
  58. package/dist/assets/{DataTableActions-DCB9Nk3-.js → DataTableActions-D-p2EDp1.js} +1 -1
  59. package/dist/assets/{DataTableDetailsView-iz9ayc2y.js → DataTableDetailsView-DVMbz60P.js} +1 -1
  60. package/dist/assets/{DataTableTable-C9Yzj3RH.js → DataTableTable-CRBSOkpC.js} +2 -2
  61. package/dist/assets/DataTableView-PP3BsN7V.js +1 -0
  62. package/dist/assets/DefaultLayout-CvA-QUtF.js +1 -0
  63. package/dist/assets/{DeleteInstanceRoleModal-CH49JPpc.js → DeleteInstanceRoleModal-DPE_Vg9T.js} +1 -1
  64. package/dist/assets/{DemoDiffView-9RefK0En.js → DemoDiffView-QoJ-UBqt.js} +1 -1
  65. package/dist/assets/{DemoLayout-C_8rHPeN.js → DemoLayout-CJR2tQ75.js} +1 -1
  66. package/dist/assets/{DependencyPill-BX7M9U-6.js → DependencyPill-CFCz-v9K.js} +1 -1
  67. package/dist/assets/{EmptySharedSectionActionBox-DEmIFqqH.js → EmptySharedSectionActionBox-MRZ4_KTx.js} +1 -1
  68. package/dist/assets/EntityNotFound-BxyK_Q9R.js +1 -0
  69. package/dist/assets/{EntityUnAuthorised-BlnQzD_t.js → EntityUnAuthorised-BGPPqYgW.js} +1 -1
  70. package/dist/assets/ErrorView-pPBNQ1sR.js +1 -0
  71. package/dist/assets/{EvalCollectionsListView-thtjxVEg.js → EvalCollectionsListView-D3F_wUAT.js} +1 -1
  72. package/dist/assets/EvaluationsListSwitcher-Dv1biKid.js +2 -0
  73. package/dist/assets/EvaluationsPaywall-CzGcAdqb.js +1 -0
  74. package/dist/assets/{EvaluationsRootView-BwG7dQDL.js → EvaluationsRootView-Cb2AGXe_.js} +1 -1
  75. package/dist/assets/EventDestinationSettingsModalAdapter-DgcON5yX.js +1 -0
  76. package/dist/assets/ExecutionsTime-ZAYzb5jy.js +2 -0
  77. package/dist/assets/ExecutionsView-BdgJDduF.js +1 -0
  78. package/dist/assets/{ExposeAllWorkflowsToMcpModal-BYIipTfp.js → ExposeAllWorkflowsToMcpModal-DGW0UNXJ.js} +1 -1
  79. package/dist/assets/FixedCollectionParameter-Coy-yUo8.js +1 -0
  80. package/dist/assets/{FolderBreadcrumbs-B4gL13RQ.js → FolderBreadcrumbs-DU2XICPH.js} +1 -1
  81. package/dist/assets/{ForgotMyPasswordView-DoV3PfUt.js → ForgotMyPasswordView-BR25sTMo.js} +1 -1
  82. package/dist/assets/{GroupedMetricChart-DmKS7q4z.js → GroupedMetricChart-C0bTfE70.js} +1 -1
  83. package/dist/assets/{ImpactTag-DmN0vFcQ.js → ImpactTag-BMI7rQVE.js} +1 -1
  84. package/dist/assets/{InsightsChartAverageRuntime-ByCFHhWV.js → InsightsChartAverageRuntime-CC9ax2fy.js} +1 -1
  85. package/dist/assets/{InsightsChartFailed-CY7dCDOM.js → InsightsChartFailed-Dtp0vANi.js} +1 -1
  86. package/dist/assets/{InsightsChartFailureRate-DutOoI7l.js → InsightsChartFailureRate-wg70VlC8.js} +1 -1
  87. package/dist/assets/{InsightsChartTimeSaved-CllsnSRA.js → InsightsChartTimeSaved-C0vvCRo4.js} +1 -1
  88. package/dist/assets/{InsightsChartTotal-BWouaOTU.js → InsightsChartTotal-DKubDl8V.js} +1 -1
  89. package/dist/assets/{InsightsDashboard-EptJjM30.js → InsightsDashboard-DlZeICiu.js} +2 -2
  90. package/dist/assets/InsightsPaywall-EHdXSeUy.js +1 -0
  91. package/dist/assets/{InsightsSummary-BahEFtt0.js → InsightsSummary-A9X8mv3i.js} +1 -1
  92. package/dist/assets/{InsightsTableWorkflows-BEsMkvOk.js → InsightsTableWorkflows-BOjN_hAd.js} +2 -2
  93. package/dist/assets/{InstanceAiEmptyView-Cofqxjd0.js → InstanceAiEmptyView-BnaIzfFb.js} +1 -1
  94. package/dist/assets/{InstanceAiLayout-DH3Knrks.js → InstanceAiLayout-CttIFBjR.js} +1 -1
  95. package/dist/assets/InstanceAiThreadView-BuKssWMO.js +2 -0
  96. package/dist/assets/{InstanceAiThreadsView-DDsAJp0t.js → InstanceAiThreadsView-BW2h9ZUG.js} +1 -1
  97. package/dist/assets/InstanceAiToolsConnectionModalWrapper-DWWMwFE4.js +1 -0
  98. package/dist/assets/{InstanceAiView-CH4-Icll.js → InstanceAiView-CnRYbCj7.js} +1 -1
  99. package/dist/assets/InstanceRoleView-kl83OTyw.js +1 -0
  100. package/dist/assets/LimitedModeNotice-BMXCL_mt.js +1 -0
  101. package/dist/assets/{LogStreamingPaywall-CRzo--bu.js → LogStreamingPaywall-CtCTBN65.js} +1 -1
  102. package/dist/assets/{LogStreamingPlaceholderView-DBnPMxcd.js → LogStreamingPlaceholderView-BJ_tbZoX.js} +1 -1
  103. package/dist/assets/LogsOverviewRow-jVH9JAwy.js +1 -0
  104. package/dist/assets/{MCPOnboardingModal-BlCSL-o2.js → MCPOnboardingModal-7TrHb7UJ.js} +1 -1
  105. package/dist/assets/MainHeader-CAHjD2NZ.js +1 -0
  106. package/dist/assets/{MainSidebarHeader-B2G9nD6W.js → MainSidebarHeader-CzDAJduS.js} +1 -1
  107. package/dist/assets/McpJsonNudgeModal-BtySAWKw.js +1 -0
  108. package/dist/assets/{McpRegistrySuggestionFooter-VXlHkoJD.js → McpRegistrySuggestionFooter-txkSGcUS.js} +1 -1
  109. package/dist/assets/{MfaSetupModal-iF3zHIHS.js → MfaSetupModal-BEjFuXSa.js} +2 -2
  110. package/dist/assets/MigrationRuleDetail-BYHikjiK.js +1 -0
  111. package/dist/assets/MigrationRules-Tv5q8tRZ.js +1 -0
  112. package/dist/assets/{ModelByIdSelectorModal-VoG8BzBG.js → ModelByIdSelectorModal-DmFPPlQ_.js} +1 -1
  113. package/dist/assets/{N8nChatAgentGrid-EXUFglb0.js → N8nChatAgentGrid-DCDWKNtD.js} +1 -1
  114. package/dist/assets/N8nChatAgentLibraryView-BSfnS25d.js +1 -0
  115. package/dist/assets/{N8nChatPageLayout-DIrqhGr_.js → N8nChatPageLayout-Cv5ScR18.js} +1 -1
  116. package/dist/assets/NodeCreation-B1GfJIvd.js +2 -0
  117. package/dist/assets/NodeCreator-DPCgfDX8.js +1 -0
  118. package/dist/assets/NodeDetailsView-v8DvzTHr.js +1 -0
  119. package/dist/assets/{NodeToolSettingsContent-DLmGq-N9.js → NodeToolSettingsContent-lcCnVBPB.js} +1 -1
  120. package/dist/assets/{NodeView-Ctlqbx8C.js → NodeView-B3NhDpz1.js} +1 -1
  121. package/dist/assets/NodeView-DVu1Bnt3.js +2 -0
  122. package/dist/assets/OAuthConsentView-DMPNFYuO.js +1 -0
  123. package/dist/assets/{PageViewLayout-bCi6IKM-.js → PageViewLayout-Bp6RXp4_.js} +1 -1
  124. package/dist/assets/{ProjectBreadcrumb-Cnwzyd2Z.js → ProjectBreadcrumb-BR6Aa_8r.js} +1 -1
  125. package/dist/assets/{ProjectFilter-CaPwwC8g.js → ProjectFilter-DCd8uy8l.js} +1 -1
  126. package/dist/assets/ProjectHeader-QjIM8haZ.js +1 -0
  127. package/dist/assets/ProjectRoleView-Dnk8gsYC.js +1 -0
  128. package/dist/assets/ProjectSettings-D5zQWXAe.js +1 -0
  129. package/dist/assets/ProjectVariables-XKVXNzgl.js +1 -0
  130. package/dist/assets/PromotionBindingsFlow-DQx0wPa9.js +1 -0
  131. package/dist/assets/PromotionSelectModal-DzIBwn2U.js +1 -0
  132. package/dist/assets/PromotionsSettingsView-DuTlSJcw.js +1 -0
  133. package/dist/assets/{PromptMfaCodeModal-vVELtLqC.js → PromptMfaCodeModal-Bn7srjg9.js} +1 -1
  134. package/dist/assets/{ProviderSettingsModal-aLxanc2T.js → ProviderSettingsModal-DutL40PA.js} +1 -1
  135. package/dist/assets/PublicationIndicator-BtJczAR0.js +1 -0
  136. package/dist/assets/{RecentChatIcon-Bz2MNsZl.js → RecentChatIcon-BIyyIODM.js} +1 -1
  137. package/dist/assets/{ResolversView-C_sVCxt2.js → ResolversView-DK0QKKVQ.js} +1 -1
  138. package/dist/assets/{ResourceCenterView-Bby45GC-.js → ResourceCenterView-CUvJGTsi.js} +1 -1
  139. package/dist/assets/{ResourcesListEmptyState-7hzhxSHi.js → ResourcesListEmptyState-Df4hykb-.js} +1 -1
  140. package/dist/assets/ResourcesListLayout-CIWP7UX_.js +1 -0
  141. package/dist/assets/{RoleSelectDropdown-Dzy0ESK_.js → RoleSelectDropdown-CKIJpssE.js} +1 -1
  142. package/dist/assets/{RolesView-Cv3tmUWj.js → RolesView-DWy0o31w.js} +1 -1
  143. package/dist/assets/{RunDataHtml-BkPrOVY7.js → RunDataHtml-nEx5pYjD.js} +1 -1
  144. package/dist/assets/{RunDataJson-wVBBCyW1.js → RunDataJson-_58fhexZ.js} +2 -2
  145. package/dist/assets/{RunDataJsonActions-B1Sp_2yc.js → RunDataJsonActions-CVKMY0Sx.js} +2 -2
  146. package/dist/assets/{RunDataParsedAiContent-BTSL3Ozr.js → RunDataParsedAiContent-6L7RVkKD.js} +1 -1
  147. package/dist/assets/{RunDataParsedAiContent-B-dZkiiK.js → RunDataParsedAiContent-N1LP23et.js} +3 -3
  148. package/dist/assets/{RunDataSearch-CEvFNipB.js → RunDataSearch-B-J5fw5n.js} +1 -1
  149. package/dist/assets/{RunDataTable-Df3fAAj2.js → RunDataTable-rXdlanqj.js} +1 -1
  150. package/dist/assets/{SamlOnboarding-BOu5TOPr.js → SamlOnboarding-DMszMIiL.js} +1 -1
  151. package/dist/assets/{SandboxSettingsRow-nfh8yhXB.js → SandboxSettingsRow-Cl5FZGXu.js} +1 -1
  152. package/dist/assets/SecuritySettings-DNSunEvt.js +1 -0
  153. package/dist/assets/SettingsAIView-Dzqb_gQE.js +1 -0
  154. package/dist/assets/SettingsAgentsView-B8fft1So.js +1 -0
  155. package/dist/assets/SettingsAiGatewayView-KGIIQukP.js +1 -0
  156. package/dist/assets/SettingsApiView-BTuTOYbD.js +1 -0
  157. package/dist/assets/SettingsChatHubView-3DmItZZi.js +1 -0
  158. package/dist/assets/SettingsCommunityNodesView-DF5-gCEu.js +1 -0
  159. package/dist/assets/SettingsContextView-4oHjIijI.js +1 -0
  160. package/dist/assets/SettingsEncryptionKeys-COWApewr.js +1 -0
  161. package/dist/assets/{SettingsExternalSecrets-DGC1iq8F.js → SettingsExternalSecrets-BZDdVBTB.js} +1 -1
  162. package/dist/assets/SettingsInstanceAiView-ByZCoKzh.js +1 -0
  163. package/dist/assets/{SettingsLayout-Dx-L1mgX.js → SettingsLayout-C7LLr6cE.js} +1 -1
  164. package/dist/assets/{SettingsLdapView-DSQhBNgh.js → SettingsLdapView-BVhw22q5.js} +2 -2
  165. package/dist/assets/SettingsLogStreamingView-Dc4XQMSj.js +1 -0
  166. package/dist/assets/{SettingsMCPAgentsView-BtolLK-k.js → SettingsMCPAgentsView-Bivm4IFI.js} +1 -1
  167. package/dist/assets/SettingsMCPClientsView-DF-NxgbJ.js +1 -0
  168. package/dist/assets/SettingsMCPView--prl2G_r.js +49 -0
  169. package/dist/assets/{SettingsMCPWorkflowsView-C9MoDxas.js → SettingsMCPWorkflowsView-BMFU0bs3.js} +1 -1
  170. package/dist/assets/SettingsOpenTelemetryView-DMvPheYJ.js +1 -0
  171. package/dist/assets/{SettingsPersonalView-DYg3oFiW.js → SettingsPersonalView-B1YX77L-.js} +1 -1
  172. package/dist/assets/SettingsPreferencesView-CCbztOqj.js +1 -0
  173. package/dist/assets/SettingsSecretsProviders.ee-F9LMaG1t.js +1 -0
  174. package/dist/assets/SettingsSourceControl-BD8_osbg.js +1 -0
  175. package/dist/assets/SettingsSso-PVkNFLrh.js +3 -0
  176. package/dist/assets/SettingsUsageAndPlan-Kd1oPsii.js +1 -0
  177. package/dist/assets/SettingsUsersView-COsjNIEL.js +1 -0
  178. package/dist/assets/{SetupView-DPWFrJFX.js → SetupView-B14MFSYF.js} +1 -1
  179. package/dist/assets/{SetupWorkflowCredentialsButton-RAdc4KlU.js → SetupWorkflowCredentialsButton-MQLIOwPY.js} +1 -1
  180. package/dist/assets/SetupWorkflowFromTemplateView-Td-Rx5fR.js +1 -0
  181. package/dist/assets/{SigninView-BPOZ_JvM.js → SigninView-75E9B3ep.js} +1 -1
  182. package/dist/assets/{SignoutView-DOoUkBqR.js → SignoutView-Daa15qmo.js} +1 -1
  183. package/dist/assets/{SignupView-UVaiVVnv.js → SignupView-CKO9HRZU.js} +1 -1
  184. package/dist/assets/{SkeletonAgentCard-DonARi7W.js → SkeletonAgentCard-3xTB8UfZ.js} +1 -1
  185. package/dist/assets/{TemplateList-QMN6-8Ff.js → TemplateList-C2TxAN0P.js} +1 -1
  186. package/dist/assets/{TemplatesCollectionView-DCbwUXhL.js → TemplatesCollectionView-CZMR8Q9B.js} +1 -1
  187. package/dist/assets/TemplatesSearchView-CHLMAWTA.js +1 -0
  188. package/dist/assets/{TemplatesView-DAXRVkmt.js → TemplatesView-Dn3jCV05.js} +1 -1
  189. package/dist/assets/{TemplatesWorkflowView-tW-MHyf-.js → TemplatesWorkflowView-C-kvTEqR.js} +1 -1
  190. package/dist/assets/{TestRunDetailView-Bd-3DRWP.js → TestRunDetailView-BuWeSwgd.js} +1 -1
  191. package/dist/assets/{ToolIcon-DXqBHyeb.js → ToolIcon-CgDyqfFz.js} +1 -1
  192. package/dist/assets/{ToolSettingsModal-DCyqfOak.js → ToolSettingsModal-ByJX5X7W.js} +1 -1
  193. package/dist/assets/ToolsConnectionModal-DEoHRiX3.js +1 -0
  194. package/dist/assets/ToolsManagerModal-BbzHGTTB.js +1 -0
  195. package/dist/assets/ToolsManagerModal-CL6mM2CT.css +1 -0
  196. package/dist/assets/{ToolsSelector-lmbosNBE.js → ToolsSelector-CNs07Ph1.js} +1 -1
  197. package/dist/assets/{TrialIntroModal-DgmMUX6D.js → TrialIntroModal-COqIR76q.js} +1 -1
  198. package/dist/assets/{VirtualSchema-2E1N91s4.js → VirtualSchema-qThduCFC.js} +1 -1
  199. package/dist/assets/{WorkerView-CK0vy4GS.js → WorkerView-D1Q_nCLi.js} +1 -1
  200. package/dist/assets/{WorkflowExecutionsInfoAccordion-BMU0TmaE.js → WorkflowExecutionsInfoAccordion-1_sf2LSs.js} +1 -1
  201. package/dist/assets/{WorkflowExecutionsLandingPage-D-dB8HCw.js → WorkflowExecutionsLandingPage-BfMeZfNZ.js} +1 -1
  202. package/dist/assets/WorkflowExecutionsPreview-lJKYJwZI.js +1 -0
  203. package/dist/assets/WorkflowExecutionsView-0CilRvvH.js +1 -0
  204. package/dist/assets/WorkflowHistory-D0IMTfVA.js +1 -0
  205. package/dist/assets/WorkflowLayout-D_Ncy1iE.js +1 -0
  206. package/dist/assets/{WorkflowOnboardingView-TbGXVlVN.js → WorkflowOnboardingView-CwCOvhXZ.js} +1 -1
  207. package/dist/assets/WorkflowPreviewHost-BB11E3CI.js +1 -0
  208. package/dist/assets/WorkflowReviewRequestsView-DL3MFxwP.js +1 -0
  209. package/dist/assets/WorkflowsView-CbPJw_ID.js +1 -0
  210. package/dist/assets/{aiTemplatesStarterCollection.store-Dh9-uikR.js → aiTemplatesStarterCollection.store-z28GmE_Z.js} +2 -2
  211. package/dist/assets/{app-67dzk_qg.css → app-CU_fYePl.css} +1 -1
  212. package/dist/assets/{app-CiawIgN9.js → app-oLfukFT9.js} +106 -106
  213. package/dist/assets/auth.eventBus-nvmfBO6L.js +1 -0
  214. package/dist/assets/{context.store-O85P2gEu.js → context.store-DzS-OJir.js} +1 -1
  215. package/dist/assets/{dist-kJhq_pQM.js → dist-CdpUFTnE.js} +1 -1
  216. package/dist/assets/en-Dn5pxxIz.js +1 -0
  217. package/dist/assets/expression-runtime-stub-UNeuY3iN.js +1 -0
  218. package/dist/assets/{index-BshBxqH2.js → index-CBhcE0k-.js} +1 -1
  219. package/dist/assets/{insights.store-DqK_Hj6J.js → insights.store-CFx-KiBU.js} +1 -1
  220. package/dist/assets/{insights.store-C-NrjF5l.js → insights.store-qL6q61kW.js} +1 -1
  221. package/dist/assets/{insights.utils-Dr5pHfjM.js → insights.utils-B0xOygf8.js} +1 -1
  222. package/dist/assets/{instanceAi.store-BZTklpEt.js → instanceAi.store-HgFtjtSA.js} +1 -1
  223. package/dist/assets/{instanceAiComputerUse.telemetry-cAMQ2WLg.js → instanceAiComputerUse.telemetry-BX3iVsla.js} +1 -1
  224. package/dist/assets/{instanceAiMcp.store-DGiArrfK.js → instanceAiMcp.store-C8SplGQl.js} +1 -1
  225. package/dist/assets/{instanceAiMcp.store-BrrHBunG.js → instanceAiMcp.store-DHgGYKq8.js} +1 -1
  226. package/dist/assets/{instanceAiSetup.telemetry-DKsuz_Ef.js → instanceAiSetup.telemetry-Cu3a1VfE.js} +1 -1
  227. package/dist/assets/{instanceRoleScopes-uFpjBIDb.js → instanceRoleScopes-CeFuPB8X.js} +1 -1
  228. package/dist/assets/{logStreaming.store-BI-D_9Tr.js → logStreaming.store-BDxeuOL4.js} +1 -1
  229. package/dist/assets/{mergeRecentChats-CmVeGVfC.js → mergeRecentChats-CWOdJaOY.js} +1 -1
  230. package/dist/assets/{postMessageUtils-BZnczWr7.js → postMessageUtils-Buqcds2_.js} +1 -1
  231. package/dist/assets/{projectRoleScopes-BsnxskQt.js → projectRoleScopes-Cb09ZyTM.js} +1 -1
  232. package/dist/assets/{promotions.api-fKiTFwcr.js → promotions.api-D6ntl2JV.js} +1 -1
  233. package/dist/assets/promotions.eventBus-1v4t_Hbs.js +1 -0
  234. package/dist/assets/{promotionsSettings.api-PzSCJER7.js → promotionsSettings.api-Cuy9RjVm.js} +1 -1
  235. package/dist/assets/{pushConnection.store-BWqDj6Ak.js → pushConnection.store-b7e8A-im.js} +1 -1
  236. package/dist/assets/{readyToRun.store-B2jIpzaP.js → readyToRun.store-CE87oIgp.js} +3 -3
  237. package/dist/assets/{readyToRunWorkflows.store-BbZiyJYg.js → readyToRunWorkflows.store-BjTR-K95.js} +2 -2
  238. package/dist/assets/{resourceCenter.store-OxozDMtm.js → resourceCenter.store-CJsSX4ZG.js} +1 -1
  239. package/dist/assets/{src-Bnl_5mE4.js → src-BU6D5L7U.js} +1 -1
  240. package/dist/assets/{src-DY7si8_w.js → src-DJVjVPKI.js} +1 -1
  241. package/dist/assets/surfaceMcpToNewCloudUsers.store-BDg60m1l.js +1 -0
  242. package/dist/assets/{templateActions-ChrS5kkv.js → templateActions-CHRqep2i.js} +1 -1
  243. package/dist/assets/{thread-title-C8ilaomA.js → thread-title-DtF3IdnY.js} +1 -1
  244. package/dist/assets/{toolIcons-fKqVfg23.js → toolIcons-DqjDHIwi.js} +1 -1
  245. package/dist/assets/{typescript.worker--e45RZRP.js → typescript.worker-xmrMwPIu.js} +139 -139
  246. package/dist/assets/{useActivityDetection-GlpYNf-Q.js → useActivityDetection-BZTAMwar.js} +1 -1
  247. package/dist/assets/{useAgentConfirmationModal-CoJtHVWS.js → useAgentConfirmationModal--ha2EHAX.js} +1 -1
  248. package/dist/assets/{useBuilderStreamingGuard-B7JeJeif.js → useBuilderStreamingGuard-CF9n24d2.js} +1 -1
  249. package/dist/assets/{useCustomAgent-rzAqlogG.js → useCustomAgent-Yt0Wqf3a.js} +1 -1
  250. package/dist/assets/{useDependencyMenu-DiCGxg9o.js → useDependencyMenu-BSD_Wh7Z.js} +1 -1
  251. package/dist/assets/{useEvalCollectionsFlag-fLp5eLuh.js → useEvalCollectionsFlag-9T27lZ9y.js} +1 -1
  252. package/dist/assets/{useEvaluationsLicense-C7qQIrRw.js → useEvaluationsLicense-478l3uKz.js} +1 -1
  253. package/dist/assets/{useExecutionData-D1_nZgXN.js → useExecutionData-BVav_--7.js} +1 -1
  254. package/dist/assets/useExecutionDebugging-DNEpg7fc.js +2 -0
  255. package/dist/assets/{useExposeAllWorkflowsToMcpOffer-CtR3a8uG.js → useExposeAllWorkflowsToMcpOffer-Dt120Zdw.js} +1 -1
  256. package/dist/assets/{useExtensionDirectConnect-CnINrsSW.js → useExtensionDirectConnect-DWfPpd4w.js} +1 -1
  257. package/dist/assets/{useFileDrop-D6TxtcEG.js → useFileDrop-ja5KXA3q.js} +1 -1
  258. package/dist/assets/{useImportCurlCommand-BJsa3SYX.js → useImportCurlCommand-DBxkPosB.js} +1 -1
  259. package/dist/assets/{useInstanceAiConfiguration-BSjUupr5.js → useInstanceAiConfiguration-Blsd4kOA.js} +1 -1
  260. package/dist/assets/{useInstancePromotionConnection-C79S26jh.js → useInstancePromotionConnection-y1iOgVEj.js} +1 -1
  261. package/dist/assets/useIsAssistantAtMentionsEnabled-Dlq0V3jE.js +1 -0
  262. package/dist/assets/{useLogsTreeExpand-mtDDZp2J.js → useLogsTreeExpand-B38R0D0z.js} +1 -1
  263. package/dist/assets/{useMcpJsonNudgeEligibility-BbEgzCUs.js → useMcpJsonNudgeEligibility-B0--_zHz.js} +1 -1
  264. package/dist/assets/{useMcpJsonNudgeTrigger-D75YeM7w.js → useMcpJsonNudgeTrigger-WYpVEXD7.js} +1 -1
  265. package/dist/assets/{useMergedChatHistory-B5_I32px.js → useMergedChatHistory-CyQKnn96.js} +1 -1
  266. package/dist/assets/{useOAuthClientRevoke-BbXmfHXh.js → useOAuthClientRevoke-CbjEZKaZ.js} +1 -1
  267. package/dist/assets/{usePagedN8nChatThreads-CqbdunfX.js → usePagedN8nChatThreads-Dw6YKttc.js} +1 -1
  268. package/dist/assets/{usePostMessageHandler-CcNgS4W6.js → usePostMessageHandler-yE0okmdk.js} +2 -2
  269. package/dist/assets/usePushConnection-Bvt-qoHW.js +1 -0
  270. package/dist/assets/{usePushConnection-BFhO-1H-.js → usePushConnection-DkCvi8b-.js} +1 -1
  271. package/dist/assets/useRestrictedNodeWarning-CTtdCQks.js +1 -0
  272. package/dist/assets/{useRoleEditorForm-B9E9W0U3.js → useRoleEditorForm-XSnBSOnn.js} +1 -1
  273. package/dist/assets/{useSecretsProvidersList.ee-DtqxpeUp.js → useSecretsProvidersList.ee-CnzrWo1e.js} +1 -1
  274. package/dist/assets/{useSettingsItems-CfCtqenK.js → useSettingsItems-DYcW7pYp.js} +1 -1
  275. package/dist/assets/{useSidebarLayout-C0wiWIC7.js → useSidebarLayout-DmF2i08K.js} +1 -1
  276. package/dist/assets/useWorkflowEvaluationState-D-lddQaQ.js +1 -0
  277. package/dist/assets/useWorkflowInitialization-wUzQZhAb.js +1 -0
  278. package/dist/assets/useWorkflowsEmptyState-BJ-KcLgg.js +1 -0
  279. package/dist/assets/{userRoleProvisioning.store-D2fDxjy7.js → userRoleProvisioning.store-D9r1yJYS.js} +1 -1
  280. package/dist/assets/{vector-stores-CfjeTRPK.js → vector-stores-CGPITg7t.js} +1 -1
  281. package/dist/assets/{worker-BEGdHTX5.js → worker-Qfu_u4s_.js} +33 -33
  282. package/dist/assets/{workers-D9EJ04EA.js → workers-B8bjMWzs.js} +1 -1
  283. package/dist/assets/{workflowReviews.utils-DT99OxLq.js → workflowReviews.utils-B1ktoCSo.js} +1 -1
  284. package/dist/index.html +3 -3
  285. package/package.json +1 -1
  286. package/dist/assets/AddDataTableModal-DLy09xyE.js +0 -1
  287. package/dist/assets/AgentBuilderView-BuiPTWV6.js +0 -13
  288. package/dist/assets/AgentChatPanel-u7NaGpww.js +0 -16
  289. package/dist/assets/AgentConfirmationModal-BgXM3YJu.js +0 -1
  290. package/dist/assets/AgentEditorModal-BgXgYmw7.js +0 -1
  291. package/dist/assets/AgentN8nChatView-DMp5m5kU.js +0 -1
  292. package/dist/assets/AgentPreviewButton-CCbAq7Bg.js +0 -3
  293. package/dist/assets/AgentPreviewDock-p-FnbNFW.js +0 -1
  294. package/dist/assets/AgentSessionTimelineView-CDLFLqgB.js +0 -1
  295. package/dist/assets/AgentSessionsListView-CAhtGxXU.js +0 -1
  296. package/dist/assets/AgentSkillModal-CIwjGkmY.js +0 -109
  297. package/dist/assets/AgentTaskModal-DsjxStha.js +0 -1
  298. package/dist/assets/AgentToolConfigForm-BM_q2x6U.js +0 -1
  299. package/dist/assets/AgentVectorStoresModal-BKi_M-dr.js +0 -1
  300. package/dist/assets/AgentsListView-Dq4pKc5-.js +0 -1
  301. package/dist/assets/AppSidebar-CSCzI4k2.js +0 -1
  302. package/dist/assets/AuthLayout-BSblt7Rt.js +0 -1
  303. package/dist/assets/ChatGreetings-M7OJ33Qi.js +0 -3
  304. package/dist/assets/ChatHistoryDropdownTrigger-CzLECeCK.js +0 -1
  305. package/dist/assets/ChatView-YzLrMNPY.js +0 -1
  306. package/dist/assets/CompareCollectionView-DnfNVX8z.js +0 -1
  307. package/dist/assets/CredentialsView-iWtxJ13m.js +0 -1
  308. package/dist/assets/DataTableView-BoKIUdZr.js +0 -1
  309. package/dist/assets/DefaultLayout-D4UexJTe.js +0 -1
  310. package/dist/assets/EntityNotFound-Bmp2SXGQ.js +0 -1
  311. package/dist/assets/ErrorView-DaxMkfwo.js +0 -1
  312. package/dist/assets/EvaluationsListSwitcher-UpmdaJKp.js +0 -2
  313. package/dist/assets/EvaluationsPaywall-D2EWqnNK.js +0 -1
  314. package/dist/assets/EventDestinationSettingsModalAdapter-C8tw2vX7.js +0 -1
  315. package/dist/assets/ExecutionsTime-t5CrbSOv.js +0 -2
  316. package/dist/assets/ExecutionsView-DEFJEdU3.js +0 -1
  317. package/dist/assets/FixedCollectionParameter-Cbhm0t-C.js +0 -1
  318. package/dist/assets/InsightsPaywall-BvxbU4Xi.js +0 -1
  319. package/dist/assets/InstanceAiThreadView-ClkJh15G.js +0 -2
  320. package/dist/assets/InstanceAiToolsConnectionModalWrapper-SHQosix9.js +0 -1
  321. package/dist/assets/InstanceRoleView-DJ7rfpgb.js +0 -1
  322. package/dist/assets/LimitedModeNotice-zSNNTwaP.js +0 -1
  323. package/dist/assets/LogsOverviewRow-BkNsMGna.js +0 -1
  324. package/dist/assets/MainHeader-CAy60J0Q.js +0 -1
  325. package/dist/assets/McpJsonNudgeModal-BhLbaeOT.js +0 -1
  326. package/dist/assets/MigrationRuleDetail-B3VIoIM_.js +0 -1
  327. package/dist/assets/MigrationRules-BPxbNCE6.js +0 -1
  328. package/dist/assets/N8nChatAgentLibraryView-D2XPS6xn.js +0 -1
  329. package/dist/assets/NodeCreation-CrTwXTCa.js +0 -2
  330. package/dist/assets/NodeCreator-rMZtUGFM.js +0 -1
  331. package/dist/assets/NodeDetailsView-sfDBEAv-.js +0 -1
  332. package/dist/assets/NodeView-CuLkD58L.js +0 -2
  333. package/dist/assets/OAuthConsentView-BC3ajy-n.js +0 -1
  334. package/dist/assets/ProjectHeader-DB9KmIKR.js +0 -1
  335. package/dist/assets/ProjectRoleView-DgJOnUNJ.js +0 -1
  336. package/dist/assets/ProjectSettings-CCjLLKLf.js +0 -1
  337. package/dist/assets/ProjectVariables-CJUWgoqS.js +0 -1
  338. package/dist/assets/PromotionBindingsFlow-BED9j-io.js +0 -1
  339. package/dist/assets/PromotionSelectModal-D2qlwKh2.js +0 -1
  340. package/dist/assets/PromotionsSettingsView-DpBY8xLz.js +0 -1
  341. package/dist/assets/PublicationIndicator-CDWJw4MA.js +0 -1
  342. package/dist/assets/ResourcesListLayout-D0RcHlig.js +0 -1
  343. package/dist/assets/SecuritySettings-CREkypLf.js +0 -1
  344. package/dist/assets/SettingsAIView-t3ugLUq1.js +0 -1
  345. package/dist/assets/SettingsAgentsView-DbwgaD0B.js +0 -1
  346. package/dist/assets/SettingsAiGatewayView-C_VGCg05.js +0 -1
  347. package/dist/assets/SettingsApiView-bGsviSfM.js +0 -1
  348. package/dist/assets/SettingsChatHubView-DWXcRUyZ.js +0 -1
  349. package/dist/assets/SettingsCommunityNodesView-BygQRfp9.js +0 -1
  350. package/dist/assets/SettingsContextView-CSoKM9i7.js +0 -1
  351. package/dist/assets/SettingsEncryptionKeys-Bf2aDd8L.js +0 -1
  352. package/dist/assets/SettingsInstanceAiView-DcH482wW.js +0 -1
  353. package/dist/assets/SettingsLogStreamingView-BGHUz08I.js +0 -1
  354. package/dist/assets/SettingsMCPClientsView-BsGOvwiK.js +0 -1
  355. package/dist/assets/SettingsMCPView-C9RPeF8h.js +0 -49
  356. package/dist/assets/SettingsOpenTelemetryView-BqCrq2L8.js +0 -1
  357. package/dist/assets/SettingsPreferencesView-CfU2XBQM.js +0 -1
  358. package/dist/assets/SettingsSecretsProviders.ee-idl-rSyY.js +0 -1
  359. package/dist/assets/SettingsSourceControl-CsZpvdgn.js +0 -1
  360. package/dist/assets/SettingsSso-CmxREW22.js +0 -3
  361. package/dist/assets/SettingsUsageAndPlan-cZAgoFxH.js +0 -1
  362. package/dist/assets/SettingsUsersView-phRMlJn2.js +0 -1
  363. package/dist/assets/SetupWorkflowFromTemplateView-Cfz0GI8G.js +0 -1
  364. package/dist/assets/TemplatesSearchView-DywPuZ8B.js +0 -1
  365. package/dist/assets/ToolsConnectionModal-GO6CtviA.js +0 -1
  366. package/dist/assets/ToolsManagerModal-7O0PmUky.js +0 -1
  367. package/dist/assets/ToolsManagerModal-BBtxVyqf.css +0 -1
  368. package/dist/assets/WorkflowExecutionsPreview-8CCXuvHm.js +0 -1
  369. package/dist/assets/WorkflowExecutionsView-BNVNsc4l.js +0 -1
  370. package/dist/assets/WorkflowHistory-LSBYE70d.js +0 -1
  371. package/dist/assets/WorkflowLayout-YAsI30Mu.js +0 -1
  372. package/dist/assets/WorkflowPreviewHost-DlcsDVjd.js +0 -1
  373. package/dist/assets/WorkflowReviewRequestsView-CkGP67Nh.js +0 -1
  374. package/dist/assets/WorkflowsView-QHCalPMm.js +0 -1
  375. package/dist/assets/auth.eventBus-BiT21sNh.js +0 -1
  376. package/dist/assets/en-CZa6nWyp.js +0 -1
  377. package/dist/assets/expression-runtime-stub-CZEaiKJ2.js +0 -1
  378. package/dist/assets/promotions.eventBus-BmbL1egL.js +0 -1
  379. package/dist/assets/surfaceMcpToNewCloudUsers.store-hfZ6NG3H.js +0 -1
  380. package/dist/assets/useExecutionDebugging-2gYSGTYf.js +0 -2
  381. package/dist/assets/useIsAssistantAtMentionsEnabled-C3pI9Svj.js +0 -1
  382. package/dist/assets/usePushConnection-BBYO5DZH.js +0 -1
  383. package/dist/assets/useRestrictedNodeWarning--oK4c8Zo.js +0 -1
  384. package/dist/assets/useWorkflowEvaluationState-BEPajZUK.js +0 -1
  385. package/dist/assets/useWorkflowInitialization-oZ6rOoYV.js +0 -1
  386. package/dist/assets/useWorkflowsEmptyState-BBQ-kG2-.js +0 -1
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/NodeCreation-B1GfJIvd.js","assets/app-oLfukFT9.js","assets/rolldown-runtime-BobR2NKB.js","assets/vendor-DS7UZyZ6.js","assets/vendor-BpMiN8nO.css","assets/app-CU_fYePl.css","assets/NodeCreation-CpR6ewOx.css","assets/NodeDetailsView-v8DvzTHr.js","assets/LogsOverviewRow-jVH9JAwy.js","assets/AnimatedSpinner-DysiHK1D.js","assets/AnimatedSpinner-OiUdRqev.css","assets/LogsOverviewRow-DGf07F0R.css","assets/useLogsTreeExpand-B38R0D0z.js","assets/useLogsTreeExpand-COyoDDNP.css","assets/useExecutionData-BVav_--7.js","assets/RunDataParsedAiContent-N1LP23et.js","assets/RunDataParsedAiContent-Cr5GyLhr.css","assets/NodeDetailsView-DEIl7Nig.css","assets/SetupWorkflowCredentialsButton-MQLIOwPY.js","assets/readyToRun.store-CE87oIgp.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]=`687ae190-e9b3-43ff-a216-05adf10989b2`,e._sentryDebugIdIdentifier=`sentry-dbid-687ae190-e9b3-43ff-a216-05adf10989b2`)})()}catch{}import{$d as e,Ad as t,Af as n,Fd as r,Ff as i,Hd as a,Id as o,Ld as s,Lf as c,Md as l,Nf as u,Of as d,Ou as f,Pd as p,Qd as m,Rd as h,Su as g,Td as _,Ud as v,Vd as y,Vf as b,Wd as x,Zd as S,_f as C,as as w,cf as T,cp as E,cs as D,fd as O,go as k,hf as A,hi as j,jd as M,jf as N,kd as P,lf as F,od as I,of as L,pi as ee,pp as R,qd as te,rf as z,sf as ne,ss as re,tf as ie,ud as B,up as V,vo as ae,wf as oe,xf as H,y as se,yd as U,yf as W,zd as ce,zf as le}from"./vendor-DS7UZyZ6.js";import{$ as ue,$c as de,$d as fe,$l as pe,$n as me,AT as G,Ag as he,Ai as ge,Al as _e,Am as ve,As as ye,BC as be,Bc as xe,Bf as Se,Bh as Ce,Bn as we,Bv as K,Cl as Te,Cp as Ee,DT as q,D_ as De,Db as Oe,Di as ke,Dl as Ae,Dn as je,Du as Me,ES as Ne,ET as J,Ed as Pe,Ei as Fe,FT as Y,Ff as Ie,Fn as Le,Fp as Re,Fs as ze,Gn as Be,Gp as Ve,Gv as He,Gw as Ue,Hh as We,Hp as Ge,Hu as Ke,Hx as qe,Is as Je,Jc as Ye,Jd as X,Jl as Xe,Jp as Ze,Jw as Qe,Kc as $e,Kd as et,Kg as tt,Kh as nt,Kn as rt,Kp as it,Kv as at,Kw as ot,Ld as st,Lf as ct,Lm as lt,Ln as ut,Md as dt,Mn as ft,Nf as pt,Ng as mt,Nl as ht,Nm as gt,Nn as _t,Np as vt,Od as yt,Oi as bt,Pd as xt,Pm as St,Ps as Ct,Q as wt,QS as Tt,Qd as Et,Qx as Dt,Rf as Ot,Rn as kt,Rw as At,Sp as jt,TS as Mt,TT as Nt,Tf as Z,Tg as Pt,Ti as Ft,Tp as It,Uc as Lt,Un as Rt,Up as zt,Uu as Bt,Uv as Vt,Ux as Ht,VC as Ut,Vf as Wt,Vg as Gt,Vn as Kt,Vp as qt,Vv as Jt,Vw as Yt,Wd as Xt,Wg as Zt,Wp as Qt,Wx as $t,Xd as en,Y_ as tn,Yc as nn,Yd as rn,Yg as an,Yn as on,Yp as sn,Yw as cn,ZC as ln,Zg as un,Zw as dn,Zx as fn,_p as pn,aC as mn,a_ as hn,aa as gn,ar as _n,as as vn,at as yn,au as bn,bS as Q,bT as xn,bw as Sn,cS as Cn,cT as wn,cf as Tn,ch as En,ct as Dn,dt as On,ed as kn,er as An,eu as jn,fp as Mn,ft as Nn,gf as Pn,hf as Fn,hg as In,if as Ln,ih as Rn,il as zn,ir as Bn,it as Vn,jT as Hn,jm as Un,kS as Wn,km as Gn,kp as Kn,ks as qn,kv as Jn,lS as Yn,lT as Xn,lr as Zn,mS as Qn,nS as $n,nf as er,nl as tr,nm as nr,nr as rr,nt as ir,oh as ar,ol as or,or as sr,pT as cr,pt as lr,qC as ur,qc as dr,qd as fr,ql as pr,qp as mr,qv as hr,ra as gr,rl as _r,rr as vr,rt as yr,sT as br,sl as xr,sr as Sr,su as Cr,td as wr,tr as Tr,tt as Er,tu as Dr,ur as Or,ut as kr,ux as Ar,vT as $,vf as jr,vg as Mr,vl as Nr,vs as Pr,vw as Fr,wS as Ir,wT as Lr,wd as Rr,wg as zr,wi as Br,xC as Vr,xS as Hr,x_ as Ur,yp as Wr,zf as Gr,zg as Kr,zv as qr}from"./app-oLfukFT9.js";import{t as Jr}from"./usePostMessageHandler-yE0okmdk.js";import{t as Yr}from"./useMcpJsonNudgeTrigger-WYpVEXD7.js";import{n as Xr,t as Zr}from"./EvaluationsPaywall-CzGcAdqb.js";import{t as Qr}from"./useExecutionData-BVav_--7.js";import{a as $r,c as ei,d as ti,i as ni,l as ri,n as ii,o as ai,r as oi,s as si,t as ci,u as li}from"./evaluation.constants-CoqV6UIR.js";import{t as ui}from"./useEvaluationsLicense-478l3uKz.js";import{t as di}from"./useActivityDetection-BZTAMwar.js";var fi=G(x({inheritAttrs:!1,__name:`WorkflowCanvas`,props:{id:{default:`canvas`},fallbackNodes:{default:()=>[]},showFallbackNodes:{type:Boolean,default:!0},eventBus:{default:()=>Ue()},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 o=e,s=C(`canvas`),c=_(),l=Z(),d=i(Gn()),f;W(()=>l.value.documentId,e=>{f?.stop(),f=oe(!0),f.run(()=>{d.value=me(e)})},{immediate:!0}),n(()=>f?.stop());let{onNodesInitialized:g,viewport:v,viewportRef:y,getNodes:x,fitBounds:S}=j(o.id),w=p(()=>o.showFallbackNodes?[...l.value.allNodes,...o.fallbackNodes]:l.value.allNodes),T=p(()=>l.value.connectionsBySourceNode),D=vr({workflowId:()=>l.value.workflowId,getCurrentGroupIds:()=>l.value.allGroups.map(e=>e.id),onNodeGroupsChange:e=>l.value.onNodeGroupsChange(e),getGroupExpansionMode:()=>o.groupExpansionMode}),O=sr({workflowId:()=>l.value.workflowId,getCurrentGroups:()=>l.value.allGroups,onNodeGroupsChange:e=>l.value.onNodeGroupsChange(e)});W(()=>l.value.documentId,()=>{D.reinitialize(),V(),O.reinitialize()});let k=p(()=>l.value.allGroups),A=p(()=>o.readOnly??!1),M=p(()=>o.suppressInteraction??!1),N=Dr(),P=p(()=>N.isActive(v.value.zoom)),R=Xe(),{nodes:te,connections:z,nodeDisplaySizeById:re,getNodeExecutionSnapshot:ie}=An({nodes:w,connections:T,renderData:d,allGroups:k,nodeGroupView:D,isExperimentalNdvActive:P,getAgentNodeHeight:e=>R.getNodeHeight(o.id,e)}),B=p(()=>{switch(o.groupExpansionMode){case`all`:return k.value.map(e=>e.id);case`errored`:return k.value.filter(e=>Ft(e.nodeIds,ie)===`error`).map(e=>e.id);default:return[]}});function V(){for(let e of B.value)D.setGroupExpanded(e,!0)}W(B,V,{immediate:!0}),W(p(()=>l.value.allGroups.length===0?[]:Bn({allGroups:l.value.allGroups,nodes:w.value,getNodeById:e=>l.value.getNodeById(e),getNodeDisplaySize:e=>re.value[e],isGroupCollapsed:e=>D.isGroupCollapsed(e)})),e=>D.syncLayoutComponents(e),{immediate:!0});let ae=p(()=>Fe({allGroups:k.value,getNodeById:e=>l.value.getNodeById(e),getNodeDisplaySize:e=>re.value[e],getGroupVisualOffset:e=>D.getVisualOffsetForComponent(e),isGroupCollapsed:e=>D.isGroupCollapsed(e),readOnly:A.value||M.value,getNodeExecutionSnapshot:ie})),H=p(()=>[...te.value,...ae.value]);ne(rr,D),ne(_n,O),ne(bt,{isGroupCollapsed:e=>D.isGroupCollapsed(e),isDescriptionVisible:e=>O.isVisible(e)});let se=u(!1),{off:U}=g(()=>{se.value||(o.initialViewport||o.eventBus.emit(`fitView`),se.value=!0,U())}),ce=I(H,200),le=I(z,200);return t({executeContextMenuAction:(e,t)=>s.value?.executeContextMenuAction(e,t),ensureNodesAreVisible:e=>{let t=y.value;if(!t)return;let n=x.value.filter(t=>e.includes(t.id));if(n.length===0)return;let r=g(()=>{let i=v.value,a=t.clientWidth,s=t.clientHeight,c=ee(n),l=c.x*i.zoom+i.x,u=c.y*i.zoom+i.y,d=c.width*i.zoom,f=c.height*i.zoom;if(!(l>=0&&u>=0&&l+d<=a&&u+f<=s)){let e={x:-i.x/i.zoom,y:-i.y/i.zoom,width:a/i.zoom,height:s/i.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),o=Math.max(e.y+e.height,c.y+c.height);S({x:t,y:n,width:r-t,height:o-n},{padding:.15,duration:100})}o.eventBus.emit(`nodes:select`,{ids:e}),r.off()})}}),(t,n)=>(L(),h(`div`,{class:E(b(c).wrapper),"data-test-id":`canvas-wrapper`},[r(`div`,{id:`canvas`,class:E(b(c).canvas)},[a(Tr,m({id:e.id,ref:`canvas`,nodes:e.executing?b(ce):H.value,connections:e.executing?b(le):b(z),"render-data":d.value,"node-display-size-by-id":b(re),"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),F(t.$slots,`default`)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_ainvf_1`,canvas:`_canvas_ainvf_9`}}]]),pi=G(x({__name:`FocusSidebarTabs`,props:{modelValue:{default:`setup`},tabLabels:{default:()=>({})}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=Y(),i=st(),o=pe(),s=p(()=>o.isFeatureEnabled),{isFeatureEnabled:c}=Xr(),l=e,u=t,d=p(()=>{let e=[];return s.value&&e.push({label:l.tabLabels?.setup??n.baseText(`setupPanel.tabs.setup`),value:`setup`}),e.push({label:l.tabLabels?.focus??n.baseText(`setupPanel.tabs.focus`),value:`focus`}),c.value&&e.push({label:l.tabLabels?.evaluations??n.baseText(`setupPanel.tabs.evaluations`),value:`evaluations`}),e}),f=e=>{u(`update:modelValue`,e)};return(t,n)=>(L(),h(`div`,{class:E(t.$style.container),"data-test-id":`setup-panel-tabs`},[a(b(be),{"model-value":e.modelValue,options:d.value,size:`small`,"onUpdate:modelValue":f},null,8,[`model-value`,`options`]),r(`button`,{"data-test-id":`setup-panel-close`,class:E(t.$style[`close-button`]),onClick:n[0]||=e=>b(i).closeFocusPanel()},[a(b(q),{icon:`x`,size:`small`})],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_2u5bd_1`,"close-button":`_close-button_2u5bd_18`}}]]),mi=[`data-test-id`],hi=[`data-test-id`],gi=x({__name:`SetupCard`,props:S({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 n=e,i=A(e,`expanded`),c=Y(),l=Vt(),d=pe(),f=Z(),m=u(!1),g=()=>{m.value=!0},_=()=>{i.value=!i.value},v=()=>{n.highlightNodeIds.length>0&&d.setHighlightedNodes(n.highlightNodeIds)},x=()=>{n.highlightNodeIds.length>0&&d.clearHighlightedNodes()},S=p(()=>n.executableNode??null),{isExecuting:C,isButtonDisabled:w,label:T,buttonIcon:D,tooltipItems:O,execute:k,isInListeningState:j,listeningHint:N}=Vn(S),{webhookUrls:P}=yr(S),I=p(()=>n.executableNode?.type===`@n8n/n8n-nodes-langchain.chatTrigger`&&j.value?!1:!!n.executableNode),ee=p(()=>n.isTrigger&&j.value),te=async()=>{await k(),g()};return ie(()=>{d.clearHighlightedNodes()}),W(()=>n.isComplete,e=>{e&&m.value&&(l.track(`User completed setup step`,{template_id:f?.value?.meta?.templateId,workflow_id:f?.value?.workflowId,...n.telemetryPayload}),m.value=!1)}),t({markInteracted:g}),(t,n)=>(L(),h(`div`,{"data-test-id":e.cardTestId,class:E([t.$style.card,{[t.$style.collapsed]:!i.value,[t.$style.completed]:e.isComplete,[t.$style[`no-footer`]]:!e.showFooter&&i.value}]),onMouseenter:v,onMouseleave:x},[r(`header`,{"data-test-id":`${e.cardTestId}-header`,class:E(t.$style.header),onClick:_},[!i.value&&e.loading&&!e.isComplete?(L(),o(b(q),{key:0,"data-test-id":`${e.cardTestId}-loading-icon`,icon:`spinner`,spin:!0,class:E(t.$style[`loading-icon`]),size:`medium`},null,8,[`data-test-id`,`class`])):!i.value&&e.isComplete?(L(),o(b(q),{key:1,"data-test-id":`${e.cardTestId}-complete-icon`,icon:`check`,class:E(t.$style[`complete-icon`]),size:`medium`},null,8,[`data-test-id`,`class`])):F(t.$slots,`icon`,{key:2},void 0,!0),a(b($),{class:E(t.$style[`card-title`]),size:`medium`,color:`text-dark`},{default:H(()=>[y(R(e.title),1)]),_:1},8,[`class`]),r(`div`,{class:E(t.$style[`header-extra`])},[F(t.$slots,`header-extra`,{},void 0,!0)],2),a(b(q),{class:E(t.$style.chevron),icon:i.value?`chevrons-down-up`:`chevrons-up-down`,size:`large`,color:`text-light`},null,8,[`class`,`icon`])],10,hi),i.value?(L(),h(M,{key:0},[F(t.$slots,`card-description`,{},void 0,!0),a(U,{name:`callout-fade`},{default:H(()=>[ee.value?(L(),h(`div`,{key:0,class:E(t.$style[`callout-grid`])},[r(`div`,{class:E(t.$style[`callout-inner`])},[a(b(dn),{"data-test-id":`trigger-listening-callout`,theme:`secondary`,class:E(t.$style.callout)},{default:H(()=>[y(R(b(N)),1)]),_:1},8,[`class`])],2)],2)):s(``,!0)]),_:1}),e.isTrigger&&b(j)&&b(P).length>0?(L(),o(Nn,{key:0,urls:b(P)},null,8,[`urls`])):s(``,!0),F(t.$slots,`default`,{},void 0,!0),e.showFooter?(L(),h(`footer`,{key:1,class:E(t.$style.footer)},[e.isComplete?(L(),h(`div`,{key:0,class:E(t.$style[`footer-complete-check`])},[a(b(q),{icon:`check`,class:E(t.$style[`complete-icon`]),size:`large`},null,8,[`class`]),a(b($),{size:`medium`,color:`success`},{default:H(()=>[y(R(b(c).baseText(`generic.complete`)),1)]),_:1})],2)):s(``,!0),F(t.$slots,`footer-actions`,{},void 0,!0),I.value?(L(),o(lr,{key:1,label:b(T),icon:b(D),disabled:b(w)||e.isTestingCredential,loading:b(C),"tooltip-items":b(O),onClick:te},null,8,[`label`,`icon`,`disabled`,`loading`,`tooltip-items`])):s(``,!0)],2)):s(``,!0)],64)):s(``,!0)],42,mi))}}),_i=`_card_gqw1c_1`,vi=`_header_gqw1c_14`,yi=`_chevron_gqw1c_25`,bi=`_collapsed_gqw1c_34`,xi=`_footer_gqw1c_59`,Si=`_completed_gqw1c_86`,Ci=`_callout_gqw1c_93`,wi=G(gi,[[`__cssModules`,{$style:{card:_i,"no-footer":`_no-footer_gqw1c_10`,header:vi,"header-extra":`_header-extra_gqw1c_22`,chevron:yi,collapsed:bi,"card-title":`_card-title_gqw1c_38`,"complete-icon":`_complete-icon_gqw1c_43`,"loading-icon":`_loading-icon_gqw1c_52`,footer:xi,"footer-complete-check":`_footer-complete-check_gqw1c_66`,completed:Si,callout:Ci,"callout-grid":`_callout-grid_gqw1c_97`,"callout-inner":`_callout-inner_gqw1c_102`}}],[`__scopeId`,`data-v-119aeb94`]]),Ti=G(x({__name:`NodeSetupCard`,props:S({state:{},firstTriggerName:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:S([`credentialSelected`,`credentialDeselected`],[`update:expanded`]),setup(e,{emit:t}){let n=e,i=A(e,`expanded`),c=t,l=Y(),d=Ie(),f=pn(),m=Xt(),h=Z(),g=u(null),_=p(()=>d.getNodeType(n.state.node.type,n.state.node.typeVersion)),v=p(()=>!!n.state.credentialType),x=p(()=>n.state.isTrigger?!n.firstTriggerName||n.state.node.type===`n8n-nodes-base.manualTrigger`?null:n.state.node.name===n.firstTriggerName?n.state.node:null:m.isNodeExecutable(n.state.node,!0,[])?n.state.node:null),S=p(()=>{let e=n.state.selectedCredentialId;return!!e&&f.isCredentialTestPending(e)}),C=p(()=>!v.value||x.value!==null||n.state.isComplete),w=p(()=>Object.keys(n.state.parameterIssues).length>0),T=u([]),D=p(()=>T.value.length>0),O=p(()=>n.state.isTrigger&&!v.value&&!D.value),k=p(()=>v.value&&!D.value&&!O.value),j=p(()=>{let e=[];return O.value&&e.push(`trigger`),v.value&&e.push(`credential`),w.value&&e.push(`param`),{type:e,template_id:h.value.meta?.templateId,workflow_id:h.value.workflowId,node_types:(n.state.allNodesUsingCredential??[n.state.node]).map(e=>e.type),credential_type:n.state.credentialType,has_parameters:w.value,missing_parameters_count:Object.keys(n.state.parameterIssues).length}}),M=()=>{g.value?.markInteracted()},N=u(Object.keys(n.state.parameterIssues).length===0),P=p(()=>N.value||(n.state.additionalParameterNames?.length??0)>0&&Object.keys(n.state.parameterIssues).length===0),F=u(!n.state.isAutoApplied);W(()=>n.state.isAutoApplied??!1,e=>{e||(F.value=!0)}),W(i,(e,t)=>{t&&!e&&(Object.keys(n.state.parameterIssues).length===0&&(N.value=!0),n.state.isAutoApplied&&(F.value=!0))});let I=p(()=>D.value?n.state.isComplete&&P.value&&F.value:n.state.isComplete&&F.value),ee=p(()=>(n.state.allNodesUsingCredential??[n.state.node]).map(({id:e})=>e));return(t,n)=>(L(),o(wi,{ref_key:`setupCard`,ref:g,expanded:i.value,"onUpdate:expanded":n[3]||=e=>i.value=e,"is-complete":I.value,loading:S.value,title:e.state.node.name,"show-footer":C.value,"executable-node":x.value,"is-trigger":e.state.isTrigger,"is-testing-credential":S.value,"telemetry-payload":j.value,"highlight-node-ids":ee.value,"card-test-id":`node-setup-card`},ce({icon:H(()=>[k.value?(L(),o(ht,{key:0,"credential-type-name":e.state.credentialType,size:16},null,8,[`credential-type-name`])):(L(),o(Nr,{key:1,"node-type":_.value,size:16},null,8,[`node-type`]))]),"card-description":H(()=>[e.state.isTrigger&&v.value&&!e.state.selectedCredentialId?(L(),o(b($),{key:0,size:`medium`,color:`text-base`,class:`pl-xs pr-xs`},{default:H(()=>[y(R(b(l).baseText(`setupPanel.trigger.credential.note`)),1)]),_:1})):D.value?(L(),o(b($),{key:1,size:`medium`,color:`text-base`,class:`pl-xs pr-xs`},{default:H(()=>[y(R(b(l).baseText(`setupPanel.parameter.description`)),1)]),_:1})):s(``,!0)]),default:H(()=>[O.value?s(``,!0):(L(),o(On,{key:0,state:e.state},{default:H(()=>[r(`div`,{class:E(t.$style.content)},[a(yn,{state:e.state,"sticky-parameters":T.value,onCredentialSelected:n[0]||=e=>{M(),c(`credentialSelected`,e)},onCredentialDeselected:n[1]||=e=>{M(),c(`credentialDeselected`,e)},onInteracted:M,onParametersDiscovered:n[2]||=e=>T.value.push(...e)},null,8,[`state`,`sticky-parameters`])],2)]),_:1},8,[`state`]))]),_:2},[O.value?{name:`header-extra`,fn:H(()=>[a(b(xn),null,{content:H(()=>[y(R(b(l).baseText(`nodeCreator.nodeItem.triggerIconTitle`)),1)]),default:H(()=>[a(b(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`}}]]),Ei=[`onMouseenter`],Di=[`onClick`],Oi=G(x({__name:`NodeGroupSetupCard`,props:S({nodeGroup:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:S([`credentialSelected`,`credentialDeselected`],[`update:expanded`]),setup(e,{emit:t}){let n=e,i=A(e,`expanded`),l=t,d=Xt(),f=Z(),m=pe(),g=u(null),{parentNodeType:_,subnodeSections:v,allSections:x,getStickyParameters:S,addStickyParameters:C,expandedSections:w,toggleSection:D,hoveredSection:O,onSectionMouseEnter:k,onSectionMouseLeave:j,getSectionNodeType:N}=ir(c(n,`nodeGroup`)),P=p(()=>{let e=n.nodeGroup.parentNode;return d.isNodeExecutable(e,!0,[])?e:null}),F=p(()=>Dn({nodeGroup:n.nodeGroup})),I=p(()=>{let e=new Set([n.nodeGroup.parentNode.id]);for(let t of x.value)e.add(t.node.id);return[...e]}),ee=p(()=>O.value?(O.value.allNodesUsingCredential??[O.value.node]).map(e=>e.id):I.value);W(ee,e=>{i.value&&m.setHighlightedNodes(e)}),W(i,(e,t)=>{t&&!e&&(O.value=null)});let te=p(()=>x.value.some(Er)),z=p(()=>({type:[`node-group`],template_id:f.value.meta?.templateId,workflow_id:f.value.workflowId,node_types:x.value.map(e=>e.node.type),has_parameters:te.value})),ne=p(()=>P.value!==null),re=()=>{g.value?.markInteracted()};return(t,n)=>(L(),o(wi,{ref_key:`setupCard`,ref:g,expanded:i.value,"onUpdate:expanded":n[8]||=e=>i.value=e,"is-complete":F.value,title:e.nodeGroup.parentNode.name,"show-footer":ne.value,"executable-node":P.value,"telemetry-payload":z.value,"highlight-node-ids":ee.value,"card-test-id":`node-group-setup-card`},{icon:H(()=>[a(Nr,{"node-type":b(_),size:16},null,8,[`node-type`])]),default:H(()=>[e.nodeGroup.parentState?(L(),h(`div`,{key:0,class:E(t.$style.parentBody),onMouseenter:n[3]||=t=>b(k)(e.nodeGroup.parentState),onMouseleave:n[4]||=(...e)=>b(j)&&b(j)(...e)},[a(On,{state:e.nodeGroup.parentState},{default:H(()=>[a(yn,{state:e.nodeGroup.parentState,"sticky-parameters":b(S)(e.nodeGroup.parentState.node.id),onCredentialSelected:n[0]||=e=>{re(),l(`credentialSelected`,e)},onCredentialDeselected:n[1]||=e=>{re(),l(`credentialDeselected`,e)},onInteracted:re,onParametersDiscovered:n[2]||=t=>b(C)(e.nodeGroup.parentState.node.id,t)},null,8,[`state`,`sticky-parameters`])]),_:1},8,[`state`])],34)):s(``,!0),r(`div`,{class:E(t.$style.sections),"data-test-id":`node-group-sections`},[(L(!0),h(M,null,T(b(v),e=>(L(),h(`div`,{key:e.node.id,class:E(t.$style.section),"data-test-id":`node-group-section`,onMouseenter:t=>b(k)(e),onMouseleave:n[7]||=(...e)=>b(j)&&b(j)(...e)},[r(`div`,{class:E(t.$style.sectionHeader),"data-test-id":`node-group-section-header`,onClick:t=>b(D)(e.node.id)},[e.isComplete?(L(),o(b(q),{key:0,icon:`check`,size:`small`,class:E(t.$style.sectionCheck)},null,8,[`class`])):(L(),o(Nr,{key:1,"node-type":b(N)(e),size:14},null,8,[`node-type`])),a(b($),{class:E(t.$style.sectionTitle),size:`medium`,color:`text-dark`},{default:H(()=>[y(R(e.node.name),1)]),_:2},1032,[`class`]),a(b(q),{class:E(t.$style.sectionChevron),icon:b(w)[e.node.id]?`chevrons-down-up`:`chevrons-up-down`,size:`large`,color:`text-light`},null,8,[`class`,`icon`])],10,Di),b(w)[e.node.id]?(L(),h(`div`,{key:0,class:E(t.$style.sectionContent)},[a(On,{state:e},{default:H(()=>[a(yn,{state:e,"sticky-parameters":b(S)(e.node.id),onCredentialSelected:n[5]||=e=>{re(),l(`credentialSelected`,e)},onCredentialDeselected:n[6]||=e=>{re(),l(`credentialDeselected`,e)},onInteracted:re,onParametersDiscovered:t=>b(C)(e.node.id,t)},null,8,[`state`,`sticky-parameters`,`onParametersDiscovered`])]),_:2},1032,[`state`])],2)):s(``,!0)],42,Ei))),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`}}]]),ki=G(x({__name:`SetupPanelCards`,props:{showCompleted:{type:Boolean,default:!0}},setup(e){let t=e,n=Y(),i=Vt(),c=Ct(),l=Z(),{setupCards:u,isAllComplete:d,setCredential:f,unsetCredential:m,firstTriggerName:g}=ue();W(d,e=>{e&&i.track(`User completed all setup steps`,{template_id:l?.value?.meta?.templateId,workflow_id:c.value})});let _=e=>{f(e.credentialType,e.credentialId,e.nodeName)},v=e=>{m(e.credentialType,e.nodeName)},x=p(()=>t.showCompleted?u.value:u.value.filter(e=>!Dn(e))),S=e=>kr(e)?`group-${e.nodeGroup.parentNode.id}`:e.state.credentialType?`${e.state.credentialType}-${e.state.node.id}`:`${e.state.node.id}`,C=N({}),w=new Map,D=new Set,O=!1,k=e=>C[e]??!1,A=(e,t)=>e.find((e,n)=>n>t&&!Dn(e)),j=(e,t)=>{if(C[e]=t,!t){let t=u.value,n=t.findIndex(t=>S(t)===e),r=t[n];if(r&&Dn(r)&&D.has(e)){let e=A(t,n);e&&(C[S(e)]=!0)}}};return W(u,e=>{for(let t of e){let e=S(t);D.has(e)||(kr(t)?[...t.nodeGroup.parentState?[t.nodeGroup.parentState]:[],...t.nodeGroup.subnodeCards].some(Er)&&D.add(e):Er(t.state)&&D.add(e))}if(O){let t=A(e,-1);if(t&&!w.has(S(t))){let n=e.findIndex(e=>C[S(e)]);n>e.indexOf(t)&&(C[S(e[n])]=!1,C[S(t)]=!0)}for(let t=0;t<e.length;t++){let n=e[t],r=S(n),i=w.get(r)??!1,a=Dn(n),o=kr(n)?[...n.nodeGroup.parentState?[n.nodeGroup.parentState]:[],...n.nodeGroup.subnodeCards].some(e=>e.isAutoApplied):n.state.isAutoApplied;if(a&&!i&&!D.has(r)){if(C[r]=!1,!o||e.every((e,n)=>n===t||!C[S(e)])){let n=A(e,t);n&&(C[S(n)]=!0)}break}}}else{if(e.length===0)return;let t=A(e,-1);t&&(C[S(t)]=!0),O=!0}w.clear();for(let t of e)w.set(S(t),Dn(t))},{deep:!0,immediate:!0}),(e,t)=>(L(),h(`div`,{class:E(e.$style.container),"data-test-id":`setup-panel-cards-container`},[b(u).length===0?(L(),h(`div`,{key:0,class:E(e.$style[`empty-state`]),"data-test-id":`setup-cards-empty`},[a(b(q),{icon:`list-checks`,class:E(e.$style[`empty-icon`]),size:24,color:`text-base`},null,8,[`class`]),r(`div`,{class:E(e.$style[`empty-text`])},[a(b($),{size:`medium`,color:`text-base`,bold:!0,"data-test-id":`setup-cards-empty-heading`},{default:H(()=>[y(R(b(n).baseText(`setupPanel.empty.heading`)),1)]),_:1}),a(b($),{size:`medium`,color:`text-light`,"data-test-id":`setup-cards-empty-description`},{default:H(()=>[y(R(b(n).baseText(`setupPanel.empty.description`)),1)]),_:1})],2)],2)):(L(),h(`div`,{key:1,class:E(e.$style[`card-list`]),"data-test-id":`setup-cards-list`},[(L(!0),h(M,null,T(x.value,e=>(L(),h(M,{key:S(e)},[e.nodeGroup?(L(),o(Oi,{key:0,"node-group":e.nodeGroup,expanded:k(S(e)),"onUpdate:expanded":t=>j(S(e),t),onCredentialSelected:_,onCredentialDeselected:v},null,8,[`node-group`,`expanded`,`onUpdate:expanded`])):(L(),o(Ti,{key:1,state:e.state,"first-trigger-name":b(g),expanded:k(S(e)),"onUpdate:expanded":t=>j(S(e),t),onCredentialSelected:_,onCredentialDeselected:v},null,8,[`state`,`first-trigger-name`,`expanded`,`onUpdate:expanded`]))],64))),128)),b(d)?(L(),h(`div`,{key:0,class:E(e.$style[`complete-message`]),"data-test-id":`setup-cards-complete-message`},[a(b($),{size:`medium`,color:`text-base`},{default:H(()=>[y(R(b(n).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`}}]]),Ai=G(x({__name:`SetupPanel`,setup(e){let t=Y(),n=u(!0);return(e,i)=>(L(),h(`div`,{class:E(e.$style.container),"data-test-id":`setup-panel-container`},[r(`div`,{class:E(e.$style.content),"data-test-id":`setup-panel-cards`},[a(ki,{"show-completed":n.value},null,8,[`show-completed`])],2),r(`footer`,{class:E(e.$style.footer),"data-test-id":`setup-panel-footer`},[a(b($),{class:E(e.$style[`toggle-label`]),tag:`label`,size:`small`},{default:H(()=>[a(b(Ut),{modelValue:n.value,"onUpdate:modelValue":i[0]||=e=>n.value=e,size:`small`},null,8,[`modelValue`]),y(` `+R(b(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`}}]]),ji=G(x({__name:`ExperimentalNodeDetailsDrawer`,props:{node:{},nodeIds:{},isReadOnly:{type:Boolean}},emits:[`openNdv`,`contextMenuAction`],setup(e,{emit:t}){let n=t,i=Zn(p(()=>e.node)),c=ke(p(()=>e.nodeIds)),l=It(),d=u(0),f=p(()=>[e.node.id,d.value].join(`|`));return W(()=>l.value.activeNodeName,(e,t)=>{e===null&&t!==null&&(d.value+=1)}),ne(tn,i),(t,i)=>(L(),h(`div`,{class:E(t.$style.component)},[e.nodeIds.length>1?(L(),o(b($),{key:0,tag:`div`,color:`text-base`,class:E(t.$style.multipleNodes)},{default:H(()=>[r(`div`,null,R(e.nodeIds.length)+` nodes selected`,1),r(`ul`,{class:E(t.$style.multipleNodesActions)},[(L(!0),h(M,null,T(b(c),r=>(L(),h(`li`,{key:r.id,class:E(t.$style.multipleNodesAction)},[a(b(J),{variant:`subtle`,disabled:r.disabled,onClick:t=>n(`contextMenuAction`,r.id,e.nodeIds)},{default:H(()=>[y(R(r.label)+` `,1),r.shortcut?(L(),o(b(wn),m({key:0,ref_for:!0},r.shortcut),null,16)):s(``,!0)]),_:2},1032,[`disabled`,`onClick`])],2))),128))],2)]),_:1},8,[`class`])):e.node?(L(),o(Or,{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`}}]]),Mi=G(x({__name:`ExperimentalFocusPanelHeader`,props:{node:{},parameter:{},isExecutable:{type:Boolean},readOnly:{type:Boolean}},emits:[`execute`,`openNdv`,`clearParameter`,`renameNode`],setup(e,{emit:t}){let n=t,i=Ie(),c=Y(),l=p(()=>i.getNodeType(e.node.type,e.node.typeVersion));return(t,i)=>(L(),o(b($),{tag:`header`,size:`small`,bold:``,class:E(t.$style.component)},{default:H(()=>[a(Nr,{"node-type":l.value,size:16},null,8,[`node-type`]),r(`div`,{class:E(t.$style.breadcrumbs)},[e.parameter?(L(),h(M,{key:0},[a(b($),{size:`small`,color:`text-base`,bold:``},{default:H(()=>[y(R(e.node.name),1)]),_:1}),a(b($),{size:`small`,color:`text-light`},{default:H(()=>[...i[4]||=[y(`/`,-1)]]),_:1}),y(` `+R(e.parameter.displayName),1)],64)):(L(),o(b(Vr),{key:1,"model-value":e.node.name,"min-width":0,"max-width":500,placeholder:b(c).baseText(`ndv.title.rename.placeholder`),"read-only":e.readOnly,"onUpdate:modelValue":i[0]||=e=>n(`renameNode`,e)},null,8,[`model-value`,`placeholder`,`read-only`]))],2),e.parameter?(L(),o(b(Nt),{key:0,variant:`ghost`,icon:`x`,size:`small`,onClick:i[1]||=e=>n(`clearParameter`)})):(L(),o(b(Nt),{key:1,variant:`ghost`,icon:`expand`,size:`small`,onClick:i[2]||=e=>n(`openNdv`)})),e.isExecutable?(L(),o(_r,{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:i[3]||=e=>n(`execute`)},null,8,[`node-name`,`tooltip`])):s(``,!0)]),_:1},8,[`class`]))}}),[[`__cssModules`,{$style:{component:`_component_1ijt6_1`,breadcrumbs:`_breadcrumbs_1ijt6_9`}}]]),Ni=G(x({name:`FocusPanel`,__name:`FocusPanel`,props:{isCanvasReadOnly:{type:Boolean}},emits:[`focus`,`saveKeyboardShortcut`,`contextMenuAction`],setup(t,{emit:n}){let i=t,l=n,d=u(),f=Y(),m=Xt(),_=st(),v=Ct(),x=Z(),S=p(()=>Pn(x.value.documentId)),C=Ie(),w=pe(),T=Vt(),D=Je(),O=Kn(),k=Dr(),A=It(),N=j(v.value),{renameNode:P}=pr(),F=p(()=>_.resolvedParameter),I=u(``),ee=g(async()=>{if(!F.value)return!1;let e=F.value.parameterPath.split(`.`).slice(1,-1).join(`.`);return!!F.value.parameter.disabledOptions&&await D.shouldDisplayNodeParameter(F.value.node.parameters,F.value.node,F.value.parameter,e,`disabledOptions`)},!1),te=g(async()=>{if(!F.value)return!0;let e=F.value.parameterPath.split(`.`).slice(1,-1).join(`.`);return await D.shouldDisplayNodeParameter(F.value.node.parameters,F.value.node,F.value.parameter,e,`displayOptions`)},!0),z=p(()=>{if(!k.isNdvInFocusPanelEnabled||F.value)return F.value?.node;let e=N.getSelectedNodes.value[0];return e?.data?.render.type===ar.Default?(x?.value?.allNodes??[]).find(t=>t.id===e.id):void 0}),ne=p(()=>N.getSelectedNodes.value.length>1),re=p(()=>{if(!z.value||!te.value)return!1;let e=m.getForeignCredentialsIfSharingEnabled(z.value.credentials);return m.isNodeExecutable(z.value,!i.isCanvasReadOnly,e)}),{workflowRunData:ie}=Qr({node:z}),B=p(()=>{if(!z.value)return!0;let e=x?.value?.getParentNodes(z.value.name,`main`,1)[0];return!!(e&&ie.value&&Object.prototype.hasOwnProperty.bind(ie.value)(e))});function V(e){return F.value?dr(F.value.parameter,e):void 0}let ae=p(()=>F.value?.node.parameters.mode),oe=p(()=>V(`editor`)??void 0),se=p(()=>oe.value===`json`||F.value?.parameter.type===`json`?`json`:V(`editorLanguage`)??`javaScript`),U=p(()=>V(`rows`)),ce=p(()=>F.value?C.isToolNode(F.value?.node.type):!1),le=p(()=>!!F.value&&F.value.node.type===`n8n-nodes-base.html`),ue=p(()=>F.value&&nr(F.value.parameter,F.value.value)),fe=p(()=>ue.value?Cn(F.value)?F.value.value:F.value:``),me=p(()=>F.value?.node.type===Q),G=p(()=>i.isCanvasReadOnly||ee.value),he=p(()=>({$vars:O.variablesAsObject})),ge=p(()=>{if(F.value)return{nodeName:F.value.node.name,parameterPath:F.value.parameterPath}}),ve=p(()=>S.value.executingNode.isNodeExecuting(z.value?.name??``)),ye=p(()=>N.getSelectedNodes.value.map(e=>e.id)),be=p(()=>k.isNdvInFocusPanelEnabled?f.baseText(`nodeView.focusPanel.v2.noParameters.title`):f.baseText(`nodeView.focusPanel.noParameters.title`)),Se=p(()=>k.isNdvInFocusPanelEnabled?f.baseText(`nodeView.focusPanel.v2.noParameters.subtitle`):f.baseText(`nodeView.focusPanel.noParameters.subtitle`)),{resolvedExpression:we}=Pr({expression:fe,additionalData:he,stringifyObject:F.value&&F.value.parameter.type!==`multiOptions`});function K(e){F.value!==void 0&&D.updateNodeParameter(c(F.value.node.parameters),{value:e,name:F.value.parameterPath},e,F.value.node,ce.value)}async function Ee(){await e(),d.value&&(Ce(d.value)?d.value.focusOnInput():We(d.value)&&d.value.focus()),l(`focus`)}function De(e){if(F.value)switch(e){case`resetValue`:typeof F.value.parameter.default==`string`&&K(F.value.parameter.default),Ee();break;case`addExpression`:{let e=$e(F.value.value,F.value.parameter.type);K(typeof e==`string`?e:e.value),Ee();break}case`removeExpression`:{let e=nn(F.value.value,we.value,F.value.parameter.type,F.value.parameter.default,(F.value.parameter.options??[]).filter(Ye));typeof e==`string`?K(e):e&&typeof e.value==`string`&&K(e.value),Ee();break}case`formatHtml`:yt.emit(`format-html`);break}}function Oe(){if((k.isNdvInFocusPanelEnabled||w.isFeatureEnabled)&&F.value){_.unsetParameters(),T.track(`User removed focused param`,{source:`closeIcon`,parameters:_.focusedNodeParametersInTelemetryFormat});return}T.track(`User closed focus panel`,{source:`closeIcon`,parameters:_.focusedNodeParametersInTelemetryFormat}),_.closeFocusPanel()}function ke(){T.track(`User executed node from focus panel`,_.focusedNodeParametersInTelemetryFormat[0])}function Ae(e){I.value=e,K(e)}function je(){setTimeout(()=>{Ee()},50)}W([()=>_.lastFocusTimestamp,()=>ue.value],()=>je()),W(()=>F.value,e=>{if(e){let t=e.value;typeof t==`string`&&t!==I.value&&(I.value=t)}},{immediate:!0});function Me(){z.value&&A.value.setActiveNodeName(z.value.name,`focus_panel`)}function Ne(e){z.value&&P(z.value.name,e)}return(e,n)=>(L(),h(`div`,{"data-test-id":`focus-panel`,class:E([e.$style.content,{[e.$style.isNdvInFocusPanelEnabled]:b(k).isNdvInFocusPanelEnabled}])},[b(k).isNdvInFocusPanelEnabled&&z.value&&!ne.value?(L(),o(Mi,{key:0,node:z.value,parameter:F.value?.parameter,"is-executable":re.value,"read-only":t.isCanvasReadOnly,onExecute:ke,onOpenNdv:Me,onClearParameter:Oe,onRenameNode:Ne},null,8,[`node`,`parameter`,`is-executable`,`read-only`])):s(``,!0),F.value?(L(),h(`div`,{key:1,class:E(e.$style.content),"data-test-id":`focus-parameter`},[b(k).isNdvInFocusPanelEnabled?s(``,!0):(L(),h(`div`,{key:0,class:E(e.$style.tabHeader)},[r(`div`,{class:E(e.$style.tabHeaderText)},[a(b($),{color:`text-dark`,size:`small`},{default:H(()=>[y(R(F.value.parameter.displayName),1)]),_:1}),a(b($),{color:`text-base`,size:`xsmall`},{default:H(()=>[y(R(F.value.node.name),1)]),_:1})],2),r(`div`,{class:E(e.$style.buttonWrapper)},[a(_r,{"data-test-id":`node-execute-button`,"node-name":F.value.node.name,tooltip:`Execute ${F.value.node.name}`,disabled:!re.value,size:`small`,icon:`play`,square:!0,"hide-label":!0,"telemetry-source":`focus`,onExecute:ke},null,8,[`node-name`,`tooltip`,`disabled`]),a(b(q),{class:E(e.$style.closeButton),icon:`x`,color:`text-base`,size:`xlarge`,onClick:Oe},null,8,[`class`])],2)],2)),r(`div`,{class:E(e.$style.parameterDetailsWrapper)},[r(`div`,{class:E(e.$style.parameterOptionsWrapper)},[r(`div`,{class:E(e.$style.noExecutionDataTip)},[!B.value&&!ve.value?(L(),o(b(Sn),{key:0,class:E(e.$style.delayedShow),bold:!0},{default:H(()=>[y(R(b(f).baseText(`nodeView.focusPanel.noExecutionData`)),1)]),_:1},8,[`class`])):s(``,!0)],2),b(te)?(L(),o(Lt,{key:0,parameter:F.value.parameter,value:F.value.value,"is-read-only":G.value,"onUpdate:modelValue":De},null,8,[`parameter`,`value`,`is-read-only`])):s(``,!0)],2),typeof F.value.value==`string`?(L(),h(`div`,{key:0,class:E(e.$style.editorContainer)},[b(te)?ue.value?(L(),o(Te,{key:1,ref_key:`inputField`,ref:d,modelValue:I.value,"onUpdate:modelValue":n[0]||=e=>I.value=e,class:E(e.$style.editor),"is-read-only":G.value,path:F.value.parameterPath,"data-test-id":`expression-modal-input`,"target-node-parameter-context":ge.value,onChange:n[1]||=e=>Ae(e.value)},null,8,[`modelValue`,`class`,`is-read-only`,`path`,`target-node-parameter-context`])):[`json`,`string`].includes(F.value.parameter.type)?(L(),h(M,{key:2},[oe.value===`codeNodeEditor`?(L(),o(_e,{key:0,id:F.value.parameterPath,ref_key:`inputField`,ref:d,modelValue:I.value,"onUpdate:modelValue":[n[2]||=e=>I.value=e,Ae],class:E(e.$style.heightFull),mode:ae.value,"default-value":F.value.parameter.default,language:se.value,"is-read-only":G.value,"target-node-parameter-context":ge.value,"fill-parent":``},null,8,[`id`,`modelValue`,`class`,`mode`,`default-value`,`language`,`is-read-only`,`target-node-parameter-context`])):oe.value===`htmlEditor`?(L(),o(Bt,{key:1,ref_key:`inputField`,ref:d,modelValue:I.value,"onUpdate:modelValue":[n[3]||=e=>I.value=e,Ae],"is-read-only":G.value,rows:U.value,"disable-expression-coloring":!le.value,"disable-expression-completions":!le.value,fullscreen:``,"target-node-parameter-context":ge.value},null,8,[`modelValue`,`is-read-only`,`rows`,`disable-expression-coloring`,`disable-expression-completions`,`target-node-parameter-context`])):oe.value===`cssEditor`?(L(),o(ze,{key:2,ref_key:`inputField`,ref:d,modelValue:I.value,"onUpdate:modelValue":[n[4]||=e=>I.value=e,Ae],"is-read-only":G.value,rows:U.value,fullscreen:``,"target-node-parameter-context":ge.value},null,8,[`modelValue`,`is-read-only`,`rows`,`target-node-parameter-context`])):oe.value===`sqlEditor`?(L(),o(xe,{key:3,ref_key:`inputField`,ref:d,modelValue:I.value,"onUpdate:modelValue":[n[5]||=e=>I.value=e,Ae],dialect:V(`sqlDialect`),"is-read-only":G.value,rows:U.value,fullscreen:``,"target-node-parameter-context":ge.value},null,8,[`modelValue`,`dialect`,`is-read-only`,`rows`,`target-node-parameter-context`])):oe.value===`jsEditor`?(L(),o(Ke,{key:4,ref_key:`inputField`,ref:d,modelValue:I.value,"onUpdate:modelValue":[n[6]||=e=>I.value=e,Ae],"is-read-only":G.value,rows:U.value,"posthog-capture":me.value,"fill-parent":``},null,8,[`modelValue`,`is-read-only`,`rows`,`posthog-capture`])):F.value.parameter.type===`json`?(L(),o(de,{key:5,ref_key:`inputField`,ref:d,modelValue:I.value,"onUpdate:modelValue":[n[7]||=e=>I.value=e,Ae],"is-read-only":G.value,rows:U.value,fullscreen:``,"fill-parent":``},null,8,[`modelValue`,`is-read-only`,`rows`])):(L(),o(b(Lr),{key:6,ref_key:`inputField`,ref:d,modelValue:I.value,"onUpdate:modelValue":[n[8]||=e=>I.value=e,Ae],class:E(e.$style.editor),readonly:G.value,type:`textarea`,resize:`none`},null,8,[`modelValue`,`class`,`readonly`]))],64)):s(``,!0):(L(),h(`div`,{key:0,class:E([e.$style.content,e.$style.emptyContent])},[r(`div`,{class:E(e.$style.emptyText)},[a(b($),{color:`text-base`},{default:H(()=>[y(R(b(f).baseText(`nodeView.focusPanel.missingParameter`)),1)]),_:1})],2)],2))],2)):s(``,!0)],2)],2)):z.value&&b(k).isNdvInFocusPanelEnabled?(L(),o(ji,{key:2,node:z.value,"node-ids":ye.value,"is-read-only":G.value,onOpenNdv:Me,onContextMenuAction:n[9]||=(e,t)=>l(`contextMenuAction`,e,t)},null,8,[`node`,`node-ids`,`is-read-only`])):(L(),h(`div`,{key:3,class:E([e.$style.content,e.$style.emptyContent])},[r(`div`,{class:E(e.$style.focusParameterWrapper)},[r(`div`,{class:E(e.$style.iconWrapper)},[a(b(q),{class:E(e.$style.forceHover),icon:`panel-right`,size:`medium`},null,8,[`class`]),a(b(q),{class:E(e.$style.pointerIcon),icon:`mouse-pointer`,color:`text-dark`,size:`large`},null,8,[`class`])],2),a(b(q),{icon:`ellipsis-vertical`,size:`small`,color:`text-base`}),a(b(ln),{size:`small`,"model-value":`expression`,disabled:!0,options:[{label:b(f).baseText(`parameterInput.fixed`),value:`fixed`},{label:b(f).baseText(`parameterInput.expression`),value:`expression`}]},null,8,[`options`])],2),r(`div`,{class:E(e.$style.emptyText)},[a(b($),{color:`text-base`,size:`medium`,bold:!0},{default:H(()=>[y(R(be.value),1)]),_:1}),a(b($),{color:`text-base`,size:`small`},{default:H(()=>[y(R(Se.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`}}]]),Pi=k(Tt.EVALUATIONS_WIZARD_SIDEPANEL,()=>{let e=st(),t=p(()=>e.focusPanelActive&&e.selectedTab===`evaluations`),n=u(0),r=u([...oi]),i=u({}),a=u(``),o=u(!1),s=u(``),c=u(``),l=u({}),d=u({}),f=u([]),m=u([]),h=u([]),g=u(``),_=u(!0),v=u(`list`),y=u(null),b=u(null),x=u(null),S=u(null),C=u([]),w=u(!1),T=u(null),E=u(``),D=p(()=>o.value?c.value||``:a.value||``);function O(){n.value=0,r.value=[...oi],i.value={},a.value=``,o.value=!1,s.value=``,c.value=``,l.value={},d.value={},f.value=[],m.value=[],h.value=[],g.value=``,_.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 I(e,t){if(t===void 0){let t={...i.value};delete t[e],i.value=t;return}i.value={...i.value,[e]:t}}function L(e){a.value=e}function ee(){o.value||(o.value=!0,!c.value&&a.value&&(c.value=a.value))}function R(){o.value=!1,s.value=``}function te(e,t){l.value={...l.value,[e]:t}}function z(e,t){d.value={...d.value,[e]:t}}function ne(){w.value=!0}function re(){w.value=!1}function ie(e){let t=se();C.value=[...C.value,{...e,id:t}]}function B(e){C.value=C.value.filter(t=>t.id!==e)}function V(e,t){C.value=C.value.map(n=>n.id===e?{...n,...t}:n)}function ae(e){T.value=e}function oe(e){E.value=e}function H(){v.value=`list`,x.value=null}function U(){v.value=`create`,x.value=null}function W(e){if(v.value=`detail`,y.value=e,e===null)b.value=null,g.value=``;else{x.value=null,b.value=null;let t=m.value[e],n=f.value[e];t&&(l.value={...t}),n&&(d.value={...n}),g.value=h.value[e]??``}}function ce(e){g.value=e}function le(e){_.value=e}function ue(e){x.value=e}function de(e){S.value=e}function fe(e,t){y.value=e,b.value=t}function pe(e){let t={...e};for(let n of Object.keys(e))n in l.value&&(t[n]=l.value[n]);l.value=t}return{isOpen:t,activeStep:n,selectedMetricKeys:r,judgeSelectionByMetric:i,aiNodeName:a,isSliceMode:o,startNodeName:s,endNodeName:c,inputs:l,expectedValues:d,datasetExpectedByRow:f,datasetInputsByRow:m,datasetNamesByRow:h,caseName:g,prefillInputsFromExecution:_,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:I,setAiNodeName:L,enterSliceMode:ee,exitSliceMode:R,setInputValue:te,setExpectedValue:z,seedInputs:pe,openCustomCheckModal:ne,closeCustomCheckModal:re,addCustomCheck:ie,removeCustomCheck:B,updateCustomCheck:V,setActiveRunId:ae,setLastWorkflowId:oe,openList:H,openCreate:U,openDetail:W,setCaseName:ce,setPrefillInputsFromExecution:le,setSeedExecution:ue,setPendingSeedExecution:de,setActiveRow:fe}});function Fi(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 Ii(e){let t=Fn(),n=Z(),r=Ie(),i=Pi();return p(()=>{let a=n.value?.allNodes??[],o=a.filter(e=>r.isTriggerNode(e.type)),s=Ui(a),c=n.value?.connectionsBySourceNode??{},l=i.isSliceMode?i.startNodeName:i.aiNodeName,u=e=>Bi(e,a,c,l),d=Hi([i.seedExecution,t.value.activeExecution,t.value.lastSuccessfulExecution,le(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)?Gi(d,l,s):Ki(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]=on(f[e]);return u({fieldNames:p,values:m,hasExecution:!0})})}var Li=`input`,Ri=`chatInput`,zi=new Set([Hr,Wn]);function Bi(e,t,n,r){if(e.fieldNames.length>0)return e;let i=Vi(t,n,r);return{...e,fieldNames:[i],values:{...e.values,[i]:``}}}function Vi(e,t,n){if(!n)return Li;let r=[n,...$t(Ht(t),n,`main`)],i=new Map(e.map(e=>[e.name,e]));for(let e of r){let t=i.get(e);if(t&&zi.has(t.type))return Ri}return Li}function Hi(e){for(let t of e)if(t&&t.mode!==`evaluation`)return t}function Ui(e){return new Map(e.filter(e=>e.type===Ne).map(e=>[e.name,e.parameters?.source===`dataTable`]))}var Wi=[`row_id`,...qe];function Gi(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?[...Mt,...Wi]:Mt;return Object.fromEntries(Object.entries(r).filter(([e])=>!i.includes(e)))}function Ki(e,t,n,r=new Map){let i=$t(Ht(t),n,`main`,1),a=Fi(i,r)??i[0];if(a)return Gi(e,a,r)}function qi(){let e=Z();return p(()=>(e.value?.allNodes??[]).filter(e=>ti(e.type)).map(e=>({name:e.name,type:e.type})))}var Ji=[mt,Kr];function Yi(){let e=D(),t=Z(),n=Ie(),{runEntireWorkflow:r}=zn({router:e}),i=p(()=>(t.value?.allNodes??[]).filter(e=>e.disabled!==!0&&n.isTriggerNode(e.type)).map(e=>({name:e.name,type:e.type}))),a=p(()=>i.value.some(e=>Ji.includes(e.type)));function o(e){if(Ji.includes(e.type)){Pe.emit(`openChat`);return}r(`node`,e.name)}function s(){if(a.value){Pe.emit(`openChat`);return}r(`main`)}return{runWorkflow:s,runTriggerNode:o,triggerNodes:i,hasChatTrigger:a}}function Xi(){let e=Z(),t=pn();return p(()=>{let n=e.value?.allNodes??[];for(let e of n){let n=$r[e.type];if(!n)continue;let r=Zi(e.parameters?.model);if(!r)continue;let i=Qi(e.credentials);if(i&&t.allCredentials.some(e=>e.id===i))return{provider:n,model:r,credentialId:i}}return null})}function Zi(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 Qi(e){if(e){for(let t of Object.values(e))if(t?.id)return t.id}}var $i=1e3;function ea(){let e=Pi(),t=ct(),n=Z(),r=Ln(),i=hr(),a=qi(),o=qr(),s=Y(),c=u(!1),l=null,d;async function f(){let e=n.value?.workflowId;if(l&&d===e){await l;return}d=e,l=p().finally(()=>{d===e&&(l=null,d=void 0)}),await l}async function p(){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 Se(i.restApiContext,t);if(l())return;let r=ei(e.name),o=n.find(e=>e.name===r)??n[n.length-1];if(!o)return;if(h(o),o.datasetSource===`data_table`)try{let e=await mr(i.restApiContext,o.datasetRef.dataTableId,a,{take:$i});if(l())return;g(e.data)}catch(e){console.warn(`[evaluations wizard] failed to hydrate dataset rows`,e)}if(l())return;await m(t,l)}catch(e){l()||o.showError(e,s.baseText(`evaluations.wizardSidepanel.hydrate.error`))}finally{c.value=!1}}async function m(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 h(t){let n=[],r={},i=[];for(let e of t.metrics){let t=na(e);if(t){n.push(t.key),t.judge&&(r[t.key]=t.judge);continue}let a=ra(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 g(t){let n=t.map(e=>ta(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:f,isHydrating:c}}function ta(e){let t={},n={},r=``,i=new Set(Object.values(ii).map(e=>e.name));for(let[a,o]of Object.entries(e)){if(a===`id`||a===`createdAt`||a===`updatedAt`)continue;let e=on(o);a===`caseName`?r=e:i.has(a)?n[a]=e:t[a]=e}return{inputs:t,expected:n,name:r}}function na(e){if(e.type===`llm_judge`){let t=e.config.preset;if(t!==`correctness`&&t!==`helpfulness`)return;let n=$r[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 ra(e){if(e.type===`expression`)return{name:e.name,expression:e.config.expression}}function ia(e){return e.mode!==`evaluation`&&typeof e.id==`string`}var aa=20;function oa(){let e=kn(),t=Z();async function n(n){let r=t.value?.workflowId;if(!r)return;let i,a=0;for(let t=0;t<aa;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(ia));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 sa(){let e=Pi(),t=kn(),n=Z(),r=Vt(),{fetchLatestUserExecution:i}=oa();function a(t){e.inputs={},e.setPrefillInputsFromExecution(!0),e.setSeedExecution(t);let i=e.answerNodeName,a=t.data?.resultData?.runData,o=i&&a?ft(Gi(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 ca=[`data-test-id`,`aria-expanded`],la=[`data-test-id`],ua=G(x({__name:`ExecutionRow`,props:{execution:{},alt:{type:Boolean}},emits:[`create`],setup(e,{emit:t}){let n=e,i=t,c=Y(),l=Z(),d=Ie(),f=kn(),m=Pi(),g=u(!1),_=u(!1),v=u(null),x=p(()=>n.execution.mode===`manual`),S=p(()=>{let e=n.execution.startedAt;return e?we(e,{withSeconds:!0}):n.execution.id});async function C(){if(g.value=!g.value,g.value&&!v.value&&!_.value){_.value=!0;try{v.value=await f.fetchExecution(n.execution.id)??null}catch(e){console.warn(`[ExecutionRow] failed to load execution`,e)}finally{_.value=!1}}}let w=p(()=>{let e=v.value?.data?.resultData?.runData,t=m.aiNodeName;if(!e||!t)return{};let n=l.value?.allNodes??[],r=l.value?.connectionsBySourceNode??{},i=n.some(e=>e.name===t&&d.isTriggerNode(e.type)),a=Ui(n);return{input:i?Gi(e,t,a):Ki(e,r,t,a),output:Gi(e,t)}});function D(e){return e?Object.entries(e).map(([e,t])=>({name:e,value:on(t)})):[]}let O=p(()=>D(w.value.input)),k=p(()=>D(w.value.output));return(t,l)=>(L(),h(`div`,{class:E([t.$style.row,n.alt?t.$style.alt:null])},[r(`div`,{class:E(t.$style.header)},[r(`button`,{type:`button`,class:E(t.$style.chevron),"data-test-id":`tests-execution-toggle-${e.execution.id}`,"aria-expanded":g.value,onClick:C},[a(b(q),{icon:g.value?`chevron-down`:`chevron-right`,size:`small`,color:`text-base`},null,8,[`icon`])],10,ca),a(b($),{size:`small`,color:`text-dark`,class:E(t.$style.date)},{default:H(()=>[y(R(S.value),1)]),_:1},8,[`class`]),x.value?(L(),o(b(q),{key:0,icon:`flask-conical`,size:`small`,color:`text-light`,title:b(c).baseText(`evaluations.tests.executions.manualBadge`),"data-test-id":`tests-execution-manual-${e.execution.id}`},null,8,[`title`,`data-test-id`])):s(``,!0),r(`span`,{class:E(t.$style.spacer)},null,2),a(b(J),{size:`mini`,class:E([t.$style.createButton,g.value?t.$style.createButtonVisible:null]),"data-test-id":`tests-execution-create-${e.execution.id}`,onClick:l[0]||=e=>i(`create`)},{default:H(()=>[y(R(b(c).baseText(`evaluations.tests.executions.createCase`)),1)]),_:1},8,[`class`,`data-test-id`])],2),g.value?(L(),h(`div`,{key:0,class:E(t.$style.detail),"data-test-id":`tests-execution-detail-${e.execution.id}`},[_.value?(L(),h(`div`,{key:0,class:E(t.$style.loading)},[a(b(q),{icon:`spinner`,size:`small`,spin:!0})],2)):(L(),h(M,{key:1},[O.value.length>0?(L(),h(`div`,{key:0,class:E(t.$style.group)},[a(b($),{size:`xsmall`,bold:``,color:`text-light`,class:E(t.$style.groupLabel)},{default:H(()=>[y(R(b(c).baseText(`evaluations.tests.executions.input`)),1)]),_:1},8,[`class`]),(L(!0),h(M,null,T(O.value,e=>(L(),h(`div`,{key:`in-${e.name}`,class:E(t.$style.field)},[a(b($),{size:`xsmall`,color:`text-light`},{default:H(()=>[y(R(e.name),1)]),_:2},1024),a(b($),{size:`xsmall`,color:`text-dark`,class:E(t.$style.value)},{default:H(()=>[y(R(e.value),1)]),_:2},1032,[`class`])],2))),128))],2)):s(``,!0),k.value.length>0?(L(),h(`div`,{key:1,class:E(t.$style.group)},[a(b($),{size:`xsmall`,bold:``,color:`text-light`,class:E(t.$style.groupLabel)},{default:H(()=>[y(R(b(c).baseText(`evaluations.tests.executions.output`)),1)]),_:1},8,[`class`]),(L(!0),h(M,null,T(k.value,e=>(L(),h(`div`,{key:`out-${e.name}`,class:E(t.$style.field)},[a(b($),{size:`xsmall`,color:`text-light`},{default:H(()=>[y(R(e.name),1)]),_:2},1024),a(b($),{size:`xsmall`,color:`text-dark`,class:E(t.$style.value)},{default:H(()=>[y(R(e.value),1)]),_:2},1032,[`class`])],2))),128))],2)):s(``,!0)],64))],10,la)):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`}}]]),da={key:0,"data-test-id":`tests-list-executions`},fa=20,pa=G(x({__name:`TestCaseList`,setup(e){let t=Y(),n=Pi(),i=qr(),{createFromExecutionId:s,createManualCase:c}=sa(),{fetchUserExecutionCandidates:l}=oa(),d=u([]);async function f(){try{d.value=await l(fa)}catch(e){console.warn(`[TestCaseList] failed to load execution candidates`,e)}}z(()=>{f()});async function p(e){try{await s(e.id)}catch(e){i.showError(e,t.baseText(`evaluations.tests.seedFromExecution.error`))}}async function m(){try{await c()}catch(e){i.showError(e,t.baseText(`evaluations.tests.seedFromExecution.error`))}}return(e,i)=>(L(),h(`div`,{class:E(e.$style.container),"data-test-id":`tests-list`},[r(`div`,{class:E(e.$style.breadcrumb)},[r(`button`,{type:`button`,class:E(e.$style.breadcrumbRoot),"data-test-id":`tests-list-breadcrumb-root`,onClick:i[0]||=e=>b(n).openList()},[a(b($),{size:`small`,color:`text-base`},{default:H(()=>[y(R(b(t).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1})],2),a(b($),{size:`small`,color:`text-light`},{default:H(()=>[...i[1]||=[y(`/`,-1)]]),_:1}),a(b($),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[y(R(b(t).baseText(`evaluations.tests.newCase.title`)),1)]),_:1})],2),r(`div`,{class:E(e.$style.controls)},[a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(b(t).baseText(`evaluations.tests.chooseExecution`)),1)]),_:1})],2),d.value.length>0?(L(),h(`div`,da,[(L(!0),h(M,null,T(d.value,(e,t)=>(L(),o(ua,{key:e.id,execution:e,alt:t%2==0,onCreate:t=>p(e)},null,8,[`execution`,`alt`,`onCreate`]))),128))])):(L(),h(`div`,{key:1,class:E(e.$style.empty)},[a(b($),{size:`small`,color:`text-light`},{default:H(()=>[y(R(b(t).baseText(`evaluations.tests.executions.empty`)),1)]),_:1})],2)),r(`div`,{class:E(e.$style.manual)},[a(b($),{size:`small`,color:`text-light`},{default:H(()=>[y(R(b(t).baseText(`evaluations.tests.createManually.hint`)),1)]),_:1}),a(b(J),{variant:`outline`,size:`xsmall`,"data-test-id":`tests-list-create-manual`,onClick:m},{default:H(()=>[y(R(b(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`}}]]),ma={};for(let[e,t]of Object.entries($r))ma[t]=e;function ha(e){let t=[];for(let n of e.selectedMetrics){let r=ci.find(e=>e.key===n);if(!r)continue;let i=_a(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=va(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:ei(e.workflowName),startNodeName:e.startNodeName,endNodeName:e.endNodeName,metrics:t,datasetSource:`data_table`,datasetRef:{dataTableId:e.dataTableId}}}}function ga(e){return e.replace(/\\/g,`\\\\`).replace(/'/g,`\\'`)}function _a(e,t,n){let r=se(),i=ga(n.upstreamNodeName),a=ga(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(ni.has(e)){let i=n.judgeSelectionByMetric[e];if(!i)return{kind:`err`,reason:`Missing model selection for ${t}`};let a=ma[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 va(e){return{kind:`ok`,metric:{id:se(),name:e.name,type:`expression`,config:{expression:ya(e.expression),outputType:`numeric`}}}}function ya(e){let t=e.trim();return t.length===0||t.startsWith(`=`)?t:t.startsWith(`{{`)?`=${t}`:`={{ ${t} }}`}function ba(){let e=Pi(),t=Z(),n=Ie(),r=hr(),i=qr(),a=Y();async function o(e,t){let n=(await Se(r.restApiContext,e)).find(e=>e.name===t.name);if(!n)return{created:!0,id:(await Ot(r.restApiContext,e,t)).id};let i=s(n);return{created:!1,id:(await Wt(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 it(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 qt(r.restApiContext,o.id,t,e);a.push(n.id)}return{id:o.id,created:!1,addedColumnIds:a}}return{id:(await Ge(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 Gr(r.restApiContext,t,n.createdConfigId)}catch(e){i(`delete config`,e)}else if(n.priorConfigSnapshot)try{await Wt(r.restApiContext,t,n.priorConfigSnapshot.id,n.priorConfigSnapshot.payload)}catch(e){i(`restore prior config`,e)}let a=!1;if(n.createdTableId)try{await zt(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 Ve(r.restApiContext,t.tableId,[t.rowId],e)}catch(e){i(`delete data table row`,e)}else if(t.kind===`update`)try{await sn(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 Qt(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=Ht(i),s=new Set(a.filter(e=>e.type===Ne).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,...$t(o,t,`main`)],c,l;for(let e of i){if(r.has(e))continue;let t=Fi($t(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=$t(o,c,`main`,1),d=Fi(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 xa(e){if(typeof e==`number`)return e;if(typeof e==`string`&&/^\d+$/.test(e))return Number(e)}function Sa(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 Ca(e){let t={};for(let[n,r]of Object.entries(e))n===`id`||n===`createdAt`||n===`updatedAt`||(t[n]=r);return t}var wa=Promise.resolve();function Ta(){let e=Pi(),t=Z(),n=hr(),r=qr(),i=Y(),a=Vt(),o=Ii(),s=ct(),{ensureConfig:c,ensureDataTable:l,rollback:d,resolveSlice:f,showPersistError:p}=ba(),m=u(!1),h=0;async function g(e){h+=1,m.value=!0;let t=wa.then(e),n=t.then(()=>void 0,()=>void 0);return wa=n,n.then(()=>{--h,h===0&&(m.value=!1)}),await t}async function _(){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=f();if(!s.ok)return{ok:!1,error:Error(s.reason)};let u=o.value.fieldNames,p=li(e.selectedMetricKeys),m=Sa([...u,...p.map(e=>e.name),ai]),h=ha({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:`__placeholder__`});if(!h.ok)return{ok:!1,error:Error(h.reason)};let g=ei(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 u)o[t]=e.inputs[t]??``;for(let t of p)o[t.name]=e.expectedValues[t.name]??``;o[ai]=e.caseName??``;let d;if(C){let e=(await mr(n.restApiContext,t.id,i,{take:1})).count,r=xa((await Ze(n.restApiContext,t.id,o,i))[0]?.id);b={kind:`insert`,tableId:t.id,rowId:r},d=e}else{let r=e.activeRowIndex;if(r===null)throw Error(`Cannot resolve active row index for edit`);let a=await mr(n.restApiContext,t.id,i,{skip:r,take:1}),s=e.activeRowId??xa(a.data[0]?.id)??null;if(s===null)throw Error(`Could not resolve row id for index ${r}`);let c=Ca(a.data[0]??{});b={kind:`update`,tableId:t.id,rowId:s,priorData:c},await sn(n.restApiContext,t.id,s,o,i),d=r}let f=ha({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});if(!f.ok)throw Error(f.reason);let h=await c(a,{...f.dto,name:_});return h.created?x=h.id:S={id:h.id,payload:h.priorPayload},b?.kind===`insert`&&e.setActiveRow(d,b.rowId??null),{ok:!0,configId:h.id,resolvedIndex:d,isNewCase:C}}catch(e){return await d(i,a,{createdTableId:v,addedColumns:y,rowMutation:b,createdConfigId:x,priorConfigSnapshot:S}),{ok:!1,error:e}}}async function v(e){let t=await _();return t.ok?!0:(e?.silent||p(t.error),!1)}async function y(n=`initial`){let o=await _();if(!o.ok)return p(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=f();if(!s.ok)return n?.silent||p(Error(s.reason)),null;let u=o.value.fieldNames,d=li(e.selectedMetricKeys),m=Sa([...u,...d.map(e=>e.name),ai]),h=ei(r.name);try{let t=await l(h,i,m),o=ha({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||p(Error(o.reason)),null)}catch(e){return n?.silent?console.warn(`[evaluations] silent saveConfig failed`,e):p(e),null}}async function x(){let o=t.value,c=o?.workflowId;if(!c)return p(Error(`Missing workflow context`)),!1;await b({silent:!0});let l;try{let e=await Se(n.restApiContext,c),t=ei(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 p(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 Se(n.restApiContext,o),c=ei(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=xa((await mr(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 Ve(n.restApiContext,u,[d],i),a.track(`User deleted evaluation test case`,{workflow_id:o,row_index:s}),!0}catch(e){return p(e),!1}}async function C(e){return await g(async()=>await v(e))}async function w(e=`initial`){return await g(async()=>await y(e))}async function T(e){return await g(async()=>await b(e))}async function E(){return await g(async()=>await x())}async function D(){return await g(async()=>await S())}return{persistAndRunCase:w,saveCase:C,runAll:E,saveConfig:T,deleteCase:D,isPersisting:m}}var Ea=[`data-test-id`],Da=[`data-test-id`],Oa=[`data-test-id`],ka=[`data-test-id`],Aa=G(x({__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`],n={promptTokens:`evaluations.tests.results.metric.promptTokens`,completionTokens:`evaluations.tests.results.metric.completionTokens`,totalTokens:`evaluations.tests.results.metric.totalTokens`,executionTime:`evaluations.tests.results.metric.executionTime`},i=e,c=Y(),l=Pi(),d=ct(),f=kn(),m=Z(),g=p(()=>{let e=m.value?.workflowId;return e?[...d.testRunsByWorkflowId[e]??[]].sort((e,t)=>new Date(e.createdAt).getTime()-new Date(t.createdAt).getTime()):[]}),_=p(()=>i.runId===null?g.value[g.value.length-1]:g.value.find(e=>e.id===i.runId)),v=p(()=>{let e=_.value?.id;return e?g.value.findIndex(t=>t.id===e)+1:0}),x=p(()=>{let e=_.value;return e?we(e.runAt??e.createdAt):``}),S=p(()=>{let e=_.value?.id;if(e)return Object.values(d.testCaseExecutionsById??{}).find(t=>t.testRunId===e&&(t.runIndex??0)===i.index)}),C=p(()=>{let e=_.value;if(!e||![`new`,`running`].includes(e.status))return!1;let n=S.value?.status;return!n||!t.includes(n)}),w=p(()=>!!(S.value&&t.includes(S.value.status))&&!C.value),D=p(()=>S.value?.status===`success`),O=p(()=>w.value&&!D.value),k=p(()=>{let e=S.value?.metrics;return e?rt(e).map(t=>{let n=e[t],r=ci.find(e=>e.key===t),i=r?c.baseText(si(r)):t,a=Rt(t);return a===`aiBased`?{key:t,label:i,text:kt(n,{category:a}),passed:n>=3}:{key:t,label:i,text:ut(n,{category:a}),passed:je(n)}}):[]}),A=p(()=>Be(S.value?.metrics).map(({key:e,value:t})=>({key:e,label:n[e]?c.baseText(n[e]):e,text:e===`executionTime`?Le(t):Kt(t,{withUnit:!1})}))),j=p(()=>l.answerNodeName),N=u(null);async function P(e){try{N.value=await f.fetchExecution(e)??null}catch(e){console.warn(`[TestCaseRunResult] failed to load case execution`,e)}}W([()=>i.expanded,O,()=>S.value?.executionId],([e,t,n])=>{!n||!e&&!t||N.value?.id!==n&&P(n)},{immediate:!0});let F=p(()=>_t(N.value,j.value,S.value?.outputs)),I=p(()=>{if(!O.value)return``;let e=N.value?.data?.resultData?.error?.message;if(e)return e;let t=ri(S.value?.errorCode);return t&&c.exists(t)?c.baseText(t,{interpolate:{link:``}}).trim():c.baseText(`evaluations.tests.results.runFailed`)});return(t,n)=>C.value?(L(),h(`div`,{key:0,class:E([t.$style.runSection,{[t.$style.separated]:e.separated}]),"data-test-id":`tests-result-running-${e.index}`},[r(`div`,{class:E(t.$style.runLine)},[a(b(q),{icon:`spinner`,size:`small`,spin:!0,color:`text-light`}),a(b($),{size:`small`,color:`text-light`},{default:H(()=>[y(R(b(c).baseText(`evaluations.tests.results.running`)),1)]),_:1})],2)],10,Ea)):w.value?(L(),h(`div`,{key:1,class:E([t.$style.runSection,{[t.$style.separated]:e.separated}]),"data-test-id":`tests-result-result-${e.index}`},[r(`div`,{class:E(t.$style.runLine)},[a(b(q),{icon:D.value?`check`:`x`,size:`small`,color:D.value?`success`:`danger`},null,8,[`icon`,`color`]),a(b($),{size:`small`,color:D.value?`success`:`danger`},{default:H(()=>[y(R(b(c).baseText(`evaluations.tests.results.runLabel`,{interpolate:{number:String(v.value),date:x.value}})),1)]),_:1},8,[`color`])],2),O.value&&I.value?(L(),o(b($),{key:0,size:`small`,color:`danger`,class:E(t.$style.failureReason),"data-test-id":`tests-result-error-${e.index}`},{default:H(()=>[y(R(I.value),1)]),_:1},8,[`class`,`data-test-id`])):s(``,!0),e.expanded?(L(),o(b($),{key:1,size:`small`,color:`text-light`},{default:H(()=>[y(R(b(c).baseText(`evaluations.tests.detail.output`)),1)]),_:1})):s(``,!0),r(`div`,{class:E(t.$style.badges)},[(L(!0),h(M,null,T(k.value,n=>(L(),h(`span`,{key:n.key,class:E([t.$style.badge,n.passed?t.$style.badgePass:t.$style.badgeFail]),"data-test-id":`tests-result-badge-${e.index}-${n.key}`},[y(R(n.label)+` `,1),r(`strong`,null,R(n.text),1)],10,Oa))),128))],2),e.expanded&&F.value?(L(),o(b($),{key:2,size:`small`,color:`text-dark`,class:E(t.$style.output)},{default:H(()=>[y(R(F.value),1)]),_:1},8,[`class`])):s(``,!0),e.expanded&&A.value.length>0?(L(),h(`div`,{key:3,class:E(t.$style.operational),"data-test-id":`tests-result-operational-${e.index}`},[(L(!0),h(M,null,T(A.value,e=>(L(),o(b($),{key:e.key,size:`xsmall`,color:`text-light`},{default:H(()=>[y(R(e.label)+` `+R(e.text),1)]),_:2},1024))),128))],10,ka)):s(``,!0)],10,Da)):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`}}]]),ja=[`data-test-id`],Ma=[`data-test-id`],Na=[`data-test-id`,`onClick`],Pa=[`data-test-id`],Fa=G(x({__name:`TestCaseDetail`,setup(e){let t={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`},n=Pi(),i=ct(),c=Z(),l=Y(),d=mn(),{selectedMetricKeys:f,customChecks:m,activeRowIndex:g,activeRunId:_,expectedValues:v,inputs:x,aiNodeName:S,caseName:C}=ae(n),{persistAndRunCase:w,saveCase:D,deleteCase:O,isPersisting:k}=Ta(),A=Ii(),j=u(!1),N=B(async()=>{j.value&&await D({silent:!0})&&(j.value=!1)},nt(Jn.API.AUTOSAVE));function P(e,t){n.setInputValue(e,t),j.value=!0,N()}function F(e,t){n.setExpectedValue(e,t),j.value=!0,N()}function I(e){n.setCaseName(e),j.value=!0,N()}let ee=p(()=>n.datasetInputsByRow.length>0||_.value!==null),te=p(()=>{let e=A.value.fieldNames[0];return(e?x.value[e]:``)||l.baseText(`evaluations.tests.newCase.title`)}),z=p(()=>[{id:`delete`,label:l.baseText(`evaluations.tests.detail.delete`),disabled:g.value===null}]);function ne(e){e===`delete`&&oe()}async function re(){await ie(),n.openList()}async function ie(){j.value&&(j.value=!1,await D({silent:!0}))}async function V(){await ie(),n.openCreate()}async function oe(){await d.confirm(l.baseText(`evaluations.tests.detail.delete.confirm.message`),l.baseText(`evaluations.tests.detail.delete.confirm.title`),{confirmButtonText:l.baseText(`generic.delete`),cancelButtonText:l.baseText(`generic.cancel`)})===`confirm`&&(j.value=!1,await O()&&n.openList())}let se=p(()=>ci.filter(e=>f.value.includes(e.key)));function U(e){return l.baseText(t[e])}function ce(e){return ii[e]}let le=p(()=>{let e=S.value;return e?$t(Ht(c.value?.connectionsBySourceNode??{}),e,Yn.AiTool,1):[]}),ue=p(()=>new Set((v.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),F(`expectedTools`,Array.from(t).join(`, `))}let fe=u(!0),pe=u(!0),me=p(()=>_.value),G=p(()=>{let e=me.value,t=g.value;return e===null||t===null?!1:Object.values(i.testCaseExecutionsById??{}).some(n=>n.testRunId===e&&(n.runIndex??0)===t)}),he=p(()=>{let e=me.value;if(e===null)return!1;let t=i.testRunsById[e]?.status;return!!t&&![`new`,`running`].includes(t)}),ge=u(!1);W([G,he],([e,t])=>{(e||t)&&(ge.value=!1)});let _e=p(()=>g.value!==null&&(G.value||ge.value)),ve=p(()=>g.value);async function ye(){ge.value=!0,await w(_.value?`run_again`:`initial`)?(fe.value=!1,pe.value=!0):ge.value=!1}return(e,t)=>(L(),h(`div`,{class:E(e.$style.detail)},[r(`header`,{class:E(e.$style.header)},[r(`div`,{class:E(e.$style.breadcrumb)},[r(`button`,{type:`button`,class:E(e.$style.breadcrumbRoot),"data-test-id":`tests-detail-breadcrumb-root`,onClick:re},[a(b($),{size:`small`,color:`text-base`},{default:H(()=>[y(R(b(l).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1})],2),a(b($),{size:`small`,color:`text-light`},{default:H(()=>[...t[2]||=[y(`/`,-1)]]),_:1}),a(b(Vr),{"model-value":b(C),placeholder:te.value,"max-width":`100%`,class:E(e.$style.caseName),"data-test-id":`tests-detail-name`,"onUpdate:modelValue":I},null,8,[`model-value`,`placeholder`,`class`])],2),a(b(br),{items:z.value,"activator-icon":`ellipsis-vertical`,"activator-size":`small`,"data-test-id":`tests-detail-menu`,onSelect:ne},null,8,[`items`]),ee.value?(L(),o(b(J),{key:0,variant:`outline`,size:`xsmall`,"data-test-id":`tests-detail-create-case`,onClick:V},{default:H(()=>[y(R(b(l).baseText(`evaluations.tests.results.createCase`)),1)]),_:1})):s(``,!0),a(b(J),{variant:`solid`,size:`xsmall`,loading:b(k),"data-test-id":`tests-detail-run`,onClick:ye},{default:H(()=>[y(R(b(l).baseText(`evaluations.tests.detail.run`)),1)]),_:1},8,[`loading`])],2),r(`div`,{class:E(e.$style.body)},[a(b(ot),{modelValue:fe.value,"onUpdate:modelValue":t[0]||=e=>fe.value=e,title:b(l).baseText(`evaluations.tests.detail.config`)},{default:H(()=>[r(`div`,{class:E(e.$style.paneContent),"data-test-id":`tests-detail-config`},[r(`div`,{class:E(e.$style.block)},[r(`div`,{class:E(e.$style.sentence)},[a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(b(l).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),a(b($),{size:`small`,color:`text-dark`,bold:``,"data-test-id":`tests-detail-ai-node`},{default:H(()=>[y(R(b(S)),1)]),_:1}),a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(b(l).baseText(`evaluations.tests.detail.receivesInput`)),1)]),_:1})],2),r(`div`,{class:E(e.$style.indented)},[(L(!0),h(M,null,T(b(A).fieldNames,t=>(L(),h(`div`,{key:`input-${t}`,class:E(e.$style.field),"data-test-id":`tests-detail-input-${t}`},[a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(t),1)]),_:2},1024),a(b(Lr),{"model-value":b(x)[t]??``,type:`textarea`,rows:2,size:`small`,"onUpdate:modelValue":e=>P(t,e)},null,8,[`model-value`,`onUpdate:modelValue`])],10,ja))),128))],2)],2),r(`div`,{class:E(e.$style.block)},[a(b($),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[y(R(b(l).baseText(`evaluations.tests.detail.output`)),1)]),_:1}),r(`div`,{class:E(e.$style.indented)},[(L(!0),h(M,null,T(se.value,t=>(L(),h(`div`,{key:t.key,class:E(e.$style.metric),"data-test-id":`tests-detail-metric-${t.key}`},[a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(U(t.key)),1)]),_:2},1024),t.key===`toolsUsed`?(L(),h(`div`,{key:0,class:E(e.$style.tools)},[(L(!0),h(M,null,T(le.value,t=>(L(),h(`button`,{key:t,type:`button`,class:E(e.$style.toolItem),"data-test-id":`tests-detail-tool-${t}`,onClick:e=>de(t)},[r(`span`,{class:E([e.$style.box,ue.value.has(t)?e.$style.boxChecked:null])},[ue.value.has(t)?(L(),o(b(q),{key:0,icon:`check`,size:`xsmall`})):s(``,!0)],2),a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(t),1)]),_:2},1024)],10,Na))),128)),le.value.length===0?(L(),o(b($),{key:0,size:`small`,color:`text-light`},{default:H(()=>[y(R(b(l).baseText(`evaluations.tests.detail.tools.empty`)),1)]),_:1})):s(``,!0)],2)):ce(t.key)?(L(),o(b(Lr),{key:1,"model-value":b(v)[ce(t.key).name]??``,type:`textarea`,rows:3,size:`small`,"data-test-id":`tests-detail-expected-${ce(t.key).name}`,"onUpdate:modelValue":e=>F(ce(t.key).name,e)},null,8,[`model-value`,`data-test-id`,`onUpdate:modelValue`])):s(``,!0)],10,Ma))),128)),(L(!0),h(M,null,T(b(m),t=>(L(),h(`div`,{key:t.id,class:E(e.$style.metric),"data-test-id":`tests-detail-custom-${t.id}`},[a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(b(l).baseText(`evaluations.tests.metric.custom.sentence`)),1)]),_:1}),a(b($),{size:`small`,color:`text-dark`,class:E(e.$style.expression),"data-test-id":`tests-detail-custom-expression-${t.id}`},{default:H(()=>[y(R(t.expression),1)]),_:2},1032,[`class`,`data-test-id`])],10,Pa))),128))],2)],2)],2)]),_:1},8,[`modelValue`,`title`]),_e.value&&ve.value!==null?(L(),o(b(ot),{key:0,modelValue:pe.value,"onUpdate:modelValue":t[1]||=e=>pe.value=e,title:b(l).baseText(`evaluations.tests.detail.latestRun`)},{default:H(()=>[r(`div`,{class:E(e.$style.paneContent),"data-test-id":`tests-detail-results`},[a(Aa,{index:ve.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`}}]]),Ia=[`data-test-id`],La=G(x({__name:`SuiteConfig`,setup(e){let t=[`correctness`,`stringSimilarity`,`toolsUsed`],n=Y(),i=Pi(),s=qi(),{saveConfig:c}=Ta(),{aiNodeName:l,selectedMetricKeys:u,customChecks:d,judgeSelectionByMetric:f}=ae(i),m=p(()=>ci.filter(e=>u.value.includes(e.key))),g=p(()=>{let e=t.filter(e=>!u.value.includes(e)).map(e=>{let t=ci.find(t=>t.key===e);return{id:e,label:t?n.baseText(si(t)):e}});return e.push({id:`custom`,label:n.baseText(`evaluations.tests.detail.addMetric.custom`)}),e});function _(e){if(e===`custom`){i.addCustomCheck({name:`Custom ${d.value.length+1}`,expression:``});return}i.toggleMetric(e)}function v(e){u.value.includes(e)&&i.toggleMetric(e)}function x(e){i.setAiNodeName(e),i.exitSliceMode()}let S=B(()=>{c({silent:!0})},nt(Jn.API.AUTOSAVE));return W([l,u,d,f],()=>{S()},{deep:!0}),(e,t)=>(L(),h(`section`,{class:E(e.$style.config),"data-test-id":`tests-suite-config`},[r(`div`,{class:E(e.$style.sentence)},[a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(b(n).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),a(b(At),{"model-value":b(l),size:`small`,filterable:``,placeholder:b(n).baseText(`evaluations.tests.chooseAiNode.placeholder`),class:E(e.$style.nodeSelect),"data-test-id":`tests-suite-config-ai-node-select`,"onUpdate:modelValue":x},{default:H(()=>[(L(!0),h(M,null,T(b(s),e=>(L(),o(b(Yt),{key:e.name,label:e.name,value:e.name},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`class`]),a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(b(n).baseText(`evaluations.tests.suite.receivesInput`)),1)]),_:1})],2),r(`div`,{class:E(e.$style.checks)},[(L(!0),h(M,null,T(m.value,e=>(L(),o(b(J),{key:e.key,variant:`subtle`,size:`small`,icon:`x`,"aria-label":b(n).baseText(`evaluations.tests.detail.removeMetric`),"data-test-id":`tests-suite-config-metric-${e.key}`,onClick:t=>v(e.key)},{default:H(()=>[y(R(b(n).baseText(b(si)(e))),1)]),_:2},1032,[`aria-label`,`data-test-id`,`onClick`]))),128)),(L(!0),h(M,null,T(b(d),t=>(L(),h(`div`,{key:t.id,class:E(e.$style.customRow),"data-test-id":`tests-suite-config-custom-${t.id}`},[a(b(Lr),{"model-value":t.expression,type:`text`,size:`small`,class:E(e.$style.expressionInput),placeholder:b(n).baseText(`evaluations.tests.metric.custom.placeholder`),"onUpdate:modelValue":e=>b(i).updateCustomCheck(t.id,{expression:e})},null,8,[`model-value`,`class`,`placeholder`,`onUpdate:modelValue`]),a(b(J),{variant:`ghost`,size:`small`,"icon-only":``,icon:`x`,"aria-label":b(n).baseText(`evaluations.tests.detail.removeMetric`),"data-test-id":`tests-suite-config-custom-remove-${t.id}`,onClick:e=>b(i).removeCustomCheck(t.id)},null,8,[`aria-label`,`data-test-id`,`onClick`])],10,Ia))),128)),a(b(br),{items:g.value,placement:`bottom-start`,"data-test-id":`tests-suite-config-add-metric`,onSelect:_},{activator:H(()=>[a(b(J),{variant:`ghost`,size:`small`,icon:`plus`},{default:H(()=>[y(R(b(n).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`}}]]),Ra=[`data-test-id`],za=[`data-test-id`],Ba=[`aria-expanded`,`data-test-id`],Va=G(x({__name:`TestCaseResultCard`,props:{index:{}},setup(e){let t=e,n=Y(),i=Pi(),o=u(!1),c=p(()=>i.datasetNamesByRow[t.index]||n.baseText(`evaluations.tests.list.caseLabel`,{interpolate:{index:t.index+1}})),l=p(()=>{let e=i.datasetInputsByRow[t.index]??{};return Object.entries(e).map(([e,t])=>({name:e,value:String(t)}))});function d(){o.value=!o.value}function f(){i.openDetail(t.index)}return(t,u)=>(L(),h(`div`,{class:E(t.$style.card),"data-test-id":`tests-result-card-${e.index}`},[r(`div`,{class:E(t.$style.header)},[r(`button`,{type:`button`,class:E(t.$style.title),"data-test-id":`tests-result-edit-${e.index}`,onClick:f},[a(b($),{size:`medium`,color:`text-dark`,bold:``},{default:H(()=>[y(R(c.value),1)]),_:1})],10,za),r(`button`,{type:`button`,class:E(t.$style.chevron),"aria-expanded":o.value,"data-test-id":`tests-result-toggle-${e.index}`,onClick:d},[a(b(q),{icon:o.value?`chevron-up`:`chevron-down`,size:`small`,color:`text-base`},null,8,[`icon`])],10,Ba)],2),o.value?(L(),h(`div`,{key:0,class:E(t.$style.definition)},[r(`div`,{class:E(t.$style.sentence)},[a(b($),{size:`small`,color:`text-light`},{default:H(()=>[y(R(b(n).baseText(`evaluations.tests.detail.when`)),1)]),_:1}),a(b($),{size:`small`,color:`text-dark`,bold:``},{default:H(()=>[y(R(b(i).aiNodeName),1)]),_:1}),a(b($),{size:`small`,color:`text-light`},{default:H(()=>[y(R(b(n).baseText(`evaluations.tests.detail.receivesInput`)),1)]),_:1})],2),r(`div`,{class:E(t.$style.entries)},[(L(!0),h(M,null,T(l.value,e=>(L(),h(`p`,{key:e.name,class:E(t.$style.entry)},[a(b($),{size:`small`,color:`text-light`},{default:H(()=>[y(R(e.name),1)]),_:2},1024),a(b($),{size:`small`,color:`text-dark`},{default:H(()=>[y(R(e.value),1)]),_:2},1024)],2))),128))],2)],2)):s(``,!0),a(Aa,{index:e.index,expanded:o.value,separated:``},null,8,[`index`,`expanded`])],10,Ra))}}),[[`__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`}}]]),Ha=G(x({__name:`TestCaseResults`,setup(e){let t=Y(),n=Pi(),i=ct(),s=Z(),c=qr(),{runAll:l,isPersisting:d}=Ta(),{hydrate:f}=ea(),{datasetInputsByRow:m}=ae(n),g=p(()=>m.value.length>0);async function _(){let e=s.value?.workflowId;if(e)try{await i.fetchTestRuns(e);let t=[...i.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 i.fetchTestCaseExecutions({workflowId:e,runId:n.id})}catch(e){console.warn(`[TestCaseResults] failed to load results`,e)}}z(async()=>{await f(),_()});let v=u(!1);async function x(){if(!v.value){v.value=!0;try{await l()?await _():c.showError(Error(`Run all failed`),t.baseText(`evaluations.tests.runAll.error`))}catch(e){c.showError(e,t.baseText(`evaluations.tests.runAll.error`))}finally{v.value=!1}}}return(e,i)=>(L(),h(`div`,{class:E(e.$style.container),"data-test-id":`tests-results`},[r(`header`,{class:E(e.$style.header)},[a(b($),{tag:`h2`,size:`small`,color:`text-dark`,bold:``,class:E(e.$style.title)},{default:H(()=>[y(R(b(t).baseText(`setupPanel.tabs.evaluations`)),1)]),_:1},8,[`class`]),r(`div`,{class:E(e.$style.actions)},[a(b(J),{variant:`outline`,size:`xsmall`,"data-test-id":`tests-results-create-case`,onClick:i[0]||=e=>b(n).openCreate()},{default:H(()=>[y(R(b(t).baseText(`evaluations.tests.results.createCase`)),1)]),_:1}),a(b(J),{variant:`solid`,size:`xsmall`,loading:v.value||b(d),disabled:!g.value,"data-test-id":`tests-results-run-all`,onClick:x},{default:H(()=>[y(R(b(t).baseText(`evaluations.tests.runAll`)),1)]),_:1},8,[`loading`,`disabled`])],2)],2),r(`div`,{class:E(e.$style.body)},[a(La),g.value?(L(),h(`div`,{key:0,class:E(e.$style.cards)},[(L(!0),h(M,null,T(b(m),(e,t)=>(L(),o(Va,{key:t,index:t},null,8,[`index`]))),128))],2)):(L(),h(`div`,{key:1,class:E(e.$style.empty)},[a(b($),{size:`small`,color:`text-light`},{default:H(()=>[y(R(b(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`}}]]),Ua=`__EMPTY__`,Wa=G(x({__name:`TestsPanel`,setup(e){let t=Pi(),n=ct(),r=Z(),i=Ln(),s=or(),c=Me(),{fetchLatestUserExecution:l}=oa(),d=Y(),{viewMode:f,judgeSelectionByMetric:m}=ae(t),g=qi(),_=Xi(),{runWorkflow:v,runTriggerNode:x,triggerNodes:S}=Yi(),C=p(()=>g.value.length>0),w=p(()=>!C.value),T=p(()=>S.value.length>1),D=p(()=>S.value.map(e=>({id:e.name,label:e.name})));function O(){let e=r.value?.workflowId;e&&(S.value.length===0?c.openNodeCreatorForTriggerNodes(e,Pt.ADD_NODE_BUTTON):c.openNodeCreatorForRegularNodes(e,Pt.ADD_NODE_BUTTON))}function k(e){let t=S.value.find(t=>t.name===e);t&&x(t)}W([()=>t.isOpen,_,m],([e,n,r])=>{if(!(!e||!n))for(let e of ni)r[e]||t.setJudgeSelection(e,n)},{immediate:!0});let A=u(!1),j=u(null),N=Ii({fallbackExecution:j});async function P(){try{await Promise.all([Promise.resolve(i.fetchLastSuccessfulExecution()),I()])}finally{A.value=!0}}W([()=>t.isOpen,g],([e,n])=>{if(!e||(P(),t.aiNodeName))return;let r=n[0];r&&t.setAiNodeName(r.name)},{immediate:!0});let F=null;z(()=>{F=s.addEventListener(e=>{if(e.type!==`executionFinished`)return;let t=r.value?.workflowId;!t||e.data.workflowId!==t||(P(),n.fetchTestRuns(t))})}),ie(()=>{F?.(),F=null});async function I(){try{j.value=await l()}catch{j.value=null}}W(N,({values:e,fieldNames:n})=>{n.length!==0&&t.prefillInputsFromExecution&&t.seedInputs(e)},{immediate:!0});let ee=p(()=>N.value.hasExecution),te=p(()=>{if(t.datasetInputsByRow.length>0||t.activeRunId!==null)return!0;let e=r.value?.workflowId;return!!(e&&(n.testRunsByWorkflowId[e]?.length??0)>0)}),ne=p(()=>A.value&&!ee.value&&!te.value),re=p(()=>!ee.value&&!A.value&&!te.value),{hydrate:B}=ea(),{createFromExecution:V}=sa();return W(()=>[t.isOpen,r.value?.workflowId],async([e])=>{let n=r.value?.workflowId,i=t.lastWorkflowId;if(i&&i!==Ua&&n&&n!==i&&t.reset(),n&&t.setLastWorkflowId(n),!e||!n)return;await B();let a=t.pendingSeedExecution;a&&(V(a),t.setPendingSeedExecution(null))},{immediate:!0}),(e,t)=>(L(),h(`div`,{class:E(e.$style.panel),"data-test-id":`tests-panel`},[w.value?(L(),h(`div`,{key:0,class:E(e.$style.gate),"data-test-id":`tests-panel-add-node`},[a(b($),{size:`large`,color:`text-dark`,class:E(e.$style.gateMessage)},{default:H(()=>[y(R(b(d).baseText(`evaluations.tests.empty.noNode`)),1)]),_:1},8,[`class`]),a(b(J),{size:`small`,"data-test-id":`tests-panel-add-node-button`,onClick:O},{default:H(()=>[y(R(b(d).baseText(`evaluations.tests.empty.noNode.button`)),1)]),_:1})],2)):re.value?(L(),h(`div`,{key:1,class:E(e.$style.gate),"data-test-id":`tests-panel-probe-loading`},[a(b(q),{icon:`spinner`,size:`medium`,spin:!0})],2)):ne.value?(L(),h(`div`,{key:2,class:E(e.$style.gate),"data-test-id":`tests-panel-gate`},[a(b($),{size:`large`,color:`text-dark`,class:E(e.$style.gateMessage)},{default:H(()=>[y(R(b(d).baseText(`evaluations.tests.empty.noExecutions`)),1)]),_:1},8,[`class`]),T.value?(L(),o(b(br),{key:0,items:D.value,placement:`bottom`,"data-test-id":`tests-panel-choose-trigger`,onSelect:k},{activator:H(()=>[a(b(J),{size:`small`},{default:H(()=>[y(R(b(d).baseText(`evaluations.tests.empty.chooseTrigger`))+` `,1),a(b(q),{icon:`chevron-down`,size:`small`})]),_:1})]),_:1},8,[`items`])):(L(),o(b(J),{key:1,size:`small`,"data-test-id":`tests-panel-gate-run`,onClick:b(v)},{default:H(()=>[y(R(b(d).baseText(`evaluations.tests.empty.execute`)),1)]),_:1},8,[`onClick`]))],2)):(L(),h(M,{key:3},[b(f)===`detail`?(L(),o(Fa,{key:0})):b(f)===`create`?(L(),o(pa,{key:1})):(L(),o(Ha,{key:2}))],64))],2))}}),[[`__cssModules`,{$style:{panel:`_panel_16tpu_1`,gate:`_gate_16tpu_10`,gateMessage:`_gateMessage_16tpu_21`}}]]),Ga={key:0},Ka=G(x({name:`FocusSidebar`,__name:`FocusSidebar`,props:{isCanvasReadOnly:{type:Boolean}},emits:[`contextMenuAction`],setup(e,{emit:n}){let i=n,c=C(`wrapper`),l=Ct(),u=st(),m=Z(),g=Dr(),_=pe(),v=Vt(),y=Xn(),x=j(l.value),S=f();tr({view_shown:`focus_panel`});let{selectedTab:w}=ae(u),T=p(()=>u.focusPanelActive),D=p(()=>u.focusPanelWidth),k=p(()=>u.resolvedParameter),A=p(()=>_.isFeatureEnabled),{isFeatureEnabled:M}=Xr(),{isLicensed:N,isResolved:P,ensureLicenseLoaded:F}=ui(),I=p(()=>_.isFeatureEnabled&&w.value===`setup`),ee=p(()=>M.value&&w.value===`evaluations`&&P.value&&N.value),R=p(()=>M.value&&w.value===`evaluations`&&P.value&&!N.value),te=p(()=>A.value||M.value),ne=p(()=>{if(!g.isNdvInFocusPanelEnabled||k.value)return k.value?.node;let e=x.getSelectedNodes.value[0];return e?.data?.render.type===ar.Default?(m?.value?.allNodes??[]).find(t=>t.id===e.id):void 0}),re=p(()=>{let e=k.value?.parameter.displayName??ne.value?.name;return e?{focus:e}:void 0});function B(e){e.key===`s`&&y.isCtrlKeyPressed(e)&&(e.stopPropagation(),e.preventDefault())}let oe=()=>{document.addEventListener(`keydown`,B,!0)},se=()=>{document.removeEventListener(`keydown`,B,!0)};W(()=>u.focusPanelActive,e=>{e?oe():se()},{immediate:!0}),W(S,e=>{if(!ne.value||!e||!c.value?.contains(e))return;let t=e.closest(`.parameter-input`)?.getAttribute(`data-parameter-path`);t&&v.track(`User focused focus panel`,{node_id:ne.value.id,node_type:ne.value.type,parameter_path:t})});function U(e){u.updateWidth(e.width)}let ce=O(U,10);function le(e,t){i(`contextMenuAction`,e,t)}return z(()=>{F()}),ie(()=>{se()}),(n,i)=>T.value?(L(),h(`div`,{key:0,ref:`wrapper`,"data-test-id":`focus-sidebar`,class:E([n.$style.wrapper,`ignore-key-press-canvas`,{[n.$style.isNdvInFocusPanelEnabled]:b(g).isNdvInFocusPanelEnabled}]),onKeydown:i[1]||=t(()=>{},[`stop`])},[a(b(ur),{width:D.value,"supported-directions":[`left`],"min-width":A.value?420:300,"max-width":b(g).isNdvInFocusPanelEnabled?void 0:1e3,"grid-size":8,style:V({width:`${D.value}px`}),onResize:b(ce)},{default:H(()=>[r(`div`,{class:E(n.$style.container)},[te.value?(L(),h(`div`,Ga,[a(pi,{modelValue:b(w),"onUpdate:modelValue":i[0]||=e=>d(w)?w.value=e:null,"tab-labels":re.value},null,8,[`modelValue`,`tab-labels`])])):s(``,!0),I.value?(L(),h(`div`,{key:1,class:E(n.$style[`setup-panel-wrapper`])},[a(Ai)],2)):ee.value?(L(),h(`div`,{key:2,class:E(n.$style[`setup-panel-wrapper`])},[a(Wa)],2)):R.value?(L(),h(`div`,{key:3,class:E([n.$style[`setup-panel-wrapper`],n.$style[`evaluations-paywall-wrapper`]])},[a(Zr)],2)):(L(),o(Ni,{key:4,"is-canvas-read-only":e.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`}}]]),qa=x({__name:`CanvasStopCurrentExecutionButton`,props:{stopping:{type:Boolean},size:{}},setup(e){let t=e,n=Y(),r=p(()=>t.stopping?n.baseText(`nodeView.stoppingCurrentExecution`):n.baseText(`nodeView.stopCurrentExecution`));return(t,n)=>(L(),o(b(Nt),{variant:`subtle`,icon:`square`,size:e.size??`large`,class:`stop-execution`,title:r.value,loading:e.stopping,"data-test-id":`stop-execution-button`},null,8,[`size`,`title`,`loading`]))}}),Ja=x({__name:`CanvasStopWaitingForWebhookButton`,props:{size:{}},setup(e){let t=e,n=Y();return(e,r)=>(L(),o(b(Nt),{variant:`subtle`,class:`stop-execution`,icon:`square`,size:t.size??`large`,title:b(n).baseText(`nodeView.stopWaitingForWebhookCall`),"data-test-id":`stop-execution-waiting-for-webhook-button`},null,8,[`size`,`title`]))}}),Ya={"data-action":`reload`},Xa={href:`https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/`,target:`_blank`},Za=x({__name:`NodeViewUnfinishedWorkflowMessage`,setup(e){let t=Y();return(e,n)=>(L(),h(`div`,null,[r(`a`,Ya,R(b(t).baseText(`nodeView.refresh`)),1),y(` `+R(b(t).baseText(`nodeView.toSeeTheLatestStatus`))+`. `,1),n[0]||=r(`br`,null,null,-1),r(`a`,Xa,R(b(t).baseText(`nodeView.moreInfo`)),1)]))}}),Qa=x({__name:`CanvasChatButton`,props:{label:{},variant:{}},setup(e){return(t,n)=>(L(),o(b(J),{label:e.label,size:`large`,icon:`message-circle`,variant:e.variant,"data-test-id":`workflow-chat-button`},null,8,[`label`,`variant`]))}}),$a=G(x({__name:`CheckHeader`,props:{icon:{},iconBg:{},iconFg:{},title:{},badge:{},badgeIcon:{}},setup(e){return(t,n)=>(L(),h(`div`,{class:E(t.$style.header)},[r(`span`,{class:E([t.$style.icon,!e.iconBg&&!e.iconFg?t.$style.iconNeutral:null]),style:V(e.iconBg||e.iconFg?{backgroundColor:e.iconBg,color:e.iconFg}:null)},[a(b(q),{icon:e.icon,size:`small`},null,8,[`icon`])],6),r(`div`,{class:E(t.$style.body)},[r(`div`,{class:E(t.$style.titleRow)},[a(b($),{size:`small`,bold:``,color:`text-dark`},{default:H(()=>[y(R(e.title),1)]),_:1}),e.badge?(L(),o(b(cr),{key:0,class:E(t.$style.judgePill)},{default:H(()=>[e.badgeIcon?(L(),o(b(q),{key:0,icon:e.badgeIcon,size:`xsmall`,class:E(t.$style.judgePillIcon)},null,8,[`icon`,`class`])):s(``,!0),y(` `+R(e.badge),1)]),_:1},8,[`class`])):s(``,!0)],2),F(t.$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`}}]]),eo=[`role`,`tabindex`],to=[`aria-label`,`data-test-id`],no=G(x({__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(n,r)=>(L(),h(`div`,{class:E([n.$style.card,e.selected?n.$style.cardSelected:null]),role:e.readonly?void 0:`button`,tabindex:e.readonly?void 0:0,onClick:r[3]||=t=>!e.readonly&&n.$emit(`toggle`),onKeydown:[r[4]||=P(t(t=>!e.readonly&&n.$emit(`toggle`),[`self`,`prevent`]),[`enter`]),r[5]||=P(t(t=>!e.readonly&&n.$emit(`toggle`),[`self`,`prevent`]),[`space`])]},[a($a,{icon:e.icon,"icon-bg":e.iconBg,"icon-fg":e.iconFg,title:e.title,badge:e.badge,"badge-icon":e.badgeIcon},ce({_:2},[e.description?{name:`description`,fn:H(()=>[a(b($),{size:`small`,color:`text-base`,class:E(n.$style.description)},{default:H(()=>[y(R(e.description),1)]),_:1},8,[`class`])]),key:`0`}:void 0]),1032,[`icon`,`icon-bg`,`icon-fg`,`title`,`badge`,`badge-icon`]),e.removable?(L(),h(`button`,{key:0,type:`button`,class:E(n.$style.removeButton),"aria-label":e.removeAriaLabel,"data-test-id":e.removeTestId,onClick:r[0]||=t(e=>n.$emit(`remove`),[`stop`])},[a(b(q),{icon:`trash-2`,size:`small`})],10,to)):e.selected&&!e.readonly?(L(),h(`span`,{key:1,class:E(n.$style.selectedMark),"aria-hidden":`true`},[a(b(q),{icon:`check`,size:`small`})],2)):s(``,!0),n.$slots.default?(L(),h(`div`,{key:2,class:E(n.$style.slotContainer),onClick:r[1]||=t(()=>{},[`stop`]),onKeydown:r[2]||=t(()=>{},[`stop`])},[F(n.$slots,`default`)],34)):s(``,!0)],42,eo))}}),[[`__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`}}]]),ro=[`aria-label`],io=G(x({__name:`EvaluationsCanvasInfoCard`,setup(e){let t=p(()=>[...ci,...ci].map(e=>({...e,isJudge:ni.has(e.key)}))),n=Y(),i=Vt(),o=Pi(),c=Z(),l=hr(),d=qi(),{isFeatureEnabled:f}=Xr(),{isLicensed:m,ensureLicenseLoaded:g}=ui(),_=u(null),v=null,x=Jt(De),S=p(()=>{let e=x.value;return e?new Set(e.split(`,`).filter(Boolean)):new Set}),C=p(()=>c.value?.workflowId??``),w=p(()=>c.value?.active??!1),D=p(()=>d.value.length>0),O=p(()=>C.value?S.value.has(C.value):!0),k=p(()=>f.value&&m.value&&w.value&&D.value&&!O.value),A=p(()=>k.value&&_.value===!1&&!o.isOpen);z(()=>{g()});async function j(){let e=C.value;if(e&&v!==e){v=e;try{let t=await Se(l.restApiContext,e);if(e!==C.value)return;_.value=t.length>0}catch{if(e!==C.value)return;_.value=!0}finally{v===e&&(v=null)}}}W(k,e=>{if(!e){_.value=null;return}_.value===null&&j()},{immediate:!0}),W(C,()=>{_.value=null,k.value&&j()}),W(()=>o.isOpen,(e,t)=>{t&&!e&&k.value&&j()});function N(){let e=C.value;if(!e)return;let t=new Set(S.value);t.add(e),x.value=[...t].join(`,`)}function P(){i.track(`User opened evaluations wizard`,{workflow_id:C.value,source:`canvas_info_card`}),o.open(0)}return(e,i)=>A.value?(L(),h(`aside`,{key:0,class:E(e.$style.card),role:`complementary`,"data-test-id":`evaluations-canvas-info-card`},[r(`button`,{type:`button`,class:E(e.$style.dismiss),"aria-label":b(n).baseText(`evaluations.canvasInfoCard.dismiss`),"data-test-id":`evaluations-canvas-info-card-dismiss`,onClick:N},[a(b(q),{icon:`x`,size:`small`})],10,ro),r(`div`,{class:E(e.$style.marquee),"aria-hidden":`true`},[r(`ul`,{class:E(e.$style.marqueeTrack)},[(L(!0),h(M,null,T(t.value,(t,r)=>(L(),h(`li`,{key:`${t.key}-${r}`,class:E(e.$style.marqueeItem)},[a(no,{icon:t.icon,"icon-bg":t.tileBg,"icon-fg":t.tileFg,title:b(n).baseText(t.labelKey),description:b(n).baseText(t.descriptionKey),badge:t.isJudge?b(n).baseText(`evaluations.wizardSidepanel.metric.judgeTag`):void 0,readonly:``},null,8,[`icon`,`icon-bg`,`icon-fg`,`title`,`description`,`badge`])],2))),128))],2)],2),r(`div`,{class:E(e.$style.body)},[a(b($),{size:`small`,bold:``,color:`text-dark`},{default:H(()=>[y(R(b(n).baseText(`evaluations.canvasInfoCard.title`)),1)]),_:1}),a(b($),{size:`small`,color:`text-base`,class:E(e.$style.description)},{default:H(()=>[y(R(b(n).baseText(`evaluations.canvasInfoCard.description`)),1)]),_:1},8,[`class`])],2),r(`div`,{class:E(e.$style.footer)},[a(b(J),{variant:`solid`,size:`medium`,type:`button`,class:E(e.$style.setupButton),"data-test-id":`evaluations-canvas-info-card-setup`,onClick:P},{default:H(()=>[y(R(b(n).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`}}]]),ao=G(x({name:`NodeView`,__name:`NodeView`,setup(t){let n=v(async()=>await Hn(()=>import(`./NodeCreation-B1GfJIvd.js`),__vite__mapDeps([0,1,2,3,4,5,6]))),i=v(async()=>await Hn(()=>import(`./NodeDetailsView-v8DvzTHr.js`),__vite__mapDeps([7,1,2,3,4,5,8,9,10,11,12,13,14,15,16,17]))),c=v(async()=>await Hn(()=>import(`./SetupWorkflowCredentialsButton-MQLIOwPY.js`),__vite__mapDeps([18,1,2,3,4,5,19,20]))),d=_(),f=D(),m=re(),{canOpenNDV:g}=Jr(),x=Y(),S=Vt(),T=rn(),O=qr(),k=mn(),A=jr(),j=dt({router:f,ownsAutoSave:!0,onSaved:e=>{xt.emit(`saved:workflow`,{isFirstSave:e})}}),N=Xt(),P=wr({onPaste:ei}),F=Ie(),I=En(),ee=et(),ne=Ln(),B=Z(),V=p(()=>Pn(B.value.documentId)),ae=Ee(),oe=Re(),se=at(),U=Me(),ce=jn(),le=pn(),ue=Kn(),de=en(),pe=fe(),me=vt(),G=Mn(),_e=He(),be=jt(),xe=It(),Se=st(),Ce=Pi(),{isFeatureEnabled:we}=Xr(),Te=Rr(),q=Yr(),De=xr(),ke=Cr(),je=Dr(),J=qn(),Fe=Sr(),Le=Wr(),ze=er();di(J);let{addBeforeUnloadEventBindings:Be,removeBeforeUnloadEventBindings:Ve}=ye({route:m}),{registerCustomAction:Ue,unregisterCustomAction:We}=ge(),{runWorkflow:Ge,runEntireWorkflow:Ke,stopCurrentExecution:qe,stopWaitingForWebhook:Je}=zn({router:f}),{updateNodePosition:Ye,updateNodesPosition:Xe,tidyUp:Ze,revertUpdateNodePosition:$e,renameNode:nt,revertRenameNode:rt,revertReplaceNodeParameters:it,setNodeActive:ot,setNodeSelected:ct,toggleNodesDisabled:ut,revertToggleNodeDisabled:ft,toggleNodesPinned:ht,setNodeParameters:_t,deleteNode:yt,deleteNodes:bt,copyNodes:Tt,cutNodes:Ot,duplicateNodes:kt,revertDeleteNode:At,revertAddNode:Mt,createConnection:Nt,revertCreateConnection:Ft,deleteConnection:Lt,revertDeleteConnection:Rt,revalidateNodeInputConnections:zt,revalidateNodeOutputConnections:Bt,setNodeActiveByName:Ht,clearNodeActive:Ut,tryToOpenSubworkflowInNewTab:Wt,importWorkflowData:Kt,fetchWorkflowDataFromUrl:qt,resetWorkspace:Jt,initializeWorkspace:Yt,lastClickPosition:Qt,startChat:$t,addNodesAndConnections:tn,fitView:nn}=pr(),{extractWorkflow:on}=gr();Br({ctrl_alt_o:()=>I.openModal(un)});let sn=C(`canvas`),ln=u(!0),_n=u(null),yn=u([]),Q=Ct(),xn=p(()=>{let e=m.params.nodeId;return Array.isArray(e)?e[0]:e}),Sn=p(()=>m.query.new===`true`),Cn=p(()=>m.query.hideControls===`true`),wn=p(()=>m.query.canvasBackground!==`dots`),Dn=p(()=>m.name===K.DEMO),On=p(()=>se.isCanvasOnly&&!Dn.value),kn=p(()=>!!m?.meta?.readOnlyCanvas),An=p(()=>oe.preferences.branchReadOnly),{readOnly:Nn,expandGroups:Fn,executionButtonType:Bn}=Et(),Vn=p(()=>Dn.value?`secondary`:Bn.value),Wn=p(()=>Dn.value||An.value||J.shouldBeReadOnly||!(qi.value.update??Ji.value.workflow.update)||(B?.value?.isArchived??!1)||Te.streaming&&!Te.isHelpStreaming||Nn.value),Gn=p(()=>Dn.value?`all`:Fn.value),Jn=p(()=>An.value?!1:Dn.value?m.query.canExecute===`true`:B?.value?.isArchived||Te.streaming||Nn?.value?!1:!!(qi.value.execute??Ji.value.workflow.execute)),Xn=p(()=>J.isCurrentUserWriter&&!J.isCurrentTabWriter),Zn=p(()=>sr.value.length===0),tr=p(()=>!xe.value.activeNode&&I.activeModals.length===0),nr=p(()=>ke.isOpen);function rr(){m.query.action===`addEvaluationTrigger`?Da():m.query.action===`addEvaluationNode`?U.openNodeCreatorForActions(Q.value,Ir,Pt.ADD_EVALUATION_NODE_BUTTON):m.query.action===`executeEvaluation`?Ta.value&&Ke(`node`,Ta.value.name):m.query.action===`openEvaluationsWizard`&&we.value&&(S.track(`User opened evaluations wizard`,{workflow_id:Q.value,source:`empty_state`}),Ce.open(0)),Ce.pendingSeedExecution&&we.value&&(Se.setSelectedTab(`evaluations`),Se.openFocusPanel()),xt.off(`saved:workflow`,Ra),m.name===K.EXECUTION_DEBUG&&xt.on(`saved:workflow`,Ra),e(()=>{ir()})}function ir(){N.updateNodesInputIssues(),N.updateNodesCredentialsIssues(),N.updateNodesParameterIssues()}W(()=>{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}`},()=>{ln.value||N.updateNodesCredentialsIssues()});async function or(e){Jt(),Te.streaming?A.setDocumentTitle(e.name,`AI_BUILDING`):A.setDocumentTitle(e.name,`IDLE`),await Yt(e),T.run(`workflow.open`,{workflowId:e.id,workflowName:e.name}),nn()}let sr=p(()=>B?.value?.allNodes.filter(e=>F.isTriggerNode(e.type))??[]),cr=p(()=>sr.value.length>0),lr=p(()=>sr.value.filter(e=>e.disabled).length===sr.value.length),ur=p(()=>sr.value.filter(e=>!e.disabled&&!bn(e)));function dr(e,t){Ze(e,t)}function mr(e){on(e)}function hr(e){Xe(e,{trackHistory:!0})}function _r(e,t){Ye(e,t,{trackHistory:!0})}function vr({nodeName:e,position:t}){$e(e,{x:t[0],y:t[1]})}function yr(e){let t=yn.value.findIndex(t=>t.id===e);t>=0?yn.value.splice(t,1):yt(e,{trackHistory:!0})}function br(e,t=[]){bt(e,{deleteWholeGroupIds:t})}function Tr({node:e}){At(e)}function Er({group:e}){B.value.deleteGroup(e.id)}function Or({group:e}){B.value.restoreGroup(e)}function kr({group:e}){B.value.restoreGroup(e)}function $(e){Fa()&&ut([e])}function Nr({nodeName:e}){ft(e)}function Pr(e){Fa()&&ut(e)}function Lr(e,t){Qt.value=[t.x,t.y],Ui()}async function Vr(e,t){Dn.value&&!g.value||(t?.metaKey||t?.ctrlKey)&&await Wt(e)||ot(e,`canvas_default_view`)}function Hr(e){Wt(e)}function Gr(){Ut()}function Kr(e){Ui(),ct(e)}let Zr=!1;function Qr(e){return!Zr&&Q.value===e}async function $r(e){let t=Q.value;await q.gate(`copy`,async()=>{Qr(t)&&(await Tt(e),O.showMessage({title:x.baseText(`generic.copiedToClipboard`),type:`success`}))})}async function ei(e){if(Wn.value||lt(m)!==an.WORKFLOW||!tr.value||!Fa())return;let t=null;if(e.match(In)){if(await k.confirm(x.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.message`,{interpolate:{plainTextData:e}}),x.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.headline`),{type:`warning`,confirmButtonText:x.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.confirmButtonText`),cancelButtonText:x.baseText(`nodeView.confirmMessage.onClipboardPasteEvent.cancelButtonText`)})!==`confirm`)return;t=await qt(e)}else t=Qn(e,{fallbackValue:null});if(!t)return;let n=Q.value;await q.gate(`paste`,async()=>{if(!Qr(n))return;let e=(await Kt(t,`paste`,{importTags:!1,viewport:Va.value})).nodes?.map(e=>e.id)??[];sn.value?.ensureNodesAreVisible(e)})}async function ti(e,t=[]){Wn.value?await Tt(e):await Ot(e,t)}async function ni(e){if(!Fa())return;let t=await kt(e,{viewport:Va.value});sn.value?.ensureNodesAreVisible(t)}function ri(e,t){Fa()&&ht(e,t)}function ii(e,t){sn.value?.executeContextMenuAction(e,t)}function ai(){xt.on(`saved:workflow`,pe.showNpsSurveyIfPossible)}function oi(){xt.off(`saved:workflow`,pe.showNpsSurveyIfPossible),xt.off(`saved:workflow`,Ra)}async function si(){await f.push({name:K.NEW_WORKFLOW})}async function ci(){await j.saveCurrentWorkflow({})}function li(e){xe.value.activeNode?.name&&nt(xe.value.activeNode.name,e)}async function ui(t){let n=B?.value?.getNodeById(t)?.name??``,r=document.activeElement;if(!(r&&Un(r))&&!(!tr.value||document.querySelector(`.rename-prompt`)))try{let t=k.prompt(x.baseText(`nodeView.prompt.newName`)+`:`,x.baseText(`nodeView.prompt.renameNode`)+`: ${n}`,{customClass:`rename-prompt`,confirmButtonText:x.baseText(`nodeView.prompt.rename`),cancelButtonText:x.baseText(`nodeView.prompt.cancel`),inputErrorMessage:x.baseText(`nodeView.prompt.invalidName`),inputValue:n,inputValidator:e=>e.trim()?!0:x.baseText(`nodeView.prompt.invalidName`)});await e();let r=document.querySelector(`.rename-prompt .el-input__inner`);r?.focus(),r?.select();let i=e=>{e.key===` `&&e.stopPropagation()};r?.addEventListener(`keydown`,i);let a=await t;r?.removeEventListener(`keydown`,i),a.action===`confirm`&&await nt(n,a.value,{trackHistory:!0})}catch{}}async function pi({currentName:e,newName:t}){await rt(e,t)}async function mi({nodeId:e,currentProperties:t,newProperties:n}){await it(e,t,n)}function hi(e,t){_t(e,t)}function gi(e){zt(e)}function _i(e){Bt(e)}function vi(e,t){U.openNodeCreatorForConnectingNode({workflowId:Q.value,connection:{source:e,sourceHandle:t},eventSource:Pt.PLUS_ENDPOINT})}async function yi(){let e;if(Q.value&&!Sn.value)e={workflowId:Q.value};else{let t=(typeof m.query?.projectId==`string`?m.query?.projectId:void 0)??me.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){Nt(e,{trackHistory:!0})}function xi({connection:e}){Ft(e)}function Si(e,t,n){(n?.target).classList?.contains(`clickable`)||(I.lastInteractedWithNodeId=e.nodeId,I.lastInteractedWithNodeHandle=e.handleId,I.lastCancelledConnectionPosition=[t.x,t.y],setTimeout(()=>{e.nodeId&&U.openNodeCreatorForConnectingNode({workflowId:Q.value,connection:{source:e.nodeId,sourceHandle:e.handleId},eventSource:Pt.NODE_CONNECTION_DROP})}))}function Ci(e){Lt(e,{trackHistory:!0})}function wi({connection:e}){Rt(e)}async function Ti(t){let n=t.data,r=typeof t.trackEvents==`boolean`?t.trackEvents:void 0,i=typeof t.setStateDirty==`boolean`?t.setStateDirty:void 0;if(await Kt(n,`file`,{viewport:Va.value,regenerateIds:t.regenerateIds===!0||t.regenerateIds===void 0,trackEvents:r,setStateDirty:i}),await e(),nn(),Ua(n.nodes?.map(e=>e.id)??[]),t.tidyUp){let n=t.nodesIdsToTidyUp;setTimeout(async()=>{xt.emit(`tidyUp`,{source:`import-workflow-data`,nodeIdsFilter:n,trackEvents:r}),await e(),nn()},0)}}async function Ei(e){let t=await qt(e.url);if(!t)return;let n=Q.value;await q.gate(`import_url`,async()=>{Qr(n)&&(await Kt(t,`url`,{viewport:Va.value}),sn.value?.ensureNodesAreVisible(t.nodes?.map(e=>e.id)??[]))})}function Di(){Pe.on(`importWorkflowData`,Ti),Pe.on(`importWorkflowUrl`,Ei),Pe.on(`openChat`,Ca)}function Oi(){Pe.off(`importWorkflowData`,Ti),Pe.off(`importWorkflowUrl`,Ei),Pe.off(`openChat`,Ca)}let ki=u(void 0),Ai=u(!1);function ji(){ki.value=void 0}function Mi(){if(!(U.isCreateNodeActive&&he(U.openSource))||!I.lastInteractedWithNodeId)return;let{type:e,mode:t}=ve(I.lastInteractedWithNodeHandle);if(e!==Yn.Main||t!==Rn.Output)return;let n=I.lastInteractedWithNodeId,r=B.value.getGroupForNode(n);if(!r)return;let i=Ar(r,B.value.allNodes);return i?.id===n?i.id:void 0}async function Ni({nodes:e,connections:t},n=!1,r){if(!Fa())return;let i=ki.value??Mi();i!==void 0&&(I.resetLastInteractedWith(),e=e.map(e=>({...e,openDetail:!1})));let{addedNodes:a}=await tn(e,t,{dragAndDrop:n,position:r,viewport:Va.value,telemetry:!0,replaceNodeId:i});if(a.length>0){let e=a[a.length-1].id;Ua([e])}}async function Fi(e=!1){if(!ze.value||!Fa()||Ai.value)return;Ai.value=!0;let t=U.openSource;if(B.value.allNodes.length===0&&Ba.value.width>0&&Ba.value.height>0){let{xMin:e,xMax:t,yMin:n,yMax:r}=Va.value;Qt.value=[(e+t-gt[0])/2,(n+r-gt[1])/2]}let n=ee.currentBulkAction===null;n&&ee.startRecordingUndo();try{let n=de.selectedGroupId?B.value.getGroupById(de.selectedGroupId):void 0,r=n?Ar(n,B.value.allNodes):void 0;!e&&r&&(I.resetLastInteractedWith(),I.lastInteractedWithNodeId=r.id);let{addedNodes:i}=await tn([{type:Gt,name:`No Operation, do nothing`,parameters:{emptyGroupAnchor:!0},placeholder:!0,isAutoAdd:!(e||r!==void 0),openDetail:!1}],[],{viewport:Va.value,trackBulk:!1}),a=i[0];if(!a)return;let o=B.value.getNextDefaultName(x.baseText(`canvas.nodeGroup.defaultTitle`)),s=B.value.createGroup([a.id],o);ee.pushCommandToUndo(new fr(s,Date.now())),ce.trackGrouped(s,`node-creator`,t),ce.trackInitialEmptyGroupConnection(s),Ua([a.id])}finally{n&&ee.stopRecordingUndo(),Ai.value=!1}}async function Ii({node:e}){await Mt(e.name)}function Li(e){let t=B?.value?.getNodeByName(e);t&&(Ht(e,`other`),Ua([t.id]))}function Ri(e,t,n=0){U.openSelectiveNodeCreator({workflowId:Q.value,node:e,connectionType:t,connectionIndex:n})}function zi(e){U.setNodeCreatorState({...e,workflowId:Q.value}),e.createNodeActive||(ki.value=void 0,e.hasAddedNodes||I.resetLastInteractedWith())}function Bi(e){zi({createNodeActive:!0,source:e})}function Vi(e){U.openNodeCreatorForTriggerNodes(Q.value,e)}function Hi(){Se.toggleFocusPanel(),S.track(`User ${Se.focusPanelActive?`opened`:`closed`} focus panel`,{source:`canvasKeyboardShortcut`,parameters:Se.focusedNodeParametersInTelemetryFormat,parameterCount:Se.focusedNodeParametersInTelemetryFormat.length})}function Ui(){U.isCreateNodeActive&&=!1}function Wi(){Ni({nodes:[{type:tt}],connections:[]})}function Gi(e){let{type:t,mode:n}=ve(e.sourceHandle);t===Yn.AiTool&&n===Rn.Output?U.openNodeCreatorForConnectingNode({workflowId:Q.value,connection:e,eventSource:Pt.NODE_CONNECTION_ACTION,nodeCreatorView:zr}):U.openNodeCreatorForConnectingNode({workflowId:Q.value,connection:e,eventSource:Pt.NODE_CONNECTION_ACTION})}function Ki(e){let t=B?.value?.getNodeById(e),n=B?.value?.getExpressionHandler();if(!t||!n)return;let r=F.getNodeType(t.type);if(r)if(ki.value=e,U.openingContext=`replacement`,$n(r))U.openNodeCreatorForTriggerNodes(Q.value,Pt.REPLACE_NODE_ACTION);else{let e=fn({expression:n},t,r).map(e=>typeof e==`string`?e:e.type),i=Dt({expression:n},t,r).map(e=>typeof e==`string`?e:e.type);e[0]&&i[0]&&e[0]!==i[0]?U.openNodeCreatorForRegularNodes(Q.value,Pt.REPLACE_NODE_ACTION):U.openSelectiveNodeCreator({workflowId:Q.value,connectionType:e[0]??i[0],node:t.name})}}let qi=p(()=>Q.value?Oe(ae.getWorkflowById(Q.value)?.scopes).workflow:{}),Ji=p(()=>Oe((m.query?.projectId?me.myProjects.find(e=>e.id===m.query.projectId):me.currentProject??me.personalProject)?.scopes)),Yi=u(!1),Xi=p(()=>V.value.isWorkflowRunning),Zi=p(()=>V.value.executionWaitingForWebhook),{reason:Qi}=Ae(()=>B.value.usedCredentials,()=>B.value.allNodes);function $i(){if(Qi.value){O.showMessage({title:Qi.value,type:`warning`});return}Ke(`main`)}let ea=p(()=>Qi.value||va.value&&ya.value&&!ba.value?!0:!cr.value||lr.value),ta=p(()=>!ya.value||ba.value),na=p(()=>Xi.value&&!Zi.value),ra=p(()=>Xi.value&&Zi.value);async function ia(e){let t=B?.value?.getNodeById(e);t&&(pt(t)&&F.isToolNode(t.type)?I.openModalWithData({name:hn,data:{nodeName:t.name}}):(ca(t),De.clearAgentRequests(Q.value,t.id),Ge({destinationNode:{nodeName:t.name,mode:`inclusive`},source:`Node.executeNode`})))}async function aa(e,t){let n=B?.value?.getNodeById(e);if(!n)return;let r=F.getNodeType(n.type,n.typeVersion);if(!r?.webhooks?.length)return;let i=r.webhooks[0],a=await Le.getWebhookUrl(i,n,t);a&&(P.copy(a),O.showMessage({title:x.baseText(`nodeWebhooks.showMessage.title`),type:`success`}))}async function oa(e){let t=B?.value?.getNodeById(e);if(Zt.includes(t?.type??``)){O.showMessage({title:x.baseText(`nodeWebhooks.showMessage.testWebhookUrl`),type:`warning`});return}aa(e,`test`)}async function sa(e){if(!(B?.value?.active??!1)){O.showMessage({title:x.baseText(`nodeWebhooks.showMessage.not.active`),type:`warning`});return}aa(e,`production`)}function ca(e){let t={node_type:e.type,workflow_id:Q.value,source:`canvas`,push_ref:xe.value.pushRef};S.track(`User clicked execute node button`,t),T.run(`nodeView.onRunNode`,t)}function la(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),O.showMessage({title:x.baseText(`nodeView.showError.workflowError`),message:e.data.resultData.error.message,type:`error`,duration:0}))}}function ua(e){e.waitTill&&O.showMessage({title:x.baseText(`nodeView.thisExecutionHasntFinishedYet`),message:te(Za),type:`warning`,duration:0})}function da(){xt.on(`open:execution`,la),xt.on(`open:execution`,ua)}function fa(){xt.off(`open:execution`,la),xt.off(`open:execution`,ua)}async function pa(){Yi.value=!0,await qe(),Yi.value=!1}async function ma(){await Je()}function ha(){Pe.emit(`runWorkflowButton:mouseenter`)}function ga(){Pe.emit(`runWorkflowButton:mouseleave`)}let _a=p(()=>B?.value?.allNodes.find(e=>e.type===mt)),va=p(()=>!Zi.value&&!!B?.value?.allNodes.find(e=>[`@n8n/n8n-nodes-langchain.manualChatTrigger`,`@n8n/n8n-nodes-langchain.chatTrigger`].includes(e.type)&&e.disabled!==!0)),ya=p(()=>sr.value.every(e=>e.disabled||e.type===`@n8n/n8n-nodes-langchain.chatTrigger`)),ba=p(()=>_a.value?B?.value?.pinnedDataByNodeName?.[_a.value.name]:null),xa=p(()=>Fe.isFloatingChatEnabled&&_a.value?.parameters?.availableInChat===!0),Sa=p(()=>Fe.isOpen);W(xa,e=>{!e&&Sa.value&&Fe.close()});function Ca(){xa.value?Fe.open():$t(`main`)}function wa(){xa.value?Sa.value?Fe.close():Fe.open():nr.value?ke.toggleOpen(!1):$t(`main`)}let Ta=p(()=>B?.value?.allNodes.find(e=>e.type===Ne)),Ea=u(!1);async function Da(){if(!Ea.value){Ea.value=!0;try{if(sn.value||await new Promise(e=>{let t=W(sn,n=>{n&&(t(),e())})}),!Fa())return;if(Ta.value){Ht(Ta.value.name,`other`),sn.value?.ensureNodesAreVisible([Ta.value.id]);return}let{addedNodes:t}=await tn([{type:Ne,openDetail:!0}],[],{viewport:Va.value,telemetry:!0});if(t.length>0){let n=t[t.length-1];await e(),sn.value?.ensureNodesAreVisible([n.id])}}finally{try{await f.replace({query:{...m.query,action:void 0}})}finally{Ea.value=!1}}}}function Oa(){X.on(`nodeMove`,vr),X.on(`revertAddNode`,Ii),X.on(`revertRemoveNode`,Tr),X.on(`revertAddConnection`,xi),X.on(`revertRemoveConnection`,wi),X.on(`revertRenameNode`,pi),X.on(`revertReplaceNodeParameters`,mi),X.on(`enableNodeToggle`,Nr),X.on(`revertAddNodeGroup`,Er),X.on(`revertRemoveNodeGroup`,Or),X.on(`revertUpdateNodeGroup`,kr)}function ka(){X.off(`nodeMove`,vr),X.off(`revertAddNode`,Ii),X.off(`revertRemoveNode`,Tr),X.off(`revertAddConnection`,xi),X.off(`revertRemoveConnection`,wi),X.off(`revertRenameNode`,pi),X.off(`revertReplaceNodeParameters`,mi),X.off(`enableNodeToggle`,Nr),X.off(`revertAddNodeGroup`,Er),X.off(`revertRemoveNodeGroup`,Or),X.off(`revertUpdateNodeGroup`,kr)}async function Aa(){try{if(await Promise.all([ue.fetchAllVariables(),be.fetchAll(),yi(),me.getAvailableProjects()]),Q.value&&!I.stateIsDirty){let e=await ae.fetchWorkflow(Q.value);e&&await or(e)}}catch(e){console.error(e)}}function ja(){gn.on(`pull`,Aa)}function Ma(){gn.off(`pull`,Aa)}function Na(){xt.on(`create:sticky`,Wi)}function Pa(){xt.off(`create:sticky`,Wi)}function Fa(){if(!I.nodeViewInitialized)return!0;if(_n.value?.visible||!(qi.value.update??Ji.value.workflow.update)||J.shouldBeReadOnly)return!1;if(kn.value||An.value){let e=kn.value?`executions`:`workflows`;return _n.value=O.showMessage({title:x.baseText(An.value?`readOnlyEnv.showMessage.${e}.title`:`readOnly.showMessage.executions.title`),message:x.baseText(An.value?`readOnlyEnv.showMessage.${e}.message`:`readOnly.showMessage.executions.message`),type:`info`}),!1}return!0}function Ia(){J.requestWriteAccessForce()}function La(){An.value&&[K.NEW_WORKFLOW,K.TEMPLATE_IMPORT].find(e=>e===m.name)&&e(async()=>{Jt(),I.markStateClean(),await f.replace({name:K.HOMEPAGE})})}async function Ra(){m.name===K.EXECUTION_DEBUG&&await f.replace({name:K.WORKFLOW,params:{workflowId:Q.value}})}let za=u({x:0,y:0,zoom:1}),Ba=u({width:0,height:0}),Va=p(()=>St(za.value,Ba.value));function Ha(e,t){za.value=e,Ba.value=t,I.nodeViewOffsetPosition=[e.x,e.y]}function Ua(e){setTimeout(()=>xt.emit(`nodes:select`,{ids:e}))}function Wa(e){Qt.value=[e.x,e.y],Kr()}function Ga(e){Qt.value=[e.x,e.y]}async function Ya(e,t){if(!t.dataTransfer)return;let n=Qn(t.dataTransfer.getData(Mr));n&&(await Ni(n,!0,[e.x,e.y]),zi({createNodeActive:!1,hasAddedNodes:!0}))}function Xa(){Ue({key:`openNodeDetail`,action:({node:e})=>{Ht(e,`other`)}}),Ue({key:`openSelectiveNodeCreator`,action:({creatorview:e,connectiontype:t,node:n})=>{U.openSelectiveNodeCreator({workflowId:Q.value,node:n,connectionType:t,creatorView:e})}}),Ue({key:`showNodeCreator`,action:()=>{xe.value.unsetActiveNodeName(),e(()=>{Vi(Pt.NODE_SHORTCUT)})}})}function $a(){We(`openNodeDetail`),We(`openSelectiveNodeCreator`),We(`showNodeCreator`)}function eo(){I.addFirstStepOnLoad&&(Vi(I.addFirstStepOnLoadSource??Pt.TRIGGER_PLACEHOLDER_BUTTON),I.addFirstStepOnLoad=!1,I.addFirstStepOnLoadSource=void 0)}function to(e){let t=B?.value?.findNodeByPartialId(e);t?ot(t.id,`other`):(O.showToast({title:x.baseText(`nodeView.showMessage.ndvUrl.missingNodes.title`),message:x.baseText(`nodeView.showMessage.ndvUrl.missingNodes.content`),type:`warning`}),f.replace({name:m.name,params:{workflowId:Q.value},query:m.query}))}return W([()=>m.name,()=>m.params.workflowId],()=>{rr()}),W(p(()=>B?.value?.homeProject?.id??me.currentProject?.id??me.personalProject?.id),e=>{e&&G.fetchForProject(e)},{immediate:!0}),W(()=>ln.value||Wn.value||(B?.value?.allNodes??[]).length!==0,e=>{if(e){yn.value=[];return}let t={id:ar.AddNodes,name:ar.AddNodes,type:ar.AddNodes,typeVersion:1,position:[0,0],parameters:{}},n={id:ar.ChoicePrompt,name:ar.ChoicePrompt,type:ar.ChoicePrompt,typeVersion:1,position:[0,0],parameters:{},draggable:!1};yn.value=Te.isAIBuilderEnabled?[n]:[t]}),W(()=>m.params.nodeId,async e=>{typeof e!=`string`||e===``?xe.value.unsetActiveNodeName():to(e)}),W(()=>xe.value.activeNode,async e=>{if(![K.WORKFLOW].includes(String(m.name)))return;let t=e?.id?ne.getPartialIdForNode(e?.id):``;t!==m.params.nodeId&&await f.replace({name:m.name,params:{workflowId:Q.value,nodeId:t},query:m.query})}),W(()=>I.dirtyStateSetCount,e=>{if(e>0){if(Dn.value)return;J.requestWriteAccess(),Te.streaming||j.autoSaveWorkflow()}}),W(()=>Te.streaming,(e,t)=>{t&&!e&&I.stateIsDirty&&!J.shouldBeReadOnly&&j.autoSaveWorkflow()}),W([ur,p(()=>{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(Tn(ur.value,F.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}),w(async(e,t,n)=>{if(Se.focusPanelActive&&Se.closeFocusPanel(),An.value){n();return}let r=lt(e),i=[K.WORKFLOW,K.NEW_WORKFLOW].includes(t.name)&&[K.WORKFLOW,K.NEW_WORKFLOW].includes(e.name)&&t.params.workflowId!==e.params.workflowId;if((r===an.EXECUTIONS||r===an.EVALUATION||t.name===K.TEMPLATE_IMPORT||r===an.WORKFLOW&&t.name===K.EXECUTION_DEBUG)&&!i){n();return}await j.promptSaveUnsavedWorkflowChanges(n,{async confirm(){if(t.name===K.NEW_WORKFLOW){let t=Q.value;return await f.replace({name:K.WORKFLOW,params:{workflowId:t}}),await f.push(e),!1}return ne.setWorkflowId(``),!0}})}),z(async()=>{J.setRefreshCanvasCallback(async e=>{await Yt(e)});try{rr(),m.query.settings&&(I.openModal(Ur),f.replace({query:{settings:void 0}}))}finally{ln.value=!1,T.run(`nodeView.mount`).catch(()=>{}),setTimeout(()=>{xn.value&&to(xn.value)},500)}_e.showPersonalizationSurvey(),La(),ja(),ai(),Be(),Di(),da(),Na(),Xa(),Oa(),eo()}),ie(()=>{Zr=!0,I.closeModal(Ur),O.clearAllStickyNotifications(),B?.value?.setViewport(za.value),Ma(),oi(),Ve(),Oi(),fa(),Pa(),$a(),ka(),xt.off(`saved:workflow`,Ra)}),(e,t)=>(L(),h(`div`,{class:E(b(d).wrapper)},[ln.value?s(``,!0):(L(),o(fi,{key:0,id:b(B)?.workflowId,ref:`canvas`,"fallback-nodes":yn.value,"show-fallback-nodes":Zn.value,"event-bus":b(xt),"read-only":Wn.value,"group-expansion-mode":Gn.value,"can-execute":Jn.value,executing:Xi.value,"key-bindings":tr.value,"suppress-interaction":b(je).isMapperOpen,"striped-background":wn.value,"hide-controls":Cn.value,"initial-viewport":b(B)?.viewport,"onUpdate:nodes:position":hr,"onUpdate:node:position":_r,"onUpdate:node:activated":Vr,"onUpdate:node:deactivated":Gr,"onUpdate:node:selected":Kr,"onUpdate:node:enabled":$,"onUpdate:node:name":ui,"onUpdate:node:parameters":hi,"onUpdate:node:inputs":gi,"onUpdate:node:outputs":_i,"onUpdate:logsOpen":t[1]||=e=>b(ke).toggleOpen(e),"onUpdate:logs:inputOpen":b(ke).toggleInputOpen,"onUpdate:logs:outputOpen":b(ke).toggleOutputOpen,"onUpdate:hasRangeSelection":b(de).setHasRangeSelection,"onUpdate:selectedGroup":b(de).setSelectedGroupId,"onOpen:subWorkflow":Hr,"onClick:node":Lr,"onClick:node:add":vi,"onRun:node":ia,"onCopy:production:url":sa,"onCopy:test:url":oa,"onDelete:node":yr,"onCreate:connection":bi,"onCreate:connection:cancelled":Si,"onDelete:connection":Ci,"onClick:connection:add":Gi,"onClick:pane":Wa,"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":$i,"onSave:workflow":ci,"onCreate:workflow":si,"onViewport:change":Ha,"onSelection:end":Ga,onDragAndDrop:Ya,onTidyUp:dr,"onToggle:focusPanel":Hi,onExtractWorkflow:mr,onStartChat:wa},{default:H(()=>[r(`div`,{class:E(b(d).canvasTopLeftContainer)},[r(`div`,{class:E(b(d).canvasTopLeft)},[On.value?(L(),o(b(Fr),{key:0,size:`small`,collapsed:!1,class:E(b(d).canvasOnlyLogo),"aria-hidden":`true`},null,8,[`class`])):s(``,!0),Wn.value?s(``,!0):(L(),o(l,{key:1},{default:H(()=>[a(b(c),{collapsible:On.value,class:E(b(d).setupCredentialsButton)},null,8,[`collapsible`,`class`])]),_:1}))],2)],2),Wn.value?s(``,!0):(L(),o(io,{key:0,class:E(b(d).evaluationsCanvasInfoCardWrapper)},null,8,[`class`])),!Wn.value||Jn.value?(L(),h(`div`,{key:1,class:E(b(d).executionButtonsContainer)},[r(`div`,{class:E(b(d).executionButtons)},[ta.value?(L(),o(wt,{key:0,"disabled-reason":b(Qi),"waiting-for-webhook":Zi.value,disabled:ea.value,executing:Xi.value,"trigger-nodes":sr.value,"get-node-type":b(F).getNodeType,"selected-trigger-node-name":V.value.selectedTriggerNodeName,type:Vn.value,onMouseenter:ha,onMouseleave:ga,onExecute:t[0]||=e=>b(Ke)(`main`),onSelectTriggerNode:V.value.setSelectedTriggerNodeName},null,8,[`disabled-reason`,`waiting-for-webhook`,`disabled`,`executing`,`trigger-nodes`,`get-node-type`,`selected-trigger-node-name`,`type`,`onSelectTriggerNode`])):s(``,!0),va.value?(L(),h(M,{key:1},[(xa.value?Sa.value:nr.value)?(L(),o(Qa,{key:0,variant:`subtle`,label:b(x).baseText(`chat.hide`),class:E(b(d).chatButton),onClick:wa},null,8,[`label`,`class`])):(L(),o(vn,{key:1,label:b(x).baseText(`chat.open`),shortcut:{keys:[`c`]}},{default:H(()=>[a(Qa,{variant:ta.value?`subtle`:`solid`,label:b(x).baseText(`chat.open`),class:E(b(d).chatButton),onClick:Ca},null,8,[`variant`,`label`,`class`])]),_:1},8,[`label`]))],64)):s(``,!0),na.value?(L(),o(qa,{key:2,stopping:Yi.value,onClick:pa},null,8,[`stopping`])):s(``,!0),ra.value?(L(),o(Ja,{key:3,onClick:ma})):s(``,!0)],2)],2)):s(``,!0),An.value?(L(),o(b(dn),{key:2,theme:`warning`,icon:`lock`,class:E(b(d).readOnlyEnvironmentNotification)},{default:H(()=>[y(R(b(x).baseText(`readOnlyEnv.cantEditOrRun`)),1)]),_:1},8,[`class`])):s(``,!0),b(J).currentWriter&&!b(J).isCurrentTabWriter?(L(),o(b(Qe),{key:3,class:E(b(d).canvasCenterPill),"is-another-tab":Xn.value,"first-name":b(J).currentWriter.user.firstName,"last-name":b(J).currentWriter.user.lastName,onButtonClick:Ia},null,8,[`class`,`is-another-tab`,`first-name`,`last-name`])):s(``,!0),b(Te).streaming&&!b(Te).isHelpStreaming?(L(),o(b(cn),{key:4,class:E(b(d).canvasCenterPill),"show-stop":``,onStop:b(Te).abortStreaming},null,8,[`class`,`onStop`])):s(``,!0),(L(),o(l,null,{default:H(()=>[Wn.value?s(``,!0):(L(),o(b(n),{key:0,"create-node-active":b(U).isCreateNodeActive,"node-view-scale":za.value.zoom,"focus-panel-active":b(Se).focusPanelActive,onToggleNodeCreator:zi,onAddNodes:Ni,onAddEmptyGroup:Fi,onClose:ji},null,8,[`create-node-active`,`node-view-scale`,`focus-panel-active`]))]),_:1})),(L(),o(l,null,{default:H(()=>[a(b(i),{"read-only":Wn.value,"is-production-execution-preview":b(N).isProductionExecutionPreview.value,onRenameNode:li,onStopExecution:pa,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`])),!ln.value&&(!b(je).isNdvInFocusPanelEnabled||!Wn.value)?(L(),o(Ka,{key:1,"is-canvas-read-only":Wn.value,onContextMenuAction:ii},null,8,[`is-canvas-read-only`])):s(``,!0)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_gww6k_113`,executionButtonsContainer:`_executionButtonsContainer_gww6k_118`,executionButtons:`_executionButtons_gww6k_118`,chatButton:`_chatButton_gww6k_151`,canvasTopLeftContainer:`_canvasTopLeftContainer_gww6k_155`,canvasTopLeft:`_canvasTopLeft_gww6k_155`,canvasOnlyLogo:`_canvasOnlyLogo_gww6k_171`,setupCredentialsButton:`_setupCredentialsButton_gww6k_175`,evaluationsCanvasInfoCardWrapper:`_evaluationsCanvasInfoCardWrapper_gww6k_179`,readOnlyEnvironmentNotification:`_readOnlyEnvironmentNotification_gww6k_186`,canvasCenterPill:`_canvasCenterPill_gww6k_193`}}]]);export{Pi as n,ao as t};
@@ -0,0 +1 @@
1
+ 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]=`92d2efab-da24-42b6-9fd0-573e2d3259d6`,e._sentryDebugIdIdentifier=`sentry-dbid-92d2efab-da24-42b6-9fd0-573e2d3259d6`)})()}catch{}import{Fd as e,Hd as t,Id as n,Ld as r,Nf as i,Pd as a,Rd as o,Vd as s,Vf as c,Wd as l,cp as u,go as d,if as f,jd as p,of as m,pp as h,rf as ee,xf as g,yf as _}from"./vendor-DS7UZyZ6.js";import{$u as te,AT as v,Aw as y,DT as b,ET as x,FT as S,Fw as C,QS as w,Uv as T,Zw as E,bT as D,dw as O,gy as k,hy as A,qi as j,qv as M,vT as N,vf as P,vw as F,zv as ne}from"./app-oLfukFT9.js";async function I(e){return await k(e,`GET`,`/consent/details`)}async function L(e,t,n){return await k(e,`POST`,`/consent/approve`,{approved:t,scopes:n})}var re=d(w.CONSENT,()=>{let e=i(null),t=i(!1),n=i(null),r=i(null),a=M(),o=0;return{fetchConsentDetails:async()=>{let i=++o;t.value=!0,n.value=null,r.value=null;try{let t=await I(a.restApiContext);return i===o&&(e.value=t),e.value}catch(e){throw i===o&&(e instanceof A&&e.httpStatusCode===422?r.value=`resource_unavailable`:e instanceof A&&e.httpStatusCode===403&&(r.value=`forbidden`),n.value=e instanceof Error?e.message:`Failed to load consent details`),e}finally{i===o&&(t.value=!1)}},approveConsent:async(e,r)=>{t.value=!0,n.value=null;try{return await L(a.restApiContext,e,r)}catch(e){throw n.value=e instanceof Error?e.message:`Failed to process consent`,e}finally{t.value=!1}},resetState:()=>{e.value=null,t.value=!1,n.value=null,r.value=null},consentDetails:e,isLoading:t,error:n,errorCode:r}}),ie={viewBox:`0 0 64 8`,preserveAspectRatio:`none`},R=l({__name:`OAuthConsentView`,setup(l){let d=re(),v=S(),w=P(),k=ne(),A=T(),M=i(!1),I=i(!1),L=i(!1),R=i(!1),z=i([]),B=!0;f(()=>{B=!1});let V=a(()=>d.error),H=a(()=>d.isLoading),U=a(()=>d.errorCode===`resource_unavailable`?v.baseText(`oauth.consentView.error.resourceUnavailable`):d.errorCode===`forbidden`?v.baseText(`oauth.consentView.error.insufficientScope`):d.error),W=a(()=>{let e=d.consentDetails;return e&&!e.autoApproved?e:null}),G=a(()=>W.value?.resourceName),K=a(()=>d.consentDetails?.uiHints),q=a(()=>v.baseText(`oauth.consentView.firstParty.type.${W.value?.uiHints?.consentType??`default`}`)),J=a(()=>W.value?.scopes??[]),Y=a(()=>J.value.length>0),X=a(()=>!!W.value?.redirectUri&&!W.value?.isFirstParty),Z=a(()=>Y.value&&z.value.length===0),Q=a(()=>H.value||V.value!==null||!W.value||X.value&&!R.value||Z.value),$=a(()=>Z.value?v.baseText(`oauth.consentView.allowDisabled.noScopes`):X.value&&!R.value?v.baseText(`oauth.consentView.allowDisabled.trust`):null);_(()=>W.value?.redirectUri,()=>{R.value=!1}),_(J,e=>{let t=W.value?.previousScopes??[];z.value=t.length>0?t:[...e]},{immediate:!0});let ae=async()=>{try{let e=await d.approveConsent(!0,Y.value?z.value:void 0);A.track(`User approved MCP consent`,{client_name:W.value?.clientName,selected_scopes:z.value,selected_scopes_count:z.value.length,all_scopes_selected:z.value.length===J.value.length}),M.value=!0,window.location.href=e.redirectUrl}catch(e){k.showError(e,v.baseText(`oauth.consentView.error.allow`))}},oe=async()=>{try{await d.approveConsent(!1),A.track(`User denied MCP consent`,{client_name:W.value?.clientName}),window.location.href=window.BASE_PATH??`/`}catch(e){k.showError(e,v.baseText(`oauth.consentView.error.deny`))}},se=()=>{window.location.href=window.BASE_PATH??`/`};return ee(async()=>{w.set(v.baseText(`oauth.consentView.title`));try{let e=await d.fetchConsentDetails();if(!B)return;if(L.value=!0,e?.autoApproved&&e.redirectUrl){I.value=!0,window.location.href=e.redirectUrl;return}A.track(`User viewed MCP consent screen`,{client_name:W.value?.clientName,available_scopes_count:J.value.length})}catch(e){if(!B)return;k.showError(e,v.baseText(`oauth.consentView.error.fetchDetails`))}}),(i,a)=>(m(),o(`div`,{class:u(i.$style.overlay)},[e(`div`,{class:u(i.$style[`consent-dialog`])},[e(`header`,{class:u(i.$style.header)},[e(`div`,{class:u(i.$style.logo)},[K.value?.icon?(m(),n(c(b),{key:0,icon:K.value.icon,size:`large`,color:`text-dark`,"data-test-id":`consent-client-icon`},null,8,[`icon`])):L.value||V.value?(m(),n(c(b),{key:1,icon:`mcp`,size:`large`,color:`text-dark`,"data-test-id":`consent-client-icon`})):r(``,!0)],2),e(`span`,{class:u(i.$style.connector),"aria-hidden":`true`},[(m(),o(`svg`,ie,[e(`line`,{class:u(i.$style[`connector-line`]),x1:`0`,y1:`4`,x2:`64`,y2:`4`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-dasharray":`2 5`},null,2)])),e(`span`,{class:u(i.$style.badge)},[t(c(b),{class:u(i.$style[`badge-spinner`]),icon:`loader-circle`,size:`large`},null,8,[`class`])],2)],2),e(`div`,{class:u(i.$style.logo)},[t(c(F),{size:`small`,collapsed:!0,"release-channel":`stable`})],2)],2),M.value?(m(),o(`div`,{key:0,class:u(i.$style.success),"data-test-id":`consent-success-screen`},[t(c(C),{tag:`h2`,size:`large`,bold:!0},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.success.title`)),1)]),_:1}),t(c(N),{color:`text-base`},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.success.description`)),1)]),_:1})],2)):V.value?(m(),o(`div`,{key:1,class:u(i.$style.content),"data-test-id":`consent-error`},[t(c(C),{tag:`h2`,size:`large`,bold:!0},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.error.heading`)),1)]),_:1}),t(c(O),{theme:`danger`,"data-test-id":`consent-error-notice`,content:U.value??``},null,8,[`content`])],2)):I.value||!L.value?(m(),o(`div`,{key:2,class:u(i.$style.content),"data-test-id":`consent-loading`},null,2)):(m(),o(`div`,{key:3,class:u(i.$style.content),"data-test-id":`consent-content`},[W.value?.isFirstParty?(m(),n(c(C),{key:0,tag:`h2`,size:`large`,bold:!0},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.firstParty.heading`,{interpolate:{resourceName:G.value??``}})),1)]),_:1})):G.value?(m(),n(c(C),{key:1,tag:`h2`,size:`large`,bold:!0},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.headingWithWorkflow`,{interpolate:{clientName:W.value?.clientName??``,resourceName:G.value}})),1)]),_:1})):(m(),n(c(C),{key:2,tag:`h2`,size:`large`,bold:!0},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.heading`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})),e(`div`,{class:u(i.$style[`text-content`])},[W.value?.isFirstParty?(m(),n(c(N),{key:0,color:`text-base`,size:`medium`},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.firstParty.description`,{interpolate:{resourceType:q.value}})),1)]),_:1})):G.value?(m(),n(c(N),{key:1,color:`text-base`,size:`medium`},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.descriptionWithWorkflow`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})):Y.value?(m(),n(c(N),{key:2,color:`text-base`,size:`medium`},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.scopes.description`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})):(m(),n(c(N),{key:3,color:`text-base`,size:`medium`},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.description`,{interpolate:{clientName:W.value?.clientName??``}})),1)]),_:1})),Y.value?(m(),n(te,{key:4,modelValue:z.value,"onUpdate:modelValue":a[0]||=e=>z.value=e,"available-scopes":J.value,groups:c(j),"scope-tools":W.value?.scopeTools,"i18n-key-prefix":`oauth.consentView.scopes`,"root-test-id":`consent-scopes`},null,8,[`modelValue`,`available-scopes`,`groups`,`scope-tools`])):G.value?r(``,!0):(m(),o(`ul`,{key:5,class:u(i.$style[`permission-list`])},[e(`li`,null,h(c(v).baseText(`oauth.consentView.action.listWorkflows`)),1),e(`li`,null,h(c(v).baseText(`oauth.consentView.action.workflowDetails`)),1),e(`li`,null,h(c(v).baseText(`oauth.consentView.action.executeWorkflows`)),1),e(`li`,null,h(c(v).baseText(`oauth.consentView.action.executionDetails`)),1),e(`li`,null,h(c(v).baseText(`oauth.consentView.action.createUpdateWorkflows`)),1),e(`li`,null,h(c(v).baseText(`oauth.consentView.action.createDataTables`)),1),e(`li`,null,h(c(v).baseText(`oauth.consentView.action.searchProjectsAndFolders`)),1)],2))],2)],2)),!M.value&&!I.value&&(V.value||L.value)?(m(),o(`footer`,{key:4,class:u(i.$style.footer)},[!V.value&&X.value?(m(),o(`div`,{key:0,class:u(i.$style.divided)},[t(c(E),{theme:`secondary`,iconless:!0,class:u(i.$style[`redirect-note`]),"data-test-id":`consent-redirect-warning`},{default:g(()=>[e(`span`,{class:u(i.$style[`redirect-note-title`])},h(c(v).baseText(`oauth.consentView.redirectWarning.title`)),3),e(`code`,{class:u(i.$style[`redirect-url`]),"data-test-id":`consent-redirect-uri`},h(W.value?.redirectUri),3)]),_:1},8,[`class`])],2)):r(``,!0),e(`div`,{class:u([i.$style[`footer-actions`],i.$style.divided])},[!V.value&&X.value?(m(),n(c(y),{key:0,modelValue:R.value,"onUpdate:modelValue":a[1]||=e=>R.value=e,class:u(i.$style[`trust-confirm`]),label:c(v).baseText(`oauth.consentView.redirectWarning.confirm`),"data-test-id":`consent-redirect-confirm`},null,8,[`modelValue`,`class`,`label`])):r(``,!0),e(`div`,{class:u(i.$style[`button-group`])},[V.value?(m(),n(c(x),{key:0,variant:`solid`,"data-test-id":`consent-close-button`,size:`large`,onClick:se},{default:g(()=>[s(h(c(v).baseText(`generic.close`)),1)]),_:1})):(m(),o(p,{key:1},[t(c(x),{variant:`outline`,"data-test-id":`consent-deny-button`,size:`large`,loading:H.value,disabled:H.value,onClick:oe},{default:g(()=>[s(h(c(v).baseText(`generic.deny`)),1)]),_:1},8,[`loading`,`disabled`]),t(c(D),{disabled:!Q.value||!$.value},{content:g(()=>[s(h($.value),1)]),default:g(()=>[t(c(x),{variant:`solid`,"data-test-id":`consent-allow-button`,size:`large`,loading:H.value,disabled:Q.value,onClick:ae},{default:g(()=>[s(h(c(v).baseText(`oauth.consentView.allow`)),1)]),_:1},8,[`loading`,`disabled`])]),_:1},8,[`disabled`])],64))],2)],2)],2)):r(``,!0)],2)],2))}}),z=`_overlay_12b84_1`,B=`_header_12b84_31`,V=`_logo_12b84_38`,H=`_connector_12b84_52`,U=`_badge_12b84_79`,W=`_content_12b84_112`,G=`_success_12b84_118`,K=`_footer_12b84_147`,q=`_divided_12b84_146`,J=v(R,[[`__cssModules`,{$style:{overlay:z,"consent-dialog":`_consent-dialog_12b84_14`,header:B,logo:V,connector:H,"connector-line":`_connector-line_12b84_69`,"mcp-connector-dash":`_mcp-connector-dash_12b84_1`,badge:U,"badge-spinner":`_badge-spinner_12b84_96`,"mcp-connector-spin":`_mcp-connector-spin_12b84_1`,content:W,success:G,"text-content":`_text-content_12b84_127`,"permission-list":`_permission-list_12b84_133`,footer:K,divided:q,"redirect-note":`_redirect-note_12b84_165`,"redirect-note-title":`_redirect-note-title_12b84_173`,"redirect-url":`_redirect-url_12b84_174`,"footer-actions":`_footer-actions_12b84_188`,"button-group":`_button-group_12b84_197`,"trust-confirm":`_trust-confirm_12b84_206`}}]]);export{J as default};
@@ -1 +1 @@
1
- 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]=`ce6762fc-0518-4f8e-ab4e-13334192dac8`,e._sentryDebugIdIdentifier=`sentry-dbid-ce6762fc-0518-4f8e-ab4e-13334192dac8`)})()}catch{}import{Fd as e,Rd as t,Wd as n,cp as r,lf as i,of as a}from"./vendor-DS7UZyZ6.js";import{jT as o}from"./app-CiawIgN9.js";var s=o(n({__name:`PageViewLayout`,props:{fullWidth:{type:Boolean,default:!1}},setup(n){return(o,s)=>(a(),t(`div`,{class:r([o.$style.wrapper,n.fullWidth?o.$style.fullWidth:``])},[i(o.$slots,`header`),e(`main`,{class:r(o.$style.content)},[i(o.$slots,`default`)],2)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_172vb_113`,fullWidth:`_fullWidth_172vb_129`,content:`_content_172vb_134`}}]]);export{s as t};
1
+ 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]=`7fa22784-cfd6-4571-9806-20b7c4364f05`,e._sentryDebugIdIdentifier=`sentry-dbid-7fa22784-cfd6-4571-9806-20b7c4364f05`)})()}catch{}import{Fd as e,Rd as t,Wd as n,cp as r,lf as i,of as a}from"./vendor-DS7UZyZ6.js";import{AT as o}from"./app-oLfukFT9.js";var s=o(n({__name:`PageViewLayout`,props:{fullWidth:{type:Boolean,default:!1}},setup(n){return(o,s)=>(a(),t(`div`,{class:r([o.$style.wrapper,n.fullWidth?o.$style.fullWidth:``])},[i(o.$slots,`header`),e(`main`,{class:r(o.$style.content)},[i(o.$slots,`default`)],2)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_172vb_113`,fullWidth:`_fullWidth_172vb_129`,content:`_content_172vb_134`}}]]);export{s as t};
@@ -1 +1 @@
1
- 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]=`c50dd12b-e41e-4ab8-8540-bc1f0ba0a546`,e._sentryDebugIdIdentifier=`sentry-dbid-c50dd12b-e41e-4ab8-8540-bc1f0ba0a546`)})()}catch{}import{Hd as e,Pd as t,Rd as n,Vd as r,Vf as i,Wd as a,cp as o,of as s,pp as c,xf as l}from"./vendor-DS7UZyZ6.js";import{IT as u,fC as d,jT as f,kw as p,yT as m,zl as h,zp as g}from"./app-CiawIgN9.js";var _=a({__name:`ProjectBreadcrumb`,props:{currentProject:{default:void 0},isDragging:{type:Boolean,default:!1},isShared:{type:Boolean,default:!1},icon:{default:void 0}},emits:[`projectHover`,`projectDrop`],setup(a,{emit:f}){let _=a,v=f,y=u(),b=t(()=>_.icon?_.icon:_.isShared?{type:`icon`,value:`share`}:_.currentProject?.type===g.Personal?{type:`icon`,value:`user`}:_.currentProject?.name?d(_.currentProject.icon)?_.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),x=t(()=>_.isShared?y.baseText(`projects.menu.shared`):_.currentProject?.type===g.Personal?y.baseText(`projects.menu.personal`):_.currentProject?.name),S=t(()=>_.isShared?`/shared`:_.currentProject?`/projects/${_.currentProject.id}`:`/home`),C=()=>{v(`projectHover`)},w=()=>{_.isDragging&&v(`projectDrop`)};return(t,u)=>(s(),n(`div`,{class:o({[t.$style[`home-project`]]:!0,[t.$style.dragging]:a.isDragging}),"data-test-id":`home-project`,"data-droppable":``,onMouseenter:C,onMouseup:u[0]||=e=>a.isDragging?w():null},[e(i(p),{to:S.value,class:o([t.$style[`project-link`]])},{default:l(()=>[e(h,{icon:b.value,"border-less":!0,size:`mini`,title:x.value},null,8,[`icon`,`title`]),e(i(m),{size:`medium`,color:`text-base`,class:o(t.$style[`project-label`]),title:x.value},{default:l(()=>[r(c(x.value),1)]),_:1},8,[`class`,`title`])]),_:1},8,[`to`,`class`])],34))}}),v=`_dragging_1a0u6_6`,y=f(_,[[`__cssModules`,{$style:{"home-project":`_home-project_1a0u6_1`,dragging:v,"project-link":`_project-link_1a0u6_19`,"project-label":`_project-label_1a0u6_25`}}]]);export{y as t};
1
+ 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]=`efc16e5b-30b4-4a27-80ce-fe1f0e4d2e7e`,e._sentryDebugIdIdentifier=`sentry-dbid-efc16e5b-30b4-4a27-80ce-fe1f0e4d2e7e`)})()}catch{}import{Hd as e,Pd as t,Rd as n,Vd as r,Vf as i,Wd as a,cp as o,of as s,pp as c,xf as l}from"./vendor-DS7UZyZ6.js";import{AT as u,FT as d,Ow as f,dC as p,vT as m,zl as h,zp as g}from"./app-oLfukFT9.js";var _=a({__name:`ProjectBreadcrumb`,props:{currentProject:{default:void 0},isDragging:{type:Boolean,default:!1},isShared:{type:Boolean,default:!1},icon:{default:void 0}},emits:[`projectHover`,`projectDrop`],setup(a,{emit:u}){let _=a,v=u,y=d(),b=t(()=>_.icon?_.icon:_.isShared?{type:`icon`,value:`share`}:_.currentProject?.type===g.Personal?{type:`icon`,value:`user`}:_.currentProject?.name?p(_.currentProject.icon)?_.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),x=t(()=>_.isShared?y.baseText(`projects.menu.shared`):_.currentProject?.type===g.Personal?y.baseText(`projects.menu.personal`):_.currentProject?.name),S=t(()=>_.isShared?`/shared`:_.currentProject?`/projects/${_.currentProject.id}`:`/home`),C=()=>{v(`projectHover`)},w=()=>{_.isDragging&&v(`projectDrop`)};return(t,u)=>(s(),n(`div`,{class:o({[t.$style[`home-project`]]:!0,[t.$style.dragging]:a.isDragging}),"data-test-id":`home-project`,"data-droppable":``,onMouseenter:C,onMouseup:u[0]||=e=>a.isDragging?w():null},[e(i(f),{to:S.value,class:o([t.$style[`project-link`]])},{default:l(()=>[e(h,{icon:b.value,"border-less":!0,size:`mini`,title:x.value},null,8,[`icon`,`title`]),e(i(m),{size:`medium`,color:`text-base`,class:o(t.$style[`project-label`]),title:x.value},{default:l(()=>[r(c(x.value),1)]),_:1},8,[`class`,`title`])]),_:1},8,[`to`,`class`])],34))}}),v=`_dragging_1a0u6_6`,y=u(_,[[`__cssModules`,{$style:{"home-project":`_home-project_1a0u6_1`,dragging:v,"project-link":`_project-link_1a0u6_19`,"project-label":`_project-label_1a0u6_25`}}]]);export{y as t};
@@ -1 +1 @@
1
- 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]=`651bab79-51d3-4fc3-9b49-987973f1ac90`,e._sentryDebugIdIdentifier=`sentry-dbid-651bab79-51d3-4fc3-9b49-987973f1ac90`)})()}catch{}import{Id as e,Nf as t,Vf as n,Wd as r,Zd as i,cp as a,ef as o,hf as s,of as c,yf as l}from"./vendor-DS7UZyZ6.js";import{IT as u,Mp as d,Np as f,cs as p}from"./app-CiawIgN9.js";var m=r({inheritAttrs:!1,__name:`ProjectFilter`,props:i({placeholder:{},size:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(r){let i=s(r,`modelValue`),m=u(),h=f(),g=d(),_=/^<([A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,})>$/,v=e=>!!e.name&&!_.test(e.name.trim()),y=t(null),b=e=>[...h.availableProjects,...h.myProjects].find(t=>t.id===e)??null;return l(i,e=>{if(!e){y.value=null;return}y.value?.id!==e.id&&(y.value=b(e.id))},{immediate:!0}),l(y,e=>{let t=e?{id:e.id}:null;t?.id!==i.value?.id&&(i.value=t)}),o(async()=>{h.globalProjectPermissions.list||await h.getAvailableProjects(),i.value&&!y.value&&(y.value=b(i.value.id))}),(t,i)=>(c(),e(p,{modelValue:y.value,"onUpdate:modelValue":i[0]||=e=>y.value=e,class:a(t.$attrs.class),"search-fn":n(g),"filter-fn":v,placeholder:r.placeholder,"empty-options-text":n(m).baseText(`projects.sharing.noMatchingProjects`),size:r.size,clearable:``,onClear:i[1]||=e=>y.value=null},null,8,[`modelValue`,`class`,`search-fn`,`placeholder`,`empty-options-text`,`size`]))}});export{m as default};
1
+ 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]=`fcc31d8e-723d-4b64-8811-f32a364290ef`,e._sentryDebugIdIdentifier=`sentry-dbid-fcc31d8e-723d-4b64-8811-f32a364290ef`)})()}catch{}import{Id as e,Nf as t,Vf as n,Wd as r,Zd as i,cp as a,ef as o,hf as s,of as c,yf as l}from"./vendor-DS7UZyZ6.js";import{FT as u,Mp as d,Np as f,cs as p}from"./app-oLfukFT9.js";var m=r({inheritAttrs:!1,__name:`ProjectFilter`,props:i({placeholder:{},size:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(r){let i=s(r,`modelValue`),m=u(),h=f(),g=d(),_=/^<([A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,})>$/,v=e=>!!e.name&&!_.test(e.name.trim()),y=t(null),b=e=>[...h.availableProjects,...h.myProjects].find(t=>t.id===e)??null;return l(i,e=>{if(!e){y.value=null;return}y.value?.id!==e.id&&(y.value=b(e.id))},{immediate:!0}),l(y,e=>{let t=e?{id:e.id}:null;t?.id!==i.value?.id&&(i.value=t)}),o(async()=>{h.globalProjectPermissions.list||await h.getAvailableProjects(),i.value&&!y.value&&(y.value=b(i.value.id))}),(t,i)=>(c(),e(p,{modelValue:y.value,"onUpdate:modelValue":i[0]||=e=>y.value=e,class:a(t.$attrs.class),"search-fn":n(g),"filter-fn":v,placeholder:r.placeholder,"empty-options-text":n(m).baseText(`projects.sharing.noMatchingProjects`),size:r.size,clearable:``,onClear:i[1]||=e=>y.value=null},null,8,[`modelValue`,`class`,`search-fn`,`placeholder`,`empty-options-text`,`size`]))}});export{m as default};
@@ -0,0 +1 @@
1
+ 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]=`f5cc27f1-f4c3-4fbe-89a0-ccf1f8ec6671`,e._sentryDebugIdIdentifier=`sentry-dbid-f5cc27f1-f4c3-4fbe-89a0-ccf1f8ec6671`)})()}catch{}import{Ad as e,Fd as t,Gu as n,Hd as r,Id as i,Iu as a,Ld as o,Nf as s,Pd as c,Qd as l,Rd as u,Vd as d,Vf as f,Wd as p,_f as m,cp as h,cs as g,lf as _,of as v,pp as y,rf as b,ss as x,tf as S,xf as C,yf as w}from"./vendor-DS7UZyZ6.js";import{AT as T,BC as E,Bv as D,Cv as ee,DT as O,Db as k,ET as A,FT as j,Fp as M,Fw as te,Gv as ne,Jr as N,Kv as re,Np as P,Ow as F,Pp as I,Qr as L,TT as R,Uv as z,b as ie,bT as B,bd as ae,ch as oe,dC as se,oT as ce,qv as le,vT as V,xa as H,y as U,yh as ue,zl as de,zp as W}from"./app-oLfukFT9.js";import{t as G}from"./promotions.eventBus-1v4t_Hbs.js";import{i as fe,t as K}from"./readyToRun.store-CE87oIgp.js";import{t as pe}from"./useLatestFetch-BqC-A0c3.js";import{n as q}from"./useInstancePromotionConnection-y1iOgVEj.js";import{t as J}from"./promotions.api-D6ntl2JV.js";function me(e,t){if(!e.dynamicRoute)return e;let n={name:e.dynamicRoute.name};e.dynamicRoute.includeProjectId&&t&&(n.params={projectId:t});let{dynamicRoute:r,...i}=e;return{...i,to:n}}function he(e,t){return e.map(e=>me(e,t))}var ge=p({__name:`ProjectTabs`,props:{showSettings:{type:Boolean,default:!1},showExecutions:{type:Boolean,default:!0},pageType:{default:`project`},additionalTabs:{default:()=>[]}},setup(e){let t=e,n=j(),r=x(),a=P(),o=z(),l=s(``),u=c(()=>l.value?String(l.value):``),d=c(()=>Array.isArray(r?.params?.projectId)?r.params.projectId[0]:r?.params?.projectId),p=c(()=>a.currentProject?.type===W.Public),m=()=>d.value?{workflows:{name:D.PROJECTS_WORKFLOWS,params:{projectId:d.value}},credentials:{name:D.PROJECTS_CREDENTIALS,params:{projectId:d.value}},executions:{name:D.PROJECTS_EXECUTIONS,params:{projectId:d.value}},variables:{name:D.PROJECTS_VARIABLES,params:{projectId:d.value}}}:t.pageType===`shared`?{workflows:{name:D.SHARED_WORKFLOWS},credentials:{name:D.SHARED_CREDENTIALS},executions:{name:D.NOT_FOUND},variables:{name:D.NOT_FOUND}}:{workflows:{name:D.WORKFLOWS},credentials:{name:D.CREDENTIALS},executions:{name:D.EXECUTIONS},variables:{name:D.HOME_VARIABLES}},h=(e,t,r)=>({label:n.baseText(e),value:r[t].name,to:r[t]}),g=c(()=>{let e=m(),r=[h(`mainSidebar.workflows`,`workflows`,e),h(`mainSidebar.credentials`,`credentials`,e)];if(t.showExecutions&&r.push(h(`mainSidebar.executions`,`executions`,e)),(t.pageType===`overview`||t.pageType===`project`&&!p.value)&&r.push(h(`mainSidebar.variables`,`variables`,e)),t.additionalTabs?.length){let e=he(t.additionalTabs,d.value);for(let t of e){let{insertAfter:e,...n}=t,i=e?r.findIndex(t=>t.value===e):-1;i===-1?r.push(n):r.splice(i+1,0,n)}}return t.showSettings&&r.push({label:n.baseText(`projects.settings`),value:D.PROJECT_SETTINGS,to:{name:D.PROJECT_SETTINGS,params:{projectId:d.value}}}),r});w(()=>r?.name,()=>{l.value=r.name===D.PROJECTS_FOLDERS?D.PROJECTS_WORKFLOWS:r.name},{immediate:!0});function _(e){l.value===`variables`&&o.track(`User clicked project variables tab`,{project_id:d.value}),l.value=e}return(e,t)=>(v(),i(f(E),{"model-value":u.value,options:g.value,"data-test-id":`project-tabs`,"onUpdate:modelValue":_},null,8,[`model-value`,`options`]))}}),_e=T(p({__name:`ProjectCreateResource`,props:{actions:{},disabled:{type:Boolean},variant:{}},emits:[`action`],setup(e,{expose:t,emit:n}){let i=n,a=m(`actionToggleRef`);return t({openActionToggle:e=>a.value?.openActionToggle(e)}),(t,n)=>(v(),u(`div`,{class:h([t.$style.buttonGroup])},[_(t.$slots,`default`),r(f(ce),{ref_key:`actionToggleRef`,ref:a,"data-test-id":`add-resource`,actions:e.actions,placement:`bottom-end`,teleported:!1,onAction:n[0]||=e=>i(`action`,e)},{default:C(()=>[r(f(R),{disabled:e.disabled,class:h([t.$style.buttonGroupDropdown]),icon:`chevron-down`,variant:e.variant??`solid`},null,8,[`disabled`,`class`,`variant`])]),_:1},8,[`actions`])],2))}}),[[`__cssModules`,{$style:{buttonGroup:`_buttonGroup_s7s71_1`,buttonGroupDropdown:`_buttonGroupDropdown_s7s71_12`}}]]),ve=(e,t,n)=>{if(!e||t<=0)return``;let r=.55*n,i=Math.floor(t/r);if(e.length<=i)return``;let a=e.slice(0,i),o=a.lastIndexOf(` `);return a.slice(0,o===-1?i:o)+`...`},ye=p({__name:`ReadyToRunButton`,props:{hasActiveCallouts:{type:Boolean}},setup(e){let t=e,n=x(),r=j(),a=fe(),s=P(),l=M(),u=H(),p=K(),m=c(()=>k(s.currentProject?.scopes??s.personalProject?.scopes)),h=c(()=>p.getButtonVisibility(u.totalWorkflowCount>0,m.value.workflow.create,l.preferences.branchReadOnly)&&!t.hasActiveCallouts),g=async()=>{let e=a.isOverviewSubPage?s.personalProject?.id:n.params.projectId;try{await p.claimCreditsAndOpenWorkflow(`button`,n.params.folderId,e)}catch{}};return(e,t)=>h.value?(v(),i(f(A),{key:0,variant:`subtle`,"data-test-id":`ready-to-run-button`,icon:`zap`,loading:f(p).claimingCredits,disabled:f(l).preferences.branchReadOnly||f(p).claimingCredits,onClick:g},{default:C(()=>[d(y(f(r).baseText(`workflows.empty.readyToRun`)),1)]),_:1},8,[`loading`,`disabled`])):o(``,!0)}});function Y(e,t,n){let r=le(),{next:i}=pe(),a=s(0),o=s(!1);async function c(){let s=i(),c=e.value;if(a.value=0,o.value=!1,!(!n.value||!c))try{let{changes:e}=await J(r.restApiContext,c,t);s()&&(a.value=e.length)}catch{s()&&(o.value=!0)}}return w([e,n],c,{immediate:!0}),{count:a,failed:o,refetch:c}}var be=T(p({__name:`PromotionBanners`,setup(e){let t=j(),n=g(),i=oe(),a=ne(),s=P(),{isEnabled:l}=ie(),p=c(()=>s.currentProject?.id),m=c(()=>s.currentProject?.type===W.Team),_=c(()=>k(s.currentProject?.scopes).project),x=c(()=>k(a.currentUser?.globalScopes).gitConnection),{hasPromoteConfig:T,hasApplyConfig:E,load:ee}=q(),A=c(()=>m.value&&l.value&&!!_.value.export&&!!x.value.list&&(!!x.value.push||!!x.value.pull)),M=c(()=>A.value&&T.value&&!!x.value.push),te=c(()=>A.value&&E.value&&!!x.value.pull);w([A,p],async([e])=>{e&&await ee()},{immediate:!0});let{count:N,refetch:re}=Y(p,`promote`,M),{count:I,failed:L,refetch:R}=Y(p,`apply`,te);async function z({projectId:e,project:t}){t&&s.currentProjectId===e&&s.setCurrentProject(t),await Promise.all([re(),R()])}async function B({projectId:e}){s.currentProjectId===e&&await re()}async function ae({projectId:e}){s.currentProjectId===e&&await n.replace({name:D.HOMEPAGE})}b(()=>{G.on(`applied`,z),G.on(`promoted`,B),G.on(`projectRemoved`,ae)}),S(()=>{G.off(`applied`,z),G.off(`promoted`,B),G.off(`projectRemoved`,ae)});let se=c(()=>N.value===1?t.baseText(`promotions.banner.singleChangeAvailable`):t.baseText(`promotions.banner.changesAvailable`,{interpolate:{count:String(N.value)}})),ce=c(()=>L.value?t.baseText(`promotions.banner.incoming.error`):I.value===1?t.baseText(`promotions.banner.incoming.singleChangeAvailable`):t.baseText(`promotions.banner.incoming.changesAvailable`,{interpolate:{count:String(I.value)}}));function le(){p.value&&i.openModalWithData({name:U,data:{projectId:p.value,direction:`promote`}})}function H(){p.value&&i.openModalWithData({name:U,data:{projectId:p.value,direction:`apply`}})}return(e,n)=>(v(),u(`div`,null,[M.value&&f(N)>0?(v(),u(`div`,{key:0,class:h(e.$style.banner),"data-test-id":`promotion-banner`},[r(f(O),{icon:`upload`,size:`small`}),r(f(V),{size:`small`},{default:C(()=>[d(y(se.value),1)]),_:1}),r(f(F),{size:`small`,"data-test-id":`promotion-banner-link`,onClick:le},{default:C(()=>[d(y(f(t).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):o(``,!0),te.value&&(f(I)>0||f(L))?(v(),u(`div`,{key:1,class:h(e.$style.banner),"data-test-id":`promotion-incoming-banner`},[r(f(O),{icon:f(L)?`triangle-alert`:`download`,size:`small`},null,8,[`icon`]),r(f(V),{size:`small`},{default:C(()=>[d(y(ce.value),1)]),_:1}),r(f(F),{size:`small`,"data-test-id":`promotion-incoming-banner-link`,onClick:H},{default:C(()=>[d(y(f(t).baseText(`promotions.banner.viewChanges`)),1)]),_:1})],2)):o(``,!0)]))}}),[[`__cssModules`,{$style:{banner:`_banner_k33wq_1`}}]]),xe={style:{display:`flex`,gap:`var(--spacing--xs)`,"align-items":`center`}},Se=T(p({__name:`ProjectHeader`,props:{hasActiveCallouts:{type:Boolean},mainButton:{}},emits:[`createFolder`],setup(p,{emit:m}){let b=x(),S=g(),w=j(),T=P(),E=M(),O=re(),F=oe(),ie=z(),{createAgent:ce}=N(),le=ne(),H=I(),U=c(()=>T.currentProject?.id),G=c(()=>T.currentProject?.type===W.Team),K=c(()=>U.value?H.isFavorite(U.value,`project`):!1);async function pe(){U.value&&await H.toggleFavorite(U.value,`project`)}let q=fe(),J=p,me=m,he=c(()=>T.currentProject?.type===W.Personal?{type:`icon`,value:`user`}:T.currentProject?.name?se(T.currentProject.icon)?T.currentProject.icon:{type:`icon`,value:`layers`}:{type:`icon`,value:`house`}),Y=c(()=>T.currentProject??T.personalProject),{canCreate:Se}=L(()=>Y.value?.id),Ce=c(()=>Y.value?.type===W.Personal),we=c(()=>T.currentProject?T.currentProject.type===W.Personal?w.baseText(`projects.menu.personal`):T.currentProject.name:q.isSharedSubPage?w.baseText(`projects.header.shared.title`):q.isOverviewSubPage?w.baseText(`projects.menu.overview`):Ce.value?w.baseText(`projects.menu.personal`):null),Te=c(()=>k(T.currentProject?.scopes).project),Ee=c(()=>k(T.currentProject?.scopes).projectVariable),De=c(()=>k(le.currentUser?.globalScopes).variable),Oe=c(()=>k(T.currentProject?.scopes).externalSecretsProvider),ke=c(()=>!!b?.params?.projectId&&(!!Te.value.update||!!Te.value.manageMembers||!!Oe.value.read)&&T.currentProject?.type===W.Team),Ae=c(()=>O.isFoldersFeatureEnabled&&[D.PROJECTS_WORKFLOWS,D.PROJECTS_FOLDERS].includes(b.name)),je=c(()=>q.isSharedSubPage?`shared`:q.isOverviewSubPage?`overview`:`project`),Me=c(()=>{let e=F.moduleTabs[je.value];return Object.keys(e).filter(e=>O.isModuleActive(e)&&(e!==`agents`||O.isAgentsEnabled)).flatMap(t=>e[t])}),X={WORKFLOW:`workflow`,CREDENTIAL:`credential`,FOLDER:`folder`,DATA_TABLE:`dataTable`,VARIABLE:`variable`,AGENT:`agent`},Ne=c(()=>({value:X.WORKFLOW,label:w.baseText(`projects.header.create.workflow`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!k(Y.value?.scopes).workflow.create})),Pe=c(()=>({value:X.CREDENTIAL,label:w.baseText(`projects.header.create.credential`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!k(Y.value?.scopes).credential.create})),Fe=c(()=>({value:X.DATA_TABLE,label:w.baseText(`dataTable.add.button.label`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!k(Y.value?.scopes)?.dataTable?.create})),Ie=c(()=>({value:X.VARIABLE,label:w.baseText(`variables.add.button.label`),icon:E.preferences.branchReadOnly?`lock`:void 0,size:`mini`,disabled:E.preferences.branchReadOnly||!O.isEnterpriseFeatureEnabled[ee.Variables]||!Ee.value.create&&!De.value.create})),Le=c(()=>({value:X.AGENT,label:w.baseText(`projects.header.create.agent`),size:`mini`,disabled:!Se.value})),Z=c(()=>J.mainButton===X.AGENT&&!O.isAgentsEnabled?X.WORKFLOW:J.mainButton??X.WORKFLOW),Re=c(()=>{switch(Z.value){case X.CREDENTIAL:return Pe.value;case X.DATA_TABLE:return Fe.value;case X.VARIABLE:return Ie.value;case X.AGENT:return Le.value;case X.WORKFLOW:default:return Ne.value}}),ze=c(()=>{let e=[];return Z.value!==X.WORKFLOW&&e.push({value:X.WORKFLOW,label:w.baseText(`projects.header.create.workflow`),disabled:E.preferences.branchReadOnly||!k(Y.value?.scopes).workflow.create}),Z.value!==X.CREDENTIAL&&e.push({value:X.CREDENTIAL,label:w.baseText(`projects.header.create.credential`),disabled:E.preferences.branchReadOnly||!k(Y.value?.scopes).credential.create}),Z.value!==X.VARIABLE&&O.isEnterpriseFeatureEnabled[ee.Variables]&&e.push({value:X.VARIABLE,label:w.baseText(`variables.add.button.label`),disabled:E.preferences.branchReadOnly||!k(Y.value?.scopes).projectVariable.create}),Ae.value&&e.push({value:X.FOLDER,label:w.baseText(`projects.header.create.folder`),disabled:E.preferences.branchReadOnly||!k(Y.value?.scopes).folder.create}),O.isDataTableFeatureEnabled&&Z.value!==X.DATA_TABLE&&e.push({value:X.DATA_TABLE,label:w.baseText(`dataTable.add.button.label`),disabled:E.preferences.branchReadOnly||!k(Y.value?.scopes)?.dataTable?.create}),O.isAgentsEnabled&&Z.value!==X.AGENT&&e.push({value:X.AGENT,label:w.baseText(`projects.header.create.agent`),disabled:!Se.value}),e}),Be=c(()=>!q.isOverviewSubPage&&!q.isSharedSubPage&&!Ce.value);function Ve(e){return[D.PROJECTS_CREDENTIALS,D.CREDENTIALS,D.SHARED_CREDENTIALS].includes(e)}function He(e){return[D.PROJECTS_WORKFLOWS,D.WORKFLOWS,D.SHARED_WORKFLOWS,D.PROJECTS_FOLDERS].includes(e)}function Ue(e){if(Ve(e))return`credentials_list`;if(He(e))return`workflow_list`}let We={[X.WORKFLOW]:e=>{S.push({name:D.NEW_WORKFLOW,query:{projectId:e,parentFolderId:b.params.folderId,uiContext:Ue(b.name?.toString()??``)}})},[X.CREDENTIAL]:e=>{S.push({name:D.PROJECTS_CREDENTIALS,params:{projectId:e,credentialId:`create`},query:{uiContext:Ue(b.name?.toString()??``)}})},[X.FOLDER]:()=>{me(`createFolder`)},[X.DATA_TABLE]:e=>{S.push({name:ae,params:{projectId:e,new:`new`}})},[X.VARIABLE]:()=>{F.openModalWithData({name:ue,data:{mode:`new`}}),ie.track(`User clicked header add variable button`)},[X.AGENT]:(e,t)=>{ce(t,e)}},Ge=c(()=>q.isSharedSubPage?w.baseText(`projects.header.shared.subtitle`):q.isOverviewSubPage?w.baseText(O.isDataTableFeatureEnabled?`projects.header.overview.subtitleWithDataTables`:`projects.header.overview.subtitle`):Ce.value?w.baseText(O.isDataTableFeatureEnabled?`projects.header.personal.subtitleWithDataTables`:`projects.header.personal.subtitle`):null),Q=c(()=>q.isProjectsSubPage?T.currentProject?.description:null),Ke=c(()=>K.value?`star-filled`:`star`),$=s(null),{width:qe}=a($),Je=s(null),{width:Ye}=a(Je),Xe=s(null);n($,()=>{if(!$.value)return;let e=$.value.querySelector(`span[data-test-id="project-subtitle"]`);if(e){let t=window.getComputedStyle(e);Xe.value=parseFloat(t.fontSize)}});let Ze=c(()=>{if(!Q.value)return``;let e=qe.value-Ye.value,t=Xe.value??14;return ve(Q.value,e,t)}),Qe=(e,t)=>{let n=We[e];Y.value&&n(Y.value.id,t)};return(n,a)=>(v(),u(`div`,null,[t(`div`,{ref_key:`projectHeaderRef`,ref:$,class:h(n.$style.projectHeader)},[t(`div`,{class:h(n.$style.projectDetails)},[Be.value?(v(),i(de,{key:0,icon:he.value,"border-less":!0,size:`medium`},null,8,[`icon`])):o(``,!0),t(`div`,{class:h(n.$style.headerActions)},[we.value?(v(),i(f(te),{key:0,bold:``,tag:`h2`,size:`xlarge`,"data-test-id":`project-name`},{default:C(()=>[d(y(we.value),1)]),_:1})):o(``,!0),Ge.value?(v(),i(f(V),{key:1,color:`text-light`,"data-test-id":`project-subtitle`},{default:C(()=>[d(y(Ge.value),1)]),_:1})):Q.value?(v(),u(`div`,{key:2,class:h(n.$style.projectDescriptionWrapper)},[r(f(V),{color:`text-light`,"data-test-id":`project-subtitle`},{default:C(()=>[d(y(Ze.value||Q.value),1)]),_:1}),Ze.value?(v(),u(`div`,{key:0,class:h(n.$style.tooltip)},[r(f(V),{color:`text-light`},{default:C(()=>[d(y(Q.value),1)]),_:1})],2)):o(``,!0)],2)):o(``,!0)],2),G.value?(v(),i(f(R),{key:1,class:h([n.$style.favoriteBtn,K.value&&n.$style.favoriteBtnActive]),icon:Ke.value,"aria-label":f(w).baseText(K.value?`favorites.remove`:`favorites.add`),variant:`ghost`,size:`medium`,"data-test-id":`project-favorite-btn`,onClick:e(pe,[`stop`])},null,8,[`class`,`icon`,`aria-label`])):o(``,!0)],2),f(b).name===f(D).PROJECT_SETTINGS?o(``,!0):(v(),u(`div`,{key:0,ref_key:`headerActionsRef`,ref:Je,class:h([n.$style.headerActions])},[r(f(B),{disabled:!f(E).preferences.branchReadOnly,content:f(w).baseText(`readOnlyEnv.cantAdd.any`)},{default:C(()=>[t(`div`,xe,[r(ye,{"has-active-callouts":J.hasActiveCallouts},null,8,[`has-active-callouts`]),r(_e,{"data-test-id":`add-resource-buttons`,actions:ze.value,disabled:f(E).preferences.branchReadOnly,onAction:a[1]||=e=>Qe(e,`dropdown`)},{default:C(()=>[r(f(A),l({"data-test-id":`add-resource-${Z.value}`},Re.value,{size:`medium`,onClick:a[0]||=e=>Qe(Z.value,`button`)}),null,16,[`data-test-id`])]),_:1},8,[`actions`,`disabled`])])]),_:1},8,[`disabled`,`content`])],2))],2),_(n.$slots,`default`),t(`div`,{class:h(n.$style.actions)},[r(ge,{"page-type":je.value,"show-executions":!f(q).isSharedSubPage,"show-settings":ke.value,"additional-tabs":Me.value},null,8,[`page-type`,`show-executions`,`show-settings`,`additional-tabs`])],2),r(be)]))}}),[[`__cssModules`,{$style:{projectHeader:`_projectHeader_19xx4_113`,projectDetails:`_projectDetails_19xx4_120`,actions:`_actions_19xx4_125`,projectDescriptionWrapper:`_projectDescriptionWrapper_19xx4_129`,tooltip:`_tooltip_19xx4_133`,favoriteBtn:`_favoriteBtn_19xx4_150`,favoriteBtnActive:`_favoriteBtnActive_19xx4_157`,headerActions:`_headerActions_19xx4_171`}}]]);export{Se as t};
@@ -0,0 +1 @@
1
+ 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]=`1885cd20-2395-4758-9c82-16934485603b`,e._sentryDebugIdIdentifier=`sentry-dbid-1885cd20-2395-4758-9c82-16934485603b`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Fd as t,Hd as n,Id as r,If as i,Ld as a,Nf as o,Od as s,Of as c,Pd as l,Rd as u,Sf as d,Vd as f,Vf as p,Wd as m,Zo as h,cf as g,cp as _,cs as v,es as y,jd as b,ku as x,of as S,pp as C,ss as w,xf as T,yf as E}from"./vendor-DS7UZyZ6.js";import{AT as D,Ab as O,BC as k,Bv as A,DC as j,Dw as M,ET as N,FT as P,Fw as F,Kv as I,Lw as L,Uv as ee,_C as R,aC as te,bT as ne,fT as z,gC as B,hC as re,mC as V,ss as H,u_ as ie,vT as U,zv as ae}from"./app-oLfukFT9.js";import{a as W,n as G,t as oe}from"./projectRoleScopes-Cb09ZyTM.js";import{n as se,t as ce}from"./useRoleEditorForm-XSnBSOnn.js";var K=e(h(),1),q=D(m({__name:`RoleProjectMembersModal`,props:{open:{type:Boolean},roleSlug:{},projectId:{},projectName:{}},emits:[`update:open`],setup(e,{emit:i}){let a=e,s=i,c=H(),d=P(),m=v(),h=o({members:[]}),y=o(!1);E(()=>a.open,async e=>{if(e){y.value=!0;try{h.value=await c.fetchRoleProjectMembers(a.roleSlug,a.projectId)}finally{y.value=!1}}},{immediate:!0});let x=l(()=>{let e=[...c.roles.global,...c.roles.project,...c.roles.credential,...c.roles.workflow];return new Map(e.map(e=>[e.slug,e.displayName]))});function w(e){return x.value.get(e)??e}function D(){s(`update:open`,!1),m.push({name:A.PROJECT_SETTINGS,params:{projectId:a.projectId}})}return(i,a)=>(S(),r(p(re),{open:e.open,size:`medium`,"onUpdate:open":a[1]||=e=>s(`update:open`,e)},{default:T(()=>[n(p(R),null,{default:T(()=>[n(p(B),null,{default:T(()=>[f(C(p(d).baseText(`projectRoles.assignments.membersModal.title`,{interpolate:{projectName:e.projectName}})),1)]),_:1})]),_:1}),t(`div`,{class:_(i.$style.content)},[y.value?(S(),r(p(z),{key:0,rows:3})):(S(),u(`div`,{key:1,class:_(i.$style.memberList)},[(S(!0),u(b,null,g(h.value.members,e=>(S(),u(`div`,{key:e.userId,class:_(i.$style.memberRow)},[n(p(j),{"first-name":e.firstName,"last-name":e.lastName,email:e.email},null,8,[`first-name`,`last-name`,`email`]),n(p(U),{class:_(i.$style.roleLabel),color:`text-light`,size:`small`},{default:T(()=>[f(C(w(e.role)),1)]),_:2},1032,[`class`])],2))),128))],2))],2),n(p(V),null,{default:T(()=>[n(p(N),{variant:`subtle`,onClick:a[0]||=e=>s(`update:open`,!1)},{default:T(()=>[f(C(p(d).baseText(`projectRoles.assignments.membersModal.cancel`)),1)]),_:1}),n(p(N),{onClick:D},{default:T(()=>[f(C(p(d).baseText(`projectRoles.assignments.membersModal.manageMembers`)),1)]),_:1})]),_:1})]),_:1},8,[`open`]))}}),[[`__cssModules`,{$style:{content:`_content_bm3ht_2`,memberList:`_memberList_bm3ht_8`,memberRow:`_memberRow_bm3ht_13`,roleLabel:`_roleLabel_bm3ht_25`}}]]),J=[`onClick`],le=D(m({__name:`RoleAssignmentsTab`,props:{roleSlug:{}},setup(e){let i=e,s=H(),c=P(),{state:d,isLoading:m,execute:h}=x(async()=>await s.fetchRoleAssignments(i.roleSlug),{projects:[],totalProjects:0});E(()=>i.roleSlug,async()=>await h());let v=o(!1),w=o(null),D=o(`memberCount`),O=o(`desc`),k=l(()=>d.value.totalProjects-d.value.projects.length),j=l(()=>[...d.value.projects].sort((e,t)=>{let n=0;return n=D.value===`projectName`?e.projectName.localeCompare(t.projectName):D.value===`memberCount`?e.memberCount-t.memberCount:(e.lastAssigned??``).localeCompare(t.lastAssigned??``),O.value===`desc`?-n:n}));function M(e){D.value===e?O.value=O.value===`asc`?`desc`:`asc`:(D.value=e,O.value=e===`memberCount`?`desc`:`asc`)}function N(e){return D.value===e?O.value===`asc`?` ↑`:` ↓`:``}function F(e){w.value=e,v.value=!0}function I(e){return e?(0,K.default)(new Date(e),`mmm dS, yyyy`):`—`}return(i,o)=>(S(),u(`div`,{class:_(i.$style.container)},[p(m)?(S(),r(p(z),{key:0,rows:3})):p(d).projects.length===0?(S(),u(`div`,{key:1,class:_(i.$style.emptyState)},[n(p(U),{color:`text-light`},{default:T(()=>[f(C(k.value>0?p(c).baseText(`projectRoles.assignments.restrictedEmptyState`,{adjustToNumber:k.value,interpolate:{count:k.value}}):p(c).baseText(`projectRoles.assignments.emptyState`)),1)]),_:1})],2)):(S(),u(b,{key:2},[k.value>0?(S(),r(p(U),{key:0,class:_(i.$style.restrictedNotice),color:`text-light`,size:`small`,tag:`p`},{default:T(()=>[f(C(p(c).baseText(`projectRoles.assignments.restrictedNotice`,{interpolate:{count:p(d).projects.length,total:p(d).totalProjects}})),1)]),_:1},8,[`class`])):a(``,!0),n(p(L),null,{default:T(()=>[t(`thead`,null,[t(`tr`,null,[t(`th`,{class:_(i.$style.sortableHeader),onClick:o[0]||=e=>M(`projectName`)},C(p(c).baseText(`projectRoles.assignments.projectColumn`))+C(N(`projectName`)),3),t(`th`,{class:_([i.$style.alignRight,i.$style.sortableHeader]),onClick:o[1]||=e=>M(`memberCount`)},C(p(c).baseText(`projectRoles.assignments.membersColumn`))+C(N(`memberCount`)),3),t(`th`,{class:_(i.$style.sortableHeader),onClick:o[2]||=e=>M(`lastAssigned`)},C(p(c).baseText(`projectRoles.assignments.lastAssignedColumn`))+C(N(`lastAssigned`)),3)])]),t(`tbody`,null,[(S(!0),u(b,null,g(j.value,e=>(S(),u(`tr`,{key:e.projectId},[t(`td`,null,[n(p(y),{to:{name:p(A).PROJECTS_WORKFLOWS,params:{projectId:e.projectId}},class:_(i.$style.projectLink)},{default:T(()=>[f(C(e.projectName),1)]),_:2},1032,[`to`,`class`])]),t(`td`,{class:_(i.$style.alignRight)},[t(`button`,{class:_(i.$style.memberCountButton),onClick:t=>F(e)},C(e.memberCount),11,J)],2),t(`td`,null,C(I(e.lastAssigned)),1)]))),128))])]),_:1})],64)),w.value?(S(),r(q,{key:3,open:v.value,"role-slug":e.roleSlug,"project-id":w.value.projectId,"project-name":w.value.projectName,"onUpdate:open":o[3]||=e=>v.value=e},null,8,[`open`,`role-slug`,`project-id`,`project-name`])):a(``,!0)],2))}}),[[`__cssModules`,{$style:{container:`_container_s1egh_2`,emptyState:`_emptyState_s1egh_6`,restrictedNotice:`_restrictedNotice_s1egh_11`,alignRight:`_alignRight_s1egh_15`,sortableHeader:`_sortableHeader_s1egh_19`,projectLink:`_projectLink_s1egh_24`,memberCountButton:`_memberCountButton_s1egh_33`}}]]),ue={key:0,class:`mb-l`},de={style:{flex:`1`}},fe={key:1,class:`mt-xl`},pe=D(m({__name:`ProjectRoleView`,props:{roleSlug:{}},setup(e){let o=H(),m=w(),h=v(),{showError:y,showMessage:x}=ae(),E=P(),D=te(),j=ee(),L=I(),R=e,{activeTab:B,tabOptions:re,form:V,isLoading:K,initialState:q,isReadOnly:J,isNew:pe,showEditButtons:me,showCreateButton:he,hasUnsavedChanges:ge,displayNameValidationRules:_e,submitted:ve,validateOnSubmit:ye,resetForm:be}=ce({roleSlug:()=>R.roleSlug,viewRoute:A.PROJECT_ROLE_VIEW,defaultScopes:()=>structuredClone(i(o.processedProjectRoles.find(e=>e.slug===`project:viewer`)?.scopes??[])),filterScopes:e=>e.filter(e=>O.project.has(e)),fetchError:`Error fetching role`}),Y=l(()=>m.query.from===A.PROJECT_SETTINGS),xe=l(()=>Y.value?E.baseText(`projectRoles.backToProjectSettings`):E.baseText(`projectRoles.backToProjectRoles`)),Se=()=>{Y.value?h.back():h.push({name:A.PROJECT_ROLES_SETTINGS})},Ce=l(()=>L.moduleSettings[`external-secrets`]?.roleBasedAccess?G:G.filter(e=>e!==`externalSecretsProvider`&&e!==`externalSecret`)),X=oe;function Z(e){let t=V.value.scopes.indexOf(e),n=t===-1;if(t===-1?V.value.scopes.push(e):V.value.scopes.splice(t,1),e.startsWith(`dataTable:`)&&e.endsWith(`:read`)){Z(e.replace(`:read`,`:listProject`));return}if(e.endsWith(`:read`)&&Z(e.replace(`:read`,`:list`)),e===`workflow:execute`&&n&&(V.value.scopes.includes(`workflow:read`)||Z(`workflow:read`)),e===`workflow:read`&&!n&&V.value.scopes.includes(`workflow:execute`)&&Z(`workflow:execute`),e===`workflow:read`&&(n&&!V.value.scopes.includes(`execution:read`)&&Z(`execution:read`),n||(V.value.scopes.includes(`execution:read`)&&Z(`execution:read`),V.value.scopes.includes(`execution:delete`)&&Z(`execution:delete`))),e===`execution:delete`&&n&&!V.value.scopes.includes(`workflow:read`)&&Z(`workflow:read`),e===`workflow:publish`){if(n&&!V.value.scopes.includes(`workflow:unpublish`))V.value.scopes.push(`workflow:unpublish`);else if(!n){let e=V.value.scopes.indexOf(`workflow:unpublish`);e!==-1&&V.value.scopes.splice(e,1)}}}async function we(){if(ye(`projectRoles.action.create.error`))try{let e=await o.createRole({...V.value,scopes:W(V.value.scopes),description:V.value.description??void 0,roleType:`project`});return o.fetchRoles(),j.track(`User successfully created new role`,{role_id:e.slug,role_name:e.displayName,role_type:`project`,permissions:e.scopes}),h.replace({name:A.PROJECT_ROLE_SETTINGS,params:{roleSlug:e.slug}}),x({type:`success`,message:E.baseText(`projectRoles.action.create.success`)}),q.value=structuredClone(e),e}catch(e){y(e,E.baseText(`projectRoles.action.create.error`));return}}async function Te(e){return e?await D.confirm(E.baseText(`projectRoles.action.update.text`,{interpolate:{count:e}}),E.baseText(`projectRoles.action.update.title`,{interpolate:{count:e}}),{type:`warning`,confirmButtonText:E.baseText(`projectRoles.action.update`),cancelButtonText:E.baseText(`roles.action.cancel`)})===ie:!0}async function Ee(e){if(await Te(q?.value?.usedByUsers))try{let t=await o.updateRole(e,{...V.value,scopes:W(V.value.scopes),description:V.value.description??void 0});return o.fetchRoles(),j.track(`User updated role`,{role_id:t.slug,role_name:t.displayName,role_type:`project`,permissions_from:q.value?.scopes,permissions_to:t.scopes}),q.value=structuredClone(t),x({type:`success`,message:E.baseText(`projectRoles.action.update.success`)}),t}catch(e){y(e,E.baseText(`projectRoles.action.update.error`));return}}async function Q(){R.roleSlug?await Ee(R.roleSlug):await we()}function $(e){let t=o.processedProjectRoles.find(t=>t.slug===e);t&&(V.value.scopes=structuredClone(i(t.scopes)).filter(e=>O.project.has(e)))}async function De(){if(q?.value&&await D.confirm(E.baseText(`roles.action.delete.text`,{interpolate:{roleName:q.value.displayName}}),E.baseText(`roles.action.delete.title`,{interpolate:{roleName:q.value.displayName}}),{type:`warning`,confirmButtonText:E.baseText(`roles.action.delete`),cancelButtonText:E.baseText(`roles.action.cancel`)})===`confirm`){j.track(`User clicked delete role`,{role_id:q.value.slug,role_name:q.value.displayName,permissions:q.value?.scopes});try{await o.deleteRole(q.value.slug);let e=o.roles.project.findIndex(e=>e.slug===q.value?.slug);e!==-1&&o.roles.project.splice(e,1),x({title:E.baseText(`roles.action.delete.success`),type:`success`}),j.track(`User successfully deleted role`,{role_id:q.value.slug,role_name:q.value.displayName,permissions:q.value?.scopes}),h.back()}catch(e){y(e,E.baseText(`roles.action.delete.error`));return}}}let Oe=l(()=>({newRoleTitle:E.baseText(`projectRoles.newRole`),roleName:E.baseText(`projectRoles.roleName`),description:E.baseText(`projectRoles.description`),optional:E.baseText(`projectRoles.optional`),systemRoleNotEditable:E.baseText(`projectRoles.systemRoleNotEditable`),discardChanges:E.baseText(`projectRoles.discardChanges`),save:E.baseText(`projectRoles.save`),create:E.baseText(`projectRoles.create`)}));return(i,o)=>(S(),r(se,{"display-name":p(V).displayName,"onUpdate:displayName":o[5]||=e=>p(V).displayName=e,description:p(V).description,"onUpdate:description":o[6]||=e=>p(V).description=e,"is-new":p(pe),"is-read-only":p(J),"show-edit-buttons":p(me),"show-create-button":p(he),"has-unsaved-changes":p(ge),"back-button-text":xe.value,labels:Oe.value,"display-name-validation-rules":p(_e),"show-display-name-error":p(ve),onBack:Se,onSave:Q,onDiscard:o[7]||=e=>p(be)(p(q)),onCreate:Q},{default:T(()=>[e.roleSlug?(S(),u(`div`,ue,[n(p(k),{modelValue:p(B),"onUpdate:modelValue":o[0]||=e=>c(B)?B.value=e:null,options:p(re)},null,8,[`modelValue`,`options`])])):a(``,!0),d(t(`div`,null,[p(J)?a(``,!0):(S(),u(b,{key:0},[n(p(U),{color:`text-light`,class:`mb-2xs`,tag:`p`},{default:T(()=>[f(C(p(E).baseText(`projectRoles.preset`)),1)]),_:1}),t(`div`,{class:_([`mb-s`,i.$style.presetsContainer])},[n(p(N),{variant:`subtle`,onClick:o[1]||=e=>$(`project:admin`)},{default:T(()=>[f(C(p(E).baseText(`projectRoles.admin`)),1)]),_:1}),n(p(N),{variant:`subtle`,onClick:o[2]||=e=>$(`project:editor`)},{default:T(()=>[f(C(p(E).baseText(`projectRoles.editor`)),1)]),_:1}),n(p(N),{variant:`subtle`,onClick:o[3]||=e=>$(`project:viewer`)},{default:T(()=>[f(C(p(E).baseText(`projectRoles.viewer`)),1)]),_:1})],2)],64)),t(`div`,{class:_(i.$style.cardContainer)},[(S(!0),u(b,null,g(Ce.value,e=>(S(),u(`div`,{key:e,class:_([`mb-s mt-s`,i.$style.card])},[t(`div`,{class:_(i.$style.cardTitle)},C(p(E).baseText(`projectRoles.type.${e}`)),3),t(`div`,de,[p(K)?(S(),r(p(z),{key:0,rows:p(X)[e].length,"shrink-last":!1},null,8,[`rows`])):(S(!0),u(b,{key:1},g(p(X)[e],e=>(S(),u(`div`,{key:e,class:`mb-2xs`},[n(p(ne),{content:p(E).baseText(`projectRoles.${e}.tooltip`),placement:`right`,enterable:!1,"show-after":250},{default:T(()=>[n(p(M),{"data-test-id":`scope-checkbox-${e}`,"model-value":p(V).scopes.includes(e),label:p(E).baseText(`projectRoles.${e}`),"validate-on-blur":``,type:`checkbox`,class:_(i.$style.checkbox),disabled:p(J)||e===`execution:read`,"onUpdate:modelValue":()=>Z(e)},null,8,[`data-test-id`,`model-value`,`label`,`class`,`disabled`,`onUpdate:modelValue`])]),_:2},1032,[`content`])]))),128))])],2))),128))],2),e.roleSlug&&!p(J)?(S(),u(`div`,fe,[n(p(F),{tag:`h2`,class:`mb-2xs`,size:`large`},{default:T(()=>[f(C(p(E).baseText(`projectRoles.dangerZone`)),1)]),_:1}),n(p(U),{tag:`p`,class:`mb-s`},{default:T(()=>[p(q)?.usedByProjects?(S(),u(b,{key:0},[f(C(p(E).baseText(`projectRoles.action.delete.useWarning.before`))+` `,1),t(`a`,{class:_(i.$style.assignmentsLink),onClick:o[4]||=e=>B.value=`assignments`},C(p(E).baseText(`projectRoles.action.delete.useWarning.linkText`,{adjustToNumber:p(q).usedByProjects,interpolate:{count:p(q).usedByProjects}})),3),f(`. `+C(p(E).baseText(`projectRoles.action.delete.useWarning.after`)),1)],64)):(S(),u(b,{key:1},[f(C(p(E).baseText(`projectRoles.action.delete.warning`)),1)],64))]),_:1}),n(p(N),{variant:`destructive`,disabled:!!p(q)?.usedByProjects,onClick:De},{default:T(()=>[f(C(p(E).baseText(`projectRoles.action.delete.button`)),1)]),_:1},8,[`disabled`])])):a(``,!0)],512),[[s,!e.roleSlug||p(B)===`permissions`]]),e.roleSlug&&p(B)===`assignments`?(S(),r(le,{key:1,"role-slug":e.roleSlug},null,8,[`role-slug`])):a(``,!0)]),_:1},8,[`display-name`,`description`,`is-new`,`is-read-only`,`show-edit-buttons`,`show-create-button`,`has-unsaved-changes`,`back-button-text`,`labels`,`display-name-validation-rules`,`show-display-name-error`]))}}),[[`__cssModules`,{$style:{cardContainer:`_cardContainer_1gh3t_2`,card:`_card_1gh3t_2`,cardTitle:`_cardTitle_1gh3t_21`,presetsContainer:`_presetsContainer_1gh3t_25`,checkbox:`_checkbox_1gh3t_30`,assignmentsLink:`_assignmentsLink_1gh3t_38`}}]]);export{pe as default};
@@ -0,0 +1 @@
1
+ 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]=`2aa4f832-170c-4f07-acf8-a0065f848579`,e._sentryDebugIdIdentifier=`sentry-dbid-2aa4f832-170c-4f07-acf8-a0065f848579`)})()}catch{}import"./rolldown-runtime-BobR2NKB.js";import{$d as e,Ad as t,Fd as n,Hd as r,Id as i,Kd as a,Ld as o,Nf as s,Pd as c,Rd as l,Rs as u,Vd as d,Vf as f,Wd as p,Zd as m,_d as h,cf as g,cp as _,cs as v,ef as y,hf as b,jd as x,jf as S,js as C,lp as w,of as T,pp as E,rf as D,ud as O,xf as k,yf as A}from"./vendor-DS7UZyZ6.js";import{AT as j,Bv as ee,DC as M,DT as N,Db as P,Dw as F,ET as I,FT as L,Fw as R,Gv as z,Hv as te,Ip as ne,Kh as B,Kv as re,Lp as V,Mp as H,Np as ie,Pw as ae,Rw as U,SC as oe,Sd as W,Sh as G,TC as se,TT as ce,Uv as le,Vw as K,Xm as ue,bT as de,ch as q,cs as J,dC as fe,d_ as pe,fS as me,kv as Y,kw as X,oT as Z,pa as Q,pg as he,rT as ge,ss as _e,vT as $,vf as ve,wC as ye,wT as be,zv as xe}from"./app-oLfukFT9.js";import{t as Se}from"./ProjectHeader-QjIM8haZ.js";import{t as Ce}from"./RoleSelectDropdown-CKIJpssE.js";import{t as we}from"./useSecretsProvidersList.ee-CnzrWo1e.js";var Te={key:1},Ee={class:`pt-l`},De=j(p({__name:`ProjectDeleteDialog`,props:m({currentProject:{},searchFn:{type:Function},resourceCounts:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:m([`confirmDelete`],[`update:modelValue`]),setup(e,{emit:a}){let p=e,m=b(e,`modelValue`),h=c(()=>p.searchFn??H()),g=e=>e.id!==p.currentProject?.id,v=a,y=L(),x=s(null),S=s(null),w=s(``),D=c(()=>p.resourceCounts.credentials+p.resourceCounts.workflows+p.resourceCounts.dataTables>0),O=c(()=>{let e=y.baseText(`projects.settings.delete.question.wipe.placeholder`);return!D.value||S.value===`transfer`&&!!x.value||S.value===`wipe`&&w.value===e}),A=()=>{O.value&&(S.value===`wipe`&&(x.value=null),v(`confirmDelete`,x.value?.id))};return(e,a)=>(T(),i(f(C),{modelValue:m.value,"onUpdate:modelValue":a[4]||=e=>m.value=e,title:f(y).baseText(`projects.settings.delete.title`,{interpolate:{projectName:p.currentProject?.name??``}}),width:`650`,"append-to":`#${f(he)}`},{footer:k(()=>[r(f(I),{variant:`destructive`,type:`button`,disabled:!O.value,"data-test-id":`project-settings-delete-confirm-button`,onClick:t(A,[`stop`,`prevent`])},{default:k(()=>[d(E(f(y).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1},8,[`disabled`])]),default:k(()=>[D.value?D.value?(T(),l(`div`,Te,[r(f($),{color:`text-base`},{default:k(()=>[d(E(f(y).baseText(`projects.settings.delete.message`)),1)]),_:1}),n(`div`,Ee,[r(f(u),{"model-value":S.value??``,label:`transfer`,class:`mb-s`,"onUpdate:modelValue":a[0]||=e=>S.value=`transfer`},{default:k(()=>[r(f($),{color:`text-dark`},{default:k(()=>[d(E(f(y).baseText(`projects.settings.delete.question.transfer.label`)),1)]),_:1})]),_:1},8,[`model-value`]),S.value===`transfer`?(T(),l(`div`,{key:0,class:_(e.$style.operation)},[r(f($),{color:`text-dark`},{default:k(()=>[d(E(f(y).baseText(`projects.settings.delete.question.transfer.title`)),1)]),_:1}),r(J,{modelValue:x.value,"onUpdate:modelValue":a[1]||=e=>x.value=e,class:`pt-2xs`,"search-fn":h.value,"filter-fn":g,"empty-options-text":f(y).baseText(`projects.sharing.noMatchingProjects`)},null,8,[`modelValue`,`search-fn`,`empty-options-text`])],2)):o(``,!0),r(f(u),{"model-value":S.value??``,label:`wipe`,class:`mb-s`,"onUpdate:modelValue":a[2]||=e=>S.value=`wipe`},{default:k(()=>[r(f($),{color:`text-dark`},{default:k(()=>[d(E(f(y).baseText(`projects.settings.delete.question.wipe.label`)),1)]),_:1})]),_:1},8,[`model-value`]),S.value===`wipe`?(T(),l(`div`,{key:1,class:_(e.$style.operation)},[r(f(X),{label:f(y).baseText(`projects.settings.delete.question.wipe.title`)},{default:k(()=>[r(f(be),{modelValue:w.value,"onUpdate:modelValue":a[3]||=e=>w.value=e,"data-test-id":`project-delete-confirm-input`,placeholder:f(y).baseText(`projects.settings.delete.question.wipe.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])],2)):o(``,!0)])])):o(``,!0):(T(),i(f($),{key:0,color:`text-base`},{default:k(()=>[d(E(f(y).baseText(`projects.settings.delete.message.empty`)),1)]),_:1}))]),_:1},8,[`modelValue`,`title`,`append-to`]))}}),[[`__cssModules`,{$style:{operation:`_operation_1ohxk_1`}}]]),Oe={class:`pt-l`},ke=j(p({__name:`ProjectRoleUpgradeDialog`,props:m({limit:{},planName:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,a=b(e,`modelValue`),o=W(),s=L(),c=async()=>{await o.goToUpgrade(`rbac`,`upgrade-rbac`),a.value=!1};return(e,o)=>(T(),i(f(C),{modelValue:a.value,"onUpdate:modelValue":o[1]||=e=>a.value=e,title:f(s).baseText(`projects.settings.role.upgrade.title`),width:`500`,"append-to":`#${f(he)}`},{footer:k(()=>[n(`div`,{class:_(e.$style.footer)},[r(f(I),{variant:`subtle`,"native-type":`button`,onClick:o[0]||=e=>a.value=!1},{default:k(()=>[d(E(f(s).baseText(`generic.cancel`)),1)]),_:1}),r(f(I),{variant:`solid`,"native-type":`button`,onClick:c},{default:k(()=>[d(E(f(s).baseText(`projects.create.limitReached.link`)),1)]),_:1})],2)]),default:k(()=>[n(`div`,Oe,[r(f(h),{keypath:`projects.settings.role.upgrade.message`,scope:`global`},{planName:k(()=>[d(E(t.planName),1)]),limit:k(()=>[d(E(f(s).baseText(`projects.create.limit`,{adjustToNumber:t.limit,interpolate:{count:String(t.limit)}})),1)]),_:1})])]),_:1},8,[`modelValue`,`title`,`append-to`]))}}),[[`__cssModules`,{$style:{footer:`_footer_149jx_1`}}]]),Ae=[`aria-label`],je=j(p({__name:`ProjectMembersAccessCell`,props:{data:{},projectRoles:{}},setup(e){let t=e,a=L(),o=c(()=>a.baseText(`projects.settings.table.access.full`)),s=c(()=>t.projectRoles.find(e=>e.slug===t.data.role)?.displayName),l=c(()=>{let e=[a.baseText(`projects.settings.table.access.tooltip.full`,{interpolate:{name:t.data.firstName||t.data.email||``,role:t.data.instanceRole?.displayName??``}})];return s.value&&e.push(a.baseText(`projects.settings.table.access.tooltip.storedRole`,{interpolate:{projectRole:s.value}})),e.join(` `)});return(e,t)=>(T(),i(f(de),{placement:`top`,"show-after":300,content:l.value},{default:k(()=>[n(`span`,{class:_(e.$style.label),tabindex:`0`,"aria-label":`${o.value}. ${l.value}`,"data-test-id":`project-member-access-label`},[n(`span`,{class:_(e.$style.text)},E(o.value),3),r(f(N),{icon:`info`,size:`small`,color:`text-light`,class:_(e.$style.icon)},null,8,[`class`])],10,Ae)]),_:1},8,[`content`]))}}),[[`__cssModules`,{$style:{label:`_label_1myfd_1`,text:`_text_1myfd_16`,icon:`_icon_1myfd_22`}}]]),Me=p({__name:`ProjectMembersActionsCell`,props:{data:{},actions:{}},emits:[`action`],setup(e,{emit:t}){let n=e,r=t,a=e=>{r(`action`,{action:e,userId:n.data.id})};return(e,t)=>n.actions.length>0?(T(),i(f(Z),{key:0,placement:`bottom`,actions:n.actions,theme:`dark`,onAction:a},null,8,[`actions`])):o(``,!0)}}),Ne={key:1},Pe=p({__name:`ProjectMembersRoleCell`,props:{data:{},roles:{}},emits:[`update:role`,`show-role-upgrade-dialog`],setup(e,{emit:t}){let n=e,r=t,a=re(),o=c(()=>n.roles.find(e=>e.slug===n.data.role)),s=c(()=>n.data.role!==`project:personalOwner`),u=c(()=>a.isCustomRolesFeatureEnabled),d=c(()=>ne([`rbac`],{rbac:{scope:`role:manage`}})),p=c(()=>n.roles.filter(e=>e.systemRole)),m=c(()=>n.roles.filter(e=>!e.systemRole)),h=e=>{r(`update:role`,{role:e,userId:n.data.id})};return(t,n)=>s.value?(T(),i(Ce,{key:0,"system-roles":p.value,"custom-roles":m.value,"current-role":e.data.role,"has-custom-roles-license":u.value,"can-manage-roles":d.value,"add-custom-role-route-name":f(ee).PROJECT_NEW_ROLE,"test-id":`project-member-role-dropdown`,"onUpdate:role":h,onSystemRoleUpgradeNeeded:n[0]||=e=>r(`show-role-upgrade-dialog`)},null,8,[`system-roles`,`custom-roles`,`current-role`,`has-custom-roles-license`,`can-manage-roles`,`add-custom-role-route-name`])):(T(),l(`span`,Ne,E(o.value?.displayName),1))}}),Fe={class:`pt-xs pb-xs`},Ie=p({__name:`ProjectMembersTable`,props:m({data:{},loading:{type:Boolean},currentUserId:{},projectRoles:{},actions:{},canEditRole:{type:Boolean}},{tableOptions:{default:()=>({page:0,itemsPerPage:10,sortBy:[]})},tableOptionsModifiers:{}}),emits:m([`update:options`,`update:role`,`show-role-upgrade-dialog`,`action`],[`update:tableOptions`]),setup(e,{emit:t}){let o=L(),u=e,p=t,m=b(e,`tableOptions`),h=c(()=>u.data.items),g=s([{title:o.baseText(`projects.settings.table.header.user`),key:`name`,width:400,disableSort:!0,value:e=>e},{title:o.baseText(`projects.settings.table.header.role`),key:`role`,width:200,disableSort:!0},{title:``,key:`actions`,align:`end`,width:46,disableSort:!0,value(){}}]),_=e=>!e.alwaysHasAccess&&e.id!==u.currentUserId&&u.canEditRole,v=({role:e,userId:t})=>{p(`update:role`,{role:e,userId:t})},y=e=>e.alwaysHasAccess||e.id===u.currentUserId||e.role===`project:personalOwner`?[]:(u.actions??[]).filter(t=>t.guard?.(e)??!0);return(t,o)=>(T(),l(`div`,null,[r(f(oe),{"sort-by":m.value.sortBy,"onUpdate:sortBy":o[2]||=e=>m.value.sortBy=e,page:m.value.page,"onUpdate:page":o[3]||=e=>m.value.page=e,"items-per-page":m.value.itemsPerPage,"onUpdate:itemsPerPage":o[4]||=e=>m.value.itemsPerPage=e,headers:g.value,items:h.value,"items-length":e.data.count,loading:e.loading,"page-sizes":[10,25,50],"onUpdate:options":o[5]||=e=>p(`update:options`,e)},{"item.name":k(({value:e})=>[n(`div`,Fe,[r(f(M),w(a(e)),null,16)])]),"item.role":k(({item:e})=>[_(e)?(T(),i(Pe,{key:0,data:e,roles:u.projectRoles,"onUpdate:role":v,onShowRoleUpgradeDialog:o[0]||=e=>p(`show-role-upgrade-dialog`)},null,8,[`data`,`roles`])):e.alwaysHasAccess?(T(),i(je,{key:1,data:e,"project-roles":u.projectRoles},null,8,[`data`,`project-roles`])):(T(),i(f($),{key:2,color:`text-dark`},{default:k(()=>[d(E(u.projectRoles.find(t=>t.slug===e.role)?.displayName??e.role),1)]),_:2},1024))]),"item.actions":k(({item:e})=>[r(Me,{data:e,actions:y(e),onAction:o[1]||=e=>t.$emit(`action`,e)},null,8,[`data`,`actions`])]),_:2},1032,[`sort-by`,`page`,`items-per-page`,`headers`,`items`,`items-length`,`loading`])]))}}),Le={key:0,"data-test-id":`external-secrets-section`},Re={class:`mb-s`},ze={for:`projectExternalSecrets`},Be={key:0},Ve=j(p({__name:`ProjectExternalSecrets`,setup(e,{expose:t}){let a=L(),u=xe(),p=v(),m=ie(),h=q(),y=V(),b=re(),C=we(),w=Q(m.currentProjectId),D=s([]),O=S({}),j=s(!1),M=s(``),P=s(new Set),F=s(0),z=s(5),te=c(()=>b.moduleSettings[`external-secrets`]?.forProjects??!1),ne=c(()=>m.currentProject?.scopes?.includes(`externalSecretsProvider:list`)??!1),B=c(()=>m.currentProject?.scopes?.includes(`externalSecretsProvider:create`)??!1),H=c(()=>y.hasScope(`externalSecretsProvider:create`)),U=c(()=>te.value&&ne.value),W=c(()=>D.value.length>0?null:H.value?C.activeProviders.value.length>0?`instance-admin-no-project-providers`:`project-admin-no-providers`:B.value?`project-admin-no-providers`:null),G=c(()=>{let e=W.value;return e?{"instance-admin-no-project-providers":{heading:a.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:a.baseText(`projects.settings.externalSecrets.emptyState.instanceAdmin.noProjectProviders.description`),buttonText:a.baseText(`projects.settings.externalSecrets.button.shareSecretsStore`),buttonAction:_e,testId:`external-secrets-empty-state-no-project-providers`},"project-admin-no-providers":{heading:a.baseText(`projects.settings.externalSecrets.emptyState.heading`),description:a.baseText(`projects.settings.externalSecrets.emptyState.projectAdmin.description`),buttonText:a.baseText(`projects.settings.externalSecrets.button.addSecretsStore`),buttonAction:ge,testId:`external-secrets-empty-state-project-admin`}}[e]:null}),se=c(()=>[...D.value].sort((e,t)=>e.name.localeCompare(t.name))),le=c(()=>{if(!M.value.trim())return se.value;let e=M.value.toLowerCase();return se.value.filter(t=>t.name.toLowerCase().includes(e)?!0:(O[t.name]??[]).some(t=>t.name.toLowerCase().includes(e)))}),K=c(()=>{let e=F.value*z.value,t=e+z.value;return le.value.slice(e,t)});function ue(e){let t=O[e]??[],n=M.value.trim().toLowerCase();return n?t.filter(t=>t.name.toLowerCase().includes(n)||e.toLowerCase().includes(n)):t}let de=c(()=>K.value.map(e=>{let t=P.value.has(e.name);return{id:`header-${e.name}`,connectionName:e.name,secretsCount:e.secretsCount,isExpanded:t,secrets:t?ue(e.name):[]}})),J=c(()=>[{title:a.baseText(`projects.settings.externalSecrets.table.header.secretName`),key:`connectionName`,disableSort:!0,resize:!1,value:e=>e.connectionName}]);async function fe(e){if(O[e]?.length)return;let{secrets:t}=await w.getConnection(e);O[e]=t??[]}async function me(){await Promise.all(K.value.filter(e=>e.secretsCount>0).map(async e=>await fe(e.name)))}async function Y(){if(!(!m.currentProjectId||!ne.value||!te.value)){j.value=!0;try{D.value=await m.getProjectSecretProviders(m.currentProjectId),await me()}catch(e){u.showError(e,a.baseText(`projects.settings.externalSecrets.load.error`))}finally{j.value=!1}}}function X(e){P.value.has(e)?P.value.delete(e):P.value.add(e)}function Z(e,t=`connection`){let n=C.activeProviders.value.map(e=>e.name);h.openModalWithData({name:pe,data:{activeTab:t,providerKey:e,providerTypes:C.providerTypes.value,existingProviderNames:n,projectId:m.currentProjectId,onClose:async()=>{await Y()}}})}function he(e){Z(e,`connection`)}function ge(){B.value&&Z()}function _e(){p.push({name:ee.EXTERNAL_SECRETS_SETTINGS})}return A(M,()=>{F.value=0}),A([F,z],async()=>{await me()}),A([()=>m.currentProjectId,U],async([e,t])=>{e&&t&&await Y()},{immediate:!0}),A(U,async e=>{e&&(await Promise.allSettled([C.fetchProviderTypes(),C.fetchActiveConnections()]),H.value&&await m.getAllProjects())},{immediate:!0}),t({fetchProjectSecretConnections:Y}),(e,t)=>U.value?(T(),l(`fieldset`,Le,[n(`h3`,Re,[n(`label`,ze,E(f(a).baseText(`projects.settings.externalSecrets`)),1)]),G.value?(T(),i(f(ae),{key:0,"data-test-id":G.value.testId,description:`yes`},{description:k(()=>[r(f(R),{tag:`h3`,size:`small`,class:`mb-2xs`},{default:k(()=>[d(E(G.value.heading),1)]),_:1}),r(f($),{size:`small`,color:`text-base`,class:_(e.$style.description)},{default:k(()=>[d(E(G.value.description),1)]),_:1},8,[`class`])]),additionalContent:k(()=>[r(f(I),{variant:`ghost`,size:`xsmall`,class:`mr-2xs`,element:`a`,href:f(a).baseText(`settings.externalSecrets.docs`),target:`_blank`,"data-test-id":`secrets-provider-connections-learn-more`},{default:k(()=>[d(E(f(a).baseText(`generic.learnMore`))+` `,1),r(f(N),{icon:`arrow-up-right`})]),_:1},8,[`href`]),r(f(I),{variant:`subtle`,size:`xsmall`,"data-test-id":`${W.value}-button`,onClick:G.value.buttonAction},{default:k(()=>[d(E(G.value.buttonText),1)]),_:1},8,[`data-test-id`,`onClick`])]),_:1},8,[`data-test-id`])):D.value.length>0?(T(),l(`div`,{key:1,class:_(e.$style.secretProvidersContainer)},[n(`div`,{class:_(e.$style.actionsContainer)},[n(`div`,{class:_(e.$style.searchContainer)},[r(f(be),{modelValue:M.value,"onUpdate:modelValue":t[0]||=e=>M.value=e,placeholder:f(a).baseText(`projects.settings.externalSecrets.search.placeholder`),clearable:``,"data-test-id":`secrets-providers-search`},{prefix:k(()=>[r(f(N),{icon:`search`})]),_:1},8,[`modelValue`,`placeholder`])],2),B.value?(T(),i(f(I),{key:0,variant:`outline`,size:`large`,"data-test-id":`external-secrets-add-button`,onClick:ge},{default:k(()=>[d(E(f(a).baseText(`projects.settings.externalSecrets.button.addSecretsStore`)),1)]),_:1})):o(``,!0)],2),r(f(oe),{page:F.value,"onUpdate:page":t[1]||=e=>F.value=e,"items-per-page":z.value,"onUpdate:itemsPerPage":t[2]||=e=>z.value=e,headers:J.value,items:de.value,"items-length":le.value.length,loading:j.value,"page-sizes":[5,10,25,50],"row-props":()=>({class:e.$style.groupHeaderRow}),"data-test-id":`external-secrets-table`},{item:k(({item:t})=>[n(`tr`,{class:_(e.$style.groupHeaderRow)},[n(`td`,{class:_(e.$style.groupHeaderCell)},[n(`div`,{class:_(e.$style.groupHeaderContent)},[r(f(ce),{variant:`ghost`,icon:t.isExpanded?`chevron-down`:`chevron-right`,class:_(e.$style.expandButton),disabled:t.secretsCount===0,title:t.isExpanded?f(a).baseText(`projects.settings.externalSecrets.collapse`):f(a).baseText(`projects.settings.externalSecrets.expand`),"data-test-id":`external-secrets-expand-button`,onClick:e=>X(t.connectionName)},null,8,[`icon`,`class`,`disabled`,`title`,`onClick`]),r(f($),{class:_(e.$style.connectionLink),bold:``,onClick:e=>he(t.connectionName)},{default:k(()=>[d(E(t.connectionName),1)]),_:2},1032,[`class`,`onClick`]),r(f($),{color:`text-light`,size:`small`},{default:k(()=>[d(E(t.secretsCount===1?f(a).baseText(`settings.secretsProviderConnections.oneSecret`):f(a).baseText(`settings.secretsProviderConnections.secrets`,{interpolate:{count:t.secretsCount.toString()}})),1)]),_:2},1024)],2)],2)],2),t.isExpanded&&t.secrets.length>0?(T(),l(`tr`,Be,[n(`td`,{class:_(e.$style.secretsCell)},[n(`div`,{class:_(e.$style.secretsList)},[(T(!0),l(x,null,g(t.secrets,t=>(T(),l(`div`,{key:t.name,class:_(e.$style.secretRow)},[n(`span`,null,[n(`code`,{class:_(e.$style.secretName)},E(t.name),3)])],2))),128))],2)],2)])):o(``,!0)]),_:1},8,[`page`,`items-per-page`,`headers`,`items`,`items-length`,`loading`,`row-props`])],2)):o(``,!0)])):o(``,!0)}}),[[`__cssModules`,{$style:{description:`_description_a1205_1`,secretProvidersContainer:`_secretProvidersContainer_a1205_6`,actionsContainer:`_actionsContainer_a1205_12`,searchContainer:`_searchContainer_a1205_17`,groupHeaderRow:`_groupHeaderRow_a1205_22`,groupHeaderCell:`_groupHeaderCell_a1205_29`,secretsCell:`_secretsCell_a1205_41`,secretsList:`_secretsList_a1205_45`,secretRow:`_secretRow_a1205_50`,groupHeaderContent:`_groupHeaderContent_a1205_65`,expandButton:`_expandButton_a1205_74`,secretName:`_secretName_a1205_88`,connectionLink:`_connectionLink_a1205_95`}}]]),He=j(p({__name:`ProjectSettingsCustomTelemetryTags`,props:{modelValue:{}},emits:[`update:modelValue`,`validate`],setup(e,{expose:i,emit:a}){let u=e,p=a,m=L(),h=s(u.modelValue.map(()=>!1));A(()=>u.modelValue.length,e=>{e<h.value.length&&(h.value=h.value.slice(0,e))});let v=c(()=>{let e=new Set;return u.modelValue.map(t=>{let n=t.key.trim();return n?e.has(n)?m.baseText(`projects.settings.customSpanAttributes.error.duplicateKey`):(e.add(n),null):m.baseText(`projects.settings.customSpanAttributes.error.emptyKey`)})});A(c(()=>v.value.some(e=>e!==null)),e=>p(`validate`,!e),{immediate:!0});function y(){h.value=u.modelValue.map(()=>!1)}function b(e){h.value[e]=!0}function S(){p(`update:modelValue`,[...u.modelValue,{key:``,value:``}]),h.value.push(!1)}function C(e){p(`update:modelValue`,u.modelValue.filter((t,n)=>n!==e)),h.value.splice(e,1)}function w(e,t,n){p(`update:modelValue`,u.modelValue.map((r,i)=>i===e?{...r,[t]:n}:r))}return i({resetTouched:y}),(i,a)=>(T(),l(`div`,null,[r(f($),{size:`small`,class:`mb-s`,tag:`p`},{default:k(()=>[d(E(f(m).baseText(`projects.settings.customSpanAttributes.description`))+` `,1),n(`a`,{class:_(i.$style.docsLink),href:`https://docs.n8n.io/hosting/logging-monitoring/opentelemetry/`,target:`_blank`},[d(E(f(m).baseText(`projects.settings.customSpanAttributes.docsLink`)),1),r(f(N),{icon:`arrow-up-right`,size:`xsmall`})],2)]),_:1}),(T(!0),l(x,null,g(e.modelValue,(e,a)=>(T(),l(`div`,{key:a,class:_(i.$style.telemetryTagContainer)},[n(`div`,{class:_(i.$style.telemetryTagRow)},[r(f(X),{label:a===0?f(m).baseText(`projects.settings.customSpanAttributes.key.label`):void 0,size:`small`},{default:k(()=>[r(f(be),{"model-value":e.key,placeholder:f(m).baseText(`projects.settings.customSpanAttributes.key.placeholder`),"aria-label":f(m).baseText(`projects.settings.customSpanAttributes.key.label`),"data-test-id":`project-telemetry-tag-key`,"onUpdate:modelValue":e=>w(a,`key`,e),onBlur:e=>b(a)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`,`onBlur`])]),_:2},1032,[`label`]),r(f(X),{label:a===0?f(m).baseText(`projects.settings.customSpanAttributes.value.label`):void 0,size:`small`},{default:k(()=>[r(f(be),{"model-value":e.value,placeholder:f(m).baseText(`projects.settings.customSpanAttributes.value.placeholder`),"aria-label":f(m).baseText(`projects.settings.customSpanAttributes.value.label`),"data-test-id":`project-telemetry-tag-value`,"onUpdate:modelValue":e=>w(a,`value`,e)},null,8,[`model-value`,`placeholder`,`aria-label`,`onUpdate:modelValue`])]),_:2},1032,[`label`]),r(f(I),{icon:`trash-2`,variant:`ghost`,size:`small`,"native-type":`button`,title:f(m).baseText(`projects.settings.customSpanAttributes.remove`),"aria-label":f(m).baseText(`projects.settings.customSpanAttributes.remove`),"data-test-id":`project-telemetry-tag-remove`,onClick:t(e=>C(a),[`stop`,`prevent`])},null,8,[`title`,`aria-label`,`onClick`])],2),h.value[a]&&v.value[a]?(T(),l(`span`,{key:0,class:_(i.$style.tagErrorMessage),"data-test-id":`project-telemetry-tag-key-error`},E(v.value[a]),3)):o(``,!0)],2))),128)),r(f(I),{icon:`plus`,variant:`subtle`,"native-type":`button`,class:`mt-2xs`,"data-test-id":`project-telemetry-tag-add`,onClick:t(S,[`stop`,`prevent`])},{default:k(()=>[d(E(f(m).baseText(`projects.settings.customSpanAttributes.add`)),1)]),_:1})]))}}),[[`__cssModules`,{$style:{telemetryTagContainer:`_telemetryTagContainer_152r7_1`,telemetryTagRow:`_telemetryTagRow_152r7_6`,tagErrorMessage:`_tagErrorMessage_152r7_12`,docsLink:`_docsLink_152r7_19`}}]]),Ue={class:`project-worker-pools`,"data-test-id":`project-worker-pools-section`},We={for:`projectDefaultPool`},Ge=j(p({__name:`ProjectWorkerPoolsSection`,props:{defaultPool:{},availablePools:{},disabled:{type:Boolean}},emits:[`update:defaultPool`],setup(e,{emit:t}){let a=L(),o=e,s=t,c=e=>{s(`update:defaultPool`,e===``?``:e)};return(e,t)=>(T(),l(`fieldset`,Ue,[n(`h3`,null,[n(`label`,We,E(f(a).baseText(`projects.settings.workerPools.title`)),1)]),r(f(U),{id:`projectDefaultPool`,"model-value":o.defaultPool??``,disabled:o.disabled,class:_(e.$style.input),"data-test-id":`project-default-pool-input`,"onUpdate:modelValue":c},{default:k(()=>[r(f(K),{label:f(a).baseText(`projects.settings.workerPools.defaultQueue`),value:``},null,8,[`label`]),(T(!0),l(x,null,g(o.availablePools,e=>(T(),i(f(K),{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`disabled`,`class`]),r(f($),{color:`text-light`,size:`small`,class:_(e.$style.help)},{default:k(()=>[d(E(f(a).baseText(`projects.settings.workerPools.help`)),1)]),_:1},8,[`class`])]))}}),[[`__cssModules`,{$style:{input:`_input_1oor6_1`,help:`_help_1oor6_5`}}]]),Ke={for:`projectName`},qe={for:`projectDescription`},Je={key:1,id:`projectMembers`},Ye={for:`projectMembers`},Xe={key:0,class:`mb-m`,"data-test-id":`project-roles-managed-notice`},Ze={key:0},Qe={class:`mb-m`},$e=10,et=j(p({__name:`ProjectSettings`,setup(a){let u=z(),p=L(),m=ie(),h=_e(),g=te(),b=re(),S=xe(),C=v(),w=le(),j=ve(),M=c(()=>!!P(m.currentProject?.scopes).project.update),R=c(()=>!!P(m.currentProject?.scopes).project.manageMembers),V=e=>{S.showError(e,p.baseText(`projects.settings.save.error.title`))},H=s(!1),ae=s(!1),U=s(!1),oe=s(!1),W=s(!0),ce=s(!0),K=c(()=>oe.value&&W.value&&ce.value),de=s({credentials:-1,dataTables:-1,workflows:-1}),q=s({name:``,description:``,relations:[],customTelemetryTags:[],defaultPool:null}),J=s(!1),pe=s(null),X=s({...G}),Z=s(``),Q=s({page:0,itemsPerPage:10,sortBy:[]}),he=s(``),Ce=s([]),we=s(!1),Te=c(()=>ne([`rbac`],{rbac:{scope:`user:list`}})||R.value),Ee=c(()=>new Map((m.currentProject?.implicitMembers??[]).map(e=>[e.id,e]))),Oe=c(()=>Ce.value.filter(e=>!(q.value.relations||[]).find(t=>t.id===e.id)&&!Ee.value.has(e.id))),Ae=c(()=>h.processedProjectRoles.find(e=>e.licensed)?.slug),je=c(()=>bt.value||!R.value?[]:[{label:p.baseText(`projects.settings.table.row.removeUser`),value:`remove`,guard:e=>e.id!==u.currentUser?.id&&e.role!==`project:personalOwner`}]),Me=async e=>{if(!m.currentProject||!u.usersById[e])return;let t=Ae.value;if(t){q.value.relations.find(t=>t.id===e)||q.value.relations.push({id:e,role:t});try{J.value=!0,await m.addMember(m.currentProject.id,{userId:e,role:t}),S.showMessage({type:`success`,title:p.baseText(`projects.settings.member.added.title`)}),w.track(`User added member to project`,{project_id:m.currentProject.id,target_user_id:e,role:t})}catch(t){q.value.relations=q.value.relations.filter(t=>t.id!==e),V(t)}}},Ne=async({userId:e,role:t})=>{if(!m.currentProject)return;let n=q.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=q.value.relations[n].role;q.value.relations[n].role=t;try{J.value=!0,await m.updateMemberRole(m.currentProject.id,e,t),h.fetchRoles(),S.showMessage({type:`success`,title:p.baseText(`projects.settings.memberRole.updated.title`)}),w.track(`User changed member role on project`,{project_id:m.currentProject.id,target_user_id:e,role:t})}catch(e){q.value.relations[n].role=r,S.showError(e,p.baseText(`projects.settings.memberRole.update.error.title`))}},Pe=()=>{U.value=!0},Fe=s(null);async function Le(e){let t=m.currentProject;if(!t)return;let n=q.value.relations.findIndex(t=>t.id===e);if(n===-1)return;let r=q.value.relations.splice(n,1)[0];if(t.relations.some(t=>t.id===e))try{J.value=!0,await m.removeMember(t.id,e),S.showMessage({type:`success`,title:p.baseText(`projects.settings.member.removed.title`)}),w.track(`User removed member from project`,{project_id:t.id,target_user_id:e})}catch(e){q.value.relations.splice(n,0,r),V(e)}}let Re=async({action:e,userId:t})=>{switch(e){case`remove`:await Le(t);break;default:break}},ze=()=>{q.value.relations=m.currentProject?.relations?me(m.currentProject.relations):[],q.value.name=m.currentProject?.name??``,q.value.description=m.currentProject?.description??``,q.value.customTelemetryTags=m.currentProject?.customTelemetryTags?me(m.currentProject.customTelemetryTags):[],Fe.value?.resetTouched(),q.value.defaultPool=m.currentProjectPoolSettings?.defaultPool??null},Be=()=>{let e=m.currentProjectPoolSettings?.defaultPool||null;return(q.value.defaultPool||null)!==e},Ue=()=>{ze(),U.value=!1},We=()=>{let e={};return m.currentProject?(q.value.name!==m.currentProject.name&&(e.name=q.value.name??``),q.value.description!==m.currentProject.description&&(e.description=q.value.description??``),q.value.relations.length!==m.currentProject.relations.length&&(e.memberAdded=q.value.relations.filter(e=>!m.currentProject?.relations.find(t=>t.id===e.id)),e.memberRemoved=m.currentProject.relations.filter(e=>!q.value.relations.find(t=>t.id===e.id))),e.role=q.value.relations.filter(t=>m.currentProject?.relations.find(e=>e.id===t.id)?.role!==t.role&&!e.memberAdded?.find(e=>e.id===t.id)),e):e},et=e=>{let t=m.currentProject?.id;e.name&&w.track(`User changed project name`,{project_id:t,name:e.name}),e.memberAdded?.forEach(e=>{w.track(`User added member to project`,{project_id:t,target_user_id:e.id,role:e.role})}),e.memberRemoved?.forEach(e=>{w.track(`User removed member from project`,{project_id:t,target_user_id:e.id})}),e.role?.forEach(e=>{w.track(`User changed member role on project`,{project_id:t,target_user_id:e.id,role:e.role})})},tt=async()=>{if(m.currentProject)try{let e=m.currentProject.id,t=[];t.push(m.updateProject(e,{name:q.value.name??``,description:q.value.description??``,...b.isOtelCustomSpanAttributesEnabled?{customTelemetryTags:q.value.customTelemetryTags}:{}})),st.value&&Be()&&t.push(m.updateCurrentProjectPoolSettings(e,{defaultPool:q.value.defaultPool??``})),await Promise.all(t),U.value=!1}catch(e){throw V(e),e}},nt=async()=>{if(U.value)try{await tt(),et(We()),S.showMessage({title:p.baseText(`projects.settings.save.successful.title`,{interpolate:{projectName:q.value.name??``}}),type:`success`})}catch{}},rt=async()=>{m.currentProjectId&&(de.value=await m.getResourceCounts(m.currentProjectId)),H.value=!0},it=async e=>{try{if(m.currentProject){let t=m.currentProject?.name??``;await m.deleteProject(m.currentProject.id,e),await C.push({name:ee.HOMEPAGE}),S.showMessage({title:p.baseText(`projects.settings.delete.successful.title`,{interpolate:{projectName:t}}),type:`success`}),H.value=!0}}catch(e){S.showError(e,p.baseText(`projects.settings.delete.error.title`))}},at=()=>{q.value.name===p.baseText(`projects.settings.newProjectName`)&&(pe.value?.inputRef?.focus(),pe.value?.inputRef?.select())},ot=async()=>{if(m.currentProject)try{await m.updateProject(m.currentProject.id,{icon:X.value}),S.showMessage({title:p.baseText(`projects.settings.icon.update.successful.title`),type:`success`})}catch(e){V(e)}},st=c(()=>b.isWorkerPoolsEnabled),ct=()=>{q.value.defaultPool=m.currentProjectPoolSettings?.defaultPool??null};A(()=>m.currentProject,async()=>{if(J.value){J.value=!1;return}ze(),await e(),at(),m.currentProject?.icon&&fe(m.currentProject.icon)&&(X.value=m.currentProject.icon);let t=m.currentProjectId;M.value&&t&&st.value&&await m.fetchProjectPoolSettings(t).catch(()=>{}).finally(ct)},{immediate:!0});let lt=c(()=>{let e=Ee.value,t=u.currentUser?.id,n=q.value.relations.map(n=>{let r=u.usersById[n.id],i=ue(n.role)?n.role:`project:viewer`,a=e.get(n.id);return{...r,...n,role:i,firstName:n?.firstName??r?.firstName??null,lastName:n?.lastName??r?.lastName??null,email:n?.email??r?.email??null,isCurrentUser:n.id===t,...a&&{alwaysHasAccess:!0,instanceRole:a.globalRole}}}),r=new Set(n.map(e=>e.id));for(let i of e.values())r.has(i.id)||n.push({id:i.id,firstName:i.firstName??null,lastName:i.lastName??null,email:i.email??null,role:i.globalRole.slug,isPendingUser:u.usersById[i.id]?.isPendingUser??!1,isCurrentUser:i.id===t,alwaysHasAccess:!0,instanceRole:i.globalRole});return n}),ut=c(()=>{if(!Z.value.trim())return lt.value;let e=Z.value.toLowerCase();return lt.value.filter(t=>{let n=`${t.firstName??``} ${t.lastName??``}`.toLowerCase(),r=(t.email??``).toLowerCase();return n.includes(e)||r.includes(e)})}),dt=e=>`${e.firstName??``} ${e.lastName??``}`.trim()||(e.email??``),ft=c(()=>{let e=m.currentProject?.creatorId,t=u.currentUser?.id,n=n=>e&&n.id===e?0:n.id===t?1:2;return[...ut.value].sort((e,t)=>n(e)-n(t)||dt(e).localeCompare(dt(t),void 0,{sensitivity:`base`}))}),pt=c(()=>{let{page:e,itemsPerPage:t}=Q.value,n=e*t;return{items:ft.value.slice(n,n+t),count:ft.value.length}});A(()=>ft.value.length,e=>{let{page:t,itemsPerPage:n}=Q.value;t>0&&t*n>=e&&(Q.value.page=Math.max(0,Math.ceil(e/n)-1))});let mt=c(()=>lt.value.length>=$e);A(mt,e=>{!e&&Z.value&&(Z.value=``)});let ht=O(()=>{Q.value.page=0},B(Y.INPUT.SEARCH)),gt=e=>{Z.value=e,ht()},_t=e=>{Q.value=e},vt=async e=>{he.value=e,we.value=!0;try{let t=m.currentProject?.id;if(!t){Ce.value=[];return}let n={};e.trim()&&(n.fullText=e),Te.value||(n.projectId=t),await u.fetchUsers({take:50,filter:n}),e.trim()?Ce.value=u.allUsers.filter(t=>{let n=e.toLowerCase(),r=`${t.firstName??``} ${t.lastName??``}`.toLowerCase(),i=(t.email??``).toLowerCase();return r.includes(n)||i.includes(n)}):Ce.value=u.allUsers}catch(e){S.showError(e,p.baseText(`projects.settings.users.search.error`))}finally{we.value=!1}},yt=O(vt,B(Y.INPUT.SEARCH));y(async()=>{R.value&&await vt(``)});let bt=c(()=>m.currentProject?.rolesManaged??!1);return D(async()=>{j.set(p.baseText(`projects.settings`)),!(!M.value&&!R.value)&&(at(),await h.fetchRoles())}),(e,a)=>(T(),l(`div`,{class:_(e.$style.projectSettings),"data-test-id":`project-settings-container`},[n(`div`,{class:_(e.$style.header)},[r(Se),M.value?(T(),l(`div`,{key:0,class:_(e.$style.headerRow)},[r(f($),{tag:`h1`,size:`xlarge`,class:`pt-xs pb-m`},{default:k(()=>[d(E(f(p).baseText(`projects.settings.info`)),1)]),_:1}),n(`div`,{class:_(e.$style.headerButtons)},[r(f(I),{variant:`subtle`,"native-type":`button`,disabled:!U.value,class:`mr-2xs`,"data-test-id":`project-settings-cancel-button`,onClick:t(Ue,[`stop`,`prevent`])},{default:k(()=>[d(E(f(p).baseText(`projects.settings.button.cancel`)),1)]),_:1},8,[`disabled`]),r(f(I),{disabled:!K.value||!U.value,variant:`solid`,"data-test-id":`project-settings-save-button`,onClick:t(nt,[`stop`,`prevent`])},{default:k(()=>[d(E(f(p).baseText(`projects.settings.button.save`)),1)]),_:1},8,[`disabled`])],2)],2)):o(``,!0)],2),n(`form`,{onSubmit:t(nt,[`prevent`])},[M.value?(T(),l(x,{key:0},[n(`fieldset`,null,[n(`label`,Ke,E(f(p).baseText(`projects.settings.name`)),1),n(`div`,{class:_(e.$style.projectName)},[r(f(ye),{modelValue:X.value,"onUpdate:modelValue":[a[0]||=e=>X.value=e,ot],"button-tooltip":f(p).baseText(`projects.settings.iconPicker.button.tooltip`),"show-color-picker":``},null,8,[`modelValue`,`button-tooltip`]),r(f(F),{id:`projectName`,ref_key:`nameInput`,ref:pe,modelValue:q.value.name,"onUpdate:modelValue":a[1]||=e=>q.value.name=e,label:``,type:`text`,name:`name`,required:``,"data-test-id":`project-settings-name-input`,class:_(e.$style.projectNameInput),onEnter:nt,onInput:Pe,onValidate:a[2]||=e=>oe.value=e},null,8,[`modelValue`,`class`])],2)]),n(`fieldset`,null,[n(`label`,qe,E(f(p).baseText(`projects.settings.description`)),1),r(f(F),{id:`projectDescription`,modelValue:q.value.description,"onUpdate:modelValue":a[3]||=e=>q.value.description=e,label:``,name:`description`,type:`textarea`,maxlength:512,autosize:!0,"data-test-id":`project-settings-description-input`,class:_(e.$style.projectDescriptionInput),onEnter:nt,onInput:Pe,onValidate:a[4]||=e=>W.value=e},null,8,[`modelValue`,`class`])])],64)):o(``,!0),r(Ve,{class:_(e.$style.externalSecrets)},null,8,[`class`]),M.value||R.value?(T(),l(`fieldset`,Je,[n(`h3`,null,[n(`label`,Ye,E(f(p).baseText(`projects.settings.projectMembers`)),1)]),n(`div`,{class:_([e.$style.membersInputRow,`mb-s`])},[r(f(se),{id:`projectMembers`,class:_(e.$style.userSelect),size:`large`,users:Oe.value,"current-user-id":f(u).currentUser?.id,placeholder:f(p).baseText(`workflows.shareModal.select.placeholder`),"data-test-id":`project-members-select`,remote:``,"remote-method":f(yt),loading:we.value,disabled:bt.value||!R.value,"onUpdate:modelValue":Me},{prefix:k(()=>[r(f(N),{icon:`search`})]),_:1},8,[`class`,`users`,`current-user-id`,`placeholder`,`remote-method`,`loading`,`disabled`]),mt.value?(T(),i(f(be),{key:0,class:_(e.$style.search),"model-value":Z.value,placeholder:f(p).baseText(`projects.settings.members.search.placeholder`),clearable:``,"data-test-id":`project-members-search`,"onUpdate:modelValue":gt},{prefix:k(()=>[r(f(N),{icon:`search`})]),_:1},8,[`class`,`model-value`,`placeholder`])):o(``,!0)],2),bt.value?(T(),l(`div`,Xe,[r(f(ge),{type:`info`,title:f(p).baseText(`settings.projectRolesManaged.description`)},null,8,[`title`])])):o(``,!0),lt.value.length>0?(T(),l(`div`,{key:1,class:_(e.$style.membersTableContainer)},[r(Ie,{"table-options":Q.value,"onUpdate:tableOptions":a[5]||=e=>Q.value=e,"data-test-id":`project-members-table`,data:pt.value,"current-user-id":f(u).currentUser?.id,"project-roles":f(h).processedProjectRoles,actions:je.value,"can-edit-role":!bt.value&&R.value,"onUpdate:options":_t,"onUpdate:role":Ne,onShowRoleUpgradeDialog:a[6]||=e=>ae.value=!0,onAction:Re},null,8,[`table-options`,`data`,`current-user-id`,`project-roles`,`actions`,`can-edit-role`])],2)):o(``,!0)])):o(``,!0),M.value?(T(),l(x,{key:2},[f(b).isOtelCustomSpanAttributesEnabled?(T(),l(`fieldset`,Ze,[n(`h3`,null,[n(`label`,null,E(f(p).baseText(`projects.settings.customSpanAttributes.label`)),1)]),r(He,{ref_key:`telemetryTagsRef`,ref:Fe,modelValue:q.value.customTelemetryTags,"onUpdate:modelValue":[a[7]||=e=>q.value.customTelemetryTags=e,Pe],onValidate:a[8]||=e=>ce.value=e},null,8,[`modelValue`])])):o(``,!0),st.value?(T(),i(Ge,{key:1,"default-pool":q.value.defaultPool,"available-pools":f(m).currentProjectPoolSettings?.availablePools??[],"onUpdate:defaultPool":a[9]||=e=>{q.value.defaultPool=e,Pe()}},null,8,[`default-pool`,`available-pools`])):o(``,!0),n(`fieldset`,null,[n(`h3`,Qe,E(f(p).baseText(`projects.settings.danger.title`)),1),n(`small`,{class:_(e.$style.danger)},E(f(p).baseText(`projects.settings.danger.message`)),3),r(f(I),{variant:`subtle`,size:`large`,"native-type":`button`,"data-test-id":`project-settings-delete-button`,onClick:t(rt,[`stop`,`prevent`])},{default:k(()=>[d(E(f(p).baseText(`projects.settings.danger.deleteProject`)),1)]),_:1})])],64)):o(``,!0)],32),r(De,{modelValue:H.value,"onUpdate:modelValue":a[10]||=e=>H.value=e,"current-project":f(m).currentProject,"resource-counts":de.value,onConfirmDelete:it},null,8,[`modelValue`,`current-project`,`resource-counts`]),r(ke,{modelValue:ae.value,"onUpdate:modelValue":a[11]||=e=>ae.value=e,limit:f(m).teamProjectsLimit,"plan-name":f(g).currentPlanData?.displayName},null,8,[`modelValue`,`limit`,`plan-name`])],2))}}),[[`__cssModules`,{$style:{projectSettings:`_projectSettings_qlzrv_1`,header:`_header_qlzrv_25`,headerRow:`_headerRow_qlzrv_31`,headerButtons:`_headerButtons_qlzrv_38`,upgrade:`_upgrade_qlzrv_44`,externalSecrets:`_externalSecrets_qlzrv_48`,membersInputRow:`_membersInputRow_qlzrv_53`,membersTableContainer:`_membersTableContainer_qlzrv_61`,search:`_search_qlzrv_65`,projectName:`_projectName_qlzrv_70`,projectNameInput:`_projectNameInput_qlzrv_75`,projectDescriptionInput:`_projectDescriptionInput_qlzrv_79`,userSelect:`_userSelect_qlzrv_80`,danger:`_danger_qlzrv_99`}}]]);export{et as default};
@@ -0,0 +1 @@
1
+ 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]=`9b9dd6ee-4c9f-487b-84fc-bdd537ce11c2`,e._sentryDebugIdIdentifier=`sentry-dbid-9b9dd6ee-4c9f-487b-84fc-bdd537ce11c2`)})()}catch{}import{o as e}from"./rolldown-runtime-BobR2NKB.js";import{Fd as t,Hd as n,Id as r,Ld as i,Nf as a,Pd as o,Qd as s,Rd as c,Sf as l,Vd as u,Vf as d,Wd as f,_f as p,cf as ee,cp as m,cs as te,df as ne,jd as re,ku as ie,lp as h,of as g,pp as _,rf as v,ss as ae,xf as y,zd as oe}from"./vendor-DS7UZyZ6.js";import{AT as b,Aw as se,Cv as ce,DT as x,Db as S,ET as C,FT as w,Fp as le,Gv as ue,Kv as de,Np as fe,Ow as T,Pw as E,Rw as pe,Sd as me,Uv as he,Vw as ge,aC as _e,bT as D,ch as ve,kp as ye,kw as O,pT as k,rh as be,td as A,vT as j,vf as M,yh as N,zv as P}from"./app-oLfukFT9.js";import{i as xe}from"./readyToRun.store-CE87oIgp.js";import{t as Se}from"./ResourcesListLayout-CIWP7UX_.js";import{t as Ce}from"./ProjectHeader-QjIM8haZ.js";import{t as we}from"./insights.store-qL6q61kW.js";import{t as Te}from"./InsightsSummary-A9X8mv3i.js";import"./src-BU6D5L7U.js";import{t as F}from"./pickBy-BwtXBSWf.js";var Ee=e(F(),1),De=b(f({__name:`VariablesUsageBadge`,props:{name:{}},setup(e){let n=w(),i=A(),{showMessage:a}=P(),s=e,c=o(()=>`$vars.${s.name}`),l=()=>{i.copy(c.value),a({title:n.baseText(`variables.row.usage.copiedToClipboard`),type:`success`})};return(e,i)=>(g(),r(d(D),{placement:`top`},{content:y(()=>[u(_(d(n).baseText(`variables.row.usage.copyToClipboard`)),1)]),default:y(()=>[t(`span`,{class:`usageSyntax`,onClick:l},_(c.value),1)]),_:1}))}}),[[`__scopeId`,`data-v-ce74e568`]]),Oe={class:`mb-s`},ke={key:0,class:`mb-s`},Ae={"data-test-id":`variables-row`},je={key:0},Me={key:0},Ne={class:`scope-badge`,style:{display:`flex`,"align-items":`center`,gap:`4px`}},Pe={key:1,align:`right`},Fe={class:`action-buttons`},Ie={key:0,class:`mt-xs`},I=b(f({__name:`ProjectVariables`,setup(e){let f=de(),b=ye(),A=ue(),F=ve(),I=he(),L=w(),Le=_e(),Re=le(),R=ae(),ze=te(),z=we(),Be=xe(),B=fe(),Ve=p(`layoutRef`),{showError:He,showMessage:Ue}=P(),V=R.params.projectId,H=o(()=>S(A.currentUser?.globalScopes).variable),U=o(()=>S(B.currentProject?.scopes).projectVariable),{isLoading:We,execute:Ge}=ie(b.fetchAllVariables,[],{immediate:!0}),W=o(()=>f.isEnterpriseFeatureEnabled[ce.Variables]),Ke=()=>{F.openModalWithData({name:N,data:{mode:`new`}}),I.track(`User clicked add variable button`)},qe=e=>{F.openModalWithData({name:N,data:{mode:`edit`,variable:e}})},Je=o(()=>b.variables.filter(e=>!V||e.project?.id===V).map(e=>({resourceType:`variable`,id:e.id,name:e.key,key:e.key,value:e.value,project:e.project}))),G=o(()=>b.variables.filter(e=>!e.project)),K=o(()=>W.value&&(H.value.create??U.value.create)),Ye=o(()=>{let e=[{id:0,path:`name`,label:L.baseText(`variables.table.key`),classes:[`variables-key-column`]},{id:1,path:`value`,label:L.baseText(`variables.table.value`),classes:[`variables-value-column`]},{id:2,path:`usage`,label:L.baseText(`variables.table.usage`),classes:[`variables-usage-column`]}];return V||e.push({id:3,path:`project`,label:L.baseText(`variables.table.scope`),classes:[`variables-scope-column`]}),W.value?e.concat({id:4,path:`actions`,label:``,classes:[`variables-actions-column`]}):e}),Xe=async e=>{try{if(await Le.confirm(L.baseText(`variables.modals.deleteConfirm.message`,{interpolate:{name:e.key}}),L.baseText(`variables.modals.deleteConfirm.title`),{confirmButtonText:L.baseText(`variables.modals.deleteConfirm.confirmButton`),cancelButtonText:L.baseText(`variables.modals.deleteConfirm.cancelButton`)})!==`confirm`)return;await b.deleteVariable({id:e.id,value:e.value,key:e.key}),Ue({title:L.baseText(`variables.delete.successful.message`,{interpolate:{variableName:e.key}}),type:`success`})}catch(e){He(e,L.baseText(`variables.errors.delete`))}},q=e=>{ze.replace({query:(0,Ee.default)(e)})},J=a({...R.query,incomplete:R.query.incomplete?.toString()===`true`,projectId:R.query.projectId?.toString()||``}),Ze=e=>{q({...J.value,search:e})},Qe=(e,t,n)=>{if(!be(e))return!1;let r=t;return r.incomplete&&(n&&=!e.value),r.projectId&&(r.projectId===`global`?n&&=!e.project:n&&=e.project?.id===r.projectId),n},Y=(e,t,n)=>n===`asc`?Q(e).trim().localeCompare(Q(t).trim()):Q(t).trim().localeCompare(Q(e).trim()),$e={nameAsc:(e,t)=>Y(e,t,`asc`),nameDesc:(e,t)=>Y(e,t,`desc`)},X=o(()=>{let e=[{value:`global`,label:L.baseText(`variables.modal.scope.global`),icon:{type:`icon`,value:`database`}}];return e.push(...B.availableProjects.filter(e=>e.type!==`personal`).map(e=>{let t=e.icon??{type:`icon`,value:`layer-group`};return{value:e.id,label:e.name??e.id,icon:t}})),e}),Z=o(()=>X.value.find(e=>e.value===J.value.projectId)?.icon??{type:`icon`,value:`database`});function et(){me().goToUpgrade(`variables`,`upgrade-variables`)}function Q(e){return e.key}Re.$onAction(({name:e,after:t})=>{e===`pullWorkfolder`&&t&&t(()=>{Ge()})});let $=o(()=>({heading:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.title),description:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.description),buttonText:L.baseText(F.contextBasedTranslationKeys.variables.unavailable.button),buttonType:`secondary`,"onClick:button":et,"data-test-id":`unavailable-resources-list`}));return v(()=>{M().set(L.baseText(`variables.heading`))}),(e,a)=>{let o=ne(`n8n-truncate`);return g(),r(Se,{ref_key:`layoutRef`,ref:Ve,filters:J.value,"onUpdate:filters":[a[1]||=e=>J.value=e,q],"resource-key":`variables`,disabled:!W.value,resources:Je.value,"additional-filters-handler":Qe,shareable:!1,"display-name":Q,"sort-fns":$e,"sort-options":[`nameAsc`,`nameDesc`],type:`datatable`,"type-props":{columns:Ye.value},loading:d(We),"onUpdate:search":Ze,"onClick:add":Ke},oe({header:y(()=>[n(Ce,{"main-button":`variable`},{default:y(()=>[d(Be).isOverviewSubPage&&d(z).isSummaryEnabled?(g(),r(d(Te),{key:0,loading:d(z).weeklySummary.isLoading,summary:d(z).weeklySummary.state,"time-range":`week`},null,8,[`loading`,`summary`])):i(``,!0)]),_:1})]),filters:y(({setKeyValue:o})=>[t(`div`,Oe,[n(d(O),{label:d(L).baseText(`credentials.filters.status`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),n(d(se),{label:`Value missing`,"data-test-id":`variable-filter-incomplete`,"model-value":J.value.incomplete,"onUpdate:modelValue":e=>o(`incomplete`,e)},null,8,[`model-value`,`onUpdate:modelValue`])]),d(V)?i(``,!0):(g(),c(`div`,ke,[n(d(O),{label:d(L).baseText(`forms.resourceFiltersDropdown.owner`),bold:!1,size:`small`,color:`text-base`,class:`mb-3xs`},null,8,[`label`]),n(d(pe),{modelValue:J.value.projectId,"onUpdate:modelValue":[a[0]||=e=>J.value.projectId=e,e=>o(`projectId`,e)],size:`large`,filterable:``,"data-test-id":`variable-modal-scope-select`},{prefix:y(()=>[Z.value?.type===`emoji`?(g(),r(d(j),{key:0,class:m(e.$style.menuItemEmoji)},{default:y(()=>[u(_(Z.value?.value),1)]),_:1},8,[`class`])):Z.value?.value?(g(),r(d(x),{key:1,icon:Z.value.value},null,8,[`icon`])):i(``,!0)]),default:y(()=>[(g(!0),c(re,null,ee(X.value,n=>(g(),r(d(ge),{key:n.value||`global`,value:n.value,label:n.label,class:m({[e.$style.globalOption]:n.value===`global`})},{default:y(()=>[t(`div`,{class:m(e.$style.optionContent)},[n.icon&&n.icon?.type===`emoji`?(g(),r(d(j),{key:0,class:m(e.$style.menuItemEmoji)},{default:y(()=>[u(_(n.icon.value),1)]),_:2},1032,[`class`])):n.icon?.value?(g(),r(d(x),{key:1,icon:n.icon.value},null,8,[`icon`])):i(``,!0),t(`span`,null,_(n.label),1)],2)]),_:2},1032,[`value`,`label`,`class`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`])]))]),default:y(({data:e})=>[t(`tr`,Ae,[t(`td`,null,_(e.key),1),t(`td`,null,[e.value?l((g(),c(`span`,je,null,512)),[[o,e.value,`20`]]):(g(),r(d(k),{key:1,variant:`warning`},{default:y(()=>[...a[2]||=[u(` Value missing `,-1)]]),_:1}))]),t(`td`,null,[e.key?(g(),r(De,{key:0,name:e.key},null,8,[`name`])):i(``,!0)]),d(V)?i(``,!0):(g(),c(`td`,Me,[n(d(k),null,{default:y(()=>[t(`div`,Ne,[e.project?(g(),r(d(x),{key:0,icon:`layers`})):i(``,!0),u(` `+_(e.project?.name??d(L).baseText(`variables.table.scope.global`)),1)])]),_:2},1024)])),W.value?(g(),c(`td`,Pe,[t(`div`,Fe,[n(d(D),{disabled:H.value.update??U.value.update,placement:`top`},{content:y(()=>[u(_(d(L).baseText(`variables.row.button.edit.onlyRoleCanEdit`)),1)]),default:y(()=>[n(d(C),{variant:`subtle`,size:`small`,"data-test-id":`variable-row-edit-button`,class:`mr-xs`,disabled:!(H.value.update??U.value.update),onClick:t=>qe(e)},{default:y(()=>[u(_(d(L).baseText(`variables.row.button.edit`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`]),n(d(D),{disabled:H.value.delete??U.value.delete,placement:`top`},{content:y(()=>[u(_(d(L).baseText(`variables.row.button.delete.onlyRoleCanDelete`)),1)]),default:y(()=>[n(d(C),{variant:`subtle`,size:`small`,"data-test-id":`variable-row-delete-button`,disabled:!(H.value.delete??U.value.delete),onClick:t=>Xe(e)},{default:y(()=>[u(_(d(L).baseText(`variables.row.button.delete`)),1)]),_:1},8,[`disabled`,`onClick`])]),_:2},1032,[`disabled`])])])):i(``,!0)])]),postdata:y(()=>[d(V)&&G.value.length?(g(),c(`div`,Ie,[d(V)?(g(),r(d(j),{key:0,size:`small`},{default:y(()=>[n(d(T),{href:`/home/variables`,theme:`text`,size:`small`},{default:y(()=>[u(_(G.value.length)+` global variables `,1)]),_:1}),a[3]||=u(` available in this project `,-1)]),_:1})):i(``,!0)])):i(``,!0)]),_:2},[W.value?void 0:{name:`preamble`,fn:y(()=>[n(d(E),s({class:`mb-m`},$.value),null,16)]),key:`0`},!W.value||W.value&&!K.value?{name:`empty`,fn:y(()=>[W.value?K.value?i(``,!0):(g(),r(d(E),{key:1,"data-test-id":`cannot-create-variables`,heading:d(L).baseText(`variables.empty.notAllowedToCreate.heading`,{interpolate:{name:d(A).currentUser?.firstName??``}}),description:d(L).baseText(`variables.empty.notAllowedToCreate.description`)},null,8,[`heading`,`description`])):(g(),r(d(E),h(s({key:0},$.value)),null,16))]),key:`1`}:void 0]),1032,[`filters`,`disabled`,`resources`,`type-props`,`loading`])}}}),[[`__cssModules`,{$style:{optionContent:`_optionContent_5otes_1`,menuItemEmoji:`_menuItemEmoji_5otes_7`,globalOption:`_globalOption_5otes_12`}}],[`__scopeId`,`data-v-281fc901`]]);export{I as default};