n8n-editor-ui 1.56.0 → 1.57.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 (104) hide show
  1. package/dist/assets/@vue-flow/{background-_Zw85-vf.js → background-Cs_KhuIs.js} +2 -2
  2. package/dist/assets/@vue-flow/{controls-Cvh307dC.js → controls-DN_qYfUs.js} +2 -2
  3. package/dist/assets/@vue-flow/{core-Du7k5uW6.js → core-B3xjPof0.js} +1 -1
  4. package/dist/assets/@vue-flow/{minimap-BjAqrjdG.js → minimap-Bbba1Snt.js} +2 -2
  5. package/dist/assets/@vue-flow/{node-resizer-B1pjSu9a.js → node-resizer-C8R17lSK.js} +2 -2
  6. package/dist/assets/@vueuse/{core--FBPUsui.js → core-C-N7SOS8.js} +2 -2
  7. package/dist/assets/{AuthView-CFShzEma.js → AuthView-CqcftqAH.js} +4 -4
  8. package/dist/assets/{CanvasControls-DbRWTsgU.js → CanvasControls-Besc3nk2.js} +11 -10
  9. package/dist/assets/{ChangePasswordView-wpPnV0e2.js → ChangePasswordView-BK5O6qCb.js} +12 -11
  10. package/dist/assets/{CredentialsView-DnLAgAS9.js → CredentialsView-DEI5jVSq.js} +14 -13
  11. package/dist/assets/{ErrorView-BARfgEF2.js → ErrorView-Cb9Ev7Dj.js} +11 -10
  12. package/dist/assets/{ExecutionsFilter-nnMEaH4P.js → ExecutionsFilter-Y7dLoQFk.js} +3 -3
  13. package/dist/assets/{ExecutionsView-DNCSuqOx.js → ExecutionsView-DcUlsJSr.js} +14 -13
  14. package/dist/assets/{FixedCollectionParameter-DRflXSzv.js → FixedCollectionParameter-DMEv9len.js} +13 -12
  15. package/dist/assets/{FixedCollectionParameter-Di5qPs1r.css → FixedCollectionParameter-fI2wTyfY.css} +10 -10
  16. package/dist/assets/{ForgotMyPasswordView-elB3uMVx.js → ForgotMyPasswordView-CrINAbmV.js} +12 -11
  17. package/dist/assets/{MainHeader-CQUrE65a.css → MainHeader-CHYc_PZ4.css} +16 -16
  18. package/dist/assets/{MainHeader-DcwXOsi4.js → MainHeader-CnFMyNl3.js} +25 -24
  19. package/dist/assets/{MainSidebar-Dld3B7Bu.js → MainSidebar-DnSIEh1g.js} +12 -11
  20. package/dist/assets/{NodeCreation-flnxFWcn.js → NodeCreation-B-ZsOH-L.js} +6 -6
  21. package/dist/assets/{NodeCreator-D5YX7Z7n.js → NodeCreator-DDYJt0Ze.js} +25 -24
  22. package/dist/assets/{NodeViewSwitcher-BDq5Bd4L.css → NodeViewSwitcher-BnlgGD0J.css} +319 -212
  23. package/dist/assets/{NodeViewSwitcher-Ccma3pLE.js → NodeViewSwitcher-D6nuSKAB.js} +1277 -1061
  24. package/dist/assets/{ProjectCardBadge-SUl9KOVA.js → ProjectCardBadge-CFNf-mDJ.js} +2 -2
  25. package/dist/assets/{ProjectSettings-CmigqI17.js → ProjectSettings-ML67RJOi.js} +12 -11
  26. package/dist/assets/{ProjectTabs-ClIjil5V.js → ProjectTabs-Cknn_GgB.js} +3 -3
  27. package/dist/assets/{PushConnectionTracker-D5l4D9-t.js → PushConnectionTracker-CWhTRNCw.js} +4 -4
  28. package/dist/assets/{ResourcesListLayout-CPyWCIi1.css → ResourcesListLayout-DAvOygN7.css} +8 -8
  29. package/dist/assets/{ResourcesListLayout-Dx5Hg5cl.js → ResourcesListLayout-eqk9xNhc.js} +6 -6
  30. package/dist/assets/{RunDataAi-B5qgU5_2.js → RunDataAi-B3Q65dEL.js} +11 -10
  31. package/dist/assets/{RunDataJson-P0yEohIY.js → RunDataJson-C-dseNta.js} +14 -13
  32. package/dist/assets/{RunDataJsonActions-CNwUxTCH.js → RunDataJsonActions-KBZ7hfZN.js} +12 -11
  33. package/dist/assets/{RunDataSearch-Cq60VG7b.js → RunDataSearch-tlq4S7N-.js} +11 -10
  34. package/dist/assets/{RunDataTable-vo-QDjQp.js → RunDataTable-D-c1L5v9.js} +11 -10
  35. package/dist/assets/{SamlOnboarding-EQUk8_FO.js → SamlOnboarding-DHXokg4W.js} +12 -11
  36. package/dist/assets/{SettingsApiView-B3DCRNRf.js → SettingsApiView-hxxnxNIb.js} +11 -10
  37. package/dist/assets/{SettingsCommunityNodesView-BQLd-Vv4.js → SettingsCommunityNodesView-DjmPzymy.js} +13 -12
  38. package/dist/assets/{SettingsExternalSecrets-BY7Gmlu7.js → SettingsExternalSecrets-Cw-mURA4.js} +11 -10
  39. package/dist/assets/{SettingsFakeDoorView-C73Zx1uf.js → SettingsFakeDoorView-Coj99HjT.js} +11 -10
  40. package/dist/assets/{SettingsLdapView-BYryrUxl.js → SettingsLdapView-C5vB_u72.js} +13 -12
  41. package/dist/assets/{SettingsLogStreamingView-CTnTUeMi.js → SettingsLogStreamingView-BaWNNhIO.js} +11 -10
  42. package/dist/assets/{SettingsPersonalView-DAB7SQeS.js → SettingsPersonalView-F5OtxFhW.js} +11 -10
  43. package/dist/assets/{SettingsSourceControl-NIm8K_Ae.js → SettingsSourceControl-CJ5r15dK.js} +11 -10
  44. package/dist/assets/{SettingsSso-CfNmruiW.js → SettingsSso-BrfSzt16.js} +11 -10
  45. package/dist/assets/{SettingsUsageAndPlan-CkQM7UBR.js → SettingsUsageAndPlan-Gqra3R0E.js} +11 -10
  46. package/dist/assets/{SettingsUsersView-SjYi7W6F.js → SettingsUsersView-BibKm0uw.js} +11 -10
  47. package/dist/assets/{SettingsView-B60qcNQS.js → SettingsView-_a_GTA-g.js} +12 -11
  48. package/dist/assets/{SetupView-DtM0NGEa.js → SetupView-B8mzwREj.js} +12 -11
  49. package/dist/assets/{SetupWorkflowCredentialsButton-DQy479iH.js → SetupWorkflowCredentialsButton-C2wXpCdh.js} +11 -10
  50. package/dist/assets/{SetupWorkflowFromTemplateView-Dd2BV_8m.js → SetupWorkflowFromTemplateView-D6O8INhE.js} +13 -12
  51. package/dist/assets/{SigninView-fIEm0gkh.js → SigninView-DKkeDUtH.js} +12 -11
  52. package/dist/assets/{SignoutView-C0CdcdFA.js → SignoutView-BjQlWgFQ.js} +11 -10
  53. package/dist/assets/{SignupView-ChdoY0rY.js → SignupView-O9mgfKQh.js} +12 -11
  54. package/dist/assets/{TemplateDetails-D1eYnBIu.js → TemplateDetails-rbYl7ZHO.js} +4 -4
  55. package/dist/assets/{TemplateList-DYNwBubl.js → TemplateList-4qO5UWYI.js} +3 -3
  56. package/dist/assets/{TemplatesCollectionView-BqASvNIs.js → TemplatesCollectionView-CxLg3AfW.js} +15 -14
  57. package/dist/assets/{TemplatesSearchView-D_sufC2H.js → TemplatesSearchView-C7iabuV8.js} +14 -13
  58. package/dist/assets/{TemplatesView-MHevk2rV.js → TemplatesView-C_ljCT59.js} +3 -3
  59. package/dist/assets/{TemplatesWorkflowView-Bfb6e5F6.js → TemplatesWorkflowView-j-AraUuj.js} +15 -14
  60. package/dist/assets/{VariablesView-S_xmITWo.js → VariablesView-CS5qD4nw.js} +12 -11
  61. package/dist/assets/{WorkerView-BHAonFab.js → WorkerView-Adh7mkGw.js} +15 -14
  62. package/dist/assets/{WorkflowActivator-CKPNGA7m.js → WorkflowActivator-BSG90j8i.js} +4 -4
  63. package/dist/assets/{WorkflowExecutionsInfoAccordion-BSOecUlA.js → WorkflowExecutionsInfoAccordion-z-P6winD.js} +3 -3
  64. package/dist/assets/{WorkflowExecutionsLandingPage-B-yz-vNe.js → WorkflowExecutionsLandingPage-BywskSzl.js} +12 -11
  65. package/dist/assets/{WorkflowExecutionsPreview-CL1YTLg5.js → WorkflowExecutionsPreview-Bw3RnbrX.js} +15 -14
  66. package/dist/assets/{WorkflowExecutionsView-BpyNNQnn.js → WorkflowExecutionsView-KGfJTF01.js} +15 -14
  67. package/dist/assets/{WorkflowHistory-CxMRgfsl.js → WorkflowHistory-TdbKbeFT.js} +13 -12
  68. package/dist/assets/{WorkflowOnboardingView-CtMFSGaS.js → WorkflowOnboardingView-C5BrBTek.js} +11 -10
  69. package/dist/assets/{WorkflowPreview-Ny12N4h2.js → WorkflowPreview-DjH7tXfj.js} +3 -3
  70. package/dist/assets/{WorkflowsView-C6pmPPBd.js → WorkflowsView-CqmiCNtd.js} +16 -15
  71. package/dist/assets/bowser-C3wWO1p5.js +1947 -0
  72. package/dist/assets/{cloud-CCqVTcpS.js → cloud-DVcstsW2.js} +11 -10
  73. package/dist/assets/{dateFormatter-BLs-6hBq.js → dateFormatter--Jm_2fEm.js} +1 -1
  74. package/dist/assets/{dateformat-BQ7xPnyT.js → dateformat-U_ybGERk.js} +1 -1
  75. package/dist/assets/email-providers-Cebboc1h.js +1 -0
  76. package/dist/assets/{fast-json-stable-stringify-D7OrEcyE.js → fast-json-stable-stringify-DFVeKQSP.js} +1 -1
  77. package/dist/assets/{file-saver-BC4qXfnG.js → file-saver-Kt7b8Ak0.js} +1 -1
  78. package/dist/assets/{humanize-duration-BB4ZAlOr.js → humanize-duration-CgUlcJVm.js} +1 -1
  79. package/dist/assets/{index-BEMjTsUh.css → index-1JP5ktFc.css} +3621 -3505
  80. package/dist/assets/{index-CLI1n-jB.js → index-BMqv_cxE.js} +73636 -73224
  81. package/dist/assets/{jsonpath-CV_SY8H7.js → jsonpath-DlnJGFD7.js} +1 -1
  82. package/dist/assets/{lodash-es-dKZCeUxP.js → lodash-es-kRWQHL5K.js} +6 -6
  83. package/dist/assets/{n8n-CImTAF3S.js → n8n-NifPGZSM.js} +156661 -156657
  84. package/dist/assets/{n8n-B5E4lBZf.css → n8n-OU8f1_-B.css} +4 -4
  85. package/dist/assets/{pinia-CRxmBHO7.js → pinia-DvV9jJ-A.js} +1 -1
  86. package/dist/assets/{pushConnection.store-CPTpOU-5.js → pushConnection.store-BQ8wQOWv.js} +3 -3
  87. package/dist/assets/{qrcode.vue-CfPA0F87.js → qrcode.vue-Di8rc46A.js} +1 -1
  88. package/dist/assets/{templateActions-BIBj7bBw.js → templateActions-CY6KLH9V.js} +1 -1
  89. package/dist/assets/{useExecutionDebugging-C71VIaeO.js → useExecutionDebugging-CjiDOv4V.js} +2 -2
  90. package/dist/assets/{useExecutionHelpers-BCFz29mT.js → useExecutionHelpers-6mVnBCgd.js} +2 -2
  91. package/dist/assets/{usePushConnection-Xf6SoQvd.js → usePushConnection-DmqdJ4p5.js} +6 -6
  92. package/dist/assets/{useUserHelpers-DTMIEOb5.js → useUserHelpers-Bhb_a-iT.js} +1 -1
  93. package/dist/assets/{useWorkflowActivate-BDd0oBIt.js → useWorkflowActivate-BpRa7BDT.js} +2 -2
  94. package/dist/assets/{v3-infinite-loading-DaCFF2Du.js → v3-infinite-loading-BVY6QVQT.js} +1 -1
  95. package/dist/assets/{vendor--ibC2Mep.js → vendor-tVazXwC6.js} +91 -91
  96. package/dist/assets/{vue-agile-DwJe4U62.js → vue-agile-Cf_Be-_o.js} +3 -3
  97. package/dist/assets/{vue-chartjs-UEn6AyOX.js → vue-chartjs-D5H-i6tv.js} +1 -1
  98. package/dist/assets/{vue-i18n-DIALciIu.js → vue-i18n-DNQ-lWfW.js} +1 -1
  99. package/dist/assets/{vue-json-pretty-CFFqJM37.js → vue-json-pretty-CUUthm-2.js} +2 -2
  100. package/dist/assets/xss-Cebboc1h.js +1 -0
  101. package/dist/index.html +13 -12
  102. package/package.json +1 -1
  103. package/dist/assets/email-providers-BwMYmEq4.js +0 -1
  104. package/dist/assets/xss-BwMYmEq4.js +0 -1
@@ -1,25 +1,25 @@
1
- const __vite__fileDeps=["assets/RunDataTable-vo-QDjQp.js","assets/index-CLI1n-jB.js","assets/vendor--ibC2Mep.js","assets/n8n-CImTAF3S.js","assets/lodash-es-dKZCeUxP.js","assets/esprima-next-DUEu30kB.js","assets/axios-B4zXCSve.js","assets/luxon-Bt_g4NOb.js","assets/@vueuse/core--FBPUsui.js","assets/uuid-sKupIUZ4.js","assets/n8n-B5E4lBZf.css","assets/vue-i18n-DIALciIu.js","assets/flatted-D70IerrI.js","assets/pinia-CRxmBHO7.js","assets/@n8n/permissions-BdHAniXb.js","assets/dateformat-BQ7xPnyT.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-D7OrEcyE.js","assets/timeago.js-CgQus8nl.js","assets/qrcode.vue-CfPA0F87.js","assets/vue3-touch-events-DVOgU3fI.js","assets/chart.js-DiBOFLDH.js","assets/index-BEMjTsUh.css","assets/RunDataTable-ZwoYenSI.css","assets/RunDataJson-P0yEohIY.js","assets/vue-json-pretty-CFFqJM37.js","assets/RunDataJson-DGge2zsB.css","assets/RunDataSearch-Cq60VG7b.js","assets/RunDataSearch-BA0wlJtp.css","assets/NodeCreation-flnxFWcn.js","assets/NodeCreation-DaYUHVNB.css","assets/CanvasControls-DbRWTsgU.js","assets/CanvasControls-Gjw5xMXK.css","assets/SetupWorkflowCredentialsButton-DQy479iH.js"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]);
2
- import { r as ref, c as computed, w as watch, d as defineComponent, g as unref, o as openBlock, a as createBlock, j as createBaseVNode, i as createVNode, e as withCtx, n as normalizeClass, a7 as normalizeStyle, a6 as Teleport, q as createCommentVNode, ao as resolveComponent, k as createElementBlock, a2 as Fragment, ag as renderList, t as toDisplayString, s as createTextVNode, aM as useRouter, aB as pushScopeId, aC as popScopeId, m as mergeProps, ah as withKeys, ad as withModifiers, L as nextTick, aa as withDirectives, ab as vShow, N as onMounted, M as onBeforeUnmount, a8 as useSlots, f as renderSlot, I as toRef, aP as defineAsyncComponent, aR as Suspense, ai as createSlots, aW as createStaticVNode, b as resolveDynamicComponent, a9 as Transition, J as getCurrentInstance, av as resolveDirective, aE as useRoute, u as useCssModule, E as inject, h, D as provide, aG as toValue, O as onUnmounted, ak as normalizeProps, as as guardReactiveProps, K as onBeforeMount, aX as onActivated, af as onDeactivated, aY as onBeforeRouteLeave } from "./vendor--ibC2Mep.js";
3
- import { o as onClickOutside, h as useActiveElement, a7 as useEventListener, a6 as useLocalStorage } from "./@vueuse/core--FBPUsui.js";
4
- import { e as useUIStore, a3 as useNodeTypesStore, m as useWorkflowsStore, l as useSourceControlStore, v as useI18n, q as getResourcePermissions, 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 OnClickOutside, ac as useClipboard, p as useWorkflowHelpers, u as useToast, ad as OPEN_URL_PANEL_TRIGGER_NODE_TYPES, ae as PRODUCTION_ONLY_TRIGGER_NODE_TYPES, af as FORM_TRIGGER_NODE_TYPE, ag as CHAT_TRIGGER_NODE_TYPE, K as useNDVStore, ah as isCommunityPackageName, ai as NPM_PACKAGE_DOCS_BASE_URL, aj as BUILTIN_NODES_DOCS_URL, ak as COMMUNITY_NODES_INSTALLATION_DOCS_URL, a2 as useExternalHooks, w as useTelemetry, al as useRunWorkflow, x as useMessage, am as MANUAL_TRIGGER_NODE_TYPE, an as WEBHOOK_NODE_TYPE, A as nodeViewEventBus, C as MODAL_CONFIRM, ao as __unplugin_components_4, ap as _sfc_main$R, aq as useWorkflowsEEStore, ar as useCredentialsStore, as as useHistoryStore, at as CUSTOM_NODES_DOCS_URL, au as MAIN_NODE_PANEL_WIDTH, av as importCurlEventBus, aw as ndvEventBus, ax as RenameNodeCommand, ay as SHOULD_CLEAR_NODE_OUTPUTS, az as __unplugin_components_2$3, Z as useStorage, aA as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, j as useRootStore, aB as useAssistantStore, aC as MAX_DISPLAY_DATA_SIZE, aD as InlineAskAssistantButton, aE as sanitizeHtml, aF as NEW_ASSISTANT_SESSION_MODAL, aG as __unplugin_components_2$4, aH as MAX_DISPLAY_DATA_SIZE_SCHEMA_VIEW, aI as MAX_DISPLAY_ITEMS_AUTO_ALL, aJ as DATA_PINNING_DOCS_URL, aK as DATA_EDITING_DOCS_URL, aL as HTML_NODE_TYPE, aM as executionDataToJson, aN as NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND, aO as isEmpty, aP as LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG, aQ as dataPinningEventBus, aR as LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG, aS as clearJsonKey, aT as searchInObject, aU as TEST_PIN_DATA, aV as useNodeType, aW as START_NODE_TYPE, aX as CRON_NODE_TYPE, aY as INTERVAL_NODE_TYPE, aZ as CopyInput, a_ as isTriggerPanelObject, a$ as getTriggerNodeServiceName, V as VIEWS, F as WORKFLOW_SETTINGS_MODAL_KEY, b as useSettingsStore, b0 as EXECUTABLE_TRIGGER_NODE_TYPES, b1 as BASE_NODE_SURVEY_URL, E as EnterpriseEditionFeature, b2 as NODE_CONNECTION_TYPE_ALLOW_MULTIPLE, b3 as getAnchorPosition, b4 as isValidNodeConnectionType, b5 as getEndpointScope, b6 as getInputEndpointUUID, b7 as getInputEndpointStyle, b8 as getScope, b9 as getInputNameOverlay, ba as NODE_INSERT_SPACER_BETWEEN_INPUT_GROUPS, bb as NODE_MIN_INPUT_ITEMS_COUNT, bc as getOutputEndpointUUID, bd as getOutputEndpointStyle, be as getOutputNameOverlay, bf as NO_OP_NODE_TYPE, bg as GRID_SIZE, k as useCanvasStore, bh as isString, bi as isNumber, bj as assert, bk as QUICKSTART_NOTE_NAME, bl as WAIT_TIME_UNLIMITED, bm as SIMULATE_NODE_TYPE, bn as SIMULATE_TRIGGER_NODE_TYPE, bo as CUSTOM_API_CALL_KEY, bp as EnableNodeToggleCommand, bq as getRelativePosition, br as CORE_NODES_CATEGORY, bs as DEFAULT_SUBCATEGORY, bt as AI_SUBCATEGORY, bu as usePostHog, bv as AI_TRANSFORM_NODE_TYPE, bw as AI_CATEGORY_AGENTS, bx as i18n, _ as useTemplatesStore, by as AI_CATEGORY_CHAINS, bz as AI_NODE_CREATOR_VIEW, bA as AI_OTHERS_NODE_CREATOR_VIEW, bB as AI_CATEGORY_DOCUMENT_LOADERS, bC as AI_CATEGORY_LANGUAGE_MODELS, bD as AI_CATEGORY_MEMORY, bE as AI_CATEGORY_OUTPUTPARSER, bF as AI_CATEGORY_RETRIEVERS, bG as AI_CATEGORY_TEXT_SPLITTERS, bH as AI_CATEGORY_TOOLS, bI as AI_WORKFLOW_TOOL_LANGCHAIN_NODE_TYPE, bJ as AI_CODE_TOOL_LANGCHAIN_NODE_TYPE, bK as AI_CATEGORY_EMBEDDING, bL as AI_CATEGORY_VECTOR_STORES, bM as AI_UNCATEGORIZED_CATEGORY, bN as TRIGGER_NODE_CREATOR_VIEW, bO as EMAIL_IMAP_NODE_TYPE, bP as SCHEDULE_TRIGGER_NODE_TYPE, bQ as EXECUTE_WORKFLOW_TRIGGER_NODE_TYPE, bR as MANUAL_CHAT_TRIGGER_NODE_TYPE, bS as OTHER_TRIGGER_NODES_SUBCATEGORY, bT as SET_NODE_TYPE, bU as CODE_NODE_TYPE, bV as DATETIME_NODE_TYPE, bW as REGULAR_NODE_CREATOR_VIEW, bX as RSS_READ_NODE_TYPE, bY as EMAIL_SEND_NODE_TYPE, bZ as TRANSFORM_DATA_SUBCATEGORY, b_ as FILTER_NODE_TYPE, b$ as REMOVE_DUPLICATES_NODE_TYPE, c0 as SPLIT_OUT_NODE_TYPE, c1 as LIMIT_NODE_TYPE, c2 as SUMMARIZE_NODE_TYPE, c3 as AGGREGATE_NODE_TYPE, c4 as MERGE_NODE_TYPE, c5 as MARKDOWN_NODE_TYPE, c6 as XML_NODE_TYPE, c7 as CRYPTO_NODE_TYPE, c8 as EXTRACT_FROM_FILE_NODE_TYPE, c9 as CONVERT_TO_FILE_NODE_TYPE, ca as COMPRESSION_NODE_TYPE, cb as EDIT_IMAGE_NODE_TYPE, cc as FLOWS_CONTROL_SUBCATEGORY, cd as IF_NODE_TYPE, ce as SPLIT_IN_BATCHES_NODE_TYPE, cf as HELPERS_SUBCATEGORY, cg as HTTP_REQUEST_NODE_TYPE, ch as AI_CATEGORY_ROOT_NODES, ci as AI_CODE_NODE_TYPE, cj as CanvasConnectionMode, ck as isValidCanvasConnectionMode, X as STORES, cl as NODE_CREATOR_OPEN_SOURCES, cm as isVueFlowConnection, cn as MOUSE_EVENT_BUTTON, co as MOUSE_EVENT_BUTTONS, cp as KeyboardShortcutTooltip, cq as useGlobalLinkActions, y as useTitleChange, o as useNpsSurveyStore, n as useProjectsStore, L as useExecutionsStore, cr as useExternalSecretsStore, cs as useEnvironmentsStore, a as useUsersStore, c as useTagsStore, ct as getBackgroundStyles, J as MAIN_HEADER_TABS, Q as sourceControlEventBus, cu as historyBus, P as PLACEHOLDER_EMPTY_WORKFLOW_ID, cv as WORKFLOW_LM_CHAT_MODAL_KEY, cw as N8nAddInputEndpointType, cx as getFixedNodesList, cy as tryToParseNumber, cz as MoveNodeCommand, H as VALID_WORKFLOW_IMPORT_URL_REGEX, cA as UPDATE_WEBHOOK_ID_NODE_TYPES, cB as getNewNodePosition, cC as DRAG_EVENT_DATA_KEY, cD as MAX_X_TO_PUSH_DOWNSTREAM_NODES, cE as PUSH_NODES_OFFSET, cF as NODE_SIZE, cG as resetConnectionAfterPull, cH as resetConnection, cI as moveBackInputLabelPosition, cJ as hideOutputNameLabel, cK as addConnectionActionsOverlay, cL as getOverlay, cM as OVERLAY_ENDPOINT_ARROW_ID, cN as getConnectorPaintStyleData, cO as AddConnectionCommand, cP as addConnectionTestData, cQ as showOrHideItemsLabel, cR as showOrHideMidpointArrow, cS as isJSPlumbConnection, cT as hideConnectionActions, cU as showConnectionActions, cV as resetInputLabelPosition, cW as getConnectionInfo, cX as showOutputNameLabel, cY as RemoveConnectionCommand, cZ as isJSPlumbEndpointElement, c_ as EVENT_PLUS_ENDPOINT_CLICK, c$ as EVENT_ADD_INPUT_ENDPOINT_CLICK, d0 as N8nPlusEndpointType, d1 as CANVAS_AUTO_ADD_MANUAL_TRIGGER_EXPERIMENT, d2 as MODAL_CANCEL, d3 as addClassesToOverlays, d4 as OVERLAY_RUN_ITEMS_ID, d5 as getJSPlumbEndpoints, d6 as RemoveNodeCommand, d7 as useDataSchema, d8 as getNodeViewTab, d9 as getConnectorLengths, da as isElementIntersection, db as calculateElementIntersection, dc as showDropConnectionState, dd as showPullConnectionState, de as CanvasNodeKey, df as CanvasNodeRenderType, dg as CanvasNodeHandleKey, dh as AddNodeCommand } from "./index-CLI1n-jB.js";
5
- import { av as N8nActionDropdown, _ as _export_sfc, aw as nodeIssuesToString, q as getNodeInputs, N as NodeConnectionType, p as getConnectionTypes, ax as isSingleExecution, m as deepCopy, t as getNodeParameters, ay as isINodePropertyCollectionList, az as isINodePropertiesList, aA as isINodePropertyOptionsList, aj as displayParameter, aB as sanitizeHtml$1, aC as sanitizeHtml_1, j as jsonParse, o as getNodeOutputs, aD as getNodeHints, z as __vitePreload, f as createEventBus, aq as useDeviceSupport, au as FontAwesomeIcon, x as xss, n as nodeConnectionTypes, aE as generateNodesGraph, a2 as isSubNodeType, T as N8nTooltip } from "./n8n-CImTAF3S.js";
6
- import { m as mapStores, s as storeToRefs, d as defineStore } from "./pinia-CRxmBHO7.js";
7
- import { g as get, s as set, B as unset, e as isEqual, z as isObject, C as sortBy, D as camelCase, E as difference } from "./lodash-es-dKZCeUxP.js";
8
- import { V as VueJsonPretty } from "./vue-json-pretty-CFFqJM37.js";
9
- import { F as FileSaver_minExports } from "./file-saver-BC4qXfnG.js";
10
- import { c as convertToDisplayDateComponents } from "./dateFormatter-BLs-6hBq.js";
11
- import RunDataAi from "./RunDataAi-B5qgU5_2.js";
12
- import { u as useWorkflowActivate } from "./useWorkflowActivate-BDd0oBIt.js";
1
+ const __vite__fileDeps=["assets/RunDataTable-D-c1L5v9.js","assets/index-BMqv_cxE.js","assets/vendor-tVazXwC6.js","assets/n8n-NifPGZSM.js","assets/esprima-next-DUEu30kB.js","assets/axios-B4zXCSve.js","assets/luxon-Bt_g4NOb.js","assets/lodash-es-kRWQHL5K.js","assets/@vueuse/core-C-N7SOS8.js","assets/uuid-sKupIUZ4.js","assets/n8n-OU8f1_-B.css","assets/flatted-D70IerrI.js","assets/pinia-DvV9jJ-A.js","assets/bowser-C3wWO1p5.js","assets/@n8n/permissions-BdHAniXb.js","assets/dateformat-U_ybGERk.js","assets/vue-i18n-DNQ-lWfW.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-DFVeKQSP.js","assets/timeago.js-CgQus8nl.js","assets/qrcode.vue-Di8rc46A.js","assets/vue3-touch-events-DVOgU3fI.js","assets/chart.js-DiBOFLDH.js","assets/index-1JP5ktFc.css","assets/RunDataTable-ZwoYenSI.css","assets/RunDataJson-C-dseNta.js","assets/vue-json-pretty-CUUthm-2.js","assets/RunDataJson-DGge2zsB.css","assets/RunDataSearch-tlq4S7N-.js","assets/RunDataSearch-BA0wlJtp.css","assets/NodeCreation-B-ZsOH-L.js","assets/NodeCreation-DaYUHVNB.css","assets/CanvasControls-Besc3nk2.js","assets/CanvasControls-Gjw5xMXK.css","assets/SetupWorkflowCredentialsButton-C2wXpCdh.js"],__vite__mapDeps=i=>i.map(i=>__vite__fileDeps[i]);
2
+ import { a as ref, f as computed, b as watch, I as defineComponent, u as unref, J as openBlock, V as createBlock, L as createBaseVNode, a8 as createVNode, a3 as withCtx, _ as normalizeClass, $ as normalizeStyle, Y as Teleport, U as createCommentVNode, an as resolveComponent, K as createElementBlock, R as Fragment, af as renderList, a7 as toDisplayString, a6 as createTextVNode, aM as useRouter, aB as pushScopeId, aC as popScopeId, a0 as mergeProps, ag as withKeys, ac as withModifiers, n as nextTick, a4 as withDirectives, a9 as vShow, q as onMounted, m as onBeforeUnmount, a1 as useSlots, Z as renderSlot, j as toRef, aP as defineAsyncComponent, aR as Suspense, ah as createSlots, aW as createStaticVNode, a5 as resolveDynamicComponent, a2 as Transition, k as getCurrentInstance, au as resolveDirective, h as reactive, x as onUnmounted, aE as useRoute, aA as useCssModule, i as inject, X as h, p as provide, aG as toValue, aj as normalizeProps, ar as guardReactiveProps, l as onBeforeMount, aX as onActivated, ae as onDeactivated, aY as onBeforeRouteLeave } from "./vendor-tVazXwC6.js";
3
+ import { o as onClickOutside, h as useActiveElement, a7 as useEventListener, a6 as useLocalStorage } from "./@vueuse/core-C-N7SOS8.js";
4
+ import { e as useUIStore, a3 as useNodeTypesStore, m as useWorkflowsStore, l as useSourceControlStore, v as useI18n, q as getResourcePermissions, 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$V, ab as OnClickOutside, ac as useClipboard, p as useWorkflowHelpers, u as useToast, ad as OPEN_URL_PANEL_TRIGGER_NODE_TYPES, ae as PRODUCTION_ONLY_TRIGGER_NODE_TYPES, af as FORM_TRIGGER_NODE_TYPE, ag as CHAT_TRIGGER_NODE_TYPE, K as useNDVStore, ah as isCommunityPackageName, ai as NPM_PACKAGE_DOCS_BASE_URL, aj as BUILTIN_NODES_DOCS_URL, ak as COMMUNITY_NODES_INSTALLATION_DOCS_URL, a2 as useExternalHooks, w as useTelemetry, al as useRunWorkflow, x as useMessage, am as MANUAL_TRIGGER_NODE_TYPE, an as WEBHOOK_NODE_TYPE, A as nodeViewEventBus, C as MODAL_CONFIRM, ao as __unplugin_components_4, ap as _sfc_main$W, aq as useWorkflowsEEStore, ar as useCredentialsStore, as as useHistoryStore, at as CUSTOM_NODES_DOCS_URL, au as MAIN_NODE_PANEL_WIDTH, av as importCurlEventBus, aw as ndvEventBus, ax as RenameNodeCommand, ay as SHOULD_CLEAR_NODE_OUTPUTS, az as __unplugin_components_2$3, Z as useStorage, aA as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, j as useRootStore, aB as useAssistantStore, aC as MAX_DISPLAY_DATA_SIZE, aD as InlineAskAssistantButton, aE as sanitizeHtml, aF as NEW_ASSISTANT_SESSION_MODAL, aG as __unplugin_components_2$4, aH as MAX_DISPLAY_DATA_SIZE_SCHEMA_VIEW, aI as MAX_DISPLAY_ITEMS_AUTO_ALL, aJ as DATA_PINNING_DOCS_URL, aK as DATA_EDITING_DOCS_URL, aL as HTML_NODE_TYPE, aM as executionDataToJson, aN as NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND, aO as isEmpty, aP as LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG, aQ as dataPinningEventBus, aR as LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG, aS as clearJsonKey, aT as searchInObject, aU as TEST_PIN_DATA, aV as useNodeType, aW as START_NODE_TYPE, aX as CRON_NODE_TYPE, aY as INTERVAL_NODE_TYPE, aZ as CopyInput, a_ as isTriggerPanelObject, a$ as getTriggerNodeServiceName, V as VIEWS, F as WORKFLOW_SETTINGS_MODAL_KEY, b as useSettingsStore, b0 as EXECUTABLE_TRIGGER_NODE_TYPES, b1 as BASE_NODE_SURVEY_URL, E as EnterpriseEditionFeature, b2 as NODE_CONNECTION_TYPE_ALLOW_MULTIPLE, b3 as getAnchorPosition, b4 as isValidNodeConnectionType, b5 as getEndpointScope, b6 as getInputEndpointUUID, b7 as getInputEndpointStyle, b8 as getScope, b9 as getInputNameOverlay, ba as NODE_INSERT_SPACER_BETWEEN_INPUT_GROUPS, bb as NODE_MIN_INPUT_ITEMS_COUNT, bc as getOutputEndpointUUID, bd as getOutputEndpointStyle, be as getOutputNameOverlay, bf as NO_OP_NODE_TYPE, bg as GRID_SIZE, k as useCanvasStore, bh as isString, bi as isNumber, bj as assert, bk as QUICKSTART_NOTE_NAME, bl as WAIT_TIME_UNLIMITED, bm as SIMULATE_NODE_TYPE, bn as SIMULATE_TRIGGER_NODE_TYPE, bo as CUSTOM_API_CALL_KEY, bp as globalLinkActionsEventBus, bq as getRelativePosition, br as CORE_NODES_CATEGORY, bs as DEFAULT_SUBCATEGORY, bt as AI_SUBCATEGORY, bu as usePostHog, bv as AI_TRANSFORM_NODE_TYPE, bw as AI_CATEGORY_AGENTS, bx as i18n, _ as useTemplatesStore, by as AI_CATEGORY_CHAINS, bz as AI_NODE_CREATOR_VIEW, bA as AI_OTHERS_NODE_CREATOR_VIEW, bB as AI_CATEGORY_DOCUMENT_LOADERS, bC as AI_CATEGORY_LANGUAGE_MODELS, bD as AI_CATEGORY_MEMORY, bE as AI_CATEGORY_OUTPUTPARSER, bF as AI_CATEGORY_RETRIEVERS, bG as AI_CATEGORY_TEXT_SPLITTERS, bH as AI_CATEGORY_TOOLS, bI as AI_WORKFLOW_TOOL_LANGCHAIN_NODE_TYPE, bJ as AI_CODE_TOOL_LANGCHAIN_NODE_TYPE, bK as AI_CATEGORY_EMBEDDING, bL as AI_CATEGORY_VECTOR_STORES, bM as AI_UNCATEGORIZED_CATEGORY, bN as TRIGGER_NODE_CREATOR_VIEW, bO as EMAIL_IMAP_NODE_TYPE, bP as SCHEDULE_TRIGGER_NODE_TYPE, bQ as EXECUTE_WORKFLOW_TRIGGER_NODE_TYPE, bR as MANUAL_CHAT_TRIGGER_NODE_TYPE, bS as OTHER_TRIGGER_NODES_SUBCATEGORY, bT as SET_NODE_TYPE, bU as CODE_NODE_TYPE, bV as DATETIME_NODE_TYPE, bW as REGULAR_NODE_CREATOR_VIEW, bX as RSS_READ_NODE_TYPE, bY as EMAIL_SEND_NODE_TYPE, bZ as TRANSFORM_DATA_SUBCATEGORY, b_ as FILTER_NODE_TYPE, b$ as REMOVE_DUPLICATES_NODE_TYPE, c0 as SPLIT_OUT_NODE_TYPE, c1 as LIMIT_NODE_TYPE, c2 as SUMMARIZE_NODE_TYPE, c3 as AGGREGATE_NODE_TYPE, c4 as MERGE_NODE_TYPE, c5 as MARKDOWN_NODE_TYPE, c6 as XML_NODE_TYPE, c7 as CRYPTO_NODE_TYPE, c8 as EXTRACT_FROM_FILE_NODE_TYPE, c9 as CONVERT_TO_FILE_NODE_TYPE, ca as COMPRESSION_NODE_TYPE, cb as EDIT_IMAGE_NODE_TYPE, cc as FLOWS_CONTROL_SUBCATEGORY, cd as IF_NODE_TYPE, ce as SPLIT_IN_BATCHES_NODE_TYPE, cf as HELPERS_SUBCATEGORY, cg as HTTP_REQUEST_NODE_TYPE, ch as AI_CATEGORY_ROOT_NODES, ci as AI_CODE_NODE_TYPE, cj as CanvasConnectionMode, ck as isValidCanvasConnectionMode, X as STORES, cl as NODE_CREATOR_OPEN_SOURCES, cm as isVueFlowConnection, cn as MOUSE_EVENT_BUTTON, co as MOUSE_EVENT_BUTTONS, cp as KeyboardShortcutTooltip, y as useTitleChange, o as useNpsSurveyStore, n as useProjectsStore, L as useExecutionsStore, cq as useExternalSecretsStore, cr as useEnvironmentsStore, a as useUsersStore, c as useTagsStore, cs as getBackgroundStyles, J as MAIN_HEADER_TABS, Q as sourceControlEventBus, ct as historyBus, P as PLACEHOLDER_EMPTY_WORKFLOW_ID, cu as WORKFLOW_LM_CHAT_MODAL_KEY, cv as N8nAddInputEndpointType, cw as getFixedNodesList, cx as tryToParseNumber, cy as MoveNodeCommand, H as VALID_WORKFLOW_IMPORT_URL_REGEX, cz as UPDATE_WEBHOOK_ID_NODE_TYPES, cA as getNewNodePosition, cB as DRAG_EVENT_DATA_KEY, cC as MAX_X_TO_PUSH_DOWNSTREAM_NODES, cD as PUSH_NODES_OFFSET, cE as NODE_SIZE, cF as resetConnectionAfterPull, cG as resetConnection, cH as moveBackInputLabelPosition, cI as hideOutputNameLabel, cJ as addConnectionActionsOverlay, cK as getOverlay, cL as OVERLAY_ENDPOINT_ARROW_ID, cM as getConnectorPaintStyleData, cN as AddConnectionCommand, cO as addConnectionTestData, cP as showOrHideItemsLabel, cQ as showOrHideMidpointArrow, cR as isJSPlumbConnection, cS as hideConnectionActions, cT as showConnectionActions, cU as resetInputLabelPosition, cV as getConnectionInfo, cW as showOutputNameLabel, cX as RemoveConnectionCommand, cY as isJSPlumbEndpointElement, cZ as EVENT_PLUS_ENDPOINT_CLICK, c_ as EVENT_ADD_INPUT_ENDPOINT_CLICK, c$ as N8nPlusEndpointType, d0 as CANVAS_AUTO_ADD_MANUAL_TRIGGER_EXPERIMENT, d1 as MODAL_CANCEL, d2 as addClassesToOverlays, d3 as OVERLAY_RUN_ITEMS_ID, d4 as getJSPlumbEndpoints, d5 as RemoveNodeCommand, d6 as useDataSchema, d7 as getNodeViewTab, d8 as getConnectorLengths, d9 as isElementIntersection, da as calculateElementIntersection, db as showDropConnectionState, dc as showPullConnectionState, dd as CanvasNodeKey, de as CanvasNodeRenderType, df as CanvasNodeHandleKey, dg as CanvasKey, dh as AddNodeCommand } from "./index-BMqv_cxE.js";
5
+ import { av as N8nActionDropdown, _ as _export_sfc, aw as nodeIssuesToString, w as getNodeInputs, N as NodeConnectionType, v as getConnectionTypes, ax as isSingleExecution, q as deepCopy, y as getNodeParameters, ay as isINodePropertyCollectionList, az as isINodePropertiesList, aA as isINodePropertyOptionsList, al as displayParameter, aB as sanitizeHtml$1, aC as sanitizeHtml_1, j as jsonParse, t as getNodeOutputs, aD as getNodeHints, k as __vitePreload, f as createEventBus, aq as useDeviceSupport, x as xss, au as FontAwesomeIcon, aE as _sfc_main$X, aF as AI_TRANSFORM_NODE_TYPE$1, n as nodeConnectionTypes, aG as generateNodesGraph, a4 as isSubNodeType, V as N8nTooltip } from "./n8n-NifPGZSM.js";
6
+ import { m as mapStores, s as storeToRefs, d as defineStore } from "./pinia-DvV9jJ-A.js";
7
+ import { g as get, s as set, C as unset, e as isEqual, A as isObject, x as sortBy, D as camelCase, E as difference } from "./lodash-es-kRWQHL5K.js";
8
+ import { V as VueJsonPretty } from "./vue-json-pretty-CUUthm-2.js";
9
+ import { F as FileSaver_minExports } from "./file-saver-Kt7b8Ak0.js";
10
+ import { c as convertToDisplayDateComponents } from "./dateFormatter--Jm_2fEm.js";
11
+ import RunDataAi from "./RunDataAi-B3Q65dEL.js";
12
+ import { u as useWorkflowActivate } from "./useWorkflowActivate-BpRa7BDT.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-C71VIaeO.js";
14
+ import { u as useExecutionDebugging } from "./useExecutionDebugging-CjiDOv4V.js";
15
15
  import { v as v4 } from "./uuid-sKupIUZ4.js";
