WGDashboard/src/static/app/dist/assets/bulkAdd-Cw6o0TWQ.js

2 lines
14 KiB
JavaScript
Raw Normal View History

2025-02-14 23:24:16 +08:00
import{L as b}from"./localeText-DIMmLZFF.js";import{_ as m,a as n,c as d,b as t,d as o,m as r,x as h,n as u,j as _,D as v,W as k,v as y,G as K,f as x,w as S,F as I,h as A,t as w,k as P,e as $}from"./index-DlNxBlsu.js";const L={name:"nameInput",components:{LocaleText:b},props:{bulk:Boolean,data:Object,saving:Boolean}},D={for:"peer_name_textbox",class:"form-label"},T={class:"text-muted"},B=["disabled"];function V(a,e,i,c,p,f){const l=_("LocaleText");return n(),d("div",{class:u({inactiveField:this.bulk})},[t("label",D,[t("small",T,[o(l,{t:"Name"})])]),r(t("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving||this.bulk,"onUpdate:modelValue":e[0]||(e[0]=s=>this.data.name=s),id:"peer_name_textbox",placeholder:""},null,8,B),[[h,this.data.name]])],2)}const st=m(L,[["render",V]]),N={name:"privatePublicKeyInput",components:{LocaleText:b},props:{data:Object,saving:Boolean,bulk:Boolean},setup(){const a=v(),e=k();return{dashboardStore:a,wgStore:e}},data(){return{keypair:{publicKey:"",privateKey:"",presharedKey:""},editKey:!1,error:!1}},methods:{genKeyPair(){this.editKey=!1,this.keypair=window.wireguard.generateKeypair(),this.data.private_key=this.keypair.privateKey,this.data.public_key=this.keypair.publicKey},testKey(a){return/^[A-Za-z0-9+/]{43}=?=?$/.test(a)},checkMatching(){try{this.keypair.privateKey&&this.wgStore.checkWGKeyLength(this.keypair.privateKey)&&(this.keypair.publicKey=window.wireguard.generatePublicKey(this.keypair.privateKey),window.wireguard.generatePublicKey(this.keypair.privateKey)!==this.keypair.publicKey?(this.error=!0,this.dashboardStore.newMessage("WGDashboard","Private key does not match with the public key","danger")):(this.data.private_key=this.keypair.privateKey,this.data.public_key=this.keypair.publicKey))}catch{this.error=!0,this.data.private_key="",this.data.public_key=""}}},mounted(){this.genKeyPair()},watch:{keypair:{deep:!0,handler(){this.error=!1,this.checkMatching()}}}},C={for:"peer_private_key_textbox",class:"form-label"},U={class:"text-muted"},M={class:"input-group"},O=["disabled"],E=["disabled"],G={class:"d-flex"},j={for:"public_key",class:"form-label"},F={class:"text-muted"},R={class:"form-check form-switch ms-auto"},W=["disabled"],q={class:"form-check-label",for:"enablePublicKeyEdit"},J=["disabled"];function z(a,e,i,c,p,f){const l=_("LocaleText");return n(),d("div",{class:u(["d-flex gap-2 flex-column",{inactiveField:this.bulk}])},[t("div",null,[t("label",C,[t("small",U,[o(l,{t:"Private Key"}),t("code",null,[o(l,{t:"(Required for QR Code and Download)"})])])]),t("div",M,[r(t("input",{type:"text",class:u(["form-control form-control-sm rounded-start-3",{"is-invalid":this.error}]),"onUpdate:modelValue":e[0]||(e[0]=s=>this.keypair.privateKey=s),disabled:!this.editKey||this.bulk,onBlur:e[1]||(e[1]=s=>this.checkMatching()),id:"peer_private_key_textbox"},null,42,O),[[h,this.keypair.privateKey]]),t("button",{class:"btn btn-outline-info btn-sm rounded-end-3",onClick:e[2]||(e[2]=s=>this.genKeyPair()),disabled:this.bulk,type:"button",id:"button-addon2"},e[6]||(e[6]=[t("i",{class:"bi bi-arrow-repeat"},null,-1)]),8,E)])]),t("div",null,[t("div",G,[t("label",j,[t("small",F,[o(l,{t:"Public Key"}),t("code",null,[o(l,{t:"(Required)"})])])]),t("div",R,[r(t("input",{class:"form-check-input",type:"checkbox",role:"switch",disabled:this.bulk,id:"enablePublicKeyEdit","onUpdate:modelValue":e[3]||(e[3]=s=>this.editKey=s)},null,8,W),[[y,this.editKey]]),t("label",q,[t("small",null,[o(l,{t:"Use your own Private and Public Key"})])])])]),r(t("input",{class:u(["form-control-sm form-control rounded-3",{"is-invalid":this.error}]),"onUpdate:modelValue":e[4]||(e[4]=s=>this.keypair.publicKey=s),onBlur:e[5]||(e[5]=s=>this.checkMatching()),disabled:!this.editKey||this.bulk,type:"text",id:"public_key"},null,42,J),[[h,this.keypair.publicKey]])])],2)}const at=m(N,[["render",z]]),H={name:"allowedIPsInput",components:{LocaleText:b},props:{data:Object,saving:Boolean,bulk:Boolean,availableIp:void 0},data(){return{allowedIp:[],availableIpSearchString:"",customAvailableIp:"",allowedIpFormatError:!1}},setu