n8n-editor-ui 1.89.1 → 1.90.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/assets/{AnimatedSpinner-BpxWKaCw.js → AnimatedSpinner-ChThynSJ.js} +1 -1
  2. package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-C2T62K8N.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-WGp2Kuen.js} +1 -1
  3. package/dist/assets/{AuthView-ChkPGgg-.js → AuthView-Dlhn_SQ-.js} +2 -2
  4. package/dist/assets/CanvasChatSwitch-BuBg7TJP.js +265 -0
  5. package/dist/assets/CanvasChatSwitch-CaiSjHFG.css +345 -0
  6. package/dist/assets/{ChangePasswordView-B38Kck9y.js → ChangePasswordView-BKYXOoDf.js} +3 -3
  7. package/dist/assets/CollectionParameter-CQXiWluX.js +4 -0
  8. package/dist/assets/{CredentialsView-DwxRSqpp.js → CredentialsView-BNWIgrLb.js} +6 -6
  9. package/dist/assets/DemoFooter-DR6r_2qR.js +25 -0
  10. package/dist/assets/{ErrorView-CbG0Uo6R.js → ErrorView-Bu8Mt5FH.js} +1 -1
  11. package/dist/assets/{ExecutionsTime-DZHUIJjP.css → ExecutionsTime-BuE0lHT6.css} +24 -15
  12. package/dist/assets/{ExecutionsTime.vue_vue_type_script_setup_true_lang-TkWqVC7U.js → ExecutionsTime.vue_vue_type_script_setup_true_lang-DvtOOOhh.js} +20 -15
  13. package/dist/assets/{ExecutionsView-Cm0glOsn.js → ExecutionsView-C0WZAIi0.js} +8 -8
  14. package/dist/assets/{FileSaver.min-DbOfV2ME.js → FileSaver.min-Cm0u4qyc.js} +1 -1
  15. package/dist/assets/{FixedCollectionParameter-DESxP1XH.js → FixedCollectionParameter-KmRZtBiP.js} +1 -1
  16. package/dist/assets/{ForgotMyPasswordView-Bhgql4BX.js → ForgotMyPasswordView-GH7SqEFu.js} +3 -3
  17. package/dist/assets/{InsightsChartAverageRuntime-B_W8xSC9.js → InsightsChartAverageRuntime-SeBUN06R.js} +4 -4
  18. package/dist/assets/{InsightsChartFailed-Buf2QmpB.js → InsightsChartFailed-TYjH8LwV.js} +4 -4
  19. package/dist/assets/{InsightsChartFailureRate-DHs26Nrr.js → InsightsChartFailureRate-D41Jv-6v.js} +4 -4
  20. package/dist/assets/{InsightsChartTimeSaved-Bjicuurm.js → InsightsChartTimeSaved-TLPDAmPx.js} +4 -4
  21. package/dist/assets/{InsightsChartTotal-BodC7Sun.js → InsightsChartTotal-CaKTe2mv.js} +4 -4
  22. package/dist/assets/{InsightsDashboard-CkipcaZC.js → InsightsDashboard-o3JS9fjz.js} +10 -10
  23. package/dist/assets/{InsightsPaywall-BoFT-Ik-.js → InsightsPaywall-Z4Y0nO-i.js} +1 -1
  24. package/dist/assets/{InsightsSummary-C-_stVav.js → InsightsSummary-DzYli0Pu.js} +1 -1
  25. package/dist/assets/{InsightsTableWorkflows-DvkAMkT2.js → InsightsTableWorkflows-CUHAG57c.js} +2 -2
  26. package/dist/assets/{Logo-DjpNa7ha.js → Logo-Dxp4M9dy.js} +1 -1
  27. package/dist/assets/{CanvasChatSwitch-BDVIAjN6.css → LogsPanel-DmPMCt9w.css} +425 -324
  28. package/dist/assets/{CanvasChatSwitch-B5IdrA6Q.js → LogsPanel-zIrTNE6j.js} +985 -641
  29. package/dist/assets/{MainHeader-BIrklbRX.js → MainHeader-D4cIIoUA.js} +9 -9
  30. package/dist/assets/{MainSidebar-QVA1U4KK.js → MainSidebar-BtW-9UPT.js} +2 -2
  31. package/dist/assets/{NodeCreation-BR_PsZYm.js → NodeCreation-thD32mA1.js} +4 -4
  32. package/dist/assets/{NodeCreator-BAsdokTf.js → NodeCreator-B4mHaU45.js} +3 -3
  33. package/dist/assets/{NodeDetailsView-B2kdGJ7R.css → NodeDetailsView-CGgV4Pn_.css} +27 -1185
  34. package/dist/assets/{NodeDetailsView-Ao8qCvow.js → NodeDetailsView-cO3Ci9jH.js} +169 -2683
  35. package/dist/assets/{NodeView-CY5L1Bmm.js → NodeView-E5b1ClVD.js} +12 -12
  36. package/dist/assets/{ProjectCardBadge-BiJ9Jmbm.js → ProjectCardBadge-LnLKqSK-.js} +5 -9
  37. package/dist/assets/{ProjectHeader-D42fsSzg.js → ProjectHeader-DC02ZuZ0.js} +1 -1
  38. package/dist/assets/{ProjectSettings-IPFHN7l5.js → ProjectSettings-Zr1UOp7s.js} +2 -2
  39. package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-DOXKnjAX.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-CM7WIpD3.js} +1 -1
  40. package/dist/assets/{ResourcesListLayout-b44J07nq.css → ResourcesListLayout-CglK2dXR.css} +8 -8
  41. package/dist/assets/{ResourcesListLayout-B_Otf91D.js → ResourcesListLayout-DTsuHdYx.js} +2 -10
  42. package/dist/assets/RunData-DepHcD2K.css +1833 -0
  43. package/dist/assets/RunData-Ds-U68nr.js +5104 -0
  44. package/dist/assets/{RunDataAi-CUUDqZRP.css → RunDataAi-BF2gZZGr.css} +0 -408
  45. package/dist/assets/RunDataAi-DdK11EHU.js +750 -0
  46. package/dist/assets/{RunDataJson-BRO48N-i.js → RunDataJson-B2WU5od1.js} +7 -11
  47. package/dist/assets/{RunDataJsonActions-C4DFiOh8.js → RunDataJsonActions-DqZ2X1yJ.js} +1 -1
  48. package/dist/assets/{RunDataSearch-CNfhlvrK.js → RunDataSearch-CQsyZvGK.js} +1 -1
  49. package/dist/assets/{RunDataTable-DEgXQifj.js → RunDataTable-BO0R4JT_.js} +36 -30
  50. package/dist/assets/{RunDataTable-CX7gToH4.css → RunDataTable-DyUvXWfl.css} +47 -41
  51. package/dist/assets/{SamlOnboarding-D903XflA.js → SamlOnboarding-CmwMX5y2.js} +3 -3
  52. package/dist/assets/{SettingsApiView-DCMVAa53.js → SettingsApiView-D6uBbi9-.js} +5 -5
  53. package/dist/assets/{SettingsCommunityNodesView-BBuil15J.js → SettingsCommunityNodesView-CJODtx_K.js} +4 -4
  54. package/dist/assets/{SettingsExternalSecrets-CXRYGUXv.js → SettingsExternalSecrets-CVk14P_P.js} +1 -1
  55. package/dist/assets/{SettingsLdapView-DhoxhX3J.js → SettingsLdapView-pg71FErj.js} +1 -1
  56. package/dist/assets/{SettingsLogStreamingView-CxZag4Od.js → SettingsLogStreamingView-DUOI3Xb9.js} +1 -1
  57. package/dist/assets/{SettingsPersonalView-wcvMUVmj.js → SettingsPersonalView-BFnOmBPC.js} +1 -1
  58. package/dist/assets/{SettingsSourceControl-1-N8xA9J.js → SettingsSourceControl-BUNmxcvB.js} +1 -1
  59. package/dist/assets/{SettingsSso-BwySnCiN.js → SettingsSso-Dx8Qw_2Z.js} +1 -1
  60. package/dist/assets/{SettingsUsageAndPlan-CDI4k6UQ.js → SettingsUsageAndPlan-DTk86tXU.js} +1 -1
  61. package/dist/assets/{SettingsUsersView-tEm96Fhw.js → SettingsUsersView-BviXcl30.js} +1 -1
  62. package/dist/assets/{SettingsView-AhipcaOB.js → SettingsView-fzPdUijx.js} +1 -1
  63. package/dist/assets/{SetupView-BnsG-7jD.js → SetupView-DUTx1JXK.js} +3 -3
  64. package/dist/assets/{SetupWorkflowCredentialsButton-BNGDx7Fp.js → SetupWorkflowCredentialsButton-fApxCGHh.js} +1 -1
  65. package/dist/assets/{SetupWorkflowFromTemplateView-BuoOdqHT.js → SetupWorkflowFromTemplateView-C5t9fEKF.js} +3 -3
  66. package/dist/assets/{SigninView-UJnLl-xs.js → SigninView-BRVoXQRW.js} +3 -3
  67. package/dist/assets/{SignoutView-e5mZU_R6.js → SignoutView-Duh6wb4Y.js} +1 -1
  68. package/dist/assets/{SignupView-cdwgpaEM.js → SignupView-DMkpTtjs.js} +3 -3
  69. package/dist/assets/{TemplateDetails-DcoAjVlw.js → TemplateDetails-Df9_jph6.js} +1 -1
  70. package/dist/assets/{TemplateList-B6SXDRtt.js → TemplateList-qSnJvw0K.js} +1 -1
  71. package/dist/assets/{TemplatesCollectionView-BZmufr5v.js → TemplatesCollectionView--ccYXaCo.js} +5 -5
  72. package/dist/assets/{TemplatesSearchView-BJhZMdAl.js → TemplatesSearchView-D1YgHKld.js} +3 -3
  73. package/dist/assets/{TemplatesView-CSnT6pfC.js → TemplatesView-B9CwObHN.js} +1 -1
  74. package/dist/assets/{TemplatesWorkflowView-4ejYFisG.js → TemplatesWorkflowView-DtLpUF59.js} +5 -5
  75. package/dist/assets/{TestDefinitionEditView-BLJQ7-fz.js → TestDefinitionEditView-DFcBlKnN.js} +7 -7
  76. package/dist/assets/{TestDefinitionListView-uZmtRG_H.js → TestDefinitionListView-C_mbolTO.js} +1 -1
  77. package/dist/assets/{TestDefinitionNewView-Dfav_UeD.js → TestDefinitionNewView-CvyM6TLE.js} +2 -2
  78. package/dist/assets/{TestDefinitionRootView-CbVp9ZuX.js → TestDefinitionRootView-BXzJY0cY.js} +1 -1
  79. package/dist/assets/{VariablesView-CTSEc1xT.js → VariablesView-BHFJj5IU.js} +3 -3
  80. package/dist/assets/{WorkerView-s6aBeHSb.js → WorkerView-CgIksFjP.js} +6 -6
  81. package/dist/assets/{WorkflowActivator-BeUvx9Ri.js → WorkflowActivator-O6i5XAk2.js} +2 -2
  82. package/dist/assets/{WorkflowExecutionsInfoAccordion-BBtwnPZQ.css → WorkflowExecutionsInfoAccordion-53bC-IXN.css} +10 -8
  83. package/dist/assets/{WorkflowExecutionsInfoAccordion-D9wF-tSd.js → WorkflowExecutionsInfoAccordion-BcBLZ_Ul.js} +3 -3
  84. package/dist/assets/{WorkflowExecutionsLandingPage-CROT9lXB.js → WorkflowExecutionsLandingPage-B9ByHnbR.js} +2 -2
  85. package/dist/assets/{WorkflowExecutionsPreview-DyVQaOZ3.js → WorkflowExecutionsPreview-DCE7TYLh.js} +6 -6
  86. package/dist/assets/{WorkflowExecutionsView-T9-QI3Ve.js → WorkflowExecutionsView-DFoBpdS7.js} +7 -7
  87. package/dist/assets/{WorkflowHistory-271ecFaP.js → WorkflowHistory-DolmPUM2.js} +3 -3
  88. package/dist/assets/{WorkflowOnboardingView-C10O8PHR.js → WorkflowOnboardingView-DQW48M8_.js} +1 -1
  89. package/dist/assets/{WorkflowPreview-B58e-sbx.js → WorkflowPreview-BFR6V9SO.js} +1 -1
  90. package/dist/assets/{WorkflowsView-tVTdlhV1.js → WorkflowsView-B-feKuLZ.js} +348 -60
  91. package/dist/assets/{WorkflowsView-DV1tjQwB.css → WorkflowsView-CsM69PSv.css} +41 -16
  92. package/dist/assets/{chartjs.utils-B5AYF7KA.js → chartjs.utils-BcXTJ2Te.js} +2 -2
  93. package/dist/assets/{dateFormatter-DP26ifk_.js → dateFormatter-CZI1kGYK.js} +1 -1
  94. package/dist/assets/{easyAiWorkflowUtils-BC_3x-4F.js → easyAiWorkflowUtils-ChToD_Yl.js} +1 -1
  95. package/dist/assets/{global-link-actions-BxV1MUKt.js → global-link-actions-OGaZVwsw.js} +1 -1
  96. package/dist/assets/{import-curl-DVtpAPDa.js → import-curl-CAszzwx1.js} +1 -1
  97. package/dist/assets/{index-DpLYcjet.js → index-7WdERzqm.js} +1 -1
  98. package/dist/assets/{index-CN4JmOoA.js → index-BpdkKRP4.js} +2544 -2121
  99. package/dist/assets/{index-DwKuVkBg.css → index-C5OXOcIJ.css} +176 -111
  100. package/dist/assets/{pickBy-BAPZ2mk0.js → pickBy-mYqFOFbh.js} +1 -1
  101. package/dist/assets/{templateActions-Hi9EBouz.js → templateActions-BX9arLbc.js} +1 -1
  102. package/dist/assets/{typescript.worker-Bt3bByTc.js → typescript.worker-BsxN2afA.js} +1 -1
  103. package/dist/assets/{useBeforeUnload-CQDQ2xRD.js → useBeforeUnload-K7nQ15Rk.js} +1 -1
  104. package/dist/assets/{useCanvasMapping-BkGr1HdJ.css → useCanvasMapping-C--wac6H.css} +8 -9
  105. package/dist/assets/{useCanvasMapping-BrMdYioA.js → useCanvasMapping-D_UPCxYX.js} +37 -30
  106. package/dist/assets/{useCanvasOperations-BW3qnkOc.js → useCanvasOperations-D6VFiC3b.js} +17 -71
  107. package/dist/assets/{useClearExecutionButtonVisible-CRcafrkD.js → useClearExecutionButtonVisible-D_0O6f0X.js} +2 -2
  108. package/dist/assets/{useExecutionDebugging-Dy0Nq0u2.js → useExecutionDebugging-BNMaKOh7.js} +1 -1
  109. package/dist/assets/{useExecutionHelpers-Bet0YWvb.js → useExecutionHelpers-DN5HqPqY.js} +2 -2
  110. package/dist/assets/{useImportCurlCommand-CJX2AaLN.js → useImportCurlCommand-BSL596XF.js} +2 -2
  111. package/dist/assets/{usePushConnection-RVgJVlWm.js → usePushConnection-BdV7ILvK.js} +3 -3
  112. package/dist/assets/{useTestDefinitionForm-DjJ6ywy3.js → useTestDefinitionForm-CIhrxyve.js} +1 -1
  113. package/dist/assets/{useWorkflowActivate-BZzKuzDM.js → useWorkflowActivate-pZ62ib_C.js} +1 -1
  114. package/dist/index.html +2 -2
  115. package/package.json +1 -1
  116. package/dist/assets/CollectionParameter-DJtdOCSL.js +0 -4
  117. package/dist/assets/RunDataAi-DsidSvp-.js +0 -3166
