mirror of
https://gitee.com/mirrors/AllinSSL.git
synced 2026-03-08 07:41:10 +08:00
2 lines
17 KiB
JavaScript
2 lines
17 KiB
JavaScript
import{e,s as a,r as t,$ as s,f as n,d as r,c as l,g as i,o,N as c,h as u,B as p,j as d,i as _,k as g,l as f,m,n as y,b as h,p as w,q as v,t as k,v as b,w as I,x as A,y as x,z as q,a as P}from"./main-QRRFfw1J.js";import{u as S,E as j}from"./index-H882E_9s.js";import{u as C,a as K,b as U}from"./index-C3JUbkC1.js";import{N as E,a as z,w as F,O as T,H as M,T as R,d as V}from"./business-DeiwQqH9.js";import{g as L,a as N,u as O,d as D,t as B,b as J}from"./access-BrLD4-pI.js";import{A as $}from"./data-BpUYgST2.js";import{S as G}from"./index-D09eDYAr.js";import{T as H}from"./index-D1KU3ZtX.js";import{n as W}from"./utils-CRt-4gJj.js";import{N as Q}from"./Alert-CWeyFW2f.js";import{B as X}from"./index-BX-CjyYo.js";const Y=n(),Z=e("auth-api-manage-store",(()=>{const{handleError:e}=C(),a=t({name:"",type:"btpanel",config:{url:"",api_key:"",ignore_ssl:"0"}}),n={dns:s("t_3_1745735765112"),host:s("t_0_1746754500246"),plugin:"插件"},r=()=>{a.value={name:"",type:"btpanel",config:{url:"",api_key:"",ignore_ssl:"0"}}};return{apiFormProps:a,accessTypeMap:n,fetchAccessList:async a=>{try{const e=await L(a).fetch();return{list:e.data||[],total:e.count}}catch(t){return e(t),{list:[],total:0}}},addNewAccess:async a=>{try{const{fetch:e,message:t}=N(a);t.value=!0,await e(),r()}catch(t){throw e(t)&&Y.error(s("t_8_1745289354902")),t}},updateExistingAccess:async a=>{try{const{fetch:e,message:t}=O(a);t.value=!0,await e(),r()}catch(t){throw e(t)&&Y.error(s("t_40_1745227838872")),t}},deleteExistingAccess:async a=>{try{const{fetch:e,message:t}=D({id:a});t.value=!0,await e(),r()}catch(t){throw e(t)&&Y.error(s("t_40_1745227838872")),t}},resetApiForm:r}})),ee=r({name:"ApiManageForm",props:{data:{type:Object,default:()=>{}}},setup(e){const{ApiManageForm:a}=pe(e);return()=>l("div",{class:"p-4"},[l(a,{labelPlacement:"top",requireMarkPlacement:"right-hanging"},null)])}});function ae(e){return"function"==typeof e||"[object Object]"===Object.prototype.toString.call(e)&&!_(e)}const{accessTypeMap:te,apiFormProps:se,fetchAccessList:ne,deleteExistingAccess:re,addNewAccess:le,updateExistingAccess:ie,resetApiForm:oe}=(()=>{const e=Z();return{...e,...a(e)}})(),{handleError:ce}=C(),ue=()=>{const{TableComponent:e,PageComponent:a,loading:t,param:n,fetch:r}=i({config:[{title:s("t_2_1745289353944"),key:"name",width:200,ellipsis:{tooltip:!0}},{title:s("t_1_1746754499371"),key:"type",width:140,render:e=>l(H,{icon:e.type,type:"success"},null)},{title:s("t_2_1746754500270"),key:"type",width:200,render:e=>l(u,null,{default:()=>{var a;return[null==(a=e.access_type)?void 0:a.map((e=>l(c,{key:e,type:"dns"===e?"success":"info",size:"small"},{default:()=>[te[e]]})))]}})},{title:s("t_7_1745215914189"),key:"create_time",width:180},{title:s("t_0_1745295228865"),key:"update_time",width:180},{title:s("t_8_1745215914610"),key:"actions",width:200,align:"right",fixed:"right",render:e=>{let a,t,n;return l(u,{justify:"end"},{default:()=>[l(p,{size:"tiny",strong:!0,secondary:!0,type:"primary",onClick:()=>(async e=>{try{const{fetch:a,message:t}=B({id:e.id,type:e.type});t.value=!0,a()}catch(a){ce(a)}})(e)},ae(a=s("t_16_1746676855270"))?a:{default:()=>[a]}),l(p,{size:"tiny",strong:!0,secondary:!0,type:"primary",onClick:()=>g(e)},ae(t=s("t_11_1745215915429"))?t:{default:()=>[t]}),l(p,{size:"tiny",strong:!0,secondary:!0,type:"error",onClick:()=>f(e.id)},ae(n=s("t_12_1745215914312"))?n:{default:()=>[n]})]})}}],request:ne,watchValue:["p","limit"],storage:"authApiManage",alias:{page:"p",pageSize:"limit"},defaultValue:{p:1,limit:10,search:""}}),{SearchComponent:_}=S({onSearch:e=>{n.value.search=e,r()}}),g=e=>{d({title:s("t_4_1745289354902"),area:500,component:ee,componentProps:{data:e},footer:!0,onUpdateShow:e=>{e||r(),oe()}})},f=e=>{K({title:s("t_5_1745289355718"),content:s("t_6_1745289358340"),confirmText:s("t_5_1744870862719"),cancelText:s("t_4_1744870861589"),onPositiveClick:async()=>{await re(e),await r()}})};return o(r),{loading:t,fetch:r,TableComponent:e,PageComponent:a,SearchComponent:_,param:n,openAddForm:()=>{d({title:s("t_0_1745289355714"),area:500,component:ee,footer:!0,onUpdateShow:e=>{e||r(),oe()}})}}},pe=e=>{var a;const{confirm:n}=q(),{open:r,close:i}=U({text:s("t_0_1746667592819")}),{useFormInput:u,useFormRadioButton:p,useFormSwitch:d,useFormTextarea:_,useFormCustom:P}=f(),S=(null==(a=e.data)?void 0:a.id)?t({...e.data,config:JSON.parse(e.data.config)}):se,j=t(""),C=t([]),K={name:{required:!0,message:s("t_27_1745289355721"),trigger:"input"},type:{required:!0,message:s("t_28_1745289356040"),trigger:"change"},config:{host:{required:!0,trigger:"input",validator:(e,a,t)=>{if(!R(a)&&!V(a))return t(new Error(s("t_0_1749119980577")));t()}},port:{required:!0,trigger:"input",validator:(e,a,t)=>{if(!M(a.toString()))return t(new Error(s("t_1_1745317313096")));t()}},user:{required:!0,trigger:"input",message:s("t_3_1744164839524")},username:{trigger:"input",validator:(e,a,t)=>{if(!a){const e={westcn:s("t_0_1747365600180"),namedotcom:"请输入用户名",lecdn:"请输入用户名"};return t(new Error(e[S.value.type]||s("t_0_1747365600180")))}t()}},password:{trigger:"input",validator:(e,a,t)=>{if(!a){const e={westcn:s("t_1_1747365603108"),ssh:s("t_0_1747711335067"),lecdn:"请输入密码"};return t(new Error(e[S.value.type]))}t()}},key:{required:!0,message:s("t_31_1745289355715"),trigger:"input"},url:{required:!0,trigger:"input",validator:(e,a,t)=>{if(!T(a)){const e={btpanel:s("t_2_1745317314362"),btwaf:s("t_0_1747271295174"),safeline:s("t_0_1747300383756"),lecdn:"请输入正确的URL地址"};return t(new Error(e[S.value.type]))}t()}},api_key:{trigger:"input",validator:(e,a,t)=>{if(!a.length){const e={cloudflare:s("t_0_1747042966820"),btpanel:s("t_1_1747042969705"),btwaf:s("t_1_1747300384579"),godaddy:s("t_0_1747984137443"),ns1:"请输入API Key",namecheap:"请输入API Key",constellix:"请输入API Key"};return t(new Error(e[S.value.type]))}t()}},api_secret:{required:!0,message:s("t_1_1747984133312"),trigger:"input"},access_secret:{required:!0,message:s("t_2_1747984134626"),trigger:"input"},api_token:{required:!0,message:s("t_0_1747617113090"),trigger:"input"},secret_access_key:{required:!0,message:"请输入Secret Access Key",trigger:"input"},api_user:{required:!0,message:"请输入API User",trigger:"input"},auth_id:{required:!0,message:"请输入Auth ID",trigger:"input"},auth_password:{required:!0,message:"请输入Auth Password",trigger:"input"},tenant_id:{required:!0,message:"请输入Tenant ID",trigger:"input"},client_id:{required:!0,message:"请输入Client ID",trigger:"input"},client_secret:{required:!0,message:"请输入Client Secret",trigger:"input"},secret_id:{required:!0,message:s("t_6_1745317313383"),trigger:"input"},access_key:{trigger:"input",validator:(e,a,t)=>{if(!a){const e={huawei:s("t_2_1747271295877"),baidu:s("t_3_1747271294475"),volcengine:s("t_3_1747365600828"),qiniu:s("t_3_1747984134586"),doge:s("t_0_1750320239265")};return t(new Error(e[S.value.type]))}t()}},secret_key:{trigger:"input",validator:(e,a,t)=>{if(!a.length){const e={tencentcloud:s("t_2_1747042967277"),huawei:s("t_3_1747042967608"),baidu:s("t_4_1747271294621"),volcengine:s("t_4_1747365600137"),doge:s("t_1_1750320241427"),constellix:"请输入Secret Key"};return t(new Error(e[S.value.type]))}t()}},email:{trigger:"input",validator:(e,a,t)=>"cloudflare"!==S.value.type||a&&""!==a.trim()?F(a)?void t():t(new Error(s("t_5_1747042965911"))):t()},"config.name":{required:!0,message:s("t_0_1750144125193"),trigger:"change"}}},L=Object.entries($).filter((([e,a])=>!("boolean"==typeof a.notApi&&!a.notApi))).map((([e,a])=>({label:a.name,value:e,access:a.type||[]}))),N=new Map([["btwaf","宝塔WAF-URL"],["btpanel","宝塔面板-URL"],["1panel","1Panel-URL"],["safeline","雷池WAF-URL"]]),O=g((()=>{var a;const t=[u(s("t_2_1745289353944"),"name"),P((()=>l(y,{label:s("t_41_1745289354902"),path:"type"},{default:()=>{var a;return[l(m,{class:"w-full",options:L,renderLabel:B,renderTag:D,disabled:!!(null==(a=e.data)?void 0:a.id),filterable:!0,placeholder:s("t_0_1745833934390"),value:S.value.type,"onUpdate:value":e=>S.value.type=e},{empty:()=>l("span",{class:"text-[1.4rem]"},[s("t_0_1745833934390")])})]}})))];switch(S.value.type){case"ssh":t.push(P((()=>l(I,{cols:24,xGap:4},{default:()=>[l(k,{label:s("t_1_1747711335336"),span:16,path:"config.host"},{default:()=>[l(v,{value:S.value.config.host,"onUpdate:value":e=>S.value.config.host=e,placeholder:s("t_2_1747711337958"),"allow-input":W},null)]}),l(k,{label:s("t_2_1745833931404"),span:8,path:"config.port"},{default:()=>[l(b,{value:S.value.config.port,"onUpdate:value":e=>S.value.config.port=e,showButton:!1},null)]})]}))),u(s("t_44_1745289354583"),"config.user"),p(s("t_45_1745289355714"),"config.mode",[{label:s("t_48_1745289355714"),value:"password"},{label:s("t_1_1746667588689"),value:"key"}]),"password"===(null==(a=S.value.config)?void 0:a.mode)?u(s("t_48_1745289355714"),"config.password",{allowInput:W}):_(s("t_1_1746667588689"),"config.key",{rows:3,placeholder:s("t_0_1747709067998")}));break;case"1panel":t.push(P((()=>{const e=S.value.config.version||"v1";return l(y,{label:"版本",path:"config.version",showRequireMark:!1},{default:()=>[l(m,{class:"w-full",options:[{label:"v1",value:"v1"},{label:"v2",value:"v2"}],placeholder:"请选择版本",value:e,onUpdateValue:e=>{S.value.config.version=e}},null)]})})),u(N.get(S.value.type)||"","config.url",{allowInput:W}),u(s("t_55_1745289355715"),"config.api_key",{allowInput:W}),d(s("t_3_1746667592270"),"config.ignore_ssl",{checkedValue:"1",uncheckedValue:"0"},{showRequireMark:!1}));break;case"btpanel":case"btwaf":case"safeline":t.push(u(N.get(S.value.type)||"","config.url",{allowInput:W}),u("safeline"===S.value.type?s("t_1_1747617105179"):s("t_55_1745289355715"),"safeline"===S.value.type?"config.api_token":"config.api_key",{allowInput:W}),d(s("t_3_1746667592270"),"config.ignore_ssl",{checkedValue:"1",uncheckedValue:"0"},{showRequireMark:!1}));break;case"aliyun":t.push(u("AccessKeyId","config.access_key_id",{allowInput:W}),u("AccessKeySecret","config.access_key_secret",{allowInput:W}));break;case"tencentcloud":t.push(u("SecretId","config.secret_id",{allowInput:W}),u("SecretKey","config.secret_key",{allowInput:W}));break;case"huaweicloud":case"baidu":case"volcengine":case"doge":t.push(u("AccessKey","config.access_key",{allowInput:W}),u("SecretKey","config.secret_key",{allowInput:W}));break;case"cloudflare":t.push(u("邮箱","config.email",{allowInput:W},{showRequireMark:!1}),u("APIKey","config.api_key",{allowInput:W}),P((()=>l(Q,{type:"error",class:"mt-[1.2rem] whitespace-nowrap",showIcon:!1},{default:()=>[l("span",{class:"text-[1.3rem]"},[h("使用API令牌时不要填写邮箱,否则将作为Global Key请求Cloudflare")])]}))));break;case"westcn":t.push(u("Username","config.username",{allowInput:W}),u("Password","config.password",{allowInput:W}));break;case"godaddy":t.push(u("API Key","config.api_key",{allowInput:W}),u("API Secret","config.api_secret",{allowInput:W}));break;case"qiniu":t.push(u("AccessKey","config.access_key",{allowInput:W}),u("AccessSecret","config.access_secret",{allowInput:W}));break;case"namecheap":t.push(u("API User","config.api_user",{allowInput:W}),u("API Key","config.api_key",{allowInput:W}));break;case"ns1":case"namesilo":case"bunny":t.push(u("API Key","config.api_key",{allowInput:W}));break;case"cloudns":t.push(u("Auth ID","config.auth_id",{allowInput:W}),u("Auth Password","config.auth_password",{allowInput:W}));break;case"aws":case"jdcloud":t.push(u("Access Key ID","config.access_key_id",{allowInput:W}),u("Secret Access Key","config.secret_access_key",{allowInput:W}));break;case"azure":t.push(u("Tenant ID","config.tenant_id",{allowInput:W}),u("Client ID","config.client_id",{allowInput:W}),u("Client Secret","config.client_secret",{allowInput:W}),u("Environment","config.environment",{allowInput:W,placeholder:"public"}));break;case"namedotcom":t.push(u("Username","config.username",{allowInput:W}),u("API Token","config.api_token",{allowInput:W}));break;case"gcore":t.push(u("API Token","config.api_token",{allowInput:W}));break;case"lecdn":t.push(u("URL","config.url",{allowInput:W}),u("Username","config.username",{allowInput:W}),u("Password","config.password",{allowInput:W}),d(s("t_3_1746667592270"),"config.ignore_ssl",{checkedValue:"1",uncheckedValue:"0"},{showRequireMark:!1}));break;case"constellix":t.push(u("API Key","config.api_key",{allowInput:W}),u("Secret Key","config.secret_key",{allowInput:W}));break;case"plugin":t.push(P((()=>l(y,{label:s("t_1_1750144122230"),path:"config.name",showRequireMark:!0},{default:()=>[l(m,{class:"w-full",options:C.value,placeholder:s("t_2_1750144123753"),filterable:!0,renderLabel:H,renderTag:X,value:S.value.config.name,"onUpdate:value":e=>S.value.config.name=e,onUpdateValue:(e,a)=>{S.value.config.name=e,j.value=Y(a.config||{})}},{empty:()=>l("span",{class:"text-[1.4rem]"},[s("t_0_1750210698345")])})]}))),P((()=>{const e=S.value.config,a=e=>{S.value.config.config=e};return l(y,{path:"config.params"},{default:()=>[l(v,{type:"textarea",value:"string"==typeof e.config?e.config:JSON.stringify(e.config,null,2),onUpdateValue:a,placeholder:j.value,rows:4},null)],label:()=>l("div",null,[l(E,null,{default:()=>[h("自定义参数")]}),l(w,null,{default:()=>[j.value],trigger:()=>l("span",{class:"inline-flex ml-2 -mt-1 cursor-pointer text-base rounded-full w-[14px] h-[14px] justify-center items-center text-orange-600 border border-orange-600"},[h("?")])})])})})))}return t}));A((()=>S.value.type),(e=>{var a;switch(e){case"ssh":S.value.config={host:"",port:22,user:"root",mode:"password",password:""};break;case"1panel":S.value.config={url:"",api_key:"",ignore_ssl:"0",version:"v1"};break;case"btpanel":case"btwaf":S.value.config={url:"",api_key:"",ignore_ssl:"0"};break;case"aliyun":S.value.config={access_key_id:"",access_key_secret:""};break;case"baidu":case"huaweicloud":case"doge":S.value.config={access_key:"",secret_key:""};break;case"cloudflare":S.value.config={email:"",api_key:""};break;case"tencentcloud":S.value.config={secret_id:"",secret_key:""};break;case"godaddy":S.value.config={api_key:"",api_secret:""};break;case"qiniu":S.value.config={access_key:"",access_secret:""};break;case"namecheap":S.value.config={api_user:"",api_key:""};break;case"ns1":case"namesilo":case"bunny":S.value.config={api_key:""};break;case"cloudns":S.value.config={auth_id:"",auth_password:""};break;case"aws":case"jdcloud":S.value.config={access_key_id:"",secret_access_key:""};break;case"azure":S.value.config={tenant_id:"",client_id:"",client_secret:"",environment:""};break;case"namedotcom":S.value.config={username:"",api_token:""};break;case"gcore":S.value.config={api_token:""};break;case"lecdn":S.value.config={url:"",username:"",password:"",ignore_ssl:"0"};break;case"constellix":S.value.config={api_key:"",secret_key:""};break;case"plugin":S.value.config={name:(null==(a=C.value[0])?void 0:a.value)||"",config:""}}}));const D=({option:e})=>l(z,{class:"w-full"},{default:()=>[e.label?B(e):l("span",{class:"text-[1.4rem] text-gray-400"},[s("t_0_1745833934390")])]}),B=e=>{let a;const t={dns:s("t_3_1745735765112"),host:s("t_0_1746754500246"),plugin:"插件"};return l(z,{align:"center",size:"small",class:"w-full py-1"},{default:()=>[l(G,{icon:`resources-${e.value}`,size:"1.6rem"},null),l(E,{class:"flex-1"},{default:()=>[e.label]}),e.access&&e.access.length>0&&l(z,{size:"small",class:"ml-auto"},ae(a=e.access.map((e=>l(c,{key:e,type:"dns"===e?"success":"info",size:"small"},{default:()=>[t[e]||e]}))))?a:{default:()=>[a]})]})},H=e=>l(z,{justify:"space-between",class:"w-[38rem]"},{default:()=>[l(z,{align:"center",size:"small"},{default:()=>[l(G,{icon:`resources-${e.value}`,size:"1.6rem"},null),l(E,null,{default:()=>[e.label]}),e.description&&l("div",{class:"text-[1.2rem] text-gray-500 mt-[0.2rem]"},[e.description])]})]}),X=e=>{const{option:a}=e;return l(z,{class:"w-full"},{default:()=>[(null==a?void 0:a.label)?l(z,{align:"center",size:"small"},{default:()=>[l(G,{icon:`resources-${a.value}`,size:"1.4rem"},null),l(E,null,{default:()=>[a.label]})]}):l("span",{class:"text-[1.4rem] text-gray-400"},[s("t_2_1750210698518")])]})},Y=e=>s("t_3_1750210706775")+JSON.stringify(e||{}),{component:Z,fetch:ee}=x({config:O,defaultValue:S,request:async e=>{try{const a={...e,config:JSON.stringify(e.config)};if("id"in e){const{id:e,name:t,config:s}=a;await ie({id:e.toString(),name:t,config:s})}else await le(a)}catch(a){throw ce(new Error(s("t_4_1746667590873")))}},rules:K});return n((async e=>{try{r(),await ee(),oe(),e()}catch(a){return ce(a)}finally{i()}})),o((async()=>{var e;try{const{data:a}=await J().fetch();if(a&&Array.isArray(a)){const t=[];a.forEach((e=>{t.push({label:e.name,value:e.name,description:e.actions.map((e=>e.description)).join("、"),pluginName:e.name,config:e.config})})),C.value=t,j.value=Y((null==(e=t[0])?void 0:e.config)||{})}}catch(a){}})),{ApiManageForm:Z}};const de=r({name:"AuthApiManage",setup(){const{TableComponent:e,PageComponent:a,SearchComponent:t,openAddForm:n}=ue(),r=P(["contentPadding","borderColor","headerHeight","iconColorHover"]);return()=>l("div",{class:"h-full flex flex-col",style:r.value},[l("div",{class:"mx-auto max-w-[1600px] w-full p-6"},[l(X,null,{headerLeft:()=>{let e;return l(p,{type:"primary",size:"large",class:"px-5",onClick:n},"function"==typeof(a=e=s("t_0_1745289355714"))||"[object Object]"===Object.prototype.toString.call(a)&&!_(a)?e:{default:()=>[e]});var a},headerRight:()=>l(t,{placeholder:s("t_0_1745289808449")},null),content:()=>l("div",{class:"rounded-lg"},[l(e,{size:"medium","scroll-x":"1560"},{empty:()=>l(j,{addButtonText:s("t_0_1745289355714"),onAddClick:n},null)})]),footerRight:()=>l("div",{class:"mt-4 flex justify-end"},[l(a,null,null)])})])])}});export{de as default};
|