honkoma/priv/static/packs/features/status.js

2 lines
17 KiB
JavaScript

(window.webpackJsonp=window.webpackJsonp||[]).push([[22],{710:function(e,t,a){"use strict";a.r(t);var s,n,i,o,l,d,r,c,u,p=a(0),h=a.n(p),g=a(6),f=a.n(g),v=a(3),m=a.n(v),b=a(7),M=a.n(b),k=a(5),y=a.n(k),C=a(1),_=a.n(C),O=a(12),I=a(2),j=a.n(I),R=a(14),w=a.n(R),x=a(17),D=a.n(x),N=a(31),H=a(198),T=a(40),A=a(39),S=a(96),B=a(383),F=a(228),E=a(810),U=a(4),P=a(696),V=Object(O.connect)(function(e,t){var a=t.statusId;return{card:e.getIn(["cards",a],null)}})(P.a),q=a(18),z=a(78),K=(n=s=function(e){function t(){var a,s,n;f()(this,t);for(var i=arguments.length,o=Array(i),l=0;l<i;l++)o[l]=arguments[l];return a=s=m()(this,e.call.apply(e,[this].concat(o))),s.handleAccountClick=function(e){0!==e.button||e.ctrlKey||e.metaKey||(e.preventDefault(),s.context.router.history.push("/accounts/"+s.props.status.getIn(["account","id"]))),e.stopPropagation()},s.handleOpenVideo=function(e,t){s.props.onOpenVideo(e,t)},s.handleExpandedToggle=function(){s.props.onToggleHidden(s.props.status)},n=a,m()(s,n)}return M()(t,e),t.prototype.render=function(){var e=this.props.status.get("reblog")?this.props.status.get("reblog"):this.props.status,t="",a="",s="",n="retweet";if(e.get("media_attachments").size>0)if(e.get("media_attachments").some(function(e){return"unknown"===e.get("type")}))t=h()(F.a,{media:e.get("media_attachments")});else if("video"===e.getIn(["media_attachments",0,"type"])){var i=e.getIn(["media_attachments",0]);t=h()(z.default,{preview:i.get("preview_url"),src:i.get("url"),alt:i.get("description"),width:300,height:150,inline:!0,onOpenVideo:this.handleOpenVideo,sensitive:e.get("sensitive")})}else t=h()(B.default,{standalone:!0,sensitive:e.get("sensitive"),media:e.get("media_attachments"),height:300,onOpenMedia:this.props.onOpenMedia});else 0===e.get("spoiler_text").length&&(t=h()(V,{onOpenMedia:this.props.onOpenMedia,statusId:e.get("id")}));return e.get("application")&&(a=h()("span",{},void 0," · ",h()("a",{className:"detailed-status__application",href:e.getIn(["application","website"]),target:"_blank",rel:"noopener"},void 0,e.getIn(["application","name"])))),"direct"===e.get("visibility")?n="envelope":"private"===e.get("visibility")&&(n="lock"),s="private"===e.get("visibility")?h()("i",{className:"fa fa-"+n}):h()(E.a,{to:"/statuses/"+e.get("id")+"/reblogs",className:"detailed-status__link"},void 0,h()("i",{className:"fa fa-"+n}),h()("span",{className:"detailed-status__reblogs"},void 0,h()(U.c,{value:e.get("reblogs_count")}))),h()("div",{className:"detailed-status"},void 0,h()("a",{href:e.getIn(["account","url"]),onClick:this.handleAccountClick,className:"detailed-status__display-name"},void 0,h()("div",{className:"detailed-status__display-avatar"},void 0,h()(T.a,{account:e.get("account"),size:48})),h()(A.a,{account:e.get("account")})),h()(S.a,{status:e,expanded:!e.get("hidden"),onExpandedToggle:this.handleExpandedToggle}),t,h()("div",{className:"detailed-status__meta"},void 0,h()("a",{className:"detailed-status__datetime",href:e.get("url"),target:"_blank",rel:"noopener"},void 0,h()(U.a,{value:new Date(e.get("created_at")),hour12:!1,year:"numeric",month:"short",day:"2-digit",hour:"2-digit",minute:"2-digit"})),a," · ",s," · ",h()(E.a,{to:"/statuses/"+e.get("id")+"/favourites",className:"detailed-status__link"},void 0,h()("i",{className:"fa fa-star"}),h()("span",{className:"detailed-status__favorites"},void 0,h()(U.c,{value:e.get("favourites_count")})))))},t}(q.a),s.contextTypes={router:j.a.object},s.propTypes={status:D.a.map.isRequired,onOpenMedia:j.a.func.isRequired,onOpenVideo:j.a.func.isRequired,onToggleHidden:j.a.func.isRequired},n),J=a(20),W=a(97),L=a(10),G=Object(U.f)({delete:{id:"status.delete",defaultMessage:"Delete"},redraft:{id:"status.redraft",defaultMessage:"Delete & re-draft"},direct:{id:"status.direct",defaultMessage:"Direct message @{name}"},mention:{id:"status.mention",defaultMessage:"Mention @{name}"},reply:{id:"status.reply",defaultMessage:"Reply"},reblog:{id:"status.reblog",defaultMessage:"Boost"},reblog_private:{id:"status.reblog_private",defaultMessage:"Boost to original audience"},cancel_reblog_private:{id:"status.cancel_reblog_private",defaultMessage:"Unboost"},cannot_reblog:{id:"status.cannot_reblog",defaultMessage:"This post cannot be boosted"},favourite:{id:"status.favourite",defaultMessage:"Favourite"},mute:{id:"status.mute",defaultMessage:"Mute @{name}"},muteConversation:{id:"status.mute_conversation",defaultMessage:"Mute conversation"},unmuteConversation:{id:"status.unmute_conversation",defaultMessage:"Unmute conversation"},block:{id:"status.block",defaultMessage:"Block @{name}"},report:{id:"status.report",defaultMessage:"Report @{name}"},share:{id:"status.share",defaultMessage:"Share"},pin:{id:"status.pin",defaultMessage:"Pin on profile"},unpin:{id:"status.unpin",defaultMessage:"Unpin from profile"},embed:{id:"status.embed",defaultMessage:"Embed"}}),Q=Object(U.g)((l=o=function(e){function t(){var a,s,n;f()(this,t);for(var i=arguments.length,o=Array(i),l=0;l<i;l++)o[l]=arguments[l];return a=s=m()(this,e.call.apply(e,[this].concat(o))),s.handleReplyClick=function(){s.props.onReply(s.props.status)},s.handleReblogClick=function(e){s.props.onReblog(s.props.status,e)},s.handleFavouriteClick=function(){s.props.onFavourite(s.props.status)},s.handleDeleteClick=function(){s.props.onDelete(s.props.status,s.context.router.history)},s.handleRedraftClick=function(){s.props.onDelete(s.props.status,s.context.router.history,!0)},s.handleDirectClick=function(){s.props.onDirect(s.props.status.get("account"),s.context.router.history)},s.handleMentionClick=function(){s.props.onMention(s.props.status.get("account"),s.context.router.history)},s.handleMuteClick=function(){s.props.onMute(s.props.status.get("account"))},s.handleConversationMuteClick=function(){s.props.onMuteConversation(s.props.status)},s.handleBlockClick=function(){s.props.onBlock(s.props.status.get("account"))},s.handleReport=function(){s.props.onReport(s.props.status)},s.handlePinClick=function(){s.props.onPin(s.props.status)},s.handleShare=function(){navigator.share({text:s.props.status.get("search_index"),url:s.props.status.get("url")})},s.handleEmbed=function(){s.props.onEmbed(s.props.status)},n=a,m()(s,n)}return M()(t,e),t.prototype.render=function(){var e=this.props,t=e.status,a=e.intl,s=["public","unlisted"].includes(t.get("visibility")),n=t.get("muted"),i=[];s&&(i.push({text:a.formatMessage(G.embed),action:this.handleEmbed}),i.push(null)),L.i===t.getIn(["account","id"])?(s?i.push({text:a.formatMessage(t.get("pinned")?G.unpin:G.pin),action:this.handlePinClick}):"private"===t.get("visibility")&&i.push({text:a.formatMessage(t.get("reblogged")?G.cancel_reblog_private:G.reblog_private),action:this.handleReblogClick}),i.push(null),i.push({text:a.formatMessage(n?G.unmuteConversation:G.muteConversation),action:this.handleConversationMuteClick}),i.push(null),i.push({text:a.formatMessage(G.delete),action:this.handleDeleteClick}),i.push({text:a.formatMessage(G.redraft),action:this.handleRedraftClick})):(i.push({text:a.formatMessage(G.mention,{name:t.getIn(["account","username"])}),action:this.handleMentionClick}),i.push({text:a.formatMessage(G.direct,{name:t.getIn(["account","username"])}),action:this.handleDirectClick}),i.push(null),i.push({text:a.formatMessage(G.mute,{name:t.getIn(["account","username"])}),action:this.handleMuteClick}),i.push({text:a.formatMessage(G.block,{name:t.getIn(["account","username"])}),action:this.handleBlockClick}),i.push({text:a.formatMessage(G.report,{name:t.getIn(["account","username"])}),action:this.handleReport}));var o="share"in navigator&&"public"===t.get("visibility")&&h()("div",{className:"detailed-status__button"},void 0,h()(J.a,{title:a.formatMessage(G.share),icon:"share-alt",onClick:this.handleShare})),l="retweet";"direct"===t.get("visibility")?l="envelope":"private"===t.get("visibility")&&(l="lock");var d="direct"===t.get("visibility")||"private"===t.get("visibility");return h()("div",{className:"detailed-status__action-bar"},void 0,h()("div",{className:"detailed-status__button"},void 0,h()(J.a,{title:a.formatMessage(G.reply),icon:null===t.get("in_reply_to_id",null)?"reply":"reply-all",onClick:this.handleReplyClick})),h()("div",{className:"detailed-status__button"},void 0,h()(J.a,{disabled:d,active:t.get("reblogged"),title:d?a.formatMessage(G.cannot_reblog):a.formatMessage(G.reblog),icon:l,onClick:this.handleReblogClick})),h()("div",{className:"detailed-status__button"},void 0,h()(J.a,{className:"star-icon",animate:!0,active:t.get("favourited"),title:a.formatMessage(G.favourite),icon:"star",onClick:this.handleFavouriteClick})),o,h()("div",{className:"detailed-status__action-bar-dropdown"},void 0,h()(W.a,{size:18,icon:"ellipsis-h",items:i,direction:"left",title:"More"})))},t}(_.a.PureComponent),o.contextTypes={router:j.a.object},i=l))||i,X=a(193),Y=a(26),Z=a(11),$=a(13),ee=a(45),te=a(42),ae=a(32),se=a(123),ne=a(196),ie=a(60),oe=a(154),le=a(21),de=a(118),re=a(56),ce=a(157);a.d(t,"default",function(){return pe});var ue=Object(U.f)({deleteConfirm:{id:"confirmations.delete.confirm",defaultMessage:"Delete"},deleteMessage:{id:"confirmations.delete.message",defaultMessage:"Are you sure you want to delete this status?"},redraftConfirm:{id:"confirmations.redraft.confirm",defaultMessage:"Delete & redraft"},redraftMessage:{id:"confirmations.redraft.message",defaultMessage:"Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned."},blockConfirm:{id:"confirmations.block.confirm",defaultMessage:"Block"},revealAll:{id:"status.show_more_all",defaultMessage:"Show more for all"},hideAll:{id:"status.show_less_all",defaultMessage:"Show less for all"},detailedStatus:{id:"status.detailed_status",defaultMessage:"Detailed conversation view"}}),pe=(d=Object(O.connect)(function(){var e=Object(ae.f)();return function(t,a){var s=e(t,{id:a.params.statusId}),n=y.a.List(),i=y.a.List();return s&&(n=n.withMutations(function(e){for(var a=s.get("in_reply_to_id");a;)e.unshift(a),a=t.getIn(["contexts","inReplyTos",a])}),i=i.withMutations(function(e){for(var a=[s.get("id")];a.length>0;){var n=a.shift(),i=t.getIn(["contexts","replies",n]);s.get("id")!==n&&e.push(n),i&&i.reverse().forEach(function(e){a.unshift(e)})}})),{status:s,ancestorsIds:n,descendantsIds:i}}}),Object(U.g)(r=d((u=c=function(e){function t(){var a,s,n;f()(this,t);for(var i=arguments.length,o=Array(i),l=0;l<i;l++)o[l]=arguments[l];return a=s=m()(this,e.call.apply(e,[this].concat(o))),s.state={fullscreen:!1},s.handleFavouriteClick=function(e){e.get("favourited")?s.props.dispatch(Object(Y.p)(e)):s.props.dispatch(Object(Y.k)(e))},s.handlePin=function(e){e.get("pinned")?s.props.dispatch(Object(Y.q)(e)):s.props.dispatch(Object(Y.n)(e))},s.handleReplyClick=function(e){s.props.dispatch(Object(Z.T)(e,s.context.router.history))},s.handleModalReblog=function(e){s.props.dispatch(Object(Y.o)(e))},s.handleReblogClick=function(e,t){e.get("reblogged")?s.props.dispatch(Object(Y.r)(e)):t.shiftKey||!L.b?s.handleModalReblog(e):s.props.dispatch(Object(le.d)("BOOST",{status:e,onReblog:s.handleModalReblog}))},s.handleDeleteClick=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=s.props,i=n.dispatch,o=n.intl;L.d?i(Object(le.d)("CONFIRM",{message:o.formatMessage(a?ue.redraftMessage:ue.deleteMessage),confirm:o.formatMessage(a?ue.redraftConfirm:ue.deleteConfirm),onConfirm:function(){return i(Object(N.g)(e.get("id"),t,a))}})):i(Object(N.g)(e.get("id"),t,a))},s.handleDirectClick=function(e,t){s.props.dispatch(Object(Z.N)(e,t))},s.handleMentionClick=function(e,t){s.props.dispatch(Object(Z.R)(e,t))},s.handleOpenMedia=function(e,t){s.props.dispatch(Object(le.d)("MEDIA",{media:e,index:t}))},s.handleOpenVideo=function(e,t){s.props.dispatch(Object(le.d)("VIDEO",{media:e,time:t}))},s.handleMuteClick=function(e){s.props.dispatch(Object(ee.g)(e))},s.handleConversationMuteClick=function(e){e.get("muted")?s.props.dispatch(Object(N.l)(e.get("id"))):s.props.dispatch(Object(N.j)(e.get("id")))},s.handleToggleHidden=function(e){e.get("hidden")?s.props.dispatch(Object(N.k)(e.get("id"))):s.props.dispatch(Object(N.i)(e.get("id")))},s.handleToggleAll=function(){var e=s.props,t=e.status,a=e.ancestorsIds,n=e.descendantsIds,i=[t.get("id")].concat(a.toJS(),n.toJS());t.get("hidden")?s.props.dispatch(Object(N.k)(i)):s.props.dispatch(Object(N.i)(i))},s.handleBlockClick=function(e){var t=s.props,a=t.dispatch,n=t.intl;a(Object(le.d)("CONFIRM",{message:h()(U.b,{id:"confirmations.block.message",defaultMessage:"Are you sure you want to block {name}?",values:{name:h()("strong",{},void 0,"@",e.get("acct"))}}),confirm:n.formatMessage(ue.blockConfirm),onConfirm:function(){return a(Object($.s)(e.get("id")))}}))},s.handleReport=function(e){s.props.dispatch(Object(te.k)(e.get("account"),e))},s.handleEmbed=function(e){s.props.dispatch(Object(le.d)("EMBED",{url:e.get("url")}))},s.handleHotkeyMoveUp=function(){s.handleMoveUp(s.props.status.get("id"))},s.handleHotkeyMoveDown=function(){s.handleMoveDown(s.props.status.get("id"))},s.handleHotkeyReply=function(e){e.preventDefault(),s.handleReplyClick(s.props.status)},s.handleHotkeyFavourite=function(){s.handleFavouriteClick(s.props.status)},s.handleHotkeyBoost=function(){s.handleReblogClick(s.props.status)},s.handleHotkeyMention=function(e){e.preventDefault(),s.handleMentionClick(s.props.status.get("account"))},s.handleHotkeyOpenProfile=function(){s.context.router.history.push("/accounts/"+s.props.status.getIn(["account","id"]))},s.handleHotkeyToggleHidden=function(){s.handleToggleHidden(s.props.status)},s.handleMoveUp=function(e){var t=s.props,a=t.status,n=t.ancestorsIds,i=t.descendantsIds;if(e===a.get("id"))s._selectChild(n.size-1);else{var o=n.indexOf(e);-1===o?(o=i.indexOf(e),s._selectChild(n.size+o)):s._selectChild(o-1)}},s.handleMoveDown=function(e){var t=s.props,a=t.status,n=t.ancestorsIds,i=t.descendantsIds;if(e===a.get("id"))s._selectChild(n.size+1);else{var o=n.indexOf(e);-1===o?(o=i.indexOf(e),s._selectChild(n.size+o+2)):s._selectChild(o+1)}},s.setRef=function(e){s.node=e},s.onFullScreenChange=function(){s.setState({fullscreen:Object(re.d)()})},n=a,m()(s,n)}return M()(t,e),t.prototype.componentWillMount=function(){this.props.dispatch(Object(N.h)(this.props.params.statusId))},t.prototype.componentDidMount=function(){Object(re.a)(this.onFullScreenChange)},t.prototype.componentWillReceiveProps=function(e){e.params.statusId!==this.props.params.statusId&&e.params.statusId&&(this._scrolledIntoView=!1,this.props.dispatch(Object(N.h)(e.params.statusId)))},t.prototype._selectChild=function(e){var t=this.node.querySelectorAll(".focusable")[e];t&&t.focus()},t.prototype.renderChildren=function(e){var t=this;return e.map(function(e){return h()(oe.a,{id:e,onMoveUp:t.handleMoveUp,onMoveDown:t.handleMoveDown,contextType:"thread"},e)})},t.prototype.componentDidUpdate=function(){if(!this._scrolledIntoView){var e=this.props,t=e.status,a=e.ancestorsIds;if(t&&a&&a.size>0){var s=this.node.querySelectorAll(".focusable")[a.size-1];window.requestAnimationFrame(function(){s.scrollIntoView(!0)}),this._scrolledIntoView=!0}}},t.prototype.componentWillUnmount=function(){Object(re.b)(this.onFullScreenChange)},t.prototype.render=function(){var e=void 0,t=void 0,a=this.props,s=a.shouldUpdateScroll,n=a.status,i=a.ancestorsIds,o=a.descendantsIds,l=a.intl,d=this.state.fullscreen;if(null===n)return h()(X.a,{},void 0,h()(ne.a,{}),h()(H.a,{}));i&&i.size>0&&(e=h()("div",{},void 0,this.renderChildren(i))),o&&o.size>0&&(t=h()("div",{},void 0,this.renderChildren(o)));var r={moveUp:this.handleHotkeyMoveUp,moveDown:this.handleHotkeyMoveDown,reply:this.handleHotkeyReply,favourite:this.handleHotkeyFavourite,boost:this.handleHotkeyBoost,mention:this.handleHotkeyMention,openProfile:this.handleHotkeyOpenProfile,toggleHidden:this.handleHotkeyToggleHidden};return h()(X.a,{label:l.formatMessage(ue.detailedStatus)},void 0,h()(ie.a,{showBackButton:!0,extraButton:h()("button",{className:"column-header__button",title:l.formatMessage(n.get("hidden")?ue.revealAll:ue.hideAll),"aria-label":l.formatMessage(n.get("hidden")?ue.revealAll:ue.hideAll),onClick:this.handleToggleAll,"aria-pressed":n.get("hidden")?"false":"true"},void 0,h()("i",{className:"fa fa-"+(n.get("hidden")?"eye-slash":"eye")}))}),h()(se.a,{scrollKey:"thread",shouldUpdateScroll:s},void 0,_.a.createElement("div",{className:w()("scrollable","detailed-status__wrapper",{fullscreen:d}),ref:this.setRef},e,h()(de.HotKeys,{handlers:r},void 0,h()("div",{className:"focusable",tabIndex:"0","aria-label":Object(ce.b)(l,n,!1,!n.get("hidden"))},void 0,h()(K,{status:n,onOpenVideo:this.handleOpenVideo,onOpenMedia:this.handleOpenMedia,onToggleHidden:this.handleToggleHidden}),h()(Q,{status:n,onReply:this.handleReplyClick,onFavourite:this.handleFavouriteClick,onReblog:this.handleReblogClick,onDelete:this.handleDeleteClick,onDirect:this.handleDirectClick,onMention:this.handleMentionClick,onMute:this.handleMuteClick,onMuteConversation:this.handleConversationMuteClick,onBlock:this.handleBlockClick,onReport:this.handleReport,onPin:this.handlePin,onEmbed:this.handleEmbed}))),t)))},t}(q.a),c.contextTypes={router:j.a.object},c.propTypes={params:j.a.object.isRequired,dispatch:j.a.func.isRequired,status:D.a.map,ancestorsIds:D.a.list,descendantsIds:D.a.list,intl:j.a.object.isRequired},r=u))||r)||r)}}]);
//# sourceMappingURL=status.js.map