1import{d as e,u as a,a as t,b as s,c as n,e as r,f as o,E as u,w as c,g as i,h as l,i as m,j as p,k as d,v,l as h,m as f,n as y,F as g,_,o as C,r as A,p as w,q as S,s as F,t as N,x as P,y as O,z as j,A as I,B as D,C as q}from"./index-A08jWZ_U.js";import{l as E}from"./connectorRegistry-CYvwlnBf.js";import{u as T}from"./useConnectorClose-DypgAxqq.js";import{_ as R}from"./VesselRackLoader.vue_vue_type_script_setup_true_lang-DTkdVnED.js";import{V as L}from"./vesselContext-LsNuK-vM.js";import{r as M,v as b}from"./useVesselPageLoading-5F7Evgrz.js";import{u as k}from"./useDataSource-HZHgW_FS.js";import{C as x,A as G}from"./connectionService-r5BLbvpq.js";import{i as B,g as V}from"./multiAuthConnectors-BtWdIpcZ.js";import{t as $}from"./functionUtils-Jm59pyPn.js";import"./formConfigBuilder-3tDhBe8q.js";import"./useFormValidation-BtL9rx_j.js";import"./conditionEvaluator-Dkcz2BPP.js";import"./useParameterizedConnectorJourney-CUCXfiLK.js";import"./useFormLoadingState-DbuRus5-.js";import"./userManagementStore-DZZvAfXX.js";const z=e({__name:"ConnectorGenerator",setup(e){const z=S(),J=F(),U=C(()=>J.matched.length>1),H=a(),{setOpenConnector:K,setConnectorOpenedFromCategoryList:Q}=H,W=t(),{setConnectorPayload:X}=W,Y=s(),Z=n(),{closeConnectorGeneratorOverlay:ee}=T(),ae=r(),{showMessage:te}=o({category:u.CONNECTOR}),se=async e=>{await ee({isSuccess:e,formTitle:ne.value.formTitle,formName:ne.value.formName}),Q(!1)},ne=A({formId:"",formName:"",formTitle:"",defaultStep:"",steps:[]}),re=C(()=>{const e=z.currentRoute.value.params.connector;return Array.isArray(e)?e[0]:e}),oe=C(()=>Z.currentProject??null),ue=C(()=>{const e=z.currentRoute.value.params.type;return(Array.isArray(e)?e[0]:e)||"source"}),ce=C(()=>B(re.value)),ie=C(()=>"true"===J.query.reuseAccount),le=C(()=>"setup"===(J.query.step??ne.value.defaultStep)),me=A([]),pe=A(!1),de=A(!0),ve=A(null),{loadData:he}=k();M(pe),M(de);const fe=async()=>{try{const e=J.query.step??ne.value.defaultStep,a=ne.value.steps?.find(a=>a.stepId===e);if(a?.dataSources&&Object.keys(a.dataSources).length>0){const{sources:e}=await he(a.dataSources);ve.value=e}else ve.value=null}catch(e){ve.value=null}},ye=async()=>{pe.value=!0;try{const e=j(re.value),{id:a}=oe.value||{},t=await x.getConnections(e,a,ue.value);me.value=(t.accountConnections??[]).sort((e,a)=>new Date(a.created_at??0).getTime()-new Date(e.created_at??0).getTime()),ge.value={columns:t.columns??[],rows:t.rows??[]}}catch(e){te(e,I.CONNECTOR,{message:D.CONNECTOR_LOADING_FAILED})}finally{pe.value=!1}};c(()=>J.query,e=>{if(ce.value&&"connectorGenerator"===J.name)if(e.manageAuth)z.replace({name:"createManageAuthPage",params:J.params,query:{expand:String(e.manageAuth)}});else{if("add"===e.authFlow){const a="true"===e.authFlowFailed?{failed:"true"}:{status:"success"};return"true"===e.closeOnDone&&(a.closeOnDone="true"),void z.replace({name:"createAddAuthPage",params:J.params,query:a})}if("reauth"===e.authFlow){const a={authFlow:"reauth"};return e.auth_account_id&&(a.auth_account_id=String(e.auth_account_id)),"true"===e.authFlowFailed&&(a.authFlowFailed="true"),void z.replace({name:"createManageAuthPage",params:J.params,query:a})}if("setup"!==e.step&&"true"!==e.reuseAccount)if("auth-failed"!==e.step){if("authentication"===e.step){const a={};return e.authed&&(a.authed=String(e.authed)),e.status&&(a.status=String(e.status)),void z.replace({name:"createAuthPage",params:J.params,query:a})}z.replace({name:"createAuthPage",params:J.params,query:{}})}else z.replace({name:"createAuthPage",params:J.params,query:{failed:"true"}});else z.replace({name:"createSetupPage",params:J.params,query:{}})}},{immediate:!0});const ge=A({columns:[],rows:[]}),_e=C(()=>new Map),Ce=A(null),Ae=C(()=>new Map);q(L,{connectorName:re,connectorType:ue,formConfig:ne,connectionData:ge,accountConnections:me,isLoadingConnections:pe,preloadedFirstStepSources:ve,instanceAuthErrors:_e,resolveSuccessInstanceId:Ce,switchAuthByInstance:Ae,openConnection:()=>{},onResolveInstance:()=>{},onInstanceSwitchAuthentication:()=>{},handleDeleteConnection:async()=>{},openManageAuth:()=>{z.push({name:"createManageAuthPage",params:J.params})},onAddNewAuthentication:()=>{z.push({name:"createAddAuthPage",params:J.params,query:{closeOnDone:"true"}})},onInstanceAccountSelect:(e,a)=>{X(e?{auth_account_id:e.auth_account_id,account_identifier:e.name,...a?.userInitiated?{[G]:!0}
1:{}}:{auth_account_id:void 0,account_identifier:void 0,[G]:!1})},loadConnectionInstances:ye,completeVesselFlow:async e=>{e&&!ae.isPipelineFlow?(W.clearFormPayloadAndSetConnectionInstancesId(),H.resetEditState(),z.push({name:"connectorManage",params:{type:ue.value,connector:re.value}})):await se(e)}});const we=async(e=!1)=>{e&&"datahash-api"==re.value&&"connectorGenerator"==z.currentRoute.value.name&&await Se(),se(!1)},Se=async()=>{try{const e={endpoint:"/deleteSourceSetup",method:"post",version:"v2",payload:{cp_id:oe.value?.id,id:W?.formResponses?.sourceDefaultSchemas?.id}};await P(e,e.payload)}catch(e){}},Fe=async()=>{try{H.resetEditState(),H.setShowCloseOnInitialEdit(!1),ne.value=await E(re.value),Ne()}catch(e){te(e,I.CONNECTOR,{message:D.CONNECTOR_LOADING_FAILED})}},Ne=()=>{const e=j(re.value);K(e,ne.value?.formName||"");const{id:a,name:t}=oe.value||{};X({sub_type:e,cp_id:a,project_name:t,firstName:Y.userInfo?.userDetails?.firstName||"",auth_account_id:void 0,account_identifier:void 0})},Pe=C(()=>ae.isPipelineFlow&&ae.pipelineSteps?O({isPipelineFlow:!0,stepperSchema:{steps:ae.pipelineSteps,labelPosition:"right",showStepsNumber:!0,clickable:!1}},se).value:O({label:je.value},se).value),Oe=C(()=>{const e=ne.value.formTitle,a=ne.value.dynamicFormTitle;if(!a)return e;return[...a.matchAll(/\{([^}]+)\}/g)].every(([,e])=>Boolean(W.formPayloads?.[e]))?a.replace(/\{([^}]+)\}/g,(e,a)=>$(String(W.formPayloads?.[a]))):e}),je=C(()=>{if("createManageAuthPage"===J.name){const e=V(re.value)?.displayName||ne.value.formName||"",a=W.formPayloads?.crm_type;return`Manage Authentication - ${e}${a?` - ${$(String(a))}`:""}`.trim()}return Oe.value});return c(re,async()=>{if(!ce.value)return Fe(),void(ie.value&&ye());de.value=!0,await Fe();const e=[fe(),ye()];await Promise.all(e),de.value=!1},{immediate:!0}),c(le,async(e,a)=>{if(ce.value&&e&&!a){de.value=!0;try{await ye()}finally{de.value=!1}}}),(e,a)=>{const t=w("router-view"),s=w("FormGenerator"),n=w("OverlayBox");return N(),i(n,{onClose:se,isFirstLevelChild:!1},{header:l(()=>[y(_,{schema:Pe.value,onActionClick:we},null,8,["schema"])]),body:l(()=>[U.value?(N(),m(g,{key:0},[ce.value?(N(),i(R,{key:0,"fallback-text":"Loading authentication..."})):p("",!0),d(f("div",null,[y(t)],512),[[v,!(ce.value&&h(b))]])],64)):ne.value.steps?.length?(N(),i(s,{key:1,"form-config":ne.value,"first-step-data-sources":ve.value,"loader-centered":ce.value,class:"mt-6",onClose:se},null,8,["form-config","first-step-data-sources","loader-centered"])):p("",!0)]),_:1})}}});
1export{z as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.