import{o as e}from"./rolldown-runtime-Bhmf7a9N.js";import{A as t,Bt as n,C as r,D as i,H as ee,J as te,K as ne,M as a,O as o,Q as s,S as c,W as l,X as u,b as d,h as re,ht as f,lt as p,p as m,st as h,w as g,x as _}from"./@css-render-YsNuQTaE.js";import{r as v}from"./pinia-TbaIYBWH.js";import{i as y,r as b}from"./vue-router-Dw9lfhBK.js";import{G as x,P as ie,U as S,W as ae,b as oe,c as se,ct as ce,f as le,it as ue,l as de,lt as fe,nt as pe,x as me}from"./naive-ui-DIGPL69-.js";import"./@juggle-BrKhuOcS.js";import{a as C,c as he,i as ge,l as _e,r as w}from"./sidebar-CIS7wt6Z.js";import{D as T,K as E,S as ve,T as ye,_ as be,k as xe,o as Se,ot as Ce}from"./@vicons-Bd7TWO2p.js";import"./moment-D_9q9veS.js";import{n as we}from"./index-D3WChr5M.js";import{t as Te}from"./main-nav-BLJ4tcq0.js";import{t as Ee}from"./post-skeleton-1eDXvLg5.js";import{n as De,t as Oe}from"./useUserAction-iK-3kVew.js";import"./usePostContent-Bn5GGxB9.js";import"./copy-to-clipboard-BDzdVqb_.js";import{t as ke}from"./post-item-DKmEIWwa.js";import"./@vue-BhUWcoL8.js";import{t as D}from"./v3-infinite-loading-DRGEwjx_.js";import{t as Ae}from"./whisper-add-friend-DIrW-cPO.js";import{t as O}from"./count-vruy0lPH.js";var je=e(D()),Me={key:0,class:`profile-baseinfo`},Ne={class:`avatar`},Pe={class:`base-info`},Fe={class:`username`},Ie={class:`userinfo`},Le={class:`info-item`},Re={class:`info-item`},ze={class:`userinfo`},Be={class:`info-item`},Ve={class:`info-item`},He={class:`info-item`},Ue={key:0,class:`user-opts`},We={key:0,class:`skeleton-wrap`},Ge={key:1},Ke={key:0,class:`empty-wrap`},qe={class:`load-more-wrap`},Je={class:`load-more-spinner`},Ye=w(t({__name:`User`,setup(e){let t=S(),w=_e(),D=he(),Ye=ge(),{desktopModelShow:Xe}=v(w),{userLogined:Ze,userInfo:k}=v(D),{profile:A}=v(Ye),j=b(),Qe=y(),M=p(!1),N=p(!1),P=h({id:0,avatar:``,username:``,nickname:``,is_admin:!1,is_friend:!0,is_following:!1,created_on:0,follows:0,followings:0,tweets_count:0,status:1}),F=p(!1),I=p(!1),L=p(!1),R=p([]),z=p([]),B=p([]),V=p([]),H=p([]),U=p([]),W=p(j.query.s||``),G=p(+j.query.p||1),K=p(`post`),$e=p(+j.query.p||1),et=p(1),tt=p(1),nt=p(1),rt=p(1),q=p(20),J=p(0),it=p(0),at=p(0),ot=p(0),st=p(0),ct=p(0),lt=d(()=>{switch(K.value){case`post`:return z.value;case`comment`:return B.value;case`highlight`:return V.value;case`media`:return H.value;case`star`:return U.value;default:return[]}}),ut=e=>{P.id=e.id,P.username=e.username,P.nickname=e.nickname,P.avatar=e.avatar,I.value=!0};function dt(e,t){Y(z,e,t),Y(B,e,t),Y(V,e,t),Y(H,e,t),Y(U,e,t)}function Y(e,t,n){if(e.value&&e.value.length>0)for(let r in e.value)e.value[r].user_id==t&&(e.value[r].user.is_following=n)}let ft=()=>{N.value=!1,R.value=[],z.value=[],B.value=[],V.value=[],H.value=[],U.value=[],K.value=`post`,G.value=1,$e.value=1,et.value=1,tt.value=1,nt.value=1,rt.value=1,J.value=0,it.value=0,at.value=0,ot.value=0,st.value=0,ct.value=0},pt=()=>{Z(K.value)},X={post:{list:z,totalPage:it},comment:{list:B,totalPage:at},highlight:{list:V,totalPage:ot},media:{list:H,totalPage:st},star:{list:U,totalPage:ct}};function Z(e){M.value=!0,C.v1.user.get.posts({username:W.value,style:e,page:G.value,page_size:q.value}).then(t=>{M.value=!1,t.list.length===0&&(N.value=!0),G.value>1?R.value=R.value.concat(t.list):(R.value=t.list||[],window.scrollTo(0,0)),J.value=Math.ceil(t.pager.total_rows/q.value),X[e].list.value=R.value,X[e].totalPage.value=J.value}).catch(e=>{R.value=[],G.value>1&&G.value--,M.value=!1})}let mt={post:$e,comment:et,highlight:tt,media:nt,star:rt};function ht(e){K.value=e,R.value=X[e].list.value,G.value=mt[e].value,J.value=X[e].totalPage.value,Z(e)}let Q=()=>{F.value=!0,C.v1.user.get.profile({username:W.value}).then(e=>{F.value=!1,P.id=e.id,P.avatar=e.avatar,P.username=e.username,P.nickname=e.nickname,P.is_admin=e.is_admin,P.is_friend=e.is_friend,P.created_on=e.created_on,P.is_following=e.is_following,P.follows=e.follows,P.followings=e.followings,P.status=e.status,e.tweets_count&&(P.tweets_count=e.tweets_count),pt()}).catch(e=>{F.value=!1,console.log(e)})},gt=()=>{mt[K.value].value=G.value,Z(K.value)},_t=()=>{I.value=!0},vt=()=>{L.value=!0},yt=()=>{I.value=!1},bt=()=>{L.value=!1},$=e=>()=>a(x,null,{default:()=>a(e)}),xt=d(()=>{if(k.value.username==P.username)return[{label:`设置`,key:`setting`,icon:$(ve)}];let e=[{label:`私信`,key:`whisper`,icon:$(xe)}];return k.value.is_admin&&(P.status===1?e.push({label:`禁言`,key:`banned`,icon:$(E)}):e.push({label:`解封`,key:`deblocking`,icon:$(E)})),P.is_following?e.push({label:`取消关注`,key:`unfollow`,icon:$(be)}):e.push({label:`关注`,key:`follow`,icon:$(Ce)}),A.value.useFriendship&&(P.is_friend?e.push({label:`删除好友`,key:`delete`,icon:$(ye)}):e.push({label:`添加朋友`,key:`requesting`,icon:$(T)})),e}),St=e=>{switch(e){case`whisper`:_t();break;case`delete`:Ct();break;case`requesting`:vt();break;case`follow`:case`unfollow`:wt();break;case`banned`:case`deblocking`:Tt();break;case`setting`:Qe.push({name:`setting`,query:{t:new Date().getTime()}});break;default:break}},Ct=()=>{t.warning({title:`删除好友`,content:`将好友 “`+P.nickname+`” 删除,将同时删除 点赞/收藏 列表中关于该朋友的 “好友可见” 推文`,positiveText:`确定`,negativeText:`取消`,onPositiveClick:()=>{F.value=!0,C.v1.friend.post.delete({user_id:P.id}).then(e=>{F.value=!1,P.is_friend=!1,Z(`post`)}).catch(e=>{F.value=!1,console.log(e)})}})},wt=()=>{Oe.followAction(t,P.id,P.username,P.is_following).then(e=>{F.value=!1,Q()}).catch(e=>{F.value=!1,console.log(e)})},Tt=()=>{t.warning({title:`警告`,content:`确定对该用户进行`+(P.status===1?`禁言`:`解封`)+`处理吗?`,positiveText:`确定`,negativeText:`取消`,onPositiveClick:()=>{F.value=!0,C.v1.admin.post.user.status({id:P.id,status:P.status===1?2:1}).then(e=>{F.value=!1,P.status===1?window.$message.success(`禁言成功`):window.$message.success(`解封成功`),Q()}).catch(e=>{F.value=!1,console.log(e)})}})},Et=()=>{G.value{Q()}),u(()=>({path:j.path,query:j.query}),(e,t)=>{t.path===`/u`&&e.path===`/u`&&(W.value=j.query.s||``,ft(),Q())}),(e,t)=>{let ee=Te,a=ue,u=ce,d=te(`router-link`),p=pe,h=ae,v=De,y=de,b=se,S=le,C=Ee,he=fe,ge=ke,_e=oe,w=me,T=ie;return l(),g(`div`,null,[o(ee,{title:`用户详情`}),o(w,{class:`main-content-wrap profile-wrap`,bordered:``},{default:s(()=>[o(S,{show:F.value},{default:s(()=>[P.id>0?(l(),g(`div`,Me,[_(`div`,Ne,[o(a,{size:72,src:P.avatar},null,8,[`src`])]),_(`div`,Pe,[_(`div`,Fe,[_(`strong`,null,n(P.nickname),1),_(`span`,null,` @`+n(P.username),1),f(A).useFriendship&&f(k).id>0&&f(k).username!=P.username&&P.is_friend?(l(),c(u,{key:0,class:`top-tag`,type:`info`,size:`small`,round:``},{default:s(()=>[...t[3]||=[i(` 好友 `,-1)]]),_:1})):r(``,!0),f(k).id>0&&f(k).username!=P.username&&P.is_following?(l(),c(u,{key:1,class:`top-tag`,type:`success`,size:`small`,round:``},{default:s(()=>[...t[4]||=[i(` 已关注 `,-1)]]),_:1})):r(``,!0),P.is_admin?(l(),c(u,{key:2,class:`top-tag`,type:`error`,size:`small`,round:``},{default:s(()=>[...t[5]||=[i(` 管理员 `,-1)]]),_:1})):r(``,!0)]),_(`div`,Ie,[_(`span`,Le,`UID. `+n(P.id),1),_(`span`,Re,n(f(we)(P.created_on))+`\xA0加入`,1)]),_(`div`,ze,[_(`span`,Be,[o(d,{onClick:t[0]||=m(()=>{},[`stop`]),class:`following-link`,to:{name:`following`,query:{s:P.username,n:P.nickname,t:`follows`}}},{default:s(()=>[i(` 关注\xA0\xA0`+n(f(O)(P.follows)),1)]),_:1},8,[`to`])]),_(`span`,Ve,[o(d,{onClick:t[1]||=m(()=>{},[`stop`]),class:`following-link`,to:{name:`following`,query:{s:P.username,n:P.nickname,t:`followings`}}},{default:s(()=>[i(` 粉丝\xA0\xA0`+n(f(O)(P.followings)),1)]),_:1},8,[`to`])]),_(`span`,He,` 泡泡\xA0\xA0`+n(f(O)(P.tweets_count||0)),1)])]),f(k).id>0?(l(),g(`div`,Ue,[o(h,{placement:`bottom-end`,trigger:`click`,size:`small`,options:xt.value,onSelect:St},{default:s(()=>[o(p,{quaternary:``,circle:``},{icon:s(()=>[o(f(x),null,{default:s(()=>[o(f(Se))]),_:1})]),_:1})]),_:1},8,[`options`])])):r(``,!0)])):r(``,!0),o(v,{show:I.value,user:P,onSuccess:yt},null,8,[`show`,`user`]),o(Ae,{show:L.value,user:P,onSuccess:bt},null,8,[`show`,`user`]),F.value?r(``,!0):(l(),c(b,{key:1,class:`profile-tabs-wrap`,type:`line`,animated:``,value:K.value,"onUpdate:value":ht},{default:s(()=>[o(y,{name:`post`,tab:`泡泡`}),o(y,{name:`comment`,tab:`评论`}),o(y,{name:`highlight`,tab:`亮点`}),o(y,{name:`media`,tab:`图文`}),o(y,{name:`star`,tab:`喜欢`})]),_:1},8,[`value`]))]),_:1},8,[`show`]),M.value&&R.value.length===0?(l(),g(`div`,We,[o(C,{num:q.value},null,8,[`num`])])):(l(),g(`div`,Ge,[R.value.length===0?(l(),g(`div`,Ke,[o(he,{size:`large`,description:`暂无数据`})])):r(``,!0),(l(!0),g(re,null,ne(lt.value,e=>(l(),c(_e,{key:e.id},{default:s(()=>[o(ge,{post:e,isOwner:f(k).id==e.user_id,isMobile:!f(Xe),addFollowAction:``,onSendWhisper:ut,onPostFollowAction:dt},null,8,[`post`,`isOwner`,`isMobile`])]),_:2},1024))),128))]))]),_:1}),J.value>0?(l(),c(T,{key:0,justify:`center`},{default:s(()=>[o(f(je.default),{class:`load-more`,slots:{complete:`没有更多泡泡了`,error:`加载出错`},onInfinite:t[2]||=e=>Et()},{spinner:s(()=>[_(`div`,qe,[N.value?r(``,!0):(l(),c(S,{key:0,size:14})),_(`span`,Je,n(N.value?`没有更多泡泡了`:`加载更多`),1)])]),_:1})]),_:1})):r(``,!0)])}}}),[[`__scopeId`,`data-v-22eef2f5`]]);export{Ye as default};