2 lines
6.6 KiB
JavaScript
2 lines
6.6 KiB
JavaScript
import{g as A,i as p,x as N,r as B,o as c,c as l,a as t,X as j,b as g,w as $,s as q,Y as z,G as X,H as Z,F as U,D as V,M as Y,p as I,f as M,_ as T,A as L,K as k,t as R,q as H,d as J,Z as Q}from"./index.bd00656a.js";import{w as W}from"./we.a9b44422.js";const ee="/vue-admin-perfect/assets/emoji-after.664cb306.png",te={imgs:["\u7231\u4F60","\u7231\u60C5","\u7231\u5FC3","\u50B2\u6162","\u767D\u773C","\u62B1\u62F3","\u9119\u89C6","\u95ED\u5634","\u4FBF\u4FBF","\u64E6\u6C57","\u83DC\u5200","\u5DEE\u52B2","\u5472\u7259","\u5927\u54ED","\u86CB\u7CD5","\u5200","\u5F97\u610F","\u51CB\u8C22","\u53D1\u5446","NO","OK","\u53D1\u6296","\u53D1\u6012","\u996D","\u98DE\u543B","\u594B\u6597","\u75AF\u4E86","\u5C34\u5C2C","\u52FE\u5F15","\u9F13\u638C","\u54C8\u6B20"]},se=a=>(I("data-v-a33089f1"),a=a(),M(),a),oe={class:"g-layout-content-chat-util"},ne={class:"item-left"},ae=["onClick"],ce=se(()=>t("img",{src:ee,alt:"",style:{width:"20px"}},null,-1)),le=[ce],ue={class:"upload-picture",title:"\u4E0A\u4F20\u56FE\u7247"},ie={class:"emoje-border-wrap"},re=["onClick"],de=["src","title"],_e=A({__name:"index",emits:["insert","upload"],setup(a,{emit:u}){const i=p(te.imgs),d=p(!1),h=(_,f)=>{if(_.target.tagName==="IMG"){let r=_.target.cloneNode(!0);r.title=f,u("insert",r,"IMG")}else u("insert",node)},w=()=>{d.value=!0,u("insert",null,null)},x=(_,f)=>new Promise((r,C)=>{var v=new FileReader;let m=/\.jpg$|\.jpeg$|\.gif$|\.png$/i;v.readAsDataURL(_);let y=_.name;m.test(y)?v.onload=F=>{r(F.target.result),u("upload",F.target.result)}:(Y.error("\u8BF7\u4E0A\u4F20\u56FE\u7247"),C())});return N(()=>{window.onclick=function(_){d.value=!1}}),(_,f)=>{const r=B("el-icon"),C=B("el-upload");return c(),l("div",oe,[t("div",ne,[t("div",{class:"emoje",title:"\u9009\u62E9\u8868\u60C5",onClick:j(w,["stop"])},le,8,ae),t("div",ue,[g(C,{action:"",multiple:"","show-file-list":!1,"before-upload":x},{default:$(()=>[g(r,{style:{"font-size":"20px"}},{default:$(()=>[g(q(z))]),_:1})]),_:1})]),X(t("div",ie,[(c(!0),l(U,null,V(i.value,(v,m)=>(c(),l("div",{class:"title-emoje",onClick:j(y=>h(y,v),["stop"]),key:m},[t("img",{src:`static/face/${v}.png`,title:v},null,8,de)],8,re))),128))],512),[[Z,d.value]])])])}}});const pe=T(_e,[["__scopeId","data-v-a33089f1"]]),ve=[{is_self:0,created_at:"2022-11-15",content:W,id:1,type:2},{is_self:1,created_at:"2022-03-11",content:"hello \u4F60\u597D\u5440!",id:2,type:1}],S=a=>(I("data-v-ea640eae"),a=a(),M(),a),ge={class:"g-container-chat"},he={key:0,class:"from_user_info"},fe={class:"contact-nickname"},me={class:"receive-message-wrap"},we=S(()=>t("div",{class:"avatar-show"},[t("img",{src:L})],-1)),Ce={style:{position:"relative",display:"flex"}},ye=["innerHTML"],xe={key:1,class:"public-show-pic"},Fe={key:1,class:"ower-user_info"},De={class:"contact-nickname"},Be={class:"receive-message-wrap public-show-pic"},Ee={style:{position:"relative",display:"flex"}},be={key:0,class:"receive-message-info"},ke=["innerHTML"],$e={key:1,class:"public-show-pic"},Ae=S(()=>t("div",{class:"avatar-show"},[t("img",{src:L})],-1)),Ie={class:"g-chat-container-footer-btn"},Me=S(()=>t("div",{class:"",style:{"margin-right":"10px"}}," Ctrl+V\u7C98\u8D34, Ctrl+Enter\u6362\u884C ",-1)),Te=A({__name:"index",setup(a){const u=p(null),i=p(null),d=p(ve);p(L);const h=p(null),w=p(null),x=p([]),_=()=>{const e=h.value;e==null||e.focus(),i.value=document.getSelection(),u.value=i.value.getRangeAt(0)},f=e=>{if(window.getSelection){e.focus();let s=window.getSelection();s.selectAllChildren(e),s.collapseToEnd()}else if(document.selection){let s=document.selection.createRange();s.moveToElementText(e),s.collapse(!1),s.select()}},r=(e,s)=>{if(e){let o=document.createRange();o.selectNode(e),o.collapse(!!s),i.value.removeAllRanges(),i.value.addRange(o),o.value=o}else i.value.removeAllRanges(),i.value.addRange(u.value)},C=()=>{u.value=i.value.getRangeAt(0)},v=(e,s)=>{s==="IMG"?(u.value.insertNode(e),r(e,!1)):r()},m=(e,s=1)=>({is_self:1,created_at:Q().format("YYYY-MM-DD"),content:e,type:s,id:Date.now()+Math.random()}),y=()=>{x.value=[],k(()=>{d.value.forEach(e=>{e.type===2&&x.value.push(e.content)})})},F=e=>{const s=h.value;let o=new Image;o.onload=function(){s.appendChild(o),f&&f(s)},o.src=e,o.setAttribute("insert","insert"),o.width=100},G=()=>{k(()=>{setTimeout(()=>{w.value.scrollTop=w.value.scrollHeight},0)})},K=()=>{const e=h.value.innerHTML;if(console.log("value===",e),!e)return r(),Y.error("\u8BF7\u586B\u5199\u53D1\u9001\u5185\u5BB9");let s=/<img.*?src="(.*?)".*?title="(.*?)".*?>/gi,o=/<img.*?src="(.*?)".*?insert="(.*?)">/gi,D=e.replace(s,"[$2]"),n=[],E=D.match(o);if(console.log("content",E),E){let O=D.replace(o,(b,P)=>`/b/~${P}/b/~`).split("/b/~");for(let b of O)b&&d.value.push(m(b,2))}else n=m(e),d.value.push(n);y(),h.value.innerHTML="",console.log("content--",d.value),G()};return N(()=>{k(()=>{_()})}),(e,s)=>{const o=B("el-image"),D=B("el-button");return c(),l("div",ge,[t("div",{class:"g-layout-content-center",style:{width:"100%"},ref_key:"chatContentBoxs",ref:w},[(c(!0),l(U,null,V(d.value,(n,E)=>(c(),l("div",{key:n.id,style:{"padding-top":"15px"}},[n.is_self===0?(c(),l("div",he,[t("div",fe,R(n.created_at)+" \u6797\u5CF0",1),t("div",me,[we,t("div",Ce,[n.type===1?(c(),l("div",{key:0,class:"receive-message-info",innerHTML:n.content},null,8,ye)):n.type===2?(c(),l("div",xe,[g(o,{src:n.content,"preview-src-list":[n.content],style:{"max-width":"200px"},"data-resid":Date.now()},null,8,["src","preview-src-list","data-resid"])])):H("",!0)])])])):(c(),l("div",Fe,[t("div",De,R(n.created_at)+" \u6797\u5CF0",1),t("div",Be,[t("div",Ee,[n.type==1?(c(),l("div",be,[t("div",{class:"text-content",innerHTML:n.content},null,8,ke)])):n.type===2?(c(),l("div",$e,[g(o,{src:n.content,"preview-src-list":[n.content],style:{"max-width":"200px"},"data-resid":Date.now()},null,8,["src","preview-src-list","data-resid"])])):H("",!0)]),Ae])]))]))),128))],512),g(pe,{onInsert:v,onUpload:F}),t("div",{onBlur:C,ref_key:"contenteditableInputs",ref:h,class:"g-chat-container-footer-input",contenteditable:"true"},null,544),t("div",Ie,[Me,g(D,{onClick:K},{default:$(()=>[J("\u53D1\u9001")]),_:1})])])}}});const Le=T(Te,[["__scopeId","data-v-ea640eae"]]),Se=a=>(I("data-v-b3288350"),a=a(),M(),a),je={class:"app-container"},Re={class:"app-container-inner m-chat"},He=Se(()=>t("div",{style:{"margin-bottom":"15px","flex-shrink":"0"}},"\u804A\u5929\u5185\u5BB9\u6846\uFF0C\u529F\u80FD\u6709\u53D1\u9001emoji\u8868\u60C5\uFF0C\u4E0A\u4F20\u56FE\u7247\uFF0C\u53D1\u9001\u56FE\u7247\uFF0C\u5185\u5BB9\u6EDA\u52A8\uFF0C\u53D1\u9001\u6587\u5B57",-1)),Ne=A({__name:"index",setup(a){return(u,i)=>(c(),l("div",je,[t("div",Re,[He,g(Le,{class:"m-chat-box"})])]))}});const Ge=T(Ne,[["__scopeId","data-v-b3288350"]]);export{Ge as default};
|