n8n-editor-ui 2.1.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (298) hide show
  1. package/data/node-popularity.json +0 -4
  2. package/dist/assets/{AddDataTableModal-CuIZMTon.js → AddDataTableModal-C07v9Nxn.js} +18 -19
  3. package/dist/assets/{AgentEditorModal-BhJTzrI3.js → AgentEditorModal-BrtNn_I9.js} +51 -62
  4. package/dist/assets/{AgentEditorModal-CzlIqORm.css → AgentEditorModal-CnYw6elM.css} +7 -13
  5. package/dist/assets/{Alert-0hwMnhqx.js → Alert-CjCTAWnZ.js} +1 -1
  6. package/dist/assets/{AnnotationTagsDropdown.ee-DKZ0VLjm.js → AnnotationTagsDropdown.ee-BLpUZufe.js} +2 -2
  7. package/dist/assets/{AuthView-dLOShGBB.js → AuthView-CqAePJa9.js} +5 -5
  8. package/dist/assets/BottomMenu-CRVyIu-B.css +474 -0
  9. package/dist/assets/BottomMenu-Cej7gwr4.js +547 -0
  10. package/dist/assets/{ChangePasswordView-BBwHcO1t.js → ChangePasswordView-BuzmSLJ8.js} +15 -15
  11. package/dist/assets/{ChatAgentAvatar-BK95BHUo.css → ChatAgentAvatar-B68ZZ295.css} +18 -9
  12. package/dist/assets/{ChatAgentAvatar-DErShgau.js → ChatAgentAvatar-CwpeLqqo.js} +17 -16
  13. package/dist/assets/{ChatSidebarOpener-B_fYs0MW.js → ChatLayout-Baw4DF5I.js} +9 -28
  14. package/dist/assets/{ChatPersonalAgentsView-FV6Fmhk8.js → ChatPersonalAgentsView-B9Pt0vxY.js} +29 -34
  15. package/dist/assets/ChatPersonalAgentsView-BiiyFIRl.css +159 -0
  16. package/dist/assets/ChatSidebar-Cmc2-HvU.js +526 -0
  17. package/dist/assets/{ChatSidebar-D0f-W0S9.css → ChatSidebar-DcNxY7Pt.css} +61 -336
  18. package/dist/assets/{ChatView-aZxNyOXr.js → ChatView-C2ezV2fz.js} +125 -144
  19. package/dist/assets/{ChatView-mTIZIDr3.css → ChatView-DZODCD2o.css} +4 -4
  20. package/dist/assets/{ChatWorkflowAgentsView-BP_kY_ye.js → ChatWorkflowAgentsView-DBmwl58I.js} +22 -23
  21. package/dist/assets/CollectionParameter-DvlRV-HR.js +50 -0
  22. package/dist/assets/{CommunityNodeUpdateInfo-B8p9USAR.js → CommunityNodeUpdateInfo-DjXh6DHu.js} +8 -8
  23. package/dist/assets/{CopyInput-VHRnOH9J.js → CopyInput-D-Z7pmxS.js} +4 -4
  24. package/dist/assets/{CredentialIcon-BuTzTX1f.js → CredentialIcon-ClX-2bGh.js} +3 -3
  25. package/dist/assets/{CredentialPicker-BU1pDir0.js → CredentialPicker-CrCc144c.js} +5 -6
  26. package/dist/assets/{CredentialSelectorModal-DKTzrT02.js → CredentialSelectorModal-Da2na5my.js} +18 -20
  27. package/dist/assets/{CredentialsView-DV-FX_N9.js → CredentialsView-CqNF_Gka.js} +34 -37
  28. package/dist/assets/{DataTableActions-CkNGn5Up.js → DataTableActions-D0ibHSoF.js} +5 -6
  29. package/dist/assets/{DataTableDetailsView-D8yVEj5C.js → DataTableDetailsView-BRY9rVV1.js} +22 -24
  30. package/dist/assets/{DataTableView-Cp41ZcKb.js → DataTableView-D4ujwn7I.js} +31 -34
  31. package/dist/assets/DemoFooter-fhB0ZsZi.js +63 -0
  32. package/dist/assets/{Draggable-CMR9ctz-.js → Draggable-Bs1jTk_8.js} +1 -1
  33. package/dist/assets/{EmptySharedSectionActionBox-CXrEGDHJ.js → EmptySharedSectionActionBox-BBB3j3rf.js} +4 -4
  34. package/dist/assets/{EnterpriseEdition.ee-Cq_v3iMz.js → EnterpriseEdition.ee-_BSL-rxT.js} +1 -1
  35. package/dist/assets/{EntityNotFound-5i3KSEDe.js → EntityNotFound-8qJnYCXt.js} +7 -7
  36. package/dist/assets/{EntityUnAuthorised-DHAtMGRv.js → EntityUnAuthorised-CYu0UXzr.js} +7 -7
  37. package/dist/assets/{ErrorView-WLZWaLMd.js → ErrorView-CrDo6qHL.js} +9 -9
  38. package/dist/assets/{EvaluationsRootView-Q_gMKb8B.js → EvaluationsRootView-C_7tPZ3q.js} +36 -36
  39. package/dist/assets/{EvaluationsView-AV-VL2Le.js → EvaluationsView-DTmT_Mjm.js} +21 -21
  40. package/dist/assets/{ExecutionsTime-CNz8UC7l.css → ExecutionsTime-CMAp2_xF.css} +24 -21
  41. package/dist/assets/{ExecutionsTime-C6Fc0Xu4.js → ExecutionsTime-ncZBFujs.js} +37 -28
  42. package/dist/assets/{ExecutionsView-C9GRf5XG.js → ExecutionsView-DKx5PCwr.js} +34 -37
  43. package/dist/assets/{ExternalSecretsProviderConnectionSwitch.ee-vSVmIUzv.js → ExternalSecretsProviderConnectionSwitch.ee-DQZ57stj.js} +4 -4
  44. package/dist/assets/{FixedCollectionParameter-5C6wv5y4.js → FixedCollectionParameter-BJZ0eM-5.js} +45 -53
  45. package/dist/assets/{ForgotMyPasswordView-D5uF1smv.js → ForgotMyPasswordView-D_k_YvIG.js} +15 -15
  46. package/dist/assets/{InsightsChartAverageRuntime-Bm0c6_UE.js → InsightsChartAverageRuntime-Cljk8p2A.js} +10 -10
  47. package/dist/assets/{InsightsChartFailed-D6TI96gu.js → InsightsChartFailed-DTmTcxHp.js} +8 -8
  48. package/dist/assets/{InsightsChartFailureRate-BXjbwEEr.js → InsightsChartFailureRate-BKL-1iTZ.js} +10 -10
  49. package/dist/assets/{InsightsChartTimeSaved-BPUaaTg8.js → InsightsChartTimeSaved-CIxYU033.js} +10 -10
  50. package/dist/assets/{InsightsChartTotal-D3aCqsFD.js → InsightsChartTotal-_2DLJIdR.js} +8 -8
  51. package/dist/assets/{InsightsDashboard-CQoIVhso.js → InsightsDashboard--1f1U32C.js} +32 -34
  52. package/dist/assets/{InsightsPaywall-Sg6VouYw.js → InsightsPaywall-DwtdewB6.js} +15 -16
  53. package/dist/assets/{InsightsSummary-C_N5DTxk.js → InsightsSummary-DWzL1ePo.js} +8 -8
  54. package/dist/assets/{InsightsTableWorkflows-B-Eghvqb.js → InsightsTableWorkflows-CHoJdUEl.js} +18 -18
  55. package/dist/assets/{ItemsRenderer-qqlnyEcv.js → ItemsRenderer-Bju44b_S.js} +10 -10
  56. package/dist/assets/{ItemsRenderer-Cr6c6uYy.css → ItemsRenderer-DkobJF9f.css} +4 -2
  57. package/dist/assets/{KeyboardShortcutTooltip-BSbSC7ko.js → KeyboardShortcutTooltip-srIzApSu.js} +1 -1
  58. package/dist/assets/{LogsPanel-32PVgZio.js → LogsPanel-C9nCXiIh.js} +24 -25
  59. package/dist/assets/LogsPanel-z0W4CHve.js +50 -0
  60. package/dist/assets/MCPConnectWorkflowsModal-CR5hRPTJ.js +301 -0
  61. package/dist/assets/MCPConnectWorkflowsModal-CS2q8ice.css +275 -0
  62. package/dist/assets/{MainHeader-DJA_Afhq.css → MainHeader-CSaAWCWj.css} +13 -13
  63. package/dist/assets/{MainHeader-D64ay8wr.js → MainHeader-Dtf7ohow.js} +97 -101
  64. package/dist/assets/{MainSidebar-bwCkn71q.css → MainSidebar-CEsQ8o1Y.css} +84 -304
  65. package/dist/assets/{MainSidebar-BUBrCesJ.js → MainSidebar-_37xftBv.js} +222 -694
  66. package/dist/assets/{MigrationRuleDetail-ZhGa7Xyk.js → MigrationRuleDetail-CCO__jC7.js} +20 -20
  67. package/dist/assets/{MigrationRules-bMR2Ua5Z.js → MigrationRules-B0SPwFyT.js} +12 -12
  68. package/dist/assets/{Modal-BnubMpYE.js → Modal-DrkMFWe3.js} +4 -4
  69. package/dist/assets/{ModelByIdSelectorModal-CINzSzeY.js → ModelByIdSelectorModal-CoQLLeXk.js} +17 -18
  70. package/dist/assets/{NDVEmptyState-ClE3eiVz.js → NDVEmptyState-DKrc1TFh.js} +1 -1
  71. package/dist/assets/{NodeCreation-5He1y6KH.js → NodeCreation-k3pkIHZY.js} +41 -49
  72. package/dist/assets/{NodeCreator-1WQtM6k5.js → NodeCreator-B6D9_1wn.js} +47 -50
  73. package/dist/assets/{NodeCreator-C-ckvxD7.css → NodeCreator-OSIpRI6S.css} +25 -25
  74. package/dist/assets/{NodeDetailsView-DXFliu3P.js → NodeDetailsView-DfMYS7Pz.js} +60 -68
  75. package/dist/assets/{NodeDetailsViewV2-DqUhlqL1.js → NodeDetailsViewV2-DOCw_zWY.js} +61 -69
  76. package/dist/assets/{ModalDrawer-B-12esvU.css → NodeIcon-BDxr0f30.css} +5 -6
  77. package/dist/assets/{NodeIcon-DKFrufUm.js → NodeIcon-DL6ucXJC.js} +4 -4
  78. package/dist/assets/{NodeSettings-Dxu4dYM2.js → NodeSettings-CS2iUNwL.js} +17 -17
  79. package/dist/assets/{NodeView-CflD3BIb.js → NodeView-0XOeMCB7.js} +111 -106
  80. package/dist/assets/{OAuthConsentView-B_geMUgf.js → OAuthConsentView-WGFrtRYZ.js} +14 -14
  81. package/dist/assets/{ParameterInputList-CXEjv4Ky.css → ParameterInputList-0YoVowEI.css} +10 -7
  82. package/dist/assets/{ParameterInputList-vjOxrGN1.js → ParameterInputList-DTEJwrQm.js} +59 -56
  83. package/dist/assets/{PrebuiltAgentTemplatesView-C0-XwSIu.js → PrebuiltAgentTemplatesView-CJ6VJ0XJ.js} +17 -19
  84. package/dist/assets/{ProjectBreadcrumb-BigR4bXU.js → ProjectBreadcrumb-FtcudW_2.js} +4 -4
  85. package/dist/assets/{ProjectCardBadge-DBExASTm.js → ProjectCardBadge-C42B_oyx.js} +5 -5
  86. package/dist/assets/{ProjectHeader-Chcw-5iC.js → ProjectHeader-UBLuSGFT.js} +8 -8
  87. package/dist/assets/{ProjectIcon-Biy_-Ssg.js → ProjectIcon-CEp8nyYM.js} +1 -1
  88. package/dist/assets/{ProjectRoleView-C5y4uOer.js → ProjectRoleView-BQvsQqjp.js} +15 -16
  89. package/dist/assets/{ProjectRolesView-BTYgQZEb.js → ProjectRolesView-CksItD9m.js} +16 -19
  90. package/dist/assets/{ProjectSettings-DGaQU11k.js → ProjectSettings-DUSQ3i-j.js} +26 -28
  91. package/dist/assets/{ProjectSharing-BPuoZzCz.js → ProjectSharing-DcKfaqUD.js} +5 -5
  92. package/dist/assets/{ProjectVariables-CJwvD2Zp.js → ProjectVariables-BEwMAsZl.js} +32 -35
  93. package/dist/assets/{ProviderSettingsModal-CCSi77gL.js → ProviderSettingsModal-D9LOoiTP.js} +21 -23
  94. package/dist/assets/{PushConnectionTracker-CRYM3Vtb.js → PushConnectionTracker-CYhR1yeo.js} +3 -3
  95. package/dist/assets/{ResolversView-AW_6JE1C.js → ResolversView-MhtoNdHP.js} +15 -17
  96. package/dist/assets/{ResourceFiltersDropdown-BACE5ZTX.css → ResourceFiltersDropdown-Cma1Lj9J.css} +12 -9
  97. package/dist/assets/{ResourceFiltersDropdown-QUn2x3Bh.js → ResourceFiltersDropdown-DJG8zh1q.js} +18 -18
  98. package/dist/assets/{ResourcesListLayout-Ca_StuHS.js → ResourcesListLayout-CBYWFTvd.js} +9 -9
  99. package/dist/assets/{RunDataHtml-DhjduYN-.js → RunDataHtml-B4A7gRBL.js} +3 -3
  100. package/dist/assets/{RunDataHtml-_b8v7-9v.js → RunDataHtml-CkjC7YuF.js} +1 -1
  101. package/dist/assets/{RunDataJson-CQzsp53k.js → RunDataJson-hUd8I9Iw.js} +14 -14
  102. package/dist/assets/{RunDataJsonActions-DYuehkje.js → RunDataJsonActions-mj5kInPr.js} +15 -15
  103. package/dist/assets/{RunDataParsedAiContent-PeROyr39.js → RunDataParsedAiContent-DQYrKUHo.js} +8 -8
  104. package/dist/assets/RunDataParsedAiContent-DhKdg7Ux.js +24 -0
  105. package/dist/assets/{RunDataSearch-CHpgjaXw.js → RunDataSearch-BanmtjON.js} +10 -10
  106. package/dist/assets/{RunDataTable-CYK7wMVo.js → RunDataTable-CLw-U45I.js} +18 -18
  107. package/dist/assets/{SamlOnboarding-DLuOxA1h.js → SamlOnboarding-CL7FFqOA.js} +15 -15
  108. package/dist/assets/{SaveButton-CKB6EQNE.js → SaveButton-DdOVpjST.js} +3 -3
  109. package/dist/assets/{SelectedItemsInfo-BvVqSABb.js → SelectedItemsInfo-DBuH5w0D.js} +2 -2
  110. package/dist/assets/{SettingsApiView-530q1i_m.js → SettingsApiView-C0aDHviI.js} +17 -20
  111. package/dist/assets/{SettingsChatHubView-DTfYScWP.js → SettingsChatHubView-xXbgxwbM.js} +20 -20
  112. package/dist/assets/{SettingsCommunityNodesView-CEkBS-n3.js → SettingsCommunityNodesView-BAxes_Db.js} +29 -36
  113. package/dist/assets/{SettingsExternalSecrets-DWmNushg.js → SettingsExternalSecrets-B6jdgfB7.js} +17 -18
  114. package/dist/assets/{SettingsLdapView-BA_rrOsm.js → SettingsLdapView-CR2IAnRQ.js} +19 -22
  115. package/dist/assets/{SettingsLogStreamingView-BzS7Rk_k.js → SettingsLogStreamingView-DSRc5q9w.js} +17 -20
  116. package/dist/assets/{SettingsMCPView-CrY6qFtu.js → SettingsMCPView-C7HQFidB.js} +136 -164
  117. package/dist/assets/{SettingsMCPView-CuJwNWhp.css → SettingsMCPView-DIdodQTu.css} +28 -41
  118. package/dist/assets/{SettingsPersonalView-Dzs0wJy5.js → SettingsPersonalView-DOH_Ml9N.js} +15 -16
  119. package/dist/assets/{SettingsSourceControl-DqxyElas.js → SettingsSourceControl-DH0mZaa0.js} +19 -21
  120. package/dist/assets/{SettingsSso-DZGvnd66.js → SettingsSso-CrWkteb1.js} +21 -24
  121. package/dist/assets/{SettingsUsageAndPlan-CFqo5bjc.js → SettingsUsageAndPlan-DQzF59ve.js} +17 -19
  122. package/dist/assets/{SettingsUsersView-ZXkY8lOk.js → SettingsUsersView-BZrQxtA7.js} +22 -25
  123. package/dist/assets/{SettingsView-Dvi58KSf.js → SettingsView-LDjLlP2V.js} +14 -14
  124. package/dist/assets/{SetupTemplateFormStep-YceNY0Wy.js → SetupTemplateFormStep-CwgC9pY3.js} +7 -7
  125. package/dist/assets/{SetupView-CEhMhQ-x.js → SetupView-wJeD4wwM.js} +15 -15
  126. package/dist/assets/{SetupWorkflowCredentialsButton-D-WhRVmE.js → SetupWorkflowCredentialsButton-kVNSvjYZ.js} +14 -14
  127. package/dist/assets/{SetupWorkflowFromTemplateView-DxBRJzNj.js → SetupWorkflowFromTemplateView-CBTduGfH.js} +21 -25
  128. package/dist/assets/{SeverityTag-fmR9_nbe.js → SeverityTag-CuF3dVKd.js} +2 -2
  129. package/dist/assets/{SigninView-DmeaxGTh.js → SigninView-DjWIkUJe.js} +16 -16
  130. package/dist/assets/{SignoutView-Ds9n2CzI.js → SignoutView-CP6UttCg.js} +8 -8
  131. package/dist/assets/{SignupView-1gamElom.js → SignupView-DKWZNap-.js} +15 -15
  132. package/dist/assets/{SkeletonAgentCard-BJex2Lyu.js → SkeletonAgentCard-DcV1dSF-.js} +8 -8
  133. package/dist/assets/{TagsDropdown-u4tMd12i.js → TagsDropdown-CuT_jHbX.js} +3 -3
  134. package/dist/assets/{TemplateCard-B4F-XvsD.js → TemplateCard-DY1aPA-a.js} +6 -7
  135. package/dist/assets/{TemplateDetails-BKKfnaff.js → TemplateDetails-Cstu-YNP.js} +6 -7
  136. package/dist/assets/{TemplateList-CMtMo5k1.js → TemplateList-BfBs1Bpa.js} +5 -5
  137. package/dist/assets/{TemplatesCollectionView-Cd-HGCH0.js → TemplatesCollectionView-DgKv-274.js} +22 -24
  138. package/dist/assets/{TemplatesSearchView-CIo8cLBH.js → TemplatesSearchView-BgdaZIha.js} +19 -21
  139. package/dist/assets/{TemplatesView-DRX4MxqG.js → TemplatesView-HPIEGoX2.js} +3 -3
  140. package/dist/assets/{TemplatesWorkflowView-CRaFmEOk.js → TemplatesWorkflowView-3-fxkWIH.js} +23 -25
  141. package/dist/assets/{TestRunDetailView-ChwnIP5p.js → TestRunDetailView-D9tH7Ptp.js} +19 -19
  142. package/dist/assets/{TimeAgo-DAiwB89s.js → TimeAgo-BpAJIqal.js} +3 -3
  143. package/dist/assets/{ToolsSelectorModal-BOGI0a8n.js → ToolsSelectorModal-DSyXV7Ag.js} +17 -18
  144. package/dist/assets/{TriggerPanel-BiMxO993.js → TriggerPanel-DDzH4j34.js} +18 -19
  145. package/dist/assets/{VirtualSchema-DBG6207l.js → VirtualSchema-BN0NQDyh.js} +15 -16
  146. package/dist/assets/VirtualSchema-rizWsPXH.js +35 -0
  147. package/dist/assets/{VueMarkdown-Cpmboohi.js → VueMarkdown-D7yo0t2n.js} +1 -1
  148. package/dist/assets/{WorkerView-C51ge4b7.js → WorkerView-DeYRT0mS.js} +34 -41
  149. package/dist/assets/{WorkflowActivationErrorMessage-CQe9ZG_g.js → WorkflowActivationErrorMessage-D9ktIWO1.js} +1 -1
  150. package/dist/assets/{WorkflowActivator-xCBwqG20.css → WorkflowActivator-BGcCOUCH.css} +2 -2
  151. package/dist/assets/{WorkflowActivator-BBKWeo24.js → WorkflowActivator-Cj1x_nLm.js} +13 -11
  152. package/dist/assets/{WorkflowExecutionsInfoAccordion-CHxJyPWc.js → WorkflowExecutionsInfoAccordion-DOW8-lUO.js} +11 -15
  153. package/dist/assets/{WorkflowExecutionsLandingPage-Bc76eEI8.js → WorkflowExecutionsLandingPage-D-k97H81.js} +19 -33
  154. package/dist/assets/{WorkflowExecutionsPreview-_k32TAQx.js → WorkflowExecutionsPreview-bwSmtqxL.js} +22 -25
  155. package/dist/assets/{WorkflowExecutionsView-BtPQdaUI.js → WorkflowExecutionsView-BoJYR4A-.js} +50 -46
  156. package/dist/assets/{WorkflowExecutionsView-J4lWGYW8.css → WorkflowExecutionsView-DzHhxp4K.css} +2 -2
  157. package/dist/assets/{WorkflowHistory-D3BhOWlD.css → WorkflowHistory-BBHdNsOb.css} +147 -98
  158. package/dist/assets/{WorkflowHistory-TqV7hl7y.js → WorkflowHistory-DDwFxfgs.js} +329 -273
  159. package/dist/assets/WorkflowLocation-6rp_-CuW.css +164 -0
  160. package/dist/assets/WorkflowLocation-BcPFmw0j.js +164 -0
  161. package/dist/assets/{WorkflowOnboardingView-DSG-2KfF.js → WorkflowOnboardingView-CQjMFn6h.js} +8 -10
  162. package/dist/assets/{WorkflowPreview-Bb-j_vKv.js → WorkflowPreview-C2LPnLG1.js} +4 -4
  163. package/dist/assets/{WorkflowTagsDropdown-N-OFfXUv.js → WorkflowTagsDropdown-ChfpozQB.js} +2 -2
  164. package/dist/assets/{WorkflowsView-d5GNiTzz.js → WorkflowsView-C3nCkxzz.js} +65 -84
  165. package/dist/assets/{_MapCache-BXj4WgHo.js → _MapCache-0zNxISSG.js} +78 -8
  166. package/dist/assets/{_baseOrderBy-DocZGYxF.js → _baseOrderBy-CesQfsb9.js} +4 -4
  167. package/dist/assets/{_initCloneObject-GPxNDW5O.js → _initCloneObject-DrYdt_vX.js} +2 -2
  168. package/dist/assets/{aiTemplatesStarterCollection.store-DAVh8dHH.js → aiTemplatesStarterCollection.store-Bz4IH9Sr.js} +5 -5
  169. package/dist/assets/{apiKeys.store-U364pJfj.js → apiKeys.store-W8uXGfoe.js} +2 -2
  170. package/dist/assets/{assistant.store-Cz4nIRHi.js → assistant.store-Cn9sEjYD.js} +6 -6
  171. package/dist/assets/{auth.eventBus-BD50qglP.js → auth.eventBus-D9L5FHI4.js} +1 -1
  172. package/dist/assets/{banners.store-ex1PTUk7.js → banners.store-CRNqMmnn.js} +4 -4
  173. package/dist/assets/{builder.store-CAubedr_.js → builder.store-YujiPssa.js} +5780 -164
  174. package/dist/assets/{chartjs.utils-BuKhcKwM.js → chartjs.utils-CoNBCTXc.js} +3 -3
  175. package/dist/assets/{chat.store-CBMr_Pqd.js → chat.store-YbHxxnni.js} +136 -91
  176. package/dist/assets/{chatPanel.store-5rL60x8w.js → chatPanel.store-DmxMXfyE.js} +17 -11
  177. package/dist/assets/{col-D5wesaQA.js → col-oSGwUVsR.js} +1 -2
  178. package/dist/assets/{constants-CYvY1HoE.js → constants-D52YoOSp.js} +18 -18
  179. package/dist/assets/{constants-qk3hx0l8.js → constants-DLTaaipl.js} +2 -1
  180. package/dist/assets/{core-CiWhevuy.js → core-BbiIkN91.js} +1 -1
  181. package/dist/assets/{dataTable.store-B95C_g-m.js → dataTable.store-CUsh5p9b.js} +3 -3
  182. package/dist/assets/{date-picker-ZPBpyB3m.js → date-picker-DeUybCvv.js} +2 -2
  183. package/dist/assets/{dateFormatter-DqsBbNBt.js → dateFormatter-DzJiM44k.js} +2 -2
  184. package/dist/assets/{dialog-DJAwPy6j.js → dialog-C4MrWHj5.js} +3 -3
  185. package/dist/assets/{dist-JIm44DPf.js → dist-DP_8je0B.js} +1 -1
  186. package/dist/assets/{en-b3uD8cvU.js → en-CF30SCh2.js} +11 -1
  187. package/dist/assets/en-DyO2pPiC.js +2 -0
  188. package/dist/assets/{es-BskBLtZB.js → es-DlTgUi2w.js} +1 -1
  189. package/dist/assets/{evaluation.constants-F0c_I-kV.js → evaluation.constants-0Qe9Ioy2.js} +3 -3
  190. package/dist/assets/{executions.store-C4mu7EN_.js → executions.store-Dodf4hZt.js} +2 -2
  191. package/dist/assets/{externalSecrets.ee.store-Ds5jjnbH.js → externalSecrets.ee.store-CRomIb5E.js} +3 -3
  192. package/dist/assets/{folders.store-CuCrgN0-.js → folders.store-Bld2a-oS.js} +3 -3
  193. package/dist/assets/{index-OYuYUvLQ.js → index-BFbfC2Dj.js} +478 -172
  194. package/dist/assets/{index-BkLJ6ICr.css → index-Bl6XoGDE.css} +155 -24
  195. package/dist/assets/{insights.constants-B7y0cvTb.js → insights.constants-C8GITe6H.js} +1 -1
  196. package/dist/assets/{insights.store-CqFEtmFW.js → insights.store-CwovPTtG.js} +5 -5
  197. package/dist/assets/{insights.utils-Dc4VSauh.js → insights.utils-BjffJfoC.js} +4 -4
  198. package/dist/assets/{isEmpty-Cvua03C8.js → isEmpty-OfTBXDAe.js} +26 -27
  199. package/dist/assets/{languageModules-CLe6cIYW.js → languageModules-D_uyjb6R.js} +1 -1
  200. package/dist/assets/{logStreaming.store-BvsIXizk.js → logStreaming.store-fF1gjMD8.js} +2 -2
  201. package/dist/assets/mcp.constants-DQPD3Ntp.js +10 -0
  202. package/dist/assets/{mcp.store-Cgk1Y3cg.js → mcp.store-CaNRXC4L.js} +14 -3
  203. package/dist/assets/{merge-BfSiz1ty.js → merge-BmWPLD5Q.js} +1 -1
  204. package/dist/assets/{nodeCreator.store-ByBNDHDU.js → nodeCreator.store-CnQC3Thy.js} +11 -16
  205. package/dist/assets/{nodeIcon-C-dkL8Fd.js → nodeIcon-Bcr-G7rB.js} +3 -3
  206. package/dist/assets/{nodeTransforms-tTQ2gB1N.js → nodeTransforms-DK79e95H.js} +2 -2
  207. package/dist/assets/{orderBy-BBt186Rx.js → orderBy-YGC4g6w9.js} +2 -2
  208. package/dist/assets/{personalizedTemplatesV3.store-8gqUNWYR.js → personalizedTemplatesV3.store-BKxUzmKZ.js} +3 -5
  209. package/dist/assets/{pickBy-B-V25TGC.js → pickBy-BnWwuV2u.js} +2 -2
  210. package/dist/assets/{radio-_dKLhwOP.js → radio-DyB--77Q.js} +1 -2
  211. package/dist/assets/{readyToRun.store-Do8-C5FX.js → readyToRun.store-BRvUlRSD.js} +190 -230
  212. package/dist/assets/{readyToRunWorkflows.store-D1IPhYoo.js → readyToRunWorkflows.store-BNsVPNB9.js} +5 -6
  213. package/dist/assets/{roles.store-n83e09_t.js → roles.store-pbRRxt0E.js} +3 -3
  214. package/dist/assets/{router-CHJ3JyBP.js → router-nTea-Urj.js} +111 -90
  215. package/dist/assets/{sanitize-html-Cft-jOcY.js → sanitize-html-Cc45ZKm8.js} +1 -1
  216. package/dist/assets/{schemaPreview.store-BhyHWf7E.js → schemaPreview.store-D6CQiOeI.js} +3 -3
  217. package/dist/assets/{semver-Cp_WpVPO.js → semver-CrR9VADA.js} +2 -2
  218. package/dist/assets/{sourceControl.eventBus-Cvxq2KVt.js → sourceControl.eventBus-KIeXsiU7.js} +1 -1
  219. package/dist/assets/{src-DS0bffpn.css → src-CWWagUhy.css} +729 -81
  220. package/dist/assets/{src-RwnQoRPP.js → src-DTY1hJHs.js} +1675 -3573
  221. package/dist/assets/{sso.store-cqjdz_2u.js → sso.store-Di00dtDC.js} +2 -2
  222. package/dist/assets/{table-8YZ1ENjX.js → table-VmuGzK7A.js} +3 -3
  223. package/dist/assets/{templateActions-enJitM-t.js → templateActions-DIWkQgOn.js} +5 -5
  224. package/dist/assets/{templateTransforms-DQ7WCXTt.js → templateTransforms-BYfEDiSK.js} +1 -1
  225. package/dist/assets/{truncate-BmR9EyjG.js → truncate-ByNK2lRy.js} +2266 -27
  226. package/dist/assets/{uniqBy-CwukEo9t.js → uniqBy-CJFaA-UD.js} +1 -1
  227. package/dist/assets/{usage.store-BfUdTqsB.js → usage.store-BY4g7MNp.js} +2 -2
  228. package/dist/assets/{useActions-DQI9KLjd.js → useActions-CBZGt3Kf.js} +4 -4
  229. package/dist/assets/{useBeforeUnload-D_U2Zy8a.js → useBeforeUnload-CQAM_lAW.js} +3 -3
  230. package/dist/assets/{useCanvasMapping-qW6Bypew.js → useCanvasMapping-C0deX2fv.js} +35 -32
  231. package/dist/assets/{useCanvasOperations-BK5Ruww4.js → useCanvasOperations-BQyHvbXi.js} +141 -29
  232. package/dist/assets/{useClipboard-DTcHaFEK.js → useClipboard-CqFyEHaX.js} +2 -2
  233. package/dist/assets/{useCommandBar-BHz7uJzq.js → useCommandBar-I9Rh00u6.js} +26 -30
  234. package/dist/assets/{useCredentialResolvers-Bpp_HV9G.js → useCredentialResolvers-CaMKldsZ.js} +4 -5
  235. package/dist/assets/{useCustomAgent-6jtxXrFo.js → useCustomAgent-DLwpqJcm.js} +25 -15
  236. package/dist/assets/{useDebounce-Cisb25yt.js → useDebounce-DGSOfe85.js} +2 -2
  237. package/dist/assets/{useExecutionData-BKeTOhoX.js → useExecutionData-BocEX1BJ.js} +1 -1
  238. package/dist/assets/{useExecutionDebugging-D40mIqVy.js → useExecutionDebugging-CsWzUsUi.js} +6 -7
  239. package/dist/assets/{useExecutionHelpers-B32gpNcR.js → useExecutionHelpers-BWgzEc86.js} +5 -5
  240. package/dist/assets/{useImportCurlCommand-Dwkg4gxb.js → useImportCurlCommand-DGIgJik0.js} +9 -9
  241. package/dist/assets/{useKeybindings-B82i0gwd.js → useKeybindings-DD-ZZkmj.js} +4 -4
  242. package/dist/assets/{useLogsTreeExpand-a_nQHbuO.js → useLogsTreeExpand-BQmkJc3D.js} +13 -13
  243. package/dist/assets/{useMcp-G0hcPb2G.js → useMcp-CtPU_6al.js} +2 -2
  244. package/dist/assets/{usePageRedirectionHelper-CRhI7kEV.js → usePageRedirectionHelper-TzgTKFxt.js} +3 -4
  245. package/dist/assets/{usePinnedData-DbJIdcH9.js → usePinnedData-Dztv0dCp.js} +4 -4
  246. package/dist/assets/{usePushConnection-S6ZzSxmg.js → usePushConnection-Ce3EppRV.js} +19 -16
  247. package/dist/assets/{useRecentResources-BPctttxN.js → useRecentResources-fniP3oOE.js} +9 -8
  248. package/dist/assets/{useRunWorkflow-A9HrZtf9.js → useRunWorkflow-CJgkc0Iq.js} +9 -10
  249. package/dist/assets/{useSettingsItems-CrZVWQtF.js → useSettingsItems-Ds8JJZE_.js} +4 -4
  250. package/dist/assets/{useTelemetryContext-CqZT5h1F.js → useTelemetryContext-Ds7-s6ZC.js} +1 -1
  251. package/dist/assets/{useWorkflowActivate-CAf_ZVge.js → useWorkflowActivate-DocAQ9u8.js} +7 -8
  252. package/dist/assets/{useWorkflowsCache-BWNobE2Z.js → useWorkflowsCache-BXhjK2ZF.js} +1 -1
  253. package/dist/assets/{userRoleProvisioning.store-BajXGuB0.js → userRoleProvisioning.store-DNmA1ftX.js} +2 -2
  254. package/dist/assets/utils-C2GPI2gK.js +54 -0
  255. package/dist/assets/{versions.store-XAfp7S_I.js → versions.store-qQUmfjg3.js} +3 -3
  256. package/dist/index.html +109 -119
  257. package/package.json +1 -1
  258. package/dist/assets/ChatSidebar-CImrJ1wq.js +0 -555
  259. package/dist/assets/CollectionParameter-XxYjJM8n.js +0 -58
  260. package/dist/assets/DemoFooter-CyiCV2u7.js +0 -71
  261. package/dist/assets/FileSaver.min--9uV1QmK.js +0 -72
  262. package/dist/assets/LogsPanel-VCY0eldj.js +0 -58
  263. package/dist/assets/ModalDrawer-BmpoiTtU.js +0 -277
  264. package/dist/assets/NodeIcon-eaW3atZy.css +0 -125
  265. package/dist/assets/RunDataParsedAiContent-DI84m3cU.js +0 -24
  266. package/dist/assets/VirtualSchema-BgGTE1g9.js +0 -42
  267. package/dist/assets/cloudPlan.store-DjB3bVSl.js +0 -185
  268. package/dist/assets/en-BD3FHSTF.js +0 -2
  269. package/dist/assets/focusPanel.store-kzoWYFw_.js +0 -208
  270. package/dist/assets/mcp.constants-svQUbNx5.js +0 -8
  271. package/dist/assets/npsSurvey.store-DztaTi-T.js +0 -98
  272. package/dist/assets/overlay-Bil1NnPh.js +0 -165
  273. package/dist/assets/templates.store-BVbL58Kw.js +0 -3915
  274. package/dist/assets/useChatHubSidebarState-CBF0kF34.js +0 -29
  275. package/dist/assets/useMessage-CPC9wpAB.js +0 -610
  276. package/dist/assets/useWorkflowSaving-CfItkcry.js +0 -229
  277. package/dist/assets/utils-BLHsa_NJ.js +0 -18
  278. /package/dist/assets/{AnimatedSpinner-g6zev3_N.js → AnimatedSpinner-wiGFgffA.js} +0 -0
  279. /package/dist/assets/{CalendarDate-B-JEhNYg.js → CalendarDate-zWqgZMlk.js} +0 -0
  280. /package/dist/assets/{ChatFile-8ik4bOn3.js → ChatFile-cnNK8Kf8.js} +0 -0
  281. /package/dist/assets/{ChatSidebarOpener-CxM-3LAt.css → ChatLayout-CxM-3LAt.css} +0 -0
  282. /package/dist/assets/{ChatPersonalAgentsView-BBfu-g98.css → ChatWorkflowAgentsView-BBfu-g98.css} +0 -0
  283. /package/dist/assets/{PageViewLayout-B889Bfwc.js → PageViewLayout-BHSzOio1.js} +0 -0
  284. /package/dist/assets/{TextWithHighlights-C4QSPTGM.js → TextWithHighlights-DjzuDrgO.js} +0 -0
  285. /package/dist/assets/{buttons.esm-CZxEX89d.js → buttons.esm-CT4flsfB.js} +0 -0
  286. /package/dist/assets/{chart-BxWK2ZOo.js → chart-CE3HWIkr.js} +0 -0
  287. /package/dist/assets/{core-CXk6RNMV.js → core-6W4wWNc1.js} +0 -0
  288. /package/dist/assets/{dateformat-hG8NERse.js → dateformat-CM9k0--B.js} +0 -0
  289. /package/dist/assets/{exports-CdZcr9ah.js → exports-hpMZaOPT.js} +0 -0
  290. /package/dist/assets/{fileUtils-D3GQ2UWQ.js → fileUtils-D_SiS8no.js} +0 -0
  291. /package/dist/assets/{path-browserify-BgjP7RyT.js → path-browserify-BtCDmZ3_.js} +0 -0
  292. /package/dist/assets/{retry-CMAFrhVi.js → retry-dP46utx2.js} +0 -0
  293. /package/dist/assets/{smartDecimal-Bi50OE4b.js → smartDecimal-DK6-_VSq.js} +0 -0
  294. /package/dist/assets/{sortByProperty-DAqnDMg7.js → sortByProperty-CV1aCzkS.js} +0 -0
  295. /package/dist/assets/{useIntersectionObserver-BZ6Jqnr3.js → useIntersectionObserver-DXKoRNFj.js} +0 -0
  296. /package/dist/assets/{vue-0rlD32wK.js → vue-Dg_43WEg.js} +0 -0
  297. /package/dist/assets/{vue-json-pretty-B9qWbmOF.js → vue-json-pretty-DGKuDe33.js} +0 -0
  298. /package/dist/assets/{xml-DSIt30t0.js → xml-B6veOr9z.js} +0 -0
