mirror of https://github.com/allinssl/allinssl
2 lines
3.7 KiB
JavaScript
2 lines
3.7 KiB
JavaScript
import{u as e}from"./useStore-CqTywDu_.js";import{u as a,N as l}from"./index-DmFXBilk.js";import{r as u,x as t,o as s,aV as v,$ as d,d as o,c as r,w as n,q as i,n as p,B as y,i as c}from"./main-8EQU3vkq.js";import{S as f}from"./index-BkKKTGm9.js";import{a as m,N as b}from"./business-C0XjYveQ.js";const _=o({name:"DnsProviderSelect",props:{type:{type:String,required:!0},path:{type:String,required:!0},value:{type:String,required:!0},valueType:{type:String,default:"value"},isAddMode:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},customClass:{type:String,default:""}},emits:["update:value"],setup(o,{emit:_}){const g=function(l,o){const{handleError:r}=a(),{fetchDnsProvider:n,resetDnsProvider:i,dnsProvider:p}=e(),y=u({label:"",value:"",type:""}),c=u([]),f=u(!1),m=u(""),b=()=>{var e,a,u,t,s;const v=p.value.find((e=>("value"===l.valueType?e.value:e.type)===y.value.value));v?(y.value={label:v.label,value:"value"===l.valueType?v.value:v.type,type:"value"===l.valueType?v.type:v.value},o("update:value",{...y.value})):""===y.value.value&&p.value.length>0&&(y.value={label:(null==(e=p.value[0])?void 0:e.label)||"",value:"value"===l.valueType?(null==(a=p.value[0])?void 0:a.value)||"":(null==(u=p.value[0])?void 0:u.type)||"",type:"value"===l.valueType?(null==(t=p.value[0])?void 0:t.type)||"":(null==(s=p.value[0])?void 0:s.value)||""},o("update:value",{...y.value}))},_=e=>{y.value.value=e,b()},g=async(e=l.type)=>{f.value=!0,m.value="";try{await n(e),l.value?(y.value.value=l.value,b()):b()}catch(a){m.value="string"==typeof a?a:d("t_0_1746760933542"),r(a)}finally{f.value=!1}};return t((()=>p.value),(e=>{var a;c.value=e.map((e=>({label:e.label,value:"value"===l.valueType?e.value:e.type,type:"value"===l.valueType?e.type:e.value})))||[],c.value.some((e=>e.value===y.value.value))?b():l.value&&c.value.some((e=>e.value===l.value))?(y.value.value=l.value,b()):""===y.value.value&&c.value.length>0&&(y.value.value=(null==(a=c.value[0])?void 0:a.value)||"",b())}),{deep:!0}),t((()=>l.value),(e=>{e!==y.value.value&&_(e)}),{immediate:!0}),t((()=>l.type),(e=>{g(e)})),s((async()=>{await g(l.type)})),v((()=>{i()})),{param:y,dnsProviderRef:c,isLoading:f,errorMessage:m,goToAddDnsProvider:()=>{window.open("/auth-api-manage","_blank")},handleUpdateValue:_,loadDnsProviders:g,handleFilter:(e,a)=>a.label.toLowerCase().includes(e.toLowerCase())}}(o,_),h=e=>r(b,{align:"center"},{default:()=>[r(f,{icon:`resources-${e.type}`,size:"2rem"},null),r(m,null,{default:()=>[e.label]})]});return()=>{let e;return r(l,{show:g.isLoading.value},{default:()=>[r(n,{cols:24,class:o.customClass},{default:()=>[r(i,{span:o.isAddMode?13:24,label:"dns"===o.type?d("t_3_1745735765112"):d("t_0_1746754500246"),path:o.path},{default:()=>[r(p,{class:"flex-1 w-full",filterable:!0,options:g.dnsProviderRef.value,renderLabel:h,renderTag:({option:e})=>(({option:e})=>r("div",{class:"flex items-center"},[e.label?h(e):r(m,{class:"text-[#aaa]"},{default:()=>["dns"===o.type?d("t_0_1747019621052"):d("t_0_1746858920894")]})]))({option:e}),filter:(e,a)=>g.handleFilter(e,a),placeholder:"dns"===o.type?d("t_3_1745490735059"):d("t_0_1746858920894"),value:g.param.value.value,onUpdateValue:g.handleUpdateValue,disabled:o.disabled},{empty:()=>r("span",{class:"text-[1.4rem]"},[g.errorMessage.value||("dns"===o.type?d("t_1_1746858922914"):d("t_2_1746858923964"))])})]}),o.isAddMode&&r(i,{span:11},{default:()=>{return[r(y,{class:"mx-[8px]",onClick:g.goToAddDnsProvider,disabled:o.disabled},{default:()=>["dns"===o.type?d("t_1_1746004861166"):d("t_3_1746858920060")]}),r(y,{onClick:()=>g.loadDnsProviders(o.type),loading:g.isLoading.value,disabled:o.disabled},(a=e=d("t_0_1746497662220"),"function"==typeof a||"[object Object]"===Object.prototype.toString.call(a)&&!c(a)?e:{default:()=>[e]}))];var a}})]})]})}}});export{_ as D};
|