@@ -1,32 +1,13 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/RunDataTable-DEgXQifj.js","assets/index-CN4JmOoA.js","assets/index-DwKuVkBg.css","assets/useExecutionHelpers-Bet0YWvb.js","assets/dateFormatter-DP26ifk_.js","assets/RunDataTable-CX7gToH4.css","assets/RunDataJson-BRO48N-i.js","assets/import-curl-DVtpAPDa.js","assets/FileSaver.min-DbOfV2ME.js","assets/RunDataAi-DsidSvp-.js","assets/useCanvasOperations-BW3qnkOc.js","assets/RunDataAi-CUUDqZRP.css","assets/useWorkflowActivate-BZzKuzDM.js","assets/RunDataJson-Txw0lqay.css","assets/RunDataSearch-CNfhlvrK.js","assets/RunDataSearch-R6qtl0Jf.css"])))=>i.map(i=>d[i]);
2
- import { h4 as hasKey, d as defineComponent, r as ref, q as computed, h as resolveComponent, i as createElementBlock, g as openBlock, n as normalizeClass, k as createBaseVNode, j as createVNode, bC as _sfc_main$l, w as withCtx, H as withKeys, J as withModifiers, l as createTextVNode, t as toDisplayString, m as unref, c as useI18n, e as createBlock, f as createCommentVNode, z as nextTick, _ as _export_sfc, au as useNDVStore, U as useWorkflowsStore, dH as isCommunityPackageName, cB as NPM_PACKAGE_DOCS_BASE_URL, h5 as BUILTIN_NODES_DOCS_URL, cD as COMMUNITY_NODES_INSTALLATION_DOCS_URL, aR as useExternalHooks, ai as useTelemetry, bu as NodeConnectionTypes, b as useRouter, ba as useClipboard, a7 as useWorkflowHelpers, a as useToast, h6 as OPEN_URL_PANEL_TRIGGER_NODE_TYPES, h7 as PRODUCTION_ONLY_TRIGGER_NODE_TYPES, eT as MCP_TRIGGER_NODE_TYPE, eK as FORM_TRIGGER_NODE_TYPE, bv as CHAT_TRIGGER_NODE_TYPE, I as watch, F as Fragment, D as renderList, G as onClickOutside, as as h, h8 as toRef, h9 as tryOnScopeDispose, ha as toValue, hb as isIOS, hc as noop, hd as isObject, he as isClient, bw as useNodeTypesStore, bx as useNodeHelpers, K as useDebounce, fI as nodeIssuesToString, B as normalizeStyle, fC as TitledList, br as getNodeInputs, hf as SWITCH_NODE_TYPE, fG as isEqual, hg as captureException, p as useSettingsStore, aw as usePostHog, bM as useCredentialsStore, u as useUsersStore, a4 as useProjectsStore, dB as OPEN_AI_API_CREDENTIAL_TYPE, hh as AI_CREDITS_EXPERIMENT, bP as useHistoryStore, ad as ProjectTypes, bs as getConnectionTypes, o as onMounted, hi as ndvEventBus, y as onBeforeUnmount, hj as _sfc_main$m, hk as CUSTOM_NODES_DOCS_URL, aC as withDirectives, aD as vShow, gO as _sfc_main$n, hl as NodeCredentials, bh as get, f9 as getNodeParameters, ca as deepCopy, hm as set, hn as unset, e_ as RenameNodeCommand, gN as isINodePropertyCollectionList, ho as isINodePropertiesList, hp as isINodePropertyOptionsList, hq as displayParameter, hr as Draggable, fs as useThrottleFn, L as useUIStore, fd as useSlots, hs as MAIN_NODE_PANEL_WIDTH, aL as useStorage, ht as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, x as renderSlot, hu as requireVue, ck as getDefaultExportFromCjs, hv as sanitizeHtml, hw as sanitizeHtmlExports, bU as jsonParse, aS as N8nTooltip, aU as _sfc_main$o, aT as N8nLink, b9 as N8nText, a3 as useSourceControlStore, a1 as useRootStore, dy as useSchemaPreviewStore, W as useRoute, bI as toRef$1, bi as usePinnedData, hx as useNodeType, cG as storeToRefs, ep as HTML_NODE_TYPE, hy as TRIMMED_TASK_DATA_CONNECTIONS_KEY, hz as executionDataToJson, hA as NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND, dU as CORE_NODES_CATEGORY, hB as SCHEMA_PREVIEW_EXPERIMENT, hC as computedAsync, hD as LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG, hE as dataPinningEventBus, hF as LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG, hG as searchInObject, hH as isObject$1, hI as MAX_DISPLAY_DATA_SIZE_SCHEMA_VIEW, dG as MAX_DISPLAY_DATA_SIZE, cb as resolveDirective, b_ as N8nCallout, hJ as DATA_PINNING_DOCS_URL, bY as Suspense, bZ as defineAsyncComponent, bG as N8nRadioButtons, bb as N8nButton, gv as _sfc_main$p, gu as N8nSelect, hK as N8nTabs, ga as _sfc_main$q, hL as JsonEditor, hM as DATA_EDITING_DOCS_URL, de as InfoTip, hN as N8nBlockUi, aq as __vitePreload, eY as isPresent, bt as getNodeOutputs, hO as getNodeHints, hP as getGenericHints, hQ as clearJsonKey, hR as TEST_PIN_DATA, fQ as isEmpty, fH as useNodeDirtiness, fD as CanvasNodeDirtiness, aW as createSlots, hS as waitingNodeTooltip, hT as truncate, gj as createStaticVNode, bS as START_NODE_TYPE, eH as MANUAL_TRIGGER_NODE_TYPE, hU as CRON_NODE_TYPE, hV as INTERVAL_NODE_TYPE, hW as uniqBy, b2 as resolveDynamicComponent, bE as N8nIcon, hX as isTriggerPanelObject, dw as getTriggerNodeServiceName, eC as WEBHOOK_NODE_TYPE, dh as CopyInput, C as createEventBus, fF as Transition, V as VIEWS, am as WORKFLOW_SETTINGS_MODAL_KEY, fu as useDeviceSupport, hY as EXECUTABLE_TRIGGER_NODE_TYPES, aA as STICKY_NODE_TYPE, hZ as BASE_NODE_SURVEY_URL, ac as EnterpriseEditionFeature, bH as useStyles, h_ as APP_MODALS_ELEMENT_ID, ak as useMessage, al as MODAL_CONFIRM } from "./index-CN4JmOoA.js";
3
- import { i as importCurlEventBus } from "./import-curl-DVtpAPDa.js";
4
- import { F as FileSaver_minExports } from "./FileSaver.min-DbOfV2ME.js";
5
- import { V as ViewSubExecution, b as _sfc_main$r, R as RunDataAi } from "./RunDataAi-DsidSvp-.js";
6
- import { b as convertToDisplayDateComponents } from "./dateFormatter-DP26ifk_.js";
7
- import { u as useWorkflowActivate } from "./useWorkflowActivate-BZzKuzDM.js";
8
- function responseHasSubworkflowData(response) {
9
- return ["executionId", "workflowId"].every(
10
- (x) => hasKey(response, x) && typeof response[x] === "string"
11
- );
12
- }
13
- function parseErrorResponseWorkflowMetadata(response) {
14
- if (!responseHasSubworkflowData(response)) return void 0;
15
- return {
16
- subExecution: {
17
- executionId: response.executionId,
18
- workflowId: response.workflowId
19
- },
20
- subExecutionsCount: 1
21
- };
22
- }
23
- function parseErrorMetadata(error) {
24
- if (hasKey(error, "errorResponse")) {
25
- return parseErrorResponseWorkflowMetadata(error.errorResponse);
26
- }
27
- return parseErrorResponseWorkflowMetadata(error);
28
- }
29
- const _sfc_main$k = /* @__PURE__ */ defineComponent({
1
+ import { d as defineComponent, r as ref, q as computed, h as resolveComponent, i as createElementBlock, g as openBlock, n as normalizeClass, k as createBaseVNode, j as createVNode, bB as _sfc_main$g, w as withCtx, H as withKeys, J as withModifiers, l as createTextVNode, t as toDisplayString, m as unref, c as useI18n, e as createBlock, f as createCommentVNode, z as nextTick, _ as _export_sfc, au as useNDVStore, U as useWorkflowsStore, dF as isCommunityPackageName, cC as NPM_PACKAGE_DOCS_BASE_URL, hF as BUILTIN_NODES_DOCS_URL, cE as COMMUNITY_NODES_INSTALLATION_DOCS_URL, aR as useExternalHooks, ai as useTelemetry, bl as NodeConnectionTypes, b as useRouter, be as useClipboard, a7 as useWorkflowHelpers, a as useToast, hG as OPEN_URL_PANEL_TRIGGER_NODE_TYPES, hH as PRODUCTION_ONLY_TRIGGER_NODE_TYPES, fk as MCP_TRIGGER_NODE_TYPE, fb as FORM_TRIGGER_NODE_TYPE, bj as CHAT_TRIGGER_NODE_TYPE, I as watch, F as Fragment, D as renderList, G as onClickOutside, as as h, hI as toRef, hJ as tryOnScopeDispose, hK as toValue, hL as isIOS, hM as noop, hN as isObject, hO as isClient, by as useNodeTypesStore, bz as useNodeHelpers, K as useDebounce, g7 as nodeIssuesToString, B as normalizeStyle, g2 as TitledList, bv as getNodeInputs, hP as SWITCH_NODE_TYPE, eb as isEqual, hQ as captureException, p as useSettingsStore, aw as usePostHog, bN as useCredentialsStore, u as useUsersStore, a4 as useProjectsStore, dx as OPEN_AI_API_CREDENTIAL_TYPE, hR as AI_CREDITS_EXPERIMENT, bQ as useHistoryStore, ad as ProjectTypes, bw as getConnectionTypes, o as onMounted, hS as ndvEventBus, y as onBeforeUnmount, hT as _sfc_main$h, hU as CUSTOM_NODES_DOCS_URL, aC as withDirectives, aD as vShow, hf as _sfc_main$i, hV as NodeCredentials, bn as get, fB as getNodeParameters, cb as deepCopy, hW as set, hX as unset, fq as RenameNodeCommand, he as isINodePropertyCollectionList, hY as isINodePropertiesList, hZ as isINodePropertyOptionsList, h_ as displayParameter, gZ as Draggable, fU as useThrottleFn, L as useUIStore, fF as useSlots, h$ as MAIN_NODE_PANEL_WIDTH, aL as useStorage, i0 as LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH, x as renderSlot, cc as resolveDirective, df as InfoTip, cH as storeToRefs, g6 as useNodeDirtiness, dL as useNodeType, bp as usePinnedData, g3 as CanvasNodeDirtiness, aW as createSlots, bd as N8nText, i1 as waitingNodeTooltip, bF as N8nRadioButtons, e5 as isPresent, i2 as truncate, gN as createStaticVNode, bT as START_NODE_TYPE, f8 as MANUAL_TRIGGER_NODE_TYPE, i3 as CRON_NODE_TYPE, i4 as INTERVAL_NODE_TYPE, bx as getNodeOutputs, bG as uniqBy, b6 as resolveDynamicComponent, aS as N8nTooltip, bD as N8nIcon, i5 as isTriggerPanelObject, ds as getTriggerNodeServiceName, f3 as WEBHOOK_NODE_TYPE, di as CopyInput, C as createEventBus, g5 as Transition, V as VIEWS, am as WORKFLOW_SETTINGS_MODAL_KEY, fW as useDeviceSupport, i6 as EXECUTABLE_TRIGGER_NODE_TYPES, aA as STICKY_NODE_TYPE, i7 as BASE_NODE_SURVEY_URL, ac as EnterpriseEditionFeature, dT as dataPinningEventBus, bI as useStyles, i8 as APP_MODALS_ELEMENT_ID, ak as useMessage, al as MODAL_CONFIRM, bV as jsonParse } from "./index-BpdkKRP4.js";
2
+ import { i as importCurlEventBus } from "./import-curl-CAszzwx1.js";
3
+ import { R as RunData } from "./RunData-Ds-U68nr.js";
4
+ import { b as convertToDisplayDateComponents } from "./dateFormatter-CZI1kGYK.js";
5
+ import { R as RunDataAi } from "./RunDataAi-DdK11EHU.js";
6
+ import { u as useWorkflowActivate } from "./useWorkflowActivate-pZ62ib_C.js";
7
+ import "./FileSaver.min-Cm0u4qyc.js";
8
+ import "./useExecutionHelpers-DN5HqPqY.js";
9
+ import "./useCanvasOperations-D6VFiC3b.js";
10
+ const _sfc_main$f = /* @__PURE__ */ defineComponent({
30
11
  __name: "NodeTitle",
31
12
  props: {
32
13
  modelValue: { default: "" },
@@ -70,7 +51,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
70
51
  createBaseVNode("span", {
71
52
  class: normalizeClass(_ctx.$style.iconWrapper)
72
53
  }, [
73
- createVNode(_sfc_main$l, {
54
+ createVNode(_sfc_main$g, {
74
55
  "node-type": _ctx.nodeType,
75
56
  size: 18
76
57
  }, null, 8, ["node-type"])
@@ -151,7 +132,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
151
132
  };
152
133
  }
153
134
  });
154
- const container$3 = "_container_86rol_123";
135
+ const container$2 = "_container_86rol_123";
155
136
  const title$3 = "_title_86rol_133";
156
137
  const hoverable = "_hoverable_86rol_141";
157
138
  const editIcon = "_editIcon_86rol_144";
@@ -159,8 +140,8 @@ const iconWrapper = "_iconWrapper_86rol_148";
159
140
  const editIconContainer = "_editIconContainer_86rol_161";
160
141
  const editButtons = "_editButtons_86rol_167";
161
142
  const editContainer = "_editContainer_86rol_175";
162
- const style0$c = {
163
- container: container$3,
143
+ const style0$a = {
144
+ container: container$2,
164
145
  title: title$3,
165
146
  hoverable,
166
147
  editIcon,
@@ -169,11 +150,11 @@ const style0$c = {
169
150
  editButtons,
170
151
  editContainer
171
152
  };
172
- const cssModules$d = {
173
- "$style": style0$c
153
+ const cssModules$b = {
154
+ "$style": style0$a
174
155
  };
175
- const NodeTitle = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__cssModules", cssModules$d]]);
176
- const _sfc_main$j = /* @__PURE__ */ defineComponent({
156
+ const NodeTitle = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__cssModules", cssModules$b]]);
157
+ const _sfc_main$e = /* @__PURE__ */ defineComponent({
177
158
  __name: "NodeSettingsTabs",
178
159
  props: {
179
160
  modelValue: { default: "params" },
@@ -294,34 +275,34 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
294
275
  };
295
276
  }
296
277
  });
297
- const _hoisted_1$d = {
278
+ const _hoisted_1$8 = {
298
279
  key: 0,
299
280
  class: "webhooks"
300
281
  };
301
- const _hoisted_2$7 = ["title"];
302
- const _hoisted_3$6 = {
282
+ const _hoisted_2$3 = ["title"];
283
+ const _hoisted_3$3 = {
303
284
  key: 0,
304
285
  class: "node-webhooks"
305
286
  };
306
- const _hoisted_4$6 = {
287
+ const _hoisted_4$3 = {
307
288
  key: 0,
308
289
  class: "url-selection"
309
290
  };
310
- const _hoisted_5$6 = {
291
+ const _hoisted_5$3 = {
311
292
  key: 0,
312
293
  class: "webhook-wrapper"
313
294
  };
314
- const _hoisted_6$5 = { class: "http-field" };
315
- const _hoisted_7$4 = { class: "http-method" };
316
- const _hoisted_8$4 = { class: "url-field" };
317
- const _hoisted_9$3 = ["onClick"];
318
- const _hoisted_10$2 = {
295
+ const _hoisted_6$3 = { class: "http-field" };
296
+ const _hoisted_7$2 = { class: "http-method" };
297
+ const _hoisted_8$2 = { class: "url-field" };
298
+ const _hoisted_9$1 = ["onClick"];
299
+ const _hoisted_10$1 = {
319
300
  key: 1,
320
301
  class: "webhook-wrapper"
321
302
  };
322
303
  const _hoisted_11$1 = { class: "url-field-full-width" };
323
304
  const _hoisted_12 = ["onClick"];
324
- const _sfc_main$i = /* @__PURE__ */ defineComponent({
305
+ const _sfc_main$d = /* @__PURE__ */ defineComponent({
325
306
  __name: "NodeWebhooks",
326
307
  props: {
327
308
  node: {},
@@ -470,7 +451,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
470
451
  const _component_el_row = resolveComponent("el-row");
471
452
  const _component_n8n_tooltip = resolveComponent("n8n-tooltip");
472
453
  const _component_el_collapse_transition = resolveComponent("el-collapse-transition");
473
- return webhooksNode.value.length && visibleWebhookUrls.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1$d, [
454
+ return webhooksNode.value.length && visibleWebhookUrls.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1$8, [
474
455
  createBaseVNode("div", {
475
456
  class: normalizeClass(["clickable headline", { expanded: !isMinimized.value }]),
476
457
  title: isMinimized.value ? baseText.value.clickToDisplay : baseText.value.clickToHide,
@@ -481,11 +462,11 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
481
462
  class: "minimize-button minimize-icon"
482
463
  }),
483
464
  createTextVNode(" " + toDisplayString(baseText.value.toggleTitle), 1)
484
- ], 10, _hoisted_2$7),
465
+ ], 10, _hoisted_2$3),
485
466
  createVNode(_component_el_collapse_transition, null, {
486
467
  default: withCtx(() => [
487
- !isMinimized.value ? (openBlock(), createElementBlock("div", _hoisted_3$6, [
488
- !isProductionOnly.value ? (openBlock(), createElementBlock("div", _hoisted_4$6, [
468
+ !isMinimized.value ? (openBlock(), createElementBlock("div", _hoisted_3$3, [
469
+ !isProductionOnly.value ? (openBlock(), createElementBlock("div", _hoisted_4$3, [
489
470
  createVNode(_component_el_row, null, {
490
471
  default: withCtx(() => [
491
472
  createVNode(_component_el_col, { span: 24 }, {
@@ -510,23 +491,23 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
510
491
  placement: "left"
511
492
  }, {
512
493
  default: withCtx(() => [
513
- isWebhookMethodVisible(webhook) ? (openBlock(), createElementBlock("div", _hoisted_5$6, [
514
- createBaseVNode("div", _hoisted_6$5, [
515
- createBaseVNode("div", _hoisted_7$4, [
494
+ isWebhookMethodVisible(webhook) ? (openBlock(), createElementBlock("div", _hoisted_5$3, [
495
+ createBaseVNode("div", _hoisted_6$3, [
496
+ createBaseVNode("div", _hoisted_7$2, [
516
497
  createTextVNode(toDisplayString(getWebhookHttpMethod(webhook)), 1),
517
498
  _cache[2] || (_cache[2] = createBaseVNode("br", null, null, -1))
518
499
  ])
519
500
  ]),
520
- createBaseVNode("div", _hoisted_8$4, [
501
+ createBaseVNode("div", _hoisted_8$2, [
521
502
  createBaseVNode("div", {
522
503
  class: "webhook-url left-ellipsis clickable",
523
504
  onClick: ($event) => copyWebhookUrl(webhook)
524
505
  }, [
525
506
  createTextVNode(toDisplayString(getWebhookUrlDisplay(webhook)), 1),
526
507
  _cache[3] || (_cache[3] = createBaseVNode("br", null, null, -1))
527
- ], 8, _hoisted_9$3)
508
+ ], 8, _hoisted_9$1)
528
509
  ])
529
- ])) : (openBlock(), createElementBlock("div", _hoisted_10$2, [
510
+ ])) : (openBlock(), createElementBlock("div", _hoisted_10$1, [
530
511
  createBaseVNode("div", _hoisted_11$1, [
531
512
  createBaseVNode("div", {
532
513
  class: "webhook-url left-ellipsis clickable",
@@ -549,7 +530,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
549
530
  };
550
531
  }
551
532
  });
552
- const NodeWebhooks = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-56323fca"]]);
533
+ const NodeWebhooks = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-56323fca"]]);
553
534
  const OnClickOutside = /* @__PURE__ */ defineComponent({
554
535
  name: "OnClickOutside",
555
536
  props: ["as", "options"],
@@ -720,13 +701,13 @@ function onScrollLock() {
720
701
  };
721
702
  }
722
703
  onScrollLock();
723
- const _hoisted_1$c = ["data-test-id"];
724
- const _hoisted_2$6 = ["textContent"];
725
- const _hoisted_3$5 = ["onClick"];
726
- const _hoisted_4$5 = ["onClick"];
727
- const _hoisted_5$5 = ["data-node-name"];
728
- const _hoisted_6$4 = ["onClick"];
729
- const _sfc_main$h = /* @__PURE__ */ defineComponent({
704
+ const _hoisted_1$7 = ["data-test-id"];
705
+ const _hoisted_2$2 = ["textContent"];
706
+ const _hoisted_3$2 = ["onClick"];
707
+ const _hoisted_4$2 = ["onClick"];
708
+ const _hoisted_5$2 = ["data-node-name"];
709
+ const _hoisted_6$2 = ["onClick"];
710
+ const _sfc_main$c = /* @__PURE__ */ defineComponent({
730
711
  __name: "NDVSubConnections",
731
712
  props: {
732
713
  rootNode: {}
@@ -878,7 +859,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
878
859
  [_ctx.$style.hasIssues]: hasInputIssues(connection.type)
879
860
  }),
880
861
  textContent: toDisplayString(`${connection.displayName}${connection.required ? " *" : ""}`)
881
- }, null, 10, _hoisted_2$6),
862
+ }, null, 10, _hoisted_2$2),
882
863
  createVNode(unref(OnClickOutside), {
883
864
  onTrigger: ($event) => expandConnectionGroup(connection.type, false)
884
865
  }, {
@@ -926,7 +907,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
926
907
  ]),
927
908
  _: 2
928
909
  }, 1032, ["disabled"])
929
- ], 10, _hoisted_4$5)) : createCommentVNode("", true),
910
+ ], 10, _hoisted_4$2)) : createCommentVNode("", true),
930
911
  connectedNodes2.value[connection.type].length > 0 ? (openBlock(), createElementBlock("div", {
931
912
  key: 1,
932
913
  class: normalizeClass({
@@ -963,33 +944,33 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
963
944
  class: normalizeClass(_ctx.$style.connectedNode),
964
945
  onClick: ($event) => onNodeClick(node2.node.name, connection.type)
965
946
  }, [
966
- createVNode(_sfc_main$l, {
947
+ createVNode(_sfc_main$g, {
967
948
  "node-type": node2.nodeType,
968
949
  "node-name": node2.node.name,
969
950
  "tooltip-position": "top",
970
951
  size: 20,
971
952
  circle: ""
972
953
  }, null, 8, ["node-type", "node-name"])
973
- ], 10, _hoisted_6$4)
954
+ ], 10, _hoisted_6$2)
974
955
  ]),
975
956
  _: 2
976
957
  }, 1032, ["disabled"]))
977
- ], 14, _hoisted_5$5);
958
+ ], 14, _hoisted_5$2);
978
959
  }), 128))
979
960
  ], 2)) : createCommentVNode("", true)
980
- ], 14, _hoisted_3$5)
961
+ ], 14, _hoisted_3$2)
981
962
  ]),
982
963
  _: 2
983
964
  }, 1032, ["onTrigger"])
984
965
  ], 2)
985
- ], 8, _hoisted_1$c);
966
+ ], 8, _hoisted_1$7);
986
967
  }), 128))
987
968
  ], 6)
988
969
  ], 2)) : createCommentVNode("", true);
989
970
  };
990
971
  }
991
972
  });
992
- const container$2 = "_container_ac466_140";
973
+ const container$1 = "_container_ac466_140";
993
974
  const connections = "_connections_ac466_148";
994
975
  const connectionType = "_connectionType_ac466_160";
995
976
  const connectionLabel = "_connectionLabel_ac466_167";
@@ -1001,8 +982,8 @@ const connectedNodesMultiple = "_connectedNodesMultiple_ac466_209";
1001
982
  const connectedNode$1 = "_connectedNode_ac466_177";
1002
983
  const connectedNodes = "_connectedNodes_ac466_177";
1003
984
  const nodeWrapper = "_nodeWrapper_ac466_247";
1004
- const style0$b = {
1005
- container: container$2,
985
+ const style0$9 = {
986
+ container: container$1,
1006
987
  connections,
1007
988
  connectionType,
1008
989
  connectionLabel,
@@ -1016,10 +997,10 @@ const style0$b = {
1016
997
  connectedNodes,
1017
998
  nodeWrapper
1018
999
  };
1019
- const cssModules$c = {
1020
- "$style": style0$b
1000
+ const cssModules$a = {
1001
+ "$style": style0$9
1021
1002
  };
1022
- const NDVSubConnections = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__cssModules", cssModules$c]]);
1003
+ const NDVSubConnections = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__cssModules", cssModules$a]]);
1023
1004
  function updateDynamicConnections(node2, workflowConnections, parameterData) {
1024
1005
  const connections2 = { ...workflowConnections };
1025
1006
  try {
@@ -1103,10 +1084,10 @@ function updateDynamicConnections(node2, workflowConnections, parameterData) {
1103
1084
  }
1104
1085
  return null;
1105
1086
  }
1106
- const _hoisted_1$b = { class: "mt-xs" };
1087
+ const _hoisted_1$6 = { class: "mt-xs" };
1107
1088
  const LANGCHAIN_NODES_PREFIX = "@n8n/n8n-nodes-langchain.";
1108
1089
  const N8N_NODES_PREFIX = "@n8n/n8n-nodes.";
1109
- const _sfc_main$g = /* @__PURE__ */ defineComponent({
1090
+ const _sfc_main$b = /* @__PURE__ */ defineComponent({
1110
1091
  __name: "FreeAiCreditsCallout",
1111
1092
  setup(__props) {
1112
1093
  const NODES_WITH_OPEN_AI_API_CREDENTIAL = [
@@ -1163,7 +1144,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
1163
1144
  const _component_n8n_button = resolveComponent("n8n-button");
1164
1145
  const _component_n8n_callout = resolveComponent("n8n-callout");
1165
1146
  const _component_n8n_text = resolveComponent("n8n-text");
1166
- return openBlock(), createElementBlock("div", _hoisted_1$b, [
1147
+ return openBlock(), createElementBlock("div", _hoisted_1$6, [
1167
1148
  userCanClaimOpenAiCredits.value && !showSuccessCallout.value ? (openBlock(), createBlock(_component_n8n_callout, {
1168
1149
  key: 0,
1169
1150
  theme: "secondary",
@@ -1215,26 +1196,26 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
1215
1196
  };
1216
1197
  }
1217
1198
  });
1218
- const _hoisted_1$a = { class: "header-side-menu" };
1219
- const _hoisted_2$5 = { key: 1 };
1220
- const _hoisted_3$4 = {
1199
+ const _hoisted_1$5 = { class: "header-side-menu" };
1200
+ const _hoisted_2$1 = { key: 1 };
1201
+ const _hoisted_3$1 = {
1221
1202
  key: 0,
1222
1203
  class: "node-is-not-valid"
1223
1204
  };
1224
- const _hoisted_4$4 = { class: "missingNodeTitleContainer mt-s mb-xs" };
1225
- const _hoisted_5$4 = { class: "mb-l" };
1226
- const _hoisted_6$3 = ["href"];
1227
- const _hoisted_7$3 = ["href", "textContent"];
1228
- const _hoisted_8$3 = {
1205
+ const _hoisted_4$1 = { class: "missingNodeTitleContainer mt-s mb-xs" };
1206
+ const _hoisted_5$1 = { class: "mb-l" };
1207
+ const _hoisted_6$1 = ["href"];
1208
+ const _hoisted_7$1 = ["href", "textContent"];
1209
+ const _hoisted_8$1 = {
1229
1210
  key: 1,
1230
1211
  class: "node-parameters-wrapper",
1231
1212
  "data-test-id": "node-parameters"
1232
1213
  };
1233
- const _hoisted_9$2 = {
1214
+ const _hoisted_9 = {
1234
1215
  key: 1,
1235
1216
  class: "no-parameters"
1236
1217
  };
1237
- const _hoisted_10$1 = {
1218
+ const _hoisted_10 = {
1238
1219
  key: 2,
1239
1220
  class: "parameter-item parameter-notice",
1240
1221
  "data-test-id": "node-parameters-http-notice"
@@ -1243,7 +1224,7 @@ const _hoisted_11 = {
1243
1224
  class: "node-version",
1244
1225
  "data-test-id": "node-version"
1245
1226
  };
1246
- const _sfc_main$f = /* @__PURE__ */ defineComponent({
1227
+ const _sfc_main$a = /* @__PURE__ */ defineComponent({
1247
1228
  __name: "NodeSettings",
1248
1229
  props: {
1249
1230
  eventBus: {},
@@ -1944,7 +1925,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1944
1925
  createBaseVNode("div", {
1945
1926
  class: normalizeClass(_ctx.$style.header)
1946
1927
  }, [
1947
- createBaseVNode("div", _hoisted_1$a, [
1928
+ createBaseVNode("div", _hoisted_1$5, [
1948
1929
  node2.value ? (openBlock(), createBlock(NodeTitle, {
1949
1930
  key: 0,
1950
1931
  class: "node-name",
@@ -1953,8 +1934,8 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1953
1934
  "read-only": isReadOnly.value,
1954
1935
  "onUpdate:modelValue": nameChanged
1955
1936
  }, null, 8, ["model-value", "node-type", "read-only"])) : createCommentVNode("", true),
1956
- isExecutable.value ? (openBlock(), createElementBlock("div", _hoisted_2$5, [
1957
- !_ctx.blockUI && node2.value && nodeValid.value ? (openBlock(), createBlock(_sfc_main$m, {
1937
+ isExecutable.value ? (openBlock(), createElementBlock("div", _hoisted_2$1, [
1938
+ !_ctx.blockUI && node2.value && nodeValid.value ? (openBlock(), createBlock(_sfc_main$h, {
1958
1939
  key: 0,
1959
1940
  "data-test-id": "node-execute-button",
1960
1941
  "node-name": node2.value.name,
@@ -1968,7 +1949,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1968
1949
  }, null, 8, ["node-name", "disabled", "tooltip"])) : createCommentVNode("", true)
1969
1950
  ])) : createCommentVNode("", true)
1970
1951
  ]),
1971
- node2.value && nodeValid.value ? (openBlock(), createBlock(_sfc_main$j, {
1952
+ node2.value && nodeValid.value ? (openBlock(), createBlock(_sfc_main$e, {
1972
1953
  key: 0,
1973
1954
  "model-value": openPanel.value,
1974
1955
  "node-type": _ctx.nodeType,
@@ -1976,13 +1957,13 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1976
1957
  "onUpdate:modelValue": onTabSelect
1977
1958
  }, null, 8, ["model-value", "node-type", "push-ref"])) : createCommentVNode("", true)
1978
1959
  ], 2),
1979
- node2.value && !nodeValid.value ? (openBlock(), createElementBlock("div", _hoisted_3$4, [
1960
+ node2.value && !nodeValid.value ? (openBlock(), createElementBlock("div", _hoisted_3$1, [
1980
1961
  createBaseVNode("p", {
1981
1962
  class: normalizeClass(_ctx.$style.warningIcon)
1982
1963
  }, [
1983
1964
  createVNode(_component_font_awesome_icon, { icon: "exclamation-triangle" })
1984
1965
  ], 2),
1985
- createBaseVNode("div", _hoisted_4$4, [
1966
+ createBaseVNode("div", _hoisted_4$1, [
1986
1967
  createVNode(_component_n8n_text, {
1987
1968
  size: "large",
1988
1969
  color: "text-dark",
@@ -1998,7 +1979,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1998
1979
  key: 0,
1999
1980
  class: normalizeClass(_ctx.$style.descriptionContainer)
2000
1981
  }, [
2001
- createBaseVNode("div", _hoisted_5$4, [
1982
+ createBaseVNode("div", _hoisted_5$1, [
2002
1983
  createVNode(_component_i18n_t, {
2003
1984
  keypath: "nodeSettings.communityNodeUnknown.description",
2004
1985
  tag: "span",
@@ -2008,7 +1989,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
2008
1989
  createBaseVNode("a", {
2009
1990
  href: `https://www.npmjs.com/package/${node2.value.type.split(".")[0]}`,
2010
1991
  target: "_blank"
2011
- }, toDisplayString(node2.value.type.split(".")[0]), 9, _hoisted_6$3)
1992
+ }, toDisplayString(node2.value.type.split(".")[0]), 9, _hoisted_6$1)
2012
1993
  ]),
2013
1994
  _: 1
2014
1995
  })
@@ -2032,25 +2013,25 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
2032
2013
  href: unref(CUSTOM_NODES_DOCS_URL),
2033
2014
  target: "_blank",
2034
2015
  textContent: toDisplayString(unref(i18n).baseText("nodeSettings.nodeTypeUnknown.description.customNode"))
2035
- }, null, 8, _hoisted_7$3)
2016
+ }, null, 8, _hoisted_7$1)
2036
2017
  ]),
2037
2018
  _: 1
2038
2019
  }))
2039
2020
  ])) : createCommentVNode("", true),
2040
- node2.value && nodeValid.value ? (openBlock(), createElementBlock("div", _hoisted_8$3, [
2021
+ node2.value && nodeValid.value ? (openBlock(), createElementBlock("div", _hoisted_8$1, [
2041
2022
  hasForeignCredential.value && !isHomeProjectTeam.value ? (openBlock(), createBlock(_component_n8n_notice, {
2042
2023
  key: 0,
2043
2024
  content: unref(i18n).baseText("nodeSettings.hasForeignCredential", {
2044
2025
  interpolate: { owner: credentialOwnerName.value }
2045
2026
  })
2046
2027
  }, null, 8, ["content"])) : createCommentVNode("", true),
2047
- createVNode(_sfc_main$g),
2028
+ createVNode(_sfc_main$b),
2048
2029
  withDirectives(createBaseVNode("div", null, [
2049
2030
  createVNode(NodeWebhooks, {
2050
2031
  node: node2.value,
2051
2032
  "node-type-description": _ctx.nodeType
2052
2033
  }, null, 8, ["node", "node-type-description"]),
2053
- nodeValuesInitialized.value ? (openBlock(), createBlock(_sfc_main$n, {
2034
+ nodeValuesInitialized.value ? (openBlock(), createBlock(_sfc_main$i, {
2054
2035
  key: 0,
2055
2036
  parameters: parametersNoneSetting.value,
2056
2037
  "hide-delete": true,
@@ -2075,7 +2056,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
2075
2056
  ]),
2076
2057
  _: 1
2077
2058
  }, 8, ["parameters", "node-values", "is-read-only", "hidden-issues-inputs"])) : createCommentVNode("", true),
2078
- parametersNoneSetting.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_9$2, [
2059
+ parametersNoneSetting.value.length === 0 ? (openBlock(), createElementBlock("div", _hoisted_9, [
2079
2060
  createVNode(_component_n8n_text, null, {
2080
2061
  default: withCtx(() => [
2081
2062
  createTextVNode(toDisplayString(unref(i18n).baseText("nodeSettings.thisNodeDoesNotHaveAnyParameters")), 1)
@@ -2083,7 +2064,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
2083
2064
  _: 1
2084
2065
  })
2085
2066
  ])) : createCommentVNode("", true),
2086
- unref(nodeHelpers).isCustomApiCallSelected(nodeValues.value) ? (openBlock(), createElementBlock("div", _hoisted_10$1, [
2067
+ unref(nodeHelpers).isCustomApiCallSelected(nodeValues.value) ? (openBlock(), createElementBlock("div", _hoisted_10, [
2087
2068
  createVNode(_component_n8n_notice, {
2088
2069
  content: unref(i18n).baseText("nodeSettings.useTheHttpRequestNode", {
2089
2070
  interpolate: { nodeTypeDisplayName: _ctx.nodeType?.displayName ?? "" }
@@ -2094,7 +2075,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
2094
2075
  [vShow, openPanel.value === "params"]
2095
2076
  ]),
2096
2077
  withDirectives(createBaseVNode("div", null, [
2097
- createVNode(_sfc_main$n, {
2078
+ createVNode(_sfc_main$i, {
2098
2079
  parameters: parametersSetting.value,
2099
2080
  "node-values": nodeValues.value,
2100
2081
  "is-read-only": isReadOnly.value,
@@ -2104,7 +2085,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
2104
2085
  onValueChanged: valueChanged,
2105
2086
  onParameterBlur
2106
2087
  }, null, 8, ["parameters", "node-values", "is-read-only", "hidden-issues-inputs"]),
2107
- createVNode(_sfc_main$n, {
2088
+ createVNode(_sfc_main$i, {
2108
2089
  parameters: nodeSettings.value,
2109
2090
  "hide-delete": true,
2110
2091
  "node-values": nodeValues.value,
@@ -2140,19 +2121,19 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
2140
2121
  };
2141
2122
  }
2142
2123
  });
2143
- const header$2 = "_header_13al3_123";
2124
+ const header$1 = "_header_13al3_123";
2144
2125
  const warningIcon = "_warningIcon_13al3_127";
2145
2126
  const descriptionContainer = "_descriptionContainer_13al3_132";
2146
- const style0$a = {
2147
- header: header$2,
2127
+ const style0$8 = {
2128
+ header: header$1,
2148
2129
  warningIcon,
2149
2130
  descriptionContainer
2150
2131
  };
2151
- const cssModules$b = {
2152
- "$style": style0$a
2132
+ const cssModules$9 = {
2133
+ "$style": style0$8
2153
2134
  };
2154
- const NodeSettings = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__cssModules", cssModules$b], ["__scopeId", "data-v-18fbbe4a"]]);
2155
- const _sfc_main$e = /* @__PURE__ */ defineComponent({
2135
+ const NodeSettings = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__cssModules", cssModules$9], ["__scopeId", "data-v-18fbbe4a"]]);
2136
+ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
2156
2137
  __name: "PanelDragButton",
2157
2138
  props: {
2158
2139
  canMoveRight: { type: Boolean },
@@ -2228,7 +2209,7 @@ const rightArrow = "_rightArrow_16elv_142 _arrow_16elv_150";
2228
2209
  const visible$1 = "_visible_16elv_146";
2229
2210
  const arrow = "_arrow_16elv_150";
2230
2211
  const grid = "_grid_16elv_168";
2231
- const style0$9 = {
2212
+ const style0$7 = {
2232
2213
  dragContainer,
2233
2214
  dragButton,
2234
2215
  leftArrow,
@@ -2237,12 +2218,12 @@ const style0$9 = {
2237
2218
  arrow,
2238
2219
  grid
2239
2220
  };
2240
- const cssModules$a = {
2241
- "$style": style0$9
2221
+ const cssModules$8 = {
2222
+ "$style": style0$7
2242
2223
  };
2243
- const PanelDragButton = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__cssModules", cssModules$a]]);
2244
- const _hoisted_1$9 = ["data-node-name", "data-node-placement", "onClick"];
2245
- const _sfc_main$d = /* @__PURE__ */ defineComponent({
2224
+ const PanelDragButton = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__cssModules", cssModules$8]]);
2225
+ const _hoisted_1$4 = ["data-node-name", "data-node-placement", "onClick"];
2226
+ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
2246
2227
  __name: "NDVFloatingNodes",
2247
2228
  props: {
2248
2229
  rootNode: {}
@@ -2367,14 +2348,14 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
2367
2348
  "data-node-placement": connectionGroup,
2368
2349
  onClick: ($event) => emit("switchSelectedNode", node2.name)
2369
2350
  }, [
2370
- createVNode(_sfc_main$l, {
2351
+ createVNode(_sfc_main$g, {
2371
2352
  "node-type": nodeType,
2372
2353
  "node-name": node2.name,
2373
2354
  "tooltip-position": tooltipPositionMapper[connectionGroup],
2374
2355
  size: 35,
2375
2356
  circle: ""
2376
2357
  }, null, 8, ["node-type", "node-name", "tooltip-position"])
2377
- ], 10, _hoisted_1$9)
2358
+ ], 10, _hoisted_1$4)
2378
2359
  ]),
2379
2360
  _: 2
2380
2361
  }, 1032, ["placement"])) : createCommentVNode("", true)
@@ -2393,7 +2374,7 @@ const outputSub = "_outputSub_1tkq5_151";
2393
2374
  const outputMain = "_outputMain_1tkq5_162";
2394
2375
  const inputMain = "_inputMain_1tkq5_162";
2395
2376
  const connectedNode = "_connectedNode_1tkq5_185";
2396
- const style0$8 = {
2377
+ const style0$6 = {
2397
2378
  floatingNodes,
2398
2379
  nodesList,
2399
2380
  inputSub,
@@ -2402,16 +2383,16 @@ const style0$8 = {
2402
2383
  inputMain,
2403
2384
  connectedNode
2404
2385
  };
2405
- const cssModules$9 = {
2406
- "$style": style0$8
2386
+ const cssModules$7 = {
2387
+ "$style": style0$6
2407
2388
  };
2408
- const NDVFloatingNodes = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__cssModules", cssModules$9]]);
2389
+ const NDVFloatingNodes = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__cssModules", cssModules$7]]);
2409
2390
  const SIDE_MARGIN = 24;
2410
2391
  const SIDE_PANELS_MARGIN = 80;
2411
2392
  const MIN_PANEL_WIDTH = 310;
2412
2393
  const PANEL_WIDTH = 350;
2413
2394
  const PANEL_WIDTH_LARGE = 420;
2414
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
2395
+ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
2415
2396
  __name: "NDVDraggablePanels",
2416
2397
  props: {
2417
2398
  isDraggable: { type: Boolean },
@@ -2739,7 +2720,7 @@ const mainPanelInner = "_mainPanelInner_181lg_156";
2739
2720
  const dragging = "_dragging_181lg_163";
2740
2721
  const dragButtonContainer = "_dragButtonContainer_181lg_176";
2741
2722
  const visible = "_visible_181lg_192";
2742
- const style0$7 = {
2723
+ const style0$5 = {
2743
2724
  dataPanel,
2744
2725
  inputPanel,
2745
2726
  outputPanel,
@@ -2751,2506 +2732,10 @@ const style0$7 = {
2751
2732
  dragButtonContainer,
2752
2733
  visible
2753
2734
  };
2754
- const cssModules$8 = {
2755
- "$style": style0$7
2756
- };
2757
- const NDVDraggablePanels = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__cssModules", cssModules$8]]);
2758
- var vueJsonPretty$1 = { exports: {} };
2759
- var vueJsonPretty = vueJsonPretty$1.exports;
2760
- var hasRequiredVueJsonPretty;
2761
- function requireVueJsonPretty() {
2762
- if (hasRequiredVueJsonPretty) return vueJsonPretty$1.exports;
2763
- hasRequiredVueJsonPretty = 1;
2764
- (function(module, exports) {
2765
- !function(e, t) {
2766
- module.exports = t(requireVue());
2767
- }(vueJsonPretty, function(e) {
2768
- return function() {
2769
- var t = { 789: function(t2) {
2770
- t2.exports = e;
2771
- } }, n = {};
2772
- function o(e2) {
2773
- var r2 = n[e2];
2774
- if (void 0 !== r2) return r2.exports;
2775
- var l = n[e2] = { exports: {} };
2776
- return t[e2](l, l.exports, o), l.exports;
2777
- }
2778
- o.d = function(e2, t2) {
2779
- for (var n2 in t2) o.o(t2, n2) && !o.o(e2, n2) && Object.defineProperty(e2, n2, { enumerable: true, get: t2[n2] });
2780
- }, o.o = function(e2, t2) {
2781
- return Object.prototype.hasOwnProperty.call(e2, t2);
2782
- }, o.r = function(e2) {
2783
- "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e2, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e2, "__esModule", { value: true });
2784
- };
2785
- var r = {};
2786
- return function() {
2787
- function e2(e3, t3) {
2788
- (null == t3 || t3 > e3.length) && (t3 = e3.length);
2789
- for (var n3 = 0, o2 = new Array(t3); n3 < t3; n3++) o2[n3] = e3[n3];
2790
- return o2;
2791
- }
2792
- function t2(t3, n3) {
2793
- if (t3) {
2794
- if ("string" == typeof t3) return e2(t3, n3);
2795
- var o2 = Object.prototype.toString.call(t3).slice(8, -1);
2796
- return "Object" === o2 && t3.constructor && (o2 = t3.constructor.name), "Map" === o2 || "Set" === o2 ? Array.from(t3) : "Arguments" === o2 || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o2) ? e2(t3, n3) : void 0;
2797
- }
2798
- }
2799
- function n2(n3) {
2800
- return function(t3) {
2801
- if (Array.isArray(t3)) return e2(t3);
2802
- }(n3) || function(e3) {
2803
- if ("undefined" != typeof Symbol && null != e3[Symbol.iterator] || null != e3["@@iterator"]) return Array.from(e3);
2804
- }(n3) || t2(n3) || function() {
2805
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2806
- }();
2807
- }
2808
- function l(e3, t3, n3) {
2809
- return t3 in e3 ? Object.defineProperty(e3, t3, { value: n3, enumerable: true, configurable: true, writable: true }) : e3[t3] = n3, e3;
2810
- }
2811
- o.r(r), o.d(r, { default: function() {
2812
- return k;
2813
- } });
2814
- var a = o(789), c = (0, a.defineComponent)({ props: { data: { required: true, type: String }, onClick: Function }, render: function() {
2815
- var e3 = this.data, t3 = this.onClick;
2816
- return (0, a.createVNode)("span", { class: "vjs-tree-brackets", onClick: t3 }, [e3]);
2817
- } }), i = (0, a.defineComponent)({ emits: ["change", "update:modelValue"], props: { checked: { type: Boolean, default: false }, isMultiple: Boolean, onChange: Function }, setup: function(e3, t3) {
2818
- var n3 = t3.emit;
2819
- return { uiType: (0, a.computed)(function() {
2820
- return e3.isMultiple ? "checkbox" : "radio";
2821
- }), model: (0, a.computed)({ get: function() {
2822
- return e3.checked;
2823
- }, set: function(e4) {
2824
- return n3("update:modelValue", e4);
2825
- } }) };
2826
- }, render: function() {
2827
- var e3 = this.uiType, t3 = this.model, n3 = this.$emit;
2828
- return (0, a.createVNode)("label", { class: ["vjs-check-controller", t3 ? "is-checked" : ""], onClick: function(e4) {
2829
- return e4.stopPropagation();
2830
- } }, [(0, a.createVNode)("span", { class: "vjs-check-controller-inner is-".concat(e3) }, null), (0, a.createVNode)("input", { checked: t3, class: "vjs-check-controller-original is-".concat(e3), type: e3, onChange: function() {
2831
- return n3("change", t3);
2832
- } }, null)]);
2833
- } }), u = (0, a.defineComponent)({ props: { nodeType: { required: true, type: String }, onClick: Function }, render: function() {
2834
- var e3 = this.nodeType, t3 = this.onClick, n3 = "objectStart" === e3 || "arrayStart" === e3;
2835
- return n3 || "objectCollapsed" === e3 || "arrayCollapsed" === e3 ? (0, a.createVNode)("span", { class: "vjs-carets vjs-carets-".concat(n3 ? "open" : "close"), onClick: t3 }, [(0, a.createVNode)("svg", { viewBox: "0 0 1024 1024", focusable: "false", "data-icon": "caret-down", width: "1em", height: "1em", fill: "currentColor", "aria-hidden": "true" }, [(0, a.createVNode)("path", { d: "M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z" }, null)])]) : null;
2836
- } });
2837
- function d(e3) {
2838
- return d = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e4) {
2839
- return typeof e4;
2840
- } : function(e4) {
2841
- return e4 && "function" == typeof Symbol && e4.constructor === Symbol && e4 !== Symbol.prototype ? "symbol" : typeof e4;
2842
- }, d(e3);
2843
- }
2844
- function s(e3) {
2845
- return Object.prototype.toString.call(e3).slice(8, -1).toLowerCase();
2846
- }
2847
- function p(e3) {
2848
- var t3 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "root", n3 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0, o2 = arguments.length > 3 ? arguments[3] : void 0, r2 = o2 || {}, l2 = r2.key, a2 = r2.index, c2 = r2.type, i2 = void 0 === c2 ? "content" : c2, u2 = r2.showComma, d2 = void 0 !== u2 && u2, f2 = r2.length, y2 = void 0 === f2 ? 1 : f2, v2 = s(e3);
2849
- if ("array" === v2) {
2850
- var b2 = h2(e3.map(function(e4, o3, r3) {
2851
- return p(e4, "".concat(t3, "[").concat(o3, "]"), n3 + 1, { index: o3, showComma: o3 !== r3.length - 1, length: y2, type: i2 });
2852
- }));
2853
- return [p("[", t3, n3, { showComma: false, key: l2, length: e3.length, type: "arrayStart" })[0]].concat(b2, p("]", t3, n3, { showComma: d2, length: e3.length, type: "arrayEnd" })[0]);
2854
- }
2855
- if ("object" === v2) {
2856
- var g2 = Object.keys(e3), m2 = h2(g2.map(function(o3, r3, l3) {
2857
- return p(e3[o3], /^[a-zA-Z_]\w*$/.test(o3) ? "".concat(t3, ".").concat(o3) : "".concat(t3, '["').concat(o3, '"]'), n3 + 1, { key: o3, showComma: r3 !== l3.length - 1, length: y2, type: i2 });
2858
- }));
2859
- return [p("{", t3, n3, { showComma: false, key: l2, index: a2, length: g2.length, type: "objectStart" })[0]].concat(m2, p("}", t3, n3, { showComma: d2, length: g2.length, type: "objectEnd" })[0]);
2860
- }
2861
- return [{ content: e3, level: n3, key: l2, index: a2, path: t3, showComma: d2, length: y2, type: i2 }];
2862
- }
2863
- function h2(e3) {
2864
- if ("function" == typeof Array.prototype.flat) return e3.flat();
2865
- for (var t3 = n2(e3), o2 = []; t3.length; ) {
2866
- var r2 = t3.shift();
2867
- Array.isArray(r2) ? t3.unshift.apply(t3, n2(r2)) : o2.push(r2);
2868
- }
2869
- return o2;
2870
- }
2871
- function f(e3) {
2872
- var t3 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : /* @__PURE__ */ new WeakMap();
2873
- if (null == e3) return e3;
2874
- if (e3 instanceof Date) return new Date(e3);
2875
- if (e3 instanceof RegExp) return new RegExp(e3);
2876
- if ("object" !== d(e3)) return e3;
2877
- if (t3.get(e3)) return t3.get(e3);
2878
- if (Array.isArray(e3)) {
2879
- var n3 = e3.map(function(e4) {
2880
- return f(e4, t3);
2881
- });
2882
- return t3.set(e3, n3), n3;
2883
- }
2884
- var o2 = {};
2885
- for (var r2 in e3) o2[r2] = f(e3[r2], t3);
2886
- return t3.set(e3, o2), o2;
2887
- }
2888
- function y(e3, t3) {
2889
- var n3 = Object.keys(e3);
2890
- if (Object.getOwnPropertySymbols) {
2891
- var o2 = Object.getOwnPropertySymbols(e3);
2892
- t3 && (o2 = o2.filter(function(t4) {
2893
- return Object.getOwnPropertyDescriptor(e3, t4).enumerable;
2894
- })), n3.push.apply(n3, o2);
2895
- }
2896
- return n3;
2897
- }
2898
- function v(e3) {
2899
- for (var t3 = 1; t3 < arguments.length; t3++) {
2900
- var n3 = null != arguments[t3] ? arguments[t3] : {};
2901
- t3 % 2 ? y(Object(n3), true).forEach(function(t4) {
2902
- l(e3, t4, n3[t4]);
2903
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e3, Object.getOwnPropertyDescriptors(n3)) : y(Object(n3)).forEach(function(t4) {
2904
- Object.defineProperty(e3, t4, Object.getOwnPropertyDescriptor(n3, t4));
2905
- });
2906
- }
2907
- return e3;
2908
- }
2909
- var b = { showLength: { type: Boolean, default: false }, showDoubleQuotes: { type: Boolean, default: true }, renderNodeKey: Function, renderNodeValue: Function, selectableType: String, showSelectController: { type: Boolean, default: false }, showLine: { type: Boolean, default: true }, showLineNumber: { type: Boolean, default: false }, selectOnClickNode: { type: Boolean, default: true }, nodeSelectable: { type: Function, default: function() {
2910
- return true;
2911
- } }, highlightSelectedNode: { type: Boolean, default: true }, showIcon: { type: Boolean, default: false }, showKeyValueSpace: { type: Boolean, default: true }, editable: { type: Boolean, default: false }, editableTrigger: { type: String, default: "click" }, onNodeClick: { type: Function }, onBracketsClick: { type: Function }, onIconClick: { type: Function }, onValueChange: { type: Function } }, g = (0, a.defineComponent)({ name: "TreeNode", props: v(v({}, b), {}, { node: { type: Object, required: true }, collapsed: Boolean, checked: Boolean, style: Object, onSelectedChange: { type: Function } }), emits: ["nodeClick", "bracketsClick", "iconClick", "selectedChange", "valueChange"], setup: function(e3, t3) {
2912
- var n3 = t3.emit, o2 = (0, a.computed)(function() {
2913
- return s(e3.node.content);
2914
- }), r2 = (0, a.computed)(function() {
2915
- return "vjs-value vjs-value-".concat(o2.value);
2916
- }), l2 = (0, a.computed)(function() {
2917
- return e3.showDoubleQuotes ? '"'.concat(e3.node.key, '"') : e3.node.key;
2918
- }), d2 = (0, a.computed)(function() {
2919
- return "multiple" === e3.selectableType;
2920
- }), p2 = (0, a.computed)(function() {
2921
- return "single" === e3.selectableType;
2922
- }), h3 = (0, a.computed)(function() {
2923
- return e3.nodeSelectable(e3.node) && (d2.value || p2.value);
2924
- }), f2 = (0, a.reactive)({ editing: false }), y2 = function(t4) {
2925
- var o3, r3, l3 = "null" === (r3 = null === (o3 = t4.target) || void 0 === o3 ? void 0 : o3.value) ? null : "undefined" === r3 ? void 0 : "true" === r3 || "false" !== r3 && (r3[0] + r3[r3.length - 1] === '""' || r3[0] + r3[r3.length - 1] === "''" ? r3.slice(1, -1) : "number" == typeof Number(r3) && !isNaN(Number(r3)) || "NaN" === r3 ? Number(r3) : r3);
2926
- n3("valueChange", l3, e3.node.path);
2927
- }, v2 = (0, a.computed)(function() {
2928
- var t4, n4 = null === (t4 = e3.node) || void 0 === t4 ? void 0 : t4.content;
2929
- return null === n4 ? n4 = "null" : void 0 === n4 && (n4 = "undefined"), "string" === o2.value ? '"'.concat(n4, '"') : n4 + "";
2930
- }), b2 = function() {
2931
- var t4 = e3.renderNodeValue;
2932
- return t4 ? t4({ node: e3.node, defaultValue: v2.value }) : v2.value;
2933
- }, g2 = function() {
2934
- n3("bracketsClick", !e3.collapsed, e3.node.path);
2935
- }, m2 = function() {
2936
- n3("iconClick", !e3.collapsed, e3.node.path);
2937
- }, C2 = function() {
2938
- n3("selectedChange", e3.node);
2939
- }, k2 = function() {
2940
- n3("nodeClick", e3.node), h3.value && e3.selectOnClickNode && n3("selectedChange", e3.node);
2941
- }, w = function(t4) {
2942
- if (e3.editable && !f2.editing) {
2943
- f2.editing = true;
2944
- var n4 = function e4(n5) {
2945
- var o3;
2946
- n5.target !== t4.target && (null === (o3 = n5.target) || void 0 === o3 ? void 0 : o3.parentElement) !== t4.target && (f2.editing = false, document.removeEventListener("click", e4));
2947
- };
2948
- document.removeEventListener("click", n4), document.addEventListener("click", n4);
2949
- }
2950
- };
2951
- return function() {
2952
- var t4, n4 = e3.node;
2953
- return (0, a.createVNode)("div", { class: { "vjs-tree-node": true, "has-selector": e3.showSelectController, "has-carets": e3.showIcon, "is-highlight": e3.highlightSelectedNode && e3.checked }, onClick: k2, style: e3.style }, [e3.showLineNumber && (0, a.createVNode)("span", { class: "vjs-node-index" }, [n4.id + 1]), e3.showSelectController && h3.value && "objectEnd" !== n4.type && "arrayEnd" !== n4.type && (0, a.createVNode)(i, { isMultiple: d2.value, checked: e3.checked, onChange: C2 }, null), (0, a.createVNode)("div", { class: "vjs-indent" }, [Array.from(Array(n4.level)).map(function(t5, n5) {
2954
- return (0, a.createVNode)("div", { key: n5, class: { "vjs-indent-unit": true, "has-line": e3.showLine } }, null);
2955
- }), e3.showIcon && (0, a.createVNode)(u, { nodeType: n4.type, onClick: m2 }, null)]), n4.key && (0, a.createVNode)("span", { class: "vjs-key" }, [(t4 = e3.renderNodeKey, t4 ? t4({ node: e3.node, defaultKey: l2.value || "" }) : l2.value), (0, a.createVNode)("span", { class: "vjs-colon" }, [":".concat(e3.showKeyValueSpace ? " " : "")])]), (0, a.createVNode)("span", null, ["content" !== n4.type && n4.content ? (0, a.createVNode)(c, { data: n4.content.toString(), onClick: g2 }, null) : (0, a.createVNode)("span", { class: r2.value, onClick: !e3.editable || e3.editableTrigger && "click" !== e3.editableTrigger ? void 0 : w, onDblclick: e3.editable && "dblclick" === e3.editableTrigger ? w : void 0 }, [e3.editable && f2.editing ? (0, a.createVNode)("input", { value: v2.value, onChange: y2, style: { padding: "3px 8px", border: "1px solid #eee", boxShadow: "none", boxSizing: "border-box", borderRadius: 5, fontFamily: "inherit" } }, null) : b2()]), n4.showComma && (0, a.createVNode)("span", null, [","]), e3.showLength && e3.collapsed && (0, a.createVNode)("span", { class: "vjs-comment" }, [(0, a.createTextVNode)(" // "), n4.length, (0, a.createTextVNode)(" items ")])])]);
2956
- };
2957
- } });
2958
- function m(e3, t3) {
2959
- var n3 = Object.keys(e3);
2960
- if (Object.getOwnPropertySymbols) {
2961
- var o2 = Object.getOwnPropertySymbols(e3);
2962
- t3 && (o2 = o2.filter(function(t4) {
2963
- return Object.getOwnPropertyDescriptor(e3, t4).enumerable;
2964
- })), n3.push.apply(n3, o2);
2965
- }
2966
- return n3;
2967
- }
2968
- function C(e3) {
2969
- for (var t3 = 1; t3 < arguments.length; t3++) {
2970
- var n3 = null != arguments[t3] ? arguments[t3] : {};
2971
- t3 % 2 ? m(Object(n3), true).forEach(function(t4) {
2972
- l(e3, t4, n3[t4]);
2973
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e3, Object.getOwnPropertyDescriptors(n3)) : m(Object(n3)).forEach(function(t4) {
2974
- Object.defineProperty(e3, t4, Object.getOwnPropertyDescriptor(n3, t4));
2975
- });
2976
- }
2977
- return e3;
2978
- }
2979
- var k = (0, a.defineComponent)({ name: "Tree", props: C(C({}, b), {}, { data: { type: [String, Number, Boolean, Array, Object], default: null }, deep: { type: Number, default: 1 / 0 }, pathCollapsible: { type: Function, default: function() {
2980
- return false;
2981
- } }, rootPath: { type: String, default: "root" }, virtual: { type: Boolean, default: false }, height: { type: Number, default: 400 }, itemHeight: { type: Number, default: 20 }, selectedValue: { type: [String, Array], default: function() {
2982
- return "";
2983
- } }, collapsedOnClickBrackets: { type: Boolean, default: true }, style: Object, onSelectedChange: { type: Function } }), slots: ["renderNodeKey", "renderNodeValue"], emits: ["nodeClick", "bracketsClick", "iconClick", "selectedChange", "update:selectedValue", "update:data"], setup: function(e3, o2) {
2984
- var r2 = o2.emit, c2 = o2.slots, i2 = (0, a.ref)(), u2 = (0, a.computed)(function() {
2985
- return p(e3.data, e3.rootPath);
2986
- }), d2 = function(t3) {
2987
- return u2.value.reduce(function(n3, o3) {
2988
- var r3, a2 = o3.level >= t3, c3 = null === (r3 = e3.pathCollapsible) || void 0 === r3 ? void 0 : r3.call(e3, o3);
2989
- return "objectStart" !== o3.type && "arrayStart" !== o3.type || !a2 && !c3 ? n3 : C(C({}, n3), {}, l({}, o3.path, 1));
2990
- }, {});
2991
- }, s2 = (0, a.reactive)({ translateY: 0, visibleData: null, hiddenPaths: d2(e3.deep) }), h3 = (0, a.computed)(function() {
2992
- for (var e4 = null, t3 = [], n3 = u2.value.length, o3 = 0; o3 < n3; o3++) {
2993
- var r3 = C(C({}, u2.value[o3]), {}, { id: o3 }), l2 = s2.hiddenPaths[r3.path];
2994
- if (e4 && e4.path === r3.path) {
2995
- var a2 = "objectStart" === e4.type, c3 = C(C(C({}, r3), e4), {}, { showComma: r3.showComma, content: a2 ? "{...}" : "[...]", type: a2 ? "objectCollapsed" : "arrayCollapsed" });
2996
- e4 = null, t3.push(c3);
2997
- } else {
2998
- if (l2 && !e4) {
2999
- e4 = r3;
3000
- continue;
3001
- }
3002
- if (e4) continue;
3003
- t3.push(r3);
3004
- }
3005
- }
3006
- return t3;
3007
- }), y2 = (0, a.computed)(function() {
3008
- var t3 = e3.selectedValue;
3009
- return t3 && "multiple" === e3.selectableType && Array.isArray(t3) ? t3 : [t3];
3010
- }), v2 = (0, a.computed)(function() {
3011
- return !e3.selectableType || e3.selectOnClickNode || e3.showSelectController ? "" : "When selectableType is not null, selectOnClickNode and showSelectController cannot be false at the same time, because this will cause the selection to fail.";
3012
- }), b2 = function() {
3013
- var t3 = h3.value;
3014
- if (e3.virtual) {
3015
- var n3, o3 = e3.height / e3.itemHeight, r3 = (null === (n3 = i2.value) || void 0 === n3 ? void 0 : n3.scrollTop) || 0, l2 = Math.floor(r3 / e3.itemHeight), a2 = l2 < 0 ? 0 : l2 + o3 > t3.length ? t3.length - o3 : l2;
3016
- a2 < 0 && (a2 = 0);
3017
- var c3 = a2 + o3;
3018
- s2.translateY = a2 * e3.itemHeight, s2.visibleData = t3.filter(function(e4, t4) {
3019
- return t4 >= a2 && t4 < c3;
3020
- });
3021
- } else s2.visibleData = t3;
3022
- }, m2 = function() {
3023
- b2();
3024
- }, k2 = function(o3) {
3025
- var l2, a2, c3 = o3.path, i3 = e3.selectableType;
3026
- if ("multiple" === i3) {
3027
- var u3 = y2.value.findIndex(function(e4) {
3028
- return e4 === c3;
3029
- }), d3 = n2(y2.value);
3030
- -1 !== u3 ? d3.splice(u3, 1) : d3.push(c3), r2("update:selectedValue", d3), r2("selectedChange", d3, n2(y2.value));
3031
- } else if ("single" === i3 && y2.value[0] !== c3) {
3032
- var s3 = (l2 = y2.value, a2 = 1, function(e4) {
3033
- if (Array.isArray(e4)) return e4;
3034
- }(l2) || function(e4, t3) {
3035
- var n3 = null == e4 ? null : "undefined" != typeof Symbol && e4[Symbol.iterator] || e4["@@iterator"];
3036
- if (null != n3) {
3037
- var o4, r3, l3 = [], a3 = true, c4 = false;
3038
- try {
3039
- for (n3 = n3.call(e4); !(a3 = (o4 = n3.next()).done) && (l3.push(o4.value), !t3 || l3.length !== t3); a3 = true) ;
3040
- } catch (e5) {
3041
- c4 = true, r3 = e5;
3042
- } finally {
3043
- try {
3044
- a3 || null == n3.return || n3.return();
3045
- } finally {
3046
- if (c4) throw r3;
3047
- }
3048
- }
3049
- return l3;
3050
- }
3051
- }(l2, a2) || t2(l2, a2) || function() {
3052
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
3053
- }())[0], p2 = c3;
3054
- r2("update:selectedValue", p2), r2("selectedChange", p2, s3);
3055
- }
3056
- }, w = function(e4) {
3057
- r2("nodeClick", e4);
3058
- }, N = function(e4, t3) {
3059
- if (e4) s2.hiddenPaths = C(C({}, s2.hiddenPaths), {}, l({}, t3, 1));
3060
- else {
3061
- var n3 = C({}, s2.hiddenPaths);
3062
- delete n3[t3], s2.hiddenPaths = n3;
3063
- }
3064
- }, j = function(t3, n3) {
3065
- e3.collapsedOnClickBrackets && N(t3, n3), r2("bracketsClick", t3);
3066
- }, S = function(e4, t3) {
3067
- N(e4, t3), r2("iconClick", e4);
3068
- }, O = function(t3, n3) {
3069
- var o3 = f(e3.data), l2 = e3.rootPath;
3070
- new Function("data", "val", "data".concat(n3.slice(l2.length), "=val"))(o3, t3), r2("update:data", o3);
3071
- };
3072
- return (0, a.watchEffect)(function() {
3073
- v2.value && function(e4) {
3074
- throw new Error("[VueJSONPretty] ".concat(e4));
3075
- }(v2.value);
3076
- }), (0, a.watchEffect)(function() {
3077
- h3.value && b2();
3078
- }), (0, a.watch)(function() {
3079
- return e3.deep;
3080
- }, function(e4) {
3081
- e4 && (s2.hiddenPaths = d2(e4));
3082
- }), function() {
3083
- var t3, n3, o3 = null !== (t3 = e3.renderNodeKey) && void 0 !== t3 ? t3 : c2.renderNodeKey, r3 = null !== (n3 = e3.renderNodeValue) && void 0 !== n3 ? n3 : c2.renderNodeValue, l2 = s2.visibleData && s2.visibleData.map(function(t4) {
3084
- return (0, a.createVNode)(g, { key: t4.id, node: t4, collapsed: !!s2.hiddenPaths[t4.path], showDoubleQuotes: e3.showDoubleQuotes, showLength: e3.showLength, checked: y2.value.includes(t4.path), selectableType: e3.selectableType, showLine: e3.showLine, showLineNumber: e3.showLineNumber, showSelectController: e3.showSelectController, selectOnClickNode: e3.selectOnClickNode, nodeSelectable: e3.nodeSelectable, highlightSelectedNode: e3.highlightSelectedNode, editable: e3.editable, editableTrigger: e3.editableTrigger, showIcon: e3.showIcon, showKeyValueSpace: e3.showKeyValueSpace, renderNodeKey: o3, renderNodeValue: r3, onNodeClick: w, onBracketsClick: j, onIconClick: S, onSelectedChange: k2, onValueChange: O, style: e3.itemHeight && 20 !== e3.itemHeight ? { lineHeight: "".concat(e3.itemHeight, "px") } : {} }, null);
3085
- });
3086
- return (0, a.createVNode)("div", { ref: i2, class: { "vjs-tree": true, "is-virtual": e3.virtual }, onScroll: e3.virtual ? m2 : void 0, style: e3.showLineNumber ? C({ paddingLeft: "".concat(12 * Number(u2.value.length.toString().length), "px") }, e3.style) : e3.style }, [e3.virtual ? (0, a.createVNode)("div", { class: "vjs-tree-list", style: { height: "".concat(e3.height, "px") } }, [(0, a.createVNode)("div", { class: "vjs-tree-list-holder", style: { height: "".concat(h3.value.length * e3.itemHeight, "px") } }, [(0, a.createVNode)("div", { class: "vjs-tree-list-holder-inner", style: { transform: "translateY(".concat(s2.translateY, "px)") } }, [l2])])]) : l2]);
3087
- };
3088
- } });
3089
- }(), r;
3090
- }();
3091
- });
3092
- })(vueJsonPretty$1);
3093
- return vueJsonPretty$1.exports;
3094
- }
3095
- var vueJsonPrettyExports = requireVueJsonPretty();
3096
- const VueJsonPretty = /* @__PURE__ */ getDefaultExportFromCjs(vueJsonPrettyExports);
3097
- const sanitizeOptions = {
3098
- allowVulnerableTags: false,
3099
- enforceHtmlBoundary: false,
3100
- disallowedTagsMode: "discard",
3101
- allowedTags: [...sanitizeHtmlExports.defaults.allowedTags, "style", "img", "title"],
3102
- allowedAttributes: {
3103
- ...sanitizeHtmlExports.defaults.allowedAttributes,
3104
- "*": ["class", "style"]
3105
- },
3106
- transformTags: {
3107
- head: ""
3108
- }
3109
- };
3110
- const _sfc_main$b = {
3111
- name: "RunDataHtml",
3112
- props: {
3113
- inputHtml: {
3114
- type: String,
3115
- required: true
3116
- }
3117
- },
3118
- computed: {
3119
- sanitizedHtml() {
3120
- return sanitizeHtml(this.inputHtml, sanitizeOptions);
3121
- }
3122
- }
3123
- };
3124
- const _hoisted_1$8 = ["srcdoc"];
3125
- function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
3126
- return openBlock(), createElementBlock("iframe", {
3127
- class: "__html-display",
3128
- srcdoc: $options.sanitizedHtml
3129
- }, null, 8, _hoisted_1$8);
3130
- }
3131
- const RunDataHtml = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$1]]);
3132
- const RunDataHtml$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3133
- __proto__: null,
3134
- default: RunDataHtml
3135
- }, Symbol.toStringTag, { value: "Module" }));
3136
- const _hoisted_1$7 = { key: 0 };
3137
- const _hoisted_2$4 = { key: 1 };
3138
- const _hoisted_3$3 = { key: 2 };
3139
- const _hoisted_4$3 = {
3140
- key: 0,
3141
- controls: "",
3142
- autoplay: ""
3143
- };
3144
- const _hoisted_5$3 = ["src", "type"];
3145
- const _hoisted_6$2 = {
3146
- key: 1,
3147
- controls: "",
3148
- autoplay: ""
3149
- };
3150
- const _hoisted_7$2 = ["src", "type"];
3151
- const _hoisted_8$2 = ["src"];
3152
- const _hoisted_9$1 = ["src"];
3153
- const _sfc_main$a = /* @__PURE__ */ defineComponent({
3154
- __name: "BinaryDataDisplayEmbed",
3155
- props: {
3156
- binaryData: {}
3157
- },
3158
- setup(__props) {
3159
- const props = __props;
3160
- const isLoading = ref(true);
3161
- const embedSource = ref("");
3162
- const error = ref(false);
3163
- const data = ref("");
3164
- const workflowsStore = useWorkflowsStore();
3165
- const i18n = useI18n();
3166
- const embedClass = computed(() => {
3167
- return [props.binaryData.fileType ?? "other"];
3168
- });
3169
- onMounted(async () => {
3170
- const { id, data: binaryData, fileName, fileType, mimeType } = props.binaryData;
3171
- const isJSONData = fileType === "json";
3172
- const isHTMLData = fileType === "html";
3173
- if (!id) {
3174
- if (isJSONData || isHTMLData) {
3175
- data.value = jsonParse(atob(binaryData));
3176
- } else {
3177
- embedSource.value = "data:" + mimeType + ";base64," + binaryData;
3178
- }
3179
- } else {
3180
- try {
3181
- const binaryUrl = workflowsStore.getBinaryUrl(id, "view", fileName ?? "", mimeType);
3182
- if (isJSONData || isHTMLData) {
3183
- const fetchedData = await fetch(binaryUrl, { credentials: "include" });
3184
- data.value = await (isJSONData ? fetchedData.json() : fetchedData.text());
3185
- } else {
3186
- embedSource.value = binaryUrl;
3187
- }
3188
- } catch (e) {
3189
- error.value = true;
3190
- }
3191
- }
3192
- isLoading.value = false;
3193
- });
3194
- return (_ctx, _cache) => {
3195
- return openBlock(), createElementBlock("span", null, [
3196
- isLoading.value ? (openBlock(), createElementBlock("div", _hoisted_1$7, "Loading binary data...")) : error.value ? (openBlock(), createElementBlock("div", _hoisted_2$4, "Error loading binary data")) : (openBlock(), createElementBlock("span", _hoisted_3$3, [
3197
- _ctx.binaryData.fileType === "video" ? (openBlock(), createElementBlock("video", _hoisted_4$3, [
3198
- createBaseVNode("source", {
3199
- src: embedSource.value,
3200
- type: _ctx.binaryData.mimeType
3201
- }, null, 8, _hoisted_5$3),
3202
- createTextVNode(" " + toDisplayString(unref(i18n).baseText("binaryDataDisplay.yourBrowserDoesNotSupport")), 1)
3203
- ])) : _ctx.binaryData.fileType === "audio" ? (openBlock(), createElementBlock("audio", _hoisted_6$2, [
3204
- createBaseVNode("source", {
3205
- src: embedSource.value,
3206
- type: _ctx.binaryData.mimeType
3207
- }, null, 8, _hoisted_7$2),
3208
- createTextVNode(" " + toDisplayString(unref(i18n).baseText("binaryDataDisplay.yourBrowserDoesNotSupport")), 1)
3209
- ])) : _ctx.binaryData.fileType === "image" ? (openBlock(), createElementBlock("img", {
3210
- key: 2,
3211
- src: embedSource.value
3212
- }, null, 8, _hoisted_8$2)) : _ctx.binaryData.fileType === "json" ? (openBlock(), createBlock(unref(VueJsonPretty), {
3213
- key: 3,
3214
- data: data.value,
3215
- deep: 3,
3216
- "show-length": true
3217
- }, null, 8, ["data"])) : _ctx.binaryData.fileType === "html" ? (openBlock(), createBlock(RunDataHtml, {
3218
- key: 4,
3219
- "input-html": data.value
3220
- }, null, 8, ["input-html"])) : (openBlock(), createElementBlock("embed", {
3221
- key: 5,
3222
- src: embedSource.value,
3223
- class: normalizeClass(["binary-data", embedClass.value])
3224
- }, null, 10, _hoisted_9$1))
3225
- ]))
3226
- ]);
3227
- };
3228
- }
3229
- });
3230
- const _hoisted_1$6 = { class: "binary-data-window-wrapper" };
3231
- const _hoisted_2$3 = { key: 0 };
3232
- const _sfc_main$9 = /* @__PURE__ */ defineComponent({
3233
- __name: "BinaryDataDisplay",
3234
- props: {
3235
- displayData: {},
3236
- windowVisible: { type: Boolean }
3237
- },
3238
- emits: ["close"],
3239
- setup(__props, { emit: __emit }) {
3240
- const props = __props;
3241
- const emit = __emit;
3242
- const nodeHelpers = useNodeHelpers();
3243
- const workflowsStore = useWorkflowsStore();
3244
- const i18n = useI18n();
3245
- const workflowRunData = computed(() => {
3246
- const workflowExecution = workflowsStore.getWorkflowExecution;
3247
- if (workflowExecution === null) {
3248
- return null;
3249
- }
3250
- const executionData = workflowExecution.data;
3251
- return executionData ? executionData.resultData.runData : null;
3252
- });
3253
- const binaryData = computed(() => {
3254
- if (typeof props.displayData.node !== "string" || typeof props.displayData.key !== "string" || typeof props.displayData.runIndex !== "number" || typeof props.displayData.index !== "number" || typeof props.displayData.outputIndex !== "number") {
3255
- return null;
3256
- }
3257
- const binaryDataLocal = nodeHelpers.getBinaryData(
3258
- workflowRunData.value,
3259
- props.displayData.node,
3260
- props.displayData.runIndex,
3261
- props.displayData.outputIndex
3262
- );
3263
- if (binaryDataLocal.length === 0) {
3264
- return null;
3265
- }
3266
- if (props.displayData.index >= binaryDataLocal.length || binaryDataLocal[props.displayData.index][props.displayData.key] === void 0) {
3267
- return null;
3268
- }
3269
- const binaryDataItem = binaryDataLocal[props.displayData.index][props.displayData.key];
3270
- return binaryDataItem;
3271
- });
3272
- function closeWindow() {
3273
- emit("close");
3274
- return false;
3275
- }
3276
- return (_ctx, _cache) => {
3277
- const _component_n8n_button = resolveComponent("n8n-button");
3278
- return _ctx.windowVisible ? (openBlock(), createElementBlock("div", {
3279
- key: 0,
3280
- class: normalizeClass(["binary-data-window", binaryData.value?.fileType])
3281
- }, [
3282
- createVNode(_component_n8n_button, {
3283
- size: "small",
3284
- class: "binary-data-window-back",
3285
- title: unref(i18n).baseText("binaryDataDisplay.backToOverviewPage"),
3286
- icon: "arrow-left",
3287
- label: unref(i18n).baseText("binaryDataDisplay.backToList"),
3288
- onClick: withModifiers(closeWindow, ["stop"])
3289
- }, null, 8, ["title", "label"]),
3290
- createBaseVNode("div", _hoisted_1$6, [
3291
- !binaryData.value ? (openBlock(), createElementBlock("div", _hoisted_2$3, toDisplayString(unref(i18n).baseText("binaryDataDisplay.noDataFoundToDisplay")), 1)) : (openBlock(), createBlock(_sfc_main$a, {
3292
- key: 1,
3293
- "binary-data": binaryData.value
3294
- }, null, 8, ["binary-data"]))
3295
- ])
3296
- ], 2)) : createCommentVNode("", true);
3297
- };
3298
- }
3299
- });
3300
- const _hoisted_1$5 = { key: 0 };
3301
- const _hoisted_2$2 = { key: 1 };
3302
- const _hoisted_3$2 = { key: 2 };
3303
- const _hoisted_4$2 = { key: 0 };
3304
- const _hoisted_5$2 = { key: 1 };
3305
- const _sfc_main$8 = /* @__PURE__ */ defineComponent({
3306
- __name: "RunDataPinButton",
3307
- props: {
3308
- tooltipContentsVisibility: {},
3309
- dataPinningDocsUrl: {},
3310
- pinnedData: {},
3311
- disabled: { type: Boolean }
3312
- },
3313
- emits: ["togglePinData"],
3314
- setup(__props, { emit: __emit }) {
3315
- const locale = useI18n();
3316
- const props = __props;
3317
- const emit = __emit;
3318
- const visible2 = computed(
3319
- () => props.tooltipContentsVisibility.pinDataDiscoveryTooltipContent ? true : void 0
3320
- );
3321
- return (_ctx, _cache) => {
3322
- return openBlock(), createBlock(unref(N8nTooltip), {
3323
- placement: "bottom-end",
3324
- visible: visible2.value
3325
- }, {
3326
- content: withCtx(() => [
3327
- props.tooltipContentsVisibility.binaryDataTooltipContent ? (openBlock(), createElementBlock("div", _hoisted_1$5, toDisplayString(unref(locale).baseText("ndv.pinData.pin.binary")), 1)) : props.tooltipContentsVisibility.pinDataDiscoveryTooltipContent ? (openBlock(), createElementBlock("div", _hoisted_2$2, toDisplayString(unref(locale).baseText("node.discovery.pinData.ndv")), 1)) : (openBlock(), createElementBlock("div", _hoisted_3$2, [
3328
- _ctx.pinnedData.hasData.value ? (openBlock(), createElementBlock("div", _hoisted_4$2, [
3329
- createBaseVNode("strong", null, toDisplayString(unref(locale).baseText("ndv.pinData.unpin.title")), 1)
3330
- ])) : (openBlock(), createElementBlock("div", _hoisted_5$2, [
3331
- createBaseVNode("strong", null, toDisplayString(unref(locale).baseText("ndv.pinData.pin.title")), 1),
3332
- createVNode(unref(N8nText), {
3333
- size: "small",
3334
- tag: "p"
3335
- }, {
3336
- default: withCtx(() => [
3337
- createTextVNode(toDisplayString(unref(locale).baseText("ndv.pinData.pin.description")) + " ", 1),
3338
- createVNode(unref(N8nLink), {
3339
- to: props.dataPinningDocsUrl,
3340
- size: "small"
3341
- }, {
3342
- default: withCtx(() => [
3343
- createTextVNode(toDisplayString(unref(locale).baseText("ndv.pinData.pin.link")), 1)
3344
- ]),
3345
- _: 1
3346
- }, 8, ["to"])
3347
- ]),
3348
- _: 1
3349
- })
3350
- ]))
3351
- ]))
3352
- ]),
3353
- default: withCtx(() => [
3354
- createVNode(unref(_sfc_main$o), {
3355
- class: normalizeClass(_ctx.$style.pinDataButton),
3356
- type: "tertiary",
3357
- active: props.pinnedData.hasData.value,
3358
- icon: "thumbtack",
3359
- disabled: props.disabled,
3360
- "data-test-id": "ndv-pin-data",
3361
- onClick: _cache[0] || (_cache[0] = ($event) => emit("togglePinData"))
3362
- }, null, 8, ["class", "active", "disabled"])
3363
- ]),
3364
- _: 1
3365
- }, 8, ["visible"]);
3366
- };
3367
- }
3368
- });
3369
- const pinDataButton = "_pinDataButton_12tk2_123";
3370
- const style0$6 = {
3371
- pinDataButton
3372
- };
3373
- const cssModules$7 = {
3374
- "$style": style0$6
3375
- };
3376
- const RunDataPinButton = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__cssModules", cssModules$7]]);
3377
- const _hoisted_1$4 = {
3378
- key: 0,
3379
- class: "ml-4xs"
3380
- };
3381
- const _hoisted_2$1 = { key: 0 };
3382
- const _hoisted_3$1 = { key: 1 };
3383
- const _hoisted_4$1 = { key: 0 };
3384
- const _hoisted_5$1 = ["data-test-id"];
3385
- const _hoisted_6$1 = { key: 0 };
3386
- const _hoisted_7$1 = { key: 1 };
3387
- const _hoisted_8$1 = { key: 2 };
3388
- const _hoisted_9 = { key: 3 };
3389
- const _hoisted_10 = { key: 4 };
3390
- const _sfc_main$7 = /* @__PURE__ */ defineComponent({
3391
- __name: "RunData",
3392
- props: {
3393
- workflow: {},
3394
- runIndex: {},
3395
- tooMuchDataTitle: {},
3396
- executingMessage: {},
3397
- pushRef: {},
3398
- paneType: {},
3399
- noDataInBranchMessage: {},
3400
- node: { default: null },
3401
- nodes: { default: () => [] },
3402
- linkedRuns: { type: Boolean },
3403
- canLinkRuns: { type: Boolean },
3404
- isExecuting: { type: Boolean, default: false },
3405
- overrideOutputs: { default: void 0 },
3406
- mappingEnabled: { type: Boolean, default: false },
3407
- distanceFromActive: { default: 0 },
3408
- blockUI: { type: Boolean, default: false },
3409
- isProductionExecutionPreview: { type: Boolean, default: false },
3410
- isPaneActive: { type: Boolean, default: false },
3411
- hidePagination: { type: Boolean, default: false },
3412
- calloutMessage: { default: void 0 }
3413
- },
3414
- emits: ["search", "runChange", "itemHover", "linkRun", "unlinkRun", "activatePane", "tableMounted"],
3415
- setup(__props, { expose: __expose, emit: __emit }) {
3416
- const LazyRunDataTable = defineAsyncComponent(
3417
- async () => await __vitePreload(() => import("./RunDataTable-DEgXQifj.js"), true ? __vite__mapDeps([0,1,2,3,4,5]) : void 0)
3418
- );
3419
- const LazyRunDataJson = defineAsyncComponent(
3420
- async () => await __vitePreload(() => import("./RunDataJson-BRO48N-i.js"), true ? __vite__mapDeps([6,1,2,7,8,9,10,3,4,11,12,13]) : void 0)
3421
- );
3422
- const LazyRunDataSchema = defineAsyncComponent(
3423
- async () => await __vitePreload(() => import("./index-CN4JmOoA.js").then((n) => n.iq), true ? __vite__mapDeps([1,2]) : void 0)
3424
- );
3425
- const LazyRunDataHtml = defineAsyncComponent(
3426
- async () => await __vitePreload(() => Promise.resolve().then(() => RunDataHtml$1), true ? void 0 : void 0)
3427
- );
3428
- const LazyRunDataSearch = defineAsyncComponent(
3429
- async () => await __vitePreload(() => import("./RunDataSearch-CNfhlvrK.js"), true ? __vite__mapDeps([14,1,2,15]) : void 0)
3430
- );
3431
- const props = __props;
3432
- const emit = __emit;
3433
- const connectionType2 = ref(NodeConnectionTypes.Main);
3434
- const dataSize = ref(0);
3435
- const showData = ref(false);
3436
- const userEnabledShowData = ref(false);
3437
- const outputIndex = ref(0);
3438
- const binaryDataDisplayVisible = ref(false);
3439
- const binaryDataDisplayData = ref(null);
3440
- const currentPage = ref(1);
3441
- const pageSize = ref(10);
3442
- const pageSizes = [1, 10, 25, 50, 100];
3443
- const pinDataDiscoveryTooltipVisible = ref(false);
3444
- const isControlledPinDataTooltip = ref(false);
3445
- const search2 = ref("");
3446
- const dataContainerRef = ref();
3447
- const nodeTypesStore = useNodeTypesStore();
3448
- const ndvStore = useNDVStore();
3449
- const workflowsStore = useWorkflowsStore();
3450
- const sourceControlStore = useSourceControlStore();
3451
- const rootStore = useRootStore();
3452
- const uiStore = useUIStore();
3453
- const schemaPreviewStore = useSchemaPreviewStore();
3454
- const posthogStore = usePostHog();
3455
- const toast = useToast();
3456
- const route = useRoute();
3457
- const nodeHelpers = useNodeHelpers();
3458
- const externalHooks = useExternalHooks();
3459
- const telemetry = useTelemetry();
3460
- const i18n = useI18n();
3461
- const node2 = toRef$1(props, "node");
3462
- const pinnedData = usePinnedData(node2, {
3463
- runIndex: props.runIndex,
3464
- displayMode: props.paneType === "input" ? ndvStore.inputPanelDisplayMode : ndvStore.outputPanelDisplayMode
3465
- });
3466
- const { isSubNodeType } = useNodeType({
3467
- node: node2
3468
- });
3469
- const displayMode = computed(
3470
- () => props.paneType === "input" ? ndvStore.inputPanelDisplayMode : ndvStore.outputPanelDisplayMode
3471
- );
3472
- const isReadOnlyRoute = computed(() => route.meta.readOnlyCanvas === true);
3473
- const isWaitNodeWaiting = computed(() => {
3474
- return node2.value?.name && workflowExecution.value?.data?.resultData?.runData?.[node2.value?.name]?.[props.runIndex]?.executionStatus === "waiting";
3475
- });
3476
- const { activeNode } = storeToRefs(ndvStore);
3477
- const nodeType = computed(() => {
3478
- if (!node2.value) return null;
3479
- return nodeTypesStore.getNodeType(node2.value.type, node2.value.typeVersion);
3480
- });
3481
- const isSchemaView = computed(() => displayMode.value === "schema");
3482
- const isSearchInSchemaView = computed(() => isSchemaView.value && !!search2.value);
3483
- const displaysMultipleNodes = computed(
3484
- () => isSchemaView.value && props.paneType === "input" && props.nodes.length > 0
3485
- );
3486
- const isTriggerNode = computed(() => !!node2.value && nodeTypesStore.isTriggerNode(node2.value.type));
3487
- const canPinData = computed(
3488
- () => !!node2.value && pinnedData.canPinNode(false, currentOutputIndex.value) && !isPaneTypeInput.value && pinnedData.isValidNodeType.value && !(binaryData.value && binaryData.value.length > 0)
3489
- );
3490
- const displayModes2 = computed(() => {
3491
- const defaults = [
3492
- { label: i18n.baseText("runData.table"), value: "table" },
3493
- { label: i18n.baseText("runData.json"), value: "json" }
3494
- ];
3495
- if (binaryData.value.length) {
3496
- defaults.push({ label: i18n.baseText("runData.binary"), value: "binary" });
3497
- }
3498
- const schemaView = { label: i18n.baseText("runData.schema"), value: "schema" };
3499
- if (isPaneTypeInput.value) {
3500
- defaults.unshift(schemaView);
3501
- } else {
3502
- defaults.push(schemaView);
3503
- }
3504
- if (isPaneTypeOutput.value && activeNode.value?.type === HTML_NODE_TYPE && activeNode.value.parameters.operation === "generateHtmlTemplate") {
3505
- defaults.unshift({ label: "HTML", value: "html" });
3506
- }
3507
- return defaults;
3508
- });
3509
- const hasNodeRun = computed(
3510
- () => Boolean(
3511
- !props.isExecuting && node2.value && (workflowRunData.value && workflowRunData.value.hasOwnProperty(node2.value.name) || pinnedData.hasData.value)
3512
- )
3513
- );
3514
- const isArtificialRecoveredEventItem = computed(
3515
- () => rawInputData.value?.[0]?.json?.isArtificialRecoveredEventItem
3516
- );
3517
- const isTrimmedManualExecutionDataItem = computed(
3518
- () => rawInputData.value?.[0]?.json?.[TRIMMED_TASK_DATA_CONNECTIONS_KEY]
3519
- );
3520
- const subworkflowExecutionError = computed(() => {
3521
- if (!node2.value) return null;
3522
- return {
3523
- node: node2.value,
3524
- messages: [workflowsStore.subWorkflowExecutionError?.message ?? ""]
3525
- };
3526
- });
3527
- const hasSubworkflowExecutionError = computed(
3528
- () => Boolean(workflowsStore.subWorkflowExecutionError)
3529
- );
3530
- const parentNodeError = computed(() => {
3531
- const parentNode = props.workflow.getChildNodes(node2.value?.name ?? "", "ALL_NON_MAIN")[0];
3532
- return workflowRunData.value?.[parentNode]?.[props.runIndex]?.error;
3533
- });
3534
- const workflowRunErrorAsNodeError = computed(() => {
3535
- if (!node2.value) {
3536
- return null;
3537
- }
3538
- if (isSubNodeType.value && props.paneType === "input") {
3539
- return parentNodeError.value;
3540
- }
3541
- return workflowRunData.value?.[node2.value?.name]?.[props.runIndex]?.error;
3542
- });
3543
- const hasRunError = computed(() => Boolean(node2.value && workflowRunErrorAsNodeError.value));
3544
- const executionHints = computed(() => {
3545
- if (hasNodeRun.value) {
3546
- const hints = node2.value && workflowRunData.value?.[node2.value.name]?.[props.runIndex]?.hints;
3547
- if (hints) return hints;
3548
- }
3549
- return [];
3550
- });
3551
- const workflowExecution = computed(() => workflowsStore.getWorkflowExecution);
3552
- const workflowRunData = computed(() => {
3553
- if (workflowExecution.value === null) {
3554
- return null;
3555
- }
3556
- const executionData = workflowExecution.value.data;
3557
- if (executionData?.resultData) {
3558
- return executionData.resultData.runData;
3559
- }
3560
- return null;
3561
- });
3562
- const dataCount = computed(
3563
- () => getDataCount(props.runIndex, currentOutputIndex.value, connectionType2.value)
3564
- );
3565
- const unfilteredDataCount = computed(
3566
- () => pinnedData.data.value ? pinnedData.data.value.length : rawInputData.value.length
3567
- );
3568
- const dataSizeInMB = computed(() => (dataSize.value / (1024 * 1024)).toFixed(1));
3569
- const maxOutputIndex = computed(() => {
3570
- if (node2.value === null || props.runIndex === void 0) {
3571
- return 0;
3572
- }
3573
- const runData = workflowRunData.value;
3574
- if (runData === null || !runData.hasOwnProperty(node2.value.name)) {
3575
- return 0;
3576
- }
3577
- if (runData[node2.value.name].length < props.runIndex) {
3578
- return 0;
3579
- }
3580
- if (runData[node2.value.name][props.runIndex]) {
3581
- const taskData = runData[node2.value.name][props.runIndex].data;
3582
- if (taskData?.main) {
3583
- return taskData.main.length - 1;
3584
- }
3585
- }
3586
- return 0;
3587
- });
3588
- const currentPageOffset = computed(() => pageSize.value * (currentPage.value - 1));
3589
- const maxRunIndex = computed(() => {
3590
- if (!node2.value) {
3591
- return 0;
3592
- }
3593
- const runData = workflowRunData.value;
3594
- if (runData === null || !runData.hasOwnProperty(node2.value.name)) {
3595
- return 0;
3596
- }
3597
- if (runData[node2.value.name].length) {
3598
- return runData[node2.value.name].length - 1;
3599
- }
3600
- return 0;
3601
- });
3602
- const rawInputData = computed(
3603
- () => getRawInputData(props.runIndex, currentOutputIndex.value, connectionType2.value)
3604
- );
3605
- const unfilteredInputData = computed(() => getPinDataOrLiveData(rawInputData.value));
3606
- const inputData = computed(() => getFilteredData(unfilteredInputData.value));
3607
- const inputDataPage = computed(() => {
3608
- const offset = pageSize.value * (currentPage.value - 1);
3609
- return inputData.value.slice(offset, offset + pageSize.value);
3610
- });
3611
- const jsonData = computed(() => executionDataToJson(inputData.value));
3612
- const binaryData = computed(() => {
3613
- if (!node2.value) {
3614
- return [];
3615
- }
3616
- return nodeHelpers.getBinaryData(workflowRunData.value, node2.value.name, props.runIndex, currentOutputIndex.value).filter((data) => Boolean(data && Object.keys(data).length));
3617
- });
3618
- const inputHtml = computed(() => String(inputData.value[0]?.json?.html ?? ""));
3619
- const currentOutputIndex = computed(() => {
3620
- if (props.overrideOutputs?.length && !props.overrideOutputs.includes(outputIndex.value)) {
3621
- return props.overrideOutputs[0];
3622
- }
3623
- return Math.min(outputIndex.value, maxOutputIndex.value);
3624
- });
3625
- const branches = computed(() => {
3626
- const capitalize = (name) => name.charAt(0).toLocaleUpperCase() + name.slice(1);
3627
- const result = [];
3628
- for (let i = 0; i <= maxOutputIndex.value; i++) {
3629
- if (props.overrideOutputs && !props.overrideOutputs.includes(i)) {
3630
- continue;
3631
- }
3632
- const totalItemsCount = getRawInputData(props.runIndex, i).length;
3633
- const itemsCount2 = getDataCount(props.runIndex, i);
3634
- const items = search2.value ? i18n.baseText("ndv.search.items", {
3635
- adjustToNumber: totalItemsCount,
3636
- interpolate: { matched: itemsCount2, total: totalItemsCount }
3637
- }) : i18n.baseText("ndv.output.items", {
3638
- adjustToNumber: itemsCount2,
3639
- interpolate: { count: itemsCount2 }
3640
- });
3641
- let outputName = getOutputName(i);
3642
- if (`${outputName}` === `${i}`) {
3643
- outputName = `${i18n.baseText("ndv.output")} ${outputName}`;
3644
- } else {
3645
- const appendBranchWord = NODE_TYPES_EXCLUDED_FROM_OUTPUT_NAME_APPEND.includes(
3646
- node2.value?.type ?? ""
3647
- ) ? "" : ` ${i18n.baseText("ndv.output.branch")}`;
3648
- outputName = capitalize(`${getOutputName(i)}${appendBranchWord}`);
3649
- }
3650
- result.push({
3651
- label: search2.value && itemsCount2 || totalItemsCount ? `${outputName} (${items})` : outputName,
3652
- value: i
3653
- });
3654
- }
3655
- return result;
3656
- });
3657
- const editMode2 = computed(() => {
3658
- return isPaneTypeInput.value ? { enabled: false, value: "" } : ndvStore.outputPanelEditMode;
3659
- });
3660
- const isPaneTypeInput = computed(() => props.paneType === "input");
3661
- const isPaneTypeOutput = computed(() => props.paneType === "output");
3662
- const readOnlyEnv = computed(() => sourceControlStore.preferences.branchReadOnly);
3663
- const showIOSearch = computed(
3664
- () => hasNodeRun.value && !hasRunError.value && unfilteredInputData.value.length > 0
3665
- );
3666
- const inputSelectLocation = computed(() => {
3667
- if (isSchemaView.value) return "none";
3668
- if (!hasNodeRun.value) return "header";
3669
- if (maxRunIndex.value > 0) return "runs";
3670
- if (maxOutputIndex.value > 0 && branches.value.length > 1) {
3671
- return "outputs";
3672
- }
3673
- return "items";
3674
- });
3675
- const showIoSearchNoMatchContent = computed(
3676
- () => hasNodeRun.value && !inputData.value.length && !!search2.value
3677
- );
3678
- const parentNodeOutputData = computed(() => {
3679
- const parentNode = props.workflow.getParentNodesByDepth(node2.value?.name ?? "")[0];
3680
- let parentNodeData = [];
3681
- if (parentNode?.name) {
3682
- parentNodeData = nodeHelpers.getNodeInputData(
3683
- props.workflow.getNode(parentNode?.name),
3684
- props.runIndex,
3685
- outputIndex.value,
3686
- "input",
3687
- connectionType2.value
3688
- );
3689
- }
3690
- return parentNodeData;
3691
- });
3692
- const parentNodePinnedData = computed(() => {
3693
- const parentNode = props.workflow.getParentNodesByDepth(node2.value?.name ?? "")[0];
3694
- return props.workflow.pinData?.[parentNode?.name || ""] ?? [];
3695
- });
3696
- const showPinButton = computed(() => {
3697
- if (!rawInputData.value.length && !pinnedData.hasData.value) {
3698
- return false;
3699
- }
3700
- if (editMode2.value.enabled) {
3701
- return false;
3702
- }
3703
- if (binaryData.value?.length) {
3704
- return isPaneTypeOutput.value;
3705
- }
3706
- return canPinData.value;
3707
- });
3708
- const pinButtonDisabled = computed(
3709
- () => !rawInputData.value.length && !pinnedData.hasData.value || !!binaryData.value?.length || isReadOnlyRoute.value || readOnlyEnv.value
3710
- );
3711
- const activeTaskMetadata = computed(() => {
3712
- if (!node2.value) {
3713
- return null;
3714
- }
3715
- const errorMetadata = parseErrorMetadata(workflowRunErrorAsNodeError.value);
3716
- if (errorMetadata !== void 0) {
3717
- return errorMetadata;
3718
- }
3719
- if (parentNodeError.value) {
3720
- const subNodeMetadata = parseErrorMetadata(parentNodeError.value);
3721
- if (subNodeMetadata !== void 0) {
3722
- return subNodeMetadata;
3723
- }
3724
- }
3725
- return workflowRunData.value?.[node2.value.name]?.[props.runIndex]?.metadata ?? null;
3726
- });
3727
- const hasInputOverwrite = computed(() => {
3728
- if (!node2.value) {
3729
- return false;
3730
- }
3731
- const taskData = nodeHelpers.getNodeTaskData(node2.value, props.runIndex);
3732
- return Boolean(taskData?.inputOverride);
3733
- });
3734
- const isSchemaPreviewEnabled = computed(
3735
- () => props.paneType === "input" && !(nodeType.value?.codex?.categories ?? []).some(
3736
- (category) => category === CORE_NODES_CATEGORY
3737
- ) && posthogStore.isVariantEnabled(
3738
- SCHEMA_PREVIEW_EXPERIMENT.name,
3739
- SCHEMA_PREVIEW_EXPERIMENT.variant
3740
- )
3741
- );
3742
- const hasPreviewSchema = computedAsync(async () => {
3743
- if (!isSchemaPreviewEnabled.value || props.nodes.length === 0) return false;
3744
- const nodes = props.nodes.filter((n) => n.depth === 1).map((n) => workflowsStore.getNodeByName(n.name)).filter(isPresent);
3745
- for (const connectedNode2 of nodes) {
3746
- const { type, typeVersion, parameters } = connectedNode2;
3747
- const hasPreview = await schemaPreviewStore.getSchemaPreview({
3748
- nodeType: type,
3749
- version: typeVersion,
3750
- resource: parameters.resource,
3751
- operation: parameters.operation
3752
- });
3753
- if (hasPreview.ok) return true;
3754
- }
3755
- return false;
3756
- }, false);
3757
- watch(node2, (newNode, prevNode) => {
3758
- if (newNode?.id === prevNode?.id) return;
3759
- init();
3760
- });
3761
- watch(hasNodeRun, () => {
3762
- if (props.paneType === "output") setDisplayMode();
3763
- else {
3764
- outputIndex.value = determineInitialOutputIndex();
3765
- }
3766
- });
3767
- watch(
3768
- inputDataPage,
3769
- (data) => {
3770
- if (props.paneType && data) {
3771
- ndvStore.setNDVPanelDataIsEmpty({
3772
- panel: props.paneType,
3773
- isEmpty: data.every((item) => isEmpty(item.json))
3774
- });
3775
- }
3776
- },
3777
- { immediate: true, deep: true }
3778
- );
3779
- watch(jsonData, (data, prevData) => {
3780
- if (isEqual(data, prevData)) return;
3781
- refreshDataSize();
3782
- if (dataCount.value) {
3783
- resetCurrentPageIfTooFar();
3784
- }
3785
- showPinDataDiscoveryTooltip(data);
3786
- });
3787
- watch(binaryData, (newData, prevData) => {
3788
- if (newData.length && !prevData.length && displayMode.value !== "binary") {
3789
- switchToBinary();
3790
- } else if (!newData.length && displayMode.value === "binary") {
3791
- onDisplayModeChange("table");
3792
- }
3793
- });
3794
- watch(currentOutputIndex, (branchIndex) => {
3795
- ndvStore.setNDVBranchIndex({
3796
- pane: props.paneType,
3797
- branchIndex
3798
- });
3799
- });
3800
- watch(search2, (newSearch) => {
3801
- emit("search", newSearch);
3802
- });
3803
- onMounted(() => {
3804
- init();
3805
- if (!isPaneTypeInput.value) {
3806
- showPinDataDiscoveryTooltip(jsonData.value);
3807
- }
3808
- ndvStore.setNDVBranchIndex({
3809
- pane: props.paneType,
3810
- branchIndex: currentOutputIndex.value
3811
- });
3812
- if (props.paneType === "output") {
3813
- setDisplayMode();
3814
- activatePane();
3815
- }
3816
- if (hasRunError.value && node2.value) {
3817
- const error = workflowRunData.value?.[node2.value.name]?.[props.runIndex]?.error;
3818
- const errorsToTrack = ["unknown error"];
3819
- if (error && errorsToTrack.some((e) => error.message?.toLowerCase().includes(e))) {
3820
- telemetry.track(
3821
- "User encountered an error",
3822
- {
3823
- node: node2.value.type,
3824
- errorMessage: error.message,
3825
- nodeVersion: node2.value.typeVersion,
3826
- n8nVersion: rootStore.versionCli
3827
- },
3828
- {
3829
- withPostHog: true
3830
- }
3831
- );
3832
- }
3833
- }
3834
- });
3835
- onBeforeUnmount(() => {
3836
- hidePinDataDiscoveryTooltip();
3837
- });
3838
- function getResolvedNodeOutputs() {
3839
- if (node2.value && nodeType.value) {
3840
- const workflowNode = props.workflow.getNode(node2.value.name);
3841
- if (workflowNode) {
3842
- const outputs2 = getNodeOutputs(props.workflow, workflowNode, nodeType.value);
3843
- return outputs2;
3844
- }
3845
- }
3846
- return [];
3847
- }
3848
- function shouldHintBeDisplayed(hint) {
3849
- const { location, whenToDisplay } = hint;
3850
- if (location) {
3851
- if (location === "ndv" && !["input", "output"].includes(props.paneType)) {
3852
- return false;
3853
- }
3854
- if (location === "inputPane" && props.paneType !== "input") {
3855
- return false;
3856
- }
3857
- if (location === "outputPane" && props.paneType !== "output") {
3858
- return false;
3859
- }
3860
- }
3861
- if (whenToDisplay === "afterExecution" && !hasNodeRun.value) {
3862
- return false;
3863
- }
3864
- if (whenToDisplay === "beforeExecution" && hasNodeRun.value) {
3865
- return false;
3866
- }
3867
- return true;
3868
- }
3869
- function getNodeHints$1() {
3870
- try {
3871
- if (node2.value && nodeType.value) {
3872
- const workflowNode = props.workflow.getNode(node2.value.name);
3873
- if (workflowNode) {
3874
- const nodeHints = getNodeHints(props.workflow, workflowNode, nodeType.value, {
3875
- runExecutionData: workflowExecution.value?.data ?? null,
3876
- runIndex: props.runIndex,
3877
- connectionInputData: parentNodeOutputData.value
3878
- });
3879
- const hasMultipleInputItems = parentNodeOutputData.value.length > 1 || parentNodePinnedData.value.length > 1;
3880
- const nodeOutputData = workflowRunData.value?.[node2.value.name]?.[props.runIndex]?.data?.main?.[0] ?? [];
3881
- const genericHints = getGenericHints({
3882
- workflowNode,
3883
- node: node2.value,
3884
- nodeType: nodeType.value,
3885
- nodeOutputData,
3886
- workflow: props.workflow,
3887
- hasNodeRun: hasNodeRun.value,
3888
- hasMultipleInputItems
3889
- });
3890
- return executionHints.value.concat(nodeHints, genericHints).filter(shouldHintBeDisplayed);
3891
- }
3892
- }
3893
- } catch (error) {
3894
- console.error("Error while getting node hints", error);
3895
- }
3896
- return [];
3897
- }
3898
- function onItemHover(itemIndex) {
3899
- if (itemIndex === null) {
3900
- emit("itemHover", null);
3901
- return;
3902
- }
3903
- emit("itemHover", {
3904
- outputIndex: currentOutputIndex.value,
3905
- itemIndex
3906
- });
3907
- }
3908
- function onClickDataPinningDocsLink() {
3909
- telemetry.track("User clicked ndv link", {
3910
- workflow_id: workflowsStore.workflowId,
3911
- push_ref: props.pushRef,
3912
- node_type: activeNode.value?.type,
3913
- pane: "output",
3914
- type: "data-pinning-docs"
3915
- });
3916
- }
3917
- function showPinDataDiscoveryTooltip(value) {
3918
- if (!isTriggerNode.value) {
3919
- return;
3920
- }
3921
- const pinDataDiscoveryFlag = useStorage(LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG).value;
3922
- if (value && value.length > 0 && !isReadOnlyRoute.value && !pinDataDiscoveryFlag) {
3923
- pinDataDiscoveryComplete();
3924
- setTimeout(() => {
3925
- isControlledPinDataTooltip.value = true;
3926
- pinDataDiscoveryTooltipVisible.value = true;
3927
- dataPinningEventBus.emit("data-pinning-discovery", { isTooltipVisible: true });
3928
- }, 500);
3929
- }
3930
- }
3931
- function hidePinDataDiscoveryTooltip() {
3932
- if (pinDataDiscoveryTooltipVisible.value) {
3933
- isControlledPinDataTooltip.value = false;
3934
- pinDataDiscoveryTooltipVisible.value = false;
3935
- dataPinningEventBus.emit("data-pinning-discovery", { isTooltipVisible: false });
3936
- }
3937
- }
3938
- function pinDataDiscoveryComplete() {
3939
- useStorage(LOCAL_STORAGE_PIN_DATA_DISCOVERY_NDV_FLAG).value = "true";
3940
- useStorage(LOCAL_STORAGE_PIN_DATA_DISCOVERY_CANVAS_FLAG).value = "true";
3941
- }
3942
- function enterEditMode({ origin }) {
3943
- const inputData2 = pinnedData.data.value ? clearJsonKey(pinnedData.data.value) : executionDataToJson(rawInputData.value);
3944
- const inputDataLength = Array.isArray(inputData2) ? inputData2.length : Object.keys(inputData2 ?? {}).length;
3945
- const data = inputDataLength > 0 ? inputData2 : TEST_PIN_DATA;
3946
- ndvStore.setOutputPanelEditModeEnabled(true);
3947
- ndvStore.setOutputPanelEditModeValue(JSON.stringify(data, null, 2));
3948
- telemetry.track("User opened ndv edit state", {
3949
- node_type: activeNode.value?.type,
3950
- click_type: origin === "editIconButton" ? "button" : "link",
3951
- push_ref: props.pushRef,
3952
- run_index: props.runIndex,
3953
- is_output_present: hasNodeRun.value || pinnedData.hasData.value,
3954
- view: !hasNodeRun.value && !pinnedData.hasData.value ? "undefined" : displayMode.value,
3955
- is_data_pinned: pinnedData.hasData.value
3956
- });
3957
- }
3958
- function onClickCancelEdit() {
3959
- ndvStore.setOutputPanelEditModeEnabled(false);
3960
- ndvStore.setOutputPanelEditModeValue("");
3961
- onExitEditMode({ type: "cancel" });
3962
- }
3963
- function onClickSaveEdit() {
3964
- if (!node2.value) {
3965
- return;
3966
- }
3967
- const { value } = editMode2.value;
3968
- toast.clearAllStickyNotifications();
3969
- try {
3970
- const clearedValue = clearJsonKey(value);
3971
- try {
3972
- pinnedData.setData(clearedValue, "save-edit");
3973
- } catch (error) {
3974
- return;
3975
- }
3976
- } catch (error) {
3977
- toast.showError(error, i18n.baseText("ndv.pinData.error.syntaxError.title"));
3978
- return;
3979
- }
3980
- ndvStore.setOutputPanelEditModeEnabled(false);
3981
- onExitEditMode({ type: "save" });
3982
- }
3983
- function onExitEditMode({ type }) {
3984
- telemetry.track("User closed ndv edit state", {
3985
- node_type: activeNode.value?.type,
3986
- push_ref: props.pushRef,
3987
- run_index: props.runIndex,
3988
- view: displayMode.value,
3989
- type
3990
- });
3991
- }
3992
- async function onTogglePinData({ source }) {
3993
- if (!node2.value) {
3994
- return;
3995
- }
3996
- if (source === "pin-icon-click") {
3997
- const telemetryPayload = {
3998
- node_type: activeNode.value?.type,
3999
- push_ref: props.pushRef,
4000
- run_index: props.runIndex,
4001
- view: !hasNodeRun.value && !pinnedData.hasData.value ? "none" : displayMode.value
4002
- };
4003
- void externalHooks.run("runData.onTogglePinData", telemetryPayload);
4004
- telemetry.track("User clicked pin data icon", telemetryPayload);
4005
- }
4006
- nodeHelpers.updateNodeParameterIssues(node2.value);
4007
- if (pinnedData.hasData.value) {
4008
- pinnedData.unsetData(source);
4009
- return;
4010
- }
4011
- try {
4012
- pinnedData.setData(rawInputData.value, "pin-icon-click");
4013
- } catch (error) {
4014
- console.error(error);
4015
- return;
4016
- }
4017
- if (maxRunIndex.value > 0) {
4018
- toast.showToast({
4019
- title: i18n.baseText("ndv.pinData.pin.multipleRuns.title", {
4020
- interpolate: {
4021
- index: `${props.runIndex}`
4022
- }
4023
- }),
4024
- message: i18n.baseText("ndv.pinData.pin.multipleRuns.description"),
4025
- type: "success",
4026
- duration: 2e3
4027
- });
4028
- }
4029
- hidePinDataDiscoveryTooltip();
4030
- pinDataDiscoveryComplete();
4031
- }
4032
- function switchToBinary() {
4033
- onDisplayModeChange("binary");
4034
- }
4035
- function onBranchChange(value) {
4036
- outputIndex.value = value;
4037
- telemetry.track("User changed ndv branch", {
4038
- push_ref: props.pushRef,
4039
- branch_index: value,
4040
- node_type: activeNode.value?.type,
4041
- node_type_input_selection: nodeType.value ? nodeType.value.name : "",
4042
- pane: props.paneType
4043
- });
4044
- }
4045
- function showTooMuchData() {
4046
- showData.value = true;
4047
- userEnabledShowData.value = true;
4048
- telemetry.track("User clicked ndv button", {
4049
- node_type: activeNode.value?.type,
4050
- workflow_id: workflowsStore.workflowId,
4051
- push_ref: props.pushRef,
4052
- pane: props.paneType,
4053
- type: "showTooMuchData"
4054
- });
4055
- }
4056
- function toggleLinkRuns() {
4057
- if (props.linkedRuns) {
4058
- unlinkRun();
4059
- } else {
4060
- linkRun();
4061
- }
4062
- }
4063
- function linkRun() {
4064
- emit("linkRun");
4065
- }
4066
- function unlinkRun() {
4067
- emit("unlinkRun");
4068
- }
4069
- function onCurrentPageChange(value) {
4070
- currentPage.value = value;
4071
- telemetry.track("User changed ndv page", {
4072
- node_type: activeNode.value?.type,
4073
- workflow_id: workflowsStore.workflowId,
4074
- push_ref: props.pushRef,
4075
- pane: props.paneType,
4076
- page_selected: currentPage.value,
4077
- page_size: pageSize.value,
4078
- items_total: dataCount.value
4079
- });
4080
- }
4081
- function resetCurrentPageIfTooFar() {
4082
- const maxPage = Math.ceil(dataCount.value / pageSize.value);
4083
- if (maxPage < currentPage.value) {
4084
- currentPage.value = maxPage;
4085
- }
4086
- }
4087
- function onPageSizeChange(newPageSize) {
4088
- pageSize.value = newPageSize;
4089
- resetCurrentPageIfTooFar();
4090
- telemetry.track("User changed ndv page size", {
4091
- node_type: activeNode.value?.type,
4092
- workflow_id: workflowsStore.workflowId,
4093
- push_ref: props.pushRef,
4094
- pane: props.paneType,
4095
- page_selected: currentPage.value,
4096
- page_size: pageSize.value,
4097
- items_total: dataCount.value
4098
- });
4099
- }
4100
- function onDisplayModeChange(newDisplayMode) {
4101
- const previous = displayMode.value;
4102
- ndvStore.setPanelDisplayMode({ pane: props.paneType, mode: newDisplayMode });
4103
- if (!userEnabledShowData.value) updateShowData();
4104
- if (dataContainerRef.value) {
4105
- const dataDisplay2 = dataContainerRef.value.children[0];
4106
- if (dataDisplay2) {
4107
- dataDisplay2.scrollTo(0, 0);
4108
- }
4109
- }
4110
- closeBinaryDataDisplay();
4111
- void externalHooks.run("runData.displayModeChanged", {
4112
- newValue: newDisplayMode,
4113
- oldValue: previous
4114
- });
4115
- if (activeNode.value) {
4116
- telemetry.track("User changed ndv item view", {
4117
- previous_view: previous,
4118
- new_view: newDisplayMode,
4119
- node_type: activeNode.value.type,
4120
- workflow_id: workflowsStore.workflowId,
4121
- push_ref: props.pushRef,
4122
- pane: props.paneType
4123
- });
4124
- }
4125
- }
4126
- function getRunLabel(option) {
4127
- if (!node2.value) {
4128
- return;
4129
- }
4130
- let itemsCount2 = 0;
4131
- for (let i = 0; i <= maxOutputIndex.value; i++) {
4132
- itemsCount2 += getPinDataOrLiveData(getRawInputData(option - 1, i)).length;
4133
- }
4134
- const items = i18n.baseText("ndv.output.items", {
4135
- adjustToNumber: itemsCount2,
4136
- interpolate: { count: itemsCount2 }
4137
- });
4138
- const metadata = workflowRunData.value?.[node2.value.name]?.[option - 1]?.metadata ?? null;
4139
- const subexecutions = metadata?.subExecutionsCount ? i18n.baseText("ndv.output.andSubExecutions", {
4140
- adjustToNumber: metadata.subExecutionsCount,
4141
- interpolate: {
4142
- count: metadata.subExecutionsCount
4143
- }
4144
- }) : "";
4145
- const itemsLabel = itemsCount2 > 0 ? ` (${items}${subexecutions})` : "";
4146
- return option + i18n.baseText("ndv.output.of") + (maxRunIndex.value + 1) + itemsLabel;
4147
- }
4148
- function getRawInputData(runIndex, outputIndex2, connectionType22 = NodeConnectionTypes.Main) {
4149
- let inputData2 = [];
4150
- if (node2.value) {
4151
- inputData2 = nodeHelpers.getNodeInputData(
4152
- node2.value,
4153
- runIndex,
4154
- outputIndex2,
4155
- props.paneType,
4156
- connectionType22
4157
- );
4158
- }
4159
- if (inputData2.length === 0 || !Array.isArray(inputData2)) {
4160
- return [];
4161
- }
4162
- return inputData2;
4163
- }
4164
- function getPinDataOrLiveData(data) {
4165
- if (pinnedData.data.value && !props.isProductionExecutionPreview) {
4166
- return Array.isArray(pinnedData.data.value) ? pinnedData.data.value.map((value) => ({
4167
- json: value
4168
- })) : [
4169
- {
4170
- json: pinnedData.data.value
4171
- }
4172
- ];
4173
- }
4174
- return data;
4175
- }
4176
- function getFilteredData(data) {
4177
- if (!search2.value || isSchemaView.value) {
4178
- return data;
4179
- }
4180
- currentPage.value = 1;
4181
- return data.filter(({ json }) => searchInObject(json, search2.value));
4182
- }
4183
- function getDataCount(runIndex, outputIndex2, connectionType22 = NodeConnectionTypes.Main) {
4184
- if (!node2.value) {
4185
- return 0;
4186
- }
4187
- if (workflowRunData.value?.[node2.value.name]?.[runIndex]?.hasOwnProperty("error")) {
4188
- return 1;
4189
- }
4190
- const rawInputData2 = getRawInputData(runIndex, outputIndex2, connectionType22);
4191
- const pinOrLiveData = getPinDataOrLiveData(rawInputData2);
4192
- return getFilteredData(pinOrLiveData).length;
4193
- }
4194
- function determineInitialOutputIndex() {
4195
- for (let i = 0; i <= maxOutputIndex.value; i++) {
4196
- if (getRawInputData(props.runIndex, i).length) {
4197
- return i;
4198
- }
4199
- }
4200
- return 0;
4201
- }
4202
- function init() {
4203
- outputIndex.value = determineInitialOutputIndex();
4204
- refreshDataSize();
4205
- closeBinaryDataDisplay();
4206
- let outputTypes = [];
4207
- if (node2.value && nodeType.value) {
4208
- const outputs2 = getResolvedNodeOutputs();
4209
- outputTypes = getConnectionTypes(outputs2);
4210
- }
4211
- connectionType2.value = outputTypes.length === 0 ? NodeConnectionTypes.Main : outputTypes[0];
4212
- if (binaryData.value.length > 0) {
4213
- ndvStore.setPanelDisplayMode({
4214
- pane: props.paneType,
4215
- mode: "binary"
4216
- });
4217
- } else if (displayMode.value === "binary") {
4218
- ndvStore.setPanelDisplayMode({
4219
- pane: props.paneType,
4220
- mode: "schema"
4221
- });
4222
- }
4223
- }
4224
- function closeBinaryDataDisplay() {
4225
- binaryDataDisplayVisible.value = false;
4226
- binaryDataDisplayData.value = null;
4227
- }
4228
- function isViewable(index, key) {
4229
- const { fileType } = binaryData.value[index][key];
4230
- return !!fileType && ["image", "audio", "video", "text", "json", "pdf", "html"].includes(fileType);
4231
- }
4232
- function isDownloadable(index, key) {
4233
- const { mimeType, fileName } = binaryData.value[index][key];
4234
- return !!(mimeType && fileName);
4235
- }
4236
- async function downloadBinaryData(index, key) {
4237
- const { id, data, fileName, fileExtension, mimeType } = binaryData.value[index][key];
4238
- if (id) {
4239
- const url = workflowsStore.getBinaryUrl(id, "download", fileName ?? "", mimeType);
4240
- FileSaver_minExports.saveAs(url, [fileName, fileExtension].join("."));
4241
- return;
4242
- } else {
4243
- const bufferString = "data:" + mimeType + ";base64," + data;
4244
- const blob = await fetch(bufferString).then(async (d) => await d.blob());
4245
- FileSaver_minExports.saveAs(blob, fileName);
4246
- }
4247
- }
4248
- async function downloadJsonData() {
4249
- const fileName = (node2.value?.name ?? "").replace(/[^\w\d]/g, "_");
4250
- const blob = new Blob([JSON.stringify(rawInputData.value, null, 2)], {
4251
- type: "application/json"
4252
- });
4253
- FileSaver_minExports.saveAs(blob, `${fileName}.json`);
4254
- }
4255
- function displayBinaryData(index, key) {
4256
- const { data, mimeType } = binaryData.value[index][key];
4257
- binaryDataDisplayVisible.value = true;
4258
- binaryDataDisplayData.value = {
4259
- node: node2.value?.name,
4260
- runIndex: props.runIndex,
4261
- outputIndex: currentOutputIndex.value,
4262
- index,
4263
- key,
4264
- data,
4265
- mimeType
4266
- };
4267
- }
4268
- function getOutputName(outputIndex2) {
4269
- if (node2.value === null) {
4270
- return outputIndex2 + 1;
4271
- }
4272
- const outputs2 = getResolvedNodeOutputs();
4273
- const outputConfiguration = outputs2?.[outputIndex2];
4274
- if (outputConfiguration && isObject$1(outputConfiguration)) {
4275
- return outputConfiguration?.displayName;
4276
- }
4277
- if (!nodeType.value?.outputNames || nodeType.value.outputNames.length <= outputIndex2) {
4278
- return outputIndex2 + 1;
4279
- }
4280
- return nodeType.value.outputNames[outputIndex2];
4281
- }
4282
- function refreshDataSize() {
4283
- showData.value = false;
4284
- const jsonItems = inputDataPage.value.map((item) => item.json);
4285
- const byteSize = new Blob([JSON.stringify(jsonItems)]).size;
4286
- dataSize.value = byteSize;
4287
- updateShowData();
4288
- }
4289
- function updateShowData() {
4290
- showData.value = isSchemaView.value && dataSize.value < MAX_DISPLAY_DATA_SIZE_SCHEMA_VIEW || dataSize.value < MAX_DISPLAY_DATA_SIZE;
4291
- }
4292
- function onRunIndexChange(run) {
4293
- emit("runChange", run);
4294
- }
4295
- function enableNode() {
4296
- if (node2.value) {
4297
- const updateInformation = {
4298
- name: node2.value.name,
4299
- properties: {
4300
- disabled: !node2.value.disabled
4301
- }
4302
- };
4303
- workflowsStore.updateNodeProperties(updateInformation);
4304
- }
4305
- }
4306
- function setDisplayMode() {
4307
- if (!activeNode.value) return;
4308
- const shouldDisplayHtml = activeNode.value.type === HTML_NODE_TYPE && activeNode.value.parameters.operation === "generateHtmlTemplate";
4309
- if (shouldDisplayHtml) {
4310
- ndvStore.setPanelDisplayMode({
4311
- pane: "output",
4312
- mode: "html"
4313
- });
4314
- }
4315
- }
4316
- function activatePane() {
4317
- emit("activatePane");
4318
- }
4319
- function onSearchClear() {
4320
- search2.value = "";
4321
- document.dispatchEvent(new KeyboardEvent("keyup", { key: "/" }));
4322
- }
4323
- __expose({ enterEditMode });
4324
- return (_ctx, _cache) => {
4325
- const _component_i18n_t = resolveComponent("i18n-t");
4326
- const _component_el_pagination = resolveComponent("el-pagination");
4327
- const _directive_n8n_html = resolveDirective("n8n-html");
4328
- return openBlock(), createElementBlock("div", {
4329
- class: normalizeClass(["run-data", _ctx.$style.container]),
4330
- onMouseover: activatePane
4331
- }, [
4332
- !isPaneTypeInput.value && unref(pinnedData).hasData.value && !editMode2.value.enabled && !_ctx.isProductionExecutionPreview ? (openBlock(), createBlock(unref(N8nCallout), {
4333
- key: 0,
4334
- theme: "secondary",
4335
- icon: "thumbtack",
4336
- class: normalizeClass(_ctx.$style.pinnedDataCallout),
4337
- "data-test-id": "ndv-pinned-data-callout"
4338
- }, {
4339
- trailingContent: withCtx(() => [
4340
- createVNode(unref(N8nLink), {
4341
- to: unref(DATA_PINNING_DOCS_URL),
4342
- size: "small",
4343
- theme: "secondary",
4344
- bold: "",
4345
- underline: "",
4346
- onClick: onClickDataPinningDocsLink
4347
- }, {
4348
- default: withCtx(() => [
4349
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.pindata.learnMore")), 1)
4350
- ]),
4351
- _: 1
4352
- }, 8, ["to"])
4353
- ]),
4354
- default: withCtx(() => [
4355
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.pindata.thisDataIsPinned")) + " ", 1),
4356
- !isReadOnlyRoute.value && !readOnlyEnv.value ? (openBlock(), createElementBlock("span", _hoisted_1$4, [
4357
- createVNode(unref(N8nLink), {
4358
- theme: "secondary",
4359
- size: "small",
4360
- underline: "",
4361
- bold: "",
4362
- "data-test-id": "ndv-unpin-data",
4363
- onClick: _cache[0] || (_cache[0] = withModifiers(($event) => onTogglePinData({ source: "banner-link" }), ["stop"]))
4364
- }, {
4365
- default: withCtx(() => [
4366
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.pindata.unpin")), 1)
4367
- ]),
4368
- _: 1
4369
- })
4370
- ])) : createCommentVNode("", true)
4371
- ]),
4372
- _: 1
4373
- }, 8, ["class"])) : createCommentVNode("", true),
4374
- binaryDataDisplayData.value ? (openBlock(), createBlock(_sfc_main$9, {
4375
- key: 1,
4376
- "window-visible": binaryDataDisplayVisible.value,
4377
- "display-data": binaryDataDisplayData.value,
4378
- onClose: closeBinaryDataDisplay
4379
- }, null, 8, ["window-visible", "display-data"])) : createCommentVNode("", true),
4380
- createBaseVNode("div", {
4381
- class: normalizeClass(_ctx.$style.header)
4382
- }, [
4383
- renderSlot(_ctx.$slots, "header", {}, void 0, true),
4384
- withDirectives(createBaseVNode("div", {
4385
- class: normalizeClass(_ctx.$style.displayModes),
4386
- "data-test-id": "run-data-pane-header",
4387
- onClick: _cache[4] || (_cache[4] = withModifiers(() => {
4388
- }, ["stop"]))
4389
- }, [
4390
- (openBlock(), createBlock(Suspense, null, {
4391
- default: withCtx(() => [
4392
- showIOSearch.value ? (openBlock(), createBlock(unref(LazyRunDataSearch), {
4393
- key: 0,
4394
- modelValue: search2.value,
4395
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => search2.value = $event),
4396
- class: normalizeClass(_ctx.$style.search),
4397
- "pane-type": _ctx.paneType,
4398
- "display-mode": displayMode.value,
4399
- "is-area-active": _ctx.isPaneActive,
4400
- onFocus: activatePane
4401
- }, null, 8, ["modelValue", "class", "pane-type", "display-mode", "is-area-active"])) : createCommentVNode("", true)
4402
- ]),
4403
- _: 1
4404
- })),
4405
- withDirectives(createVNode(unref(N8nRadioButtons), {
4406
- "model-value": displayMode.value,
4407
- options: displayModes2.value,
4408
- "data-test-id": "ndv-run-data-display-mode",
4409
- "onUpdate:modelValue": onDisplayModeChange
4410
- }, null, 8, ["model-value", "options"]), [
4411
- [
4412
- vShow,
4413
- unref(hasPreviewSchema) || hasNodeRun.value && (inputData.value.length || binaryData.value.length || search2.value) && !editMode2.value.enabled
4414
- ]
4415
- ]),
4416
- canPinData.value && !isReadOnlyRoute.value && !readOnlyEnv.value ? withDirectives((openBlock(), createBlock(unref(_sfc_main$o), {
4417
- key: 0,
4418
- title: unref(i18n).baseText("runData.editOutput"),
4419
- circle: false,
4420
- disabled: node2.value?.disabled,
4421
- icon: "pencil-alt",
4422
- type: "tertiary",
4423
- "data-test-id": "ndv-edit-pinned-data",
4424
- onClick: _cache[2] || (_cache[2] = ($event) => enterEditMode({ origin: "editIconButton" }))
4425
- }, null, 8, ["title", "disabled"])), [
4426
- [vShow, !editMode2.value.enabled]
4427
- ]) : createCommentVNode("", true),
4428
- showPinButton.value ? (openBlock(), createBlock(RunDataPinButton, {
4429
- key: 1,
4430
- disabled: pinButtonDisabled.value,
4431
- "tooltip-contents-visibility": {
4432
- binaryDataTooltipContent: !!binaryData.value?.length,
4433
- pinDataDiscoveryTooltipContent: isControlledPinDataTooltip.value && pinDataDiscoveryTooltipVisible.value
4434
- },
4435
- "data-pinning-docs-url": unref(DATA_PINNING_DOCS_URL),
4436
- "pinned-data": unref(pinnedData),
4437
- onTogglePinData: _cache[3] || (_cache[3] = ($event) => onTogglePinData({ source: "pin-icon-click" }))
4438
- }, null, 8, ["disabled", "tooltip-contents-visibility", "data-pinning-docs-url", "pinned-data"])) : createCommentVNode("", true),
4439
- withDirectives(createBaseVNode("div", {
4440
- class: normalizeClass(_ctx.$style.editModeActions)
4441
- }, [
4442
- createVNode(unref(N8nButton), {
4443
- type: "tertiary",
4444
- label: unref(i18n).baseText("runData.editor.cancel"),
4445
- onClick: onClickCancelEdit
4446
- }, null, 8, ["label"]),
4447
- createVNode(unref(N8nButton), {
4448
- class: "ml-2xs",
4449
- type: "primary",
4450
- label: unref(i18n).baseText("runData.editor.save"),
4451
- onClick: onClickSaveEdit
4452
- }, null, 8, ["label"])
4453
- ], 2), [
4454
- [vShow, editMode2.value.enabled]
4455
- ])
4456
- ], 2), [
4457
- [vShow, !hasRunError.value && !isTrimmedManualExecutionDataItem.value]
4458
- ])
4459
- ], 2),
4460
- inputSelectLocation.value === "header" ? (openBlock(), createElementBlock("div", {
4461
- key: 2,
4462
- class: normalizeClass(_ctx.$style.inputSelect)
4463
- }, [
4464
- renderSlot(_ctx.$slots, "input-select", {}, void 0, true)
4465
- ], 2)) : createCommentVNode("", true),
4466
- maxRunIndex.value > 0 && !displaysMultipleNodes.value ? withDirectives((openBlock(), createElementBlock("div", {
4467
- key: 3,
4468
- class: normalizeClass(_ctx.$style.runSelector)
4469
- }, [
4470
- createBaseVNode("div", {
4471
- class: normalizeClass(_ctx.$style.runSelectorInner)
4472
- }, [
4473
- inputSelectLocation.value === "runs" ? renderSlot(_ctx.$slots, "input-select", { key: 0 }, void 0, true) : createCommentVNode("", true),
4474
- createVNode(unref(N8nSelect), {
4475
- "model-value": _ctx.runIndex,
4476
- class: normalizeClass(_ctx.$style.runSelectorSelect),
4477
- size: "small",
4478
- teleported: "",
4479
- "data-test-id": "run-selector",
4480
- "onUpdate:modelValue": onRunIndexChange,
4481
- onClick: _cache[5] || (_cache[5] = withModifiers(() => {
4482
- }, ["stop"]))
4483
- }, {
4484
- prepend: withCtx(() => [
4485
- createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.run")), 1)
4486
- ]),
4487
- default: withCtx(() => [
4488
- (openBlock(true), createElementBlock(Fragment, null, renderList(maxRunIndex.value + 1, (option) => {
4489
- return openBlock(), createBlock(unref(_sfc_main$p), {
4490
- key: option,
4491
- label: getRunLabel(option),
4492
- value: option - 1
4493
- }, null, 8, ["label", "value"]);
4494
- }), 128))
4495
- ]),
4496
- _: 1
4497
- }, 8, ["model-value", "class"]),
4498
- _ctx.canLinkRuns ? (openBlock(), createBlock(unref(N8nTooltip), {
4499
- key: 1,
4500
- placement: "right"
4501
- }, {
4502
- content: withCtx(() => [
4503
- createTextVNode(toDisplayString(unref(i18n).baseText(_ctx.linkedRuns ? "runData.unlinking.hint" : "runData.linking.hint")), 1)
4504
- ]),
4505
- default: withCtx(() => [
4506
- createVNode(unref(_sfc_main$o), {
4507
- icon: _ctx.linkedRuns ? "unlink" : "link",
4508
- class: normalizeClass(["linkRun", _ctx.linkedRuns ? "linked" : ""]),
4509
- text: "",
4510
- type: "tertiary",
4511
- size: "small",
4512
- "data-test-id": "link-run",
4513
- onClick: toggleLinkRuns
4514
- }, null, 8, ["icon", "class"])
4515
- ]),
4516
- _: 1
4517
- })) : createCommentVNode("", true),
4518
- renderSlot(_ctx.$slots, "run-info", {}, void 0, true)
4519
- ], 2),
4520
- activeTaskMetadata.value && !(_ctx.paneType === "input" && hasInputOverwrite.value) ? (openBlock(), createBlock(ViewSubExecution, {
4521
- key: 0,
4522
- "task-metadata": activeTaskMetadata.value,
4523
- "display-mode": displayMode.value
4524
- }, null, 8, ["task-metadata", "display-mode"])) : createCommentVNode("", true)
4525
- ], 2)), [
4526
- [vShow, !editMode2.value.enabled]
4527
- ]) : createCommentVNode("", true),
4528
- !displaysMultipleNodes.value ? renderSlot(_ctx.$slots, "before-data", { key: 4 }, void 0, true) : createCommentVNode("", true),
4529
- props.calloutMessage ? (openBlock(), createElementBlock("div", {
4530
- key: 5,
4531
- class: normalizeClass(_ctx.$style.hintCallout)
4532
- }, [
4533
- createVNode(unref(N8nCallout), {
4534
- theme: "info",
4535
- "data-test-id": "run-data-callout"
4536
- }, {
4537
- default: withCtx(() => [
4538
- withDirectives(createVNode(unref(N8nText), { size: "small" }, null, 512), [
4539
- [_directive_n8n_html, props.calloutMessage]
4540
- ])
4541
- ]),
4542
- _: 1
4543
- })
4544
- ], 2)) : createCommentVNode("", true),
4545
- (openBlock(true), createElementBlock(Fragment, null, renderList(getNodeHints$1(), (hint) => {
4546
- return openBlock(), createBlock(unref(N8nCallout), {
4547
- key: hint.message,
4548
- class: normalizeClass(_ctx.$style.hintCallout),
4549
- theme: hint.type || "info",
4550
- "data-test-id": "node-hint"
4551
- }, {
4552
- default: withCtx(() => [
4553
- withDirectives(createVNode(unref(N8nText), { size: "small" }, null, 512), [
4554
- [_directive_n8n_html, hint.message]
4555
- ])
4556
- ]),
4557
- _: 2
4558
- }, 1032, ["class", "theme"]);
4559
- }), 128)),
4560
- maxOutputIndex.value > 0 && branches.value.length > 1 && !displaysMultipleNodes.value ? (openBlock(), createElementBlock("div", {
4561
- key: 6,
4562
- class: normalizeClass(_ctx.$style.outputs),
4563
- "data-test-id": "branches"
4564
- }, [
4565
- inputSelectLocation.value === "outputs" ? renderSlot(_ctx.$slots, "input-select", { key: 0 }, void 0, true) : createCommentVNode("", true),
4566
- activeTaskMetadata.value && !(_ctx.paneType === "input" && hasInputOverwrite.value) ? (openBlock(), createBlock(ViewSubExecution, {
4567
- key: 1,
4568
- "task-metadata": activeTaskMetadata.value,
4569
- "display-mode": displayMode.value
4570
- }, null, 8, ["task-metadata", "display-mode"])) : createCommentVNode("", true),
4571
- createBaseVNode("div", {
4572
- class: normalizeClass(_ctx.$style.tabs)
4573
- }, [
4574
- createVNode(unref(N8nTabs), {
4575
- "model-value": currentOutputIndex.value,
4576
- options: branches.value,
4577
- "onUpdate:modelValue": onBranchChange
4578
- }, null, 8, ["model-value", "options"])
4579
- ], 2)
4580
- ], 2)) : hasNodeRun.value && !isSearchInSchemaView.value && (dataCount.value > 0 && maxRunIndex.value === 0 || search2.value) && !isArtificialRecoveredEventItem.value && !displaysMultipleNodes.value ? withDirectives((openBlock(), createElementBlock("div", {
4581
- key: 7,
4582
- class: normalizeClass([_ctx.$style.itemsCount, { [_ctx.$style.muted]: _ctx.paneType === "input" && maxRunIndex.value === 0 }]),
4583
- "data-test-id": "ndv-items-count"
4584
- }, [
4585
- inputSelectLocation.value === "items" ? renderSlot(_ctx.$slots, "input-select", { key: 0 }, void 0, true) : createCommentVNode("", true),
4586
- search2.value ? (openBlock(), createBlock(unref(N8nText), {
4587
- key: 1,
4588
- class: normalizeClass(_ctx.$style.itemsText)
4589
- }, {
4590
- default: withCtx(() => [
4591
- createTextVNode(toDisplayString(unref(i18n).baseText("ndv.search.items", {
4592
- adjustToNumber: unfilteredDataCount.value,
4593
- interpolate: { matched: dataCount.value, count: unfilteredDataCount.value }
4594
- })), 1)
4595
- ]),
4596
- _: 1
4597
- }, 8, ["class"])) : (openBlock(), createBlock(unref(N8nText), {
4598
- key: 2,
4599
- class: normalizeClass(_ctx.$style.itemsText)
4600
- }, {
4601
- default: withCtx(() => [
4602
- createBaseVNode("span", null, toDisplayString(unref(i18n).baseText("ndv.output.items", {
4603
- adjustToNumber: dataCount.value,
4604
- interpolate: { count: dataCount.value }
4605
- })), 1),
4606
- activeTaskMetadata.value?.subExecutionsCount ? (openBlock(), createElementBlock("span", _hoisted_2$1, toDisplayString(unref(i18n).baseText("ndv.output.andSubExecutions", {
4607
- adjustToNumber: activeTaskMetadata.value.subExecutionsCount,
4608
- interpolate: { count: activeTaskMetadata.value.subExecutionsCount }
4609
- })), 1)) : createCommentVNode("", true)
4610
- ]),
4611
- _: 1
4612
- }, 8, ["class"])),
4613
- activeTaskMetadata.value && !(_ctx.paneType === "input" && hasInputOverwrite.value) ? (openBlock(), createBlock(ViewSubExecution, {
4614
- key: 3,
4615
- "task-metadata": activeTaskMetadata.value,
4616
- "display-mode": displayMode.value
4617
- }, null, 8, ["task-metadata", "display-mode"])) : createCommentVNode("", true)
4618
- ], 2)), [
4619
- [vShow, !editMode2.value.enabled]
4620
- ]) : createCommentVNode("", true),
4621
- createBaseVNode("div", {
4622
- ref_key: "dataContainerRef",
4623
- ref: dataContainerRef,
4624
- class: normalizeClass(_ctx.$style.dataContainer),
4625
- "data-test-id": "ndv-data-container"
4626
- }, [
4627
- _ctx.isExecuting && !isWaitNodeWaiting.value ? (openBlock(), createElementBlock("div", {
4628
- key: 0,
4629
- class: normalizeClass(_ctx.$style.center),
4630
- "data-test-id": "ndv-executing"
4631
- }, [
4632
- createBaseVNode("div", {
4633
- class: normalizeClass(_ctx.$style.spinner)
4634
- }, [
4635
- createVNode(unref(_sfc_main$q), { type: "ring" })
4636
- ], 2),
4637
- createVNode(unref(N8nText), null, {
4638
- default: withCtx(() => [
4639
- createTextVNode(toDisplayString(_ctx.executingMessage), 1)
4640
- ]),
4641
- _: 1
4642
- })
4643
- ], 2)) : editMode2.value.enabled ? (openBlock(), createElementBlock("div", {
4644
- key: 1,
4645
- class: normalizeClass(_ctx.$style.editMode)
4646
- }, [
4647
- createBaseVNode("div", {
4648
- class: normalizeClass([_ctx.$style.editModeBody, "ignore-key-press-canvas"])
4649
- }, [
4650
- createVNode(JsonEditor, {
4651
- "model-value": editMode2.value.value,
4652
- "fill-parent": true,
4653
- "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => unref(ndvStore).setOutputPanelEditModeValue($event))
4654
- }, null, 8, ["model-value"])
4655
- ], 2),
4656
- createBaseVNode("div", {
4657
- class: normalizeClass(_ctx.$style.editModeFooter)
4658
- }, [
4659
- createVNode(unref(InfoTip), {
4660
- bold: false,
4661
- class: normalizeClass(_ctx.$style.editModeFooterInfotip)
4662
- }, {
4663
- default: withCtx(() => [
4664
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.editor.copyDataInfo")) + " ", 1),
4665
- createVNode(unref(N8nLink), {
4666
- to: unref(DATA_EDITING_DOCS_URL),
4667
- size: "small"
4668
- }, {
4669
- default: withCtx(() => [
4670
- createTextVNode(toDisplayString(unref(i18n).baseText("generic.learnMore")), 1)
4671
- ]),
4672
- _: 1
4673
- }, 8, ["to"])
4674
- ]),
4675
- _: 1
4676
- }, 8, ["class"])
4677
- ], 2)
4678
- ], 2)) : _ctx.paneType === "output" && hasSubworkflowExecutionError.value && subworkflowExecutionError.value ? (openBlock(), createElementBlock("div", {
4679
- key: 2,
4680
- class: normalizeClass(_ctx.$style.stretchVertically)
4681
- }, [
4682
- createVNode(_sfc_main$r, {
4683
- error: subworkflowExecutionError.value,
4684
- class: normalizeClass(_ctx.$style.errorDisplay)
4685
- }, null, 8, ["error", "class"])
4686
- ], 2)) : isWaitNodeWaiting.value ? (openBlock(), createElementBlock("div", {
4687
- key: 3,
4688
- class: normalizeClass(_ctx.$style.center)
4689
- }, [
4690
- renderSlot(_ctx.$slots, "node-waiting", {}, () => [
4691
- _cache[9] || (_cache[9] = createTextVNode("xxx"))
4692
- ], true)
4693
- ], 2)) : !hasNodeRun.value && !(displaysMultipleNodes.value && (node2.value?.disabled || unref(hasPreviewSchema))) ? (openBlock(), createElementBlock("div", {
4694
- key: 4,
4695
- class: normalizeClass(_ctx.$style.center)
4696
- }, [
4697
- renderSlot(_ctx.$slots, "node-not-run", {}, void 0, true)
4698
- ], 2)) : _ctx.paneType === "input" && !displaysMultipleNodes.value && node2.value?.disabled ? (openBlock(), createElementBlock("div", {
4699
- key: 5,
4700
- class: normalizeClass(_ctx.$style.center)
4701
- }, [
4702
- createVNode(unref(N8nText), null, {
4703
- default: withCtx(() => [
4704
- createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.disabled", { interpolate: { nodeName: node2.value.name } })) + " ", 1),
4705
- createVNode(unref(N8nLink), { onClick: enableNode }, {
4706
- default: withCtx(() => [
4707
- createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.disabled.cta")), 1)
4708
- ]),
4709
- _: 1
4710
- })
4711
- ]),
4712
- _: 1
4713
- })
4714
- ], 2)) : isTrimmedManualExecutionDataItem.value && unref(uiStore).isProcessingExecutionResults ? (openBlock(), createElementBlock("div", {
4715
- key: 6,
4716
- class: normalizeClass(_ctx.$style.center)
4717
- }, [
4718
- createBaseVNode("div", {
4719
- class: normalizeClass(_ctx.$style.spinner)
4720
- }, [
4721
- createVNode(unref(_sfc_main$q), { type: "ring" })
4722
- ], 2),
4723
- createVNode(unref(N8nText), {
4724
- color: "text-dark",
4725
- size: "large"
4726
- }, {
4727
- default: withCtx(() => [
4728
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.trimmedData.loading")), 1)
4729
- ]),
4730
- _: 1
4731
- })
4732
- ], 2)) : isTrimmedManualExecutionDataItem.value ? (openBlock(), createElementBlock("div", {
4733
- key: 7,
4734
- class: normalizeClass(_ctx.$style.center)
4735
- }, [
4736
- createVNode(unref(N8nText), {
4737
- bold: "",
4738
- color: "text-dark",
4739
- size: "large"
4740
- }, {
4741
- default: withCtx(() => [
4742
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.trimmedData.title")), 1)
4743
- ]),
4744
- _: 1
4745
- }),
4746
- createVNode(unref(N8nText), null, {
4747
- default: withCtx(() => [
4748
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.trimmedData.message")), 1)
4749
- ]),
4750
- _: 1
4751
- })
4752
- ], 2)) : hasNodeRun.value && isArtificialRecoveredEventItem.value ? (openBlock(), createElementBlock("div", {
4753
- key: 8,
4754
- class: normalizeClass(_ctx.$style.center)
4755
- }, [
4756
- renderSlot(_ctx.$slots, "recovered-artificial-output-data", {}, void 0, true)
4757
- ], 2)) : hasNodeRun.value && hasRunError.value ? (openBlock(), createElementBlock("div", {
4758
- key: 9,
4759
- class: normalizeClass(_ctx.$style.stretchVertically)
4760
- }, [
4761
- isPaneTypeInput.value ? (openBlock(), createBlock(unref(N8nText), {
4762
- key: 0,
4763
- class: normalizeClass(_ctx.$style.center),
4764
- size: "large",
4765
- tag: "p",
4766
- bold: ""
4767
- }, {
4768
- default: withCtx(() => [
4769
- createTextVNode(toDisplayString(unref(i18n).baseText("nodeErrorView.inputPanel.previousNodeError.title", {
4770
- interpolate: { nodeName: node2.value?.name ?? "" }
4771
- })), 1)
4772
- ]),
4773
- _: 1
4774
- }, 8, ["class"])) : _ctx.$slots["content"] ? (openBlock(), createElementBlock("div", _hoisted_3$1, [
4775
- workflowRunErrorAsNodeError.value ? (openBlock(), createBlock(_sfc_main$r, {
4776
- key: 0,
4777
- error: workflowRunErrorAsNodeError.value,
4778
- class: normalizeClass(_ctx.$style.inlineError),
4779
- compact: ""
4780
- }, null, 8, ["error", "class"])) : createCommentVNode("", true),
4781
- renderSlot(_ctx.$slots, "content", {}, void 0, true)
4782
- ])) : workflowRunErrorAsNodeError.value ? (openBlock(), createBlock(_sfc_main$r, {
4783
- key: 2,
4784
- error: workflowRunErrorAsNodeError.value,
4785
- class: normalizeClass(_ctx.$style.dataDisplay)
4786
- }, null, 8, ["error", "class"])) : createCommentVNode("", true)
4787
- ], 2)) : hasNodeRun.value && (!unfilteredDataCount.value || search2.value && !dataCount.value) && branches.value.length > 1 ? (openBlock(), createElementBlock("div", {
4788
- key: 10,
4789
- class: normalizeClass(_ctx.$style.center)
4790
- }, [
4791
- search2.value ? (openBlock(), createElementBlock("div", _hoisted_4$1, [
4792
- createVNode(unref(N8nText), {
4793
- tag: "h3",
4794
- size: "large"
4795
- }, {
4796
- default: withCtx(() => [
4797
- createTextVNode(toDisplayString(unref(i18n).baseText("ndv.search.noMatch.title")), 1)
4798
- ]),
4799
- _: 1
4800
- }),
4801
- createVNode(unref(N8nText), null, {
4802
- default: withCtx(() => [
4803
- createVNode(_component_i18n_t, {
4804
- keypath: "ndv.search.noMatch.description",
4805
- tag: "span"
4806
- }, {
4807
- link: withCtx(() => [
4808
- createBaseVNode("a", {
4809
- href: "#",
4810
- onClick: onSearchClear
4811
- }, toDisplayString(unref(i18n).baseText("ndv.search.noMatch.description.link")), 1)
4812
- ]),
4813
- _: 1
4814
- })
4815
- ]),
4816
- _: 1
4817
- })
4818
- ])) : (openBlock(), createBlock(unref(N8nText), { key: 1 }, {
4819
- default: withCtx(() => [
4820
- createTextVNode(toDisplayString(_ctx.noDataInBranchMessage), 1)
4821
- ]),
4822
- _: 1
4823
- }))
4824
- ], 2)) : hasNodeRun.value && !inputData.value.length && !search2.value ? (openBlock(), createElementBlock("div", {
4825
- key: 11,
4826
- class: normalizeClass(_ctx.$style.center)
4827
- }, [
4828
- renderSlot(_ctx.$slots, "no-output-data", {}, () => [
4829
- _cache[10] || (_cache[10] = createTextVNode("xxx"))
4830
- ], true)
4831
- ], 2)) : hasNodeRun.value && !showData.value ? (openBlock(), createElementBlock("div", {
4832
- key: 12,
4833
- "data-test-id": "ndv-data-size-warning",
4834
- class: normalizeClass(_ctx.$style.center)
4835
- }, [
4836
- createVNode(unref(N8nText), {
4837
- bold: true,
4838
- color: "text-dark",
4839
- size: "large"
4840
- }, {
4841
- default: withCtx(() => [
4842
- createTextVNode(toDisplayString(_ctx.tooMuchDataTitle), 1)
4843
- ]),
4844
- _: 1
4845
- }),
4846
- createVNode(unref(N8nText), {
4847
- align: "center",
4848
- tag: "div"
4849
- }, {
4850
- default: withCtx(() => [
4851
- withDirectives(createBaseVNode("span", null, null, 512), [
4852
- [
4853
- _directive_n8n_html,
4854
- unref(i18n).baseText("ndv.output.tooMuchData.message", {
4855
- interpolate: { size: dataSizeInMB.value }
4856
- })
4857
- ]
4858
- ])
4859
- ]),
4860
- _: 1
4861
- }),
4862
- createVNode(unref(N8nButton), {
4863
- outline: "",
4864
- label: unref(i18n).baseText("ndv.output.tooMuchData.showDataAnyway"),
4865
- onClick: showTooMuchData
4866
- }, null, 8, ["label"]),
4867
- createVNode(unref(N8nButton), {
4868
- size: "small",
4869
- label: unref(i18n).baseText("runData.downloadBinaryData"),
4870
- onClick: _cache[7] || (_cache[7] = ($event) => downloadJsonData())
4871
- }, null, 8, ["label"])
4872
- ], 2)) : hasNodeRun.value && _ctx.$slots["content"] ? renderSlot(_ctx.$slots, "content", { key: 13 }, void 0, true) : hasNodeRun.value && displayMode.value === "table" && binaryData.value.length > 0 && inputData.value.length === 1 && Object.keys(jsonData.value[0] || {}).length === 0 ? (openBlock(), createElementBlock("div", {
4873
- key: 14,
4874
- class: normalizeClass(_ctx.$style.center)
4875
- }, [
4876
- createVNode(unref(N8nText), null, {
4877
- default: withCtx(() => [
4878
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.switchToBinary.info")) + " ", 1),
4879
- createBaseVNode("a", { onClick: switchToBinary }, toDisplayString(unref(i18n).baseText("runData.switchToBinary.binary")), 1)
4880
- ]),
4881
- _: 1
4882
- })
4883
- ], 2)) : showIoSearchNoMatchContent.value ? (openBlock(), createElementBlock("div", {
4884
- key: 15,
4885
- class: normalizeClass(_ctx.$style.center)
4886
- }, [
4887
- createVNode(unref(N8nText), {
4888
- tag: "h3",
4889
- size: "large"
4890
- }, {
4891
- default: withCtx(() => [
4892
- createTextVNode(toDisplayString(unref(i18n).baseText("ndv.search.noMatch.title")), 1)
4893
- ]),
4894
- _: 1
4895
- }),
4896
- createVNode(unref(N8nText), null, {
4897
- default: withCtx(() => [
4898
- createVNode(_component_i18n_t, {
4899
- keypath: "ndv.search.noMatch.description",
4900
- tag: "span"
4901
- }, {
4902
- link: withCtx(() => [
4903
- createBaseVNode("a", {
4904
- href: "#",
4905
- onClick: onSearchClear
4906
- }, toDisplayString(unref(i18n).baseText("ndv.search.noMatch.description.link")), 1)
4907
- ]),
4908
- _: 1
4909
- })
4910
- ]),
4911
- _: 1
4912
- })
4913
- ], 2)) : hasNodeRun.value && displayMode.value === "table" && node2.value ? (openBlock(), createBlock(Suspense, { key: 16 }, {
4914
- default: withCtx(() => [
4915
- createVNode(unref(LazyRunDataTable), {
4916
- node: node2.value,
4917
- "input-data": inputDataPage.value,
4918
- "mapping-enabled": _ctx.mappingEnabled,
4919
- "distance-from-active": _ctx.distanceFromActive,
4920
- "run-index": _ctx.runIndex,
4921
- "page-offset": currentPageOffset.value,
4922
- "total-runs": maxRunIndex.value,
4923
- "has-default-hover-state": _ctx.paneType === "input" && !search2.value,
4924
- search: search2.value,
4925
- onMounted: _cache[8] || (_cache[8] = ($event) => emit("tableMounted", $event)),
4926
- onActiveRowChanged: onItemHover,
4927
- onDisplayModeChange
4928
- }, null, 8, ["node", "input-data", "mapping-enabled", "distance-from-active", "run-index", "page-offset", "total-runs", "has-default-hover-state", "search"])
4929
- ]),
4930
- _: 1
4931
- })) : hasNodeRun.value && displayMode.value === "json" && node2.value ? (openBlock(), createBlock(Suspense, { key: 17 }, {
4932
- default: withCtx(() => [
4933
- createVNode(unref(LazyRunDataJson), {
4934
- "pane-type": _ctx.paneType,
4935
- "edit-mode": editMode2.value,
4936
- "push-ref": _ctx.pushRef,
4937
- node: node2.value,
4938
- "input-data": inputDataPage.value,
4939
- "mapping-enabled": _ctx.mappingEnabled,
4940
- "distance-from-active": _ctx.distanceFromActive,
4941
- "run-index": _ctx.runIndex,
4942
- "output-index": currentOutputIndex.value,
4943
- "total-runs": maxRunIndex.value,
4944
- search: search2.value
4945
- }, null, 8, ["pane-type", "edit-mode", "push-ref", "node", "input-data", "mapping-enabled", "distance-from-active", "run-index", "output-index", "total-runs", "search"])
4946
- ]),
4947
- _: 1
4948
- })) : hasNodeRun.value && isPaneTypeOutput.value && displayMode.value === "html" ? (openBlock(), createBlock(Suspense, { key: 18 }, {
4949
- default: withCtx(() => [
4950
- createVNode(unref(LazyRunDataHtml), { "input-html": inputHtml.value }, null, 8, ["input-html"])
4951
- ]),
4952
- _: 1
4953
- })) : (hasNodeRun.value || unref(hasPreviewSchema)) && isSchemaView.value ? (openBlock(), createBlock(Suspense, { key: 19 }, {
4954
- default: withCtx(() => [
4955
- createVNode(unref(LazyRunDataSchema), {
4956
- nodes: _ctx.nodes,
4957
- "mapping-enabled": _ctx.mappingEnabled,
4958
- node: node2.value,
4959
- data: jsonData.value,
4960
- "pane-type": _ctx.paneType,
4961
- "connection-type": connectionType2.value,
4962
- "run-index": _ctx.runIndex,
4963
- "output-index": currentOutputIndex.value,
4964
- "total-runs": maxRunIndex.value,
4965
- search: search2.value,
4966
- class: normalizeClass(_ctx.$style.schema),
4967
- "onClear:search": onSearchClear
4968
- }, null, 8, ["nodes", "mapping-enabled", "node", "data", "pane-type", "connection-type", "run-index", "output-index", "total-runs", "search", "class"])
4969
- ]),
4970
- _: 1
4971
- })) : displayMode.value === "binary" && binaryData.value.length === 0 ? (openBlock(), createElementBlock("div", {
4972
- key: 20,
4973
- class: normalizeClass(_ctx.$style.center)
4974
- }, [
4975
- createVNode(unref(N8nText), {
4976
- align: "center",
4977
- tag: "div"
4978
- }, {
4979
- default: withCtx(() => [
4980
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.noBinaryDataFound")), 1)
4981
- ]),
4982
- _: 1
4983
- })
4984
- ], 2)) : displayMode.value === "binary" ? (openBlock(), createElementBlock("div", {
4985
- key: 21,
4986
- class: normalizeClass(_ctx.$style.dataDisplay)
4987
- }, [
4988
- (openBlock(true), createElementBlock(Fragment, null, renderList(binaryData.value, (binaryDataEntry, index) => {
4989
- return openBlock(), createElementBlock("div", { key: index }, [
4990
- binaryData.value.length > 1 ? (openBlock(), createElementBlock("div", {
4991
- key: 0,
4992
- class: normalizeClass(_ctx.$style.binaryIndex)
4993
- }, [
4994
- createBaseVNode("div", null, toDisplayString(index + 1), 1)
4995
- ], 2)) : createCommentVNode("", true),
4996
- createBaseVNode("div", {
4997
- class: normalizeClass(_ctx.$style.binaryRow)
4998
- }, [
4999
- (openBlock(true), createElementBlock(Fragment, null, renderList(binaryDataEntry, (binaryData2, key) => {
5000
- return openBlock(), createElementBlock("div", {
5001
- key: index + "_" + key,
5002
- class: normalizeClass(_ctx.$style.binaryCell)
5003
- }, [
5004
- createBaseVNode("div", {
5005
- "data-test-id": "ndv-binary-data_" + index
5006
- }, [
5007
- createBaseVNode("div", {
5008
- class: normalizeClass(_ctx.$style.binaryHeader)
5009
- }, toDisplayString(key), 3),
5010
- binaryData2.fileName ? (openBlock(), createElementBlock("div", _hoisted_6$1, [
5011
- createBaseVNode("div", null, [
5012
- createVNode(unref(N8nText), {
5013
- size: "small",
5014
- bold: true
5015
- }, {
5016
- default: withCtx(() => [
5017
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.fileName")) + ": ", 1)
5018
- ]),
5019
- _: 1
5020
- })
5021
- ]),
5022
- createBaseVNode("div", {
5023
- class: normalizeClass(_ctx.$style.binaryValue)
5024
- }, toDisplayString(binaryData2.fileName), 3)
5025
- ])) : createCommentVNode("", true),
5026
- binaryData2.directory ? (openBlock(), createElementBlock("div", _hoisted_7$1, [
5027
- createBaseVNode("div", null, [
5028
- createVNode(unref(N8nText), {
5029
- size: "small",
5030
- bold: true
5031
- }, {
5032
- default: withCtx(() => [
5033
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.directory")) + ": ", 1)
5034
- ]),
5035
- _: 1
5036
- })
5037
- ]),
5038
- createBaseVNode("div", {
5039
- class: normalizeClass(_ctx.$style.binaryValue)
5040
- }, toDisplayString(binaryData2.directory), 3)
5041
- ])) : createCommentVNode("", true),
5042
- binaryData2.fileExtension ? (openBlock(), createElementBlock("div", _hoisted_8$1, [
5043
- createBaseVNode("div", null, [
5044
- createVNode(unref(N8nText), {
5045
- size: "small",
5046
- bold: true
5047
- }, {
5048
- default: withCtx(() => [
5049
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.fileExtension")) + ":", 1)
5050
- ]),
5051
- _: 1
5052
- })
5053
- ]),
5054
- createBaseVNode("div", {
5055
- class: normalizeClass(_ctx.$style.binaryValue)
5056
- }, toDisplayString(binaryData2.fileExtension), 3)
5057
- ])) : createCommentVNode("", true),
5058
- binaryData2.mimeType ? (openBlock(), createElementBlock("div", _hoisted_9, [
5059
- createBaseVNode("div", null, [
5060
- createVNode(unref(N8nText), {
5061
- size: "small",
5062
- bold: true
5063
- }, {
5064
- default: withCtx(() => [
5065
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.mimeType")) + ": ", 1)
5066
- ]),
5067
- _: 1
5068
- })
5069
- ]),
5070
- createBaseVNode("div", {
5071
- class: normalizeClass(_ctx.$style.binaryValue)
5072
- }, toDisplayString(binaryData2.mimeType), 3)
5073
- ])) : createCommentVNode("", true),
5074
- binaryData2.fileSize ? (openBlock(), createElementBlock("div", _hoisted_10, [
5075
- createBaseVNode("div", null, [
5076
- createVNode(unref(N8nText), {
5077
- size: "small",
5078
- bold: true
5079
- }, {
5080
- default: withCtx(() => [
5081
- createTextVNode(toDisplayString(unref(i18n).baseText("runData.fileSize")) + ": ", 1)
5082
- ]),
5083
- _: 1
5084
- })
5085
- ]),
5086
- createBaseVNode("div", {
5087
- class: normalizeClass(_ctx.$style.binaryValue)
5088
- }, toDisplayString(binaryData2.fileSize), 3)
5089
- ])) : createCommentVNode("", true),
5090
- createBaseVNode("div", {
5091
- class: normalizeClass(_ctx.$style.binaryButtonContainer)
5092
- }, [
5093
- isViewable(index, key) ? (openBlock(), createBlock(unref(N8nButton), {
5094
- key: 0,
5095
- size: "small",
5096
- label: unref(i18n).baseText("runData.showBinaryData"),
5097
- "data-test-id": "ndv-view-binary-data",
5098
- onClick: ($event) => displayBinaryData(index, key)
5099
- }, null, 8, ["label", "onClick"])) : createCommentVNode("", true),
5100
- isDownloadable(index, key) ? (openBlock(), createBlock(unref(N8nButton), {
5101
- key: 1,
5102
- size: "small",
5103
- type: "secondary",
5104
- label: unref(i18n).baseText("runData.downloadBinaryData"),
5105
- "data-test-id": "ndv-download-binary-data",
5106
- onClick: ($event) => downloadBinaryData(index, key)
5107
- }, null, 8, ["label", "onClick"])) : createCommentVNode("", true)
5108
- ], 2)
5109
- ], 8, _hoisted_5$1)
5110
- ], 2);
5111
- }), 128))
5112
- ], 2)
5113
- ]);
5114
- }), 128))
5115
- ], 2)) : createCommentVNode("", true)
5116
- ], 2),
5117
- _ctx.hidePagination === false && hasNodeRun.value && !hasRunError.value && displayMode.value !== "binary" && dataCount.value > pageSize.value && !isSchemaView.value && !isArtificialRecoveredEventItem.value ? withDirectives((openBlock(), createElementBlock("div", {
5118
- key: 8,
5119
- class: normalizeClass(_ctx.$style.pagination),
5120
- "data-test-id": "ndv-data-pagination"
5121
- }, [
5122
- createVNode(_component_el_pagination, {
5123
- background: "",
5124
- "hide-on-single-page": true,
5125
- "current-page": currentPage.value,
5126
- "pager-count": 5,
5127
- "page-size": pageSize.value,
5128
- layout: "prev, pager, next",
5129
- total: dataCount.value,
5130
- "onUpdate:currentPage": onCurrentPageChange
5131
- }, null, 8, ["current-page", "page-size", "total"]),
5132
- createBaseVNode("div", {
5133
- class: normalizeClass(_ctx.$style.pageSizeSelector)
5134
- }, [
5135
- createVNode(unref(N8nSelect), {
5136
- size: "mini",
5137
- "model-value": pageSize.value,
5138
- teleported: "",
5139
- "onUpdate:modelValue": onPageSizeChange
5140
- }, {
5141
- prepend: withCtx(() => [
5142
- createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.pageSize")), 1)
5143
- ]),
5144
- default: withCtx(() => [
5145
- (openBlock(), createElementBlock(Fragment, null, renderList(pageSizes, (size) => {
5146
- return createVNode(unref(_sfc_main$p), {
5147
- key: size,
5148
- label: size,
5149
- value: size
5150
- }, null, 8, ["label", "value"]);
5151
- }), 64)),
5152
- createVNode(unref(_sfc_main$p), {
5153
- label: unref(i18n).baseText("ndv.output.all"),
5154
- value: dataCount.value
5155
- }, null, 8, ["label", "value"])
5156
- ]),
5157
- _: 1
5158
- }, 8, ["model-value"])
5159
- ], 2)
5160
- ], 2)), [
5161
- [vShow, !editMode2.value.enabled]
5162
- ]) : createCommentVNode("", true),
5163
- createVNode(unref(N8nBlockUi), {
5164
- show: _ctx.blockUI,
5165
- class: normalizeClass(_ctx.$style.uiBlocker)
5166
- }, null, 8, ["show", "class"])
5167
- ], 34);
5168
- };
5169
- }
5170
- });
5171
- const infoIcon = "_infoIcon_1vmxg_123";
5172
- const center = "_center_1vmxg_127";
5173
- const container$1 = "_container_1vmxg_141";
5174
- const pinnedDataCallout = "_pinnedDataCallout_1vmxg_150";
5175
- const header$1 = "_header_1vmxg_158";
5176
- const dataContainer = "_dataContainer_1vmxg_173";
5177
- const dataDisplay = "_dataDisplay_1vmxg_182";
5178
- const inlineError = "_inlineError_1vmxg_194";
5179
- const outputs = "_outputs_1vmxg_201";
5180
- const tabs = "_tabs_1vmxg_210";
5181
- const itemsCount = "_itemsCount_1vmxg_218";
5182
- const itemsText = "_itemsText_1vmxg_227";
5183
- const muted = "_muted_1vmxg_233";
5184
- const inputSelect = "_inputSelect_1vmxg_238";
5185
- const runSelector = "_runSelector_1vmxg_244";
5186
- const runSelectorInner = "_runSelectorInner_1vmxg_257";
5187
- const runSelectorSelect = "_runSelectorSelect_1vmxg_263";
5188
- const search = "_search_1vmxg_267";
5189
- const pagination = "_pagination_1vmxg_271";
5190
- const pageSizeSelector = "_pageSizeSelector_1vmxg_281";
5191
- const binaryIndex = "_binaryIndex_1vmxg_287";
5192
- const binaryRow = "_binaryRow_1vmxg_304";
5193
- const binaryCell = "_binaryCell_1vmxg_309";
5194
- const binaryHeader = "_binaryHeader_1vmxg_321";
5195
- const binaryButtonContainer = "_binaryButtonContainer_1vmxg_330";
5196
- const binaryValue = "_binaryValue_1vmxg_341";
5197
- const displayModes = "_displayModes_1vmxg_346";
5198
- const tooltipContain = "_tooltipContain_1vmxg_353";
5199
- const spinner = "_spinner_1vmxg_357";
5200
- const editMode = "_editMode_1vmxg_368";
5201
- const editModeBody = "_editModeBody_1vmxg_377";
5202
- const editModeFooter = "_editModeFooter_1vmxg_384";
5203
- const editModeFooterInfotip = "_editModeFooterInfotip_1vmxg_394";
5204
- const editModeActions = "_editModeActions_1vmxg_400";
5205
- const stretchVertically = "_stretchVertically_1vmxg_407";
5206
- const uiBlocker = "_uiBlocker_1vmxg_411";
5207
- const hintCallout = "_hintCallout_1vmxg_416";
5208
- const schema = "_schema_1vmxg_422";
5209
- const style0$5 = {
5210
- infoIcon,
5211
- center,
5212
- container: container$1,
5213
- pinnedDataCallout,
5214
- header: header$1,
5215
- dataContainer,
5216
- "actions-group": "_actions-group_1vmxg_178",
5217
- dataDisplay,
5218
- inlineError,
5219
- outputs,
5220
- tabs,
5221
- itemsCount,
5222
- itemsText,
5223
- muted,
5224
- inputSelect,
5225
- runSelector,
5226
- runSelectorInner,
5227
- runSelectorSelect,
5228
- search,
5229
- pagination,
5230
- pageSizeSelector,
5231
- binaryIndex,
5232
- binaryRow,
5233
- binaryCell,
5234
- binaryHeader,
5235
- binaryButtonContainer,
5236
- binaryValue,
5237
- displayModes,
5238
- tooltipContain,
5239
- spinner,
5240
- editMode,
5241
- editModeBody,
5242
- editModeFooter,
5243
- editModeFooterInfotip,
5244
- editModeActions,
5245
- stretchVertically,
5246
- uiBlocker,
5247
- hintCallout,
5248
- schema
5249
- };
5250
2735
  const cssModules$6 = {
5251
2736
  "$style": style0$5
5252
2737
  };
5253
- const RunData = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__cssModules", cssModules$6], ["__scopeId", "data-v-7bd2e155"]]);
2738
+ const NDVDraggablePanels = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__cssModules", cssModules$6]]);
5254
2739
  const _sfc_main$6 = /* @__PURE__ */ defineComponent({
5255
2740
  __name: "RunInfo",
5256
2741
  props: {
@@ -5457,25 +2942,25 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
5457
2942
  if (!node2.value || workflowExecution.value === null) {
5458
2943
  return null;
5459
2944
  }
5460
- const runData = workflowRunData.value;
5461
- if (runData === null || !runData.hasOwnProperty(node2.value.name)) {
2945
+ const runData2 = workflowRunData.value;
2946
+ if (runData2 === null || !runData2.hasOwnProperty(node2.value.name)) {
5462
2947
  return null;
5463
2948
  }
5464
- if (runData[node2.value.name].length <= props.runIndex) {
2949
+ if (runData2[node2.value.name].length <= props.runIndex) {
5465
2950
  return null;
5466
2951
  }
5467
- return runData[node2.value.name][props.runIndex];
2952
+ return runData2[node2.value.name][props.runIndex];
5468
2953
  });
5469
2954
  const runsCount = computed(() => {
5470
2955
  if (node2.value === null) {
5471
2956
  return 0;
5472
2957
  }
5473
- const runData = workflowRunData.value;
5474
- if (runData === null || node2.value && !runData.hasOwnProperty(node2.value.name)) {
2958
+ const runData2 = workflowRunData.value;
2959
+ if (runData2 === null || node2.value && !runData2.hasOwnProperty(node2.value.name)) {
5475
2960
  return 0;
5476
2961
  }
5477
- if (node2.value && runData[node2.value.name].length) {
5478
- return runData[node2.value.name].length;
2962
+ if (node2.value && runData2[node2.value.name].length) {
2963
+ return runData2[node2.value.name].length;
5479
2964
  }
5480
2965
  return 0;
5481
2966
  });
@@ -5571,6 +3056,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
5571
3056
  return openBlock(), createBlock(RunData, {
5572
3057
  ref_key: "runDataRef",
5573
3058
  ref: runDataRef,
3059
+ class: normalizeClass(_ctx.$style.runData),
5574
3060
  node: node2.value,
5575
3061
  workflow: _ctx.workflow,
5576
3062
  "run-index": _ctx.runIndex,
@@ -5742,16 +3228,18 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
5742
3228
  ]),
5743
3229
  key: "1"
5744
3230
  } : void 0
5745
- ]), 1032, ["node", "workflow", "run-index", "linked-runs", "can-link-runs", "too-much-data-title", "no-data-in-branch-message", "is-executing", "executing-message", "push-ref", "block-u-i", "is-production-execution-preview", "is-pane-active", "hide-pagination", "data-output-type", "callout-message"]);
3231
+ ]), 1032, ["class", "node", "workflow", "run-index", "linked-runs", "can-link-runs", "too-much-data-title", "no-data-in-branch-message", "is-executing", "executing-message", "push-ref", "block-u-i", "is-production-execution-preview", "is-pane-active", "hide-pagination", "data-output-type", "callout-message"]);
5746
3232
  };
5747
3233
  }
5748
3234
  });
5749
- const outputTypeSelect = "_outputTypeSelect_1g8bw_128";
5750
- const titleSection$1 = "_titleSection_1g8bw_133";
5751
- const title$2 = "_title_1g8bw_133";
5752
- const noOutputData$1 = "_noOutputData_1g8bw_149";
5753
- const recoveredOutputData$1 = "_recoveredOutputData_1g8bw_159";
3235
+ const runData$1 = "_runData_6c8lp_128";
3236
+ const outputTypeSelect = "_outputTypeSelect_6c8lp_132";
3237
+ const titleSection$1 = "_titleSection_6c8lp_137";
3238
+ const title$2 = "_title_6c8lp_137";
3239
+ const noOutputData$1 = "_noOutputData_6c8lp_153";
3240
+ const recoveredOutputData$1 = "_recoveredOutputData_6c8lp_163";
5754
3241
  const style0$3 = {
3242
+ runData: runData$1,
5755
3243
  outputTypeSelect,
5756
3244
  titleSection: titleSection$1,
5757
3245
  title: title$2,
@@ -5853,7 +3341,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
5853
3341
  "onUpdate:modelValue": onInputNodeChange
5854
3342
  }, {
5855
3343
  prefix: withCtx(() => [
5856
- createVNode(_sfc_main$l, {
3344
+ createVNode(_sfc_main$g, {
5857
3345
  disabled: selectedInputNode.value?.disabled,
5858
3346
  "node-type": selectedInputNodeType.value,
5859
3347
  size: 14,
@@ -5870,7 +3358,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
5870
3358
  "data-test-id": "ndv-input-option"
5871
3359
  }, {
5872
3360
  default: withCtx(() => [
5873
- createVNode(_sfc_main$l, {
3361
+ createVNode(_sfc_main$g, {
5874
3362
  disabled: node2.disabled,
5875
3363
  "node-type": type,
5876
3364
  size: 14,
@@ -5985,21 +3473,21 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
5985
3473
  });
5986
3474
  const isActiveNodeConfig = computed(() => {
5987
3475
  let inputs = activeNodeType.value?.inputs ?? [];
5988
- let outputs2 = activeNodeType.value?.outputs ?? [];
3476
+ let outputs = activeNodeType.value?.outputs ?? [];
5989
3477
  if (props.workflow && activeNode.value) {
5990
3478
  const node2 = props.workflow.getNode(activeNode.value.name);
5991
3479
  if (node2 && activeNodeType.value) {
5992
3480
  inputs = getNodeInputs(props.workflow, node2, activeNodeType.value);
5993
- outputs2 = getNodeOutputs(props.workflow, node2, activeNodeType.value);
3481
+ outputs = getNodeOutputs(props.workflow, node2, activeNodeType.value);
5994
3482
  }
5995
3483
  }
5996
3484
  if (!Array.isArray(inputs)) {
5997
3485
  inputs = [];
5998
3486
  }
5999
- if (!Array.isArray(outputs2)) {
6000
- outputs2 = [];
3487
+ if (!Array.isArray(outputs)) {
3488
+ outputs = [];
6001
3489
  }
6002
- return inputs.length === 0 || inputs.every((input) => filterOutConnectionType(input, NodeConnectionTypes.Main)) && outputs2.find((output) => filterOutConnectionType(output, NodeConnectionTypes.Main));
3490
+ return inputs.length === 0 || inputs.every((input) => filterOutConnectionType(input, NodeConnectionTypes.Main)) && outputs.find((output) => filterOutConnectionType(output, NodeConnectionTypes.Main));
6003
3491
  });
6004
3492
  const isMappingEnabled = computed(() => {
6005
3493
  if (props.readOnly) return false;
@@ -6037,8 +3525,8 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
6037
3525
  return workflowsStore.getNodeByName(props.currentNodeName ?? "");
6038
3526
  });
6039
3527
  const connectedCurrentNodeOutputs = computed(() => {
6040
- const search2 = parentNodes.value.find(({ name }) => name === props.currentNodeName);
6041
- return search2?.indicies;
3528
+ const search = parentNodes.value.find(({ name }) => name === props.currentNodeName);
3529
+ return search?.indicies;
6042
3530
  });
6043
3531
  const parentNodes = computed(() => {
6044
3532
  if (!activeNode.value) {
@@ -6125,8 +3613,8 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
6125
3613
  function onUnlinkRun() {
6126
3614
  emit("unlinkRun");
6127
3615
  }
6128
- function onSearch(search2) {
6129
- emit("search", search2);
3616
+ function onSearch(search) {
3617
+ emit("search", search);
6130
3618
  }
6131
3619
  function onItemHover(item) {
6132
3620
  emit("itemHover", item);
@@ -6156,6 +3644,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
6156
3644
  const _component_i18n_t = resolveComponent("i18n-t");
6157
3645
  const _directive_n8n_html = resolveDirective("n8n-html");
6158
3646
  return openBlock(), createBlock(RunData, {
3647
+ class: normalizeClass(_ctx.$style.runData),
6159
3648
  node: currentNode.value,
6160
3649
  nodes: isMappingMode.value ? rootNodesParents.value : parentNodes.value,
6161
3650
  workflow: _ctx.workflow,
@@ -6273,7 +3762,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
6273
3762
  ])
6274
3763
  ]),
6275
3764
  default: withCtx(() => [
6276
- createVNode(_sfc_main$m, {
3765
+ createVNode(_sfc_main$h, {
6277
3766
  type: "secondary",
6278
3767
  "hide-icon": "",
6279
3768
  transparent: true,
@@ -6416,18 +3905,20 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
6416
3905
  ]),
6417
3906
  key: "0"
6418
3907
  } : void 0
6419
- ]), 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"]);
3908
+ ]), 1032, ["class", "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"]);
6420
3909
  };
6421
3910
  }
6422
3911
  });
6423
- const mappedNode = "_mappedNode_48j1a_123";
6424
- const titleSection = "_titleSection_48j1a_127";
6425
- const inputModeTab = "_inputModeTab_48j1a_136";
6426
- const noOutputData = "_noOutputData_48j1a_140";
6427
- const recoveredOutputData = "_recoveredOutputData_48j1a_147";
6428
- const notConnected = "_notConnected_48j1a_156";
6429
- const title = "_title_48j1a_127";
3912
+ const runData = "_runData_115kf_123";
3913
+ const mappedNode = "_mappedNode_115kf_127";
3914
+ const titleSection = "_titleSection_115kf_131";
3915
+ const inputModeTab = "_inputModeTab_115kf_140";
3916
+ const noOutputData = "_noOutputData_115kf_144";
3917
+ const recoveredOutputData = "_recoveredOutputData_115kf_151";
3918
+ const notConnected = "_notConnected_115kf_160";
3919
+ const title = "_title_115kf_131";
6430
3920
  const style0$1 = {
3921
+ runData,
6431
3922
  mappedNode,
6432
3923
  titleSection,
6433
3924
  inputModeTab,
@@ -6740,7 +4231,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
6740
4231
  hasIssues2.value || hideContent.value ? (openBlock(), createElementBlock("div", _hoisted_1$1)) : isListeningForEvents.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
6741
4232
  createVNode(_component_n8n_pulse, null, {
6742
4233
  default: withCtx(() => [
6743
- createVNode(_sfc_main$l, {
4234
+ createVNode(_sfc_main$g, {
6744
4235
  "node-type": nodeType.value,
6745
4236
  size: 40
6746
4237
  }, null, 8, ["node-type"])
@@ -6781,7 +4272,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
6781
4272
  "copy-button-text": unref(i18n).baseText("generic.clickToCopy"),
6782
4273
  onCopy: onTestLinkCopied
6783
4274
  }, null, 8, ["value", "toast-title", "copy-button-text"]),
6784
- createVNode(_sfc_main$m, {
4275
+ createVNode(_sfc_main$h, {
6785
4276
  "data-test-id": "trigger-execute-button",
6786
4277
  "node-name": _ctx.nodeName,
6787
4278
  size: "medium",
@@ -6822,7 +4313,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
6822
4313
  _: 1
6823
4314
  })
6824
4315
  ])) : createCommentVNode("", true),
6825
- createVNode(_sfc_main$m, {
4316
+ createVNode(_sfc_main$h, {
6826
4317
  "data-test-id": "trigger-execute-button",
6827
4318
  "node-name": _ctx.nodeName,
6828
4319
  size: "medium",
@@ -6859,7 +4350,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
6859
4350
  _: 1
6860
4351
  })) : createCommentVNode("", true)
6861
4352
  ], 2),
6862
- createVNode(_sfc_main$m, {
4353
+ createVNode(_sfc_main$h, {
6863
4354
  "data-test-id": "trigger-execute-button",
6864
4355
  "node-name": _ctx.nodeName,
6865
4356
  size: "medium",
@@ -7064,12 +4555,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
7064
4555
  if (activeNode.value === null) {
7065
4556
  return 0;
7066
4557
  }
7067
- const runData = workflowRunData.value;
7068
- if (!runData?.[activeNode.value.name]) {
4558
+ const runData2 = workflowRunData.value;
4559
+ if (!runData2?.[activeNode.value.name]) {
7069
4560
  return 0;
7070
4561
  }
7071
- if (runData[activeNode.value.name].length) {
7072
- return runData[activeNode.value.name].length - 1;
4562
+ if (runData2[activeNode.value.name].length) {
4563
+ return runData2[activeNode.value.name].length - 1;
7073
4564
  }
7074
4565
  return 0;
7075
4566
  });
@@ -7084,21 +4575,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
7084
4575
  if (!workflowNode || !activeNodeType.value) {
7085
4576
  return 0;
7086
4577
  }
7087
- const outputs2 = getNodeOutputs(
4578
+ const outputs = getNodeOutputs(
7088
4579
  props.workflowObject,
7089
4580
  workflowNode,
7090
4581
  activeNodeType.value
7091
4582
  );
7092
4583
  let node2 = inputNode.value;
7093
- const runData = workflowRunData.value;
7094
- if (outputs2.some((output) => output !== NodeConnectionTypes.Main)) {
4584
+ const runData2 = workflowRunData.value;
4585
+ if (outputs.some((output) => output !== NodeConnectionTypes.Main)) {
7095
4586
  node2 = activeNode.value;
7096
4587
  }
7097
- if (!node2 || !runData || !runData.hasOwnProperty(node2.name)) {
4588
+ if (!node2 || !runData2 || !runData2.hasOwnProperty(node2.name)) {
7098
4589
  return 0;
7099
4590
  }
7100
- if (runData[node2.name].length) {
7101
- return runData[node2.name].length - 1;
4591
+ if (runData2[node2.name].length) {
4592
+ return runData2[node2.name].length - 1;
7102
4593
  }
7103
4594
  return 0;
7104
4595
  });
@@ -7346,8 +4837,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
7346
4837
  isInputPaneActive.value = false;
7347
4838
  isOutputPaneActive.value = true;
7348
4839
  };
7349
- const onSearch = (search2) => {
7350
- isPairedItemHoveringEnabled.value = !search2;
4840
+ const onSearch = (search) => {
4841
+ isPairedItemHoveringEnabled.value = !search;
7351
4842
  };
7352
4843
  const registerKeyboardListener = () => {
7353
4844
  document.addEventListener("keydown", onKeyDown, true);
@@ -7618,11 +5109,6 @@ const cssModules = {
7618
5109
  "$style": style1
7619
5110
  };
7620
5111
  const NodeDetailsView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
7621
- const NodeDetailsView$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
7622
- __proto__: null,
7623
- default: NodeDetailsView
7624
- }, Symbol.toStringTag, { value: "Module" }));
7625
5112
  export {
7626
- NodeDetailsView$1 as N,
7627
- VueJsonPretty as V
5113
+ NodeDetailsView as default
7628
5114
  };