You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2 lines
1.2 KiB
2 lines
1.2 KiB
import{cr as g,dm as u,cZ as _,f1 as m,cs as f,da as h,cy as k,cz as y,cC as o,cK as v,cD as C,cX as w}from"./index-6b91f299.js";const q="/ui/assets/logo_dingtalk-ba6ce262.svg",x={class:"flex-center mb-16"},R=g({__name:"dingtalkQrCode",props:{config:{}},setup(a){const s=a,r=u(),{user:c}=_(),{load:d}=m("https://g.alicdn.com/dingding/h5-dingtalk-login/0.21.0/ddlogin.js"),n=f(!1),p=async()=>{try{if(await d(!0),!n.value)return;const e={appKey:s.config.app_key,appSecret:s.config.app_secret,corp_id:s.config.corp_id},t=encodeURIComponent(window.location.origin);window.DTFrameLogin({id:"ding-talk-qr",width:280,height:280},{redirect_uri:t,client_id:e.appKey,scope:"openid corpid",response_type:"code",state:"fit2cloud-ding-qr",prompt:"consent",corpId:e.corp_id},i=>{const l=i.authCode;c.dingCallback(l).then(()=>{r.push({name:"home"})})},i=>{w(i)})}catch(e){console.error(e)}};return h(()=>s.config,e=>{e.app_secret&&e.app_key&&e.corp_id&&(n.value=!0,p())},{immediate:!0}),(e,t)=>(k(),y(C,null,[o("div",x,[t[0]||(t[0]=o("img",{src:q,alt:"",width:"24px",class:"mr-4"},null,-1)),o("h2",null,v(e.$t("views.system.authentication.scanTheQRCode.dingtalkQrCode")),1)]),t[1]||(t[1]=o("div",{class:"ding-talk-qrName"},[o("div",{id:"ding-talk-qr"})],-1))],64))}});export{R as default};
|