n8n-editor-ui 1.70.0 → 1.71.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 (89) hide show
  1. package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-BntMIzDT.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-YmjXnGZU.js} +1 -1
  2. package/dist/assets/{AuthView-Dxh8QCaY.js → AuthView-II3Wa5OB.js} +1 -1
  3. package/dist/assets/{CanvasChat-DKeWqqZz.css → CanvasChat-BuYT3e9G.css} +56 -62
  4. package/dist/assets/{CanvasChat-rOzwS7Vn.js → CanvasChat-ycxVbREq.js} +211 -156
  5. package/dist/assets/{CanvasControls-Bmo04dJ7.js → CanvasControls-xKyFrMYs.js} +1 -1
  6. package/dist/assets/{ChangePasswordView-BtxMhBmp.js → ChangePasswordView-V6_lM1cg.js} +5 -5
  7. package/dist/assets/CollectionParameter-B_tZRaC-.js +4 -0
  8. package/dist/assets/{ExecutionsTime.vue_vue_type_script_setup_true_lang-u1_TBZpo.js → ConcurrentExecutionsHeader-D0gwFXQC.js} +100 -13
  9. package/dist/assets/{ExecutionsTime-DVxRt-Pz.css → ConcurrentExecutionsHeader-D99WmQjD.css} +13 -1
  10. package/dist/assets/{CredentialsView-B4KE87Vi.js → CredentialsView-CFXV7rF5.js} +5 -5
  11. package/dist/assets/{ErrorView-BIcv6TEp.js → ErrorView-DnkoQwKM.js} +1 -1
  12. package/dist/assets/{ExecutionsView-C8106X7e.js → ExecutionsView-Bxv-oyjW.js} +44 -25
  13. package/dist/assets/{ExecutionsView-COFUjHqa.css → ExecutionsView-DNwpODRj.css} +29 -29
  14. package/dist/assets/{FileSaver.min-BP27OS5o.js → FileSaver.min-BbGWF0W0.js} +1 -1
  15. package/dist/assets/{FixedCollectionParameter-jU2z1mVN.js → FixedCollectionParameter-B8gqkYrn.js} +1 -1
  16. package/dist/assets/{ForgotMyPasswordView-BPRVyjqF.js → ForgotMyPasswordView-DJno5OYu.js} +2 -2
  17. package/dist/assets/{MainHeader-C5fjzcBU.js → MainHeader-B12_uYMD.js} +8 -8
  18. package/dist/assets/{MainSidebar-DDwUpW3R.js → MainSidebar-KWMUAI1a.js} +4 -4
  19. package/dist/assets/{NodeCreation-fYCCIvH0.js → NodeCreation-D0ZfyMv8.js} +4 -4
  20. package/dist/assets/{NodeCreator-CIH8NrPP.js → NodeCreator-DMv1F4DA.js} +11 -11
  21. package/dist/assets/{NodeViewSwitcher-o9O7uIC5.js → NodeViewSwitcher-BAmNQYuK.js} +126 -98
  22. package/dist/assets/{NodeViewSwitcher-KdRgfKxB.css → NodeViewSwitcher-CVfdiWEq.css} +42 -42
  23. package/dist/assets/{ProjectCardBadge-rog20byy.js → ProjectCardBadge-CsopiL8Q.js} +1 -1
  24. package/dist/assets/{ProjectHeader-Ch7-0YgF.js → ProjectHeader-ByJin2Vs.js} +2 -2
  25. package/dist/assets/{ProjectSettings-GsW7L_Gg.js → ProjectSettings-BaqLhSok.js} +3 -3
  26. package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-DVCg4pLb.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-BREVdOi8.js} +1 -1
  27. package/dist/assets/{ResourcesListLayout-Btn9Hay8.js → ResourcesListLayout-CrPAVdQx.js} +1 -1
  28. package/dist/assets/{RunDataJson-BHIY5dHu.js → RunDataJson-0Gdn6kSj.js} +12 -12
  29. package/dist/assets/{RunDataJsonActions-h2GG7hQH.js → RunDataJsonActions-BhDX_Txs.js} +3 -3
  30. package/dist/assets/{RunDataSearch-C-CgDL9m.js → RunDataSearch-CfZ3sk7A.js} +1 -1
  31. package/dist/assets/{RunDataTable-DX2WMhyi.js → RunDataTable-1ZOHR24l.js} +2 -2
  32. package/dist/assets/{SamlOnboarding-DAv7qRQH.js → SamlOnboarding-B0gz6dmT.js} +2 -2
  33. package/dist/assets/{SettingsApiView-BpT9mKIy.js → SettingsApiView-D7TfC68f.js} +1 -1
  34. package/dist/assets/{SettingsCommunityNodesView-C_eGce72.js → SettingsCommunityNodesView-Cn2QS6YJ.js} +3 -3
  35. package/dist/assets/{SettingsExternalSecrets-CGbkGSxM.js → SettingsExternalSecrets-BMwHXUbh.js} +1 -1
  36. package/dist/assets/{SettingsLdapView-w-4uJ-WO.js → SettingsLdapView-Om4h-SOK.js} +1 -1
  37. package/dist/assets/{SettingsLogStreamingView-dIzDyxR0.js → SettingsLogStreamingView-1qxOcSwE.js} +1 -1
  38. package/dist/assets/{SettingsPersonalView-Cqkzewwp.js → SettingsPersonalView-Cbcb-dUn.js} +1 -1
  39. package/dist/assets/{SettingsSourceControl-DvdzOGOW.js → SettingsSourceControl-CU-rij4H.js} +1 -1
  40. package/dist/assets/{SettingsSso-CEyzwTf6.js → SettingsSso-CqzdZX3v.js} +1 -1
  41. package/dist/assets/{SettingsUsageAndPlan-BfvgFmrE.js → SettingsUsageAndPlan-C2e9GLsv.js} +1 -1
  42. package/dist/assets/{SettingsUsersView-B74JDNzE.js → SettingsUsersView-xZokdz1r.js} +1 -1
  43. package/dist/assets/{SettingsView-BXjB3fL0.js → SettingsView-BH_iYABe.js} +5 -4
  44. package/dist/assets/{SetupView-CUYm-G9-.js → SetupView-CzbIaZVJ.js} +2 -2
  45. package/dist/assets/{SetupWorkflowCredentialsButton-ebC2FUi4.js → SetupWorkflowCredentialsButton-C0OcQQFJ.js} +1 -1
  46. package/dist/assets/{SetupWorkflowFromTemplateView-D9qMRkDl.js → SetupWorkflowFromTemplateView-CsQJwMO0.js} +3 -3
  47. package/dist/assets/{SigninView-DJyuz9c2.js → SigninView-CsucBbVi.js} +19 -19
  48. package/dist/assets/{SignoutView-C6UBxu60.js → SignoutView-CyLWedvn.js} +1 -1
  49. package/dist/assets/{SignupView-D2FWuaiH.js → SignupView-cLJ1k6Ti.js} +2 -2
  50. package/dist/assets/{TemplateDetails-B2Tjk70m.js → TemplateDetails-BD_iO2dV.js} +1 -1
  51. package/dist/assets/{TemplateList-HMZjVMyp.js → TemplateList-ftUTzbNT.js} +1 -1
  52. package/dist/assets/{TemplatesCollectionView-BIJyxp-d.js → TemplatesCollectionView-BN4T_Z3V.js} +5 -5
  53. package/dist/assets/{TemplatesSearchView-DZ_z-833.js → TemplatesSearchView-Bmug-QXp.js} +3 -3
  54. package/dist/assets/{TemplatesView-9gF5kWu6.js → TemplatesView-df4IkFNm.js} +1 -1
  55. package/dist/assets/{TemplatesWorkflowView-BuUff8HB.js → TemplatesWorkflowView-DRuQcO2d.js} +5 -5
  56. package/dist/assets/{TestDefinitionEditView-CQZkRDBJ.js → TestDefinitionEditView-CJG_M-B4.js} +2 -2
  57. package/dist/assets/{TestDefinitionListView-CjZFxgTi.js → TestDefinitionListView-cEfmYGle.js} +2 -2
  58. package/dist/assets/{VariablesView-FC5wqShX.js → VariablesView-BqyMbnya.js} +2 -2
  59. package/dist/assets/VirtualSchema-Be-DGXEU.css +173 -0
  60. package/dist/assets/VirtualSchema-DiQQitJX.js +1863 -0
  61. package/dist/assets/{WorkerView-C-nSya6I.js → WorkerView-CSrcIA14.js} +4 -4
  62. package/dist/assets/{WorkflowActivator-CHX1pfvG.js → WorkflowActivator-CAKSe6ab.js} +2 -2
  63. package/dist/assets/{WorkflowExecutionsInfoAccordion-BXyNsJxl.js → WorkflowExecutionsInfoAccordion-DnWD_9ew.js} +1 -1
  64. package/dist/assets/{WorkflowExecutionsLandingPage-F1VtQsvR.js → WorkflowExecutionsLandingPage-B-SW6qSF.js} +2 -2
  65. package/dist/assets/{WorkflowExecutionsPreview-D0LX3heg.js → WorkflowExecutionsPreview-DgzqD7xu.js} +5 -5
  66. package/dist/assets/{WorkflowExecutionsView-CfNb8qea.js → WorkflowExecutionsView-C4qhWmn5.js} +16 -7
  67. package/dist/assets/{WorkflowExecutionsView-CepgQyRt.css → WorkflowExecutionsView-C6EMZ-AQ.css} +2 -2
  68. package/dist/assets/{WorkflowHistory-BbJWHQnH.js → WorkflowHistory-Btu_t8nw.js} +3 -3
  69. package/dist/assets/{WorkflowOnboardingView-DjX_Iu8m.js → WorkflowOnboardingView-Dqiba8dR.js} +1 -1
  70. package/dist/assets/{WorkflowPreview-CHIMaYHv.js → WorkflowPreview-BghVkp3I.js} +1 -1
  71. package/dist/assets/{WorkflowsView-TVYSIx1a.js → WorkflowsView-CGSmdVr2.js} +7 -7
  72. package/dist/assets/{index-CmLVLa2S.js → index-BLjFvDIb.js} +1471 -1234
  73. package/dist/assets/{index-CnXoucRo.css → index-D50gpyk6.css} +18 -10
  74. package/dist/assets/{pushConnection.store-CyaZOmSq.js → pushConnection.store-B_O3Ndxc.js} +1 -1
  75. package/dist/assets/{templateActions-BJQmBPkz.js → templateActions-CBKQAFvV.js} +1 -1
  76. package/dist/assets/{testDefinition.store.ee-C_33eEVx.js → testDefinition.store.ee-2tviSVei.js} +1 -1
  77. package/dist/assets/{useBugReporting-B6XywIQp.js → useBugReporting-C2zyZy6T.js} +1 -1
  78. package/dist/assets/{useExecutionDebugging-3jTK_axu.js → useExecutionDebugging-Nq-02Km0.js} +3 -3
  79. package/dist/assets/{useExecutionHelpers-B2Hv6YkQ.js → useExecutionHelpers-BhXcAom9.js} +1 -1
  80. package/dist/assets/{useGlobalEntityCreation-Bs_R5VRy.js → useGlobalEntityCreation-BNV5jiBY.js} +2 -2
  81. package/dist/assets/{useNodeViewVersionSwitcher-cbmuQpXh.js → useNodeViewVersionSwitcher-k_nkRZI7.js} +1 -1
  82. package/dist/assets/{usePushConnection-D2ReX4YT.js → usePushConnection-Bn4oBeSx.js} +2 -2
  83. package/dist/assets/{useRunWorkflow-DH7ZzA8t.css → useRunWorkflow-B_S0x25z.css} +44 -43
  84. package/dist/assets/{useRunWorkflow-D5J5xO1e.js → useRunWorkflow-DVQNNBeJ.js} +47 -39
  85. package/dist/assets/{useWorkflowActivate-Ck0ToSti.js → useWorkflowActivate-CkngxVfp.js} +1 -1
  86. package/dist/index.html +2 -2
  87. package/package.json +1 -1
  88. package/dist/assets/CollectionParameter-B6D9F9ZW.js +0 -4
  89. package/dist/static/quickstart_thumbnail.png +0 -0
