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