n8n-editor-ui
Version:
Workflow Editor UI for n8n
2 lines • 12.9 kB
JavaScript
(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.13.4`}}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]=`79c24c3d-0acb-4fca-a08f-1723d652c01f`,e._sentryDebugIdIdentifier=`sentry-dbid-79c24c3d-0acb-4fca-a08f-1723d652c01f`)})()}catch{}import{Ft as e}from"./vue.runtime.esm-bundler-D9KLAxvJ.js";import{bt as t}from"./_MapCache-CUJwh2qp.js";import{$t as n,As as r,Dr as i,Et as a,G as o,Gr as s,Ki as c,Tr as l,Y as u,aa as d,at as f,b as p,cn as m,en as h,gn as g,ia as _,in as v,m as y,mn as b,na as x,oc as ee,r as S,s as C,ua as w,ui as T,vn as E,w as D,y as te,yn as ne}from"./users.store-BHWXXawf.js";import{Ao as re,Bo as ie,Za as ae,ec as O,pa as k,sa as A}from"./constants-CIP7tKq1.js";import{j,r as M}from"./_baseOrderBy-CaKruttV.js";import{t as N}from"./banners.store-D1XIK6Qv.js";import{t as P}from"./assistant.store-BOJw9cI0.js";import{t as F}from"./useCanvasOperations-CI7Ylcwf.js";import{i as I,t as L}from"./useRunWorkflow-BbbTafql.js";import{t as R}from"./pushConnection.store-L5aofOKN.js";import{t as z}from"./readyToRun.store-DpPozriV.js";import{t as B}from"./aiTemplatesStarterCollection.store-BmxR4DN8.js";async function V(e){m().updateBuilderCredits(e.data.creditsQuota,e.data.creditsClaimed)}async function H({data:e},t){let n=C(),r=s(),i=S(),a=B(),c=z();if(t.workflowState.executingNode.lastAddedExecutingNode=null,n.activeExecutionId===void 0)return;let l=h();y();let d=r.getWorkflowById(e.workflowId)?.meta?.templateId;d&&(d===o.EasyAiTemplate?l.track(`User executed test AI workflow`,{status:e.status}):d.startsWith(`035_template_onboarding`)?a.trackUserExecutedWorkflow(d.split(`-`).pop()??``,e.status):d===`ready-to-run-ai-workflow`||d===`ready-to-run-ai-workflow-v5`||d===`ready-to-run-ai-workflow-v6`?e.status===`success`?c.trackExecuteAiWorkflowSuccess():c.trackExecuteAiWorkflow(e.status):u(d)&&l.track(`User executed tutorial template`,{template:d,status:e.status})),i.setProcessingExecutionResults(!0);let f=!1;e.status===`success`&&(X(t.workflowState,e.status,f),f=!0);let p=await W(e.executionId);if(!p){t.workflowState.setActiveExecutionId(void 0),i.setProcessingExecutionResults(!1);return}let m=G(p);i.setProcessingExecutionResults(!1),p.data?.waitTill===void 0?p.status===`error`||p.status===`canceled`?J(p,m):X(t.workflowState,p.status,f):q(e.workflowId,t),Z(p,m,t.workflowState),U(p,t)}function U(e,t){if(e.status!==`success`||e.data?.startData?.destinationNode!==void 0)return;let n=e.workflowData.nodes.find(e=>e.type===re),r=n?e?.data?.resultData?.runData[n.name]:void 0;if(!n||r===void 0)return;let i=r[0]?.data?.main[0],a=i?i[0]?.json?._rowsLeft:0;if(a&&a>0){let{runWorkflow:e}=L(t);e({triggerNode:n.name,nodeData:r[0],rerunTriggerNode:!0})}}async function W(e){let t=C();try{let n=await t.fetchExecutionDataById(e);return n?.data?{id:e,workflowId:n.workflowId,workflowData:t.workflow,data:w(n.data),status:n.status,startedAt:t.workflowExecutionData?.startedAt,stoppedAt:new Date}:void 0}catch{return}}function G(e){return A({...e.data,startData:e.data?.startData,resultData:e.data?.resultData??{runData:{}},executionData:e.data?.executionData})}function K(e){let n=t();if(e.status===`crashed`)return n.baseText(`pushConnection.executionFailed.message`);if(e.status===`canceled`){let e=C();return n.baseText(`executionsList.showMessage.stopExecution.message`,{interpolate:{activeExecutionId:e.activeExecutionId??``}})}return te({error:e.data?.resultData.error,lastNodeExecuted:e.data?.resultData.lastNodeExecuted})}function q(e,t){let n=C(),i=r(),a=ne(t),o=n.workflowObject;if(!(((e?d(x(e)):void 0)?.settings??{}).saveManualExecutions??i.saveManualExecutions)){let e=S();b.emit(`registerGlobalLinkAction`,{key:`open-settings`,action:async()=>{n.isWorkflowSaved[n.workflowId]||await a.saveAsNewWorkflow(),e.openModal(O)}})}E().setDocumentTitle(o.name,`IDLE`)}function J(e,n){let r=l(),i=t(),o=h(),s=C(),c=E(),u=a(),f=s.workflowObject;if(c.setDocumentTitle(f.name,`ERROR`),n.resultData.error?.name===`ExpressionError`&&n.resultData.error.functionality===`pairedItem`){let e=n.resultData.error;u.getWorkflowDataToSave().then(t=>{let n={caused_by_credential:!1,error_message:e.description,error_title:e.message,error_type:e.context.type,node_graph_string:JSON.stringify(k(t,u.getNodeTypes()).nodeGraph),workflow_id:s.workflowId};if(e.context.nodeCause&&[`paired_item_no_info`,`paired_item_invalid_info`].includes(e.context.type)){let t=f.getNode(e.context.nodeCause);t&&(n.is_pinned=!!(s.workflowId?d(x(s.workflowId)):void 0)?.pinData?.[t.name],n.mode=t.parameters.mode,n.node_type=t.type,n.operation=t.parameters.operation,n.resource=t.parameters.resource)}o.track(`Instance FE emitted paired item error`,n)})}if(e.status===`canceled`)r.showMessage({title:i.baseText(`nodeView.showMessage.stopExecutionTry.title`),type:`success`});else if(e.data?.resultData.error){let{message:t,title:n}=p({error:e.data.resultData.error,lastNodeExecuted:e.data?.resultData.lastNodeExecuted});r.showMessage({title:n,message:t,type:`error`,duration:0}),m().incrementManualExecutionStats(`error`)}}function Y(e,t,n){let r=l();E().setDocumentTitle(e,`IDLE`),n.setActiveExecutionId(void 0),r.showMessage({title:t,type:`success`})}function X(e,n,r){let i=C(),a=l(),o=t(),s=D(),u=i.workflowObject.name??``;E().setDocumentTitle(u,`IDLE`);let d=i.getWorkflowExecution;if(d?.executedNode){let t=i.getNodeByName(d.executedNode),n=t&&s.getNodeType(t.type,t.typeVersion),l=d.data?.resultData?.runData?.[d.executedNode];n?.polling&&!l?a.showMessage({title:o.baseText(`pushConnection.pollingNode.dataNotFound`,{interpolate:{service:c(n)}}),message:o.baseText(`pushConnection.pollingNode.dataNotFound.message`,{interpolate:{service:c(n)}}),type:`success`}):r||Y(u,o.baseText(`pushConnection.nodeExecutedSuccessfully`),e)}else r||Y(u,o.baseText(`pushConnection.workflowExecutedSuccessfully`),e);n===`success`&&!r&&m().incrementManualExecutionStats(`success`)}function Z(e,t,r){let a=C(),o=n({workflowState:r}),s=K(e),c=a.getWorkflowExecution;if(r.executingNode.executingNode.length=0,c===null)return;r.setWorkflowExecutionData({...c,status:e.status,id:e.id,stoppedAt:e.stoppedAt}),a.setWorkflowExecutionRunData(t),r.setActiveExecutionId(void 0),o.updateNodesExecutionIssues();let l=t.resultData.lastNodeExecuted,u=0;l&&t.resultData.runData[l]&&!s&&(u=t.resultData.runData[l][0].data?.main[0]?.length??0),r.setActiveExecutionId(void 0),i().run(`pushConnection.executionFinished`,{itemsCount:u,nodeName:t.resultData.lastNodeExecuted,errorMessage:s,runDataExecutedStartData:t.startData,resultDataError:t.resultData.error});let d=t.resultData?.error?.lineNumber;g.emit(`highlightLine`,d??`last`)}async function oe({data:e},t){let n=C(),r=S();if(n.activeExecutionId===void 0)return;r.setProcessingExecutionResults(!0);let i=await W(e.executionId);if(!i){r.setProcessingExecutionResults(!1);return}let a=G(i);r.setProcessingExecutionResults(!1),i.data?.waitTill===void 0?i.status===`error`||i.status===`canceled`?J(i,a):X(t.workflowState,i.status,!1):q(i.workflowId??``,t),Z(i,a,t.workflowState)}async function se({data:e},t){let n=C();n.activeExecutionId!==void 0&&(n.activeExecutionId===null&&t.workflowState.setActiveExecutionId(e.executionId),n.workflowExecutionData?.data&&e.flattedRunData&&(n.workflowExecutionData.data.resultData.runData=w(e.flattedRunData)))}async function ce(e){let t=D(),n=f();await t.getNodeTypes(),await n.fetchCredentialTypes(!0)}async function le({data:e},{workflowState:t}){let n=C(),r=P(),i={main:[]};if(e.itemCountByConnectionType&&typeof e.itemCountByConnectionType==`object`){let t={json:{[ie]:!0}};for(let[n,r]of Object.entries(e.itemCountByConnectionType))T(n)&&(i[n]=r.map(e=>Array.from({length:e},()=>t)))}let a={...e,data:{...e.data,data:i}};n.updateNodeExecutionStatus(a),t.executingNode.removeExecutingNode(e.nodeName),r.onNodeExecution(e)}async function ue({data:e}){let t=C(),n=I();t.updateNodeExecutionRunData(e),n.trackSchemaPreviewExecution(e)}async function de({data:e},{workflowState:t}){let n=C();t.executingNode.addExecutingNode(e.nodeName),n.addNodeExecutionStartedData(e)}async function fe({data:e}){let t=D();await t.getNodeTypes();let n=ae(e.name);await t.getFullNodesProperties([e],!n)}async function pe({data:e}){let t=D(),n=f(),r=[e];await n.fetchCredentialTypes(!1).then(()=>{t.removeNodeTypes(r)})}async function me({data:e}){console.log(e.source,...e.messages)}const Q=100;var he=120*1e3;const $=j(`orchestrationManager`,{state:()=>({initialStatusReceived:!1,workers:{},workersHistory:{},workersLastUpdated:{},statusInterval:null}),actions:{updateWorkerStatus(e){this.workers[e.senderId]=e,this.workersHistory[e.senderId]||(this.workersHistory[e.senderId]=[]),this.workersHistory[e.senderId].push({data:e,timestamp:Date.now()}),this.workersHistory[e.senderId].length>100&&this.workersHistory[e.senderId].shift(),this.workersLastUpdated[e.senderId]=Date.now(),this.initialStatusReceived=!0},removeStaleWorkers(){for(let e in this.workersLastUpdated)this.workersLastUpdated[e]+he<Date.now()&&(delete this.workers[e],delete this.workersHistory[e],delete this.workersLastUpdated[e])},startWorkerStatusPolling(){let e=M();this.statusInterval||=setInterval(async()=>{await ee(e.restApiContext),this.removeStaleWorkers()},1e3)},stopWorkerStatusPolling(){this.statusInterval&&=(clearInterval(this.statusInterval),null)},getWorkerLastUpdated(e){return this.workersLastUpdated[e]??0},getWorkerStatus(e){return this.workers[e]},getWorkerStatusHistory(e){return this.workersHistory[e]??[]}}});async function ge({data:e}){$().updateWorkerStatus(e.status)}async function _e({data:e},t){let n=C();e.workflowId===n.workflowId&&(n.executionWaitingForWebhook=!1,t.workflowState.setActiveExecutionId(void 0))}async function ve({data:e},t){let n=C();e.workflowId===n.workflowId&&(n.executionWaitingForWebhook=!1,t.workflowState.setActiveExecutionId(e.executionId??null))}async function ye({data:e}){let{initializeWorkspace:t}=F(),n=C(),r=s(),i=_(),a=N(),o=S(),{workflowId:c,activeVersionId:l}=e,u=n.workflowId===c,d=i?.value?.activeVersionId!==l;if(u&&d&&!o.stateIsDirty){let e=await r.fetchWorkflow(c);if(!e.checksum)throw Error(`Failed to fetch workflow`);await t(e)}u&&a.removeBannerFromStack(`WORKFLOW_AUTO_DEACTIVATED`)}async function be({data:e}){let t=C(),n=s(),r=_(),{initializeWorkspace:i}=F(),a=N(),o=S();if(t.setWorkflowInactive(e.workflowId),t.workflowId===e.workflowId){if(o.stateIsDirty)r?.value?.setActiveState({activeVersionId:null,activeVersion:null});else{let t=await n.fetchWorkflow(e.workflowId);if(!t.checksum)throw Error(`Failed to fetch workflow`);await i(t)}a.pushBannerToStack(`WORKFLOW_AUTO_DEACTIVATED`)}}async function xe({data:e}){let{initializeWorkspace:t}=F(),n=C(),r=s(),i=_(),a=S();if(n.workflowId===e.workflowId)if(a.stateIsDirty)i?.value?.setActiveState({activeVersionId:null,activeVersion:null});else{let n=await r.fetchWorkflow(e.workflowId);if(!n.checksum)throw Error(`Failed to fetch workflow`);await t(n)}}async function Se({data:e},n){let r=C(),i=_();if(r.workflowId!==e.workflowId)return;r.setWorkflowInactive(e.workflowId),i?.value?.setActiveState({activeVersionId:null,activeVersion:null});let a=l(),o=t();a.showError(Error(e.errorMessage),o.baseText(`workflowActivator.showError.title`,{interpolate:{newStateName:`activated`}})+`:`)}function Ce(e){let t=[],n=!1;async function r(){if(n||t.length===0)return;n=!0;let i=t.shift();if(i!==void 0)try{await e(i)}catch(e){console.error(`Error processing event:`,e)}n=!1,await r()}function i(e){t.push(e),r()}return{enqueue:i}}function we({router:t,workflowState:n}){let r=R(),i={router:t,workflowState:n??v()},{enqueue:a}=Ce(l),o=e(null);function s(){o.value=r.addEventListener(e=>{a(e)})}function c(){typeof o.value==`function`&&o.value()}async function l(e){switch(e.type){case`testWebhookDeleted`:return await _e(e,i);case`testWebhookReceived`:return await ve(e,i);case`reloadNodeType`:return await fe(e);case`removeNodeType`:return await pe(e);case`nodeDescriptionUpdated`:return await ce(e);case`nodeExecuteBefore`:return await de(e,i);case`nodeExecuteAfter`:return await le(e,i);case`nodeExecuteAfterData`:return await ue(e);case`executionStarted`:return await se(e,i);case`sendWorkerStatusMessage`:return await ge(e);case`sendConsoleMessage`:return await me(e);case`workflowFailedToActivate`:return await Se(e,i);case`executionFinished`:return await H(e,i);case`executionRecovered`:return await oe(e,i);case`workflowActivated`:return await ye(e);case`workflowDeactivated`:return await xe(e);case`workflowAutoDeactivated`:return await be(e);case`updateBuilderCredits`:return await V(e)}}return{initialize:s,terminate:c}}export{Q as n,$ as r,we as t};
//# sourceMappingURL=usePushConnection-DNqura4v.js.map