n8n-editor-ui 1.101.0 → 1.102.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{ActionDropdown-BujIG0Jq.js → ActionDropdown-D-JmCYsp.js} +2 -2
- package/dist/assets/{AnimatedSpinner-B5cpb6Fs.js → AnimatedSpinner-BiuDg2x2.js} +1 -1
- package/dist/assets/{AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-BPigGQTI.js → AnnotationTagsDropdown.ee.vue_vue_type_script_setup_true_lang-Bp194Fz4.js} +1 -1
- package/dist/assets/{AuthView-BOTPYtpM.js → AuthView-DF-20OPE.js} +2 -2
- package/dist/assets/{ChangePasswordView-DbeC55bz.js → ChangePasswordView-DSn8-M1-.js} +3 -3
- package/dist/assets/CollectionParameter-Bz5DzZqs.js +4 -0
- package/dist/assets/{CredentialsView-DUh5K-2r.js → CredentialsView-IQx76pD4.js} +8 -8
- package/dist/assets/{DemoFooter-BXPfbNJE.js → DemoFooter-49OiW0k2.js} +8 -7
- package/dist/assets/{EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-CDDQIxv5.js → EmptySharedSectionActionBox.vue_vue_type_script_setup_true_lang-FNKd4r6R.js} +1 -1
- package/dist/assets/{EntityNotFound-CBUuOOYw.js → EntityNotFound-DScKsOtg.js} +1 -1
- package/dist/assets/{EntityUnAuthorised-7xgN3ECo.js → EntityUnAuthorised-DweZmhgI.js} +1 -1
- package/dist/assets/{ErrorView-BVfcsoOa.js → ErrorView-CNDVS4gm.js} +4 -4
- package/dist/assets/{EvaluationsRootView-BjrpKDj-.js → EvaluationsRootView-81SdPChp.js} +19 -27
- package/dist/assets/{EvaluationsView-DdmFZCH-.js → EvaluationsView-BAyQWPF9.js} +7 -7
- package/dist/assets/{ExecutionsTime-kMSlccIr.css → ExecutionsTime-DkME6I3E.css} +26 -19
- package/dist/assets/{ExecutionsTime.vue_vue_type_script_setup_true_lang-Ctx5Ybnr.js → ExecutionsTime.vue_vue_type_script_setup_true_lang-Qw7S05EC.js} +23 -21
- package/dist/assets/{ExecutionsView-8BjGHy2I.js → ExecutionsView--yDyvnL8.js} +15 -16
- package/dist/assets/{ExecutionsView-DSsowKj4.css → ExecutionsView-BHBePl1_.css} +1 -1
- package/dist/assets/{FileSaver.min-C5wzcK59.js → FileSaver.min-CeGSkamF.js} +1 -1
- package/dist/assets/{FixedCollectionParameter-DjlaZyUQ.css → FixedCollectionParameter-CEzpjeQZ.css} +18 -18
- package/dist/assets/{FixedCollectionParameter-BrPQ5Vay.js → FixedCollectionParameter-tgbkzIuD.js} +7 -7
- package/dist/assets/{ForgotMyPasswordView-L0afefc1.js → ForgotMyPasswordView-CVwKac4K.js} +3 -3
- package/dist/assets/{InfoAccordion-CEk3XG5b.js → InfoAccordion-75IQV-_q.js} +1 -1
- package/dist/assets/{InsightsChartAverageRuntime-BrwBWr_R.js → InsightsChartAverageRuntime-C4C4zghF.js} +4 -4
- package/dist/assets/{InsightsChartFailed-ILKWvikG.js → InsightsChartFailed-DyhWE17m.js} +4 -4
- package/dist/assets/{InsightsChartFailureRate-D1AVYwU7.js → InsightsChartFailureRate-B09GcGvY.js} +4 -4
- package/dist/assets/{InsightsChartTimeSaved-D49Rwn6-.js → InsightsChartTimeSaved-DGzFyou3.js} +4 -4
- package/dist/assets/{InsightsChartTotal-Bs-pUgA3.js → InsightsChartTotal-fIUzF41H.js} +4 -4
- package/dist/assets/{InsightsDashboard-BIC4uZpW.js → InsightsDashboard-Qhv7fScv.js} +10 -10
- package/dist/assets/{InsightsPaywall-DmwFI-6e.js → InsightsPaywall-C3-la0kD.js} +1 -1
- package/dist/assets/{InsightsSummary-D9lEzWNT.js → InsightsSummary-CJgV5s0y.js} +14 -13
- package/dist/assets/{InsightsSummary-DzGQpM5h.css → InsightsSummary-DTFIhBF3.css} +25 -27
- package/dist/assets/InsightsTableWorkflows-P5OHXu1Y.js +177 -0
- package/dist/assets/{Logo-DNxOhbuV.js → Logo-8MWdHUz0.js} +1 -1
- package/dist/assets/{LogsPanel-DvWnD7rJ.js → LogsPanel-BabpRONg.js} +279 -212
- package/dist/assets/{LogsPanel-D5R6F35L.css → LogsPanel-Bvy4ANV7.css} +106 -61
- package/dist/assets/{MainHeader-BVHIuVVT.js → MainHeader-0ppftO6b.js} +10 -10
- package/dist/assets/{MainSidebar-CEHr93uL.js → MainSidebar-BnXOkYK4.js} +23 -16
- package/dist/assets/{MainSidebar-DqrgzqvZ.css → MainSidebar-CaLHZgDB.css} +2 -2
- package/dist/assets/{InsightsTableWorkflows-CC8t-sAL.js → N8nDataTableServer-Cx18Zd1O.js} +9 -181
- package/dist/assets/{NodeCreation-Bq5626Ha.js → NodeCreation-DKbc91uY.js} +7 -7
- package/dist/assets/{NodeCreator-Dk0sNXFZ.css → NodeCreator-DWE25utr.css} +51 -58
- package/dist/assets/{NodeCreator-D7xT3ogw.js → NodeCreator-xRYJHbTG.js} +118 -112
- package/dist/assets/NodeDetailsView-CPVE5S8P.js +1155 -0
- package/dist/assets/NodeDetailsView-CaTI-1QQ.css +668 -0
- package/dist/assets/NodeDetailsViewV2-5pxsZwAo.js +1061 -0
- package/dist/assets/NodeDetailsViewV2-BxNx4ZUM.css +506 -0
- package/dist/assets/{NodeView-DL8JxnMc.css → NodeView-Cgf2HuDk.css} +263 -110
- package/dist/assets/{NodeView-DoR46iB5.js → NodeView-DYjZmKNE.js} +580 -409
- package/dist/assets/{ProjectHeader-DSKKwiQ0.js → ProjectHeader-e8JosKaj.js} +5 -5
- package/dist/assets/{ProjectSettings-C3sMIDHh.js → ProjectSettings-DNKcVLkd.js} +201 -25
- package/dist/assets/{PushConnectionTracker.vue_vue_type_script_setup_true_lang-cnANEo9o.js → PushConnectionTracker.vue_vue_type_script_setup_true_lang-EuKDPqQH.js} +3 -3
- package/dist/assets/{ResourcesListLayout-BVbjqFbc.js → ResourcesListLayout-C4y0iPmg.js} +4 -4
- package/dist/assets/{RunData-DG20AzLo.js → RunData-D3xzjO33.js} +124 -99
- package/dist/assets/{RunData-B5_okvCv.css → RunData-DuKNwYqe.css} +99 -85
- package/dist/assets/{RunDataJson-7okRLIES.js → RunDataJson-D5YFtOcJ.js} +16 -20
- package/dist/assets/{RunDataJsonActions-DrgwFS0W.css → RunDataJsonActions-B2jW3_UG.css} +3 -5
- package/dist/assets/{RunDataJsonActions-Qkg8HmUd.js → RunDataJsonActions-BWvs4coo.js} +15 -16
- package/dist/assets/{RunDataParsedAiContent-DRO1Bjsh.js → RunDataParsedAiContent-BYISiW-I.js} +12 -12
- package/dist/assets/{RunDataParsedAiContent-9EEUzCKp.css → RunDataParsedAiContent-wfIiKsq7.css} +16 -13
- package/dist/assets/{RunDataSearch-R6qtl0Jf.css → RunDataSearch-2eEalFoi.css} +8 -7
- package/dist/assets/{RunDataSearch-D5eQUWvi.js → RunDataSearch-oo3_BoLt.js} +4 -4
- package/dist/assets/{RunDataTable-CJmmTtEp.js → RunDataTable-6rCOQNCX.js} +126 -54
- package/dist/assets/{RunDataTable-CykHIwNT.css → RunDataTable-CTBtmQIs.css} +84 -44
- package/dist/assets/{SamlOnboarding-ClxYfm5z.js → SamlOnboarding-BG-gGcbY.js} +3 -3
- package/dist/assets/{SettingsApiView-Ds7FYVrN.js → SettingsApiView-Bmlbp7pD.js} +1 -1
- package/dist/assets/{SettingsCommunityNodesView-QKvLs6gi.js → SettingsCommunityNodesView-4DWd4UiC.js} +32 -6
- package/dist/assets/{SettingsExternalSecrets-d1KDgYYp.css → SettingsExternalSecrets-BAX9ENm9.css} +9 -6
- package/dist/assets/{SettingsExternalSecrets-DGRdvsMy.js → SettingsExternalSecrets-hpUcipWw.js} +17 -13
- package/dist/assets/{SettingsLdapView-C_LJwixk.js → SettingsLdapView-7p7L95v9.js} +1 -1
- package/dist/assets/{SettingsLogStreamingView-CaEJvgJ9.js → SettingsLogStreamingView-4CpWJqj_.js} +1 -1
- package/dist/assets/{SettingsPersonalView-DlwXaGDs.js → SettingsPersonalView-9iP06ihA.js} +11 -3
- package/dist/assets/{SettingsSourceControl-B6eULOfX.js → SettingsSourceControl-BGjWhqqJ.js} +5 -5
- package/dist/assets/{SettingsSso-5zcg-J4E.js → SettingsSso-ChOyD3kc.js} +1 -1
- package/dist/assets/{SettingsUsageAndPlan-CMBvYdjo.js → SettingsUsageAndPlan-jP8nn4Rh.js} +1 -1
- package/dist/assets/SettingsUsersView-BhfbqjxW.js +861 -0
- package/dist/assets/SettingsUsersView-BuZbf1jq.css +446 -0
- package/dist/assets/{SettingsView-Bawwm19P.css → SettingsView-4yzof_Pb.css} +4 -4
- package/dist/assets/{SettingsView-BuDKhqwZ.js → SettingsView-DTFEdRdj.js} +14 -14
- package/dist/assets/{SetupView-DSaQcQDF.js → SetupView-CXuAO6tx.js} +3 -3
- package/dist/assets/{SetupWorkflowCredentialsButton-BWISZAxq.js → SetupWorkflowCredentialsButton-Bj4rSqAV.js} +2 -2
- package/dist/assets/{SetupWorkflowFromTemplateView-CfDWCwoA.js → SetupWorkflowFromTemplateView-DG8Ml3A0.js} +8 -12
- package/dist/assets/{SigninView-BpjyswHb.js → SigninView-KmmptKWN.js} +7 -3
- package/dist/assets/{SignoutView-f_CoUl4S.js → SignoutView-8rAPEX_X.js} +1 -1
- package/dist/assets/{SignupView-q3f9g3P9.js → SignupView-ZYUP6f-Y.js} +3 -3
- package/dist/assets/{TableBase-DruQl-SO.js → TableBase-7XxrB0dw.js} +1 -1
- package/dist/assets/{Tags-DbmKHzWo.js → Tags-C8Jnw74N.js} +1 -1
- package/dist/assets/{TemplateDetails-DP_5pkzG.js → TemplateDetails-Bk1ixuRQ.js} +2 -2
- package/dist/assets/{TemplateList-y8Aumcsb.js → TemplateList-9SAC8OGn.js} +6 -3
- package/dist/assets/{TemplatesCollectionView-VdQpHtxs.js → TemplatesCollectionView-CLZDJ4HM.js} +6 -6
- package/dist/assets/{TemplatesSearchView-BUcYRVEK.js → TemplatesSearchView-DRzdGp3s.js} +8 -8
- package/dist/assets/{TemplatesView-4DUEEEtD.js → TemplatesView-V6ud-nM5.js} +3 -3
- package/dist/assets/{TemplatesWorkflowView--zUXMB8f.js → TemplatesWorkflowView-CLb4CuR2.js} +6 -6
- package/dist/assets/{NodeDetailsView-DB-5JPUD.js → TriggerPanel-BOC7PYsi.js} +498 -1415
- package/dist/assets/{NodeDetailsView-BaIj2qAa.css → TriggerPanel-DRpKKKun.css} +296 -903
- package/dist/assets/{VariablesView-DoWb0Vtv.js → VariablesView-BDzhSaxw.js} +6 -6
- package/dist/assets/{VariablesView-Kog_9PMT.css → VariablesView-Bh0OeH4s.css} +6 -6
- package/dist/assets/{WorkerView-D56d7XJA.js → WorkerView-C2A7cYkr.js} +9 -9
- package/dist/assets/{WorkflowActivator-CQxaDCfA.js → WorkflowActivator-BmIzNsA8.js} +8 -8
- package/dist/assets/{WorkflowActivator-BJPsIkXE.css → WorkflowActivator-DhLX6i1H.css} +2 -2
- package/dist/assets/{WorkflowExecutionsInfoAccordion-D9p_ZqmA.js → WorkflowExecutionsInfoAccordion-Cn4GRGO_.js} +6 -6
- package/dist/assets/{WorkflowExecutionsLandingPage-CymYth6K.js → WorkflowExecutionsLandingPage-s-dIgG6D.js} +3 -3
- package/dist/assets/{WorkflowExecutionsPreview-DRvf3WQC.js → WorkflowExecutionsPreview-BE7NfRAa.js} +12 -12
- package/dist/assets/{WorkflowExecutionsView-DxiIaUKV.js → WorkflowExecutionsView-DFmBdF-B.js} +16 -16
- package/dist/assets/{WorkflowHistory-DBPIq2u7.js → WorkflowHistory-3wO0nQYD.js} +4 -4
- package/dist/assets/{WorkflowOnboardingView-D4QKSetf.js → WorkflowOnboardingView-mBVE6x-i.js} +1 -1
- package/dist/assets/{WorkflowPreview-D3YRZjYi.js → WorkflowPreview-DlNMFCKn.js} +1 -1
- package/dist/assets/{WorkflowsView-ipf8KKwB.css → WorkflowsView-CyJbJBc8.css} +25 -21
- package/dist/assets/{WorkflowsView-DPADmBVd.js → WorkflowsView-DsAOuPT0.js} +77 -72
- package/dist/assets/{chartjs.utils-Cou_ISuU.js → chartjs.utils-BywXqBmg.js} +2 -2
- package/dist/assets/{en-DzZibgm_.js → en-CcKAtA8V.js} +45 -5
- package/dist/assets/{global-link-actions-olwfH36z.js → global-link-actions-BzAw9ZbO.js} +1 -1
- package/dist/assets/{import-curl-DD21H3kK.js → import-curl-1LWAxRTV.js} +1 -1
- package/dist/assets/{index-uJOu4Uio.js → index-B6A1nL2x.js} +1 -1
- package/dist/assets/{index-BzamKJpD.css → index-C66_v3sX.css} +1302 -1279
- package/dist/assets/{index-7S5ADieN.js → index-V0GOmfo8.js} +40721 -34933
- package/dist/assets/{pickBy-DPxZbMic.js → pickBy-CtRItcCT.js} +1 -1
- package/dist/assets/{templateActions-DJJfyIhq.js → templateActions-DpIzx0ws.js} +2 -2
- package/dist/assets/{useBeforeUnload-DveXGtGN.js → useBeforeUnload-B0EP7Q2i.js} +1 -1
- package/dist/assets/{useExecutionDebugging-DM4nhx6D.js → useExecutionDebugging-AwlOA2KI.js} +2 -1
- package/dist/assets/{useExecutionHelpers-BfF56crp.js → useExecutionHelpers-DvBwGIzz.js} +1 -1
- package/dist/assets/{useImportCurlCommand-BAgQhwtE.js → useImportCurlCommand-DIFC7Epr.js} +2 -2
- package/dist/assets/{useKeybindings-CV0VsjNP.js → useKeybindings-CduQ2pi5.js} +4 -4
- package/dist/assets/{useProjectPages-DgMGWOaO.js → useProjectPages-DmNmAOdq.js} +1 -1
- package/dist/assets/{usePushConnection-D8SE-itT.js → usePushConnection-Dyd5__87.js} +6 -12
- package/dist/assets/{useWorkflowActivate-BKz3N1SO.js → useWorkflowActivate-z9iwP6OY.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
- package/vite.config.mts +2 -2
- package/dist/assets/CollectionParameter-CExdr4jd.js +0 -4
- package/dist/assets/SettingsUsersView-BL3TAhT8.js +0 -338
- package/dist/assets/SettingsUsersView-By12E2li.css +0 -143
|
@@ -1,18 +1,8 @@
|
|
|
1
|
-
import { d as defineComponent,
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
import { u as useWorkflowActivate } from "./useWorkflowActivate-BKz3N1SO.js";
|
|
7
|
-
import "./ActionDropdown-BujIG0Jq.js";
|
|
8
|
-
import "./useKeybindings-CV0VsjNP.js";
|
|
9
|
-
import "./import-curl-DD21H3kK.js";
|
|
10
|
-
import "./global-link-actions-olwfH36z.js";
|
|
11
|
-
import "./useExecutionDebugging-DM4nhx6D.js";
|
|
12
|
-
import "./useBeforeUnload-DveXGtGN.js";
|
|
13
|
-
import "./FileSaver.min-C5wzcK59.js";
|
|
14
|
-
import "./useExecutionHelpers-BfF56crp.js";
|
|
15
|
-
const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
1
|
+
import { d as defineComponent, h as createElementBlock, g as openBlock, n as normalizeClass, j as createBaseVNode, J as renderSlot, _ as _export_sfc, a4 as useWorkflowsStore, bG as useNodeTypesStore, aO as usePostHog, x as computed, dy as NDV_UI_OVERHAUL_EXPERIMENT, bo as NodeConnectionTypes, o as onMounted, I as onBeforeUnmount, F as Fragment, y as renderList, e as createBlock, f as createCommentVNode, $ as N8nTooltip, w as withCtx, i as createVNode, bP as _sfc_main$c, k as createTextVNode, t as toDisplayString, ig as convertToDisplayDateComponents, c4 as resolveDirective, l as unref, eX as InfoTip, aU as withDirectives, c as useI18n, p as N8nText, bm as emptyTokenUsageData, bl as addTokenUsageData, bJ as getDefaultExportFromCjs, ih as requireCapitalize, r as ref, gu as parseAiContent, N as N8nIcon, H as N8nRadioButtons, bI as formatTokenUsageCount, aa as watch, ii as ElTree, P as normalizeStyle, aM as useNDVStore, fn as storeToRefs, v as useSettingsStore, d$ as useNodeDirtiness, go as useNodeType, bz as usePinnedData, cV as CanvasNodeDirtiness, O as resolveComponent, bh as createSlots, c5 as waitingNodeTooltip, dd as _sfc_main$f, aV as vShow, ay as useTelemetry, cy as isPresent, f7 as N8nSelect, f8 as _sfc_main$g, ij as truncate, gL as createStaticVNode, bH as START_NODE_TYPE, hU as MANUAL_TRIGGER_NODE_TYPE, ik as CRON_NODE_TYPE, il as INTERVAL_NODE_TYPE, dc as getNodeInputs, e2 as getNodeOutputs, im as uniqBy, bY as resolveDynamicComponent, bO as withModifiers, T as useUIStore, b as useRouter, ak as useWorkflowHelpers, io as isTriggerPanelObject, e3 as getTriggerNodeServiceName, bx as CHAT_TRIGGER_NODE_TYPE, h_ as WEBHOOK_NODE_TYPE, d4 as FORM_TRIGGER_NODE_TYPE, fW as CopyInput, q as N8nButton, eK as _sfc_main$h, m as N8nHeading, a1 as N8nLink, Q as createEventBus, dQ as Transition, V as VIEWS, aC as WORKFLOW_SETTINGS_MODAL_KEY } from "./index-V0GOmfo8.js";
|
|
2
|
+
import { b as _sfc_main$d, c as ViewSubExecution, _ as _sfc_main$e, R as RunData } from "./RunData-D3xzjO33.js";
|
|
3
|
+
import RunDataAi$1 from "./RunDataParsedAiContent-BYISiW-I.js";
|
|
4
|
+
import { N as N8nInfoAccordion } from "./InfoAccordion-75IQV-_q.js";
|
|
5
|
+
const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
16
6
|
...{ name: "N8nPulse" },
|
|
17
7
|
__name: "Pulse",
|
|
18
8
|
setup(__props) {
|
|
@@ -36,106 +26,17 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
36
26
|
const pulseContainer = "_pulseContainer_1w2uc_123";
|
|
37
27
|
const pulse = "_pulse_1w2uc_123";
|
|
38
28
|
const pulse2 = "_pulse2_1w2uc_139";
|
|
39
|
-
const style0$
|
|
29
|
+
const style0$a = {
|
|
40
30
|
pulseContainer,
|
|
41
31
|
pulse,
|
|
42
32
|
pulse2
|
|
43
33
|
};
|
|
44
|
-
const cssModules$
|
|
45
|
-
"$style": style0$b
|
|
46
|
-
};
|
|
47
|
-
const N8nPulse = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__cssModules", cssModules$c]]);
|
|
48
|
-
const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
49
|
-
__name: "PanelDragButton",
|
|
50
|
-
props: {
|
|
51
|
-
canMoveRight: { type: Boolean },
|
|
52
|
-
canMoveLeft: { type: Boolean }
|
|
53
|
-
},
|
|
54
|
-
emits: ["drag", "dragstart", "dragend"],
|
|
55
|
-
setup(__props, { emit: __emit }) {
|
|
56
|
-
const emit = __emit;
|
|
57
|
-
const onDrag = (e) => {
|
|
58
|
-
emit("drag", e);
|
|
59
|
-
};
|
|
60
|
-
const onDragEnd = () => {
|
|
61
|
-
emit("dragend");
|
|
62
|
-
};
|
|
63
|
-
const onDragStart = () => {
|
|
64
|
-
emit("dragstart");
|
|
65
|
-
};
|
|
66
|
-
return (_ctx, _cache) => {
|
|
67
|
-
const _component_font_awesome_icon = resolveComponent("font-awesome-icon");
|
|
68
|
-
return openBlock(), createBlock(Draggable, {
|
|
69
|
-
type: "panel-resize",
|
|
70
|
-
class: normalizeClass(_ctx.$style.dragContainer),
|
|
71
|
-
onDrag,
|
|
72
|
-
onDragstart: onDragStart,
|
|
73
|
-
onDragend: onDragEnd
|
|
74
|
-
}, {
|
|
75
|
-
default: withCtx(({ isDragging }) => [
|
|
76
|
-
createBaseVNode("div", {
|
|
77
|
-
class: normalizeClass({ [_ctx.$style.dragButton]: true }),
|
|
78
|
-
"data-test-id": "panel-drag-button"
|
|
79
|
-
}, [
|
|
80
|
-
_ctx.canMoveLeft ? (openBlock(), createElementBlock("span", {
|
|
81
|
-
key: 0,
|
|
82
|
-
class: normalizeClass({ [_ctx.$style.leftArrow]: true, [_ctx.$style.visible]: isDragging })
|
|
83
|
-
}, [
|
|
84
|
-
createVNode(_component_font_awesome_icon, { icon: "arrow-left" })
|
|
85
|
-
], 2)) : createCommentVNode("", true),
|
|
86
|
-
_ctx.canMoveRight ? (openBlock(), createElementBlock("span", {
|
|
87
|
-
key: 1,
|
|
88
|
-
class: normalizeClass({ [_ctx.$style.rightArrow]: true, [_ctx.$style.visible]: isDragging })
|
|
89
|
-
}, [
|
|
90
|
-
createVNode(_component_font_awesome_icon, { icon: "arrow-right" })
|
|
91
|
-
], 2)) : createCommentVNode("", true),
|
|
92
|
-
createBaseVNode("div", {
|
|
93
|
-
class: normalizeClass(_ctx.$style.grid)
|
|
94
|
-
}, _cache[0] || (_cache[0] = [
|
|
95
|
-
createBaseVNode("div", null, [
|
|
96
|
-
createBaseVNode("div"),
|
|
97
|
-
createBaseVNode("div"),
|
|
98
|
-
createBaseVNode("div"),
|
|
99
|
-
createBaseVNode("div"),
|
|
100
|
-
createBaseVNode("div")
|
|
101
|
-
], -1),
|
|
102
|
-
createBaseVNode("div", null, [
|
|
103
|
-
createBaseVNode("div"),
|
|
104
|
-
createBaseVNode("div"),
|
|
105
|
-
createBaseVNode("div"),
|
|
106
|
-
createBaseVNode("div"),
|
|
107
|
-
createBaseVNode("div")
|
|
108
|
-
], -1)
|
|
109
|
-
]), 2)
|
|
110
|
-
], 2)
|
|
111
|
-
]),
|
|
112
|
-
_: 1
|
|
113
|
-
}, 8, ["class"]);
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
const dragContainer = "_dragContainer_16elv_123";
|
|
118
|
-
const dragButton = "_dragButton_16elv_127";
|
|
119
|
-
const leftArrow = "_leftArrow_16elv_141 _arrow_16elv_150";
|
|
120
|
-
const rightArrow = "_rightArrow_16elv_142 _arrow_16elv_150";
|
|
121
|
-
const visible$1 = "_visible_16elv_146";
|
|
122
|
-
const arrow = "_arrow_16elv_150";
|
|
123
|
-
const grid = "_grid_16elv_168";
|
|
124
|
-
const style0$a = {
|
|
125
|
-
dragContainer,
|
|
126
|
-
dragButton,
|
|
127
|
-
leftArrow,
|
|
128
|
-
rightArrow,
|
|
129
|
-
visible: visible$1,
|
|
130
|
-
arrow,
|
|
131
|
-
grid
|
|
132
|
-
};
|
|
133
|
-
const cssModules$b = {
|
|
34
|
+
const cssModules$a = {
|
|
134
35
|
"$style": style0$a
|
|
135
36
|
};
|
|
136
|
-
const
|
|
137
|
-
const _hoisted_1$
|
|
138
|
-
const _sfc_main$
|
|
37
|
+
const N8nPulse = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__cssModules", cssModules$a]]);
|
|
38
|
+
const _hoisted_1$5 = ["data-node-name", "data-node-placement", "onClick"];
|
|
39
|
+
const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
139
40
|
__name: "NDVFloatingNodes",
|
|
140
41
|
props: {
|
|
141
42
|
rootNode: {}
|
|
@@ -145,8 +46,14 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
145
46
|
const props = __props;
|
|
146
47
|
const workflowsStore = useWorkflowsStore();
|
|
147
48
|
const nodeTypesStore = useNodeTypesStore();
|
|
148
|
-
const
|
|
49
|
+
const posthogStore = usePostHog();
|
|
149
50
|
const emit = __emit;
|
|
51
|
+
const isNDVV2 = computed(
|
|
52
|
+
() => posthogStore.isVariantEnabled(
|
|
53
|
+
NDV_UI_OVERHAUL_EXPERIMENT.name,
|
|
54
|
+
NDV_UI_OVERHAUL_EXPERIMENT.variant
|
|
55
|
+
)
|
|
56
|
+
);
|
|
150
57
|
function moveNodeDirection(direction) {
|
|
151
58
|
const matchedDirectionNode = connectedNodes.value[direction][0];
|
|
152
59
|
if (matchedDirectionNode) {
|
|
@@ -180,6 +87,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
180
87
|
}).filter((n) => n !== null);
|
|
181
88
|
}
|
|
182
89
|
const connectedNodes = computed(() => {
|
|
90
|
+
const workflow = workflowsStore.getCurrentWorkflow();
|
|
183
91
|
const rootName = props.rootNode.name;
|
|
184
92
|
return {
|
|
185
93
|
[
|
|
@@ -234,7 +142,8 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
234
142
|
return (_ctx, _cache) => {
|
|
235
143
|
const _component_n8n_tooltip = N8nTooltip;
|
|
236
144
|
return openBlock(), createElementBlock("aside", {
|
|
237
|
-
class: normalizeClass(_ctx.$style.floatingNodes)
|
|
145
|
+
class: normalizeClass([_ctx.$style.floatingNodes, { [_ctx.$style.v2]: isNDVV2.value }]),
|
|
146
|
+
"data-test-id": "floating-nodes"
|
|
238
147
|
}, [
|
|
239
148
|
(openBlock(), createElementBlock(Fragment, null, renderList(connectionGroups, (connectionGroup) => {
|
|
240
149
|
return createBaseVNode("ul", {
|
|
@@ -247,7 +156,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
247
156
|
key: node2.name,
|
|
248
157
|
placement: tooltipPositionMapper[connectionGroup],
|
|
249
158
|
teleported: false,
|
|
250
|
-
offset: 60
|
|
159
|
+
offset: isNDVV2.value ? 16 : 60
|
|
251
160
|
}, {
|
|
252
161
|
content: withCtx(() => [
|
|
253
162
|
createTextVNode(toDisplayString(node2.name), 1)
|
|
@@ -260,17 +169,17 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
260
169
|
"data-node-placement": connectionGroup,
|
|
261
170
|
onClick: ($event) => emit("switchSelectedNode", node2.name)
|
|
262
171
|
}, [
|
|
263
|
-
createVNode(_sfc_main$
|
|
172
|
+
createVNode(_sfc_main$c, {
|
|
264
173
|
"node-type": nodeType,
|
|
265
174
|
"node-name": node2.name,
|
|
266
175
|
"tooltip-position": tooltipPositionMapper[connectionGroup],
|
|
267
|
-
size: 35,
|
|
176
|
+
size: isNDVV2.value ? 24 : 35,
|
|
268
177
|
circle: ""
|
|
269
|
-
}, null, 8, ["node-type", "node-name", "tooltip-position"])
|
|
270
|
-
], 10, _hoisted_1$
|
|
178
|
+
}, null, 8, ["node-type", "node-name", "tooltip-position", "size"])
|
|
179
|
+
], 10, _hoisted_1$5)
|
|
271
180
|
]),
|
|
272
181
|
_: 2
|
|
273
|
-
}, 1032, ["placement"])) : createCommentVNode("", true)
|
|
182
|
+
}, 1032, ["placement", "offset"])) : createCommentVNode("", true)
|
|
274
183
|
], 64);
|
|
275
184
|
}), 256))
|
|
276
185
|
], 2);
|
|
@@ -279,13 +188,14 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
279
188
|
};
|
|
280
189
|
}
|
|
281
190
|
});
|
|
282
|
-
const floatingNodes = "
|
|
283
|
-
const nodesList = "
|
|
284
|
-
const inputSub = "
|
|
285
|
-
const outputSub = "
|
|
286
|
-
const outputMain = "
|
|
287
|
-
const inputMain = "
|
|
288
|
-
const connectedNode = "
|
|
191
|
+
const floatingNodes = "_floatingNodes_1o49e_123";
|
|
192
|
+
const nodesList = "_nodesList_1o49e_137";
|
|
193
|
+
const inputSub = "_inputSub_1o49e_151";
|
|
194
|
+
const outputSub = "_outputSub_1o49e_151";
|
|
195
|
+
const outputMain = "_outputMain_1o49e_162";
|
|
196
|
+
const inputMain = "_inputMain_1o49e_162";
|
|
197
|
+
const connectedNode = "_connectedNode_1o49e_185";
|
|
198
|
+
const v2 = "_v2_1o49e_233";
|
|
289
199
|
const style0$9 = {
|
|
290
200
|
floatingNodes,
|
|
291
201
|
nodesList,
|
|
@@ -293,362 +203,49 @@ const style0$9 = {
|
|
|
293
203
|
outputSub,
|
|
294
204
|
outputMain,
|
|
295
205
|
inputMain,
|
|
296
|
-
connectedNode
|
|
206
|
+
connectedNode,
|
|
207
|
+
v2
|
|
297
208
|
};
|
|
298
|
-
const cssModules$
|
|
209
|
+
const cssModules$9 = {
|
|
299
210
|
"$style": style0$9
|
|
300
211
|
};
|
|
301
|
-
const
|
|
302
|
-
const
|
|
303
|
-
|
|
304
|
-
const MIN_PANEL_WIDTH = 310;
|
|
305
|
-
const PANEL_WIDTH = 350;
|
|
306
|
-
const PANEL_WIDTH_LARGE = 420;
|
|
307
|
-
const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
308
|
-
__name: "NDVDraggablePanels",
|
|
212
|
+
const __unplugin_components_0 = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__cssModules", cssModules$9]]);
|
|
213
|
+
const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
214
|
+
__name: "NDVEmptyState",
|
|
309
215
|
props: {
|
|
310
|
-
|
|
311
|
-
hideInputAndOutput: { type: Boolean },
|
|
312
|
-
nodeType: {}
|
|
216
|
+
title: {}
|
|
313
217
|
},
|
|
314
|
-
|
|
315
|
-
setup(__props, { emit: __emit }) {
|
|
316
|
-
const MIN_WINDOW_WIDTH = 2 * (SIDE_MARGIN + SIDE_PANELS_MARGIN) + MIN_PANEL_WIDTH;
|
|
317
|
-
const initialMainPanelWidth = {
|
|
318
|
-
regular: MAIN_NODE_PANEL_WIDTH,
|
|
319
|
-
dragless: MAIN_NODE_PANEL_WIDTH,
|
|
320
|
-
unknown: MAIN_NODE_PANEL_WIDTH,
|
|
321
|
-
inputless: MAIN_NODE_PANEL_WIDTH,
|
|
322
|
-
wide: MAIN_NODE_PANEL_WIDTH * 2
|
|
323
|
-
};
|
|
324
|
-
const throttledOnResize = useThrottleFn(onResize, 100);
|
|
325
|
-
const ndvStore = useNDVStore();
|
|
326
|
-
const uiStore = useUIStore();
|
|
327
|
-
const props = __props;
|
|
328
|
-
const isDragging = ref(false);
|
|
329
|
-
const initialized = ref(false);
|
|
330
|
-
const containerWidth = ref(uiStore.appGridDimensions.width);
|
|
331
|
-
const emit = __emit;
|
|
332
|
-
const slots = useSlots();
|
|
333
|
-
onMounted(() => {
|
|
334
|
-
if (mainPanelDimensions.value.relativeLeft === 1 && mainPanelDimensions.value.relativeRight === 1) {
|
|
335
|
-
setMainPanelWidth();
|
|
336
|
-
setPositions(getInitialLeftPosition(mainPanelDimensions.value.relativeWidth));
|
|
337
|
-
restorePositionData();
|
|
338
|
-
}
|
|
339
|
-
emit("init", { position: mainPanelDimensions.value.relativeLeft });
|
|
340
|
-
setTimeout(() => {
|
|
341
|
-
initialized.value = true;
|
|
342
|
-
}, 0);
|
|
343
|
-
ndvEventBus.on("setPositionByName", setPositionByName);
|
|
344
|
-
});
|
|
345
|
-
onBeforeUnmount(() => {
|
|
346
|
-
ndvEventBus.off("setPositionByName", setPositionByName);
|
|
347
|
-
});
|
|
348
|
-
watch(
|
|
349
|
-
() => uiStore.appGridDimensions,
|
|
350
|
-
async (dimensions) => {
|
|
351
|
-
const ndv = document.getElementById("ndv");
|
|
352
|
-
if (ndv) {
|
|
353
|
-
await nextTick();
|
|
354
|
-
const { width: ndvWidth } = ndv.getBoundingClientRect();
|
|
355
|
-
containerWidth.value = ndvWidth;
|
|
356
|
-
} else {
|
|
357
|
-
containerWidth.value = dimensions.width;
|
|
358
|
-
}
|
|
359
|
-
const minRelativeWidth = pxToRelativeWidth(MIN_PANEL_WIDTH);
|
|
360
|
-
const isBelowMinWidthMainPanel = mainPanelDimensions.value.relativeWidth < minRelativeWidth;
|
|
361
|
-
if (isBelowMinWidthMainPanel) {
|
|
362
|
-
setMainPanelWidth(minRelativeWidth);
|
|
363
|
-
}
|
|
364
|
-
const isBelowMinLeft = minimumLeftPosition.value > mainPanelDimensions.value.relativeLeft;
|
|
365
|
-
const isMaxRight = maximumRightPosition.value > mainPanelDimensions.value.relativeRight;
|
|
366
|
-
if (dimensions.width > MIN_WINDOW_WIDTH && isBelowMinLeft && isMaxRight) {
|
|
367
|
-
setMainPanelWidth(minRelativeWidth);
|
|
368
|
-
setPositions(getInitialLeftPosition(mainPanelDimensions.value.relativeWidth));
|
|
369
|
-
}
|
|
370
|
-
setPositions(mainPanelDimensions.value.relativeLeft);
|
|
371
|
-
}
|
|
372
|
-
);
|
|
373
|
-
const currentNodePaneType = computed(() => {
|
|
374
|
-
if (!hasInputSlot.value) return "inputless";
|
|
375
|
-
if (!props.isDraggable) return "dragless";
|
|
376
|
-
if (props.nodeType === null) return "unknown";
|
|
377
|
-
return props.nodeType.parameterPane ?? "regular";
|
|
378
|
-
});
|
|
379
|
-
const mainPanelDimensions = computed(() => {
|
|
380
|
-
return ndvStore.mainPanelDimensions[currentNodePaneType.value];
|
|
381
|
-
});
|
|
382
|
-
const calculatedPositions = computed(
|
|
383
|
-
() => {
|
|
384
|
-
const hasInput = slots.input !== void 0;
|
|
385
|
-
const outputPanelRelativeLeft = mainPanelDimensions.value.relativeLeft + mainPanelDimensions.value.relativeWidth;
|
|
386
|
-
const inputPanelRelativeRight = hasInput ? 1 - outputPanelRelativeLeft + mainPanelDimensions.value.relativeWidth : 1 - pxToRelativeWidth(SIDE_MARGIN);
|
|
387
|
-
return {
|
|
388
|
-
inputPanelRelativeRight,
|
|
389
|
-
outputPanelRelativeLeft
|
|
390
|
-
};
|
|
391
|
-
}
|
|
392
|
-
);
|
|
393
|
-
const outputPanelRelativeTranslate = computed(() => {
|
|
394
|
-
const panelMinLeft = 1 - pxToRelativeWidth(MIN_PANEL_WIDTH + SIDE_MARGIN);
|
|
395
|
-
const currentRelativeLeftDelta = calculatedPositions.value.outputPanelRelativeLeft - panelMinLeft;
|
|
396
|
-
return currentRelativeLeftDelta > 0 ? currentRelativeLeftDelta : 0;
|
|
397
|
-
});
|
|
398
|
-
const supportedResizeDirections = computed(() => {
|
|
399
|
-
const supportedDirections = ["right"];
|
|
400
|
-
if (props.isDraggable) supportedDirections.push("left");
|
|
401
|
-
return supportedDirections;
|
|
402
|
-
});
|
|
403
|
-
const hasInputSlot = computed(() => {
|
|
404
|
-
return slots.input !== void 0;
|
|
405
|
-
});
|
|
406
|
-
const inputPanelMargin = computed(() => pxToRelativeWidth(SIDE_PANELS_MARGIN));
|
|
407
|
-
const minimumLeftPosition = computed(() => {
|
|
408
|
-
if (containerWidth.value < MIN_WINDOW_WIDTH) return pxToRelativeWidth(1);
|
|
409
|
-
if (!hasInputSlot.value) return pxToRelativeWidth(SIDE_MARGIN);
|
|
410
|
-
return pxToRelativeWidth(SIDE_MARGIN + 20) + inputPanelMargin.value;
|
|
411
|
-
});
|
|
412
|
-
const maximumRightPosition = computed(() => {
|
|
413
|
-
if (containerWidth.value < MIN_WINDOW_WIDTH) return pxToRelativeWidth(1);
|
|
414
|
-
return pxToRelativeWidth(SIDE_MARGIN + 20) + inputPanelMargin.value;
|
|
415
|
-
});
|
|
416
|
-
const canMoveLeft = computed(() => {
|
|
417
|
-
return mainPanelDimensions.value.relativeLeft > minimumLeftPosition.value;
|
|
418
|
-
});
|
|
419
|
-
const canMoveRight = computed(() => {
|
|
420
|
-
return mainPanelDimensions.value.relativeRight > maximumRightPosition.value;
|
|
421
|
-
});
|
|
422
|
-
const mainPanelStyles = computed(() => {
|
|
423
|
-
return {
|
|
424
|
-
left: `${relativeWidthToPx(mainPanelDimensions.value.relativeLeft)}px`,
|
|
425
|
-
right: `${relativeWidthToPx(mainPanelDimensions.value.relativeRight)}px`
|
|
426
|
-
};
|
|
427
|
-
});
|
|
428
|
-
const inputPanelStyles = computed(() => {
|
|
429
|
-
return {
|
|
430
|
-
right: `${relativeWidthToPx(calculatedPositions.value.inputPanelRelativeRight)}px`
|
|
431
|
-
};
|
|
432
|
-
});
|
|
433
|
-
const outputPanelStyles = computed(() => {
|
|
434
|
-
return {
|
|
435
|
-
left: `${relativeWidthToPx(calculatedPositions.value.outputPanelRelativeLeft)}px`,
|
|
436
|
-
transform: `translateX(-${relativeWidthToPx(outputPanelRelativeTranslate.value)}px)`
|
|
437
|
-
};
|
|
438
|
-
});
|
|
439
|
-
const hasDoubleWidth = computed(() => {
|
|
440
|
-
return props.nodeType?.parameterPane === "wide";
|
|
441
|
-
});
|
|
442
|
-
const fixedPanelWidth = computed(() => {
|
|
443
|
-
const multiplier = hasDoubleWidth.value ? 2 : 1;
|
|
444
|
-
if (containerWidth.value > 1700) {
|
|
445
|
-
return PANEL_WIDTH_LARGE * multiplier;
|
|
446
|
-
}
|
|
447
|
-
return PANEL_WIDTH * multiplier;
|
|
448
|
-
});
|
|
449
|
-
const onSwitchSelectedNode = (node2) => emit("switchSelectedNode", node2);
|
|
450
|
-
function getInitialLeftPosition(width) {
|
|
451
|
-
if (currentNodePaneType.value === "dragless")
|
|
452
|
-
return pxToRelativeWidth(SIDE_MARGIN + 1 + fixedPanelWidth.value);
|
|
453
|
-
return hasInputSlot.value ? 0.5 - width / 2 : minimumLeftPosition.value;
|
|
454
|
-
}
|
|
455
|
-
function setMainPanelWidth(relativeWidth) {
|
|
456
|
-
const mainPanelRelativeWidth = relativeWidth || pxToRelativeWidth(initialMainPanelWidth[currentNodePaneType.value]);
|
|
457
|
-
ndvStore.setMainPanelDimensions({
|
|
458
|
-
panelType: currentNodePaneType.value,
|
|
459
|
-
dimensions: {
|
|
460
|
-
relativeWidth: mainPanelRelativeWidth
|
|
461
|
-
}
|
|
462
|
-
});
|
|
463
|
-
}
|
|
464
|
-
function setPositions(relativeLeft) {
|
|
465
|
-
const mainPanelRelativeLeft = relativeLeft || 1 - calculatedPositions.value.inputPanelRelativeRight;
|
|
466
|
-
const mainPanelRelativeRight = 1 - mainPanelRelativeLeft - mainPanelDimensions.value.relativeWidth;
|
|
467
|
-
const isMaxRight = maximumRightPosition.value > mainPanelRelativeRight;
|
|
468
|
-
const isMinLeft = minimumLeftPosition.value > mainPanelRelativeLeft;
|
|
469
|
-
const isInputless = currentNodePaneType.value === "inputless";
|
|
470
|
-
if (isMinLeft) {
|
|
471
|
-
ndvStore.setMainPanelDimensions({
|
|
472
|
-
panelType: currentNodePaneType.value,
|
|
473
|
-
dimensions: {
|
|
474
|
-
relativeLeft: minimumLeftPosition.value,
|
|
475
|
-
relativeRight: 1 - mainPanelDimensions.value.relativeWidth - minimumLeftPosition.value
|
|
476
|
-
}
|
|
477
|
-
});
|
|
478
|
-
return;
|
|
479
|
-
}
|
|
480
|
-
if (isMaxRight) {
|
|
481
|
-
ndvStore.setMainPanelDimensions({
|
|
482
|
-
panelType: currentNodePaneType.value,
|
|
483
|
-
dimensions: {
|
|
484
|
-
relativeLeft: 1 - mainPanelDimensions.value.relativeWidth - maximumRightPosition.value,
|
|
485
|
-
relativeRight: maximumRightPosition.value
|
|
486
|
-
}
|
|
487
|
-
});
|
|
488
|
-
return;
|
|
489
|
-
}
|
|
490
|
-
ndvStore.setMainPanelDimensions({
|
|
491
|
-
panelType: currentNodePaneType.value,
|
|
492
|
-
dimensions: {
|
|
493
|
-
relativeLeft: isInputless ? minimumLeftPosition.value : mainPanelRelativeLeft,
|
|
494
|
-
relativeRight: mainPanelRelativeRight
|
|
495
|
-
}
|
|
496
|
-
});
|
|
497
|
-
}
|
|
498
|
-
function setPositionByName(position) {
|
|
499
|
-
const positionByName = {
|
|
500
|
-
minLeft: minimumLeftPosition.value,
|
|
501
|
-
maxRight: maximumRightPosition.value,
|
|
502
|
-
initial: getInitialLeftPosition(mainPanelDimensions.value.relativeWidth)
|
|
503
|
-
};
|
|
504
|
-
setPositions(positionByName[position]);
|
|
505
|
-
}
|
|
506
|
-
function pxToRelativeWidth(px) {
|
|
507
|
-
return px / containerWidth.value;
|
|
508
|
-
}
|
|
509
|
-
function relativeWidthToPx(relativeWidth) {
|
|
510
|
-
return relativeWidth * containerWidth.value;
|
|
511
|
-
}
|
|
512
|
-
function onResizeEnd() {
|
|
513
|
-
storePositionData();
|
|
514
|
-
}
|
|
515
|
-
function onResizeThrottle(data) {
|
|
516
|
-
if (initialized.value) {
|
|
517
|
-
void throttledOnResize(data);
|
|
518
|
-
}
|
|
519
|
-
}
|
|
520
|
-
function onResize({ direction, x, width }) {
|
|
521
|
-
const relativeDistance = pxToRelativeWidth(x);
|
|
522
|
-
const relativeWidth = pxToRelativeWidth(width);
|
|
523
|
-
if (direction === "left" && relativeDistance <= minimumLeftPosition.value) return;
|
|
524
|
-
if (direction === "right" && 1 - relativeDistance <= maximumRightPosition.value) return;
|
|
525
|
-
if (width <= MIN_PANEL_WIDTH) return;
|
|
526
|
-
setMainPanelWidth(relativeWidth);
|
|
527
|
-
setPositions(direction === "left" ? relativeDistance : mainPanelDimensions.value.relativeLeft);
|
|
528
|
-
}
|
|
529
|
-
function restorePositionData() {
|
|
530
|
-
const storedPanelWidthData = useStorage(
|
|
531
|
-
`${LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH}_${currentNodePaneType.value}`
|
|
532
|
-
).value;
|
|
533
|
-
if (storedPanelWidthData) {
|
|
534
|
-
const parsedWidth = parseFloat(storedPanelWidthData);
|
|
535
|
-
setMainPanelWidth(parsedWidth);
|
|
536
|
-
const initialPosition = getInitialLeftPosition(parsedWidth);
|
|
537
|
-
setPositions(initialPosition);
|
|
538
|
-
return true;
|
|
539
|
-
}
|
|
540
|
-
return false;
|
|
541
|
-
}
|
|
542
|
-
function storePositionData() {
|
|
543
|
-
useStorage(`${LOCAL_STORAGE_MAIN_PANEL_RELATIVE_WIDTH}_${currentNodePaneType.value}`).value = mainPanelDimensions.value.relativeWidth.toString();
|
|
544
|
-
}
|
|
545
|
-
function onDragStart() {
|
|
546
|
-
isDragging.value = true;
|
|
547
|
-
emit("dragstart", { position: mainPanelDimensions.value.relativeLeft });
|
|
548
|
-
}
|
|
549
|
-
function onDrag(position) {
|
|
550
|
-
const relativeLeft = pxToRelativeWidth(position[0]) - mainPanelDimensions.value.relativeWidth / 2;
|
|
551
|
-
setPositions(relativeLeft);
|
|
552
|
-
}
|
|
553
|
-
function onDragEnd() {
|
|
554
|
-
setTimeout(() => {
|
|
555
|
-
isDragging.value = false;
|
|
556
|
-
emit("dragend", {
|
|
557
|
-
windowWidth: containerWidth.value,
|
|
558
|
-
position: mainPanelDimensions.value.relativeLeft
|
|
559
|
-
});
|
|
560
|
-
}, 0);
|
|
561
|
-
storePositionData();
|
|
562
|
-
}
|
|
218
|
+
setup(__props) {
|
|
563
219
|
return (_ctx, _cache) => {
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
},
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
class: normalizeClass(_ctx.$style.inputPanel),
|
|
574
|
-
style: normalizeStyle(inputPanelStyles.value)
|
|
575
|
-
}, [
|
|
576
|
-
renderSlot(_ctx.$slots, "input")
|
|
577
|
-
], 6)) : createCommentVNode("", true),
|
|
578
|
-
!_ctx.hideInputAndOutput ? (openBlock(), createElementBlock("div", {
|
|
579
|
-
key: 2,
|
|
580
|
-
class: normalizeClass(_ctx.$style.outputPanel),
|
|
581
|
-
style: normalizeStyle(outputPanelStyles.value)
|
|
582
|
-
}, [
|
|
583
|
-
renderSlot(_ctx.$slots, "output")
|
|
584
|
-
], 6)) : createCommentVNode("", true),
|
|
585
|
-
createBaseVNode("div", {
|
|
586
|
-
class: normalizeClass(_ctx.$style.mainPanel),
|
|
587
|
-
style: normalizeStyle(mainPanelStyles.value)
|
|
220
|
+
return openBlock(), createElementBlock("article", {
|
|
221
|
+
class: normalizeClass(_ctx.$style.empty)
|
|
222
|
+
}, [
|
|
223
|
+
renderSlot(_ctx.$slots, "icon"),
|
|
224
|
+
createBaseVNode("h1", {
|
|
225
|
+
class: normalizeClass(_ctx.$style.title)
|
|
226
|
+
}, toDisplayString(_ctx.title), 3),
|
|
227
|
+
createBaseVNode("p", {
|
|
228
|
+
class: normalizeClass(_ctx.$style.description)
|
|
588
229
|
}, [
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
"min-width": MIN_PANEL_WIDTH,
|
|
593
|
-
"grid-size": 20,
|
|
594
|
-
"supported-directions": supportedResizeDirections.value,
|
|
595
|
-
outset: "",
|
|
596
|
-
onResize: onResizeThrottle,
|
|
597
|
-
onResizeend: onResizeEnd
|
|
598
|
-
}, {
|
|
599
|
-
default: withCtx(() => [
|
|
600
|
-
createBaseVNode("div", {
|
|
601
|
-
class: normalizeClass(_ctx.$style.dragButtonContainer)
|
|
602
|
-
}, [
|
|
603
|
-
!_ctx.hideInputAndOutput && _ctx.isDraggable ? (openBlock(), createBlock(PanelDragButton, {
|
|
604
|
-
key: 0,
|
|
605
|
-
class: normalizeClass({ [_ctx.$style.draggable]: true, [_ctx.$style.visible]: isDragging.value }),
|
|
606
|
-
"can-move-left": canMoveLeft.value,
|
|
607
|
-
"can-move-right": canMoveRight.value,
|
|
608
|
-
onDragstart: onDragStart,
|
|
609
|
-
onDrag,
|
|
610
|
-
onDragend: onDragEnd
|
|
611
|
-
}, null, 8, ["class", "can-move-left", "can-move-right"])) : createCommentVNode("", true)
|
|
612
|
-
], 2),
|
|
613
|
-
createBaseVNode("div", {
|
|
614
|
-
class: normalizeClass({ [_ctx.$style.mainPanelInner]: true, [_ctx.$style.dragging]: isDragging.value })
|
|
615
|
-
}, [
|
|
616
|
-
renderSlot(_ctx.$slots, "main")
|
|
617
|
-
], 2)
|
|
618
|
-
]),
|
|
619
|
-
_: 3
|
|
620
|
-
}, 8, ["is-resizing-enabled", "width", "supported-directions"])
|
|
621
|
-
], 6)
|
|
622
|
-
]);
|
|
230
|
+
renderSlot(_ctx.$slots, "description")
|
|
231
|
+
], 2)
|
|
232
|
+
], 2);
|
|
623
233
|
};
|
|
624
234
|
}
|
|
625
235
|
});
|
|
626
|
-
const
|
|
627
|
-
const
|
|
628
|
-
const
|
|
629
|
-
const mainPanel = "_mainPanel_181lg_148";
|
|
630
|
-
const draggable = "_draggable_181lg_152";
|
|
631
|
-
const mainPanelInner = "_mainPanelInner_181lg_156";
|
|
632
|
-
const dragging = "_dragging_181lg_163";
|
|
633
|
-
const dragButtonContainer = "_dragButtonContainer_181lg_176";
|
|
634
|
-
const visible = "_visible_181lg_192";
|
|
236
|
+
const empty$1 = "_empty_1x72k_2";
|
|
237
|
+
const title$5 = "_title_1x72k_13";
|
|
238
|
+
const description = "_description_1x72k_20";
|
|
635
239
|
const style0$8 = {
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
mainPanel,
|
|
640
|
-
draggable,
|
|
641
|
-
mainPanelInner,
|
|
642
|
-
dragging,
|
|
643
|
-
"double-width": "_double-width_181lg_172",
|
|
644
|
-
dragButtonContainer,
|
|
645
|
-
visible
|
|
240
|
+
empty: empty$1,
|
|
241
|
+
title: title$5,
|
|
242
|
+
description
|
|
646
243
|
};
|
|
647
|
-
const cssModules$
|
|
244
|
+
const cssModules$8 = {
|
|
648
245
|
"$style": style0$8
|
|
649
246
|
};
|
|
650
|
-
const
|
|
651
|
-
const _sfc_main$
|
|
247
|
+
const NDVEmptyState = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__cssModules", cssModules$8]]);
|
|
248
|
+
const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
652
249
|
__name: "RunInfo",
|
|
653
250
|
props: {
|
|
654
251
|
taskData: {},
|
|
@@ -702,7 +299,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
702
299
|
createVNode(unref(InfoTip), {
|
|
703
300
|
type: "note",
|
|
704
301
|
theme: theme.value,
|
|
705
|
-
"data-test-id": `node-run-status-${theme.value}
|
|
302
|
+
"data-test-id": `node-run-status-${theme.value}`,
|
|
303
|
+
size: "large"
|
|
706
304
|
}, null, 8, ["theme", "data-test-id"]),
|
|
707
305
|
createVNode(unref(InfoTip), {
|
|
708
306
|
type: "tooltip",
|
|
@@ -755,10 +353,10 @@ const tooltipRow = "_tooltipRow_14r7d_123";
|
|
|
755
353
|
const style0$7 = {
|
|
756
354
|
tooltipRow
|
|
757
355
|
};
|
|
758
|
-
const cssModules$
|
|
356
|
+
const cssModules$7 = {
|
|
759
357
|
"$style": style0$7
|
|
760
358
|
};
|
|
761
|
-
const RunInfo = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
359
|
+
const RunInfo = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__cssModules", cssModules$7]]);
|
|
762
360
|
function createNode(parent, nodeName, currentDepth, runIndex, r, children = []) {
|
|
763
361
|
return {
|
|
764
362
|
parent,
|
|
@@ -776,24 +374,22 @@ function getTreeNodeData(nodeName, workflow, aiData, runIndex) {
|
|
|
776
374
|
}
|
|
777
375
|
function getTreeNodeDataRec(parent, nodeName, currentDepth, workflow, aiData, runIndex) {
|
|
778
376
|
const connections = workflow.connectionsByDestinationNode[nodeName];
|
|
779
|
-
const resultData = aiData?.filter(
|
|
780
|
-
(data) => data.node === nodeName && (runIndex === void 0 || runIndex === data.runIndex)
|
|
781
|
-
) ?? [];
|
|
377
|
+
const resultData = aiData?.filter((data) => data.node === nodeName && runIndex === data.runIndex) ?? [];
|
|
782
378
|
if (!connections) {
|
|
783
379
|
return resultData.map((d) => createNode(parent, nodeName, currentDepth, d.runIndex, d));
|
|
784
380
|
}
|
|
785
|
-
const filteredAiData =
|
|
381
|
+
const filteredAiData = aiData?.filter(({ data }) => {
|
|
786
382
|
if (!data?.source || data.source.every((source) => source === null)) {
|
|
787
383
|
return true;
|
|
788
384
|
}
|
|
789
385
|
return data.source.some(
|
|
790
|
-
(source) => source?.previousNode === nodeName &&
|
|
386
|
+
(source) => source?.previousNode === nodeName && source.previousNodeRun === runIndex
|
|
791
387
|
);
|
|
792
|
-
})
|
|
388
|
+
});
|
|
793
389
|
const connectedSubNodes = workflow.getParentNodes(nodeName, "ALL_NON_MAIN", 1);
|
|
794
|
-
const treeNode2 = createNode(parent, nodeName, currentDepth, runIndex
|
|
390
|
+
const treeNode2 = createNode(parent, nodeName, currentDepth, runIndex);
|
|
795
391
|
const children = (filteredAiData ?? []).flatMap(
|
|
796
|
-
(data) => connectedSubNodes.includes(data.node)
|
|
392
|
+
(data) => connectedSubNodes.includes(data.node) ? getTreeNodeDataRec(treeNode2, data.node, currentDepth + 1, workflow, aiData, data.runIndex) : []
|
|
797
393
|
);
|
|
798
394
|
treeNode2.children = children;
|
|
799
395
|
if (resultData.length) {
|
|
@@ -871,7 +467,7 @@ function getConsumedTokens(outputRun) {
|
|
|
871
467
|
}
|
|
872
468
|
var capitalizeExports = requireCapitalize();
|
|
873
469
|
const capitalize = /* @__PURE__ */ getDefaultExportFromCjs(capitalizeExports);
|
|
874
|
-
const _sfc_main$
|
|
470
|
+
const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
875
471
|
__name: "AiRunContentBlock",
|
|
876
472
|
props: {
|
|
877
473
|
runData: {},
|
|
@@ -907,7 +503,8 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
907
503
|
renderType.value = value;
|
|
908
504
|
}
|
|
909
505
|
return (_ctx, _cache) => {
|
|
910
|
-
const
|
|
506
|
+
const _component_N8nIcon = N8nIcon;
|
|
507
|
+
const _component_NodeErrorView = _sfc_main$d;
|
|
911
508
|
return openBlock(), createElementBlock("div", {
|
|
912
509
|
class: normalizeClass(_ctx.$style.block)
|
|
913
510
|
}, [
|
|
@@ -918,9 +515,9 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
918
515
|
createBaseVNode("button", {
|
|
919
516
|
class: normalizeClass(_ctx.$style.blockToggle)
|
|
920
517
|
}, [
|
|
921
|
-
createVNode(
|
|
922
|
-
icon: isExpanded.value ? "
|
|
923
|
-
size: "
|
|
518
|
+
createVNode(_component_N8nIcon, {
|
|
519
|
+
icon: isExpanded.value ? "chevron-down" : "chevron-right",
|
|
520
|
+
size: "large"
|
|
924
521
|
}, null, 8, ["icon"])
|
|
925
522
|
], 2),
|
|
926
523
|
createBaseVNode("p", {
|
|
@@ -979,14 +576,14 @@ const style0$6 = {
|
|
|
979
576
|
blockToggle,
|
|
980
577
|
error
|
|
981
578
|
};
|
|
982
|
-
const cssModules$
|
|
579
|
+
const cssModules$6 = {
|
|
983
580
|
"$style": style0$6
|
|
984
581
|
};
|
|
985
|
-
const AiRunContentBlock = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
986
|
-
const _hoisted_1$
|
|
582
|
+
const AiRunContentBlock = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__cssModules", cssModules$6]]);
|
|
583
|
+
const _hoisted_1$4 = { key: 0 };
|
|
987
584
|
const _hoisted_2$2 = { key: 1 };
|
|
988
585
|
const _hoisted_3$2 = { key: 2 };
|
|
989
|
-
const _sfc_main$
|
|
586
|
+
const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
990
587
|
__name: "RunDataAiContent",
|
|
991
588
|
props: {
|
|
992
589
|
inputData: {},
|
|
@@ -1037,7 +634,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
1037
634
|
createBaseVNode("header", {
|
|
1038
635
|
class: normalizeClass(_ctx.$style.header)
|
|
1039
636
|
}, [
|
|
1040
|
-
runMeta.value?.node ? (openBlock(), createBlock(_sfc_main$
|
|
637
|
+
runMeta.value?.node ? (openBlock(), createBlock(_sfc_main$c, {
|
|
1041
638
|
key: 0,
|
|
1042
639
|
class: normalizeClass(_ctx.$style.nodeIcon),
|
|
1043
640
|
"node-type": runMeta.value.node,
|
|
@@ -1052,7 +649,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
1052
649
|
createBaseVNode("ul", {
|
|
1053
650
|
class: normalizeClass(_ctx.$style.meta)
|
|
1054
651
|
}, [
|
|
1055
|
-
runMeta.value?.startTimeMs ? (openBlock(), createElementBlock("li", _hoisted_1$
|
|
652
|
+
runMeta.value?.startTimeMs ? (openBlock(), createElementBlock("li", _hoisted_1$4, toDisplayString(runMeta.value?.executionTimeMs) + "ms", 1)) : createCommentVNode("", true),
|
|
1056
653
|
runMeta.value?.startTimeMs ? (openBlock(), createElementBlock("li", _hoisted_2$2, [
|
|
1057
654
|
createVNode(_component_n8n_tooltip, null, {
|
|
1058
655
|
content: withCtx(() => [
|
|
@@ -1090,7 +687,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
1090
687
|
"tooltip-placement": "right"
|
|
1091
688
|
}, {
|
|
1092
689
|
default: withCtx(() => [
|
|
1093
|
-
createVNode(_sfc_main$
|
|
690
|
+
createVNode(_sfc_main$e, { "consumed-tokens": consumedTokensSum.value }, null, 8, ["consumed-tokens"])
|
|
1094
691
|
]),
|
|
1095
692
|
_: 1
|
|
1096
693
|
})
|
|
@@ -1129,14 +726,14 @@ const style0$5 = {
|
|
|
1129
726
|
meta,
|
|
1130
727
|
tokensUsage
|
|
1131
728
|
};
|
|
1132
|
-
const cssModules$
|
|
729
|
+
const cssModules$5 = {
|
|
1133
730
|
"$style": style0$5
|
|
1134
731
|
};
|
|
1135
|
-
const RunDataAiContent = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1136
|
-
const _hoisted_1$
|
|
732
|
+
const RunDataAiContent = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__cssModules", cssModules$5]]);
|
|
733
|
+
const _hoisted_1$3 = ["data-tree-depth"];
|
|
1137
734
|
const _hoisted_2$1 = ["onClick"];
|
|
1138
735
|
const _hoisted_3$1 = ["textContent"];
|
|
1139
|
-
const _sfc_main$
|
|
736
|
+
const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
1140
737
|
__name: "RunDataAi",
|
|
1141
738
|
props: {
|
|
1142
739
|
node: {},
|
|
@@ -1150,6 +747,12 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
1150
747
|
const nodeTypesStore = useNodeTypesStore();
|
|
1151
748
|
const selectedRun = ref([]);
|
|
1152
749
|
const i18n = useI18n();
|
|
750
|
+
const aiData = computed(
|
|
751
|
+
() => createAiData(props.node.name, props.workflow, workflowsStore.getWorkflowResultDataByNodeName)
|
|
752
|
+
);
|
|
753
|
+
const executionTree = computed(
|
|
754
|
+
() => getTreeNodeData(props.node.name, props.workflow, aiData.value, props.runIndex)
|
|
755
|
+
);
|
|
1153
756
|
function isTreeNodeSelected(node2) {
|
|
1154
757
|
return selectedRun.value.some((run) => run.node === node2.node && run.runIndex === node2.runIndex);
|
|
1155
758
|
}
|
|
@@ -1189,15 +792,9 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
1189
792
|
onItemClick(executionTree.value[0].children[0]);
|
|
1190
793
|
}
|
|
1191
794
|
}
|
|
1192
|
-
const aiData = computed(
|
|
1193
|
-
() => createAiData(props.node.name, props.workflow, workflowsStore.getWorkflowResultDataByNodeName)
|
|
1194
|
-
);
|
|
1195
|
-
const executionTree = computed(
|
|
1196
|
-
() => getTreeNodeData(props.node.name, props.workflow, aiData.value)
|
|
1197
|
-
);
|
|
1198
795
|
watch(() => props.runIndex, selectFirst, { immediate: true });
|
|
1199
796
|
return (_ctx, _cache) => {
|
|
1200
|
-
const
|
|
797
|
+
const _component_n8n_icon = N8nIcon;
|
|
1201
798
|
const _component_n8n_tooltip = N8nTooltip;
|
|
1202
799
|
const _component_n8n_text = N8nText;
|
|
1203
800
|
return openBlock(), createElementBlock("div", {
|
|
@@ -1216,7 +813,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
1216
813
|
"data-test-id": "lm-chat-logs-tree",
|
|
1217
814
|
onNodeClick: onItemClick
|
|
1218
815
|
}, {
|
|
1219
|
-
default: withCtx(({ node:
|
|
816
|
+
default: withCtx(({ node: currentNode, data }) => [
|
|
1220
817
|
createBaseVNode("div", {
|
|
1221
818
|
class: normalizeClass({
|
|
1222
819
|
[_ctx.$style.treeNode]: true,
|
|
@@ -1228,10 +825,10 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
1228
825
|
data.children.length ? (openBlock(), createElementBlock("button", {
|
|
1229
826
|
key: 0,
|
|
1230
827
|
class: normalizeClass(_ctx.$style.treeToggle),
|
|
1231
|
-
onClick: ($event) => toggleTreeItem(
|
|
828
|
+
onClick: ($event) => toggleTreeItem(currentNode)
|
|
1232
829
|
}, [
|
|
1233
|
-
createVNode(
|
|
1234
|
-
icon:
|
|
830
|
+
createVNode(_component_n8n_icon, {
|
|
831
|
+
icon: currentNode.expanded ? "chevron-down" : "chevron-right"
|
|
1235
832
|
}, null, 8, ["icon"])
|
|
1236
833
|
], 10, _hoisted_2$1)) : createCommentVNode("", true),
|
|
1237
834
|
createVNode(_component_n8n_tooltip, {
|
|
@@ -1239,26 +836,26 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
1239
836
|
placement: "right"
|
|
1240
837
|
}, {
|
|
1241
838
|
content: withCtx(() => [
|
|
1242
|
-
createTextVNode(toDisplayString(
|
|
839
|
+
createTextVNode(toDisplayString(currentNode.label), 1)
|
|
1243
840
|
]),
|
|
1244
841
|
default: withCtx(() => [
|
|
1245
842
|
createBaseVNode("span", {
|
|
1246
843
|
class: normalizeClass(_ctx.$style.leafLabel)
|
|
1247
844
|
}, [
|
|
1248
|
-
createVNode(_sfc_main$
|
|
845
|
+
createVNode(_sfc_main$c, {
|
|
1249
846
|
"node-type": getNodeType(data.node),
|
|
1250
847
|
size: 17,
|
|
1251
848
|
class: normalizeClass(_ctx.$style.nodeIcon)
|
|
1252
849
|
}, null, 8, ["node-type", "class"]),
|
|
1253
850
|
!_ctx.slim ? (openBlock(), createElementBlock("span", {
|
|
1254
851
|
key: 0,
|
|
1255
|
-
textContent: toDisplayString(
|
|
852
|
+
textContent: toDisplayString(currentNode.label)
|
|
1256
853
|
}, null, 8, _hoisted_3$1)) : createCommentVNode("", true)
|
|
1257
854
|
], 2)
|
|
1258
855
|
]),
|
|
1259
856
|
_: 2
|
|
1260
857
|
}, 1032, ["disabled"])
|
|
1261
|
-
], 14, _hoisted_1$
|
|
858
|
+
], 14, _hoisted_1$3)
|
|
1262
859
|
]),
|
|
1263
860
|
_: 1
|
|
1264
861
|
}, 8, ["data"])
|
|
@@ -1327,11 +924,11 @@ const style0$4 = {
|
|
|
1327
924
|
isSelected,
|
|
1328
925
|
treeNode
|
|
1329
926
|
};
|
|
1330
|
-
const cssModules$
|
|
927
|
+
const cssModules$4 = {
|
|
1331
928
|
"$style": style0$4
|
|
1332
929
|
};
|
|
1333
|
-
const RunDataAi = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1334
|
-
const _sfc_main$
|
|
930
|
+
const RunDataAi = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__cssModules", cssModules$4]]);
|
|
931
|
+
const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
1335
932
|
__name: "OutputPanel",
|
|
1336
933
|
props: {
|
|
1337
934
|
workflow: {},
|
|
@@ -1345,7 +942,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1345
942
|
isPaneActive: { type: Boolean, default: false },
|
|
1346
943
|
displayMode: {}
|
|
1347
944
|
},
|
|
1348
|
-
emits: ["linkRun", "unlinkRun", "runChange", "activatePane", "tableMounted", "itemHover", "search", "openSettings", "displayModeChange"],
|
|
945
|
+
emits: ["linkRun", "unlinkRun", "runChange", "activatePane", "tableMounted", "itemHover", "search", "openSettings", "execute", "displayModeChange"],
|
|
1349
946
|
setup(__props, { emit: __emit }) {
|
|
1350
947
|
const OUTPUT_TYPE = {
|
|
1351
948
|
REGULAR: "regular",
|
|
@@ -1356,6 +953,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1356
953
|
const ndvStore = useNDVStore();
|
|
1357
954
|
const nodeTypesStore = useNodeTypesStore();
|
|
1358
955
|
const workflowsStore = useWorkflowsStore();
|
|
956
|
+
const posthogStore = usePostHog();
|
|
1359
957
|
const telemetry = useTelemetry();
|
|
1360
958
|
const i18n = useI18n();
|
|
1361
959
|
const { activeNode } = storeToRefs(ndvStore);
|
|
@@ -1374,6 +972,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1374
972
|
{ label: i18n.baseText("ndv.output.outType.logs"), value: OUTPUT_TYPE.LOGS }
|
|
1375
973
|
]);
|
|
1376
974
|
const runDataRef = ref();
|
|
975
|
+
const collapsingColumnName = ref(null);
|
|
1377
976
|
const node2 = computed(() => {
|
|
1378
977
|
return ndvStore.activeNode ?? void 0;
|
|
1379
978
|
});
|
|
@@ -1427,7 +1026,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1427
1026
|
return null;
|
|
1428
1027
|
}
|
|
1429
1028
|
const runData2 = workflowRunData.value;
|
|
1430
|
-
if (
|
|
1029
|
+
if (!runData2?.hasOwnProperty(node2.value.name)) {
|
|
1431
1030
|
return null;
|
|
1432
1031
|
}
|
|
1433
1032
|
if (runData2[node2.value.name].length <= props.runIndex) {
|
|
@@ -1485,6 +1084,12 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1485
1084
|
return void 0;
|
|
1486
1085
|
}
|
|
1487
1086
|
});
|
|
1087
|
+
const isNDVV2 = computed(
|
|
1088
|
+
() => posthogStore.isVariantEnabled(
|
|
1089
|
+
NDV_UI_OVERHAUL_EXPERIMENT.name,
|
|
1090
|
+
NDV_UI_OVERHAUL_EXPERIMENT.variant
|
|
1091
|
+
)
|
|
1092
|
+
);
|
|
1488
1093
|
const insertTestData = () => {
|
|
1489
1094
|
if (!runDataRef.value) return;
|
|
1490
1095
|
runDataRef.value.enterEditMode({
|
|
@@ -1528,7 +1133,14 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1528
1133
|
const activatePane = () => {
|
|
1529
1134
|
emit("activatePane");
|
|
1530
1135
|
};
|
|
1136
|
+
function handleChangeCollapsingColumn(columnName) {
|
|
1137
|
+
collapsingColumnName.value = columnName;
|
|
1138
|
+
}
|
|
1531
1139
|
return (_ctx, _cache) => {
|
|
1140
|
+
const _component_N8nIcon = N8nIcon;
|
|
1141
|
+
const _component_NodeExecuteButton = _sfc_main$f;
|
|
1142
|
+
const _component_i18n_t = resolveComponent("i18n-t");
|
|
1143
|
+
const _component_NDVEmptyState = NDVEmptyState;
|
|
1532
1144
|
const _directive_n8n_html = resolveDirective("n8n-html");
|
|
1533
1145
|
return openBlock(), createBlock(RunData, {
|
|
1534
1146
|
ref_key: "runDataRef",
|
|
@@ -1553,18 +1165,21 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1553
1165
|
"callout-message": allToolsWereUnusedNotice.value,
|
|
1554
1166
|
"display-mode": _ctx.displayMode,
|
|
1555
1167
|
"disable-ai-content": true,
|
|
1168
|
+
"collapsing-table-column-name": collapsingColumnName.value,
|
|
1169
|
+
"data-test-id": "ndv-output-panel",
|
|
1556
1170
|
onActivatePane: activatePane,
|
|
1557
1171
|
onRunChange: onRunIndexChange,
|
|
1558
1172
|
onLinkRun,
|
|
1559
1173
|
onUnlinkRun,
|
|
1560
|
-
onTableMounted: _cache[
|
|
1561
|
-
onItemHover: _cache[
|
|
1562
|
-
onSearch: _cache[
|
|
1563
|
-
onDisplayModeChange: _cache[
|
|
1174
|
+
onTableMounted: _cache[2] || (_cache[2] = ($event) => emit("tableMounted", $event)),
|
|
1175
|
+
onItemHover: _cache[3] || (_cache[3] = ($event) => emit("itemHover", $event)),
|
|
1176
|
+
onSearch: _cache[4] || (_cache[4] = ($event) => emit("search", $event)),
|
|
1177
|
+
onDisplayModeChange: _cache[5] || (_cache[5] = ($event) => emit("displayModeChange", $event)),
|
|
1178
|
+
onCollapsingTableColumnChanged: handleChangeCollapsingColumn
|
|
1564
1179
|
}, createSlots({
|
|
1565
1180
|
header: withCtx(() => [
|
|
1566
1181
|
createBaseVNode("div", {
|
|
1567
|
-
class: normalizeClass(_ctx.$style.titleSection)
|
|
1182
|
+
class: normalizeClass([_ctx.$style.titleSection, { [_ctx.$style.titleSectionV2]: isNDVV2.value }])
|
|
1568
1183
|
}, [
|
|
1569
1184
|
hasAiMetadata.value ? (openBlock(), createBlock(unref(N8nRadioButtons), {
|
|
1570
1185
|
key: 0,
|
|
@@ -1574,7 +1189,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1574
1189
|
options: outputTypes.value
|
|
1575
1190
|
}, null, 8, ["modelValue", "options"])) : (openBlock(), createElementBlock("span", {
|
|
1576
1191
|
key: 1,
|
|
1577
|
-
class: normalizeClass(_ctx.$style.title)
|
|
1192
|
+
class: normalizeClass([_ctx.$style.title, { [_ctx.$style.titleV2]: isNDVV2.value }])
|
|
1578
1193
|
}, toDisplayString(unref(i18n).baseText(outputPanelEditMode.value.enabled ? "ndv.output.edit" : "ndv.output")), 3)),
|
|
1579
1194
|
hasNodeRun.value && !unref(pinnedData).hasData.value && (runsCount.value === 1 || runsCount.value > 0 && staleData.value) ? withDirectives((openBlock(), createBlock(RunInfo, {
|
|
1580
1195
|
key: 2,
|
|
@@ -1587,45 +1202,103 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1587
1202
|
], 2)
|
|
1588
1203
|
]),
|
|
1589
1204
|
"node-not-run": withCtx(() => [
|
|
1590
|
-
|
|
1205
|
+
isNDVV2.value ? (openBlock(), createBlock(_component_NDVEmptyState, {
|
|
1591
1206
|
key: 0,
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1207
|
+
title: unref(i18n).baseText(
|
|
1208
|
+
isTriggerNode.value ? "ndv.output.noOutputData.trigger.title" : "ndv.output.noOutputData.v2.title"
|
|
1209
|
+
)
|
|
1210
|
+
}, createSlots({
|
|
1211
|
+
description: withCtx(() => [
|
|
1212
|
+
createVNode(_component_i18n_t, {
|
|
1213
|
+
tag: "span",
|
|
1214
|
+
keypath: unref(isSubNodeType) ? "ndv.output.runNodeHintSubNode" : "ndv.output.noOutputData.v2.description"
|
|
1215
|
+
}, {
|
|
1216
|
+
link: withCtx(() => [
|
|
1217
|
+
createVNode(_component_NodeExecuteButton, {
|
|
1218
|
+
"hide-icon": "",
|
|
1219
|
+
transparent: "",
|
|
1220
|
+
type: "secondary",
|
|
1221
|
+
"node-name": unref(activeNode)?.name ?? "",
|
|
1222
|
+
label: unref(i18n).baseText(
|
|
1223
|
+
isTriggerNode.value ? "ndv.output.noOutputData.trigger.action" : "ndv.output.noOutputData.v2.action"
|
|
1224
|
+
),
|
|
1225
|
+
"telemetry-source": "inputs",
|
|
1226
|
+
onExecute: _cache[1] || (_cache[1] = ($event) => emit("execute"))
|
|
1227
|
+
}, null, 8, ["node-name", "label"]),
|
|
1228
|
+
_cache[7] || (_cache[7] = createBaseVNode("br", null, null, -1))
|
|
1229
|
+
]),
|
|
1230
|
+
_: 1
|
|
1231
|
+
}, 8, ["keypath"])
|
|
1596
1232
|
]),
|
|
1597
|
-
_:
|
|
1598
|
-
}
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.runNodeHint")) + " ", 1),
|
|
1608
|
-
canPinData.value ? (openBlock(), createElementBlock("span", {
|
|
1609
|
-
key: 0,
|
|
1610
|
-
onClick: insertTestData
|
|
1233
|
+
_: 2
|
|
1234
|
+
}, [
|
|
1235
|
+
isTriggerNode.value ? {
|
|
1236
|
+
name: "icon",
|
|
1237
|
+
fn: withCtx(() => [
|
|
1238
|
+
_cache[6] || (_cache[6] = createBaseVNode("svg", {
|
|
1239
|
+
width: "16",
|
|
1240
|
+
viewBox: "0 0 14 18",
|
|
1241
|
+
fill: "none",
|
|
1242
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
1611
1243
|
}, [
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
tag: "a",
|
|
1616
|
-
size: "medium",
|
|
1617
|
-
color: "primary"
|
|
1618
|
-
}, {
|
|
1619
|
-
default: withCtx(() => [
|
|
1620
|
-
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.insertTestData")), 1)
|
|
1621
|
-
]),
|
|
1622
|
-
_: 1
|
|
1244
|
+
createBaseVNode("path", {
|
|
1245
|
+
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",
|
|
1246
|
+
fill: "currentColor"
|
|
1623
1247
|
})
|
|
1624
|
-
]
|
|
1625
|
-
],
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1248
|
+
], -1))
|
|
1249
|
+
]),
|
|
1250
|
+
key: "0"
|
|
1251
|
+
} : {
|
|
1252
|
+
name: "icon",
|
|
1253
|
+
fn: withCtx(() => [
|
|
1254
|
+
createVNode(_component_N8nIcon, {
|
|
1255
|
+
icon: "arrow-right-from-line",
|
|
1256
|
+
size: "xlarge"
|
|
1257
|
+
})
|
|
1258
|
+
]),
|
|
1259
|
+
key: "1"
|
|
1260
|
+
}
|
|
1261
|
+
]), 1032, ["title"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
1262
|
+
workflowRunning.value && !isTriggerNode.value ? (openBlock(), createBlock(unref(N8nText), {
|
|
1263
|
+
key: 0,
|
|
1264
|
+
"data-test-id": "ndv-output-waiting"
|
|
1265
|
+
}, {
|
|
1266
|
+
default: withCtx(() => [
|
|
1267
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.waitingToRun")), 1)
|
|
1268
|
+
]),
|
|
1269
|
+
_: 1
|
|
1270
|
+
})) : createCommentVNode("", true),
|
|
1271
|
+
!workflowRunning.value ? (openBlock(), createBlock(unref(N8nText), {
|
|
1272
|
+
key: 1,
|
|
1273
|
+
"data-test-id": "ndv-output-run-node-hint"
|
|
1274
|
+
}, {
|
|
1275
|
+
default: withCtx(() => [
|
|
1276
|
+
unref(isSubNodeType) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
1277
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.runNodeHintSubNode")), 1)
|
|
1278
|
+
], 64)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
1279
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.runNodeHint")) + " ", 1),
|
|
1280
|
+
canPinData.value ? (openBlock(), createElementBlock("span", {
|
|
1281
|
+
key: 0,
|
|
1282
|
+
onClick: insertTestData
|
|
1283
|
+
}, [
|
|
1284
|
+
_cache[8] || (_cache[8] = createBaseVNode("br", null, null, -1)),
|
|
1285
|
+
createTextVNode(" " + toDisplayString(unref(i18n).baseText("generic.or")) + " ", 1),
|
|
1286
|
+
createVNode(unref(N8nText), {
|
|
1287
|
+
tag: "a",
|
|
1288
|
+
size: "medium",
|
|
1289
|
+
color: "primary"
|
|
1290
|
+
}, {
|
|
1291
|
+
default: withCtx(() => [
|
|
1292
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.output.insertTestData")), 1)
|
|
1293
|
+
]),
|
|
1294
|
+
_: 1
|
|
1295
|
+
})
|
|
1296
|
+
])) : createCommentVNode("", true)
|
|
1297
|
+
], 64))
|
|
1298
|
+
]),
|
|
1299
|
+
_: 1
|
|
1300
|
+
})) : createCommentVNode("", true)
|
|
1301
|
+
], 64))
|
|
1629
1302
|
]),
|
|
1630
1303
|
"node-waiting": withCtx(() => [
|
|
1631
1304
|
createVNode(unref(N8nText), {
|
|
@@ -1705,30 +1378,36 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
1705
1378
|
]),
|
|
1706
1379
|
key: "1"
|
|
1707
1380
|
} : void 0
|
|
1708
|
-
]), 1032, ["class", "node", "workflow", "run-index", "linked-runs", "can-link-runs", "too-much-data-title", "no-data-in-branch-message", "is-executing", "executing-message", "push-ref", "block-u-i", "is-production-execution-preview", "is-pane-active", "hide-pagination", "data-output-type", "callout-message", "display-mode"]);
|
|
1381
|
+
]), 1032, ["class", "node", "workflow", "run-index", "linked-runs", "can-link-runs", "too-much-data-title", "no-data-in-branch-message", "is-executing", "executing-message", "push-ref", "block-u-i", "is-production-execution-preview", "is-pane-active", "hide-pagination", "data-output-type", "callout-message", "display-mode", "collapsing-table-column-name"]);
|
|
1709
1382
|
};
|
|
1710
1383
|
}
|
|
1711
1384
|
});
|
|
1712
|
-
const runData$1 = "
|
|
1713
|
-
const outputTypeSelect = "
|
|
1714
|
-
const titleSection$1 = "
|
|
1715
|
-
const
|
|
1716
|
-
const
|
|
1717
|
-
const
|
|
1385
|
+
const runData$1 = "_runData_16mi2_128";
|
|
1386
|
+
const outputTypeSelect = "_outputTypeSelect_16mi2_132";
|
|
1387
|
+
const titleSection$1 = "_titleSection_16mi2_137";
|
|
1388
|
+
const titleSectionV2$1 = "_titleSectionV2_16mi2_145";
|
|
1389
|
+
const title$2 = "_title_16mi2_137";
|
|
1390
|
+
const titleV2$1 = "_titleV2_16mi2_157";
|
|
1391
|
+
const noOutputData$1 = "_noOutputData_16mi2_162";
|
|
1392
|
+
const recoveredOutputData$1 = "_recoveredOutputData_16mi2_172";
|
|
1393
|
+
const link = "_link_16mi2_181";
|
|
1718
1394
|
const style0$3 = {
|
|
1719
1395
|
runData: runData$1,
|
|
1720
1396
|
outputTypeSelect,
|
|
1721
1397
|
titleSection: titleSection$1,
|
|
1398
|
+
titleSectionV2: titleSectionV2$1,
|
|
1722
1399
|
title: title$2,
|
|
1400
|
+
titleV2: titleV2$1,
|
|
1723
1401
|
noOutputData: noOutputData$1,
|
|
1724
|
-
recoveredOutputData: recoveredOutputData$1
|
|
1402
|
+
recoveredOutputData: recoveredOutputData$1,
|
|
1403
|
+
link
|
|
1725
1404
|
};
|
|
1726
|
-
const cssModules$
|
|
1405
|
+
const cssModules$3 = {
|
|
1727
1406
|
"$style": style0$3
|
|
1728
1407
|
};
|
|
1729
|
-
const OutputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1730
|
-
const _hoisted_1$
|
|
1731
|
-
const _sfc_main$
|
|
1408
|
+
const OutputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__cssModules", cssModules$3]]);
|
|
1409
|
+
const _hoisted_1$2 = { key: 0 };
|
|
1410
|
+
const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
1732
1411
|
__name: "InputNodeSelect",
|
|
1733
1412
|
props: {
|
|
1734
1413
|
nodes: {},
|
|
@@ -1804,7 +1483,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
1804
1483
|
emit("update:model-value", value);
|
|
1805
1484
|
}
|
|
1806
1485
|
return (_ctx, _cache) => {
|
|
1807
|
-
const _component_n8n_option = _sfc_main$
|
|
1486
|
+
const _component_n8n_option = _sfc_main$g;
|
|
1808
1487
|
const _component_n8n_select = N8nSelect;
|
|
1809
1488
|
return openBlock(), createBlock(_component_n8n_select, {
|
|
1810
1489
|
"model-value": _ctx.modelValue,
|
|
@@ -1818,7 +1497,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
1818
1497
|
"onUpdate:modelValue": onInputNodeChange
|
|
1819
1498
|
}, {
|
|
1820
1499
|
prefix: withCtx(() => [
|
|
1821
|
-
createVNode(_sfc_main$
|
|
1500
|
+
createVNode(_sfc_main$c, {
|
|
1822
1501
|
disabled: selectedInputNode.value?.disabled,
|
|
1823
1502
|
"node-type": selectedInputNodeType.value,
|
|
1824
1503
|
size: 14,
|
|
@@ -1835,7 +1514,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
1835
1514
|
"data-test-id": "ndv-input-option"
|
|
1836
1515
|
}, {
|
|
1837
1516
|
default: withCtx(() => [
|
|
1838
|
-
createVNode(_sfc_main$
|
|
1517
|
+
createVNode(_sfc_main$c, {
|
|
1839
1518
|
disabled: node2.disabled,
|
|
1840
1519
|
"node-type": type,
|
|
1841
1520
|
size: 14,
|
|
@@ -1846,7 +1525,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
1846
1525
|
class: normalizeClass(_ctx.$style.title)
|
|
1847
1526
|
}, [
|
|
1848
1527
|
createTextVNode(toDisplayString(title2(node2.name)) + " ", 1),
|
|
1849
|
-
node2.disabled ? (openBlock(), createElementBlock("span", _hoisted_1$
|
|
1528
|
+
node2.disabled ? (openBlock(), createElementBlock("span", _hoisted_1$2, "(" + toDisplayString(unref(i18n).baseText("node.disabled")) + ")", 1)) : createCommentVNode("", true)
|
|
1850
1529
|
], 2),
|
|
1851
1530
|
createBaseVNode("span", {
|
|
1852
1531
|
class: normalizeClass(_ctx.$style.subtitle)
|
|
@@ -1875,12 +1554,12 @@ const style0$2 = {
|
|
|
1875
1554
|
disabled,
|
|
1876
1555
|
subtitle
|
|
1877
1556
|
};
|
|
1878
|
-
const cssModules$
|
|
1557
|
+
const cssModules$2 = {
|
|
1879
1558
|
"$style": style0$2
|
|
1880
1559
|
};
|
|
1881
|
-
const InputNodeSelect = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1882
|
-
const _sfc_main$
|
|
1883
|
-
const _hoisted_1$
|
|
1560
|
+
const InputNodeSelect = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__cssModules", cssModules$2]]);
|
|
1561
|
+
const _sfc_main$2 = {};
|
|
1562
|
+
const _hoisted_1$1 = {
|
|
1884
1563
|
width: "112",
|
|
1885
1564
|
height: "80",
|
|
1886
1565
|
viewBox: "0 0 112 80",
|
|
@@ -1889,12 +1568,12 @@ const _hoisted_1$2 = {
|
|
|
1889
1568
|
"xmlns:xlink": "http://www.w3.org/1999/xlink"
|
|
1890
1569
|
};
|
|
1891
1570
|
function _sfc_render(_ctx, _cache) {
|
|
1892
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
1571
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$1, _cache[0] || (_cache[0] = [
|
|
1893
1572
|
createStaticVNode('<mask id="mask0_489_46042" style="mask-type:alpha;" maskUnits="userSpaceOnUse" x="0" y="0" width="112" height="80"><rect width="112" height="80" fill="url(#paint0_linear_489_46042)"></rect></mask><g mask="url(#mask0_489_46042)"><rect x="-0.5" width="112" height="80" fill="url(#pattern0)" fill-opacity="0.6"></rect></g><defs><pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"><use xlink:href="#image0_489_46042" transform="scale(0.00357143 0.005)"></use></pattern><linearGradient id="paint0_linear_489_46042" x1="90.5" y1="40.4494" x2="112.5" y2="40.4494" gradientUnits="userSpaceOnUse"><stop></stop><stop offset="1" stop-color="white" stop-opacity="0"></stop></linearGradient><image id="image0_489_46042" width="280" height="200" xlink:href="data:image/png;base64,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"></image></defs>', 3)
|
|
1894
1573
|
]));
|
|
1895
1574
|
}
|
|
1896
|
-
const WireMeUp = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1897
|
-
const _sfc_main$
|
|
1575
|
+
const WireMeUp = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render]]);
|
|
1576
|
+
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
1898
1577
|
__name: "InputPanel",
|
|
1899
1578
|
props: {
|
|
1900
1579
|
runIndex: {},
|
|
@@ -1917,6 +1596,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
1917
1596
|
const showDraggableHintWithDelay = ref(false);
|
|
1918
1597
|
const draggableHintShown = ref(false);
|
|
1919
1598
|
const mappedNode2 = ref(null);
|
|
1599
|
+
const collapsingColumnName = ref(null);
|
|
1920
1600
|
const inputModes = [
|
|
1921
1601
|
{ value: "mapping", label: i18n.baseText("ndv.input.mapping") },
|
|
1922
1602
|
{ value: "debugging", label: i18n.baseText("ndv.input.fromAI") }
|
|
@@ -1924,6 +1604,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
1924
1604
|
const nodeTypesStore = useNodeTypesStore();
|
|
1925
1605
|
const ndvStore = useNDVStore();
|
|
1926
1606
|
const workflowsStore = useWorkflowsStore();
|
|
1607
|
+
const posthogStore = usePostHog();
|
|
1927
1608
|
const {
|
|
1928
1609
|
activeNode,
|
|
1929
1610
|
focusedMappableInput,
|
|
@@ -2025,6 +1706,12 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
2025
1706
|
const parentNode = parentNodes.value[0];
|
|
2026
1707
|
return parentNode && waitingNodeTooltip(workflowsStore.getNodeByName(parentNode.name));
|
|
2027
1708
|
});
|
|
1709
|
+
const isNDVV2 = computed(
|
|
1710
|
+
() => posthogStore.isVariantEnabled(
|
|
1711
|
+
NDV_UI_OVERHAUL_EXPERIMENT.name,
|
|
1712
|
+
NDV_UI_OVERHAUL_EXPERIMENT.variant
|
|
1713
|
+
)
|
|
1714
|
+
);
|
|
2028
1715
|
watch(
|
|
2029
1716
|
inputMode,
|
|
2030
1717
|
(mode) => {
|
|
@@ -2116,6 +1803,9 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
2116
1803
|
function activatePane() {
|
|
2117
1804
|
emit("activatePane");
|
|
2118
1805
|
}
|
|
1806
|
+
function handleChangeCollapsingColumn(columnName) {
|
|
1807
|
+
collapsingColumnName.value = columnName;
|
|
1808
|
+
}
|
|
2119
1809
|
return (_ctx, _cache) => {
|
|
2120
1810
|
const _component_i18n_t = resolveComponent("i18n-t");
|
|
2121
1811
|
const _directive_n8n_html = resolveDirective("n8n-html");
|
|
@@ -2141,6 +1831,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
2141
1831
|
"pane-type": "input",
|
|
2142
1832
|
"data-test-id": "ndv-input-panel",
|
|
2143
1833
|
"disable-ai-content": true,
|
|
1834
|
+
"collapsing-table-column-name": collapsingColumnName.value,
|
|
2144
1835
|
onActivatePane: activatePane,
|
|
2145
1836
|
onItemHover,
|
|
2146
1837
|
onLinkRun,
|
|
@@ -2148,14 +1839,15 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
2148
1839
|
onRunChange: onRunIndexChange,
|
|
2149
1840
|
onTableMounted,
|
|
2150
1841
|
onSearch,
|
|
2151
|
-
onDisplayModeChange: _cache[
|
|
1842
|
+
onDisplayModeChange: _cache[2] || (_cache[2] = ($event) => emit("displayModeChange", $event)),
|
|
1843
|
+
onCollapsingTableColumnChanged: handleChangeCollapsingColumn
|
|
2152
1844
|
}, createSlots({
|
|
2153
1845
|
header: withCtx(() => [
|
|
2154
1846
|
createBaseVNode("div", {
|
|
2155
|
-
class: normalizeClass(_ctx.$style.titleSection)
|
|
1847
|
+
class: normalizeClass([_ctx.$style.titleSection, { [_ctx.$style.titleSectionV2]: isNDVV2.value }])
|
|
2156
1848
|
}, [
|
|
2157
1849
|
createBaseVNode("span", {
|
|
2158
|
-
class: normalizeClass(_ctx.$style.title)
|
|
1850
|
+
class: normalizeClass([_ctx.$style.title, { [_ctx.$style.titleV2]: isNDVV2.value }])
|
|
2159
1851
|
}, toDisplayString(unref(i18n).baseText("ndv.input")), 3),
|
|
2160
1852
|
isActiveNodeConfig.value && !_ctx.readOnly ? (openBlock(), createBlock(unref(N8nRadioButtons), {
|
|
2161
1853
|
key: 0,
|
|
@@ -2180,35 +1872,59 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
2180
1872
|
key: 0,
|
|
2181
1873
|
class: normalizeClass(_ctx.$style.noOutputData)
|
|
2182
1874
|
}, [
|
|
2183
|
-
|
|
2184
|
-
|
|
2185
|
-
|
|
2186
|
-
|
|
2187
|
-
color: "text-dark",
|
|
2188
|
-
size: "large"
|
|
2189
|
-
}, {
|
|
2190
|
-
default: withCtx(() => [
|
|
2191
|
-
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.noOutputData.title")), 1)
|
|
2192
|
-
]),
|
|
2193
|
-
_: 1
|
|
2194
|
-
})) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
2195
|
-
createVNode(unref(N8nText), {
|
|
2196
|
-
tag: "div",
|
|
2197
|
-
bold: true,
|
|
2198
|
-
color: "text-dark",
|
|
2199
|
-
size: "large"
|
|
1875
|
+
isNDVV2.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
1876
|
+
isMappingEnabled.value || hasRootNodeRun.value ? (openBlock(), createBlock(NDVEmptyState, {
|
|
1877
|
+
key: 0,
|
|
1878
|
+
title: unref(i18n).baseText("ndv.input.noOutputData.v2.title")
|
|
2200
1879
|
}, {
|
|
2201
|
-
|
|
2202
|
-
|
|
1880
|
+
icon: withCtx(() => [
|
|
1881
|
+
createVNode(unref(N8nIcon), {
|
|
1882
|
+
icon: "arrow-right-to-line",
|
|
1883
|
+
size: "xlarge"
|
|
1884
|
+
})
|
|
1885
|
+
]),
|
|
1886
|
+
description: withCtx(() => [
|
|
1887
|
+
createVNode(_component_i18n_t, {
|
|
1888
|
+
tag: "span",
|
|
1889
|
+
keypath: "ndv.input.noOutputData.v2.description"
|
|
1890
|
+
}, {
|
|
1891
|
+
link: withCtx(() => [
|
|
1892
|
+
createVNode(_sfc_main$f, {
|
|
1893
|
+
"hide-icon": "",
|
|
1894
|
+
transparent: "",
|
|
1895
|
+
type: "secondary",
|
|
1896
|
+
"node-name": (isActiveNodeConfig.value ? rootNode.value : unref(activeNode)?.name) ?? "",
|
|
1897
|
+
label: unref(i18n).baseText("ndv.input.noOutputData.v2.action"),
|
|
1898
|
+
tooltip: unref(i18n).baseText("ndv.input.noOutputData.v2.tooltip"),
|
|
1899
|
+
"tooltip-placement": "bottom",
|
|
1900
|
+
"telemetry-source": "inputs",
|
|
1901
|
+
"data-test-id": "execute-previous-node",
|
|
1902
|
+
onExecute: onNodeExecute
|
|
1903
|
+
}, null, 8, ["node-name", "label", "tooltip"]),
|
|
1904
|
+
_cache[4] || (_cache[4] = createBaseVNode("br", null, null, -1))
|
|
1905
|
+
]),
|
|
1906
|
+
_: 1
|
|
1907
|
+
})
|
|
2203
1908
|
]),
|
|
2204
1909
|
_: 1
|
|
2205
|
-
}),
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
color: "text-dark",
|
|
2209
|
-
size: "medium"
|
|
1910
|
+
}, 8, ["title"])) : (openBlock(), createBlock(NDVEmptyState, {
|
|
1911
|
+
key: 1,
|
|
1912
|
+
title: unref(i18n).baseText("ndv.input.rootNodeHasNotRun.title")
|
|
2210
1913
|
}, {
|
|
2211
|
-
|
|
1914
|
+
icon: withCtx(() => _cache[5] || (_cache[5] = [
|
|
1915
|
+
createBaseVNode("svg", {
|
|
1916
|
+
width: "16px",
|
|
1917
|
+
viewBox: "0 0 16 14",
|
|
1918
|
+
fill: "none",
|
|
1919
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
1920
|
+
}, [
|
|
1921
|
+
createBaseVNode("path", {
|
|
1922
|
+
d: "M11 2C10.4375 2 10 1.5625 10 1C10 0.46875 10.4375 0 11 0H13C14.6562 0 16 1.34375 16 3V11C16 12.6562 14.6562 14 13 14H11C10.4375 14 10 13.5625 10 13C10 12.4688 10.4375 12 11 12H13C13.5312 12 14 11.5625 14 11V3C14 2.46875 13.5312 2 13 2H11ZM10.6875 7.71875L6.6875 11.7188C6.3125 12.125 5.65625 12.125 5.28125 11.7188C4.875 11.3438 4.875 10.6875 5.28125 10.3125L7.5625 8H1C0.4375 8 0 7.5625 0 7C0 6.46875 0.4375 6 1 6H7.5625L5.28125 3.71875C4.875 3.34375 4.875 2.6875 5.28125 2.3125C5.65625 1.90625 6.3125 1.90625 6.6875 2.3125L10.6875 6.3125C11.0938 6.6875 11.0938 7.34375 10.6875 7.71875Z",
|
|
1923
|
+
fill: "currentColor"
|
|
1924
|
+
})
|
|
1925
|
+
], -1)
|
|
1926
|
+
])),
|
|
1927
|
+
description: withCtx(() => [
|
|
2212
1928
|
createVNode(_component_i18n_t, {
|
|
2213
1929
|
tag: "span",
|
|
2214
1930
|
keypath: "ndv.input.rootNodeHasNotRun.description"
|
|
@@ -2224,89 +1940,161 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
2224
1940
|
})
|
|
2225
1941
|
]),
|
|
2226
1942
|
_: 1
|
|
2227
|
-
})
|
|
2228
|
-
], 64)),
|
|
2229
|
-
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
|
|
2243
|
-
|
|
2244
|
-
|
|
2245
|
-
|
|
2246
|
-
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2255
|
-
|
|
2256
|
-
|
|
2257
|
-
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2266
|
-
|
|
2267
|
-
|
|
2268
|
-
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.noOutputData.hint.tooltip")), 1)
|
|
2269
|
-
]),
|
|
2270
|
-
default: withCtx(() => [
|
|
2271
|
-
createVNode(unref(N8nIcon), { icon: "question-circle" })
|
|
1943
|
+
}, 8, ["title"]))
|
|
1944
|
+
], 64)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
1945
|
+
isMappingEnabled.value || hasRootNodeRun.value ? (openBlock(), createBlock(unref(N8nText), {
|
|
1946
|
+
key: 0,
|
|
1947
|
+
tag: "div",
|
|
1948
|
+
bold: true,
|
|
1949
|
+
color: "text-dark",
|
|
1950
|
+
size: "large"
|
|
1951
|
+
}, {
|
|
1952
|
+
default: withCtx(() => [
|
|
1953
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.noOutputData.title")), 1)
|
|
1954
|
+
]),
|
|
1955
|
+
_: 1
|
|
1956
|
+
})) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
1957
|
+
createVNode(unref(N8nText), {
|
|
1958
|
+
tag: "div",
|
|
1959
|
+
bold: true,
|
|
1960
|
+
color: "text-dark",
|
|
1961
|
+
size: "large"
|
|
1962
|
+
}, {
|
|
1963
|
+
default: withCtx(() => [
|
|
1964
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.rootNodeHasNotRun.title")), 1)
|
|
1965
|
+
]),
|
|
1966
|
+
_: 1
|
|
1967
|
+
}),
|
|
1968
|
+
createVNode(unref(N8nText), {
|
|
1969
|
+
tag: "div",
|
|
1970
|
+
color: "text-dark",
|
|
1971
|
+
size: "medium"
|
|
1972
|
+
}, {
|
|
1973
|
+
default: withCtx(() => [
|
|
1974
|
+
createVNode(_component_i18n_t, {
|
|
1975
|
+
tag: "span",
|
|
1976
|
+
keypath: "ndv.input.rootNodeHasNotRun.description"
|
|
1977
|
+
}, {
|
|
1978
|
+
link: withCtx(() => [
|
|
1979
|
+
createBaseVNode("a", {
|
|
1980
|
+
href: "#",
|
|
1981
|
+
"data-test-id": "switch-to-mapping-mode-link",
|
|
1982
|
+
onClick: _cache[1] || (_cache[1] = withModifiers(($event) => onInputModeChange("mapping"), ["prevent"]))
|
|
1983
|
+
}, toDisplayString(unref(i18n).baseText("ndv.input.rootNodeHasNotRun.description.link")), 1)
|
|
2272
1984
|
]),
|
|
2273
1985
|
_: 1
|
|
2274
1986
|
})
|
|
2275
1987
|
]),
|
|
2276
1988
|
_: 1
|
|
2277
1989
|
})
|
|
2278
|
-
]),
|
|
2279
|
-
|
|
2280
|
-
|
|
1990
|
+
], 64)),
|
|
1991
|
+
!_ctx.readOnly ? (openBlock(), createBlock(unref(N8nTooltip), {
|
|
1992
|
+
key: 2,
|
|
1993
|
+
visible: showDraggableHint.value && showDraggableHintWithDelay.value
|
|
1994
|
+
}, {
|
|
1995
|
+
content: withCtx(() => [
|
|
1996
|
+
withDirectives(createBaseVNode("div", null, null, 512), [
|
|
1997
|
+
[
|
|
1998
|
+
_directive_n8n_html,
|
|
1999
|
+
unref(i18n).baseText("dataMapping.dragFromPreviousHint", {
|
|
2000
|
+
interpolate: { name: unref(focusedMappableInput) }
|
|
2001
|
+
})
|
|
2002
|
+
]
|
|
2003
|
+
])
|
|
2004
|
+
]),
|
|
2005
|
+
default: withCtx(() => [
|
|
2006
|
+
createVNode(_sfc_main$f, {
|
|
2007
|
+
type: "secondary",
|
|
2008
|
+
"hide-icon": "",
|
|
2009
|
+
transparent: true,
|
|
2010
|
+
"node-name": (isActiveNodeConfig.value ? rootNode.value : unref(activeNode)?.name) ?? "",
|
|
2011
|
+
label: unref(i18n).baseText("ndv.input.noOutputData.executePrevious"),
|
|
2012
|
+
class: "mt-m",
|
|
2013
|
+
"telemetry-source": "inputs",
|
|
2014
|
+
"data-test-id": "execute-previous-node",
|
|
2015
|
+
onExecute: onNodeExecute
|
|
2016
|
+
}, null, 8, ["node-name", "label"])
|
|
2017
|
+
]),
|
|
2018
|
+
_: 1
|
|
2019
|
+
}, 8, ["visible"])) : createCommentVNode("", true),
|
|
2020
|
+
!_ctx.readOnly ? (openBlock(), createBlock(unref(N8nText), {
|
|
2021
|
+
key: 3,
|
|
2022
|
+
tag: "div",
|
|
2023
|
+
size: "small"
|
|
2024
|
+
}, {
|
|
2025
|
+
default: withCtx(() => [
|
|
2026
|
+
createVNode(_component_i18n_t, { keypath: "ndv.input.noOutputData.hint" }, {
|
|
2027
|
+
info: withCtx(() => [
|
|
2028
|
+
createVNode(unref(N8nTooltip), { placement: "bottom" }, {
|
|
2029
|
+
content: withCtx(() => [
|
|
2030
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.noOutputData.hint.tooltip")), 1)
|
|
2031
|
+
]),
|
|
2032
|
+
default: withCtx(() => [
|
|
2033
|
+
createVNode(unref(N8nIcon), { icon: "circle-help" })
|
|
2034
|
+
]),
|
|
2035
|
+
_: 1
|
|
2036
|
+
})
|
|
2037
|
+
]),
|
|
2038
|
+
_: 1
|
|
2039
|
+
})
|
|
2040
|
+
]),
|
|
2041
|
+
_: 1
|
|
2042
|
+
})) : createCommentVNode("", true)
|
|
2043
|
+
], 64))
|
|
2281
2044
|
], 2)) : (openBlock(), createElementBlock("div", {
|
|
2282
2045
|
key: 1,
|
|
2283
2046
|
class: normalizeClass(_ctx.$style.notConnected)
|
|
2284
2047
|
}, [
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
createVNode(unref(N8nText), {
|
|
2289
|
-
tag: "div",
|
|
2290
|
-
bold: true,
|
|
2291
|
-
color: "text-dark",
|
|
2292
|
-
size: "large"
|
|
2048
|
+
isNDVV2.value ? (openBlock(), createBlock(NDVEmptyState, {
|
|
2049
|
+
key: 0,
|
|
2050
|
+
title: unref(i18n).baseText("ndv.input.notConnected.v2.title")
|
|
2293
2051
|
}, {
|
|
2294
|
-
|
|
2295
|
-
|
|
2052
|
+
icon: withCtx(() => [
|
|
2053
|
+
createVNode(WireMeUp)
|
|
2296
2054
|
]),
|
|
2297
|
-
|
|
2298
|
-
|
|
2299
|
-
|
|
2300
|
-
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
-
|
|
2055
|
+
description: withCtx(() => [
|
|
2056
|
+
createVNode(_component_i18n_t, {
|
|
2057
|
+
tag: "span",
|
|
2058
|
+
keypath: "ndv.input.notConnected.v2.description"
|
|
2059
|
+
}, {
|
|
2060
|
+
link: withCtx(() => [
|
|
2061
|
+
createBaseVNode("a", {
|
|
2062
|
+
href: "https://docs.n8n.io/workflows/connections/",
|
|
2063
|
+
target: "_blank",
|
|
2064
|
+
onClick: onConnectionHelpClick
|
|
2065
|
+
}, toDisplayString(unref(i18n).baseText("ndv.input.notConnected.learnMore")), 1)
|
|
2066
|
+
]),
|
|
2067
|
+
_: 1
|
|
2068
|
+
})
|
|
2307
2069
|
]),
|
|
2308
2070
|
_: 1
|
|
2309
|
-
})
|
|
2071
|
+
}, 8, ["title"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
2072
|
+
createBaseVNode("div", null, [
|
|
2073
|
+
createVNode(WireMeUp)
|
|
2074
|
+
]),
|
|
2075
|
+
createVNode(unref(N8nText), {
|
|
2076
|
+
tag: "div",
|
|
2077
|
+
bold: true,
|
|
2078
|
+
color: "text-dark",
|
|
2079
|
+
size: "large"
|
|
2080
|
+
}, {
|
|
2081
|
+
default: withCtx(() => [
|
|
2082
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.notConnected.title")), 1)
|
|
2083
|
+
]),
|
|
2084
|
+
_: 1
|
|
2085
|
+
}),
|
|
2086
|
+
createVNode(unref(N8nText), { tag: "div" }, {
|
|
2087
|
+
default: withCtx(() => [
|
|
2088
|
+
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.input.notConnected.message")) + " ", 1),
|
|
2089
|
+
createBaseVNode("a", {
|
|
2090
|
+
href: "https://docs.n8n.io/workflows/connections/",
|
|
2091
|
+
target: "_blank",
|
|
2092
|
+
onClick: onConnectionHelpClick
|
|
2093
|
+
}, toDisplayString(unref(i18n).baseText("ndv.input.notConnected.learnMore")), 1)
|
|
2094
|
+
]),
|
|
2095
|
+
_: 1
|
|
2096
|
+
})
|
|
2097
|
+
], 64))
|
|
2310
2098
|
], 2))
|
|
2311
2099
|
]),
|
|
2312
2100
|
"node-waiting": withCtx(() => [
|
|
@@ -2366,7 +2154,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
2366
2154
|
name: "before-data",
|
|
2367
2155
|
fn: withCtx(() => [
|
|
2368
2156
|
(openBlock(), createBlock(resolveDynamicComponent("style"), null, {
|
|
2369
|
-
default: withCtx(() => _cache[
|
|
2157
|
+
default: withCtx(() => _cache[3] || (_cache[3] = [
|
|
2370
2158
|
createTextVNode("button.linkRun { display: none }")
|
|
2371
2159
|
])),
|
|
2372
2160
|
_: 1
|
|
@@ -2384,33 +2172,37 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
2384
2172
|
]),
|
|
2385
2173
|
key: "0"
|
|
2386
2174
|
} : void 0
|
|
2387
|
-
]), 1032, ["class", "node", "nodes", "workflow", "run-index", "linked-runs", "can-link-runs", "too-much-data-title", "no-data-in-branch-message", "is-executing", "executing-message", "push-ref", "override-outputs", "mapping-enabled", "distance-from-active", "is-production-execution-preview", "is-pane-active", "display-mode"]);
|
|
2175
|
+
]), 1032, ["class", "node", "nodes", "workflow", "run-index", "linked-runs", "can-link-runs", "too-much-data-title", "no-data-in-branch-message", "is-executing", "executing-message", "push-ref", "override-outputs", "mapping-enabled", "distance-from-active", "is-production-execution-preview", "is-pane-active", "display-mode", "collapsing-table-column-name"]);
|
|
2388
2176
|
};
|
|
2389
2177
|
}
|
|
2390
2178
|
});
|
|
2391
|
-
const runData = "
|
|
2392
|
-
const mappedNode = "
|
|
2393
|
-
const titleSection = "
|
|
2394
|
-
const
|
|
2395
|
-
const
|
|
2396
|
-
const
|
|
2397
|
-
const
|
|
2398
|
-
const
|
|
2179
|
+
const runData = "_runData_1mdum_123";
|
|
2180
|
+
const mappedNode = "_mappedNode_1mdum_127";
|
|
2181
|
+
const titleSection = "_titleSection_1mdum_131";
|
|
2182
|
+
const titleSectionV2 = "_titleSectionV2_1mdum_140";
|
|
2183
|
+
const inputModeTab = "_inputModeTab_1mdum_144";
|
|
2184
|
+
const noOutputData = "_noOutputData_1mdum_148";
|
|
2185
|
+
const recoveredOutputData = "_recoveredOutputData_1mdum_155";
|
|
2186
|
+
const notConnected = "_notConnected_1mdum_164";
|
|
2187
|
+
const title = "_title_1mdum_131";
|
|
2188
|
+
const titleV2 = "_titleV2_1mdum_182";
|
|
2399
2189
|
const style0$1 = {
|
|
2400
2190
|
runData,
|
|
2401
2191
|
mappedNode,
|
|
2402
2192
|
titleSection,
|
|
2193
|
+
titleSectionV2,
|
|
2403
2194
|
inputModeTab,
|
|
2404
2195
|
noOutputData,
|
|
2405
2196
|
recoveredOutputData,
|
|
2406
2197
|
notConnected,
|
|
2407
|
-
title
|
|
2198
|
+
title,
|
|
2199
|
+
titleV2
|
|
2408
2200
|
};
|
|
2409
|
-
const cssModules$
|
|
2201
|
+
const cssModules$1 = {
|
|
2410
2202
|
"$style": style0$1
|
|
2411
2203
|
};
|
|
2412
|
-
const InputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
2413
|
-
const _hoisted_1
|
|
2204
|
+
const InputPanel = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__cssModules", cssModules$1]]);
|
|
2205
|
+
const _hoisted_1 = { key: "empty" };
|
|
2414
2206
|
const _hoisted_2 = { key: "listening" };
|
|
2415
2207
|
const _hoisted_3 = { key: 0 };
|
|
2416
2208
|
const _hoisted_4 = { key: 1 };
|
|
@@ -2421,7 +2213,7 @@ const _hoisted_7 = {
|
|
|
2421
2213
|
class: "mb-xl"
|
|
2422
2214
|
};
|
|
2423
2215
|
const _hoisted_8 = ["textContent"];
|
|
2424
|
-
const _sfc_main
|
|
2216
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
2425
2217
|
__name: "TriggerPanel",
|
|
2426
2218
|
props: {
|
|
2427
2219
|
nodeName: {},
|
|
@@ -2692,7 +2484,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
2692
2484
|
const _component_n8n_pulse = N8nPulse;
|
|
2693
2485
|
const _component_n8n_text = N8nText;
|
|
2694
2486
|
const _component_n8n_button = N8nButton;
|
|
2695
|
-
const _component_n8n_spinner = _sfc_main$
|
|
2487
|
+
const _component_n8n_spinner = _sfc_main$h;
|
|
2696
2488
|
const _component_n8n_heading = N8nHeading;
|
|
2697
2489
|
const _component_n8n_link = N8nLink;
|
|
2698
2490
|
const _component_n8n_info_accordion = N8nInfoAccordion;
|
|
@@ -2705,10 +2497,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
2705
2497
|
mode: "out-in"
|
|
2706
2498
|
}, {
|
|
2707
2499
|
default: withCtx(() => [
|
|
2708
|
-
hasIssues.value || hideContent.value ? (openBlock(), createElementBlock("div", _hoisted_1
|
|
2500
|
+
hasIssues.value || hideContent.value ? (openBlock(), createElementBlock("div", _hoisted_1)) : isListeningForEvents.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
2709
2501
|
createVNode(_component_n8n_pulse, null, {
|
|
2710
2502
|
default: withCtx(() => [
|
|
2711
|
-
createVNode(_sfc_main$
|
|
2503
|
+
createVNode(_sfc_main$c, {
|
|
2712
2504
|
"node-type": nodeType.value,
|
|
2713
2505
|
size: 40
|
|
2714
2506
|
}, null, 8, ["node-type"])
|
|
@@ -2749,7 +2541,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
2749
2541
|
"copy-button-text": unref(i18n).baseText("generic.clickToCopy"),
|
|
2750
2542
|
onCopy: onTestLinkCopied
|
|
2751
2543
|
}, null, 8, ["value", "toast-title", "copy-button-text"]),
|
|
2752
|
-
createVNode(_sfc_main$
|
|
2544
|
+
createVNode(_sfc_main$f, {
|
|
2753
2545
|
"data-test-id": "trigger-execute-button",
|
|
2754
2546
|
"node-name": _ctx.nodeName,
|
|
2755
2547
|
size: "medium",
|
|
@@ -2790,7 +2582,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
2790
2582
|
_: 1
|
|
2791
2583
|
})
|
|
2792
2584
|
])) : createCommentVNode("", true),
|
|
2793
|
-
createVNode(_sfc_main$
|
|
2585
|
+
createVNode(_sfc_main$f, {
|
|
2794
2586
|
"data-test-id": "trigger-execute-button",
|
|
2795
2587
|
"node-name": _ctx.nodeName,
|
|
2796
2588
|
size: "medium",
|
|
@@ -2827,7 +2619,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
2827
2619
|
_: 1
|
|
2828
2620
|
})) : createCommentVNode("", true)
|
|
2829
2621
|
], 2),
|
|
2830
|
-
createVNode(_sfc_main$
|
|
2622
|
+
createVNode(_sfc_main$f, {
|
|
2831
2623
|
"data-test-id": "trigger-execute-button",
|
|
2832
2624
|
"node-name": _ctx.nodeName,
|
|
2833
2625
|
size: "medium",
|
|
@@ -2876,11 +2668,11 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
2876
2668
|
};
|
|
2877
2669
|
}
|
|
2878
2670
|
});
|
|
2879
|
-
const container = "
|
|
2880
|
-
const header = "
|
|
2881
|
-
const action = "
|
|
2882
|
-
const shake = "
|
|
2883
|
-
const accordion = "
|
|
2671
|
+
const container = "_container_1mcl9_123";
|
|
2672
|
+
const header = "_header_1mcl9_140";
|
|
2673
|
+
const action = "_action_1mcl9_147";
|
|
2674
|
+
const shake = "_shake_1mcl9_151";
|
|
2675
|
+
const accordion = "_accordion_1mcl9_172";
|
|
2884
2676
|
const style0 = {
|
|
2885
2677
|
container,
|
|
2886
2678
|
header,
|
|
@@ -2888,722 +2680,13 @@ const style0 = {
|
|
|
2888
2680
|
shake,
|
|
2889
2681
|
accordion
|
|
2890
2682
|
};
|
|
2891
|
-
const cssModules$1 = {
|
|
2892
|
-
"$style": style0
|
|
2893
|
-
};
|
|
2894
|
-
const TriggerPanel = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__cssModules", cssModules$1], ["__scopeId", "data-v-0f040cf5"]]);
|
|
2895
|
-
const _hoisted_1 = {
|
|
2896
|
-
key: 0,
|
|
2897
|
-
ref: "container",
|
|
2898
|
-
class: "data-display",
|
|
2899
|
-
"data-test-id": "ndv-modal",
|
|
2900
|
-
tabindex: "0"
|
|
2901
|
-
};
|
|
2902
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
2903
|
-
__name: "NodeDetailsView",
|
|
2904
|
-
props: {
|
|
2905
|
-
workflowObject: {},
|
|
2906
|
-
readOnly: { type: Boolean, default: false },
|
|
2907
|
-
renaming: { type: Boolean },
|
|
2908
|
-
isProductionExecutionPreview: { type: Boolean, default: false }
|
|
2909
|
-
},
|
|
2910
|
-
emits: ["saveKeyboardShortcut", "valueChanged", "switchSelectedNode", "openConnectionNodeCreator", "redrawNode", "stopExecution"],
|
|
2911
|
-
setup(__props, { emit: __emit }) {
|
|
2912
|
-
const emit = __emit;
|
|
2913
|
-
const props = __props;
|
|
2914
|
-
const ndvStore = useNDVStore();
|
|
2915
|
-
const externalHooks = useExternalHooks();
|
|
2916
|
-
const nodeHelpers = useNodeHelpers();
|
|
2917
|
-
const { activeNode } = storeToRefs(ndvStore);
|
|
2918
|
-
const pinnedData = usePinnedData(activeNode);
|
|
2919
|
-
const workflowActivate = useWorkflowActivate();
|
|
2920
|
-
const nodeTypesStore = useNodeTypesStore();
|
|
2921
|
-
const workflowsStore = useWorkflowsStore();
|
|
2922
|
-
const settingsStore = useSettingsStore();
|
|
2923
|
-
const deviceSupport = useDeviceSupport();
|
|
2924
|
-
const telemetry = useTelemetry();
|
|
2925
|
-
const i18n = useI18n();
|
|
2926
|
-
const message = useMessage();
|
|
2927
|
-
const { APP_Z_INDEXES } = useStyles();
|
|
2928
|
-
const settingsEventBus = createEventBus();
|
|
2929
|
-
const redrawRequired = ref(false);
|
|
2930
|
-
const runInputIndex = ref(-1);
|
|
2931
|
-
const runOutputIndex = computed(() => ndvStore.output.run ?? -1);
|
|
2932
|
-
const selectedInput = ref();
|
|
2933
|
-
const isLinkingEnabled = ref(true);
|
|
2934
|
-
const triggerWaitingWarningEnabled = ref(false);
|
|
2935
|
-
const isDragging = ref(false);
|
|
2936
|
-
const mainPanelPosition = ref(0);
|
|
2937
|
-
const pinDataDiscoveryTooltipVisible = ref(false);
|
|
2938
|
-
const avgInputRowHeight = ref(0);
|
|
2939
|
-
const avgOutputRowHeight = ref(0);
|
|
2940
|
-
const isInputPaneActive = ref(false);
|
|
2941
|
-
const isOutputPaneActive = ref(false);
|
|
2942
|
-
const isPairedItemHoveringEnabled = ref(true);
|
|
2943
|
-
const pushRef = computed(() => ndvStore.pushRef);
|
|
2944
|
-
const activeNodeType = computed(() => {
|
|
2945
|
-
if (activeNode.value) {
|
|
2946
|
-
return nodeTypesStore.getNodeType(activeNode.value.type, activeNode.value.typeVersion);
|
|
2947
|
-
}
|
|
2948
|
-
return null;
|
|
2949
|
-
});
|
|
2950
|
-
const showTriggerWaitingWarning = computed(
|
|
2951
|
-
() => triggerWaitingWarningEnabled.value && !!activeNodeType.value && !activeNodeType.value.group.includes("trigger") && workflowsStore.isWorkflowRunning && workflowsStore.executionWaitingForWebhook
|
|
2952
|
-
);
|
|
2953
|
-
const workflowRunData = computed(() => {
|
|
2954
|
-
if (workflowExecution.value === null) {
|
|
2955
|
-
return null;
|
|
2956
|
-
}
|
|
2957
|
-
const executionData = workflowExecution.value.data;
|
|
2958
|
-
if (executionData?.resultData) {
|
|
2959
|
-
return executionData.resultData.runData;
|
|
2960
|
-
}
|
|
2961
|
-
return null;
|
|
2962
|
-
});
|
|
2963
|
-
const parentNodes = computed(() => {
|
|
2964
|
-
if (activeNode.value) {
|
|
2965
|
-
return props.workflowObject.getParentNodesByDepth(activeNode.value.name, 1);
|
|
2966
|
-
}
|
|
2967
|
-
return [];
|
|
2968
|
-
});
|
|
2969
|
-
const parentNode = computed(() => {
|
|
2970
|
-
for (const parent of parentNodes.value) {
|
|
2971
|
-
if (workflowsStore?.pinnedWorkflowData?.[parent.name]) {
|
|
2972
|
-
return parent;
|
|
2973
|
-
}
|
|
2974
|
-
if (workflowRunData.value?.[parent.name]) {
|
|
2975
|
-
return parent;
|
|
2976
|
-
}
|
|
2977
|
-
}
|
|
2978
|
-
return parentNodes.value[0];
|
|
2979
|
-
});
|
|
2980
|
-
const inputNodeName = computed(() => {
|
|
2981
|
-
const nodeOutputs = activeNode.value && activeNodeType.value ? getNodeOutputs(props.workflowObject, activeNode.value, activeNodeType.value) : [];
|
|
2982
|
-
const nonMainOutputs = nodeOutputs.filter((output) => {
|
|
2983
|
-
if (typeof output === "string") return output !== NodeConnectionTypes.Main;
|
|
2984
|
-
return output.type !== NodeConnectionTypes.Main;
|
|
2985
|
-
});
|
|
2986
|
-
const isSubNode = nonMainOutputs.length > 0;
|
|
2987
|
-
if (isSubNode && activeNode.value) {
|
|
2988
|
-
const connectedOutputNode = props.workflowObject.getChildNodes(
|
|
2989
|
-
activeNode.value.name,
|
|
2990
|
-
"ALL_NON_MAIN"
|
|
2991
|
-
)?.[0];
|
|
2992
|
-
return connectedOutputNode;
|
|
2993
|
-
}
|
|
2994
|
-
return selectedInput.value ?? parentNode.value?.name;
|
|
2995
|
-
});
|
|
2996
|
-
const inputNode = computed(() => {
|
|
2997
|
-
if (inputNodeName.value) {
|
|
2998
|
-
return workflowsStore.getNodeByName(inputNodeName.value);
|
|
2999
|
-
}
|
|
3000
|
-
return null;
|
|
3001
|
-
});
|
|
3002
|
-
const inputSize = computed(() => ndvStore.ndvInputDataWithPinnedData.length);
|
|
3003
|
-
const isTriggerNode = computed(
|
|
3004
|
-
() => !!activeNodeType.value && (activeNodeType.value.group.includes("trigger") || activeNodeType.value.name === START_NODE_TYPE)
|
|
3005
|
-
);
|
|
3006
|
-
const showTriggerPanel = computed(() => {
|
|
3007
|
-
const override = !!activeNodeType.value?.triggerPanel;
|
|
3008
|
-
if (typeof activeNodeType.value?.triggerPanel === "boolean") {
|
|
3009
|
-
return override;
|
|
3010
|
-
}
|
|
3011
|
-
const isWebhookBasedNode = !!activeNodeType.value?.webhooks?.length;
|
|
3012
|
-
const isPollingNode = activeNodeType.value?.polling;
|
|
3013
|
-
return !props.readOnly && isTriggerNode.value && (isWebhookBasedNode || isPollingNode || override);
|
|
3014
|
-
});
|
|
3015
|
-
const hasOutputConnection = computed(() => {
|
|
3016
|
-
if (!activeNode.value) return false;
|
|
3017
|
-
const outgoingConnections = workflowsStore.outgoingConnectionsByNodeName(activeNode.value.name);
|
|
3018
|
-
return (Object.values(outgoingConnections)?.[0]?.[0] ?? []).length > 0;
|
|
3019
|
-
});
|
|
3020
|
-
const isExecutableTriggerNode = computed(() => {
|
|
3021
|
-
if (!activeNodeType.value) return false;
|
|
3022
|
-
return EXECUTABLE_TRIGGER_NODE_TYPES.includes(activeNodeType.value.name);
|
|
3023
|
-
});
|
|
3024
|
-
const isActiveStickyNode = computed(
|
|
3025
|
-
() => !!ndvStore.activeNode && ndvStore.activeNode.type === STICKY_NODE_TYPE
|
|
3026
|
-
);
|
|
3027
|
-
const workflowExecution = computed(() => workflowsStore.getWorkflowExecution);
|
|
3028
|
-
const maxOutputRun = computed(() => {
|
|
3029
|
-
if (activeNode.value === null) {
|
|
3030
|
-
return 0;
|
|
3031
|
-
}
|
|
3032
|
-
const runData2 = workflowRunData.value;
|
|
3033
|
-
if (!runData2?.[activeNode.value.name]) {
|
|
3034
|
-
return 0;
|
|
3035
|
-
}
|
|
3036
|
-
if (runData2[activeNode.value.name].length) {
|
|
3037
|
-
return runData2[activeNode.value.name].length - 1;
|
|
3038
|
-
}
|
|
3039
|
-
return 0;
|
|
3040
|
-
});
|
|
3041
|
-
const outputRun = computed(
|
|
3042
|
-
() => runOutputIndex.value === -1 ? maxOutputRun.value : Math.min(runOutputIndex.value, maxOutputRun.value)
|
|
3043
|
-
);
|
|
3044
|
-
const maxInputRun = computed(() => {
|
|
3045
|
-
if (inputNode.value === null || activeNode.value === null) {
|
|
3046
|
-
return 0;
|
|
3047
|
-
}
|
|
3048
|
-
const workflowNode = props.workflowObject.getNode(activeNode.value.name);
|
|
3049
|
-
if (!workflowNode || !activeNodeType.value) {
|
|
3050
|
-
return 0;
|
|
3051
|
-
}
|
|
3052
|
-
const outputs = getNodeOutputs(
|
|
3053
|
-
props.workflowObject,
|
|
3054
|
-
workflowNode,
|
|
3055
|
-
activeNodeType.value
|
|
3056
|
-
);
|
|
3057
|
-
let node2 = inputNode.value;
|
|
3058
|
-
const runData2 = workflowRunData.value;
|
|
3059
|
-
if (outputs.some((output) => output !== NodeConnectionTypes.Main)) {
|
|
3060
|
-
node2 = activeNode.value;
|
|
3061
|
-
}
|
|
3062
|
-
if (!node2 || !runData2 || !runData2.hasOwnProperty(node2.name)) {
|
|
3063
|
-
return 0;
|
|
3064
|
-
}
|
|
3065
|
-
if (runData2[node2.name].length) {
|
|
3066
|
-
return runData2[node2.name].length - 1;
|
|
3067
|
-
}
|
|
3068
|
-
return 0;
|
|
3069
|
-
});
|
|
3070
|
-
const connectedCurrentNodeOutputs = computed(() => {
|
|
3071
|
-
return parentNodes.value.find(({ name }) => name === inputNodeName.value)?.indicies;
|
|
3072
|
-
});
|
|
3073
|
-
const inputRun = computed(() => {
|
|
3074
|
-
if (isLinkingEnabled.value && maxOutputRun.value === maxInputRun.value) {
|
|
3075
|
-
return outputRun.value;
|
|
3076
|
-
}
|
|
3077
|
-
const currentInputNodeName = inputNodeName.value;
|
|
3078
|
-
if (runInputIndex.value === -1 && currentInputNodeName) {
|
|
3079
|
-
return connectedCurrentNodeOutputs.value?.map(
|
|
3080
|
-
(outputIndex) => nodeHelpers.getLastRunIndexWithData(currentInputNodeName, outputIndex)
|
|
3081
|
-
).find((runIndex) => runIndex !== -1) ?? maxInputRun.value;
|
|
3082
|
-
}
|
|
3083
|
-
return Math.min(runInputIndex.value, maxInputRun.value);
|
|
3084
|
-
});
|
|
3085
|
-
const canLinkRuns = computed(
|
|
3086
|
-
() => maxOutputRun.value > 0 && maxOutputRun.value === maxInputRun.value
|
|
3087
|
-
);
|
|
3088
|
-
const linked = computed(() => isLinkingEnabled.value && canLinkRuns.value);
|
|
3089
|
-
const featureRequestUrl = computed(() => {
|
|
3090
|
-
if (!activeNodeType.value) {
|
|
3091
|
-
return "";
|
|
3092
|
-
}
|
|
3093
|
-
return `${BASE_NODE_SURVEY_URL}${activeNodeType.value.name}`;
|
|
3094
|
-
});
|
|
3095
|
-
const outputPanelEditMode = computed(() => ndvStore.outputPanelEditMode);
|
|
3096
|
-
const isExecutionWaitingForWebhook = computed(() => workflowsStore.executionWaitingForWebhook);
|
|
3097
|
-
const blockUi = computed(
|
|
3098
|
-
() => workflowsStore.isWorkflowRunning || isExecutionWaitingForWebhook.value
|
|
3099
|
-
);
|
|
3100
|
-
const foreignCredentials = computed(() => {
|
|
3101
|
-
const credentials = activeNode.value?.credentials;
|
|
3102
|
-
const usedCredentials = workflowsStore.usedCredentials;
|
|
3103
|
-
const foreignCredentialsArray = [];
|
|
3104
|
-
if (credentials && settingsStore.isEnterpriseFeatureEnabled[EnterpriseEditionFeature.Sharing]) {
|
|
3105
|
-
Object.values(credentials).forEach((credential) => {
|
|
3106
|
-
if (credential.id && usedCredentials[credential.id] && !usedCredentials[credential.id].currentUserHasAccess) {
|
|
3107
|
-
foreignCredentialsArray.push(credential.id);
|
|
3108
|
-
}
|
|
3109
|
-
});
|
|
3110
|
-
}
|
|
3111
|
-
return foreignCredentialsArray;
|
|
3112
|
-
});
|
|
3113
|
-
const hasForeignCredential = computed(() => foreignCredentials.value.length > 0);
|
|
3114
|
-
const inputPanelDisplayMode = computed(() => ndvStore.inputPanelDisplayMode);
|
|
3115
|
-
const outputPanelDisplayMode = computed(() => ndvStore.outputPanelDisplayMode);
|
|
3116
|
-
const setIsTooltipVisible = ({ isTooltipVisible }) => {
|
|
3117
|
-
pinDataDiscoveryTooltipVisible.value = isTooltipVisible;
|
|
3118
|
-
};
|
|
3119
|
-
const onKeyDown = (e) => {
|
|
3120
|
-
if (e.key === "s" && deviceSupport.isCtrlKeyPressed(e)) {
|
|
3121
|
-
onSaveWorkflow(e);
|
|
3122
|
-
}
|
|
3123
|
-
};
|
|
3124
|
-
const onSaveWorkflow = (e) => {
|
|
3125
|
-
e.stopPropagation();
|
|
3126
|
-
e.preventDefault();
|
|
3127
|
-
if (props.readOnly) return;
|
|
3128
|
-
emit("saveKeyboardShortcut", e);
|
|
3129
|
-
};
|
|
3130
|
-
const onInputItemHover = (e) => {
|
|
3131
|
-
if (e === null || !inputNodeName.value || !isPairedItemHoveringEnabled.value) {
|
|
3132
|
-
ndvStore.setHoveringItem(null);
|
|
3133
|
-
return;
|
|
3134
|
-
}
|
|
3135
|
-
const item = {
|
|
3136
|
-
nodeName: inputNodeName.value,
|
|
3137
|
-
runIndex: inputRun.value,
|
|
3138
|
-
outputIndex: e.outputIndex,
|
|
3139
|
-
itemIndex: e.itemIndex
|
|
3140
|
-
};
|
|
3141
|
-
ndvStore.setHoveringItem(item);
|
|
3142
|
-
};
|
|
3143
|
-
const onInputTableMounted = (e) => {
|
|
3144
|
-
avgInputRowHeight.value = e.avgRowHeight;
|
|
3145
|
-
};
|
|
3146
|
-
const onWorkflowActivate = () => {
|
|
3147
|
-
ndvStore.activeNodeName = null;
|
|
3148
|
-
setTimeout(() => {
|
|
3149
|
-
void workflowActivate.activateCurrentWorkflow("ndv");
|
|
3150
|
-
}, 1e3);
|
|
3151
|
-
};
|
|
3152
|
-
const onOutputItemHover = (e) => {
|
|
3153
|
-
if (e === null || !activeNode.value || !isPairedItemHoveringEnabled.value) {
|
|
3154
|
-
ndvStore.setHoveringItem(null);
|
|
3155
|
-
return;
|
|
3156
|
-
}
|
|
3157
|
-
const item = {
|
|
3158
|
-
nodeName: activeNode.value?.name,
|
|
3159
|
-
runIndex: outputRun.value,
|
|
3160
|
-
outputIndex: e.outputIndex,
|
|
3161
|
-
itemIndex: e.itemIndex
|
|
3162
|
-
};
|
|
3163
|
-
ndvStore.setHoveringItem(item);
|
|
3164
|
-
};
|
|
3165
|
-
const onFeatureRequestClick = () => {
|
|
3166
|
-
window.open(featureRequestUrl.value, "_blank");
|
|
3167
|
-
if (activeNode.value) {
|
|
3168
|
-
telemetry.track("User clicked ndv link", {
|
|
3169
|
-
node_type: activeNode.value.type,
|
|
3170
|
-
workflow_id: workflowsStore.workflowId,
|
|
3171
|
-
push_ref: pushRef.value,
|
|
3172
|
-
pane: NodeConnectionTypes.Main,
|
|
3173
|
-
type: "i-wish-this-node-would"
|
|
3174
|
-
});
|
|
3175
|
-
}
|
|
3176
|
-
};
|
|
3177
|
-
const onDragEnd = (e) => {
|
|
3178
|
-
isDragging.value = false;
|
|
3179
|
-
telemetry.track("User moved parameters pane", {
|
|
3180
|
-
// example method for tracking
|
|
3181
|
-
window_width: e.windowWidth,
|
|
3182
|
-
start_position: mainPanelPosition.value,
|
|
3183
|
-
end_position: e.position,
|
|
3184
|
-
node_type: activeNodeType.value ? activeNodeType.value.name : "",
|
|
3185
|
-
push_ref: pushRef.value,
|
|
3186
|
-
workflow_id: workflowsStore.workflowId
|
|
3187
|
-
});
|
|
3188
|
-
mainPanelPosition.value = e.position;
|
|
3189
|
-
};
|
|
3190
|
-
const onDragStart = (e) => {
|
|
3191
|
-
isDragging.value = true;
|
|
3192
|
-
mainPanelPosition.value = e.position;
|
|
3193
|
-
};
|
|
3194
|
-
const onPanelsInit = (e) => {
|
|
3195
|
-
mainPanelPosition.value = e.position;
|
|
3196
|
-
};
|
|
3197
|
-
const onLinkRunToOutput = () => {
|
|
3198
|
-
isLinkingEnabled.value = true;
|
|
3199
|
-
trackLinking("output");
|
|
3200
|
-
};
|
|
3201
|
-
const onUnlinkRun = (pane) => {
|
|
3202
|
-
runInputIndex.value = runOutputIndex.value;
|
|
3203
|
-
isLinkingEnabled.value = false;
|
|
3204
|
-
trackLinking(pane);
|
|
3205
|
-
};
|
|
3206
|
-
const onNodeExecute = () => {
|
|
3207
|
-
setTimeout(() => {
|
|
3208
|
-
if (!activeNode.value || !workflowsStore.isWorkflowRunning) {
|
|
3209
|
-
return;
|
|
3210
|
-
}
|
|
3211
|
-
triggerWaitingWarningEnabled.value = true;
|
|
3212
|
-
}, 1e3);
|
|
3213
|
-
};
|
|
3214
|
-
const openSettings = () => {
|
|
3215
|
-
settingsEventBus.emit("openSettings");
|
|
3216
|
-
};
|
|
3217
|
-
const trackLinking = (pane) => {
|
|
3218
|
-
telemetry.track("User changed ndv run linking", {
|
|
3219
|
-
node_type: activeNodeType.value ? activeNodeType.value.name : "",
|
|
3220
|
-
push_ref: pushRef.value,
|
|
3221
|
-
linked: linked.value,
|
|
3222
|
-
pane
|
|
3223
|
-
});
|
|
3224
|
-
};
|
|
3225
|
-
const onLinkRunToInput = () => {
|
|
3226
|
-
ndvStore.setOutputRunIndex(runInputIndex.value);
|
|
3227
|
-
isLinkingEnabled.value = true;
|
|
3228
|
-
trackLinking("input");
|
|
3229
|
-
};
|
|
3230
|
-
const valueChanged = (parameterData) => {
|
|
3231
|
-
emit("valueChanged", parameterData);
|
|
3232
|
-
};
|
|
3233
|
-
const onSwitchSelectedNode = (nodeTypeName) => {
|
|
3234
|
-
emit("switchSelectedNode", nodeTypeName);
|
|
3235
|
-
};
|
|
3236
|
-
const onOpenConnectionNodeCreator = (nodeTypeName, connectionType, connectionIndex = 0) => {
|
|
3237
|
-
emit("openConnectionNodeCreator", nodeTypeName, connectionType, connectionIndex);
|
|
3238
|
-
};
|
|
3239
|
-
const close = async () => {
|
|
3240
|
-
if (isDragging.value) {
|
|
3241
|
-
return;
|
|
3242
|
-
}
|
|
3243
|
-
if (activeNode.value && (typeof activeNodeType.value?.outputs === "string" || typeof activeNodeType.value?.inputs === "string" || redrawRequired.value)) {
|
|
3244
|
-
const nodeName = activeNode.value.name;
|
|
3245
|
-
setTimeout(() => {
|
|
3246
|
-
emit("redrawNode", nodeName);
|
|
3247
|
-
}, 1);
|
|
3248
|
-
}
|
|
3249
|
-
if (outputPanelEditMode.value.enabled && activeNode.value) {
|
|
3250
|
-
const shouldPinDataBeforeClosing = await message.confirm(
|
|
3251
|
-
"",
|
|
3252
|
-
i18n.baseText("ndv.pinData.beforeClosing.title"),
|
|
3253
|
-
{
|
|
3254
|
-
confirmButtonText: i18n.baseText("ndv.pinData.beforeClosing.confirm"),
|
|
3255
|
-
cancelButtonText: i18n.baseText("ndv.pinData.beforeClosing.cancel")
|
|
3256
|
-
}
|
|
3257
|
-
);
|
|
3258
|
-
if (shouldPinDataBeforeClosing === MODAL_CONFIRM) {
|
|
3259
|
-
const { value } = outputPanelEditMode.value;
|
|
3260
|
-
try {
|
|
3261
|
-
pinnedData.setData(jsonParse(value), "on-ndv-close-modal");
|
|
3262
|
-
} catch (error2) {
|
|
3263
|
-
console.error(error2);
|
|
3264
|
-
}
|
|
3265
|
-
}
|
|
3266
|
-
ndvStore.setOutputPanelEditModeEnabled(false);
|
|
3267
|
-
}
|
|
3268
|
-
await externalHooks.run("dataDisplay.nodeEditingFinished");
|
|
3269
|
-
telemetry.track("User closed node modal", {
|
|
3270
|
-
node_type: activeNodeType.value ? activeNodeType.value?.name : "",
|
|
3271
|
-
push_ref: pushRef.value,
|
|
3272
|
-
workflow_id: workflowsStore.workflowId
|
|
3273
|
-
});
|
|
3274
|
-
triggerWaitingWarningEnabled.value = false;
|
|
3275
|
-
ndvStore.activeNodeName = null;
|
|
3276
|
-
ndvStore.resetNDVPushRef();
|
|
3277
|
-
};
|
|
3278
|
-
const trackRunChange = (run, pane) => {
|
|
3279
|
-
telemetry.track("User changed ndv run dropdown", {
|
|
3280
|
-
push_ref: pushRef.value,
|
|
3281
|
-
run_index: run,
|
|
3282
|
-
node_type: activeNodeType.value ? activeNodeType.value?.name : "",
|
|
3283
|
-
pane
|
|
3284
|
-
});
|
|
3285
|
-
};
|
|
3286
|
-
const onRunOutputIndexChange = (run) => {
|
|
3287
|
-
ndvStore.setOutputRunIndex(run);
|
|
3288
|
-
trackRunChange(run, "output");
|
|
3289
|
-
};
|
|
3290
|
-
const onRunInputIndexChange = (run) => {
|
|
3291
|
-
runInputIndex.value = run;
|
|
3292
|
-
if (linked.value) {
|
|
3293
|
-
ndvStore.setOutputRunIndex(run);
|
|
3294
|
-
}
|
|
3295
|
-
trackRunChange(run, "input");
|
|
3296
|
-
};
|
|
3297
|
-
const onOutputTableMounted = (e) => {
|
|
3298
|
-
avgOutputRowHeight.value = e.avgRowHeight;
|
|
3299
|
-
};
|
|
3300
|
-
const onInputNodeChange = (value, index) => {
|
|
3301
|
-
runInputIndex.value = -1;
|
|
3302
|
-
isLinkingEnabled.value = true;
|
|
3303
|
-
selectedInput.value = value;
|
|
3304
|
-
telemetry.track("User changed ndv input dropdown", {
|
|
3305
|
-
node_type: activeNode.value ? activeNode.value.type : "",
|
|
3306
|
-
push_ref: pushRef.value,
|
|
3307
|
-
workflow_id: workflowsStore.workflowId,
|
|
3308
|
-
selection_value: index,
|
|
3309
|
-
input_node_type: inputNode.value ? inputNode.value.type : ""
|
|
3310
|
-
});
|
|
3311
|
-
};
|
|
3312
|
-
const onStopExecution = () => {
|
|
3313
|
-
emit("stopExecution");
|
|
3314
|
-
};
|
|
3315
|
-
const activateInputPane = () => {
|
|
3316
|
-
isInputPaneActive.value = true;
|
|
3317
|
-
isOutputPaneActive.value = false;
|
|
3318
|
-
};
|
|
3319
|
-
const activateOutputPane = () => {
|
|
3320
|
-
isInputPaneActive.value = false;
|
|
3321
|
-
isOutputPaneActive.value = true;
|
|
3322
|
-
};
|
|
3323
|
-
const onSearch = (search) => {
|
|
3324
|
-
isPairedItemHoveringEnabled.value = !search;
|
|
3325
|
-
};
|
|
3326
|
-
const registerKeyboardListener = () => {
|
|
3327
|
-
document.addEventListener("keydown", onKeyDown, true);
|
|
3328
|
-
};
|
|
3329
|
-
const unregisterKeyboardListener = () => {
|
|
3330
|
-
document.removeEventListener("keydown", onKeyDown, true);
|
|
3331
|
-
};
|
|
3332
|
-
const setSelectedInput = (value) => {
|
|
3333
|
-
selectedInput.value = value;
|
|
3334
|
-
};
|
|
3335
|
-
const handleChangeDisplayMode = (pane, mode) => {
|
|
3336
|
-
ndvStore.setPanelDisplayMode({ pane, mode });
|
|
3337
|
-
};
|
|
3338
|
-
watch(
|
|
3339
|
-
activeNode,
|
|
3340
|
-
(node2, oldNode) => {
|
|
3341
|
-
if (node2 && !oldNode) {
|
|
3342
|
-
registerKeyboardListener();
|
|
3343
|
-
} else if (!node2) {
|
|
3344
|
-
unregisterKeyboardListener();
|
|
3345
|
-
}
|
|
3346
|
-
if (node2 && node2.name !== oldNode?.name && !isActiveStickyNode.value) {
|
|
3347
|
-
runInputIndex.value = -1;
|
|
3348
|
-
ndvStore.setOutputRunIndex(-1);
|
|
3349
|
-
isLinkingEnabled.value = true;
|
|
3350
|
-
selectedInput.value = void 0;
|
|
3351
|
-
triggerWaitingWarningEnabled.value = false;
|
|
3352
|
-
avgOutputRowHeight.value = 0;
|
|
3353
|
-
avgInputRowHeight.value = 0;
|
|
3354
|
-
setTimeout(() => ndvStore.setNDVPushRef(), 0);
|
|
3355
|
-
if (!activeNodeType.value) {
|
|
3356
|
-
return;
|
|
3357
|
-
}
|
|
3358
|
-
void externalHooks.run("dataDisplay.nodeTypeChanged", {
|
|
3359
|
-
nodeSubtitle: nodeHelpers.getNodeSubtitle(node2, activeNodeType.value, props.workflowObject)
|
|
3360
|
-
});
|
|
3361
|
-
setTimeout(() => {
|
|
3362
|
-
if (activeNode.value) {
|
|
3363
|
-
const outgoingConnections = workflowsStore.outgoingConnectionsByNodeName(
|
|
3364
|
-
activeNode.value?.name
|
|
3365
|
-
);
|
|
3366
|
-
telemetry.track("User opened node modal", {
|
|
3367
|
-
node_id: activeNode.value?.id,
|
|
3368
|
-
node_type: activeNodeType.value ? activeNodeType.value?.name : "",
|
|
3369
|
-
workflow_id: workflowsStore.workflowId,
|
|
3370
|
-
push_ref: pushRef.value,
|
|
3371
|
-
is_editable: !hasForeignCredential.value,
|
|
3372
|
-
parameters_pane_position: mainPanelPosition.value,
|
|
3373
|
-
input_first_connector_runs: maxInputRun.value,
|
|
3374
|
-
output_first_connector_runs: maxOutputRun.value,
|
|
3375
|
-
selected_view_inputs: isTriggerNode.value ? "trigger" : inputPanelDisplayMode.value,
|
|
3376
|
-
selected_view_outputs: outputPanelDisplayMode.value,
|
|
3377
|
-
input_connectors: parentNodes.value.length,
|
|
3378
|
-
output_connectors: outgoingConnections?.main?.length,
|
|
3379
|
-
input_displayed_run_index: inputRun.value,
|
|
3380
|
-
output_displayed_run_index: outputRun.value,
|
|
3381
|
-
data_pinning_tooltip_presented: pinDataDiscoveryTooltipVisible.value,
|
|
3382
|
-
input_displayed_row_height_avg: avgInputRowHeight.value,
|
|
3383
|
-
output_displayed_row_height_avg: avgOutputRowHeight.value
|
|
3384
|
-
});
|
|
3385
|
-
}
|
|
3386
|
-
}, 2e3);
|
|
3387
|
-
}
|
|
3388
|
-
if (window.top && !isActiveStickyNode.value) {
|
|
3389
|
-
window.top.postMessage(JSON.stringify({ command: node2 ? "openNDV" : "closeNDV" }), "*");
|
|
3390
|
-
}
|
|
3391
|
-
},
|
|
3392
|
-
{ immediate: true }
|
|
3393
|
-
);
|
|
3394
|
-
watch(maxOutputRun, () => {
|
|
3395
|
-
ndvStore.setOutputRunIndex(-1);
|
|
3396
|
-
});
|
|
3397
|
-
watch(maxInputRun, () => {
|
|
3398
|
-
runInputIndex.value = -1;
|
|
3399
|
-
});
|
|
3400
|
-
watch(inputNodeName, (nodeName) => {
|
|
3401
|
-
setTimeout(() => {
|
|
3402
|
-
ndvStore.setInputNodeName(nodeName);
|
|
3403
|
-
}, 0);
|
|
3404
|
-
});
|
|
3405
|
-
watch(inputRun, (inputRun2) => {
|
|
3406
|
-
setTimeout(() => {
|
|
3407
|
-
ndvStore.setInputRunIndex(inputRun2);
|
|
3408
|
-
}, 0);
|
|
3409
|
-
});
|
|
3410
|
-
onMounted(() => {
|
|
3411
|
-
dataPinningEventBus.on("data-pinning-discovery", setIsTooltipVisible);
|
|
3412
|
-
ndvEventBus.on("updateInputNodeName", setSelectedInput);
|
|
3413
|
-
});
|
|
3414
|
-
onBeforeUnmount(() => {
|
|
3415
|
-
dataPinningEventBus.off("data-pinning-discovery", setIsTooltipVisible);
|
|
3416
|
-
ndvEventBus.off("updateInputNodeName", setSelectedInput);
|
|
3417
|
-
unregisterKeyboardListener();
|
|
3418
|
-
});
|
|
3419
|
-
return (_ctx, _cache) => {
|
|
3420
|
-
const _component_n8n_icon = N8nIcon;
|
|
3421
|
-
const _component_n8n_text = N8nText;
|
|
3422
|
-
const _component_n8n_tooltip = N8nTooltip;
|
|
3423
|
-
const _component_font_awesome_icon = resolveComponent("font-awesome-icon");
|
|
3424
|
-
const _component_el_dialog = resolveComponent("el-dialog");
|
|
3425
|
-
return openBlock(), createBlock(_component_el_dialog, {
|
|
3426
|
-
id: "ndv",
|
|
3427
|
-
"model-value": (!!unref(activeNode) || _ctx.renaming) && !isActiveStickyNode.value,
|
|
3428
|
-
"before-close": close,
|
|
3429
|
-
"show-close": false,
|
|
3430
|
-
class: "data-display-wrapper ndv-wrapper",
|
|
3431
|
-
"overlay-class": "data-display-overlay",
|
|
3432
|
-
width: "auto",
|
|
3433
|
-
"append-to": `#${unref(APP_MODALS_ELEMENT_ID)}`,
|
|
3434
|
-
"data-test-id": "ndv",
|
|
3435
|
-
"z-index": unref(APP_Z_INDEXES).NDV,
|
|
3436
|
-
"data-has-output-connection": hasOutputConnection.value
|
|
3437
|
-
}, {
|
|
3438
|
-
default: withCtx(() => [
|
|
3439
|
-
createVNode(_component_n8n_tooltip, {
|
|
3440
|
-
placement: "bottom-start",
|
|
3441
|
-
visible: showTriggerWaitingWarning.value,
|
|
3442
|
-
disabled: !showTriggerWaitingWarning.value
|
|
3443
|
-
}, {
|
|
3444
|
-
content: withCtx(() => [
|
|
3445
|
-
createBaseVNode("div", {
|
|
3446
|
-
class: normalizeClass(_ctx.$style.triggerWarning)
|
|
3447
|
-
}, toDisplayString(unref(i18n).baseText("ndv.backToCanvas.waitingForTriggerWarning")), 3)
|
|
3448
|
-
]),
|
|
3449
|
-
default: withCtx(() => [
|
|
3450
|
-
createBaseVNode("div", {
|
|
3451
|
-
class: normalizeClass(_ctx.$style.backToCanvas),
|
|
3452
|
-
"data-test-id": "back-to-canvas",
|
|
3453
|
-
onClick: close
|
|
3454
|
-
}, [
|
|
3455
|
-
createVNode(_component_n8n_icon, {
|
|
3456
|
-
icon: "arrow-left",
|
|
3457
|
-
color: "text-xlight",
|
|
3458
|
-
size: "medium"
|
|
3459
|
-
}),
|
|
3460
|
-
createVNode(_component_n8n_text, {
|
|
3461
|
-
color: "text-xlight",
|
|
3462
|
-
size: "medium",
|
|
3463
|
-
bold: true
|
|
3464
|
-
}, {
|
|
3465
|
-
default: withCtx(() => [
|
|
3466
|
-
createTextVNode(toDisplayString(unref(i18n).baseText("ndv.backToCanvas")), 1)
|
|
3467
|
-
]),
|
|
3468
|
-
_: 1
|
|
3469
|
-
})
|
|
3470
|
-
], 2)
|
|
3471
|
-
]),
|
|
3472
|
-
_: 1
|
|
3473
|
-
}, 8, ["visible", "disabled"]),
|
|
3474
|
-
unref(activeNode) ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
3475
|
-
createBaseVNode("div", {
|
|
3476
|
-
class: normalizeClass(_ctx.$style.modalBackground),
|
|
3477
|
-
onClick: close
|
|
3478
|
-
}, null, 2),
|
|
3479
|
-
(openBlock(), createBlock(NDVDraggablePanels, {
|
|
3480
|
-
key: unref(activeNode).name,
|
|
3481
|
-
"is-trigger-node": isTriggerNode.value,
|
|
3482
|
-
"hide-input-and-output": activeNodeType.value === null,
|
|
3483
|
-
position: isTriggerNode.value && !showTriggerPanel.value ? 0 : void 0,
|
|
3484
|
-
"is-draggable": !isTriggerNode.value,
|
|
3485
|
-
"has-double-width": activeNodeType.value?.parameterPane === "wide",
|
|
3486
|
-
"node-type": activeNodeType.value,
|
|
3487
|
-
onSwitchSelectedNode,
|
|
3488
|
-
onOpenConnectionNodeCreator,
|
|
3489
|
-
onClose: close,
|
|
3490
|
-
onInit: onPanelsInit,
|
|
3491
|
-
onDragstart: onDragStart,
|
|
3492
|
-
onDragend: onDragEnd
|
|
3493
|
-
}, createSlots({
|
|
3494
|
-
output: withCtx(() => [
|
|
3495
|
-
createVNode(OutputPanel, {
|
|
3496
|
-
"data-test-id": "output-panel",
|
|
3497
|
-
workflow: _ctx.workflowObject,
|
|
3498
|
-
"can-link-runs": canLinkRuns.value,
|
|
3499
|
-
"run-index": outputRun.value,
|
|
3500
|
-
"linked-runs": linked.value,
|
|
3501
|
-
"push-ref": pushRef.value,
|
|
3502
|
-
"is-read-only": _ctx.readOnly || hasForeignCredential.value,
|
|
3503
|
-
"block-u-i": blockUi.value && isTriggerNode.value && !isExecutableTriggerNode.value,
|
|
3504
|
-
"is-production-execution-preview": _ctx.isProductionExecutionPreview,
|
|
3505
|
-
"is-pane-active": isOutputPaneActive.value,
|
|
3506
|
-
"display-mode": outputPanelDisplayMode.value,
|
|
3507
|
-
onActivatePane: activateOutputPane,
|
|
3508
|
-
onLinkRun: onLinkRunToOutput,
|
|
3509
|
-
onUnlinkRun: _cache[2] || (_cache[2] = () => onUnlinkRun("output")),
|
|
3510
|
-
onRunChange: onRunOutputIndexChange,
|
|
3511
|
-
onOpenSettings: openSettings,
|
|
3512
|
-
onTableMounted: onOutputTableMounted,
|
|
3513
|
-
onItemHover: onOutputItemHover,
|
|
3514
|
-
onSearch,
|
|
3515
|
-
onDisplayModeChange: _cache[3] || (_cache[3] = ($event) => handleChangeDisplayMode("output", $event))
|
|
3516
|
-
}, null, 8, ["workflow", "can-link-runs", "run-index", "linked-runs", "push-ref", "is-read-only", "block-u-i", "is-production-execution-preview", "is-pane-active", "display-mode"])
|
|
3517
|
-
]),
|
|
3518
|
-
main: withCtx(() => [
|
|
3519
|
-
createVNode(NodeSettings, {
|
|
3520
|
-
"event-bus": unref(settingsEventBus),
|
|
3521
|
-
dragging: isDragging.value,
|
|
3522
|
-
"push-ref": pushRef.value,
|
|
3523
|
-
"node-type": activeNodeType.value,
|
|
3524
|
-
"foreign-credentials": foreignCredentials.value,
|
|
3525
|
-
"read-only": _ctx.readOnly,
|
|
3526
|
-
"block-u-i": blockUi.value && showTriggerPanel.value,
|
|
3527
|
-
executable: !_ctx.readOnly,
|
|
3528
|
-
"input-size": inputSize.value,
|
|
3529
|
-
onValueChanged: valueChanged,
|
|
3530
|
-
onExecute: onNodeExecute,
|
|
3531
|
-
onStopExecution,
|
|
3532
|
-
onRedrawRequired: _cache[4] || (_cache[4] = ($event) => redrawRequired.value = true),
|
|
3533
|
-
onActivate: onWorkflowActivate,
|
|
3534
|
-
onSwitchSelectedNode,
|
|
3535
|
-
onOpenConnectionNodeCreator
|
|
3536
|
-
}, null, 8, ["event-bus", "dragging", "push-ref", "node-type", "foreign-credentials", "read-only", "block-u-i", "executable", "input-size"]),
|
|
3537
|
-
featureRequestUrl.value ? (openBlock(), createElementBlock("a", {
|
|
3538
|
-
key: 0,
|
|
3539
|
-
class: normalizeClass(_ctx.$style.featureRequest),
|
|
3540
|
-
target: "_blank",
|
|
3541
|
-
onClick: onFeatureRequestClick
|
|
3542
|
-
}, [
|
|
3543
|
-
createVNode(_component_font_awesome_icon, { icon: "lightbulb" }),
|
|
3544
|
-
createTextVNode(" " + toDisplayString(unref(i18n).baseText("ndv.featureRequest")), 1)
|
|
3545
|
-
], 2)) : createCommentVNode("", true)
|
|
3546
|
-
]),
|
|
3547
|
-
_: 2
|
|
3548
|
-
}, [
|
|
3549
|
-
showTriggerPanel.value || !isTriggerNode.value ? {
|
|
3550
|
-
name: "input",
|
|
3551
|
-
fn: withCtx(() => [
|
|
3552
|
-
showTriggerPanel.value ? (openBlock(), createBlock(TriggerPanel, {
|
|
3553
|
-
key: 0,
|
|
3554
|
-
"node-name": unref(activeNode).name,
|
|
3555
|
-
"push-ref": pushRef.value,
|
|
3556
|
-
onExecute: onNodeExecute,
|
|
3557
|
-
onActivate: onWorkflowActivate
|
|
3558
|
-
}, null, 8, ["node-name", "push-ref"])) : !isTriggerNode.value ? (openBlock(), createBlock(InputPanel, {
|
|
3559
|
-
key: 1,
|
|
3560
|
-
workflow: _ctx.workflowObject,
|
|
3561
|
-
"can-link-runs": canLinkRuns.value,
|
|
3562
|
-
"run-index": inputRun.value,
|
|
3563
|
-
"linked-runs": linked.value,
|
|
3564
|
-
"current-node-name": inputNodeName.value,
|
|
3565
|
-
"push-ref": pushRef.value,
|
|
3566
|
-
"read-only": _ctx.readOnly || hasForeignCredential.value,
|
|
3567
|
-
"is-production-execution-preview": _ctx.isProductionExecutionPreview,
|
|
3568
|
-
"is-pane-active": isInputPaneActive.value,
|
|
3569
|
-
"display-mode": inputPanelDisplayMode.value,
|
|
3570
|
-
onActivatePane: activateInputPane,
|
|
3571
|
-
onLinkRun: onLinkRunToInput,
|
|
3572
|
-
onUnlinkRun: _cache[0] || (_cache[0] = () => onUnlinkRun("input")),
|
|
3573
|
-
onRunChange: onRunInputIndexChange,
|
|
3574
|
-
onOpenSettings: openSettings,
|
|
3575
|
-
onChangeInputNode: onInputNodeChange,
|
|
3576
|
-
onExecute: onNodeExecute,
|
|
3577
|
-
onTableMounted: onInputTableMounted,
|
|
3578
|
-
onItemHover: onInputItemHover,
|
|
3579
|
-
onSearch,
|
|
3580
|
-
onDisplayModeChange: _cache[1] || (_cache[1] = ($event) => handleChangeDisplayMode("input", $event))
|
|
3581
|
-
}, null, 8, ["workflow", "can-link-runs", "run-index", "linked-runs", "current-node-name", "push-ref", "read-only", "is-production-execution-preview", "is-pane-active", "display-mode"])) : createCommentVNode("", true)
|
|
3582
|
-
]),
|
|
3583
|
-
key: "0"
|
|
3584
|
-
} : void 0
|
|
3585
|
-
]), 1032, ["is-trigger-node", "hide-input-and-output", "position", "is-draggable", "has-double-width", "node-type"]))
|
|
3586
|
-
], 512)) : createCommentVNode("", true)
|
|
3587
|
-
]),
|
|
3588
|
-
_: 1
|
|
3589
|
-
}, 8, ["model-value", "append-to", "z-index", "data-has-output-connection"]);
|
|
3590
|
-
};
|
|
3591
|
-
}
|
|
3592
|
-
});
|
|
3593
|
-
const modalBackground = "_modalBackground_176ah_123";
|
|
3594
|
-
const triggerWarning = "_triggerWarning_176ah_128";
|
|
3595
|
-
const backToCanvas = "_backToCanvas_176ah_132";
|
|
3596
|
-
const featureRequest = "_featureRequest_176ah_153";
|
|
3597
|
-
const style1 = {
|
|
3598
|
-
modalBackground,
|
|
3599
|
-
triggerWarning,
|
|
3600
|
-
backToCanvas,
|
|
3601
|
-
featureRequest
|
|
3602
|
-
};
|
|
3603
2683
|
const cssModules = {
|
|
3604
|
-
"$style":
|
|
2684
|
+
"$style": style0
|
|
3605
2685
|
};
|
|
3606
|
-
const
|
|
2686
|
+
const TriggerPanel = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules], ["__scopeId", "data-v-a321aff2"]]);
|
|
3607
2687
|
export {
|
|
3608
|
-
|
|
2688
|
+
InputPanel as I,
|
|
2689
|
+
OutputPanel as O,
|
|
2690
|
+
TriggerPanel as T,
|
|
2691
|
+
__unplugin_components_0 as _
|
|
3609
2692
|
};
|