n8n-editor-ui 1.52.1 → 1.53.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 (102) hide show
  1. package/dist/assets/@vue-flow/{background-CTQyba98.js → background-DB0XkB4N.js} +1 -1
  2. package/dist/assets/@vue-flow/{controls-D1EndCL-.js → controls-DIcDSPd4.js} +1 -1
  3. package/dist/assets/@vue-flow/{core-CZYXcHT4.js → core-DxFmgtgp.js} +6 -4
  4. package/dist/assets/@vue-flow/{minimap--aX0pOzk.js → minimap-B_D9TdBd.js} +1 -1
  5. package/dist/assets/@vue-flow/{node-resizer-CiETXsr-.js → node-resizer-DiYsK3jS.js} +1 -1
  6. package/dist/assets/{AuthView-BsWOucnZ.js → AuthView-C2Yi5D5s.js} +2 -2
  7. package/dist/assets/{CanvasControls-B8k9SN28.js → CanvasControls-De-tALHG.js} +7 -7
  8. package/dist/assets/{ChangePasswordView-D3TvBQhm.js → ChangePasswordView-CEuvtRp0.js} +8 -8
  9. package/dist/assets/{CredentialsView-7jwhd-0r.js → CredentialsView-kKWoSJIs.js} +10 -10
  10. package/dist/assets/{ErrorView-Dtd47lTs.js → ErrorView-DJ2DobkS.js} +7 -7
  11. package/dist/assets/{ExecutionsFilter-ZmlsB68P.js → ExecutionsFilter-4xZMd0q5.js} +5 -4
  12. package/dist/assets/{ExecutionsFilter-1G6JIf6U.css → ExecutionsFilter-fBQ6lOU_.css} +6 -6
  13. package/dist/assets/{ExecutionsView-CwsG11fb.css → ExecutionsView-Dfy6JMwb.css} +29 -23
  14. package/dist/assets/{ExecutionsView-CD_oSpVb.js → ExecutionsView-knuMBO0f.js} +27 -27
  15. package/dist/assets/{FixedCollectionParameter-D99d-Tq7.js → FixedCollectionParameter-LJOj4WvG.js} +7 -7
  16. package/dist/assets/{ForgotMyPasswordView-1F6NTA7-.js → ForgotMyPasswordView-0VDkK0j0.js} +8 -8
  17. package/dist/assets/{MainHeader-d18NnU_w.js → MainHeader-BhDjejmP.js} +13 -13
  18. package/dist/assets/{MainSidebar-TfHsBg9D.js → MainSidebar-dTA0aTmq.js} +8 -8
  19. package/dist/assets/{MappingPill-BpoMMubm.js → MappingPill-BM4heBpc.js} +1 -1
  20. package/dist/assets/{NodeCreation-D6_T4MHt.js → NodeCreation-BEsgZ7Cf.js} +5 -5
  21. package/dist/assets/{NodeCreator-DZw_vmPq.js → NodeCreator-ykZyzfuG.js} +26 -22
  22. package/dist/assets/{NodeViewSwitcher-CxSiuxnX.js → NodeViewSwitcher-B8XS6M8d.js} +403 -249
  23. package/dist/assets/{NodeViewSwitcher-DPUSdIzU.css → NodeViewSwitcher-DAZ9x-5P.css} +65 -41
  24. package/dist/assets/{ProjectCardBadge-rtTX3xzZ.js → ProjectCardBadge-BVZxrm9I.js} +1 -1
  25. package/dist/assets/{ProjectSettings-BMKD5opq.js → ProjectSettings-CqfPPdnR.js} +8 -8
  26. package/dist/assets/{ProjectTabs-Cc2ET8to.js → ProjectTabs-BLPeSkUm.js} +2 -2
  27. package/dist/assets/{PushConnectionTracker-Li0Tfyqn.js → PushConnectionTracker-rNapjqT4.js} +2 -2
  28. package/dist/assets/{ResourcesListLayout-GzqV9txK.js → ResourcesListLayout-CGjyHT8z.js} +2 -2
  29. package/dist/assets/{RunDataAi-BoYixabH.js → RunDataAi-C5_L4fLv.js} +7 -7
  30. package/dist/assets/{RunDataJson-D1TiLAh1.js → RunDataJson-BmARuE-g.js} +23 -23
  31. package/dist/assets/{RunDataJsonActions-D-raX8qG.js → RunDataJsonActions-z0UEbkDL.js} +8 -8
  32. package/dist/assets/{RunDataSchema-CYFnNSgb.js → RunDataSchema-CJxumRPC.js} +21 -21
  33. package/dist/assets/{RunDataSearch-CY58Lj9D.js → RunDataSearch-mAuiNwL1.js} +7 -7
  34. package/dist/assets/{RunDataTable-BMUSNbNG.js → RunDataTable-IGhY_pIB.js} +21 -21
  35. package/dist/assets/{SamlOnboarding-9iuGNxqG.js → SamlOnboarding-15Y_wsl7.js} +8 -8
  36. package/dist/assets/{SettingsApiView-CIgLk5uY.js → SettingsApiView-Cz55cRzo.js} +17 -11
  37. package/dist/assets/{SettingsCommunityNodesView-CboSEAOc.js → SettingsCommunityNodesView-CXhrieUd.js} +9 -9
  38. package/dist/assets/{SettingsExternalSecrets-CsNVjEO2.css → SettingsExternalSecrets-BD5PuMIG.css} +9 -5
  39. package/dist/assets/{SettingsExternalSecrets-B7WumN2u.js → SettingsExternalSecrets-C0dppCxj.js} +37 -15
  40. package/dist/assets/{SettingsFakeDoorView-D6lypuJ5.js → SettingsFakeDoorView-386dhNTj.js} +7 -7
  41. package/dist/assets/{SettingsLdapView-d4pzzroa.js → SettingsLdapView-0_s8AqXV.js} +8 -8
  42. package/dist/assets/{SettingsLogStreamingView-B5f0cGQq.js → SettingsLogStreamingView-Dy9JOe04.js} +7 -7
  43. package/dist/assets/{SettingsPersonalView-CAjG_prM.js → SettingsPersonalView-CNcncYe3.js} +7 -7
  44. package/dist/assets/{SettingsSourceControl-B2iZFZfL.js → SettingsSourceControl-iCLut7vT.js} +7 -7
  45. package/dist/assets/{SettingsSso-7UWbhIi0.js → SettingsSso-BM_Q9012.js} +7 -7
  46. package/dist/assets/{SettingsUsageAndPlan-DIXF-9yY.js → SettingsUsageAndPlan-D7OT9qOC.js} +7 -7
  47. package/dist/assets/{SettingsUsersView-syCoRprm.js → SettingsUsersView-CfLJDguf.js} +7 -7
  48. package/dist/assets/{SettingsView-CUY7UhNI.js → SettingsView-FPpfwoOu.js} +8 -8
  49. package/dist/assets/{SetupView-BHejThLi.js → SetupView-CryFL3v6.js} +8 -8
  50. package/dist/assets/{SetupWorkflowCredentialsButton-BrM3aC_G.js → SetupWorkflowCredentialsButton-Do3JM2Nk.js} +7 -7
  51. package/dist/assets/{SetupWorkflowFromTemplateView-Djn3sSIV.js → SetupWorkflowFromTemplateView-MJ1I_AA9.js} +9 -9
  52. package/dist/assets/{SigninView-DYAHRAY9.js → SigninView-CCWxRmWk.js} +8 -8
  53. package/dist/assets/{SignoutView-DxLfbd4J.js → SignoutView-DocAsAwu.js} +7 -7
  54. package/dist/assets/{SignupView-BIA5Yku5.js → SignupView-ClAPwIlu.js} +8 -8
  55. package/dist/assets/{TemplateDetails-BK_yzT6H.js → TemplateDetails-BXyImxfm.js} +2 -2
  56. package/dist/assets/{TemplateList-CCBFXMJS.js → TemplateList-DiKjGkrt.js} +2 -2
  57. package/dist/assets/{TemplatesCollectionView-CLIE92r1.js → TemplatesCollectionView-BGXLIO6Y.js} +11 -11
  58. package/dist/assets/{TemplatesSearchView-Cb-i1o9B.js → TemplatesSearchView-k_J2hsN0.js} +10 -10
  59. package/dist/assets/{TemplatesView-C73M_m8K.js → TemplatesView-DIZUoKf-.js} +2 -2
  60. package/dist/assets/{TemplatesWorkflowView-Ba2uecCf.js → TemplatesWorkflowView-Bc07e-EF.js} +11 -11
  61. package/dist/assets/{VariablesView-BB85l3F5.js → VariablesView-CdAk7K3Q.js} +8 -8
  62. package/dist/assets/{WorkerView-B64FsDf-.js → WorkerView-D3mKD1YA.js} +10 -10
  63. package/dist/assets/{WorkflowActivator-_sNBpcAw.js → WorkflowActivator-CgOG26j4.js} +3 -3
  64. package/dist/assets/{WorkflowExecutionsInfoAccordion-D98lUyIg.js → WorkflowExecutionsInfoAccordion-B_5DTIJu.js} +2 -2
  65. package/dist/assets/{WorkflowExecutionsLandingPage-DxihmHnI.js → WorkflowExecutionsLandingPage-19ya-t7l.js} +8 -8
  66. package/dist/assets/{WorkflowExecutionsPreview-ZcwUAwf2.js → WorkflowExecutionsPreview-Bcx5l_XB.js} +64 -37
  67. package/dist/assets/{WorkflowExecutionsPreview-BMrdUJUZ.css → WorkflowExecutionsPreview-CTCW6aUS.css} +17 -15
  68. package/dist/assets/{WorkflowExecutionsView-AsMpL4D6.css → WorkflowExecutionsView-BUVLJOcg.css} +32 -26
  69. package/dist/assets/{WorkflowExecutionsView-C35jfZgy.js → WorkflowExecutionsView-CRQ2E088.js} +126 -203
  70. package/dist/assets/{WorkflowHistory-IBqMYaLV.js → WorkflowHistory-6BqVoIOv.js} +9 -9
  71. package/dist/assets/{WorkflowOnboardingView-CgUijLl8.js → WorkflowOnboardingView-O6r2ITtQ.js} +7 -7
  72. package/dist/assets/{WorkflowPreview-CRvKiXjf.js → WorkflowPreview-ne3U5b7k.js} +2 -2
  73. package/dist/assets/{WorkflowsView-B6BrW7NH.js → WorkflowsView-D7SsmCqu.js} +12 -12
  74. package/dist/assets/{cloud-CaxgIKOi.js → cloud-wjMgNte-.js} +7 -7
  75. package/dist/assets/{dateFormatter-Bm-NazQh.js → dateFormatter-sq-Dwf91.js} +1 -1
  76. package/dist/assets/{dateformat-BZ7ie_ed.js → dateformat-CJDSAxT5.js} +1 -1
  77. package/dist/assets/email-providers-CGv_r5w4.js +1 -0
  78. package/dist/assets/{esprima-next-CPsTzYsC.js → esprima-next-DUEu30kB.js} +1 -0
  79. package/dist/assets/{fast-json-stable-stringify-C3l7e1Gf.js → fast-json-stable-stringify-CZL0ASD6.js} +1 -1
  80. package/dist/assets/{file-saver-CLUQxR09.js → file-saver-JNEc-JS6.js} +1 -1
  81. package/dist/assets/gcp-secrets-manager-BcK0Zj6Y.svg +9 -0
  82. package/dist/assets/{humanize-duration-DKnx9Mi1.js → humanize-duration-WtaHR576.js} +1 -1
  83. package/dist/assets/{index-D03bfPtn.js → index-BYZJlMWX.js} +199 -166
  84. package/dist/assets/{index-C0gal3Cv.css → index-luH-TYRG.css} +20 -16
  85. package/dist/assets/{jsonpath-qxryVKjJ.js → jsonpath-BXzTvPeS.js} +1 -1
  86. package/dist/assets/{lodash-es-COViF6dG.js → lodash-es-BwUH-6hq.js} +4 -4
  87. package/dist/assets/{luxon-0uZhUj7B.js → luxon-Bt_g4NOb.js} +607 -225
  88. package/dist/assets/{n8n-CQyDjUnA.js → n8n-CdNJGT99.js} +50 -12
  89. package/dist/assets/{pushConnection.store-B7KfoksT.js → pushConnection.store-Lx1ePKx0.js} +1 -1
  90. package/dist/assets/{templateActions-CB0YcrVG.js → templateActions-CHagnppe.js} +1 -1
  91. package/dist/assets/{useExecutionDebugging-C8igPfgQ.js → useExecutionDebugging-DxLomlHU.js} +1 -1
  92. package/dist/assets/{useExecutionHelpers-B_5Ilpst.js → useExecutionHelpers-D4K4AI5o.js} +11 -5
  93. package/dist/assets/{usePushConnection-DqWdp_cu.js → usePushConnection-C-ilZjUx.js} +3 -3
  94. package/dist/assets/{useUserHelpers-DyG6WIXY.js → useUserHelpers-BtWzZf9W.js} +1 -1
  95. package/dist/assets/{useWorkflowActivate-CyFujklb.js → useWorkflowActivate-0FWA930c.js} +1 -1
  96. package/dist/assets/{vue-agile-CiHtBXXM.js → vue-agile-7Whf5JLA.js} +2 -2
  97. package/dist/assets/{vue-json-pretty-A7n1L2oL.js → vue-json-pretty-BVXRvCYn.js} +1 -1
  98. package/dist/assets/xss-CGv_r5w4.js +1 -0
  99. package/dist/index.html +8 -8
  100. package/package.json +1 -1
  101. package/dist/assets/email-providers-CXCbl_zS.js +0 -1
  102. package/dist/assets/xss-CXCbl_zS.js +0 -1
