UNPKG

n8n-editor-ui

Version:

Workflow Editor UI for n8n

1,518 lines 110 kB
;
(function () {
  System.register(["./chunk-legacy-Re9CbdfL.js", "./vue.runtime.esm-bundler-legacy--Sn1h8On.js", "./_MapCache-legacy-DlYNX_X1.js", "./src-legacy-uZTNWMC0.js", "./_plugin-vue_export-helper-legacy-DZMI5HPp.js", "./truncate-legacy-BGje52Or.js", "./useTelemetry-legacy-B3pzzkAE.js", "./constants-legacy-TKxWCqvM.js", "./_baseOrderBy-legacy-CB2Dh5d_.js", "./useRunWorkflow-legacy-BClq6Sr5.js", "./usePinnedData-legacy-CfMMmXZ8.js", "./nodeCreator.store-legacy-BeEd3d8s.js", "./NodeIcon-legacy-D0j2KPV5.js", "./CopyInput-legacy-6Qcnq24Z.js", "./isEmpty-legacy-SNiUTa-Q.js", "./NDVEmptyState-legacy-jxrI30cG.js", "./VirtualSchema-legacy-BpSC2T1v.js", "./FileSaver.min-legacy-D7uxxng5.js", "./dateFormatter-legacy-V7YuOSR6.js", "./useExecutionData-legacy-A_UH2u0j.js", "./useLogsTreeExpand-legacy-xbEIoTcm.js", "./RunDataParsedAiContent-legacy-Bcbvpq-m.js"], function (_export, _context) {
    "use strict";

    var __toESM, computed, toDisplayString, createElementBlock, createCommentVNode, unref, ref, onBeforeUnmount, createVNode, defineComponent, createBlock, onMounted, Fragment, watch, withCtx, openBlock, withModifiers, renderList, createTextVNode, createSlots, Transition, vShow, resolveDirective, normalizeClass, createBaseVNode, withDirectives, shallowRef, I18nT, useI18n, N8nPulse_default, N8nInfoTip_default, N8nButton_default, N8nInfoAccordion_default, N8nRadioButtons_default, N8nSpinner_default, N8nText_default, N8nIcon_default, N8nTooltip_default, N8nLink_default, N8nHeading_default, __plugin_vue_export_helper_default, createEventBus, useRouter, CanvasNodeDirtiness, useUIStore, parseAiContent, formatTokenUsageCount, injectWorkflowState, useNDVStore, useNodeTypesStore, getTriggerNodeServiceName, isTriggerPanelObject, usePostHog, waitingNodeTooltip, useWorkflowHelpers, useWorkflowsStore, useTelemetry, CHAT_TRIGGER_NODE_TYPE, VIEWS, NodeConnectionTypes, FORM_TRIGGER_NODE_TYPE, WORKFLOW_SETTINGS_MODAL_KEY, NDV_UI_OVERHAUL_EXPERIMENT, WEBHOOK_NODE_TYPE, MAX_DISPLAY_DATA_SIZE_LOGS_VIEW, storeToRefs, useNodeDirtiness, useNodeType, usePinnedData, require_capitalize, NodeIcon_default, CopyInput_default, NodeErrorView_default, ViewSubExecution_default, RunData_default, NDVEmptyState_default, NodeExecuteButton_default, require_FileSaver_min, convertToDisplayDateComponents, useExecutionData, findLogEntryById, getConsumedTokens, useLogsExecutionData, ConsumedTokensDetails_default, LogsOverviewRows_default, useLogsTreeExpand, getReferencedData, RunDataParsedAiContent_default, __vite_style__, _hoisted_1$3, FloatingNodePosition, NDVFloatingNodes_vue_vue_type_script_setup_true_lang_default, floatingNodes, nodesList, inputSub, outputSub, outputMain, inputMain, connectedNode, v2, NDVFloatingNodes_vue_vue_type_style_index_0_lang_module_default, cssModules$6, NDVFloatingNodes_default, RunInfo_vue_vue_type_script_setup_true_lang_default, tooltipRow, RunInfo_vue_vue_type_style_index_0_lang_module_default, cssModules$5, RunInfo_default, import_capitalize, import_FileSaver_min, AiRunContentBlock_vue_vue_type_script_setup_true_lang_default, block, blockContent, blockContentExpanded, rawSwitch, blockHeader, blockTitle, blockToggle, error, warning, warningState, warningActions, AiRunContentBlock_vue_vue_type_style_index_0_lang_module_default, cssModules$4, AiRunContentBlock_default, _hoisted_1$2, _hoisted_2$1, _hoisted_3$1, RunDataAiContent_vue_vue_type_script_setup_true_lang_default, container$2, nodeIcon, header$1, headerWrap, title$1, meta, tokensUsage, RunDataAiContent_vue_vue_type_style_index_0_lang_module_default, cssModules$3, RunDataAiContent_default, RunDataAi_vue_vue_type_script_setup_true_lang_default, noData, empty, tree, runData$1, container$1, RunDataAi_vue_vue_type_style_index_0_lang_module_default, cssModules$2, RunDataAi_default, _hoisted_1$1, OutputPanel_vue_vue_type_script_setup_true_lang_default, runData, runDataV2, outputTypeSelect, titleSection, titleSectionV2, title, titleV2, noOutputData, link, spinner, OutputPanel_vue_vue_type_style_index_0_lang_module_default, cssModules$1, OutputPanel_default, _hoisted_1, _hoisted_2, _hoisted_3, _hoisted_4, _hoisted_5, _hoisted_6, _hoisted_7, _hoisted_8, TriggerPanel_vue_vue_type_script_setup_true_lang_default, container, header, action, shake, accordion, TriggerPanel_vue_vue_type_style_index_0_lang_module_default, cssModules, TriggerPanel_default;
    return {
      setters: [function (_chunkLegacy001Js) {
        __toESM = _chunkLegacy001Js.o;
      }, function (_vueRuntimeEsmBundlerLegacy003Js) {
        computed = _vueRuntimeEsmBundlerLegacy003Js.C;
        toDisplayString = _vueRuntimeEsmBundlerLegacy003Js.Cn;
        createElementBlock = _vueRuntimeEsmBundlerLegacy003Js.D;
        createCommentVNode = _vueRuntimeEsmBundlerLegacy003Js.E;
        unref = _vueRuntimeEsmBundlerLegacy003Js.Gt;
        ref = _vueRuntimeEsmBundlerLegacy003Js.It;
        onBeforeUnmount = _vueRuntimeEsmBundlerLegacy003Js.J;
        createVNode = _vueRuntimeEsmBundlerLegacy003Js.M;
        defineComponent = _vueRuntimeEsmBundlerLegacy003Js.P;
        createBlock = _vueRuntimeEsmBundlerLegacy003Js.T;
        onMounted = _vueRuntimeEsmBundlerLegacy003Js.Z;
        Fragment = _vueRuntimeEsmBundlerLegacy003Js._;
        watch = _vueRuntimeEsmBundlerLegacy003Js._t;
        withCtx = _vueRuntimeEsmBundlerLegacy003Js.bt;
        openBlock = _vueRuntimeEsmBundlerLegacy003Js.et;
        withModifiers = _vueRuntimeEsmBundlerLegacy003Js.h;
        renderList = _vueRuntimeEsmBundlerLegacy003Js.it;
        createTextVNode = _vueRuntimeEsmBundlerLegacy003Js.j;
        createSlots = _vueRuntimeEsmBundlerLegacy003Js.k;
        Transition = _vueRuntimeEsmBundlerLegacy003Js.n;
        vShow = _vueRuntimeEsmBundlerLegacy003Js.p;
        resolveDirective = _vueRuntimeEsmBundlerLegacy003Js.st;
        normalizeClass = _vueRuntimeEsmBundlerLegacy003Js.vn;
        createBaseVNode = _vueRuntimeEsmBundlerLegacy003Js.w;
        withDirectives = _vueRuntimeEsmBundlerLegacy003Js.xt;
        shallowRef = _vueRuntimeEsmBundlerLegacy003Js.zt;
      }, function (_MapCacheLegacy005Js) {
        I18nT = _MapCacheLegacy005Js._t;
        useI18n = _MapCacheLegacy005Js.gt;
      }, function (_srcLegacy007Js) {
        N8nPulse_default = _srcLegacy007Js.C;
        N8nInfoTip_default = _srcLegacy007Js.F;
        N8nButton_default = _srcLegacy007Js.Hn;
        N8nInfoAccordion_default = _srcLegacy007Js.I;
        N8nRadioButtons_default = _srcLegacy007Js.S;
        N8nSpinner_default = _srcLegacy007Js.Un;
        N8nText_default = _srcLegacy007Js.Vn;
        N8nIcon_default = _srcLegacy007Js.Wn;
        N8nTooltip_default = _srcLegacy007Js.mt;
        N8nLink_default = _srcLegacy007Js.ut;
        N8nHeading_default = _srcLegacy007Js.zn;
      }, function (_pluginVue_exportHelperLegacy00fJs) {
        __plugin_vue_export_helper_default = _pluginVue_exportHelperLegacy00fJs.t;
      }, function (_truncateLegacy00hJs) {
        createEventBus = _truncateLegacy00hJs.x;
        useRouter = _truncateLegacy00hJs.y;
      }, function (_useTelemetryLegacy00HJs) {
        CanvasNodeDirtiness = _useTelemetryLegacy00HJs.Cr;
        useUIStore = _useTelemetryLegacy00HJs.Fi;
        parseAiContent = _useTelemetryLegacy00HJs.J;
        formatTokenUsageCount = _useTelemetryLegacy00HJs.K;
        injectWorkflowState = _useTelemetryLegacy00HJs.Sn;
        useNDVStore = _useTelemetryLegacy00HJs.a;
        useNodeTypesStore = _useTelemetryLegacy00HJs.at;
        getTriggerNodeServiceName = _useTelemetryLegacy00HJs.ei;
        isTriggerPanelObject = _useTelemetryLegacy00HJs.hr;
        usePostHog = _useTelemetryLegacy00HJs.i;
        waitingNodeTooltip = _useTelemetryLegacy00HJs.it;
        useWorkflowHelpers = _useTelemetryLegacy00HJs.mn;
        useWorkflowsStore = _useTelemetryLegacy00HJs.o;
        useTelemetry = _useTelemetryLegacy00HJs.t;
      }, function (_constantsLegacy00TJs) {
        CHAT_TRIGGER_NODE_TYPE = _constantsLegacy00TJs.Bt;
        VIEWS = _constantsLegacy00TJs.Io;
        NodeConnectionTypes = _constantsLegacy00TJs.Ka;
        FORM_TRIGGER_NODE_TYPE = _constantsLegacy00TJs.dn;
        WORKFLOW_SETTINGS_MODAL_KEY = _constantsLegacy00TJs.hs;
        NDV_UI_OVERHAUL_EXPERIMENT = _constantsLegacy00TJs.ic;
        WEBHOOK_NODE_TYPE = _constantsLegacy00TJs.vr;
        MAX_DISPLAY_DATA_SIZE_LOGS_VIEW = _constantsLegacy00TJs.zs;
      }, function (_baseOrderByLegacy00ZJs) {
        storeToRefs = _baseOrderByLegacy00ZJs.A;
      }, function (_useRunWorkflowLegacy01pJs) {
        useNodeDirtiness = _useRunWorkflowLegacy01pJs.r;
      }, function (_usePinnedDataLegacy01rJs) {
        useNodeType = _usePinnedDataLegacy01rJs.n;
        usePinnedData = _usePinnedDataLegacy01rJs.t;
      }, function (_nodeCreatorStoreLegacy01tJs) {
        require_capitalize = _nodeCreatorStoreLegacy01tJs.y;
      }, function (_NodeIconLegacy01FJs) {
        NodeIcon_default = _NodeIconLegacy01FJs.t;
      }, function (_CopyInputLegacy01XJs) {
        CopyInput_default = _CopyInputLegacy01XJs.t;
      }, function (_isEmptyLegacy021Js) {
        NodeErrorView_default = _isEmptyLegacy021Js.a;
        ViewSubExecution_default = _isEmptyLegacy021Js.i;
        RunData_default = _isEmptyLegacy021Js.n;
      }, function (_NDVEmptyStateLegacy023Js) {
        NDVEmptyState_default = _NDVEmptyStateLegacy023Js.t;
      }, function (_VirtualSchemaLegacy02vJs) {
        NodeExecuteButton_default = _VirtualSchemaLegacy02vJs.n;
      }, function (_FileSaverMinLegacy02HJs) {
        require_FileSaver_min = _FileSaverMinLegacy02HJs.t;
      }, function (_dateFormatterLegacy02LJs) {
        convertToDisplayDateComponents = _dateFormatterLegacy02LJs.n;
      }, function (_useExecutionDataLegacy04vJs) {
        useExecutionData = _useExecutionDataLegacy04vJs.t;
      }, function (_useLogsTreeExpandLegacy06RJs) {
        findLogEntryById = _useLogsTreeExpandLegacy06RJs.c;
        getConsumedTokens = _useLogsTreeExpandLegacy06RJs.d;
        useLogsExecutionData = _useLogsTreeExpandLegacy06RJs.n;
        ConsumedTokensDetails_default = _useLogsTreeExpandLegacy06RJs.o;
        LogsOverviewRows_default = _useLogsTreeExpandLegacy06RJs.r;
        useLogsTreeExpand = _useLogsTreeExpandLegacy06RJs.t;
      }, function (_RunDataParsedAiContentLegacy079Js) {
        getReferencedData = _RunDataParsedAiContentLegacy079Js.n;
        RunDataParsedAiContent_default = _RunDataParsedAiContentLegacy079Js.t;
      }],
      execute: function () {
        __vite_style__ = document.createElement('style');
        __vite_style__.textContent = "/* BEM support Func\n -------------------------- */\n/* Transition\n-------------------------- */\n/* Color\n-------------------------- */\n/* Link\n-------------------------- */\n/* Border\n-------------------------- */\n/* Outline\n-------------------------- */\n/* Box shadow\n-------------------------- */\n/* Fill\n-------------------------- */\n/* Typography\n-------------------------- */\n/* z-index\n-------------------------- */\n/* Disable base\n-------------------------- */\n/* Icon\n-------------------------- */\n/* Checkbox\n-------------------------- */\n/* Radio\n-------------------------- */\n/* Select\n-------------------------- */\n/* Alert\n-------------------------- */\n/* MessageBox\n-------------------------- */\n/* Message\n-------------------------- */\n/* Notification\n-------------------------- */\n/* Input\n-------------------------- */\n/* Cascader\n-------------------------- */\n/* Group\n-------------------------- */\n/* Tab\n-------------------------- */\n/* Button\n-------------------------- */\n/* cascader\n-------------------------- */\n/* Switch\n-------------------------- */\n/* Dialog\n-------------------------- */\n/* Table\n-------------------------- */\n/* Pagination\n-------------------------- */\n/* Popup\n-------------------------- */\n/* Popover\n-------------------------- */\n/* Tooltip\n-------------------------- */\n/* Tag\n-------------------------- */\n/* Tree\n-------------------------- */\n/* Dropdown\n-------------------------- */\n/* Badge\n-------------------------- */\n/* Card\n--------------------------*/\n/* Slider\n--------------------------*/\n/* Steps\n--------------------------*/\n/* Menu\n--------------------------*/\n/* Rate\n--------------------------*/\n/* DatePicker\n--------------------------*/\n/* Loading\n--------------------------*/\n/* Scrollbar\n--------------------------*/\n/* Carousel\n--------------------------*/\n/* Collapse\n--------------------------*/\n/* Transfer\n--------------------------*/\n/* Header\n  --------------------------*/\n/* Footer\n--------------------------*/\n/* Main\n--------------------------*/\n/* Timeline\n--------------------------*/\n/* Backtop\n--------------------------*/\n/* Link\n--------------------------*/\n/* Calendar\n--------------------------*/\n/* Form\n-------------------------- */\n/* Avatar\n--------------------------*/\n/* Break-point\n--------------------------*/\n/* Break-points\n -------------------------- */\n/* Scrollbar\n -------------------------- */\n/* Placeholder\n -------------------------- */\n/* BEM\n -------------------------- */\n._floatingNodes_1bfoo_123 {\n  position: absolute;\n  bottom: 0;\n  top: 0;\n  right: 0;\n  left: 0;\n  z-index: 10;\n  pointer-events: none;\n}\n._nodesList_1bfoo_133 {\n  list-style: none;\n  padding: 0;\n  position: absolute;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  flex-direction: column;\n  width: min-content;\n  margin: auto;\n  transform-origin: center;\n  gap: var(--spacing--sm);\n  transition: transform 0.2s ease-in-out;\n}\n._nodesList_1bfoo_133._inputSub_1bfoo_147, ._nodesList_1bfoo_133._outputSub_1bfoo_147 {\n  right: 0;\n  left: 0;\n  flex-direction: row;\n}\n._nodesList_1bfoo_133._outputSub_1bfoo_147 {\n  top: 0;\n  transform: translateY(-50%);\n}\n._nodesList_1bfoo_133._inputSub_1bfoo_147 {\n  bottom: 0;\n  transform: translateY(50%);\n}\n._nodesList_1bfoo_133._outputMain_1bfoo_160, ._nodesList_1bfoo_133._inputMain_1bfoo_160 {\n  top: 0;\n  bottom: 0;\n}\n._nodesList_1bfoo_133._outputMain_1bfoo_160 {\n  right: 0;\n  transform: translateX(50%);\n}\n._nodesList_1bfoo_133._inputMain_1bfoo_160 {\n  left: 0;\n  transform: translateX(-50%);\n}\n._connectedNode_1bfoo_173 {\n  border: var(--border);\n  background-color: var(--node--color--background);\n  border-radius: 100%;\n  padding: var(--spacing--sm);\n  cursor: pointer;\n  pointer-events: all;\n  transition: transform 0.2s cubic-bezier(0.19, 1, 0.22, 1);\n  position: relative;\n  transform: scale(0.8);\n  display: flex;\n  justify-self: center;\n  align-self: center;\n}\n._connectedNode_1bfoo_173::after {\n  content: \"\";\n  position: absolute;\n  top: -35%;\n  right: -15%;\n  bottom: -35%;\n  left: -15%;\n  z-index: -1;\n}\n._outputMain_1bfoo_160 ._connectedNode_1bfoo_173, ._inputMain_1bfoo_160 ._connectedNode_1bfoo_173 {\n  border-radius: var(--radius--lg);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n._outputMain_1bfoo_160 ._connectedNode_1bfoo_173:hover {\n  transform: scale(1.2) translateX(-50%);\n}\n._outputSub_1bfoo_147 ._connectedNode_1bfoo_173:hover {\n  transform: scale(1.2) translateY(50%);\n}\n._inputMain_1bfoo_160 ._connectedNode_1bfoo_173:hover {\n  transform: scale(1.2) translateX(50%);\n}\n._inputSub_1bfoo_147 ._connectedNode_1bfoo_173:hover {\n  transform: scale(1.2) translateY(-50%);\n}\n._v2_1bfoo_214 ._connectedNode_1bfoo_173 {\n  padding: var(--spacing--xs);\n}\n._v2_1bfoo_214 ._connectedNode_1bfoo_173::after {\n  display: none;\n}\n._v2_1bfoo_214 ._connectedNode_1bfoo_173:hover {\n  transform: scale(1.1);\n}/* BEM support Func\n -------------------------- */\n/* Transition\n-------------------------- */\n/* Color\n-------------------------- */\n/* Link\n-------------------------- */\n/* Border\n-------------------------- */\n/* Outline\n-------------------------- */\n/* Box shadow\n-------------------------- */\n/* Fill\n-------------------------- */\n/* Typography\n-------------------------- */\n/* z-index\n-------------------------- */\n/* Disable base\n-------------------------- */\n/* Icon\n-------------------------- */\n/* Checkbox\n-------------------------- */\n/* Radio\n-------------------------- */\n/* Select\n-------------------------- */\n/* Alert\n-------------------------- */\n/* MessageBox\n-------------------------- */\n/* Message\n-------------------------- */\n/* Notification\n-------------------------- */\n/* Input\n-------------------------- */\n/* Cascader\n-------------------------- */\n/* Group\n-------------------------- */\n/* Tab\n-------------------------- */\n/* Button\n-------------------------- */\n/* cascader\n-------------------------- */\n/* Switch\n-------------------------- */\n/* Dialog\n-------------------------- */\n/* Table\n-------------------------- */\n/* Pagination\n-------------------------- */\n/* Popup\n-------------------------- */\n/* Popover\n-------------------------- */\n/* Tooltip\n-------------------------- */\n/* Tag\n-------------------------- */\n/* Tree\n-------------------------- */\n/* Dropdown\n-------------------------- */\n/* Badge\n-------------------------- */\n/* Card\n--------------------------*/\n/* Slider\n--------------------------*/\n/* Steps\n--------------------------*/\n/* Menu\n--------------------------*/\n/* Rate\n--------------------------*/\n/* DatePicker\n--------------------------*/\n/* Loading\n--------------------------*/\n/* Scrollbar\n--------------------------*/\n/* Carousel\n--------------------------*/\n/* Collapse\n--------------------------*/\n/* Transfer\n--------------------------*/\n/* Header\n  --------------------------*/\n/* Footer\n--------------------------*/\n/* Main\n--------------------------*/\n/* Timeline\n--------------------------*/\n/* Backtop\n--------------------------*/\n/* Link\n--------------------------*/\n/* Calendar\n--------------------------*/\n/* Form\n-------------------------- */\n/* Avatar\n--------------------------*/\n/* Break-point\n--------------------------*/\n/* Break-points\n -------------------------- */\n/* Scrollbar\n -------------------------- */\n/* Placeholder\n -------------------------- */\n/* BEM\n -------------------------- */\n._tooltipRow_1uvh5_123 {\n  display: flex;\n  column-gap: var(--spacing--4xs);\n}/* BEM support Func\n -------------------------- */\n/* Transition\n-------------------------- */\n/* Color\n-------------------------- */\n/* Link\n-------------------------- */\n/* Border\n-------------------------- */\n/* Outline\n-------------------------- */\n/* Box shadow\n-------------------------- */\n/* Fill\n-------------------------- */\n/* Typography\n-------------------------- */\n/* z-index\n-------------------------- */\n/* Disable base\n-------------------------- */\n/* Icon\n-------------------------- */\n/* Checkbox\n-------------------------- */\n/* Radio\n-------------------------- */\n/* Select\n-------------------------- */\n/* Alert\n-------------------------- */\n/* MessageBox\n-------------------------- */\n/* Message\n-------------------------- */\n/* Notification\n-------------------------- */\n/* Input\n-------------------------- */\n/* Cascader\n-------------------------- */\n/* Group\n-------------------------- */\n/* Tab\n-------------------------- */\n/* Button\n-------------------------- */\n/* cascader\n-------------------------- */\n/* Switch\n-------------------------- */\n/* Dialog\n-------------------------- */\n/* Table\n-------------------------- */\n/* Pagination\n-------------------------- */\n/* Popup\n-------------------------- */\n/* Popover\n-------------------------- */\n/* Tooltip\n-------------------------- */\n/* Tag\n-------------------------- */\n/* Tree\n-------------------------- */\n/* Dropdown\n-------------------------- */\n/* Badge\n-------------------------- */\n/* Card\n--------------------------*/\n/* Slider\n--------------------------*/\n/* Steps\n--------------------------*/\n/* Menu\n--------------------------*/\n/* Rate\n--------------------------*/\n/* DatePicker\n--------------------------*/\n/* Loading\n--------------------------*/\n/* Scrollbar\n--------------------------*/\n/* Carousel\n--------------------------*/\n/* Collapse\n--------------------------*/\n/* Transfer\n--------------------------*/\n/* Header\n  --------------------------*/\n/* Footer\n--------------------------*/\n/* Main\n--------------------------*/\n/* Timeline\n--------------------------*/\n/* Backtop\n--------------------------*/\n/* Link\n--------------------------*/\n/* Calendar\n--------------------------*/\n/* Form\n-------------------------- */\n/* Avatar\n--------------------------*/\n/* Break-point\n--------------------------*/\n/* Break-points\n -------------------------- */\n/* Scrollbar\n -------------------------- */\n/* Placeholder\n -------------------------- */\n/* BEM\n -------------------------- */\n._block_1mcvs_123 {\n  padding: var(--spacing--sm) 0 var(--spacing--2xs) var(--spacing--2xs);\n  border: 1px solid var(--color--foreground--tint-1);\n  margin-top: var(--spacing--sm);\n  border-radius: var(--radius);\n}\n:root ._blockContent_1mcvs_130 {\n  height: 0;\n  overflow: hidden;\n}\n:root ._blockContent_1mcvs_130._blockContentExpanded_1mcvs_134 {\n  height: auto;\n}\n._rawSwitch_1mcvs_138 {\n  opacity: 0;\n  height: -moz-fit-content;\n  height: fit-content;\n  margin-left: auto;\n  margin-right: var(--spacing--2xs);\n}\n._block_1mcvs_123:hover ._rawSwitch_1mcvs_138 {\n  opacity: 1;\n}\n._blockHeader_1mcvs_148 {\n  display: flex;\n  gap: var(--spacing--xs);\n  cursor: pointer;\n  /* This hack is needed to make the whole surface of header clickable  */\n  margin: calc(-1 * var(--spacing--xs));\n  padding: var(--spacing--2xs) var(--spacing--xs);\n  align-items: center;\n}\n._blockHeader_1mcvs_148 * {\n  -webkit-user-select: none;\n          user-select: none;\n}\n._blockTitle_1mcvs_161 {\n  font-size: var(--font-size--sm);\n  color: var(--color--text--shade-1);\n  margin: 0;\n  padding-bottom: var(--spacing--4xs);\n}\n._blockToggle_1mcvs_168 {\n  border: none;\n  background: none;\n  padding: 0;\n  color: var(--color--text);\n  margin-top: calc(-1 * var(--spacing--3xs));\n}\n._error_1mcvs_176 {\n  padding: var(--spacing--sm) 0;\n}\n._warning_1mcvs_180 {\n  padding: var(--spacing--sm) var(--spacing--md);\n  text-align: center;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: var(--spacing--sm);\n}\n._warningState_1mcvs_189 {\n  width: 100%;\n}\n._warningActions_1mcvs_193 {\n  display: flex;\n  flex-direction: row;\n  flex-wrap: wrap;\n  justify-content: center;\n  gap: var(--spacing--2xs);\n  width: 100%;\n  align-items: center;\n}\n._warningActions_1mcvs_193 .n8n-button {\n  min-width: 9rem;\n}\n._container_1ddvo_2 {\n\tpadding: 0 var(--spacing--sm) var(--spacing--sm);\n}\n._nodeIcon_1ddvo_5 {\n\tmargin-top: calc(var(--spacing--3xs) * -1);\n}\n._header_1ddvo_8 {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: var(--spacing--3xs);\n\tmargin-bottom: var(--spacing--sm);\n}\n._headerWrap_1ddvo_14 {\n\tdisplay: flex;\n\tflex-direction: column;\n}\n._title_1ddvo_18 {\n\tdisplay: flex;\n\talign-items: center;\n\tfont-size: var(--font-size--sm);\n\tgap: var(--spacing--3xs);\n\tcolor: var(--color--text--shade-1);\n}\n._meta_1ddvo_25 {\n\tlist-style: none;\n\tdisplay: flex;\n\talign-items: center;\n\tflex-wrap: wrap;\n\tfont-size: var(--font-size--xs);\n& > li:not(:last-child) {\n\t\tborder-right: 1px solid var(--color--text);\n\t\tpadding-right: var(--spacing--3xs);\n}\n& > li:not(:first-child) {\n\t\tpadding-left: var(--spacing--3xs);\n}\n}\n._tokensUsage_1ddvo_41 {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: var(--spacing--3xs);\n}\n/* BEM support Func\n -------------------------- */\n/* Transition\n-------------------------- */\n/* Color\n-------------------------- */\n/* Link\n-------------------------- */\n/* Border\n-------------------------- */\n/* Outline\n-------------------------- */\n/* Box shadow\n-------------------------- */\n/* Fill\n-------------------------- */\n/* Typography\n-------------------------- */\n/* z-index\n-------------------------- */\n/* Disable base\n-------------------------- */\n/* Icon\n-------------------------- */\n/* Checkbox\n-------------------------- */\n/* Radio\n-------------------------- */\n/* Select\n-------------------------- */\n/* Alert\n-------------------------- */\n/* MessageBox\n-------------------------- */\n/* Message\n-------------------------- */\n/* Notification\n-------------------------- */\n/* Input\n-------------------------- */\n/* Cascader\n-------------------------- */\n/* Group\n-------------------------- */\n/* Tab\n-------------------------- */\n/* Button\n-------------------------- */\n/* cascader\n-------------------------- */\n/* Switch\n-------------------------- */\n/* Dialog\n-------------------------- */\n/* Table\n-------------------------- */\n/* Pagination\n-------------------------- */\n/* Popup\n-------------------------- */\n/* Popover\n-------------------------- */\n/* Tooltip\n-------------------------- */\n/* Tag\n-------------------------- */\n/* Tree\n-------------------------- */\n/* Dropdown\n-------------------------- */\n/* Badge\n-------------------------- */\n/* Card\n--------------------------*/\n/* Slider\n--------------------------*/\n/* Steps\n--------------------------*/\n/* Menu\n--------------------------*/\n/* Rate\n--------------------------*/\n/* DatePicker\n--------------------------*/\n/* Loading\n--------------------------*/\n/* Scrollbar\n--------------------------*/\n/* Carousel\n--------------------------*/\n/* Collapse\n--------------------------*/\n/* Transfer\n--------------------------*/\n/* Header\n  --------------------------*/\n/* Footer\n--------------------------*/\n/* Main\n--------------------------*/\n/* Timeline\n--------------------------*/\n/* Backtop\n--------------------------*/\n/* Link\n--------------------------*/\n/* Calendar\n--------------------------*/\n/* Form\n-------------------------- */\n/* Avatar\n--------------------------*/\n/* Break-point\n--------------------------*/\n/* Break-points\n -------------------------- */\n/* Scrollbar\n -------------------------- */\n/* Placeholder\n -------------------------- */\n/* BEM\n -------------------------- */\n._noData_owvsu_123 {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 100%;\n  color: var(--color--text--tint-1);\n}\n._empty_owvsu_131 {\n  padding: var(--spacing--lg);\n}\n._tree_owvsu_135 {\n  flex-shrink: 0;\n  flex-grow: 0;\n  width: 30%;\n  min-width: 180px;\n}\n._runData_owvsu_142 {\n  width: 100%;\n  height: 100%;\n  overflow: auto;\n}\n._container_owvsu_148 {\n  height: 100%;\n  padding: 0 var(--spacing--xs);\n  display: flex;\n  gap: var(--spacing--xs);\n}/* BEM support Func\n -------------------------- */\n/* Transition\n-------------------------- */\n/* Color\n-------------------------- */\n/* Link\n-------------------------- */\n/* Border\n-------------------------- */\n/* Outline\n-------------------------- */\n/* Box shadow\n-------------------------- */\n/* Fill\n-------------------------- */\n/* Typography\n-------------------------- */\n/* z-index\n-------------------------- */\n/* Disable base\n-------------------------- */\n/* Icon\n-------------------------- */\n/* Checkbox\n-------------------------- */\n/* Radio\n-------------------------- */\n/* Select\n-------------------------- */\n/* Alert\n-------------------------- */\n/* MessageBox\n-------------------------- */\n/* Message\n-------------------------- */\n/* Notification\n-------------------------- */\n/* Input\n-------------------------- */\n/* Cascader\n-------------------------- */\n/* Group\n-------------------------- */\n/* Tab\n-------------------------- */\n/* Button\n-------------------------- */\n/* cascader\n-------------------------- */\n/* Switch\n-------------------------- */\n/* Dialog\n-------------------------- */\n/* Table\n-------------------------- */\n/* Pagination\n-------------------------- */\n/* Popup\n-------------------------- */\n/* Popover\n-------------------------- */\n/* Tooltip\n-------------------------- */\n/* Tag\n-------------------------- */\n/* Tree\n-------------------------- */\n/* Dropdown\n-------------------------- */\n/* Badge\n-------------------------- */\n/* Card\n--------------------------*/\n/* Slider\n--------------------------*/\n/* Steps\n--------------------------*/\n/* Menu\n--------------------------*/\n/* Rate\n--------------------------*/\n/* DatePicker\n--------------------------*/\n/* Loading\n--------------------------*/\n/* Scrollbar\n--------------------------*/\n/* Carousel\n--------------------------*/\n/* Collapse\n--------------------------*/\n/* Transfer\n--------------------------*/\n/* Header\n  --------------------------*/\n/* Footer\n--------------------------*/\n/* Main\n--------------------------*/\n/* Timeline\n--------------------------*/\n/* Backtop\n--------------------------*/\n/* Link\n--------------------------*/\n/* Calendar\n--------------------------*/\n/* Form\n-------------------------- */\n/* Avatar\n--------------------------*/\n/* Break-point\n--------------------------*/\n/* Break-points\n -------------------------- */\n/* Scrollbar\n -------------------------- */\n/* Placeholder\n -------------------------- */\n/* BEM\n -------------------------- */\n[data-output-type=\"logs\"] [class*=\"itemsCount\"],\n[data-output-type=\"logs\"] [class*=\"displayModes\"] {\n  display: none;\n}\n._runData_w7r0e_128 {\n  background-color: var(--run-data--color--background);\n}\n._runDataV2_w7r0e_132 {\n  background-color: var(--ndvv2--run-data--color--background);\n}\n._outputTypeSelect_w7r0e_136 {\n  margin-bottom: var(--spacing--4xs);\n  width: -moz-fit-content;\n  width: fit-content;\n}\n._titleSection_w7r0e_141 {\n  display: flex;\n  align-items: center;\n}\n._titleSection_w7r0e_141 > * {\n  margin-right: var(--spacing--2xs);\n}\n._titleSectionV2_w7r0e_149 {\n  padding-left: var(--spacing--4xs);\n}\n._title_w7r0e_141 {\n  text-transform: uppercase;\n  color: var(--color--text--tint-1);\n  letter-spacing: 2px;\n  font-weight: var(--font-weight--bold);\n  font-size: var(--font-size--sm);\n}\n._titleV2_w7r0e_161 {\n  letter-spacing: 2px;\n  font-size: var(--font-size--xs);\n}\n._noOutputData_w7r0e_166 {\n  max-width: 180px;\n}\n._noOutputData_w7r0e_166 > *:first-child {\n  margin-bottom: var(--spacing--md);\n}\n._noOutputData_w7r0e_166 > * {\n  margin-bottom: var(--spacing--2xs);\n}\n._link_w7r0e_176 {\n  display: inline;\n  padding: 0;\n  font-size: var(--font-size--sm);\n  font-weight: var(--font-weight--regular);\n}\n._spinner_w7r0e_183 {\n  display: flex;\n  justify-content: center;\n  margin-bottom: var(--ndv--spacing);\n}\n._spinner_w7r0e_183 * {\n  color: var(--color--primary);\n  min-height: 40px;\n  min-width: 40px;\n}/* BEM support Func\n -------------------------- */\n/* Transition\n-------------------------- */\n/* Color\n-------------------------- */\n/* Link\n-------------------------- */\n/* Border\n-------------------------- */\n/* Outline\n-------------------------- */\n/* Box shadow\n-------------------------- */\n/* Fill\n-------------------------- */\n/* Typography\n-------------------------- */\n/* z-index\n-------------------------- */\n/* Disable base\n-------------------------- */\n/* Icon\n-------------------------- */\n/* Checkbox\n-------------------------- */\n/* Radio\n-------------------------- */\n/* Select\n-------------------------- */\n/* Alert\n-------------------------- */\n/* MessageBox\n-------------------------- */\n/* Message\n-------------------------- */\n/* Notification\n-------------------------- */\n/* Input\n-------------------------- */\n/* Cascader\n-------------------------- */\n/* Group\n-------------------------- */\n/* Tab\n-------------------------- */\n/* Button\n-------------------------- */\n/* cascader\n-------------------------- */\n/* Switch\n-------------------------- */\n/* Dialog\n-------------------------- */\n/* Table\n-------------------------- */\n/* Pagination\n-------------------------- */\n/* Popup\n-------------------------- */\n/* Popover\n-------------------------- */\n/* Tooltip\n-------------------------- */\n/* Tag\n-------------------------- */\n/* Tree\n-------------------------- */\n/* Dropdown\n-------------------------- */\n/* Badge\n-------------------------- */\n/* Card\n--------------------------*/\n/* Slider\n--------------------------*/\n/* Steps\n--------------------------*/\n/* Menu\n--------------------------*/\n/* Rate\n--------------------------*/\n/* DatePicker\n--------------------------*/\n/* Loading\n--------------------------*/\n/* Scrollbar\n--------------------------*/\n/* Carousel\n--------------------------*/\n/* Collapse\n--------------------------*/\n/* Transfer\n--------------------------*/\n/* Header\n  --------------------------*/\n/* Footer\n--------------------------*/\n/* Main\n--------------------------*/\n/* Timeline\n--------------------------*/\n/* Backtop\n--------------------------*/\n/* Link\n--------------------------*/\n/* Calendar\n--------------------------*/\n/* Form\n-------------------------- */\n/* Avatar\n--------------------------*/\n/* Break-point\n--------------------------*/\n/* Break-points\n -------------------------- */\n/* Scrollbar\n -------------------------- */\n/* Placeholder\n -------------------------- */\n/* BEM\n -------------------------- */\n._container_6tej3_123 {\n  position: relative;\n  width: 100%;\n  height: 100%;\n  background-color: var(--run-data--color--background);\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  padding: var(--spacing--sm) var(--spacing--sm) var(--spacing--xl) var(--spacing--sm);\n  text-align: center;\n  overflow: hidden;\n}\n._container_6tej3_123 > * {\n  width: 100%;\n}\n._header_6tej3_140 {\n  margin-bottom: var(--spacing--sm);\n}\n._header_6tej3_140 > * {\n  margin-bottom: var(--spacing--2xs);\n}\n._action_6tej3_147 {\n  margin-bottom: var(--spacing--2xl);\n}\n._shake_6tej3_151 {\n  animation: _shake_6tej3_151 8s infinite;\n}\n@keyframes _shake_6tej3_151 {\n90% {\n    transform: translateX(0);\n}\n92.5% {\n    transform: translateX(6px);\n}\n95% {\n    transform: translateX(-6px);\n}\n97.5% {\n    transform: translateX(6px);\n}\n100% {\n    transform: translateX(0);\n}\n}\n._accordion_6tej3_172 {\n  position: absolute;\n  bottom: 0;\n  left: 0;\n  width: 100%;\n}/* BEM support Func\n -------------------------- */\n/* Transition\n-------------------------- */\n/* Color\n-------------------------- */\n/* Link\n-------------------------- */\n/* Border\n-------------------------- */\n/* Outline\n-------------------------- */\n/* Box shadow\n-------------------------- */\n/* Fill\n-------------------------- */\n/* Typography\n-------------------------- */\n/* z-index\n-------------------------- */\n/* Disable base\n-------------------------- */\n/* Icon\n-------------------------- */\n/* Checkbox\n-------------------------- */\n/* Radio\n-------------------------- */\n/* Select\n-------------------------- */\n/* Alert\n-------------------------- */\n/* MessageBox\n-------------------------- */\n/* Message\n-------------------------- */\n/* Notification\n-------------------------- */\n/* Input\n-------------------------- */\n/* Cascader\n-------------------------- */\n/* Group\n-------------------------- */\n/* Tab\n-------------------------- */\n/* Button\n-------------------------- */\n/* cascader\n-------------------------- */\n/* Switch\n-------------------------- */\n/* Dialog\n-------------------------- */\n/* Table\n-------------------------- */\n/* Pagination\n-------------------------- */\n/* Popup\n-------------------------- */\n/* Popover\n-------------------------- */\n/* Tooltip\n-------------------------- */\n/* Tag\n-------------------------- */\n/* Tree\n-------------------------- */\n/* Dropdown\n-------------------------- */\n/* Badge\n-------------------------- */\n/* Card\n--------------------------*/\n/* Slider\n--------------------------*/\n/* Steps\n--------------------------*/\n/* Menu\n--------------------------*/\n/* Rate\n--------------------------*/\n/* DatePicker\n--------------------------*/\n/* Loading\n--------------------------*/\n/* Scrollbar\n--------------------------*/\n/* Carousel\n--------------------------*/\n/* Collapse\n--------------------------*/\n/* Transfer\n--------------------------*/\n/* Header\n  --------------------------*/\n/* Footer\n--------------------------*/\n/* Main\n--------------------------*/\n/* Timeline\n--------------------------*/\n/* Backtop\n--------------------------*/\n/* Link\n--------------------------*/\n/* Calendar\n--------------------------*/\n/* Form\n-------------------------- */\n/* Avatar\n--------------------------*/\n/* Break-point\n--------------------------*/\n/* Break-points\n -------------------------- */\n/* Scrollbar\n -------------------------- */\n/* Placeholder\n -------------------------- */\n/* BEM\n -------------------------- */\n.fade-enter-active[data-v-d428ffd7],\n.fade-leave-active[data-v-d428ffd7] {\n  transition: opacity 200ms;\n}\n.fade-enter[data-v-d428ffd7],\n.fade-leave-to[data-v-d428ffd7] {\n  opacity: 0;\n}/*$vite$:1*/";
        document.head.appendChild(__vite_style__);
        //#region src/features/ndv/panel/components/NDVFloatingNodes.vue?vue&type=script&setup=true&lang.ts
        _hoisted_1$3 = ["data-node-name", "data-node-placement", "onClick"];
        FloatingNodePosition = /* @__PURE__ */function (FloatingNodePosition$1) {
          FloatingNodePosition$1["top"] = "outputSub";
          FloatingNodePosition$1["right"] = "outputMain";
          FloatingNodePosition$1["left"] = "inputMain";
          return FloatingNodePosition$1;
        }(FloatingNodePosition || {});
        NDVFloatingNodes_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */defineComponent({
          __name: "NDVFloatingNodes",
          props: {
            rootNode: {}
          },
          emits: ["switchSelectedNode"],
          setup(__props, {
            expose: __expose,
            emit: __emit
          }) {
            const props = __props;
            const workflowsStore = useWorkflowsStore();
            const nodeTypesStore = useNodeTypesStore();
            const posthogStore = usePostHog();
            const emit = __emit;
            const isNDVV2 = computed(() => posthogStore.isVariantEnabled(NDV_UI_OVERHAUL_EXPERIMENT.name, NDV_UI_OVERHAUL_EXPERIMENT.variant));
            function moveNodeDirection(direction) {
              const matchedDirectionNode = connectedNodes.value[direction][0];
              if (matchedDirectionNode) emit("switchSelectedNode", matchedDirectionNode.node.name);
            }
            function onKeyDown(e) {
              if (e.shiftKey && e.altKey && (e.ctrlKey || e.metaKey)) {
                const matchingDirection = {
                  ArrowUp: FloatingNodePosition.top,
                  ArrowRight: FloatingNodePosition.right,
                  ArrowLeft: FloatingNodePosition.left
                }[e.key] || null;
                if (matchingDirection) moveNodeDirection(matchingDirection);
              }
            }
            function getINodesFromNames(names) {
              return names.map(name => {
                const node = workflowsStore.getNodeByName(name);
                if (node) {
                  const nodeType = nodeTypesStore.getNodeType(node.type);
                  if (nodeType) return {
                    node,
                    nodeType
                  };
                }
                return null;
              }).filter(n => n !== null);
            }
            const connectedNodes = computed(() => {
              const workflowObject = workflowsStore.workflowObject;
              const rootName = props.rootNode.name;
              return {
                [FloatingNodePosition.top]: getINodesFromNames(workflowObject.getChildNodes(rootName, "ALL_NON_MAIN")),
                [FloatingNodePosition.right]: getINodesFromNames(workflowObject.getChildNodes(rootName, NodeConnectionTypes.Main, 1)).reverse(),
                [FloatingNodePosition.left]: getINodesFromNames(workflowObject.getParentNodes(rootName, NodeConnectionTypes.Main, 1)).reverse()
              };
            });
            const connectionGroups = [FloatingNodePosition.top, FloatingNodePosition.right, FloatingNodePosition.left];
            const tooltipPositionMapper = {
              [FloatingNodePosition.top]: "bottom",
              [FloatingNodePosition.right]: "left",
              [FloatingNodePosition.left]: "right"
            };
            onMounted(() => {
              document.addEventListener("keydown", onKeyDown, true);
            });
            onBeforeUnmount(() => {
              document.removeEventListener("keydown", onKeyDown, true);
            });
            __expose({
              moveNodeDirection
            });
            return (_ctx, _cache) => {
              return openBlock(), createElementBlock("aside", {
                class: normalizeClass([_ctx.$style.floatingNodes, {
                  [_ctx.$style.v2]: isNDVV2.value
                }]),
                "data-test-id": "floating-nodes"
              }, [(openBlock(), createElementBlock(Fragment, null, renderList(connectionGroups, connectionGroup => {
                return createBaseVNode("ul", {
                  key: connectionGroup,
                  class: normalizeClass([_ctx.$style.nodesList, _ctx.$style[connectionGroup]])
                }, [(openBlock(true), createElementBlock(Fragment, null, renderList(connectedNodes.value[connectionGroup], ({
                  node,
                  nodeType
                }) => {
                  return openBlock(), createElementBlock(Fragment, null, [node && nodeType ? (openBlock(), createBlock(unref(N8nTooltip_default), {
                    key: node.name,
                    placement: tooltipPositionMapper[connectionGroup],
                    teleported: false,
                    offset: isNDVV2.value ? 16 : 60
                  }, {
                    content: withCtx(() => [createTextVNode(toDisplayString(node.name), 1)]),
                    default: withCtx(() => [createBaseVNode("li", {
                      class: normalizeClass(_ctx.$style.connectedNode),
                      "data-test-id": "floating-node",
                      "data-node-name": node.name,
                      "data-node-placement": connectionGroup,
                      onClick: $event => emit("switchSelectedNode", node.name)
                    }, [createVNode(NodeIcon_default, {
                      "node-type": nodeType,
                      "node-name": node.name,
                      "tooltip-position": tooltipPositionMapper[connectionGroup],
                      size: isNDVV2.value ? 24 : 35,
                      circle: ""
                    }, null, 8, ["node-type", "node-name", "tooltip-position", "size"])], 10, _hoisted_1$3)]),
                    _: 2
                  }, 1032, ["placement", "offset"])) : createCommentVNode("", true)], 64);
                }), 256))], 2);
              }), 64))], 2);
            };
          }
        }); //#endregion
        //#region src/features/ndv/panel/components/NDVFloatingNodes.vue?vue&type=style&index=0&lang.module.scss
        floatingNodes = "_floatingNodes_1bfoo_123";
        nodesList = "_nodesList_1bfoo_133";
        inputSub = "_inputSub_1bfoo_147";
        outputSub = "_outputSub_1bfoo_147";
        outputMain = "_outputMain_1bfoo_160";
        inputMain = "_inputMain_1bfoo_160";
        connectedNode = "_connectedNode_1bfoo_173";
        v2 = "_v2_1bfoo_214";
        NDVFloatingNodes_vue_vue_type_style_index_0_lang_module_default = {
          floatingNodes,
          nodesList,
          inputSub,
          outputSub,
          outputMain,
          inputMain,
          connectedNode,
          v2
        }; //#endregion
        //#region src/features/ndv/panel/components/NDVFloatingNodes.vue
        cssModules$6 = {
          "$style": NDVFloatingNodes_vue_vue_type_style_index_0_lang_module_default
        };
        _export("r", NDVFloatingNodes_default = /* @__PURE__ */__plugin_vue_export_helper_default(NDVFloatingNodes_vue_vue_type_script_setup_true_lang_default, [["__cssModules", cssModules$6]])); //#endregion
        //#region src/features/ndv/runData/components/RunInfo.vue?vue&type=script&setup=true&lang.ts
        RunInfo_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */defineComponent({
          __name: "RunInfo",
          props: {
            taskData: {},
            hasStaleData: {
              type: Boolean
            },
            hasPinData: {
              type: Boolean
            }
          },
          setup(__props) {
            const i18n = useI18n();
            const props = __props;
            const runTaskData = computed(() => {
              return props.taskData;
            });
            const theme = computed(() => {
              return props.taskData?.error ? "danger" : "success";
            });
            const runMetadata = computed(() => {
              if (!runTaskData.value) return null;
              const {
                date,
                time
              } = convertToDisplayDateComponents(runTaskData.value.startTime);
              return {
                executionTime: runTaskData.value.executionTime,
                startTime: `${date} at ${time}`
              };
            });
            return (_ctx, _cache) => {
              const _directive_n8n_html = resolveDirective("n8n-html");
              return _ctx.hasStaleData ? (openBlock(), createBlock(unref(N8nInfoTip_default), {
                key: 0,
                theme: "warning-light",
                type: "tooltip",
                "tooltip-placement": "right",
                "data-test-id": "node-run-info-stale"
              }, {
                default: withCtx(() => [withDirectives(createBaseVNode("span", null, null, 512), [[_directive_n8n_html, unref(i18n).baseText(_ctx.hasPinData ? "ndv.output.staleDataWarning.pinData" : "ndv.output.staleDataWarning.regular")]])]),
                _: 1
              })) : runMetadata.value ? (openBlock(), createElementBlock("div", {
                key: 1,
                class: normalizeClass(_ctx.$style.tooltipRow)
              }, [_ctx.taskData?.executionStatus !== "canceled" ? (openBlock(), createBlock(unref(N8nInfoTip_default), {
                key: 0,
                type: "note",
                theme: theme.value,
                "data-test-id": `node-run-status-${theme.value}`,
                size: "large"
              }, null, 8, ["theme", "data-test-id"])) : createCommentVNode("", true), createVNode(unref(N8nInfoTip_default), {
                type: "tooltip",
                theme: "info",
                "data-test-id": `node-run-info`,
                "tooltip-placement": "right"
              }, {
                default: withCtx(() => [createBaseVNode("div", null, [createVNode(unref(N8nText_default), {
                  bold: true,
                  size: "small"
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(runTaskData.value?.error ? unref(i18n).baseText("runData.executionStatus.failed") : runTaskData.value?.executionStatus === "canceled" ? unref(i18n).baseText("runData.executionStatus.canceled") : unref(i18n).baseText("runData.executionStatus.success")), 1)]),
                  _: 1
                }), _cache[0] || (_cache[0] = createBaseVNode("br", null, null, -1)), createVNode(unref(N8nText_default), {
                  bold: true,
                  size: "small"
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("runData.startTime") + ":"), 1)]),
                  _: 1
                }), createTextVNode(" " + toDisplayString(runMetadata.value.startTime), 1), _cache[1] || (_cache[1] = createBaseVNode("br", null, null, -1)), createVNode(unref(N8nText_default), {
                  bold: true,
                  size: "small"
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("runData.executionTime") + ":"), 1)]),
                  _: 1
                }), createTextVNode(" " + toDisplayString(runMetadata.value.executionTime) + " " + toDisplayString(unref(i18n).baseText("runData.ms")), 1)])]),
                _: 1
              })], 2)) : createCommentVNode("", true);
            };
          }
        }); //#endregion
        //#region src/features/ndv/runData/components/RunInfo.vue?vue&type=style&index=0&lang.module.scss
        tooltipRow = "_tooltipRow_1uvh5_123";
        RunInfo_vue_vue_type_style_index_0_lang_module_default = {
          tooltipRow
        }; //#endregion
        //#region src/features/ndv/runData/components/RunInfo.vue
        cssModules$5 = {
          "$style": RunInfo_vue_vue_type_style_index_0_lang_module_default
        };
        RunInfo_default = /* @__PURE__ */__plugin_vue_export_helper_default(RunInfo_vue_vue_type_script_setup_true_lang_default, [["__cssModules", cssModules$5]]); //#endregion
        //#region src/features/ndv/runData/components/ai/AiRunContentBlock.vue?vue&type=script&setup=true&lang.ts
        import_capitalize = /* @__PURE__ */__toESM(require_capitalize());
        import_FileSaver_min = /* @__PURE__ */__toESM(require_FileSaver_min());
        AiRunContentBlock_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */defineComponent({
          __name: "AiRunContentBlock",
          props: {
            runData: {},
            error: {}
          },
          setup(__props) {
            const props = __props;
            const i18n = useI18n();
            const isExpanded = ref(getInitialExpandedState());
            const renderType = ref("rendered");
            const dataSize = ref(0);
            const showData = ref(false);
            const dataSizeInMB = computed(() => (dataSize.value / (1024 * 1024)).toFixed(1));
            const parsedRun = computed(() => parseAiContent(props.runData.data ?? [], props.runData.type));
            const contentParsed = computed(() => parsedRun.value.some(item => item.parsedContent?.parsed === true));
            function getInitialExpandedState() {
              return !{
                input: [NodeConnectionTypes.AiDocument, NodeConnectionTypes.AiTextSplitter],
                output: [NodeConnectionTypes.AiDocument, NodeConnectionTypes.AiEmbedding, NodeConnectionTypes.AiTextSplitter, NodeConnectionTypes.AiVectorStore]
              }[props.runData.inOut].includes(props.runData.type);
            }
            function onBlockHeaderClick() {
              isExpanded.value = !isExpanded.value;
            }
            function onRenderTypeChange(value) {
              renderType.value = value;
            }
            function updateShowData() {
              showData.value = dataSize.value < MAX_DISPLAY_DATA_SIZE_LOGS_VIEW;
            }
            function refreshDataSize() {
              showData.value = false;
              dataSize.value = new Blob([JSON.stringify(props.runData.data)]).size;
              updateShowData();
            }
            function onShowDataAnyway() {
              showData.value = true;
            }
            function downloadJsonData() {
              const fileName = props.runData.inOut === "input" ? "input_data" : "output_data";
              (0, import_FileSaver_min.saveAs)(new Blob([JSON.stringify(props.runData.data, null, 2)], {
                type: "application/json"
              }), `${fileName}.json`);
            }
            onMounted(() => {
              refreshDataSize();
            });
            watch(() => props.runData.data, () => {
              refreshDataSize();
            });
            return (_ctx, _cache) => {
              const _directive_n8n_html = resolveDirective("n8n-html");
              return openBlock(), createElementBlock("div", {
                class: normalizeClass(_ctx.$style.block)
              }, [createBaseVNode("header", {
                class: normalizeClass(_ctx.$style.blockHeader),
                onClick: onBlockHeaderClick
              }, [createBaseVNode("button", {
                class: normalizeClass(_ctx.$style.blockToggle)
              }, [createVNode(unref(N8nIcon_default), {
                icon: isExpanded.value ? "chevron-down" : "chevron-right",
                size: "large"
              }, null, 8, ["icon"])], 2), createBaseVNode("p", {
                class: normalizeClass(_ctx.$style.blockTitle)
              }, toDisplayString(unref(import_capitalize.default)(_ctx.runData.inOut)), 3), contentParsed.value && !_ctx.error && isExpanded.value ? (openBlock(), createBlock(unref(N8nRadioButtons_default), {
                key: 0,
                size: "small",
                "model-value": renderType.value,
                class: normalizeClass(_ctx.$style.rawSwitch),
                options: [{
                  label: "Rendered",
                  value: "rendered"
                }, {
                  label: "JSON",
                  value: "json"
                }],
                "onUpdate:modelValue": onRenderTypeChange
              }, null, 8, ["model-value", "class"])) : createCommentVNode("", true)], 2), createBaseVNode("main", {
                class: normalizeClass({
                  [_ctx.$style.blockContent]: true,
                  [_ctx.$style.blockContentExpanded]: isExpanded.value
                })
              }, [_ctx.error ? (openBlock(), createBlock(NodeErrorView_default, {
                key: 0,
                error: _ctx.error,
                class: normalizeClass(_ctx.$style.error),
                "show-details": ""
              }, null, 8, ["error", "class"])) : showData.value ? (openBlock(), createBlock(RunDataParsedAiContent_default, {
                key: 1,
                data: _ctx.runData.data,
                type: _ctx.runData.type,
                content: parsedRun.value,
                "render-type": renderType.value
              }, null, 8, ["data", "type", "content", "render-type"])) : (openBlock(), createElementBlock("section", {
                key: 2,
                class: normalizeClass(_ctx.$style.warning)
              }, [createVNode(NDVEmptyState_default, {
                title: unref(i18n).baseText("ndv.tooMuchData.title", {
                  interpolate: {
                    size: dataSizeInMB.value
                  }
                }),
                class: normalizeClass(_ctx.$style.warningState)
              }, {
                default: withCtx(() => [withDirectives(createBaseVNode("span", null, null, 512), [[_directive_n8n_html, unref(i18n).baseText("ndv.tooMuchData.message")]])]),
                _: 1
              }, 8, ["title", "class"]), createBaseVNode("div", {
                class: normalizeClass(_ctx.$style.warningActions)
              }, [createVNode(unref(N8nButton_default), {
                outline: "",
                size: "small",
                label: unref(i18n).baseText("runData.downloadBinaryData"),
                onClick: withModifiers(downloadJsonData, ["stop"])
              }, null, 8, ["label"]), createVNode(unref(N8nButton_default), {
                size: "small",
                label: unref(i18n).baseText("ndv.tooMuchData.showDataAnyway"),
                onClick: withModifiers(onShowDataAnyway, ["stop"])
              }, null, 8, ["label"])], 2)], 2))], 2)], 2);
            };
          }
        }); //#endregion
        //#region src/features/ndv/runData/components/ai/AiRunContentBlock.vue?vue&type=style&index=0&lang.module.scss
        block = "_block_1mcvs_123";
        blockContent = "_blockContent_1mcvs_130";
        blockContentExpanded = "_blockContentExpanded_1mcvs_134";
        rawSwitch = "_rawSwitch_1mcvs_138";
        blockHeader = "_blockHeader_1mcvs_148";
        blockTitle = "_blockTitle_1mcvs_161";
        blockToggle = "_blockToggle_1mcvs_168";
        error = "_error_1mcvs_176";
        warning = "_warning_1mcvs_180";
        warningState = "_warningState_1mcvs_189";
        warningActions = "_warningActions_1mcvs_193";
        AiRunContentBlock_vue_vue_type_style_index_0_lang_module_default = {
          block,
          blockContent,
          blockContentExpanded,
          rawSwitch,
          blockHeader,
          blockTitle,
          blockToggle,
          error,
          warning,
          warningState,
          warningActions
        }; //#endregion
        //#region src/features/ndv/runData/components/ai/AiRunContentBlock.vue
        cssModules$4 = {
          "$style": AiRunContentBlock_vue_vue_type_style_index_0_lang_module_default
        };
        AiRunContentBlock_default = /* @__PURE__ */__plugin_vue_export_helper_default(AiRunContentBlock_vue_vue_type_script_setup_true_lang_default, [["__cssModules", cssModules$4]]); //#endregion
        //#region src/features/ndv/runData/components/ai/RunDataAiContent.vue?vue&type=script&setup=true&lang.ts
        _hoisted_1$2 = {
          key: 0
        };
        _hoisted_2$1 = {
          key: 1
        };
        _hoisted_3$1 = {
          key: 2
        };
        RunDataAiContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */defineComponent({
          __name: "RunDataAiContent",
          props: {
            inputData: {}
          },
          setup(__props) {
            const props = __props;
            const data = computed(() => props.inputData.runData ? getReferencedData(props.inputData.runData) : void 0);
            const nodeTypesStore = useNodeTypesStore();
            const i18n = useI18n();
            const consumedTokensSum = computed(() => getConsumedTokens(outputRun.value?.data ?? []));
            function extractRunMeta(run) {
              const uiNode = props.inputData.node;
              const nodeType = nodeTypesStore.getNodeType(uiNode?.type ?? "");
              return {
                startTimeMs: run.metadata.startTime,
                executionTimeMs: run.metadata.executionTime,
                node: nodeType,
                type: run.inOut,
                connectionType: run.type,
                subExecution: run.metadata?.subExecution
              };
            }
            const outputRun = computed(() => {
              return data.value?.find(r => r.inOut === "output");
            });
            const runMeta = computed(() => {
              if (outputRun.value === void 0) return;
              return extractRunMeta(outputRun.value);
            });
            const outputError = computed(() => props.inputData.runData?.error);
            return (_ctx, _cache) => {
              return openBlock(), createElementBlock("div", {
                class: normalizeClass(_ctx.$style.container)
              }, [createBaseVNode("header", {
                class: normalizeClass(_ctx.$style.header)
              }, [runMeta.value?.node ? (openBlock(), createBlock(NodeIcon_default, {
                key: 0,
                class: normalizeClass(_ctx.$style.nodeIcon),
                "node-type": runMeta.value.node,
                size: 20
              }, null, 8, ["class", "node-type"])) : createCommentVNode("", true), createBaseVNode("div", {
                class: normalizeClass(_ctx.$style.headerWrap)
              }, [createBaseVNode("p", {
                class: normalizeClass(_ctx.$style.title)
              }, toDisplayString(_ctx.inputData.node.name), 3), createBaseVNode("ul", {
                class: normalizeClass(_ctx.$style.meta)
              }, [runMeta.value?.startTimeMs ? (openBlock(), createElementBlock("li", _hoisted_1$2, toDisplayString(runMeta.value?.executionTimeMs) + "ms", 1)) : createCommentVNode("", true), runMeta.value?.startTimeMs ? (openBlock(), createElementBlock("li", _hoisted_2$1, [createVNode(unref(N8nTooltip_default), null, {
                content: withCtx(() => [createTextVNode(toDisplayString(new Date(runMeta.value?.startTimeMs).toLocaleString()), 1)]),
                default: withCtx(() => [createTextVNode(" " + toDisplayString(unref(i18n).baseText("runData.aiContentBlock.startedAt", {
                  interpolate: {
                    startTime: new Date(runMeta.value?.startTimeMs).toLocaleTimeString()
                  }
                })), 1)]),
                _: 1
              })])) : createCommentVNode("", true), runMeta.value ? (openBlock(), createElementBlock("li", _hoisted_3$1, [createVNode(ViewSubExecution_default, {
                "task-metadata": runMeta.value,
                "display-mode": "ai",
                inline: true
              }, null, 8, ["task-metadata"])])) : createCommentVNode("", true), (consumedTokensSum.value?.totalTokens ?? 0) > 0 ? (openBlock(), createElementBlock("li", {
                key: 3,
                class: normalizeClass(_ctx.$style.tokensUsage)
              }, [createTextVNode(toDisplayString(unref(i18n).baseText("runData.aiContentBlock.tokens", {
                interpolate: {
                  count: unref(formatTokenUsageCount)(consumedTokensSum.value, "total")
                }
              })) + " ", 1), createVNode(unref(N8nInfoTip_default), {
                type: "tooltip",
                theme: "info-light",
                "tooltip-placement": "right"
              }, {
                default: withCtx(() => [createVNode(ConsumedTokensDetails_default, {
                  "consumed-tokens": consumedTokensSum.value
                }, null, 8, ["consumed-tokens"])]),
                _: 1
              })], 2)) : createCommentVNode("", true)], 2)], 2)], 2), (openBlock(true), createElementBlock(Fragment, null, renderList(data.value ?? [], (run, index) => {
                return openBlock(), createElementBlock("main", {
                  key: index,
                  class: normalizeClass(_ctx.$style.content)
                }, [createVNode(AiRunContentBlock_default, {
                  "run-data": run,
                  error: run.inOut === "output" ? outputError.value : void 0
                }, null, 8, ["run-data", "error"])], 2);
              }), 128))], 2);
            };
          }
        }); //#endregion
        //#region src/features/ndv/runData/components/ai/RunDataAiContent.vue?vue&type=style&index=0&lang.module.css
        container$2 = "_container_1ddvo_2";
        nodeIcon = "_nodeIcon_1ddvo_5";
        header$1 = "_header_1ddvo_8";
        headerWrap = "_headerWrap_1ddvo_14";
        title$1 = "_title_1ddvo_18";
        meta = "_meta_1ddvo_25";
        tokensUsage = "_tokensUsage_1ddvo_41";
        RunDataAiContent_vue_vue_type_style_index_0_lang_module_default = {
          container: container$2,
          nodeIcon,
          header: header$1,
          headerWrap,
          title: title$1,
          meta,
          tokensUsage
        }; //#endregion
        //#region src/features/ndv/runData/components/ai/RunDataAiContent.vue
        cssModules$3 = {
          "$style": RunDataAiContent_vue_vue_type_style_index_0_lang_module_default
        };
        RunDataAiContent_default = /* @__PURE__ */__plugin_vue_export_helper_default(RunDataAiContent_vue_vue_type_script_setup_true_lang_default, [["__cssModules", cssModules$3]]); //#endregion
        //#region src/features/ndv/runData/components/ai/RunDataAi.vue?vue&type=script&setup=true&lang.ts
        RunDataAi_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */defineComponent({
          __name: "RunDataAi",
          props: {
            node: {},
            runIndex: {
              default: 0
            }
          },
          setup(__props) {
            const i18n = useI18n();
            const {
              entries,
              execution,
              latestNodeNameById,
              loadSubExecution
            } = useLogsExecutionData({
              filter: computed(() => ({
                rootNodeId: __props.node.id,
                rootNodeRunIndex: __props.runIndex
              }))
            });
            const {
              flatLogEntries,
              toggleExpanded
            } = useLogsTreeExpand(entries, loadSubExecution);
            const selected = shallowRef();
            function select(entry) {
              selected.value = entry?.node.id === __props.node.id ? void 0 : entry;
            }
            watch(entries, latestEntries => {
              if (!selected.value || findLogEntryById(selected.value.id, latestEntries) === void 0) selected.value = latestEntries[0]?.children[0];
            }, {
              immediate: true
            });
            return (_ctx, _cache) => {
              return openBlock(), createElementBlock("div", {
                class: normalizeClass(_ctx.$style.container)
              }, [unref(flatLogEntries).length > 0 ? (openBlock(), createElementBlock(Fragment, {
                key: 0
              }, [createVNode(LogsOverviewRows_default, {
                class: normalizeClass(_ctx.$style.tree),
                "is-compact": "",
                "is-read-only": "",
                "flat-log-entries": unref(flatLogEntries),
                "should-show-token-count-column": false,
                "latest-node-info": unref(latestNodeNameById),
                selected: selected.value,
                "can-open-ndv": false,
                execution: unref(execution),
                onToggleExpanded: unref(toggleExpanded),
                onSelect: select
              }, null, 8, ["class", "flat-log-entries", "latest-node-info", "selected", "execution", "onToggleExpanded"]), createBaseVNode("div", {
                class: normalizeClass(_ctx.$style.runData)
              }, [selected.value ? (openBlock(), createBlock(RunDataAiContent_default, {
                key: 0,
                "input-data": selected.value
              }, null, 8, ["input-data"])) : (openBlock(), createElementBlock("div", {
                key: 1,
                class: normalizeClass(_ctx.$style.empty)
              }, [createVNode(unref(N8nText_default), {
                size: "large"
              }, {
                default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.ai.empty", {
                  interpolate: {
                    node: _ctx.node.name
                  }
                })), 1)]),
                _: 1
              })], 2))], 2)], 64)) : (openBlock(), createElementBlock("div", {
                key: 1,
                class: normalizeClass(_ctx.$style.noData)
              }, toDisplayString(unref(i18n).baseText("ndv.output.ai.waiting")), 3))], 2);
            };
          }
        }); //#endregion
        //#region src/features/ndv/runData/components/ai/RunDataAi.vue?vue&type=style&index=0&lang.module.scss
        noData = "_noData_owvsu_123";
        empty = "_empty_owvsu_131";
        tree = "_tree_owvsu_135";
        runData$1 = "_runData_owvsu_142";
        container$1 = "_container_owvsu_148";
        RunDataAi_vue_vue_type_style_index_0_lang_module_default = {
          noData,
          empty,
          tree,
          runData: runData$1,
          container: container$1
        }; //#endregion
        //#region src/features/ndv/runData/components/ai/RunDataAi.vue
        cssModules$2 = {
          "$style": RunDataAi_vue_vue_type_style_index_0_lang_module_default
        };
        RunDataAi_default = /* @__PURE__ */__plugin_vue_export_helper_default(RunDataAi_vue_vue_type_script_setup_true_lang_default, [["__cssModules", cssModules$2]]); //#endregion
        //#region src/features/ndv/panel/components/OutputPanel.vue?vue&type=script&setup=true&lang.ts
        _hoisted_1$1 = {
          key: 0,
          "data-test-id": "ndv-output-waiting"
        };
        OutputPanel_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */defineComponent({
          __name: "OutputPanel",
          props: {
            workflowObject: {},
            runIndex: {},
            isReadOnly: {
              type: Boolean
            },
            linkedRuns: {
              type: Boolean
            },
            canLinkRuns: {
              type: Boolean
            },
            pushRef: {},
            blockUI: {
              type: Boolean,
              default: false
            },
            isProductionExecutionPreview: {
              type: Boolean,
              default: false
            },
            isPaneActive: {
              type: Boolean,
              default: false
            },
            displayMode: {}
          },
          emits: ["linkRun", "unlinkRun", "runChange", "activatePane", "tableMounted", "itemHover", "search", "openSettings", "execute", "displayModeChange"],
          setup(__props, {
            emit: __emit
          }) {
            const OUTPUT_TYPE = {
              REGULAR: "regular",
              LOGS: "logs"
            };
            const props = __props;
            const emit = __emit;
            const ndvStore = useNDVStore();
            const nodeTypesStore = useNodeTypesStore();
            const workflowsStore = useWorkflowsStore();
            const workflowState = injectWorkflowState();
            const posthogStore = usePostHog();
            const telemetry = useTelemetry();
            const i18n = useI18n();
            const {
              activeNode
            } = storeToRefs(ndvStore);
            const {
              dirtinessByName
            } = useNodeDirtiness();
            const {
              isSubNodeType
            } = useNodeType({
              node: activeNode
            });
            const pinnedData = usePinnedData(activeNode, {
              runIndex: props.runIndex,
              displayMode: props.displayMode
            });
            const outputMode = ref(OUTPUT_TYPE.REGULAR);
            const outputTypes = ref([{
              label: i18n.baseText("ndv.output.outType.regular"),
              value: OUTPUT_TYPE.REGULAR
            }, {
              label: i18n.baseText("ndv.output.outType.logs"),
              value: OUTPUT_TYPE.LOGS
            }]);
            const runDataRef = ref();
            const collapsingColumnName = ref(null);
            const node = computed(() => {
              return ndvStore.activeNode ?? void 0;
            });
            const {
              hasNodeRun,
              workflowExecution,
              workflowRunData
            } = useExecutionData({
              node
            });
            const isTriggerNode = computed(() => {
              return !!node.value && nodeTypesStore.isTriggerNode(node.value.type);
            });
            const hasAiMetadata = computed(() => {
              if (isNodeRunning.value || !workflowRunData.value) return false;
              if (node.value) {
                const resultData = props.workflowObject.getParentNodes(node.value.name, "ALL_NON_MAIN").map(workflowsStore.getWorkflowResultDataByNodeName);
                return resultData && Array.isArray(resultData) && resultData.length > 0;
              }
              return false;
            });
            const hasError = computed(() => Boolean(workflowRunData.value && node.value && workflowRunData.value[node.value.name]?.[props.runIndex]?.error));
            const defaultOutputMode = computed(() => {
              return hasError.value && hasAiMetadata.value ? OUTPUT_TYPE.LOGS : OUTPUT_TYPE.REGULAR;
            });
            const isNodeRunning = computed(() => {
              return workflowRunning.value && !!node.value && workflowState.executingNode.isNodeExecuting(node.value.name);
            });
            const workflowRunning = computed(() => workflowsStore.isWorkflowRunning);
            const runTaskData = computed(() => {
              if (!node.value || workflowExecution.value === null) return null;
              const runData$2 = workflowRunData.value;
              if (!runData$2?.hasOwnProperty(node.value.name)) return null;
              if (runData$2[node.value.name].length <= props.runIndex) return null;
              return runData$2[node.value.name][props.runIndex];
            });
            const runsCount = computed(() => {
              if (node.value === null) return 0;
              const runData$2 = workflowRunData.value;
              if (runData$2 === null || node.value && !runData$2.hasOwnProperty(node.value.name)) return 0;
              if (node.value && runData$2[node.value.name].length) return runData$2[node.value.name].length;
              return 0;
            });
            const staleData = computed(() => {
              if (!node.value) return false;
              return dirtinessByName.value[node.value.name] === CanvasNodeDirtiness.PARAMETERS_UPDATED;
            });
            const outputPanelEditMode = computed(() => {
              return ndvStore.outputPanelEditMode;
            });
            const canPinData = computed(() => {
              return pinnedData.isValidNodeType.value && !props.isReadOnly;
            });
            const allToolsWereUnusedNotice = computed(() => {
              if (!node.value || runsCount.value === 0 || hasError.value) return void 0;
              if (pinnedData.hasData.value) return void 0;
              const toolsAvailable = props.workflowObject.getParentNodes(node.value.name, NodeConnectionTypes.AiTool, 1);
              const toolsUsedInLatestRun = toolsAvailable.filter(tool => !!workflowRunData.value?.[tool]?.[props.runIndex]);
              if (toolsAvailable.length > 0 && toolsUsedInLatestRun.length === 0) return i18n.baseText("ndv.output.noToolUsedInfo");else return;
            });
            const isNDVV2 = computed(() => posthogStore.isVariantEnabled(NDV_UI_OVERHAUL_EXPERIMENT.name, NDV_UI_OVERHAUL_EXPERIMENT.variant));
            const insertTestData = () => {
              if (!runDataRef.value) return;
              runDataRef.value.enterEditMode({
                origin: "insertTestDataLink"
              });
              telemetry.track("User clicked ndv link", {
                workflow_id: workflowsStore.workflowId,
                push_ref: props.pushRef,
                node_type: node.value?.type,
                pane: "output",
                type: "insert-test-data"
              });
            };
            const onLinkRun = () => {
              emit("linkRun");
            };
            const onUnlinkRun = () => {
              emit("unlinkRun");
            };
            const openSettings = () => {
              emit("openSettings");
              telemetry.track("User clicked ndv link", {
                node_type: node.value?.type,
                workflow_id: workflowsStore.workflowId,
                push_ref: props.pushRef,
                pane: "output",
                type: "settings"
              });
            };
            const onRunIndexChange = run => {
              emit("runChange", run);
            };
            onMounted(() => {
              outputMode.value = defaultOutputMode.value;
            });
            watch(defaultOutputMode, (newValue, oldValue) => {
              if (newValue === OUTPUT_TYPE.LOGS && oldValue === OUTPUT_TYPE.REGULAR && hasNodeRun.value) outputMode.value = defaultOutputMode.value;
            });
            const activatePane = () => {
              emit("activatePane");
            };
            function handleChangeCollapsingColumn(columnName) {
              collapsingColumnName.value = columnName;
            }
            return (_ctx, _cache) => {
              const _directive_n8n_html = resolveDirective("n8n-html");
              return openBlock(), createBlock(RunData_default, {
                ref_key: "runDataRef",
                ref: runDataRef,
                class: normalizeClass([_ctx.$style.runData, {
                  [_ctx.$style.runDataV2]: isNDVV2.value
                }]),
                node: node.value,
                "workflow-object": _ctx.workflowObject,
                "run-index": _ctx.runIndex,
                "linked-runs": _ctx.linkedRuns,
                "can-link-runs": _ctx.canLinkRuns,
                "no-data-in-branch-message": unref(i18n).baseText("ndv.output.noOutputDataInBranch"),
                "is-executing": isNodeRunning.value,
                "executing-message": unref(i18n).baseText("ndv.output.executing"),
                "push-ref": _ctx.pushRef,
                "block-u-i": _ctx.blockUI,
                "is-production-execution-preview": _ctx.isProductionExecutionPreview,
                "search-shortcut": _ctx.isPaneActive ? "/" : void 0,
                "hide-pagination": outputMode.value === "logs",
                "pane-type": "output",
                "data-output-type": outputMode.value,
                "callout-message": allToolsWereUnusedNotice.value,
                "display-mode": _ctx.displayMode,
                "disable-ai-content": true,
                "collapsing-table-column-name": collapsingColumnName.value,
                "data-test-id": "ndv-output-panel",
                onActivatePane: activatePane,
                onRunChange: onRunIndexChange,
                onLinkRun,
                onUnlinkRun,
                onTableMounted: _cache[3] || (_cache[3] = $event => emit("tableMounted", $event)),
                onItemHover: _cache[4] || (_cache[4] = $event => emit("itemHover", $event)),
                onSearch: _cache[5] || (_cache[5] = $event => emit("search", $event)),
                onDisplayModeChange: _cache[6] || (_cache[6] = $event => emit("displayModeChange", $event)),
                onCollapsingTableColumnChanged: handleChangeCollapsingColumn
              }, createSlots({
                header: withCtx(() => [createBaseVNode("div", {
                  class: normalizeClass([_ctx.$style.titleSection, {
                    [_ctx.$style.titleSectionV2]: isNDVV2.value
                  }])
                }, [hasAiMetadata.value ? (openBlock(), createBlock(unref(N8nRadioButtons_default), {
                  key: 0,
                  modelValue: outputMode.value,
                  "onUpdate:modelValue": _cache[0] || (_cache[0] = $event => outputMode.value = $event),
                  "data-test-id": "ai-output-mode-select",
                  options: outputTypes.value
                }, null, 8, ["modelValue", "options"])) : (openBlock(), createElementBlock("span", {
                  key: 1,
                  class: normalizeClass([_ctx.$style.title, {
                    [_ctx.$style.titleV2]: isNDVV2.value
                  }])
                }, toDisplayString(unref(i18n).baseText(outputPanelEditMode.value.enabled ? "ndv.output.edit" : "ndv.output")), 3)), unref(hasNodeRun) && !unref(pinnedData).hasData.value && (runsCount.value === 1 || runsCount.value > 0 && staleData.value) ? withDirectives((openBlock(), createBlock(RunInfo_default, {
                  key: 2,
                  "task-data": runTaskData.value,
                  "has-stale-data": staleData.value,
                  "has-pin-data": unref(pinnedData).hasData.value
                }, null, 8, ["task-data", "has-stale-data", "has-pin-data"])), [[vShow, !outputPanelEditMode.value.enabled]]) : createCommentVNode("", true)], 2)]),
                "node-not-run": withCtx(() => [isNDVV2.value ? (openBlock(), createElementBlock(Fragment, {
                  key: 0
                }, [_ctx.isReadOnly ? (openBlock(), createBlock(NDVEmptyState_default, {
                  key: 0,
                  title: unref(i18n).baseText(isTriggerNode.value ? "ndv.output.noOutputData.trigger.title" : "ndv.output.noOutputData.v2.title")
                }, null, 8, ["title"])) : (openBlock(), createBlock(NDVEmptyState_default, {
                  key: 1,
                  title: unref(i18n).baseText(isTriggerNode.value ? "ndv.output.noOutputData.trigger.title" : "ndv.output.noOutputData.v2.title")
                }, createSlots({
                  default: withCtx(() => [!canPinData.value || unref(isSubNodeType) ? (openBlock(), createBlock(unref(I18nT), {
                    key: 0,
                    tag: "span",
                    keypath: unref(isSubNodeType) ? "ndv.output.runNodeHintSubNode" : "ndv.output.noOutputData.v2.description",
                    scope: "global"
                  }, {
                    link: withCtx(() => [createVNode(NodeExecuteButton_default, {
                      "hide-icon": "",
                      transparent: "",
                      type: "secondary",
                      "node-name": unref(activeNode)?.name ?? "",
                      label: unref(i18n).baseText(isTriggerNode.value ? "ndv.output.noOutputData.trigger.action" : "ndv.output.noOutputData.v2.action"),
                      "telemetry-source": "inputs",
                      onExecute: _cache[1] || (_cache[1] = $event => emit("execute"))
                    }, null, 8, ["node-name", "label"]), _cache[8] || (_cache[8] = createBaseVNode("br", null, null, -1))]),
                    _: 1
                  }, 8, ["keypath"])) : (openBlock(), createElementBlock(Fragment, {
                    key: 1
                  }, [createVNode(NodeExecuteButton_default, {
                    "hide-icon": "",
                    transparent: "",
                    type: "secondary",
                    "node-name": unref(activeNode)?.name ?? "",
                    label: unref(i18n).baseText(isTriggerNode.value ? "ndv.output.noOutputData.trigger.action" : "ndv.output.noOutputData.v2.action"),
                    "telemetry-source": "inputs",
                    onExecute: _cache[2] || (_cache[2] = $event => emit("execute"))
                  }, null, 8, ["node-name", "label"]), _cache[9] || (_cache[9] = createBaseVNode("br", null, null, -1)), createTextVNode(" " + toDisplayString(unref(i18n).baseText("generic.or")) + " ", 1), createVNode(unref(N8nText_default), {
                    tag: "a",
                    size: "medium",
                    color: "primary",
                    onClick: insertTestData
                  }, {
                    default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.insertTestData")), 1)]),
                    _: 1
                  })], 64))]),
                  _: 2
                }, [isTriggerNode.value ? {
                  name: "icon",
                  fn: withCtx(() => [_cache[7] || (_cache[7] = createBaseVNode("svg", {
                    width: "16",
                    viewBox: "0 0 14 18",
                    fill: "none",
                    xmlns: "http://www.w3.org/2000/svg"
                  }, [createBaseVNode("path", {
                    d: "M10.9062 2.40625L8.5 8.03125H12C12.4062 8.03125 12.7812 8.28125 12.9375 8.65625C13.0625 9.0625 12.9688 9.5 12.6562 9.78125L4.65625 16.7812C4.28125 17.0625 3.78125 17.0938 3.40625 16.8125C3.03125 16.5625 2.875 16.0625 3.0625 15.625L5.46875 10H2C1.5625 10 1.1875 9.75 1.0625 9.375C0.90625 8.96875 1 8.53125 1.3125 8.25L9.3125 1.25C9.6875 0.96875 10.1875 0.9375 10.5625 1.21875C10.9375 1.46875 11.0938 1.96875 10.9062 2.40625Z",
                    fill: "currentColor"
                  })], -1))]),
                  key: "0"
                } : {
                  name: "icon",
                  fn: withCtx(() => [createVNode(unref(N8nIcon_default), {
                    icon: "arrow-right-from-line",
                    size: "xlarge"
                  })]),
                  key: "1"
                }]), 1032, ["title"]))], 64)) : (openBlock(), createElementBlock(Fragment, {
                  key: 1
                }, [workflowRunning.value && !isTriggerNode.value ? (openBlock(), createElementBlock("div", _hoisted_1$1, [createBaseVNode("div", {
                  class: normalizeClass(_ctx.$style.spinner)
                }, [createVNode(unref(N8nSpinner_default), {
                  type: "ring"
                })], 2), createVNode(unref(N8nText_default), null, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.waitingToRun")), 1)]),
                  _: 1
                })])) : createCommentVNode("", true), !workflowRunning.value ? (openBlock(), createBlock(unref(N8nText_default), {
                  key: 1,
                  "data-test-id": "ndv-output-run-node-hint"
                }, {
                  default: withCtx(() => [unref(isSubNodeType) ? (openBlock(), createElementBlock(Fragment, {
                    key: 0
                  }, [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.runNodeHintSubNode")), 1)], 64)) : (openBlock(), createElementBlock(Fragment, {
                    key: 1
                  }, [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.runNodeHint")) + " ", 1), canPinData.value ? (openBlock(), createElementBlock("span", {
                    key: 0,
                    onClick: insertTestData
                  }, [_cache[10] || (_cache[10] = createBaseVNode("br", null, null, -1)), createTextVNode(" " + toDisplayString(unref(i18n).baseText("generic.or")) + " ", 1), createVNode(unref(N8nText_default), {
                    tag: "a",
                    size: "medium",
                    color: "primary"
                  }, {
                    default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.insertTestData")), 1)]),
                    _: 1
                  })])) : createCommentVNode("", true)], 64))]),
                  _: 1
                })) : createCommentVNode("", true)], 64))]),
                "node-waiting": withCtx(() => [createVNode(NDVEmptyState_default, {
                  title: unref(i18n).baseText("ndv.output.waitNodeWaiting.title"),
                  wide: ""
                }, {
                  default: withCtx(() => [withDirectives(createBaseVNode("span", null, null, 512), [[_directive_n8n_html, unref(waitingNodeTooltip)(node.value, _ctx.workflowObject)]])]),
                  _: 1
                }, 8, ["title"])]),
                "no-output-data": withCtx(() => [createVNode(NDVEmptyState_default, {
                  title: unref(i18n).baseText("ndv.output.noOutputData.title")
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.noOutputData.message")) + " ", 1), createBaseVNode("a", {
                    onClick: openSettings
                  }, toDisplayString(unref(i18n).baseText("ndv.output.noOutputData.message.settings")), 1), createTextVNode(" " + toDisplayString(unref(i18n).baseText("ndv.output.noOutputData.message.settingsOption")), 1)]),
                  _: 1
                }, 8, ["title"])]),
                "recovered-artificial-output-data": withCtx(() => [createVNode(NDVEmptyState_default, {
                  title: unref(i18n).baseText("executionDetails.executionFailed.recoveredNodeTitle")
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("executionDetails.executionFailed.recoveredNodeMessage")), 1)]),
                  _: 1
                }, 8, ["title"])]),
                _: 2
              }, [outputMode.value === "logs" && node.value ? {
                name: "content",
                fn: withCtx(() => [createVNode(RunDataAi_default, {
                  node: node.value,
                  "run-index": _ctx.runIndex,
                  "workflow-object": _ctx.workflowObject
                }, null, 8, ["node", "run-index", "workflow-object"])]),
                key: "0"
              } : void 0, !unref(pinnedData).hasData.value && runsCount.value > 1 ? {
                name: "run-info",
                fn: withCtx(() => [createVNode(RunInfo_default, {
                  "task-data": runTaskData.value
                }, null, 8, ["task-data"])]),
                key: "1"
              } : void 0]), 1032, ["class", "node", "workflow-object", "run-index", "linked-runs", "can-link-runs", "no-data-in-branch-message", "is-executing", "executing-message", "push-ref", "block-u-i", "is-production-execution-preview", "search-shortcut", "hide-pagination", "data-output-type", "callout-message", "display-mode", "collapsing-table-column-name"]);
            };
          }
        }); //#endregion
        //#region src/features/ndv/panel/components/OutputPanel.vue?vue&type=style&index=0&lang.module.scss
        runData = "_runData_w7r0e_128";
        runDataV2 = "_runDataV2_w7r0e_132";
        outputTypeSelect = "_outputTypeSelect_w7r0e_136";
        titleSection = "_titleSection_w7r0e_141";
        titleSectionV2 = "_titleSectionV2_w7r0e_149";
        title = "_title_w7r0e_141";
        titleV2 = "_titleV2_w7r0e_161";
        noOutputData = "_noOutputData_w7r0e_166";
        link = "_link_w7r0e_176";
        spinner = "_spinner_w7r0e_183";
        OutputPanel_vue_vue_type_style_index_0_lang_module_default = {
          runData,
          runDataV2,
          outputTypeSelect,
          titleSection,
          titleSectionV2,
          title,
          titleV2,
          noOutputData,
          link,
          spinner
        }; //#endregion
        //#region src/features/ndv/panel/components/OutputPanel.vue
        cssModules$1 = {
          "$style": OutputPanel_vue_vue_type_style_index_0_lang_module_default
        };
        _export("n", OutputPanel_default = /* @__PURE__ */__plugin_vue_export_helper_default(OutputPanel_vue_vue_type_script_setup_true_lang_default, [["__cssModules", cssModules$1]])); //#endregion
        //#region src/features/ndv/panel/components/TriggerPanel.vue?vue&type=script&setup=true&lang.ts
        _hoisted_1 = {
          key: "empty"
        };
        _hoisted_2 = {
          key: "listening",
          "data-test-id": "trigger-listening"
        };
        _hoisted_3 = {
          key: 0
        };
        _hoisted_4 = {
          key: 1
        };
        _hoisted_5 = {
          key: 0
        };
        _hoisted_6 = {
          key: "default"
        };
        _hoisted_7 = {
          key: 0,
          class: "mb-xl"
        };
        _hoisted_8 = ["textContent"];
        TriggerPanel_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */defineComponent({
          __name: "TriggerPanel",
          props: {
            nodeName: {},
            pushRef: {
              default: ""
            }
          },
          emits: ["activate", "execute"],
          setup(__props, {
            emit: __emit
          }) {
            const props = __props;
            const emit = __emit;
            const nodesTypeStore = useNodeTypesStore();
            const uiStore = useUIStore();
            const workflowsStore = useWorkflowsStore();
            const ndvStore = useNDVStore();
            const router = useRouter();
            const workflowHelpers = useWorkflowHelpers();
            const i18n = useI18n();
            const telemetry = useTelemetry();
            const executionsHelpEventBus = createEventBus();
            const help = ref(null);
            const node = computed(() => workflowsStore.getNodeByName(props.nodeName));
            const nodeType = computed(() => {
              if (node.value) return nodesTypeStore.getNodeType(node.value.type, node.value.typeVersion);
              return null;
            });
            const triggerPanel = computed(() => {
              const panel = nodeType.value?.triggerPanel;
              if (isTriggerPanelObject(panel)) return panel;
            });
            const hideContent = computed(() => {
              const hideContent$1 = triggerPanel.value?.hideContent;
              if (typeof hideContent$1 === "boolean") return hideContent$1;
              if (node.value) {
                const hideContentValue = workflowsStore.workflowObject.expression.getSimpleParameterValue(node.value, hideContent$1, "internal", {});
                if (typeof hideContentValue === "boolean") return hideContentValue;
              }
              return false;
            });
            const hasIssues = computed(() => {
              return Boolean(node.value?.issues && (node.value.issues.parameters ?? node.value.issues.credentials));
            });
            const serviceName = computed(() => {
              if (nodeType.value) return getTriggerNodeServiceName(nodeType.value);
              return "";
            });
            const displayChatButton = computed(() => {
              return Boolean(node.value && node.value.type === "@n8n/n8n-nodes-langchain.chatTrigger" && node.value.parameters.mode !== "webhook");
            });
            const isWebhookNode = computed(() => {
              return Boolean(node.value && node.value.type === "n8n-nodes-base.webhook");
            });
            const webhookHttpMethod = computed(() => {
              if (!node.value || !nodeType.value?.webhooks?.length) return;
              const httpMethod = workflowHelpers.getWebhookExpressionValue(nodeType.value.webhooks[0], "httpMethod", false);
              if (Array.isArray(httpMethod)) return httpMethod.join(", ");
              return httpMethod;
            });
            const webhookTestUrl = computed(() => {
              if (!node.value || !nodeType.value?.webhooks?.length) return;
              return workflowHelpers.getWebhookUrl(nodeType.value.webhooks[0], node.value, "test");
            });
            const isWebhookBasedNode = computed(() => {
              return Boolean(nodeType.value?.webhooks?.length);
            });
            const isPollingNode = computed(() => {
              return Boolean(nodeType.value?.polling);
            });
            const isListeningForEvents = computed(() => {
              if (!node.value || node.value.disabled || !isWebhookBasedNode.value) return false;
              if (!workflowsStore.executionWaitingForWebhook) return false;
              const executedNode = workflowsStore.executedNode;
              const isCurrentNodeExecuted = executedNode === props.nodeName;
              const isChildNodeExecuted = executedNode ? workflowsStore.workflowObject.getParentNodes(executedNode).includes(props.nodeName) : false;
              return !executedNode || isCurrentNodeExecuted || isChildNodeExecuted;
            });
            const workflowRunning = computed(() => workflowsStore.isWorkflowRunning);
            const isActivelyPolling = computed(() => {
              const triggeredNode = workflowsStore.executedNode;
              return workflowRunning.value && isPollingNode.value && props.nodeName === triggeredNode;
            });
            const isWorkflowActive = computed(() => {
              return workflowsStore.isWorkflowActive;
            });
            const listeningTitle = computed(() => {
              return nodeType.value?.name === "n8n-nodes-base.formTrigger" ? i18n.baseText("ndv.trigger.webhookNode.formTrigger.listening") : i18n.baseText("ndv.trigger.webhookNode.listening");
            });
            const listeningHint = computed(() => {
              switch (nodeType.value?.name) {
                case CHAT_TRIGGER_NODE_TYPE:
                  return i18n.baseText("ndv.trigger.webhookBasedNode.chatTrigger.serviceHint");
                case FORM_TRIGGER_NODE_TYPE:
                  return i18n.baseText("ndv.trigger.webhookBasedNode.formTrigger.serviceHint");
                default:
                  return i18n.baseText("ndv.trigger.webhookBasedNode.serviceHint", {
                    interpolate: {
                      service: serviceName.value
                    }
                  });
              }
            });
            const header$2 = computed(() => {
              if (isActivelyPolling.value) return i18n.baseText("ndv.trigger.pollingNode.fetchingEvent");
              if (triggerPanel.value?.header) return triggerPanel.value.header;
              if (isWebhookBasedNode.value) return i18n.baseText("ndv.trigger.webhookBasedNode.action", {
                interpolate: {
                  name: serviceName.value
                }
              });
              return "";
            });
            const subheader = computed(() => {
              if (isActivelyPolling.value) return i18n.baseText("ndv.trigger.pollingNode.fetchingHint", {
                interpolate: {
                  name: serviceName.value
                }
              });
              return "";
            });
            const executionsHelp = computed(() => {
              if (triggerPanel.value?.executionsHelp) {
                if (typeof triggerPanel.value.executionsHelp === "string") return triggerPanel.value.executionsHelp;
                if (!isWorkflowActive.value && triggerPanel.value.executionsHelp.inactive) return triggerPanel.value.executionsHelp.inactive;
                if (isWorkflowActive.value && triggerPanel.value.executionsHelp.active) return triggerPanel.value.executionsHelp.active;
              }
              if (isWebhookBasedNode.value) if (isWorkflowActive.value) return i18n.baseText("ndv.trigger.webhookBasedNode.executionsHelp.active", {
                interpolate: {
                  service: serviceName.value
                }
              });else return i18n.baseText("ndv.trigger.webhookBasedNode.executionsHelp.inactive", {
                interpolate: {
                  service: serviceName.value
                }
              });
              if (isPollingNode.value) if (isWorkflowActive.value) return i18n.baseText("ndv.trigger.pollingNode.executionsHelp.active", {
                interpolate: {
                  service: serviceName.value
                }
              });else return i18n.baseText("ndv.trigger.pollingNode.executionsHelp.inactive", {
                interpolate: {
                  service: serviceName.value
                }
              });
              return "";
            });
            const activationHint = computed(() => {
              if (isActivelyPolling.value || !triggerPanel.value) return "";
              if (triggerPanel.value.activationHint) {
                if (typeof triggerPanel.value.activationHint === "string") return triggerPanel.value.activationHint;
                if (!isWorkflowActive.value && typeof triggerPanel.value.activationHint.inactive === "string") return triggerPanel.value.activationHint.inactive;
                if (isWorkflowActive.value && typeof triggerPanel.value.activationHint.active === "string") return triggerPanel.value.activationHint.active;
              }
              if (isWebhookBasedNode.value) if (isWorkflowActive.value) return i18n.baseText("ndv.trigger.webhookBasedNode.activationHint.active", {
                interpolate: {
                  service: serviceName.value
                }
              });else return i18n.baseText("ndv.trigger.webhookBasedNode.activationHint.inactive", {
                interpolate: {
                  service: serviceName.value
                }
              });
              if (isPollingNode.value) if (isWorkflowActive.value) return i18n.baseText("ndv.trigger.pollingNode.activationHint.active", {
                interpolate: {
                  service: serviceName.value
                }
              });else return i18n.baseText("ndv.trigger.pollingNode.activationHint.inactive", {
                interpolate: {
                  service: serviceName.value
                }
              });
              return "";
            });
            const expandExecutionHelp = () => {
              if (help.value) executionsHelpEventBus.emit("expand");
            };
            const openWebhookUrl = () => {
              telemetry.track("User clicked ndv link", {
                workflow_id: workflowsStore.workflowId,
                push_ref: props.pushRef,
                pane: "input",
                type: "open-chat"
              });
              window.open(webhookTestUrl.value, "_blank", "noreferrer");
            };
            const onLinkClick = e => {
              if (!e.target) return;
              const target = e.target;
              if (target.localName !== "a") return;
              if (target.dataset?.key) {
                e.stopPropagation();
                e.preventDefault();
                if (target.dataset.key === "activate") emit("activate");else if (target.dataset.key === "executions") {
                  telemetry.track("User clicked ndv link", {
                    workflow_id: workflowsStore.workflowId,
                    push_ref: props.pushRef,
                    pane: "input",
                    type: "open-executions-log"
                  });
                  ndvStore.unsetActiveNodeName();
                  router.push({
                    name: VIEWS.EXECUTIONS
                  });
                } else if (target.dataset.key === "settings") uiStore.openModal(WORKFLOW_SETTINGS_MODAL_KEY);
              }
            };
            const onTestLinkCopied = () => {
              telemetry.track("User copied webhook URL", {
                pane: "inputs",
                type: "test url"
              });
            };
            const onNodeExecute = () => {
              emit("execute");
            };
            return (_ctx, _cache) => {
              const _directive_n8n_html = resolveDirective("n8n-html");
              return openBlock(), createElementBlock("div", {
                class: normalizeClass(_ctx.$style.container)
              }, [createVNode(Transition, {
                name: "fade",
                mode: "out-in"
              }, {
                default: withCtx(() => [hasIssues.value || hideContent.value ? (openBlock(), createElementBlock("div", _hoisted_1)) : isListeningForEvents.value ? (openBlock(), createElementBlock("div", _hoisted_2, [createVNode(unref(N8nPulse_default), null, {
                  default: withCtx(() => [createVNode(NodeIcon_default, {
                    "node-type": nodeType.value,
                    size: 40
                  }, null, 8, ["node-type"])]),
                  _: 1
                }), isWebhookNode.value ? (openBlock(), createElementBlock("div", _hoisted_3, [createVNode(unref(N8nText_default), {
                  tag: "div",
                  size: "large",
                  color: "text-dark",
                  class: "mb-2xs",
                  bold: ""
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.trigger.webhookNode.listening")), 1)]),
                  _: 1
                }), createBaseVNode("div", {
                  class: normalizeClass([_ctx.$style.shake, "mb-xs"])
                }, [createVNode(unref(N8nText_default), null, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.trigger.webhookNode.requestHint", {
                    interpolate: {
                      type: webhookHttpMethod.value ?? ""
                    }
                  })), 1)]),
                  _: 1
                })], 2), createVNode(CopyInput_default, {
                  value: webhookTestUrl.value,
                  "toast-title": unref(i18n).baseText("ndv.trigger.copiedTestUrl"),
                  class: "mb-2xl",
                  size: "medium",
                  collapse: true,
                  "copy-button-text": unref(i18n).baseText("generic.clickToCopy"),
                  onCopy: onTestLinkCopied
                }, null, 8, ["value", "toast-title", "copy-button-text"]), createVNode(NodeExecuteButton_default, {
                  "data-test-id": "trigger-execute-button",
                  "node-name": _ctx.nodeName,
                  size: "medium",
                  "telemetry-source": "inputs",
                  onExecute: onNodeExecute
                }, null, 8, ["node-name"])])) : (openBlock(), createElementBlock("div", _hoisted_4, [createVNode(unref(N8nText_default), {
                  tag: "div",
                  size: "large",
                  color: "text-dark",
                  class: "mb-2xs",
                  bold: ""
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(listeningTitle.value), 1)]),
                  _: 1
                }), createBaseVNode("div", {
                  class: normalizeClass([_ctx.$style.shake, "mb-xs"])
                }, [createVNode(unref(N8nText_default), {
                  tag: "div"
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(listeningHint.value), 1)]),
                  _: 1
                })], 2), displayChatButton.value ? (openBlock(), createElementBlock("div", _hoisted_5, [createVNode(unref(N8nButton_default), {
                  class: "mb-xl",
                  onClick: _cache[0] || (_cache[0] = $event => openWebhookUrl())
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.trigger.chatTrigger.openChat")), 1)]),
                  _: 1
                })])) : createCommentVNode("", true), createVNode(NodeExecuteButton_default, {
                  "data-test-id": "trigger-execute-button",
                  "node-name": _ctx.nodeName,
                  size: "medium",
                  "telemetry-source": "inputs",
                  onExecute: onNodeExecute
                }, null, 8, ["node-name"])]))])) : (openBlock(), createElementBlock("div", _hoisted_6, [isActivelyPolling.value ? (openBlock(), createElementBlock("div", _hoisted_7, [createVNode(unref(N8nSpinner_default), {
                  type: "ring"
                })])) : createCommentVNode("", true), createBaseVNode("div", {
                  class: normalizeClass(_ctx.$style.action)
                }, [createBaseVNode("div", {
                  "data-test-id": "trigger-header",
                  class: normalizeClass(_ctx.$style.header)
                }, [header$2.value ? (openBlock(), createBlock(unref(N8nHeading_default), {
                  key: 0,
                  tag: "h1",
                  bold: ""
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(header$2.value), 1)]),
                  _: 1
                })) : createCommentVNode("", true), subheader.value ? (openBlock(), createBlock(unref(N8nText_default), {
                  key: 1
                }, {
                  default: withCtx(() => [createBaseVNode("span", {
                    textContent: toDisplayString(subheader.value)
                  }, null, 8, _hoisted_8)]),
                  _: 1
                })) : createCommentVNode("", true)], 2), createVNode(NodeExecuteButton_default, {
                  "data-test-id": "trigger-execute-button",
                  "node-name": _ctx.nodeName,
                  size: "medium",
                  "telemetry-source": "inputs",
                  onExecute: onNodeExecute
                }, null, 8, ["node-name"])], 2), activationHint.value ? (openBlock(), createBlock(unref(N8nText_default), {
                  key: 1,
                  size: "small",
                  onClick: onLinkClick
                }, {
                  default: withCtx(() => [withDirectives(createBaseVNode("span", null, null, 512), [[_directive_n8n_html, activationHint.value]]), _cache[1] || (_cache[1] = createTextVNode("\xA0 "))]),
                  _: 1
                })) : createCommentVNode("", true), activationHint.value && executionsHelp.value ? (openBlock(), createBlock(unref(N8nLink_default), {
                  key: 2,
                  size: "small",
                  onClick: expandExecutionHelp
                }, {
                  default: withCtx(() => [createTextVNode(toDisplayString(unref(i18n).baseText("ndv.trigger.moreInfo")), 1)]),
                  _: 1
                })) : createCommentVNode("", true), executionsHelp.value ? (openBlock(), createBlock(unref(N8nInfoAccordion_default), {
                  key: 3,
                  ref_key: "help",
                  ref: help,
                  class: normalizeClass(_ctx.$style.accordion),
                  title: unref(i18n).baseText("ndv.trigger.executionsHint.question"),
                  description: executionsHelp.value,
                  "event-bus": unref(executionsHelpEventBus),
                  "onClick:body": onLinkClick
                }, null, 8, ["class", "title", "description", "event-bus"])) : createCommentVNode("", true)]))]),
                _: 1
              })], 2);
            };
          }
        }); //#endregion
        //#region src/features/ndv/panel/components/TriggerPanel.vue?vue&type=style&index=0&lang.module.scss
        container = "_container_6tej3_123";
        header = "_header_6tej3_140";
        action = "_action_6tej3_147";
        shake = "_shake_6tej3_151";
        accordion = "_accordion_6tej3_172";
        TriggerPanel_vue_vue_type_style_index_0_lang_module_default = {
          container,
          header,
          action,
          shake,
          accordion
        }; //#endregion
        //#region src/features/ndv/panel/components/TriggerPanel.vue
        cssModules = {
          "$style": TriggerPanel_vue_vue_type_style_index_0_lang_module_default
        };
        _export("t", TriggerPanel_default = /* @__PURE__ */__plugin_vue_export_helper_default(TriggerPanel_vue_vue_type_script_setup_true_lang_default, [["__cssModules", cssModules], ["__scopeId", "data-v-d428ffd7"]])); //#endregion
      }
    };
  });
})();