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

3 lines
9.9 KiB
JavaScript

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