UnisKB/static/chat/assets/index-BeH1BWNA.js

3 lines
10 KiB
JavaScript

const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./dingtalkQrCode-d4FendqO.js","./logo_dingtalk-CyDPr22R.js","./chat-u6cKkSMp.js","./chat-BnHuRtZt.css","./dingtalkQrCode-CulsC8mV.css","./larkQrCode-D9UasRuW.js","./logo_lark-DULIW3z6.js","./wecomQrCode-UuYuHKG3.js","./wecomQrCode-DezZNILo.css"])))=>i.map(i=>d[i]);
import{ay as Y,aA as Z,aB as r,br as ee,aD as R,aE as i,aF as L,aG as m,bf as C,bh as te,cq as se,cr as re,bm as w,bg as q,cs as M,az as ie,ct as ue,b7 as G,aC as y,bV as N,b8 as ce,bs as de,bt as pe,aH as f,aJ as Q,cu as me,aI as _,aK as H,bn as J,bx as fe,co as W,cv as ge,c6 as ve,cw as he,c7 as _e,ce as be}from"./chat-u6cKkSMp.js";import{_ as ye,a as we,f as F,d as ke}from"./index-C8ZhmsbW.js";import{L as Ce,a as xe}from"./LoginContainer-7D5DXqVu.js";import{a as X}from"./auth-setting-Do-ge5dc.js";import{C as Ae}from"./index-BBfL7ROb.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:m(()=>[(i(!0),C(q,null,te(U.tabs,k=>(i(),L(D,{key:k.key,label:k.value,name:k.key},{default:m(()=>[k.key===u.value?(i(),C("div",Ie,[(i(),L(se(re(()=>ye(Object.assign({"./dingtalkQrCode.vue":()=>M(()=>import("./dingtalkQrCode-d4FendqO.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url),"./larkQrCode.vue":()=>M(()=>import("./larkQrCode-D9UasRuW.js"),__vite__mapDeps([5,6,2,3]),import.meta.url),"./wecomQrCode.vue":()=>M(()=>import("./wecomQrCode-UuYuHKG3.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"},Ve={key:0,class:"mb-24"},Oe={class:"flex-between w-full"},Pe=["src"],Qe={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"},Me=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(t=>{if(t)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=F.pki.publicKeyFromPem(u.rasKey),a=JSON.stringify(s.value),o=F.util.encodeUtf8(a),b=e.encrypt(o,"RSAES-PKCS1-V1_5"),n=F.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(t){ge.getCaptcha(t).then(e=>{e&&e.data&&e.data.captcha&&($.value=e.data.captcha)}).catch(e=>{console.error("Failed to get captcha:",e)})}function ae(t){B(t)}N(()=>{u.asyncGetProfile().then(t=>{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)?(O("QR_CODE",!1),D.value=o):O(o,!1)}}):v.value={max_attempts:1,default_value:"LOCAL"}})});const E=r([""]),j=r([""]),A=r(""),V=r(!1),z=r([]);function oe(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){const e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}const le=ce(()=>{var e,a,o;return!((e=I.themeInfo)!=null&&e.slogan)||"融合AI-RAG技术的智能知识问答及思维导图综合平台"==((a=I.themeInfo)==null?void 0:a.slogan)?y("theme.defaultSlogan"):(o=I.themeInfo)==null?void 0:o.slogan});function ne(t,e=!0){t==="LDAP"||t===""||t==="LOCAL"||X.getLoginViewAuthSetting(t,c).then(a=>{if(!a.data||!a.data.config)return;const o=a.data.config,b=`${o.redirectUrl}`;let n;if(t==="CAS")n=o.ldpUri,n+=n.indexOf("?")!==-1?`&service=${encodeURIComponent(b)}`:`?service=${encodeURIComponent(b)}`;else if(t==="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 t==="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 O(t,e=!0){var a;if(A.value=t==="LDAP"?t:"",t==="QR_CODE"){A.value=t,V.value=!0;return}V.value=!1,s.value={username:"",password:"",captcha:""},ne(t,e),(a=g.value)==null||a.clearValidate()}return N(()=>{c.value=!0,u.asyncGetProfile().then(t=>{u.isPE()||u.isEE()?(p.getAuthType().then(e=>{const a=e.indexOf("LDAP");if(a!==-1){const[o]=e.splice(a,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(a=>{z.value.push({key:a,value:a==="wecom"?y("views.system.authentication.scanTheQRCode.wecom"):a==="dingtalk"?y("views.system.authentication.scanTheQRCode.dingtalk"):y("views.system.authentication.scanTheQRCode.lark")})}))}).finally(()=>c.value=!1)):c.value=!1})}),ee(()=>{const t=G(),e=r(t.fullPath),a=new URLSearchParams(e.value.split("?")[1]),o=a.get("client"),b=()=>{const h=a.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=a.get("appId"),l=()=>{var d;(d=window.tt)==null||d.requestAuthCode({appId:h,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:h,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":b();break;case"lark":n();break}}),(t,e)=>{const a=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:m(()=>[f(Ce,{subTitle:le.value},{logo:m(()=>[_("div",$e,[f(Ae,{class:"login-brand-icon"}),e[8]||(e[8]=_("h1",{class:"login-brand-title"},"AI-RAG",-1))])]),default:m(()=>[V.value?w("",!0):(i(),C("h2",De,Q(A.value||t.$t("views.login.title")),1)),V.value?w("",!0):(i(),C("div",Ee,[f(b,{class:"login-form",rules:k.value,model:s.value,ref_key:"loginFormRef",ref:g,onKeyup:me(K,["enter"])},{default:m(()=>[_("div",Re,[f(o,{prop:"username"},{default:m(()=>[f(a,{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=>ae(s.value.username)),placeholder:t.$t("views.login.loginForm.username.placeholder")},null,8,["modelValue","placeholder"])]),_:1})]),_("div",Se,[f(o,{prop:"password"},{default:m(()=>[f(a,{type:"password",size:"large",class:"input-item",modelValue:s.value.password,"onUpdate:modelValue":e[2]||(e[2]=l=>s.value.password=l),placeholder:t.$t("views.login.loginForm.password.placeholder"),"show-password":""},null,8,["modelValue","placeholder"])]),_:1})]),A.value!=="LDAP"&&$.value?(i(),C("div",Ve,[f(o,{prop:"captcha"},{default:m(()=>[_("div",Oe,[f(a,{size:"large",class:"input-item",modelValue:s.value.captcha,"onUpdate:modelValue":e[3]||(e[3]=l=>s.value.captcha=l),placeholder:t.$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,Pe)])]),_:1})])):w("",!0)]),_:1},8,["rules","model"]),f(n,{size:"large",type:"primary",class:"w-full",onClick:K,loading:c.value},{default:m(()=>[H(Q(t.$t("views.login.buttons.login")),1)]),_:1},8,["loading"]),_("div",Qe,[f(n,{loading:c.value,class:"forgot-password",onClick:e[5]||(e[5]=l=>J(x).push("/forgot_password")),link:"",type:"primary"},{default:m(()=>[H(Q(t.$t("views.login.forgotPassword"))+"? ",1)]),_:1},8,["loading"])])])),V.value?(i(),C("div",Te,[f(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,Q(t.$t("views.login.moreMethod")),1)])):w("",!0),_("div",Be,[(i(!0),C(q,null,te(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=>O(l)},{default:m(()=>{var d;return[_("span",{style:fe({"font-size":l==="OAUTH2"?"8px":"10px",color:(d=J(I).themeInfo)==null?void 0:d.theme})},Q(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=>O("QR_CODE"))},{default:m(()=>[...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=>O(""))})):w("",!0)],64))),256))])]),_:1},8,["subTitle"])]),_:1})),[[h,c.value]])}}}),Ge=be(Me,[["__scopeId","data-v-c8cde11d"]]);export{Ge as default};