mirror of https://github.com/allinssl/allinssl
2 lines
2.9 KiB
JavaScript
2 lines
2.9 KiB
JavaScript
import{u as e,N as a}from"./index-3CAadC9a.js";import{d as l,r as t,w as u,c as s,v as d,q as o,$ as n,n as v,B as p,i as r}from"./main-DgoEun3x.js";import{u as i}from"./useStore-h2Wsbe9z.js";import{S as y}from"./index-D2WxTH-g.js";import{N as f}from"./text-YkLLgUfR.js";import{N as c}from"./Flex-CSUicabw.js";const m=l({name:"DnsProviderSelect",props:{type:{type:String,default:""},path:{type:String,default:""},value:{type:String,default:""},valueType:{type:String,default:"value"},isAddMode:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},customClass:{type:String,default:""}},emits:["update:value"],setup(l,{emit:m}){const{handleError:b}=e(),{fetchDnsProvider:_,dnsProvider:g}=i(),x=t({label:"",value:"",type:""}),h=t([]),S=t(!1),j=t(""),w=()=>{window.open("/auth-api-manage","_blank")},C=({option:e})=>s("div",{class:"flex items-center"},[e.label?D(e):s(f,{class:"text-[#aaa]"},{default:()=>["dns"===l.type?n("t_3_1745490735059"):n("请选择主机提供商")]})]),D=e=>s(c,null,{default:()=>[s(y,{icon:`resources-${e.type}`,size:"2rem"},null),s(f,null,{default:()=>[e.label]})]}),N=async()=>{var e,a,l;const t=g.value.find((e=>e.value===x.value.value));t&&(x.value={label:t.label,value:t.value,type:t.type}),g.value.length>0&&""===x.value.value&&(x.value={label:(null==(e=g.value[0])?void 0:e.label)||"",value:(null==(a=g.value[0])?void 0:a.value)||"",type:(null==(l=g.value[0])?void 0:l.type)||""}),m("update:value",x.value)},T=e=>{x.value.value=e,N()},k=async(e="")=>{S.value=!0,j.value="";try{await _(e)}catch(a){j.value="string"==typeof a?a:n("t_0_1746760933542"),b(a)}finally{S.value=!1}},A=(e,a)=>a.label.toLowerCase().includes(e.toLowerCase());return u((()=>g.value),(e=>{h.value=e.map((e=>({label:e.label,value:"value"===l.valueType?e.value:e.type,type:"value"===l.valueType?e.type:e.value})))||[],N()})),u((()=>l.value),(()=>{k(l.type),T(l.value)}),{immediate:!0}),()=>{let e;return s(a,{show:S.value},{default:()=>[s(d,{cols:24,class:l.customClass},{default:()=>[s(o,{span:l.isAddMode?13:24,label:"dns"===l.type?n("t_3_1745735765112"):n("主机提供商"),path:l.path},{default:()=>[s(v,{class:"flex-1 w-full",options:h.value,renderLabel:D,renderTag:C,filterable:!0,filter:A,placeholder:"dns"===l.type?n("t_3_1745490735059"):n("请选择主机提供商"),value:x.value.value,"onUpdate:value":e=>x.value.value=e,onUpdateValue:T,disabled:l.disabled},{empty:()=>s("span",{class:"text-[1.4rem]"},[j.value||("dns"===l.type?n("DNS提供商列表为空,请添加"):n("主机提供商列表为空,请添加"))])})]}),l.isAddMode&&s(o,{span:11},{default:()=>{return[s(p,{class:"mx-[8px]",onClick:w,disabled:l.disabled},{default:()=>["dns"===l.type?n("t_1_1746004861166"):n("添加主机提供商")]}),s(p,{onClick:()=>k(l.type),loading:S.value,disabled:l.disabled},(a=e=n("t_0_1746497662220"),"function"==typeof a||"[object Object]"===Object.prototype.toString.call(a)&&!r(a)?e:{default:()=>[e]}))];var a}})]})]})}}});export{m as D};
|