n8n-editor-ui
Version:
Workflow Editor UI for n8n
2 lines • 69.9 kB
JavaScript
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/NodeCreation-BwR7_DtW.js","assets/_plugin-vue_export-helper-CIL7EULb.js","assets/src-XqE2yCpG.js","assets/chunk-CACdhNlC.js","assets/get-BjzKP_3k.js","assets/_MapCache-CP9ToMjk.js","assets/vue.runtime.esm-bundler-C3C09Zii.js","assets/CalendarDate-BT_sdKiu.js","assets/core-Bz5WjPxS.js","assets/sanitize-html-CNLkxVtZ.js","assets/empty-BNY-5QlZ.js","assets/en-BrSmbSYv.js","assets/src-DBVOVeEU.css","assets/constants-DuQbSl-q.js","assets/merge-DFZxC2wo.js","assets/expression-runtime-stub-Vl5_1Jpv.js","assets/users.store-xP93bV7X.js","assets/useRootStore-XEREVjMN.js","assets/settings.store-CAFiYCMH.js","assets/dateformat-Cs9X8ykY.js","assets/_baseOrderBy-DP0226Vi.js","assets/useDebounce-DyDXl6eh.js","assets/KeyboardShortcutTooltip-D-xXdXqr.js","assets/KeyboardShortcutTooltip-Bz9DcSWs.css","assets/assistant.store-C47L2JfA.js","assets/chatPanel.store-D4PUJTF0.js","assets/setupPanel.store-CRvWdTDn.js","assets/useActions-bRhEQOx6.js","assets/canvas.eventBus-P-77EomI.js","assets/nodeIcon-Uemsp2k0.js","assets/canvas.utils-BkMRunJV.js","assets/useNodeCreatorShortcutCoachmark-Baqi9_Zi.js","assets/useCalloutHelpers-BYcLQq8e.js","assets/NodeCreation-BiKEdAPr.css","assets/NodeDetailsView-DPMnYQmG.js","assets/ParameterInputList-CnpfSyOD.js","assets/RunData-sLmjeCkz.js","assets/uniqBy-DcnkRE_B.js","assets/NDVEmptyState-D9AiDj1V.js","assets/NDVEmptyState-rnKuZ72v.css","assets/vue-json-pretty-C6Pdr5u6.js","assets/useRunWorkflow-Cii0mAex.js","assets/useCanvasOperations-BAcfYmDn.js","assets/core-C9AM0zn8.js","assets/core-DB683MN3.js","assets/xml-DSkeYOFp.js","assets/VueMarkdown-DVUSZtee.js","assets/usePinnedData-DYpKK5t1.js","assets/executions.store-BkB9JOf7.js","assets/templateTransforms-otxtD9tz.js","assets/nodeTransforms-lrtn9NPZ.js","assets/useCanvasOperations-CCjgcrri.css","assets/retry-yGXnVxaZ.js","assets/pushConnection.store-D7Wwlyyp.js","assets/collaboration.store-4D2ISERe.js","assets/useClipboard-D2UtD35U.js","assets/useInjectWorkflowId-BV3E4pXM.js","assets/useExecutionHelpers-DaszaQT9.js","assets/dateFormatter-uA6jMwOH.js","assets/externalSecrets.ee.store-1A3m4tmC.js","assets/RunDataHtml-C8pLyfwl.js","assets/RunDataHtml-Dn-4rgtR.css","assets/RunData-C9xLKitW.css","assets/exports-D7g5x3uk.js","assets/vue-ceHlDXGn.js","assets/comlink-3h19_0W7.js","assets/date-picker-Dz_0wrPG.js","assets/flatten-BdbH0OMS.js","assets/dialog-Bs3PLrml.js","assets/VirtualSchema-DSU3xfmx.js","assets/Draggable-C5UHad2G.js","assets/Draggable-B0pfmmgs.css","assets/NodeIcon-T2UcO71E.js","assets/NodeIcon-Cd4SL1LV.css","assets/useTelemetryContext-DAk8VAfQ.js","assets/useTelemetryContext-DP1IjWBS.css","assets/TextWithHighlights-D5CTCqWK.js","assets/TextWithHighlights-CnnnTpA3.css","assets/VirtualSchema-DPYoZ503.css","assets/DropdownMenu-B6HcQlju.js","assets/CredentialIcon-BVAlIa2j.js","assets/CredentialIcon-D9KQZeCk.css","assets/useQuickConnect-BzxUKzfb.js","assets/useDynamicCredentials-DWt_uw-C.js","assets/ParameterInputList-BuR2nAip.css","assets/NodeSettings-Q8aHxeY_.js","assets/col-BdyFGuqK.js","assets/useFreeAiCredits-D27UNK6u.js","assets/dataTable.store-DVN6vAE2.js","assets/CommunityNodeUpdateInfo-Z_2kKBJ6.js","assets/semver-B2U7hUEl.js","assets/communityNodes.store-DgTHCt-I.js","assets/CommunityNodeUpdateInfo-Bi69iCuf.css","assets/ContactAdministratorToInstall-Fp2QDIRo.js","assets/ContactAdministratorToInstall-CHK0v6tR.css","assets/NodeSettings-Cv_WS5XL.css","assets/TriggerPanel-vEbUDcme.js","assets/useLogsTreeExpand-Rhs2RNBK.js","assets/AnimatedSpinner-B5MF-pS1.js","assets/AnimatedSpinner-OiUdRqev.css","assets/chatHubPanel.store-BHZAKW4-.js","assets/useLogsTreeExpand-Z8ZnNC8h.css","assets/CopyInput-Diu7JJOl.js","assets/CopyInput-BtZayXH3.css","assets/useExecutionData-C2wMaLhv.js","assets/RunDataParsedAiContent-CGPqqyeV.js","assets/RunDataParsedAiContent-vue_dQQ_.css","assets/TriggerPanel-CXYa_vs9.css","assets/NodeDetailsView-BiCFS4LP.css","assets/NodeDetailsViewV2-DhE9I5uU.js","assets/useKeybindings-HxiGjy_j.js","assets/NodeDetailsViewV2-X9jiKHes.css","assets/SetupWorkflowCredentialsButton-BqsQXgwD.js","assets/readyToRun.store-DUyOyjE3.js","assets/folders.store-CNB9Lo_F.js"])))=>i.map(i=>d[i]);
(function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{};e.SENTRY_RELEASE={id:`n8n@2.16.1`}}catch{}})();try{(function(){var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`795088dc-c1d8-41cd-8ee0-36503f0aba2e`,e._sentryDebugIdIdentifier=`sentry-dbid-795088dc-c1d8-41cd-8ee0-36503f0aba2e`)})()}catch{}import{$ as e,A as t,At as n,Bt as r,C as i,E as a,Ft as o,H as s,I as c,M as l,N as u,Nt as d,O as f,S as p,Sn as m,T as h,U as g,W as _,Wt as v,X as ee,Z as y,_ as b,_n as x,c as S,dt as C,gt as w,h as T,it as E,j as D,n as O,pt as k,q as te,rt as A,tt as j,v as M,w as N,yn as P,yt as F}from"./vue.runtime.esm-bundler-C3C09Zii.js";import{J as I,V as L,Y as R,at as z,o as B,t as ne}from"./core-Bz5WjPxS.js";import{A as V,Di as H,E as re,Et as ie,J as ae,Mi as oe,N as se,Nt as ce,Pt as le,Qi as U,Tt as ue,Xi as W,Yi as de,Zi as G,ct as fe,h as K,ji as pe,lt as me,st as he,t as ge,xt as q}from"./src-XqE2yCpG.js";import{d as _e}from"./get-BjzKP_3k.js";import{t as J}from"./_plugin-vue_export-helper-CIL7EULb.js";import{$r as Y,Et as ve,Ht as ye,In as be,Ln as xe,Nt as Se,On as Ce,Ot as we,Pn as Te,Rn as Ee,Rt as De,Vr as Oe,_a as ke,aa as Ae,ai as je,ba as Me,cr as Ne,d as Pe,ea as Fe,fr as Ie,gr as Le,it as Re,jt as X,lr as ze,nn as Be,nr as Ve,oi as He,r as Ue,s as We,sn as Ge,sr as Ke,t as qe,ur as Je,w as Ye,wn as Xe,zr as Ze,zt as Qe}from"./users.store-xP93bV7X.js";import{D as $e,F as et,N as tt,P as nt,a as rt,c as it,f as at,g as ot,s as st,u as ct,v as lt,x as ut,y as dt}from"./ParameterInputList-CnpfSyOD.js";import{$o as ft,Bo as pt,F as mt,Pt as ht,Qo as Z,Ra as gt,Vn as _t,Zo as vt,ar as yt,bc as bt,cl as xt,ds as St,el as Ct,eo as wt,ft as Tt,ga as Et,ja as Dt,k as Ot,mo as kt,mt as At,na as jt,po as Mt,ra as Nt,so as Pt,zs as Ft}from"./constants-DuQbSl-q.js";import{D as It}from"./useRootStore-XEREVjMN.js";import{t as Lt}from"./useClipboard-D2UtD35U.js";import{t as Rt}from"./chatPanel.store-D4PUJTF0.js";import{l as zt}from"./RunData-sLmjeCkz.js";import{c as Bt,l as Vt}from"./canvas.utils-BkMRunJV.js";import{n as Ht,t as Q}from"./canvas.eventBus-P-77EomI.js";import{n as Ut,r as Wt,t as Gt}from"./useCanvasOperations-BAcfYmDn.js";import{t as Kt}from"./setupPanel.store-CRvWdTDn.js";import{o as qt}from"./nodeTransforms-lrtn9NPZ.js";import{t as Jt}from"./CredentialIcon-BVAlIa2j.js";import{t as Yt}from"./NodeIcon-T2UcO71E.js";import{n as Xt}from"./VirtualSchema-DSU3xfmx.js";import{t as Zt}from"./useTelemetryContext-DAk8VAfQ.js";import{n as Qt,t as $t}from"./useRunWorkflow-Cii0mAex.js";import{t as en}from"./useInjectWorkflowId-BV3E4pXM.js";import{n as tn,t as nn}from"./collaboration.store-4D2ISERe.js";import{t as rn}from"./KeyboardShortcutTooltip-D-xXdXqr.js";import{t as an}from"./sourceControl.eventBus-B5ya2arB.js";import{a as on,c as sn,d as cn,f as ln,i as un,l as dn,m as fn,n as pn,o as mn,p as hn,r as gn,s as _n,t as vn,u as yn}from"./CanvasRunWorkflowButton-BS2xUyBn.js";import{i as bn,n as xn,o as Sn,t as Cn}from"./useCanvasMapping-BKbUkr_2.js";import{t as wn}from"./useKeybindings-HxiGjy_j.js";import{t as Tn}from"./useExpressionResolveCtx-C0HlqAoX.js";import{t as En}from"./chatHubPanel.store-BHZAKW4-.js";import{t as Dn}from"./useExecutionData-C2wMaLhv.js";import{t as On}from"./emptyStateBuilderPrompt.store-B6Wyp6iR.js";var kn=J(u({inheritAttrs:!1,__name:`WorkflowCanvas`,props:{id:{default:`canvas`},workflow:{},workflowObject:{},fallbackNodes:{default:()=>[]},showFallbackNodes:{type:Boolean,default:!0},eventBus:{default:()=>q()},readOnly:{type:Boolean},executing:{type:Boolean},suppressInteraction:{type:Boolean,default:!1},initialViewport:{}},setup(t,{expose:n}){let s=t,c=k(`canvas`),l=S(),{onNodesInitialized:u,viewport:d,viewportRef:f,getNodes:m,fitBounds:_}=Ce(s.id),ee=r(s,`workflow`),y=r(s,`workflowObject`),{nodes:b,connections:C}=Cn({nodes:p(()=>s.showFallbackNodes?[...s.workflow.nodes,...s.fallbackNodes]:s.workflow.nodes),connections:p(()=>s.workflow.connections),workflowObject:y}),w=o(!1),{off:T}=u(()=>{w.value||(s.initialViewport||s.eventBus.emit(`fitView`),w.value=!0,T())}),D=L(b,200),O=L(C,200);return n({executeContextMenuAction:(e,t)=>c.value?.executeContextMenuAction(e,t),ensureNodesAreVisible:e=>{let t=f.value;if(!t)return;let n=m.value.filter(t=>e.includes(t.id));if(n.length===0)return;let r=u(()=>{let i=d.value,a=t.clientWidth,o=t.clientHeight,c=Xe(n),l=c.x*i.zoom+i.x,u=c.y*i.zoom+i.y,f=c.width*i.zoom,p=c.height*i.zoom;if(!(l>=0&&u>=0&&l+f<=a&&u+p<=o)){let e={x:-i.x/i.zoom,y:-i.y/i.zoom,width:a/i.zoom,height:o/i.zoom},t=Math.min(e.x,c.x),n=Math.min(e.y,c.y),r=Math.max(e.x+e.width,c.x+c.width),s=Math.max(e.y+e.height,c.y+c.height);_({x:t,y:n,width:r-t,height:s-n},{padding:.15,duration:100})}s.eventBus.emit(`nodes:select`,{ids:e}),r.off()})}}),(n,r)=>(e(),a(`div`,{class:x(v(l).wrapper),"data-test-id":`canvas-wrapper`},[i(`div`,{id:`canvas`,class:x(v(l).canvas)},[ee.value?(e(),N(xn,g({key:0,id:t.id,ref:`canvas`,nodes:t.executing?v(D):v(b),connections:t.executing?v(O):v(C),"event-bus":t.eventBus,"read-only":t.readOnly,executing:t.executing,"suppress-interaction":t.suppressInteraction,"initial-viewport":t.initialViewport},n.$attrs),null,16,[`id`,`nodes`,`connections`,`event-bus`,`read-only`,`executing`,`suppress-interaction`,`initial-viewport`])):h(``,!0)],2),E(n.$slots,`default`)],2))}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_gh0gb_125`,canvas:`_canvas_gh0gb_133`}}]]),An=J(u({__name:`FocusSidebarTabs`,props:{modelValue:{default:`setup`},tabLabels:{default:()=>({})}},emits:[`update:modelValue`],setup(t,{emit:n}){let r=z(),o=ye(),s=t,c=n,l=p(()=>[{label:s.tabLabels?.setup??r.baseText(`setupPanel.tabs.setup`),value:`setup`},{label:s.tabLabels?.focus??r.baseText(`setupPanel.tabs.focus`),value:`focus`}]),u=e=>{c(`update:modelValue`,e)};return(n,r)=>(e(),a(`div`,{class:x(n.$style.container),"data-test-id":`setup-panel-tabs`},[D(v(re),{"model-value":t.modelValue,options:l.value,size:`small`,"onUpdate:modelValue":u},null,8,[`model-value`,`options`]),i(`button`,{"data-test-id":`setup-panel-close`,class:x(n.$style[`close-button`]),onClick:r[0]||=e=>v(o).closeFocusPanel()},[D(v(U),{icon:`x`,size:`small`})],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_1fw0v_125`,"close-button":`_close-button_1fw0v_142`}}]]),jn=[`data-test-id`],Mn=[`data-test-id`],Nn=u({__name:`SetupCard`,props:s({isComplete:{type:Boolean},loading:{type:Boolean,default:!1},cardTestId:{},title:{},showFooter:{type:Boolean,default:!0},executableNode:{default:null},isTrigger:{type:Boolean,default:!1},isTestingCredential:{type:Boolean,default:!1},highlightNodeIds:{default:()=>[]},telemetryPayload:{default:()=>({})}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:[`update:expanded`],setup(n,{expose:r}){let s=n,c=C(n,`expanded`),l=z(),u=Ie(),d=Kt(),f=Ae(),g=o(!1),_=()=>{g.value=!0},ee=()=>{c.value=!c.value},y=()=>{s.highlightNodeIds.length>0&&d.setHighlightedNodes(s.highlightNodeIds)},S=()=>{s.highlightNodeIds.length>0&&d.clearHighlightedNodes()},T=p(()=>s.executableNode??null),{isExecuting:k,isButtonDisabled:A,label:j,buttonIcon:M,tooltipItems:P,execute:I,isInListeningState:L,listeningHint:R}=mn(T),{webhookUrls:B}=on(T),ne=p(()=>s.executableNode?.type===`@n8n/n8n-nodes-langchain.chatTrigger`&&L.value?!1:!!s.executableNode),V=p(()=>s.isTrigger&&L.value),H=async()=>{await I(),_()};return te(()=>{d.clearHighlightedNodes()}),w(()=>s.isComplete,e=>{e&&g.value&&(u.track(`User completed setup step`,{template_id:f?.value?.meta?.templateId,workflow_id:f?.value?.workflowId,...s.telemetryPayload}),g.value=!1)}),r({markInteracted:_}),(r,o)=>(e(),a(`div`,{"data-test-id":n.cardTestId,class:x([r.$style.card,{[r.$style.collapsed]:!c.value,[r.$style.completed]:n.isComplete,[r.$style[`no-footer`]]:!n.showFooter&&c.value}]),onMouseenter:y,onMouseleave:S},[i(`header`,{"data-test-id":`${n.cardTestId}-header`,class:x(r.$style.header),onClick:ee},[!c.value&&n.loading&&!n.isComplete?(e(),N(v(U),{key:0,"data-test-id":`${n.cardTestId}-loading-icon`,icon:`spinner`,spin:!0,class:x(r.$style[`loading-icon`]),size:`medium`},null,8,[`data-test-id`,`class`])):!c.value&&n.isComplete?(e(),N(v(U),{key:1,"data-test-id":`${n.cardTestId}-complete-icon`,icon:`check`,class:x(r.$style[`complete-icon`]),size:`medium`},null,8,[`data-test-id`,`class`])):E(r.$slots,`icon`,{key:2},void 0,!0),D(v(W),{class:x(r.$style[`card-title`]),size:`medium`,color:`text-dark`},{default:F(()=>[t(m(n.title),1)]),_:1},8,[`class`]),i(`div`,{class:x(r.$style[`header-extra`])},[E(r.$slots,`header-extra`,{},void 0,!0)],2),D(v(U),{class:x(r.$style.chevron),icon:c.value?`chevrons-down-up`:`chevrons-up-down`,size:`large`,color:`text-light`},null,8,[`class`,`icon`])],10,Mn),c.value?(e(),a(b,{key:0},[E(r.$slots,`card-description`,{},void 0,!0),D(O,{name:`callout-fade`},{default:F(()=>[V.value?(e(),a(`div`,{key:0,class:x(r.$style[`callout-grid`])},[i(`div`,{class:x(r.$style[`callout-inner`])},[D(v(de),{"data-test-id":`trigger-listening-callout`,theme:`secondary`,class:x(r.$style.callout)},{default:F(()=>[t(m(v(R)),1)]),_:1},8,[`class`])],2)],2)):h(``,!0)]),_:1}),n.isTrigger&&v(L)&&v(B).length>0?(e(),N(cn,{key:0,urls:v(B)},null,8,[`urls`])):h(``,!0),E(r.$slots,`default`,{},void 0,!0),n.showFooter?(e(),a(`footer`,{key:1,class:x(r.$style.footer)},[n.isComplete?(e(),a(`div`,{key:0,class:x(r.$style[`footer-complete-check`])},[D(v(U),{icon:`check`,class:x(r.$style[`complete-icon`]),size:`large`},null,8,[`class`]),D(v(W),{size:`medium`,color:`success`},{default:F(()=>[t(m(v(l).baseText(`generic.complete`)),1)]),_:1})],2)):h(``,!0),E(r.$slots,`footer-actions`,{},void 0,!0),ne.value?(e(),N(ln,{key:1,label:v(j),icon:v(M),disabled:v(A)||n.isTestingCredential,loading:v(k),"tooltip-items":v(P),onClick:H},null,8,[`label`,`icon`,`disabled`,`loading`,`tooltip-items`])):h(``,!0)],2)):h(``,!0)],64)):h(``,!0)],42,jn))}}),Pn=`_card_8jtb5_125`,Fn=`_header_8jtb5_138`,In=`_chevron_8jtb5_149`,Ln=`_collapsed_8jtb5_158`,$=`_footer_8jtb5_183`,Rn=`_completed_8jtb5_210`,zn=`_callout_8jtb5_217`,Bn=J(Nn,[[`__cssModules`,{$style:{card:Pn,"no-footer":`_no-footer_8jtb5_134`,header:Fn,"header-extra":`_header-extra_8jtb5_146`,chevron:In,collapsed:Ln,"card-title":`_card-title_8jtb5_162`,"complete-icon":`_complete-icon_8jtb5_167`,"loading-icon":`_loading-icon_8jtb5_176`,footer:$,"footer-complete-check":`_footer-complete-check_8jtb5_190`,completed:Rn,callout:zn,"callout-grid":`_callout-grid_8jtb5_221`,"callout-inner":`_callout-inner_8jtb5_226`}}],[`__scopeId`,`data-v-26cde070`]]),Vn=J(u({__name:`NodeSetupCard`,props:s({state:{},firstTriggerName:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:s([`credentialSelected`,`credentialDeselected`],[`update:expanded`]),setup(n,{emit:r}){let a=n,s=C(n,`expanded`),c=r,l=z(),u=Ye(),d=Re(),g=ze(),_=We(),ee=Ae(),y=o(null),b=p(()=>u.getNodeType(a.state.node.type,a.state.node.typeVersion)),S=p(()=>!!a.state.credentialType),T=p(()=>a.state.isTrigger?!a.firstTriggerName||a.state.node.type===`n8n-nodes-base.manualTrigger`?null:a.state.node.name===a.firstTriggerName?a.state.node:null:g.isNodeExecutable(a.state.node,!0,[])?a.state.node:null),E=p(()=>{let e=a.state.selectedCredentialId;return!!e&&d.isCredentialTestPending(e)}),O=p(()=>!S.value||T.value!==null||a.state.isComplete),k=p(()=>Object.keys(a.state.parameterIssues).length>0),te=o([]),A=p(()=>te.value.length>0),j=p(()=>a.state.isTrigger&&!S.value&&!A.value),M=p(()=>S.value&&!A.value&&!j.value),P=p(()=>{let e=[];return j.value&&e.push(`trigger`),S.value&&e.push(`credential`),k.value&&e.push(`param`),{type:e,template_id:ee?.value?.meta?.templateId,workflow_id:_.workflow.id,node_types:(a.state.allNodesUsingCredential??[a.state.node]).map(e=>e.type),credential_type:a.state.credentialType,has_parameters:k.value,missing_parameters_count:Object.keys(a.state.parameterIssues).length}}),I=()=>{y.value?.markInteracted()},L=o(Object.keys(a.state.parameterIssues).length===0),R=p(()=>L.value||(a.state.additionalParameterNames?.length??0)>0&&Object.keys(a.state.parameterIssues).length===0),B=o(!a.state.isAutoApplied);w(()=>a.state.isAutoApplied??!1,e=>{e||(B.value=!0)}),w(s,(e,t)=>{t&&!e&&(Object.keys(a.state.parameterIssues).length===0&&(L.value=!0),a.state.isAutoApplied&&(B.value=!0))});let ne=p(()=>A.value?a.state.isComplete&&R.value&&B.value:a.state.isComplete&&B.value),V=p(()=>(a.state.allNodesUsingCredential??[a.state.node]).map(({id:e})=>e));return(r,a)=>(e(),N(Bn,{ref_key:`setupCard`,ref:y,expanded:s.value,"onUpdate:expanded":a[3]||=e=>s.value=e,"is-complete":ne.value,loading:E.value,title:n.state.node.name,"show-footer":O.value,"executable-node":T.value,"is-trigger":n.state.isTrigger,"is-testing-credential":E.value,"telemetry-payload":P.value,"highlight-node-ids":V.value,"card-test-id":`node-setup-card`},f({icon:F(()=>[M.value?(e(),N(Jt,{key:0,"credential-type-name":n.state.credentialType,size:16},null,8,[`credential-type-name`])):(e(),N(Yt,{key:1,"node-type":b.value,size:16},null,8,[`node-type`]))]),"card-description":F(()=>[n.state.isTrigger&&S.value&&!n.state.selectedCredentialId?(e(),N(v(W),{key:0,size:`medium`,color:`text-base`,class:`pl-xs pr-xs`},{default:F(()=>[t(m(v(l).baseText(`setupPanel.trigger.credential.note`)),1)]),_:1})):A.value?(e(),N(v(W),{key:1,size:`medium`,color:`text-base`,class:`pl-xs pr-xs`},{default:F(()=>[t(m(v(l).baseText(`setupPanel.parameter.description`)),1)]),_:1})):h(``,!0)]),default:F(()=>[j.value?h(``,!0):(e(),N(yn,{key:0,state:n.state},{default:F(()=>[i(`div`,{class:x(r.$style.content)},[D(_n,{state:n.state,"sticky-parameters":te.value,onCredentialSelected:a[0]||=e=>{I(),c(`credentialSelected`,e)},onCredentialDeselected:a[1]||=e=>{I(),c(`credentialDeselected`,e)},onInteracted:I,onParametersDiscovered:a[2]||=e=>te.value.push(...e)},null,8,[`state`,`sticky-parameters`])],2)]),_:1},8,[`state`]))]),_:2},[j.value?{name:`header-extra`,fn:F(()=>[D(v(H),null,{content:F(()=>[t(m(v(l).baseText(`nodeCreator.nodeItem.triggerIconTitle`)),1)]),default:F(()=>[D(v(U),{icon:`zap`,size:`small`,color:`text-light`})]),_:1})]),key:`0`}:void 0]),1032,[`expanded`,`is-complete`,`loading`,`title`,`show-footer`,`executable-node`,`is-trigger`,`is-testing-credential`,`telemetry-payload`,`highlight-node-ids`]))}}),[[`__cssModules`,{$style:{content:`_content_1wopc_125`}}]]),Hn=[`onMouseenter`],Un=[`onClick`],Wn=J(u({__name:`NodeGroupSetupCard`,props:s({nodeGroup:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:s([`credentialSelected`,`credentialDeselected`],[`update:expanded`]),setup(n,{emit:s}){let c=n,l=C(n,`expanded`),u=s,d=ze(),f=We(),g=Ae(),_=Kt(),ee=o(null),{parentNodeType:y,subnodeSections:S,allSections:T,getStickyParameters:E,addStickyParameters:O,expandedSections:k,toggleSection:te,hoveredSection:j,onSectionMouseEnter:M,onSectionMouseLeave:P,getSectionNodeType:I}=un(r(c,`nodeGroup`)),L=p(()=>{let e=c.nodeGroup.parentNode;return d.isNodeExecutable(e,!0,[])?e:null}),R=p(()=>sn({nodeGroup:c.nodeGroup})),z=p(()=>{let e=new Set([c.nodeGroup.parentNode.id]);for(let t of T.value)e.add(t.node.id);return[...e]}),B=p(()=>j.value?(j.value.allNodesUsingCredential??[j.value.node]).map(e=>e.id):z.value);w(B,e=>{l.value&&_.setHighlightedNodes(e)}),w(l,(e,t)=>{t&&!e&&(j.value=null)});let ne=p(()=>T.value.some(gn)),V=p(()=>({type:[`node-group`],template_id:g?.value?.meta?.templateId,workflow_id:f.workflow.id,node_types:T.value.map(e=>e.node.type),has_parameters:ne.value})),H=p(()=>L.value!==null),re=()=>{ee.value?.markInteracted()};return(r,o)=>(e(),N(Bn,{ref_key:`setupCard`,ref:ee,expanded:l.value,"onUpdate:expanded":o[8]||=e=>l.value=e,"is-complete":R.value,title:n.nodeGroup.parentNode.name,"show-footer":H.value,"executable-node":L.value,"telemetry-payload":V.value,"highlight-node-ids":B.value,"card-test-id":`node-group-setup-card`},{icon:F(()=>[D(Yt,{"node-type":v(y),size:16},null,8,[`node-type`])]),default:F(()=>[n.nodeGroup.parentState?(e(),a(`div`,{key:0,class:x(r.$style.parentBody),onMouseenter:o[3]||=e=>v(M)(n.nodeGroup.parentState),onMouseleave:o[4]||=(...e)=>v(P)&&v(P)(...e)},[D(yn,{state:n.nodeGroup.parentState},{default:F(()=>[D(_n,{state:n.nodeGroup.parentState,"sticky-parameters":v(E)(n.nodeGroup.parentState.node.id),onCredentialSelected:o[0]||=e=>{re(),u(`credentialSelected`,e)},onCredentialDeselected:o[1]||=e=>{re(),u(`credentialDeselected`,e)},onInteracted:re,onParametersDiscovered:o[2]||=e=>v(O)(n.nodeGroup.parentState.node.id,e)},null,8,[`state`,`sticky-parameters`])]),_:1},8,[`state`])],34)):h(``,!0),i(`div`,{class:x(r.$style.sections),"data-test-id":`node-group-sections`},[(e(!0),a(b,null,A(v(S),n=>(e(),a(`div`,{key:n.node.id,class:x(r.$style.section),"data-test-id":`node-group-section`,onMouseenter:e=>v(M)(n),onMouseleave:o[7]||=(...e)=>v(P)&&v(P)(...e)},[i(`div`,{class:x(r.$style.sectionHeader),"data-test-id":`node-group-section-header`,onClick:e=>v(te)(n.node.id)},[n.isComplete?(e(),N(v(U),{key:0,icon:`check`,size:`small`,class:x(r.$style.sectionCheck)},null,8,[`class`])):(e(),N(Yt,{key:1,"node-type":v(I)(n),size:14},null,8,[`node-type`])),D(v(W),{class:x(r.$style.sectionTitle),size:`medium`,color:`text-dark`},{default:F(()=>[t(m(n.node.name),1)]),_:2},1032,[`class`]),D(v(U),{class:x(r.$style.sectionChevron),icon:v(k)[n.node.id]?`chevrons-down-up`:`chevrons-up-down`,size:`large`,color:`text-light`},null,8,[`class`,`icon`])],10,Un),v(k)[n.node.id]?(e(),a(`div`,{key:0,class:x(r.$style.sectionContent)},[D(yn,{state:n},{default:F(()=>[D(_n,{state:n,"sticky-parameters":v(E)(n.node.id),onCredentialSelected:o[5]||=e=>{re(),u(`credentialSelected`,e)},onCredentialDeselected:o[6]||=e=>{re(),u(`credentialDeselected`,e)},onInteracted:re,onParametersDiscovered:e=>v(O)(n.node.id,e)},null,8,[`state`,`sticky-parameters`,`onParametersDiscovered`])]),_:2},1032,[`state`])],2)):h(``,!0)],42,Hn))),128))],2)]),_:1},8,[`expanded`,`is-complete`,`title`,`show-footer`,`executable-node`,`telemetry-payload`,`highlight-node-ids`]))}}),[[`__cssModules`,{$style:{parentBody:`_parentBody_5jazh_125`,sections:`_sections_5jazh_129`,section:`_section_5jazh_129`,sectionHeader:`_sectionHeader_5jazh_140`,sectionChevron:`_sectionChevron_5jazh_147`,sectionTitle:`_sectionTitle_5jazh_154`,sectionCheck:`_sectionCheck_5jazh_159`,sectionContent:`_sectionContent_5jazh_163`}}]]),Gn=J(u({__name:`SetupPanelCards`,props:{showCompleted:{type:Boolean,default:!0}},setup(n){let r=n,o=z(),s=Ie(),c=en(),l=Ae(),{setupCards:u,isAllComplete:f,setCredential:g,unsetCredential:_,firstTriggerName:ee}=pn();w(f,e=>{e&&s.track(`User completed all setup steps`,{template_id:l?.value?.meta?.templateId,workflow_id:c.value})});let y=e=>{g(e.credentialType,e.credentialId,e.nodeName)},S=e=>{_(e.credentialType,e.nodeName)},C=p(()=>r.showCompleted?u.value:u.value.filter(e=>!sn(e))),T=e=>dn(e)?`group-${e.nodeGroup.parentNode.id}`:e.state.credentialType?`${e.state.credentialType}-${e.state.node.id}`:`${e.state.node.id}`,E=d({}),O=new Map,k=new Set,te=!1,j=e=>E[e]??!1,M=(e,t)=>e.find((e,n)=>n>t&&!sn(e)),P=(e,t)=>{if(E[e]=t,!t){let t=u.value,n=t.findIndex(t=>T(t)===e),r=t[n];if(r&&sn(r)&&k.has(e)){let e=M(t,n);e&&(E[T(e)]=!0)}}};return w(u,e=>{for(let t of e){let e=T(t);k.has(e)||(dn(t)?[...t.nodeGroup.parentState?[t.nodeGroup.parentState]:[],...t.nodeGroup.subnodeCards].some(gn)&&k.add(e):gn(t.state)&&k.add(e))}if(te){let t=M(e,-1);if(t&&!O.has(T(t))){let n=e.findIndex(e=>E[T(e)]);n>e.indexOf(t)&&(E[T(e[n])]=!1,E[T(t)]=!0)}for(let t=0;t<e.length;t++){let n=e[t],r=T(n),i=O.get(r)??!1,a=sn(n),o=dn(n)?[...n.nodeGroup.parentState?[n.nodeGroup.parentState]:[],...n.nodeGroup.subnodeCards].some(e=>e.isAutoApplied):n.state.isAutoApplied;if(a&&!i&&!k.has(r)){if(E[r]=!1,!o||e.every((e,n)=>n===t||!E[T(e)])){let n=M(e,t);n&&(E[T(n)]=!0)}break}}}else{if(e.length===0)return;let t=M(e,-1);t&&(E[T(t)]=!0),te=!0}O.clear();for(let t of e)O.set(T(t),sn(t))},{deep:!0,immediate:!0}),(n,r)=>(e(),a(`div`,{class:x(n.$style.container),"data-test-id":`setup-panel-cards-container`},[v(u).length===0?(e(),a(`div`,{key:0,class:x(n.$style[`empty-state`]),"data-test-id":`setup-cards-empty`},[D(v(U),{icon:`list-checks`,class:x(n.$style[`empty-icon`]),size:24,color:`text-base`},null,8,[`class`]),i(`div`,{class:x(n.$style[`empty-text`])},[D(v(W),{size:`medium`,color:`text-base`,bold:!0,"data-test-id":`setup-cards-empty-heading`},{default:F(()=>[t(m(v(o).baseText(`setupPanel.empty.heading`)),1)]),_:1}),D(v(W),{size:`medium`,color:`text-light`,"data-test-id":`setup-cards-empty-description`},{default:F(()=>[t(m(v(o).baseText(`setupPanel.empty.description`)),1)]),_:1})],2)],2)):(e(),a(`div`,{key:1,class:x(n.$style[`card-list`]),"data-test-id":`setup-cards-list`},[(e(!0),a(b,null,A(C.value,t=>(e(),a(b,{key:T(t)},[t.nodeGroup?(e(),N(Wn,{key:0,"node-group":t.nodeGroup,expanded:j(T(t)),"onUpdate:expanded":e=>P(T(t),e),onCredentialSelected:y,onCredentialDeselected:S},null,8,[`node-group`,`expanded`,`onUpdate:expanded`])):(e(),N(Vn,{key:1,state:t.state,"first-trigger-name":v(ee),expanded:j(T(t)),"onUpdate:expanded":e=>P(T(t),e),onCredentialSelected:y,onCredentialDeselected:S},null,8,[`state`,`first-trigger-name`,`expanded`,`onUpdate:expanded`]))],64))),128)),v(f)?(e(),a(`div`,{key:0,class:x(n.$style[`complete-message`]),"data-test-id":`setup-cards-complete-message`},[D(v(W),{size:`medium`,color:`text-base`},{default:F(()=>[t(m(v(o).baseText(`setupPanel.everythingConfigured.message`)),1)]),_:1})],2)):h(``,!0)],2))],2))}}),[[`__cssModules`,{$style:{container:`_container_cicgv_125`,"card-list":`_card-list_cicgv_126`,"empty-state":`_empty-state_cicgv_134`,"empty-text":`_empty-text_cicgv_144`,"complete-message":`_complete-message_cicgv_150`}}]]),Kn=J(u({__name:`SetupPanel`,setup(n){let r=z(),s=o(!0);return(n,o)=>(e(),a(`div`,{class:x(n.$style.container),"data-test-id":`setup-panel-container`},[i(`div`,{class:x(n.$style.content),"data-test-id":`setup-panel-cards`},[D(Gn,{"show-completed":s.value},null,8,[`show-completed`])],2),i(`footer`,{class:x(n.$style.footer),"data-test-id":`setup-panel-footer`},[D(v(W),{class:x(n.$style[`toggle-label`]),tag:`label`,size:`small`},{default:F(()=>[D(v(ge),{modelValue:s.value,"onUpdate:modelValue":o[0]||=e=>s.value=e,size:`small`},null,8,[`modelValue`]),t(` `+m(v(r).baseText(`setupPanel.showCompleted`)),1)]),_:1},8,[`class`])],2)],2))}}),[[`__cssModules`,{$style:{container:`_container_3n09a_125`,content:`_content_3n09a_136`,footer:`_footer_3n09a_146`,"toggle-label":`_toggle-label_3n09a_156`}}]]),qn=J(u({__name:`ExperimentalNodeDetailsDrawer`,props:{node:{},nodeIds:{},isReadOnly:{type:Boolean}},emits:[`openNdv`,`contextMenuAction`],setup(n,{emit:r}){let s=r,c=Tn(p(()=>n.node)),l=Sn(p(()=>n.nodeIds)),u=Le(),d=o(0),f=p(()=>[n.node.id,d.value].join(`|`));return w(()=>u.activeNodeName,(e,t)=>{e===null&&t!==null&&(d.value+=1)}),j(bt,c),(r,o)=>(e(),a(`div`,{class:x(r.$style.component)},[n.nodeIds.length>1?(e(),N(v(W),{key:0,tag:`div`,color:`text-base`,class:x(r.$style.multipleNodes)},{default:F(()=>[i(`div`,null,m(n.nodeIds.length)+` nodes selected`,1),i(`ul`,{class:x(r.$style.multipleNodesActions)},[(e(!0),a(b,null,A(v(l),i=>(e(),a(`li`,{key:i.id,class:x(r.$style.multipleNodesAction)},[D(v(G),{variant:`subtle`,disabled:i.disabled,onClick:e=>s(`contextMenuAction`,i.id,n.nodeIds)},{default:F(()=>[t(m(i.label)+` `,1),i.shortcut?(e(),N(v(ce),g({key:0,ref_for:!0},i.shortcut),null,16)):h(``,!0)]),_:2},1032,[`disabled`,`onClick`])],2))),128))],2)]),_:1},8,[`class`])):n.node?(e(),N(bn,{key:f.value,"node-id":n.node.id,"is-read-only":n.isReadOnly},null,8,[`node-id`,`is-read-only`])):h(``,!0)],2))}}),[[`__cssModules`,{$style:{component:`_component_1ef46_125`,multipleNodes:`_multipleNodes_1ef46_130`,multipleNodesActions:`_multipleNodesActions_1ef46_140`,multipleNodesAction:`_multipleNodesAction_1ef46_140`}}]]),Jn=J(u({__name:`ExperimentalFocusPanelHeader`,props:{node:{},parameter:{},isExecutable:{type:Boolean},readOnly:{type:Boolean}},emits:[`execute`,`openNdv`,`clearParameter`,`renameNode`],setup(n,{emit:r}){let o=r,s=Ye(),c=z(),l=p(()=>s.getNodeType(n.node.type,n.node.typeVersion));return(r,s)=>(e(),N(v(W),{tag:`header`,size:`small`,bold:``,class:x(r.$style.component)},{default:F(()=>[D(Yt,{"node-type":l.value,size:16},null,8,[`node-type`]),i(`div`,{class:x(r.$style.breadcrumbs)},[n.parameter?(e(),a(b,{key:0},[D(v(W),{size:`small`,color:`text-base`,bold:``},{default:F(()=>[t(m(n.node.name),1)]),_:1}),D(v(W),{size:`small`,color:`text-light`},{default:F(()=>[...s[4]||=[t(`/`,-1)]]),_:1}),t(` `+m(n.parameter.displayName),1)],64)):(e(),N(v(K),{key:1,"model-value":n.node.name,"min-width":0,"max-width":500,placeholder:v(c).baseText(`ndv.title.rename.placeholder`),"read-only":n.readOnly,"onUpdate:modelValue":s[0]||=e=>o(`renameNode`,e)},null,8,[`model-value`,`placeholder`,`read-only`]))],2),n.parameter?(e(),N(v(oe),{key:0,variant:`ghost`,icon:`x`,size:`small`,onClick:s[1]||=e=>o(`clearParameter`)})):(e(),N(v(oe),{key:1,variant:`ghost`,icon:`expand`,size:`small`,onClick:s[2]||=e=>o(`openNdv`)})),n.isExecutable?(e(),N(Xt,{key:2,"data-test-id":`node-execute-button`,"node-name":n.node.name,tooltip:`Execute ${n.node.name}`,type:`secondary`,size:`small`,icon:`play`,square:!0,"hide-label":!0,"telemetry-source":`focus`,onExecute:s[3]||=e=>o(`execute`)},null,8,[`node-name`,`tooltip`])):h(``,!0)]),_:1},8,[`class`]))}}),[[`__cssModules`,{$style:{component:`_component_1p4tv_125`,breadcrumbs:`_breadcrumbs_1p4tv_133`}}]]),Yn=J(u({name:`FocusPanel`,__name:`FocusPanel`,props:{isCanvasReadOnly:{type:Boolean}},emits:[`focus`,`saveKeyboardShortcut`,`contextMenuAction`],setup(n,{emit:s}){let c=n,l=s,u=o(),d=z(),f=ze(),g=ye(),ee=en(),y=We(),S=Ae(),C=ve(),T=Ye(),E=Kt(),O=Ie(),k=it(),te=Ne(),A=Ut(),j=Le(),M=Ce(ee.value),{renameNode:P}=Gt(),I=p(()=>g.resolvedParameter),L=o(``),R=ne(async()=>{if(!I.value)return!1;let e=I.value.parameterPath.split(`.`).slice(1,-1).join(`.`);return!!I.value.parameter.disabledOptions&&await k.shouldDisplayNodeParameter(I.value.node.parameters,I.value.node,I.value.parameter,e,`disabledOptions`)},!1),B=ne(async()=>{if(!I.value)return!0;let e=I.value.parameterPath.split(`.`).slice(1,-1).join(`.`);return await k.shouldDisplayNodeParameter(I.value.node.parameters,I.value.node,I.value.parameter,e,`displayOptions`)},!0),V=p(()=>{if(!A.isNdvInFocusPanelEnabled||I.value)return I.value?.node;let e=M.getSelectedNodes.value[0];return e?.data?.render.type===Oe.Default?(S?.value?.allNodes??[]).find(t=>t.id===e.id):void 0}),H=p(()=>M.getSelectedNodes.value.length>1),re=p(()=>{if(!V.value||!B.value)return!1;let e=f.getForeignCredentialsIfSharingEnabled(V.value.credentials);return f.isNodeExecutable(V.value,!c.isCanvasReadOnly,e)}),{workflowRunData:ie}=Dn({node:V}),oe=p(()=>{if(!V.value)return!0;let e=y.workflowObject.getParentNodes(V.value.name,`main`,1)[0];return!!(e&&ie.value&&Object.prototype.hasOwnProperty.bind(ie.value)(e))});function ce(e){return I.value?lt(I.value.parameter,e):void 0}let le=p(()=>I.value?.node.parameters.mode),ue=p(()=>ce(`editor`)??void 0),de=p(()=>ue.value===`json`||I.value?.parameter.type===`json`?`json`:ce(`editorLanguage`)??`javaScript`),G=p(()=>ce(`rows`)),fe=p(()=>I.value?T.isToolNode(I.value?.node.type):!1),K=p(()=>!!I.value&&I.value.node.type===`n8n-nodes-base.html`),me=p(()=>I.value&&Fe(I.value.parameter,I.value.value)),he=p(()=>me.value?Dt(I.value)?I.value.value:I.value:``),ge=p(()=>I.value?.node.type===Pt),q=p(()=>c.isCanvasReadOnly||R.value),_e=p(()=>({$vars:te.variablesAsObject})),J=p(()=>{if(I.value)return{nodeName:I.value.node.name,parameterPath:I.value.parameterPath}}),Y=p(()=>C.executingNode.isNodeExecuting(V.value?.name??``)),be=p(()=>M.getSelectedNodes.value.map(e=>e.id)),xe=p(()=>A.isNdvInFocusPanelEnabled?d.baseText(`nodeView.focusPanel.v2.noParameters.title`):d.baseText(`nodeView.focusPanel.noParameters.title`)),we=p(()=>A.isNdvInFocusPanelEnabled?d.baseText(`nodeView.focusPanel.v2.noParameters.subtitle`):d.baseText(`nodeView.focusPanel.noParameters.subtitle`)),{resolvedExpression:Te}=rt({expression:he,additionalData:_e,stringifyObject:I.value&&I.value.parameter.type!==`multiOptions`});function Ee(e){I.value!==void 0&&k.updateNodeParameter(r(I.value.node.parameters),{value:e,name:I.value.parameterPath},e,I.value.node,fe.value)}async function De(){await _(),u.value&&(ke(u.value)?u.value.focusOnInput():Me(u.value)&&u.value.focus()),l(`focus`)}function je(e){if(I.value)switch(e){case`resetValue`:typeof I.value.parameter.default==`string`&&Ee(I.value.parameter.default),De();break;case`addExpression`:{let e=ot(I.value.value,I.value.parameter.type);Ee(typeof e==`string`?e:e.value),De();break}case`removeExpression`:{let e=ut(I.value.value,Te.value,I.value.parameter.type,I.value.parameter.default,(I.value.parameter.options??[]).filter(dt));typeof e==`string`?Ee(e):e&&typeof e.value==`string`&&Ee(e.value),De();break}case`formatHtml`:Se.emit(`format-html`);break}}function Pe(){if((A.isNdvInFocusPanelEnabled||E.isFeatureEnabled)&&I.value){g.unsetParameters(),O.track(`User removed focused param`,{source:`closeIcon`,parameters:g.focusedNodeParametersInTelemetryFormat});return}O.track(`User closed focus panel`,{source:`closeIcon`,parameters:g.focusedNodeParametersInTelemetryFormat}),g.closeFocusPanel()}function Re(){O.track(`User executed node from focus panel`,g.focusedNodeParametersInTelemetryFormat[0])}function X(e){L.value=e,Ee(e)}function Be(){setTimeout(()=>{De()},50)}w([()=>g.lastFocusTimestamp,()=>me.value],()=>Be()),w(()=>I.value,e=>{if(e){let t=e.value;typeof t==`string`&&t!==L.value&&(L.value=t)}},{immediate:!0});function Ve(){V.value&&j.setActiveNodeName(V.value.name,`focus_panel`)}function He(e){V.value&&P(V.value.name,e)}return(r,o)=>(e(),a(`div`,{"data-test-id":`focus-panel`,class:x([r.$style.content,{[r.$style.isNdvInFocusPanelEnabled]:v(A).isNdvInFocusPanelEnabled}])},[v(A).isNdvInFocusPanelEnabled&&V.value&&!H.value?(e(),N(Jn,{key:0,node:V.value,parameter:I.value?.parameter,"is-executable":re.value,"read-only":n.isCanvasReadOnly,onExecute:Re,onOpenNdv:Ve,onClearParameter:Pe,onRenameNode:He},null,8,[`node`,`parameter`,`is-executable`,`read-only`])):h(``,!0),I.value?(e(),a(`div`,{key:1,class:x(r.$style.content),"data-test-id":`focus-parameter`},[v(A).isNdvInFocusPanelEnabled?h(``,!0):(e(),a(`div`,{key:0,class:x(r.$style.tabHeader)},[i(`div`,{class:x(r.$style.tabHeaderText)},[D(v(W),{color:`text-dark`,size:`small`},{default:F(()=>[t(m(I.value.parameter.displayName),1)]),_:1}),D(v(W),{color:`text-base`,size:`xsmall`},{default:F(()=>[t(m(I.value.node.name),1)]),_:1})],2),i(`div`,{class:x(r.$style.buttonWrapper)},[D(Xt,{"data-test-id":`node-execute-button`,"node-name":I.value.node.name,tooltip:`Execute ${I.value.node.name}`,disabled:!re.value,size:`small`,icon:`play`,square:!0,"hide-label":!0,"telemetry-source":`focus`,onExecute:Re},null,8,[`node-name`,`tooltip`,`disabled`]),D(v(U),{class:x(r.$style.closeButton),icon:`x`,color:`text-base`,size:`xlarge`,onClick:Pe},null,8,[`class`])],2)],2)),i(`div`,{class:x(r.$style.parameterDetailsWrapper)},[i(`div`,{class:x(r.$style.parameterOptionsWrapper)},[i(`div`,{class:x(r.$style.noExecutionDataTip)},[!oe.value&&!Y.value?(e(),N(v(ae),{key:0,class:x(r.$style.delayedShow),bold:!0},{default:F(()=>[t(m(v(d).baseText(`nodeView.focusPanel.noExecutionData`)),1)]),_:1},8,[`class`])):h(``,!0)],2),v(B)?(e(),N(at,{key:0,parameter:I.value.parameter,value:I.value.value,"is-read-only":q.value,"onUpdate:modelValue":je},null,8,[`parameter`,`value`,`is-read-only`])):h(``,!0)],2),typeof I.value.value==`string`?(e(),a(`div`,{key:0,class:x(r.$style.editorContainer)},[v(B)?me.value?(e(),N($e,{key:1,ref_key:`inputField`,ref:u,modelValue:L.value,"onUpdate:modelValue":o[0]||=e=>L.value=e,class:x(r.$style.editor),"is-read-only":q.value,path:I.value.parameterPath,"data-test-id":`expression-modal-input`,"target-node-parameter-context":J.value,onChange:o[1]||=e=>X(e.value)},null,8,[`modelValue`,`class`,`is-read-only`,`path`,`target-node-parameter-context`])):[`json`,`string`].includes(I.value.parameter.type)?(e(),a(b,{key:2},[ue.value===`codeNodeEditor`?(e(),N(tt,{key:0,id:I.value.parameterPath,ref_key:`inputField`,ref:u,modelValue:L.value,"onUpdate:modelValue":[o[2]||=e=>L.value=e,X],class:x(r.$style.heightFull),mode:le.value,"default-value":I.value.parameter.default,language:de.value,"is-read-only":q.value,"target-node-parameter-context":J.value,"fill-parent":``,"disable-ask-ai":!0},null,8,[`id`,`modelValue`,`class`,`mode`,`default-value`,`language`,`is-read-only`,`target-node-parameter-context`])):ue.value===`htmlEditor`?(e(),N(et,{key:1,ref_key:`inputField`,ref:u,modelValue:L.value,"onUpdate:modelValue":[o[3]||=e=>L.value=e,X],"is-read-only":q.value,rows:G.value,"disable-expression-coloring":!K.value,"disable-expression-completions":!K.value,fullscreen:``,"target-node-parameter-context":J.value},null,8,[`modelValue`,`is-read-only`,`rows`,`disable-expression-coloring`,`disable-expression-completions`,`target-node-parameter-context`])):ue.value===`cssEditor`?(e(),N(st,{key:2,ref_key:`inputField`,ref:u,modelValue:L.value,"onUpdate:modelValue":[o[4]||=e=>L.value=e,X],"is-read-only":q.value,rows:G.value,fullscreen:``,"target-node-parameter-context":J.value},null,8,[`modelValue`,`is-read-only`,`rows`,`target-node-parameter-context`])):ue.value===`sqlEditor`?(e(),N(ct,{key:3,ref_key:`inputField`,ref:u,modelValue:L.value,"onUpdate:modelValue":[o[5]||=e=>L.value=e,X],dialect:ce(`sqlDialect`),"is-read-only":q.value,rows:G.value,fullscreen:``,"target-node-parameter-context":J.value},null,8,[`modelValue`,`dialect`,`is-read-only`,`rows`,`target-node-parameter-context`])):ue.value===`jsEditor`?(e(),N(nt,{key:4,ref_key:`inputField`,ref:u,modelValue:L.value,"onUpdate:modelValue":[o[6]||=e=>L.value=e,X],"is-read-only":q.value,rows:G.value,"posthog-capture":ge.value,"fill-parent":``},null,8,[`modelValue`,`is-read-only`,`rows`,`posthog-capture`])):I.value.parameter.type===`json`?(e(),N(zt,{key:5,ref_key:`inputField`,ref:u,modelValue:L.value,"onUpdate:modelValue":[o[7]||=e=>L.value=e,X],"is-read-only":q.value,rows:G.value,fullscreen:``,"fill-parent":``},null,8,[`modelValue`,`is-read-only`,`rows`])):(e(),N(v(pe),{key:6,ref_key:`inputField`,ref:u,modelValue:L.value,"onUpdate:modelValue":[o[8]||=e=>L.value=e,X],class:x(r.$style.editor),readonly:q.value,type:`textarea`,resize:`none`},null,8,[`modelValue`,`class`,`readonly`]))],64)):h(``,!0):(e(),a(`div`,{key:0,class:x([r.$style.content,r.$style.emptyContent])},[i(`div`,{class:x(r.$style.emptyText)},[D(v(W),{color:`text-base`},{default:F(()=>[t(m(v(d).baseText(`nodeView.focusPanel.missingParameter`)),1)]),_:1})],2)],2))],2)):h(``,!0)],2)],2)):V.value&&v(A).isNdvInFocusPanelEnabled?(e(),N(qn,{key:2,node:V.value,"node-ids":be.value,"is-read-only":q.value,onOpenNdv:Ve,onContextMenuAction:o[9]||=(e,t)=>l(`contextMenuAction`,e,t)},null,8,[`node`,`node-ids`,`is-read-only`])):(e(),a(`div`,{key:3,class:x([r.$style.content,r.$style.emptyContent])},[i(`div`,{class:x(r.$style.focusParameterWrapper)},[i(`div`,{class:x(r.$style.iconWrapper)},[D(v(U),{class:x(r.$style.forceHover),icon:`panel-right`,size:`medium`},null,8,[`class`]),D(v(U),{class:x(r.$style.pointerIcon),icon:`mouse-pointer`,color:`text-dark`,size:`large`},null,8,[`class`])],2),D(v(U),{icon:`ellipsis-vertical`,size:`small`,color:`text-base`}),D(v(se),{size:`small`,"model-value":`expression`,disabled:!0,options:[{label:v(d).baseText(`parameterInput.fixed`),value:`fixed`},{label:v(d).baseText(`parameterInput.expression`),value:`expression`}]},null,8,[`options`])],2),i(`div`,{class:x(r.$style.emptyText)},[D(v(W),{color:`text-base`,size:`medium`,bold:!0},{default:F(()=>[t(m(xe.value),1)]),_:1}),D(v(W),{color:`text-base`,size:`small`},{default:F(()=>[t(m(we.value),1)]),_:1})],2)],2))],2))}}),[[`__cssModules`,{$style:{content:`_content_1jm1d_125`,emptyContent:`_emptyContent_1jm1d_131`,isNdvInFocusPanelEnabled:`_isNdvInFocusPanelEnabled_1jm1d_136`,emptyText:`_emptyText_1jm1d_139`,focusParameterWrapper:`_focusParameterWrapper_1jm1d_145`,iconWrapper:`_iconWrapper_1jm1d_152`,pointerIcon:`_pointerIcon_1jm1d_156`,tabHeader:`_tabHeader_1jm1d_166`,tabHeaderText:`_tabHeaderText_1jm1d_173`,buttonWrapper:`_buttonWrapper_1jm1d_178`,parameterDetailsWrapper:`_parameterDetailsWrapper_1jm1d_183`,parameterOptionsWrapper:`_parameterOptionsWrapper_1jm1d_190`,noExecutionDataTip:`_noExecutionDataTip_1jm1d_194`,editorContainer:`_editorContainer_1jm1d_197`,editor:`_editor_1jm1d_197`,delayedShow:`_delayedShow_1jm1d_213`,triggerShow:`_triggerShow_1jm1d_1`,closeButton:`_closeButton_1jm1d_224`,heightFull:`_heightFull_1jm1d_228`,forceHover:`_forceHover_1jm1d_232`}}]]),Xn={key:0},Zn=J(u({name:`FocusSidebar`,__name:`FocusSidebar`,props:{isCanvasReadOnly:{type:Boolean}},emits:[`contextMenuAction`],setup(t,{emit:r}){let o=r,s=k(`wrapper`),c=en(),l=ye(),u=Ae(),d=Ut(),f=Kt(),m=Ie(),g=le(),_=Ce(c.value),ee=B();Zt({view_shown:`focus_panel`});let{selectedTab:y}=It(l),b=p(()=>l.focusPanelActive),S=p(()=>l.focusPanelWidth),C=p(()=>l.resolvedParameter),E=p(()=>f.isFeatureEnabled),O=p(()=>f.isFeatureEnabled&&y.value===`setup`),A=p(()=>{if(!d.isNdvInFocusPanelEnabled||C.value)return C.value?.node;let e=_.getSelectedNodes.value[0];return e?.data?.render.type===Oe.Default?(u?.value?.allNodes??[]).find(t=>t.id===e.id):void 0}),j=p(()=>{let e=C.value?.parameter.displayName??A.value?.name;return e?{focus:e}:void 0});function M(e){e.key===`s`&&g.isCtrlKeyPressed(e)&&(e.stopPropagation(),e.preventDefault())}let I=()=>{document.addEventListener(`keydown`,M,!0)},L=()=>{document.removeEventListener(`keydown`,M,!0)};w(()=>l.focusPanelActive,e=>{e?I():L()},{immediate:!0}),w(ee,e=>{if(!A.value||!e||!s.value?.contains(e))return;let t=e.closest(`.parameter-input`)?.getAttribute(`data-parameter-path`);t&&m.track(`User focused focus panel`,{node_id:A.value.id,node_type:A.value.type,parameter_path:t})});function z(e){l.updateWidth(e.width)}let ne=R(z,10);function H(e,t){o(`contextMenuAction`,e,t)}return te(()=>{L()}),(r,o)=>b.value?(e(),a(`div`,{key:0,ref:`wrapper`,"data-test-id":`focus-sidebar`,class:x([r.$style.wrapper,`ignore-key-press-canvas`,{[r.$style.isNdvInFocusPanelEnabled]:v(d).isNdvInFocusPanelEnabled}]),onKeydown:o[1]||=T(()=>{},[`stop`])},[D(v(V),{width:S.value,"supported-directions":[`left`],"min-width":E.value?420:300,"max-width":v(d).isNdvInFocusPanelEnabled?void 0:1e3,"grid-size":8,style:P({width:`${S.value}px`}),onResize:v(ne)},{default:F(()=>[i(`div`,{class:x(r.$style.container)},[E.value?(e(),a(`div`,Xn,[D(An,{modelValue:v(y),"onUpdate:modelValue":o[0]||=e=>n(y)?y.value=e:null,"tab-labels":j.value},null,8,[`modelValue`,`tab-labels`])])):h(``,!0),O.value?(e(),a(`div`,{key:1,class:x(r.$style[`setup-panel-wrapper`])},[D(Kn)],2)):(e(),N(Yn,{key:2,"is-canvas-read-only":t.isCanvasReadOnly,onContextMenuAction:H},null,8,[`is-canvas-read-only`]))],2)]),_:1},8,[`width`,`min-width`,`max-width`,`style`,`onResize`])],34)):h(``,!0)}}),[[`__cssModules`,{$style:{wrapper:`_wrapper_1ek2u_125`,container:`_container_1ek2u_137`,"setup-panel-wrapper":`_setup-panel-wrapper_1ek2u_143`}}]]),Qn=u({__name:`CanvasStopCurrentExecutionButton`,props:{stopping:{type:Boolean},size:{}},setup(t){let n=t,r=z(),i=p(()=>n.stopping?r.baseText(`nodeView.stoppingCurrentExecution`):r.baseText(`nodeView.stopCurrentExecution`));return(n,r)=>(e(),N(v(oe),{variant:`subtle`,icon:`square`,size:t.size??`large`,class:`stop-execution`,title:i.value,loading:t.stopping,"data-test-id":`stop-execution-button`},null,8,[`size`,`title`,`loading`]))}}),$n=u({__name:`CanvasStopWaitingForWebhookButton`,props:{size:{}},setup(t){let n=t,r=z();return(t,i)=>(e(),N(v(oe),{variant:`subtle`,class:`stop-execution`,icon:`square`,size:n.size??`large`,title:v(r).baseText(`nodeView.stopWaitingForWebhookCall`),"data-test-id":`stop-execution-waiting-for-webhook-button`},null,8,[`size`,`title`]))}}),er={"data-action":`reload`},tr={href:`https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/`,target:`_blank`},nr=u({__name:`NodeViewUnfinishedWorkflowMessage`,setup(n){let r=z();return(n,o)=>(e(),a(`div`,null,[i(`a`,er,m(v(r).baseText(`nodeView.refresh`)),1),t(` `+m(v(r).baseText(`nodeView.toSeeTheLatestStatus`))+`. `,1),o[0]||=i(`br`,null,null,-1),i(`a`,tr,m(v(r).baseText(`nodeView.moreInfo`)),1)]))}}),rr=u({__name:`CanvasChatButton`,props:{label:{},variant:{}},setup(t){return(n,r)=>(e(),N(v(G),{label:t.label,size:`large`,icon:`message-circle`,variant:t.variant,"data-test-id":`workflow-chat-button`},null,8,[`label`,`variant`]))}});function ir(){let e=nn(),t=I(()=>{e.recordActivity()},xt(Ct.COLLABORATION.ACTIVITY)),n=[`mousedown`,`keydown`,`touchstart`],r=()=>{n.forEach(e=>{document.addEventListener(e,t,{passive:!0})})},i=()=>{n.forEach(e=>{document.removeEventListener(e,t)})};return w(()=>e.isCurrentTabWriter,e=>{e?r():i()}),ee(()=>{e.isCurrentTabWriter&&r()}),y(()=>{i()}),{recordActivity:t}}var ar=J(u({name:`NodeView`,__name:`NodeView`,setup(n){let r=l(async()=>await _e(()=>import(`./NodeCreation-BwR7_DtW.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33]))),i=l(async()=>await _e(()=>import(`./NodeDetailsView-DPMnYQmG.js`),__vite__mapDeps([34,1,3,2,4,5,6,7,8,9,10,11,12,35,36,13,14,15,16,17,18,19,20,21,37,38,39,40,41,42,28,29,30,43,44,45,46,47,48,26,49,50,51,52,53,54,55,56,24,25,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,32,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,27,95,96,97,98,99,100,101,102,103,104,105,106,107,108]))),s=l(async()=>await _e(()=>import(`./NodeDetailsViewV2-DhE9I5uU.js`),__vite__mapDeps([109,1,2,3,4,5,6,7,8,9,10,11,12,35,36,13,14,15,16,17,18,19,20,21,37,38,39,40,41,42,28,29,30,43,44,45,46,47,48,26,49,50,51,52,53,54,55,56,24,25,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,32,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,27,95,110,96,97,98,99,100,101,102,103,104,105,106,107,111]))),u=l(async()=>await _e(()=>import(`./SetupWorkflowCredentialsButton-BqsQXgwD.js`),__vite__mapDeps([112,2,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,50,113,114,26]))),d=S(),f=me(),g=fe(),y=z(),C=Ie(),T=be(),E=Te(),O=xe(),A=De(),j=Qe({router:f,onSaved:e=>{Q.emit(`saved:workflow`,{isFirstSave:e})}}),P=ze(),I=Lt({onPaste:Or}),L=Ye(),R=Ue(),B=We(),ne=Ke(),V=He(),H=Ht(),re=Re(),ae=Ne(),oe=Je(),se=Ee(),ce=je(),le=qe(),U=Ve(),W=Le(),G=ye(),K=we(),pe=Qt(),ge=Wt(),q=Ut(),J=nn(),Se=On(),Ce=Rt(),ke=En(),Me=ve();ir();let{addBeforeUnloadEventBindings:Fe,removeBeforeUnloadEventBindings:Xe}=tn({route:g}),{registerCustomAction:$e,unregisterCustomAction:et}=hn(),{runWorkflow:tt,runEntireWorkflow:nt,stopCurrentExecution:rt,stopWaitingForWebhook:it}=$t({router:f}),{updateNodePosition:at,updateNodesPosition:ot,tidyUp:st,revertUpdateNodePosition:ct,renameNode:lt,revertRenameNode:ut,revertReplaceNodeParameters:dt,setNodeActive:bt,setNodeSelected:xt,toggleNodesDisabled:Ct,revertToggleNodeDisabled:Dt,toggleNodesPinned:Pt,setNodeParameters:It,deleteNode:zt,deleteNodes:Kt,copyNodes:Jt,cutNodes:Yt,duplicateNodes:Xt,revertDeleteNode:Zt,revertAddNode:on,createConnection:sn,revertCreateConnection:cn,deleteConnection:ln,revertDeleteConnection:un,revalidateNodeInputConnections:dn,revalidateNodeOutputConnections:pn,setNodeActiveByName:mn,clearNodeActive:gn,tryToOpenSubworkflowInNewTab:_n,importWorkflowData:yn,fetchWorkflowDataFromUrl:bn,resetWorkspace:xn,initializeWorkspace:Sn,editableWorkflow:Cn,editableWorkflowObject:Tn,lastClickPosition:Dn,startChat:An,addNodesAndConnections:jn,fitView:Mn}=Gt(),{extractWorkflow:Nn}=fn();wn({ctrl_alt_o:()=>R.openModal(ft)});let Pn=k(`canvas`),Fn=o(!0),In=o(null),Ln=o([]),$=en(),Rn=Ae(),zn=p(()=>{let e=g.params.nodeId;return Array.isArray(e)?e[0]:e}),Bn=p(()=>g.query.new===`true`),Vn=p(()=>g.query.hideControls===`true`),Hn=p(()=>g.name===Z.DEMO),Un=p(()=>!!g?.meta?.readOnlyCanvas),Wn=p(()=>V.preferences.branchReadOnly),Gn=p(()=>!0),Kn=p(()=>Hn.value||Wn.value||J.shouldBeReadOnly||!(mi.value.update??hi.value.workflow.update)||Cn.value.isArchived||K.streaming&&!K.isHelpStreaming),qn=p(()=>Hn.value||Cn.value.isArchived||K.streaming?!1:!!(mi.value.execute??hi.value.workflow.execute)),Jn=p(()=>J.isCurrentUserWriter&&!J.isCurrentTabWriter),Yn=p(()=>sr.value.length===0),Xn=p(()=>!W.activeNode&&R.activeModals.length===0),er=p(()=>ge.isOpen);function tr(){g.query.action===`addEvaluationTrigger`?H.openNodeCreatorForTriggerNodes(At.ADD_EVALUATION_TRIGGER_BUTTON):g.query.action===`addEvaluationNode`?H.openNodeCreatorForActions(Mt,At.ADD_EVALUATION_NODE_BUTTON):g.query.action===`executeEvaluation`&&Wi.value&&nt(`node`,Wi.value.name),Q.off(`saved:workflow`,ta),g.name===Z.EXECUTION_DEBUG&&Q.on(`saved:workflow`,ta),_(()=>{ar()})}function ar(){P.updateNodesInputIssues(),P.updateNodesCredentialsIssues(),P.updateNodesParameterIssues()}async function or(e){xn(),K.streaming?A.setDocumentTitle(e.name,`AI_BUILDING`):A.setDocumentTitle(e.name,`IDLE`),await Sn(e),T.run(`workflow.open`,{workflowId:e.id,workflowName:e.name}),Mn()}let sr=p(()=>Cn.value.nodes.filter(e=>L.isTriggerNode(e.type))),cr=p(()=>sr.value.length>0),lr=p(()=>sr.value.filter(e=>e.disabled).length===sr.value.length),ur=p(()=>sr.value.filter(e=>!e.disabled&&!Pe(e)).length>1&&B.selectedTriggerNodeName!==void 0);function dr(e,t){st(e,t)}function fr(e){Nn(e)}function pr(e){ot(e,{trackHistory:!0})}function mr(e,t){at(e,t,{trackHistory:!0})}function hr({nodeName:e,position:t}){ct(e,{x:t[0],y:t[1]})}function gr(e){let t=Ln.value.findIndex(t=>t.id===e);t>=0?Ln.value.splice(t,1):zt(e,{trackHistory:!0})}function _r(e){Kt(e)}function vr({node:e}){Zt(e)}function yr(e){Qi()&&Ct([e])}function br({nodeName:e}){Dt(e)}function xr(e){Qi()&&Ct(e)}function Sr(e,t){Dn.value=[t.x,t.y],ui()}function Cr(e,t){(t?.metaKey||t?.ctrlKey