16
- import { u as usePushConnectionStore } from "./pushConnection.store-CPTpOU-5.js";
16
+ import { u as usePushConnectionStore } from "./pushConnection.store-BQ8wQOWv.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 { _ as _sfc_main$S } from "./@vue-flow/controls-Cvh307dC.js";
19
- 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-Du7k5uW6.js";
20
- import { _ as _sfc_main$U } from "./@vue-flow/background-_Zw85-vf.js";
21
- import { _ as _sfc_main$V } from "./@vue-flow/minimap-BjAqrjdG.js";
22
- import { _ as _sfc_main$T } from "./@vue-flow/node-resizer-B1pjSu9a.js";
18
+ import { _ as _sfc_main$Y } from "./@vue-flow/controls-DN_qYfUs.js";
19
+ 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-B3xjPof0.js";
20
+ import { _ as _sfc_main$_ } from "./@vue-flow/background-Cs_KhuIs.js";
21
+ import { _ as _sfc_main$$ } from "./@vue-flow/minimap-Bbba1Snt.js";
22
+ import { _ as _sfc_main$Z } from "./@vue-flow/node-resizer-C8R17lSK.js";
23
23
  const position = ref([0, 0]);
24
24
  const isOpen = ref(false);
25
25
  const target = ref();
@@ -209,7 +209,7 @@ const useContextMenu = (onAction = () => {
209
209
  _dispatchAction
210
210
  };
211
211
  };
212
- const _sfc_main$P = /* @__PURE__ */ defineComponent({
212
+ const _sfc_main$U = /* @__PURE__ */ defineComponent({
213
213
  __name: "ContextMenu",
214
214
  emits: ["action"],
215
215
  setup(__props, { emit: __emit }) {
@@ -286,21 +286,21 @@ const _sfc_main$P = /* @__PURE__ */ defineComponent({
286
286
  });
287
287
  const contextMenu = "_contextMenu_1t4kq_1";
288
288
  const activator = "_activator_1t4kq_5";
289
- const style0$u = {
289
+ const style0$z = {
290
290
  contextMenu,
291
291
  activator
292
292
  };
293
- const cssModules$w = {
294
- "$style": style0$u
293
+ const cssModules$B = {
294
+ "$style": style0$z
295
295
  };
296
- const ContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["__cssModules", cssModules$w]]);
296
+ const ContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["__cssModules", cssModules$B]]);
297
297
  const _hoisted_1$o = ["data-test-id"];
298
298
  const _hoisted_2$h = ["textContent"];
299
299
  const _hoisted_3$d = ["onClick"];
300
- const _hoisted_4$9 = ["onClick"];
301
- const _hoisted_5$a = ["data-node-name"];
300
+ const _hoisted_4$8 = ["onClick"];
301
+ const _hoisted_5$9 = ["data-node-name"];
302
302
  const _hoisted_6$8 = ["onClick"];
303
- const _sfc_main$O = /* @__PURE__ */ defineComponent({
303
+ const _sfc_main$T = /* @__PURE__ */ defineComponent({
304
304
  __name: "NDVSubConnections",
305
305
  props: {
306
306
  rootNode: {}
@@ -501,7 +501,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
501
501
  ]),
502
502
  _: 2
503
503
  }, 1032, ["disabled"])
504
- ], 10, _hoisted_4$9)) : createCommentVNode("", true),
504
+ ], 10, _hoisted_4$8)) : createCommentVNode("", true),
505
505
  connectedNodes2.value[connection.type].length > 0 ? (openBlock(), createElementBlock("div", {
506
506
  key: 1,
507
507
  class: normalizeClass({
@@ -538,7 +538,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
538
538
  class: normalizeClass(_ctx.$style.connectedNode),
539
539
  onClick: ($event) => onNodeClick(node2.node.name, connection.type)
540
540
  }, [
541
- createVNode(_sfc_main$Q, {
541
+ createVNode(_sfc_main$V, {
542
542
  "node-type": node2.nodeType,
543
543
  "node-name": node2.node.name,
544
544
  "tooltip-position": "top",
@@ -549,7 +549,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
549
549
  ]),
550
550
  _: 2
551
551
  }, 1032, ["disabled"]))
552
- ], 14, _hoisted_5$a);
552
+ ], 14, _hoisted_5$9);
553
553
  }), 128))
554
554
  ], 2)) : createCommentVNode("", true)
555
555
  ], 14, _hoisted_3$d)
@@ -576,7 +576,7 @@ const connectedNodesMultiple = "_connectedNodesMultiple_tfxh3_87";
576
576
  const connectedNode$1 = "_connectedNode_tfxh3_55";
577
577
  const connectedNodes = "_connectedNodes_tfxh3_55";
578
578
  const nodeWrapper = "_nodeWrapper_tfxh3_125";
