Added OIDC for admin side

This commit is contained in:
Donald Zou
2026-06-26 20:22:50 +08:00
parent 4f99096d80
commit 0343e8f915
77 changed files with 379 additions and 151 deletions
@@ -0,0 +1 @@
import{_ as c,c as a,a as t,m as u,d as m,b as h,h as f,v as g,y as v,n as p,t as b,z as k,D as w,A as x,f as n}from"./index-DM7YJCOo.js";import{L as _}from"./localeText-BJvnc1lF.js";const V={components:{LocaleText:_},props:{targetData:String,title:String,warning:!1,warningText:""},setup(){const i=w(),e=`input_${x()}`;return{store:i,uuid:e}},data(){return{value:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.value=this.store.Configuration.Peers[this.targetData]},computed:{isBoolean(){return typeof this.value=="boolean"}},methods:{async useValidation(){this.changed&&await k("/api/updateDashboardConfigurationItem",{section:"Peers",key:this.targetData,value:this.value},i=>{i.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Peers[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=i.message),this.changed=!1,this.updating=!1})}}},y={class:"form-group mb-2"},D=["for"],C={key:0,class:"form-check form-switch"},T=["id","disabled"],F=["id","disabled"],B={class:"invalid-feedback"},I={key:2,class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block mt-1"};function P(i,e,l,S,d,o){const r=f("LocaleText");return n(),a("div",y,[t("label",{for:this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[h(r,{t:this.title},null,8,["t"])])])],8,D),o.isBoolean?(n(),a("div",C,[u(t("input",{class:"form-check-input",type:"checkbox",role:"switch","onUpdate:modelValue":e[0]||(e[0]=s=>this.value=s),id:this.uuid,onChange:e[1]||(e[1]=s=>{this.changed=!0,o.useValidation()}),disabled:this.updating},null,40,T),[[g,this.value]])])):u((n(),a("input",{key:1,type:"text",class:p(["form-control",{"is-invalid":d.showInvalidFeedback,"is-valid":d.isValid}]),id:this.uuid,"onUpdate:modelValue":e[2]||(e[2]=s=>this.value=s),onKeydown:e[3]||(e[3]=s=>this.changed=!0),onBlur:e[4]||(e[4]=s=>o.useValidation()),disabled:this.updating},null,42,F)),[[v,this.value]]),t("div",B,b(this.invalidFeedback),1),l.warning?(n(),a("div",I,[t("small",null,[e[5]||(e[5]=t("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),h(r,{t:l.warningText},null,8,["t"])])])):m("",!0)])}const z=c(V,[["render",P]]);export{z as P};