@@ -1,25 +1,25 @@
1
- const __vite__fileDeps=["assets/RunDataTable-BMUSNbNG.js","assets/MappingPill-BpoMMubm.js","assets/vendor-k9_XExsQ.js","assets/n8n-CQyDjUnA.js","assets/esprima-next-CPsTzYsC.js","assets/luxon-0uZhUj7B.js","assets/axios-Cp0EV6RZ.js","assets/lodash-es-COViF6dG.js","assets/@vueuse/core-zoLH-FU7.js","assets/uuid-sKupIUZ4.js","assets/n8n-HyitiRil.css","assets/MappingPill-iz5xZsMz.css","assets/pinia-C0SpIvcC.js","assets/index-D03bfPtn.js","assets/flatted-D70IerrI.js","assets/@n8n/permissions-DSKt-Zl7.js","assets/dateformat-BZ7ie_ed.js","assets/vue-i18n-w8we4vO-.js","assets/@n8n/codemirror-lang-CIGGB1t0.js","assets/@lezer/common-CnY9etib.js","assets/@n8n/codemirror-lang-sql-C41WNa63.js","assets/prettier-_aQB57xD.js","assets/@jsplumb/util-BwtpiQ4c.js","assets/@jsplumb/core-B__RSZHf.js","assets/@jsplumb/common-s1StEx7B.js","assets/@jsplumb/connector-bezier-D659hq4c.js","assets/@jsplumb/browser-ui-BphmFVJY.js","assets/codemirror-lang-html-n8n-CXTCIWzP.js","assets/fast-json-stable-stringify-C3l7e1Gf.js","assets/timeago.js-CgQus8nl.js","assets/qrcode.vue-Ngu3dGMl.js","assets/vue3-touch-events-DVOgU3fI.js","assets/chart.js-DiBOFLDH.js","assets/index-C0gal3Cv.css","assets/vue-json-pretty-A7n1L2oL.js","assets/file-saver-CLUQxR09.js","assets/dateFormatter-Bm-NazQh.js","assets/RunDataAi-BoYixabH.js","assets/RunDataAi-HUzSX62R.css","assets/useWorkflowActivate-CyFujklb.js","assets/useExecutionDebugging-C8igPfgQ.js","assets/pushConnection.store-B7KfoksT.js","assets/@vue-flow/core-CZYXcHT4.js","assets/@vue-flow/background-CTQyba98.js","assets/@vue-flow/controls-D1EndCL-.js","assets/@vue-flow/minimap--aX0pOzk.js","assets/@vue-flow/node-resizer-CiETXsr-.js","assets/RunDataTable-ZwoYenSI.css","assets/RunDataJson-D1TiLAh1.js","assets/RunDataJson-DGge2zsB.css","assets/RunDataSchema-CYFnNSgb.js","assets/RunDataSchema-ECZtkGiE.css","assets/RunDataSearch-CY58Lj9D.js","assets/RunDataSearch-BA0wlJtp.css","assets/NodeCreation-D6_T4MHt.js","assets/NodeCreation-DZWp-d3f.css","assets/CanvasControls-B8k9SN28.js","assets/CanvasControls-CdlXdkgj.css","assets/SetupWorkflowCredentialsButton-BrM3aC_G.js"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]);
2
- import { r as ref, c as computed, w as watch, d as defineComponent, aw as resolveDirective, g as unref, o as openBlock, a as createBlock, ab as withDirectives, k as createElementBlock, i as createVNode, e as withCtx, j as createBaseVNode, n as normalizeClass, a8 as normalizeStyle, a7 as Teleport, q as createCommentVNode, ap as resolveComponent, a3 as Fragment, ah as renderList, t as toDisplayString, s as createTextVNode, aM as useRouter, aB as pushScopeId, aC as popScopeId, m as mergeProps, ai as withKeys, ae as withModifiers, L as nextTick, ac as vShow, f as renderSlot, b as resolveDynamicComponent, N as onMounted, M as onBeforeUnmount, a9 as useSlots, I as toRef, aP as defineAsyncComponent, aR as Suspense, aj as createSlots, Z as createStaticVNode, aa as Transition, J as getCurrentInstance, E as inject, u as useCssModule, h, D as provide, aG as toValue, O as onUnmounted, aE as useRoute, K as onBeforeMount, aW as onBeforeRouteLeave } from "./vendor-k9_XExsQ.js";
1
+ const __vite__fileDeps=["assets/RunDataTable-IGhY_pIB.js","assets/MappingPill-BM4heBpc.js","assets/vendor-k9_XExsQ.js","assets/n8n-CdNJGT99.js","assets/esprima-next-DUEu30kB.js","assets/luxon-Bt_g4NOb.js","assets/axios-Cp0EV6RZ.js","assets/lodash-es-BwUH-6hq.js","assets/@vueuse/core-zoLH-FU7.js","assets/uuid-sKupIUZ4.js","assets/n8n-HyitiRil.css","assets/MappingPill-iz5xZsMz.css","assets/pinia-C0SpIvcC.js","assets/index-BYZJlMWX.js","assets/flatted-D70IerrI.js","assets/@n8n/permissions-DSKt-Zl7.js","assets/dateformat-CJDSAxT5.js","assets/vue-i18n-w8we4vO-.js","assets/@n8n/codemirror-lang-CIGGB1t0.js","assets/@lezer/common-CnY9etib.js","assets/@n8n/codemirror-lang-sql-C41WNa63.js","assets/prettier-_aQB57xD.js","assets/@jsplumb/util-BwtpiQ4c.js","assets/@jsplumb/core-B__RSZHf.js","assets/@jsplumb/common-s1StEx7B.js","assets/@jsplumb/connector-bezier-D659hq4c.js","assets/@jsplumb/browser-ui-BphmFVJY.js","assets/codemirror-lang-html-n8n-CXTCIWzP.js","assets/fast-json-stable-stringify-CZL0ASD6.js","assets/timeago.js-CgQus8nl.js","assets/qrcode.vue-Ngu3dGMl.js","assets/vue3-touch-events-DVOgU3fI.js","assets/chart.js-DiBOFLDH.js","assets/index-luH-TYRG.css","assets/vue-json-pretty-BVXRvCYn.js","assets/file-saver-JNEc-JS6.js","assets/dateFormatter-sq-Dwf91.js","assets/RunDataAi-C5_L4fLv.js","assets/RunDataAi-HUzSX62R.css","assets/useWorkflowActivate-0FWA930c.js","assets/useExecutionDebugging-DxLomlHU.js","assets/pushConnection.store-Lx1ePKx0.js","assets/@vue-flow/core-DxFmgtgp.js","assets/@vue-flow/background-DB0XkB4N.js","assets/@vue-flow/controls-DIcDSPd4.js","assets/@vue-flow/minimap-B_D9TdBd.js","assets/@vue-flow/node-resizer-DiYsK3jS.js","assets/RunDataTable-ZwoYenSI.css","assets/RunDataJson-BmARuE-g.js","assets/RunDataJson-DGge2zsB.css","assets/RunDataSchema-CJxumRPC.js","assets/RunDataSchema-ECZtkGiE.css","assets/RunDataSearch-mAuiNwL1.js","assets/RunDataSearch-BA0wlJtp.css","assets/NodeCreation-BEsgZ7Cf.js","assets/NodeCreation-DZWp-d3f.css","assets/CanvasControls-De-tALHG.js","assets/CanvasControls-CdlXdkgj.css","assets/SetupWorkflowCredentialsButton-Do3JM2Nk.js"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]);
2
+ import { r as ref, c as computed, w as watch, d as defineComponent, aw as resolveDirective, g as unref, o as openBlock, a as createBlock, ab as withDirectives, k as createElementBlock, i as createVNode, e as withCtx, j as createBaseVNode, n as normalizeClass, a8 as normalizeStyle, a7 as Teleport, q as createCommentVNode, ap as resolveComponent, a3 as Fragment, ah as renderList, t as toDisplayString, s as createTextVNode, aM as useRouter, aB as pushScopeId, aC as popScopeId, m as mergeProps, ai as withKeys, ae as withModifiers, L as nextTick, ac as vShow, f as renderSlot, b as resolveDynamicComponent, N as onMounted, M as onBeforeUnmount, a9 as useSlots, I as toRef, aP as defineAsyncComponent, aR as Suspense, aj as createSlots, Z as createStaticVNode, aa as Transition, J as getCurrentInstance, u as useCssModule, E as inject, h, D as provide, aG as toValue, O as onUnmounted, al as normalizeProps, at as guardReactiveProps, aE as useRoute, K as onBeforeMount, aW as onBeforeRouteLeave } from "./vendor-k9_XExsQ.js";
3
3
  import { h as useActiveElement, a8 as useEventListener, a7 as useLocalStorage } from "./@vueuse/core-zoLH-FU7.js";
4
- import { e as useUIStore, a3 as useNodeTypesStore, m as useWorkflowsStore, l as useSourceControlStore, v as useI18n, a4 as isPresent, a5 as NOT_DUPLICATABLE_NODE_TYPES, a6 as getMousePosition, N as STICKY_NODE_TYPE, a7 as usePinnedData, a8 as useNodeHelpers, d as useDebounce, a9 as TitledList, aa as _sfc_main$P, ab as useClipboard, p as useWorkflowHelpers, u as useToast, ac as OPEN_URL_PANEL_TRIGGER_NODE_TYPES, ad as PRODUCTION_ONLY_TRIGGER_NODE_TYPES, ae as FORM_TRIGGER_NODE_TYPE, af as CHAT_TRIGGER_NODE_TYPE, K as useNDVStore, ag as isCommunityPackageName, ah as NPM_PACKAGE_DOCS_BASE_URL, ai as BUILTIN_NODES_DOCS_URL, aj as COMMUNITY_NODES_INSTALLATION_DOCS_URL, a2 as useExternalHooks, w as useTelemetry, ak as useRunWorkflow, x as useMessage, al as MANUAL_TRIGGER_NODE_TYPE, am as WEBHOOK_NODE_TYPE, A as nodeViewEventBus, C as MODAL_CONFIRM, an as __unplugin_components_4, ao as _sfc_main$Q, ap as useWorkflowsEEStore, aq as useCredentialsStore, ar as useHistoryStore, as as CUSTOM_NODES_DOCS_URL, at as MAIN_NODE_PANEL_WIDTH, au as importCurlEventBus, av as RenameNodeCommand, aw as SHOULD_CLEAR_NODE_OUTPUTS, ax as ndvEventBus, Z as useStorage, ay as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, j as useRootStore, az as MAX_DISPLAY_DATA_SIZE, aA as sanitizeHtml, aB as __unplugin_components_2$3, aC as MAX_DISPLAY_DATA_SIZE_SCHEMA_VIEW, aD as MAX_DISPLAY_ITEMS_AUTO_ALL, aE as DATA_PINNING_DOCS_URL, aF as DATA_EDITING_DOCS_URL, aG as HTML_NODE_TYPE, aH as executionDataToJson, aI as NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND, aJ as isEmpty, aK as LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG, aL as dataPinningEventBus, aM as LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG, aN as clearJsonKey, aO as searchInObject, aP as TEST_PIN_DATA, aQ as useNodeType, aR as START_NODE_TYPE, aS as CRON_NODE_TYPE, aT as INTERVAL_NODE_TYPE, aU as CopyInput, aV as isTriggerPanelObject, aW as getTriggerNodeServiceName, V as VIEWS, F as WORKFLOW_SETTINGS_MODAL_KEY, b as useSettingsStore, aX as EXECUTABLE_TRIGGER_NODE_TYPES, aY as BASE_NODE_SURVEY_URL, E as EnterpriseEditionFeature, aZ as NODE_CONNECTION_TYPE_ALLOW_MULTIPLE, a_ as getAnchorPosition, a$ as isValidNodeConnectionType, b0 as getEndpointScope, b1 as getInputEndpointUUID, b2 as getInputEndpointStyle, b3 as getScope, b4 as getInputNameOverlay, b5 as NODE_INSERT_SPACER_BETWEEN_INPUT_GROUPS, b6 as NODE_MIN_INPUT_ITEMS_COUNT, b7 as getOutputEndpointUUID, b8 as getOutputEndpointStyle, b9 as getOutputNameOverlay, ba as NO_OP_NODE_TYPE, bb as GRID_SIZE, k as useCanvasStore, bc as isString, bd as isNumber, be as assert, bf as QUICKSTART_NOTE_NAME, bg as WAIT_TIME_UNLIMITED, bh as SIMULATE_NODE_TYPE, bi as SIMULATE_TRIGGER_NODE_TYPE, bj as CUSTOM_API_CALL_KEY, bk as EnableNodeToggleCommand, bl as getRelativePosition, bm as CORE_NODES_CATEGORY, bn as DEFAULT_SUBCATEGORY, bo as AI_SUBCATEGORY, bp as AI_CATEGORY_AGENTS, bq as i18n, _ as useTemplatesStore, br as AI_CATEGORY_CHAINS, bs as AI_NODE_CREATOR_VIEW, bt as AI_OTHERS_NODE_CREATOR_VIEW, bu as AI_CATEGORY_DOCUMENT_LOADERS, bv as AI_CATEGORY_LANGUAGE_MODELS, bw as AI_CATEGORY_MEMORY, bx as AI_CATEGORY_OUTPUTPARSER, by as AI_CATEGORY_RETRIEVERS, bz as AI_CATEGORY_TEXT_SPLITTERS, bA as AI_CATEGORY_TOOLS, bB as AI_WORKFLOW_TOOL_LANGCHAIN_NODE_TYPE, bC as AI_CODE_TOOL_LANGCHAIN_NODE_TYPE, bD as AI_CATEGORY_EMBEDDING, bE as AI_CATEGORY_VECTOR_STORES, bF as AI_UNCATEGORIZED_CATEGORY, bG as TRIGGER_NODE_CREATOR_VIEW, bH as EMAIL_IMAP_NODE_TYPE, bI as SCHEDULE_TRIGGER_NODE_TYPE, bJ as EXECUTE_WORKFLOW_TRIGGER_NODE_TYPE, bK as MANUAL_CHAT_TRIGGER_NODE_TYPE, bL as OTHER_TRIGGER_NODES_SUBCATEGORY, bM as REGULAR_NODE_CREATOR_VIEW, bN as RSS_READ_NODE_TYPE, bO as EMAIL_SEND_NODE_TYPE, bP as TRANSFORM_DATA_SUBCATEGORY, bQ as SET_NODE_TYPE, bR as CODE_NODE_TYPE, bS as DATETIME_NODE_TYPE, bT as FILTER_NODE_TYPE, bU as REMOVE_DUPLICATES_NODE_TYPE, bV as SPLIT_OUT_NODE_TYPE, bW as LIMIT_NODE_TYPE, bX as SUMMARIZE_NODE_TYPE, bY as AGGREGATE_NODE_TYPE, bZ as MERGE_NODE_TYPE, b_ as MARKDOWN_NODE_TYPE, b$ as XML_NODE_TYPE, c0 as CRYPTO_NODE_TYPE, c1 as EXTRACT_FROM_FILE_NODE_TYPE, c2 as CONVERT_TO_FILE_NODE_TYPE, c3 as COMPRESSION_NODE_TYPE, c4 as EDIT_IMAGE_NODE_TYPE, c5 as FLOWS_CONTROL_SUBCATEGORY, c6 as IF_NODE_TYPE, c7 as SPLIT_IN_BATCHES_NODE_TYPE, c8 as HELPERS_SUBCATEGORY, c9 as HTTP_REQUEST_NODE_TYPE, ca as AI_CATEGORY_ROOT_NODES, cb as AI_CODE_NODE_TYPE, cc as CanvasConnectionMode, cd as isValidCanvasConnectionMode, X as STORES, ce as NODE_CREATOR_OPEN_SOURCES, cf as isVueFlowConnection, cg as MOUSE_EVENT_BUTTON, ch as MOUSE_EVENT_BUTTONS, ci as KeyboardShortcutTooltip, cj as useGlobalLinkActions, y as useTitleChange, o as useNpsSurveyStore, n as useProjectsStore, L as useExecutionsStore, ck as useExternalSecretsStore, cl as useEnvironmentsStore, a as useUsersStore, c as useTagsStore, cm as getBackgroundStyles, J as MAIN_HEADER_TABS, Q as sourceControlEventBus, cn as historyBus, P as PLACEHOLDER_EMPTY_WORKFLOW_ID, co as WORKFLOW_LM_CHAT_MODAL_KEY, cp as N8nAddInputEndpointType, cq as getFixedNodesList, cr as tryToParseNumber, cs as MoveNodeCommand, H as VALID_WORKFLOW_IMPORT_URL_REGEX, ct as UPDATE_WEBHOOK_ID_NODE_TYPES, cu as getNewNodePosition, cv as DRAG_EVENT_DATA_KEY, cw as MAX_X_TO_PUSH_DOWNSTREAM_NODES, cx as PUSH_NODES_OFFSET, cy as NODE_SIZE, cz as resetConnectionAfterPull, cA as resetConnection, cB as moveBackInputLabelPosition, cC as hideOutputNameLabel, cD as addConnectionActionsOverlay, cE as getOverlay, cF as OVERLAY_ENDPOINT_ARROW_ID, cG as getConnectorPaintStyleData, cH as AddConnectionCommand, cI as addConnectionTestData, cJ as showOrHideItemsLabel, cK as showOrHideMidpointArrow, cL as isJSPlumbConnection, cM as hideConnectionActions, cN as showConnectionActions, cO as resetInputLabelPosition, cP as getConnectionInfo, cQ as showOutputNameLabel, cR as RemoveConnectionCommand, cS as isJSPlumbEndpointElement, cT as EVENT_PLUS_ENDPOINT_CLICK, cU as EVENT_ADD_INPUT_ENDPOINT_CLICK, cV as N8nPlusEndpointType, cW as usePostHog, cX as CANVAS_AUTO_ADD_MANUAL_TRIGGER_EXPERIMENT, cY as MODAL_CANCEL, cZ as addClassesToOverlays, c_ as OVERLAY_RUN_ITEMS_ID, c$ as getJSPlumbEndpoints, d0 as RemoveNodeCommand, d1 as useDataSchema, d2 as getNodeViewTab, d3 as getConnectorLengths, d4 as isElementIntersection, d5 as calculateElementIntersection, d6 as showDropConnectionState, d7 as showPullConnectionState, d8 as CanvasNodeKey, d9 as CanvasNodeRenderType, da as CanvasNodeHandleKey, db as AddNodeCommand } from "./index-D03bfPtn.js";
5
- import { an as N8nActionDropdown, _ as _export_sfc, ao as nodeIssuesToString, l as getNodeInputs, N as NodeConnectionType, k as getConnectionTypes, ap as isSingleExecution, f as deepCopy, m as getNodeParameters, aq as isINodePropertyCollectionList, ar as isINodePropertiesList, as as isINodePropertyOptionsList, ad as displayParameter, at as sanitizeHtml$1, au as sanitizeHtml_1, j as jsonParse, h as getNodeOutputs, av as getNodeHints, e as __vitePreload, b as createEventBus, ai as useDeviceSupport, am as FontAwesomeIcon, x as xss, n as nodeConnectionTypes, aw as generateNodesGraph, M as N8nTooltip } from "./n8n-CQyDjUnA.js";
4
+ import { e as useUIStore, a3 as useNodeTypesStore, m as useWorkflowsStore, l as useSourceControlStore, v as useI18n, a4 as isPresent, a5 as NOT_DUPLICATABLE_NODE_TYPES, a6 as getMousePosition, N as STICKY_NODE_TYPE, a7 as usePinnedData, a8 as useNodeHelpers, d as useDebounce, a9 as TitledList, aa as _sfc_main$Q, ab as useClipboard, p as useWorkflowHelpers, u as useToast, ac as OPEN_URL_PANEL_TRIGGER_NODE_TYPES, ad as PRODUCTION_ONLY_TRIGGER_NODE_TYPES, ae as FORM_TRIGGER_NODE_TYPE, af as CHAT_TRIGGER_NODE_TYPE, K as useNDVStore, ag as isCommunityPackageName, ah as NPM_PACKAGE_DOCS_BASE_URL, ai as BUILTIN_NODES_DOCS_URL, aj as COMMUNITY_NODES_INSTALLATION_DOCS_URL, a2 as useExternalHooks, w as useTelemetry, ak as useRunWorkflow, x as useMessage, al as MANUAL_TRIGGER_NODE_TYPE, am as WEBHOOK_NODE_TYPE, A as nodeViewEventBus, C as MODAL_CONFIRM, an as __unplugin_components_4, ao as _sfc_main$R, ap as useWorkflowsEEStore, aq as useCredentialsStore, ar as useHistoryStore, as as CUSTOM_NODES_DOCS_URL, at as MAIN_NODE_PANEL_WIDTH, au as importCurlEventBus, av as RenameNodeCommand, aw as SHOULD_CLEAR_NODE_OUTPUTS, ax as ndvEventBus, Z as useStorage, ay as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, j as useRootStore, az as MAX_DISPLAY_DATA_SIZE, aA as sanitizeHtml, aB as __unplugin_components_2$3, aC as MAX_DISPLAY_DATA_SIZE_SCHEMA_VIEW, aD as MAX_DISPLAY_ITEMS_AUTO_ALL, aE as DATA_PINNING_DOCS_URL, aF as DATA_EDITING_DOCS_URL, aG as HTML_NODE_TYPE, aH as executionDataToJson, aI as NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND, aJ as isEmpty, aK as LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG, aL as dataPinningEventBus, aM as LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG, aN as clearJsonKey, aO as searchInObject, aP as TEST_PIN_DATA, aQ as useNodeType, aR as START_NODE_TYPE, aS as CRON_NODE_TYPE, aT as INTERVAL_NODE_TYPE, aU as CopyInput, aV as isTriggerPanelObject, aW as getTriggerNodeServiceName, V as VIEWS, F as WORKFLOW_SETTINGS_MODAL_KEY, b as useSettingsStore, aX as EXECUTABLE_TRIGGER_NODE_TYPES, aY as BASE_NODE_SURVEY_URL, E as EnterpriseEditionFeature, aZ as NODE_CONNECTION_TYPE_ALLOW_MULTIPLE, a_ as getAnchorPosition, a$ as isValidNodeConnectionType, b0 as getEndpointScope, b1 as getInputEndpointUUID, b2 as getInputEndpointStyle, b3 as getScope, b4 as getInputNameOverlay, b5 as NODE_INSERT_SPACER_BETWEEN_INPUT_GROUPS, b6 as NODE_MIN_INPUT_ITEMS_COUNT, b7 as getOutputEndpointUUID, b8 as getOutputEndpointStyle, b9 as getOutputNameOverlay, ba as NO_OP_NODE_TYPE, bb as GRID_SIZE, k as useCanvasStore, bc as isString, bd as isNumber, be as assert, bf as QUICKSTART_NOTE_NAME, bg as WAIT_TIME_UNLIMITED, bh as SIMULATE_NODE_TYPE, bi as SIMULATE_TRIGGER_NODE_TYPE, bj as CUSTOM_API_CALL_KEY, bk as EnableNodeToggleCommand, bl as getRelativePosition, bm as CORE_NODES_CATEGORY, bn as DEFAULT_SUBCATEGORY, bo as AI_SUBCATEGORY, bp as AI_CATEGORY_AGENTS, bq as i18n, _ as useTemplatesStore, br as AI_CATEGORY_CHAINS, bs as AI_NODE_CREATOR_VIEW, bt as AI_OTHERS_NODE_CREATOR_VIEW, bu as AI_CATEGORY_DOCUMENT_LOADERS, bv as AI_CATEGORY_LANGUAGE_MODELS, bw as AI_CATEGORY_MEMORY, bx as AI_CATEGORY_OUTPUTPARSER, by as AI_CATEGORY_RETRIEVERS, bz as AI_CATEGORY_TEXT_SPLITTERS, bA as AI_CATEGORY_TOOLS, bB as AI_WORKFLOW_TOOL_LANGCHAIN_NODE_TYPE, bC as AI_CODE_TOOL_LANGCHAIN_NODE_TYPE, bD as AI_CATEGORY_EMBEDDING, bE as AI_CATEGORY_VECTOR_STORES, bF as AI_UNCATEGORIZED_CATEGORY, bG as TRIGGER_NODE_CREATOR_VIEW, bH as EMAIL_IMAP_NODE_TYPE, bI as SCHEDULE_TRIGGER_NODE_TYPE, bJ as EXECUTE_WORKFLOW_TRIGGER_NODE_TYPE, bK as MANUAL_CHAT_TRIGGER_NODE_TYPE, bL as OTHER_TRIGGER_NODES_SUBCATEGORY, bM as REGULAR_NODE_CREATOR_VIEW, bN as RSS_READ_NODE_TYPE, bO as EMAIL_SEND_NODE_TYPE, bP as TRANSFORM_DATA_SUBCATEGORY, bQ as SET_NODE_TYPE, bR as CODE_NODE_TYPE, bS as DATETIME_NODE_TYPE, bT as FILTER_NODE_TYPE, bU as REMOVE_DUPLICATES_NODE_TYPE, bV as SPLIT_OUT_NODE_TYPE, bW as LIMIT_NODE_TYPE, bX as SUMMARIZE_NODE_TYPE, bY as AGGREGATE_NODE_TYPE, bZ as MERGE_NODE_TYPE, b_ as MARKDOWN_NODE_TYPE, b$ as XML_NODE_TYPE, c0 as CRYPTO_NODE_TYPE, c1 as EXTRACT_FROM_FILE_NODE_TYPE, c2 as CONVERT_TO_FILE_NODE_TYPE, c3 as COMPRESSION_NODE_TYPE, c4 as EDIT_IMAGE_NODE_TYPE, c5 as FLOWS_CONTROL_SUBCATEGORY, c6 as IF_NODE_TYPE, c7 as SPLIT_IN_BATCHES_NODE_TYPE, c8 as HELPERS_SUBCATEGORY, c9 as HTTP_REQUEST_NODE_TYPE, ca as AI_CATEGORY_ROOT_NODES, cb as AI_CODE_NODE_TYPE, cc as CanvasConnectionMode, cd as isValidCanvasConnectionMode, X as STORES, ce as NODE_CREATOR_OPEN_SOURCES, cf as isVueFlowConnection, cg as MOUSE_EVENT_BUTTON, ch as MOUSE_EVENT_BUTTONS, ci as KeyboardShortcutTooltip, cj as useGlobalLinkActions, y as useTitleChange, o as useNpsSurveyStore, n as useProjectsStore, L as useExecutionsStore, ck as useExternalSecretsStore, cl as useEnvironmentsStore, a as useUsersStore, c as useTagsStore, cm as getBackgroundStyles, J as MAIN_HEADER_TABS, Q as sourceControlEventBus, cn as historyBus, P as PLACEHOLDER_EMPTY_WORKFLOW_ID, co as WORKFLOW_LM_CHAT_MODAL_KEY, cp as N8nAddInputEndpointType, cq as getFixedNodesList, cr as tryToParseNumber, cs as MoveNodeCommand, H as VALID_WORKFLOW_IMPORT_URL_REGEX, ct as UPDATE_WEBHOOK_ID_NODE_TYPES, cu as getNewNodePosition, cv as DRAG_EVENT_DATA_KEY, cw as MAX_X_TO_PUSH_DOWNSTREAM_NODES, cx as PUSH_NODES_OFFSET, cy as NODE_SIZE, cz as resetConnectionAfterPull, cA as resetConnection, cB as moveBackInputLabelPosition, cC as hideOutputNameLabel, cD as addConnectionActionsOverlay, cE as getOverlay, cF as OVERLAY_ENDPOINT_ARROW_ID, cG as getConnectorPaintStyleData, cH as AddConnectionCommand, cI as addConnectionTestData, cJ as showOrHideItemsLabel, cK as showOrHideMidpointArrow, cL as isJSPlumbConnection, cM as hideConnectionActions, cN as showConnectionActions, cO as resetInputLabelPosition, cP as getConnectionInfo, cQ as showOutputNameLabel, cR as RemoveConnectionCommand, cS as isJSPlumbEndpointElement, cT as EVENT_PLUS_ENDPOINT_CLICK, cU as EVENT_ADD_INPUT_ENDPOINT_CLICK, cV as N8nPlusEndpointType, cW as usePostHog, cX as CANVAS_AUTO_ADD_MANUAL_TRIGGER_EXPERIMENT, cY as MODAL_CANCEL, cZ as addClassesToOverlays, c_ as OVERLAY_RUN_ITEMS_ID, c$ as getJSPlumbEndpoints, d0 as RemoveNodeCommand, d1 as useDataSchema, d2 as getNodeViewTab, d3 as getConnectorLengths, d4 as isElementIntersection, d5 as calculateElementIntersection, d6 as showDropConnectionState, d7 as showPullConnectionState, d8 as CanvasNodeKey, d9 as CanvasNodeRenderType, da as CanvasNodeHandleKey, db as AddNodeCommand } from "./index-BYZJlMWX.js";
5
+ import { an as N8nActionDropdown, _ as _export_sfc, ao as nodeIssuesToString, l as getNodeInputs, N as NodeConnectionType, k as getConnectionTypes, ap as isSingleExecution, f as deepCopy, m as getNodeParameters, aq as isINodePropertyCollectionList, ar as isINodePropertiesList, as as isINodePropertyOptionsList, ad as displayParameter, at as sanitizeHtml$1, au as sanitizeHtml_1, j as jsonParse, h as getNodeOutputs, av as getNodeHints, e as __vitePreload, b as createEventBus, ai as useDeviceSupport, am as FontAwesomeIcon, x as xss, n as nodeConnectionTypes, aw as generateNodesGraph, M as N8nTooltip } from "./n8n-CdNJGT99.js";
6
6
  import { m as mapStores, s as storeToRefs, d as defineStore } from "./pinia-C0SpIvcC.js";
