File: /www/server/panel/BTPanel/static/js/index347.js
import{c as A,X as B,cO as n,du as P,B as s,cN as f,dO as y}from"./utils-lib.js?v=1777008528";import{c as C,r as v,t as x,g as c,e as t,aB as T,x as p,o as V,j as O,C as I,p as S}from"./base-lib.js?v=1777008528";import{e as U}from"./form-item.js?v=1777008528";import{a as N,o as j}from"./index88.js?v=1777008528";import"./__commonjsHelpers__.js?v=1777008528";import"./index119.js?v=1777008528";import"./index118.js?v=1777008528";import"./index.vue_vue_type_script_setup_true_lang4.js?v=1777008528";import"./index175.js?v=1777008528";import"./index3.js?v=1777008528";import"./index116.js?v=1777008528";import"./index.vue_vue_type_style_index_0_scoped_cdc7f4d3_lang.js?v=1777008528";import"./useStore2.js?v=1777008528";import"./site.js?v=1777008528";import"./index218.js?v=1777008528";import"./index151.js?v=1777008528";import"./index152.js?v=1777008528";import"./useController8.js?v=1777008528";import"./ssl.js?v=1777008528";import"./useStore3.js?v=1777008528";import"./useController18.js?v=1777008528";import"./useMethod3.js?v=1777008528";import"./useController13.js?v=1777008528";import"./useController19.js?v=1777008528";import"./useMethod12.js?v=1777008528";import"./index192.js?v=1777008528";import"./useController20.js?v=1777008528";const me=C({__name:"index",setup(z,{expose:h}){const o=v(!1),{panel:g}=A(),{sitePath:l}=x(g.value),E=c(()=>l.value?(l.value+"/").replace(/\/\//g,"/"):"/www/wwwroot/"),i=v({webname:"",path:"/www/wwwroot",ftp:!1,ps:"",port:80,ftp_username:"",ftp_password:""}),{BtForm:_,submit:b}=B({data:i.value,options:e=>c(()=>(e.value.hasOwnProperty("ftp")||(e.value.ftp=!1),[{type:"custom",render:r=>(r.value.hasOwnProperty("webname")||(r.value.webname=""),t(s,{label:"绑定域名",prop:"webname"},{default:()=>[t(T,{ref:"popover",placement:"top-start","popper-class":"green-tips-popover !p-0",title:"",width:"370",visible:o.value,"onUpdate:visible":u=>o.value=u,"trigger-keys":[],trigger:"focus"},{default:()=>t("div",{class:"!p-[12px] bg-primary text-white"},[p("如需填写多个域名,请换行填写,每行一个域名,默认为80端口"),t("br",null,null),p("IP地址格式:192.168.1.199"),t("br",null,null),p("如另加端口格式为 www.domain.com:88"),t("br",null,null),p("ipv6格式:[2001:db8:85a3::8a2e:370:7334]:88")]),reference:()=>t(n,{rows:6,resize:"none",width:"42rem",modelValue:e.value.webname,"onUpdate:modelValue":u=>e.value.webname=u,onInput:u=>{var a,m,d,F,w;typeof u=="string"&&(e.value.ps=u.split("\n")[0],e.value.path=((a=E.value)==null?void 0:a.replace(/\/\//g,"/"))+((d=(m=u.split("\n")[0])==null?void 0:m.replace(/:/g,"_"))==null?void 0:d.trim()),e.value.ftp_username=(w=(F=u.split("\n")[0])==null?void 0:F.toString())==null?void 0:w.replace(/\W/g,"_").substring(0,16),e.value.ftp_password=P(12))},onFocus:()=>{o.value=!0},type:"textarea",placeholder:"如需填写多个域名,请换行填写,每行一个域名,默认为80端口\nIP地址格式:192.168.1.199\n如另加端口格式为 www.domain.com:88\nipv6格式:[2001:db8:85a3::8a2e:370:7334]:88"},null)})]})),key:"webname",rules:{webname:[f({message:"请输入域名",trigger:"blur"}),y()]}},{type:"input",label:"备注",key:"ps",attrs:{placeholder:"请输入备注,可为空",width:"42rem"}},U("根目录","path",{attrs:{width:"42rem",placeholder:"请输入根目录"},rules:[f({message:"请选择路径"})]},()=>{j(e.value.path,r=>{e.value.path=r})}),{type:"select",label:"FTP",key:"ftp",options:[{label:"不创建",value:!1},{label:"创建",value:!0}],attrs:{style:"width: 16rem;"}},...e.value.ftp?[{type:"custom",render:r=>(r.value.hasOwnProperty("ftp_username")||(r.value.ftp_username="",r.value.ftp_password=""),t(s,{label:"FTP账号"},{default:()=>[t("div",{class:"flex items-center mb-[12px]"},[t(s,{prop:"ftp_username"},{default:()=>[t(n,{placeholder:"创建FTP账号",width:"16rem",modelValue:e.value.ftp_username,"onUpdate:modelValue":u=>e.value.ftp_username=u},null)]}),t(s,{label:"密码",class:"!mt-0",prop:"ftp_password"},{default:()=>[t(n,{width:"16rem",placeholder:"FTP密码",modelValue:e.value.ftp_password,"onUpdate:modelValue":u=>e.value.ftp_password=u},null)]})]),t("span",{class:"text-tertiary text-small"},[p("创建站点的同时,为站点创建一个对应FTP帐户,并且FTP目录指向站点所在目录。")])]})),rules:{ftp_username:[{validator:(r,u,a)=>{e.value.ftp?u.length===0?a(new Error("FTP用户名不能为空!")):/^[a-zA-Z0-9_]+$/g.test(u)?u.length<=3?a(new Error("FTP用户名长度错误,不能少于3个字符!")):a():a(new Error("FTP用户名只能包含字母、数字和下划线!")):a()},trigger:["blur","change"]}],ftp_password:[{validator:(r,u,a)=>{u===""&&e.value.ftp?a(new Error("FTP密码不能为空!")):a()},trigger:["blur","change"]}]}}]:[]])),submit:async(e,r)=>(await r(),await N(e.value))});return V(()=>{l.value&&Object.assign(i.value,{path:l.value})}),h({onConfirm:b}),(e,r)=>(O(),I(S(_),{class:"p-2rem"}))}});export{me as default};