UnisKB/static/admin/assets/index-FyaGPja9.js

3 lines
10 KiB
JavaScript

const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./dingtalkQrCode-R3dRNo2H.js","./logo_dingtalk-CyDPr22R.js","./admin-DgPvPHD7.js","./admin-Bbyck9zg.css","./dingtalkQrCode-CulsC8mV.css","./larkQrCode-T6yhSRff.js","./logo_lark-DULIW3z6.js","./wecomQrCode-C_7E7EPs.js","./wecomQrCode-DezZNILo.css"])))=>i.map(i=>d[i]);
import{ay as Y,aA as Z,aB as r,b6 as ee,aD as R,aE as i,aF as L,aG as f,aW as C,aY as ae,cq as se,cr as re,b1 as w,aX as q,cs as F,az as ie,ct as ue,aQ as G,aC as y,bF as N,aO as ce,b7 as de,b8 as pe,aH as m,aJ as P,cu as fe,aI as _,aK as H,b2 as J,bc as me,co as W,cv as ge,c0 as ve,cw as he,c1 as _e,cf as be}from"./admin-DgPvPHD7.js";import{_ as ye,a as we,f as M,d as ke}from"./index-s2VnG6qr.js";import{L as Ce,a as xe}from"./LoginContainer-CJrGxAnI.js";import{a as X}from"./auth-setting-CNQF6zHn.js";import{C as Ae}from"./index-DDzHjusB.js";const Ie={key:0,class:"text-center mt-16"},Le=Y({__name:"QrCodeTab",props:{tabs:{},defaultTab:{}},setup(U){const{login:x}=Z(),p=U,u=r(""),I=r([]),S=r({app_key:"",app_secret:""});async function c(){try{return await x.getQrSource()}catch{return[]}}ee(async()=>{p.tabs.length>0&&(u.value=p.tabs[0].key),I.value=await c(),T(u.value),console.log(p.defaultTab),p.defaultTab&&$(p.defaultTab)});const T=g=>{const v=I.value.find(D=>D.auth_type===g);v&&v.config&&(S.value=v.config)},$=g=>{u.value=g,T(g)};return(g,v)=>{const D=R("el-tab-pane"),s=R("el-tabs");return i(),L(s,{modelValue:u.value,"onUpdate:modelValue":v[0]||(v[0]=k=>u.value=k),onTabChange:$},{default:f(()=>[(i(!0),C(q,null,ae(U.tabs,k=>(i(),L(D,{key:k.key,label:k.value,name:k.key},{default:f(()=>[k.key===u.value?(i(),C("div",Ie,[(i(),L(se(re(()=>ye(Object.assign({"./dingtalkQrCode.vue":()=>F(()=>import("./dingtalkQrCode-R3dRNo2H.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url),"./larkQrCode.vue":()=>F(()=>import("./larkQrCode-T6yhSRff.js"),__vite__mapDeps([5,6,2,3]),import.meta.url),"./wecomQrCode.vue":()=>F(()=>import("./wecomQrCode-C_7E7EPs.js"),__vite__mapDeps([7,2,3,8]),import.meta.url)}),`./${k.key}QrCode.vue`,2))),{config:S.value},null,8,["config"]))])):w("",!0)]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])}}}),$e={class:"login-brand"},De={key:0,class:"mb-24"},Ee={key:1},Re={class:"mb-24"},Se={class:"mb-24"},Oe={key:0,class:"mb-24"},Ve={class:"flex-between w-full"},Qe=["src"],Pe={class:"operate-container flex-between mt-12"},Te={key:2},Ue={key:3,class:"login-gradient-divider lighter mt-24"},Be={class:"text-center mt-16"},Fe=Y({__name:"index",setup(U){const x=ie(),{login:p,user:u,theme:I}=Z(),{locale:S}=ue({useScope:"global"}),c=r(!1),T=G(),$=r(""),g=r(),v=r(null),D=r(""),s=r({username:"",password:"",captcha:""}),k=r({username:[{required:!0,message:y("views.login.loginForm.username.requiredMessage"),trigger:"blur"}],password:[{required:!0,message:y("views.login.loginForm.password.requiredMessage"),trigger:"blur"}],captcha:[{required:!1,message:y("views.login.loginForm.captcha.requiredMessage"),trigger:"blur"}]}),K=()=>{g.value&&g.value.validate(a=>{if(a)if(c.value=!0,A.value==="LDAP")p.asyncLdapLogin(s.value).then(()=>{S.value=localStorage.getItem("MaxKB-locale")||W()||"en-US",x.push({name:"home"})}).catch(()=>{c.value=!1});else{const e=M.pki.publicKeyFromPem(u.rasKey),t=JSON.stringify(s.value),o=M.util.encodeUtf8(t),b=e.encrypt(o,"RSAES-PKCS1-V1_5"),n=M.util.encode64(b);p.asyncLogin({encryptedData:n,username:s.value.username}).then(()=>{S.value=localStorage.getItem("MaxKB-locale")||W()||"en-US",localStorage.setItem("workspace_id","default"),x.push({name:"home"})}).catch(()=>{const h=s.value.username;c.value=!1,B(h)})}})};function B(a){ge.getCaptcha(a).then(e=>{e&&e.data&&e.data.captcha&&($.value=e.data.captcha)}).catch(e=>{console.error("Failed to get captcha:",e)})}function te(a){B(a)}N(()=>{u.asyncGetProfile().then(a=>{u.isPE()||u.isEE()?X.getLoginAuthSetting().then(e=>{if(Object.keys(e.data).length>0?v.value=e.data:v.value={max_attempts:1,default_value:"LOCAL"},T.query.login_mode!=="manual"){const o=v.value.default_value;["lark","wecom","dingtalk"].includes(o)?(V("QR_CODE",!1),D.value=o):V(o,!1)}}):v.value={max_attempts:1,default_value:"LOCAL"}})});const E=r([""]),j=r([""]),A=r(""),O=r(!1),z=r([]);function oe(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){const e=Math.random()*16|0;return(a==="x"?e:e&3|8).toString(16)})}const le=ce(()=>{var e,t,o;return!((e=I.themeInfo)!=null&&e.slogan)||"融合AI-RAG技术的智能知识问答及思维导图综合平台"==((t=I.themeInfo)==null?void 0:t.slogan)?y("theme.defaultSlogan"):(o=I.themeInfo)==null?void 0:o.slogan});function ne(a,e=!0){a==="LDAP"||a===""||a==="LOCAL"||X.getLoginViewAuthSetting(a,c).then(t=>{if(!t.data||!t.data.config)return;const o=t.data.config,b=`${o.redirectUrl}`;let n;if(a==="CAS")n=o.ldpUri,n+=n.indexOf("?")!==-1?`&service=${encodeURIComponent(b)}`:`?service=${encodeURIComponent(b)}`;else if(a==="OIDC"){const h=o.scope||"openid+profile+email";n=`${o.authEndpoint}?client_id=${o.clientId}&redirect_uri=${b}&response_type=code&scope=${h}`,o.state&&(n+=`&state=${o.state}`)}else a==="OAuth2"&&(n=`${o.authEndpoint}?client_id=${o.clientId}&response_type=code&redirect_uri=${b}&state=${oe()}`,o.scope&&(n+=`&scope=${o.scope}`));n&&(e?ve(y("views.login.jump_tip"),"",{confirmButtonText:y("views.login.jump"),cancelButtonText:y("common.cancel"),confirmButtonClass:""}).then(()=>{window.location.href=n}).catch(()=>{}):(console.log("url",n),window.location.href=n))})}function V(a,e=!0){var t;if(A.value=a==="LDAP"?a:"",a==="QR_CODE"){A.value=a,O.value=!0;return}O.value=!1,s.value={username:"",password:"",captcha:""},ne(a,e),(t=g.value)==null||t.clearValidate()}return N(()=>{c.value=!0,u.asyncGetProfile().then(a=>{u.isPE()||u.isEE()?(p.getAuthType().then(e=>{const t=e.indexOf("LDAP");if(t!==-1){const[o]=e.splice(t,1);e.unshift(o)}E.value=[...E.value,...e]}).finally(()=>c.value=!1),p.getQrType().then(e=>{e.length>0&&(E.value=["QR_CODE",...E.value],j.value=e,j.value.forEach(t=>{z.value.push({key:t,value:t==="wecom"?y("views.system.authentication.scanTheQRCode.wecom"):t==="dingtalk"?y("views.system.authentication.scanTheQRCode.dingtalk"):y("views.system.authentication.scanTheQRCode.lark")})}))}).finally(()=>c.value=!1)):c.value=!1})}),ee(()=>{const a=G(),e=r(a.fullPath),t=new URLSearchParams(e.value.split("?")[1]),o=t.get("client"),b=()=>{const h=t.get("corpId");h&&ke.runtime.permission.requestAuthCode({corpId:h}).then(l=>{console.log("DingTalk client request success:",l),p.dingOauth2Callback(l.code).then(()=>{x.push({name:"home"})})})},n=()=>{const h=t.get("appId"),l=()=>{var d;(d=window.tt)==null||d.requestAuthCode({appId:h,success:Q=>{p.larkCallback(Q.code).then(()=>{x.push({name:"home"})})},fail:Q=>{_e(Q)}})};he("https://lf-scm-cn.feishucdn.com/lark/op/h5-js-sdk-1.5.35.js",{jsId:"lark-sdk",forceReload:!0}).then(()=>{window.tt?window.tt.requestAccess({appID:h,scopeList:[],success:d=>{p.larkCallback(d.code).then(()=>{x.push({name:"home"})})},fail:d=>{const{errno:Q}=d;Q===103&&l()}}):l()}).catch(d=>{console.error("SDK 加载失败:",d)})};switch(o){case"dingtalk":b();break;case"lark":n();break}}),(a,e)=>{const t=R("el-input"),o=R("el-form-item"),b=R("el-form"),n=R("el-button"),h=de("loading");return c.value?w("",!0):pe((i(),L(xe,{key:0},{default:f(()=>[m(Ce,{subTitle:le.value},{logo:f(()=>[_("div",$e,[m(Ae,{class:"login-brand-icon"}),e[8]||(e[8]=_("h1",{class:"login-brand-title"},"AI-RAG",-1))])]),default:f(()=>[O.value?w("",!0):(i(),C("h2",De,P(A.value||a.$t("views.login.title")),1)),O.value?w("",!0):(i(),C("div",Ee,[m(b,{class:"login-form",rules:k.value,model:s.value,ref_key:"loginFormRef",ref:g,onKeyup:fe(K,["enter"])},{default:f(()=>[_("div",Re,[m(o,{prop:"username"},{default:f(()=>[m(t,{size:"large",class:"input-item",modelValue:s.value.username,"onUpdate:modelValue":e[0]||(e[0]=l=>s.value.username=l),onBlur:e[1]||(e[1]=l=>te(s.value.username)),placeholder:a.$t("views.login.loginForm.username.placeholder")},null,8,["modelValue","placeholder"])]),_:1})]),_("div",Se,[m(o,{prop:"password"},{default:f(()=>[m(t,{type:"password",size:"large",class:"input-item",modelValue:s.value.password,"onUpdate:modelValue":e[2]||(e[2]=l=>s.value.password=l),placeholder:a.$t("views.login.loginForm.password.placeholder"),"show-password":""},null,8,["modelValue","placeholder"])]),_:1})]),A.value!=="LDAP"&&$.value?(i(),C("div",Oe,[m(o,{prop:"captcha"},{default:f(()=>[_("div",Ve,[m(t,{size:"large",class:"input-item",modelValue:s.value.captcha,"onUpdate:modelValue":e[3]||(e[3]=l=>s.value.captcha=l),placeholder:a.$t("views.login.loginForm.captcha.placeholder")},null,8,["modelValue","placeholder"]),_("img",{src:$.value,alt:"",height:"38",class:"ml-8 cursor border border-r-6",onClick:e[4]||(e[4]=l=>B(s.value.username))},null,8,Qe)])]),_:1})])):w("",!0)]),_:1},8,["rules","model"]),m(n,{size:"large",type:"primary",class:"w-full",onClick:K,loading:c.value},{default:f(()=>[H(P(a.$t("views.login.buttons.login")),1)]),_:1},8,["loading"]),_("div",Pe,[m(n,{loading:c.value,class:"forgot-password",onClick:e[5]||(e[5]=l=>J(x).push("/forgot_password")),link:"",type:"primary"},{default:f(()=>[H(P(a.$t("views.login.forgotPassword"))+"? ",1)]),_:1},8,["loading"])])])),O.value?(i(),C("div",Te,[m(Le,{tabs:z.value,"default-tab":D.value},null,8,["tabs","default-tab"])])):w("",!0),E.value.length>1?(i(),C("div",Ue,[_("span",null,P(a.$t("views.login.moreMethod")),1)])):w("",!0),_("div",Be,[(i(!0),C(q,null,ae(E.value,l=>(i(),C(q,null,[l!==""&&A.value!==l&&l!=="QR_CODE"?(i(),L(n,{circle:"",key:l,class:"login-button-circle color-secondary",onClick:d=>V(l)},{default:f(()=>{var d;return[_("span",{style:me({"font-size":l==="OAUTH2"?"8px":"10px",color:(d=J(I).themeInfo)==null?void 0:d.theme})},P(l),5)]}),_:2},1032,["onClick"])):w("",!0),l==="QR_CODE"&&A.value!==l?(i(),L(n,{circle:"",key:l,class:"login-button-circle color-secondary",onClick:e[6]||(e[6]=d=>V("QR_CODE"))},{default:f(()=>[...e[9]||(e[9]=[_("img",{src:we,width:"25px"},null,-1)])]),_:1})):w("",!0),l===""&&A.value!==""?(i(),L(n,{circle:"",key:l,class:"login-button-circle color-secondary",style:{"font-size":"24px"},icon:"UserFilled",onClick:e[7]||(e[7]=d=>V(""))})):w("",!0)],64))),256))])]),_:1},8,["subTitle"])]),_:1})),[[h,c.value]])}}}),Ge=be(Fe,[["__scopeId","data-v-c8cde11d"]]);export{Ge as default};