7
- import { g as get, s as set, A as unset, e as isEqual, y as isObject, B as sortBy, C as difference } from "./lodash-es-COViF6dG.js";
8
- import { V as VueJsonPretty } from "./vue-json-pretty-A7n1L2oL.js";
9
- import { F as FileSaver_minExports } from "./file-saver-CLUQxR09.js";
10
- import { c as convertToDisplayDateComponents } from "./dateFormatter-Bm-NazQh.js";
11
- import RunDataAi from "./RunDataAi-BoYixabH.js";
12
- import { u as useWorkflowActivate } from "./useWorkflowActivate-CyFujklb.js";
7
+ import { g as get, s as set, A as unset, e as isEqual, y as isObject, B as sortBy, C as camelCase, D as difference } from "./lodash-es-BwUH-6hq.js";
8
+ import { V as VueJsonPretty } from "./vue-json-pretty-BVXRvCYn.js";
9
+ import { F as FileSaver_minExports } from "./file-saver-JNEc-JS6.js";
10
+ import { c as convertToDisplayDateComponents } from "./dateFormatter-sq-Dwf91.js";
11
+ import RunDataAi from "./RunDataAi-C5_L4fLv.js";
12
+ import { u as useWorkflowActivate } from "./useWorkflowActivate-0FWA930c.js";
13
13
  import { _ as INTERCEPT_BEFORE_DROP, $ as EVENT_CONNECTION, a0 as EVENT_CONNECTION_MOVED, a1 as EVENT_CONNECTION_DETACHED } from "./@jsplumb/core-B__RSZHf.js";
14
- import { u as useExecutionDebugging } from "./useExecutionDebugging-C8igPfgQ.js";
14
+ import { u as useExecutionDebugging } from "./useExecutionDebugging-DxLomlHU.js";
15
15
  import { v as v4 } from "./uuid-sKupIUZ4.js";
16
- import { u as usePushConnectionStore } from "./pushConnection.store-B7KfoksT.js";
16
+ import { u as usePushConnectionStore } from "./pushConnection.store-Lx1ePKx0.js";
17
17
  import { g as ready, f as EVENT_CONNECTION_ABORT, h as EVENT_DRAG_MOVE, a as EVENT_CONNECTION_MOUSEOVER, E as EVENT_CONNECTION_MOUSEOUT, b as EVENT_ENDPOINT_MOUSEOVER, d as EVENT_ENDPOINT_MOUSEOUT, i as EVENT_CONNECTION_DRAG } from "./@jsplumb/browser-ui-BphmFVJY.js";
18
- import { e as _sfc_main$f$1, f as Position, h as getBezierPath, i as _sfc_main$d$1, j as _sfc_main$3$1, P as PanelPosition, u as useVueFlow, k as _sfc_main$1$1 } from "./@vue-flow/core-CZYXcHT4.js";
19
- import { _ as _sfc_main$S } from "./@vue-flow/background-CTQyba98.js";
20
- import { _ as _sfc_main$U } from "./@vue-flow/controls-D1EndCL-.js";
21
- import { _ as _sfc_main$T } from "./@vue-flow/minimap--aX0pOzk.js";
22
- import { _ as _sfc_main$R } from "./@vue-flow/node-resizer-CiETXsr-.js";
18
+ import { e as Position, f as getSmoothStepPath, h as getBezierPath, i as _sfc_main$d$1, j as _sfc_main$f$1, k as _sfc_main$3$1, P as PanelPosition, u as useVueFlow, l as _sfc_main$1$1, M as MarkerType } from "./@vue-flow/core-DxFmgtgp.js";
19
+ import { _ as _sfc_main$T } from "./@vue-flow/background-DB0XkB4N.js";
20
+ import { _ as _sfc_main$V } from "./@vue-flow/controls-DIcDSPd4.js";
21
+ import { _ as _sfc_main$U } from "./@vue-flow/minimap-B_D9TdBd.js";
22
+ import { _ as _sfc_main$S } from "./@vue-flow/node-resizer-DiYsK3jS.js";
23
23
  const position = ref([0, 0]);
24
24
  const isOpen = ref(false);
25
25
  const target = ref();
@@ -206,7 +206,7 @@ const useContextMenu = (onAction = () => {
206
206
  _dispatchAction
207
207
  };
208
208
  };
