1 (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
)}}]);
2 //# sourceMappingURL=status.js.map