mirror of
https://github.com/nextcloud/server.git
synced 2026-02-03 20:41:22 -05:00
2 lines
6.7 KiB
JavaScript
2 lines
6.7 KiB
JavaScript
import{b as g,x as D,j as U,o as l,k as h,t as C,u as t,n as u,e as _,r as w,w as T,H as L,M as k,p,c as f,l as O,T as P,F as R,C as K,h as V}from"./runtime-dom.esm-bundler-DSTOTAEf.chunk.mjs";import{a as F,l as q}from"./index-xFugdZPW.chunk.mjs";import{t as r}from"./translation-DoG5ZELJ-2ffMJaM4.chunk.mjs";import{N as z}from"./NcNoteCard-CVhtNL04-CdF6Qoal.chunk.mjs";import{N as G}from"./ContentCopy-caJ7vqeg.chunk.mjs";import{e as M,N as B,f as j,a as H,b as W,d as J}from"./mdi-kAZc0JKn.chunk.mjs";import{d as Q,a as y}from"./index-JpgrUA2Z-D4yQFKNw.chunk.mjs";import{N as A,c as E}from"./logger-D3RVzcfQ-iUjwSNGe.chunk.mjs";import{_ as X}from"./TrashCanOutline-DKx7CxBb.chunk.mjs";import{c as b,i as Y}from"./index-D9L8KHF3.chunk.mjs";import{a as $}from"./createElementId-DhjFt1I9-Bjk2333q.chunk.mjs";import{g as Z}from"./index-6_gsQFyp.chunk.mjs";import"./index-Dzo4H_NA.chunk.mjs";import"./NcInputField-Bwsh2aHY-Bf_22pmD.chunk.mjs";import"./string_decoder-BO00msnV.chunk.mjs";const n=Object.freeze({STATUS_OK:1,STATUS_PENDING:2,STATUS_FAILURE:3,STATUS_ACCESS_REVOKED:4});class N extends Error{}async function ee(a){try{const{data:i}=await b.post($("apps/federation/trusted-servers"),{url:a}),s=i.ocs.data;return{id:s.id,url:s.url,status:n.STATUS_PENDING}}catch(i){throw I(i)}}async function te(a){try{await b.delete($(`apps/federation/trusted-servers/${a}`))}catch(i){throw I(i)}}function I(a){return Y(a)&&a.response?.data?.ocs?new N(a.response.data.ocs.meta.message,{cause:a}):a}const x=Z().setApp("federation").build(),re=g({__name:"AddTrustedServerForm",emits:["add"],setup(a,{emit:i}){const s=i,v=D("form"),d=w("");async function m(){try{const e=await ee(d.value);d.value="",s("add",e),k(()=>v.value?.reset()),Q(r("federation","Added to the list of trusted servers"))}catch(e){x.error("Failed to add trusted server",{error:e}),e instanceof N?y(e.message):y(r("federation","Could not add trusted server. Please try again later."))}}return(e,o)=>(l(),U("form",{ref:"form",onSubmit:L(m,["prevent"])},[h("h3",{class:u(e.$style.addTrustedServerForm__heading)},C(t(r)("federation","Add trusted server")),3),h("div",{class:u(e.$style.addTrustedServerForm__wrapper)},[_(t(X),{modelValue:d.value,"onUpdate:modelValue":o[0]||(o[0]=c=>d.value=c),label:t(r)("federation","Server url"),placeholder:"https://…",required:"",type:"url"},null,8,["modelValue","label"]),_(t(E),{class:u(e.$style.addTrustedServerForm__submitButton),"aria-label":t(r)("federation","Add"),title:t(r)("federation","Add"),type:"submit",variant:"primary"},{icon:T(()=>[_(t(A),{path:t(M)},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",de={addTrustedServerForm__heading:se,addTrustedServerForm__wrapper:ae,addTrustedServerForm__submitButton:ie},ne={$style:de},oe=F(re,[["__cssModules",ne]]),le=["textContent"],ue=g({__name:"TrustedServer",props:{server:{}},emits:["delete"],setup(a,{emit:i}){const s=a,v=i,d=w(!1),m=p(()=>s.server.status===n.STATUS_FAILURE),e=p(()=>{switch(s.server.status){case n.STATUS_OK:return J;case n.STATUS_PENDING:case n.STATUS_ACCESS_REVOKED:return W;case n.STATUS_FAILURE:default:return H}}),o=p(()=>{switch(s.server.status){case n.STATUS_OK:return[r("federation","Server ok"),r("federation","User list was exchanged at least once successfully with the remote server.")];case n.STATUS_PENDING:return[r("federation","Server pending"),r("federation","Waiting for shared secret or initial user list exchange.")];case n.STATUS_ACCESS_REVOKED:return[r("federation","Server access revoked"),r("federation","Server access revoked")];case n.STATUS_FAILURE:default:return[r("federation","Server failure"),r("federation","Connection to the remote server failed or the remote server is misconfigured.")]}});async function c(){try{d.value=!0,await te(s.server.id),v("delete",s.server)}catch(S){d.value=!1,x.error("Failed to delete trusted server",{error:S}),y(r("federation","Failed to delete trusted server. Please try again later."))}}return(S,Ce)=>(l(),U("li",{class:u(S.$style.trustedServer)},[_(t(A),{class:u({[S.$style.trustedServer__icon_error]:m.value}),path:e.value,name:o.value[0],title:o.value[1]},null,8,["class","path","name","title"]),h("code",{class:u(S.$style.trustedServer__url),textContent:C(a.server.url)},null,10,le),_(t(E),{"aria-label":t(r)("federation","Delete"),title:t(r)("federation","Delete"),disabled:d.value,onClick:c},{icon:T(()=>[d.value?(l(),f(t(B),{key:0})):(l(),f(t(A),{key:1,path:t(j)},null,8,["path"]))]),_:1},8,["aria-label","title","disabled"])],2))}}),_e="_trustedServer_1wqey_2",ce="_trustedServer__icon_error_1wqey_15",ve="_trustedServer__url_1wqey_19",me={trustedServer:_e,trustedServer__icon_error:ce,trustedServer__url:ve},Se={$style:me},fe=F(ue,[["__cssModules",Se]]),pe=g({__name:"AdminSettings",setup(a){const i=q("federation","adminSettings"),s=w(i.trustedServers),v=p(()=>s.value.some(e=>e.status===n.STATUS_PENDING));async function d(e){s.value.unshift(e)}function m(e){s.value=s.value.filter(o=>o.id!==e.id)}return(e,o)=>(l(),f(t(G),{name:t(r)("federation","Trusted servers"),docUrl: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:T(()=>[v.value?(l(),f(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),_(P,{class:u(e.$style.federationAdminSettings__trustedServersList),"aria-label":t(r)("federation","Trusted servers"),tag:"ul",enterFromClass:e.$style.transition_hidden,enterActiveClass:e.$style.transition_active,leaveActiveClass:e.$style.transition_active,leaveToClass:e.$style.transition_hidden},{default:T(()=>[(l(!0),U(R,null,K(s.value,c=>(l(),f(fe,{key:c.id,class:u(e.$style.federationAdminSettings__trustedServersListItem),server:c,onDelete:m},null,8,["class","server"]))),128))]),_:1},8,["class","aria-label","enterFromClass","enterActiveClass","leaveActiveClass","leaveToClass"]),_(oe,{onAdd:d})]),_:1},8,["name","docUrl","description"]))}}),Te="_federationAdminSettings__trustedServersList_z3uvu_2",he="_federationAdminSettings__trustedServersListItem_z3uvu_9",ye="_transition_active_z3uvu_13",Ae="_transition_hidden_z3uvu_17",ge={federationAdminSettings__trustedServersList:Te,federationAdminSettings__trustedServersListItem:he,transition_active:ye,transition_hidden:Ae},Ue={$style:ge},we=F(pe,[["__cssModules",Ue]]),Fe=V(we);Fe.mount("#federation-admin-settings");
|
|
//# sourceMappingURL=federation-settings-admin.mjs.map
|