579
- const style0$t = {
579
+ const style0$y = {
580
580
  container: container$3,
581
581
  connections,
582
582
  connectionType,
@@ -591,11 +591,11 @@ const style0$t = {
591
591
  connectedNodes,
592
592
  nodeWrapper
593
593
  };
594
- const cssModules$v = {
595
- "$style": style0$t
594
+ const cssModules$A = {
595
+ "$style": style0$y
596
596
  };
597
- const __unplugin_components_6 = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["__cssModules", cssModules$v]]);
598
- const _sfc_main$N = defineComponent({
597
+ const __unplugin_components_6 = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["__cssModules", cssModules$A]]);
598
+ const _sfc_main$S = defineComponent({
599
599
  name: "NodeWebhooks",
600
600
  props: [
601
601
  "node",
@@ -742,7 +742,7 @@ const _sfc_main$N = defineComponent({
742
742
  }
743
743
  }
744
744
  });
745
- const _withScopeId$6 = (n) => (pushScopeId("data-v-36c5dbc7"), n = n(), popScopeId(), n);
745
+ const _withScopeId$6 = (n) => (pushScopeId("data-v-24fa3e97"), n = n(), popScopeId(), n);
746
746
  const _hoisted_1$n = {
747
747
  key: 0,
748
748
  class: "webhooks"
@@ -752,11 +752,11 @@ const _hoisted_3$c = {
752
752
  key: 0,
753
753
  class: "node-webhooks"
754
754
  };
755
- const _hoisted_4$8 = {
755
+ const _hoisted_4$7 = {
756
756
  key: 0,
757
757
  class: "url-selection"
758
758
  };
759
- const _hoisted_5$9 = {
759
+ const _hoisted_5$8 = {
760
760
  key: 0,
761
761
  class: "webhook-wrapper"
762
762
  };
@@ -773,7 +773,7 @@ const _hoisted_12$2 = {
773
773
  const _hoisted_13$2 = { class: "url-field-full-width" };
774
774
  const _hoisted_14$2 = ["onClick"];
775
775
  const _hoisted_15$2 = /* @__PURE__ */ _withScopeId$6(() => /* @__PURE__ */ createBaseVNode("br", null, null, -1));
776
- function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
776
+ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
777
777
  const _component_font_awesome_icon = resolveComponent("font-awesome-icon");
778
778
  const _component_n8n_radio_buttons = resolveComponent("n8n-radio-buttons");
779
779
  const _component_el_col = resolveComponent("el-col");
@@ -795,7 +795,7 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
795
795
  createVNode(_component_el_collapse_transition, null, {
796
796
  default: withCtx(() => [
797
797
  !_ctx.isMinimized ? (openBlock(), createElementBlock("div", _hoisted_3$c, [
798
- !_ctx.isProductionOnly ? (openBlock(), createElementBlock("div", _hoisted_4$8, [
798
+ !_ctx.isProductionOnly ? (openBlock(), createElementBlock("div", _hoisted_4$7, [
799
799
  createVNode(_component_el_row, null, {
800
800
  default: withCtx(() => [
801
801
  createVNode(_component_el_col, { span: 24 }, {
@@ -820,7 +820,7 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
820
820
  placement: "left"
821
821
  }, {
822
822
  default: withCtx(() => [
823
- _ctx.isWebhookMethodVisible(webhook) ? (openBlock(), createElementBlock("div", _hoisted_5$9, [
823
+ _ctx.isWebhookMethodVisible(webhook) ? (openBlock(), createElementBlock("div", _hoisted_5$8, [
824
824
  createBaseVNode("div", _hoisted_6$7, [
825
825
  createBaseVNode("div", _hoisted_7$6, [
826
826
  createTextVNode(toDisplayString(_ctx.getWebhookHttpMethod(webhook)), 1),
@@ -857,8 +857,8 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
857
857
  })
858
858
  ])) : createCommentVNode("", true);
859
859
  }
860
- const __unplugin_components_3$1 = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$d], ["__scopeId", "data-v-36c5dbc7"]]);
861
- const _sfc_main$M = /* @__PURE__ */ defineComponent({
860
+ const __unplugin_components_3$1 = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["render", _sfc_render$c], ["__scopeId", "data-v-24fa3e97"]]);
861
+ const _sfc_main$R = /* @__PURE__ */ defineComponent({
862
862
  __name: "NodeSettingsTabs",
863
863
  props: {
864
864
  modelValue: { default: "params" },
@@ -987,7 +987,7 @@ const _sfc_main$M = /* @__PURE__ */ defineComponent({
987
987
  const NODE_TEST_STEP_POPUP_COUNT_KEY = "N8N_NODE_TEST_STEP_POPUP_COUNT";
988
988
  const MAX_POPUP_COUNT = 10;
989
989
  const POPUP_UPDATE_DELAY = 3e3;
990
- const _sfc_main$L = defineComponent({
990
+ const _sfc_main$Q = defineComponent({
991
991
  inheritAttrs: false,
992
992
  props: {
993
993
  nodeName: {
@@ -1220,7 +1220,7 @@ const _sfc_main$L = defineComponent({
1220
1220
  }
1221
1221
  }
1222
1222
  });
1223
- function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
1223
+ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
1224
1224
  const _component_n8n_button = resolveComponent("n8n-button");
1225
1225
  const _component_n8n_tooltip = resolveComponent("n8n-tooltip");
1226
1226
  return openBlock(), createElementBlock("div", null, [
@@ -1251,8 +1251,8 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
1251
1251
  }, 8, ["disabled"])
1252
1252
  ]);
1253
1253
  }
1254
- const __unplugin_components_2$2 = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$c]]);
1255
- const _sfc_main$K = /* @__PURE__ */ defineComponent({
1254
+ const __unplugin_components_2$2 = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["render", _sfc_render$b]]);
1255
+ const _sfc_main$P = /* @__PURE__ */ defineComponent({
1256
1256
  __name: "NodeTitle",
1257
1257
  props: {
1258
1258
  modelValue: { default: "" },
@@ -1295,7 +1295,7 @@ const _sfc_main$K = /* @__PURE__ */ defineComponent({
1295
1295
  createBaseVNode("span", {
1296
1296
  class: normalizeClass(_ctx.$style.iconWrapper)
1297
1297
  }, [
1298
- createVNode(_sfc_main$Q, {
1298
+ createVNode(_sfc_main$V, {
1299
1299
  "node-type": _ctx.nodeType,
1300
1300
  size: 18
1301
1301
  }, null, 8, ["node-type"])
@@ -1382,7 +1382,7 @@ const iconWrapper = "_iconWrapper_9bi3m_26";
1382
1382
  const editIconContainer = "_editIconContainer_9bi3m_39";
1383
1383
  const editButtons = "_editButtons_9bi3m_45";
1384
1384
  const editContainer = "_editContainer_9bi3m_53";
1385
- const style0$s = {
1385
+ const style0$x = {
1386
1386
  container: container$2,
1387
1387
  title: title$3,
1388
1388
  hoverable,
@@ -1392,17 +1392,17 @@ const style0$s = {
1392
1392
  editButtons,
1393
1393
  editContainer
1394
1394
  };
1395
- const cssModules$u = {
1396
- "$style": style0$s
1395
+ const cssModules$z = {
1396
+ "$style": style0$x
1397
1397
  };
1398
- const __unplugin_components_0$4 = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["__cssModules", cssModules$u]]);
1399
- const _sfc_main$J = defineComponent({
1398
+ const __unplugin_components_0$7 = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["__cssModules", cssModules$z]]);
1399
+ const _sfc_main$O = defineComponent({
1400
1400
  name: "NodeSettings",
1401
1401
  components: {
1402
- NodeTitle: __unplugin_components_0$4,
1402
+ NodeTitle: __unplugin_components_0$7,
1403
1403
  NodeCredentials: __unplugin_components_4,
1404
- ParameterInputList: _sfc_main$R,
1405
- NodeSettingsTabs: _sfc_main$M,
1404
+ ParameterInputList: _sfc_main$W,
1405
+ NodeSettingsTabs: _sfc_main$R,
1406
1406
  NodeWebhooks: __unplugin_components_3$1,
1407
1407
  NDVSubConnections: __unplugin_components_6,
1408
1408
  NodeExecuteButton: __unplugin_components_2$2
@@ -2207,20 +2207,20 @@ const _sfc_main$J = defineComponent({
2207
2207
  const header$2 = "_header_1pn0y_1";
2208
2208
  const warningIcon = "_warningIcon_1pn0y_5";
2209
2209
  const descriptionContainer = "_descriptionContainer_1pn0y_10";
2210
- const style0$r = {
2210
+ const style0$w = {
2211
2211
  header: header$2,
2212
2212
  warningIcon,
2213
2213
  descriptionContainer
2214
2214
  };
2215
- const _withScopeId$5 = (n) => (pushScopeId("data-v-f492f692"), n = n(), popScopeId(), n);
2215
+ const _withScopeId$5 = (n) => (pushScopeId("data-v-fed3b7a1"), n = n(), popScopeId(), n);
2216
2216
  const _hoisted_1$m = { class: "header-side-menu" };
2217
2217
  const _hoisted_2$f = { key: 1 };
2218
2218
  const _hoisted_3$b = {
2219
2219
  key: 0,
2220
2220
  class: "node-is-not-valid"
2221
2221
  };
2222
- const _hoisted_4$7 = { class: "missingNodeTitleContainer mt-s mb-xs" };
2223
- const _hoisted_5$8 = { class: "mb-l" };
2222
+ const _hoisted_4$6 = { class: "missingNodeTitleContainer mt-s mb-xs" };
2223
+ const _hoisted_5$7 = { class: "mb-l" };
2224
2224
  const _hoisted_6$6 = ["href"];
2225
2225
  const _hoisted_7$5 = ["href", "textContent"];
2226
2226
  const _hoisted_8$5 = {
@@ -2241,11 +2241,11 @@ const _hoisted_11$2 = {
2241
2241
  class: "node-version",
2242
2242
  "data-test-id": "node-version"
2243
2243
  };
2244
- function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
2244
+ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
2245
2245
  var _a, _b;
2246
- const _component_NodeTitle = __unplugin_components_0$4;
2246
+ const _component_NodeTitle = __unplugin_components_0$7;
2247
2247
  const _component_NodeExecuteButton = __unplugin_components_2$2;
2248
- const _component_NodeSettingsTabs = _sfc_main$M;
2248
+ const _component_NodeSettingsTabs = _sfc_main$R;
2249
2249
  const _component_font_awesome_icon = resolveComponent("font-awesome-icon");
2250
2250
  const _component_n8n_text = resolveComponent("n8n-text");
2251
2251
  const _component_i18n_t = resolveComponent("i18n-t");
@@ -2253,7 +2253,7 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
2253
2253
  const _component_n8n_notice = resolveComponent("n8n-notice");
2254
2254
  const _component_NodeWebhooks = __unplugin_components_3$1;
2255
2255
  const _component_NodeCredentials = __unplugin_components_4;
2256
- const _component_ParameterInputList = _sfc_main$R;
2256
+ const _component_ParameterInputList = _sfc_main$W;
2257
2257
  const _component_NDVSubConnections = __unplugin_components_6;
2258
2258
  const _component_n8n_block_ui = resolveComponent("n8n-block-ui");
2259
2259
  return openBlock(), createElementBlock("div", {
@@ -2304,7 +2304,7 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
2304
2304
  }, [
2305
2305
  createVNode(_component_font_awesome_icon, { icon: "exclamation-triangle" })
2306
2306
  ], 2),
2307
- createBaseVNode("div", _hoisted_4$7, [
2307
+ createBaseVNode("div", _hoisted_4$6, [
2308
2308
  createVNode(_component_n8n_text, {
2309
2309
  size: "large",
2310
2310
  color: "text-dark",
@@ -2320,7 +2320,7 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
2320
2320
  key: 0,
2321
2321
  class: normalizeClass(_ctx.$style.descriptionContainer)
2322
2322
  }, [
2323
- createBaseVNode("div", _hoisted_5$8, [
2323
+ createBaseVNode("div", _hoisted_5$7, [
2324
2324
  createVNode(_component_i18n_t, {
2325
2325
  keypath: "nodeSettings.communityNodeUnknown.description",
2326
2326
  tag: "span",
@@ -2458,11 +2458,11 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
2458
2458
  createVNode(_component_n8n_block_ui, { show: _ctx.blockUI }, null, 8, ["show"])
2459
2459
  ], 34);
2460
2460
  }
2461
- const cssModules$t = {
2462
- "$style": style0$r
2461
+ const cssModules$y = {
2462
+ "$style": style0$w
2463
2463
  };
2464
- const NodeSettings = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$b], ["__cssModules", cssModules$t], ["__scopeId", "data-v-f492f692"]]);
2465
- const _sfc_main$I = defineComponent({
2464
+ const NodeSettings = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["render", _sfc_render$a], ["__cssModules", cssModules$y], ["__scopeId", "data-v-fed3b7a1"]]);
2465
+ const _sfc_main$N = defineComponent({
2466
2466
  components: {
2467
2467
  Draggable: __unplugin_components_2$3
2468
2468
  },
@@ -2493,7 +2493,7 @@ const rightArrow = "_rightArrow_1fum9_20 _arrow_1fum9_28";
2493
2493
  const visible$2 = "_visible_1fum9_24";
2494
2494
  const arrow = "_arrow_1fum9_28";
2495
2495
  const grid = "_grid_1fum9_46";
2496
- const style0$q = {
2496
+ const style0$v = {
2497
2497
  dragContainer,
2498
2498
  dragButton,
2499
2499
  leftArrow,
@@ -2520,7 +2520,7 @@ const _hoisted_3$a = [
2520
2520
  _hoisted_1$l,
2521
2521
  _hoisted_2$e
2522
2522
  ];
2523
- function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
2523
+ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
2524
2524
  const _component_font_awesome_icon = resolveComponent("font-awesome-icon");
2525
2525
  const _component_Draggable = __unplugin_components_2$3;
2526
2526
  return openBlock(), createBlock(_component_Draggable, {
@@ -2554,10 +2554,10 @@ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
2554
2554
  _: 1
2555
2555
  }, 8, ["class", "onDrag", "onDragstart", "onDragend"]);
2556
2556
  }
2557
- const cssModules$s = {
2558
- "$style": style0$q
2557
+ const cssModules$x = {
2558
+ "$style": style0$v
2559
2559
  };
2560
- const PanelDragButton = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["render", _sfc_render$a], ["__cssModules", cssModules$s]]);
2560
+ const PanelDragButton = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$9], ["__cssModules", cssModules$x]]);
2561
2561
  const _hoisted_1$k = ["data-node-name", "data-node-placement", "onClick"];
2562
2562
  var FloatingNodePosition = /* @__PURE__ */ ((FloatingNodePosition2) => {
2563
2563
  FloatingNodePosition2["top"] = "outputSub";
@@ -2565,7 +2565,7 @@ var FloatingNodePosition = /* @__PURE__ */ ((FloatingNodePosition2) => {
2565
2565
  FloatingNodePosition2["left"] = "inputMain";
2566
2566
  return FloatingNodePosition2;
2567
2567
  })(FloatingNodePosition || {});
2568
- const _sfc_main$H = /* @__PURE__ */ defineComponent({
2568
+ const _sfc_main$M = /* @__PURE__ */ defineComponent({
2569
2569
  __name: "NDVFloatingNodes",
2570
2570
  props: {
2571
2571
  rootNode: {}
@@ -2686,7 +2686,7 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
2686
2686
  "data-node-placement": connectionGroup,
2687
2687
  onClick: ($event) => emit("switchSelectedNode", node2.name)
2688
2688
  }, [
2689
- createVNode(_sfc_main$Q, {
2689
+ createVNode(_sfc_main$V, {
2690
2690
  "node-type": nodeType,
2691
2691
  "node-name": node2.name,
2692
2692
  "tooltip-position": tooltipPositionMapper[connectionGroup],
@@ -2712,7 +2712,7 @@ const outputSub = "_outputSub_1sze0_29";
2712
2712
  const outputMain = "_outputMain_1sze0_40";
2713
2713
  const inputMain = "_inputMain_1sze0_40";
2714
2714
  const connectedNode = "_connectedNode_1sze0_63";
2715
- const style0$p = {
2715
+ const style0$u = {
2716
2716
  floatingNodes,
2717
2717
  nodesList,
2718
2718
  inputSub,
@@ -2721,16 +2721,16 @@ const style0$p = {
2721
2721
  inputMain,
2722
2722
  connectedNode
2723
2723
  };
2724
- const cssModules$r = {
2725
- "$style": style0$p
2724
+ const cssModules$w = {
2725
+ "$style": style0$u
2726
2726
  };
2727
- const NDVFloatingNodes = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["__cssModules", cssModules$r]]);
2727
+ const NDVFloatingNodes = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["__cssModules", cssModules$w]]);
2728
2728
  const SIDE_MARGIN = 24;
2729
2729
  const SIDE_PANELS_MARGIN = 80;
2730
2730
  const MIN_PANEL_WIDTH = 280;
2731
2731
  const PANEL_WIDTH = 320;
2732
2732
  const PANEL_WIDTH_LARGE = 420;
2733
- const _sfc_main$G = /* @__PURE__ */ defineComponent({
2733
+ const _sfc_main$L = /* @__PURE__ */ defineComponent({
2734
2734
  __name: "NDVDraggablePanels",
2735
2735
  props: {
2736
2736
  isDraggable: { type: Boolean },
@@ -3068,7 +3068,7 @@ const mainPanelInner = "_mainPanelInner_a6j4o_34";
3068
3068
  const dragging = "_dragging_a6j4o_41";
3069
3069
  const dragButtonContainer = "_dragButtonContainer_a6j4o_54";
3070
3070
  const visible$1 = "_visible_a6j4o_70";
3071
- const style0$o = {
3071
+ const style0$t = {
3072
3072
  dataPanel,
3073
3073
  inputPanel,
3074
3074
  outputPanel,
@@ -3080,18 +3080,18 @@ const style0$o = {
3080
3080
  dragButtonContainer,
3081
3081
  visible: visible$1
3082
3082
  };
3083
- const cssModules$q = {
3084
- "$style": style0$o
3083
+ const cssModules$v = {
3084
+ "$style": style0$t
3085
3085
  };
3086
- const NDVDraggablePanels = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["__cssModules", cssModules$q]]);
3086
+ const NDVDraggablePanels = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["__cssModules", cssModules$v]]);
3087
3087
  const _hoisted_1$j = { class: "node-error-view" };
3088
3088
  const _hoisted_2$d = { class: "node-error-view__header" };
3089
3089
  const _hoisted_3$9 = {
3090
3090
  class: "node-error-view__header-message",
3091
3091
  "data-test-id": "node-error-message"
3092
3092
  };
3093
- const _hoisted_4$6 = ["innerHTML"];
3094
- const _hoisted_5$7 = {
3093
+ const _hoisted_4$5 = ["innerHTML"];
3094
+ const _hoisted_5$6 = {
3095
3095
  key: 1,
3096
3096
  class: "node-error-view__assistant-button",
3097
3097
  "data-test-id": "node-error-view-ask-assistant-button"
@@ -3200,7 +3200,7 @@ const _hoisted_59 = {
3200
3200
  };
3201
3201
  const _hoisted_60 = { class: "node-error-view__details-label" };
3202
3202
  const _hoisted_61 = { class: "node-error-view__details-value" };
3203
- const _sfc_main$F = /* @__PURE__ */ defineComponent({
3203
+ const _sfc_main$K = /* @__PURE__ */ defineComponent({
3204
3204
  __name: "NodeErrorView",
3205
3205
  props: {
3206
3206
  error: {},
@@ -3548,8 +3548,8 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
3548
3548
  "data-test-id": "node-error-description",
3549
3549
  class: "node-error-view__header-description",
3550
3550
  innerHTML: getErrorDescription()
3551
- }, null, 8, _hoisted_4$6)) : createCommentVNode("", true),
3552
- isAskAssistantAvailable.value ? (openBlock(), createElementBlock("div", _hoisted_5$7, [
3551
+ }, null, 8, _hoisted_4$5)) : createCommentVNode("", true),
3552
+ isAskAssistantAvailable.value ? (openBlock(), createElementBlock("div", _hoisted_5$6, [
3553
3553
  createVNode(InlineAskAssistantButton, {
3554
3554
  asked: assistantAlreadyAsked.value,
3555
3555
  onClick: onAskAssistantClick
@@ -3718,7 +3718,7 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
3718
3718
  const _hoisted_1$i = { key: 0 };
3719
3719
  const _hoisted_2$c = { key: 1 };
3720
3720
  const _hoisted_3$8 = { key: 2 };
3721
- const _sfc_main$E = /* @__PURE__ */ defineComponent({
3721
+ const _sfc_main$J = /* @__PURE__ */ defineComponent({
3722
3722
  __name: "RunDataPinButton",
3723
3723
  props: {
3724
3724
  tooltipContentsVisibility: {},
@@ -3783,13 +3783,13 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
3783
3783
  }
3784
3784
  });
3785
3785
  const pinDataButton = "_pinDataButton_9p8um_1";
3786
- const style0$n = {
3786
+ const style0$s = {
3787
3787
  pinDataButton
3788
3788
  };
3789
- const cssModules$p = {
3790
- "$style": style0$n
3789
+ const cssModules$u = {
3790
+ "$style": style0$s
3791
3791
  };
3792
- const __unplugin_components_1$1 = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__cssModules", cssModules$p]]);
3792
+ const __unplugin_components_1$1 = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["__cssModules", cssModules$u]]);
3793
3793
  const sanitizeOptions = {
3794
3794
  allowVulnerableTags: false,
3795
3795
  enforceHtmlBoundary: false,
@@ -3803,7 +3803,7 @@ const sanitizeOptions = {
3803
3803
  head: ""
3804
3804
  }
3805
3805
  };
3806
- const _sfc_main$D = {
3806
+ const _sfc_main$I = {
3807
3807
  name: "RunDataHtml",
3808
3808
  props: {
3809
3809
  inputHtml: {
@@ -3818,13 +3818,13 @@ const _sfc_main$D = {
3818
3818
  }
3819
3819
  };
3820
3820
  const _hoisted_1$h = ["srcdoc"];
3821
- function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
3821
+ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
3822
3822
  return openBlock(), createElementBlock("iframe", {
3823
3823
  class: "__html-display",
3824
3824
  srcdoc: $options.sanitizedHtml
3825
3825
  }, null, 8, _hoisted_1$h);
3826
3826
  }
3827
- const RunDataHtml = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["render", _sfc_render$9]]);
3827
+ const RunDataHtml = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["render", _sfc_render$8]]);
3828
3828
  const RunDataHtml$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3829
3829
  __proto__: null,
3830
3830
  default: RunDataHtml
@@ -3832,12 +3832,12 @@ const RunDataHtml$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defin
3832
3832
  const _hoisted_1$g = { key: 0 };
3833
3833
  const _hoisted_2$b = { key: 1 };
3834
3834
  const _hoisted_3$7 = { key: 2 };
3835
- const _hoisted_4$5 = {
3835
+ const _hoisted_4$4 = {
3836
3836
  key: 0,
3837
3837
  controls: "",
3838
3838
  autoplay: ""
3839
3839
  };
3840
- const _hoisted_5$6 = ["src", "type"];
3840
+ const _hoisted_5$5 = ["src", "type"];
3841
3841
  const _hoisted_6$4 = {
3842
3842
  key: 1,
3843
3843
  controls: "",
@@ -3845,7 +3845,7 @@ const _hoisted_6$4 = {
3845
3845
  };
3846
3846
  const _hoisted_7$3 = ["src", "type"];
3847
3847
  const _hoisted_8$3 = ["src"];
3848
- const _sfc_main$C = /* @__PURE__ */ defineComponent({
3848
+ const _sfc_main$H = /* @__PURE__ */ defineComponent({
3849
3849
  __name: "BinaryDataDisplayEmbed",
3850
3850
  props: {
3851
3851
  binaryData: {}
@@ -3888,11 +3888,11 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
3888
3888
  return (_ctx, _cache) => {
3889
3889
  return openBlock(), createElementBlock("span", null, [
3890
3890
  isLoading.value ? (openBlock(), createElementBlock("div", _hoisted_1$g, "Loading binary data...")) : error2.value ? (openBlock(), createElementBlock("div", _hoisted_2$b, "Error loading binary data")) : (openBlock(), createElementBlock("span", _hoisted_3$7, [
3891
- _ctx.binaryData.fileType === "video" ? (openBlock(), createElementBlock("video", _hoisted_4$5, [
3891
+ _ctx.binaryData.fileType === "video" ? (openBlock(), createElementBlock("video", _hoisted_4$4, [
3892
3892
  createBaseVNode("source", {
3893
3893
  src: embedSource.value,
3894
3894
  type: _ctx.binaryData.mimeType
3895
- }, null, 8, _hoisted_5$6),
3895
+ }, null, 8, _hoisted_5$5),
3896
3896
  createTextVNode(" " + toDisplayString(_ctx.$locale.baseText("binaryDataDisplay.yourBrowserDoesNotSupport")), 1)
3897
3897
  ])) : _ctx.binaryData.fileType === "audio" ? (openBlock(), createElementBlock("audio", _hoisted_6$4, [
3898
3898
  createBaseVNode("source", {
@@ -3920,7 +3920,7 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
3920
3920
  });
3921
3921
  const _hoisted_1$f = { class: "binary-data-window-wrapper" };
3922
3922
  const _hoisted_2$a = { key: 0 };
3923
- const _sfc_main$B = /* @__PURE__ */ defineComponent({
3923
+ const _sfc_main$G = /* @__PURE__ */ defineComponent({
3924
3924
  __name: "BinaryDataDisplay",
3925
3925
  props: {
3926
3926
  displayData: {},
@@ -3979,7 +3979,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
3979
3979
  onClick: withModifiers(closeWindow, ["stop"])
3980
3980
  }, null, 8, ["title", "label"]),
3981
3981
  createBaseVNode("div", _hoisted_1$f, [
3982
- !binaryData.value ? (openBlock(), createElementBlock("div", _hoisted_2$a, toDisplayString(_ctx.$locale.baseText("binaryDataDisplay.noDataFoundToDisplay")), 1)) : (openBlock(), createBlock(_sfc_main$C, {
3982
+ !binaryData.value ? (openBlock(), createElementBlock("div", _hoisted_2$a, toDisplayString(_ctx.$locale.baseText("binaryDataDisplay.noDataFoundToDisplay")), 1)) : (openBlock(), createBlock(_sfc_main$H, {
3983
3983
  key: 1,
3984
3984
  "binary-data": binaryData.value
3985
3985
  }, null, 8, ["binary-data"]))
@@ -3989,25 +3989,25 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
3989
3989
  }
3990
3990
  });
3991
3991
  const LazyRunDataTable = defineAsyncComponent(
3992
- async () => await __vitePreload(() => import("./RunDataTable-vo-QDjQp.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]) : void 0)
3992
+ async () => await __vitePreload(() => import("./RunDataTable-D-c1L5v9.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]) : void 0)
3993
3993
  );
3994
3994
  const LazyRunDataJson = defineAsyncComponent(
3995
- async () => await __vitePreload(() => import("./RunDataJson-P0yEohIY.js"), true ? __vite__mapDeps([33,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,34,35]) : void 0)
3995
+ async () => await __vitePreload(() => import("./RunDataJson-C-dseNta.js"), true ? __vite__mapDeps([34,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,35,36]) : void 0)
3996
3996
  );
3997
3997
  const LazyRunDataSchema = defineAsyncComponent(
3998
- async () => await __vitePreload(() => import("./index-CLI1n-jB.js").then((n) => n.eJ), true ? __vite__mapDeps([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]) : void 0)
3998
+ async () => await __vitePreload(() => import("./index-BMqv_cxE.js").then((n) => n.eI), true ? __vite__mapDeps([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]) : void 0)
3999
3999
  );
4000
4000
  const LazyRunDataHtml = defineAsyncComponent(
4001
4001
  async () => await __vitePreload(() => Promise.resolve().then(() => RunDataHtml$1), true ? void 0 : void 0)
4002
4002
  );
4003
4003
  const LazyRunDataSearch = defineAsyncComponent(
4004
- async () => await __vitePreload(() => import("./RunDataSearch-Cq60VG7b.js"), true ? __vite__mapDeps([36,2,1,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,37]) : void 0)
4004
+ async () => await __vitePreload(() => import("./RunDataSearch-tlq4S7N-.js"), true ? __vite__mapDeps([37,2,1,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,38]) : void 0)
4005
4005
  );
4006
- const _sfc_main$A = defineComponent({
4006
+ const _sfc_main$F = defineComponent({
4007
4007
  name: "RunData",
4008
4008
  components: {
4009
- BinaryDataDisplay: _sfc_main$B,
4010
- NodeErrorView: _sfc_main$F,
4009
+ BinaryDataDisplay: _sfc_main$G,
4010
+ NodeErrorView: _sfc_main$K,
4011
4011
  JsonEditor: __unplugin_components_2$4,
4012
4012
  LazyRunDataTable,
4013
4013
  LazyRunDataJson,
@@ -4996,7 +4996,7 @@ const stretchVertically = "_stretchVertically_12msl_275";
4996
4996
  const uiBlocker = "_uiBlocker_12msl_279";
4997
4997
  const hintCallout = "_hintCallout_12msl_284";
4998
4998
  const schema = "_schema_12msl_290";
4999
- const style0$m = {
4999
+ const style0$r = {
5000
5000
  infoIcon,
5001
5001
  center,
5002
5002
  container: container$1,
@@ -5036,25 +5036,25 @@ const style0$m = {
5036
5036
  hintCallout,
5037
5037
  schema
5038
5038
  };
5039
- const _withScopeId$4 = (n) => (pushScopeId("data-v-2cded2ce"), n = n(), popScopeId(), n);
5039
+ const _withScopeId$4 = (n) => (pushScopeId("data-v-724a6930"), n = n(), popScopeId(), n);
5040
5040
  const _hoisted_1$e = {
5041
5041
  key: 0,
5042
5042
  class: "ml-4xs"
5043
5043
  };
5044
5044
  const _hoisted_2$9 = { key: 1 };
5045
5045
  const _hoisted_3$6 = { key: 0 };
5046
- const _hoisted_4$4 = ["innerHTML"];
5047
- const _hoisted_5$5 = ["data-test-id"];
5046
+ const _hoisted_4$3 = ["innerHTML"];
5047
+ const _hoisted_5$4 = ["data-test-id"];
5048
5048
  const _hoisted_6$3 = { key: 0 };
5049
5049
  const _hoisted_7$2 = { key: 1 };
5050
5050
  const _hoisted_8$2 = { key: 2 };
5051
5051
  const _hoisted_9$2 = { key: 3 };
5052
5052
  const _hoisted_10$1 = { key: 4 };
5053
- function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
5053
+ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
5054
5054
  var _a, _b, _c, _d, _e, _f;
5055
5055
  const _component_n8n_link = resolveComponent("n8n-link");
5056
5056
  const _component_n8n_callout = resolveComponent("n8n-callout");
5057
- const _component_BinaryDataDisplay = _sfc_main$B;
5057
+ const _component_BinaryDataDisplay = _sfc_main$G;
5058
5058
  const _component_LazyRunDataSearch = resolveComponent("LazyRunDataSearch");
5059
5059
  const _component_n8n_radio_buttons = resolveComponent("n8n-radio-buttons");
5060
5060
  const _component_n8n_icon_button = resolveComponent("n8n-icon-button");
@@ -5068,7 +5068,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
5068
5068
  const _component_n8n_spinner = resolveComponent("n8n-spinner");
5069
5069
  const _component_JsonEditor = __unplugin_components_2$4;
5070
5070
  const _component_n8n_info_tip = resolveComponent("n8n-info-tip");
5071
- const _component_NodeErrorView = _sfc_main$F;
5071
+ const _component_NodeErrorView = _sfc_main$K;
5072
5072
  const _component_i18n_t = resolveComponent("i18n-t");
5073
5073
  const _component_LazyRunDataTable = resolveComponent("LazyRunDataTable");
5074
5074
  const _component_LazyRunDataJson = resolveComponent("LazyRunDataJson");
@@ -5518,7 +5518,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
5518
5518
  innerHTML: _ctx.$locale.baseText("ndv.output.tooMuchData.message", {
5519
5519
  interpolate: { size: _ctx.dataSizeInMB }
5520
5520
  })
5521
- }, null, 8, _hoisted_4$4)
5521
+ }, null, 8, _hoisted_4$3)
5522
5522
  ]),
5523
5523
  _: 1
5524
5524
  }),
@@ -5770,7 +5770,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
5770
5770
  onClick: ($event) => _ctx.downloadBinaryData(index, key)
5771
5771
  }, null, 8, ["label", "onClick"])) : createCommentVNode("", true)
5772
5772
  ], 2)
5773
- ], 8, _hoisted_5$5)
5773
+ ], 8, _hoisted_5$4)
5774
5774
  ], 2);
5775
5775
  }), 128))
5776
5776
  ], 2)
@@ -5830,11 +5830,11 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
5830
5830
  }, null, 8, ["show", "class"])
5831
5831
  ], 34);
5832
5832
  }
5833
- const cssModules$o = {
5834
- "$style": style0$m
5833
+ const cssModules$t = {
5834
+ "$style": style0$r
5835
5835
  };
5836
- const __unplugin_components_3 = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["render", _sfc_render$8], ["__cssModules", cssModules$o], ["__scopeId", "data-v-2cded2ce"]]);
5837
- const _sfc_main$z = defineComponent({
5836
+ const __unplugin_components_3 = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["render", _sfc_render$7], ["__cssModules", cssModules$t], ["__scopeId", "data-v-724a6930"]]);
5837
+ const _sfc_main$E = defineComponent({
5838
5838
  props: {
5839
5839
  taskData: {},
5840
5840
  // ITaskData
@@ -5864,7 +5864,7 @@ const _sfc_main$z = defineComponent({
5864
5864
  const _hoisted_1$d = ["innerHTML"];
5865
5865
  const _hoisted_2$8 = /* @__PURE__ */ createBaseVNode("br", null, null, -1);
5866
5866
  const _hoisted_3$5 = /* @__PURE__ */ createBaseVNode("br", null, null, -1);
5867
- function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
5867
+ function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
5868
5868
  const _component_n8n_info_tip = resolveComponent("n8n-info-tip");
5869
5869
  const _component_n8n_text = resolveComponent("n8n-text");
5870
5870
  return _ctx.hasStaleData ? (openBlock(), createBlock(_component_n8n_info_tip, {
@@ -5927,9 +5927,9 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
5927
5927
  _: 1
5928
5928
  }, 8, ["theme", "data-test-id"])) : createCommentVNode("", true);
5929
5929
  }
5930
- const RunInfo = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["render", _sfc_render$7]]);
5930
+ const RunInfo = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["render", _sfc_render$6]]);
5931
5931
  const _hoisted_1$c = /* @__PURE__ */ createBaseVNode("br", null, null, -1);
5932
- const _sfc_main$y = /* @__PURE__ */ defineComponent({
5932
+ const _sfc_main$D = /* @__PURE__ */ defineComponent({
5933
5933
  __name: "OutputPanel",
5934
5934
  props: {
5935
5935
  workflow: {},
@@ -6282,18 +6282,18 @@ const titleSection$1 = "_titleSection_f1tu5_11";
6282
6282
  const title$2 = "_title_f1tu5_11";
6283
6283
  const noOutputData$1 = "_noOutputData_f1tu5_27";
6284
6284
  const recoveredOutputData$1 = "_recoveredOutputData_f1tu5_37";
6285
- const style0$l = {
6285
+ const style0$q = {
6286
6286
  outputTypeSelect,
6287
6287
  titleSection: titleSection$1,
6288
6288
  title: title$2,
6289
6289
  noOutputData: noOutputData$1,
6290
6290
  recoveredOutputData: recoveredOutputData$1
6291
6291
  };
6292
- const cssModules$n = {
6293
- "$style": style0$l
6292
+ const cssModules$s = {
6293
+ "$style": style0$q
6294
6294
  };
6295
- const OutputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__cssModules", cssModules$n]]);
6296
- const _sfc_main$x = {};
6295
+ const OutputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__cssModules", cssModules$s]]);
6296
+ const _sfc_main$C = {};
6297
6297
  const _hoisted_1$b = {
6298
6298
  width: "112",
6299
6299
  height: "80",
@@ -6303,15 +6303,15 @@ const _hoisted_1$b = {
6303
6303
  "xmlns:xlink": "http://www.w3.org/1999/xlink"
6304
6304
  };
6305
6305
  const _hoisted_2$7 = /* @__PURE__ */ createStaticVNode('<mask id="mask0_489_46042" style="mask-type:alpha;" maskUnits="userSpaceOnUse" x="0" y="0" width="112" height="80"><rect width="112" height="80" fill="url(#paint0_linear_489_46042)"></rect></mask><g mask="url(#mask0_489_46042)"><rect x="-0.5" width="112" height="80" fill="url(#pattern0)" fill-opacity="0.6"></rect></g><defs><pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"><use xlink:href="#image0_489_46042" transform="scale(0.00357143 0.005)"></use></pattern><linearGradient id="paint0_linear_489_46042" x1="90.5" y1="40.4494" x2="112.5" y2="40.4494" gradientUnits="userSpaceOnUse"><stop></stop><stop offset="1" stop-color="white" stop-opacity="0"></stop></linearGradient><image id="image0_489_46042" width="280" height="200" xlink:href="data:image/png;base64,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"></image></defs>', 3);
6306
- const _hoisted_5$4 = [
6306
+ const _hoisted_5$3 = [
6307
6307
  _hoisted_2$7
6308
6308
  ];
6309
- function _sfc_render$6(_ctx, _cache) {
6310
- return openBlock(), createElementBlock("svg", _hoisted_1$b, _hoisted_5$4);
6309
+ function _sfc_render$5(_ctx, _cache) {
6310
+ return openBlock(), createElementBlock("svg", _hoisted_1$b, _hoisted_5$3);
6311
6311
  }
6312
- const __unplugin_components_2$1 = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["render", _sfc_render$6]]);
6312
+ const __unplugin_components_2$1 = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render$5]]);
6313
6313
  const _hoisted_1$a = { key: 0 };
6314
- const _sfc_main$w = /* @__PURE__ */ defineComponent({
6314
+ const _sfc_main$B = /* @__PURE__ */ defineComponent({
6315
6315
  __name: "InputNodeSelect",
6316
6316
  props: {
6317
6317
  nodes: {},
@@ -6418,7 +6418,7 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
6418
6418
  prefix: withCtx(() => {
6419
6419
  var _a;
6420
6420
  return [
6421
- createVNode(_sfc_main$Q, {
6421
+ createVNode(_sfc_main$V, {
6422
6422
  disabled: (_a = selectedInputNode.value) == null ? void 0 : _a.disabled,
6423
6423
  "node-type": selectedInputNodeType.value,
6424
6424
  size: 14,
@@ -6436,7 +6436,7 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
6436
6436
  "data-test-id": "ndv-input-option"
6437
6437
  }, {
6438
6438
  default: withCtx(() => [
6439
- createVNode(_sfc_main$Q, {
6439
+ createVNode(_sfc_main$V, {
6440
6440
  disabled: node2.disabled,
6441
6441
  "node-type": type,
6442
6442
  size: 14,
@@ -6468,7 +6468,7 @@ const icon = "_icon_68vpa_18";
6468
6468
  const title$1 = "_title_68vpa_22";
6469
6469
  const disabled$1 = "_disabled_68vpa_31";
6470
6470
  const subtitle$1 = "_subtitle_68vpa_35";
6471
- const style0$k = {
6471
+ const style0$p = {
6472
6472
  select,
6473
6473
  node: node$1,
6474
6474
  icon,
@@ -6476,13 +6476,13 @@ const style0$k = {
6476
6476
  disabled: disabled$1,
6477
6477
  subtitle: subtitle$1
6478
6478
  };
6479
- const cssModules$m = {
6480
- "$style": style0$k
6479
+ const cssModules$r = {
6480
+ "$style": style0$p
6481
6481
  };
6482
- const __unplugin_components_0$3 = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__cssModules", cssModules$m]]);
6483
- const _sfc_main$v = defineComponent({
6482
+ const __unplugin_components_0$6 = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["__cssModules", cssModules$r]]);
6483
+ const _sfc_main$A = defineComponent({
6484
6484
  name: "InputPanel",
6485
- components: { RunData: __unplugin_components_3, NodeExecuteButton: __unplugin_components_2$2, WireMeUp: __unplugin_components_2$1, InputNodeSelect: __unplugin_components_0$3 },
6485
+ components: { RunData: __unplugin_components_3, NodeExecuteButton: __unplugin_components_2$2, WireMeUp: __unplugin_components_2$1, InputNodeSelect: __unplugin_components_0$6 },
6486
6486
  props: {
6487
6487
  currentNodeName: {
6488
6488
  type: String
@@ -6758,7 +6758,7 @@ const noOutputData = "_noOutputData_17wvq_18";
6758
6758
  const recoveredOutputData = "_recoveredOutputData_17wvq_28";
6759
6759
  const notConnected = "_notConnected_17wvq_37";
6760
6760
  const title = "_title_17wvq_5";
6761
- const style0$j = {
6761
+ const style0$o = {
6762
6762
  mappedNode,
6763
6763
  titleSection,
6764
6764
  inputModeTab,
@@ -6768,9 +6768,9 @@ const style0$j = {
6768
6768
  title
6769
6769
  };
6770
6770
  const _hoisted_1$9 = ["innerHTML"];
6771
- function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
6771
+ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
6772
6772
  const _component_n8n_radio_buttons = resolveComponent("n8n-radio-buttons");
6773
- const _component_InputNodeSelect = __unplugin_components_0$3;
6773
+ const _component_InputNodeSelect = __unplugin_components_0$6;
6774
6774
  const _component_n8n_text = resolveComponent("n8n-text");
6775
6775
  const _component_NodeExecuteButton = __unplugin_components_2$2;
6776
6776
  const _component_n8n_tooltip = resolveComponent("n8n-tooltip");
@@ -6971,16 +6971,16 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
6971
6971
  } : void 0
6972
6972
  ]), 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"]);
6973
6973
  }
6974
- const cssModules$l = {
6975
- "$style": style0$j
6974
+ const cssModules$q = {
6975
+ "$style": style0$o
6976
6976
  };
6977
- const InputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["render", _sfc_render$5], ["__cssModules", cssModules$l]]);
6978
- const _sfc_main$u = defineComponent({
6977
+ const InputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["render", _sfc_render$4], ["__cssModules", cssModules$q]]);
6978
+ const _sfc_main$z = defineComponent({
6979
6979
  name: "TriggerPanel",
6980
6980
  components: {
6981
6981
  NodeExecuteButton: __unplugin_components_2$2,
6982
6982
  CopyInput,
6983
- NodeIcon: _sfc_main$Q
6983
+ NodeIcon: _sfc_main$V
6984
6984
  },
6985
6985
  props: {
6986
6986
  nodeName: {
@@ -7282,19 +7282,19 @@ const header = "_header_1evnm_18";
7282
7282
  const action = "_action_1evnm_25";
7283
7283
  const shake$1 = "_shake_1evnm_29";
7284
7284
  const accordion = "_accordion_1evnm_50";
7285
- const style0$i = {
7285
+ const style0$n = {
7286
7286
  container,
7287
7287
  header,
7288
7288
  action,
7289
7289
  shake: shake$1,
7290
7290
  accordion
7291
7291
  };
7292
- const _withScopeId$3 = (n) => (pushScopeId("data-v-36b80c39"), n = n(), popScopeId(), n);
7292
+ const _withScopeId$3 = (n) => (pushScopeId("data-v-08c63586"), n = n(), popScopeId(), n);
7293
7293
  const _hoisted_1$8 = { key: "empty" };
7294
7294
  const _hoisted_2$6 = { key: "listening" };
7295
7295
  const _hoisted_3$4 = { key: 0 };
7296
- const _hoisted_4$3 = { key: 1 };
7297
- const _hoisted_5$3 = { key: 0 };
7296
+ const _hoisted_4$2 = { key: 1 };
7297
+ const _hoisted_5$2 = { key: 0 };
7298
7298
  const _hoisted_6$2 = { key: "default" };
7299
7299
  const _hoisted_7$1 = {
7300
7300
  key: 0,
@@ -7302,8 +7302,8 @@ const _hoisted_7$1 = {
7302
7302
  };
7303
7303
  const _hoisted_8$1 = ["textContent"];
7304
7304
  const _hoisted_9$1 = ["innerHTML"];
7305
- function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
7306
- const _component_NodeIcon = _sfc_main$Q;
7305
+ function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
7306
+ const _component_NodeIcon = _sfc_main$V;
7307
7307
  const _component_n8n_pulse = resolveComponent("n8n-pulse");
7308
7308
  const _component_n8n_text = resolveComponent("n8n-text");
7309
7309
  const _component_CopyInput = CopyInput;
@@ -7372,7 +7372,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
7372
7372
  "telemetry-source": "inputs",
7373
7373
  onExecute: _ctx.onNodeExecute
7374
7374
  }, null, 8, ["node-name", "onExecute"])
7375
- ])) : (openBlock(), createElementBlock("div", _hoisted_4$3, [
7375
+ ])) : (openBlock(), createElementBlock("div", _hoisted_4$2, [
7376
7376
  createVNode(_component_n8n_text, {
7377
7377
  tag: "div",
7378
7378
  size: "large",
@@ -7395,7 +7395,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
7395
7395
  _: 1
7396
7396
  })
7397
7397
  ], 2),
7398
- _ctx.displayChatButton ? (openBlock(), createElementBlock("div", _hoisted_5$3, [
7398
+ _ctx.displayChatButton ? (openBlock(), createElementBlock("div", _hoisted_5$2, [
7399
7399
  createVNode(_component_n8n_button, {
7400
7400
  class: "mb-xl",
7401
7401
  onClick: _cache[0] || (_cache[0] = ($event) => _ctx.openWebhookUrl())
@@ -7487,11 +7487,11 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
7487
7487
  })
7488
7488
  ], 2);
7489
7489
  }
7490
- const cssModules$k = {
7491
- "$style": style0$i
7490
+ const cssModules$p = {
7491
+ "$style": style0$n
7492
7492
  };
7493
- const TriggerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["render", _sfc_render$4], ["__cssModules", cssModules$k], ["__scopeId", "data-v-36b80c39"]]);
7494
- const _sfc_main$t = /* @__PURE__ */ defineComponent({
7493
+ const TriggerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["render", _sfc_render$3], ["__cssModules", cssModules$p], ["__scopeId", "data-v-08c63586"]]);
7494
+ const _sfc_main$y = /* @__PURE__ */ defineComponent({
7495
7495
  __name: "NodeDetailsView",
7496
7496
  props: {
7497
7497
  workflowObject: {},
@@ -7539,7 +7539,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
7539
7539
  }
7540
7540
  return null;
7541
7541
  });
7542
- const workflowRunning2 = computed(() => uiStore.isActionActive["workflowRunning"]);
7542
+ const workflowRunning2 = computed(() => uiStore.isActionActive.workflowRunning);
7543
7543
  const showTriggerWaitingWarning = computed(
7544
7544
  () => triggerWaitingWarningEnabled.value && !!activeNodeType.value && !activeNodeType.value.group.includes("trigger") && workflowRunning2.value && workflowsStore.executionWaitingForWebhook
7545
7545
  );
@@ -7673,7 +7673,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
7673
7673
  return `${BASE_NODE_SURVEY_URL}${activeNodeType.value.name}`;
7674
7674
  });
7675
7675
  const outputPanelEditMode = computed(() => ndvStore.outputPanelEditMode);
7676
- const isWorkflowRunning = computed(() => uiStore.isActionActive["workflowRunning"]);
7676
+ const isWorkflowRunning = computed(() => uiStore.isActionActive.workflowRunning);
7677
7677
  const isExecutionWaitingForWebhook = computed(() => workflowsStore.executionWaitingForWebhook);
7678
7678
  const blockUi = computed(() => isWorkflowRunning.value || isExecutionWaitingForWebhook.value);
7679
7679
  const foreignCredentials = computed(() => {
@@ -8162,10 +8162,10 @@ const style1 = {
8162
8162
  backToCanvas,
8163
8163
  featureRequest
8164
8164
  };
8165
- const cssModules$j = {
8165
+ const cssModules$o = {
8166
8166
  "$style": style1
8167
8167
  };
8168
- const __unplugin_components_2 = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__cssModules", cssModules$j]]);
8168
+ const __unplugin_components_2 = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__cssModules", cssModules$o]]);
8169
8169
  const NodeDetailsView = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
8170
8170
  __proto__: null,
8171
8171
  default: __unplugin_components_2
@@ -8660,7 +8660,7 @@ function useNodeBase({
8660
8660
  outputs: outputs2
8661
8661
  };
8662
8662
  }
8663
- const _sfc_main$s = defineComponent({
8663
+ const _sfc_main$x = defineComponent({
8664
8664
  name: "Sticky",
8665
8665
  props: {
8666
8666
  nodeViewScale: {
@@ -8933,14 +8933,14 @@ const _sfc_main$s = defineComponent({
8933
8933
  }
8934
8934
  }
8935
8935
  });
8936
- const _withScopeId$2 = (n) => (pushScopeId("data-v-6b154f28"), n = n(), popScopeId(), n);
8936
+ const _withScopeId$2 = (n) => (pushScopeId("data-v-d3f1b373"), n = n(), popScopeId(), n);
8937
8937
  const _hoisted_1$7 = ["id", "data-name"];
8938
8938
  const _hoisted_2$5 = { class: "select-sticky-background" };
8939
8939
  const _hoisted_3$3 = ["title"];
8940
- const _hoisted_4$2 = ["title"];
8941
- const _hoisted_5$2 = { class: "content" };
8940
+ const _hoisted_4$1 = ["title"];
8941
+ const _hoisted_5$1 = { class: "content" };
8942
8942
  const _hoisted_6$1 = ["onClick"];
8943
- function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
8943
+ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
8944
8944
  var _a, _b;
8945
8945
  const _component_N8nResizeableSticky = resolveComponent("N8nResizeableSticky");
8946
8946
  const _component_font_awesome_icon = resolveComponent("font-awesome-icon");
@@ -9024,10 +9024,10 @@ function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
9024
9024
  onClick: _cache[2] || (_cache[2] = () => _ctx.setColorPopoverVisible(!_ctx.isColorPopoverVisible))
9025
9025
  }, [
9026
9026
  createVNode(_component_font_awesome_icon, { icon: "palette" })
9027
- ], 8, _hoisted_4$2)
9027
+ ], 8, _hoisted_4$1)
9028
9028
  ]),
9029
9029
  default: withCtx(() => [
9030
- createBaseVNode("div", _hoisted_5$2, [
9030
+ createBaseVNode("div", _hoisted_5$1, [
9031
9031
  (openBlock(true), createElementBlock(Fragment, null, renderList(Array.from({ length: 7 }), (_, index) => {
9032
9032
  var _a2, _b2;
9033
9033
  return openBlock(), createElementBlock("div", {
@@ -9054,70 +9054,83 @@ function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
9054
9054
  ], 6)
9055
9055
  ], 12, _hoisted_1$7);
9056
9056
  }
9057
- const __unplugin_components_1 = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["render", _sfc_render$3], ["__scopeId", "data-v-6b154f28"]]);
9058
- const _sfc_main$r = defineComponent({
9059
- name: "Node",
9060
- components: {
9061
- TitledList,
9062
- FontAwesomeIcon,
9063
- NodeIcon: _sfc_main$Q
9064
- },
9057
+ const __unplugin_components_1 = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["render", _sfc_render$2], ["__scopeId", "data-v-d3f1b373"]]);
9058
+ const _withScopeId$1 = (n) => (pushScopeId("data-v-03df39cd"), n = n(), popScopeId(), n);
9059
+ const _hoisted_1$6 = ["id", "data-name", "data-node-type"];
9060
+ const _hoisted_2$4 = { class: "select-background" };
9061
+ const _hoisted_3$2 = {
9062
+ key: 0,
9063
+ class: "trigger-icon"
9064
+ };
9065
+ const _hoisted_4 = ["innerHTML"];
9066
+ const _hoisted_5 = {
9067
+ key: 0,
9068
+ class: "node-issues",
9069
+ "data-test-id": "node-issues"
9070
+ };
9071
+ const _hoisted_6 = {
9072
+ key: 1,
9073
+ class: "waiting"
9074
+ };
9075
+ const _hoisted_7 = ["textContent"];
9076
+ const _hoisted_8 = {
9077
+ key: 2,
9078
+ class: "node-pin-data-icon"
9079
+ };
9080
+ const _hoisted_9 = {
9081
+ key: 0,
9082
+ class: "items-count"
9083
+ };
9084
+ const _hoisted_10 = { key: 3 };
9085
+ const _hoisted_11 = {
9086
+ key: 4,
9087
+ class: "data-count"
9088
+ };
9089
+ const _hoisted_12 = {
9090
+ key: 0,
9091
+ class: "items-count"
9092
+ };
9093
+ const _hoisted_13 = ["title"];
9094
+ const _hoisted_14 = { class: "node-trigger-tooltip__wrapper" };
9095
+ const _hoisted_15 = ["textContent"];
9096
+ const _hoisted_16 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ createBaseVNode("span", null, null, -1));
9097
+ const _hoisted_17 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ createBaseVNode("span", null, null, -1));
9098
+ const _hoisted_18 = { class: "node-description" };
9099
+ const _hoisted_19 = ["title"];
9100
+ const _hoisted_20 = { "data-test-id": "canvas-node-box-title" };
9101
+ const _hoisted_21 = { key: 0 };
9102
+ const _hoisted_22 = ["title"];
9103
+ const _hoisted_23 = { class: "node-options-inner" };
9104
+ const _sfc_main$w = /* @__PURE__ */ defineComponent({
9105
+ __name: "Node",
9065
9106
  props: {
9066
- isProductionExecutionPreview: {
9067
- type: Boolean,
9068
- default: false
9069
- },
9070
- disablePointerEvents: {
9071
- type: Boolean,
9072
- default: false
9073
- },
9074
- hideNodeIssues: {
9075
- type: Boolean,
9076
- default: false
9077
- },
9078
- name: {
9079
- type: String,
9080
- required: true
9081
- },
9082
- instance: {
9083
- type: Object,
9084
- required: true
9085
- },
9086
- isReadOnly: {
9087
- type: Boolean
9088
- },
9089
- isActive: {
9090
- type: Boolean
9091
- },
9092
- hideActions: {
9093
- type: Boolean
9094
- },
9095
- disableSelecting: {
9096
- type: Boolean
9097
- },
9098
- showCustomTooltip: {
9099
- type: Boolean
9100
- },
9101
- workflow: {
9102
- type: Object,
9103
- required: true
9104
- }
9105
- },
9106
- emits: {
9107
- run: null,
9108
- runWorkflow: null,
9109
- removeNode: null,
9110
- toggleDisableNode: null
9107
+ name: {},
9108
+ instance: {},
9109
+ workflow: {},
9110
+ isReadOnly: { type: Boolean, default: false },
9111
+ isActive: { type: Boolean, default: false },
9112
+ hideActions: { type: Boolean, default: false },
9113
+ disableSelecting: { type: Boolean, default: false },
9114
+ showCustomTooltip: { type: Boolean, default: false },
9115
+ isProductionExecutionPreview: { type: Boolean, default: false },
9116
+ disablePointerEvents: { type: Boolean, default: false },
9117
+ hideNodeIssues: { type: Boolean, default: false }
9111
9118
  },
9112
- setup(props, { emit }) {
9119
+ emits: ["run", "runWorkflow", "removeNode", "toggleDisableNode"],
9120
+ setup(__props, { emit: __emit }) {
9121
+ const props = __props;
9122
+ const emit = __emit;
9113
9123
  const workflowsStore = useWorkflowsStore();
9124
+ const nodeTypesStore = useNodeTypesStore();
9125
+ const ndvStore = useNDVStore();
9126
+ const uiStore = useUIStore();
9114
9127
  const contextMenu2 = useContextMenu();
9115
- const externalHooks = useExternalHooks();
9116
9128
  const nodeHelpers = useNodeHelpers();
9117
- const node2 = workflowsStore.getNodeByName(props.name);
9118
- const pinnedData2 = usePinnedData(node2);
9129
+ const pinnedData2 = usePinnedData(workflowsStore.getNodeByName(props.name));
9119
9130
  const deviceSupport = useDeviceSupport();
9120
9131
  const { callDebounced } = useDebounce();
9132
+ const i18n2 = useI18n();
9133
+ const telemetry = useTelemetry();
9121
9134
  const nodeBase = useNodeBase({
9122
9135
  name: props.name,
9123
9136
  instance: props.instance,
@@ -9125,170 +9138,120 @@ const _sfc_main$r = defineComponent({
9125
9138
  isReadOnly: props.isReadOnly,
9126
9139
  emit
9127
9140
  });
9128
- return {
9129
- contextMenu: contextMenu2,
9130
- externalHooks,
9131
- nodeHelpers,
9132
- pinnedData: pinnedData2,
9133
- deviceSupport,
9134
- ...nodeBase,
9135
- callDebounced
9136
- };
9137
- },
9138
- data() {
9139
- return {
9140
- isTouchActive: false,
9141
- nodeSubtitle: "",
9142
- showTriggerNodeTooltip: false,
9143
- pinDataDiscoveryTooltipVisible: false,
9144
- dragging: false,
9145
- unwatchWorkflowDataItems: () => {
9146
- }
9147
- };
9148
- },
9149
- computed: {
9150
- ...mapStores(
9151
- useNodeTypesStore,
9152
- useCanvasStore,
9153
- useNDVStore,
9154
- useUIStore,
9155
- useWorkflowsStore,
9156
- useHistoryStore
9157
- ),
9158
- data() {
9159
- return this.workflowsStore.getNodeByName(this.name);
9160
- },
9161
- nodeId() {
9141
+ const isTouchActive = ref(false);
9142
+ const nodeSubtitle = ref("");
9143
+ const showTriggerNodeTooltip = ref(false);
9144
+ const pinDataDiscoveryTooltipVisible = ref(false);
9145
+ const dragging2 = ref(false);
9146
+ const node2 = computed(() => workflowsStore.getNodeByName(props.name));
9147
+ const nodeId = computed(() => {
9162
9148
  var _a;
9163
- return ((_a = this.data) == null ? void 0 : _a.id) || "";
9164
- },
9165
- showPinnedDataInfo() {
9166
- return this.pinnedData.hasData.value && !this.isProductionExecutionPreview;
9167
- },
9168
- isDuplicatable() {
9169
- if (!this.nodeType)
9170
- return true;
9171
- if (NOT_DUPLICATABLE_NODE_TYPES.includes(this.nodeType.name))
9172
- return false;
9173
- return this.nodeType.maxNodes === void 0 || this.sameTypeNodes.length < this.nodeType.maxNodes;
9174
- },
9175
- isScheduledGroup() {
9149
+ return ((_a = node2.value) == null ? void 0 : _a.id) ?? "";
9150
+ });
9151
+ const showPinnedDataInfo = computed(
9152
+ () => pinnedData2.hasData.value && !props.isProductionExecutionPreview
9153
+ );
9154
+ const isScheduledGroup = computed(() => {
9176
9155
  var _a;
9177
- return ((_a = this.nodeType) == null ? void 0 : _a.group.includes("schedule")) === true;
9178
- },
9179
- iconColorDefault() {
9180
- if (this.isConfigNode) {
9156
+ return ((_a = nodeType.value) == null ? void 0 : _a.group.includes("schedule")) === true;
9157
+ });
9158
+ const iconColorDefault = computed(() => {
9159
+ if (isConfigNode.value) {
9181
9160
  return "var(--color-text-base)";
9182
9161
  }
9183
9162
  return void 0;
9184
- },
9185
- nodeRunData() {
9186
- if (!this.data)
9163
+ });
9164
+ const nodeRunData = computed(() => {
9165
+ if (!node2.value)
9187
9166
  return [];
9188
- return this.workflowsStore.getWorkflowResultDataByNodeName(this.data.name) ?? [];
9189
- },
9190
- hasIssues() {
9167
+ return workflowsStore.getWorkflowResultDataByNodeName(node2.value.name) ?? [];
9168
+ });
9169
+ const hasIssues2 = computed(() => {
9191
9170
  var _a;
9192
- if (this.nodeExecutionStatus && ["crashed", "error"].includes(this.nodeExecutionStatus))
9171
+ if (nodeExecutionStatus.value && ["crashed", "error"].includes(nodeExecutionStatus.value))
9193
9172
  return true;
9194
- if (this.pinnedData.hasData.value)
9173
+ if (pinnedData2.hasData.value)
9195
9174
  return false;
9196
- if (((_a = this.data) == null ? void 0 : _a.issues) !== void 0 && Object.keys(this.data.issues).length) {
9175
+ if (((_a = node2.value) == null ? void 0 : _a.issues) !== void 0 && Object.keys(node2.value.issues).length) {
9197
9176
  return true;
9198
9177
  }
9199
9178
  return false;
9200
- },
9201
- workflowDataItems() {
9202
- const workflowResultDataNode = this.nodeRunData;
9179
+ });
9180
+ const workflowDataItems = computed(() => {
9181
+ const workflowResultDataNode = nodeRunData.value;
9203
9182
  if (workflowResultDataNode === null) {
9204
9183
  return 0;
9205
9184
  }
9206
9185
  return workflowResultDataNode.length;
9207
- },
9208
- canvasOffsetPosition() {
9209
- return this.uiStore.nodeViewOffsetPosition;
9210
- },
9211
- getTriggerNodeTooltip() {
9212
- if (this.nodeType !== null && this.nodeType.hasOwnProperty("eventTriggerDescription")) {
9213
- const nodeName = this.$locale.shortNodeType(this.nodeType.name);
9214
- const { eventTriggerDescription } = this.nodeType;
9215
- return this.$locale.nodeText().eventTriggerDescription(nodeName, eventTriggerDescription ?? "");
9186
+ });
9187
+ const canvasOffsetPosition = computed(() => uiStore.nodeViewOffsetPosition);
9188
+ const getTriggerNodeTooltip = computed(() => {
9189
+ if (nodeType.value !== null && nodeType.value.hasOwnProperty("eventTriggerDescription")) {
9190
+ const nodeName = i18n2.shortNodeType(nodeType.value.name);
9191
+ const { eventTriggerDescription } = nodeType.value;
9192
+ return i18n2.nodeText().eventTriggerDescription(nodeName, eventTriggerDescription ?? "");
9216
9193
  } else {
9217
- return this.$locale.baseText("node.waitingForYouToCreateAnEventIn", {
9194
+ return i18n2.baseText("node.waitingForYouToCreateAnEventIn", {
9218
9195
  interpolate: {
9219
- nodeType: this.nodeType ? getTriggerNodeServiceName(this.nodeType) : ""
9196
+ nodeType: nodeType.value ? getTriggerNodeServiceName(nodeType.value) : ""
9220
9197
  }
9221
9198
  });
9222
9199
  }
9223
- },
9224
- isPollingTypeNode() {
9200
+ });
9201
+ const isPollingTypeNode = computed(() => {
9225
9202
  var _a;
9226
- return !!((_a = this.nodeType) == null ? void 0 : _a.polling);
9227
- },
9228
- isExecuting() {
9229
- if (!this.data)
9203
+ return !!((_a = nodeType.value) == null ? void 0 : _a.polling);
9204
+ });
9205
+ const isExecuting = computed(() => {
9206
+ if (!node2.value)
9230
9207
  return false;
9231
- return this.workflowsStore.isNodeExecuting(this.data.name);
9232
- },
9233
- isSingleActiveTriggerNode() {
9234
- const nodes = this.workflowsStore.workflowTriggerNodes.filter((node2) => {
9235
- const nodeType = this.nodeTypesStore.getNodeType(node2.type, node2.typeVersion);
9236
- return nodeType && nodeType.eventTriggerDescription !== "" && !node2.disabled;
9208
+ return workflowsStore.isNodeExecuting(node2.value.name);
9209
+ });
9210
+ const isSingleActiveTriggerNode = computed(() => {
9211
+ const nodes = workflowsStore.workflowTriggerNodes.filter((triggerNode) => {
9212
+ const nodeType2 = nodeTypesStore.getNodeType(triggerNode.type, triggerNode.typeVersion);
9213
+ return nodeType2 && nodeType2.eventTriggerDescription !== "" && !triggerNode.disabled;
9237
9214
  });
9238
9215
  return nodes.length === 1;
9239
- },
9240
- isManualTypeNode() {
9216
+ });
9217
+ const isManualTypeNode = computed(() => {
9241
9218
  var _a;
9242
- return ((_a = this.data) == null ? void 0 : _a.type) === MANUAL_TRIGGER_NODE_TYPE;
9243
- },
9244
- isConfigNode() {
9245
- if (!this.data)
9219
+ return ((_a = node2.value) == null ? void 0 : _a.type) === MANUAL_TRIGGER_NODE_TYPE;
9220
+ });
9221
+ const isConfigNode = computed(() => {
9222
+ if (!node2.value)
9246
9223
  return false;
9247
- return this.nodeTypesStore.isConfigNode(this.workflow, this.data, this.data.type ?? "");
9248
- },
9249
- isConfigurableNode() {
9224
+ return nodeTypesStore.isConfigNode(props.workflow, node2.value, node2.value.type ?? "");
9225
+ });
9226
+ const isConfigurableNode = computed(() => {
9250
9227
  var _a;
9251
- if (!this.data)
9228
+ if (!node2.value)
9252
9229
  return false;
9253
- return this.nodeTypesStore.isConfigurableNode(
9254
- this.workflow,
9255
- this.data,
9256
- ((_a = this.data) == null ? void 0 : _a.type) ?? ""
9257
- );
9258
- },
9259
- isTriggerNode() {
9260
- return this.data ? this.nodeTypesStore.isTriggerNode(this.data.type) : false;
9261
- },
9262
- isTriggerNodeTooltipEmpty() {
9263
- return this.nodeType !== null ? this.nodeType.eventTriggerDescription === "" : false;
9264
- },
9265
- isNodeDisabled() {
9266
- return this.node && this.node.disabled;
9267
- },
9268
- nodeType() {
9269
- return this.data && this.nodeTypesStore.getNodeType(this.data.type, this.data.typeVersion);
9270
- },
9271
- node() {
9272
- return this.workflowsStore.nodesByName[this.name];
9273
- },
9274
- sameTypeNodes() {
9275
- return this.workflowsStore.allNodes.filter((node2) => {
9276
- var _a;
9277
- return node2.type === ((_a = this.data) == null ? void 0 : _a.type);
9278
- });
9279
- },
9280
- nodeWrapperClass() {
9230
+ return nodeTypesStore.isConfigurableNode(props.workflow, node2.value, ((_a = node2.value) == null ? void 0 : _a.type) ?? "");
9231
+ });
9232
+ const isTriggerNode = computed(
9233
+ () => node2.value ? nodeTypesStore.isTriggerNode(node2.value.type) : false
9234
+ );
9235
+ const isTriggerNodeTooltipEmpty = computed(
9236
+ () => nodeType.value !== null ? nodeType.value.eventTriggerDescription === "" : false
9237
+ );
9238
+ const isNodeDisabled = computed(() => {
9239
+ var _a;
9240
+ return ((_a = node2.value) == null ? void 0 : _a.disabled) ?? false;
9241
+ });
9242
+ const nodeType = computed(
9243
+ () => node2.value && nodeTypesStore.getNodeType(node2.value.type, node2.value.typeVersion)
9244
+ );
9245
+ const nodeWrapperClass = computed(() => {
9281
9246
  const classes = {
9282
9247
  "node-wrapper": true,
9283
- "node-wrapper--trigger": this.isTriggerNode,
9284
- "node-wrapper--configurable": this.isConfigurableNode,
9285
- "node-wrapper--config": this.isConfigNode
9248
+ "node-wrapper--trigger": isTriggerNode.value,
9249
+ "node-wrapper--configurable": isConfigurableNode.value,
9250
+ "node-wrapper--config": isConfigNode.value
9286
9251
  };
9287
- if (this.outputs.length) {
9288
- const outputTypes = getConnectionTypes(this.outputs);
9289
- const otherOutputs = outputTypes.filter(
9290
- (outputName) => outputName !== NodeConnectionType.Main
9291
- );
9252
+ if (nodeBase.outputs.value.length) {
9253
+ const outputTypes = getConnectionTypes(nodeBase.outputs.value);
9254
+ const otherOutputs = outputTypes.filter((outputName) => outputName !== NodeConnectionType.Main);
9292
9255
  if (otherOutputs.length) {
9293
9256
  otherOutputs.forEach((outputName) => {
9294
9257
  classes[`node-wrapper--connection-type-${outputName}`] = true;
@@ -9296,14 +9259,14 @@ const _sfc_main$r = defineComponent({
9296
9259
  }
9297
9260
  }
9298
9261
  return classes;
9299
- },
9300
- nodeWrapperStyles() {
9262
+ });
9263
+ const nodeWrapperStyles = computed(() => {
9301
9264
  const styles = {
9302
- left: this.position[0] + "px",
9303
- top: this.position[1] + "px"
9265
+ left: position2.value[0] + "px",
9266
+ top: position2.value[1] + "px"
9304
9267
  };
9305
- if (this.node && this.nodeType) {
9306
- const inputs2 = getNodeInputs(this.workflow, this.node, this.nodeType) || [];
9268
+ if (node2.value && nodeType.value) {
9269
+ const inputs2 = getNodeInputs(props.workflow, node2.value, nodeType.value) ?? [];
9307
9270
  const inputTypes = getConnectionTypes(inputs2);
9308
9271
  const nonMainInputs = inputTypes.filter((input) => input !== NodeConnectionType.Main);
9309
9272
  if (nonMainInputs.length) {
@@ -9321,35 +9284,35 @@ const _sfc_main$r = defineComponent({
9321
9284
  const mainInputs = inputTypes.filter((output) => output === NodeConnectionType.Main);
9322
9285
  styles["--node-main-input-count"] = mainInputs.length;
9323
9286
  let outputs2 = [];
9324
- if (this.workflow.nodes[this.node.name]) {
9325
- outputs2 = getNodeOutputs(this.workflow, this.node, this.nodeType);
9287
+ if (props.workflow.nodes[node2.value.name]) {
9288
+ outputs2 = getNodeOutputs(props.workflow, node2.value, nodeType.value);
9326
9289
  }
9327
9290
  const outputTypes = getConnectionTypes(outputs2);
9328
9291
  const mainOutputs = outputTypes.filter((output) => output === NodeConnectionType.Main);
9329
9292
  styles["--node-main-output-count"] = mainOutputs.length;
9330
9293
  }
9331
9294
  return styles;
9332
- },
9333
- nodeClass() {
9295
+ });
9296
+ const nodeClass = computed(() => {
9334
9297
  var _a;
9335
9298
  return {
9336
9299
  "node-box": true,
9337
- disabled: (_a = this.data) == null ? void 0 : _a.disabled,
9338
- executing: this.isExecuting
9300
+ disabled: (_a = node2.value) == null ? void 0 : _a.disabled,
9301
+ executing: isExecuting.value
9339
9302
  };
9340
- },
9341
- nodeExecutionStatus() {
9303
+ });
9304
+ const nodeExecutionStatus = computed(() => {
9342
9305
  var _a;
9343
- const nodeExecutionRunData = (_a = this.workflowsStore.getWorkflowRunData) == null ? void 0 : _a[this.name];
9306
+ const nodeExecutionRunData = (_a = workflowsStore.getWorkflowRunData) == null ? void 0 : _a[props.name];
9344
9307
  if (nodeExecutionRunData) {
9345
9308
  return nodeExecutionRunData.filter(Boolean)[0].executionStatus ?? "";
9346
9309
  }
9347
9310
  return "";
9348
- },
9349
- nodeIssues() {
9311
+ });
9312
+ const nodeIssues = computed(() => {
9350
9313
  var _a, _b;
9351
9314
  const issues2 = [];
9352
- const nodeExecutionRunData = (_a = this.workflowsStore.getWorkflowRunData) == null ? void 0 : _a[this.name];
9315
+ const nodeExecutionRunData = (_a = workflowsStore.getWorkflowRunData) == null ? void 0 : _a[props.name];
9353
9316
  if (nodeExecutionRunData) {
9354
9317
  nodeExecutionRunData.forEach((executionRunData) => {
9355
9318
  if (executionRunData == null ? void 0 : executionRunData.error) {
@@ -9359,48 +9322,42 @@ const _sfc_main$r = defineComponent({
9359
9322
  }
9360
9323
  });
9361
9324
  }
9362
- if (((_b = this.data) == null ? void 0 : _b.issues) !== void 0) {
9363
- issues2.push(...nodeIssuesToString(this.data.issues, this.data));
9325
+ if (((_b = node2.value) == null ? void 0 : _b.issues) !== void 0) {
9326
+ issues2.push(...nodeIssuesToString(node2.value.issues, node2.value));
9364
9327
  }
9365
9328
  return issues2;
9366
- },
9367
- nodeDisabledTitle() {
9368
- var _a;
9369
- return ((_a = this.data) == null ? void 0 : _a.disabled) ? this.$locale.baseText("node.enable") : this.$locale.baseText("node.disable");
9370
- },
9371
- position() {
9372
- return this.node ? this.node.position : [0, 0];
9373
- },
9374
- showDisabledLineThrough() {
9375
- var _a;
9376
- return !this.isConfigurableNode && !!(((_a = this.data) == null ? void 0 : _a.disabled) && this.inputs.length === 1 && this.outputs.length === 1);
9377
- },
9378
- shortNodeType() {
9329
+ });
9330
+ const nodeDisabledTitle2 = computed(() => {
9379
9331
  var _a;
9380
- return this.$locale.shortNodeType(((_a = this.data) == null ? void 0 : _a.type) ?? "");
9381
- },
9382
- nodeTitle() {
9332
+ return ((_a = node2.value) == null ? void 0 : _a.disabled) ? i18n2.baseText("node.enable") : i18n2.baseText("node.disable");
9333
+ });
9334
+ const position2 = computed(() => node2.value ? node2.value.position : [0, 0]);
9335
+ const showDisabledLineThrough = computed(
9336
+ () => {
9337
+ var _a;
9338
+ return !isConfigurableNode.value && !!(((_a = node2.value) == null ? void 0 : _a.disabled) && nodeBase.inputs.value.length === 1 && nodeBase.outputs.value.length === 1);
9339
+ }
9340
+ );
9341
+ const nodeTitle = computed(() => {
9383
9342
  var _a, _b;
9384
- if (((_a = this.data) == null ? void 0 : _a.name) === "Start") {
9385
- return this.$locale.headerText({
9343
+ if (((_a = node2.value) == null ? void 0 : _a.name) === "Start") {
9344
+ return i18n2.headerText({
9386
9345
  key: "headers.start.displayName",
9387
9346
  fallback: "Start"
9388
9347
  });
9389
9348
  }
9390
- return ((_b = this.data) == null ? void 0 : _b.name) ?? "";
9391
- },
9392
- waiting() {
9393
- const workflowExecution = this.workflowsStore.getWorkflowExecution;
9349
+ return ((_b = node2.value) == null ? void 0 : _b.name) ?? "";
9350
+ });
9351
+ const waiting = computed(() => {
9352
+ const workflowExecution = workflowsStore.getWorkflowExecution;
9394
9353
  if (workflowExecution == null ? void 0 : workflowExecution.waitTill) {
9395
9354
  const lastNodeExecuted = get(workflowExecution, "data.resultData.lastNodeExecuted");
9396
- if (this.name === lastNodeExecuted) {
9355
+ if (props.name === lastNodeExecuted) {
9397
9356
  const waitDate = new Date(workflowExecution.waitTill);
9398
9357
  if (waitDate.toISOString() === WAIT_TIME_UNLIMITED) {
9399
- return this.$locale.baseText(
9400
- "node.theNodeIsWaitingIndefinitelyForAnIncomingWebhookCall"
9401
- );
9358
+ return i18n2.baseText("node.theNodeIsWaitingIndefinitelyForAnIncomingWebhookCall");
9402
9359
  }
9403
- return this.$locale.baseText("node.nodeIsWaitingTill", {
9360
+ return i18n2.baseText("node.nodeIsWaitingTill", {
9404
9361
  interpolate: {
9405
9362
  date: waitDate.toLocaleDateString(),
9406
9363
  time: waitDate.toLocaleTimeString()
@@ -9409,31 +9366,29 @@ const _sfc_main$r = defineComponent({
9409
9366
  }
9410
9367
  }
9411
9368
  return void 0;
9412
- },
9413
- workflowRunning() {
9414
- return this.uiStore.isActionActive["workflowRunning"];
9415
- },
9416
- nodeStyle() {
9369
+ });
9370
+ const workflowRunning2 = computed(() => uiStore.isActionActive.workflowRunning);
9371
+ const nodeStyle = computed(() => {
9417
9372
  var _a, _b, _c, _d;
9418
9373
  const returnStyles = {};
9419
9374
  let borderColor = "--color-foreground-xdark";
9420
- if (this.isConfigurableNode || this.isConfigNode) {
9375
+ if (isConfigurableNode.value || isConfigNode.value) {
9421
9376
  borderColor = "--color-foreground-dark";
9422
9377
  }
9423
- if ((_a = this.data) == null ? void 0 : _a.disabled) {
9378
+ if ((_a = node2.value) == null ? void 0 : _a.disabled) {
9424
9379
  borderColor = "--color-foreground-base";
9425
- } else if (!this.isExecuting) {
9426
- if (this.hasIssues && !this.hideNodeIssues) {
9427
- if (((_d = (_c = (_b = this.nodeRunData) == null ? void 0 : _b[0]) == null ? void 0 : _c.error) == null ? void 0 : _d.functionality) !== "configuration-node") {
9380
+ } else if (!isExecuting.value) {
9381
+ if (hasIssues2.value && !props.hideNodeIssues) {
9382
+ if (((_d = (_c = (_b = nodeRunData.value) == null ? void 0 : _b[0]) == null ? void 0 : _c.error) == null ? void 0 : _d.functionality) !== "configuration-node") {
9428
9383
  borderColor = "--color-danger";
9429
9384
  returnStyles["border-width"] = "2px";
9430
9385
  returnStyles["border-style"] = "solid";
9431
9386
  }
9432
- } else if (!!this.waiting || this.showPinnedDataInfo) {
9387
+ } else if (!!waiting.value || showPinnedDataInfo.value) {
9433
9388
  borderColor = "--color-node-pinned-border";
9434
- } else if (this.nodeExecutionStatus === "unknown") {
9389
+ } else if (nodeExecutionStatus.value === "unknown") {
9435
9390
  borderColor = "--color-foreground-xdark";
9436
- } else if (this.workflowDataItems) {
9391
+ } else if (workflowDataItems.value) {
9437
9392
  returnStyles["border-width"] = "2px";
9438
9393
  returnStyles["border-style"] = "solid";
9439
9394
  borderColor = "--color-success";
@@ -9441,467 +9396,462 @@ const _sfc_main$r = defineComponent({
9441
9396
  }
9442
9397
  returnStyles["border-color"] = `var(${borderColor})`;
9443
9398
  return returnStyles;
9444
- },
9445
- isSelected() {
9446
- return this.uiStore.getSelectedNodes.find((node2) => {
9399
+ });
9400
+ const isSelected = computed(
9401
+ () => uiStore.getSelectedNodes.find((n) => {
9447
9402
  var _a;
9448
- return node2.name === ((_a = this.data) == null ? void 0 : _a.name);
9449
- }) !== void 0;
9450
- },
9451
- shiftOutputCount() {
9452
- return !!(this.nodeType && this.outputs.length > 2);
9453
- },
9454
- shouldShowTriggerTooltip() {
9455
- return !!this.node && this.isTriggerNode && !this.isPollingTypeNode && !this.pinnedData.hasData.value && !this.isNodeDisabled && this.workflowRunning && this.workflowDataItems === 0 && this.isSingleActiveTriggerNode && !this.isTriggerNodeTooltipEmpty && !this.hasIssues && !this.dragging;
9456
- },
9457
- isContextMenuOpen() {
9458
- var _a, _b;
9459
- return this.contextMenu.isOpen.value && ((_a = this.contextMenu.target.value) == null ? void 0 : _a.source) === "node-button" && this.contextMenu.target.value.nodeId === ((_b = this.data) == null ? void 0 : _b.id);
9460
- },
9461
- iconNodeType() {
9403
+ return n.name === ((_a = node2.value) == null ? void 0 : _a.name);
9404
+ }) !== void 0
9405
+ );
9406
+ const shiftOutputCount = computed(() => !!(nodeType.value && nodeBase.outputs.value.length > 2));
9407
+ const shouldShowTriggerTooltip = computed(() => {
9408
+ return !!node2.value && isTriggerNode.value && !isPollingTypeNode.value && !pinnedData2.hasData.value && !isNodeDisabled.value && workflowRunning2.value && workflowDataItems.value === 0 && isSingleActiveTriggerNode.value && !isTriggerNodeTooltipEmpty.value && !hasIssues2.value && !dragging2.value;
9409
+ });
9410
+ const isContextMenuOpen = computed(
9411
+ () => {
9412
+ var _a, _b;
9413
+ return contextMenu2.isOpen.value && ((_a = contextMenu2.target.value) == null ? void 0 : _a.source) === "node-button" && contextMenu2.target.value.nodeId === ((_b = node2.value) == null ? void 0 : _b.id);
9414
+ }
9415
+ );
9416
+ const iconNodeType = computed(() => {
9462
9417
  var _a, _b, _c;
9463
- if (((_a = this.data) == null ? void 0 : _a.type) === SIMULATE_NODE_TYPE || ((_b = this.data) == null ? void 0 : _b.type) === SIMULATE_TRIGGER_NODE_TYPE) {
9464
- const icon2 = (_c = this.data.parameters) == null ? void 0 : _c.icon;
9465
- const iconNodeType = this.workflow.expression.getSimpleParameterValue(
9466
- this.data,
9418
+ if (((_a = node2.value) == null ? void 0 : _a.type) === SIMULATE_NODE_TYPE || ((_b = node2.value) == null ? void 0 : _b.type) === SIMULATE_TRIGGER_NODE_TYPE) {
9419
+ const icon2 = (_c = node2.value.parameters) == null ? void 0 : _c.icon;
9420
+ const iconValue = props.workflow.expression.getSimpleParameterValue(
9421
+ node2.value,
9467
9422
  icon2,
9468
9423
  "internal",
9469
9424
  {}
9470
9425
  );
9471
- if (iconNodeType && typeof iconNodeType === "string") {
9472
- return this.nodeTypesStore.getNodeType(iconNodeType);
9426
+ if (iconValue && typeof iconValue === "string") {
9427
+ return nodeTypesStore.getNodeType(iconValue);
9473
9428
  }
9474
9429
  }
9475
- return this.nodeType;
9476
- }
9477
- },
9478
- watch: {
9479
- isActive(newValue, oldValue) {
9480
- if (!newValue && oldValue) {
9481
- this.setSubtitle();
9430
+ return nodeType.value;
9431
+ });
9432
+ const hasSeenPinDataTooltip = useStorage(LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG);
9433
+ watch(
9434
+ () => props.isActive,
9435
+ (newValue, oldValue) => {
9436
+ if (!newValue && oldValue) {
9437
+ setSubtitle();
9438
+ }
9482
9439
  }
9483
- },
9484
- canvasOffsetPosition() {
9485
- if (this.showTriggerNodeTooltip) {
9486
- this.showTriggerNodeTooltip = false;
9440
+ );
9441
+ watch(canvasOffsetPosition, () => {
9442
+ if (showTriggerNodeTooltip.value) {
9443
+ showTriggerNodeTooltip.value = false;
9487
9444
  setTimeout(() => {
9488
- this.showTriggerNodeTooltip = this.shouldShowTriggerTooltip;
9445
+ showTriggerNodeTooltip.value = shouldShowTriggerTooltip.value;
9489
9446
  }, 200);
9490
9447
  }
9491
- if (this.pinDataDiscoveryTooltipVisible) {
9492
- this.pinDataDiscoveryTooltipVisible = false;
9448
+ if (pinDataDiscoveryTooltipVisible.value) {
9449
+ pinDataDiscoveryTooltipVisible.value = false;
9493
9450
  setTimeout(() => {
9494
- this.pinDataDiscoveryTooltipVisible = true;
9451
+ pinDataDiscoveryTooltipVisible.value = true;
9495
9452
  }, 200);
9496
9453
  }
9497
- },
9498
- shouldShowTriggerTooltip(shouldShowTriggerTooltip) {
9499
- if (shouldShowTriggerTooltip) {
9454
+ });
9455
+ watch(shouldShowTriggerTooltip, (newValue) => {
9456
+ if (newValue) {
9500
9457
  setTimeout(() => {
9501
- this.showTriggerNodeTooltip = this.shouldShowTriggerTooltip;
9458
+ showTriggerNodeTooltip.value = shouldShowTriggerTooltip.value;
9502
9459
  }, 2500);
9503
9460
  } else {
9504
- this.showTriggerNodeTooltip = false;
9461
+ showTriggerNodeTooltip.value = false;
9505
9462
  }
9506
- },
9507
- nodeRunData: {
9508
- deep: true,
9509
- handler(newValue) {
9510
- if (!this.data) {
9463
+ });
9464
+ watch(
9465
+ nodeRunData,
9466
+ (newValue) => {
9467
+ if (!node2.value) {
9511
9468
  return;
9512
9469
  }
9513
- this.$emit("run", { name: this.data.name, data: newValue, waiting: !!this.waiting });
9514
- }
9515
- }
9516
- },
9517
- created() {
9518
- const hasSeenPinDataTooltip = useStorage(LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG).value;
9519
- if (!hasSeenPinDataTooltip) {
9520
- this.unwatchWorkflowDataItems = this.$watch("workflowDataItems", (dataItemsCount) => {
9521
- this.showPinDataDiscoveryTooltip(dataItemsCount);
9522
- });
9523
- }
9524
- },
9525
- mounted() {
9526
- if (this.data !== null) {
9527
- try {
9528
- this.addNode(this.data);
9529
- } catch (error2) {
9470
+ emit("run", { name: node2.value.name, data: newValue, waiting: !!waiting.value });
9471
+ },
9472
+ { deep: true }
9473
+ );
9474
+ const unwatchWorkflowDataItems = watch(workflowDataItems, (dataItemsCount) => {
9475
+ if (!hasSeenPinDataTooltip.value)
9476
+ showPinDataDiscoveryTooltip(dataItemsCount);
9477
+ });
9478
+ onMounted(() => {
9479
+ if (node2.value !== null) {
9480
+ try {
9481
+ nodeBase.addNode(node2.value);
9482
+ } catch (error2) {
9483
+ }
9530
9484
  }
9531
- }
9532
- setTimeout(() => {
9533
- this.setSubtitle();
9534
- }, 0);
9535
- if (this.nodeRunData) {
9536
9485
  setTimeout(() => {
9537
- var _a;
9538
- this.$emit("run", {
9539
- name: (_a = this.data) == null ? void 0 : _a.name,
9540
- data: this.nodeRunData,
9541
- waiting: !!this.waiting
9542
- });
9486
+ setSubtitle();
9543
9487
  }, 0);
9544
- }
9545
- },
9546
- methods: {
9547
- showPinDataDiscoveryTooltip(dataItemsCount) {
9548
- if (!this.isTriggerNode || this.isManualTypeNode || this.isScheduledGroup || this.uiStore.isAnyModalOpen || dataItemsCount === 0)
9488
+ setTimeout(() => {
9489
+ if (nodeRunData.value && node2.value) {
9490
+ emit("run", {
9491
+ name: node2.value.name,
9492
+ data: nodeRunData.value,
9493
+ waiting: !!waiting.value
9494
+ });
9495
+ }
9496
+ }, 0);
9497
+ });
9498
+ function showPinDataDiscoveryTooltip(dataItemsCount) {
9499
+ if (!isTriggerNode.value || isManualTypeNode.value || isScheduledGroup.value || uiStore.isAnyModalOpen || dataItemsCount === 0)
9549
9500
  return;
9550
9501
  useStorage(LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG).value = "true";
9551
- this.pinDataDiscoveryTooltipVisible = true;
9552
- this.unwatchWorkflowDataItems();
9553
- },
9554
- setSubtitle() {
9555
- if (!this.data || !this.nodeType)
9502
+ pinDataDiscoveryTooltipVisible.value = true;
9503
+ unwatchWorkflowDataItems();
9504
+ }
9505
+ function setSubtitle() {
9506
+ if (!node2.value || !nodeType.value)
9556
9507
  return;
9557
9508
  try {
9558
- const nodeSubtitle = this.nodeHelpers.getNodeSubtitle(this.data, this.nodeType, this.workflow) ?? "";
9559
- this.nodeSubtitle = nodeSubtitle.includes(CUSTOM_API_CALL_KEY) ? "" : nodeSubtitle;
9509
+ const subtitle2 = nodeHelpers.getNodeSubtitle(node2.value, nodeType.value, props.workflow) ?? "";
9510
+ nodeSubtitle.value = subtitle2.includes(CUSTOM_API_CALL_KEY) ? "" : subtitle2;
9560
9511
  } catch (e) {
9561
9512
  }
9562
- },
9563
- disableNode() {
9564
- if (this.data !== null) {
9565
- this.nodeHelpers.disableNodes([this.data]);
9566
- this.historyStore.pushCommandToUndo(
9567
- new EnableNodeToggleCommand(
9568
- this.data.name,
9569
- !this.data.disabled,
9570
- this.data.disabled === true
9571
- )
9572
- );
9573
- this.$telemetry.track("User clicked node hover button", {
9574
- node_type: this.data.type,
9575
- button_name: "disable",
9576
- workflow_id: this.workflowsStore.workflowId
9577
- });
9578
- }
9579
- },
9580
- executeNode() {
9581
- var _a, _b;
9582
- this.$emit("runWorkflow", (_a = this.data) == null ? void 0 : _a.name, "Node.executeNode");
9583
- this.$telemetry.track("User clicked node hover button", {
9584
- node_type: (_b = this.data) == null ? void 0 : _b.type,
9513
+ }
9514
+ function executeNode() {
9515
+ if (!node2.value)
9516
+ return;
9517
+ emit("runWorkflow", node2.value.name, "Node.executeNode");
9518
+ telemetry.track("User clicked node hover button", {
9519
+ node_type: node2.value.type,
9585
9520
  button_name: "execute",
9586
- workflow_id: this.workflowsStore.workflowId
9521
+ workflow_id: workflowsStore.workflowId
9587
9522
  });
9588
- },
9589
- deleteNode() {
9590
- var _a, _b;
9591
- this.$telemetry.track("User clicked node hover button", {
9592
- node_type: (_a = this.data) == null ? void 0 : _a.type,
9523
+ }
9524
+ function deleteNode() {
9525
+ if (!node2.value)
9526
+ return;
9527
+ telemetry.track("User clicked node hover button", {
9528
+ node_type: node2.value.type,
9593
9529
  button_name: "delete",
9594
- workflow_id: this.workflowsStore.workflowId
9530
+ workflow_id: workflowsStore.workflowId
9595
9531
  });
9596
- this.$emit("removeNode", (_b = this.data) == null ? void 0 : _b.name);
9597
- },
9598
- toggleDisableNode(event) {
9532
+ emit("removeNode", node2.value.name);
9533
+ }
9534
+ function toggleDisableNode(event) {
9599
9535
  var _a;
9536
+ if (!node2.value)
9537
+ return;
9600
9538
  event.currentTarget.blur();
9601
- this.$telemetry.track("User clicked node hover button", {
9602
- node_type: (_a = this.data) == null ? void 0 : _a.type,
9539
+ telemetry.track("User clicked node hover button", {
9540
+ node_type: (_a = node2.value) == null ? void 0 : _a.type,
9603
9541
  button_name: "disable",
9604
- workflow_id: this.workflowsStore.workflowId
9542
+ workflow_id: workflowsStore.workflowId
9605
9543
  });
9606
- this.$emit("toggleDisableNode", this.data);
9607
- },
9608
- onClick(event) {
9609
- void this.callDebounced(this.onClickDebounced, { debounceTime: 50, trailing: true }, event);
9610
- },
9611
- onClickDebounced(...args) {
9544
+ emit("toggleDisableNode", node2.value);
9545
+ }
9546
+ function onClick(event) {
9547
+ void callDebounced(onClickDebounced, { debounceTime: 50, trailing: true }, event);
9548
+ }
9549
+ function onClickDebounced(...args) {
9612
9550
  const event = args[0];
9613
9551
  const isDoubleClick = event.detail >= 2;
9614
9552
  if (isDoubleClick) {
9615
- this.setNodeActive();
9553
+ setNodeActive();
9616
9554
  } else {
9617
- this.mouseLeftClick(event);
9555
+ nodeBase.mouseLeftClick(event);
9618
9556
  }
9619
- },
9620
- setNodeActive() {
9621
- this.ndvStore.activeNodeName = this.data ? this.data.name : "";
9622
- this.pinDataDiscoveryTooltipVisible = false;
9623
- },
9624
- touchStart() {
9625
- if (this.deviceSupport.isTouchDevice && !this.deviceSupport.isMacOs && !this.isTouchActive) {
9626
- this.isTouchActive = true;
9557
+ }
9558
+ function setNodeActive() {
9559
+ ndvStore.activeNodeName = node2.value ? node2.value.name : "";
9560
+ pinDataDiscoveryTooltipVisible.value = false;
9561
+ }
9562
+ function touchStart() {
9563
+ if (deviceSupport.isTouchDevice && !deviceSupport.isMacOs && !isTouchActive.value) {
9564
+ isTouchActive.value = true;
9627
9565
  setTimeout(() => {
9628
- this.isTouchActive = false;
9566
+ isTouchActive.value = false;
9629
9567
  }, 2e3);
9630
9568
  }
9631
- },
9632
- openContextMenu(event, source) {
9633
- if (this.data) {
9634
- this.contextMenu.open(event, { source, nodeId: this.data.id });
9569
+ }
9570
+ const touchEnd = nodeBase.touchEnd;
9571
+ function openContextMenu(event, source) {
9572
+ if (node2.value) {
9573
+ contextMenu2.open(event, { source, nodeId: node2.value.id });
9635
9574
  }
9636
9575
  }
9637
- }
9638
- });
9639
- const _withScopeId$1 = (n) => (pushScopeId("data-v-75cfc2b3"), n = n(), popScopeId(), n);
9640
- const _hoisted_1$6 = ["id", "data-name", "data-node-type"];
9641
- const _hoisted_2$4 = { class: "select-background" };
9642
- const _hoisted_3$2 = {
9643
- key: 0,
9644
- class: "trigger-icon"
9645
- };
9646
- const _hoisted_4$1 = ["innerHTML"];
9647
- const _hoisted_5$1 = {
9648
- key: 0,
9649
- class: "node-issues",
9650
- "data-test-id": "node-issues"
9651
- };
9652
- const _hoisted_6 = {
9653
- key: 1,
9654
- class: "waiting"
9655
- };
9656
- const _hoisted_7 = ["textContent"];
9657
- const _hoisted_8 = {
9658
- key: 2,
9659
- class: "node-pin-data-icon"
9660
- };
9661
- const _hoisted_9 = {
9662
- key: 0,
9663
- class: "items-count"
9664
- };
9665
- const _hoisted_10 = { key: 3 };
9666
- const _hoisted_11 = {
9667
- key: 4,
9668
- class: "data-count"
9669
- };
9670
- const _hoisted_12 = {
9671
- key: 0,
9672
- class: "items-count"
9673
- };
9674
- const _hoisted_13 = ["title"];
9675
- const _hoisted_14 = { class: "node-trigger-tooltip__wrapper" };
9676
- const _hoisted_15 = ["textContent"];
9677
- const _hoisted_16 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ createBaseVNode("span", null, null, -1));
9678
- const _hoisted_17 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ createBaseVNode("span", null, null, -1));
9679
- const _hoisted_18 = { class: "node-description" };
9680
- const _hoisted_19 = ["title"];
9681
- const _hoisted_20 = { "data-test-id": "canvas-node-box-title" };
9682
- const _hoisted_21 = { key: 0 };
9683
- const _hoisted_22 = ["title"];
9684
- const _hoisted_23 = { class: "node-options-inner" };
9685
- function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
9686
- var _a;
9687
- const _component_FontAwesomeIcon = resolveComponent("FontAwesomeIcon");
9688
- const _component_n8n_tooltip = resolveComponent("n8n-tooltip");
9689
- const _component_TitledList = TitledList;
9690
- const _component_NodeIcon = _sfc_main$Q;
9691
- const _component_n8n_icon_button = resolveComponent("n8n-icon-button");
9692
- const _directive_touch = resolveDirective("touch");
9693
- return _ctx.data ? (openBlock(), createElementBlock("div", {
9694
- key: 0,
9695
- id: _ctx.nodeId,
9696
- ref: _ctx.data.name,
9697
- class: normalizeClass(_ctx.nodeWrapperClass),
9698
- style: normalizeStyle(_ctx.nodeWrapperStyles),
9699
- "data-test-id": "canvas-node",
9700
- "data-name": _ctx.data.name,
9701
- "data-node-type": (_a = _ctx.nodeType) == null ? void 0 : _a.name,
9702
- onContextmenu: _cache[4] || (_cache[4] = (e) => _ctx.openContextMenu(e, "node-right-click"))
9703
- }, [
9704
- withDirectives(createBaseVNode("div", _hoisted_2$4, null, 512), [
9705
- [vShow, _ctx.isSelected]
9706
- ]),
9707
- createBaseVNode("div", {
9708
- class: normalizeClass({
9709
- "node-default": true,
9710
- "touch-active": _ctx.isTouchActive,
9711
- "is-touch-device": _ctx.deviceSupport.isTouchDevice,
9712
- "menu-open": _ctx.isContextMenuOpen,
9713
- "disable-pointer-events": _ctx.disablePointerEvents
9714
- })
9715
- }, [
9716
- withDirectives((openBlock(), createElementBlock("div", {
9717
- class: normalizeClass(_ctx.nodeClass),
9718
- style: normalizeStyle(_ctx.nodeStyle),
9719
- onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.onClick && _ctx.onClick(...args), ["left"]))
9576
+ return (_ctx, _cache) => {
9577
+ var _a;
9578
+ const _component_n8n_tooltip = resolveComponent("n8n-tooltip");
9579
+ const _directive_touch = resolveDirective("touch");
9580
+ return node2.value ? (openBlock(), createElementBlock("div", {
9581
+ key: 0,
9582
+ id: nodeId.value,
9583
+ ref: node2.value.name,
9584
+ class: normalizeClass(nodeWrapperClass.value),
9585
+ style: normalizeStyle(nodeWrapperStyles.value),
9586
+ "data-test-id": "canvas-node",
9587
+ "data-name": node2.value.name,
9588
+ "data-node-type": (_a = nodeType.value) == null ? void 0 : _a.name,
9589
+ onContextmenu: _cache[3] || (_cache[3] = (e) => openContextMenu(e, "node-right-click"))
9720
9590
  }, [
9721
- _ctx.isTriggerNode ? (openBlock(), createElementBlock("i", _hoisted_3$2, [
9722
- createVNode(_component_n8n_tooltip, { placement: "bottom" }, {
9723
- content: withCtx(() => [
9724
- createBaseVNode("span", {
9725
- innerHTML: _ctx.$locale.baseText("node.thisIsATriggerNode")
9726
- }, null, 8, _hoisted_4$1)
9727
- ]),
9728
- default: withCtx(() => [
9729
- createVNode(_component_FontAwesomeIcon, {
9730
- icon: "bolt",
9731
- size: "lg"
9732
- })
9733
- ]),
9734
- _: 1
9735
- })
9736
- ])) : createCommentVNode("", true),
9737
- !_ctx.data.disabled ? (openBlock(), createElementBlock("div", {
9738
- key: 1,
9739
- class: normalizeClass({ "node-info-icon": true, "shift-icon": _ctx.shiftOutputCount })
9740
- }, [
9741
- _ctx.hasIssues && !_ctx.hideNodeIssues ? (openBlock(), createElementBlock("div", _hoisted_5$1, [
9742
- createVNode(_component_n8n_tooltip, {
9743
- "show-after": 500,
9744
- placement: "bottom"
9745
- }, {
9746
- content: withCtx(() => [
9747
- createVNode(_component_TitledList, {
9748
- title: `${_ctx.$locale.baseText("node.issues")}:`,
9749
- items: _ctx.nodeIssues
9750
- }, null, 8, ["title", "items"])
9751
- ]),
9752
- default: withCtx(() => [
9753
- createVNode(_component_FontAwesomeIcon, { icon: "exclamation-triangle" })
9754
- ]),
9755
- _: 1
9756
- })
9757
- ])) : _ctx.waiting || _ctx.nodeExecutionStatus === "waiting" ? (openBlock(), createElementBlock("div", _hoisted_6, [
9758
- createVNode(_component_n8n_tooltip, { placement: "bottom" }, {
9759
- content: withCtx(() => [
9760
- createBaseVNode("div", {
9761
- textContent: toDisplayString(_ctx.waiting)
9762
- }, null, 8, _hoisted_7)
9763
- ]),
9764
- default: withCtx(() => [
9765
- createVNode(_component_FontAwesomeIcon, { icon: "clock" })
9766
- ]),
9767
- _: 1
9768
- })
9769
- ])) : _ctx.showPinnedDataInfo ? (openBlock(), createElementBlock("span", _hoisted_8, [
9770
- createVNode(_component_FontAwesomeIcon, { icon: "thumbtack" }),
9771
- _ctx.workflowDataItems > 1 ? (openBlock(), createElementBlock("span", _hoisted_9, toDisplayString(_ctx.workflowDataItems), 1)) : createCommentVNode("", true)
9772
- ])) : _ctx.nodeExecutionStatus === "unknown" ? (openBlock(), createElementBlock("span", _hoisted_10)) : _ctx.workflowDataItems ? (openBlock(), createElementBlock("span", _hoisted_11, [
9773
- createVNode(_component_FontAwesomeIcon, { icon: "check" }),
9774
- _ctx.workflowDataItems > 1 ? (openBlock(), createElementBlock("span", _hoisted_12, toDisplayString(_ctx.workflowDataItems), 1)) : createCommentVNode("", true)
9775
- ])) : createCommentVNode("", true)
9776
- ], 2)) : createCommentVNode("", true),
9591
+ withDirectives(createBaseVNode("div", _hoisted_2$4, null, 512), [
9592
+ [vShow, isSelected.value]
9593
+ ]),
9777
9594
  createBaseVNode("div", {
9778
- class: "node-executing-info",
9779
- title: _ctx.$locale.baseText("node.nodeIsExecuting")
9780
- }, [
9781
- createVNode(_component_FontAwesomeIcon, {
9782
- icon: "sync-alt",
9783
- spin: ""
9595
+ class: normalizeClass({
9596
+ "node-default": true,
9597
+ "touch-active": isTouchActive.value,
9598
+ "is-touch-device": unref(deviceSupport).isTouchDevice,
9599
+ "menu-open": isContextMenuOpen.value,
9600
+ "disable-pointer-events": _ctx.disablePointerEvents
9784
9601
  })
9785
- ], 8, _hoisted_13),
9786
- createBaseVNode("div", _hoisted_14, [
9787
- createVNode(_component_n8n_tooltip, {
9788
- placement: "top",
9789
- "show-after": 500,
9790
- visible: _ctx.showTriggerNodeTooltip,
9791
- "popper-class": "node-trigger-tooltip__wrapper--item"
9792
- }, {
9793
- content: withCtx(() => [
9794
- createBaseVNode("div", {
9795
- textContent: toDisplayString(_ctx.getTriggerNodeTooltip)
9796
- }, null, 8, _hoisted_15)
9797
- ]),
9798
- default: withCtx(() => [
9799
- _hoisted_16
9602
+ }, [
9603
+ withDirectives((openBlock(), createElementBlock("div", {
9604
+ class: normalizeClass(nodeClass.value),
9605
+ style: normalizeStyle(nodeStyle.value),
9606
+ onClick: withModifiers(onClick, ["left"])
9607
+ }, [
9608
+ isTriggerNode.value ? (openBlock(), createElementBlock("i", _hoisted_3$2, [
9609
+ createVNode(_component_n8n_tooltip, { placement: "bottom" }, {
9610
+ content: withCtx(() => [
9611
+ createBaseVNode("span", {
9612
+ innerHTML: unref(i18n2).baseText("node.thisIsATriggerNode")
9613
+ }, null, 8, _hoisted_4)
9614
+ ]),
9615
+ default: withCtx(() => [
9616
+ createVNode(unref(FontAwesomeIcon), {
9617
+ icon: "bolt",
9618
+ size: "lg"
9619
+ })
9620
+ ]),
9621
+ _: 1
9622
+ })
9623
+ ])) : createCommentVNode("", true),
9624
+ !node2.value.disabled ? (openBlock(), createElementBlock("div", {
9625
+ key: 1,
9626
+ class: normalizeClass({ "node-info-icon": true, "shift-icon": shiftOutputCount.value })
9627
+ }, [
9628
+ hasIssues2.value && !_ctx.hideNodeIssues ? (openBlock(), createElementBlock("div", _hoisted_5, [
9629
+ createVNode(_component_n8n_tooltip, {
9630
+ "show-after": 500,
9631
+ placement: "bottom"
9632
+ }, {
9633
+ content: withCtx(() => [
9634
+ createVNode(TitledList, {
9635
+ title: `${unref(i18n2).baseText("node.issues")}:`,
9636
+ items: nodeIssues.value
9637
+ }, null, 8, ["title", "items"])
9638
+ ]),
9639
+ default: withCtx(() => [
9640
+ createVNode(unref(FontAwesomeIcon), { icon: "exclamation-triangle" })
9641
+ ]),
9642
+ _: 1
9643
+ })
9644
+ ])) : waiting.value || nodeExecutionStatus.value === "waiting" ? (openBlock(), createElementBlock("div", _hoisted_6, [
9645
+ createVNode(_component_n8n_tooltip, { placement: "bottom" }, {
9646
+ content: withCtx(() => [
9647
+ createBaseVNode("div", {
9648
+ textContent: toDisplayString(waiting.value)
9649
+ }, null, 8, _hoisted_7)
9650
+ ]),
9651
+ default: withCtx(() => [
9652
+ createVNode(unref(FontAwesomeIcon), { icon: "clock" })
9653
+ ]),
9654
+ _: 1
9655
+ })
9656
+ ])) : showPinnedDataInfo.value ? (openBlock(), createElementBlock("span", _hoisted_8, [
9657
+ createVNode(unref(FontAwesomeIcon), { icon: "thumbtack" }),
9658
+ workflowDataItems.value > 1 ? (openBlock(), createElementBlock("span", _hoisted_9, toDisplayString(workflowDataItems.value), 1)) : createCommentVNode("", true)
9659
+ ])) : nodeExecutionStatus.value === "unknown" ? (openBlock(), createElementBlock("span", _hoisted_10)) : workflowDataItems.value ? (openBlock(), createElementBlock("span", _hoisted_11, [
9660
+ createVNode(unref(FontAwesomeIcon), { icon: "check" }),
9661
+ workflowDataItems.value > 1 ? (openBlock(), createElementBlock("span", _hoisted_12, toDisplayString(workflowDataItems.value), 1)) : createCommentVNode("", true)
9662
+ ])) : createCommentVNode("", true)
9663
+ ], 2)) : createCommentVNode("", true),
9664
+ createBaseVNode("div", {
9665
+ class: "node-executing-info",
9666
+ title: unref(i18n2).baseText("node.nodeIsExecuting")
9667
+ }, [
9668
+ createVNode(unref(FontAwesomeIcon), {
9669
+ icon: "sync-alt",
9670
+ spin: ""
9671
+ })
9672
+ ], 8, _hoisted_13),
9673
+ createBaseVNode("div", _hoisted_14, [
9674
+ createVNode(_component_n8n_tooltip, {
9675
+ placement: "top",
9676
+ "show-after": 500,
9677
+ visible: showTriggerNodeTooltip.value,
9678
+ "popper-class": "node-trigger-tooltip__wrapper--item"
9679
+ }, {
9680
+ content: withCtx(() => [
9681
+ createBaseVNode("div", {
9682
+ textContent: toDisplayString(getTriggerNodeTooltip.value)
9683
+ }, null, 8, _hoisted_15)
9684
+ ]),
9685
+ default: withCtx(() => [
9686
+ _hoisted_16
9687
+ ]),
9688
+ _: 1
9689
+ }, 8, ["visible"]),
9690
+ isTriggerNode.value ? (openBlock(), createBlock(_component_n8n_tooltip, {
9691
+ key: 0,
9692
+ placement: "top",
9693
+ visible: pinDataDiscoveryTooltipVisible.value,
9694
+ "popper-class": "node-trigger-tooltip__wrapper--item"
9695
+ }, {
9696
+ content: withCtx(() => [
9697
+ createTextVNode(toDisplayString(unref(i18n2).baseText("node.discovery.pinData.canvas")), 1)
9698
+ ]),
9699
+ default: withCtx(() => [
9700
+ _hoisted_17
9701
+ ]),
9702
+ _: 1
9703
+ }, 8, ["visible"])) : createCommentVNode("", true)
9800
9704
  ]),
9801
- _: 1
9802
- }, 8, ["visible"]),
9803
- _ctx.isTriggerNode ? (openBlock(), createBlock(_component_n8n_tooltip, {
9705
+ createVNode(_sfc_main$V, {
9706
+ class: "node-icon",
9707
+ "node-type": iconNodeType.value,
9708
+ size: 40,
9709
+ shrink: false,
9710
+ "color-default": iconColorDefault.value,
9711
+ disabled: node2.value.disabled
9712
+ }, null, 8, ["node-type", "color-default", "disabled"])
9713
+ ], 6)), [
9714
+ [_directive_touch, touchStart, "start"],
9715
+ [_directive_touch, unref(touchEnd), "end"]
9716
+ ]),
9717
+ showDisabledLineThrough.value ? (openBlock(), createElementBlock("div", {
9804
9718
  key: 0,
9805
- placement: "top",
9806
- visible: _ctx.pinDataDiscoveryTooltipVisible,
9807
- "popper-class": "node-trigger-tooltip__wrapper--item"
9808
- }, {
9809
- content: withCtx(() => [
9810
- createTextVNode(toDisplayString(_ctx.$locale.baseText("node.discovery.pinData.canvas")), 1)
9811
- ]),
9812
- default: withCtx(() => [
9813
- _hoisted_17
9814
- ]),
9815
- _: 1
9816
- }, 8, ["visible"])) : createCommentVNode("", true)
9719
+ class: normalizeClass({
9720
+ "disabled-line-through": true,
9721
+ success: !["unknown"].includes(nodeExecutionStatus.value) && workflowDataItems.value > 0
9722
+ })
9723
+ }, null, 2)) : createCommentVNode("", true)
9724
+ ], 2),
9725
+ createBaseVNode("div", _hoisted_18, [
9726
+ createBaseVNode("div", {
9727
+ class: "node-name",
9728
+ title: nodeTitle.value
9729
+ }, [
9730
+ createBaseVNode("p", _hoisted_20, toDisplayString(nodeTitle.value), 1),
9731
+ node2.value.disabled ? (openBlock(), createElementBlock("p", _hoisted_21, "(" + toDisplayString(unref(i18n2).baseText("node.disabled")) + ")", 1)) : createCommentVNode("", true)
9732
+ ], 8, _hoisted_19),
9733
+ nodeSubtitle.value !== void 0 ? (openBlock(), createElementBlock("div", {
9734
+ key: 0,
9735
+ class: "node-subtitle",
9736
+ title: nodeSubtitle.value
9737
+ }, toDisplayString(nodeSubtitle.value), 9, _hoisted_22)) : createCommentVNode("", true)
9817
9738
  ]),
9818
- createVNode(_component_NodeIcon, {
9819
- class: "node-icon",
9820
- "node-type": _ctx.iconNodeType,
9821
- size: 40,
9822
- shrink: false,
9823
- "color-default": _ctx.iconColorDefault,
9824
- disabled: _ctx.data.disabled
9825
- }, null, 8, ["node-type", "color-default", "disabled"])
9826
- ], 6)), [
9827
- [_directive_touch, _ctx.touchStart, "start"],
9828
- [_directive_touch, _ctx.touchEnd, "end"]
9829
- ]),
9830
- _ctx.showDisabledLineThrough ? (openBlock(), createElementBlock("div", {
9831
- key: 0,
9832
- class: normalizeClass({
9833
- "disabled-line-through": true,
9834
- success: !["unknown"].includes(_ctx.nodeExecutionStatus) && _ctx.workflowDataItems > 0
9835
- })
9836
- }, null, 2)) : createCommentVNode("", true)
9837
- ], 2),
9838
- createBaseVNode("div", _hoisted_18, [
9839
- createBaseVNode("div", {
9840
- class: "node-name",
9841
- title: _ctx.nodeTitle
9842
- }, [
9843
- createBaseVNode("p", _hoisted_20, toDisplayString(_ctx.nodeTitle), 1),
9844
- _ctx.data.disabled ? (openBlock(), createElementBlock("p", _hoisted_21, "(" + toDisplayString(_ctx.$locale.baseText("node.disabled")) + ")", 1)) : createCommentVNode("", true)
9845
- ], 8, _hoisted_19),
9846
- _ctx.nodeSubtitle !== void 0 ? (openBlock(), createElementBlock("div", {
9847
- key: 0,
9848
- class: "node-subtitle",
9849
- title: _ctx.nodeSubtitle
9850
- }, toDisplayString(_ctx.nodeSubtitle), 9, _hoisted_22)) : createCommentVNode("", true)
9851
- ]),
9852
- !_ctx.isReadOnly ? withDirectives((openBlock(), createElementBlock("div", {
9853
- key: 0,
9854
- class: "node-options no-select-on-click",
9855
- onContextmenu: _cache[2] || (_cache[2] = withModifiers(() => {
9856
- }, ["stop"])),
9857
- onMousedown: _cache[3] || (_cache[3] = withModifiers(() => {
9858
- }, ["stop"]))
9859
- }, [
9860
- createBaseVNode("div", _hoisted_23, [
9861
- !_ctx.isConfigNode ? (openBlock(), createBlock(_component_n8n_icon_button, {
9739
+ !_ctx.isReadOnly ? withDirectives((openBlock(), createElementBlock("div", {
9862
9740
  key: 0,
9863
- "data-test-id": "execute-node-button",
9864
- type: "tertiary",
9865
- text: "",
9866
- size: "small",
9867
- icon: "play",
9868
- disabled: _ctx.workflowRunning,
9869
- title: _ctx.$locale.baseText("node.testStep"),
9870
- onClick: _ctx.executeNode
9871
- }, null, 8, ["disabled", "title", "onClick"])) : createCommentVNode("", true),
9872
- createVNode(_component_n8n_icon_button, {
9873
- "data-test-id": "disable-node-button",
9874
- type: "tertiary",
9875
- text: "",
9876
- size: "small",
9877
- icon: "power-off",
9878
- title: _ctx.nodeDisabledTitle,
9879
- onClick: _ctx.toggleDisableNode
9880
- }, null, 8, ["title", "onClick"]),
9881
- createVNode(_component_n8n_icon_button, {
9882
- "data-test-id": "delete-node-button",
9883
- type: "tertiary",
9884
- size: "small",
9885
- text: "",
9886
- icon: "trash",
9887
- title: _ctx.$locale.baseText("node.delete"),
9888
- onClick: _ctx.deleteNode
9889
- }, null, 8, ["title", "onClick"]),
9890
- createVNode(_component_n8n_icon_button, {
9891
- "data-test-id": "overflow-node-button",
9892
- type: "tertiary",
9893
- size: "small",
9894
- text: "",
9895
- icon: "ellipsis-h",
9896
- onClick: _cache[1] || (_cache[1] = (e) => _ctx.openContextMenu(e, "node-button"))
9897
- })
9898
- ])
9899
- ], 544)), [
9900
- [vShow, !_ctx.hideActions]
9901
- ]) : createCommentVNode("", true)
9902
- ], 46, _hoisted_1$6)) : createCommentVNode("", true);
9741
+ class: "node-options no-select-on-click",
9742
+ onContextmenu: _cache[1] || (_cache[1] = withModifiers(() => {
9743
+ }, ["stop"])),
9744
+ onMousedown: _cache[2] || (_cache[2] = withModifiers(() => {
9745
+ }, ["stop"]))
9746
+ }, [
9747
+ createBaseVNode("div", _hoisted_23, [
9748
+ !isConfigNode.value ? (openBlock(), createBlock(unref(_sfc_main$X), {
9749
+ key: 0,
9750
+ "data-test-id": "execute-node-button",
9751
+ type: "tertiary",
9752
+ text: "",
9753
+ size: "small",
9754
+ icon: "play",
9755
+ disabled: workflowRunning2.value,
9756
+ title: unref(i18n2).baseText("node.testStep"),
9757
+ onClick: executeNode
9758
+ }, null, 8, ["disabled", "title"])) : createCommentVNode("", true),
9759
+ createVNode(unref(_sfc_main$X), {
9760
+ "data-test-id": "disable-node-button",
9761
+ type: "tertiary",
9762
+ text: "",
9763
+ size: "small",
9764
+ icon: "power-off",
9765
+ title: nodeDisabledTitle2.value,
9766
+ onClick: toggleDisableNode
9767
+ }, null, 8, ["title"]),
9768
+ createVNode(unref(_sfc_main$X), {
9769
+ "data-test-id": "delete-node-button",
9770
+ type: "tertiary",
9771
+ size: "small",
9772
+ text: "",
9773
+ icon: "trash",
9774
+ title: unref(i18n2).baseText("node.delete"),
9775
+ onClick: deleteNode
9776
+ }, null, 8, ["title"]),
9777
+ createVNode(unref(_sfc_main$X), {
9778
+ "data-test-id": "overflow-node-button",
9779
+ type: "tertiary",
9780
+ size: "small",
9781
+ text: "",
9782
+ icon: "ellipsis-h",
9783
+ onClick: _cache[0] || (_cache[0] = (e) => openContextMenu(e, "node-button"))
9784
+ })
9785
+ ])
9786
+ ], 544)), [
9787
+ [vShow, !_ctx.hideActions]
9788
+ ]) : createCommentVNode("", true)
9789
+ ], 46, _hoisted_1$6)) : createCommentVNode("", true);
9790
+ };
9791
+ }
9792
+ });
9793
+ const __unplugin_components_0$5 = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__scopeId", "data-v-03df39cd"]]);
9794
+ const state = reactive({
9795
+ customActions: {},
9796
+ delegatedClickHandler: null
9797
+ });
9798
+ function useGlobalLinkActions() {
9799
+ function registerCustomAction({ key, action: action2 }) {
9800
+ state.customActions[key] = action2;
9801
+ }
9802
+ function unregisterCustomAction(key) {
9803
+ const { [key]: _, ...rest } = state.customActions;
9804
+ state.customActions = rest;
9805
+ }
9806
+ function getElementAttributes(element) {
9807
+ const attributesObject = {};
9808
+ for (let i = 0; i < element.attributes.length; i++) {
9809
+ const attr = element.attributes[i];
9810
+ if (attr.name.startsWith("data-action-parameter-")) {
9811
+ attributesObject[attr.name.replace("data-action-parameter-", "")] = attr.value;
9812
+ }
9813
+ }
9814
+ return attributesObject;
9815
+ }
9816
+ function delegateClick(e) {
9817
+ const clickedElement = e.target;
9818
+ if (!(clickedElement instanceof Element) || clickedElement.tagName !== "A")
9819
+ return;
9820
+ const actionAttribute = clickedElement.getAttribute("data-action");
9821
+ if (actionAttribute && typeof availableActions.value[actionAttribute] === "function") {
9822
+ e.preventDefault();
9823
+ const elementAttributes = getElementAttributes(clickedElement);
9824
+ availableActions.value[actionAttribute](elementAttributes);
9825
+ }
9826
+ }
9827
+ function reload() {
9828
+ if (window.top) {
9829
+ window.top.location.reload();
9830
+ } else {
9831
+ window.location.reload();
9832
+ }
9833
+ }
9834
+ const availableActions = computed(() => ({
9835
+ reload,
9836
+ ...state.customActions
9837
+ }));
9838
+ onMounted(() => {
9839
+ if (state.delegatedClickHandler)
9840
+ return;
9841
+ state.delegatedClickHandler = delegateClick;
9842
+ window.addEventListener("click", delegateClick);
9843
+ globalLinkActionsEventBus.on("registerGlobalLinkAction", registerCustomAction);
9844
+ });
9845
+ onUnmounted(() => {
9846
+ window.removeEventListener("click", delegateClick);
9847
+ state.delegatedClickHandler = null;
9848
+ globalLinkActionsEventBus.off("registerGlobalLinkAction", registerCustomAction);
9849
+ });
9850
+ return {
9851
+ registerCustomAction,
9852
+ unregisterCustomAction
9853
+ };
9903
9854
  }
9904
- const __unplugin_components_0$2 = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["render", _sfc_render$2], ["__scopeId", "data-v-75cfc2b3"]]);
9905
9855
  function useCanvasMouseSelect() {
9906
9856
  const selectActive = ref(false);
9907
9857
  const selectBox = ref(document.createElement("span"));
@@ -10728,11 +10678,12 @@ function TriggerView() {
10728
10678
  }
10729
10679
  function RegularView(nodes) {
10730
10680
  const i18n2 = useI18n();
10731
- const popularItemsSubcategory = [SET_NODE_TYPE, CODE_NODE_TYPE, DATETIME_NODE_TYPE];
10732
- const aiEnabled = usePostHog().isAiEnabled();
10733
- if (aiEnabled) {
10734
- popularItemsSubcategory.push(AI_TRANSFORM_NODE_TYPE);
10735
- }
10681
+ const popularItemsSubcategory = [
10682
+ SET_NODE_TYPE,
10683
+ CODE_NODE_TYPE,
10684
+ DATETIME_NODE_TYPE,
10685
+ AI_TRANSFORM_NODE_TYPE
10686
+ ];
10736
10687
  const view = {
10737
10688
  value: REGULAR_NODE_CREATOR_VIEW,
10738
10689
  title: i18n2.baseText("nodeCreator.triggerHelperPanel.whatHappensNext"),
@@ -11196,7 +11147,13 @@ const useViewStacks = defineStore("nodeCreatorViewStacks", () => {
11196
11147
  let stackItems = (stack == null ? void 0 : stack.items) ?? [];
11197
11148
  if (!(stack == null ? void 0 : stack.items)) {
11198
11149
  const subcategory = (stack == null ? void 0 : stack.subcategory) ?? DEFAULT_SUBCATEGORY;
11199
- const itemsInSubcategory = itemsBySubcategory.value[subcategory];
11150
+ let itemsInSubcategory = itemsBySubcategory.value[subcategory];
11151
+ const aiEnabled = usePostHog().isAiEnabled();
11152
+ if (!aiEnabled) {
11153
+ itemsInSubcategory = itemsInSubcategory.filter(
11154
+ (item) => item.key !== AI_TRANSFORM_NODE_TYPE$1
11155
+ );
11156
+ }
11200
11157
  const sections = stack.sections;
11201
11158
  if (sections) {
11202
11159
  stackItems = groupItemsInSections(itemsInSubcategory, sections);
@@ -11622,7 +11579,7 @@ const useNodeCreatorStore = defineStore(STORES.NODE_CREATOR, () => {
11622
11579
  };
11623
11580
  });
11624
11581
  const _hoisted_1$5 = ["textContent"];
11625
- const _sfc_main$q = /* @__PURE__ */ defineComponent({
11582
+ const _sfc_main$v = /* @__PURE__ */ defineComponent({
11626
11583
  __name: "CanvasAddButton",
11627
11584
  props: {
11628
11585
  showTooltip: { type: Boolean },
@@ -11678,16 +11635,16 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
11678
11635
  });
11679
11636
  const canvasAddButton = "_canvasAddButton_1easi_1";
11680
11637
  const button$1 = "_button_1easi_13";
11681
- const label$4 = "_label_1easi_34";
11682
- const style0$h = {
11638
+ const label$6 = "_label_1easi_34";
11639
+ const style0$m = {
11683
11640
  canvasAddButton,
11684
11641
  button: button$1,
11685
- label: label$4
11642
+ label: label$6
11686
11643
  };
11687
- const cssModules$i = {
11688
- "$style": style0$h
11644
+ const cssModules$n = {
11645
+ "$style": style0$m
11689
11646
  };
11690
- const CanvasAddButton = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__cssModules", cssModules$i]]);
11647
+ const CanvasAddButton = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__cssModules", cssModules$n]]);
11691
11648
  function useCanvasPanning(elementRef, options = {}) {
11692
11649
  const uiStore = useUIStore();
11693
11650
  const moveLastPosition = ref([0, 0]);
@@ -11779,19 +11736,19 @@ function useBeforeUnload({ route }) {
11779
11736
  };
11780
11737
  }
11781
11738
  const LazyNodeCreation = defineAsyncComponent(
11782
- async () => await __vitePreload(() => import("./NodeCreation-flnxFWcn.js").then((n) => n.N), true ? __vite__mapDeps([38,3,2,4,5,6,7,8,9,10,1,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,39]) : void 0)
11739
+ async () => await __vitePreload(() => import("./NodeCreation-B-ZsOH-L.js").then((n) => n.N), true ? __vite__mapDeps([39,3,4,5,6,2,7,8,9,10,1,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40]) : void 0)
11783
11740
  );
11784
11741
  const LazyCanvasControls = defineAsyncComponent(
11785
- async () => await __vitePreload(() => import("./CanvasControls-DbRWTsgU.js"), true ? __vite__mapDeps([40,2,13,1,3,4,5,6,7,8,9,10,11,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,41]) : void 0)
11742
+ async () => await __vitePreload(() => import("./CanvasControls-Besc3nk2.js"), true ? __vite__mapDeps([41,2,12,1,3,4,5,6,7,8,9,10,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,42]) : void 0)
11786
11743
  );
11787
11744
  const LazySetupWorkflowCredentialsButton = defineAsyncComponent(
11788
- async () => await __vitePreload(() => import("./SetupWorkflowCredentialsButton-DQy479iH.js"), true ? __vite__mapDeps([42,2,1,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]) : void 0)
11745
+ async () => await __vitePreload(() => import("./SetupWorkflowCredentialsButton-C2wXpCdh.js"), true ? __vite__mapDeps([43,2,1,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]) : void 0)
11789
11746
  );
11790
- const _sfc_main$p = defineComponent({
11747
+ const _sfc_main$u = defineComponent({
11791
11748
  name: "NodeView",
11792
11749
  components: {
11793
11750
  NodeDetailsView: __unplugin_components_2,
11794
- Node: __unplugin_components_0$2,
11751
+ Node: __unplugin_components_0$5,
11795
11752
  Sticky: __unplugin_components_1,
11796
11753
  CanvasAddButton,
11797
11754
  KeyboardShortcutTooltip,
@@ -15232,7 +15189,7 @@ const style2 = {
15232
15189
  shake,
15233
15190
  setupCredentialsButtonWrapper
15234
15191
  };
15235
- const _withScopeId = (n) => (pushScopeId("data-v-00532269"), n = n(), popScopeId(), n);
15192
+ const _withScopeId = (n) => (pushScopeId("data-v-b3bab945"), n = n(), popScopeId(), n);
15236
15193
  const _hoisted_1$4 = ["textContent"];
15237
15194
  const _hoisted_2$3 = {
15238
15195
  key: 0,
@@ -15240,7 +15197,7 @@ const _hoisted_2$3 = {
15240
15197
  };
15241
15198
  function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
15242
15199
  const _component_CanvasAddButton = resolveComponent("CanvasAddButton");
15243
- const _component_Node = __unplugin_components_0$2;
15200
+ const _component_Node = __unplugin_components_0$5;
15244
15201
  const _component_Sticky = __unplugin_components_1;
15245
15202
  const _component_NodeDetailsView = __unplugin_components_2;
15246
15203
  const _component_LazySetupWorkflowCredentialsButton = resolveComponent("LazySetupWorkflowCredentialsButton");
@@ -15461,11 +15418,11 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
15461
15418
  ], 32)
15462
15419
  ], 2);
15463
15420
  }
15464
- const cssModules$h = {
15421
+ const cssModules$m = {
15465
15422
  "$style": style2
15466
15423
  };
15467
- const NodeViewV1 = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["render", _sfc_render$1], ["__cssModules", cssModules$h], ["__scopeId", "data-v-00532269"]]);
15468
- const _sfc_main$o = {};
15424
+ const NodeViewV1 = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["render", _sfc_render$1], ["__cssModules", cssModules$m], ["__scopeId", "data-v-b3bab945"]]);
15425
+ const _sfc_main$t = {};
15469
15426
  function _sfc_render(_ctx, _cache) {
15470
15427
  const _component_N8nButton = resolveComponent("N8nButton");
15471
15428
  return openBlock(), createBlock(_component_N8nButton, {
@@ -15476,8 +15433,8 @@ function _sfc_render(_ctx, _cache) {
15476
15433
  "data-test-id": "workflow-chat-button"
15477
15434
  });
15478
15435
  }
15479
- const __unplugin_components_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["render", _sfc_render]]);
15480
- const _sfc_main$n = /* @__PURE__ */ defineComponent({
15436
+ const __unplugin_components_0$4 = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["render", _sfc_render]]);
15437
+ const _sfc_main$s = /* @__PURE__ */ defineComponent({
15481
15438
  __name: "CanvasControlButtons",
15482
15439
  props: {
15483
15440
  zoom: { default: 1 }
@@ -15501,7 +15458,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
15501
15458
  }
15502
15459
  return (_ctx, _cache) => {
15503
15460
  const _component_N8nIconButton = resolveComponent("N8nIconButton");
15504
- return openBlock(), createBlock(unref(_sfc_main$S), {
15461
+ return openBlock(), createBlock(unref(_sfc_main$Y), {
15505
15462
  "show-zoom": false,
15506
15463
  "show-fit-view": false
15507
15464
  }, {
@@ -15611,7 +15568,7 @@ function getCustomPath(props) {
15611
15568
  }
15612
15569
  return getBezierPath(props);
15613
15570
  }
15614
- const _sfc_main$m = /* @__PURE__ */ defineComponent({
15571
+ const _sfc_main$r = /* @__PURE__ */ defineComponent({
15615
15572
  __name: "CanvasConnectionLine",
15616
15573
  props: {
15617
15574
  sourceX: {},
@@ -15646,13 +15603,13 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
15646
15603
  }
15647
15604
  });
15648
15605
  const edge$1 = "_edge_ujtc6_1";
15649
- const style0$g = {
15606
+ const style0$l = {
15650
15607
  edge: edge$1
15651
15608
  };
15652
- const cssModules$g = {
15653
- "$style": style0$g
15609
+ const cssModules$l = {
15610
+ "$style": style0$l
15654
15611
  };
15655
- const __unplugin_components_0 = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__cssModules", cssModules$g]]);
15612
+ const __unplugin_components_0$3 = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__cssModules", cssModules$l]]);
15656
15613
  function useCanvasNode() {
15657
15614
  const node2 = inject(CanvasNodeKey);
15658
15615
  const data = computed(
@@ -15722,7 +15679,7 @@ function useCanvasNode() {
15722
15679
  }
15723
15680
  const workflowRunning = false;
15724
15681
  const nodeDisabledTitle = "Test";
15725
- const _sfc_main$l = /* @__PURE__ */ defineComponent({
15682
+ const _sfc_main$q = /* @__PURE__ */ defineComponent({
15726
15683
  __name: "CanvasNodeToolbar",
15727
15684
  props: {
15728
15685
  readOnly: { type: Boolean }
@@ -15811,14 +15768,14 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
15811
15768
  });
15812
15769
  const canvasNodeToolbar$1 = "_canvasNodeToolbar_1rzl3_1";
15813
15770
  const canvasNodeToolbarItems = "_canvasNodeToolbarItems_1rzl3_8";
15814
- const style0$f = {
15771
+ const style0$k = {
15815
15772
  canvasNodeToolbar: canvasNodeToolbar$1,
15816
15773
  canvasNodeToolbarItems
15817
15774
  };
15818
- const cssModules$f = {
15819
- "$style": style0$f
15775
+ const cssModules$k = {
15776
+ "$style": style0$k
15820
15777
  };
15821
- const CanvasNodeToolbar = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__cssModules", cssModules$f]]);
15778
+ const CanvasNodeToolbar = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__cssModules", cssModules$k]]);
15822
15779
  function useNodeConnections({
15823
15780
  inputs: inputs2,
15824
15781
  outputs: outputs2,
@@ -15868,7 +15825,7 @@ function useNodeConnections({
15868
15825
  isValidConnection
15869
15826
  };
15870
15827
  }
15871
- const _sfc_main$k = /* @__PURE__ */ defineComponent({
15828
+ const _sfc_main$p = /* @__PURE__ */ defineComponent({
15872
15829
  __name: "CanvasNodeDisabledStrikeThrough",
15873
15830
  setup(__props) {
15874
15831
  const $style = useCssModule();
@@ -15902,17 +15859,17 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
15902
15859
  });
15903
15860
  const disabledStrikeThrough = "_disabledStrikeThrough_8cj0z_1";
15904
15861
  const success$1 = "_success_8cj0z_10";
15905
- const style0$e = {
15862
+ const style0$j = {
15906
15863
  disabledStrikeThrough,
15907
15864
  success: success$1
15908
15865
  };
15909
- const cssModules$e = {
15910
- "$style": style0$e
15866
+ const cssModules$j = {
15867
+ "$style": style0$j
15911
15868
  };
15912
- const CanvasNodeDisabledStrikeThrough = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__cssModules", cssModules$e]]);
15869
+ const CanvasNodeDisabledStrikeThrough = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__cssModules", cssModules$j]]);
15913
15870
  const _hoisted_1$3 = ["textContent"];
15914
15871
  const _hoisted_2$2 = { key: 3 };
15915
- const _sfc_main$j = /* @__PURE__ */ defineComponent({
15872
+ const _sfc_main$o = /* @__PURE__ */ defineComponent({
15916
15873
  __name: "CanvasNodeStatusIcons",
15917
15874
  setup(__props) {
15918
15875
  const nodeHelpers = useNodeHelpers();
@@ -16000,7 +15957,7 @@ const pinnedData = "_pinnedData_r5e7l_12";
16000
15957
  const running$1 = "_running_r5e7l_16";
16001
15958
  const issues = "_issues_r5e7l_26";
16002
15959
  const count = "_count_r5e7l_31";
16003
- const style0$d = {
15960
+ const style0$i = {
16004
15961
  status,
16005
15962
  runData,
16006
15963
  pinnedData,
@@ -16008,14 +15965,14 @@ const style0$d = {
16008
15965
  issues,
16009
15966
  count
16010
15967
  };
16011
- const cssModules$d = {
16012
- "$style": style0$d
15968
+ const cssModules$i = {
15969
+ "$style": style0$i
16013
15970
  };
16014
- const CanvasNodeStatusIcons = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__cssModules", cssModules$d]]);
15971
+ const CanvasNodeStatusIcons = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__cssModules", cssModules$i]]);
16015
15972
  const _hoisted_1$2 = ["data-test-id"];
16016
15973
  const _hoisted_2$1 = ["innerHTML"];
16017
15974
  const _hoisted_3$1 = { key: 0 };
16018
- const _sfc_main$i = /* @__PURE__ */ defineComponent({
15975
+ const _sfc_main$n = /* @__PURE__ */ defineComponent({
16019
15976
  __name: "CanvasNodeDefault",
16020
15977
  emits: ["open:contextmenu"],
16021
15978
  setup(__props, { emit: __emit }) {
@@ -16149,10 +16106,10 @@ const error = "_error_1lhi1_61";
16149
16106
  const pinned = "_pinned_1lhi1_64";
16150
16107
  const disabled = "_disabled_1lhi1_67";
16151
16108
  const running = "_running_1lhi1_70";
16152
- const label$3 = "_label_1lhi1_87";
16109
+ const label$5 = "_label_1lhi1_87";
16153
16110
  const subtitle = "_subtitle_1lhi1_100";
16154
16111
  const triggerIcon = "_triggerIcon_1lhi1_118";
16155
- const style0$c = {
16112
+ const style0$h = {
16156
16113
  node,
16157
16114
  trigger,
16158
16115
  configuration,
@@ -16165,15 +16122,15 @@ const style0$c = {
16165
16122
  pinned,
16166
16123
  disabled,
16167
16124
  running,
16168
- label: label$3,
16125
+ label: label$5,
16169
16126
  subtitle,
16170
16127
  triggerIcon
16171
16128
  };
16172
- const cssModules$c = {
16173
- "$style": style0$c
16129
+ const cssModules$h = {
16130
+ "$style": style0$h
16174
16131
  };
16175
- const CanvasNodeDefault = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__cssModules", cssModules$c]]);
16176
- const _sfc_main$h = /* @__PURE__ */ defineComponent({
16132
+ const CanvasNodeDefault = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__cssModules", cssModules$h]]);
16133
+ const _sfc_main$m = /* @__PURE__ */ defineComponent({
16177
16134
  ...{
16178
16135
  inheritAttrs: false
16179
16136
  },
@@ -16213,7 +16170,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
16213
16170
  return (_ctx, _cache) => {
16214
16171
  const _component_N8nSticky = resolveComponent("N8nSticky");
16215
16172
  return openBlock(), createElementBlock(Fragment, null, [
16216
- createVNode(unref(_sfc_main$T), {
16173
+ createVNode(unref(_sfc_main$Z), {
16217
16174
  "min-height": 80,
16218
16175
  "min-width": 150,
16219
16176
  height: renderOptions.value.height,
@@ -16239,16 +16196,16 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
16239
16196
  });
16240
16197
  const sticky = "_sticky_ko0n2_1";
16241
16198
  const selected = "_selected_ko0n2_8";
16242
- const style0$b = {
16199
+ const style0$g = {
16243
16200
  sticky,
16244
16201
  selected
16245
16202
  };
16246
- const cssModules$b = {
16247
- "$style": style0$b
16203
+ const cssModules$g = {
16204
+ "$style": style0$g
16248
16205
  };
16249
- const CanvasNodeStickyNote = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__cssModules", cssModules$b]]);
16206
+ const CanvasNodeStickyNote = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__cssModules", cssModules$g]]);
16250
16207
  const _hoisted_1$1 = ["textContent"];
16251
- const _sfc_main$g = /* @__PURE__ */ defineComponent({
16208
+ const _sfc_main$l = /* @__PURE__ */ defineComponent({
16252
16209
  __name: "CanvasNodeAddNodes",
16253
16210
  setup(__props) {
16254
16211
  const nodeCreatorStore = useNodeCreatorStore();
@@ -16314,17 +16271,17 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
16314
16271
  });
16315
16272
  const addNodes = "_addNodes_13pm7_1";
16316
16273
  const button = "_button_13pm7_9";
16317
- const label$2 = "_label_13pm7_30";
16318
- const style0$a = {
16274
+ const label$4 = "_label_13pm7_30";
16275
+ const style0$f = {
16319
16276
  addNodes,
16320
16277
  button,
16321
- label: label$2
16278
+ label: label$4
16322
16279
  };
16323
- const cssModules$a = {
16324
- "$style": style0$a
16280
+ const cssModules$f = {
16281
+ "$style": style0$f
16325
16282
  };
16326
- const CanvasNodeAddNodes = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__cssModules", cssModules$a]]);
16327
- const _sfc_main$f = /* @__PURE__ */ defineComponent({
16283
+ const CanvasNodeAddNodes = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__cssModules", cssModules$f]]);
16284
+ const _sfc_main$k = /* @__PURE__ */ defineComponent({
16328
16285
  __name: "CanvasNodeRenderer",
16329
16286
  setup(__props) {
16330
16287
  const node2 = inject(CanvasNodeKey);
@@ -16348,158 +16305,380 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
16348
16305
  };
16349
16306
  }
16350
16307
  });
16308
+ const _sfc_main$j = /* @__PURE__ */ defineComponent({
16309
+ __name: "CanvasHandleRectangle",
16310
+ props: {
16311
+ handleClasses: { default: void 0 }
16312
+ },
16313
+ setup(__props) {
16314
+ return (_ctx, _cache) => {
16315
+ return openBlock(), createElementBlock("div", {
16316
+ class: normalizeClass([_ctx.$style.rectangle, _ctx.handleClasses])
16317
+ }, null, 2);
16318
+ };
16319
+ }
16320
+ });
16321
+ const rectangle = "_rectangle_m7e52_1";
16322
+ const style0$e = {
16323
+ rectangle
16324
+ };
16325
+ const cssModules$e = {
16326
+ "$style": style0$e
16327
+ };
16328
+ const __unplugin_components_0$2 = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__cssModules", cssModules$e]]);
16351
16329
  function useCanvasNodeHandle() {
16352
16330
  const handle2 = inject(CanvasNodeHandleKey);
16353
16331
  const label2 = computed(() => (handle2 == null ? void 0 : handle2.label.value) ?? "");
16354
- const connected = computed(() => (handle2 == null ? void 0 : handle2.connected.value) ?? false);
16332
+ const isConnected = computed(() => (handle2 == null ? void 0 : handle2.isConnected.value) ?? false);
16333
+ const isConnecting = computed(() => (handle2 == null ? void 0 : handle2.isConnecting.value) ?? false);
16355
16334
  const type = computed(() => (handle2 == null ? void 0 : handle2.type.value) ?? NodeConnectionType.Main);
16356
16335
  const mode = computed(() => (handle2 == null ? void 0 : handle2.mode.value) ?? CanvasConnectionMode.Input);
16357
16336
  return {
16358
16337
  label: label2,
16359
- connected,
16338
+ isConnected,
16339
+ isConnecting,
16360
16340
  type,
16361
16341
  mode
16362
16342
  };
16363
16343
  }
16364
- const _hoisted_1 = /* @__PURE__ */ createBaseVNode("line", {
16365
- x1: "0",
16366
- y1: "12",
16367
- x2: "46",
16368
- y2: "12",
16369
- stroke: "var(--color-foreground-xdark)",
16370
- "stroke-width": "2"
16371
- }, null, -1);
16372
- const _hoisted_2 = [
16373
- _hoisted_1
16374
- ];
16375
- const _hoisted_3 = /* @__PURE__ */ createBaseVNode("rect", {
16376
- x: "2",
16377
- y: "2",
16378
- width: "20",
16379
- height: "20",
16380
- stroke: "var(--color-foreground-xdark)",
16381
- "stroke-width": "2",
16382
- rx: "4",
16383
- fill: "#ffffff"
16384
- }, null, -1);
16385
- const _hoisted_4 = /* @__PURE__ */ createBaseVNode("g", { transform: "translate(0, 0)" }, [
16386
- /* @__PURE__ */ createBaseVNode("path", {
16387
- fill: "var(--color-foreground-xdark)",
16388
- d: "m16.40655,10.89837l-3.30491,0l0,-3.30491c0,-0.40555 -0.32889,-0.73443 -0.73443,-0.73443l-0.73443,0c-0.40554,0 -0.73442,0.32888 -0.73442,0.73443l0,3.30491l-3.30491,0c-0.40555,0 -0.73443,0.32888 -0.73443,0.73442l0,0.73443c0,0.40554 0.32888,0.73443 0.73443,0.73443l3.30491,0l0,3.30491c0,0.40554 0.32888,0.73442 0.73442,0.73442l0.73443,0c0.40554,0 0.73443,-0.32888 0.73443,-0.73442l0,-3.30491l3.30491,0c0.40554,0 0.73442,-0.32889 0.73442,-0.73443l0,-0.73443c0,-0.40554 -0.32888,-0.73442 -0.73442,-0.73442z"
16389
- })
16390
- ], -1);
16391
- const _hoisted_5 = [
16392
- _hoisted_3,
16393
- _hoisted_4
16394
- ];
16395
- const _sfc_main$e = /* @__PURE__ */ defineComponent({
16344
+ const handleClasses$3 = "target";
16345
+ const _sfc_main$i = /* @__PURE__ */ defineComponent({
16346
+ __name: "CanvasHandleMainInput",
16347
+ setup(__props) {
16348
+ const { label: label2 } = useCanvasNodeHandle();
16349
+ return (_ctx, _cache) => {
16350
+ const _component_CanvasHandleRectangle = __unplugin_components_0$2;
16351
+ return openBlock(), createElementBlock("div", {
16352
+ class: normalizeClass(["canvas-node-handle-main-input", _ctx.$style.handle])
16353
+ }, [
16354
+ createBaseVNode("div", {
16355
+ class: normalizeClass([_ctx.$style.label])
16356
+ }, toDisplayString(unref(label2)), 3),
16357
+ createVNode(_component_CanvasHandleRectangle, { "handle-classes": handleClasses$3 })
16358
+ ], 2);
16359
+ };
16360
+ }
16361
+ });
16362
+ const handle$4 = "_handle_1robp_1";
16363
+ const label$3 = "_label_1robp_8";
16364
+ const style0$d = {
16365
+ handle: handle$4,
16366
+ label: label$3
16367
+ };
16368
+ const cssModules$d = {
16369
+ "$style": style0$d
16370
+ };
16371
+ const CanvasHandleMainInput = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__cssModules", cssModules$d]]);
16372
+ const _hoisted_1 = ["viewBox"];
16373
+ const _hoisted_2 = ["x1", "y1", "x2", "y2"];
16374
+ const _hoisted_3 = ["transform"];
16375
+ const plusSize = 24;
16376
+ const lineSize = 46;
16377
+ const _sfc_main$h = /* @__PURE__ */ defineComponent({
16396
16378
  __name: "CanvasHandlePlus",
16397
16379
  props: {
16398
- position: { default: "right" }
16380
+ position: { default: "right" },
16381
+ handleClasses: { default: void 0 }
16399
16382
  },
16400
16383
  emits: ["click:plus"],
16401
16384
  setup(__props, { emit: __emit }) {
16402
16385
  const props = __props;
16403
16386
  const emit = __emit;
16404
16387
  const style = useCssModule();
16405
- const classes = computed(() => [style.wrapper, style[props.position]]);
16388
+ const classes = computed(() => [style.wrapper, style[props.position], props.handleClasses]);
16389
+ const viewBox = computed(() => {
16390
+ switch (props.position) {
16391
+ case "bottom":
16392
+ case "top":
16393
+ return {
16394
+ width: plusSize,
16395
+ height: lineSize + plusSize
16396
+ };
16397
+ default:
16398
+ return {
16399
+ width: lineSize + plusSize,
16400
+ height: plusSize
16401
+ };
16402
+ }
16403
+ });
16404
+ const linePosition = computed(() => {
16405
+ switch (props.position) {
16406
+ case "top":
16407
+ return [
16408
+ [viewBox.value.width / 2, viewBox.value.height - lineSize + 1],
16409
+ [viewBox.value.width / 2, viewBox.value.height]
16410
+ ];
16411
+ case "bottom":
16412
+ return [
16413
+ [viewBox.value.width / 2, 0],
16414
+ [viewBox.value.width / 2, lineSize + 1]
16415
+ ];
16416
+ case "left":
16417
+ return [
16418
+ [viewBox.value.width - lineSize - 1, viewBox.value.height / 2],
16419
+ [viewBox.value.width, viewBox.value.height / 2]
16420
+ ];
16421
+ default:
16422
+ return [
16423
+ [0, viewBox.value.height / 2],
16424
+ [lineSize + 1, viewBox.value.height / 2]
16425
+ ];
16426
+ }
16427
+ });
16428
+ const plusPosition = computed(() => {
16429
+ switch (props.position) {
16430
+ case "bottom":
16431
+ return [0, viewBox.value.height - plusSize];
16432
+ case "top":
16433
+ return [0, 0];
16434
+ case "left":
16435
+ return [0, 0];
16436
+ default:
16437
+ return [viewBox.value.width - plusSize, 0];
16438
+ }
16439
+ });
16406
16440
  function onClick(event) {
16407
16441
  emit("click:plus", event);
16408
16442
  }
16409
16443
  return (_ctx, _cache) => {
16410
- return openBlock(), createElementBlock("div", {
16411
- class: normalizeClass(classes.value)
16444
+ return openBlock(), createElementBlock("svg", {
16445
+ class: normalizeClass(classes.value),
16446
+ viewBox: `0 0 ${viewBox.value.width} ${viewBox.value.height}`
16412
16447
  }, [
16413
- (openBlock(), createElementBlock("svg", {
16414
- class: normalizeClass(_ctx.$style.line),
16415
- viewBox: "0 0 46 24"
16416
- }, _hoisted_2, 2)),
16417
- (openBlock(), createElementBlock("svg", {
16418
- class: normalizeClass(_ctx.$style.plus),
16419
- viewBox: "0 0 24 24",
16448
+ createBaseVNode("line", {
16449
+ class: normalizeClass(_ctx.handleClasses),
16450
+ x1: linePosition.value[0][0],
16451
+ y1: linePosition.value[0][1],
16452
+ x2: linePosition.value[1][0],
16453
+ y2: linePosition.value[1][1],
16454
+ stroke: "var(--color-foreground-xdark)",
16455
+ "stroke-width": "2"
16456
+ }, null, 10, _hoisted_2),
16457
+ createBaseVNode("g", {
16458
+ class: normalizeClass([_ctx.$style.plus, _ctx.handleClasses, "clickable"]),
16459
+ transform: `translate(${plusPosition.value[0]}, ${plusPosition.value[1]})`,
16420
16460
  onClick
16421
- }, _hoisted_5, 2))
16422
- ], 2);
16461
+ }, [
16462
+ createBaseVNode("rect", {
16463
+ class: normalizeClass([_ctx.handleClasses, "clickable"]),
16464
+ x: "2",
16465
+ y: "2",
16466
+ width: "20",
16467
+ height: "20",
16468
+ stroke: "var(--color-foreground-xdark)",
16469
+ "stroke-width": "2",
16470
+ rx: "4",
16471
+ fill: "#ffffff"
16472
+ }, null, 2),
16473
+ createBaseVNode("path", {
16474
+ class: normalizeClass([_ctx.handleClasses, "clickable"]),
16475
+ fill: "var(--color-foreground-xdark)",
16476
+ d: "m16.40655,10.89837l-3.30491,0l0,-3.30491c0,-0.40555 -0.32889,-0.73443 -0.73443,-0.73443l-0.73443,0c-0.40554,0 -0.73442,0.32888 -0.73442,0.73443l0,3.30491l-3.30491,0c-0.40555,0 -0.73443,0.32888 -0.73443,0.73442l0,0.73443c0,0.40554 0.32888,0.73443 0.73443,0.73443l3.30491,0l0,3.30491c0,0.40554 0.32888,0.73442 0.73442,0.73442l0.73443,0c0.40554,0 0.73443,-0.32888 0.73443,-0.73442l0,-3.30491l3.30491,0c0.40554,0 0.73442,-0.32889 0.73442,-0.73443l0,-0.73443c0,-0.40554 -0.32888,-0.73442 -0.73442,-0.73442z"
16477
+ }, null, 2)
16478
+ ], 10, _hoisted_3)
16479
+ ], 10, _hoisted_1);
16423
16480
  };
16424
16481
  }
16425
16482
  });
16426
- const wrapper$1 = "_wrapper_41pdh_1";
16427
- const line = "_line_41pdh_10";
16428
- const plus$1 = "_plus_41pdh_15";
16429
- const style0$9 = {
16483
+ const wrapper$1 = "_wrapper_1uwi9_1";
16484
+ const top$1 = "_top_1uwi9_4";
16485
+ const bottom$1 = "_bottom_1uwi9_4";
16486
+ const left$1 = "_left_1uwi9_8";
16487
+ const right$1 = "_right_1uwi9_8";
16488
+ const plus$1 = "_plus_1uwi9_13";
16489
+ const style0$c = {
16430
16490
  wrapper: wrapper$1,
16431
- line,
16491
+ top: top$1,
16492
+ bottom: bottom$1,
16493
+ left: left$1,
16494
+ right: right$1,
16432
16495
  plus: plus$1
16433
16496
  };
16434
- const cssModules$9 = {
16435
- "$style": style0$9
16497
+ const cssModules$c = {
16498
+ "$style": style0$c
16436
16499
  };
16437
- const CanvasHandlePlus = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__cssModules", cssModules$9]]);
16438
- const _sfc_main$d = /* @__PURE__ */ defineComponent({
16500
+ const CanvasHandlePlus = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__cssModules", cssModules$c]]);
16501
+ const _sfc_main$g = /* @__PURE__ */ defineComponent({
16502
+ __name: "CanvasHandleDot",
16503
+ props: {
16504
+ handleClasses: { default: void 0 }
16505
+ },
16506
+ setup(__props) {
16507
+ return (_ctx, _cache) => {
16508
+ return openBlock(), createElementBlock("div", {
16509
+ class: normalizeClass([_ctx.$style.dot, _ctx.handleClasses])
16510
+ }, null, 2);
16511
+ };
16512
+ }
16513
+ });
16514
+ const dot = "_dot_14pp2_1";
16515
+ const style0$b = {
16516
+ dot
16517
+ };
16518
+ const cssModules$b = {
16519
+ "$style": style0$b
16520
+ };
16521
+ const __unplugin_components_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__cssModules", cssModules$b]]);
16522
+ const handleClasses$2 = "source";
16523
+ const _sfc_main$f = /* @__PURE__ */ defineComponent({
16439
16524
  __name: "CanvasHandleMainOutput",
16440
16525
  emits: ["add"],
16441
16526
  setup(__props, { emit: __emit }) {
16442
16527
  const emit = __emit;
16443
- const { label: label2, connected } = useCanvasNodeHandle();
16528
+ const { label: label2, isConnected, isConnecting } = useCanvasNodeHandle();
16529
+ const isHandlePlusVisible = computed(() => !isConnecting.value || isHovered.value);
16530
+ const isHovered = ref(false);
16531
+ function onMouseEnter() {
16532
+ isHovered.value = true;
16533
+ }
16534
+ function onMouseLeave() {
16535
+ isHovered.value = false;
16536
+ }
16444
16537
  function onClickAdd() {
16445
16538
  emit("add");
16446
16539
  }
16447
16540
  return (_ctx, _cache) => {
16541
+ const _component_CanvasHandleDot = __unplugin_components_0$1;
16542
+ const _component_CanvasHandlePlus = CanvasHandlePlus;
16448
16543
  return openBlock(), createElementBlock("div", {
16449
16544
  class: normalizeClass(["canvas-node-handle-main-output", _ctx.$style.handle])
16450
16545
  }, [
16451
16546
  createBaseVNode("div", {
16452
- class: normalizeClass(_ctx.$style.label)
16547
+ class: normalizeClass([_ctx.$style.label])
16453
16548
  }, toDisplayString(unref(label2)), 3),
16454
- !unref(connected) ? (openBlock(), createBlock(CanvasHandlePlus, {
16455
- key: 0,
16456
- "onClick:plus": onClickAdd
16457
- })) : createCommentVNode("", true)
16549
+ createVNode(_component_CanvasHandleDot, { "handle-classes": handleClasses$2 }),
16550
+ createVNode(Transition, { name: "canvas-node-handle-main-output" }, {
16551
+ default: withCtx(() => [
16552
+ !unref(isConnected) ? withDirectives((openBlock(), createBlock(_component_CanvasHandlePlus, {
16553
+ key: 0,
16554
+ "handle-classes": handleClasses$2,
16555
+ onMouseenter: onMouseEnter,
16556
+ onMouseleave: onMouseLeave,
16557
+ "onClick:plus": onClickAdd
16558
+ }, null, 512)), [
16559
+ [vShow, isHandlePlusVisible.value]
16560
+ ]) : createCommentVNode("", true)
16561
+ ]),
16562
+ _: 1
16563
+ })
16458
16564
  ], 2);
16459
16565
  };
16460
16566
  }
16461
16567
  });
16462
- const handle$2 = "_handle_k53b3_1";
16463
- const label$1 = "_label_k53b3_5";
16464
- const style0$8 = {
16465
- handle: handle$2,
16466
- label: label$1
16568
+ const handle$3 = "_handle_ys7gc_1";
16569
+ const label$2 = "_label_ys7gc_8";
16570
+ const style0$a = {
16571
+ handle: handle$3,
16572
+ label: label$2
16467
16573
  };
16468
- const cssModules$8 = {
16469
- "$style": style0$8
16574
+ const cssModules$a = {
16575
+ "$style": style0$a
16470
16576
  };
16471
- const CanvasHandleMainOutput = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__cssModules", cssModules$8]]);
16472
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
16577
+ const CanvasHandleMainOutput = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__cssModules", cssModules$a]]);
16578
+ const _sfc_main$e = /* @__PURE__ */ defineComponent({
16579
+ __name: "CanvasHandleDiamond",
16580
+ props: {
16581
+ handleClasses: { default: void 0 }
16582
+ },
16583
+ setup(__props) {
16584
+ return (_ctx, _cache) => {
16585
+ return openBlock(), createElementBlock("div", {
16586
+ class: normalizeClass([_ctx.$style.diamond, _ctx.handleClasses])
16587
+ }, null, 2);
16588
+ };
16589
+ }
16590
+ });
16591
+ const diamond = "_diamond_1pjv3_1";
16592
+ const style0$9 = {
16593
+ diamond
16594
+ };
16595
+ const cssModules$9 = {
16596
+ "$style": style0$9
16597
+ };
16598
+ const __unplugin_components_0 = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__cssModules", cssModules$9]]);
16599
+ const handleClasses$1 = "target";
16600
+ const _sfc_main$d = /* @__PURE__ */ defineComponent({
16473
16601
  __name: "CanvasHandleNonMainInput",
16474
16602
  emits: ["add"],
16475
16603
  setup(__props, { emit: __emit }) {
16476
16604
  const emit = __emit;
16477
- const { label: label2, connected, type } = useCanvasNodeHandle();
16478
- const isAddButtonVisible = computed(
16479
- () => !connected.value || type.value === NodeConnectionType.AiTool
16605
+ const { label: label2, isConnected, isConnecting, type } = useCanvasNodeHandle();
16606
+ const supportsMultipleConnections = computed(() => type.value === NodeConnectionType.AiTool);
16607
+ const isHandlePlusAvailable = computed(
16608
+ () => !isConnected.value || supportsMultipleConnections.value
16480
16609
  );
16610
+ const isHandlePlusVisible = computed(
16611
+ () => !isConnecting.value || isHovered.value || supportsMultipleConnections.value
16612
+ );
16613
+ const isHovered = ref(false);
16614
+ function onMouseEnter() {
16615
+ isHovered.value = true;
16616
+ }
16617
+ function onMouseLeave() {
16618
+ isHovered.value = false;
16619
+ }
16481
16620
  function onClickAdd() {
16482
16621
  emit("add");
16483
16622
  }
16484
16623
  return (_ctx, _cache) => {
16624
+ const _component_CanvasHandleDiamond = __unplugin_components_0;
16485
16625
  return openBlock(), createElementBlock("div", {
16486
- class: normalizeClass(["canvas-node-handle-non-main", _ctx.$style.handle])
16626
+ class: normalizeClass(["canvas-node-handle-non-main-input", _ctx.$style.handle])
16487
16627
  }, [
16488
16628
  createBaseVNode("div", {
16489
- class: normalizeClass(_ctx.$style.label)
16629
+ class: normalizeClass([_ctx.$style.label])
16490
16630
  }, toDisplayString(unref(label2)), 3),
16491
- isAddButtonVisible.value ? (openBlock(), createBlock(CanvasHandlePlus, {
16492
- key: 0,
16493
- class: normalizeClass(_ctx.$style.plus),
16494
- onClick: onClickAdd
16495
- }, null, 8, ["class"])) : createCommentVNode("", true)
16631
+ createVNode(_component_CanvasHandleDiamond, { "handle-classes": handleClasses$1 }),
16632
+ createVNode(Transition, { name: "canvas-node-handle-non-main-input" }, {
16633
+ default: withCtx(() => [
16634
+ isHandlePlusAvailable.value ? withDirectives((openBlock(), createBlock(CanvasHandlePlus, {
16635
+ key: 0,
16636
+ "handle-classes": handleClasses$1,
16637
+ position: "bottom",
16638
+ onMouseenter: onMouseEnter,
16639
+ onMouseleave: onMouseLeave,
16640
+ "onClick:plus": onClickAdd
16641
+ }, null, 512)), [
16642
+ [vShow, isHandlePlusVisible.value]
16643
+ ]) : createCommentVNode("", true)
16644
+ ]),
16645
+ _: 1
16646
+ })
16647
+ ], 2);
16648
+ };
16649
+ }
16650
+ });
16651
+ const handle$2 = "_handle_1robp_1";
16652
+ const label$1 = "_label_1robp_8";
16653
+ const style0$8 = {
16654
+ handle: handle$2,
16655
+ label: label$1
16656
+ };
16657
+ const cssModules$8 = {
16658
+ "$style": style0$8
16659
+ };
16660
+ const CanvasHandleNonMainInput = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__cssModules", cssModules$8]]);
16661
+ const handleClasses = "source";
16662
+ const _sfc_main$c = /* @__PURE__ */ defineComponent({
16663
+ __name: "CanvasHandleNonMainOutput",
16664
+ setup(__props) {
16665
+ const { label: label2 } = useCanvasNodeHandle();
16666
+ return (_ctx, _cache) => {
16667
+ const _component_CanvasHandleDiamond = __unplugin_components_0;
16668
+ return openBlock(), createElementBlock("div", {
16669
+ class: normalizeClass(["canvas-node-handle-non-main-output", _ctx.$style.handle])
16670
+ }, [
16671
+ createBaseVNode("div", {
16672
+ class: normalizeClass([_ctx.$style.label])
16673
+ }, toDisplayString(unref(label2)), 3),
16674
+ createVNode(_component_CanvasHandleDiamond, { "handle-classes": handleClasses })
16496
16675
  ], 2);
16497
16676
  };
16498
16677
  }
16499
16678
  });
16500
- const handle$1 = "_handle_n4btp_1";
16501
- const label = "_label_n4btp_5";
16502
- const plus = "_plus_n4btp_16";
16679
+ const handle$1 = "_handle_kdhnk_1";
16680
+ const label = "_label_kdhnk_8";
16681
+ const plus = "_plus_kdhnk_19";
16503
16682
  const style0$7 = {
16504
16683
  handle: handle$1,
16505
16684
  label,
@@ -16508,7 +16687,7 @@ const style0$7 = {
16508
16687
  const cssModules$7 = {
16509
16688
  "$style": style0$7
16510
16689
  };
16511
- const CanvasHandleNonMainInput = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__cssModules", cssModules$7]]);
16690
+ const CanvasHandleNonMainOutput = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__cssModules", cssModules$7]]);
16512
16691
  const _sfc_main$b = /* @__PURE__ */ defineComponent({
16513
16692
  ...{
16514
16693
  inheritAttrs: false
@@ -16516,7 +16695,8 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
16516
16695
  __name: "CanvasHandleRenderer",
16517
16696
  props: {
16518
16697
  mode: {},
16519
- connected: { type: Boolean },
16698
+ isConnected: { type: Boolean },
16699
+ isConnecting: { type: Boolean },
16520
16700
  label: {},
16521
16701
  type: {},
16522
16702
  index: {},
@@ -16545,19 +16725,20 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
16545
16725
  const isConnectableEnd = computed(() => {
16546
16726
  return props.mode === CanvasConnectionMode.Input || props.type !== NodeConnectionType.Main;
16547
16727
  });
16548
- const handleClasses = computed(() => [style.handle, style[props.type], style[props.mode]]);
16549
- const hasRenderType = computed(() => {
16550
- return props.type === NodeConnectionType.Main && props.mode === CanvasConnectionMode.Output || props.type !== NodeConnectionType.Main;
16551
- });
16728
+ const handleClasses2 = computed(() => [style.handle, style[props.type], style[props.mode]]);
16552
16729
  const renderTypeClasses = computed(() => [style.renderType, style[props.position]]);
16553
16730
  const RenderType = () => {
16554
16731
  let Component;
16555
16732
  if (props.mode === CanvasConnectionMode.Output) {
16556
16733
  if (props.type === NodeConnectionType.Main) {
16557
16734
  Component = CanvasHandleMainOutput;
16735
+ } else {
16736
+ Component = CanvasHandleNonMainOutput;
16558
16737
  }
16559
16738
  } else {
16560
- if (props.type !== NodeConnectionType.Main) {
16739
+ if (props.type === NodeConnectionType.Main) {
16740
+ Component = CanvasHandleMainInput;
16741
+ } else {
16561
16742
  Component = CanvasHandleNonMainInput;
16562
16743
  }
16563
16744
  }
@@ -16567,47 +16748,50 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
16567
16748
  emit("add", handleString.value);
16568
16749
  }
16569
16750
  const label2 = toRef(props, "label");
16570
- const connected = toRef(props, "connected");
16751
+ const isConnected = toRef(props, "isConnected");
16752
+ const isConnecting = toRef(props, "isConnecting");
16571
16753
  const mode = toRef(props, "mode");
16572
16754
  const type = toRef(props, "type");
16573
16755
  provide(CanvasNodeHandleKey, {
16574
16756
  label: label2,
16575
16757
  mode,
16576
16758
  type,
16577
- connected
16759
+ isConnected,
16760
+ isConnecting
16578
16761
  });
16579
16762
  return (_ctx, _cache) => {
16580
- return openBlock(), createElementBlock(Fragment, null, [
16581
- createVNode(unref(_sfc_main$f$1), mergeProps(_ctx.$attrs, {
16582
- id: handleString.value,
16583
- class: handleClasses.value,
16584
- type: handleType.value,
16585
- position: _ctx.position,
16586
- style: _ctx.offset,
16587
- "connectable-start": isConnectableStart.value,
16588
- "connectable-end": isConnectableEnd.value,
16589
- "is-valid-connection": _ctx.isValidConnection
16590
- }), null, 16, ["id", "class", "type", "position", "style", "connectable-start", "connectable-end", "is-valid-connection"]),
16591
- hasRenderType.value ? (openBlock(), createBlock(RenderType, {
16592
- key: 0,
16593
- class: normalizeClass(renderTypeClasses.value),
16594
- connected: connected.value,
16595
- style: normalizeStyle(_ctx.offset),
16596
- label: label2.value,
16597
- onAdd
16598
- }, null, 8, ["class", "connected", "style", "label"])) : createCommentVNode("", true)
16599
- ], 64);
16763
+ return openBlock(), createBlock(unref(_sfc_main$f$1), mergeProps(_ctx.$attrs, {
16764
+ id: handleString.value,
16765
+ class: handleClasses2.value,
16766
+ type: handleType.value,
16767
+ position: _ctx.position,
16768
+ style: _ctx.offset,
16769
+ "connectable-start": isConnectableStart.value,
16770
+ "connectable-end": isConnectableEnd.value,
16771
+ "is-valid-connection": _ctx.isValidConnection
16772
+ }), {
16773
+ default: withCtx(() => [
16774
+ createVNode(RenderType, {
16775
+ class: normalizeClass(renderTypeClasses.value),
16776
+ "is-connected": isConnected.value,
16777
+ style: normalizeStyle(_ctx.offset),
16778
+ label: label2.value,
16779
+ onAdd
16780
+ }, null, 8, ["class", "is-connected", "style", "label"])
16781
+ ]),
16782
+ _: 1
16783
+ }, 16, ["id", "class", "type", "position", "style", "connectable-start", "connectable-end", "is-valid-connection"]);
16600
16784
  };
16601
16785
  }
16602
16786
  });
16603
- const handle = "_handle_4sv5e_1";
16604
- const inputs = "_inputs_4sv5e_14";
16605
- const main = "_main_4sv5e_14";
16606
- const renderType = "_renderType_4sv5e_30";
16607
- const top = "_top_4sv5e_34";
16608
- const right = "_right_4sv5e_38";
16609
- const left = "_left_4sv5e_42";
16610
- const bottom = "_bottom_4sv5e_46";
16787
+ const handle = "_handle_3cwat_1";
16788
+ const inputs = "_inputs_3cwat_14";
16789
+ const main = "_main_3cwat_14";
16790
+ const renderType = "_renderType_3cwat_18";
16791
+ const top = "_top_3cwat_18";
16792
+ const right = "_right_3cwat_22";
16793
+ const left = "_left_3cwat_26";
16794
+ const bottom = "_bottom_3cwat_30";
16611
16795
  const style0$6 = {
16612
16796
  handle,
16613
16797
  inputs,
@@ -16622,6 +16806,13 @@ const cssModules$6 = {
16622
16806
  "$style": style0$6
16623
16807
  };
16624
16808
  const CanvasHandleRenderer = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__cssModules", cssModules$6]]);
16809
+ function useCanvas() {
16810
+ const canvas2 = inject(CanvasKey);
16811
+ const connectingHandle = computed(() => canvas2 == null ? void 0 : canvas2.connectingHandle.value);
16812
+ return {
16813
+ connectingHandle
16814
+ };
16815
+ }
16625
16816
  const _sfc_main$a = /* @__PURE__ */ defineComponent({
16626
16817
  __name: "CanvasNode",
16627
16818
  props: {
@@ -16652,6 +16843,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
16652
16843
  const props = __props;
16653
16844
  const nodeTypesStore = useNodeTypesStore();
16654
16845
  const contextMenu2 = useContextMenu();
16846
+ const { connectingHandle } = useCanvas();
16655
16847
  const inputs2 = computed(() => props.data.inputs);
16656
16848
  const outputs2 = computed(() => props.data.outputs);
16657
16849
  const connections2 = computed(() => props.data.connections);
@@ -16708,10 +16900,20 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
16708
16900
  position: position2,
16709
16901
  offsetAxis
16710
16902
  }) => (endpoint, index, endpoints) => {
16711
- var _a, _b;
16903
+ var _a, _b, _c, _d, _e;
16904
+ const handleId = createCanvasConnectionHandleString({
16905
+ mode,
16906
+ type: endpoint.type,
16907
+ index: endpoint.index
16908
+ });
16909
+ const handleType = mode === CanvasConnectionMode.Input ? "target" : "source";
16910
+ const isConnected = !!((_b = (_a = connections2.value[mode][endpoint.type]) == null ? void 0 : _a[endpoint.index]) == null ? void 0 : _b.length);
16911
+ const isConnecting = ((_c = connectingHandle.value) == null ? void 0 : _c.nodeId) === props.id && ((_d = connectingHandle.value) == null ? void 0 : _d.handleType) === handleType && ((_e = connectingHandle.value) == null ? void 0 : _e.handleId) === handleId;
16712
16912
  return {
16713
16913
  ...endpoint,
16714
- connected: !!((_b = (_a = connections2.value[mode][endpoint.type]) == null ? void 0 : _a[endpoint.index]) == null ? void 0 : _b.length),
16914
+ handleId,
16915
+ isConnected,
16916
+ isConnecting,
16715
16917
  position: position2,
16716
16918
  offset: {
16717
16919
  [offsetAxis]: `${100 / (endpoints.length + 1) * (index + 1)}%`
@@ -16772,34 +16974,35 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
16772
16974
  }, [
16773
16975
  (openBlock(true), createElementBlock(Fragment, null, renderList(mappedOutputs.value, (source) => {
16774
16976
  return openBlock(), createBlock(CanvasHandleRenderer, {
16775
- key: `${unref(CanvasConnectionMode).Output}/${source.type}/${source.index}`,
16977
+ key: source.handleId,
16776
16978
  "data-test-id": "canvas-node-output-handle",
16777
- connected: source.connected,
16778
16979
  mode: unref(CanvasConnectionMode).Output,
16779
16980
  type: source.type,
16780
16981
  label: source.label,
16781
16982
  index: source.index,
16782
16983
  position: source.position,
16783
16984
  offset: source.offset,
16985
+ "is-connected": source.isConnected,
16986
+ "is-connecting": source.isConnecting,
16784
16987
  "is-valid-connection": unref(isValidConnection),
16785
16988
  onAdd
16786
- }, null, 8, ["connected", "mode", "type", "label", "index", "position", "offset", "is-valid-connection"]);
16989
+ }, null, 8, ["mode", "type", "label", "index", "position", "offset", "is-connected", "is-connecting", "is-valid-connection"]);
16787
16990
  }), 128)),
16788
16991
  (openBlock(true), createElementBlock(Fragment, null, renderList(mappedInputs.value, (target2) => {
16789
- var _a, _b;
16790
16992
  return openBlock(), createBlock(CanvasHandleRenderer, {
16791
- key: `${unref(CanvasConnectionMode).Input}/${target2.type}/${target2.index}`,
16993
+ key: target2.handleId,
16792
16994
  "data-test-id": "canvas-node-input-handle",
16793
- connected: !!((_b = (_a = connections2.value[unref(CanvasConnectionMode).Input][target2.type]) == null ? void 0 : _a[target2.index]) == null ? void 0 : _b.length),
16794
16995
  mode: unref(CanvasConnectionMode).Input,
16795
16996
  type: target2.type,
16796
16997
  label: target2.label,
16797
16998
  index: target2.index,
16798
16999
  position: target2.position,
16799
17000
  offset: target2.offset,
17001
+ "is-connected": target2.isConnected,
17002
+ "is-connecting": target2.isConnecting,
16800
17003
  "is-valid-connection": unref(isValidConnection),
16801
17004
  onAdd
16802
- }, null, 8, ["connected", "mode", "type", "label", "index", "position", "offset", "is-valid-connection"]);
17005
+ }, null, 8, ["mode", "type", "label", "index", "position", "offset", "is-connected", "is-connecting", "is-valid-connection"]);
16803
17006
  }), 128)),
16804
17007
  nodeTypeDescription.value ? (openBlock(), createBlock(CanvasNodeToolbar, {
16805
17008
  key: 0,
@@ -16811,14 +17014,14 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
16811
17014
  onRun,
16812
17015
  "onOpen:contextmenu": onOpenContextMenuFromToolbar
16813
17016
  }, null, 8, ["read-only", "class"])) : createCommentVNode("", true),
16814
- createVNode(_sfc_main$f, {
17017
+ createVNode(_sfc_main$k, {
16815
17018
  onDblclick: withModifiers(onActivate, ["stop"]),
16816
17019
  onMove,
16817
17020
  onUpdate,
16818
17021
  "onOpen:contextmenu": onOpenContextMenuFromNode
16819
17022
  }, {
16820
17023
  default: withCtx(() => [
16821
- nodeTypeDescription.value ? (openBlock(), createBlock(_sfc_main$Q, {
17024
+ nodeTypeDescription.value ? (openBlock(), createBlock(_sfc_main$V, {
16822
17025
  key: 0,
16823
17026
  "node-type": nodeTypeDescription.value,
16824
17027
  size: nodeIconSize.value,
@@ -16832,9 +17035,9 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
16832
17035
  };
16833
17036
  }
16834
17037
  });
16835
- const canvasNode = "_canvasNode_1oyiq_1";
16836
- const canvasNodeToolbar = "_canvasNodeToolbar_1oyiq_1";
16837
- const showToolbar = "_showToolbar_1oyiq_1";
17038
+ const canvasNode = "_canvasNode_xdq35_1";
17039
+ const canvasNodeToolbar = "_canvasNodeToolbar_xdq35_1";
17040
+ const showToolbar = "_showToolbar_xdq35_1";
16838
17041
  const style0$5 = {
16839
17042
  canvasNode,
16840
17043
  canvasNodeToolbar,
@@ -17157,17 +17360,18 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
17157
17360
  function onClickNodeAdd(id, handle2) {
17158
17361
  emit("click:node:add", id, handle2);
17159
17362
  }
17160
- function onNodeDragStop(e) {
17161
- onUpdateNodesPosition(e.nodes.map((node2) => ({ id: node2.id, position: node2.position })));
17162
- }
17163
17363
  function onUpdateNodesPosition(events) {
17164
17364
  emit("update:nodes:position", events);
17165
17365
  }
17166
17366
  function onUpdateNodePosition(id, position2) {
17167
17367
  emit("update:node:position", id, position2);
17168
17368
  }
17169
- function onSelectionDragStop(e) {
17170
- onNodeDragStop(e);
17369
+ function onNodesChange(events) {
17370
+ const isPositionChangeEvent = (event) => event.type === "position" && "position" in event;
17371
+ const positionChangeEndEvents = events.filter(isPositionChangeEvent);
17372
+ if (positionChangeEndEvents.length > 0) {
17373
+ onUpdateNodesPosition(positionChangeEndEvents);
17374
+ }
17171
17375
  }
17172
17376
  function onSetNodeActive(id) {
17173
17377
  emit("update:node:active", id);
@@ -17194,25 +17398,26 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
17194
17398
  emit("update:node:parameters", id, parameters);
17195
17399
  }
17196
17400
  const connectionCreated = ref(false);
17197
- const connectionEventData = ref();
17198
- const isConnection = (data) => !!data && connectionCreated.value;
17199
- const isConnectionCancelled = (data) => !!data && !connectionCreated.value;
17401
+ const connectingHandle = ref();
17402
+ const connectedHandle = ref();
17200
17403
  function onConnectStart(handle2) {
17201
17404
  emit("create:connection:start", handle2);
17202
- connectionEventData.value = handle2;
17405
+ connectingHandle.value = handle2;
17203
17406
  connectionCreated.value = false;
17204
17407
  }
17205
17408
  function onConnect(connection) {
17206
17409
  emit("create:connection", connection);
17207
- connectionEventData.value = connection;
17410
+ connectedHandle.value = connection;
17208
17411
  connectionCreated.value = true;
17209
17412
  }
17210
- function onConnectEnd() {
17211
- if (isConnection(connectionEventData.value)) {
17212
- emit("create:connection:end", connectionEventData.value);
17213
- } else if (isConnectionCancelled(connectionEventData.value)) {
17214
- emit("create:connection:cancelled", connectionEventData.value);
17413
+ function onConnectEnd(event) {
17414
+ if (connectedHandle.value) {
17415
+ emit("create:connection:end", connectedHandle.value, event);
17416
+ } else if (connectingHandle.value) {
17417
+ emit("create:connection:cancelled", connectingHandle.value, event);
17215
17418
  }
17419
+ connectedHandle.value = void 0;
17420
+ connectingHandle.value = void 0;
17216
17421
  }
17217
17422
  function onDeleteConnection(connection) {
17218
17423
  emit("delete:connection", connection);
@@ -17335,9 +17540,12 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
17335
17540
  watch(() => props.readOnly, setReadonly, {
17336
17541
  immediate: true
17337
17542
  });
17543
+ provide(CanvasKey, {
17544
+ connectingHandle
17545
+ });
17338
17546
  return (_ctx, _cache) => {
17339
- const _component_CanvasConnectionLine = __unplugin_components_0;
17340
- const _component_CanvasControlButtons = _sfc_main$n;
17547
+ const _component_CanvasConnectionLine = __unplugin_components_0$3;
17548
+ const _component_CanvasControlButtons = _sfc_main$s;
17341
17549
  return openBlock(), createBlock(unref(_sfc_main$1$1), {
17342
17550
  id: _ctx.id,
17343
17551
  nodes: _ctx.nodes,
@@ -17350,8 +17558,6 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
17350
17558
  "max-zoom": 4,
17351
17559
  class: normalizeClass([unref($style).canvas, { [unref($style).visible]: paneReady.value }]),
17352
17560
  "data-test-id": "canvas",
17353
- onNodeDragStop,
17354
- onSelectionDragStop,
17355
17561
  onEdgeMouseEnter: onMouseEnterEdge,
17356
17562
  onEdgeMouseLeave: onMouseLeaveEdge,
17357
17563
  onConnectStart,
@@ -17359,7 +17565,8 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
17359
17565
  onConnectEnd,
17360
17566
  onPaneClick: onClickPane,
17361
17567
  onContextmenu: onOpenContextMenu,
17362
- onViewportChange
17568
+ onViewportChange,
17569
+ onNodesChange
17363
17570
  }, {
17364
17571
  "node-canvas-node": withCtx((canvasNodeProps) => [
17365
17572
  createVNode(Node, mergeProps(canvasNodeProps, {
@@ -17387,12 +17594,12 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
17387
17594
  createVNode(_component_CanvasConnectionLine, normalizeProps(guardReactiveProps(connectionLineProps)), null, 16)
17388
17595
  ]),
17389
17596
  default: withCtx(() => [
17390
- createVNode(unref(_sfc_main$U), {
17597
+ createVNode(unref(_sfc_main$_), {
17391
17598
  "data-test-id": "canvas-background",
17392
17599
  "pattern-color": "#aaa",
17393
17600
  gap: unref(GRID_SIZE)
17394
17601
  }, null, 8, ["gap"]),
17395
- createVNode(unref(_sfc_main$V), {
17602
+ createVNode(unref(_sfc_main$$), {
17396
17603
  "data-test-id": "canvas-minimap",
17397
17604
  "aria-label": "n8n Minimap",
17398
17605
  height: 120,
@@ -18509,7 +18716,7 @@ function useCanvasOperations({ router }) {
18509
18716
  }
18510
18717
  }
18511
18718
  }
18512
- const position2 = nodeTypesStore.isTriggerNode(node2.type) && triggerNodes.value.length === 0 ? canvasStore.canvasAddButtonPosition : (
18719
+ const position2 = nodeTypesStore.isTriggerNode(node2.type) && triggerNodes.value.length === 0 ? [0, 0] : (
18513
18720
  // If no node is active find a free spot
18514
18721
  lastClickPosition.value
18515
18722
  );
@@ -19105,7 +19312,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
19105
19312
  __name: "NodeView.v2",
19106
19313
  setup(__props) {
19107
19314
  const LazyNodeCreation2 = defineAsyncComponent(
19108
- async () => await __vitePreload(() => import("./NodeCreation-flnxFWcn.js").then((n) => n.N), true ? __vite__mapDeps([38,3,2,4,5,6,7,8,9,10,1,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,39]) : void 0)
19315
+ async () => await __vitePreload(() => import("./NodeCreation-B-ZsOH-L.js").then((n) => n.N), true ? __vite__mapDeps([39,3,4,5,6,2,7,8,9,10,1,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40]) : void 0)
19109
19316
  );
19110
19317
  const LazyNodeDetailsView = defineAsyncComponent(
19111
19318
  async () => await __vitePreload(() => Promise.resolve().then(() => NodeDetailsView), true ? void 0 : void 0)
@@ -19589,7 +19796,12 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
19589
19796
  function onRevertCreateConnection({ connection }) {
19590
19797
  revertCreateConnection(connection);
19591
19798
  }
19592
- function onCreateConnectionCancelled(event) {
19799
+ function onCreateConnectionCancelled(event, mouseEvent) {
19800
+ var _a;
19801
+ const preventDefault = (_a = (mouseEvent == null ? void 0 : mouseEvent.target).classList) == null ? void 0 : _a.contains("clickable");
19802
+ if (preventDefault) {
19803
+ return;
19804
+ }
19593
19805
  setTimeout(() => {
19594
19806
  nodeCreatorStore.openNodeCreatorForConnectingNode({
19595
19807
  connection: {
@@ -20132,7 +20344,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
20132
20344
  removeBeforeUnloadEventBindings();
20133
20345
  });
20134
20346
  return (_ctx, _cache) => {
20135
- const _component_CanvasChatButton = __unplugin_components_0$1;
20347
+ const _component_CanvasChatButton = __unplugin_components_0$4;
20136
20348
  return unref(editableWorkflow) && unref(editableWorkflowObject) && !isLoading.value ? (openBlock(), createBlock(WorkflowCanvas, {
20137
20349
  key: 0,
20138
20350
  workflow: unref(editableWorkflow),
@@ -20245,11 +20457,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
20245
20457
  setup(__props) {
20246
20458
  const workflowsStore = useWorkflowsStore();
20247
20459
  const sourceControlStore = useSourceControlStore();
20460
+ const settingsStore = useSettingsStore();
20248
20461
  const router = useRouter();
20249
20462
  const route = useRoute();
20250
20463
  const workflowHelpers = useWorkflowHelpers({ router });
20251
20464
  const { resetWorkspace } = useCanvasOperations({ router });
20252
- const nodeViewVersion = useLocalStorage("NodeView.version", "1");
20465
+ const nodeViewVersion = useLocalStorage(
20466
+ "NodeView.version",
20467
+ settingsStore.deploymentType === "n8n-internal" ? "2" : "1"
20468
+ );
20253
20469
  const workflowId = computed(() => route.params.name);
20254
20470
  const isReadOnlyEnvironment = computed(() => {
20255
20471
  return sourceControlStore.preferences.branchReadOnly;