Files
Pawer/dist/pages/post-detail/index.js

1 line
6.5 KiB
JavaScript

"use strict";(wx["webpackJsonp"]=wx["webpackJsonp"]||[]).push([[741],{8680:function(e,t,n){var s=n(8870),a=n(1212),c=n(467),r=n(9379),i=n(5544),o=n(436),l=n(6540),u=n(758),d=n.n(u),m=n(118),p=n(374),h=n(3401),_=n(7745),f=n(3972),v=n(7896),x=n(4149),A=n(994),k=n(5313),j=n(5596),N=n(4848),S=50;function b(e,t){var n=new Set(e.map(function(e){return e._id}));return[].concat((0,o.A)(e),(0,o.A)(t.filter(function(e){return!n.has(e._id)})))}function y(){var e=(0,p.v)(),t=e.statusBarHeight,n=e.safeBottom,s=(0,u.useRouter)(),y=s.params.postId||"",w=(0,j.wV)(),g=w.user,E=(0,k.bI)(y),B=(0,l.useState)(E||null),Y=(0,i.A)(B,2),M=Y[0],C=Y[1],I=(0,l.useState)([]),T=(0,i.A)(I,2),U=T[0],K=T[1],z=(0,l.useState)(!1),H=(0,i.A)(z,2),O=H[0],P=H[1],R=(0,l.useState)(!1),J=(0,i.A)(R,2),Q=J[0],F=J[1],L=(0,l.useState)(""),V=(0,i.A)(L,2),$=V[0],q=V[1],D=(0,l.useState)(!1),G=(0,i.A)(D,2),W=G[0],X=G[1],Z=(0,l.useState)(""),ee=(0,i.A)(Z,2),te=ee[0],ne=ee[1],se=(0,l.useState)(!1),ae=(0,i.A)(se,2),ce=ae[0],re=ae[1],ie=(0,A.d)(480),oe=(0,l.useRef)(E||null),le=(0,l.useRef)(new Set);(0,l.useEffect)(function(){oe.current=M},[M]);var ue=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";y?(e?X(!0):(F(!1),P(!1)),(0,x.aC)({postId:y,commentCursor:t,commentPageSize:S}).then(function(t){var n=t.post;n&&((0,k.bE)(n),C(function(e){return e?e.likedByMe===n.likedByMe&&e.counts.likes===n.counts.likes&&e.counts.comments===n.counts.comments?e:(0,r.A)((0,r.A)({},e),{},{likedByMe:n.likedByMe,counts:n.counts}):n})),K(function(n){return e?b(n,t.comments):t.comments}),q(t.commentsNextCursor||"")}).catch(function(){e?d().showToast({title:"\u8bc4\u8bba\u52a0\u8f7d\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"}):F(!0)}).finally(function(){e?X(!1):P(!0)})):P(!0)};(0,l.useEffect)(function(){ue()},[y]);var de=function(){var e=(0,c.A)((0,a.A)().m(function e(t){var n,s,c,i;return(0,a.A)().w(function(e){while(1)switch(e.p=e.n){case 0:return e.n=1,(0,j.HQ)();case 1:if(e.v){e.n=2;break}return e.a(2);case 2:if(!le.current.has(t)){e.n=3;break}return e.a(2);case 3:if(n=oe.current,n){e.n=4;break}return e.a(2);case 4:return s=!n.likedByMe,s&&ie.show(),c=(0,r.A)((0,r.A)({},n),{},{likedByMe:s,counts:(0,r.A)((0,r.A)({},n.counts),{},{likes:Math.max(0,n.counts.likes+(s?1:-1))})}),le.current.add(t),C(c),e.p=5,e.n=6,(0,x.O$)(t,s);case 6:i=e.v,C(function(e){return e?(0,r.A)((0,r.A)({},e),{},{likedByMe:i.liked,counts:(0,r.A)((0,r.A)({},e.counts),{},{likes:i.likes})}):e}),e.n=8;break;case 7:e.p=7,e.v,C(n),d().showToast({title:"\u70b9\u8d5e\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"});case 8:return e.p=8,le.current.delete(t),e.f(8);case 9:return e.a(2)}},e,null,[[5,7,8,9]])}));return function(t){return e.apply(this,arguments)}}(),me=function(){var e=(0,c.A)((0,a.A)().m(function e(){var t,n;return(0,a.A)().w(function(e){while(1)switch(e.p=e.n){case 0:if(t=te.trim(),t&&!ce&&M){e.n=1;break}return e.a(2);case 1:return e.n=2,(0,j.HQ)();case 2:if(e.v){e.n=3;break}return e.a(2);case 3:return re(!0),ne(""),e.p=4,e.n=5,(0,x.SI)(M._id,t);case 5:n=e.v,K(function(e){return[].concat((0,o.A)(e),[{_id:n.commentId,author:{id:g._id,name:g.nickname||"\u6211",avatarKey:g.avatarKey||"gradient-avatar-1",avatarUrl:g.avatarUrl},content:t,timeText:"\u521a\u521a"}])}),C(function(e){return e?(0,r.A)((0,r.A)({},e),{},{counts:(0,r.A)((0,r.A)({},e.counts),{},{comments:n.comments})}):e}),e.n=7;break;case 6:e.p=6,e.v,d().showToast({title:"\u8bc4\u8bba\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5",icon:"none"}),ne(t);case 7:return e.p=7,re(!1),e.f(7);case 8:return e.a(2)}},e,null,[[4,6,7,8]])}));return function(){return e.apply(this,arguments)}}();return(0,N.jsxs)(m.Ss,{className:"post-detail",children:[(0,N.jsx)(m.Ss,{className:"post-detail__nav",style:{paddingTop:"".concat(t,"px")},children:(0,N.jsxs)(m.Ss,{className:"post-detail__nav-row",children:[(0,N.jsx)(m.Ss,{className:"post-detail__back",onClick:function(){return d().navigateBack()},children:(0,N.jsx)(h.A,{name:"chev",size:22,className:"post-detail__back-icon"})}),(0,N.jsx)(m.EY,{className:"post-detail__title",children:"\u52a8\u6001\u8be6\u60c5"}),(0,N.jsx)(m.Ss,{className:"post-detail__nav-spacer"})]})}),(0,N.jsxs)(m.BM,{scrollY:!0,className:"post-detail__scroll",enhanced:!0,showScrollbar:!1,children:[M?(0,N.jsx)(m.Ss,{className:"post-detail__post",children:(0,N.jsx)(f.A,{post:M,onLike:de,enableImagePreview:!0})}):null,(0,N.jsxs)(m.Ss,{className:"post-detail__comments",children:[(0,N.jsxs)(m.EY,{className:"post-detail__comments-title",children:["\u8bc4\u8bba",M?" ".concat(M.counts.comments):""]}),O?Q?(0,N.jsx)(m.EY,{className:"post-detail__empty",onClick:function(){return ue()},children:"\u8bc4\u8bba\u52a0\u8f7d\u5931\u8d25\uff0c\u70b9\u51fb\u91cd\u8bd5"}):0===U.length?(0,N.jsx)(m.EY,{className:"post-detail__empty",children:"\u8fd8\u6ca1\u6709\u8bc4\u8bba\uff0c\u6765\u62a2\u6c99\u53d1\u5427"}):(0,N.jsxs)(N.Fragment,{children:[U.map(function(e){return(0,N.jsxs)(m.Ss,{className:"post-detail__comment",children:[(0,N.jsx)(_.A,{avatarKey:e.author.avatarKey,avatarUrl:e.author.avatarUrl,size:"sm"}),(0,N.jsxs)(m.Ss,{className:"post-detail__comment-body",children:[(0,N.jsxs)(m.Ss,{className:"post-detail__comment-head",children:[(0,N.jsx)(m.EY,{className:"post-detail__comment-name",children:e.author.name}),(0,N.jsx)(m.EY,{className:"post-detail__comment-time",children:e.timeText})]}),(0,N.jsx)(m.EY,{className:"post-detail__comment-text",children:e.content})]})]},e._id)}),W?(0,N.jsx)(m.EY,{className:"post-detail__empty",children:"\u52a0\u8f7d\u66f4\u591a\u8bc4\u8bba\u4e2d\u2026"}):$?(0,N.jsx)(m.EY,{className:"post-detail__empty",onClick:function(){return ue(!0,$)},children:"\u52a0\u8f7d\u66f4\u591a\u8bc4\u8bba"}):null]}):(0,N.jsx)(m.EY,{className:"post-detail__empty",children:M?"\u8bc4\u8bba\u52a0\u8f7d\u4e2d\u2026":"\u52a0\u8f7d\u4e2d\u2026"})]})]}),(0,N.jsxs)(m.Ss,{className:"post-detail__input-bar",style:{paddingBottom:"".concat(Math.max(12,n),"px")},children:[(0,N.jsx)(m.pd,{className:"post-detail__input",value:te,placeholder:"\u5199\u8bc4\u8bba\u2026",placeholderClass:"post-detail__input-ph",confirmType:"send",onInput:function(e){return ne(e.detail.value)},onConfirm:me}),(0,N.jsx)(m.Ss,{className:"post-detail__send ".concat(te.trim()?"":"post-detail__send--disabled"),onClick:me,children:"\u53d1\u9001"})]}),(0,N.jsx)(v.A,{visible:ie.visible})]})}var w={},g=(0,s.eU)(y,"pages/post-detail/index",{root:{cn:[]}},w||{});y&&y.behaviors&&(g.behaviors=(g.behaviors||[]).concat(y.behaviors));Page(g)}},function(e){var t=function(t){return e(e.s=t)};e.O(0,[907,96,76],function(){return t(8680)});e.O()}]);