209
- const _sfc_main$O = /* @__PURE__ */ defineComponent({
209
+ const _sfc_main$P = /* @__PURE__ */ defineComponent({
210
210
  __name: "ContextMenu",
211
211
  emits: ["action"],
212
212
  setup(__props, { emit: __emit }) {
@@ -282,21 +282,21 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
282
282
  });
283
283
  const contextMenu = "_contextMenu_1t4kq_1";
284
284
  const activator = "_activator_1t4kq_5";
285
- const style0$u = {
285
+ const style0$v = {
286
286
  contextMenu,
287
287
  activator
288
288
  };
289
- const cssModules$w = {
290
- "$style": style0$u
289
+ const cssModules$x = {
290
+ "$style": style0$v
291
291
  };
292
- const ContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["__cssModules", cssModules$w]]);
292
+ const ContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["__cssModules", cssModules$x]]);
293
293
  const _hoisted_1$o = ["data-test-id"];
294
294
  const _hoisted_2$h = ["textContent"];
295
295
  const _hoisted_3$d = ["onClick"];
296
296
  const _hoisted_4$9 = ["onClick"];
297
297
  const _hoisted_5$a = ["data-node-name"];
298
298
  const _hoisted_6$8 = ["onClick"];
299
- const _sfc_main$N = /* @__PURE__ */ defineComponent({
299
+ const _sfc_main$O = /* @__PURE__ */ defineComponent({
300
300
  __name: "NDVSubConnections",
301
301
  props: {
302
302
  rootNode: {}
@@ -529,7 +529,7 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
529
529
  class: normalizeClass(_ctx.$style.connectedNode),
530
530
  onClick: ($event) => onNodeClick(node2.node.name, connection.type)
531
531
  }, [
532
- createVNode(_sfc_main$P, {
532
+ createVNode(_sfc_main$Q, {
533
533
  "node-type": node2.nodeType,
534
534
  "node-name": node2.node.name,
535
535
  "tooltip-position": "top",
@@ -566,7 +566,7 @@ const connectedNodesMultiple = "_connectedNodesMultiple_tfxh3_87";
566
566
  const connectedNode$1 = "_connectedNode_tfxh3_55";
567
567
  const connectedNodes = "_connectedNodes_tfxh3_55";
568
568
  const nodeWrapper = "_nodeWrapper_tfxh3_125";
569
- const style0$t = {
569
+ const style0$u = {
570
570
  container: container$3,
571
571
  connections,
572
572
  connectionType,
@@ -581,11 +581,11 @@ const style0$t = {
581
581
  connectedNodes,
582
582
  nodeWrapper
583
583
  };
584
- const cssModules$v = {
585
- "$style": style0$t
584
+ const cssModules$w = {
585
+ "$style": style0$u
586
586
  };
587
- const __unplugin_components_6 = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["__cssModules", cssModules$v]]);
588
- const _sfc_main$M = defineComponent({
587
+ const __unplugin_components_6 = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["__cssModules", cssModules$w]]);
588
+ const _sfc_main$N = defineComponent({
589
589
  name: "NodeWebhooks",
590
590
  props: [
591
591
  "node",
@@ -847,8 +847,8 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
847
847
  })
848
848
  ])) : createCommentVNode("", true);
849
849
  }
850
- const __unplugin_components_3$1 = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$d], ["__scopeId", "data-v-36c5dbc7"]]);
851
- const _sfc_main$L = /* @__PURE__ */ defineComponent({
850
+ const __unplugin_components_3$1 = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$d], ["__scopeId", "data-v-36c5dbc7"]]);
851
+ const _sfc_main$M = /* @__PURE__ */ defineComponent({
852
852
  __name: "NodeSettingsTabs",
853
853
  props: {
854
854
  modelValue: { default: "params" },
@@ -977,7 +977,7 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
977
977
  const NODE_TEST_STEP_POPUP_COUNT_KEY = "N8N_NODE_TEST_STEP_POPUP_COUNT";
978
978
  const MAX_POPUP_COUNT = 10;
979
979
  const POPUP_UPDATE_DELAY = 3e3;
980
- const _sfc_main$K = defineComponent({
980
+ const _sfc_main$L = defineComponent({
981
981
  inheritAttrs: false,
982
982
  props: {
983
983
  nodeName: {
@@ -1241,8 +1241,8 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
1241
1241
  }, 8, ["disabled"])
1242
1242
  ]);
1243
1243
  }
1244
- const __unplugin_components_2$2 = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$c]]);
1245
- const _sfc_main$J = /* @__PURE__ */ defineComponent({
1244
+ const __unplugin_components_2$2 = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$c]]);
1245
+ const _sfc_main$K = /* @__PURE__ */ defineComponent({
1246
1246
  __name: "NodeTitle",
1247
1247
  props: {
1248
1248
  modelValue: { default: "" },
@@ -1285,7 +1285,7 @@ const _sfc_main$J = /* @__PURE__ */ defineComponent({
1285
1285
  createBaseVNode("span", {
1286
1286
  class: normalizeClass(_ctx.$style.iconWrapper)
1287
1287
  }, [
1288
- createVNode(_sfc_main$P, {
1288
+ createVNode(_sfc_main$Q, {
1289
1289
  "node-type": _ctx.nodeType,
1290
1290
  size: 18
1291
1291
  }, null, 8, ["node-type"])
@@ -1372,7 +1372,7 @@ const iconWrapper = "_iconWrapper_9bi3m_26";
1372
1372
  const editIconContainer = "_editIconContainer_9bi3m_39";
1373
1373
  const editButtons = "_editButtons_9bi3m_45";
1374
1374
  const editContainer = "_editContainer_9bi3m_53";
1375
- const style0$s = {
1375
+ const style0$t = {
1376
1376
  container: container$2,
1377
1377
  title: title$3,
1378
1378
  hoverable,
@@ -1382,17 +1382,17 @@ const style0$s = {
1382
1382
  editButtons,
1383
1383
  editContainer
1384
1384
  };
1385
- const cssModules$u = {
1386
- "$style": style0$s
1385
+ const cssModules$v = {
1386
+ "$style": style0$t
1387
1387
  };
1388
- const __unplugin_components_0$3 = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["__cssModules", cssModules$u]]);
1389
- const _sfc_main$I = defineComponent({
1388
+ const __unplugin_components_0$4 = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["__cssModules", cssModules$v]]);
1389
+ const _sfc_main$J = defineComponent({
1390
1390
  name: "NodeSettings",
1391
1391
  components: {
1392
- NodeTitle: __unplugin_components_0$3,
1392
+ NodeTitle: __unplugin_components_0$4,
1393
1393
  NodeCredentials: __unplugin_components_4,
1394
- ParameterInputList: _sfc_main$Q,
1395
- NodeSettingsTabs: _sfc_main$L,
1394
+ ParameterInputList: _sfc_main$R,
1395
+ NodeSettingsTabs: _sfc_main$M,
1396
1396
  NodeWebhooks: __unplugin_components_3$1,
1397
1397
  NDVSubConnections: __unplugin_components_6,
1398
1398
  NodeExecuteButton: __unplugin_components_2$2
@@ -2195,7 +2195,7 @@ const _sfc_main$I = defineComponent({
2195
2195
  const header$2 = "_header_1pn0y_1";
2196
2196
  const warningIcon = "_warningIcon_1pn0y_5";
2197
2197
  const descriptionContainer = "_descriptionContainer_1pn0y_10";
2198
- const style0$r = {
2198
+ const style0$s = {
2199
2199
  header: header$2,
2200
2200
  warningIcon,
2201
2201
  descriptionContainer
@@ -2231,9 +2231,9 @@ const _hoisted_11$2 = {
2231
2231
  };
2232
2232
  function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
2233
2233
  var _a, _b;
2234
- const _component_NodeTitle = __unplugin_components_0$3;
2234
+ const _component_NodeTitle = __unplugin_components_0$4;
2235
2235
  const _component_NodeExecuteButton = __unplugin_components_2$2;
2236
- const _component_NodeSettingsTabs = _sfc_main$L;
2236
+ const _component_NodeSettingsTabs = _sfc_main$M;
2237
2237
  const _component_font_awesome_icon = resolveComponent("font-awesome-icon");
2238
2238
  const _component_n8n_text = resolveComponent("n8n-text");
2239
2239
  const _component_i18n_t = resolveComponent("i18n-t");
@@ -2241,7 +2241,7 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
2241
2241
  const _component_n8n_notice = resolveComponent("n8n-notice");
2242
2242
  const _component_NodeWebhooks = __unplugin_components_3$1;
2243
2243
  const _component_NodeCredentials = __unplugin_components_4;
2244
- const _component_ParameterInputList = _sfc_main$Q;
2244
+ const _component_ParameterInputList = _sfc_main$R;
2245
2245
  const _component_NDVSubConnections = __unplugin_components_6;
2246
2246
  const _component_n8n_block_ui = resolveComponent("n8n-block-ui");
2247
2247
  return openBlock(), createElementBlock("div", {
@@ -2446,11 +2446,11 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
2446
2446
  createVNode(_component_n8n_block_ui, { show: _ctx.blockUI }, null, 8, ["show"])
2447
2447
  ], 34);
2448
2448
  }
2449
- const cssModules$t = {
2450
- "$style": style0$r
2449
+ const cssModules$u = {
2450
+ "$style": style0$s
2451
2451
  };
2452
- const NodeSettings = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["render", _sfc_render$b], ["__cssModules", cssModules$t], ["__scopeId", "data-v-6b8146a9"]]);
2453
- const _sfc_main$H = /* @__PURE__ */ defineComponent({
2452
+ const NodeSettings = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$b], ["__cssModules", cssModules$u], ["__scopeId", "data-v-6b8146a9"]]);
2453
+ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2454
2454
  __name: "Draggable",
2455
2455
  props: {
2456
2456
  type: {},
@@ -2573,16 +2573,16 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
2573
2573
  });
2574
2574
  const dragging$1 = "_dragging_r2v9t_1";
2575
2575
  const draggable$1 = "_draggable_r2v9t_6";
2576
- const style0$q = {
2576
+ const style0$r = {
2577
2577
  dragging: dragging$1,
2578
2578
  draggable: draggable$1,
2579
2579
  "draggable-data-transfer": "_draggable-data-transfer_r2v9t_14"
2580
2580
  };
2581
- const cssModules$s = {
2582
- "$style": style0$q
2581
+ const cssModules$t = {
2582
+ "$style": style0$r
2583
2583
  };
2584
- const Draggable = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["__cssModules", cssModules$s]]);
2585
- const _sfc_main$G = defineComponent({
2584
+ const Draggable = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["__cssModules", cssModules$t]]);
2585
+ const _sfc_main$H = defineComponent({
2586
2586
  components: {
2587
2587
  Draggable
2588
2588
  },
@@ -2613,7 +2613,7 @@ const rightArrow = "_rightArrow_1fum9_20 _arrow_1fum9_28";
2613
2613
  const visible$2 = "_visible_1fum9_24";
2614
2614
  const arrow = "_arrow_1fum9_28";
2615
2615
  const grid = "_grid_1fum9_46";
2616
- const style0$p = {
2616
+ const style0$q = {
2617
2617
  dragContainer,
2618
2618
  dragButton,
2619
2619
  leftArrow,
@@ -2674,10 +2674,10 @@ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
2674
2674
  _: 1
2675
2675
  }, 8, ["class", "onDrag", "onDragstart", "onDragend"]);
2676
2676
  }
2677
- const cssModules$r = {
2678
- "$style": style0$p
2677
+ const cssModules$s = {
2678
+ "$style": style0$q
2679
2679
  };
2680
- const PanelDragButton = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["render", _sfc_render$a], ["__cssModules", cssModules$r]]);
2680
+ const PanelDragButton = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["render", _sfc_render$a], ["__cssModules", cssModules$s]]);
2681
2681
  const _hoisted_1$k = ["data-node-name", "data-node-placement", "onClick"];
2682
2682
  var FloatingNodePosition = /* @__PURE__ */ ((FloatingNodePosition2) => {
2683
2683
  FloatingNodePosition2["top"] = "outputSub";
@@ -2685,7 +2685,7 @@ var FloatingNodePosition = /* @__PURE__ */ ((FloatingNodePosition2) => {
2685
2685
  FloatingNodePosition2["left"] = "inputMain";
2686
2686
  return FloatingNodePosition2;
2687
2687
  })(FloatingNodePosition || {});
2688
- const _sfc_main$F = /* @__PURE__ */ defineComponent({
2688
+ const _sfc_main$G = /* @__PURE__ */ defineComponent({
2689
2689
  __name: "NDVFloatingNodes",
2690
2690
  props: {
2691
2691
  rootNode: {}
@@ -2806,7 +2806,7 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
2806
2806
  "data-node-placement": connectionGroup,
2807
2807
  onClick: ($event) => emit("switchSelectedNode", node2.name)
2808
2808
  }, [
2809
- createVNode(_sfc_main$P, {
2809
+ createVNode(_sfc_main$Q, {
2810
2810
  "node-type": nodeType,
2811
2811
  "node-name": node2.name,
2812
2812
  "tooltip-position": tooltipPositionMapper[connectionGroup],
@@ -2832,7 +2832,7 @@ const outputSub = "_outputSub_1sze0_29";
2832
2832
  const outputMain = "_outputMain_1sze0_40";
2833
2833
  const inputMain = "_inputMain_1sze0_40";
2834
2834
  const connectedNode = "_connectedNode_1sze0_63";
2835
- const style0$o = {
2835
+ const style0$p = {
2836
2836
  floatingNodes,
2837
2837
  nodesList,
2838
2838
  inputSub,
@@ -2841,16 +2841,16 @@ const style0$o = {
2841
2841
  inputMain,
2842
2842
  connectedNode
2843
2843
  };
2844
- const cssModules$q = {
2845
- "$style": style0$o
2844
+ const cssModules$r = {
2845
+ "$style": style0$p
2846
2846
  };
2847
- const NDVFloatingNodes = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__cssModules", cssModules$q]]);
2847
+ const NDVFloatingNodes = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["__cssModules", cssModules$r]]);
2848
2848
  const SIDE_MARGIN = 24;
2849
2849
  const SIDE_PANELS_MARGIN = 80;
2850
2850
  const MIN_PANEL_WIDTH = 280;
2851
2851
  const PANEL_WIDTH = 320;
2852
2852
  const PANEL_WIDTH_LARGE = 420;
2853
- const _sfc_main$E = /* @__PURE__ */ defineComponent({
2853
+ const _sfc_main$F = /* @__PURE__ */ defineComponent({
2854
2854
  __name: "NDVDraggablePanels",
2855
2855
  props: {
2856
2856
  isDraggable: { type: Boolean },
@@ -3188,7 +3188,7 @@ const mainPanelInner = "_mainPanelInner_a6j4o_34";
3188
3188
  const dragging = "_dragging_a6j4o_41";
3189
3189
  const dragButtonContainer = "_dragButtonContainer_a6j4o_54";
3190
3190
  const visible$1 = "_visible_a6j4o_70";
3191
- const style0$n = {
3191
+ const style0$o = {
3192
3192
  dataPanel,
3193
3193
  inputPanel,
3194
3194
  outputPanel,
@@ -3200,10 +3200,10 @@ const style0$n = {
3200
3200
  dragButtonContainer,
3201
3201
  visible: visible$1
3202
3202
  };
3203
- const cssModules$p = {
3204
- "$style": style0$n
3203
+ const cssModules$q = {
3204
+ "$style": style0$o
3205
3205
  };
3206
- const NDVDraggablePanels = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__cssModules", cssModules$p]]);
3206
+ const NDVDraggablePanels = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__cssModules", cssModules$q]]);
3207
3207
  const _hoisted_1$j = { class: "node-error-view" };
3208
3208
  const _hoisted_2$d = { class: "node-error-view__header" };
3209
3209
  const _hoisted_3$9 = {
@@ -3312,7 +3312,7 @@ const _hoisted_58 = {
3312
3312
  };
3313
3313
  const _hoisted_59 = { class: "node-error-view__details-label" };
3314
3314
  const _hoisted_60 = { class: "node-error-view__details-value" };
3315
- const _sfc_main$D = /* @__PURE__ */ defineComponent({
3315
+ const _sfc_main$E = /* @__PURE__ */ defineComponent({
3316
3316
  __name: "NodeErrorView",
3317
3317
  props: {
3318
3318
  error: {}
@@ -3397,8 +3397,8 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
3397
3397
  interpolate: { version: latestNodeVersion.toString() }
3398
3398
  });
3399
3399
  }
3400
- function prepareDescription(description) {
3401
- return sanitizeHtml(description.replace(/`(.*?)`/g, "<code>$1</code>"));
3400
+ function prepareDescription(description2) {
3401
+ return sanitizeHtml(description2.replace(/`(.*?)`/g, "<code>$1</code>"));
3402
3402
  }
3403
3403
  function getErrorDescription() {
3404
3404
  var _a, _b;
@@ -3752,7 +3752,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
3752
3752
  const _hoisted_1$i = { key: 0 };
3753
3753
  const _hoisted_2$c = { key: 1 };
3754
3754
  const _hoisted_3$8 = { key: 2 };
3755
- const _sfc_main$C = /* @__PURE__ */ defineComponent({
3755
+ const _sfc_main$D = /* @__PURE__ */ defineComponent({
3756
3756
  __name: "RunDataPinButton",
3757
3757
  props: {
3758
3758
  tooltipContentsVisibility: {},
@@ -3817,13 +3817,13 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
3817
3817
  }
3818
3818
  });
3819
3819
  const pinDataButton = "_pinDataButton_9p8um_1";
3820
- const style0$m = {
3820
+ const style0$n = {
3821
3821
  pinDataButton
3822
3822
  };
3823
- const cssModules$o = {
3824
- "$style": style0$m
3823
+ const cssModules$p = {
3824
+ "$style": style0$n
3825
3825
  };
3826
- const __unplugin_components_1$1 = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["__cssModules", cssModules$o]]);
3826
+ const __unplugin_components_1$1 = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__cssModules", cssModules$p]]);
3827
3827
  const sanitizeOptions = {
3828
3828
  allowVulnerableTags: false,
3829
3829
  enforceHtmlBoundary: false,
@@ -3837,7 +3837,7 @@ const sanitizeOptions = {
3837
3837
  head: ""
3838
3838
  }
3839
3839
  };
3840
- const _sfc_main$B = {
3840
+ const _sfc_main$C = {
3841
3841
  name: "RunDataHtml",
3842
3842
  props: {
3843
3843
  inputHtml: {
@@ -3858,7 +3858,7 @@ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
3858
3858
  srcdoc: $options.sanitizedHtml
3859
3859
  }, null, 8, _hoisted_1$h);
3860
3860
  }
3861
- const RunDataHtml = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["render", _sfc_render$9]]);
3861
+ const RunDataHtml = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render$9]]);
3862
3862
  const RunDataHtml$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3863
3863
  __proto__: null,
3864
3864
  default: RunDataHtml
@@ -3879,7 +3879,7 @@ const _hoisted_6$4 = {
3879
3879
  };
3880
3880
  const _hoisted_7$3 = ["src", "type"];
3881
3881
  const _hoisted_8$3 = ["src"];
3882
- const _sfc_main$A = /* @__PURE__ */ defineComponent({
3882
+ const _sfc_main$B = /* @__PURE__ */ defineComponent({
3883
3883
  __name: "BinaryDataDisplayEmbed",
3884
3884
  props: {
3885
3885
  binaryData: {}
@@ -3954,7 +3954,7 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
3954
3954
  });
3955
3955
  const _hoisted_1$f = { class: "binary-data-window-wrapper" };
3956
3956
  const _hoisted_2$a = { key: 0 };
3957
- const _sfc_main$z = /* @__PURE__ */ defineComponent({
3957
+ const _sfc_main$A = /* @__PURE__ */ defineComponent({
3958
3958
  __name: "BinaryDataDisplay",
3959
3959
  props: {
3960
3960
  displayData: {},
@@ -4013,7 +4013,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
4013
4013
  onClick: withModifiers(closeWindow, ["stop"])
4014
4014
  }, null, 8, ["title", "label"]),
4015
4015
  createBaseVNode("div", _hoisted_1$f, [
4016
- !binaryData.value ? (openBlock(), createElementBlock("div", _hoisted_2$a, toDisplayString(_ctx.$locale.baseText("binaryDataDisplay.noDataFoundToDisplay")), 1)) : (openBlock(), createBlock(_sfc_main$A, {
4016
+ !binaryData.value ? (openBlock(), createElementBlock("div", _hoisted_2$a, toDisplayString(_ctx.$locale.baseText("binaryDataDisplay.noDataFoundToDisplay")), 1)) : (openBlock(), createBlock(_sfc_main$B, {
4017
4017
  key: 1,
4018
4018
  "binary-data": binaryData.value
4019
4019
  }, null, 8, ["binary-data"]))
@@ -4023,25 +4023,25 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
4023
4023
  }
4024
4024
  });
4025
4025
  const LazyRunDataTable = defineAsyncComponent(
4026
- async () => await __vitePreload(() => import("./RunDataTable-BMUSNbNG.js"), true ? __vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47]) : void 0)
4026
+ async () => await __vitePreload(() => import("./RunDataTable-IGhY_pIB.js"), true ? __vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47]) : void 0)
4027
4027
  );
4028
4028
  const LazyRunDataJson = defineAsyncComponent(
4029
- async () => await __vitePreload(() => import("./RunDataJson-D1TiLAh1.js"), true ? __vite__mapDeps([48,1,2,3,4,5,6,7,8,9,10,11,34,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,35,36,37,38,39,40,41,42,43,44,45,46,49]) : void 0)
4029
+ async () => await __vitePreload(() => import("./RunDataJson-BmARuE-g.js"), true ? __vite__mapDeps([48,1,2,3,4,5,6,7,8,9,10,11,34,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,35,36,37,38,39,40,41,42,43,44,45,46,49]) : void 0)
4030
4030
  );
4031
4031
  const LazyRunDataSchema = defineAsyncComponent(
4032
- async () => await __vitePreload(() => import("./RunDataSchema-CYFnNSgb.js"), true ? __vite__mapDeps([50,2,7,13,3,4,5,6,8,9,10,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,1,11,34,35,36,37,38,39,40,41,42,43,44,45,46,51]) : void 0)
4032
+ async () => await __vitePreload(() => import("./RunDataSchema-CJxumRPC.js"), true ? __vite__mapDeps([50,2,7,13,3,4,5,6,8,9,10,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,1,11,34,35,36,37,38,39,40,41,42,43,44,45,46,51]) : void 0)
4033
4033
  );
4034
4034
  const LazyRunDataHtml = defineAsyncComponent(
4035
4035
  async () => await __vitePreload(() => Promise.resolve().then(() => RunDataHtml$1), true ? void 0 : void 0)
4036
4036
  );
4037
4037
  const LazyRunDataSearch = defineAsyncComponent(
4038
- async () => await __vitePreload(() => import("./RunDataSearch-CY58Lj9D.js"), true ? __vite__mapDeps([52,2,13,3,4,5,6,7,8,9,10,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,53]) : void 0)
4038
+ async () => await __vitePreload(() => import("./RunDataSearch-mAuiNwL1.js"), true ? __vite__mapDeps([52,2,13,3,4,5,6,7,8,9,10,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,53]) : void 0)
4039
4039
  );
4040
- const _sfc_main$y = defineComponent({
4040
+ const _sfc_main$z = defineComponent({
4041
4041
  name: "RunData",
4042
4042
  components: {
4043
- BinaryDataDisplay: _sfc_main$z,
4044
- NodeErrorView: _sfc_main$D,
4043
+ BinaryDataDisplay: _sfc_main$A,
4044
+ NodeErrorView: _sfc_main$E,
4045
4045
  JsonEditor: __unplugin_components_2$3,
4046
4046
  LazyRunDataTable,
4047
4047
  LazyRunDataJson,
@@ -5025,7 +5025,7 @@ const editModeActions = "_editModeActions_1ozut_261";
5025
5025
  const stretchVertically = "_stretchVertically_1ozut_268";
5026
5026
  const uiBlocker = "_uiBlocker_1ozut_272";
5027
5027
  const hintCallout = "_hintCallout_1ozut_277";
5028
- const style0$l = {
5028
+ const style0$m = {
5029
5029
  infoIcon,
5030
5030
  center,
5031
5031
  container: container$1,
@@ -5080,7 +5080,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
5080
5080
  var _a, _b, _c, _d, _e, _f;
5081
5081
  const _component_n8n_link = resolveComponent("n8n-link");
5082
5082
  const _component_n8n_callout = resolveComponent("n8n-callout");
5083
- const _component_BinaryDataDisplay = _sfc_main$z;
5083
+ const _component_BinaryDataDisplay = _sfc_main$A;
5084
5084
  const _component_LazyRunDataSearch = resolveComponent("LazyRunDataSearch");
5085
5085
  const _component_n8n_radio_buttons = resolveComponent("n8n-radio-buttons");
5086
5086
  const _component_n8n_icon_button = resolveComponent("n8n-icon-button");
@@ -5094,7 +5094,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
5094
5094
  const _component_n8n_spinner = resolveComponent("n8n-spinner");
5095
5095
  const _component_JsonEditor = __unplugin_components_2$3;
5096
5096
  const _component_n8n_info_tip = resolveComponent("n8n-info-tip");
5097
- const _component_NodeErrorView = _sfc_main$D;
5097
+ const _component_NodeErrorView = _sfc_main$E;
5098
5098
  const _component_i18n_t = resolveComponent("i18n-t");
5099
5099
  const _component_LazyRunDataTable = resolveComponent("LazyRunDataTable");
5100
5100
  const _component_LazyRunDataJson = resolveComponent("LazyRunDataJson");
@@ -5842,11 +5842,11 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
5842
5842
  }, null, 8, ["show", "class"])
5843
5843
  ], 34);
5844
5844
  }
5845
- const cssModules$n = {
5846
- "$style": style0$l
5845
+ const cssModules$o = {
5846
+ "$style": style0$m
5847
5847
  };
5848
- const __unplugin_components_3 = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["render", _sfc_render$8], ["__cssModules", cssModules$n], ["__scopeId", "data-v-ca23b2be"]]);
5849
- const _sfc_main$x = defineComponent({
5848
+ const __unplugin_components_3 = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["render", _sfc_render$8], ["__cssModules", cssModules$o], ["__scopeId", "data-v-ca23b2be"]]);
5849
+ const _sfc_main$y = defineComponent({
5850
5850
  props: {
5851
5851
  taskData: {},
5852
5852
  // ITaskData
@@ -5939,9 +5939,9 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
5939
5939
  _: 1
5940
5940
  }, 8, ["theme", "data-test-id"])) : createCommentVNode("", true);
5941
5941
  }
5942
- const RunInfo = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["render", _sfc_render$7]]);
5942
+ const RunInfo = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["render", _sfc_render$7]]);
5943
5943
  const _hoisted_1$c = /* @__PURE__ */ createBaseVNode("br", null, null, -1);
5944
- const _sfc_main$w = /* @__PURE__ */ defineComponent({
5944
+ const _sfc_main$x = /* @__PURE__ */ defineComponent({
5945
5945
  __name: "OutputPanel",
5946
5946
  props: {
5947
5947
  workflow: {},
@@ -6280,18 +6280,18 @@ const titleSection$1 = "_titleSection_f1tu5_11";
6280
6280
  const title$2 = "_title_f1tu5_11";
6281
6281
  const noOutputData$1 = "_noOutputData_f1tu5_27";
6282
6282
  const recoveredOutputData$1 = "_recoveredOutputData_f1tu5_37";
6283
- const style0$k = {
6283
+ const style0$l = {
6284
6284
  outputTypeSelect,
6285
6285
  titleSection: titleSection$1,
6286
6286
  title: title$2,
6287
6287
  noOutputData: noOutputData$1,
6288
6288
  recoveredOutputData: recoveredOutputData$1
6289
6289
  };
6290
- const cssModules$m = {
6291
- "$style": style0$k
6290
+ const cssModules$n = {
6291
+ "$style": style0$l
6292
6292
  };
6293
- const OutputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__cssModules", cssModules$m]]);
6294
- const _sfc_main$v = {};
6293
+ const OutputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__cssModules", cssModules$n]]);
6294
+ const _sfc_main$w = {};
6295
6295
  const _hoisted_1$b = {
6296
6296
  width: "112",
6297
6297
  height: "80",
@@ -6307,9 +6307,9 @@ const _hoisted_5$4 = [
6307
6307
  function _sfc_render$6(_ctx, _cache) {
6308
6308
  return openBlock(), createElementBlock("svg", _hoisted_1$b, _hoisted_5$4);
6309
6309
  }
6310
- const __unplugin_components_2$1 = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["render", _sfc_render$6]]);
6310
+ const __unplugin_components_2$1 = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["render", _sfc_render$6]]);
6311
6311
  const _hoisted_1$a = { key: 0 };
6312
- const _sfc_main$u = /* @__PURE__ */ defineComponent({
6312
+ const _sfc_main$v = /* @__PURE__ */ defineComponent({
6313
6313
  __name: "InputNodeSelect",
6314
6314
  props: {
6315
6315
  nodes: {},
@@ -6407,7 +6407,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
6407
6407
  prefix: withCtx(() => {
6408
6408
  var _a;
6409
6409
  return [
6410
- createVNode(_sfc_main$P, {
6410
+ createVNode(_sfc_main$Q, {
6411
6411
  disabled: (_a = selectedInputNode.value) == null ? void 0 : _a.disabled,
6412
6412
  "node-type": selectedInputNodeType.value,
6413
6413
  size: 14,
@@ -6425,7 +6425,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
6425
6425
  "data-test-id": "ndv-input-option"
6426
6426
  }, {
6427
6427
  default: withCtx(() => [
6428
- createVNode(_sfc_main$P, {
6428
+ createVNode(_sfc_main$Q, {
6429
6429
  disabled: node2.disabled,
6430
6430
  "node-type": type,
6431
6431
  size: 14,
@@ -6456,22 +6456,22 @@ const node$1 = "_node_68vpa_10";
6456
6456
  const icon = "_icon_68vpa_18";
6457
6457
  const title$1 = "_title_68vpa_22";
6458
6458
  const disabled$1 = "_disabled_68vpa_31";
6459
- const subtitle = "_subtitle_68vpa_35";
6460
- const style0$j = {
6459
+ const subtitle$1 = "_subtitle_68vpa_35";
6460
+ const style0$k = {
6461
6461
  select,
6462
6462
  node: node$1,
6463
6463
  icon,
6464
6464
  title: title$1,
6465
6465
  disabled: disabled$1,
6466
- subtitle
6466
+ subtitle: subtitle$1
6467
6467
  };
6468
- const cssModules$l = {
6469
- "$style": style0$j
6468
+ const cssModules$m = {
6469
+ "$style": style0$k
6470
6470
  };
6471
- const __unplugin_components_0$2 = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__cssModules", cssModules$l]]);
6472
- const _sfc_main$t = defineComponent({
6471
+ const __unplugin_components_0$3 = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__cssModules", cssModules$m]]);
6472
+ const _sfc_main$u = defineComponent({
6473
6473
  name: "InputPanel",
6474
- components: { RunData: __unplugin_components_3, NodeExecuteButton: __unplugin_components_2$2, WireMeUp: __unplugin_components_2$1, InputNodeSelect: __unplugin_components_0$2 },
6474
+ components: { RunData: __unplugin_components_3, NodeExecuteButton: __unplugin_components_2$2, WireMeUp: __unplugin_components_2$1, InputNodeSelect: __unplugin_components_0$3 },
6475
6475
  props: {
6476
6476
  currentNodeName: {
6477
6477
  type: String
@@ -6747,7 +6747,7 @@ const noOutputData = "_noOutputData_17wvq_18";
6747
6747
  const recoveredOutputData = "_recoveredOutputData_17wvq_28";
6748
6748
  const notConnected = "_notConnected_17wvq_37";
6749
6749
  const title = "_title_17wvq_5";
6750
- const style0$i = {
6750
+ const style0$j = {
6751
6751
  mappedNode,
6752
6752
  titleSection,
6753
6753
  inputModeTab,
@@ -6759,7 +6759,7 @@ const style0$i = {
6759
6759
  const _hoisted_1$9 = ["innerHTML"];
6760
6760
  function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
6761
6761
  const _component_n8n_radio_buttons = resolveComponent("n8n-radio-buttons");
6762
- const _component_InputNodeSelect = __unplugin_components_0$2;
6762
+ const _component_InputNodeSelect = __unplugin_components_0$3;
6763
6763
  const _component_n8n_text = resolveComponent("n8n-text");
6764
6764
  const _component_NodeExecuteButton = __unplugin_components_2$2;
6765
6765
  const _component_n8n_tooltip = resolveComponent("n8n-tooltip");
@@ -6960,16 +6960,16 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
6960
6960
  } : void 0
6961
6961
  ]), 1032, ["node", "nodes", "workflow", "run-index", "linked-runs", "can-link-runs", "too-much-data-title", "no-data-in-branch-message", "is-executing", "executing-message", "push-ref", "override-outputs", "mapping-enabled", "distance-from-active", "is-production-execution-preview", "is-pane-active", "onActivatePane", "onLinkRun", "onUnlinkRun", "onRunChange"]);
6962
6962
  }
6963
- const cssModules$k = {
6964
- "$style": style0$i
6963
+ const cssModules$l = {
6964
+ "$style": style0$j
6965
6965
  };
6966
- const InputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["render", _sfc_render$5], ["__cssModules", cssModules$k]]);
6967
- const _sfc_main$s = defineComponent({
6966
+ const InputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["render", _sfc_render$5], ["__cssModules", cssModules$l]]);
6967
+ const _sfc_main$t = defineComponent({
6968
6968
  name: "TriggerPanel",
6969
6969
  components: {
6970
6970
  NodeExecuteButton: __unplugin_components_2$2,
6971
6971
  CopyInput,
6972
- NodeIcon: _sfc_main$P
6972
+ NodeIcon: _sfc_main$Q
6973
6973
  },
6974
6974
  props: {
6975
6975
  nodeName: {
@@ -7271,7 +7271,7 @@ const header = "_header_1evnm_18";
7271
7271
  const action = "_action_1evnm_25";
7272
7272
  const shake$1 = "_shake_1evnm_29";
7273
7273
  const accordion = "_accordion_1evnm_50";
7274
- const style0$h = {
7274
+ const style0$i = {
7275
7275
  container,
7276
7276
  header,
7277
7277
  action,
@@ -7292,7 +7292,7 @@ const _hoisted_7$1 = {
7292
7292
  const _hoisted_8$1 = ["textContent"];
7293
7293
  const _hoisted_9$1 = ["innerHTML"];
7294
7294
  function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
7295
- const _component_NodeIcon = _sfc_main$P;
7295
+ const _component_NodeIcon = _sfc_main$Q;
7296
7296
  const _component_n8n_pulse = resolveComponent("n8n-pulse");
7297
7297
  const _component_n8n_text = resolveComponent("n8n-text");
7298
7298
  const _component_CopyInput = CopyInput;
@@ -7476,11 +7476,11 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
7476
7476
  })
7477
7477
  ], 2);
7478
7478
  }
7479
- const cssModules$j = {
7480
- "$style": style0$h
7479
+ const cssModules$k = {
7480
+ "$style": style0$i
7481
7481
  };
7482
- const TriggerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["render", _sfc_render$4], ["__cssModules", cssModules$j], ["__scopeId", "data-v-36b80c39"]]);
7483
- const _sfc_main$r = /* @__PURE__ */ defineComponent({
7482
+ const TriggerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["render", _sfc_render$4], ["__cssModules", cssModules$k], ["__scopeId", "data-v-36b80c39"]]);
7483
+ const _sfc_main$s = /* @__PURE__ */ defineComponent({
7484
7484
  __name: "NodeDetailsView",
7485
7485
  props: {
7486
7486
  workflowObject: {},
@@ -8151,10 +8151,10 @@ const style1 = {
8151
8151
  backToCanvas,
8152
8152
  featureRequest
8153
8153
  };
8154
- const cssModules$i = {
8154
+ const cssModules$j = {
8155
8155
  "$style": style1
8156
8156
  };
8157
- const __unplugin_components_2 = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__cssModules", cssModules$i]]);
8157
+ const __unplugin_components_2 = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__cssModules", cssModules$j]]);
8158
8158
  const NodeDetailsView = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
8159
8159
  __proto__: null,
8160
8160
  default: __unplugin_components_2
@@ -8649,7 +8649,7 @@ function useNodeBase({
8649
8649
  outputs: outputs2
8650
8650
  };
8651
8651
  }
8652
- const _sfc_main$q = defineComponent({
8652
+ const _sfc_main$r = defineComponent({
8653
8653
  name: "Sticky",
8654
8654
  props: {
8655
8655
  nodeViewScale: {
@@ -9042,13 +9042,13 @@ function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
9042
9042
  ], 6)
9043
9043
  ], 12, _hoisted_1$7);
9044
9044
  }
9045
- const __unplugin_components_1 = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["render", _sfc_render$3], ["__scopeId", "data-v-23ba8f70"]]);
9046
- const _sfc_main$p = defineComponent({
9045
+ const __unplugin_components_1 = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["render", _sfc_render$3], ["__scopeId", "data-v-23ba8f70"]]);
9046
+ const _sfc_main$q = defineComponent({
9047
9047
  name: "Node",
9048
9048
  components: {
9049
9049
  TitledList,
9050
9050
  FontAwesomeIcon,
9051
- NodeIcon: _sfc_main$P
9051
+ NodeIcon: _sfc_main$Q
9052
9052
  },
9053
9053
  props: {
9054
9054
  isProductionExecutionPreview: {
@@ -9341,8 +9341,8 @@ const _sfc_main$p = defineComponent({
9341
9341
  if (nodeExecutionRunData) {
9342
9342
  nodeExecutionRunData.forEach((executionRunData) => {
9343
9343
  if (executionRunData == null ? void 0 : executionRunData.error) {
9344
- const { message, description } = executionRunData.error;
9345
- const issue = `${message}${description ? ` (${description})` : ""}`;
9344
+ const { message, description: description2 } = executionRunData.error;
9345
+ const issue = `${message}${description2 ? ` (${description2})` : ""}`;
9346
9346
  issues2.push(xss(issue));
9347
9347
  }
9348
9348
  });
@@ -9675,7 +9675,7 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
9675
9675
  const _component_FontAwesomeIcon = resolveComponent("FontAwesomeIcon");
9676
9676
  const _component_n8n_tooltip = resolveComponent("n8n-tooltip");
9677
9677
  const _component_TitledList = TitledList;
9678
- const _component_NodeIcon = _sfc_main$P;
9678
+ const _component_NodeIcon = _sfc_main$Q;
9679
9679
  const _component_n8n_icon_button = resolveComponent("n8n-icon-button");
9680
9680
  const _directive_touch = resolveDirective("touch");
9681
9681
  return _ctx.data ? (openBlock(), createElementBlock("div", {
@@ -9889,7 +9889,7 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
9889
9889
  ]) : createCommentVNode("", true)
9890
9890
  ], 46, _hoisted_1$6)) : createCommentVNode("", true);
9891
9891
  }
9892
- const __unplugin_components_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["render", _sfc_render$2], ["__scopeId", "data-v-75cfc2b3"]]);
9892
+ const __unplugin_components_0$2 = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["render", _sfc_render$2], ["__scopeId", "data-v-75cfc2b3"]]);
9893
9893
  function useCanvasMouseSelect() {
9894
9894
  const selectActive = ref(false);
9895
9895
  const selectBox = ref(document.createElement("span"));
@@ -10478,6 +10478,13 @@ function AINodesView(_nodes) {
10478
10478
  panelClass: `nodes-list-panel-${nodeConnectionType}`
10479
10479
  };
10480
10480
  }
10481
+ function getSubcategoryInfo(subcategory) {
10482
+ const localeKey = `nodeCreator.subcategoryInfos.${camelCase(subcategory)}`;
10483
+ const info = i18n2.baseText(localeKey);
10484
+ if (info === localeKey)
10485
+ return void 0;
10486
+ return info;
10487
+ }
10481
10488
  return {
10482
10489
  value: AI_OTHERS_NODE_CREATOR_VIEW,
10483
10490
  title: i18n2.baseText("nodeCreator.aiPanel.aiOtherNodes"),
@@ -10488,6 +10495,7 @@ function AINodesView(_nodes) {
10488
10495
  type: "subcategory",
10489
10496
  properties: {
10490
10497
  title: AI_CATEGORY_DOCUMENT_LOADERS,
10498
+ info: getSubcategoryInfo(AI_CATEGORY_DOCUMENT_LOADERS),
10491
10499
  icon: "file-import",
10492
10500
  ...getAISubcategoryProperties(NodeConnectionType.AiDocument)
10493
10501
  }
@@ -10497,6 +10505,7 @@ function AINodesView(_nodes) {
10497
10505
  type: "subcategory",
10498
10506
  properties: {
10499
10507
  title: AI_CATEGORY_LANGUAGE_MODELS,
10508
+ info: getSubcategoryInfo(AI_CATEGORY_LANGUAGE_MODELS),
10500
10509
  icon: "language",
10501
10510
  ...getAISubcategoryProperties(NodeConnectionType.AiLanguageModel)
10502
10511
  }
@@ -10506,6 +10515,7 @@ function AINodesView(_nodes) {
10506
10515
  type: "subcategory",
10507
10516
  properties: {
10508
10517
  title: AI_CATEGORY_MEMORY,
10518
+ info: getSubcategoryInfo(AI_CATEGORY_MEMORY),
10509
10519
  icon: "brain",
10510
10520
  ...getAISubcategoryProperties(NodeConnectionType.AiMemory)
10511
10521
  }
@@ -10515,6 +10525,7 @@ function AINodesView(_nodes) {
10515
10525
  type: "subcategory",
10516
10526
  properties: {
10517
10527
  title: AI_CATEGORY_OUTPUTPARSER,
10528
+ info: getSubcategoryInfo(AI_CATEGORY_OUTPUTPARSER),
10518
10529
  icon: "list",
10519
10530
  ...getAISubcategoryProperties(NodeConnectionType.AiOutputParser)
10520
10531
  }
@@ -10524,6 +10535,7 @@ function AINodesView(_nodes) {
10524
10535
  type: "subcategory",
10525
10536
  properties: {
10526
10537
  title: AI_CATEGORY_RETRIEVERS,
10538
+ info: getSubcategoryInfo(AI_CATEGORY_RETRIEVERS),
10527
10539
  icon: "search",
10528
10540
  ...getAISubcategoryProperties(NodeConnectionType.AiRetriever)
10529
10541
  }
@@ -10533,6 +10545,7 @@ function AINodesView(_nodes) {
10533
10545
  type: "subcategory",
10534
10546
  properties: {
10535
10547
  title: AI_CATEGORY_TEXT_SPLITTERS,
10548
+ info: getSubcategoryInfo(AI_CATEGORY_TEXT_SPLITTERS),
10536
10549
  icon: "grip-lines-vertical",
10537
10550
  ...getAISubcategoryProperties(NodeConnectionType.AiTextSplitter)
10538
10551
  }
@@ -10543,6 +10556,7 @@ function AINodesView(_nodes) {
10543
10556
  category: CORE_NODES_CATEGORY,
10544
10557
  properties: {
10545
10558
  title: AI_CATEGORY_TOOLS,
10559
+ info: getSubcategoryInfo(AI_CATEGORY_TOOLS),
10546
10560
  icon: "tools",
10547
10561
  ...getAISubcategoryProperties(NodeConnectionType.AiTool),
10548
10562
  sections: [
@@ -10559,6 +10573,7 @@ function AINodesView(_nodes) {
10559
10573
  type: "subcategory",
10560
10574
  properties: {
10561
10575
  title: AI_CATEGORY_EMBEDDING,
10576
+ info: getSubcategoryInfo(AI_CATEGORY_EMBEDDING),
10562
10577
  icon: "vector-square",
10563
10578
  ...getAISubcategoryProperties(NodeConnectionType.AiEmbedding)
10564
10579
  }
@@ -10568,6 +10583,7 @@ function AINodesView(_nodes) {
10568
10583
  type: "subcategory",
10569
10584
  properties: {
10570
10585
  title: AI_CATEGORY_VECTOR_STORES,
10586
+ info: getSubcategoryInfo(AI_CATEGORY_VECTOR_STORES),
10571
10587
  icon: "project-diagram",
10572
10588
  ...getAISubcategoryProperties(NodeConnectionType.AiVectorStore)
10573
10589
  }
@@ -11097,7 +11113,7 @@ const useViewStacks = defineStore("nodeCreatorViewStacks", () => {
11097
11113
  return filteredSearchBase;
11098
11114
  }
11099
11115
  async function gotoCompatibleConnectionView(connectionType2, isOutput, filter) {
11100
- var _a;
11116
+ var _a, _b;
11101
11117
  let nodesByConnectionType;
11102
11118
  let relatedAIView;
11103
11119
  if (isOutput === true) {
@@ -11114,16 +11130,21 @@ const useViewStacks = defineStore("nodeCreatorViewStacks", () => {
11114
11130
  (item) => item.properties.connectionType === connectionType2
11115
11131
  );
11116
11132
  }
11133
+ let extendedInfo = {};
11134
+ if (!((_a = filter == null ? void 0 : filter.nodes) == null ? void 0 : _a.length) && (relatedAIView == null ? void 0 : relatedAIView.properties.info)) {
11135
+ extendedInfo = { info: relatedAIView == null ? void 0 : relatedAIView.properties.info };
11136
+ }
11117
11137
  await nextTick();
11118
11138
  pushViewStack({
11119
11139
  title: relatedAIView == null ? void 0 : relatedAIView.properties.title,
11140
+ ...extendedInfo,
11120
11141
  rootView: AI_OTHERS_NODE_CREATOR_VIEW,
11121
11142
  mode: "nodes",
11122
11143
  items: nodeCreatorStore.allNodeCreatorNodes,
11123
11144
  nodeIcon: {
11124
11145
  iconType: "icon",
11125
11146
  icon: relatedAIView == null ? void 0 : relatedAIView.properties.icon,
11126
- color: (_a = relatedAIView == null ? void 0 : relatedAIView.properties.iconProps) == null ? void 0 : _a.color
11147
+ color: (_b = relatedAIView == null ? void 0 : relatedAIView.properties.iconProps) == null ? void 0 : _b.color
11127
11148
  },
11128
11149
  panelClass: relatedAIView == null ? void 0 : relatedAIView.properties.panelClass,
11129
11150
  baseFilter: (i) => {
@@ -11356,7 +11377,7 @@ function mapCanvasConnectionToLegacyConnection(sourceNode, targetNode, connectio
11356
11377
  }
11357
11378
  ];
11358
11379
  }
11359
- function mapLegacyEndpointsToCanvasConnectionPort(endpoints) {
11380
+ function mapLegacyEndpointsToCanvasConnectionPort(endpoints, endpointNames = []) {
11360
11381
  if (typeof endpoints === "string") {
11361
11382
  console.warn("Node endpoints have not been evaluated", endpoints);
11362
11383
  return [];
@@ -11364,7 +11385,7 @@ function mapLegacyEndpointsToCanvasConnectionPort(endpoints) {
11364
11385
  return endpoints.map((endpoint, endpointIndex) => {
11365
11386
  const typeValue = typeof endpoint === "string" ? endpoint : endpoint.type;
11366
11387
  const type = isValidNodeConnectionType(typeValue) ? typeValue : NodeConnectionType.Main;
11367
- const label2 = typeof endpoint === "string" ? void 0 : endpoint.displayName;
11388
+ const label2 = typeof endpoint === "string" ? endpointNames[endpointIndex] : endpoint.displayName;
11368
11389
  const index = endpoints.slice(0, endpointIndex + 1).filter((e) => (typeof e === "string" ? e : e.type) === type).length - 1;
11369
11390
  const required = typeof endpoint === "string" ? false : endpoint.required;
11370
11391
  return {
@@ -11578,7 +11599,7 @@ const useNodeCreatorStore = defineStore(STORES.NODE_CREATOR, () => {
11578
11599
  };
11579
11600
  });
11580
11601
  const _hoisted_1$5 = ["textContent"];
11581
- const _sfc_main$o = /* @__PURE__ */ defineComponent({
11602
+ const _sfc_main$p = /* @__PURE__ */ defineComponent({
11582
11603
  __name: "CanvasAddButton",
11583
11604
  props: {
11584
11605
  showTooltip: { type: Boolean },
@@ -11635,15 +11656,15 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
11635
11656
  const canvasAddButton = "_canvasAddButton_1easi_1";
11636
11657
  const button$1 = "_button_1easi_13";
11637
11658
  const label$4 = "_label_1easi_34";
11638
- const style0$g = {
11659
+ const style0$h = {
11639
11660
  canvasAddButton,
11640
11661
  button: button$1,
11641
11662
  label: label$4
11642
11663
  };
11643
- const cssModules$h = {
11644
- "$style": style0$g
11664
+ const cssModules$i = {
11665
+ "$style": style0$h
11645
11666
  };
11646
- const CanvasAddButton = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__cssModules", cssModules$h]]);
11667
+ const CanvasAddButton = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__cssModules", cssModules$i]]);
11647
11668
  function useCanvasPanning(elementRef, options = {}) {
11648
11669
  const uiStore = useUIStore();
11649
11670
  const moveLastPosition = ref([0, 0]);
@@ -11707,19 +11728,19 @@ function useCanvasPanning(elementRef, options = {}) {
11707
11728
  };
11708
11729
  }
11709
11730
  const LazyNodeCreation = defineAsyncComponent(
11710
- async () => await __vitePreload(() => import("./NodeCreation-D6_T4MHt.js").then((n) => n.N), true ? __vite__mapDeps([54,3,4,5,6,2,7,8,9,10,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,55]) : void 0)
11731
+ async () => await __vitePreload(() => import("./NodeCreation-BEsgZ7Cf.js").then((n) => n.N), true ? __vite__mapDeps([54,3,4,5,6,2,7,8,9,10,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,55]) : void 0)
11711
11732
  );
11712
11733
  const LazyCanvasControls = defineAsyncComponent(
11713
- async () => await __vitePreload(() => import("./CanvasControls-B8k9SN28.js"), true ? __vite__mapDeps([56,2,12,13,3,4,5,6,7,8,9,10,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,57]) : void 0)
11734
+ async () => await __vitePreload(() => import("./CanvasControls-De-tALHG.js"), true ? __vite__mapDeps([56,2,12,13,3,4,5,6,7,8,9,10,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,57]) : void 0)
11714
11735
  );
11715
11736
  const LazySetupWorkflowCredentialsButton = defineAsyncComponent(
11716
- async () => await __vitePreload(() => import("./SetupWorkflowCredentialsButton-BrM3aC_G.js"), true ? __vite__mapDeps([58,2,13,3,4,5,6,7,8,9,10,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33]) : void 0)
11737
+ async () => await __vitePreload(() => import("./SetupWorkflowCredentialsButton-Do3JM2Nk.js"), true ? __vite__mapDeps([58,2,13,3,4,5,6,7,8,9,10,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33]) : void 0)
11717
11738
  );
11718
- const _sfc_main$n = defineComponent({
11739
+ const _sfc_main$o = defineComponent({
11719
11740
  name: "NodeView",
11720
11741
  components: {
11721
11742
  NodeDetailsView: __unplugin_components_2,
11722
- Node: __unplugin_components_0$1,
11743
+ Node: __unplugin_components_0$2,
11723
11744
  Sticky: __unplugin_components_1,
11724
11745
  CanvasAddButton,
11725
11746
  KeyboardShortcutTooltip,
@@ -12549,7 +12570,7 @@ const _sfc_main$n = defineComponent({
12549
12570
  this.canvasStore.startLoading();
12550
12571
  const selectedExecution = this.executionsStore.activeExecution;
12551
12572
  this.resetWorkspace();
12552
- await this.workflowHelpers.initState(workflow);
12573
+ this.workflowHelpers.initState(workflow);
12553
12574
  if (workflow.sharedWithProjects) {
12554
12575
  this.workflowsEEStore.setWorkflowSharedWith({
12555
12576
  workflowId: workflow.id,
@@ -15146,7 +15167,7 @@ const style2 = {
15146
15167
  shake,
15147
15168
  setupCredentialsButtonWrapper
15148
15169
  };
15149
- const _withScopeId = (n) => (pushScopeId("data-v-753c1a3d"), n = n(), popScopeId(), n);
15170
+ const _withScopeId = (n) => (pushScopeId("data-v-8fa6f48d"), n = n(), popScopeId(), n);
15150
15171
  const _hoisted_1$4 = ["textContent"];
15151
15172
  const _hoisted_2$3 = {
15152
15173
  key: 0,
@@ -15154,7 +15175,7 @@ const _hoisted_2$3 = {
15154
15175
  };
15155
15176
  function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
15156
15177
  const _component_CanvasAddButton = resolveComponent("CanvasAddButton");
15157
- const _component_Node = __unplugin_components_0$1;
15178
+ const _component_Node = __unplugin_components_0$2;
15158
15179
  const _component_Sticky = __unplugin_components_1;
15159
15180
  const _component_NodeDetailsView = __unplugin_components_2;
15160
15181
  const _component_LazySetupWorkflowCredentialsButton = resolveComponent("LazySetupWorkflowCredentialsButton");
@@ -15375,11 +15396,11 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
15375
15396
  ], 32)
15376
15397
  ], 2);
15377
15398
  }
15378
- const cssModules$g = {
15399
+ const cssModules$h = {
15379
15400
  "$style": style2
15380
15401
  };
15381
- const NodeViewV1 = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$1], ["__cssModules", cssModules$g], ["__scopeId", "data-v-753c1a3d"]]);
15382
- const _sfc_main$m = {};
15402
+ const NodeViewV1 = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["render", _sfc_render$1], ["__cssModules", cssModules$h], ["__scopeId", "data-v-8fa6f48d"]]);
15403
+ const _sfc_main$n = {};
15383
15404
  function _sfc_render(_ctx, _cache) {
15384
15405
  const _component_N8nButton = resolveComponent("N8nButton");
15385
15406
  return openBlock(), createBlock(_component_N8nButton, {
@@ -15390,13 +15411,94 @@ function _sfc_render(_ctx, _cache) {
15390
15411
  "data-test-id": "workflow-chat-button"
15391
15412
  });
15392
15413
  }
15393
- const __unplugin_components_0 = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render]]);
15414
+ const __unplugin_components_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render]]);
15415
+ const EDGE_PADDING_Y = 140;
15416
+ const EDGE_PADDING_Y_TOP = 80;
15417
+ const EDGE_BORDER_RADIUS = 8;
15418
+ const EDGE_OFFSET = 40;
15419
+ const HANDLE_SIZE = 16;
15420
+ function getCustomPath(props) {
15421
+ const { targetX, targetY, sourceX, sourceY, sourcePosition, targetPosition } = props;
15422
+ const xDiff = targetX - sourceX;
15423
+ const yDiff = targetY - sourceY;
15424
+ if (xDiff < -HANDLE_SIZE && sourcePosition === Position.Right) {
15425
+ const direction = yDiff < -EDGE_PADDING_Y || yDiff > 0 ? "up" : "down";
15426
+ const firstSegmentTargetX = sourceX;
15427
+ const firstSegmentTargetY = sourceY + (direction === "up" ? -EDGE_PADDING_Y_TOP : EDGE_PADDING_Y);
15428
+ const [firstSegmentPath] = getSmoothStepPath({
15429
+ sourceX,
15430
+ sourceY,
15431
+ targetX: firstSegmentTargetX,
15432
+ targetY: firstSegmentTargetY,
15433
+ sourcePosition,
15434
+ targetPosition: Position.Right,
15435
+ borderRadius: EDGE_BORDER_RADIUS,
15436
+ offset: EDGE_OFFSET
15437
+ });
15438
+ const path = getSmoothStepPath({
15439
+ sourceX: firstSegmentTargetX,
15440
+ sourceY: firstSegmentTargetY,
15441
+ targetX,
15442
+ targetY,
15443
+ sourcePosition: Position.Left,
15444
+ targetPosition,
15445
+ borderRadius: EDGE_BORDER_RADIUS,
15446
+ offset: EDGE_OFFSET
15447
+ });
15448
+ path[0] = firstSegmentPath + path[0];
15449
+ return path;
15450
+ }
15451
+ return getBezierPath(props);
15452
+ }
15453
+ const _sfc_main$m = /* @__PURE__ */ defineComponent({
15454
+ __name: "CanvasConnectionLine",
15455
+ props: {
15456
+ sourceX: {},
15457
+ sourceY: {},
15458
+ sourcePosition: {},
15459
+ targetX: {},
15460
+ targetY: {},
15461
+ targetPosition: {},
15462
+ sourceNode: {},
15463
+ sourceHandle: {},
15464
+ targetNode: {},
15465
+ targetHandle: {},
15466
+ markerStart: {},
15467
+ markerEnd: {},
15468
+ connectionStatus: {}
15469
+ },
15470
+ setup(__props) {
15471
+ const props = __props;
15472
+ const $style = useCssModule();
15473
+ const edgeStyle = computed(() => ({
15474
+ strokeWidth: 2
15475
+ }));
15476
+ const path = computed(() => getCustomPath(props));
15477
+ return (_ctx, _cache) => {
15478
+ return openBlock(), createBlock(unref(_sfc_main$d$1), {
15479
+ class: normalizeClass(unref($style).edge),
15480
+ style: normalizeStyle(edgeStyle.value),
15481
+ path: path.value[0],
15482
+ "marker-end": _ctx.markerEnd
15483
+ }, null, 8, ["class", "style", "path", "marker-end"]);
15484
+ };
15485
+ }
15486
+ });
15487
+ const edge$1 = "_edge_ujtc6_1";
15488
+ const style0$g = {
15489
+ edge: edge$1
15490
+ };
15491
+ const cssModules$g = {
15492
+ "$style": style0$g
15493
+ };
15494
+ const __unplugin_components_0 = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__cssModules", cssModules$g]]);
15394
15495
  function useCanvasNode() {
15395
15496
  const node2 = inject(CanvasNodeKey);
15396
15497
  const data = computed(
15397
15498
  () => (node2 == null ? void 0 : node2.data.value) ?? {
15398
15499
  id: "",
15399
15500
  name: "",
15501
+ subtitle: "",
15400
15502
  type: "",
15401
15503
  typeVersion: 1,
15402
15504
  disabled: false,
@@ -15417,6 +15519,7 @@ function useCanvasNode() {
15417
15519
  );
15418
15520
  const id = computed(() => (node2 == null ? void 0 : node2.id.value) ?? "");
15419
15521
  const label2 = computed(() => (node2 == null ? void 0 : node2.label.value) ?? "");
15522
+ const subtitle2 = computed(() => data.value.subtitle);
15420
15523
  const name = computed(() => data.value.name);
15421
15524
  const inputs2 = computed(() => data.value.inputs);
15422
15525
  const outputs2 = computed(() => data.value.outputs);
@@ -15438,6 +15541,7 @@ function useCanvasNode() {
15438
15541
  id,
15439
15542
  name,
15440
15543
  label: label2,
15544
+ subtitle: subtitle2,
15441
15545
  inputs: inputs2,
15442
15546
  outputs: outputs2,
15443
15547
  connections: connections2,
@@ -15764,6 +15868,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
15764
15868
  const emit = __emit;
15765
15869
  const {
15766
15870
  label: label2,
15871
+ subtitle: subtitle2,
15767
15872
  inputs: inputs2,
15768
15873
  outputs: outputs2,
15769
15874
  connections: connections2,
@@ -15857,43 +15962,55 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
15857
15962
  class: normalizeClass(unref($style).statusIcons)
15858
15963
  }, null, 8, ["class"]),
15859
15964
  unref(isDisabled) ? (openBlock(), createBlock(CanvasNodeDisabledStrikeThrough, { key: 1 })) : createCommentVNode("", true),
15860
- unref(label2) ? (openBlock(), createElementBlock("div", {
15861
- key: 2,
15862
- class: normalizeClass(unref($style).label)
15965
+ createBaseVNode("div", {
15966
+ class: normalizeClass(unref($style).description)
15863
15967
  }, [
15864
- createTextVNode(toDisplayString(unref(label2)) + " ", 1),
15865
- unref(isDisabled) ? (openBlock(), createElementBlock("div", _hoisted_3$1, "(" + toDisplayString(unref(i18n2).baseText("node.disabled")) + ")", 1)) : createCommentVNode("", true)
15866
- ], 2)) : createCommentVNode("", true)
15968
+ unref(label2) ? (openBlock(), createElementBlock("div", {
15969
+ key: 0,
15970
+ class: normalizeClass(unref($style).label)
15971
+ }, [
15972
+ createTextVNode(toDisplayString(unref(label2)) + " ", 1),
15973
+ unref(isDisabled) ? (openBlock(), createElementBlock("div", _hoisted_3$1, "(" + toDisplayString(unref(i18n2).baseText("node.disabled")) + ")", 1)) : createCommentVNode("", true)
15974
+ ], 2)) : createCommentVNode("", true),
15975
+ unref(subtitle2) ? (openBlock(), createElementBlock("div", {
15976
+ key: 1,
15977
+ class: normalizeClass(unref($style).subtitle)
15978
+ }, toDisplayString(unref(subtitle2)), 3)) : createCommentVNode("", true)
15979
+ ], 2)
15867
15980
  ], 46, _hoisted_1$2);
15868
15981
  };
15869
15982
  }
15870
15983
  });
15871
- const node = "_node_tn88s_1";
15872
- const trigger = "_trigger_tn88s_26";
15873
- const configuration = "_configuration_tn88s_29";
15874
- const statusIcons = "_statusIcons_tn88s_36";
15875
- const configurable = "_configurable_tn88s_39";
15876
- const label$3 = "_label_tn88s_46";
15877
- const selected$1 = "_selected_tn88s_54";
15878
- const success = "_success_tn88s_57";
15879
- const error = "_error_tn88s_60";
15880
- const pinned = "_pinned_tn88s_63";
15881
- const disabled = "_disabled_tn88s_66";
15882
- const running = "_running_tn88s_69";
15883
- const triggerIcon = "_triggerIcon_tn88s_90";
15984
+ const node = "_node_10hrg_1";
15985
+ const trigger = "_trigger_10hrg_26";
15986
+ const configuration = "_configuration_10hrg_29";
15987
+ const statusIcons = "_statusIcons_10hrg_36";
15988
+ const configurable = "_configurable_10hrg_39";
15989
+ const description = "_description_10hrg_46";
15990
+ const selected$1 = "_selected_10hrg_54";
15991
+ const success = "_success_10hrg_57";
15992
+ const error = "_error_10hrg_60";
15993
+ const pinned = "_pinned_10hrg_63";
15994
+ const disabled = "_disabled_10hrg_66";
15995
+ const running = "_running_10hrg_69";
15996
+ const label$3 = "_label_10hrg_86";
15997
+ const subtitle = "_subtitle_10hrg_92";
15998
+ const triggerIcon = "_triggerIcon_10hrg_106";
15884
15999
  const style0$c = {
15885
16000
  node,
15886
16001
  trigger,
15887
16002
  configuration,
15888
16003
  statusIcons,
15889
16004
  configurable,
15890
- label: label$3,
16005
+ description,
15891
16006
  selected: selected$1,
15892
16007
  success,
15893
16008
  error,
15894
16009
  pinned,
15895
16010
  disabled,
15896
16011
  running,
16012
+ label: label$3,
16013
+ subtitle,
15897
16014
  triggerIcon
15898
16015
  };
15899
16016
  const cssModules$c = {
@@ -15940,7 +16057,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
15940
16057
  return (_ctx, _cache) => {
15941
16058
  const _component_N8nSticky = resolveComponent("N8nSticky");
15942
16059
  return openBlock(), createElementBlock(Fragment, null, [
15943
- createVNode(unref(_sfc_main$R), {
16060
+ createVNode(unref(_sfc_main$S), {
15944
16061
  "min-height": 80,
15945
16062
  "min-width": 150,
15946
16063
  height: renderOptions.value.height,
@@ -16545,7 +16662,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
16545
16662
  "onOpen:contextmenu": onOpenContextMenuFromNode
16546
16663
  }, {
16547
16664
  default: withCtx(() => [
16548
- nodeTypeDescription.value ? (openBlock(), createBlock(_sfc_main$P, {
16665
+ nodeTypeDescription.value ? (openBlock(), createBlock(_sfc_main$Q, {
16549
16666
  key: 0,
16550
16667
  "node-type": nodeTypeDescription.value,
16551
16668
  size: nodeIconSize.value,
@@ -16703,8 +16820,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
16703
16820
  fontSize: "var(--font-size-xs)"
16704
16821
  }));
16705
16822
  const edgeToolbarStyle = computed(() => {
16823
+ const [, labelX, labelY] = path.value;
16706
16824
  return {
16707
- transform: `translate(-50%, -50%) translate(${path.value[1]}px,${path.value[2]}px)`
16825
+ transform: `translate(-50%, -50%) translate(${labelX}px,${labelY}px)`
16708
16826
  };
16709
16827
  });
16710
16828
  const edgeToolbarClasses = computed(() => ({
@@ -16713,16 +16831,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
16713
16831
  nodrag: true,
16714
16832
  nopan: true
16715
16833
  }));
16716
- const path = computed(
16717
- () => getBezierPath({
16718
- sourceX: props.sourceX,
16719
- sourceY: props.sourceY,
16720
- sourcePosition: props.sourcePosition,
16721
- targetX: props.targetX,
16722
- targetY: props.targetY,
16723
- targetPosition: props.targetPosition
16724
- })
16725
- );
16834
+ const path = computed(() => getCustomPath(props));
16726
16835
  const connection = computed(() => ({
16727
16836
  source: props.source,
16728
16837
  target: props.target,
@@ -17041,6 +17150,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
17041
17150
  immediate: true
17042
17151
  });
17043
17152
  return (_ctx, _cache) => {
17153
+ const _component_CanvasConnectionLine = __unplugin_components_0;
17044
17154
  return openBlock(), createBlock(unref(_sfc_main$1$1), {
17045
17155
  id: _ctx.id,
17046
17156
  nodes: _ctx.nodes,
@@ -17085,17 +17195,20 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
17085
17195
  onDelete: onDeleteConnection
17086
17196
  }), null, 16, ["read-only", "hovered"])
17087
17197
  ]),
17198
+ "connection-line": withCtx((connectionLineProps) => [
17199
+ createVNode(_component_CanvasConnectionLine, normalizeProps(guardReactiveProps(connectionLineProps)), null, 16)
17200
+ ]),
17088
17201
  default: withCtx(() => [
17089
- createVNode(unref(_sfc_main$S), {
17202
+ createVNode(unref(_sfc_main$T), {
17090
17203
  "data-test-id": "canvas-background",
17091
17204
  "pattern-color": "#aaa",
17092
- gap: 16
17093
- }),
17094
- createVNode(unref(_sfc_main$T), {
17205
+ gap: unref(GRID_SIZE)
17206
+ }, null, 8, ["gap"]),
17207
+ createVNode(unref(_sfc_main$U), {
17095
17208
  "data-test-id": "canvas-minimap",
17096
17209
  pannable: ""
17097
17210
  }),
17098
- createVNode(unref(_sfc_main$U), {
17211
+ createVNode(unref(_sfc_main$V), {
17099
17212
  "data-test-id": "canvas-controls",
17100
17213
  class: normalizeClass(unref($style).canvasControls),
17101
17214
  position: _ctx.controlsPosition,
@@ -17132,6 +17245,7 @@ function useCanvasMapping({
17132
17245
  const i18n2 = useI18n();
17133
17246
  const workflowsStore = useWorkflowsStore();
17134
17247
  const nodeTypesStore = useNodeTypesStore();
17248
+ const nodeHelpers = useNodeHelpers();
17135
17249
  function createStickyNoteRenderType(node2) {
17136
17250
  return {
17137
17251
  type: CanvasNodeRenderType.StickyNote,
@@ -17174,30 +17288,49 @@ function useCanvasMapping({
17174
17288
  return acc;
17175
17289
  }, {}) ?? {}
17176
17290
  );
17291
+ const nodeSubtitleById = computed(() => {
17292
+ return nodes.value.reduce((acc, node2) => {
17293
+ try {
17294
+ const nodeTypeDescription = nodeTypesStore.getNodeType(node2.type, node2.typeVersion);
17295
+ if (!nodeTypeDescription) {
17296
+ return acc;
17297
+ }
17298
+ const nodeSubtitle = nodeHelpers.getNodeSubtitle(node2, nodeTypeDescription, workflowObject.value) ?? "";
17299
+ if (nodeSubtitle.includes(CUSTOM_API_CALL_KEY)) {
17300
+ return acc;
17301
+ }
17302
+ acc[node2.id] = nodeSubtitle;
17303
+ } catch (e) {
17304
+ }
17305
+ return acc;
17306
+ }, {});
17307
+ });
17177
17308
  const nodeInputsById = computed(
17178
17309
  () => nodes.value.reduce((acc, node2) => {
17179
- const nodeTypeDescription = nodeTypesStore.getNodeType(node2.type);
17310
+ const nodeTypeDescription = nodeTypesStore.getNodeType(node2.type, node2.typeVersion);
17180
17311
  const workflowObjectNode = workflowObject.value.getNode(node2.name);
17181
17312
  acc[node2.id] = workflowObjectNode && nodeTypeDescription ? mapLegacyEndpointsToCanvasConnectionPort(
17182
17313
  getNodeInputs(
17183
17314
  workflowObject.value,
17184
17315
  workflowObjectNode,
17185
17316
  nodeTypeDescription
17186
- )
17317
+ ),
17318
+ nodeTypeDescription.inputNames ?? []
17187
17319
  ) : [];
17188
17320
  return acc;
17189
17321
  }, {})
17190
17322
  );
17191
17323
  const nodeOutputsById = computed(
17192
17324
  () => nodes.value.reduce((acc, node2) => {
17193
- const nodeTypeDescription = nodeTypesStore.getNodeType(node2.type);
17325
+ const nodeTypeDescription = nodeTypesStore.getNodeType(node2.type, node2.typeVersion);
17194
17326
  const workflowObjectNode = workflowObject.value.getNode(node2.name);
17195
17327
  acc[node2.id] = workflowObjectNode && nodeTypeDescription ? mapLegacyEndpointsToCanvasConnectionPort(
17196
17328
  getNodeOutputs(
17197
17329
  workflowObject.value,
17198
17330
  workflowObjectNode,
17199
17331
  nodeTypeDescription
17200
- )
17332
+ ),
17333
+ nodeTypeDescription.outputNames ?? []
17201
17334
  ) : [];
17202
17335
  return acc;
17203
17336
  }, {})
@@ -17235,8 +17368,8 @@ function useCanvasMapping({
17235
17368
  if (nodeExecutionRunData) {
17236
17369
  nodeExecutionRunData.forEach((executionRunData) => {
17237
17370
  if (executionRunData == null ? void 0 : executionRunData.error) {
17238
- const { message, description } = executionRunData.error;
17239
- const issue = `${message}${description ? ` (${description})` : ""}`;
17371
+ const { message, description: description2 } = executionRunData.error;
17372
+ const issue = `${message}${description2 ? ` (${description2})` : ""}`;
17240
17373
  issues2.push(sanitizeHtml(issue));
17241
17374
  }
17242
17375
  });
@@ -17305,6 +17438,7 @@ function useCanvasMapping({
17305
17438
  const data = {
17306
17439
  id: node2.id,
17307
17440
  name: node2.name,
17441
+ subtitle: nodeSubtitleById.value[node2.id] ?? "",
17308
17442
  type: node2.type,
17309
17443
  typeVersion: node2.typeVersion,
17310
17444
  disabled: !!node2.disabled,
@@ -17354,7 +17488,8 @@ function useCanvasMapping({
17354
17488
  data,
17355
17489
  type,
17356
17490
  label: label2,
17357
- animated: data.status === "running"
17491
+ animated: data.status === "running",
17492
+ markerEnd: MarkerType.ArrowClosed
17358
17493
  };
17359
17494
  }
17360
17495
  );
@@ -17423,7 +17558,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
17423
17558
  workflow: {},
17424
17559
  workflowObject: {},
17425
17560
  fallbackNodes: { default: () => [] },
17426
- eventBus: {},
17561
+ eventBus: { default: () => createEventBus() },
17427
17562
  readOnly: { type: Boolean }
17428
17563
  },
17429
17564
  setup(__props) {
@@ -17536,6 +17671,7 @@ function useCanvasOperations({ router }) {
17536
17671
  const externalHooks = useExternalHooks();
17537
17672
  const clipboard = useClipboard();
17538
17673
  const lastClickPosition = ref([0, 0]);
17674
+ const preventOpeningNDV = !!localStorage.getItem("NodeView.preventOpeningNDV");
17539
17675
  const editableWorkflow = computed(() => workflowsStore.workflow);
17540
17676
  const editableWorkflowObject = computed(() => workflowsStore.getCurrentWorkflow());
17541
17677
  const triggerNodes = computed(() => {
@@ -17746,21 +17882,45 @@ function useCanvasOperations({ router }) {
17746
17882
  }
17747
17883
  historyStore.stopRecordingUndo();
17748
17884
  }
17885
+ function requireNodeTypeDescription(type, version) {
17886
+ const nodeTypeDescription = nodeTypesStore.getNodeType(type, version);
17887
+ if (!nodeTypeDescription) {
17888
+ throw new Error(
17889
+ i18n2.baseText("nodeView.showMessage.addNodeButton.message", {
17890
+ interpolate: { nodeTypeName: type }
17891
+ })
17892
+ );
17893
+ }
17894
+ return nodeTypeDescription;
17895
+ }
17749
17896
  async function addNodes2(nodes, options = {}) {
17750
17897
  let insertPosition = options.position;
17751
17898
  let lastAddedNode;
17752
17899
  if (options.trackBulk) {
17753
17900
  historyStore.startRecordingUndo();
17754
17901
  }
17755
- for (const nodeAddData of nodes) {
17902
+ const nodesWithTypeVersion = nodes.map((node2) => {
17903
+ const typeVersion = resolveNodeVersion(requireNodeTypeDescription(node2.type));
17904
+ return {
17905
+ ...node2,
17906
+ typeVersion
17907
+ };
17908
+ });
17909
+ await loadNodeTypesProperties(nodesWithTypeVersion);
17910
+ if (options.trackBulk) {
17911
+ historyStore.startRecordingUndo();
17912
+ }
17913
+ for (const nodeAddData of nodesWithTypeVersion) {
17756
17914
  const { isAutoAdd, openDetail: openNDV, ...node2 } = nodeAddData;
17757
17915
  const position2 = node2.position ?? insertPosition;
17916
+ const nodeTypeDescription = requireNodeTypeDescription(node2.type, node2.typeVersion);
17758
17917
  try {
17759
- lastAddedNode = await addNode(
17918
+ lastAddedNode = addNode(
17760
17919
  {
17761
17920
  ...node2,
17762
17921
  position: position2
17763
17922
  },
17923
+ nodeTypeDescription,
17764
17924
  {
17765
17925
  ...options,
17766
17926
  openNDV,
@@ -17783,6 +17943,9 @@ function useCanvasOperations({ router }) {
17783
17943
  if (options.trackBulk) {
17784
17944
  historyStore.stopRecordingUndo();
17785
17945
  }
17946
+ if (!options.keepPristine) {
17947
+ uiStore.stateIsDirty = true;
17948
+ }
17786
17949
  }
17787
17950
  function updatePositionForNodeWithMultipleInputs(node2) {
17788
17951
  const inputNodes = editableWorkflowObject.value.getParentNodesByDepth(node2.name, 1);
@@ -17798,15 +17961,7 @@ function useCanvasOperations({ router }) {
17798
17961
  });
17799
17962
  }
17800
17963
  }
17801
- async function addNode(node2, options = {}) {
17802
- const nodeTypeDescription = nodeTypesStore.getNodeType(node2.type);
17803
- if (!nodeTypeDescription) {
17804
- throw new Error(
17805
- i18n2.baseText("nodeView.showMessage.addNodeButton.message", {
17806
- interpolate: { nodeTypeName: node2.type }
17807
- })
17808
- );
17809
- }
17964
+ function addNode(node2, nodeTypeDescription, options = {}) {
17810
17965
  if (nodeTypeDescription.maxNodes !== void 0 && workflowHelpers.getNodeTypeCount(node2.type) >= nodeTypeDescription.maxNodes) {
17811
17966
  throw new Error(
17812
17967
  i18n2.baseText("nodeView.showMessage.showMaxNodeTypeError.message", {
@@ -17815,28 +17970,25 @@ function useCanvasOperations({ router }) {
17815
17970
  })
17816
17971
  );
17817
17972
  }
17818
- const nodeData = await resolveNodeData(node2, nodeTypeDescription);
17973
+ const nodeData = resolveNodeData(node2, nodeTypeDescription);
17819
17974
  if (!nodeData) {
17820
17975
  throw new Error(i18n2.baseText("nodeViewV2.showError.failedToCreateNode"));
17821
17976
  }
17822
- historyStore.startRecordingUndo();
17823
- if (options.trackHistory) {
17824
- historyStore.pushCommandToUndo(new AddNodeCommand(nodeData));
17825
- }
17826
- workflowsStore.addNode(nodeData);
17827
17977
  nodeHelpers.matchCredentials(nodeData);
17828
- if (!options.isAutoAdd) {
17829
- createConnectionToLastInteractedWithNode(nodeData, options);
17830
- }
17831
- runAddNodeHooks(nodeData, options);
17832
- historyStore.stopRecordingUndo();
17833
- workflowsStore.setNodePristine(nodeData.name, true);
17834
- uiStore.stateIsDirty = true;
17835
- if (options.openNDV) {
17836
- void nextTick(() => {
17978
+ void nextTick(() => {
17979
+ if (options.trackHistory) {
17980
+ historyStore.pushCommandToUndo(new AddNodeCommand(nodeData));
17981
+ }
17982
+ workflowsStore.addNode(nodeData);
17983
+ if (!options.isAutoAdd) {
17984
+ createConnectionToLastInteractedWithNode(nodeData, options);
17985
+ }
17986
+ runAddNodeHooks(nodeData, options);
17987
+ if (options.openNDV && !preventOpeningNDV) {
17837
17988
  ndvStore.setActiveNodeName(nodeData.name);
17838
- });
17839
- }
17989
+ }
17990
+ });
17991
+ workflowsStore.setNodePristine(nodeData.name, true);
17840
17992
  return nodeData;
17841
17993
  }
17842
17994
  async function revertAddNode(nodeName) {
@@ -17940,11 +18092,11 @@ function useCanvasOperations({ router }) {
17940
18092
  }
17941
18093
  telemetry.trackNodesPanel("nodeView.addNodeButton", trackProperties);
17942
18094
  }
17943
- async function resolveNodeData(node2, nodeTypeDescription) {
18095
+ function resolveNodeData(node2, nodeTypeDescription) {
17944
18096
  const id = node2.id ?? v4();
17945
18097
  const name = node2.name ?? nodeTypeDescription.defaults.name;
17946
18098
  const type = nodeTypeDescription.name;
17947
- const typeVersion = resolveNodeVersion(nodeTypeDescription);
18099
+ const typeVersion = node2.typeVersion;
17948
18100
  const position2 = resolveNodePosition(node2, nodeTypeDescription);
17949
18101
  const disabled2 = node2.disabled ?? false;
17950
18102
  const parameters = node2.parameters ?? {};
@@ -17958,20 +18110,19 @@ function useCanvasOperations({ router }) {
17958
18110
  disabled: disabled2,
17959
18111
  parameters
17960
18112
  };
17961
- await loadNodeTypesProperties([{ name: nodeData.type, version: nodeData.typeVersion }]);
17962
18113
  resolveNodeParameters(nodeData);
17963
18114
  resolveNodeCredentials(nodeData, nodeTypeDescription);
17964
18115
  resolveNodeName(nodeData);
17965
18116
  resolveNodeWebhook(nodeData, nodeTypeDescription);
17966
18117
  return nodeData;
17967
18118
  }
17968
- async function loadNodeTypesProperties(nodeInfos) {
18119
+ async function loadNodeTypesProperties(nodes) {
17969
18120
  const allNodeTypeDescriptions = nodeTypesStore.allNodeTypes;
17970
18121
  const nodesToBeFetched = [];
17971
18122
  allNodeTypeDescriptions.forEach((nodeTypeDescription) => {
17972
18123
  const nodeVersions = Array.isArray(nodeTypeDescription.version) ? nodeTypeDescription.version : [nodeTypeDescription.version];
17973
- if (!!nodeInfos.find(
17974
- (n) => n.name === nodeTypeDescription.name && nodeVersions.includes(n.version)
18124
+ if (!!nodes.find(
18125
+ (n) => n.type === nodeTypeDescription.name && nodeVersions.includes(n.typeVersion)
17975
18126
  ) && !nodeTypeDescription.hasOwnProperty("properties")) {
17976
18127
  nodesToBeFetched.push({
17977
18128
  name: nodeTypeDescription.name,
@@ -18305,7 +18456,7 @@ function useCanvasOperations({ router }) {
18305
18456
  }
18306
18457
  return false;
18307
18458
  }
18308
- async function addConnections(connections2) {
18459
+ function addConnections(connections2) {
18309
18460
  for (const { source, target: target2, data } of connections2) {
18310
18461
  createConnection({
18311
18462
  source,
@@ -18341,8 +18492,8 @@ function useCanvasOperations({ router }) {
18341
18492
  nodeHelpers.credentialsUpdated.value = false;
18342
18493
  }
18343
18494
  async function initializeWorkspace(data) {
18344
- await workflowHelpers.initState(data);
18345
- await addNodes2(data.nodes);
18495
+ workflowHelpers.initState(data);
18496
+ await addNodes2(data.nodes, { keepPristine: true });
18346
18497
  workflowsStore.setConnections(data.connections);
18347
18498
  }
18348
18499
  function removeUnknownCredentials(workflow) {
@@ -18446,7 +18597,7 @@ function useCanvasOperations({ router }) {
18446
18597
  }
18447
18598
  historyStore.startRecordingUndo();
18448
18599
  await addNodes2(Object.values(tempWorkflow.nodes));
18449
- await addConnections(
18600
+ addConnections(
18450
18601
  mapLegacyConnectionsToCanvasConnections(
18451
18602
  tempWorkflow.connectionsBySourceNode,
18452
18603
  Object.values(tempWorkflow.nodes)
@@ -18655,6 +18806,7 @@ function useCanvasOperations({ router }) {
18655
18806
  editableWorkflow,
18656
18807
  editableWorkflowObject,
18657
18808
  triggerNodes,
18809
+ requireNodeTypeDescription,
18658
18810
  addNodes: addNodes2,
18659
18811
  addNode,
18660
18812
  revertAddNode,
@@ -18749,7 +18901,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
18749
18901
  __name: "NodeView.v2",
18750
18902
  setup(__props) {
18751
18903
  const LazyNodeCreation2 = defineAsyncComponent(
18752
- async () => await __vitePreload(() => import("./NodeCreation-D6_T4MHt.js").then((n) => n.N), true ? __vite__mapDeps([54,3,4,5,6,2,7,8,9,10,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,55]) : void 0)
18904
+ async () => await __vitePreload(() => import("./NodeCreation-BEsgZ7Cf.js").then((n) => n.N), true ? __vite__mapDeps([54,3,4,5,6,2,7,8,9,10,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,55]) : void 0)
18753
18905
  );
18754
18906
  const LazyNodeDetailsView = defineAsyncComponent(
18755
18907
  async () => await __vitePreload(() => Promise.resolve().then(() => NodeDetailsView), true ? void 0 : void 0)
@@ -19306,8 +19458,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
19306
19458
  }
19307
19459
  };
19308
19460
  });
19309
- await addConnections(mappedConnections);
19310
- uiStore.resetLastInteractedWith();
19461
+ addConnections(mappedConnections);
19462
+ void nextTick(() => {
19463
+ uiStore.resetLastInteractedWith();
19464
+ });
19311
19465
  }
19312
19466
  async function onRevertAddNode({ node: node2 }) {
19313
19467
  await revertAddNode(node2.name);
@@ -19726,7 +19880,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
19726
19880
  removeWorkflowSavedEventBindings();
19727
19881
  });
19728
19882
  return (_ctx, _cache) => {
19729
- const _component_CanvasChatButton = __unplugin_components_0;
19883
+ const _component_CanvasChatButton = __unplugin_components_0$1;
19730
19884
  return unref(editableWorkflow) && unref(editableWorkflowObject) && !isLoading.value ? (openBlock(), createBlock(WorkflowCanvas, {
19731
19885
  key: 0,
19732
19886
  workflow: unref(editableWorkflow),