|
|
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,K as te,O as a,Q as o,S as s,W as c,X as l,b as u,h as ne,ht as d,lt as f,p,st as m,w as h,x as g}from"./@css-render-YsNuQTaE.js";import{r as _}from"./pinia-TbaIYBWH.js";import{i as v,r as y}from"./vue-router-Dw9lfhBK.js";import{$ as re,F as ie,G as b,J as ae,K as oe,P as se,S as x,U as S,Y as C,b as w,et as T,f as E,h as D,i as ce,n as le,ot as O,q as ue,r as de,tt as fe,x as k,y as pe}from"./naive-ui-Dv03sO69.js";import"./@juggle-BrKhuOcS.js";import{a as A,c as me,i as he,l as ge,r as j,s as _e}from"./sidebar-B2rODElh.js";import{W as M,ot as N,q as ve,v as P,z as F}from"./@vicons-CZeOmejd.js";import"./moment-D_9q9veS.js";import{_ as I,f as ye,s as L}from"./index-BzZcw6rK.js";import{t as be}from"./main-nav-BW6UKmWQ.js";import{t as R}from"./post-skeleton-CJ8iRGBT.js";import{n as z,t as B}from"./useUserAction-DVqObL5J.js";import{n as V}from"./usePostContent-DV6QgefX.js";import"./copy-to-clipboard-qdVIK2zo.js";import{t as H}from"./post-item-iSi0SGnI.js";import"./@vue-cLJXtEPP.js";import{t as U}from"./v3-infinite-loading-Dj1QGmV8.js";import{t as W}from"./usePagination-B2kaN_Rm.js";import{t as G}from"./whisper-add-friend-CovTVOU-.js";import{t as K}from"./lodash-DLCDS-2d.js";import{n as q,t as J}from"./IEnum-CpGNgU9g.js";import{t as xe}from"./@opentiny-Ckw2pOLd.js";var Y=K(),X=e=>{let t=new FileReader,n=e=>[`application/zip`,`application/x-zip`,`application/octet-stream`,`application/x-zip-compressed`].includes(e),r=()=>{let e=new Uint8Array(t.result).subarray(0,4),r=``;for(let t=0;t<e.length;t++)r+=e[t].toString(16);switch(r){case`504b0304`:case`504b0506`:case`504b0708`:return n(`application/zip`);case`504b030414`:return n(`application/x-zip-compressed`);case`504b0508`:return n(`application/x-zip`);case`504b5370`:return n(`application/octet-stream`);default:return!1}};return new Promise((i,ee)=>{t.onloadend=()=>{let t=e.type;i(t===``||t===`application/octet-stream`?r():n(t))},t.readAsArrayBuffer(e.slice(0,4))})},Se={key:0,class:`compose-wrap`},Ce={class:`compose-line`},we={class:`compose-user`},Te={class:`compose-line compose-options`},Ee={class:`attachment`},De={class:`submit-wrap`},Oe={class:`attachment-list-wrap`},ke={key:0,class:`attachment-price-wrap`},Ae={key:0,class:`eye-wrap`},je={key:1,class:`link-wrap`},Me={key:1,class:`compose-wrap`},Ne={key:0,class:`login-only-wrap`},Pe={key:1,class:`login-wrap`},Fe=t({__name:`compose`,emits:[`post-success`],setup(e,{emit:t}){let l=t,m=ge(),v=me(),y=he(),{userInfo:oe}=_(v),{profile:S}=_(y),w=f([]),T=f(!1),E=f(!1),O=f(!1),k=f(!1),j=f(``),I=f([]),ye=f(),be=f(0),R=f(`public/image`),z=f([]),B=f([]),H=f([]),U=f([]),W=f(q.PUBLIC),G=f(q.PUBLIC),K=f(!0),xe=u(()=>`Bearer `+localStorage.getItem(_e)),Fe=u(()=>{let e=[{value:q.PUBLIC,label:`公开`},{value:q.PRIVATE,label:`私密`},{value:q.Following,label:`关注可见`}];return S.value.useFriendship&&e.push({value:q.FRIEND,label:`好友可见`}),e}),Ie=()=>{O.value=!O.value,O.value&&k.value&&(k.value=!1)},Le=()=>{k.value=!k.value,k.value&&O.value&&(O.value=!1)},Re=(0,Y.debounce)(e=>{A.v1.suggest.get.users({k:e}).then(e=>{let t=[];e.suggest.map(e=>{t.push({label:e,value:e})}),w.value=t,T.value=!1}).catch(e=>{T.value=!1})},200),ze=(0,Y.debounce)(e=>{A.v1.suggest.get.tags({k:e}).then(e=>{let t=[];e.suggest.map(e=>{t.push({label:e,value:e})}),w.value=t,T.value=!1}).catch(e=>{T.value=!1})},200),Be=(e,t)=>{T.value||(T.value=!0,t===`@`?Re(e):ze(e))},Ve=e=>{e.length>S.value.defaultTweetMaxLength?j.value=e.substring(0,S.value.defaultTweetMaxLength):j.value=e},He=e=>{R.value=e},Ue=e=>{for(let i=0;i<e.length;i++){var t=e[i].name,n=t.split(`.`).slice(0,-1).join(`.`),r=t.split(`.`).pop();n.length>30&&(e[i].name=n.substring(0,18)+`...`+n.substring(n.length-9)+`.`+r)}z.value=e},We=async e=>R.value===`public/image`&&![`image/webp`,`image/png`,`image/jpg`,`image/jpeg`,`image/gif`].includes(e.file.file?.type)?(window.$message.warning(`图片仅允许 webp/png/jpg/gif 格式`),!1):R.value===`image`&&e.file.file?.size>10485760?(window.$message.warning(`图片大小不能超过10MB`),!1):R.value===`public/video`&&![`video/mp4`,`video/quicktime`].includes(e.file.file?.type)?(window.$message.warning(`视频仅允许 mp4/mov 格式`),!1):R.value===`public/video`&&e.file.file?.size>104857600?(window.$message.warning(`视频大小不能超过100MB`),!1):R.value===`attachment`&&!await X(e.file.file)?(window.$message.warning(`附件仅允许 zip 格式`),!1):R.value===`attachment`&&e.file.file?.size>104857600?(window.$message.warning(`附件大小不能超过100MB`),!1):!0,Ge=({file:e,event:t})=>{try{let n=JSON.parse(t.target?.response);n.code===0&&(R.value===`public/image`&&B.value.push({id:e.id,content:n.data.content}),R.value===`public/video`&&H.value.push({id:e.id,content:n.data.content}),R.value===`attachment`&&U.value.push({id:e.id,content:n.data.content}))}catch{window.$message.error(`上传失败`)}},Ke=({file:e,event:t})=>{try{let e=JSON.parse(t.target?.response);if(e.code!==0){let t=e.msg||`上传失败`;e.details&&e.details.length>0&&e.details.map(e=>{t+=`:`+e}),window.$message.error(t)}}catch{window.$message.error(`上传失败`)}},qe=({file:e})=>{let t=B.value.findIndex(t=>t.id===e.id);t>-1&&B.value.splice(t,1),t=H.value.findIndex(t=>t.id===e.id),t>-1&&H.value.splice(t,1),t=U.value.findIndex(t=>t.id===e.id),t>-1&&U.value.splice(t,1)},Z=()=>{if(j.value.trim().length===0){window.$message.warning(`请输入内容哦`);return}let{tags:e,users:t}=V(j.value),n=[],r=100;n.push({content:j.value,type:J.TEXT,sort:r}),B.value.map(e=>{r++,n.push({content:e.content,type:J.IMAGEURL,sort:r})}),H.value.map(e=>{r++,n.push({content:e.content,type:J.VIDEOURL,sort:r})}),U.value.map(e=>{r++,n.push({content:e.content,type:J.ATTACHMENT,sort:r})}),I.value.length>0&&I.value.map(e=>{r++,n.push({content:e,type:J.LINKURL,sort:r})}),E.value=!0,L({contents:n,tags:Array.from(new Set(e)),users:Array.from(new Set(t)),attachment_price:be.value*100,visibility:W.value}).then(e=>{window.$message.success(`发布成功`),E.value=!1,l(`post-success`,e),O.value=!1,k.value=!1,ye.value?.clear(),z.value=[],j.value=``,I.value=[],B.value=[],H.value=[],U.value=[],W.value=G.value}).catch(e=>{E.value=!1})},Q=e=>{m.triggerAuth(!0),m.triggerAuthKey(e)};return ee(()=>{let e=S.value.defaultTweetVisibility;S.value.useFriendship&&e===`friend`?G.value=q.FRIEND:e===`following`?G.value=q.Following:e===`public`?G.value=q.PUBLIC:G.value=q.PRIVATE,W.value=G.value}),(e,t)=>{let ee=fe,l=pe,u=b,f=re,m=ce,_=D,v=ue,y=de,A=x,me=le,he=C,ge=se,_e=ae,L=ie;return c(),h(`div`,null,[d(oe).id>0?(c(),h(`div`,Se,[g(`div`,Ce,[g(`div`,we,[a(ee,{round:``,size:30,src:d(oe).avatar},null,8,[`src`])]),a(l,{type:`textarea`,size:`large`,autosize:``,bordered:!1,loading:T.value,value:j.value,prefix:[`@`,`#`],options:w.value,onSearch:Be,"onUpdate:value":Ve,placeholder:`说说您的新鲜事...`},null,8,[`loading`,`value`,`options`])]),a(me,{ref_key:`uploadRef`,ref:ye,abstract:``,"list-type":`image`,multiple:!0,max:9,action:`/v1/attachment`,headers:{Authorization:xe.value},data:{type:R.value},"file-list":z.value,onBeforeUpload:We,onFinish:Ge,onError:Ke,onRemove:qe,"onUpdate:fileList":Ue},{default:o(()=>[g(`div`,Te,[g(`div`,Ee,[a(m,{abstract:``},{default:o(({handleClick:e})=>[a(f,{disabled:z.value.length>0&&R.value===`public/video`||z.value.length===9,onClick:()=>{He(`public/image`),e()},quaternary:``,circle:``,type:`primary`},{icon:o(()=>[a(u,{size:`20`,color:`var(--primary-color)`},{default:o(()=>[a(d(F))]),_:1})]),_:1},8,[`disabled`,`onClick`])]),_:1}),d(S).allowTweetVideo?(c(),s(m,{key:0,abstract:``},{default:o(({handleClick:e})=>[a(f,{disabled:z.value.length>0&&R.value!==`public/video`||z.value.length===9,onClick:()=>{He(`public/video`),e()},quaternary:``,circle:``,type:`primary`},{icon:o(()=>[a(u,{size:`20`,color:`var(--primary-color)`},{default:o(()=>[a(d(P))]),_:1})]),_:1},8,[`disabled`,`onClick`])]),_:1})):r(``,!0),d(S).allowTweetAttachment?(c(),s(m,{key:1,abstract:``},{default:o(({handleClick:e})=>[a(f,{disabled:z.value.length>0&&R.value===`public/video`||z.value.length===9,onClick:()=>{He(`attachment`),e()},quaternary:``,circle:``,type:`primary`},{icon:o(()=>[a(u,{size:`20`,color:`var(--primary-color)`},{default:o(()=>[a(d(N))]),_:1})]),_:1},8,[`disabled`,`onClick`])]),_:1})):r(``,!0),a(f,{quaternary:``,circle:``,type:`primary`,onClick:p(Ie,[`stop`])},{icon:o(()=>[a(u,{size:`20`,color:`var(--primary-color)`},{default:o(()=>[a(d(ve))]),_:1})]),_:1}),K.value?(c(),s(f,{key:2,quaternary:``,circle:``,type:`primary`,onClick:p(Le,[`stop`])},{icon:o(()=>[a(u,{size:`20`,color:`var(--primary-color)`},{default:o(()=>[a(d(M))]),_:1})]),_:1})):r(``,!0)]),g(`div`,De,[a(v,{trigger:`hover`,placement:`bottom`},{trigger:o(()=>[a(_,{class:`text-statistic`,type:`circle`,"show-indicator":!1,status:`success`,"stroke-width":10,percentage:j.value.length/d(S).defaultTweetMaxLength*100},null,8,[`percentage`])]),default:o(()=>[i(` 已输入`+n(j.value.length)+`字 `,1)]),_:1}),a(f,{loading:E.value,onClick:Z,type:`primary`,secondary:``,round:``},{default:o(()=>[...t[6]||=[i(` 发布 `,-1)]]),_:1},8,[`loading`])])]),g(`div`,Oe,[a(y),U.value.length>0?(c(),h(`div`,ke,[d(S).allowTweetAttachmentPrice?(c(),s(A,{key:0,value:be.value,"onUpdate:value":t[0]||=e=>be.value=e,min:0,max:1e5,placeholder:`请输入附件价格,0为免费附件`},{prefix:o(()=>[...t[7]||=[g(`span`,null,` 附件价格¥`,-1)]]),_:1},8,[`value`])):r(``,!0)])):r(``,!0)])]),_:1},8,[`headers`,`data`,`file-list`]),k.value?(c(),h(`div`,Ae,[a(_e,{value:W.value,"onUpdate:value":t[1]||=e=>W.value=e,name:`radiogroup`},{default:o(()=>[a(ge,null,{default:o(()=>[(c(!0),h(ne,null,te(Fe.value,e=>(c(),s(he,{key:e.value,value:e.value,label:e.label},null,8,[`value`,`label`]))),128))]),_:1})]),_:1},8,[`value`])])):r(``,!0),O.value?(c(),h(`div`,je,[a(L,{value:I.value,"onUpdate:value":t[2]||=e=>I.value=e,placeholder:`请输入以http(s)://开头的链接`,min:0,max:3},{"create-button-default":o(()=>[...t[8]||=[i(` 创建链接 `,-1)]]),_:1},8,[`value`])])):r(``,!0)])):(c(),h(`div`,Me,[t[12]||=g(`div`,{class:`login-wrap`},[g(`span`,{class:`login-banner`},` 登录后,精彩更多`)],-1),d(S).allowUserRegister?r(``,!0):(c(),h(`div`,Ne,[a(f,{strong:``,secondary:``,round:``,type:`primary`,onClick:t[3]||=e=>Q(`signin`)},{default:o(()=>[...t[9]||=[i(` 登录 `,-1)]]),_:1})])),d(S).allowUserRegister?(c(),h(`div`,Pe,[a(f,{strong:``,secondary:``,round:``,type:`primary`,onClick:t[4]||=e=>Q(`signin`)},{default:o(()=>[...t[10]||=[i(` 登录 `,-1)]]),_:1}),a(f,{strong:``,secondary:``,round:``,type:`info`,onClick:t[5]||=e=>Q(`signup`)},{default:o(()=>[...t[11]||=[i(` 注册 `,-1)]]),_:1})])):r(``,!0)]))])}}}),Ie=e(U()),Le=`data:image/png;base64,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`,Re=`/assets/discover-tweets-DGidPW73.jpeg`,ze=`/assets/following-tweets-BKofJ8VU.jpeg`,Be={class:`slide-bar-item`},Ve={class:`slide-bar-item-title slide-bar-user-link`},He={key:1,class:`style-wrap`},Ue={key:2,class:`skeleton-wrap`},We={key:0,class:`empty-wrap`},Ge={class:`load-more-wrap`},Ke={class:`load-more-spinner`},qe=j(t({__name:`Home`,setup(e){let t=ge(),p=me(),ie=he(),{desktopModelShow:b,refresh:ae}=_(t),{userInfo:x}=_(p),{profile:C}=_(ie),D=y(),ce=v(),le=S(),ue=f(`newest`),de=[{key:`newest`,label:`全部`,index:0},{key:`hots`,label:`热门推荐`,index:1},{key:`following`,label:`正在关注`,index:2}],pe=(e,t)=>{ue.value=e,Q(M.value[t],t)},j=f(9),_e=f(8),M=f([{title:`最新动态`,style:1,username:``,avatar:Le,show:!0},{title:`热门推荐`,style:2,username:``,avatar:Re,show:!1},{title:`正在关注`,style:3,username:``,avatar:ze,show:!1},{title:``,style:1,username:``,avatar:``,show:!0},{title:``,style:1,username:``,avatar:``,show:!0},{title:``,style:1,username:``,avatar:``,show:!0},{title:``,style:1,username:``,avatar:``,show:!0},{title:``,style:1,username:``,avatar:``,show:!0},{title:``,style:1,username:``,avatar:``,show:!0},{title:``,style:1,username:``,avatar:``,show:!0},{title:``,style:1,username:``,avatar:``,show:!0},{title:``,style:1,username:``,avatar:``,show:!0}]),N=m({id:0,avatar:``,username:``,nickname:``,is_admin:!1,is_friend:!1,is_following:!1,created_on:0,follows:0,followings:0,status:1}),ve=f(null),P=f(`泡泡广场`),F=f(1),L=f(``),V=f([]),U=f(!1),{loading:K,noMore:q,page:J,pageSize:Y,totalPage:X,reset:Se,nextPage:Ce}=W(20),{showWhisper:we,whisperReceiver:Te,onSendWhisper:Ee,whisperSuccess:De}=B.useWhisper(),Oe=()=>{U.value=!0},ke=e=>{le.warning({title:`删除好友`,content:`将好友 “`+e.user.nickname+`” 删除,将同时删除 点赞/收藏 列表中关于该朋友的 “好友可见” 推文`,positiveText:`确定`,negativeText:`取消`,onPositiveClick:()=>{A.v1.friend.post.delete({user_id:N.id}).then(t=>{window.$message.success(`操作成功`),e.user.is_friend=!1}).catch(e=>{})}})},Ae=()=>{U.value=!1,ve.value=null},je=e=>{ve.value=e,N.id=e.user.id,N.username=e.user.username,N.nickname=e.user.nickname,e.user.is_friend?ke(e):Oe()};function Me(e,t){for(let n in V.value)V.value[n].user_id==e&&(V.value[n].user.is_following=t);F.value===3&&!t&&(Z(),$(`following`))}let Ne=()=>{P.value=`泡泡广场`,D.query&&D.query.q&&(D.query.t&&D.query.t===`tag`?P.value=`#`+decodeURIComponent(D.query.q):P.value=`搜索: `+decodeURIComponent(D.query.q))},Pe=u(()=>x.value.id>0&&!C.value.enableTrendsBar&&b.value),qe=u(()=>C.value.useFriendship&&C.value.enableTrendsBar&&b.value&&x.value.id>0),Z=()=>{Se(),V.value=[]},Q=(e,t)=>{switch(Z(),F.value=e.style,D.query.q&&(D.query.q=null,Ne()),e.style){case 1:$(`newest`);break;case 2:$(`hots`);break;case 3:D.query.q=null,$(`following`);break;case 21:L.value=e.username,Ye();break;default:break}M.value[t].show=!1},Je=()=>{M.value=M.value.slice(0,3),!(!C.value.useFriendship||!C.value.enableTrendsBar||x.value.id===0)&&ye({page:1,page_size:50}).then(e=>{var t=0;let n=e.list||[],r=[];for(;t<n.length;t++){let e=n[t];r.push({title:e.nickname,style:21,username:e.username,avatar:e.avatar,show:e.is_fresh})}r.length>0&&(M.value=M.value.concat(r))}).catch(e=>{console.log(e)})},$=e=>{K.value=!0,I({query:D.query.q?decodeURIComponent(D.query.q):null,type:D.query.t,style:e,page:J.value,page_size:Y.value}).then(e=>{K.value=!1,e.list.length===0&&(q.value=!0),J.value>1?V.value=V.value.concat(e.list):(V.value=e.list,window.scrollTo(0,0)),X.value=Math.ceil(e.pager.total_rows/Y.value)}).catch(e=>{K.value=!1,J.value>1&&J.value--})},Ye=()=>{K.value=!0,A.v1.user.get.posts({username:L.value,style:`post`,page:J.value,page_size:Y.value}).then(e=>{K.value=!1,e.list.length===0&&(q.value=!0),J.value>1?V.value=V.value.concat(e.list):(V.value=e.list||[],window.scrollTo(0,0)),X.value=Math.ceil(e.pager.total_rows/Y.value)}).catch(e=>{V.value=[],J.value>1&&J.value--,K.value=!1})},Xe=e=>{ce.push({name:`post`,query:{id:e.id}})},Ze=()=>{switch(F.value){case 1:$(`newest`);break;case 2:$(`hots`);break;case 3:$(`following`);break;case 21:D.query.q?$(`search`):Ye();break;default:break}},Qe=()=>{Ce(Ze)};return ee(()=>{Z(),Je(),$(`newest`)}),l(()=>({path:D.path,query:D.query,refresh:ae.value}),(e,t)=>{if(Ne(),e.refresh!==t.refresh){Z(),setTimeout(()=>{Je(),Ze()},0);return}t.path!==`/post`&&e.path===`/`&&(Z(),setTimeout(()=>{Je(),Ze()},0))}),(e,t)=>{let ee=be,l=Fe,u=w,f=fe,p=T,m=oe,_=re,v=se,y=R,ie=O,ae=H,S=z,C=G,D=k,ce=E;return c(),h(`div`,null,[a(ee,{title:P.value},null,8,[`title`]),a(D,{class:`main-content-wrap`,bordered:``},{default:o(()=>[a(u,null,{default:o(()=>[a(l,{onPostSuccess:Xe})]),_:1}),qe.value?(c(),s(u,{key:0},{default:o(()=>[a(d(xe),{modelValue:M.value,"onUpdate:modelValue":t[0]||=e=>M.value=e,"wheel-blocks":_e.value,"init-blocks":j.value,onClick:Q,tag:`div`,"sub-tag":`div`},{default:o(e=>[g(`div`,Be,[a(p,{value:`1`,offset:[-4,48],dot:``,show:e.slotData.show},{default:o(()=>[a(f,{round:``,size:48,src:e.slotData.avatar,class:`slide-bar-item-avatar`},null,8,[`src`])]),_:2},1032,[`show`]),g(`div`,Ve,[a(m,{"line-clamp":2},{default:o(()=>[i(n(e.slotData.title),1)]),_:2},1024)])])]),_:1},8,[`modelValue`,`wheel-blocks`,`init-blocks`])]),_:1})):Pe.value?(c(),h(`div`,He,[a(v,null,{default:o(()=>[(c(),h(ne,null,te(de,e=>a(_,{key:e.key,size:`small`,type:ue.value===e.key?`success`:void 0,bordered:!1,onClick:t=>pe(e.key,e.index),class:`style-item`,secondary:``,round:``},{default:o(()=>[i(n(e.label),1)]),_:2},1032,[`type`,`onClick`])),64))]),_:1})])):r(``,!0),d(K)&&V.value.length===0?(c(),h(`div`,Ue,[a(y,{num:d(Y)},null,8,[`num`])])):r(``,!0),g(`div`,null,[V.value.length===0?(c(),h(`div`,We,[a(ie,{size:`large`,description:`暂无数据`})])):r(``,!0),(c(!0),h(ne,null,te(V.value,e=>(c(),s(u,{key:e.id},{default:o(()=>[a(ae,{post:e,isOwner:d(x).id==e.user_id,isMobile:!d(b),addFollowAction:``,onSendWhisper:d(Ee),onPostFollowAction:Me,onHandleFriendAction:je},null,8,[`post`,`isOwner`,`isMobile`,`onSendWhisper`])]),_:2},1024))),128))]),a(S,{show:d(we),user:d(Te),onSuccess:d(De)},null,8,[`show`,`user`,`onSuccess`]),a(C,{show:U.value,user:N,onSuccess:Ae},null,8,[`show`,`user`])]),_:1}),d(X)>0?(c(),s(v,{key:0,justify:`center`},{default:o(()=>[a(d(Ie.default),{class:`load-more`,slots:{complete:`没有更多泡泡了`,error:`加载出错`},onInfinite:Qe},{spinner:o(()=>[g(`div`,Ge,[d(q)?r(``,!0):(c(),s(ce,{key:0,size:14})),g(`span`,Ke,n(d(q)?`没有更多泡泡了`:`加载更多`),1)])]),_:1})]),_:1})):r(``,!0)])}}}),[[`__scopeId`,`data-v-bb68ff14`]]);export{qe as default}; |