Files
sbnews/server/public/mobile/assets/packages_community-pages-user_profile.UeSSW2oS.js
T

2 lines
9.2 KiB
JavaScript

import{d as l,I as a,c as e,r as s,al as t,L as i,o as u,j as o,V as n,f as c,w as r,k as _,P as f,l as d,m as v,p,q as m,t as g,v as y,A as k,x as h,B as w,y as b,F as C,z as x,S,a9 as $,n as j,N as A,M as z,O as F,_ as T}from"./index-D7cO9iLz.js";import{q as D,g as I,t as M}from"./community.fkq3ShDd.js";import{o as q}from"./chat.Dckx1gAW.js";import"./aiRequest.br0QglYY.js";import"./ai.cEuLMbmT.js";const L=T(l({__name:"user_profile",setup(l){const T=a(),L=e(()=>{var l,a,e;const s=null==(a=null==(l=T.config)?void 0:l.website)?void 0:a.shop_logo;return s?s.startsWith("http")?s:((null==(e=T.config)?void 0:e.domain)||"")+s:"/static/images/avatar.png"}),N=s(0),R=s(0),W=s(null),B=s("posts"),H=s(!1),O=s(!1),P=s(1),U=s([]),V=s([]),E=s([]),G=e(()=>{var l,a,e,s;return[{key:"posts",label:"发布",count:(null==(l=W.value)?void 0:l.post_count)||0},{key:"comments",label:"评论",count:(null==(a=W.value)?void 0:a.comment_count)||0},{key:"following",label:"关注",count:(null==(e=W.value)?void 0:e.follow_count)||0},{key:"fans",label:"粉丝",count:(null==(s=W.value)?void 0:s.fans_count)||0}]}),J=e(()=>"posts"===B.value?U.value:"following"===B.value?V.value:"fans"===B.value?E.value:[]);t(()=>{i(),N.value=0}),u(l=>{const a=Number((null==l?void 0:l.user_id)||0);a>0?(R.value=a,K(a),Q(!0)):(o({title:"参数错误",icon:"none"}),setTimeout(()=>n(),1500))});const K=async l=>{try{const a=await D({user_id:l});W.value=a}catch(a){o({title:"加载失败",icon:"none"})}},Q=async(l=!1)=>{if(l&&(P.value=1,O.value=!1,U.value=[]),!O.value){H.value=!0;try{const a=await I({user_id:R.value,page_no:P.value,page_size:15}),e=(null==a?void 0:a.lists)||[],s=e.filter(l=>!(l=>{const a=Array.isArray(null==l?void 0:l.tags)?l.tags:[],e=Array.isArray(null==l?void 0:l.images)?l.images:[],s="string"==typeof(null==l?void 0:l.content)?l.content.trim():"",t="string"==typeof(null==l?void 0:l.content_short)?l.content_short.trim():"";return a.includes("特朗普")&&e.length>0&&!s&&!t})(l));l?U.value=s:U.value.push(...s),e.length<15?O.value=!0:P.value++}catch(a){}finally{H.value=!1}}},X=l=>{B.value!==l&&(B.value=l,"posts"===l&&0===U.value.length?Q(!0):"following"===l&&0===V.value.length?(async()=>{H.value=!0;try{const l=await A.get({url:"/community/followList",data:{user_id:R.value,page_no:1,page_size:100}});V.value=(null==l?void 0:l.lists)||[]}catch(l){}finally{H.value=!1}})():"fans"===l&&0===E.value.length&&(async()=>{H.value=!0;try{const l=await A.get({url:"/community/fansList",data:{user_id:R.value,page_no:1,page_size:100}});E.value=(null==l?void 0:l.lists)||[]}catch(l){}finally{H.value=!1}})())},Y=()=>{"posts"===B.value&&Q()},Z=()=>!!z()||(F({title:"提示",content:"该操作需要登录,是否前往登录?",confirmText:"去登录",success:l=>{l.confirm&&j({url:"/pages/login/login"})}}),!1),ll=async()=>{if(Z()&&W.value)try{const l=await M({follow_user_id:R.value}),a=!!(null==l?void 0:l.is_followed);W.value.is_followed=a,W.value.is_friend=a;const e=W.value.relationship||{};e.is_followed_by_me=a,e.is_mutual=a&&!!e.is_following_me,e.relationship_text=e.is_mutual?"互相关注":"对方还未添加你为好友",W.value.relationship=e,a?(W.value.fans_count=(W.value.fans_count||0)+1,o({title:"已加好友",icon:"success"})):(W.value.fans_count=Math.max(0,(W.value.fans_count||0)-1),o({title:"已取消好友",icon:"none"}))}catch(l){}},al=async()=>{if(Z()&&R.value)try{const l=await q({target_user_id:R.value});(null==l?void 0:l.id)&&j({url:`/pages/private_chat/room?session_id=${l.id}`})}catch(l){}},el=()=>{o({title:"分享功能开发中",icon:"none"})},sl=()=>{n()},tl=l=>{l!==R.value&&j({url:`/packages_community/pages/user_profile?user_id=${l}`})},il=l=>{if(!Array.isArray(null==l?void 0:l.tags)||!l.tags.includes("特朗普"))return"";if(l.source_url)return l.source_url;const a=l.origin_id||"";if(!a.startsWith("truthsocial:"))return"";const e=a.split(":")[1];return e?`https://truthsocial.com/@realDonaldTrump/${e}`:""},ul=l=>{if(!l)return"";const a=new Date(l.replace(/-/g,"/"));return`${String(a.getMonth()+1).padStart(2,"0")}-${String(a.getDate()).padStart(2,"0")} ${String(a.getHours()).padStart(2,"0")}:${String(a.getMinutes()).padStart(2,"0")}`};return(l,a)=>{const e=f("u-icon"),s=_,t=m,i=g,u=f("u-loading"),o=S;return d(),c(s,{class:"user-profile"},{default:r(()=>[v(s,{class:"profile-header",style:p({paddingTop:N.value+"px"})},{default:r(()=>[v(s,{class:"profile-nav"},{default:r(()=>[v(s,{class:"profile-nav__back",onClick:sl},{default:r(()=>[v(e,{name:"arrow-left",color:"#fff",size:"40"})]),_:1}),v(s,{class:"profile-nav__actions"},{default:r(()=>[v(s,{class:"profile-nav__icon",onClick:el},{default:r(()=>[v(e,{name:"share",color:"#fff",size:"36"})]),_:1})]),_:1})]),_:1}),W.value?(d(),c(s,{key:0,class:"profile-info"},{default:r(()=>[v(s,{class:"profile-info__row"},{default:r(()=>[v(t,{class:"profile-info__avatar",src:W.value.avatar||L.value,mode:"aspectFill"},null,8,["src"]),v(s,{class:"profile-info__detail"},{default:r(()=>[v(i,{class:"profile-info__name"},{default:r(()=>[y(k(W.value.nickname||"匿名用户"),1)]),_:1}),v(i,{class:"profile-info__id"},{default:r(()=>[y("ID:"+k(W.value.sn||W.value.id),1)]),_:1})]),_:1}),W.value.is_self?w("",!0):(d(),c(s,{key:0,class:"profile-info__actions"},{default:r(()=>[v(s,{class:h(["profile-info__follow-btn",{"profile-info__follow-btn--active":W.value.is_followed}]),onClick:ll},{default:r(()=>[v(i,null,{default:r(()=>[y(k(W.value.is_followed||W.value.is_friend?"已好友":"加好友"),1)]),_:1})]),_:1},8,["class"]),W.value.is_followed||W.value.is_friend?(d(),c(s,{key:0,class:"profile-info__chat-btn",onClick:al},{default:r(()=>[v(i,null,{default:r(()=>[y("私聊")]),_:1})]),_:1})):w("",!0)]),_:1}))]),_:1}),v(i,{class:"profile-info__desc"},{default:r(()=>[y("已加入世博头条"+k(W.value.join_days)+"天,获得"+k(W.value.like_count||0)+"个赞",1)]),_:1})]),_:1})):w("",!0)]),_:1},8,["style"]),v(s,{class:"profile-tabs"},{default:r(()=>[(d(!0),b(C,null,x(G.value,l=>(d(),c(s,{key:l.key,class:h(["profile-tabs__item",{"profile-tabs__item--active":B.value===l.key}]),onClick:a=>X(l.key)},{default:r(()=>[v(i,{class:"profile-tabs__label"},{default:r(()=>[y(k(l.label),1)]),_:2},1024),v(i,{class:"profile-tabs__count"},{default:r(()=>[y(k(l.count),1)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1}),v(o,{"scroll-y":"",class:"profile-content",onScrolltolower:Y},{default:r(()=>["posts"===B.value?(d(),c(s,{key:0},{default:r(()=>[(d(!0),b(C,null,x(U.value,l=>(d(),c(s,{key:l.id,class:"article-card",onClick:a=>{return e=l.id,void j({url:`/packages_community/pages/post_detail?id=${e}`});var e}},{default:r(()=>[v(s,{class:"article-card__body"},{default:r(()=>[v(s,{class:"article-card__text"},{default:r(()=>[v(i,{class:"article-card__title"},{default:r(()=>[y(k(l.content_short||l.content),1)]),_:2},1024),v(s,{class:"article-card__meta"},{default:r(()=>[v(i,null,{default:r(()=>{var a;return[y(k((null==(a=l.user)?void 0:a.nickname)||"匿名"),1)]}),_:2},1024),v(i,null,{default:r(()=>[y(k(l.comment_count||0)+"评论",1)]),_:2},1024),v(i,null,{default:r(()=>[y(k(ul(l.create_time)),1)]),_:2},1024)]),_:2},1024)]),_:2},1024),il(l)?(d(),c(s,{key:0,class:"article-card__thumb article-card__thumb--external",onClick:$(a=>{var e;(e=il(l))&&j({url:`/pages/webview/webview?url=${encodeURIComponent(e)}`})},["stop"])},{default:r(()=>[v(i,{class:"article-card__thumb-badge"},{default:r(()=>[y("T")]),_:1}),v(i,{class:"article-card__thumb-text"},{default:r(()=>[y("查看原帖")]),_:1})]),_:2},1032,["onClick"])):l.images&&l.images.length>0?(d(),c(t,{key:1,class:"article-card__thumb",src:l.images[0],mode:"aspectFill"},null,8,["src"])):w("",!0)]),_:2},1024),v(s,{class:"article-card__divider"})]),_:2},1032,["onClick"]))),128))]),_:1})):w("",!0),"comments"===B.value?(d(),c(s,{key:1,class:"profile-empty"},{default:r(()=>[v(i,null,{default:r(()=>[y("评论列表开发中...")]),_:1})]),_:1})):w("",!0),"following"===B.value?(d(),c(s,{key:2,class:"user-list"},{default:r(()=>[(d(!0),b(C,null,x(V.value,l=>(d(),c(s,{key:l.id,class:"user-list__item",onClick:a=>tl(l.id)},{default:r(()=>[v(t,{class:"user-list__avatar",src:l.avatar||L.value,mode:"aspectFill"},null,8,["src"]),v(i,{class:"user-list__name"},{default:r(()=>[y(k(l.nickname||"匿名"),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})):w("",!0),"fans"===B.value?(d(),c(s,{key:3,class:"user-list"},{default:r(()=>[(d(!0),b(C,null,x(E.value,l=>(d(),c(s,{key:l.id,class:"user-list__item",onClick:a=>tl(l.id)},{default:r(()=>[v(t,{class:"user-list__avatar",src:l.avatar||L.value,mode:"aspectFill"},null,8,["src"]),v(s,{class:"user-list__info"},{default:r(()=>[v(i,{class:"user-list__name"},{default:r(()=>[y(k(l.nickname||"匿名"),1)]),_:2},1024),l.is_mutual?(d(),c(i,{key:0,class:"user-list__mutual"},{default:r(()=>[y("互相关注")]),_:1})):w("",!0)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})):w("",!0),H.value?(d(),c(s,{key:4,class:"profile-loading"},{default:r(()=>[v(u,{mode:"circle"})]),_:1})):w("",!0),!H.value&&O.value&&J.value.length>0?(d(),c(s,{key:5,class:"profile-finished"},{default:r(()=>[v(i,null,{default:r(()=>[y("没有更多了")]),_:1})]),_:1})):w("",!0),H.value||0!==J.value.length?w("",!0):(d(),c(s,{key:6,class:"profile-empty"},{default:r(()=>[v(i,null,{default:r(()=>[y("暂无内容")]),_:1})]),_:1}))]),_:1})]),_:1})}}}),[["__scopeId","data-v-34ad593c"]]);export{L as default};