@@ -1,13 +1,13 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/RunDataTable-DX2WMhyi.js","assets/index-CmLVLa2S.js","assets/index-CnXoucRo.css","assets/useExecutionHelpers-B2Hv6YkQ.js","assets/RunDataTable-enskmmU4.css","assets/RunDataJson-BHIY5dHu.js","assets/useRunWorkflow-D5J5xO1e.js","assets/useRunWorkflow-DH7ZzA8t.css","assets/FileSaver.min-BP27OS5o.js","assets/useWorkflowActivate-Ck0ToSti.js","assets/pushConnection.store-CyaZOmSq.js","assets/useExecutionDebugging-3jTK_axu.js","assets/useNodeViewVersionSwitcher-cbmuQpXh.js","assets/useBugReporting-B6XywIQp.js","assets/RunDataJson-Dtc8i0I7.css","assets/RunDataSearch-C-CgDL9m.js","assets/RunDataSearch-BA0wlJtp.css","assets/NodeCreation-fYCCIvH0.js","assets/NodeCreation-30KXmZi2.css","assets/CanvasControls-Bmo04dJ7.js","assets/CanvasControls-Gjw5xMXK.css","assets/SetupWorkflowCredentialsButton-ebC2FUi4.js"])))=>i.map(i=>d[i]);
2
- import { bn as BaseTransition, bo as BaseTransitionPropsValidators, bp as Comment, bq as DeprecationTypes, br as EffectScope, bs as ErrorCodes, bt as ErrorTypeStrings, F as Fragment, bu as KeepAlive, bv as ReactiveEffect, bw as Static, bx as Suspense, by as Teleport, bz as Text, bA as TrackOpTypes, bB as Transition$2, bC as TransitionGroup, bD as TriggerOpTypes, bE as VueElement, bF as assertNumber, bG as callWithAsyncErrorHandling, bH as callWithErrorHandling, bI as camelize, bJ as capitalize, bK as cloneVNode, bL as compatUtils, q as computed, bM as createApp, e as createBlock, f as createCommentVNode, h as createElementBlock, j as createBaseVNode, bN as createHydrationRenderer, bO as createPropsRestProxy, bP as createRenderer, bQ as createSSRApp, aO as createSlots, bR as createStaticVNode, k as createTextVNode, i as createVNode, bS as customRef, bT as defineAsyncComponent, d as defineComponent, bU as defineCustomElement, bV as defineEmits, bW as defineExpose, bX as defineModel, bY as defineOptions, bZ as defineProps, b_ as defineSSRCustomElement, b$ as defineSlots, c0 as devtools, c1 as effect, c2 as effectScope, c3 as getCurrentInstance, c4 as getCurrentScope, c5 as getCurrentWatcher, c6 as getTransitionRawChildren, aW as guardReactiveProps, aq as h, c7 as handleError, c8 as hasInjectionContext, c9 as hydrate, ca as hydrateOnIdle, cb as hydrateOnInteraction, cc as hydrateOnMediaQuery, cd as hydrateOnVisible, ce as initCustomFormatter, cf as initDirectivesForSSR, aS as inject, cg as isMemoSame, ch as isProxy, ci as isReactive, cj as isReadonly, aT as isRef, ck as isRuntimeOnly, cl as isShallow, cm as isVNode, cn as markRaw, co as mergeDefaults, cp as mergeModels, aX as mergeProps, y as nextTick, n as normalizeClass, aV as normalizeProps, B as normalizeStyle, cq as onActivated, ax as onBeforeMount, x as onBeforeUnmount, cr as onBeforeUpdate, cs as onDeactivated, ct as onErrorCaptured, o as onMounted, cu as onRenderTracked, cv as onRenderTriggered, cw as onScopeDispose, cx as onServerPrefetch, b0 as onUnmounted, cy as onUpdated, cz as onWatcherCleanup, c as openBlock, cA as popScopeId, bm as provide, cB as proxyRefs, cC as pushScopeId, cD as queuePostFlushCb, cE as reactive, cF as readonly, r as ref, cG as registerRuntimeCompiler, cH as render$5, A as renderList, s as renderSlot, m as resolveComponent, cI as resolveDirective, aY as resolveDynamicComponent, cJ as resolveFilter, cK as resolveTransitionHooks, cL as setBlockTracking, cM as setDevtoolsHook, cN as setTransitionHooks, cO as shallowReactive, cP as shallowReadonly, cQ as shallowRef, cR as ssrContextKey, cS as ssrUtils, cT as stop, t as toDisplayString, cU as toHandlerKey, cV as toHandlers, cW as toRaw, cX as toRef, aU as toRefs$1, cY as toValue$1, cZ as transformVNodeArgs, c_ as triggerRef, l as unref, c$ as useAttrs, aa as useCssModule, d0 as useCssVars, d1 as useHost, d2 as useId, d3 as useModel, d4 as useSSRContext, d5 as useShadowRoot, d6 as useSlots, d7 as useTemplateRef, d8 as useTransitionState, d9 as vModelCheckbox, da as vModelDynamic, db as vModelRadio, dc as vModelSelect, b1 as vModelText, az as vShow, dd as version, de as warn$1, H as watch, bj as watchEffect, df as watchPostEffect, dg as watchSyncEffect, dh as withAsyncContext, w as withCtx, di as withDefaults, ay as withDirectives, G as withKeys, dj as withMemo, I as withModifiers, dk as withScopeId, dl as createCompounder, dm as SetCache, dn as arrayIncludes, dp as cacheHas, dq as baseRest, dr as isArrayLikeObject, ds as baseFlatten, K as useUIStore, bk as useNodeTypesStore, T as useWorkflowsStore, a0 as useSourceControlStore, am as getResourcePermissions, dt as isPresent, du as getMousePosition$1, aC as STICKY_NODE_TYPE, g as useI18n, dv as NOT_DUPLICATABLE_NODE_TYPES, E as onClickOutside, dw as N8nActionDropdown, _ as _export_sfc$1, dx as _sfc_main$13, at as useNDVStore, dy as isCommunityPackageName, dz as NPM_PACKAGE_DOCS_BASE_URL, dA as BUILTIN_NODES_DOCS_URL, dB as COMMUNITY_NODES_INSTALLATION_DOCS_URL, bd as NodeConnectionType, aP as useExternalHooks, ak as useTelemetry, b as useRouter, b2 as useClipboard, a4 as useWorkflowHelpers, a as useToast, dC as OPEN_URL_PANEL_TRIGGER_NODE_TYPES, dD as PRODUCTION_ONLY_TRIGGER_NODE_TYPES, dE as FORM_TRIGGER_NODE_TYPE, b3 as CHAT_TRIGGER_NODE_TYPE, dF as toValue$2, dG as toRef$1, dH as tryOnScopeDispose$1, dI as isIOS, dJ as noop$4, dK as isObject$1, dL as isClient$1, bl as useNodeHelpers, J as useDebounce, dM as TitledList, dN as nodeIssuesToString, ba as getNodeInputs, dO as MANUAL_TRIGGER_NODE_TYPE, dP as WEBHOOK_NODE_TYPE, dQ as AI_TRANSFORM_NODE_TYPE, dR as AI_TRANSFORM_CODE_GENERATED_FOR_PROMPT, dS as generateCodeForAiTransform, dT as AI_TRANSFORM_JS_CODE, ac as nodeViewEventBus, al as useMessage, ae as MODAL_CONFIRM, dU as SWITCH_NODE_TYPE, dV as isEqual, dW as captureException, dX as useCredentialsStore, dY as useHistoryStore, dZ as importCurlEventBus, d_ as ndvEventBus, d$ as CUSTOM_NODES_DOCS_URL, e0 as NodeCredentials, e1 as _sfc_main$14, e2 as ProjectTypes, bb as getConnectionTypes, e3 as isSingleExecution, be as get$4, e4 as getNodeParameters, e5 as deepCopy, e6 as set$4, e7 as unset, e8 as RenameNodeCommand, e9 as isINodePropertyCollectionList, ea as isINodePropertiesList, eb as isINodePropertyOptionsList, ec as displayParameter, ed as Draggable, ee as useThrottleFn, aI as useStorage, ef as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, eg as MAIN_NODE_PANEL_WIDTH, eh as getAugmentedNamespace, ei as commonjsGlobal, ej as getDefaultExportFromCjs, ek as sanitizeHtml_1, el as sanitizeHtml, em as jsonParse, en as N8nLink, eo as N8nText, ep as _sfc_main$15, eq as N8nTooltip, Z as useRootStore, U as useRoute, er as storeToRefs, es as dataPinningEventBus, et as MAX_DISPLAY_DATA_SIZE_SCHEMA_VIEW, eu as MAX_DISPLAY_DATA_SIZE, ev as HTML_NODE_TYPE, ew as DATA_PINNING_DOCS_URL, ex as N8nCallout, ey as N8nRadioButtons, ez as N8nButton, eA as _sfc_main$16, eB as N8nSelect, eC as N8nTabs, eD as _sfc_main$17, eE as JsonEditor, eF as DATA_EDITING_DOCS_URL, eG as InfoTip, eH as N8nBlockUi, eI as executionDataToJson, eJ as NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND, eK as isEmpty, bc as getNodeOutputs, eL as getNodeHints, eM as getGenericHints, eN as LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG, eO as LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG, eP as clearJsonKey, eQ as searchInObject, eR as isObject$2, as as __vitePreload, eS as TEST_PIN_DATA, eT as waitingNodeTooltip, eU as truncate, eV as uniqBy, eW as START_NODE_TYPE, eX as CRON_NODE_TYPE, eY as INTERVAL_NODE_TYPE, eZ as CopyInput, C as createEventBus, e_ as isTriggerPanelObject, e$ as getTriggerNodeServiceName, V as VIEWS, ag as WORKFLOW_SETTINGS_MODAL_KEY, p as useSettingsStore, f0 as useDeviceSupport, f1 as APP_MODALS_ELEMENT_ID, f2 as useStyles, f3 as EXECUTABLE_TRIGGER_NODE_TYPES, f4 as BASE_NODE_SURVEY_URL, a8 as EnterpriseEditionFeature, f5 as getAnchorPosition, f6 as isValidNodeConnectionType, f7 as getEndpointScope, f8 as getInputEndpointUUID, f9 as getInputEndpointStyle, fa as getScope, fb as getInputNameOverlay, fc as NODE_INSERT_SPACER_BETWEEN_INPUT_GROUPS, fd as NODE_MIN_INPUT_ITEMS_COUNT, fe as getOutputEndpointUUID, ff as getOutputEndpointStyle, fg as getOutputNameOverlay, fh as NO_OP_NODE_TYPE, fi as NODE_CONNECTION_TYPE_ALLOW_MULTIPLE, fj as GRID_SIZE, fk as isString, fl as isNumber, fm as assert, fn as QUICKSTART_NOTE_NAME, fo as CUSTOM_API_CALL_KEY, fp as FontAwesomeIcon, fq as xss, fr as WAIT_NODE_TYPE, fs as SEND_AND_WAIT_OPERATION, ft as FORM_NODE_TYPE, fu as WAIT_TIME_UNLIMITED, fv as SIMULATE_NODE_TYPE, fw as SIMULATE_TRIGGER_NODE_TYPE, $ as useCanvasStore, fx as getRelativePosition, bf as v4, fy as CORE_NODES_CATEGORY, fz as DEFAULT_SUBCATEGORY, fA as AI_TRANSFORM_NODE_TYPE$1, fB as sublimeSearch, b6 as AI_SUBCATEGORY, b7 as AI_CATEGORY_AGENTS, fC as sortBy, fD as i18n, aL as useTemplatesStore, fE as AI_NODE_CREATOR_VIEW, fF as AI_OTHERS_NODE_CREATOR_VIEW, fG as AI_CATEGORY_DOCUMENT_LOADERS, fH as AI_CATEGORY_LANGUAGE_MODELS, fI as AI_CATEGORY_MEMORY, fJ as AI_CATEGORY_OUTPUTPARSER, fK as AI_CATEGORY_RETRIEVERS, fL as AI_CATEGORY_TEXT_SPLITTERS, fM as AI_CATEGORY_TOOLS, fN as AI_WORKFLOW_TOOL_LANGCHAIN_NODE_TYPE, fO as AI_CODE_TOOL_LANGCHAIN_NODE_TYPE, fP as AI_CATEGORY_EMBEDDING, fQ as AI_CATEGORY_VECTOR_STORES, fR as AI_UNCATEGORIZED_CATEGORY, fS as TRIGGER_NODE_CREATOR_VIEW, fT as EMAIL_IMAP_NODE_TYPE, fU as SCHEDULE_TRIGGER_NODE_TYPE, fV as EXECUTE_WORKFLOW_TRIGGER_NODE_TYPE, fW as OTHER_TRIGGER_NODES_SUBCATEGORY, fX as REGULAR_NODE_CREATOR_VIEW, fY as RSS_READ_NODE_TYPE, fZ as EMAIL_SEND_NODE_TYPE, f_ as TRANSFORM_DATA_SUBCATEGORY, f$ as FILTER_NODE_TYPE, g0 as REMOVE_DUPLICATES_NODE_TYPE, g1 as SPLIT_OUT_NODE_TYPE, g2 as LIMIT_NODE_TYPE, g3 as SUMMARIZE_NODE_TYPE, g4 as AGGREGATE_NODE_TYPE, g5 as MERGE_NODE_TYPE, g6 as MARKDOWN_NODE_TYPE, g7 as XML_NODE_TYPE, g8 as CRYPTO_NODE_TYPE, g9 as EXTRACT_FROM_FILE_NODE_TYPE, ga as CONVERT_TO_FILE_NODE_TYPE, gb as COMPRESSION_NODE_TYPE, gc as EDIT_IMAGE_NODE_TYPE, gd as FLOWS_CONTROL_SUBCATEGORY, ge as IF_NODE_TYPE, gf as SPLIT_IN_BATCHES_NODE_TYPE, gg as HELPERS_SUBCATEGORY, gh as HTTP_REQUEST_NODE_TYPE, gi as CODE_NODE_TYPE, b8 as AI_CATEGORY_CHAINS, gj as SET_NODE_TYPE, gk as DATETIME_NODE_TYPE, R as defineStore, gl as AI_CATEGORY_ROOT_NODES, b9 as AI_CODE_NODE_TYPE, gm as isValidCanvasConnectionMode, gn as CanvasConnectionMode, S as STORES, go as NODE_CREATOR_OPEN_SOURCES, gp as isVueFlowConnection, gq as nodeConnectionTypes, gr as MOUSE_EVENT_BUTTON, gs as MOUSE_EVENT_BUTTONS, gt as KeyboardShortcutTooltip, a3 as useDocumentTitle, gu as mapStores, a2 as useNpsSurveyStore, a1 as useProjectsStore, au as useExecutionsStore, gv as useExternalSecretsStore, gw as useWorkflowsEEStore, gx as useEnvironmentsStore, u as useUsersStore, D as useTagsStore, gy as getBackgroundStyles, b4 as MANUAL_CHAT_TRIGGER_NODE_TYPE, gz as getNodeViewTab, X as PLACEHOLDER_EMPTY_WORKFLOW_ID, ao as MAIN_HEADER_TABS, gA as ready$1, aE as sourceControlEventBus, gB as historyBus, gC as generateNodesGraph, gD as N8nAddInputEndpointType, gE as getFixedNodesList, gF as tryToParseNumber, gG as MoveNodeCommand, ai as VALID_WORKFLOW_IMPORT_URL_REGEX, gH as UPDATE_WEBHOOK_ID_NODE_TYPES, gI as getNewNodePosition, gJ as DRAG_EVENT_DATA_KEY, gK as NODE_SIZE, gL as getConnectorLengths, gM as MAX_X_TO_PUSH_DOWNSTREAM_NODES, gN as PUSH_NODES_OFFSET, gO as generateOffsets, gP as resetConnectionAfterPull, gQ as resetConnection, gR as moveBackInputLabelPosition, gS as hideOutputNameLabel, gT as addConnectionActionsOverlay, gU as getOverlay, gV as OVERLAY_ENDPOINT_ARROW_ID, gW as getConnectorPaintStyleData, gX as AddConnectionCommand, gY as addConnectionTestData, gZ as showOrHideItemsLabel, g_ as showOrHideMidpointArrow, g$ as isJSPlumbConnection, h0 as hideConnectionActions, h1 as showConnectionActions, h2 as resetInputLabelPosition, h3 as getConnectionInfo, h4 as showOutputNameLabel, h5 as RemoveConnectionCommand, h6 as isJSPlumbEndpointElement, h7 as isElementIntersection, h8 as calculateElementIntersection, h9 as showDropConnectionState, ha as showPullConnectionState, hb as EVENT_CONNECTION_ABORT, hc as INTERCEPT_BEFORE_DROP, hd as EVENT_CONNECTION, he as EVENT_DRAG_MOVE, hf as EVENT_CONNECTION_MOUSEOVER, hg as EVENT_CONNECTION_MOUSEOUT, hh as EVENT_CONNECTION_MOVED, hi as EVENT_ENDPOINT_MOUSEOVER, hj as EVENT_ENDPOINT_MOUSEOUT, hk as EVENT_CONNECTION_DETACHED, hl as EVENT_CONNECTION_DRAG, hm as EVENT_PLUS_ENDPOINT_CLICK, hn as EVENT_ADD_INPUT_ENDPOINT_CLICK, ho as N8nPlusEndpointType, av as usePostHog, hp as CANVAS_AUTO_ADD_MANUAL_TRIGGER_EXPERIMENT, hq as MODAL_CANCEL, hr as addClassesToOverlays, hs as getJSPlumbEndpoints, ht as isSubNodeType, hu as useDataSchema, hv as OVERLAY_RUN_ITEMS_ID, hw as RemoveNodeCommand, hx as CanvasKey, hy as CanvasNodeKey, hz as CanvasNodeRenderType, hA as refThrottled, hB as CanvasNodeHandleKey, hC as useActiveElement, hD as useEventListener$2, hE as onKeyDown, hF as onKeyUp, hG as sanitizeHtml$1, hH as AddNodeCommand, hI as DEFAULT_NODE_SIZE, hJ as CONFIGURATION_NODE_SIZE, hK as CONFIGURABLE_NODE_SIZE, hL as NEW_WORKFLOW_ID, hM as onBeforeRouteLeave } from "./index-CmLVLa2S.js";
3
- import { c as capitalize$1, u as usePinnedData, a as useRunWorkflow, b as useNodeType, _ as _sfc_main$18, R as RunDataAi } from "./useRunWorkflow-D5J5xO1e.js";
4
- import { F as FileSaver_minExports } from "./FileSaver.min-BP27OS5o.js";
5
- import { u as useExecutionHelpers, c as convertToDisplayDateComponents } from "./useExecutionHelpers-B2Hv6YkQ.js";
6
- import { u as useWorkflowActivate } from "./useWorkflowActivate-Ck0ToSti.js";
7
- import { g as globalLinkActionsEventBus, u as usePushConnectionStore } from "./pushConnection.store-CyaZOmSq.js";
8
- import { u as useExecutionDebugging } from "./useExecutionDebugging-3jTK_axu.js";
9
- import { u as useBeforeUnload, a as useNodeViewVersionSwitcher } from "./useNodeViewVersionSwitcher-cbmuQpXh.js";
10
- import { u as useBugReporting } from "./useBugReporting-B6XywIQp.js";
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/RunDataTable-1ZOHR24l.js","assets/index-BLjFvDIb.js","assets/index-D50gpyk6.css","assets/useExecutionHelpers-BhXcAom9.js","assets/RunDataTable-enskmmU4.css","assets/RunDataJson-0Gdn6kSj.js","assets/useRunWorkflow-DVQNNBeJ.js","assets/useRunWorkflow-B_S0x25z.css","assets/FileSaver.min-BbGWF0W0.js","assets/useWorkflowActivate-CkngxVfp.js","assets/pushConnection.store-B_O3Ndxc.js","assets/useExecutionDebugging-Nq-02Km0.js","assets/useNodeViewVersionSwitcher-k_nkRZI7.js","assets/useBugReporting-C2zyZy6T.js","assets/RunDataJson-Dtc8i0I7.css","assets/VirtualSchema-DiQQitJX.js","assets/VirtualSchema-Be-DGXEU.css","assets/RunDataSearch-CfZ3sk7A.js","assets/RunDataSearch-BA0wlJtp.css","assets/NodeCreation-D0ZfyMv8.js","assets/NodeCreation-30KXmZi2.css","assets/CanvasControls-xKyFrMYs.js","assets/CanvasControls-Gjw5xMXK.css","assets/SetupWorkflowCredentialsButton-C0OcQQFJ.js"])))=>i.map(i=>d[i]);
2
+ import { bn as BaseTransition, bo as BaseTransitionPropsValidators, bp as Comment, bq as DeprecationTypes, br as EffectScope, bs as ErrorCodes, bt as ErrorTypeStrings, F as Fragment, bu as KeepAlive, bv as ReactiveEffect, bw as Static, bx as Suspense, by as Teleport, bz as Text, bA as TrackOpTypes, bB as Transition$2, bC as TransitionGroup, bD as TriggerOpTypes, bE as VueElement, bF as assertNumber, bG as callWithAsyncErrorHandling, bH as callWithErrorHandling, bI as camelize, bJ as capitalize, bK as cloneVNode, bL as compatUtils, q as computed, bM as createApp, e as createBlock, f as createCommentVNode, h as createElementBlock, j as createBaseVNode, bN as createHydrationRenderer, bO as createPropsRestProxy, bP as createRenderer, bQ as createSSRApp, aO as createSlots, bR as createStaticVNode, k as createTextVNode, i as createVNode, bS as customRef, bT as defineAsyncComponent, d as defineComponent, bU as defineCustomElement, bV as defineEmits, bW as defineExpose, bX as defineModel, bY as defineOptions, bZ as defineProps, b_ as defineSSRCustomElement, b$ as defineSlots, c0 as devtools, c1 as effect, c2 as effectScope, c3 as getCurrentInstance, c4 as getCurrentScope, c5 as getCurrentWatcher, c6 as getTransitionRawChildren, aW as guardReactiveProps, aq as h, c7 as handleError, c8 as hasInjectionContext, c9 as hydrate, ca as hydrateOnIdle, cb as hydrateOnInteraction, cc as hydrateOnMediaQuery, cd as hydrateOnVisible, ce as initCustomFormatter, cf as initDirectivesForSSR, aS as inject, cg as isMemoSame, ch as isProxy, ci as isReactive, cj as isReadonly, aT as isRef, ck as isRuntimeOnly, cl as isShallow, cm as isVNode, cn as markRaw, co as mergeDefaults, cp as mergeModels, aX as mergeProps, y as nextTick, n as normalizeClass, aV as normalizeProps, B as normalizeStyle, cq as onActivated, ax as onBeforeMount, x as onBeforeUnmount, cr as onBeforeUpdate, cs as onDeactivated, ct as onErrorCaptured, o as onMounted, cu as onRenderTracked, cv as onRenderTriggered, cw as onScopeDispose, cx as onServerPrefetch, b0 as onUnmounted, cy as onUpdated, cz as onWatcherCleanup, c as openBlock, cA as popScopeId, bm as provide, cB as proxyRefs, cC as pushScopeId, cD as queuePostFlushCb, cE as reactive, cF as readonly, r as ref, cG as registerRuntimeCompiler, cH as render$5, A as renderList, s as renderSlot, m as resolveComponent, cI as resolveDirective, aY as resolveDynamicComponent, cJ as resolveFilter, cK as resolveTransitionHooks, cL as setBlockTracking, cM as setDevtoolsHook, cN as setTransitionHooks, cO as shallowReactive, cP as shallowReadonly, cQ as shallowRef, cR as ssrContextKey, cS as ssrUtils, cT as stop, t as toDisplayString, cU as toHandlerKey, cV as toHandlers, cW as toRaw, cX as toRef, aU as toRefs$1, cY as toValue$1, cZ as transformVNodeArgs, c_ as triggerRef, l as unref, c$ as useAttrs, aa as useCssModule, d0 as useCssVars, d1 as useHost, d2 as useId, d3 as useModel, d4 as useSSRContext, d5 as useShadowRoot, d6 as useSlots, d7 as useTemplateRef, d8 as useTransitionState, d9 as vModelCheckbox, da as vModelDynamic, db as vModelRadio, dc as vModelSelect, b1 as vModelText, az as vShow, dd as version, de as warn$1, H as watch, bj as watchEffect, df as watchPostEffect, dg as watchSyncEffect, dh as withAsyncContext, w as withCtx, di as withDefaults, ay as withDirectives, G as withKeys, dj as withMemo, I as withModifiers, dk as withScopeId, dl as createCompounder, dm as SetCache, dn as arrayIncludes, dp as cacheHas, dq as baseRest, dr as isArrayLikeObject, ds as baseFlatten, K as useUIStore, bk as useNodeTypesStore, T as useWorkflowsStore, a0 as useSourceControlStore, am as getResourcePermissions, dt as isPresent, du as getMousePosition$1, aC as STICKY_NODE_TYPE, g as useI18n, dv as NOT_DUPLICATABLE_NODE_TYPES, E as onClickOutside, dw as N8nActionDropdown, _ as _export_sfc$1, dx as _sfc_main$13, at as useNDVStore, dy as isCommunityPackageName, dz as NPM_PACKAGE_DOCS_BASE_URL, dA as BUILTIN_NODES_DOCS_URL, dB as COMMUNITY_NODES_INSTALLATION_DOCS_URL, bd as NodeConnectionType, aP as useExternalHooks, ak as useTelemetry, b as useRouter, b2 as useClipboard, a4 as useWorkflowHelpers, a as useToast, dC as OPEN_URL_PANEL_TRIGGER_NODE_TYPES, dD as PRODUCTION_ONLY_TRIGGER_NODE_TYPES, dE as FORM_TRIGGER_NODE_TYPE, b3 as CHAT_TRIGGER_NODE_TYPE, dF as toValue$2, dG as toRef$1, dH as tryOnScopeDispose$1, dI as isIOS, dJ as noop$4, dK as isObject$1, dL as isClient$1, bl as useNodeHelpers, J as useDebounce, dM as TitledList, dN as nodeIssuesToString, ba as getNodeInputs, dO as MANUAL_TRIGGER_NODE_TYPE, dP as WEBHOOK_NODE_TYPE, dQ as AI_TRANSFORM_NODE_TYPE, dR as AI_TRANSFORM_CODE_GENERATED_FOR_PROMPT, dS as generateCodeForAiTransform, dT as AI_TRANSFORM_JS_CODE, ac as nodeViewEventBus, al as useMessage, ae as MODAL_CONFIRM, dU as SWITCH_NODE_TYPE, dV as isEqual, dW as captureException, dX as useCredentialsStore, dY as useHistoryStore, dZ as importCurlEventBus, d_ as ndvEventBus, d$ as CUSTOM_NODES_DOCS_URL, e0 as NodeCredentials, e1 as _sfc_main$14, e2 as ProjectTypes, bb as getConnectionTypes, e3 as isSingleExecution, bf as get$4, e4 as getNodeParameters, e5 as deepCopy, e6 as set$4, e7 as unset, e8 as RenameNodeCommand, e9 as isINodePropertyCollectionList, ea as isINodePropertiesList, eb as isINodePropertyOptionsList, ec as displayParameter, ed as Draggable, ee as useThrottleFn, aI as useStorage, ef as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, eg as MAIN_NODE_PANEL_WIDTH, eh as getAugmentedNamespace, ei as commonjsGlobal, ej as getDefaultExportFromCjs, ek as sanitizeHtml_1, el as sanitizeHtml, em as jsonParse, en as N8nLink, eo as N8nText, ep as _sfc_main$15, eq as N8nTooltip, Z as useRootStore, U as useRoute, er as storeToRefs, es as dataPinningEventBus, et as MAX_DISPLAY_DATA_SIZE_SCHEMA_VIEW, eu as MAX_DISPLAY_DATA_SIZE, ev as HTML_NODE_TYPE, ew as DATA_PINNING_DOCS_URL, ex as N8nCallout, ey as N8nRadioButtons, ez as N8nButton, eA as _sfc_main$16, eB as N8nSelect, eC as N8nTabs, eD as _sfc_main$17, eE as JsonEditor, eF as DATA_EDITING_DOCS_URL, eG as InfoTip, eH as N8nBlockUi, eI as executionDataToJson, eJ as NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND, eK as isEmpty, bc as getNodeOutputs, eL as getNodeHints, eM as getGenericHints, eN as LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG, eO as LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG, eP as clearJsonKey, eQ as searchInObject, eR as isObject$2, as as __vitePreload, p as useSettingsStore, eS as TEST_PIN_DATA, eT as waitingNodeTooltip, eU as truncate, eV as uniqBy, eW as START_NODE_TYPE, eX as CRON_NODE_TYPE, eY as INTERVAL_NODE_TYPE, eZ as CopyInput, C as createEventBus, e_ as isTriggerPanelObject, e$ as getTriggerNodeServiceName, V as VIEWS, ag as WORKFLOW_SETTINGS_MODAL_KEY, f0 as useDeviceSupport, f1 as APP_MODALS_ELEMENT_ID, f2 as useStyles, f3 as EXECUTABLE_TRIGGER_NODE_TYPES, f4 as BASE_NODE_SURVEY_URL, a8 as EnterpriseEditionFeature, f5 as getAnchorPosition, f6 as isValidNodeConnectionType, f7 as getEndpointScope, f8 as getInputEndpointUUID, f9 as getInputEndpointStyle, fa as getScope, fb as getInputNameOverlay, fc as NODE_INSERT_SPACER_BETWEEN_INPUT_GROUPS, fd as NODE_MIN_INPUT_ITEMS_COUNT, fe as getOutputEndpointUUID, ff as getOutputEndpointStyle, fg as getOutputNameOverlay, fh as NO_OP_NODE_TYPE, fi as NODE_CONNECTION_TYPE_ALLOW_MULTIPLE, fj as GRID_SIZE, fk as isString, fl as isNumber, fm as assert, fn as CUSTOM_API_CALL_KEY, fo as FontAwesomeIcon, fp as xss, fq as WAIT_NODE_TYPE, fr as SEND_AND_WAIT_OPERATION, fs as FORM_NODE_TYPE, ft as WAIT_TIME_UNLIMITED, fu as SIMULATE_NODE_TYPE, fv as SIMULATE_TRIGGER_NODE_TYPE, $ as useCanvasStore, fw as getRelativePosition, bg as v4, fx as CORE_NODES_CATEGORY, fy as DEFAULT_SUBCATEGORY, fz as AI_TRANSFORM_NODE_TYPE$1, fA as sublimeSearch, b6 as AI_SUBCATEGORY, b7 as AI_CATEGORY_AGENTS, fB as sortBy, fC as i18n, aL as useTemplatesStore, fD as AI_NODE_CREATOR_VIEW, fE as AI_OTHERS_NODE_CREATOR_VIEW, fF as AI_CATEGORY_DOCUMENT_LOADERS, fG as AI_CATEGORY_LANGUAGE_MODELS, fH as AI_CATEGORY_MEMORY, fI as AI_CATEGORY_OUTPUTPARSER, fJ as AI_CATEGORY_RETRIEVERS, fK as AI_CATEGORY_TEXT_SPLITTERS, fL as AI_CATEGORY_TOOLS, fM as AI_WORKFLOW_TOOL_LANGCHAIN_NODE_TYPE, fN as AI_CODE_TOOL_LANGCHAIN_NODE_TYPE, fO as AI_CATEGORY_EMBEDDING, fP as AI_CATEGORY_VECTOR_STORES, fQ as AI_UNCATEGORIZED_CATEGORY, fR as TRIGGER_NODE_CREATOR_VIEW, fS as EMAIL_IMAP_NODE_TYPE, fT as SCHEDULE_TRIGGER_NODE_TYPE, fU as EXECUTE_WORKFLOW_TRIGGER_NODE_TYPE, fV as OTHER_TRIGGER_NODES_SUBCATEGORY, fW as REGULAR_NODE_CREATOR_VIEW, fX as RSS_READ_NODE_TYPE, fY as EMAIL_SEND_NODE_TYPE, fZ as TRANSFORM_DATA_SUBCATEGORY, f_ as FILTER_NODE_TYPE, f$ as REMOVE_DUPLICATES_NODE_TYPE, g0 as SPLIT_OUT_NODE_TYPE, g1 as LIMIT_NODE_TYPE, g2 as SUMMARIZE_NODE_TYPE, g3 as AGGREGATE_NODE_TYPE, g4 as MERGE_NODE_TYPE, g5 as MARKDOWN_NODE_TYPE, g6 as XML_NODE_TYPE, g7 as CRYPTO_NODE_TYPE, g8 as EXTRACT_FROM_FILE_NODE_TYPE, g9 as CONVERT_TO_FILE_NODE_TYPE, ga as COMPRESSION_NODE_TYPE, gb as EDIT_IMAGE_NODE_TYPE, gc as FLOWS_CONTROL_SUBCATEGORY, gd as IF_NODE_TYPE, ge as SPLIT_IN_BATCHES_NODE_TYPE, gf as HELPERS_SUBCATEGORY, gg as HTTP_REQUEST_NODE_TYPE, gh as CODE_NODE_TYPE, b8 as AI_CATEGORY_CHAINS, gi as SET_NODE_TYPE, gj as DATETIME_NODE_TYPE, R as defineStore, gk as AI_CATEGORY_ROOT_NODES, b9 as AI_CODE_NODE_TYPE, gl as isValidCanvasConnectionMode, gm as CanvasConnectionMode, S as STORES, gn as NODE_CREATOR_OPEN_SOURCES, go as isVueFlowConnection, gp as nodeConnectionTypes, gq as MOUSE_EVENT_BUTTON, gr as MOUSE_EVENT_BUTTONS, gs as KeyboardShortcutTooltip, a3 as useDocumentTitle, gt as mapStores, a2 as useNpsSurveyStore, a1 as useProjectsStore, au as useExecutionsStore, gu as useExternalSecretsStore, gv as useWorkflowsEEStore, gw as useEnvironmentsStore, u as useUsersStore, D as useTagsStore, gx as getBackgroundStyles, b4 as MANUAL_CHAT_TRIGGER_NODE_TYPE, gy as getNodeViewTab, X as PLACEHOLDER_EMPTY_WORKFLOW_ID, ao as MAIN_HEADER_TABS, gz as ready$1, aE as sourceControlEventBus, gA as historyBus, gB as generateNodesGraph, gC as N8nAddInputEndpointType, gD as getFixedNodesList, gE as tryToParseNumber, gF as MoveNodeCommand, ai as VALID_WORKFLOW_IMPORT_URL_REGEX, gG as UPDATE_WEBHOOK_ID_NODE_TYPES, gH as getNewNodePosition, gI as DRAG_EVENT_DATA_KEY, gJ as NODE_SIZE, gK as getConnectorLengths, gL as MAX_X_TO_PUSH_DOWNSTREAM_NODES, gM as PUSH_NODES_OFFSET, gN as generateOffsets, gO as resetConnectionAfterPull, gP as resetConnection, gQ as moveBackInputLabelPosition, gR as hideOutputNameLabel, gS as addConnectionActionsOverlay, gT as getOverlay, gU as OVERLAY_ENDPOINT_ARROW_ID, gV as getConnectorPaintStyleData, gW as AddConnectionCommand, gX as addConnectionTestData, gY as showOrHideItemsLabel, gZ as showOrHideMidpointArrow, g_ as isJSPlumbConnection, g$ as hideConnectionActions, h0 as showConnectionActions, h1 as resetInputLabelPosition, h2 as getConnectionInfo, h3 as showOutputNameLabel, h4 as RemoveConnectionCommand, h5 as isJSPlumbEndpointElement, h6 as isElementIntersection, h7 as calculateElementIntersection, h8 as showDropConnectionState, h9 as showPullConnectionState, ha as EVENT_CONNECTION_ABORT, hb as INTERCEPT_BEFORE_DROP, hc as EVENT_CONNECTION, hd as EVENT_DRAG_MOVE, he as EVENT_CONNECTION_MOUSEOVER, hf as EVENT_CONNECTION_MOUSEOUT, hg as EVENT_CONNECTION_MOVED, hh as EVENT_ENDPOINT_MOUSEOVER, hi as EVENT_ENDPOINT_MOUSEOUT, hj as EVENT_CONNECTION_DETACHED, hk as EVENT_CONNECTION_DRAG, hl as EVENT_PLUS_ENDPOINT_CLICK, hm as EVENT_ADD_INPUT_ENDPOINT_CLICK, hn as N8nPlusEndpointType, av as usePostHog, ho as CANVAS_AUTO_ADD_MANUAL_TRIGGER_EXPERIMENT, hp as MODAL_CANCEL, hq as addClassesToOverlays, hr as getJSPlumbEndpoints, hs as isSubNodeType, ht as useDataSchema, hu as OVERLAY_RUN_ITEMS_ID, hv as RemoveNodeCommand, hw as CanvasKey, hx as CanvasNodeKey, hy as CanvasNodeRenderType, hz as refThrottled, hA as CanvasNodeHandleKey, hB as useActiveElement, hC as useEventListener$2, hD as onKeyDown, hE as onKeyUp, hF as sanitizeHtml$1, hG as AddNodeCommand, hH as DEFAULT_NODE_SIZE, hI as CONFIGURATION_NODE_SIZE, hJ as CONFIGURABLE_NODE_SIZE, hK as NEW_WORKFLOW_ID, hL as onBeforeRouteLeave } from "./index-BLjFvDIb.js";
3
+ import { c as capitalize$1, u as usePinnedData, a as useRunWorkflow, b as useNodeType, _ as _sfc_main$18, R as RunDataAi } from "./useRunWorkflow-DVQNNBeJ.js";
4
+ import { F as FileSaver_minExports } from "./FileSaver.min-BbGWF0W0.js";
5
+ import { u as useExecutionHelpers, c as convertToDisplayDateComponents } from "./useExecutionHelpers-BhXcAom9.js";
6
+ import { u as useWorkflowActivate } from "./useWorkflowActivate-CkngxVfp.js";
7
+ import { g as globalLinkActionsEventBus, u as usePushConnectionStore } from "./pushConnection.store-B_O3Ndxc.js";
8
+ import { u as useExecutionDebugging } from "./useExecutionDebugging-Nq-02Km0.js";
9
+ import { u as useBeforeUnload, a as useNodeViewVersionSwitcher } from "./useNodeViewVersionSwitcher-k_nkRZI7.js";
10
+ import { u as useBugReporting } from "./useBugReporting-C2zyZy6T.js";
11
11
  /**
12
12
  * vue v3.5.11
13
13
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
@@ -1684,7 +1684,8 @@ const _sfc_main$Z = /* @__PURE__ */ defineComponent({
1684
1684
  const prompt2 = (_c = (_b = node2.value) == null ? void 0 : _b.parameters) == null ? void 0 : _c.instructions;
1685
1685
  const updateInformation = await generateCodeForAiTransform(
1686
1686
  prompt2,
1687
- `parameters.${AI_TRANSFORM_JS_CODE}`
1687
+ `parameters.${AI_TRANSFORM_JS_CODE}`,
1688
+ 5
1688
1689
  );
1689
1690
  if (!updateInformation) return;
1690
1691
  emit("valueChanged", updateInformation);
@@ -4061,19 +4062,19 @@ const _sfc_main$Q = /* @__PURE__ */ defineComponent({
4061
4062
  emits: ["search", "runChange", "itemHover", "linkRun", "unlinkRun", "activatePane", "tableMounted"],
4062
4063
  setup(__props, { expose: __expose, emit: __emit }) {
4063
4064
  const LazyRunDataTable = defineAsyncComponent(
4064
- async () => await __vitePreload(() => import("./RunDataTable-DX2WMhyi.js"), true ? __vite__mapDeps([0,1,2,3,4]) : void 0)
4065
+ async () => await __vitePreload(() => import("./RunDataTable-1ZOHR24l.js"), true ? __vite__mapDeps([0,1,2,3,4]) : void 0)
4065
4066
  );
4066
4067
  const LazyRunDataJson = defineAsyncComponent(
4067
- async () => await __vitePreload(() => import("./RunDataJson-BHIY5dHu.js"), true ? __vite__mapDeps([5,1,2,6,3,7,8,9,10,11,12,13,14]) : void 0)
4068
+ async () => await __vitePreload(() => import("./RunDataJson-0Gdn6kSj.js"), true ? __vite__mapDeps([5,1,2,6,3,7,8,9,10,11,12,13,14]) : void 0)
4068
4069
  );
4069
4070
  const LazyRunDataSchema = defineAsyncComponent(
4070
- async () => await __vitePreload(() => import("./index-CmLVLa2S.js").then((n) => n.jZ), true ? __vite__mapDeps([1,2]) : void 0)
4071
+ async () => useSettingsStore().settings.virtualSchemaView ? await __vitePreload(() => import("./VirtualSchema-DiQQitJX.js"), true ? __vite__mapDeps([15,1,2,16]) : void 0) : await __vitePreload(() => import("./index-BLjFvDIb.js").then((n) => n.jZ), true ? __vite__mapDeps([1,2]) : void 0)
4071
4072
  );
4072
4073
  const LazyRunDataHtml = defineAsyncComponent(
4073
4074
  async () => await __vitePreload(() => Promise.resolve().then(() => RunDataHtml$1), true ? void 0 : void 0)
4074
4075
  );
4075
4076
  const LazyRunDataSearch = defineAsyncComponent(
4076
- async () => await __vitePreload(() => import("./RunDataSearch-C-CgDL9m.js"), true ? __vite__mapDeps([15,1,2,16]) : void 0)
4077
+ async () => await __vitePreload(() => import("./RunDataSearch-CfZ3sk7A.js"), true ? __vite__mapDeps([17,1,2,18]) : void 0)
4077
4078
  );
4078
4079
  const props = __props;
4079
4080
  const emit = __emit;
@@ -5884,7 +5885,7 @@ const style0$v = {
5884
5885
  const cssModules$x = {
5885
5886
  "$style": style0$v
5886
5887
  };
5887
- const RunData = /* @__PURE__ */ _export_sfc$1(_sfc_main$Q, [["__cssModules", cssModules$x], ["__scopeId", "data-v-b586b758"]]);
5888
+ const RunData = /* @__PURE__ */ _export_sfc$1(_sfc_main$Q, [["__cssModules", cssModules$x], ["__scopeId", "data-v-2e356539"]]);
5888
5889
  const _sfc_main$P = /* @__PURE__ */ defineComponent({
5889
5890
  __name: "RunInfo",
5890
5891
  props: {
@@ -6456,7 +6457,7 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
6456
6457
  return "";
6457
6458
  const activeNodeConnections = props.workflow.connectionsByDestinationNode[activeNode.value.name].main || [];
6458
6459
  const connectedInputIndexes = activeNodeConnections.reduce((acc, node2, index) => {
6459
- if (node2[0] && node2[0].node === nodeName) return [...acc, index];
6460
+ if ((node2 == null ? void 0 : node2[0]) && node2[0].node === nodeName) return [...acc, index];
6460
6461
  return acc;
6461
6462
  }, []);
6462
6463
  const connectedInputs = connectedInputIndexes.map(
@@ -8861,10 +8862,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
8861
8862
  };
8862
8863
  const onMarkdownClick = (link) => {
8863
8864
  if (link) {
8864
- const isOnboardingNote = props.name === QUICKSTART_NOTE_NAME;
8865
- const isWelcomeVideo = link.querySelector('img[alt="n8n quickstart video"]');
8866
- const type = isOnboardingNote && isWelcomeVideo ? "welcome_video" : isOnboardingNote && link.getAttribute("href") === "/templates" ? "templates" : "other";
8867
- telemetry.track("User clicked note link", { type });
8865
+ telemetry.track("User clicked note link", { type: "other" });
8868
8866
  }
8869
8867
  };
8870
8868
  const setParameters = (params) => {
@@ -9055,7 +9053,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
9055
9053
  };
9056
9054
  }
9057
9055
  });
9058
- const __unplugin_components_1$1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$I, [["__scopeId", "data-v-19235803"]]);
9056
+ const __unplugin_components_1$1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$I, [["__scopeId", "data-v-dcc29189"]]);
9059
9057
  const _hoisted_1$h = ["id", "data-name", "data-node-type"];
9060
9058
  const _hoisted_2$a = { class: "select-background" };
9061
9059
  const _hoisted_3$7 = {
@@ -11685,13 +11683,13 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
11685
11683
  }
11686
11684
  });
11687
11685
  const LazyNodeCreation = defineAsyncComponent(
11688
- async () => await __vitePreload(() => import("./NodeCreation-fYCCIvH0.js").then((n) => n.N), true ? __vite__mapDeps([17,1,2,18]) : void 0)
11686
+ async () => await __vitePreload(() => import("./NodeCreation-D0ZfyMv8.js").then((n) => n.N), true ? __vite__mapDeps([19,1,2,20]) : void 0)
11689
11687
  );
11690
11688
  const LazyCanvasControls = defineAsyncComponent(
11691
- async () => await __vitePreload(() => import("./CanvasControls-Bmo04dJ7.js"), true ? __vite__mapDeps([19,1,2,20]) : void 0)
11689
+ async () => await __vitePreload(() => import("./CanvasControls-xKyFrMYs.js"), true ? __vite__mapDeps([21,1,2,22]) : void 0)
11692
11690
  );
11693
11691
  const LazySetupWorkflowCredentialsButton = defineAsyncComponent(
11694
- async () => await __vitePreload(() => import("./SetupWorkflowCredentialsButton-ebC2FUi4.js"), true ? __vite__mapDeps([21,1,2]) : void 0)
11692
+ async () => await __vitePreload(() => import("./SetupWorkflowCredentialsButton-C0OcQQFJ.js"), true ? __vite__mapDeps([23,1,2]) : void 0)
11695
11693
  );
11696
11694
  const _sfc_main$E = defineComponent({
11697
11695
  name: "NodeView",
@@ -12593,6 +12591,7 @@ const _sfc_main$E = defineComponent({
12593
12591
  }
12594
12592
  },
12595
12593
  async keyDown(e) {
12594
+ var _a;
12596
12595
  this.contextMenu.close();
12597
12596
  const ctrlModifier = this.deviceSupport.isCtrlKeyPressed(e) && !e.shiftKey && !e.altKey;
12598
12597
  const shiftModifier = e.shiftKey && !e.altKey && !this.deviceSupport.isCtrlKeyPressed(e);
@@ -12715,7 +12714,7 @@ const _sfc_main$E = defineComponent({
12715
12714
  const connections2 = this.workflowsStore.outgoingConnectionsByNodeName(
12716
12715
  lastSelectedNode.name
12717
12716
  );
12718
- if (connections2.main === void 0 || connections2.main.length === 0) {
12717
+ if (connections2.main === void 0 || connections2.main.length === 0 || !connections2.main[0]) {
12719
12718
  return;
12720
12719
  }
12721
12720
  void this.callDebounced(
@@ -12741,7 +12740,7 @@ const _sfc_main$E = defineComponent({
12741
12740
  return;
12742
12741
  }
12743
12742
  const connections2 = workflow.connectionsByDestinationNode[lastSelectedNode.name];
12744
- if (connections2.main === void 0 || connections2.main.length === 0) {
12743
+ if (connections2.main === void 0 || connections2.main.length === 0 || !connections2.main[0]) {
12745
12744
  return;
12746
12745
  }
12747
12746
  void this.callDebounced(
@@ -12764,7 +12763,10 @@ const _sfc_main$E = defineComponent({
12764
12763
  if (!Array.isArray(connections2.main) || !connections2.main.length) {
12765
12764
  return;
12766
12765
  }
12767
- const parentNode = connections2.main[0][0].node;
12766
+ const parentNode = (_a = connections2.main[0]) == null ? void 0 : _a[0].node;
12767
+ if (!parentNode) {
12768
+ return;
12769
+ }
12768
12770
  const connectionsParent = this.workflowsStore.outgoingConnectionsByNodeName(parentNode);
12769
12771
  if (!Array.isArray(connectionsParent.main) || !connectionsParent.main.length) {
12770
12772
  return;
@@ -12773,7 +12775,7 @@ const _sfc_main$E = defineComponent({
12773
12775
  let lastCheckedNodePosition = e.key === "ArrowUp" ? -99999999 : 99999999;
12774
12776
  let nextSelectNode = null;
12775
12777
  for (const ouputConnections of connectionsParent.main) {
12776
- for (const ouputConnection of ouputConnections) {
12778
+ for (const ouputConnection of ouputConnections ?? []) {
12777
12779
  if (ouputConnection.node === lastSelectedNode.name) {
12778
12780
  continue;
12779
12781
  }
@@ -14411,8 +14413,7 @@ const _sfc_main$E = defineComponent({
14411
14413
  }
14412
14414
  if (node2.type === STICKY_NODE_TYPE) {
14413
14415
  this.$telemetry.track("User deleted workflow note", {
14414
- workflow_id: this.workflowsStore.workflowId,
14415
- is_welcome_note: node2.name === QUICKSTART_NOTE_NAME
14416
+ workflow_id: this.workflowsStore.workflowId
14416
14417
  });
14417
14418
  } else {
14418
14419
  void this.externalHooks.run("node.deleteNode", { node: node2 });
@@ -14627,9 +14628,10 @@ const _sfc_main$E = defineComponent({
14627
14628
  connection[type] = [];
14628
14629
  for (sourceIndex = 0; sourceIndex < currentConnections[sourceNode][type].length; sourceIndex++) {
14629
14630
  const nodeSourceConnections = [];
14630
- if (currentConnections[sourceNode][type][sourceIndex]) {
14631
- for (connectionIndex = 0; connectionIndex < currentConnections[sourceNode][type][sourceIndex].length; connectionIndex++) {
14632
- connectionData = currentConnections[sourceNode][type][sourceIndex][connectionIndex];
14631
+ const connections2 = currentConnections[sourceNode][type][sourceIndex];
14632
+ if (connections2) {
14633
+ for (connectionIndex = 0; connectionIndex < connections2.length; connectionIndex++) {
14634
+ connectionData = connections2[connectionIndex];
14633
14635
  if (!createNodeNames.includes(connectionData.node)) {
14634
14636
  continue;
14635
14637
  }
@@ -14718,10 +14720,13 @@ const _sfc_main$E = defineComponent({
14718
14720
  for (type of Object.keys(connections2)) {
14719
14721
  for (sourceIndex = 0; sourceIndex < connections2[type].length; sourceIndex++) {
14720
14722
  connectionToKeep = [];
14721
- for (connectionIndex = 0; connectionIndex < connections2[type][sourceIndex].length; connectionIndex++) {
14722
- connectionData = connections2[type][sourceIndex][connectionIndex];
14723
- if (exportNodeNames.indexOf(connectionData.node) !== -1) {
14724
- connectionToKeep.push(connectionData);
14723
+ const connectionsToCheck = connections2[type][sourceIndex];
14724
+ if (connectionsToCheck) {
14725
+ for (connectionIndex = 0; connectionIndex < connectionsToCheck.length; connectionIndex++) {
14726
+ connectionData = connectionsToCheck[connectionIndex];
14727
+ if (exportNodeNames.indexOf(connectionData.node) !== -1) {
14728
+ connectionToKeep.push(connectionData);
14729
+ }
14725
14730
  }
14726
14731
  }
14727
14732
  if (connectionToKeep.length) {
@@ -15289,14 +15294,13 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
15289
15294
  ], 32)) : createCommentVNode("", true),
15290
15295
  _ctx.containsChatNodes ? (openBlock(), createBlock(_component_n8n_button, {
15291
15296
  key: 1,
15292
- label: "Chat",
15297
+ label: _ctx.isChatOpen ? _ctx.i18n.baseText("chat.hide") : _ctx.i18n.baseText("chat.window.title"),
15293
15298
  size: "large",
15294
15299
  icon: "comment",
15295
- type: "primary",
15296
- outline: _ctx.isChatOpen === false,
15300
+ type: _ctx.isChatOpen ? "tertiary" : "primary",
15297
15301
  "data-test-id": "workflow-chat-button",
15298
15302
  onClick: withModifiers(_ctx.onOpenChat, ["stop"])
15299
- }, null, 8, ["outline", "onClick"])) : createCommentVNode("", true),
15303
+ }, null, 8, ["label", "type", "onClick"])) : createCommentVNode("", true),
15300
15304
  _ctx.workflowRunning === true && !_ctx.executionWaitingForWebhook ? (openBlock(), createBlock(_component_n8n_icon_button, {
15301
15305
  key: 2,
15302
15306
  icon: "stop",
@@ -15333,23 +15337,23 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
15333
15337
  const cssModules$p = {
15334
15338
  "$style": style2
15335
15339
  };
15336
- const NodeViewV1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$E, [["render", _sfc_render$1], ["__cssModules", cssModules$p], ["__scopeId", "data-v-e07d817a"]]);
15340
+ const NodeViewV1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$E, [["render", _sfc_render$1], ["__cssModules", cssModules$p], ["__scopeId", "data-v-27fff7af"]]);
15337
15341
  const _sfc_main$D = /* @__PURE__ */ defineComponent({
15338
15342
  __name: "CanvasChatButton",
15339
15343
  props: {
15340
- outline: { type: Boolean }
15344
+ type: {},
15345
+ label: {}
15341
15346
  },
15342
15347
  setup(__props) {
15343
15348
  return (_ctx, _cache) => {
15344
15349
  const _component_N8nButton = resolveComponent("N8nButton");
15345
15350
  return openBlock(), createBlock(_component_N8nButton, {
15346
- label: "Chat",
15351
+ label: _ctx.label,
15347
15352
  size: "large",
15348
15353
  icon: "comment",
15349
- type: "primary",
15350
- outline: _ctx.outline,
15354
+ type: _ctx.type,
15351
15355
  "data-test-id": "workflow-chat-button"
15352
- }, null, 8, ["outline"]);
15356
+ }, null, 8, ["label", "type"]);
15353
15357
  };
15354
15358
  }
15355
15359
  });
@@ -31374,8 +31378,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
31374
31378
  events: {},
31375
31379
  readOnly: { type: Boolean },
31376
31380
  eventBus: {},
31377
- hovered: { type: Boolean },
31378
- bringToFront: { type: Boolean }
31381
+ hovered: { type: Boolean }
31379
31382
  },
31380
31383
  emits: ["add", "delete", "run", "select", "toggle", "activate", "open:contextmenu", "update", "move"],
31381
31384
  setup(__props, { emit: __emit }) {
@@ -31401,8 +31404,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
31401
31404
  [style.canvasNode]: true,
31402
31405
  [style.showToolbar]: showToolbar2.value,
31403
31406
  hovered: props.hovered,
31404
- selected: props.selected,
31405
- "bring-to-front": props.bringToFront
31407
+ selected: props.selected
31406
31408
  }));
31407
31409
  const canvasNodeEventBus = ref(createEventBus());
31408
31410
  function emitCanvasNodeEvent(event) {
@@ -31705,7 +31707,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
31705
31707
  hovered: { type: Boolean },
31706
31708
  bringToFront: { type: Boolean }
31707
31709
  },
31708
- emits: ["add", "delete", "update:hovered"],
31710
+ emits: ["add", "delete", "update:label:hovered"],
31709
31711
  setup(__props, { emit: __emit }) {
31710
31712
  const emit = __emit;
31711
31713
  const props = __props;
@@ -31777,10 +31779,10 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
31777
31779
  emit("delete", connection.value);
31778
31780
  }
31779
31781
  function onEdgeLabelMouseEnter() {
31780
- emit("update:hovered", true);
31782
+ emit("update:label:hovered", true);
31781
31783
  }
31782
31784
  function onEdgeLabelMouseLeave() {
31783
- emit("update:hovered", false);
31785
+ emit("update:label:hovered", false);
31784
31786
  }
31785
31787
  return (_ctx, _cache) => {
31786
31788
  return openBlock(), createElementBlock(Fragment, null, [
@@ -31860,8 +31862,21 @@ const useKeybindings = (keymap, options) => {
31860
31862
  }).flat()
31861
31863
  )
31862
31864
  );
31865
+ function shortcutPartsToString(parts) {
31866
+ return parts.map((key) => key.toLowerCase()).sort((a, b) => a.localeCompare(b)).join("+");
31867
+ }
31863
31868
  function normalizeShortcutString(shortcut) {
31864
- return shortcut.split(/[+_-]/).map((key) => key.toLowerCase()).sort((a, b) => a.localeCompare(b)).join("+");
31869
+ if (shortcut.length === 1) {
31870
+ return shortcut.toLowerCase();
31871
+ }
31872
+ const splitChars = ["+", "_", "-"];
31873
+ const splitCharsRegEx = splitChars.reduce((acc, char) => {
31874
+ if (shortcut.startsWith(char) || shortcut.endsWith(char)) {
31875
+ return acc;
31876
+ }
31877
+ return char + acc;
31878
+ }, "");
31879
+ return shortcutPartsToString(shortcut.split(new RegExp(`[${splitCharsRegEx}]`)));
31865
31880
  }
31866
31881
  function toShortcutString(event) {
31867
31882
  const { shiftKey, altKey } = event;
@@ -31877,7 +31892,7 @@ const useKeybindings = (keymap, options) => {
31877
31892
  if (altKey) {
31878
31893
  modifiers.push("alt");
31879
31894
  }
31880
- return normalizeShortcutString([...modifiers, ...keys].join("+"));
31895
+ return shortcutPartsToString([...modifiers, ...keys]);
31881
31896
  }
31882
31897
  function onKeyDown2(event) {
31883
31898
  if (ignoreKeyPresses.value || isDisabled.value) return;
@@ -32133,8 +32148,8 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
32133
32148
  ctrl_c: emitWithSelectedNodes((ids) => emit("copy:nodes", ids)),
32134
32149
  enter: emitWithLastSelectedNode((id2) => onSetNodeActive(id2)),
32135
32150
  ctrl_a: () => addSelectedNodes(graphNodes.value),
32136
- "+|=": async () => await onZoomIn(),
32137
- "-|_": async () => await onZoomOut(),
32151
+ "shift_+|+|=": async () => await onZoomIn(),
32152
+ "shift+_|-|_": async () => await onZoomOut(),
32138
32153
  0: async () => await onResetZoom(),
32139
32154
  1: async () => await onFitView(),
32140
32155
  ArrowUp: emitWithLastSelectedNode(selectUpperSiblingNode),
@@ -32143,7 +32158,6 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
32143
32158
  ArrowRight: emitWithLastSelectedNode(selectRightNode),
32144
32159
  shift_ArrowLeft: emitWithLastSelectedNode(selectUpstreamNodes),
32145
32160
  shift_ArrowRight: emitWithLastSelectedNode(selectDownstreamNodes),
32146
- // @TODO implement arrow key shortcuts to modify selection
32147
32161
  ...props.readOnly ? {} : {
32148
32162
  ctrl_x: emitWithSelectedNodes((ids) => emit("cut:nodes", ids)),
32149
32163
  "delete|backspace": emitWithSelectedNodes((ids) => emit("delete:nodes", ids)),
@@ -32240,7 +32254,6 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
32240
32254
  const arrowHeadMarkerId = ref("custom-arrow-head");
32241
32255
  const edgesHoveredById = ref({});
32242
32256
  const edgesBringToFrontById = ref({});
32243
- const nodesHoveredById = ref({});
32244
32257
  onEdgeMouseEnter(({ edge: edge2 }) => {
32245
32258
  edgesBringToFrontById.value = { [edge2.id]: true };
32246
32259
  edgesHoveredById.value = { [edge2.id]: true };
@@ -32266,15 +32279,17 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
32266
32279
  edgesBringToFrontById.value = { [edge2.id]: false };
32267
32280
  edgesHoveredById.value = { [edge2.id]: false };
32268
32281
  });
32282
+ function onUpdateEdgeLabelHovered(id2, hovered) {
32283
+ edgesBringToFrontById.value = { [id2]: true };
32284
+ edgesHoveredById.value[id2] = hovered;
32285
+ }
32286
+ const nodesHoveredById = ref({});
32269
32287
  onNodeMouseEnter(({ node: node2 }) => {
32270
32288
  nodesHoveredById.value = { [node2.id]: true };
32271
32289
  });
32272
32290
  onNodeMouseLeave(({ node: node2 }) => {
32273
32291
  nodesHoveredById.value = { [node2.id]: false };
32274
32292
  });
32275
- function onUpdateEdgeHovered(id2, hovered) {
32276
- edgesHoveredById.value[id2] = hovered;
32277
- }
32278
32293
  function onRunNode(id2) {
32279
32294
  emit("run:node", id2);
32280
32295
  }
@@ -32467,7 +32482,6 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
32467
32482
  "read-only": _ctx.readOnly,
32468
32483
  "event-bus": _ctx.eventBus,
32469
32484
  hovered: nodesHoveredById.value[nodeProps.id],
32470
- "bring-to-front": nodesHoveredById.value[nodeProps.id],
32471
32485
  onDelete: onDeleteNode,
32472
32486
  onRun: onRunNode,
32473
32487
  onSelect: onSelectNode,
@@ -32477,7 +32491,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
32477
32491
  onUpdate: onUpdateNodeParameters,
32478
32492
  onMove: onUpdateNodePosition,
32479
32493
  onAdd: onClickNodeAdd
32480
- }), null, 16, ["read-only", "event-bus", "hovered", "bring-to-front"])
32494
+ }), null, 16, ["read-only", "event-bus", "hovered"])
32481
32495
  ]),
32482
32496
  "edge-canvas-edge": withCtx((edgeProps) => [
32483
32497
  createVNode(Edge, mergeProps(edgeProps, {
@@ -32487,8 +32501,8 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
32487
32501
  "bring-to-front": edgesBringToFrontById.value[edgeProps.id],
32488
32502
  onAdd: onClickConnectionAdd,
32489
32503
  onDelete: onDeleteConnection,
32490
- "onUpdate:hovered": ($event) => onUpdateEdgeHovered(edgeProps.id, $event)
32491
- }), null, 16, ["marker-end", "read-only", "hovered", "bring-to-front", "onUpdate:hovered"])
32504
+ "onUpdate:label:hovered": ($event) => onUpdateEdgeLabelHovered(edgeProps.id, $event)
32505
+ }), null, 16, ["marker-end", "read-only", "hovered", "bring-to-front", "onUpdate:label:hovered"])
32492
32506
  ]),
32493
32507
  "connection-line": withCtx((connectionLineProps) => [
32494
32508
  createVNode(_component_CanvasConnectionLine, normalizeProps(guardReactiveProps(connectionLineProps)), null, 16)
@@ -32565,7 +32579,7 @@ const style0$2 = {
32565
32579
  const cssModules$2 = {
32566
32580
  "$style": style0$2
32567
32581
  };
32568
- const Canvas = /* @__PURE__ */ _export_sfc$1(_sfc_main$7, [["__cssModules", cssModules$2], ["__scopeId", "data-v-a672bbf0"]]);
32582
+ const Canvas = /* @__PURE__ */ _export_sfc$1(_sfc_main$7, [["__cssModules", cssModules$2], ["__scopeId", "data-v-17712722"]]);
32569
32583
  function useCanvasMapping({
32570
32584
  nodes,
32571
32585
  connections: connections2,
@@ -32824,7 +32838,7 @@ function useCanvasMapping({
32824
32838
  } else if (nodePinnedDataById.value[node2.id]) {
32825
32839
  acc[node2.id] = false;
32826
32840
  } else {
32827
- acc[node2.id] = Object.keys((node2 == null ? void 0 : node2.issues) ?? {}).length > 0;
32841
+ acc[node2.id] = nodeIssuesById.value[node2.id].length > 0;
32828
32842
  }
32829
32843
  return acc;
32830
32844
  }, {})
@@ -33039,6 +33053,8 @@ function useCanvasMapping({
33039
33053
  return {
33040
33054
  additionalNodePropertiesById,
33041
33055
  nodeExecutionRunDataOutputMapById,
33056
+ nodeIssuesById,
33057
+ nodeHasIssuesById,
33042
33058
  connections: mappedConnections,
33043
33059
  nodes: mappedNodes
33044
33060
  };
@@ -33335,8 +33351,7 @@ function useCanvasOperations({ router }) {
33335
33351
  }
33336
33352
  if (node2.type === STICKY_NODE_TYPE) {
33337
33353
  telemetry.track("User deleted workflow note", {
33338
- workflow_id: workflowsStore.workflowId,
33339
- is_welcome_note: node2.name === QUICKSTART_NOTE_NAME
33354
+ workflow_id: workflowsStore.workflowId
33340
33355
  });
33341
33356
  } else {
33342
33357
  void externalHooks.run("node.deleteNode", { node: node2 });
@@ -33898,10 +33913,9 @@ function useCanvasOperations({ router }) {
33898
33913
  }
33899
33914
  for (const type of Object.keys(connections2[nodeName])) {
33900
33915
  for (const index of Object.keys(connections2[nodeName][type])) {
33901
- for (const connectionIndex of Object.keys(
33902
- connections2[nodeName][type][parseInt(index, 10)]
33903
- )) {
33904
- const connectionData = connections2[nodeName][type][parseInt(index, 10)][parseInt(connectionIndex, 10)];
33916
+ const connectionsToDelete = connections2[nodeName][type][parseInt(index, 10)] ?? [];
33917
+ for (const connectionIndex of Object.keys(connectionsToDelete)) {
33918
+ const connectionData = connectionsToDelete[parseInt(connectionIndex, 10)];
33905
33919
  if (!connectionData) {
33906
33920
  continue;
33907
33921
  }
@@ -34123,9 +34137,10 @@ function useCanvasOperations({ router }) {
34123
34137
  connection[type] = [];
34124
34138
  for (sourceIndex = 0; sourceIndex < currentConnections[sourceNode][type].length; sourceIndex++) {
34125
34139
  const nodeSourceConnections = [];
34126
- if (currentConnections[sourceNode][type][sourceIndex]) {
34127
- for (connectionIndex = 0; connectionIndex < currentConnections[sourceNode][type][sourceIndex].length; connectionIndex++) {
34128
- connectionData = currentConnections[sourceNode][type][sourceIndex][connectionIndex];
34140
+ const connectionsToCheck = currentConnections[sourceNode][type][sourceIndex];
34141
+ if (connectionsToCheck) {
34142
+ for (connectionIndex = 0; connectionIndex < connectionsToCheck.length; connectionIndex++) {
34143
+ connectionData = connectionsToCheck[connectionIndex];
34129
34144
  if (!createNodeNames.includes(connectionData.node)) {
34130
34145
  continue;
34131
34146
  }
@@ -34355,7 +34370,7 @@ function useCanvasOperations({ router }) {
34355
34370
  const filteredConnections = {};
34356
34371
  for (const [type, typeConnections] of Object.entries(connections2)) {
34357
34372
  const validConnections = typeConnections.map(
34358
- (sourceConnections) => sourceConnections.filter((connection) => includeNodeNames.has(connection.node))
34373
+ (sourceConnections) => (sourceConnections ?? []).filter((connection) => includeNodeNames.has(connection.node))
34359
34374
  );
34360
34375
  if (validConnections.length) {
34361
34376
  filteredConnections[type] = validConnections;
@@ -34381,6 +34396,25 @@ function useCanvasOperations({ router }) {
34381
34396
  await copyNodes(ids);
34382
34397
  deleteNodes(ids);
34383
34398
  }
34399
+ async function openExecution(executionId) {
34400
+ let data;
34401
+ try {
34402
+ data = await workflowsStore.getExecution(executionId);
34403
+ } catch (error2) {
34404
+ toast.showError(error2, i18n2.baseText("nodeView.showError.openExecution.title"));
34405
+ return;
34406
+ }
34407
+ if (data === void 0) {
34408
+ throw new Error(`Execution with id "${executionId}" could not be found!`);
34409
+ }
34410
+ initializeWorkspace(data.workflowData);
34411
+ workflowsStore.setWorkflowExecutionData(data);
34412
+ if (data.mode !== "manual") {
34413
+ workflowsStore.setWorkflowPinData({});
34414
+ }
34415
+ uiStore.stateIsDirty = false;
34416
+ return data;
34417
+ }
34384
34418
  return {
34385
34419
  lastClickPosition,
34386
34420
  editableWorkflow,
@@ -34422,7 +34456,8 @@ function useCanvasOperations({ router }) {
34422
34456
  fetchWorkflowDataFromUrl,
34423
34457
  resetWorkspace,
34424
34458
  initializeWorkspace,
34425
- resolveNodeWebhook
34459
+ resolveNodeWebhook,
34460
+ openExecution
34426
34461
  };
34427
34462
  }
34428
34463
  const _sfc_main$4 = /* @__PURE__ */ defineComponent({
@@ -34486,7 +34521,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
34486
34521
  __name: "NodeView.v2",
34487
34522
  setup(__props) {
34488
34523
  const LazyNodeCreation2 = defineAsyncComponent(
34489
- async () => await __vitePreload(() => import("./NodeCreation-fYCCIvH0.js").then((n) => n.N), true ? __vite__mapDeps([17,1,2,18]) : void 0)
34524
+ async () => await __vitePreload(() => import("./NodeCreation-D0ZfyMv8.js").then((n) => n.N), true ? __vite__mapDeps([19,1,2,20]) : void 0)
34490
34525
  );
34491
34526
  const LazyNodeDetailsView = defineAsyncComponent(
34492
34527
  async () => await __vitePreload(() => Promise.resolve().then(() => NodeDetailsView), true ? void 0 : void 0)
@@ -34558,6 +34593,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
34558
34593
  fetchWorkflowDataFromUrl,
34559
34594
  resetWorkspace,
34560
34595
  initializeWorkspace,
34596
+ openExecution,
34561
34597
  editableWorkflow,
34562
34598
  editableWorkflowObject,
34563
34599
  lastClickPosition
@@ -35190,23 +35226,14 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
35190
35226
  telemetry.track("User clicked execute node button", telemetryPayload);
35191
35227
  void externalHooks.run("nodeView.onRunNode", telemetryPayload);
35192
35228
  }
35193
- async function openExecution(executionId) {
35229
+ async function onOpenExecution(executionId) {
35194
35230
  canvasStore.startLoading();
35195
35231
  resetWorkspace();
35196
- let data;
35197
- try {
35198
- data = await workflowsStore.getExecution(executionId);
35199
- } catch (error2) {
35200
- toast.showError(error2, i18n2.baseText("nodeView.showError.openExecution.title"));
35232
+ await initializeData();
35233
+ const data = await openExecution(executionId);
35234
+ if (!data) {
35201
35235
  return;
35202
35236
  }
35203
- if (data === void 0) {
35204
- throw new Error(`Execution with id "${executionId}" could not be found!`);
35205
- }
35206
- await initializeData();
35207
- initializeWorkspace(data.workflowData);
35208
- workflowsStore.setWorkflowExecutionData(data);
35209
- uiStore.stateIsDirty = false;
35210
35237
  canvasStore.stopLoading();
35211
35238
  fitView();
35212
35239
  canvasEventBus.emit("open:execution", data);
@@ -35391,7 +35418,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
35391
35418
  } else if (json && json.command === "openExecution") {
35392
35419
  try {
35393
35420
  isProductionExecutionPreview.value = json.executionMode !== "manual";
35394
- await openExecution(json.executionId);
35421
+ await onOpenExecution(json.executionId);
35395
35422
  canOpenNDV.value = json.canOpenNDV ?? true;
35396
35423
  hideNodeIssues.value = json.hideNodeIssues ?? false;
35397
35424
  isExecutionPreview.value = true;
@@ -35626,9 +35653,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
35626
35653
  }, null, 8, ["waiting-for-webhook", "disabled", "executing"])) : createCommentVNode("", true),
35627
35654
  containsChatTriggerNodes.value ? (openBlock(), createBlock(_component_CanvasChatButton, {
35628
35655
  key: 1,
35629
- outline: isChatOpen.value === false,
35656
+ type: isChatOpen.value ? "tertiary" : "primary",
35657
+ label: isChatOpen.value ? unref(i18n2).baseText("chat.hide") : unref(i18n2).baseText("chat.window.title"),
35630
35658
  onClick: onOpenChat
35631
- }, null, 8, ["outline"])) : createCommentVNode("", true),
35659
+ }, null, 8, ["type", "label"])) : createCommentVNode("", true),
35632
35660
  isStopExecutionButtonVisible.value ? (openBlock(), createBlock(_sfc_main$4, {
35633
35661
  key: 2,
35634
35662
  stopping: isStoppingExecution.value,