1(function(){try{var k=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},L=new k.Error().stack;L&&(k._sentryDebugIds=k._sentryDebugIds||{},k._sentryDebugIds[L]="b1069145-e91c-42a4-8e29-596737dd3822",k._sentryDebugIdIdentifier="sentry-dbid-b1069145-e91c-42a4-8e29-596737dd3822")}catch{}})();var _global=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};_global.SENTRY_RELEASE={id:"6b3b5bcd49ac3ca4e22832378da81add8169a867"},(self.webpackChunk_maestro_io_client=self.webpackChunk_maestro_io_client||[]).push([[1363],{41363:(k,L,s)=>{s.r(L),s.d(L,{default:()=>Tt});var e=s(63696),u=s(224191),_=s(41989),B=s(998524),R=s(79321),f=s(782364),p=s(461961),I=s(563918);const w=5,b={ACTIONS:"actions",AUTH_TYPE:"authType",BASE_URL:"baseUrl",LAST_UPDATED:"lastUpdated",NAME:"name"},D={ASC:1,DESC:-1},o={sorted:[{desc:!0,id:b.LAST_UPDATED}],sortQuery:{sortBy:b.LAST_UPDATED,sortDirection:D.DESC}},E={MENU_MARGIN:20,MIN_SEARCH_QUERY_LENGTH:3},l={basic:"AUTOMATION_CONNECTION_AUTH_BASIC",bearer:"AUTOMATION_CONNECTION_AUTH_BEARER",header:"AUTOMATION_CONNECTION_AUTH_HEADER",none:"AUTOMATION_CONNECTION_AUTH_NONE"};var m=s(89649),N=s(711678);const A=()=>{const t=(0,u.useDispatch)(),{t:n}=(0,_._h)(),a=(0,u.useSelector)(p.S0),[r,d]=(0,e.useState)(null),[c,T]=(0,e.useState)(0),[P,C]=(0,e.useState)(w),[v,M]=(0,e.useState)(o),[y,j]=(0,e.useState)(""),G=(0,e.useMemo)(()=>a.map(i=>{var S,W;return{authType:i.authType,baseUrl:i.baseUrl,id:i._id,lastUpdated:(W=(S=i.modified)!=null?S:i.created)!=null?W:0,name:i.name}}),[a]),ae=(0,e.useMemo)(()=>{const i=y.toLowerCase(),S=!y||y.length<E.MIN_SEARCH_QUERY_LENGTH?G:G.filter(O=>O.name.toLowerCase().includes(i)||O.baseUrl.toLowerCase().includes(i)),{sortBy:W,sortDirection:U}=v.sortQuery;return[...S].sort((O,pe)=>{const ie=O[W],ce=pe[W];return(typeof ie=="number"&&typeof ce=="number"?ie-ce:String(ie).localeCompare(String(ce),void 0,{sensitivity:"base"}))*U})},[G,y,v.sortQuery]),Z=(0,e.useCallback)(i=>{j(i.trim()),T(0)},[]),X=(0,e.useCallback)(()=>{t((0,f.Xq)()),d("")},[t]),H=(0,e.useCallback)(i=>{t((0,f.Xq)()),d(i)},[t]),ne=(0,e.useCallback)(i=>{d(i)},[]),re=(0,e.useCallback)(()=>{t((0,f.Xq)()),d(null)},[t]),V=(0,e.useCallback)(([i])=>{if(!i)return;const{id:S,desc:W}=i,U=S.toLowerCase().replace(/\s+/g,""),O=Object.values(b).find(ce=>ce.toLowerCase()===U);if(!O||O===b.ACTIONS)return;const ie=v.sortQuery.sortBy===O&&v.sortQuery.sortDirection===D.DESC?D.ASC:D.DESC;M({sorted:[{desc:W,id:S}],sortQuery:{sortBy:O,sortDirection:ie}})},[v.sortQuery.sortBy,v.sortQuery.sortDirection]),Ee=(0,e.useCallback)(i=>{T(i)},[]),x=(0,e.useCallback)(i=>{C(i),T(0)},[]),h=(0,e.useCallback)(i=>{t((0,m.to)({kind:N.V.adminConfirmation,data:{onConfirmClick:()=>{t((0,f.eV)(i)),t((0,m.y_)(N.V.adminConfirmation))},title:n("ADMIN_PROMPT_CONFIRM_DELETION_FEATURE",{feature:n("AUTOMATION_CONNECTION_TITLE")}),subtitleKey:"ADMIN_PROMPT_CONFIRM_DELETION_DISCLAIMER"}}))},[t,n]),se=(0,e.useCallback)(i=>[{id:"edit",name:n("ADMIN_LABEL_EDIT"),icon:"settingsV2",dataTestId:`edit-connection-${i}`,handler:()=>H(i)},{id:"delete",name:n("ADMIN_ACTION_DELETE",{feature:n("AUTOMATION_CONNECTION_TITLE")}),icon:"trashV2",dataTestId:`delete-connection-${i}`,handler:()=>h(i)}],[h,H,n]);return{currentPage:c,editingId:r,filteredData:ae,getMenuActions:se,onCloseForm:re,onConnectionSaved:ne,onCreateConnection:X,onPageChange:Ee,onPageSizeChange:x,onSearch:Z,onSelectConnection:H,onSortedChange:V,pageSize:P,sort:v}};var Oe=s(204388),Ne=s(881051),Q=s(491090),Te=s(42301);const $=({original:t})=>e.createElement(Q.IS,null,e.createElement("div",{className:"name"},t.name)),J=({original:t})=>e.createElement("span",{className:"truncate text-[var(--admin-text-200)]",title:t.baseUrl},t.baseUrl),de=({original:t})=>{const{t:n}=(0,_._h)();return e.createElement("span",{className:"text-[var(--admin-text-200)]"},n(l[t.authType]))},he=({original:t})=>{const{currentLocale:n}=(0,_._h)(),{formatted:a,tooltip:r}=(0,Te.Y)({currentLocale:n,timestamp:t.lastUpdated});return e.createElement(Q.ez,{tooltip:r},a)},ge=({menuActions:t,onSelectConnection:n,original:a})=>{const r=(0,e.useCallback)((v,M)=>{const y=M.getBoundingClientRect(),j=(0,Oe.zi)({elem:v,position:{x:y.right,y:y.top},margin:E.MENU_MARGIN});v.style.top=`${j.y+27}px`,v.style.left=`${j.x-50}px`},[]),{containerRef:d,isOpen:c,positionMenu:T,toggleMenu:P}=(0,Ne.A)(r),C=()=>n(a.id);return e.createElement(Q.CQ,{ref:d},e.createElement(Q.Ze,{onClick:C,testId:`connection-settings-${a.id}`,tooltip:"",tooltipKey:"ADMIN_LABEL_EDIT"}),e.createElement(Q.$6,{cardsMenuId:`${a.id}-actions-menu`,isAdmin:!0,isFloatMenuOpen:c,menuActions:t,positionMenu:T,threeDotsMenuId:`${a.id}-three-dots-menu`,toggleMenu:P}))},oe=({getMenuActions:t,onSelectConnection:n})=>{const{t:a}=(0,_._h)(),r=(0,e.useCallback)(({original:C})=>e.createElement($,{original:C}),[]),d=(0,e.useCallback)(({original:C})=>e.createElement(J,{original:C}),[]),c=(0,e.useCallback)(({original:C})=>e.createElement(de,{original:C}),[]),T=(0,e.useCallback)(({original:C})=>e.createElement(he,{original:C}),[]),P=(0,e.useCallback)(({original:C})=>e.createElement(ge,{menuActions:t(C.id),onSelectConnection:n,original:C}),[t,n]);return(0,e.useMemo)(()=>[{accessor:b.NAME,Cell:r,title:a("ADMIN_LABEL_NAME").toLowerCase(),width:220},{accessor:b.BASE_URL,Cell:d,title:a("AUTOMATION_CONNECTIONS_COL_BASE_URL")},{accessor:b.AUTH_TYPE,Cell:c,title:a("AUTOMATION_CONNECTIONS_COL_AUTH_TYPE"),width:200},{accessor:b.LAST_UPDATED,Cell:T,title:a("AUTOMATION_CONNECTIONS_COL_LAST_UPDATED"),width:140},{accessor:b.ACTIONS,Cell:P,preventSort:!0,title:a("ADMIN_LABEL_ACTIONS"),width:93}],[a,r,d,c,T,P])};var ve=s(942662),q=s(478158),fe=s(472478),K=s(746217),Y=s(551321),Ae=s(970587),z=s(972297),_e=s(299674);const ye=["none","bearer","basic","header"],xe=({message:t})=>{const{t:n}=(0,_._h)(),a=(0,u.useDispatch)(),r=(0,e.useCallback)(()=>a((0,f.ET)()),[a]);return e.createElement("div",{className:"flex items-start justify-between gap-2 rounded-lg border border-[#ff6b6b] bg-[rgba(255,107,107,0.12)] px-4 py-3 text-xs text-[var(--admin-text-100)]","data-testid":"connections-error-banner",role:"alert"},e.createElement("div",null,e.createElement("strong",null,n("AUTOMATION_CONNECTIONS_ERROR_TITLE")),": ",t),e.createElement("button",{className:"shrink-0 bg-transparent p-0 text-[var(--admin-text-300)] hover:text-[var(--admin-text-100)]",onClick:r,type:"button"},n("DISMISS")))};var Ie=s(221196),Me=s.n(Ie),be=s(934193),Ue=Object.defineProperty,ue=Object.defineProperties,Pe=Object.getOwnPropertyDescriptors,Se=Object.getOwnPropertySymbols,De=Object.prototype.hasOwnProperty,le=Object.prototype.propertyIsEnumerable,He=(t,n,a)=>n in t?Ue(t,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[n]=a,Ge=(t,n)=>{for(var a in n||(n={}))De.call(n,a)&&He(t,a,n[a]);if(Se)for(var a of Se(n))le.call(n,a)&&He(t,a,n[a]);return t},Ze=(t,n)=>ue(t,Pe(n));const Be=(t="",n="")=>({id:Me().generate(),key:t,value:n}),we=()=>({authHeaderName:"",authType:"none",baseUrl:"",defaultHeaders:[],headerValue:"",healthPath:"",name:"",password:"",token:"",username:""}),Ve=t=>{var n,a,r;return t?Ze(Ge({},we()),{authHeaderName:(n=t.authHeaderName)!=null?n:"",authType:t.authType,baseUrl:t.baseUrl,defaultHeaders:Object.entries((a=t.defaultHeaders)!=null?a:{}).map(([d,c])=>Be(d,c)),healthPath:(r=t.healthPath)!=null?r:"",name:t.name}):we()},Xe=t=>{const n=t.trim();return/^https:\/\//i.test(n)&&(0,be.gU)(n)},Fe=t=>{const n=t.trim().toLowerCase();return n==="authorization"||n==="cookie"||n.endsWith("-key")||n.endsWith("-token")},Je=t=>{const n=t.map(a=>
1a.key.trim().toLowerCase()).filter(Boolean);return new Set(n).size!==n.length},Ke=t=>{switch(t.authType){case"bearer":return t.token?{token:t.token}:void 0;case"basic":return t.username&&t.password?{password:t.password,username:t.username}:void 0;case"header":return t.headerValue?{value:t.headerValue}:void 0;default:return}},qe=t=>!!Ke(t),et=(t,{requireCredentials:n})=>{const a={};t.name.trim()||(a.name="AUTOMATION_CONNECTION_NAME_REQUIRED");const r=t.baseUrl.trim();!r||!/^https:\/\//i.test(r)?a.baseUrl="AUTOMATION_CONNECTION_BASE_URL_HTTPS_REQUIRED":Xe(r)||(a.baseUrl="AUTOMATION_CONNECTION_BASE_URL_INVALID"),t.authType==="header"&&!t.authHeaderName.trim()&&(a.authHeaderName="AUTOMATION_CONNECTION_HEADER_NAME_REQUIRED"),n&&t.authType!=="none"&&!qe(t)&&(a.credentials="AUTOMATION_CONNECTION_CREDENTIALS_REQUIRED");const d=t.healthPath.trim();return d&&!d.startsWith("/")&&(a.healthPath="AUTOMATION_CONNECTION_HEALTH_PATH_INVALID"),t.defaultHeaders.some(c=>Fe(c.key))?a.defaultHeaders="AUTOMATION_CONNECTION_HEADER_KEY_BLOCKED":Je(t.defaultHeaders)?a.defaultHeaders="AUTOMATION_CONNECTION_HEADER_KEY_DUPLICATE":t.defaultHeaders.some(c=>!c.key.trim()||!c.value.trim())&&(a.defaultHeaders="AUTOMATION_CONNECTION_HEADER_INCOMPLETE"),a},tt=(t,{id:n,includeCredentials:a})=>{const r=t.defaultHeaders.reduce((c,T)=>(T.key.trim()&&(c[T.key.trim()]=T.value.trim()),c),{}),d={authType:t.authType,baseUrl:t.baseUrl.trim().replace(/\/+$/,""),defaultHeaders:r,name:t.name.trim()};if(n&&(d._id=n),t.authType==="header"&&(d.authHeaderName=t.authHeaderName.trim()),t.healthPath.trim()&&(d.healthPath=t.healthPath.trim()),a&&t.authType!=="none"){const c=Ke(t);c&&(d.credentials=c)}return d};var at=Object.defineProperty,nt=Object.defineProperties,rt=Object.getOwnPropertyDescriptors,ke=Object.getOwnPropertySymbols,st=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable,$e=(t,n,a)=>n in t?at(t,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[n]=a,ze=(t,n)=>{for(var a in n||(n={}))st.call(n,a)&&$e(t,a,n[a]);if(ke)for(var a of ke(n))ot.call(n,a)&&$e(t,a,n[a]);return t},je=(t,n)=>nt(t,rt(n));const lt=({onChange:t,onRemove:n,row:a})=>{const{t:r}=(0,_._h)(),d=Fe(a.key),c=(0,e.useCallback)(C=>t(je(ze({},a),{key:C.target.value})),[t,a]),T=(0,e.useCallback)(C=>t(je(ze({},a),{value:C.target.value})),[t,a]),P=(0,e.useCallback)(()=>n(a.id),[n,a.id]);return e.createElement("div",{className:"flex items-center gap-2","data-testid":`header-row-${a.id}`},e.createElement(K.a,{"aria-label":r("AUTOMATION_CONNECTION_HEADER_KEY_PLACEHOLDER"),className:"w-[220px]",onChange:c,placeholder:r("AUTOMATION_CONNECTION_HEADER_KEY_PLACEHOLDER"),state:d?"error":"default",value:a.key}),e.createElement(K.a,{"aria-label":r("AUTOMATION_CONNECTION_HEADER_VALUE_PLACEHOLDER"),className:"flex-1",onChange:T,placeholder:r("AUTOMATION_CONNECTION_HEADER_VALUE_PLACEHOLDER"),value:a.value}),e.createElement("button",{"aria-label":r("REMOVE"),className:"flex size-8 shrink-0 items-center justify-center rounded-full text-[var(--admin-text-300)] hover:bg-[var(--admin-surface-5)] hover:text-[var(--admin-text-100)]",onClick:P,type:"button"},e.createElement(ve.Cross,{className:"size-4"})))},it=({onChange:t,onRemove:n,rows:a})=>e.createElement("div",{className:"flex flex-col gap-2"},a.map(r=>e.createElement(lt,{key:r.id,onChange:t,onRemove:n,row:r})));var ct=Object.defineProperty,dt=Object.defineProperties,ut=Object.getOwnPropertyDescriptors,We=Object.getOwnPropertySymbols,mt=Object.prototype.hasOwnProperty,Et=Object.prototype.propertyIsEnumerable,Qe=(t,n,a)=>n in t?ct(t,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[n]=a,ee=(t,n)=>{for(var a in n||(n={}))mt.call(n,a)&&Qe(t,a,n[a]);if(We)for(var a of We(n))Et.call(n,a)&&Qe(t,a,n[a]);return t},te=(t,n)=>dt(t,ut(n));const pt=({connectionId:t,onSaved:n})=>{const a=(0,u.useDispatch)(),r=(0,e.useMemo)(()=>(0,p.nO)(t),[t]),d=(0,u.useSelector)(r),c=(0,u.useSelector)(p.v$),T=(0,u.useSelector)(p.nZ),P=(0,u.useSelector)(p.qv),C=(0,u.useSelector)(p.qD),v=(0,u.useSelector)(p.pO),[M,y]=(0,e.useState)(()=>Ve(d)),[j,G]=(0,e.useState)({}),[ae,Z]=(0,e.useState)(!1),[X,H]=(0,e.useState)(!1),[ne,re]=(0,e.useState)(!1),V=!!t,Ee=d?.authType;(0,e.useEffect)(()=>{y(Ve(d)),G({}),Z(!1),H(!1)},[t]);const x=V&&!!d?.hasCredentials&&M.authType!=="none"&&M.authType===Ee,h=M.authType!=="none"&&(!x||X),se=(0,e.useMemo)(()=>et(M,{requireCredentials:h}),[M,h]),i=Object.keys(se).length===0,S=(0,e.useCallback)(g=>ae||j[g]?se[g]:void 0,[se,ae,j]),W=(0,e.useCallback)(g=>{G(F=>F[g]?F:te(ee({},F),{[g]:!0}))},[]),U=(0,e.useCallback)(()=>{re(!1),P&&a((0,f.Y8)(null))},[a,P]),O=(0,e.useCallback)((g,F)=>{U(),y(Ce=>te(ee({},Ce),{[g]:F}))},[U]),pe=(0,e.useCallback)(g=>{U(),y(F=>te(ee({},F),{authType:g,headerValue:"",password:"",token:"",username:""}))},[U]),ie=(0,e.useCallback)(()=>H(!0),[]),ce=(0,e.useCallback)(()=>{re(!1),H(!1),y(g=>te(ee({},g),{headerValue:"",password:"",token:"",username:""}))},[]),Ye=(0,e.useCallback)(()=>{U(),y(g=>te(ee({},g),{defaultHeaders:[...g.defaultHeaders,Be()]}))},[U]),ht=(0,e.useCallback)(g=>{U(),y(F=>te(ee({},F),{defaultHeaders:F.defaultHeaders.map(Ce=>Ce.id===g.id?g:Ce)}))},[U]),ft=(0,e.useCallback)(g=>{U(),y(F=>te(ee({},F),{defaultHeaders:F.defaultHeaders.filter(Ce=>Ce.id!==g)}))},[U]),At=(0,e.useCallback)(()=>{Z(!0),!(!i||c)&&a((0,f.co)(tt(M,{id:t,includeCredentials:h})))},[t,a,c,i,h,M]);(0,e.useEffect)(()=>{!v||c||(re(!0),H(!1),y(g=>te(ee({},g),{headerValue:"",password:"",token:"",username:""})),v!==t&&n(v))},[v,c]);const _t=(0,e.useCallback)(()=>{t&&!T&&a((0,f.ZF)(t))},[t,a,T]);return{canKeepCredentials:x,error:C,errors:se,isEditing:V,isSaving:c,isTesting:T,isValid:i,onAddHeader:Ye,onAuthTypeChange:pe,onHeaderChange:ht,onKeepCredentials:ce,onRemoveHeader:ft,onReplaceCredentials:ie,onSubmit:At,onTest:_t,replaceCredentials:X,saved:ne,setField:O,testResult:P,touch:W,values:M,visibleError:S}},me=({children:t,error:n,hint:a,htmlFor:r,label:d})=>{const{t:c}=(0,_._h)();return e.createElement("div",{className:"flex flex-col gap-1.5"},e.createElement(Ae.J,{className:"text-[var(--admin-text-300)]",htmlFor:r},d),t,n?e.createElement("p",{className:"text-xs text-destructive",role:"alert"}
1,c(n)):a?e.createElement("p",{className:"text-xs text-[var(--admin-text-300)]"},c(a)):null)},Ct=({connectionId:t,onClose:n,onSaved:a})=>{const{t:r}=(0,_._h)(),{canKeepCredentials:d,error:c,isEditing:T,isSaving:P,isTesting:C,onAddHeader:v,onAuthTypeChange:M,onHeaderChange:y,onKeepCredentials:j,onRemoveHeader:G,onReplaceCredentials:ae,onSubmit:Z,onTest:X,replaceCredentials:H,saved:ne,setField:re,testResult:V,touch:Ee,values:x,visibleError:h}=pt({connectionId:t,onSaved:a}),se=x.authType!=="none"&&(!d||H),i=(0,e.useCallback)(O=>pe=>re(O,pe.target.value),[re]),S=(0,e.useCallback)(O=>()=>Ee(O),[Ee]),W=(0,e.useCallback)(O=>{O.preventDefault(),Z()},[Z]),U=()=>{var O;return V?V.status===0?e.createElement("span",{className:"text-xs text-destructive","data-testid":"connection-test-result"},r("AUTOMATION_CONNECTION_TEST_BLOCKED",{reason:(O=V.reason)!=null?O:""})):e.createElement("span",{className:V.ok?"text-xs text-[var(--admin-alert-success,#3ddc97)]":"text-xs text-destructive","data-testid":"connection-test-result"},r(V.ok?"AUTOMATION_CONNECTION_TEST_OK":"AUTOMATION_CONNECTION_TEST_FAILED",{status:String(V.status)}),V.contentType&&e.createElement("span",{className:"ml-2 text-[var(--admin-text-300)]"},r("AUTOMATION_CONNECTION_TEST_CONTENT_TYPE",{contentType:V.contentType}))):null};return e.createElement(fe.S,{className:"flex flex-col gap-6 pb-8","data-testid":"connection-form",scope:"admin"},e.createElement("div",null,e.createElement(q.A,{onClick:n})),e.createElement("div",{className:"flex flex-col gap-1"},e.createElement("h2",{className:"text-base font-bold text-[var(--admin-text-100)]"},r(T?"AUTOMATION_CONNECTION_EDIT_TITLE":"AUTOMATION_CONNECTION_NEW_TITLE")),e.createElement("p",{className:"max-w-[720px] text-xs text-[var(--admin-text-300)]"},r("AUTOMATION_CONNECTION_DESCRIPTION"))),c&&e.createElement(xe,{message:c.message}),e.createElement("form",{className:"flex max-w-[720px] flex-col gap-5",noValidate:!0,onSubmit:W},e.createElement(me,{error:h("name"),htmlFor:"connection-name",label:r("ADMIN_LABEL_NAME")},e.createElement(K.a,{id:"connection-name",maxLength:100,onBlur:S("name"),onChange:i("name"),placeholder:r("AUTOMATION_CONNECTION_NAME_PLACEHOLDER"),state:h("name")?"error":"default",value:x.name})),e.createElement(me,{error:h("baseUrl"),htmlFor:"connection-base-url",label:r("AUTOMATION_CONNECTION_BASE_URL_LABEL")},e.createElement(K.a,{id:"connection-base-url",inputMode:"url",onBlur:S("baseUrl"),onChange:i("baseUrl"),placeholder:r("AUTOMATION_CONNECTION_BASE_URL_PLACEHOLDER"),state:h("baseUrl")?"error":"default",value:x.baseUrl})),e.createElement(me,{label:r("AUTOMATION_CONNECTION_AUTH_TYPE_LABEL")},e.createElement(_e.z6,{className:"gap-2.5 pt-1",onValueChange:M,value:x.authType},ye.map(O=>e.createElement(_e.D3,{key:O,"data-testid":`auth-type-${O}`,label:r(l[O]),value:O})))),x.authType==="header"&&e.createElement(me,{error:h("authHeaderName"),htmlFor:"connection-auth-header-name",label:r("AUTOMATION_CONNECTION_HEADER_NAME_LABEL")},e.createElement(K.a,{id:"connection-auth-header-name",onBlur:S("authHeaderName"),onChange:i("authHeaderName"),placeholder:r("AUTOMATION_CONNECTION_HEADER_NAME_PLACEHOLDER"),state:h("authHeaderName")?"error":"default",value:x.authHeaderName})),d&&!H&&e.createElement("div",{className:"flex items-center justify-between gap-3 rounded-md border border-[var(--admin-surface-5)] bg-[var(--admin-surface-4)] px-4 py-3","data-testid":"credentials-set"},e.createElement("span",{className:"text-xs text-[var(--admin-text-200)]"},r("AUTOMATION_CONNECTION_CREDENTIALS_SET")),e.createElement(Y.$,{context:"admin",onClick:ae,size:"sm",type:"button",variant:"outline"},r("AUTOMATION_CONNECTION_CREDENTIALS_REPLACE"))),se&&e.createElement("div",{className:"flex flex-col gap-4","data-testid":"credential-inputs"},x.authType==="bearer"&&e.createElement(z.y,{autoComplete:"new-password",error:h("credentials")&&r(h("credentials")),id:"connection-token",label:r("AUTOMATION_CONNECTION_TOKEN_LABEL"),labelVariant:"external",onBlur:S("credentials"),onChange:i("token"),value:x.token}),x.authType==="basic"&&e.createElement(e.Fragment,null,e.createElement(me,{htmlFor:"connection-username",label:r("AUTOMATION_CONNECTION_USERNAME_LABEL")}
1,e.createElement(K.a,{autoComplete:"off",id:"connection-username",onBlur:S("credentials"),onChange:i("username"),value:x.username})),e.createElement(z.y,{autoComplete:"new-password",error:h("credentials")&&r(h("credentials")),id:"connection-password",label:r("AUTOMATION_CONNECTION_PASSWORD_LABEL"),labelVariant:"external",onBlur:S("credentials"),onChange:i("password"),value:x.password})),x.authType==="header"&&e.createElement(z.y,{autoComplete:"new-password",error:h("credentials")&&r(h("credentials")),id:"connection-header-value",label:r("AUTOMATION_CONNECTION_HEADER_VALUE_LABEL"),labelVariant:"external",onBlur:S("credentials"),onChange:i("headerValue"),value:x.headerValue}),d&&H&&e.createElement("div",null,e.createElement(Y.$,{context:"admin",onClick:j,size:"sm",type:"button",variant:"ghost"},r("AUTOMATION_CONNECTION_CREDENTIALS_KEEP")))),e.createElement(me,{error:h("healthPath"),hint:"AUTOMATION_CONNECTION_HEALTH_PATH_HINT",htmlFor:"connection-health-path",label:r("AUTOMATION_CONNECTION_HEALTH_PATH_LABEL")},e.createElement(K.a,{id:"connection-health-path",onBlur:S("healthPath"),onChange:i("healthPath"),placeholder:r("AUTOMATION_CONNECTION_HEALTH_PATH_PLACEHOLDER"),state:h("healthPath")?"error":"default",value:x.healthPath})),e.createElement("div",{className:"flex flex-col gap-3"},e.createElement("div",{className:"flex items-center gap-4"},e.createElement(Ae.J,{className:"text-[var(--admin-text-100)]"},r("AUTOMATION_CONNECTION_DEFAULT_HEADERS_LABEL")),e.createElement(Y.$,{className:"rounded-full",context:"admin","data-testid":"add-header-button",onClick:v,size:"sm",type:"button",variant:"secondary"},e.createElement(ve.Plus,{className:"size-4"}),r("AUTOMATION_CONNECTION_DEFAULT_HEADERS_ADD"))),e.createElement("p",{className:"text-xs text-[var(--admin-text-300)]"},r("AUTOMATION_CONNECTION_DEFAULT_HEADERS_DESCRIPTION")),e.createElement(it,{onChange:y,onRemove:G,rows:x.defaultHeaders}),h("defaultHeaders")&&e.createElement("p",{className:"text-xs text-destructive",role:"alert"},r(h("defaultHeaders")))),e.createElement("div",{className:"flex flex-col gap-1 text-xs text-[var(--admin-text-300)]"},e.createElement("p",null,r("AUTOMATION_CONNECTION_HELP_IDEMPOTENCY")),e.createElement("p",null,r("AUTOMATION_CONNECTION_HELP_PROPAGATION"))),e.createElement("div",{className:"flex flex-wrap items-center gap-3 pt-2"},e.createElement(Y.$,{context:"admin","data-testid":"save-connection-button",disabled:P,type:"submit"},r(P?"AUTOMATION_CONNECTION_SAVING":"AUTOMATION_CONNECTION_SAVE")),e.createElement(Y.$,{context:"admin","data-testid":"test-connection-button",disabled:!T||C||P,onClick:X,type:"button",variant:"outline"},r(C?"AUTOMATION_CONNECTION_TESTING":"AUTOMATION_CONNECTION_TEST_BUTTON")),!T&&e.createElement("span",{className:"text-xs text-[var(--admin-text-300)]"},r("AUTOMATION_CONNECTION_TEST_SAVE_FIRST")),ne&&!c&&e.createElement("span",{className:"text-xs text-[var(--admin-text-200)]","data-testid":"connection-saved"},r("AUTOMATION_CONNECTION_SAVED")),U())))},Ot=e.memo(Ct),Nt=()=>{const{t}=(0,_._h)(),n=(0,u.useDispatch)(),a=(0,u.useSelector)(p.qD);(0,e.useEffect)(()=>{n((0,f.E)())},[n]);const{currentPage:r,editingId:d,filteredData:c,getMenuActions:T,onCloseForm:P,onConnectionSaved:C,onCreateConnection:v,onPageChange:M,onPageSizeChange:y,onSearch:j,onSelectConnection:G,onSortedChange:ae,pageSize:Z,sort:X}=A(),H=oe({getMenuActions:T,onSelectConnection:G});if(d!==null)return e.createElement(Ot,{connectionId:d||null,onClose:P,onSaved:C});const ne=a?.status===409?t("AUTOMATION_CONNECTIONS_DELETE_BLOCKED"):a?.message;return e.createElement(I.rw,{"data-testid":"automation-connections"},ne&&e.createElement(xe,{message:ne}),e.createElement(I.ph,null,e.createElement(I.s7,null,e.createElement(R.A,{className:"search-input","data-testid":"connection-search-input",onSearch:j,padding:"15px 0",searchPlaceholderKey:"ADMIN_PLACEHOLDER_SEARCH_NO_DOT"})),e.createElement(I.OV,{"data-testid":"create-connection-button",onClick:v},e.createElement(I.c1,null),e.createElement("span",null,t("AUTOMATION_CONNECTIONS_CREATE")))),e.createElement(I.K3,null,e.createElement(B.Ay,{columns:H,currentlySorted:X.sortQuery,data:c,defaultPageSize:w,onPageChange:M,onPageSizeChange:y,onSortedChange:ae,page:r,pages:Math.ceil(c.length/Z),pageSize:Z,showPagination:c.length>0,sorted:X.sorted,testIdAddButton:"connections-table",useSelectorSorting:!0})),c.length===0&&e.createElement(I.rr,null,e.createElement("div",null,t("AUTOMATION_CONNECTIONS_EMPTY"))))},Tt=e.memo(Nt)},491090:(k,L,s)=>{s.d(L,{$6:()=>l,CQ:()=>b,IS:()=>o,W7:()=>N,Ze:()=>D,ez:()=>E,jF:()=>m});var e=s(886550),u=s(942695),_=s(132556),B=s(294255),R=s(697683),f=s(283722),p=s(429195),I=s(152544);const w=(0,e.Ay)(_.A)` 2 cursor: pointer; 3 background: ${p.Qod}; 4 width: 24px; 5 height: 24px; 6 padding: 5px; 7 // action icons have 14*14 dimensions 8 &:hover { 9 background: ${p.Qod}; 10 } 11`,b=e.Ay.div` 12 align-items: center; 13 display: flex; 14 gap: 4px; 15`,D=(0,u.A)((0,e.Ay)(w).attrs({iconKey:"settingsV2"})``,{admin:!0}
15),o=e.Ay.div` 16 display: flex; 17 flex-direction: column; 18 gap: 3px; 19 20 .name { 21 ${I.Z1}; 22 } 23 24 .description { 25 ${I.Vg}; 26 align-items: center; 27 color: ${p.sRE}; 28 display: flex; 29 flex-direction: row; 30 gap: 5px; 31 32 > div { 33 margin-top: 3px; 34 } 35 } 36`,E=(0,u.A)(e.Ay.div` 37 ${I.z6}; 38 color: ${p.o0B}; 39 `,{admin:!0}),l=(0,e.Ay)(B.A)` 40 &:hover { 41 background: ${p.dmy}; 42 border-radius: 50%; 43 } 44 45 div[id$='-actions-menu'] { 46 background: ${p.dsC}; 47 z-index: 1; 48 } 49`,m=(0,e.Ay)(R.A)` 50 & span { 51 background-color: ${({checked:A})=>A?p.Y4I:p.dsC} !important; 52 53 label { 54 color: ${({checked:A})=>A?p.caQ:p.o0B} !important; 55 } 56 57 &::before { 58 background-color: ${({checked:A})=>A?p.O3X:p.dmy} !important; 59 } 60 } 61`,N=(0,e.Ay)(f.Ay).attrs({name:"arrowRightBottom"})` 62 & svg { 63 width: 18px; 64 height: 18px; 65 } 66`},563918:(k,L,s)=>{s.d(L,{K3:()=>D,OV:()=>w,c1:()=>b,ph:()=>p,rr:()=>o,rw:()=>f,s7:()=>I});var e=s(886550),u=s(154789),_=s(283722),B=s(429195),R=s(152544);const f=e.Ay.div` 67 display: flex; 68 flex-direction: column; 69 gap: 16px; 70`,p=e.Ay.div` 71 align-items: center; 72 display: flex; 73 flex-direction: row; 74 gap: 24px; 75 width: 100%; 76`,I=e.Ay.div` 77 width: 100%; 78 79 > .with-padding { 80 padding: 0; 81 } 82`,w=(0,e.Ay)(u.Ay)` 83 ${R.Z1}; 84 border-radius: 100px; 85 display: flex; 86 gap: 8px; 87 height: 40px; 88 padding: 0 24px; 89`,b=(0,e.Ay)(_.Ay).attrs({name:"plus"})` 90 display: flex; 91 width: fit-content; 92 height: fit-content; 93 94 & svg { 95 width: 16px; 96 height: 16px; 97 & path { 98 fill: ${B.Yk7}; 99 } 100 } 101`,D=e.Ay.div` 102 display: flex; 103 flex-direction: column; 104 gap: 16px; 105 width: 100%; 106 107 .rt-table { 108 > div { 109 padding: 0; 110 111 .rt-tr { 112 border: none; 113 padding: 0px; 114 } 115 } 116 117 .rt-tbody { 118 > div { 119 margin: 0 !important; 120 } 121 122 .rt-tr { 123 background: ${B.dHK}; 124 border-radius: 5px; 125 height: 64px; 126 margin: 0 0 5px 0; 127 128 > .rt-td { 129 cursor: default; 130 131 &:nth-child(1), 132 &:nth-child(3), 133 &:nth-child(4) { 134 justify-content: space-around !important; 135 } 136 } 137 } 138 } 139 } 140`,o=e.Ay.div` 141 align-items: center; 142 display: flex; 143 height: calc(100vh - 370px); 144 justify-content: center; 145 146 > div { 147 ${R.z6}; 148 color: ${B.sRE}; 149 height: 16px; 150 width: 300px; 151 } 152`},461961:(k,L,s)=>{s.d(L,{Fh:()=>D,S0:()=>_,iW:()=>R,nO:()=>b,nZ:()=>p,pO:()=>w,qD:()=>B,qv:()=>I,v$:()=>f});var e=s(980672);const u=o=>o.apiConnections,_=o=>u(o).connections,B=o=>u(o).error,R=o=>u(o).isLoading,f=o=>u(o).isSaving,p=o=>u(o).isTesting,I=o=>u(o).testResult,w=o=>u(o).lastSavedId,b=o=>(0,e.Mz)([_],E=>o?E.find(l=>l._id===o):void 0),D=(0,e.Mz)([_],o=>[...o].sort((E,l)=>E.name.localeCompare(l.name)).map(E=>({id:E._id,label:E.name,value:E._id})))},347093:(k,L,s)=>{s.d(L,{b:()=>E});var e=s(63696),u=s(33149),_=s(746217),B=s(970587),R=Object.defineProperty,f=Object.getOwnPropertySymbols,p=Object.prototype.hasOwnProperty,I=Object.prototype.propertyIsEnumerable,w=(l,m,N)=>m in l?R(l,m,{enumerable:!0,configurable:!0,writable:!0,value:N}):l[m]=N,b=(l,m)=>{for(var N in m||(m={}))p.call(m,N)&&w(l,N,m[N]);if(f)for(var N of f(m))I.call(m,N)&&w(l,N,m[N]);return l},D=(l,m)=>{var N={};for(var A in l)p.call(l,A)&&m.indexOf(A)<0&&(N[A]=l[A]);if(l!=null&&f)for(var A of f(l))m.indexOf(A)<0&&I.call(l,A)&&(N[A]=l[A]);return N};const o={sm:{padding:{left:"pl-8",right:"pr-8"},iconPosition:{left:"left-2.5",right:"right-2.5"}},md:{padding:{left:"pl-9",right:"pr-9"},iconPosition:{left:"left-3",right:"right-3"}},lg:{padding:{left:"pl-11",right:"pr-11"},iconPosition:{left:"left-4",right:"right-4"}}},E=e.forwardRef((l,m)=>{var N=l,{className:A,wrapperClassName:Oe,prefixClassName:Ne,suffixClassName:Q,labelClassName:Te,prefix:$,suffix:J,onSuffixClick:de,suffixAriaLabel:he,suffixPressed:ge,variant:Le,size:oe,radius:ve,state:q,disabled:fe,label:K,labelVariant:Y="none",error:Ae,value:z,defaultValue:_e,onChange:ye,placeholder:Re,"aria-invalid":xe}=N,Ie=D(N,["className","wrapperClassName","prefixClassName","suffixClassName","labelClassName","prefix","suffix","onSuffixClick","suffixAriaLabel","suffixPressed","variant","size","radius","state","disabled","label","labelVariant","error","value","defaultValue","onChange","placeholder","aria-invalid"]);const[Me,be]=e.useState(()=>{var le;return!!((le=z??_e)!=null&&le)});e.useEffect(()=>{z!==void 0&&be(!!z)},[z]);const Ue=le=>{z===void 0&&be(le.target.value.length>0),ye?.(le)},ue=o[oe||"md"],Pe={left:$?ue.padding.left:"",right:J?ue.padding.right:""},Se=ue.iconPosition.left,De=ue.iconPosition.right;return e.createElement("div",{className:(0,u.cn)("flex flex-col gap-3 w-full",Oe)}
152,Y==="external"&&K&&e.createElement(B.J,{className:Te,htmlFor:Ie.id},K),e.createElement("div",{className:"flex flex-col"},e.createElement("div",{className:"relative bg-inherit","data-size":oe,"data-slot":"input-wrapper","data-state":q},$?e.createElement("span",{className:(0,u.cn)("pointer-events-none absolute top-1/2 -translate-y-1/2 text-muted-foreground",q==="error"&&"text-destructive",Se,Ne),"data-slot":"input-prefix"},$):null,e.createElement(_.a,b({ref:m,"aria-invalid":xe,className:(0,u.cn)(Y==="floating"&&"peer placeholder-transparent",Pe.left,Pe.right,A),"data-not-empty":Me?"true":"false",defaultValue:_e,disabled:fe,onChange:Ue,placeholder:Y==="floating"?" ":Re,radius:ve,size:oe,state:q,value:z,variant:Le},Ie)),Y==="floating"&&K&&e.createElement("label",{className:(0,u.cn)("absolute left-3 transition-all duration-200 pointer-events-none text-muted-foreground",$&&"left-8",oe==="sm"?"top-1/2 -translate-y-1/2 text-sm":oe==="lg"?"top-1/2 -translate-y-1/2 text-base":"top-1/2 -translate-y-1/2 text-sm","peer-focus:top-0 peer-focus:-translate-y-1/2 peer-focus:text-xs peer-focus:text-foreground peer-focus:px-1 peer-focus:bg-card","peer-data-[not-empty=true]:top-0 peer-data-[not-empty=true]:-translate-y-1/2 peer-data-[not-empty=true]:text-xs peer-data-[not-empty=true]:text-foreground peer-data-[not-empty=true]:px-1 peer-data-[not-empty=true]:bg-card",q==="error"&&"text-destructive"),"data-slot":"floating-label",htmlFor:Ie.id},K),J?de?e.createElement("button",{"aria-label":he,"aria-pressed":typeof ge=="boolean"?ge:void 0,className:(0,u.cn)("absolute top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground transition-colors","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",q==="error"&&"text-destructive hover:text-destructive/80",fe&&"opacity-50 cursor-not-allowed",De,Q),"data-slot":"input-suffix-button",disabled:fe,onClick:de,tabIndex:0,type:"button"},J):e.createElement("span",{className:(0,u.cn)("pointer-events-none absolute top-1/2 -translate-y-1/2 text-muted-foreground",q==="error"&&"text-destructive",De,Q),"data-slot":"input-suffix"},J):null),Ae&&e.createElement("p",{className:"text-sm text-destructive mt-1",role:"alert"},Ae)))});E.displayName="InputWithIcons"},972297:(k,L,s)=>{s.d(L,{y:()=>D});var e=s(63696),u=s(283722),_=s(347093),B=Object.defineProperty,R=Object.getOwnPropertySymbols,f=Object.prototype.hasOwnProperty,p=Object.prototype.propertyIsEnumerable,I=(o,E,l)=>E in o?B(o,E,{enumerable:!0,configurable:!0,writable:!0,value:l}):o[E]=l,w=(o,E)=>{for(var l in E||(E={}))f.call(E,l)&&I(o,l,E[l]);if(R)for(var l of R(E))p.call(E,l)&&I(o,l,E[l]);return o},b=(o,E)=>{var l={};for(var m in o)f.call(o,m)&&E.indexOf(m)<0&&(l[m]=o[m]);if(o!=null&&R)for(var m of R(o))E.indexOf(m)<0&&p.call(o,m)&&(l[m]=o[m]);return l};const D=e.forwardRef((o,E)=>{var l=o,{variant:m="outline",size:N="md",labelVariant:A="none",label:Oe="Password",placeholder:Ne,error:Q}=l,Te=b(l,["variant","size","labelVariant","label","placeholder","error"]);const[$,J]=e.useState(!1),de=e.useCallback(()=>{J(he=>!he)},[]);return e.createElement(_.b,w({ref:E,"data-slot":"password-input",error:Q,label:A!=="none"?Oe:void 0,labelVariant:A,onSuffixClick:de,placeholder:Ne,prefix:e.createElement(u.Ay,{name:"lock",tabIndex:-1}),prefixClassName:"flex items-center justify-center leading-none [&_svg]:!w-[16px] [&_svg]:!h-[16px]",size:N,suffix:$?e.createElement(u.Ay,{name:"eyeHidden",tabIndex:-1}):e.createElement(u.Ay,{name:"eyeFilled",tabIndex:-1}),suffixAriaLabel:$?"Hide password":"Show password",suffixClassName:"flex items-center justify-center leading-none [&_svg]:!w-[16px] [&_svg]:!h-[16px]",suffixPressed:$,type:$?"text":"password",variant:m},Te))});D.displayName="PasswordInput"}}]);
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.