File: /www/server/panel/BTPanel/static/js/index340.js
import{X as k,cN as B,Y as N,dL as T}from"./utils-lib.js?v=1777008528";import{c as g,g as V,e,z as R,x as c,aA as A,ay as t,an as S,am as s,o as U,a8 as j,j as P,k as W,p as z}from"./base-lib.js?v=1777008528";import{u as I,t as m,a as L}from"./index74.js?v=1777008528";import{F as r,l as i,m as M}from"./form-item.js?v=1777008528";import{c as O}from"./useController28.js?v=1777008528";import"./__commonjsHelpers__.js?v=1777008528";import"./index118.js?v=1777008528";import"./index3.js?v=1777008528";import"./index119.js?v=1777008528";import"./index116.js?v=1777008528";import"./index317.js?v=1777008528";const X={class:"p-[2rem]"},te=g({__name:"index",setup(Y,{expose:_}){const{isTcpudpClbEdit:u,addTcpudpNodeData:o,nodeClbTcpudpRefresh:b}=I(),f=a=>{o.value.splice(a,1)},{BtForm:v,submit:F}=k({data:m,options:a=>V(()=>[r("名称","ps",{attrs:{disabled:u.value,class:"!w-[320px]",placeholder:"请输入负载均衡名称"},rules:[B({message:"请输入负载均衡名称",trigger:["blur","change"]})]}),i("协议","type",[{label:"TCP",value:"tcp"},{label:"UDP",value:"udp"}]),i("监听地址","host",[{label:"127.0.0.1",value:"127.0.0.1"},{label:"0.0.0.0",value:"0.0.0.0"}]),r("监听端口","port",{attrs:{class:"!w-[320px]",placeholder:"请输入监听端口"},rules:[N({message:"请输入监听端口"})]}),r("超时时间(秒) ","proxy_timeout",{attrs:{class:"!w-[320px]",placeholder:"连接节点时的最大超时时间,默认8秒"}}),r("保持时间(秒)","proxy_connect_timeout",{attrs:{class:"!w-[320px]",placeholder:"连接成功后最长无操作时间,默认86400秒"}}),M(()=>e("div",null,[e("div",{class:"flex justify-between items-center mb-5"},[e(R,{type:"primary",onClick:L},{default:()=>[c("添加负载均衡节点")]})]),e(A,{data:o.value,"table-layout":"auto"},{default:()=>[e(t,{prop:"node_id",label:"负载均衡节点"},{default:({row:l})=>e("span",null,[l.host])}),e(t,{prop:"port",label:"端口"},null),e(t,{prop:"node_status",label:"节点状态"},{default:({row:l})=>e(S,{modelValue:l.node_status,"onUpdate:modelValue":p=>l.node_status=p,style:"width: 70px"},{default:()=>[e(s,{label:"参与",value:"online"},null),e(s,{label:"备份",value:"backup"},null),e(s,{label:"停用",value:"down"},null)]})}),e(t,{prop:"weight",label:"权重"},null),e(t,{prop:"max_fail",label:"阈值"},null),e(t,{prop:"fail_timeout",label:"恢复时间(秒)"},null),e(t,{prop:"ps",label:"备注","show-overflow-tooltip":!0,width:"120"},null),e(t,{label:"操作",width:"60"},{default:l=>e("span",{class:"bt-link",onClick:()=>f(l.$index)},[c("删除")])})]})]))]),submit:async(a,l,p)=>{try{await l();const{name:n,proxy_connect_timeout:x,proxy_timeout:y,host:h,port:C,type:w,ps:D}=a.value,E=o.value||[];let d={name:n,ps:D,tcp_config:{type:w,host:h,port:Number(C),proxy_connect_timeout:Number(x),proxy_timeout:Number(y)},nodes:E};return u.value&&(d.load_id=a.value.load_id),await O({mod_name:"node",sub_mod_name:"load",def_name:u.value?"modify_tcp_load":"create_tcp_load",ws_callback:u.value?"modify_tcp_load":"create_tcp_load",data:{...d}}),b.value=!0,!0}catch(n){return!1}}});return _({onConfirm:F}),U(()=>{var a;o.value=T((a=m().nodes)!=null?a:[])}),j(()=>{o.value=[]}),(a,l)=>(P(),W("div",X,[e(z(v))]))}});export{te as default};