Files
XueXiTongSrtDownloads/学生学习页面_files/cozebot-sdk.min.js.下载
2025-10-11 18:15:20 +08:00

1 line
3.4 KiB
Plaintext

const CozeBotSDK=function(){let e="https://stat2-ans.chaoxing.com",t="",n="",o=!1,r=!1,i="",a="",l=!1,s="",d="";function c(){document.querySelectorAll(".closeComlilation, .slideUp").forEach((e=>{e.addEventListener("click",(()=>{document.getElementById("cozeBx").style="display:none"}))}))}return{init:function(u){!function(e){if(!e.appId)throw new Error("Invalid configuration: appId is required.");if(!e.botId)throw new Error("Invalid configuration: botId is required.");if(!e.rootElementId)throw new Error("Invalid configuration: rootElementId is required.");if(!e.upload)throw new Error("Invalid configuration: upload is required.")}(u),t=u.appId,n=u.botId,o=u.bogColorNone,a=u.rootElementId,r=u.isFullScreen,i=u.skipUrl,l=u.upload,u.custom_variables&&""!==u.custom_variables.trim()&&(s=u.custom_variables),u.sourceInfo&&""!==u.sourceInfo.trim()&&(d=u.sourceInfo);let m=u.target;void 0!==m&&""!==m&&(console.log("target: "+m),e=m),function(){const t=document.createElement("link");t.type="text/css",t.rel="stylesheet",t.href=e+"/stat2/style/cozebot/style.css",document.head.appendChild(t)}(),function(o){if(document.querySelector(".cozeBx"))return;const r=document.createElement("div");r.className="cozeBx",r.id="cozeBx",r.style="display:none";const i=document.createElement("span");i.className="slideUp";const c=document.createElement("div");c.className="compil_tit_option";const u=document.createElement("span");u.className="fullScreenBtn",u.style="display:none";const m=document.createElement("a");m.id="fullScreenBtn",m.href="",m.target="_blank",m.style="display:block;height:16px",u.appendChild(m);const p=document.createElement("span");p.className="splitLine",p.style="display:none";const f=document.createElement("span");f.className="closeComlilation",c.appendChild(u),c.appendChild(p),c.appendChild(f),o.isHideRetractBtn||r.appendChild(i),r.appendChild(c);const I=document.createElement("iframe");I.frameBorder="0",I.style.position="relative",I.style.width="100%",I.style.height="100%",I.src=e+"/bot/index?bgColorNone=true&bot_id="+n+"&app_id="+t+"&upload="+l+"&sdkFlag=true&sdkCustomVariables="+s+"&sourceInfo="+d,I.id="cozeIframe",r.appendChild(I),document.getElementById(a).appendChild(r)}(u),function(){if(r){let e=document.getElementById("fullScreenBtn");e.href=i,e.parentNode.style="display:block",document.getElementById("fullScreenBtn").parentNode.nextElementSibling.style="display:block"}}(),c()},sendToIframeMessage:function(e){if(void 0===e.eventName||""===e.eventName)throw new Error("Invalid configuration: eventName is required.");this.sendPostMessage(e),document.getElementById("cozeBx").style="display:block"},sendToIframeImage:function(n){const o=n.fileInputId,r=document.getElementById(o).files[0];if(void 0===r)throw new Error("Invalid configuration: file is required.");const i=r.name,a=r.type;return n.fileName=i,n.fileType=a,n.appId=t,new Promise(((t,o)=>{const i=new FileReader;i.onload=function(o){const r=o.target.result;n.arrayBuffer=r;document.getElementById("cozeIframe").contentWindow.postMessage(n,e),t(r)},i.onerror=function(e){o(new Error("File could not be read: "+e.target.error.code))},i.readAsArrayBuffer(r)}))},sendToIframeImageBase64:function(e){if(!e.imageBase64)throw new Error("Invalid configuration: base64 data is required.");this.sendPostMessage(e)},sendPostMessage:function(t){document.getElementById("cozeIframe").contentWindow.postMessage(t,e)}}}();window.CozeBotSDK=CozeBotSDK;