mirror of
https://github.com/nextcloud/server.git
synced 2026-02-03 20:41:22 -05:00
2 lines
6.6 KiB
JavaScript
2 lines
6.6 KiB
JavaScript
import{b as g,v as D,r as w,j as U,o as l,k as T,t as F,u as t,n as u,e as c,w as h,H as L,J as k,x as p,c as S,l as O,T as P,F as R,C as K,h as V}from"./runtime-dom.esm-bundler-BrYCUcZF.chunk.mjs";import{a as E,l as q}from"./index-xFugdZPW.chunk.mjs";import{t as r}from"./translation-DoG5ZELJ-gw0g4US-.chunk.mjs";import{a as y,c as b,N as z}from"./NcNoteCard-CVhtNL04-hwuc093N.chunk.mjs";import{N as G}from"./ContentCopy-DVkZwwZt.chunk.mjs";import{e as B,a as M,b as j,d as H,N as J,f as W}from"./mdi-D55n0uzy.chunk.mjs";import{e as Q,a as A}from"./index-JpgrUA2Z-BFiKKJ1W.chunk.mjs";import{_ as X}from"./TrashCanOutline-CvWRJ8GE.chunk.mjs";import{c as $,i as Y}from"./index-BfylblLb.chunk.mjs";import{a as N}from"./createElementId-DhjFt1I9--Zqj3wLs.chunk.mjs";import{g as Z}from"./index-6_gsQFyp.chunk.mjs";import"./NcInputField-Bwsh2aHY-CHbAfY0u.chunk.mjs";import"./string_decoder-BO00msnV.chunk.mjs";const d=Object.freeze({STATUS_OK:1,STATUS_PENDING:2,STATUS_FAILURE:3,STATUS_ACCESS_REVOKED:4});class I extends Error{}async function ee(a){try{const{data:i}=await $.post(N("apps/federation/trusted-servers"),{url:a}),s=i.ocs.data;return{id:s.id,url:s.url,status:d.STATUS_PENDING}}catch(i){throw x(i)}}async function te(a){try{await $.delete(N(`apps/federation/trusted-servers/${a}`))}catch(i){throw x(i)}}function x(a){return Y(a)&&a.response?.data?.ocs?new I(a.response.data.ocs.meta.message,{cause:a}):a}const C=Z().setApp("federation").build(),re=g({__name:"AddTrustedServerForm",emits:["add"],setup(a,{emit:i}){const s=i,v=D("form"),n=w("");async function m(){try{const e=await ee(n.value);n.value="",s("add",e),k(()=>v.value?.reset()),Q(r("federation","Added to the list of trusted servers"))}catch(e){C.error("Failed to add trusted server",{error:e}),e instanceof I?A(e.message):A(r("federation","Could not add trusted server. Please try again later."))}}return(e,o)=>(l(),U("form",{ref:"form",onSubmit:L(m,["prevent"])},[T("h3",{class:u(e.$style.addTrustedServerForm__heading)},F(t(r)("federation","Add trusted server")),3),T("div",{class:u(e.$style.addTrustedServerForm__wrapper)},[c(t(X),{modelValue:n.value,"onUpdate:modelValue":o[0]||(o[0]=_=>n.value=_),label:t(r)("federation","Server url"),placeholder:"https://…",required:"",type:"url"},null,8,["modelValue","label"]),c(t(b),{class:u(e.$style.addTrustedServerForm__submitButton),"aria-label":t(r)("federation","Add"),title:t(r)("federation","Add"),type:"submit",variant:"primary"},{icon:h(()=>[c(t(y),{path:t(B)},null,8,["path"])]),_:1},8,["class","aria-label","title"])],2)],544))}}),se="_addTrustedServerForm__heading_14ngv_2",ae="_addTrustedServerForm__wrapper_14ngv_7",ie="_addTrustedServerForm__submitButton_14ngv_14",ne={addTrustedServerForm__heading:se,addTrustedServerForm__wrapper:ae,addTrustedServerForm__submitButton:ie},de={$style:ne},oe=E(re,[["__cssModules",de]]),le=["textContent"],ue=g({__name:"TrustedServer",props:{server:{}},emits:["delete"],setup(a,{emit:i}){const s=a,v=i,n=w(!1),m=p(()=>s.server.status===d.STATUS_FAILURE),e=p(()=>{switch(s.server.status){case d.STATUS_OK:return H;case d.STATUS_PENDING:case d.STATUS_ACCESS_REVOKED:return j;case d.STATUS_FAILURE:default:return M}}),o=p(()=>{switch(s.server.status){case d.STATUS_OK:return[r("federation","Server ok"),r("federation","User list was exchanged at least once successfully with the remote server.")];case d.STATUS_PENDING:return[r("federation","Server pending"),r("federation","Waiting for shared secret or initial user list exchange.")];case d.STATUS_ACCESS_REVOKED:return[r("federation","Server access revoked"),r("federation","Server access revoked")];case d.STATUS_FAILURE:default:return[r("federation","Server failure"),r("federation","Connection to the remote server failed or the remote server is misconfigured.")]}});async function _(){try{n.value=!0,await te(s.server.id),v("delete",s.server)}catch(f){n.value=!1,C.error("Failed to delete trusted server",{error:f}),A(r("federation","Failed to delete trusted server. Please try again later."))}}return(f,Fe)=>(l(),U("li",{class:u(f.$style.trustedServer)},[c(t(y),{class:u({[f.$style.trustedServer__icon_error]:m.value}),path:e.value,name:o.value[0],title:o.value[1]},null,8,["class","path","name","title"]),T("code",{class:u(f.$style.trustedServer__url),textContent:F(a.server.url)},null,10,le),c(t(b),{"aria-label":t(r)("federation","Delete"),title:t(r)("federation","Delete"),disabled:n.value,onClick:_},{icon:h(()=>[n.value?(l(),S(t(J),{key:0})):(l(),S(t(y),{key:1,path:t(W)},null,8,["path"]))]),_:1},8,["aria-label","title","disabled"])],2))}}),ce="_trustedServer_1wqey_2",_e="_trustedServer__icon_error_1wqey_15",ve="_trustedServer__url_1wqey_19",me={trustedServer:ce,trustedServer__icon_error:_e,trustedServer__url:ve},fe={$style:me},Se=E(ue,[["__cssModules",fe]]),pe=g({__name:"AdminSettings",setup(a){const i=q("federation","adminSettings"),s=w(i.trustedServers),v=p(()=>s.value.some(e=>e.status===d.STATUS_PENDING));async function n(e){s.value.unshift(e)}function m(e){s.value=s.value.filter(o=>o.id!==e.id)}return(e,o)=>(l(),S(t(G),{name:t(r)("federation","Trusted servers"),"doc-url":t(i).docUrl,description:t(r)("federation","Federation allows you to connect with other trusted servers to exchange the account directory. For example this will be used to auto-complete external accounts for federated sharing. It is not necessary to add a server as trusted server in order to create a federated share.")},{default:h(()=>[v.value?(l(),S(t(z),{key:0,type:"info",text:t(r)("federation","Each server must validate the other. This process may require a few cron cycles.")},null,8,["text"])):O("",!0),c(P,{class:u(e.$style.federationAdminSettings__trustedServersList),"aria-label":t(r)("federation","Trusted servers"),tag:"ul","enter-from-class":e.$style.transition_hidden,"enter-active-class":e.$style.transition_active,"leave-active-class":e.$style.transition_active,"leave-to-class":e.$style.transition_hidden},{default:h(()=>[(l(!0),U(R,null,K(s.value,_=>(l(),S(Se,{key:_.id,class:u(e.$style.federationAdminSettings__trustedServersListItem),server:_,onDelete:m},null,8,["class","server"]))),128))]),_:1},8,["class","aria-label","enter-from-class","enter-active-class","leave-active-class","leave-to-class"]),c(oe,{onAdd:n})]),_:1},8,["name","doc-url","description"]))}}),he="_federationAdminSettings__trustedServersList_z3uvu_2",Te="_federationAdminSettings__trustedServersListItem_z3uvu_9",ye="_transition_active_z3uvu_13",Ae="_transition_hidden_z3uvu_17",ge={federationAdminSettings__trustedServersList:he,federationAdminSettings__trustedServersListItem:Te,transition_active:ye,transition_hidden:Ae},we={$style:ge},Ue=E(pe,[["__cssModules",we]]),Ee=V(Ue);Ee.mount("#federation-admin-settings");
|
|
//# sourceMappingURL=federation-settings-admin.mjs.map
|