2 lines
11 KiB
JavaScript
2 lines
11 KiB
JavaScript
import{u as B,c as x,aq as S,e as m,C as p,au as C,av as F,_ as T}from"./common-RpMgvqEW.js";import{u as K,w as I,x as w}from"./other-CUvajVbI.js";import"./vendor-B3ZXv1Nn.js";const D=""+new URL("../assets/water-Cq3Nzf11.png",import.meta.url).href,i=v=>(Vue.pushScopeId("data-v-f97f8f95"),v=v(),Vue.popScopeId(),v),O={class:"Share2Friend"},b=i(()=>Vue.createElementVNode("span",{class:"f16"},"私信给",-1)),U={class:"search"},L={key:0,class:"search-select-friends"},R={class:"wrapper"},q=["src","onClick"],Y={key:1,class:"search-icon",src:C,alt:""},$={key:0,class:"list"},z=["onClick"],H=["src"],M={class:"desc"},j={class:"name"},A={key:0},G={style:{color:"#ffd800"}},J={key:1},P={key:0,class:"account"},Q={key:0},W={style:{color:"#ffd800"}},X={key:1},Z={key:1,class:"no-result"},ee=i(()=>Vue.createElementVNode("img",{src:w,alt:""},null,-1)),te=i(()=>Vue.createElementVNode("span",{class:"n1"},"搜索结果为空",-1)),le=i(()=>Vue.createElementVNode("span",{class:"n2"},"没有搜索到相关的联系人",-1)),ne=[ee,te,le],oe={class:"list"},se=i(()=>Vue.createElementVNode("span",null,"已加入的群聊",-1)),ae=i(()=>Vue.createElementVNode("div",{class:"title"},"最近聊天",-1)),ce=["onClick"],re=["src"],de=i(()=>Vue.createElementVNode("div",{class:"title"},"互关好友",-1)),ie=["onClick"],ue=["src"],Ve=i(()=>Vue.createElementVNode("div",{class:"title"},"全部",-1)),fe=["onClick"],me=["src"],pe={key:0,class:"share2friend"},ve=i(()=>Vue.createElementVNode("div",{class:"comment"},[Vue.createElementVNode("textarea",{placeholder:"有什么想和好友说的..."}),Vue.createElementVNode("img",{class:"poster",src:F,alt:""})],-1)),he={class:"wrapper"},_e={key:0,class:"create-chat"},ke=i(()=>Vue.createElementVNode("span",null,"创建群聊",-1)),ye=Vue.createStaticVNode('<div class="indicator-ctn" data-v-f97f8f95><div class="indicator" data-v-f97f8f95><div class="item" data-index="top" data-v-f97f8f95>#</div><div class="item" data-v-f97f8f95>A</div><div class="item" data-v-f97f8f95>B</div><div class="item" data-v-f97f8f95>C</div><div class="item" data-v-f97f8f95>D</div><div class="item" data-v-f97f8f95>E</div><div class="item" data-v-f97f8f95>F</div><div class="item" data-v-f97f8f95>G</div><div class="item" data-v-f97f8f95>H</div><div class="item" data-v-f97f8f95>I</div><div class="item" data-v-f97f8f95>J</div><div class="item" data-v-f97f8f95>K</div><div class="item" data-v-f97f8f95>L</div><div class="item" data-v-f97f8f95>M</div><div class="item" data-v-f97f8f95>N</div><div class="item" data-v-f97f8f95>O</div><div class="item" data-v-f97f8f95>P</div><div class="item" data-v-f97f8f95>Q</div><div class="item" data-v-f97f8f95>R</div><div class="item" data-v-f97f8f95>S</div><div class="item" data-v-f97f8f95>T</div><div class="item" data-v-f97f8f95>U</div><div class="item" data-v-f97f8f95>V</div><div class="item" data-v-f97f8f95>W</div><div class="item" data-v-f97f8f95>X</div><div class="item" data-v-f97f8f95>Y</div><div class="item" data-v-f97f8f95>Z</div></div></div>',1),ge=i(()=>Vue.createElementVNode("img",{src:D,alt:""},null,-1)),Ee=Vue.defineComponent({name:"Share2Friend"}),Ne=Vue.defineComponent({...Ee,setup(v){VueRouter.useRouter();const _=K();B();const e=Vue.reactive({isCreateChat:!1,searchKey:"",indexOffsetTop:{},currentFixedIndicator:"",currentFixedIndicatorTop:"0px",friends:{all:{},recent:[],eachOther:[]},selectFriends:[],friendsSort:{},searchResult:[]});Vue.onMounted(()=>{g(),document.querySelectorAll(".index").forEach(r=>{e.indexOffsetTop[r.children[0].innerText]=r.offsetTop});let l=document.querySelectorAll(".item"),d=document.querySelector(".item:nth-child(2)").clientHeight,s=document.querySelector(".indicator"),t=s.offsetTop,a="rgb(143, 143, 158)";s.addEventListener("touchstart",r=>{let u=(r.touches[0].pageY-t)/d;u=Math.floor(u),o(u),e.currentFixedIndicatorTop=r.touches[0].pageY-28+"px"}),s.addEventListener("touchmove",r=>{let V=r.touches[0].pageY-t;e.currentFixedIndicatorTop=r.touches[0].pageY-28+"px";let u=V/d;u=Math.floor(u),u>=0&&u<27&&o(u)}),s.addEventListener("touchend",()=>e.currentFixedIndicator="");let o=r=>{l.forEach(V=>{V.style.color=a}),l[r].style.color="#fff",e.currentFixedIndicator=l[r].innerText,E(l[r])}}),Vue.watch(()=>e.searchKey,n=>{let l=x(e.friends.all);l.map(c=>{e.selectFriends.find(d=>d.id===c.id)&&(c.select=!0)}),e.searchResult=l.filter(c=>c.name.includes(n)||c.account.includes(n))});function k(n){f(n),e.searchKey=""}function y(){console.log("clear"),e.searchKey=""}function f(n){for(let s=0;s<e.friends.recent.length;s++){let t=e.friends.recent[s];if(t.name===n.name){t.select=!t.select;break}}for(let s=0;s<e.friends.eachOther.length;s++){let t=e.friends.eachOther[s];if(t.name===n.name){t.select=!t.select;break}}let l=!1,c=Object.keys(e.friendsSort);for(let s=0;s<c.length;s++){let t=c[s];for(let a=0;a<e.friendsSort[t].length;a++){let o=e.friendsSort[t][a];if(o.name===n.name){o.select=!o.select,l=!0;break}}if(l)break}let d=e.selectFriends.findIndex(s=>s.name===n.name);d!==-1?(n.select=!1,e.selectFriends.splice(d,1)):(n.select=!0,e.selectFriends.push(n))}async function g(){let n=await S();console.log("getFriends",n),n.success&&(e.friends=n.data,e.friends.all=e.friends.all.sort((l,c)=>l.pinyin<c.pinyin?-1:l.pinyin>c.pinyin?1:0),e.friends.all.map(l=>{e.friendsSort[l.pinyin]?e.friendsSort[l.pinyin].push(l):e.friendsSort[l.pinyin]=[l]}))}const h=Vue.ref();function E(n){let l;n.dataset.index?l="top":l=n.innerText,document.querySelector(`.${l}`)&&(h.value.scrollTop=document.querySelector(`.${l}`).offsetTop-100)}function N(n){let l=n.target.scrollTop+110,c=null;for(const d in e.indexOffsetTop)e.indexOffsetTop[d]<l&&(c=d);e.currentFixedIndicator=c}return(n,l)=>{const c=Vue.resolveComponent("BaseHeader"),d=Vue.resolveComponent("dy-back"),s=Vue.resolveComponent("dy-button");return Vue.openBlock(),Vue.createElementBlock("div",O,[Vue.createVNode(c,{backImg:"close",style:{"z-index":"7"}},{center:Vue.withCtx(()=>[b]),bottom:Vue.withCtx(()=>[Vue.createElementVNode("div",U,[e.selectFriends.length?(Vue.openBlock(),Vue.createElementBlock("div",L,[Vue.createElementVNode("div",R,[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.selectFriends,(t,a)=>(Vue.openBlock(),Vue.createElementBlock("img",{src:Vue.unref(m)(t.avatar),key:a,onClick:o=>f(t)},null,8,q))),128))])])):(Vue.openBlock(),Vue.createElementBlock("img",Y)),Vue.withDirectives(Vue.createElementVNode("input",{type:"text",placeholder:"搜索","onUpdate:modelValue":l[0]||(l[0]=t=>e.searchKey=t)},null,512),[[Vue.vModelText,e.searchKey]]),e.searchKey?(Vue.openBlock(),Vue.createElementBlock("img",{key:2,onClick:y,class:"clear",src:I})):Vue.createCommentVNode("",!0)])]),_:1}),Vue.withDirectives(Vue.createElementVNode("div",{class:"is-search",style:Vue.normalizeStyle({height:e.selectFriends.length&&e.searchResult.length?"calc(100% - 272rem)":"calc(100% - 112rem)"})},[e.searchResult.length?(Vue.openBlock(),Vue.createElementBlock("div",$,[(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.searchResult,(t,a)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:"local-row",key:a,onClick:o=>k(t)},[Vue.createVNode(p,{mode:"red",modelValue:t.select,"onUpdate:modelValue":o=>t.select=o},null,8,["modelValue","onUpdate:modelValue"]),Vue.createElementVNode("img",{src:Vue.unref(m)(t.avatar),alt:""},null,8,H),Vue.createElementVNode("div",M,[Vue.createElementVNode("span",j,[t.name.indexOf(e.searchKey)>-1?(Vue.openBlock(),Vue.createElementBlock("span",A,[Vue.createTextVNode(Vue.toDisplayString(t.name.substr(0,t.name.indexOf(e.searchKey))),1),Vue.createElementVNode("span",G,Vue.toDisplayString(e.searchKey),1),Vue.createTextVNode(Vue.toDisplayString(t.name.substr(t.name.indexOf(e.searchKey)+e.searchKey.length)),1)])):(Vue.openBlock(),Vue.createElementBlock("span",J,Vue.toDisplayString(t.name),1))]),t.account?(Vue.openBlock(),Vue.createElementBlock("span",P,[Vue.createTextVNode(" 抖音号: "),t.account.indexOf(e.searchKey)>-1?(Vue.openBlock(),Vue.createElementBlock("span",Q,[Vue.createTextVNode(Vue.toDisplayString(t.account.substr(0,t.account.indexOf(e.searchKey))),1),Vue.createElementVNode("span",W,Vue.toDisplayString(e.searchKey),1),Vue.createTextVNode(Vue.toDisplayString(t.account.substr(t.account.indexOf(e.searchKey)+e.searchKey.length)),1)])):(Vue.openBlock(),Vue.createElementBlock("span",X,Vue.toDisplayString(t.account),1))])):Vue.createCommentVNode("",!0)])],8,z))),128))])):(Vue.openBlock(),Vue.createElementBlock("div",Z,ne))],4),[[Vue.vShow,e.searchKey]]),Vue.createElementVNode("div",{ref_key:"list",ref:h,style:Vue.normalizeStyle({paddingBottom:e.selectFriends.length?"160rem":0}),class:"content",onScroll:N},[Vue.createElementVNode("div",oe,[Vue.createElementVNode("div",{class:"row",onClick:l[1]||(l[1]=t=>Vue.unref(_)("/message/joined-group-chat"))},[se,Vue.createVNode(d,{scale:.7,direction:"right"})]),ae,(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.friends.recent,(t,a)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:"local-row",key:a,onClick:o=>f(t)},[Vue.createVNode(p,{mode:"red",modelValue:t.select,"onUpdate:modelValue":o=>t.select=o},null,8,["modelValue","onUpdate:modelValue"]),Vue.createElementVNode("img",{src:Vue.unref(m)(t.avatar),alt:""},null,8,re),Vue.createElementVNode("span",null,Vue.toDisplayString(t.name),1)],8,ce))),128)),de,(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.friends.eachOther,(t,a)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:"local-row",key:a,onClick:o=>f(t)},[Vue.createVNode(p,{mode:"red",modelValue:t.select,"onUpdate:modelValue":o=>t.select=o},null,8,["modelValue","onUpdate:modelValue"]),Vue.createElementVNode("img",{src:Vue.unref(m)(t.avatar),alt:""},null,8,ue),Vue.createElementVNode("span",null,Vue.toDisplayString(t.name),1)],8,ie))),128)),Ve,(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(e.friendsSort,(t,a)=>(Vue.openBlock(),Vue.createElementBlock("div",{key:a},[Vue.createElementVNode("div",{class:Vue.normalizeClass([a==="#"?"top":a,"title"])},[Vue.createElementVNode("span",null,Vue.toDisplayString(a),1)],2),(Vue.openBlock(!0),Vue.createElementBlock(Vue.Fragment,null,Vue.renderList(t,(o,r)=>(Vue.openBlock(),Vue.createElementBlock("div",{class:"local-row",key:r,onClick:V=>f(o)},[Vue.createVNode(p,{mode:"red",modelValue:o.select,"onUpdate:modelValue":V=>o.select=V},null,8,["modelValue","onUpdate:modelValue"]),Vue.createElementVNode("img",{src:Vue.unref(m)(o.avatar),alt:""},null,8,me),Vue.createElementVNode("span",null,Vue.toDisplayString(o.name),1)],8,fe))),128))]))),128))]),e.selectFriends.length&&e.searchResult.length?(Vue.openBlock(),Vue.createElementBlock("div",pe,[ve,Vue.createElementVNode("div",he,[e.selectFriends.length>1?(Vue.openBlock(),Vue.createElementBlock("div",_e,[Vue.createVNode(p,{mode:"red",modelValue:e.isCreateChat,"onUpdate:modelValue":l[2]||(l[2]=t=>e.isCreateChat=t)},null,8,["modelValue"]),ke])):Vue.createCommentVNode("",!0),Vue.createVNode(s,{type:"primary"},{default:Vue.withCtx(()=>[Vue.createTextVNode(Vue.toDisplayString(e.selectFriends.length>1?"分别发送":"发送"),1)]),_:1})])])):Vue.createCommentVNode("",!0)],36),ye,e.currentFixedIndicator?(Vue.openBlock(),Vue.createElementBlock("div",{key:0,class:"hover",style:Vue.normalizeStyle({top:e.currentFixedIndicatorTop}),ref:"hover"},[ge,Vue.createElementVNode("span",null,Vue.toDisplayString(e.currentFixedIndicator),1)],4)):Vue.createCommentVNode("",!0)])}}}),Ce=T(Ne,[["__scopeId","data-v-f97f8f95"]]);export{Ce as default};
|