larkQrCode-DraOJ2Yg.js 1.4 KB

1
  1. import{_ as h}from"./logo_lark-DULIW3z6.js";import{cQ as f,gS as k,gU as w,fr as _,ft as S,cs as y,cp as e,gx as x,F as $}from"./builder-DygomDiV.js";const q={class:"flex-center mb-16"},Q=f({__name:"larkQrCode",props:{config:{}},setup(c){const a=k(),{params:{accessToken:d}}=a,{load:p}=w("https://lf-package-cn.feishucdn.com/obj/feishu-static/lark/passport/qrcode/LarkSSOSDKWebQRCode-1.0.3.js"),s=c,l=async()=>{if(!await p(!0)){console.error("飞书二维码 SDK 加载失败");return}const t={agentId:s.config.app_key,appSecret:s.config.app_secret},u=new URLSearchParams(a.query).toString(),m=encodeURIComponent(`${window.location.origin}/chat/api/auth/lark?accessToken=${d}&${u}`),n=`https://passport.feishu.cn/suite/passport/oauth/authorize?client_id=${t.agentId}&redirect_uri=${m}&response_type=code&state=fit2cloud-lark-qr`,i=window.QRLogin({id:"lark-qr",goto:n,width:"266",height:"266",style:"width:280px;height:280px;border:1px solid #e8e8e8;margin:0 auto;border-radius:8px;"});window.addEventListener("message",async o=>{if(i.matchOrigin(o.origin)&&i.matchData(o.data)){const g=o.data.tmp_code;window.location.replace(`${n}&tmp_code=${g}`)}})};return _(()=>{l()}),(r,t)=>(S(),y($,null,[e("div",q,[t[0]||(t[0]=e("img",{src:h,alt:"",width:"24px",class:"mr-4"},null,-1)),e("h2",null,x(r.$t("views.system.authentication.scanTheQRCode.larkQrCode")),1)]),t[1]||(t[1]=e("div",{id:"lark-qr",class:"lark-qrName"},null,-1))],64))}});export{Q as default};