UNPKG

tjc-sdk

Version:

TIANJI IM SDK

2 lines (1 loc) 886 B
import t from"./messageContent.js";import{MessageContentType as e}from"./messageContentType.js";import s from"../client/tjc.js";class r extends t{multiMedias=[];text="";constructor(t,s=""){super(e.MESSAGE_CONTENT_TYPE_MIX_MULTI_MEDIA_TEXT),t&&t.length>10&&(t=t.slice(0,9)),this.multiMedias=t,this.text=s}digest(){return"[图文混排] "+this.text}encode(){let t=super.encode();t.searchableContent=this.text;let e={ms:this.multiMedias.map((t=>{let e=t;try{e.thumbnail=atob(t.thumbnail)}catch(t){}return e}))},r=JSON.stringify(e);return t.binaryContent=s.utf8_to_b64(r),t}decode(t){if(super.decode(t),this.text=t.searchableContent,t.binaryContent&&t.binaryContent.length>0){let e=s.b64_to_utf8(t.binaryContent);this.multiMedias=JSON.parse(e).ms;let r=this.multiMedias[0];try{atob(r.thumbnail)}catch(t){this.multiMedias.map((t=>(t.thumbnail=btoa(t.thumbnail),t)))}}}}export{r as default};