@@ -1,14 +1,14 @@
1
- import { C as computed, Cn as toDisplayString, D as createElementBlock, E as createCommentVNode, Gt as unref, M as createVNode, P as defineComponent, T as createBlock, Ut as toValue, Z as onMounted, _ as Fragment, _t as watch, bn as normalizeStyle, bt as withCtx, c as useCssModule, et as openBlock, it as renderList, j as createTextVNode, mt as useTemplateRef, vn as normalizeClass, w as createBaseVNode } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { g as onClickOutside, gt as useI18n } from "./_MapCache-BXj4WgHo.js";
3
- import { Gn as N8nIcon_default, Hn as N8nText_default, N as N8nNavigationDropdown_default, Un as N8nButton_default, ht as N8nTooltip_default } from "./src-RwnQoRPP.js";
1
+ import { C as computed, Cn as toDisplayString, D as createElementBlock, E as createCommentVNode, Gt as unref, It as ref, M as createVNode, P as defineComponent, T as createBlock, Ut as toValue, Z as onMounted, _ as Fragment, _t as watch, bn as normalizeStyle, bt as withCtx, c as useCssModule, et as openBlock, it as renderList, j as createTextVNode, mt as useTemplateRef, vn as normalizeClass, w as createBaseVNode } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
+ import { _t as useI18n, g as onClickOutside } from "./_MapCache-0zNxISSG.js";
3
+ import { M as N8nNavigationDropdown_default, Sn as N8nButton_default, ht as N8nTooltip_default, wn as N8nIcon_default, xn as N8nText_default } from "./src-DTY1hJHs.js";
4
4
  import { t as __plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BwBpWJRZ.js";
5
- import { $o as useSettingsStore, Pn as useProjectsStore, Wi as useUIStore, _t as useNodeTypesStore, en as useCredentialsStore, p as useTelemetry } from "./builder.store-CAubedr_.js";
6
- import { Qr as PROVIDER_CREDENTIAL_TYPE_MAP, jo as getResourcePermissions, ti as chatHubLLMProviderSchema } from "./constants-CYvY1HoE.js";
7
- import { t as NodeIcon_default } from "./NodeIcon-DKFrufUm.js";
8
- import { t as CredentialIcon_default } from "./CredentialIcon-BuTzTX1f.js";
9
- import { i as CHAT_MODEL_BY_ID_SELECTOR_MODAL_KEY, p as providerDisplayNames, r as CHAT_CREDENTIAL_SELECTOR_MODAL_KEY } from "./constants-qk3hx0l8.js";
10
- import { a as flattenModel, d as personalAgentDefaultIcon, f as stringifyModel, m as workflowAgentDefaultIcon, o as fromStringToModel, t as useChatStore, u as isLlmProviderModel } from "./chat.store-CBMr_Pqd.js";
11
- import { t as ChatAgentAvatar_default } from "./ChatAgentAvatar-DErShgau.js";
5
+ import { Nt as useNodeTypesStore, O as useTelemetry, Xn as useProjectsStore, gn as useCredentialsStore, hs as useSettingsStore, oa as useUIStore } from "./builder.store-YujiPssa.js";
6
+ import { Oo as getResourcePermissions, Qr as chatHubLLMProviderSchema, Yr as PROVIDER_CREDENTIAL_TYPE_MAP } from "./constants-D52YoOSp.js";
7
+ import { t as NodeIcon_default } from "./NodeIcon-DL6ucXJC.js";
8
+ import { t as CredentialIcon_default } from "./CredentialIcon-ClX-2bGh.js";
9
+ import { i as CHAT_MODEL_BY_ID_SELECTOR_MODAL_KEY, m as providerDisplayNames, r as CHAT_CREDENTIAL_SELECTOR_MODAL_KEY } from "./constants-DLTaaipl.js";
10
+ import { a as flattenModel, d as personalAgentDefaultIcon, f as stringifyModel, m as workflowAgentDefaultIcon, o as fromStringToModel, t as useChatStore, u as isLlmProviderModel } from "./chat.store-YbHxxnni.js";
11
+ import { t as ChatAgentAvatar_default } from "./ChatAgentAvatar-CwpeLqqo.js";
12
12
  function truncateBeforeLast(text, maxLength, lastCharsLength = 5) {
13
13
  const chars = [];
14
14
  const segmenter = new Intl.Segmenter(void 0, { granularity: "grapheme" });
@@ -316,7 +316,8 @@ var ModelSelector_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
316
316
  default: withCtx(() => [createVNode(unref(N8nButton_default), {
317
317
  class: normalizeClass(_ctx.$style.dropdownButton),
318
318
  type: "secondary",
319
- text: _ctx.text
319
+ text: _ctx.text,
320
+ "data-test-id": "chat-model-selector"
320
321
  }, {
321
322
  default: withCtx(() => [
322
323
  createVNode(ChatAgentAvatar_default, {
@@ -448,14 +449,23 @@ var ToolsSelector_vue_vue_type_style_index_0_lang_module_default = {
448
449
  var ToolsSelector_default = /* @__PURE__ */ __plugin_vue_export_helper_default(ToolsSelector_vue_vue_type_script_setup_true_lang_default, [["__cssModules", { "$style": ToolsSelector_vue_vue_type_style_index_0_lang_module_default }]]);
449
450
  function useCustomAgent(agentId) {
450
451
  const store = useChatStore();
452
+ const isLoading = ref(false);
451
453
  const id = computed(() => toValue(agentId));
452
- const agent = computed(() => {
454
+ const customAgent = computed(() => {
453
455
  if (!id.value) return;
454
456
  return store.customAgents[id.value];
455
457
  });
456
- watch(id, (theId) => {
457
- if (theId) store.fetchCustomAgent(theId);
458
+ watch(id, async (theId) => {
459
+ if (theId) try {
460
+ isLoading.value = true;
461
+ await store.fetchCustomAgent(theId);
462
+ } finally {
463
+ isLoading.value = false;
464
+ }
458
465
  }, { immediate: true });
459
- return agent;
466
+ return {
467
+ isLoading,
468
+ customAgent
469
+ };
460
470
  }
461
471
  export { ToolsSelector_default as n, ModelSelector_default as r, useCustomAgent as t };
@@ -1,7 +1,7 @@
1
1
  import { o as __toESM, t as __commonJSMin } from "./chunk-6z4oVpB-.js";
2
2
  import { It as ref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
3
- import { c as require_isObject, f as require__root } from "./_MapCache-BXj4WgHo.js";
4
- import { d as require_isSymbol } from "./truncate-BmR9EyjG.js";
3
+ import { c as require_isObject, f as require__root } from "./_MapCache-0zNxISSG.js";
4
+ import { d as require_isSymbol } from "./truncate-ByNK2lRy.js";
5
5
  var require__trimmedEndIndex = /* @__PURE__ */ __commonJSMin(((exports, module) => {
6
6
  var reWhitespace = /\s/;
7
7
  function trimmedEndIndex$1(string) {
@@ -1,5 +1,5 @@
1
1
  import { C as computed } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { v as useWorkflowsStore } from "./builder.store-CAubedr_.js";
2
+ import { N as useWorkflowsStore } from "./builder.store-YujiPssa.js";
3
3
  function useExecutionData({ node }) {
4
4
  const workflowsStore = useWorkflowsStore();
5
5
  const workflowExecution = computed(() => {
@@ -1,11 +1,10 @@
1
1
  import { C as computed, L as h } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { gt as useI18n } from "./_MapCache-BXj4WgHo.js";
3
- import { b as useRouter } from "./truncate-BmR9EyjG.js";
4
- import { t as useMessage } from "./useMessage-CPC9wpAB.js";
5
- import { $o as useSettingsStore, An as injectWorkflowState, Vo as DEBUG_PAYWALL_MODAL_KEY, Wi as useUIStore, _r as isFullExecutionResponse, n as useToast, p as useTelemetry, u as sanitizeHtml, v as useWorkflowsStore } from "./builder.store-CAubedr_.js";
6
- import { Vo as VIEWS, ss as MODAL_CONFIRM, wc as EnterpriseEditionFeature } from "./constants-CYvY1HoE.js";
7
- import { r as useRootStore } from "./_baseOrderBy-DocZGYxF.js";
8
- import { t as usePageRedirectionHelper } from "./usePageRedirectionHelper-CRhI7kEV.js";
2
+ import { _t as useI18n } from "./_MapCache-0zNxISSG.js";
3
+ import { b as useRouter } from "./truncate-ByNK2lRy.js";
4
+ import { E as sanitizeHtml, Kn as injectWorkflowState, N as useWorkflowsStore, Nr as isFullExecutionResponse, O as useTelemetry, hs as useSettingsStore, m as useMessage, oa as useUIStore, rs as DEBUG_PAYWALL_MODAL_KEY, v as useToast } from "./builder.store-YujiPssa.js";
5
+ import { Ro as VIEWS, rs as MODAL_CONFIRM, yc as EnterpriseEditionFeature } from "./constants-D52YoOSp.js";
6
+ import { r as useRootStore } from "./_baseOrderBy-CesQfsb9.js";
7
+ import { t as usePageRedirectionHelper } from "./usePageRedirectionHelper-TzgTKFxt.js";
9
8
  const useExecutionDebugging = () => {
10
9
  const telemetry = useTelemetry();
11
10
  const router = useRouter();
@@ -1,8 +1,8 @@
1
- import { gt as useI18n } from "./_MapCache-BXj4WgHo.js";
2
- import { b as useRouter } from "./truncate-BmR9EyjG.js";
3
- import { p as useTelemetry } from "./builder.store-CAubedr_.js";
4
- import { Vo as VIEWS } from "./constants-CYvY1HoE.js";
5
- import { t as convertToDisplayDate } from "./dateFormatter-DqsBbNBt.js";
1
+ import { _t as useI18n } from "./_MapCache-0zNxISSG.js";
2
+ import { b as useRouter } from "./truncate-ByNK2lRy.js";
3
+ import { O as useTelemetry } from "./builder.store-YujiPssa.js";
4
+ import { Ro as VIEWS } from "./constants-D52YoOSp.js";
5
+ import { t as convertToDisplayDate } from "./dateFormatter-DzJiM44k.js";
6
6
  function useExecutionHelpers() {
7
7
  const i18n = useI18n();
8
8
  const router = useRouter();
@@ -1,15 +1,15 @@
1
1
  import { a as __toCommonJS, i as __require, o as __toESM, t as __commonJSMin } from "./chunk-6z4oVpB-.js";
2
2
  import { Gt as unref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
3
- import { gt as useI18n } from "./_MapCache-BXj4WgHo.js";
4
- import { r as require_get } from "./truncate-BmR9EyjG.js";
3
+ import { _t as useI18n } from "./_MapCache-0zNxISSG.js";
4
+ import { r as require_get } from "./truncate-ByNK2lRy.js";
5
+ import { ea as importCurlEventBus, v as useToast } from "./builder.store-YujiPssa.js";
5
6
  import { D as process$1, E as init_dist$1, i as init_dist, n as init_empty, r as Buffer, t as empty_exports } from "./empty-BuGRxzl4.js";
6
- import { Ri as importCurlEventBus, n as useToast } from "./builder.store-CAubedr_.js";
7
- import { t as require_path_browserify } from "./path-browserify-BgjP7RyT.js";
8
- import { Nc as CURL_IMPORT_NODES_PROTOCOLS, Pc as CURL_IMPORT_NOT_SUPPORTED_PROTOCOLS } from "./constants-CYvY1HoE.js";
9
- import "./merge-BfSiz1ty.js";
10
- import { g as assert } from "./_baseOrderBy-DocZGYxF.js";
11
- import "./dateformat-hG8NERse.js";
12
- import "./useDebounce-Cisb25yt.js";
7
+ import { t as require_path_browserify } from "./path-browserify-BtCDmZ3_.js";
8
+ import { Oc as CURL_IMPORT_NODES_PROTOCOLS, kc as CURL_IMPORT_NOT_SUPPORTED_PROTOCOLS } from "./constants-D52YoOSp.js";
9
+ import "./merge-BmWPLD5Q.js";
10
+ import { g as assert } from "./_baseOrderBy-CesQfsb9.js";
11
+ import "./dateformat-CM9k0--B.js";
12
+ import "./useDebounce-DGSOfe85.js";
13
13
  var import_get = /* @__PURE__ */ __toESM(require_get());
14
14
  init_dist();
15
15
  var CCError = class extends Error {};
@@ -1,8 +1,8 @@
1
1
  import { C as computed, It as ref, Ut as toValue, z as inject } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { D as useEventListener, b as useActiveElement } from "./_MapCache-BXj4WgHo.js";
3
- import { ct as useDeviceSupport } from "./src-RwnQoRPP.js";
4
- import { ac as PopOutWindowKey } from "./constants-CYvY1HoE.js";
5
- import { u as shouldIgnoreCanvasShortcut } from "./nodeCreator.store-ByBNDHDU.js";
2
+ import { O as useEventListener, b as useActiveElement } from "./_MapCache-0zNxISSG.js";
3
+ import { ct as useDeviceSupport } from "./src-DTY1hJHs.js";
4
+ import { ec as PopOutWindowKey } from "./constants-D52YoOSp.js";
5
+ import { u as shouldIgnoreCanvasShortcut } from "./nodeCreator.store-CnQC3Thy.js";
6
6
  const useKeybindings = (keymap, options) => {
7
7
  const popOutWindow = inject(PopOutWindowKey, ref());
8
8
  const activeElement = useActiveElement({ window: popOutWindow?.value });
@@ -1,17 +1,17 @@
1
1
  import { o as __toESM } from "./chunk-6z4oVpB-.js";
2
2
  import { C as computed, Cn as toDisplayString, D as createElementBlock, E as createCommentVNode, G as nextTick, Gt as unref, It as ref, M as createVNode, P as defineComponent, T as createBlock, Vt as toRef, W as mergeProps, _ as Fragment, _t as watch, bn as normalizeStyle, bt as withCtx, et as openBlock, h as withModifiers, it as renderList, j as createTextVNode, mt as useTemplateRef, vn as normalizeClass, w as createBaseVNode, zt as shallowRef } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
3
- import { B as useVirtualList, _t as I18nT, gt as useI18n, it as useThrottleFn, z as useTimestamp } from "./_MapCache-BXj4WgHo.js";
4
- import { Gn as N8nIcon_default, Hn as N8nText_default, Un as N8nButton_default, ht as N8nTooltip_default, xt as N8nIconButton_default } from "./src-RwnQoRPP.js";
3
+ import { B as useTimestamp, V as useVirtualList, _t as useI18n, at as useThrottleFn, vt as I18nT } from "./_MapCache-0zNxISSG.js";
4
+ import { Sn as N8nButton_default, ht as N8nTooltip_default, wn as N8nIcon_default, xn as N8nText_default, xt as N8nIconButton_default } from "./src-DTY1hJHs.js";
5
5
  import { t as __plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BwBpWJRZ.js";
6
- import { b as useRouter, r as require_get } from "./truncate-BmR9EyjG.js";
7
- import { An as injectWorkflowState, Xt as require_upperFirst, Yo as v4_default, _t as useNodeTypesStore, at as isChatNode, it as formatTokenUsageCount, kn as useNodeHelpers, n as useToast, nt as addTokenUsageData, rt as emptyTokenUsageData, v as useWorkflowsStore, yi as parse } from "./builder.store-CAubedr_.js";
8
- import { En as MANUAL_CHAT_TRIGGER_NODE_TYPE, Ka as NodeConnectionTypes, Oc as LOGS_EXECUTION_DATA_THROTTLE_DURATION, Ui as createEmptyRunExecutionData, Vt as CHAT_TRIGGER_NODE_TYPE, Wi as createRunExecutionData, Ya as AGENT_LANGCHAIN_NODE_TYPE, _i as Workflow, c as PLACEHOLDER_EMPTY_WORKFLOW_ID, vi as parseErrorMetadata } from "./constants-CYvY1HoE.js";
9
- import { x as TOOL_EXECUTOR_NODE_NAME } from "./_baseOrderBy-DocZGYxF.js";
10
- import { t as useRunWorkflow } from "./useRunWorkflow-A9HrZtf9.js";
11
- import { t as NodeIcon_default } from "./NodeIcon-DKFrufUm.js";
12
- import { t as require_isEmpty } from "./isEmpty-Cvua03C8.js";
13
- import { a as toTime, i as toDayMonth } from "./dateFormatter-DqsBbNBt.js";
14
- import { t as AnimatedSpinner_default } from "./AnimatedSpinner-g6zev3_N.js";
6
+ import { b as useRouter, r as require_get } from "./truncate-ByNK2lRy.js";
7
+ import { Fi as parse, Gn as useNodeHelpers, Kn as injectWorkflowState, N as useWorkflowsStore, Nt as useNodeTypesStore, bt as formatTokenUsageCount, ds as v4_default, fn as require_upperFirst, v as useToast, vt as addTokenUsageData, xt as isChatNode, yt as emptyTokenUsageData } from "./builder.store-YujiPssa.js";
8
+ import { Bi as createEmptyRunExecutionData, Cc as LOGS_EXECUTION_DATA_THROTTLE_DURATION, Ka as AGENT_LANGCHAIN_NODE_TYPE, Ua as NodeConnectionTypes, Vi as createRunExecutionData, hi as parseErrorMetadata, mi as Workflow, wn as MANUAL_CHAT_TRIGGER_NODE_TYPE, zt as CHAT_TRIGGER_NODE_TYPE } from "./constants-D52YoOSp.js";
9
+ import { x as TOOL_EXECUTOR_NODE_NAME } from "./_baseOrderBy-CesQfsb9.js";
10
+ import { t as useRunWorkflow } from "./useRunWorkflow-CJgkc0Iq.js";
11
+ import { t as NodeIcon_default } from "./NodeIcon-DL6ucXJC.js";
12
+ import { t as require_isEmpty } from "./isEmpty-OfTBXDAe.js";
13
+ import { a as toTime, i as toDayMonth } from "./dateFormatter-DzJiM44k.js";
14
+ import { t as AnimatedSpinner_default } from "./AnimatedSpinner-wiGFgffA.js";
15
15
  var import_get = /* @__PURE__ */ __toESM(require_get());
16
16
  var import_isEmpty = /* @__PURE__ */ __toESM(require_isEmpty());
17
17
  function getConsumedTokens(task) {
@@ -804,8 +804,8 @@ function useLogsExecutionData({ isEnabled, filter } = {}) {
804
804
  subWorkflows.value = {};
805
805
  }
806
806
  }, updateInterval, true, true), { immediate: true });
807
- watch(() => workflowsStore.workflowId, (newId) => {
808
- if (newId === "__EMPTY__") resetExecutionData();
807
+ watch(() => workflowsStore.workflowId, () => {
808
+ resetExecutionData();
809
809
  });
810
810
  watch(throttledWorkflowData, (data) => {
811
811
  workflow.value = data ? new Workflow({
@@ -1,5 +1,5 @@
1
- import { p as useTelemetry } from "./builder.store-CAubedr_.js";
2
- import { $n as SCHEDULE_TRIGGER_NODE_TYPE, Vt as CHAT_TRIGGER_NODE_TYPE, fn as FORM_TRIGGER_NODE_TYPE, vr as WEBHOOK_NODE_TYPE } from "./constants-CYvY1HoE.js";
1
+ import { O as useTelemetry } from "./builder.store-YujiPssa.js";
2
+ import { Zn as SCHEDULE_TRIGGER_NODE_TYPE, hr as WEBHOOK_NODE_TYPE, un as FORM_TRIGGER_NODE_TYPE, zt as CHAT_TRIGGER_NODE_TYPE } from "./constants-D52YoOSp.js";
3
3
  function useMcp() {
4
4
  const telemetry = useTelemetry();
5
5
  const mcpTriggerMap = {
@@ -1,7 +1,6 @@
1
- import { $o as useSettingsStore, dr as useUsersStore, p as useTelemetry } from "./builder.store-CAubedr_.js";
2
- import { x as N8N_PRICING_PAGE_URL } from "./constants-CYvY1HoE.js";
3
- import { t as useCloudPlanStore } from "./cloudPlan.store-DjB3bVSl.js";
4
- import { t as useVersionsStore } from "./versions.store-XAfp7S_I.js";
1
+ import { Dr as useUsersStore, O as useTelemetry, hs as useSettingsStore, p as useCloudPlanStore } from "./builder.store-YujiPssa.js";
2
+ import { y as N8N_PRICING_PAGE_URL } from "./constants-D52YoOSp.js";
3
+ import { t as useVersionsStore } from "./versions.store-qQUmfjg3.js";
5
4
  function usePageRedirectionHelper() {
6
5
  const usersStore = useUsersStore();
7
6
  const cloudPlanStore = useCloudPlanStore();
@@ -1,8 +1,8 @@
1
1
  import { C as computed, Gt as unref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { gt as useI18n } from "./_MapCache-BXj4WgHo.js";
3
- import { Mi as stringSizeInBytes, Ni as toMegaBytes, _t as useNodeTypesStore, an as useDataSchema, i as useExternalHooks, n as useToast, p as useTelemetry, v as useWorkflowsStore } from "./builder.store-CAubedr_.js";
4
- import { $s as MAX_PINNED_DATA_SIZE, Aa as jsonParse, Ka as NodeConnectionTypes, Kn as PIN_DATA_NODE_TYPES_DENYLIST, Qs as MAX_EXPECTED_REQUEST_SIZE, ec as MAX_WORKFLOW_SIZE, fa as isSubNodeType, ja as jsonStringify, ta as getNodeOutputs } from "./constants-CYvY1HoE.js";
5
- import { r as useRootStore } from "./_baseOrderBy-DocZGYxF.js";
2
+ import { _t as useI18n } from "./_MapCache-0zNxISSG.js";
3
+ import { Ji as stringSizeInBytes, N as useWorkflowsStore, Nt as useNodeTypesStore, O as useTelemetry, Yi as toMegaBytes, b as useExternalHooks, v as useToast, xn as useDataSchema } from "./builder.store-YujiPssa.js";
4
+ import { Da as jsonParse, Js as MAX_PINNED_DATA_SIZE, Oa as jsonStringify, Qi as getNodeOutputs, Ua as NodeConnectionTypes, Wn as PIN_DATA_NODE_TYPES_DENYLIST, Ys as MAX_WORKFLOW_SIZE, la as isSubNodeType, qs as MAX_EXPECTED_REQUEST_SIZE } from "./constants-D52YoOSp.js";
5
+ import { r as useRootStore } from "./_baseOrderBy-CesQfsb9.js";
6
6
  function useNodeType(options = {}) {
7
7
  const nodeTypesStore = useNodeTypesStore();
8
8
  const nodeType = computed(() => {
@@ -1,15 +1,15 @@
1
1
  import { It as ref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { gt as useI18n } from "./_MapCache-BXj4WgHo.js";
3
- import { $o as useSettingsStore, An as injectWorkflowState, Bi as globalLinkActionsEventBus, Dr as isValidNodeConnectionType, Gt as isTutorialTemplateId, Hi as codeNodeEditorEventBus, Nn as useDocumentTitle, Os as sendGetWorkerStatus, Rt as SampleTemplates, Sn as useWorkflowHelpers, Wi as useUIStore, Wt as isPrebuiltAgentTemplateId, _t as useNodeTypesStore, en as useCredentialsStore, ft as getExecutionErrorMessage, i as useExternalHooks, kn as useNodeHelpers, li as getTriggerNodeServiceName, n as useToast, p as useTelemetry, pt as getExecutionErrorToastConfiguration, st as clearPopupWindowState, t as useBuilderStore, v as useWorkflowsStore, yi as parse } from "./builder.store-CAubedr_.js";
4
- import { Oa as isCommunityPackageName, Ts as WORKFLOW_SETTINGS_MODAL_KEY, Wi as createRunExecutionData, Xi as generateNodesGraph, ho as TRIMMED_TASK_DATA_CONNECTIONS_KEY, ro as EVALUATION_TRIGGER_NODE_TYPE } from "./constants-CYvY1HoE.js";
5
- import { k as defineStore, r as useRootStore } from "./_baseOrderBy-DocZGYxF.js";
6
- import { t as useAssistantStore } from "./assistant.store-Cz4nIRHi.js";
7
- import { t as useWorkflowSaving } from "./useWorkflowSaving-CfItkcry.js";
8
- import { i as usePushConnectionStore, t as useRunWorkflow } from "./useRunWorkflow-A9HrZtf9.js";
9
- import { t as useBannersStore } from "./banners.store-ex1PTUk7.js";
10
- import { t as useSchemaPreviewStore } from "./schemaPreview.store-BhyHWf7E.js";
11
- import { t as useAITemplatesStarterCollectionStore } from "./aiTemplatesStarterCollection.store-DAVh8dHH.js";
12
- import { t as useReadyToRunStore } from "./readyToRun.store-Do8-C5FX.js";
2
+ import { _t as useI18n } from "./_MapCache-0zNxISSG.js";
3
+ import { Ct as clearPopupWindowState, Fi as parse, Gn as useNodeHelpers, Kn as injectWorkflowState, N as useWorkflowsStore, Nt as useNodeTypesStore, O as useTelemetry, Ot as getExecutionErrorMessage, Rn as useWorkflowHelpers, Ti as getTriggerNodeServiceName, Ur as isValidNodeConnectionType, Vs as sendGetWorkerStatus, Yn as useDocumentTitle, b as useExternalHooks, en as SampleTemplates, gn as useCredentialsStore, hs as useSettingsStore, ia as codeNodeEditorEventBus, kt as getExecutionErrorToastConfiguration, n as useWorkflowSaving, na as globalLinkActionsEventBus, oa as useUIStore, on as isPrebuiltAgentTemplateId, sn as isTutorialTemplateId, t as useBuilderStore, v as useToast } from "./builder.store-YujiPssa.js";
4
+ import { Ta as isCommunityPackageName, Vi as createRunExecutionData, eo as EVALUATION_TRIGGER_NODE_TYPE, fo as TRIMMED_TASK_DATA_CONNECTIONS_KEY, qi as generateNodesGraph, xs as WORKFLOW_SETTINGS_MODAL_KEY } from "./constants-D52YoOSp.js";
5
+ import { k as defineStore, r as useRootStore } from "./_baseOrderBy-CesQfsb9.js";
6
+ import { t as useAssistantStore } from "./assistant.store-Cn9sEjYD.js";
7
+ import { i as usePushConnectionStore, t as useRunWorkflow } from "./useRunWorkflow-CJgkc0Iq.js";
8
+ import { t as useCanvasOperations } from "./useCanvasOperations-BQyHvbXi.js";
9
+ import { t as useBannersStore } from "./banners.store-CRNqMmnn.js";
10
+ import { t as useSchemaPreviewStore } from "./schemaPreview.store-D6CQiOeI.js";
11
+ import { t as useAITemplatesStarterCollectionStore } from "./aiTemplatesStarterCollection.store-Bz4IH9Sr.js";
12
+ import { t as useReadyToRunStore } from "./readyToRun.store-BRvUlRSD.js";
13
13
  async function builderCreditsUpdated(event) {
14
14
  useBuilderStore().updateBuilderCredits(event.data.creditsQuota, event.data.creditsClaimed);
15
15
  }
@@ -26,7 +26,7 @@ async function executionFinished({ data }, options) {
26
26
  if (templateId) {
27
27
  if (templateId === SampleTemplates.EasyAiTemplate) telemetry.track("User executed test AI workflow", { status: data.status });
28
28
  else if (templateId.startsWith("035_template_onboarding")) aiTemplatesStarterCollectionStore.trackUserExecutedWorkflow(templateId.split("-").pop() ?? "", data.status);
29
- else if (templateId === "ready-to-run-ai-workflow" || templateId === "ready-to-run-ai-workflow-v1" || templateId === "ready-to-run-ai-workflow-v2" || templateId === "ready-to-run-ai-workflow-v3" || templateId === "ready-to-run-ai-workflow-v4") if (data.status === "success") readyToRunStore.trackExecuteAiWorkflowSuccess();
29
+ else if (templateId === "ready-to-run-ai-workflow" || templateId === "ready-to-run-ai-workflow-v5" || templateId === "ready-to-run-ai-workflow-v6") if (data.status === "success") readyToRunStore.trackExecuteAiWorkflowSuccess();
30
30
  else readyToRunStore.trackExecuteAiWorkflow(data.status);
31
31
  else if (isPrebuiltAgentTemplateId(templateId)) telemetry.track("User executed pre-built Agent", {
32
32
  template: templateId,
@@ -121,7 +121,7 @@ function handleExecutionFinishedWithWaitTill(options) {
121
121
  globalLinkActionsEventBus.emit("registerGlobalLinkAction", {
122
122
  key: "open-settings",
123
123
  action: async () => {
124
- if (workflowsStore.isNewWorkflow) await workflowSaving.saveAsNewWorkflow();
124
+ if (!workflowsStore.isWorkflowSaved[workflowsStore.workflowId]) await workflowSaving.saveAsNewWorkflow();
125
125
  uiStore.openModal(WORKFLOW_SETTINGS_MODAL_KEY);
126
126
  }
127
127
  });
@@ -386,6 +386,7 @@ async function testWebhookReceived({ data }, options) {
386
386
  }
387
387
  }
388
388
  async function workflowActivated({ data }) {
389
+ const { initializeWorkspace } = useCanvasOperations();
389
390
  const workflowsStore = useWorkflowsStore();
390
391
  const bannersStore = useBannersStore();
391
392
  const uiStore = useUIStore();
@@ -396,13 +397,14 @@ async function workflowActivated({ data }) {
396
397
  if (!uiStore.stateIsDirty) {
397
398
  const updatedWorkflow = await workflowsStore.fetchWorkflow(workflowId);
398
399
  if (!updatedWorkflow.checksum) throw new Error("Failed to fetch workflow");
399
- workflowsStore.setWorkflow(updatedWorkflow);
400
+ await initializeWorkspace(updatedWorkflow);
400
401
  }
401
402
  }
402
403
  if (workflowIsBeingViewed) bannersStore.removeBannerFromStack("WORKFLOW_AUTO_DEACTIVATED");
403
404
  }
404
405
  async function workflowAutoDeactivated({ data }) {
405
406
  const workflowsStore = useWorkflowsStore();
407
+ const { initializeWorkspace } = useCanvasOperations();
406
408
  const bannersStore = useBannersStore();
407
409
  const uiStore = useUIStore();
408
410
  workflowsStore.setWorkflowInactive(data.workflowId);
@@ -410,19 +412,20 @@ async function workflowAutoDeactivated({ data }) {
410
412
  if (!uiStore.stateIsDirty) {
411
413
  const updatedWorkflow = await workflowsStore.fetchWorkflow(data.workflowId);
412
414
  if (!updatedWorkflow.checksum) throw new Error("Failed to fetch workflow");
413
- workflowsStore.setWorkflow(updatedWorkflow);
415
+ await initializeWorkspace(updatedWorkflow);
414
416
  }
415
417
  bannersStore.pushBannerToStack("WORKFLOW_AUTO_DEACTIVATED");
416
418
  }
417
419
  }
418
420
  async function workflowDeactivated({ data }) {
421
+ const { initializeWorkspace } = useCanvasOperations();
419
422
  const workflowsStore = useWorkflowsStore();
420
423
  const uiStore = useUIStore();
421
424
  if (workflowsStore.workflowId === data.workflowId) {
422
425
  if (!uiStore.stateIsDirty) {
423
426
  const updatedWorkflow = await workflowsStore.fetchWorkflow(data.workflowId);
424
427
  if (!updatedWorkflow.checksum) throw new Error("Failed to fetch workflow");
425
- workflowsStore.setWorkflow(updatedWorkflow);
428
+ await initializeWorkspace(updatedWorkflow);
426
429
  }
427
430
  }
428
431
  }
@@ -1,11 +1,11 @@
1
1
  import { C as computed } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { gt as useI18n, j as useLocalStorage } from "./_MapCache-BXj4WgHo.js";
3
- import { Gn as N8nIcon_default } from "./src-RwnQoRPP.js";
4
- import { b as useRouter } from "./truncate-BmR9EyjG.js";
5
- import { _t as useNodeTypesStore, v as useWorkflowsStore } from "./builder.store-CAubedr_.js";
6
- import { Vo as VIEWS, c as PLACEHOLDER_EMPTY_WORKFLOW_ID, s as NEW_WORKFLOW_ID } from "./constants-CYvY1HoE.js";
7
- import { t as useCanvasOperations } from "./useCanvasOperations-BK5Ruww4.js";
8
- import { t as NodeIcon_default } from "./NodeIcon-DKFrufUm.js";
2
+ import { M as useLocalStorage, _t as useI18n } from "./_MapCache-0zNxISSG.js";
3
+ import { wn as N8nIcon_default } from "./src-DTY1hJHs.js";
4
+ import { b as useRouter } from "./truncate-ByNK2lRy.js";
5
+ import { N as useWorkflowsStore, Nt as useNodeTypesStore } from "./builder.store-YujiPssa.js";
6
+ import { Ro as VIEWS } from "./constants-D52YoOSp.js";
7
+ import { t as useCanvasOperations } from "./useCanvasOperations-BQyHvbXi.js";
8
+ import { t as NodeIcon_default } from "./NodeIcon-DL6ucXJC.js";
9
9
  var MAX_RECENT_ITEMS = 5;
10
10
  var MAX_RECENT_WORKFLOWS_TO_DISPLAY = 3;
11
11
  var RECENT_WORKFLOWS_STORAGE_KEY = "n8n-recent-workflows";
@@ -21,7 +21,8 @@ function useRecentResources() {
21
21
  function trackResourceOpened(to) {
22
22
  if (to.name === VIEWS.WORKFLOW && typeof to.params.name === "string") {
23
23
  const workflowId = to.params.name;
24
- if (workflowId && workflowId !== "new" && workflowId !== "__EMPTY__" && workflowId !== "new") {
24
+ const isNewWorkflow = to.query.new === "true";
25
+ if (workflowId && !isNewWorkflow) {
25
26
  registerWorkflowOpen(workflowId);
26
27
  if (typeof to.params.nodeId === "string" && to.params.nodeId) registerNodeOpen(workflowId, to.params.nodeId);
27
28
  }
@@ -1,14 +1,13 @@
1
1
  import { o as __toESM } from "./chunk-6z4oVpB-.js";
2
2
  import { C as computed, It as ref, _t as watch } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
3
- import { gt as useI18n, j as useLocalStorage } from "./_MapCache-BXj4WgHo.js";
4
- import { r as require_get } from "./truncate-BmR9EyjG.js";
5
- import { $o as useSettingsStore, An as injectWorkflowState, Cc as STORES, Di as isEmpty, Fr as AddConnectionCommand, Hr as RemoveNodeCommand, Ir as AddNodeCommand, Lr as BulkCommand, Mr as CanvasNodeDirtiness, Nn as useDocumentTitle, Pr as useHistoryStore, Sn as useWorkflowHelpers, Vr as RemoveConnectionCommand, ct as displayForm, i as useExternalHooks, kn as useNodeHelpers, n as useToast, p as useTelemetry, v as useWorkflowsStore, zr as EnableNodeToggleCommand } from "./builder.store-CAubedr_.js";
6
- import { Gs as LOCAL_STORAGE_RUN_DATA_WORKER, Ka as NodeConnectionTypes, P as IN_PROGRESS_EXECUTION_ID, Vt as CHAT_TRIGGER_NODE_TYPE, Wi as createRunExecutionData, Xi as generateNodesGraph, Zr as createHeartbeatMessage } from "./constants-CYvY1HoE.js";
7
- import { k as defineStore, r as useRootStore } from "./_baseOrderBy-DocZGYxF.js";
8
- import { t as useWorkflowSaving } from "./useWorkflowSaving-CfItkcry.js";
9
- import { t as retry } from "./retry-CMAFrhVi.js";
10
- import { t as useExecutionsStore } from "./executions.store-C4mu7EN_.js";
11
- import { t as useCanvasOperations } from "./useCanvasOperations-BK5Ruww4.js";
3
+ import { M as useLocalStorage, _t as useI18n } from "./_MapCache-0zNxISSG.js";
4
+ import { r as require_get } from "./truncate-ByNK2lRy.js";
5
+ import { $r as BulkCommand, Gn as useNodeHelpers, Jr as CanvasNodeDirtiness, Kn as injectWorkflowState, N as useWorkflowsStore, O as useTelemetry, Qr as AddNodeCommand, Rn as useWorkflowHelpers, Tc as STORES, Ui as isEmpty, Xr as useHistoryStore, Yn as useDocumentTitle, Zr as AddConnectionCommand, b as useExternalHooks, hs as useSettingsStore, ii as RemoveNodeCommand, n as useWorkflowSaving, ri as RemoveConnectionCommand, ti as EnableNodeToggleCommand, v as useToast, wt as displayForm } from "./builder.store-YujiPssa.js";
6
+ import { Bs as LOCAL_STORAGE_RUN_DATA_WORKER, Jr as createHeartbeatMessage, M as IN_PROGRESS_EXECUTION_ID, Ua as NodeConnectionTypes, Vi as createRunExecutionData, qi as generateNodesGraph, zt as CHAT_TRIGGER_NODE_TYPE } from "./constants-D52YoOSp.js";
7
+ import { k as defineStore, r as useRootStore } from "./_baseOrderBy-CesQfsb9.js";
8
+ import { t as retry } from "./retry-dP46utx2.js";
9
+ import { t as useExecutionsStore } from "./executions.store-Dodf4hZt.js";
10
+ import { t as useCanvasOperations } from "./useCanvasOperations-BQyHvbXi.js";
12
11
  const useHeartbeat = (options) => {
13
12
  const { interval, onHeartbeat } = options;
14
13
  const heartbeatTimer = ref(null);
@@ -698,7 +697,7 @@ function useRunWorkflow(useRunWorkflowOpts) {
698
697
  let directParentNodes = [];
699
698
  if (options.destinationNode !== void 0) directParentNodes = workflowObject.value.getParentNodes(options.destinationNode.nodeName, NodeConnectionTypes.Main, -1);
700
699
  const runData = workflowsStore.getWorkflowRunData;
701
- if (workflowsStore.isNewWorkflow) await workflowSaving.saveCurrentWorkflow();
700
+ if (!workflowsStore.isWorkflowSaved[workflowsStore.workflowId]) await workflowSaving.saveCurrentWorkflow();
702
701
  const workflowData = await workflowHelpers.getWorkflowDataToSave();
703
702
  const { startNodeNames } = consolidateRunDataAndStartNodes(directParentNodes, runData, workflowData.pinData, workflowObject.value);
704
703
  const destinationNodeType = options.destinationNode ? workflowsStore.getNodeByName(options.destinationNode.nodeName)?.type : "";
@@ -1,8 +1,8 @@
1
1
  import { C as computed } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { gt as useI18n } from "./_MapCache-BXj4WgHo.js";
3
- import { b as useRouter } from "./truncate-BmR9EyjG.js";
4
- import { $o as useSettingsStore, Wi as useUIStore, nr as hasPermission } from "./builder.store-CAubedr_.js";
5
- import { Vo as VIEWS } from "./constants-CYvY1HoE.js";
2
+ import { _t as useI18n } from "./_MapCache-0zNxISSG.js";
3
+ import { b as useRouter } from "./truncate-ByNK2lRy.js";
4
+ import { hs as useSettingsStore, oa as useUIStore, vr as hasPermission } from "./builder.store-YujiPssa.js";
5
+ import { Ro as VIEWS } from "./constants-D52YoOSp.js";
6
6
  function useUserHelpers(router) {
7
7
  const canUserAccessRouteByName = (name) => {
8
8
  return canUserAccessRoute(router.resolve({ name }));
@@ -1,6 +1,6 @@
1
1
  import { D as createElementBlock, P as defineComponent, et as openBlock, nt as provide, st as resolveDirective, vn as normalizeClass, xt as withDirectives, z as inject } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
2
  import { t as __plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BwBpWJRZ.js";
3
- import { oc as TelemetryContextSymbol } from "./constants-CYvY1HoE.js";
3
+ import { tc as TelemetryContextSymbol } from "./constants-D52YoOSp.js";
4
4
  var MappingPill_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
5
5
  __name: "MappingPill",
6
6
  props: {
@@ -1,11 +1,9 @@
1
1
  import { It as ref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { gt as useI18n } from "./_MapCache-BXj4WgHo.js";
3
- import { b as useRouter } from "./truncate-BmR9EyjG.js";
4
- import { Go as activateWorkflow, Ko as deactivateWorkflow, Qo as useStorage, Sn as useWorkflowHelpers, Wi as useUIStore, i as useExternalHooks, n as useToast, p as useTelemetry, v as useWorkflowsStore } from "./builder.store-CAubedr_.js";
5
- import { Ds as LOCAL_STORAGE_ACTIVATION_FLAG, _s as WORKFLOW_ACTIVE_MODAL_KEY, c as PLACEHOLDER_EMPTY_WORKFLOW_ID } from "./constants-CYvY1HoE.js";
6
- import { r as useRootStore } from "./_baseOrderBy-DocZGYxF.js";
7
- import { t as useNpsSurveyStore } from "./npsSurvey.store-DztaTi-T.js";
8
- import { t as useWorkflowSaving } from "./useWorkflowSaving-CfItkcry.js";
2
+ import { _t as useI18n } from "./_MapCache-0zNxISSG.js";
3
+ import { b as useRouter } from "./truncate-ByNK2lRy.js";
4
+ import { N as useWorkflowsStore, O as useTelemetry, Rn as useWorkflowHelpers, b as useExternalHooks, cs as deactivateWorkflow, h as useNpsSurveyStore, ms as useStorage, n as useWorkflowSaving, oa as useUIStore, ss as activateWorkflow, v as useToast } from "./builder.store-YujiPssa.js";
5
+ import { Cs as LOCAL_STORAGE_ACTIVATION_FLAG, ps as WORKFLOW_ACTIVE_MODAL_KEY } from "./constants-D52YoOSp.js";
6
+ import { r as useRootStore } from "./_baseOrderBy-CesQfsb9.js";
9
7
  function useWorkflowActivate() {
10
8
  const updatingWorkflowActivation = ref(false);
11
9
  const router = useRouter();
@@ -22,7 +20,8 @@ function useWorkflowActivate() {
22
20
  updatingWorkflowActivation.value = true;
23
21
  const nodesIssuesExist = workflowsStore.nodesIssuesExist;
24
22
  let currWorkflowId = workflowId;
25
- if (!currWorkflowId || currWorkflowId === "__EMPTY__") {
23
+ const existingWorkflow = currWorkflowId ? workflowsStore.workflowsById[currWorkflowId] : null;
24
+ if (!currWorkflowId || !existingWorkflow?.id) {
26
25
  if (!await workflowSaving.saveCurrentWorkflow()) {
27
26
  updatingWorkflowActivation.value = false;
28
27
  return false;
@@ -1,5 +1,5 @@
1
1
  import { It as ref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { Aa as jsonParse } from "./constants-CYvY1HoE.js";
2
+ import { Da as jsonParse } from "./constants-D52YoOSp.js";
3
3
  async function indexedDbCache(dbName, storeName) {
4
4
  let cache = {};
5
5
  await loadCache();
@@ -1,6 +1,6 @@
1
1
  import { Ft as readonly, It as ref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { Ds as saveProvisioningConfig, Es as getProvisioningConfig } from "./builder.store-CAubedr_.js";
3
- import { k as defineStore, r as useRootStore } from "./_baseOrderBy-DocZGYxF.js";
2
+ import { Bs as saveProvisioningConfig, zs as getProvisioningConfig } from "./builder.store-YujiPssa.js";
3
+ import { k as defineStore, r as useRootStore } from "./_baseOrderBy-CesQfsb9.js";
4
4
  const useUserRoleProvisioningStore = defineStore("userRoleProvisioning", () => {
5
5
  const rootStore = useRootStore();
6
6
  const provisioningConfig = ref();
@@ -0,0 +1,54 @@
1
+ import { o as __toESM } from "./chunk-6z4oVpB-.js";
2
+ import { t as require_dateformat } from "./dateformat-CM9k0--B.js";
3
+ var import_dateformat = /* @__PURE__ */ __toESM(require_dateformat());
4
+ const getLastPublishedVersion = (workflowPublishHistory) => {
5
+ return workflowPublishHistory.findLast((history) => history.event === "activated");
6
+ };
7
+ const generateVersionName = (versionId) => {
8
+ return `Version ${versionId.substring(0, 8)}`;
9
+ };
10
+ const formatTimestamp = (value) => {
11
+ const currentYear = (/* @__PURE__ */ new Date()).getFullYear().toString();
12
+ const [date, time] = (0, import_dateformat.default)(value, `${value.startsWith(currentYear) ? "" : "yyyy "}mmm d"#"HH:MM:ss`).split("#");
13
+ return {
14
+ date,
15
+ time
16
+ };
17
+ };
18
+ const computeTimelineEntries = (items) => {
19
+ const entries = [];
20
+ let currentGroup = [];
21
+ let groupCounter = 0;
22
+ const flushGroup = () => {
23
+ if (currentGroup.length > 0) {
24
+ entries.push({
25
+ type: "group-header",
26
+ groupId: `group-${groupCounter++}`,
27
+ count: currentGroup.length,
28
+ versions: [...currentGroup]
29
+ });
30
+ currentGroup = [];
31
+ }
32
+ };
33
+ for (let i = 0; i < items.length; i++) {
34
+ const item = items[i];
35
+ if (!(i === 0) && !item.name?.trim()) currentGroup.push({
36
+ type: "version",
37
+ item,
38
+ originalIndex: i,
39
+ isGrouped: true
40
+ });
41
+ else {
42
+ flushGroup();
43
+ entries.push({
44
+ type: "version",
45
+ item,
46
+ originalIndex: i,
47
+ isGrouped: false
48
+ });
49
+ }
50
+ }
51
+ flushGroup();
52
+ return entries;
53
+ };
54
+ export { getLastPublishedVersion as i, formatTimestamp as n, generateVersionName as r, computeTimelineEntries as t };
@@ -1,7 +1,7 @@
1
1
  import { C as computed, It as ref } from "./vue.runtime.esm-bundler-tP5dCd7J.js";
2
- import { $o as useSettingsStore, Cc as STORES, Qo as useStorage, Wi as useUIStore, dr as useUsersStore, n as useToast, ns as getNextVersions, p as useTelemetry, rs as getWhatsNewSection } from "./builder.store-CAubedr_.js";
3
- import { Aa as jsonParse, Ms as LOCAL_STORAGE_DISMISSED_WHATS_NEW_CALLOUT, Ws as LOCAL_STORAGE_READ_WHATS_NEW_ARTICLES, hs as WHATS_NEW_MODAL_KEY, ms as VERSIONS_MODAL_KEY } from "./constants-CYvY1HoE.js";
4
- import { k as defineStore, r as useRootStore } from "./_baseOrderBy-DocZGYxF.js";
2
+ import { Dr as useUsersStore, O as useTelemetry, Tc as STORES, _s as getWhatsNewSection, gs as getNextVersions, hs as useSettingsStore, ms as useStorage, oa as useUIStore, v as useToast } from "./builder.store-YujiPssa.js";
3
+ import { Da as jsonParse, Ds as LOCAL_STORAGE_DISMISSED_WHATS_NEW_CALLOUT, ds as WHATS_NEW_MODAL_KEY, us as VERSIONS_MODAL_KEY, zs as LOCAL_STORAGE_READ_WHATS_NEW_ARTICLES } from "./constants-D52YoOSp.js";
4
+ import { k as defineStore, r as useRootStore } from "./_baseOrderBy-CesQfsb9.js";
5
5
  const SEMVER_REGEX = /^(?<major>0|[1-9]\d*)\.(?<minor>0|[1-9]\d*)\.(?<patch>0|[1-9]\d*)(?:-(?<prerelease>(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?<buildmetadata>[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
6
6
  const useVersionsStore = defineStore(STORES.VERSIONS, () => {
7
7
  const versionNotificationSettings = ref({