mirror of https://github.com/rocboss/paopao-ce
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
6.3 KiB
1 line
6.3 KiB
import{o as e}from"./rolldown-runtime-Bhmf7a9N.js";import{A as t,Bt as n,C as r,D as i,J as ee,K as a,M as o,O as s,Q as c,S as l,T as u,W as d,b as f,h as p,ht as m,lt as h,p as g,w as _,x as v}from"./@css-render-YsNuQTaE.js";import{r as y}from"./pinia-TbaIYBWH.js";import{i as b}from"./vue-router-Dw9lfhBK.js";import{G as x,P as te,U as S,W as C,ct as ne,it as w,nt as re,s as ie}from"./naive-ui-DIGPL69-.js";import{i as T,l as E}from"./sidebar-CIS7wt6Z.js";import{D,T as O,V as ae,_ as k,b as A,it as oe,k as se,nt as ce,o as le,ot as ue}from"./@vicons-Bd7TWO2p.js";import{T as j,r as M,w as N}from"./index-D3WChr5M.js";import{t as P}from"./useUserAction-iK-3kVew.js";import{a as F,i as I,o as L,r as R,s as z,t as B}from"./usePostContent-Bn5GGxB9.js";import{t as V}from"./copy-to-clipboard-BDzdVqb_.js";var H=e(V()),U={class:`nickname-wrap`},de={class:`username-wrap`},W={key:3},fe={class:`timestamp-mobile`},pe={class:`item-header-extra`},me={key:0,class:`timestamp`},he=[`innerHTML`],ge=[`innerHTML`],G=t({__name:`post-item`,props:{post:{},isOwner:{type:Boolean},addFriendAction:{type:Boolean,default:!1},addFollowAction:{type:Boolean,default:!1},isMobile:{type:Boolean,default:!1}},emits:[`send-whisper`,`handle-follow-action`,`handle-friend-action`,`post-follow-action`],setup(e,{emit:t}){let V=b(),G=E(),{profile:K}=y(T()),_e=S(),q=h(!0),J=e,Y=t,X=e=>()=>o(x,null,{default:()=>o(e)}),ve=f(()=>{let e=[];return J.isOwner||e.push({label:`私信 @`+J.post.user.username,key:`whisper`,icon:X(se)}),!J.isOwner&&J.addFollowAction&&(J.post.user.is_following?e.push({label:`取消关注 @`+J.post.user.username,key:`unfollow`,icon:X(k)}):e.push({label:`关注 @`+J.post.user.username,key:`follow`,icon:X(ue)})),!J.isOwner&&J.addFriendAction&&(J.post.user.is_friend?e.push({label:`删除好友 @`+J.post.user.username,key:`delete`,icon:X(O)}):e.push({label:`添加朋友 @`+J.post.user.username,key:`requesting`,icon:X(D)})),e.push({label:`复制链接`,key:`copyTweetLink`,icon:X(A)}),e}),ye=async e=>{switch(e){case`copyTweetLink`:(0,H.default)(`${window.location.origin}/#/post?id=${Z.value.id}&share=copy_link&t=${new Date().getTime()}`),window.$message.success(`链接已复制到剪贴板`);break;case`whisper`:Y(`send-whisper`,J.post.user);break;case`delete`:case`requesting`:Y(`handle-friend-action`,J.post);break;case`follow`:case`unfollow`:P.followAction(_e,J.post.user.id,J.post.user.username,J.post.user.is_following).then(e=>{Y(`post-follow-action`,J.post.user.id,e)}),Y(`handle-follow-action`,J.post);break;default:break}},Z=B(J.post),be=()=>{j({id:Z.value.id}).then(e=>{e.status?Z.value={...Z.value,upvote_count:Z.value.upvote_count+1}:Z.value={...Z.value,upvote_count:Z.value.upvote_count>0?Z.value.upvote_count-1:0}}).catch(e=>{console.log(e)})},xe=()=>{N({id:Z.value.id}).then(e=>{e.status?Z.value={...Z.value,collection_count:Z.value.collection_count+1}:Z.value={...Z.value,collection_count:Z.value.collection_count>0?Z.value.collection_count-1:0}}).catch(e=>{console.log(e)})},Q=e=>{V.push({name:`post`,query:{id:e}})},$=(e,t)=>{let n=e.target.dataset.detail;if(n&&n!==`post`){let e=n.split(`:`);e.length===2&&(G.doRefresh(),e[0]===`tag`?V.push({name:`home`,query:{q:e[1],t:`tag`}}):V.push({name:`user`,query:{s:e[1]}}))}else n&&n===`post`?q.value=!q.value:Q(t)};return(t,o)=>{let f=w,h=ee(`router-link`),y=ne,b=re,S=C,T=I,E=F,D=L,O=z,k=te,A=ie;return d(),_(`div`,{class:`post-item`,onClick:o[5]||=e=>Q(m(Z).id)},[s(A,{"content-indented":``},u({avatar:c(()=>[s(f,{round:``,size:30,src:m(Z).user.avatar},null,8,[`src`])]),header:c(()=>[v(`span`,U,[s(h,{onClick:o[0]||=g(()=>{},[`stop`]),class:`username-link`,to:{name:`user`,query:{s:m(Z).user.username}}},{default:c(()=>[i(n(m(Z).user.nickname),1)]),_:1},8,[`to`])]),v(`span`,de,` @`+n(m(Z).user.username),1),m(Z).is_top?(d(),l(y,{key:0,class:`top-tag`,type:`warning`,size:`small`,round:``},{default:c(()=>[...o[6]||=[i(` 置顶 `,-1)]]),_:1})):r(``,!0),m(Z).visibility==1?(d(),l(y,{key:1,class:`top-tag`,type:`error`,size:`small`,round:``},{default:c(()=>[...o[7]||=[i(` 私密 `,-1)]]),_:1})):r(``,!0),m(Z).visibility==2?(d(),l(y,{key:2,class:`top-tag`,type:`info`,size:`small`,round:``},{default:c(()=>[...o[8]||=[i(` 好友可见 `,-1)]]),_:1})):r(``,!0),e.isMobile?(d(),_(`div`,W,[v(`span`,fe,n(m(M)(m(Z).created_on))+` `+n(m(Z).ip_loc),1)])):r(``,!0)]),"header-extra":c(()=>[v(`div`,pe,[e.isMobile?r(``,!0):(d(),_(`span`,me,n(m(Z).ip_loc?m(Z).ip_loc+` · `:m(Z).ip_loc)+` `+n(m(M)(m(Z).created_on)),1)),s(S,{placement:`bottom-end`,trigger:e.isMobile?`click`:`hover`,size:`small`,options:ve.value,onSelect:ye},{default:c(()=>[s(b,{quaternary:``,circle:``},{icon:c(()=>[s(m(x),null,{default:c(()=>[s(m(le))]),_:1})]),_:1})]),_:1},8,[`trigger`,`options`])])]),footer:c(()=>[m(Z).attachments.length>0?(d(),l(T,{key:0,attachments:m(Z).attachments},null,8,[`attachments`])):r(``,!0),m(Z).charge_attachments.length>0?(d(),l(T,{key:1,attachments:m(Z).charge_attachments,price:m(Z).attachment_price},null,8,[`attachments`,`price`])):r(``,!0),m(Z).imgs.length>0?(d(),l(E,{key:2,imgs:m(Z).imgs},null,8,[`imgs`])):r(``,!0),m(Z).videos.length>0?(d(),l(D,{key:3,videos:m(Z).videos},null,8,[`videos`])):r(``,!0),m(Z).links.length>0?(d(),l(O,{key:4,links:m(Z).links},null,8,[`links`])):r(``,!0)]),action:c(()=>[s(k,{justify:`space-between`},{default:c(()=>[v(`div`,{class:`opt-item hover`,onClick:g(be,[`stop`])},[s(m(x),{size:`18`,class:`opt-item-icon`},{default:c(()=>[s(m(ae))]),_:1}),i(` `+n(m(Z).upvote_count),1)]),v(`div`,{class:`opt-item hover`,onClick:o[4]||=g(e=>Q(m(Z).id),[`stop`])},[s(m(x),{size:`18`,class:`opt-item-icon`},{default:c(()=>[s(m(ce))]),_:1}),i(` `+n(m(Z).comment_count),1)]),v(`div`,{class:`opt-item hover`,onClick:g(xe,[`stop`])},[s(m(x),{size:`18`,class:`opt-item-icon`},{default:c(()=>[s(m(oe))]),_:1}),i(` `+n(m(Z).collection_count),1)])]),_:1})]),_:2},[m(Z).texts.length>0?{name:`description`,fn:c(()=>[e.isMobile?(d(),_(`div`,{key:0,onClick:o[2]||=e=>Q(m(Z).id)},[(d(!0),_(p,null,a(m(Z).texts,e=>(d(),_(`span`,{key:e.id,class:`post-text`,onClick:o[1]||=g(e=>$(e,m(Z).id),[`stop`]),innerHTML:m(R)(e.content,`展开`,`收起`,m(K).tweetMobileEllipsisSize,q.value)},null,8,he))),128))])):(d(!0),_(p,{key:1},a(m(Z).texts,e=>(d(),_(`span`,{key:e.id,class:`post-text hover`,onClick:o[3]||=g(e=>$(e,m(Z).id),[`stop`]),innerHTML:m(R)(e.content,`展开`,`收起`,m(K).tweetWebEllipsisSize,q.value)},null,8,ge))),128))]),key:`0`}:void 0]),1024)])}}});export{G as t}; |